mcl-12-135/0000777000402500021140000000000011756465220007365 500000000000000mcl-12-135/graphs/0000777000402500021140000000000011756465221010652 500000000000000mcl-12-135/graphs/tiny-min.mci0000644000402500021140000000011310556367532013022 00000000000000 (mclheader mcltype matrix dimensions 1x1 ) (mclmatrix begin 0 0:-1 $ ) mcl-12-135/graphs/Txy0000644000402500021140000000024110645641751011272 00000000000000(mclheader mcltype matrix dimensions 26x6 ) (mclmatrix begin 0 0 1 12 13 14 $ 1 2 3 15 16 $ 2 4 5 17 18 $ 3 6 7 19 20 $ 4 8 9 21 22 $ 5 10 11 23 24 25 $ ) mcl-12-135/graphs/falkner.coords0000644000402500021140000000471210727746531013432 00000000000000 /v0 [4 19] def /v1 [5 19] def /v2 [7 19] def /v3 [8 19] def /v4 [10 19] def /v5 [11 19] def /v6 [16 19] def /v7 [17 19] def /v8 [18 19] def /v9 [3 18] def /v10 [4 18] def /v11 [6 18] def /v12 [7 18] def /v13 [11 18] def /v14 [15 18] def /v15 [16 18] def /v16 [17 18] def /v17 [4 17] def /v18 [5 17] def /v19 [6 17] def /v20 [7 17] def /v21 [8 17] def /v22 [10 17] def /v23 [14 17] def /v24 [15 17] def /v25 [17 17] def /v26 [18 17] def /v27 [19 17] def /v28 [1 16] def /v29 [2 16] def /v30 [10 16] def /v31 [12 16] def /v32 [13 16] def /v33 [15 16] def /v34 [16 16] def /v35 [18 16] def /v36 [19 16] def /v37 [4 15] def /v38 [5 15] def /v39 [8 15] def /v40 [9 15] def /v41 [11 15] def /v42 [12 15] def /v43 [3 14] def /v44 [7 14] def /v45 [9 14] def /v46 [10 14] def /v47 [12 14] def /v48 [13 14] def /v49 [15 14] def /v50 [18 14] def /v51 [1 13] def /v52 [4 13] def /v53 [12 13] def /v54 [13 13] def /v55 [14 13] def /v56 [16 13] def /v57 [17 13] def /v58 [18 13] def /v59 [19 13] def /v60 [3 12] def /v61 [4 12] def /v62 [5 12] def /v63 [6 12] def /v64 [7 12] def /v65 [14 12] def /v66 [15 12] def /v67 [19 12] def /v68 [3 11] def /v69 [5 11] def /v70 [9 11] def /v71 [11 11] def /v72 [14 11] def /v73 [15 11] def /v74 [16 11] def /v75 [19 11] def /v76 [1 10] def /v77 [2 10] def /v78 [5 10] def /v79 [14 10] def /v80 [15 10] def /v81 [17 10] def /v82 [19 10] def /v83 [3 9] def /v84 [6 9] def /v85 [7 9] def /v86 [10 9] def /v87 [13 9] def /v88 [15 9] def /v89 [18 9] def /v90 [1 8] def /v91 [2 8] def /v92 [3 8] def /v93 [7 8] def /v94 [9 8] def /v95 [10 8] def /v96 [15 8] def /v97 [16 8] def /v98 [18 8] def /v99 [2 7] def /v100 [3 7] def /v101 [4 7] def /v102 [6 7] def /v103 [12 7] def /v104 [13 7] def /v105 [17 7] def /v106 [4 6] def /v107 [5 6] def /v108 [10 6] def /v109 [13 6] def /v110 [16 6] def /v111 [17 6] def /v112 [1 5] def /v113 [2 5] def /v114 [3 5] def /v115 [6 5] def /v116 [14 5] def /v117 [17 5] def /v118 [2 4] def /v119 [4 4] def /v120 [5 4] def /v121 [8 4] def /v122 [12 4] def /v123 [13 4] def /v124 [14 4] def /v125 [17 4] def /v126 [18 4] def /v127 [19 4] def /v128 [1 3] def /v129 [4 3] def /v130 [7 3] def /v131 [8 3] def /v132 [9 3] def /v133 [10 3] def /v134 [12 3] def /v135 [14 3] def /v136 [16 3] def /v137 [5 2] def /v138 [9 2] def /v139 [11 2] def /v140 [12 2] def /v141 [13 2] def /v142 [19 2] def /v143 [1 1] def /v144 [2 1] def /v145 [5 1] def /v146 [7 1] def /v147 [9 1] def /v148 [13 1] def /v149 [14 1] def /v150 [2 2] def /v151 [3 1] def mcl-12-135/graphs/data.abc.raw0000644000402500021140000000105110556367527012742 00000000000000# Example of raw data to be read by mcxassemble in conjunction with data.hdr. # # NOTES # - repeated entries are allowed. mcxassemble will by default add them up. # - values have been mostly omitted, but they are allowed # as in the 7:0.8 entry right below. # # try out e.g. # mcxassemble -b data # mcxpipeline --start-assemble --nomap data 4 2 1 6 7:0.8 $ 7 4 3 3 8 10 $ 1 2 0 4 $ 5 0 9 $ 0 1 5 6 1 9 $ 2 4 3 1 $ 3 2 8 7 2 10 $ 8 10 7 3 $ 8 7 11 $ 11 10 8 $ 9 5 0 0 6 5 $ 8 7 $ 6 4 0 9 $ 10 7 3 8 11 $ mcl-12-135/graphs/data.raw0000644000402500021140000000076010556367527012224 000000000000000 1:3.000000 2:2.000000 3:2.000000 4:3.000000 $ 1 0:3.000000 5:2.000000 6:2.000000 $ 5 1:2.000000 7:3.000000 6:2.000000 $ 7 5:3.000000 8:3.000000 9:2.000000 10:2.000000 $ 6 1:2.000000 5:2.000000 3:2.000000 8:1.800000 $ 2 0:2.000000 4:3.000000 $ 3 0:2.000000 6:2.000000 4:2.000000 $ 8 7:3.000000 6:1.800000 9:4.000000 10:2.000000 $ 9 7:2.000000 8:4.000000 10:2.000000 11:2.000000 $ 4 0:3.000000 2:3.000000 3:2.000000 $ 10 7:2.000000 8:2.000000 9:2.000000 11:2.000000 $ 11 9:2.000000 10:2.000000 $ mcl-12-135/graphs/petersen.mci0000644000402500021140000000025611035354037013100 00000000000000(mclheader mcltype matrix dimensions 10x10 ) (mclmatrix begin 0 1 2 3 $ 1 0 4 5 $ 2 0 7 9 $ 3 0 6 8 $ 4 1 6 7 $ 5 1 8 9 $ 6 3 4 9 $ 7 2 4 8 $ 8 3 5 7 $ 9 2 5 6 $ ) mcl-12-135/graphs/seven.mci0000644000402500021140000000052010556367531012377 00000000000000 This is a line graph on seven points. Clustering it with default parameters will result in a clustering with two clusters that overlap in one point. Use '--overlap' to preserve overlap. (mclheader mcltype matrix dimensions 7x7 ) (mclmatrix begin 0 1 $ 1 0 2 $ 2 1 3 $ 3 2 4 $ 4 3 5 $ 5 4 6 $ 6 5 $ ) mcl-12-135/graphs/tiny-zero.mci0000644000402500021140000000011210556367533013216 00000000000000 (mclheader mcltype matrix dimensions 1x1 ) (mclmatrix begin 0 0:0 $ ) mcl-12-135/graphs/tiny-nilnine.mci0000644000402500021140000000014710556367533013703 00000000000000 (mclheader mcltype matrix dimensions 0x9 ) (mclcols 2 4 6 8 10 12 14 16 18 $ ) (mclmatrix begin ) mcl-12-135/graphs/proteins.mci0000644000402500021140000031552110556367531013134 00000000000000 This graph encodes similarities between 312 proteins. It was contributed by Anton Enright. (mclheader mcltype matrix dimensions 312x312 ) (mclmatrix begin 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 1 4 11 31 32 48 49 50 81 82 85 88 114 115 116 119 120 137 141 145 200 207 211 212 213 250 251 252 296 $ 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 32 57 58 81 82 84 85 92 110 112 113 114 115 116 117 118 119 121 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 215 229 230 233 237 238 240 242 245 246 247:2 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 296 301 302 304 307 308 309 311 $ 3 16 22 35 36 40 42 43 50 52 53 54 55 90 92 93 94 111 135 155 228 236 260 273 290 303 310 $ 4 0 1 6 11 14 15 24 31 32 37 41 49 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 121 122 128 129 136 137 138 139 141 142 143 145 146 147 148 149 151 152 159 167 200 201 202 203 204 205 211 213 214 215 217 218 221 226 230 235 237 241 243 244 250 251 252 253 257 266 267 268 269 270 279 280 281 283 288 296 297 300 305 306 $ 5 11 30 35 36 52 53 54 55 91 92 114 119 155 228 253 273 287 295 298 310 $ 6 0 4 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 7 2 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 84 85 110 121 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 285 286 287 288 289 290 292 293 294 301 302 304 307 309 311 $ 8 2 7 11 12 14 15 17 18 19 20 23 24 25 26 29 30 84 85 110 111 121 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 9 10:2 13:2 87 89 123 171 172 174 175 176 177 178 180 181 185 197 198 199 216 230 258 261 282 301 $ 10 9:2 13 89 171 174 258 282 $ 11 0 1 2 4 5 6 8 14 15 18 24 25 30 31 32 37 38 41 48 49 50 51 58 59 60 61 62 63 80 81 82 83 84 85 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 112 113 114 115 116 117 118 119 120 121 122 128 129 135 136 137 138 139 141 142 143 145 146 147 148 149 150 151 152 156 157 158 159 160 162 163 164 165 166 167 168 169 200 201 202 203 204 205 207 211 212 213 214 215 217 218 221 226 230 234 235 237 238 240 241 242 243 244 247 253 254 256 257 263 264 266 267 268 269 270 274 279 280 281 283 285 286 287 288 289 292 294 296 297 298 300 301 302 304 305 306 307 308 309 311 $ 12 2 7 8 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 110 114 115 119 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 301 302 304 307 309 311 $ 13 9:2 10 81 82 89 171 172 173 174 175 176 177 178 179 181 182 184 185 186 187 188 189 190 191 192 194 196 197 198 199 253 258 261 282 308 $ 14 2 4 7 8 11 12 15 17 18 19 20 23 24 25 26 29 30 49 84 85 110 113 114 116 117 118 119 121 137 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 309 311 $ 15 2 4 7 8 11 12 14 17 18 19 20 23 24 25 26 29 30 49 57 84 85 110 113 114 115 116 117 119 121 137 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 309 311 $ 16 3 22 35 36 40 42 43 48 49 50 52 53 54 55 90 92 93 94 111 135 155 167 168 169 228 236 260 271 272 273 292 299 310 $ 17 2 7 8 11 12 14 15 18 19 20 23 24 25 26 29 30 31 32 48 49 84 85 110 114 115 119 120 121 135 140 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 296 301 302 304 307 309 311 $ 18 2 7 8 11 12 14 15 17 19 20 23 24 25 26 29 30 31 32 48 49 84 85 110 114 115 119 120 121 135 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 296 301 302 304 307 308 309 311 $ 19 2 7 8 12 14 15 17 18 20 23 24 25 26 29 30 31 49 84 85 110 114 115 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 240 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 285 286 287 288 289 290 293 294 301 302 307 309 311 $ 20 2 7 8 11 12 14 15 17 18 19 23 24 25 26 29 30 81 82 84 85 92 110 121 123 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 309 311 $ 21 34 38 200 298 $ 22 3 16 35 36 42 43 52 53 54 55 90 92 93 94 155 228 260 273 310 $ 23 2 7 8 11 12 14 15 17 18 19 20 24 25 26 29 30 49 57 81 82 84 85 88 94 110 114 115 117 119 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 24 2 4 7 8 11 12 14 15 17 18 19 20 23 25 26 29 30 49 57 58 81 82 84 85 92 93 110 112 114 115 116 117 119 120 121 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 200 207 208 211 212 213 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 296 301 302 304 307 308 309 311 $ 25 2 7 8 11 12 14 15 17 18 19 20 23 24 26 29 30 48 49 81 82 84 85 110 117 121 135 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 296 301 302 304 307 308 309 311 $ 26 2 7 8 12 14 15 17 18 19 20 23 24 25 29 30 57 81 84 85 110 114 115 116 119 121 135 140 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 229 230 233 237 238 240 242 246 247:2 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 301 302 304 307 308 309 311 $ 27 28 155 310 $ 28 27 36 155 310 $ 29 2 7 8 12 14 15 17 18 19 20 23 24 25 26 30 84 85 110 121 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 293 294 301 302 304 307 309 311 $ 30 2 5 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 57 58 81 82 84 85 88 110 114 115 116 117 119 121 123 139 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 261 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 295 298 301 302 304 307 308 309 311 $ 31 0 1 4 6 11 17 18 19 32 33 37 41 48 49 50 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 115 116 117 118 119 120 122 128 129 135 136 137 138 139 140 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 207 212 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 289 296 297 300 302 305 306 $ 32 0 2 4 6 11 17 18 31 33 37 41 48 49 50 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 115 116 117 118 119 120 122 128 129 135 136 137 138 139 140 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 207 212 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 286 287 288 289 296 297 300 305 306 $ 33 31 32 48 49 50 111 114 115 119 120 135 145 256 271 272 290 292 $ 34 21 38 298 $ 35 3 5 16 22 36 40 42 43 48 50 52 53 54 55 56 90 92 93 94 135 155 228 236 248 249 260 271 272 273 292 310 311 $ 36 3 5 16 22 28 35 40 42 43 48 49 50 52 53 54 55 56 90 92 93 94 116 135 141 153 155 228 236 260 271 272 273 303 310 $ 37 0 4 6 11 31 32 41 51 59 60 61 62 63 80 81 82 83 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 38 11 21 34 298 $ 39 140 $ 40 3 16 35 36 42 43 52 53 54 55 92 93 94 155 228 236 248 249 271 272 273 299 310 $ 41 0 4 6 11 31 32 37 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 42 3 16 22 35 36 40 43 49 52 53 54 55 90 92 93 94 135 155 228 236 248 249 260 271 272 273 290 299 310 $ 43 3 16 22 35 36 40 42 48 52 53 54 55 90 92 93 94 135 155 228 236 248 249 260 271 272 273 292 299 310 $ 44 45 46 47 112 117 $ 45 44 46 47 112 117 $ 46 44 45 47 112 117 $ 47 44 45 46 112 113 117 $ 48 1 11 16 17 18 25 31 32 33 35 36 43 49 50 52 53 54 55 92 93 94 111 114 115 116 119 135 137 139 141 145 148 159 164 207 211 212 213 215 229 230 236 254 256 264 271 272 273 292 296 301 $ 49 1 4 11 14 15 16 17 18 19 23 24 25 31 32 33 36 42 48 50 52 81 82 84 88 92 111 113 114 115 116 117 119 120 135 137 139 140 141 145 148 149 150 157 158 159 160 162 164 165 166 167 200 204 207 211 212 213 215 229 230 246 254 256 264 271 272 273 276 277 278 286 287 288 289 290 292 296 301 302 $ 50 1 3 11 16 31 32 33 35 36 48 49 82 92 93 111 112 114 115 116 118 119 120 135 137 139 141 145 155 159 163 211 215 236 251 252 260 271 272 273 290 292 296 310 $ 51 0 4 6 11 31 32 37 41 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 52 3 5 16 22 35 36 40 42 43 48 49 53 54 55 90 92 93 94 111 135 155 228 236 248 249 271 272 273 310 $ 53 3 5 16 22 35 36 40 42 43 48 52 54 55 90 92 93 94 155 228 236 248 249 271 272 273 310 $ 54 3 5 16 22 35 36 40 42 43 48 52 53 55 90 92 93 94 155 228 236 271 272 273 310 $ 55 3 5 16 22 35 36 40 42 43 48 52 53 54 90 92 93 94 155 228 236 248 271 272 273 310 $ 56 35 36 $ 57 2 12 15 23 24 26 30 84 140 148 149 150 154 156 160 161 162 163 164 165 166 167 207 208 212 229 230 233 242 247 253 254 255 256 259 263 274 285 286 287 288 289 293 294 301 304 311 $ 58 2 11 24 81 82 114 141 167 200 230 263 285 286 287 288 289 298 308 $ 59 0 4 6 11 31 32 37 41 51 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 60 0 4 6 11 31 32 37 41 51 59 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 121 122 128 129 136 137 138 139 141 142 143 145 146 147 148 149 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 61 0 4 6 11 31 32 37 41 51 59 60 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 62 0 4 6 11 31 32 37 41 51 59 60 61 63 80 81 82 83 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 63 0 4 6 11 31 32 37 41 51 59 60 61 62 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133:2 134 209 210 220 222 223 224 231 232 261 $ 65 64 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133 134 209 210 220 222 223 224 231 232 261 $ 66 64 65 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133 134 209 210 220 222 223 224 231 232 261 $ 67 64 65 66 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133 134 209 210 220 222 223 224 231 232 261 $ 68 64 65 66 67 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 134 209 210 220 222 223 224 231 232 261 $ 69 64 65 66 67 68 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 134 209 210 220 222 223 224 231 232 261 $ 70 64 65 66 67 68 69 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133:2 134 209 210 220 222 223 224 231 232 261 $ 71 64 65 66 67 68 69 70 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 134 209 210 220 222 223 224 231 232 261 $ 72 64 65 66 67 68 69 70 71 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133 134 209 210 220 222 223 224 231 232 261 $ 73 64 65 66 67 68 69 70 71 72 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133:2 134 209 210 220 222 223 224 231 232 261 $ 74 64 65 66 67 68 69 70 71 72 73 75 76 77 78 79 123 124 125 126 127 130 131 132 133:2 134 209 210 220 222 223 224 231 232 261 $ 75 64 65 66 67 68 69 70 71 72 73 74 76 77 78 79 123 124 125 126 127 130 131 132 134 209 210 220 222 223 224 231 232 261 $ 76 64 65 66 67 68 69 70 71 72 73 74 75 77 78 79 123 124 125 126 127 130 131 132 134 209 210 220 222 223 224 231 232 261 $ 77 64 65 66 67 68 69 70 71 72 73 74 75 76 78 79 123 124 125 126 127 130 131 132 134 209 210 220 222 223 224 231 232 261 $ 78 64 65 66 67 68 69 70 71 72 73 74 75 76 77 79 123 124 125 126 127 130 131 132 133 134 209 210 220 222 223 224 231 232 261 $ 79 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 123 124 125 126 127 130 131 132 133 134 209 210 220 222 223 224 231 232 261 $ 80 0 4 6 11 31 32 37 41 51 59 60 61 62 63 81 82 83 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 81 0 1 2 4 6 11 13 23 24 25 26 30 31 32 37 41 49 51 58 59 60 61 62 63 80 82 83 85 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 115 116 117 118 119 120 122 128 129 135 136 137 138 139 141 142 143 145 146 147 150 151 152 158 159 167 200 201 202 203 204 205 207 211 212 213 214 215 217 218 221 226 230 235 237 238 241 242 243 244 246 257 266 267 268 269 270 274 279 280 281 283 285 286 287 288 289 296 297 298 300 301 304 305 306 307 308 311 $ 82 0 1 2 4 6 11 13 23 24 25 30 31 32 37 41 49 51 58 59 60 61 62 63 80 81 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 135 136 137 138 139 141 142 143 145 146 147 150 151 152 158 159 167 200 201 202 203 204 205 207 212 213 214 215 217 218 221 226 230 234 235 237 241 243 244 257 266 267 268 269 270 274 279 280 281 283 285 286 287 288 289 296 297 298 300 305 306 308 311 $ 83 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 84 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 49 57 85 110 114 115 117 119 121 123 139 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 298 301 302 304 307 309 311 $ 85 1 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 81 84 110 114 115 116 118 119 120 121 137 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 229 230 233 237 238 240 242 245 246 247 252 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 308 309 311 $ 86 0 4 6 11 31 32 41 51 59 60 61 63 81 82 83 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 119 120 122 128 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 296 297 300 306 $ 87 9 89 258 $ 88 0 1 4 6 11 23 31 32 37 41 49 51 59 60 61 62 63 80 81 82 83 86 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 115 116 117 118 119 120 122 128 129 135 136 137 138 139 141 142 143 145 146 147 151 152 159 164 200 201 202 203 204 205 207 211 212 213 214 215 217 218 221 226 235 237 241 243 244 246 250 257 266 267 268 269 270 279 280 281 283 285 286 287 288 289 293 296 297 300 302 305 306 307 311 $ 89 9 10 13 87 171 172 173 174 175 176 177 180 181 183 185 187 189 190 191 193 194 197 198 199 216 258 261 282 $ 90 3 16 22 35 36 42 43 52 53 54 55 92 93 94 228 236 248 249 260 271 272 273 $ 91 5 295 $ 92 2 3 5 16 20 22 24 33 35 36 40 42 43 48 49 50 52 53 54 55 90 93 94 111 135 155 156 167 211 219 228 230 236 248 249 253 260 271 272 273 290 292 295 298 301 310 $ 93 3 16 22 24 35 36 40 42 43 48 50 52 53 54 55 90 92 94 111 135 153 155 228 230 236 248 249 260 271 272 273 290 292 299 310 $ 94 3 16 22 23 35 36 40 42 43 48 52 53 54 55 90 92 93 111 135 150 153 155 212 219 228 230 236 247 248 249 260 271 272 273 292 298 299 301 310 $ 95 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 96:2 97:2 98 99:2 100 101:2 102 103 104:2 105:2 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218:2 221 226 235:2 241:2 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 96 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95:2 97:2 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 97 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95:2 96:2 98 99:2 100 101:2 102 103 104:2 105:2 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218:2 221 226 235:2 241:2 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 98 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235:2 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 99 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 100 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 101 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95:2 96 97:2 98 99 100 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 102 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235:2 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 103 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235:2 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 104 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97:2 98 99 100 101 102 103 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 105 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95:2 96 97:2 98 99 100 101 102 103 104 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 106 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 107 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97:2 98 99 100 101 102 103 104 105 106 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 225 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 108 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95:2 96 97 98 99 100 101 102 103 104 105 106 107 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 109 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97:2 98 99 100 101 102 103 104 105 106 107 108 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 110 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 84 85 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 301 302 304 307 309 311 $ 111 3 8 16 31 32 33 48 49 50 52 81 82 88 92 93 94 114 115 116 119 120 135 139 141 145 159 207 213 215 236 246 271 272 273 286 287 290 292 $ 112 0 2 4 6 11 31 32 37 41 44 45 46 50 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 113 114 115 116 117 118 119 120 122 128 129 135 136 137 138 139 141 142 143 145 146 147 148 149 151 152 159 163 200 201 202 203 204 205 207 212 213 214 215 217 218 221 226 233 235 241 242 243 244 250 257 266 267 268 269 270 279 280 281 283 296 297 300 304 305 306 311 $ 113 0 2 4 6 11 14 31 32 37 41 47 49 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 114 115 116 117 118 119 120 122 128 129 135 136 137 138 139 141 142 143 145 146 147 148 149 151 152 159 167 200 201 202 203 204 205 207 213 214 215 217 218 221 226 233 235 241 242 243 244 257 266 267 268 269 270 279 280 281 283 292 296 297 300 304 305 306 311 $ 114 0 1 2 4 5 6 11 12 15 17 18 23 24 26 30 31 32 33 37 41 48 49 50 51 58 59 60 61 62 63 80 81 82 83 84 85 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 115 116 117 118 119 120 122 128 129 135 136 137 138 139 140 141 142 143 145 146 147 148 149 150 151 152 158 159 163 164 167 168 169 200 201 202 203 204 205 207 211 212 213 214 215 217 218 221 226 229 230 235 237 238 240 241 243 244 246 253 257 264 266 267 268 269 270 279 280 281 283 285 286 287 288 289 292 296 297 300 301 302 305 306 308 309 311 $ 115 0 1 2 4 6 11 12 15 17 18 23 24 26 30 31 32 33 37 41 48 49 50 51 59 60 61 62 63 80 81 82 83 84 85 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 116 117 118 119 120 121 122 128 129 135 136 137 138 139 140 141 142 143 145 146 147 148 149 150 151 152 158 159 163 164 167 200 201 202 203 204 205 207 211 212 213 214 215 217 218 221 226 229 230 235 237 241 243 244 246 253 257 264 266 267 268 269 270 279 280 281 283 285 286 287 288 289 296 297 300 301 302 305 306 308 309 311 $ 116 0 1 2 4 6 11 14 15 24 26 30 31 32 37 41 48 49 50 51 59 60 61 62 63 80 81 82 83 85 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 115 117 118 119 120 121 122 128 129 135 136 137 138 139 140 141 142 143 145 146 147 148 149 151 152 158 159 167 168 169 200 201 202 203 204 205 207 211 212 213 214 215 217 218 221 226 230 235 237 238 241 243 244 246 257 264 266 267 268 269 270 279 280 281 283 287 288 290 292 293 296 297 300 302 305 306 308 311 $ 117 0 2 4 6 11 14 15 31 32 37 41 46 49 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 118 119 120 122 128 129 135 136 137 138 139 141 142 143 145 146 147 148 149 151 152 159 163 167 200 201 202 203 204 205 207 213 214 215 217 218 221 226 233 235 241 242 243 244 247 257 263 266 267 268 269 270 279 280 281 283 292 296 297 300 304 305 306 $ 118 0 2 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 85 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 148 149 151 152 159 200 201 202 203 204 205 207 213 214 215 217 218 221 226 233 235 241 242 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 304 305 306 311 $ 119 0 1 2 4 5 6 11 12 15 17 18 23 24 26 30 31 32 33 37 41 48 49 50 51 59 60 61 62 63 80 81 82 83 84 85 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 115 116 117 118 120 122 128 129 135 136 137 138 139 140 141 142 143 145 146 147 148 149 150 151 152 158 159 163 164 167 168 169 200 201 202 203 204 205 207 211 212 213 214 215 217 218 221 226 229 230 235 237 241 243 244 246 253 257 264 266 267 268 269 270 279 280 281 283 285 286 287 288 289 292 296 297 300 301 302 305 306 308 309 311 $ 120 0 1 4 6 11 17 18 31 32 33 37 41 49 50 51 59 60 61 62 63 80 81 82 83 85 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 160 162 163 165 166 167 200 201 202 203 204 205 213 214 215 217 218 221 226 230 235 241 243 244 250 251 252 253 257 266 267 268 269 270 279 280 281 283 286 296 297 300 305 306 $ 121 2 4 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 60 81 82 84 85 110 115 116 117 123 137 139 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 200 207 211 212 213 229 230 233 237 238 240 242 246 247 253 254 255 256 259 261 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 291 292 293 294 296 301 302 304 307 308 309 311 $ 122 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 123 9 20 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 124 125 126 127 130 131 132 134 158 207 209 210 212 220 222 223 224 231 232 247 261:2 292 304 $ 124 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 125 126 127 130 131 132 133:2 134 209 210 220 222 223 224 231 232 261 $ 125 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 126 127 130 131 132 133:2 134 209 210 220 222 223 224 231 232 261 $ 126 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 127 130 131 132 133:2 134 209 210 220 222 223 224 231 232 261 $ 127 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 130 131 132 133:2 134 209 210 220 222 223 224 231 232 261 $ 128 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 129 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 227 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 130 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 131 132 134 209 210 220 222 223 224 231 232 261 $ 131 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 132 134 209 210 220 222 223 224 231 232 261 $ 132 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 134 209 210 220 222 223 224 231 232 261 $ 133 64:2 65 66 67 70:2 73:2 74:2 76 78 79 124:2 125:2 126:2 127:2 134:2 209:2 210:2 220:2 231:2 $ 134 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133:2 209 210 220 222 223 224 231 232 261 $ 135 3 11 16 17 18 25 26 31 32 33 35 36 42 43 48 49 50 52 81 82 88 92 93 94 111 112 113 114 115 116 117 118 119 120 139 145 148 149 155 159 160 164 165 166 207 212 213 215 230 236 246 264 271 272 273 286 287 290 292 296 302 310 $ 136 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 234 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 137 0 1 4 6 11 14 15 31 32 37 41 48 49 50 51 59 60 61 62 63 80 81 82 83 85 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 121 122 128 129 136 138 139 140 141 142 143 145 146 147 151 152 159 160 162 165 166 167 200 201 202 203 204 205 207 212 213 214 215 217 218 221 226 233 235 241 243 244 250 251 252 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 311 $ 138 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 139 0 4 6 11 24 25 29 30 31 32 37 41 48 49 51 59 60 61 62 63 80 81 82 83 84 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 115 116 117 118 119 120 121 122 128 129 135 136 137 138 140 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 233 235 237 238 241 242 243 244 246 247 253 257 266 267 268 269 270 274 276 279 280 281 283 285 286 287 288 296 297 298 300 304 305 306 307 $ 140 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 31 32 39 49 57 84 85 110 113 114 115 116 119 121 137 139 141 144 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 229 230 233 237 238 239 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 141 0 1 2 4 6 8 11 14 15 20 24 25 30 31 32 36 37 41 48 49 50 51 58 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 121 122 128 129 136 137 138 139 140 142 143 145 146 147 148 149 151 152 156 157 159 164 167 168 169 200 201 202 203 204 205 211 213 214 215 217 218 221 226 230 233 235 237 238 240 241 242 243 244 250 251 252 253 257 264 265 266 267 268 269 270 276 279 280 281 283 285 286 287 288 289 292 293 296 297 300 301 302 304 305 306 307 311 $ 142 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 234 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 143 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 144 140 239 $ 145 0 1 2 4 6 11 15 17 26 31 32 33 37 41 48 49 50 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 115 116 117 118 119 120 121 122 128 129 135 136 137 138 139 141 142 143 146 147 151 152 159 167 200 201 202 203 204 205 207 212 213 214 215 217 218 221 226 230 235 241 243 244 250 251 253 257 266 267 268 269 270 279 280 281 283 288 296 297 300 302 305 306 308 $ 146 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 147 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 148 2 4 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 32 48 49 57 60 84 85 110 112 113 114 115 116 117 118 119 121 135 140 141 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 200 207 208 211 212 213 215 229 230 233 237 238 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 149 2 4 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 32 49 57 60 84 85 110 112 113 114 115 116 117 118 119 121 135 140 141 148 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 200 207 211 212 213 215 229 230 233 237 238 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 150 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 49 57 81 82 84 85 88 94 110 114 115 117 119 120 121 137 140 148 149 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 229 230 233 237 238 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 296 301 302 304 307 308 309 311 $ 151 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 152 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 153 36 93 94 155 228 310 $ 154 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 110 121 140 148 149 150 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 293 294 301 302 304 307 309 311 $ 155 3 5 16 22 27 28 35 36 40 42 43 50 52 53 54 55 92 93 94 135 153 228 236 260 271 272 273 292 295 310 $ 156 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 92 110 121 123 140 141 148 149 150 154 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 309 311 $ 157 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 49 84 85 110 121 140 141 148 149 150 154 156 158 160 161 162 163 164 165 166 167 168 169 207 211 212 213 215 229 230 233 237 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 309 311 $ 158 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 49 81 82 84 85 110 114 115 116 119 121 123 140 148 149 150 154 156 157 160 161 162 163 164 165 166 167 168 169 207 211 212 215 229 230 233 237 238 240 242 246 247 253 254 255 256 259 261 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 296 301 302 304 307 309 311 $ 159 4 6 11 31 32 37 41 48 49 50 51 59 61 62 63 80 81 82 83 88 95 97 100 101 102 103 111 112 113 114 115 116 117 118 119 120 122 128 129 135 137 138 139 141 142 143 145 146 152 200 204 205 213 214 215 217 241 243 244 257 267 279 280 283 296 300 306 $ 160 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 49 57 84 85 110 120 121 135 137 140 148 149 150 154 156 157 158 161 162 163 164 165 166 167 168 169 200 207 208 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 161 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 110 121 140 148 149 150 154 156 157 158 160 162 163 164 165 166 167 168 169 200 207 208 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 308 309 311 $ 162 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 49 57 84 85 110 120 121 137 140 148 149 150 154 156 157 158 160 161 163 164 165 166 167 168 169 207 208 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 163 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 50 57 84 85 110 112 114 115 117 119 120 121 140 148 149 150 154 156 157 158 160 161 162 164 165 166 167 168 169 200 207 208 211 212 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 164 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 48 49 57 84 85 88 110 114 115 119 121 135 140 141 148 149 150 154 156 157 158 160 161 162 163 165 166 167 168 169 207 208 211 212 229 230 233 237 238 240 242 245 246 247:2 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 165 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 49 57 84 85 110 120 121 135 137 140 148 149 150 154 156 157 158 160 161 162 163 164 166 167 168 169 200 207 208 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 166 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 49 57 84 85 110 120 121 135 137 140 148 149 150 154 156 157 158 160 161 162 163 164 165 167 168 169 207 208 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 167 2 4 7 8 11 12 14 15 16 17 18 19 20 23 24 25 26 29 30 49 57 58 81 82 84 85 92 110 113 114 115 116 117 119 120 121 137 139 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 168 169 207 208 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 296 301 302 304 307 308 309 311 $ 168 2 4 7 8 11 12 14 15 16 17 18 19 20 23 24 25 26 29 30 84 85 110 114 115 116 119 121 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 169 207 211 212 213 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 169 2 7 8 11 12 14 15 16 17 18 19 20 23 24 25 26 29 30 84 85 110 114 115 116 119 121 137 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 207 211 212 213 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 171 9 10 13 89 170 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 258 282 $ 172 9 13 89 170 171 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 258 282 $ 173 13 89 170 171 172 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 258 282 $ 174 9 10 13 89 170 171 172 173 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 258 282 $ 175 9 13 89 170 171 172 173 174 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 176 9 13 89 170 171 172 173 174 175 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 177 9 13 89 170 171 172 173 174 175 176 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 258 282 $ 178 9 13 170 171 172 173 174 175 176 177 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 179 13 170 171 172 173 174 175 176 177 178 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 180 9 89 170 171 172 173 174 175 176 177 178 179 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 181 9 13 89 170 171 172 173 174 175 176 177 178 179 180 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 182 13 170 171 172 173 174 175 176 177 178 179 180 181 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 183 89 170 171 172 173 174 175 176 177 178 179 180 181 182 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 184 13 170 171 172 173 174 175 176 177 178 179 180 181 182 183 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 185 9 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 186 187 188 189 190 191 192 193 194 195 196 197 198 199 258 282 $ 186 13 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 187 188 189 190 191 192 193 194 195 196 197 198 199 282 $ 187 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 188 189 190 191 192 193 194 195 196 197 198 199 258 282 $ 188 13 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 189 190 191 192 193 194 195 196 197 198 199 258 282 $ 189 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 190 191 192 193 194 195 196 197 198 199 258 282 $ 190 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 191 192 193 194 195 196 197 198 199 282 $ 191 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 192 193 194 195 196 197 198 199 258 282 $ 192 13 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 193 194 195 196 197 198 199 258 282 $ 193 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 194 195 196 197 198 199 282 $ 194 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 195 196 197 198 199 258 282 $ 195 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 196 197 198 199 282 $ 196 13 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 197 198 199 258 282 $ 197 9 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 198 199 258 282 $ 198 9 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 199 258 282 $ 199 9 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 258 282 $ 200 0 1 4 6 11 24 31 32 37 41 51 58 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 121 122 128 129 136 137 138 139 141 142 143 145 146 147 148 149 151 152 159 161 163 201 202 203 204 205 213 214 215 217 218 221 226 230 234 235 237 241 243 244 250 251 252 257 266 267 268 269 270 275 279 280 281 283 288 296 297 300 305 306 308 311 $ 201 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 202 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 203 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 204 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 205 213 214 215 217 218 221 226 235 241 242 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 205 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 206 219 228 271 272 $ 207 1 2 4 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 31 32 48 49 57 81 82 84 85 88 110 111 112 113 114 115 116 117 118 119 121 123 135 137 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 208 211 212 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 261 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 296 301 302 304 307 309 311 $ 208 2 14 15 23 24 26 30 57 85 140 150 156 160 161 162 163 164 165 166 167 207 212 229 233 247 253 254 255 256 262 263 274 285 286 287 288 289 294 301 304 311 $ 209 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133:2 134 210 220 222 223 224 231 232 261 $ 210 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133:2 134 209 220 222 223 224 231 232 261 $ 211 1 2 4 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 48 49 50 81 82 84 85 88 92 110 114 115 116 119 121 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 296 301 302 304 307 309 311 $ 212 1 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 31 32 48 49 57 81 82 84 85 88 94 110 112 114 115 116 118 119 121 123 135 137 140 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 215 229 230 233 237 238 240 242 245 246 247:2 253 254 255 256 259 261 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 296 301 302 304 307 309 311 $ 213 0 1 4 6 11 24 31 32 37 41 48 49 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 121 122 128 129 136 137 138 139 141 142 143 145 146 147 148 149 151 152 157 159 168 169 200 201 202 203 204 205 214 215 217 218 221 226 229 235 241 243 244 250 251 252 253 254 256 257 263 266 267 268 269 270 275 276 277 278 279 280 281 283 286 287 288 296 297 300 305 306 307 $ 214 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 215 0 2 4 6 11 14 15 23 31 32 37 41 48 49 50 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 111 112 113 114 115 116 117 118 119 120 122 128 129 135 136 137 138 139 141 142 143 145 146 147 148 149 151 152 157 158 159 163 200 201 202 203 204 205 207 212 213 214 217 218 221 226 230 235 241 242 243 244 246 257 264 266 267 268 269 270 274 279 280 281 283 285 286 287 288 289 294 296 297 300 301 302 304 305 306 308 311 $ 216 9 89 282 $ 217 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 218 221 226 234 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 218 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97:2 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 219 92 94 206 228 260 271 272 $ 220 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133:2 134 209 210 222 223 224 231 232 261 $ 221 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 222 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 134 209 210 220 223 224 231 232 261 $ 223 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133 134 209 210 220 222 224 231 232 261 $ 224 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133 134 209 210 220 222 223 231 232 261 $ 225 107 $ 226 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 227 129 $ 228 3 16 35 36 40 43 52 53 54 55 92 94 155 206 219 236 260 271 272 273 310 $ 229 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 48 49 57 84 85 110 114 115 119 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 309 311 $ 230 2 4 7 8 9 11 12 14 15 17 18 19 20 23 24 25 26 29 30 48 49 57 58 81 82 84 85 88 92 93 94 110 114 115 116 118 119 120 121 135 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 200 207 211 212 215 229 233 237 238 240 242 245 246 247 253 254 255 256 258 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 309 311 $ 231 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 133:2 134 209 210 220 222 223 224 232 261 $ 232 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 123 124 125 126 127 130 131 132 134 209 210 220 222 223 224 231 261 $ 233 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 110 112 113 114 116 117 118 121 137 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 229 230 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 309 311 $ 234 11 82 136 142 200 217 306 $ 235 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102:2 103:2 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 236 3 16 35 36 40 42 43 48 50 52 53 54 55 90 92 93 94 111 135 155 228 248 249 260 271 272 273 310 $ 237 2 4 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 81 82 84 85 88 110 112 114 115 116 119 121 137 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 200 207 211 212 229 230 233 238 240 242 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 293 294 296 298 301 302 304 307 309 311 $ 238 2 7 8 11 12 14 15 18 20 23 24 25 26 29 30 81 84 85 110 114 116 119 121 139 140 141 148 149 150 156 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 240 242 245 246 247 253 254 255 256 262 263 264 265 274 275 284 285 286 287 288 289 292 293 294 301 302 304 307 309 311 $ 239 140 144 286 $ 240 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 84 85 110 114 119 121 123 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 309 311 $ 241 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 242 2 7 8 11 12 14 15 17 18 20 23 24 25 26 29 30 57 81 84 85 110 112 113 117 118 121 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 204 207 208 211 212 215 229 230 233 237 238 240 245 246 247 251 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 309 311 $ 243 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 244 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 257 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 245 2 14 15 20 23 24 29 30 84 85 110 140 154 156 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 238 240 242 246 247 253 254 255 256 263 264 274 275 278 284 285 287 288 293 294 301 302 304 307 309 311 $ 246 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 49 81 84 85 88 110 111 113 114 115 116 119 121 135 139 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 215 229 230 233 237 238 240 242 245 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 301 302 304 307 309 311 $ 247 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 94 110 117 121 123 139 140 148 149 150 154 156 157 158 160 161 162 163 164:2 165 166 167 168 169 207 208 211 212 229 230 233 237 238 240 242 245 246 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285:2 286:2 287:2 288:2 289 292 293 294 301 302 304 307 309:2 311 $ 248 35 40 42 43 52 53 55 90 92 93 94 228 236 249 271 272 273 299 $ 249 35 40 42 43 52 53 90 92 93 94 228 236 248 271 272 273 299 $ 250 1 4 11 88 112 118 120 137 141 145 200 213 251 252 264 296 $ 251 1 4 50 112 120 137 141 145 200 213 242 250 252 296 304 $ 252 1 4 50 85 120 137 141 200 213 250 251 296 $ 253 2 4 5 7 8 11 12 13 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 92 110 114 115 119 120 121 137 139 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 229 230 233 237 238 240 242 245 246 247 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 254 2 7 8 9 11 12 14 15 17 18 19 20 23 24 25 26 29 30 48 49 57 84 85 110 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 215 229 230 233 237 238 240 242 245 246 247 253 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 309 311 $ 255 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 110 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 229 230 233 237 238 240 242 245 246 247 253 254 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 309 311 $ 256 2 7 8 9 11 12 14 15 17 18 19 20 23 24 25 26 29 30 33 48 49 57 84 85 110 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 215 229 230 233 237 238 240 242 245 246 247 253 254 255 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 309 311 $ 257 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 266 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 258 9 10 13 87 89 171 172 173 174 177 185 187 188 189 190 191 192 193 194 196 197 198 199 282 $ 259 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 110 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 229 230 233 237 240 242 246 247 253 254 255 256 262 263 265 274 275 276 277 278 284 285 286 287 288 289 293 294 301 302 304 307 309 311 $ 260 3 16 22 35 36 42 43 50 90 92 93 94 155 219 228 236 271 272 273 310 $ 261 9 13 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 89 121 123:2 124 125 126 127 130 131 132 134 158 207 209 210 212 220 222 223 224 231 232 292 $ 262 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 84 85 110 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 229 230 233 237 238 240 242 246 247 253 254 255 256 259 263 264 265 274 275 284 285 286 287 288 289 293 294 301 302 304 307 309 311 $ 263 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 57 58 84 85 110 117 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 264 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 48 49 84 85 110 114 115 116 119 121 135 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 262 263 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 265 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 84 85 110 121 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 213 229 230 233 237 238 240 242 246 247 253 254 255 256 259 262 263 264 274 275 276 277 278 285 286 287 288 289 290 292 293 294 301 302 304 307 309 311 $ 266 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 267 268 269 270 279 280 281 283 296 297 300 305 306 $ 267 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 268 269 270 279 280 281 283 296 297 300 305 306 $ 268 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 269 270 279 280 281 283 296 297 300 305 306 $ 269 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 270 279 280 281 283 296 297 300 305 306 $ 270 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 279 280 281 283 296 297 300 305 306 $ 271 16 33 35 36 40 42 43 48 49 50 52 53 54 55 90 92 93 94 111 135 155 206 219 228 236 248 249 260 272 273 310 $ 272 16 33 35 36 40 42 43 48 49 50 52 53 54 55 90 92 93 94 111 135 155 206 219 228 236 248 249 260 271 273 310 $ 273 3 5 16 22 35 36 40 42 43 48 49 50 52 53 54 55 90 92 93 94 111 135 155 228 236 248 249 260 271 272 290 299 310 $ 274 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 57 81 82 84 85 110 121 139 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 302 304 307 309 311 $ 275 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 84 85 110 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 200 207 211 212 213 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 276 277 278 285 286 287 288 289 290 292 293 294 301 302 304 307 308 309 311 $ 276 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 49 84 85 110 121 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 213 229 230 233 237 240 242 246 247 253 254 255 256 259 263 264 265 274 275 277 278 285 286 287 288 289 293 294 301 302 304 307 309 311 $ 277 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 49 84 85 110 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 213 229 230 233 237 240 242 246 247 253 254 255 256 259 263 264 265 274 275 276 278 285 286 287 288 289 293 294 301 302 304 307 309 311 $ 278 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 49 84 85 110 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 213 229 230 233 237 240 242 245 246 247 253 254 255 256 259 263 264 265 274 275 276 277 285 286 287 288 289 293 294 301 302 304 307 309 311 $ 279 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 280 281 283 296 297 300 305 306 $ 280 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 281 283 296 297 300 305 306 $ 281 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 283 296 297 300 305 306 $ 282 9 10 13 89 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 216 258 $ 283 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 296 297 300 305 306 $ 284 2 12 14 15 17 18 20 23 24 25 26 29 30 84 85 110 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 274 285 286 287 288 289 293 294 301 302 304 309 311 $ 285 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 57 58 81 82 84 85 88 110 114 115 119 121 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 215 229 230 233 237 238 240 242 245 246 247:2 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 286 287 288 289 290 292 293 294 296 301 302 304 307 308 309 311 $ 286 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 32 49 57 58 81 82 84 85 88 110 111 114 115 119 120 121 135 139 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 215 229 230 233 237 238 239 240 242 246 247:2 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 287 288 289 290 292 293 294 296 301 302 304 307 308 309 311 $ 287 2 5 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 31 32 49 57 58 81 82 84 85 88 110 111 114 115 116 119 121 135 139 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 215 229 230 233 237 238 240 242 245 246 247:2 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 288 289 290 292 293 294 296 298 301 302 304 307 308 309 311 $ 288 2 4 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 32 49 57 58 81 82 84 85 88 110 114 115 116 119 121 139 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 200 207 208 211 212 213 215 229 230 233 237 238 240 242 245 246 247:2 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 289 290 292 293 294 296 298 301 302 304 307 308 309 311 $ 289 2 4 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 31 32 49 57 58 81 82 84 85 88 110 114 115 116 119 121 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 215 229 230 233 237 238 240 242 246 247:2 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 290 292 293 294 296 301 302 304 307 308 309 311 $ 290 2 3 7 8 14 15 17 18 19 20 23 24 25 33 42 49 50 85 92 93 111 115 116 121 135 140 148 149 150 156 157 158 160 161 162 163 164 165 166 167 168 169 229 230 233 240 242 253 254 255 256 263 264 265 273 274 275 285 286 287 288 289 291 292 293 294 301 302 307 309 311 $ 291 121 290 292 $ 292 2 7 8 11 12 16 17 18 20 23 24 25 26 30 33 35 43 48 49 50 84 92 93 94 110 111 113 114 115 116 117 119 121 123 135 140 141 148 149 150 155 156 157 158 160 162 163 164 165 166 167 168 169 207 211 212 230 238 240 242 246 247 253 261 263 264 265 274 275 285 286 287 288 289 290 291 293 294 296 301 302 304 307 308 310 311 $ 293 2 7 8 12 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 88 110 116 121 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 294 301 302 304 307 309 311 $ 294 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 57 84 85 110 121 123 139 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 301 302 304 307 308 309 311 $ 295 5 30 91 92 155 310 $ 296 0 1 2 4 6 11 17 18 25 31 32 37 41 48 49 50 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 135 136 137 138 139 141 142 143 145 146 147 150 151 152 158 159 167 200 201 202 203 204 205 207 211 212 213 214 215 217 218 221 226 235 237 241 243 244 250 251 252 257 266 267 268 269 270 279 280 281 283 285 286 287 288 289 292 297 300 305 306 308 311 $ 297 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 300 305 306 $ 298 5 11 21 30 34 38 58 81 82 84 92 94 139 237 261 287 288 $ 299 16 40 42 43 93 94 248 249 273 $ 300 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 305 306 $ 301 2 7 8 9 11 12 14 15 17 18 19 20 23 24 25 26 29 30 48 49 57 81 84 85 92 94 110 114 115 119 121 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 213 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 302 304 307 309 311 $ 302 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 31 49 81 84 85 88 110 114 115 116 119 121 135 140 141 145 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 301 304 307 309 311 $ 303 3 36 $ 304 2 7 8 11 12 14 15 17 18 20 23 24 25 26 29 30 57 81 84 85 88 110 112 113 117 118 121 123 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 208 211 212 215 229 230 233 237 238 240 242 245 246 247 251 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 292 293 294 301 302 307 309 311 $ 305 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 200 201 202 203 204 205 213 214 215 217 218 221 226 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 306 $ 306 0 4 6 11 31 32 37 41 51 59 60 61 62 63 80 81 82 83 86 88 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 112 113 114 115 116 117 118 119 120 122 128 129 136 137 138 139 141 142 143 145 146 147 151 152 159 200 201 202 203 204 205 213 214 215 217 218 221 226 234 235 241 243 244 257 266 267 268 269 270 279 280 281 283 296 297 300 305 $ 307 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 58 81 84 85 88 110 121 139 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 213 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 285 286 287 288 289 290 292 293 294 301 302 304 308 309 311 $ 308 2 8 11 13 17 18 23 24 25 26 30 58 81 82 85 114 115 116 119 120 121 140 145 148 149 150 160 161 162 163 164 165 166 167 168 169 200 207 212 215 230 253 254 256 263 264 275 285 286 287 288 289 290 292 294 296 307 311 $ 309 2 7 8 11 12 14 15 17 18 19 20 23 24 25 26 29 30 84 85 110 114 115 119 121 140 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 207 211 212 229 230 233 237 238 240 242 245 246 247:2 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 293 294 301 302 304 307 311 $ 310 3 5 16 22 27 28 35 36 40 42 43 50 52 53 54 55 92 93 94 135 153 155 228 236 260 271 272 273 292 295 $ 311 2 7 8 9 11 12 14 15 17 18 19 20 23 24 25 26 29 30 35 57 58 81 82 84 85 88 110 112 113 114 115 116 118 119 120 121 137 140 141 148 149 150 154 156 157 158 160 161 162 163 164 165 166 167 168 169 200 207 208 211 212 213 215 229 230 233 237 238 240 242 245 246 247 253 254 255 256 259 262 263 264 265 274 275 276 277 278 284 285 286 287 288 289 290 292 293 294 296 301 302 304 307 308 309 $ ) mcl-12-135/graphs/falkner2.mci0000644000402500021140000003147410556367530012776 00000000000000inverted euclidean distance (mclheader mcltype matrix dimensions 150x150 ) (mclmatrix begin 0 1:1.000 9:0.707 10:1.000 11:0.447 17:0.500 18:0.447 19:0.354 $ 1 0:1.000 2:0.500 9:0.447 10:0.707 11:0.707 12:0.447 17:0.447 18:0.500 19:0.447 20:0.354 $ 2 1:0.500 3:1.000 11:0.707 12:1.000 18:0.354 19:0.447 20:0.500 21:0.447 $ 3 2:1.000 4:0.500 11:0.447 12:0.707 19:0.354 20:0.447 21:0.500 22:0.354 $ 4 3:0.500 5:1.000 13:0.707 21:0.354 22:0.500 $ 5 4:1.000 13:1.000 22:0.447 $ 6 7:1.000 8:0.500 14:0.707 15:1.000 16:0.707 23:0.354 24:0.447 25:0.447 26:0.354 $ 7 6:1.000 8:1.000 14:0.447 15:0.707 16:1.000 24:0.354 25:0.500 26:0.447 27:0.354 $ 8 6:0.500 7:1.000 15:0.447 16:0.707 25:0.447 26:0.500 27:0.447 $ 9 0:0.707 1:0.447 10:1.000 17:0.707 18:0.447 28:0.354 29:0.447 $ 10 0:1.000 1:0.707 9:1.000 11:0.500 17:1.000 18:0.707 19:0.447 29:0.354 $ 11 0:0.447 1:0.707 2:0.707 3:0.447 10:0.500 12:1.000 17:0.447 18:0.707 19:1.000 20:0.707 21:0.447 $ 12 1:0.447 2:1.000 3:0.707 11:1.000 18:0.447 19:0.707 20:1.000 21:0.707 $ 13 4:0.707 5:1.000 22:0.707 30:0.447 31:0.447 32:0.354 $ 14 6:0.707 7:0.447 15:1.000 16:0.500 23:0.707 24:1.000 25:0.447 32:0.354 33:0.500 34:0.447 $ 15 6:1.000 7:0.707 8:0.447 14:1.000 16:1.000 23:0.447 24:0.707 25:0.707 26:0.447 33:0.447 34:0.500 35:0.354 $ 16 6:0.707 7:1.000 8:0.707 14:0.500 15:1.000 24:0.447 25:1.000 26:0.707 27:0.447 33:0.354 34:0.447 35:0.447 36:0.354 $ 17 0:0.500 1:0.447 9:0.707 10:1.000 11:0.447 18:1.000 19:0.500 29:0.447 37:0.500 38:0.447 $ 18 0:0.447 1:0.500 2:0.354 9:0.447 10:0.707 11:0.707 12:0.447 17:1.000 19:1.000 20:0.500 37:0.447 38:0.500 $ 19 0:0.354 1:0.447 2:0.447 3:0.354 10:0.447 11:1.000 12:0.707 17:0.500 18:1.000 20:1.000 21:0.500 37:0.354 38:0.447 39:0.354 $ 20 1:0.354 2:0.500 3:0.447 11:0.707 12:1.000 18:0.500 19:1.000 21:1.000 38:0.354 39:0.447 40:0.354 $ 21 2:0.447 3:0.500 4:0.354 11:0.447 12:0.707 19:0.500 20:1.000 22:0.500 30:0.447 39:0.500 40:0.447 $ 22 3:0.354 4:0.500 5:0.447 13:0.707 21:0.500 30:1.000 31:0.447 39:0.354 40:0.447 41:0.447 42:0.354 $ 23 6:0.354 14:0.707 15:0.447 24:1.000 31:0.447 32:0.707 33:0.707 34:0.447 42:0.354 $ 24 6:0.447 7:0.354 14:1.000 15:0.707 16:0.447 23:1.000 25:0.500 32:0.447 33:1.000 34:0.707 $ 25 6:0.447 7:0.500 8:0.447 14:0.447 15:0.707 16:1.000 24:0.500 26:1.000 27:0.500 33:0.447 34:0.707 35:0.707 36:0.447 $ 26 6:0.354 7:0.447 8:0.500 15:0.447 16:0.707 25:1.000 27:1.000 34:0.447 35:1.000 36:0.707 $ 27 7:0.354 8:0.447 16:0.447 25:0.500 26:1.000 35:0.707 36:1.000 $ 28 9:0.354 29:1.000 43:0.354 $ 29 9:0.447 10:0.354 17:0.447 28:1.000 37:0.447 43:0.447 $ 30 13:0.447 21:0.447 22:1.000 31:0.500 39:0.447 40:0.707 41:0.707 42:0.447 45:0.447 46:0.500 47:0.354 $ 31 13:0.447 22:0.447 23:0.447 30:0.500 32:1.000 41:0.707 42:1.000 46:0.354 47:0.500 48:0.447 $ 32 13:0.354 14:0.354 23:0.707 24:0.447 31:1.000 33:0.500 41:0.447 42:0.707 47:0.447 48:0.500 49:0.354 $ 33 14:0.500 15:0.447 16:0.354 23:0.707 24:1.000 25:0.447 32:0.500 34:1.000 48:0.354 49:0.500 $ 34 14:0.447 15:0.500 16:0.447 23:0.447 24:0.707 25:0.707 26:0.447 33:1.000 35:0.500 49:0.447 50:0.354 $ 35 15:0.354 16:0.447 25:0.707 26:1.000 27:0.707 34:0.500 36:1.000 50:0.500 $ 36 16:0.354 25:0.447 26:0.707 27:1.000 35:1.000 50:0.447 $ 37 17:0.500 18:0.447 19:0.354 29:0.447 38:1.000 43:0.707 52:0.500 $ 38 17:0.447 18:0.500 19:0.447 20:0.354 37:1.000 43:0.447 44:0.447 52:0.447 $ 39 19:0.354 20:0.447 21:0.500 22:0.354 30:0.447 40:1.000 44:0.707 45:0.707 46:0.447 $ 40 20:0.354 21:0.447 22:0.447 30:0.707 39:1.000 41:0.500 44:0.447 45:1.000 46:0.707 $ 41 22:0.447 30:0.707 31:0.707 32:0.447 40:0.500 42:1.000 45:0.447 46:0.707 47:0.707 48:0.447 53:0.447 54:0.354 $ 42 22:0.354 23:0.354 30:0.447 31:1.000 32:0.707 41:1.000 46:0.447 47:1.000 48:0.707 53:0.500 54:0.447 55:0.354 $ 43 28:0.354 29:0.447 37:0.707 38:0.447 51:0.447 52:0.707 60:0.500 61:0.447 62:0.354 $ 44 38:0.447 39:0.707 40:0.447 45:0.500 62:0.354 63:0.447 64:0.500 $ 45 30:0.447 39:0.707 40:1.000 41:0.447 44:0.500 46:1.000 64:0.354 $ 46 30:0.500 31:0.354 39:0.447 40:0.707 41:0.707 42:0.447 45:1.000 47:0.500 53:0.447 $ 47 30:0.354 31:0.500 32:0.447 41:0.707 42:1.000 46:0.500 48:1.000 53:1.000 54:0.707 55:0.447 65:0.354 $ 48 31:0.447 32:0.500 33:0.354 41:0.447 42:0.707 47:1.000 49:0.500 53:0.707 54:1.000 55:0.707 65:0.447 66:0.354 $ 49 32:0.354 33:0.500 34:0.447 48:0.500 54:0.447 55:0.707 56:0.707 57:0.447 65:0.447 66:0.500 $ 50 34:0.354 35:0.500 36:0.447 56:0.447 57:0.707 58:1.000 59:0.707 67:0.447 $ 51 43:0.447 60:0.447 68:0.354 $ 52 37:0.500 38:0.447 43:0.707 60:0.707 61:1.000 62:0.707 63:0.447 68:0.447 69:0.447 $ 53 41:0.447 42:0.500 46:0.447 47:1.000 48:0.707 54:1.000 55:0.500 65:0.447 71:0.447 72:0.354 $ 54 41:0.354 42:0.447 47:0.707 48:1.000 49:0.447 53:1.000 55:1.000 65:0.707 66:0.447 71:0.354 72:0.447 73:0.354 $ 55 42:0.354 47:0.447 48:0.707 49:0.707 53:0.500 54:1.000 56:0.500 65:1.000 66:0.707 72:0.500 73:0.447 74:0.354 $ 56 49:0.707 50:0.447 55:0.500 57:1.000 58:0.500 65:0.447 66:0.707 72:0.354 73:0.447 74:0.500 $ 57 49:0.447 50:0.707 56:1.000 58:1.000 59:0.500 66:0.447 67:0.447 73:0.354 74:0.447 75:0.354 $ 58 50:1.000 56:0.500 57:1.000 59:1.000 67:0.707 74:0.354 75:0.447 $ 59 50:0.707 57:0.500 58:1.000 67:1.000 75:0.500 $ 60 43:0.500 51:0.447 52:0.707 61:1.000 62:0.500 68:1.000 69:0.447 76:0.354 77:0.447 78:0.354 $ 61 43:0.447 52:1.000 60:1.000 62:1.000 63:0.500 68:0.707 69:0.707 77:0.354 78:0.447 $ 62 43:0.354 44:0.354 52:0.707 60:0.500 61:1.000 63:1.000 64:0.500 68:0.447 69:1.000 78:0.500 $ 63 44:0.447 52:0.447 61:0.500 62:1.000 64:1.000 69:0.707 78:0.447 $ 64 44:0.500 45:0.354 62:0.500 63:1.000 69:0.447 70:0.447 78:0.354 $ 65 47:0.354 48:0.447 49:0.447 53:0.447 54:0.707 55:1.000 56:0.447 66:1.000 72:1.000 73:0.707 74:0.447 79:0.500 80:0.447 $ 66 48:0.354 49:0.500 54:0.447 55:0.707 56:0.707 57:0.447 65:1.000 72:0.707 73:1.000 74:0.707 79:0.447 80:0.500 81:0.354 $ 67 50:0.447 57:0.447 58:0.707 59:1.000 75:1.000 81:0.354 82:0.500 $ 68 51:0.354 52:0.447 60:1.000 61:0.707 62:0.447 69:0.500 76:0.447 77:0.707 78:0.447 83:0.500 $ 69 52:0.447 60:0.447 61:0.707 62:1.000 63:0.707 64:0.447 68:0.500 78:1.000 83:0.354 84:0.447 85:0.354 $ 70 64:0.447 71:0.500 85:0.354 86:0.447 $ 71 53:0.447 54:0.354 70:0.500 86:0.447 87:0.354 $ 72 53:0.354 54:0.447 55:0.500 56:0.354 65:1.000 66:0.707 73:1.000 74:0.500 79:1.000 80:0.707 87:0.447 88:0.447 $ 73 54:0.354 55:0.447 56:0.447 57:0.354 65:0.707 66:1.000 72:1.000 74:1.000 79:0.707 80:1.000 81:0.447 87:0.354 88:0.500 $ 74 55:0.354 56:0.500 57:0.447 58:0.354 65:0.447 66:0.707 72:0.500 73:1.000 79:0.447 80:0.707 81:0.707 88:0.447 89:0.354 $ 75 57:0.354 58:0.447 59:0.500 67:1.000 81:0.447 82:1.000 89:0.447 $ 76 60:0.354 68:0.447 77:1.000 83:0.447 90:0.500 91:0.447 92:0.354 $ 77 60:0.447 61:0.354 68:0.707 76:1.000 83:0.707 90:0.447 91:0.500 92:0.447 $ 78 60:0.354 61:0.447 62:0.500 63:0.447 64:0.354 68:0.447 69:1.000 83:0.447 84:0.707 85:0.447 92:0.354 93:0.354 $ 79 65:0.500 66:0.447 72:1.000 73:0.707 74:0.447 80:1.000 87:0.707 88:0.707 96:0.447 97:0.354 $ 80 65:0.447 66:0.500 72:0.707 73:1.000 74:0.707 79:1.000 81:0.500 87:0.447 88:1.000 96:0.500 97:0.447 $ 81 66:0.354 67:0.354 73:0.447 74:0.707 75:0.447 80:0.500 82:0.500 88:0.447 89:0.707 96:0.354 97:0.447 98:0.447 $ 82 67:0.500 75:1.000 81:0.500 89:0.707 98:0.447 $ 83 68:0.500 69:0.354 76:0.447 77:0.707 78:0.447 90:0.447 91:0.707 92:1.000 99:0.447 100:0.500 101:0.447 $ 84 69:0.447 78:0.707 85:1.000 93:0.707 101:0.354 102:0.500 $ 85 69:0.354 70:0.354 78:0.447 84:1.000 93:1.000 94:0.447 102:0.447 $ 86 70:0.447 71:0.447 94:0.707 95:1.000 103:0.354 $ 87 71:0.354 72:0.447 73:0.354 79:0.707 80:0.447 88:0.500 96:0.447 103:0.447 104:0.500 $ 88 72:0.447 73:0.500 74:0.447 79:0.707 80:1.000 81:0.447 87:0.500 96:1.000 97:0.707 104:0.354 105:0.354 $ 89 74:0.354 75:0.447 81:0.707 82:0.707 97:0.447 98:1.000 105:0.447 $ 90 76:0.500 77:0.447 83:0.447 91:1.000 92:0.500 99:0.707 100:0.447 $ 91 76:0.447 77:0.500 83:0.707 90:1.000 92:1.000 99:1.000 100:0.707 101:0.447 106:0.354 $ 92 76:0.354 77:0.447 78:0.354 83:1.000 90:0.500 91:1.000 99:0.707 100:1.000 101:0.707 106:0.447 107:0.354 $ 93 78:0.354 84:0.707 85:1.000 94:0.500 102:0.707 107:0.354 $ 94 85:0.447 86:0.707 93:0.500 95:1.000 108:0.447 $ 95 86:1.000 94:1.000 103:0.447 108:0.500 $ 96 79:0.447 80:0.500 81:0.354 87:0.447 88:1.000 97:1.000 104:0.447 105:0.447 109:0.354 110:0.447 111:0.354 $ 97 79:0.354 80:0.447 81:0.447 88:0.707 89:0.447 96:1.000 98:0.500 105:0.707 110:0.500 111:0.447 $ 98 81:0.447 82:0.447 89:1.000 97:0.500 105:0.707 110:0.354 111:0.447 $ 99 83:0.447 90:0.707 91:1.000 92:0.707 100:1.000 101:0.500 106:0.447 112:0.447 113:0.500 114:0.447 $ 100 83:0.500 90:0.447 91:0.707 92:1.000 99:1.000 101:1.000 106:0.707 107:0.447 112:0.354 113:0.447 114:0.500 $ 101 83:0.447 84:0.354 91:0.447 92:0.707 99:0.500 100:1.000 102:0.500 106:1.000 107:0.707 113:0.354 114:0.447 115:0.354 $ 102 84:0.500 85:0.447 93:0.707 101:0.500 106:0.447 107:0.707 115:0.500 $ 103 86:0.354 87:0.447 95:0.447 104:1.000 108:0.447 109:0.707 116:0.354 $ 104 87:0.500 88:0.354 96:0.447 103:1.000 109:1.000 116:0.447 $ 105 88:0.354 89:0.447 96:0.447 97:0.707 98:0.707 110:0.707 111:1.000 117:0.500 $ 106 91:0.354 92:0.447 99:0.447 100:0.707 101:1.000 102:0.447 107:1.000 113:0.447 114:0.707 115:0.447 118:0.354 119:0.500 120:0.447 $ 107 92:0.354 93:0.354 100:0.447 101:0.707 102:0.707 106:1.000 114:0.447 115:0.707 119:0.447 120:0.500 $ 108 94:0.447 95:0.500 103:0.447 121:0.354 122:0.354 $ 109 96:0.354 103:0.707 104:1.000 116:0.707 122:0.447 123:0.500 124:0.447 $ 110 96:0.447 97:0.500 98:0.354 105:0.707 111:1.000 116:0.447 117:0.707 124:0.354 125:0.447 126:0.354 $ 111 96:0.354 97:0.447 98:0.447 105:1.000 110:1.000 117:1.000 125:0.500 126:0.447 127:0.354 $ 112 99:0.447 100:0.354 113:1.000 114:0.500 118:0.707 128:0.500 $ 113 99:0.500 100:0.447 101:0.354 106:0.447 112:1.000 114:1.000 118:1.000 119:0.447 128:0.447 129:0.354 $ 114 99:0.447 100:0.500 101:0.447 106:0.707 107:0.447 112:0.500 113:1.000 118:0.707 119:0.707 120:0.447 128:0.354 129:0.447 $ 115 101:0.354 102:0.500 106:0.447 107:0.707 119:0.447 120:0.707 121:0.447 129:0.354 130:0.447 131:0.354 $ 116 103:0.354 104:0.447 109:0.707 110:0.447 122:0.447 123:0.707 124:1.000 134:0.354 135:0.500 136:0.354 $ 117 105:0.500 110:0.707 111:1.000 125:1.000 126:0.707 127:0.447 136:0.447 $ 118 106:0.354 112:0.707 113:1.000 114:0.707 119:0.500 128:0.707 129:0.447 $ 119 106:0.500 107:0.447 113:0.447 114:0.707 115:0.447 118:0.500 120:1.000 129:1.000 137:0.447 $ 120 106:0.447 107:0.500 114:0.447 115:0.707 119:1.000 129:0.707 130:0.447 137:0.500 $ 121 108:0.354 115:0.447 130:0.707 131:1.000 132:0.707 133:0.447 138:0.447 $ 122 108:0.354 109:0.447 116:0.447 123:1.000 124:0.500 133:0.447 134:1.000 135:0.447 139:0.447 140:0.500 141:0.447 $ 123 109:0.500 116:0.707 122:1.000 124:1.000 134:0.707 135:0.707 139:0.354 140:0.447 141:0.500 $ 124 109:0.447 110:0.354 116:1.000 122:0.500 123:1.000 134:0.447 135:1.000 136:0.447 140:0.354 141:0.447 $ 125 110:0.447 111:0.500 117:1.000 126:1.000 127:0.500 136:0.707 142:0.354 $ 126 110:0.354 111:0.447 117:0.707 125:1.000 127:1.000 136:0.447 142:0.447 $ 127 111:0.354 117:0.447 125:0.500 126:1.000 142:0.500 $ 128 112:0.500 113:0.447 114:0.354 118:0.707 143:0.500 144:0.447 $ 129 113:0.354 114:0.447 115:0.354 118:0.447 119:1.000 120:0.707 137:0.707 144:0.354 145:0.447 $ 130 115:0.447 120:0.447 121:0.707 131:1.000 132:0.500 137:0.447 138:0.447 145:0.354 146:0.500 147:0.354 $ 131 115:0.354 121:1.000 130:1.000 132:1.000 133:0.500 138:0.707 146:0.447 147:0.447 $ 132 121:0.707 130:0.500 131:1.000 133:1.000 138:1.000 139:0.447 146:0.354 147:0.500 $ 133 121:0.447 122:0.447 131:0.500 132:1.000 134:0.500 138:0.707 139:0.707 140:0.447 147:0.447 $ 134 116:0.354 122:1.000 123:0.707 124:0.447 133:0.500 135:0.500 139:0.707 140:1.000 141:0.707 148:0.447 149:0.354 $ 135 116:0.500 122:0.447 123:0.707 124:1.000 134:0.500 136:0.500 140:0.447 141:0.707 148:0.447 149:0.500 $ 136 116:0.354 117:0.447 124:0.447 125:0.707 126:0.447 135:0.500 149:0.354 $ 137 119:0.447 120:0.500 129:0.707 130:0.447 145:1.000 146:0.447 $ 138 121:0.447 130:0.447 131:0.707 132:1.000 133:0.707 139:0.500 146:0.447 147:1.000 $ 139 122:0.447 123:0.354 132:0.447 133:0.707 134:0.707 138:0.500 140:1.000 141:0.500 147:0.447 148:0.447 $ 140 122:0.500 123:0.447 124:0.354 133:0.447 134:1.000 135:0.447 139:1.000 141:1.000 148:0.707 149:0.447 $ 141 122:0.447 123:0.500 124:0.447 134:0.707 135:0.707 139:0.500 140:1.000 148:1.000 149:0.707 $ 142 125:0.354 126:0.447 127:0.500 $ 143 128:0.500 144:1.000 $ 144 128:0.447 129:0.354 143:1.000 $ 145 129:0.447 130:0.354 137:1.000 146:0.500 $ 146 130:0.500 131:0.447 132:0.354 137:0.447 138:0.447 145:0.500 147:0.500 $ 147 130:0.354 131:0.447 132:0.500 133:0.447 138:1.000 139:0.447 146:0.500 $ 148 134:0.447 135:0.447 139:0.447 140:0.707 141:1.000 149:1.000 $ 149 134:0.354 135:0.500 136:0.354 140:0.447 141:0.707 148:1.000 $ ) mcl-12-135/graphs/small64.mci0000644000402500021140000000165210556367532012551 00000000000000(mclheader mcltype matrix dimensions 12x12 ) (mcldoms 0 111 32223 3334333 545555545 66645654666 7657777777567 888886787688888 98799999999999789 1010101010101010101 1111111111111111111 9223372036854775807 $ ) (mclmatrix begin 0 111 66645654666 7657777777567 1010101010101010101 $ 111 0 32223 545555545 $ 32223 111 3334333 545555545 $ 3334333 32223 888886787688888 98799999999999789 1111111111111111111 $ 545555545 111 32223 7657777777567 888886787688888 $ 66645654666 0 1010101010101010101 $ 7657777777567 0 545555545 1010101010101010101 $ 888886787688888 3334333 545555545 98799999999999789 1111111111111111111 $ 98799999999999789 3334333 888886787688888 1111111111111111111 9223372036854775807 $ 1010101010101010101 0 66645654666 7657777777567 $ 1111111111111111111 3334333 888886787688888 98799999999999789 9223372036854775807 $ 9223372036854775807 98799999999999789 1111111111111111111 $ ) mcl-12-135/graphs/data.hdr0000644000402500021140000000005510556367527012205 00000000000000(mclheader mcltype matrix dimensions 12x12 ) mcl-12-135/graphs/data.abc.map0000644000402500021140000000021410556367527012726 00000000000000(mclheader mcltype matrix dimensions 12x12 ) (mclmatrix begin 0 0 $ 1 3 $ 2 6 $ 3 9 $ 4 2 $ 5 4 $ 6 8 $ 7 10 $ 8 5 $ 9 11 $ 10 7 $ 11 1 $ ) mcl-12-135/graphs/fznyy.mci0000644000402500021140000000125410556367530012442 00000000000000 This is small.mci with differently labeled nodes. Apply mcl to this graph to see how the corresponding output looks. The name is just rot13(small). (mclheader mcltype matrix dimensions 12x12 ) (mcldoms 11 22 33 44 55 66 77 88 99 123 456 2147483647 $ ) (mclmatrix begin 11 22:2 66:3.4 77:3 123:8 $ 22 11:2 33:3.8 55:8.1 $ 33 22:3.8 44:7 55:6.2 $ 44 33:7 88:5.7 99:7.0 456:3 $ 55 22:8.1 33:6.2 77:2.9 88:3.0 $ 66 11:3.4 123:5.1 $ 77 11:3 55:2.9 123:1.5 $ 88 44:5.7 55:3.0 99:3.0 456:4.2 $ 99 44:7.0 88:3.0 456:1.8 2147483647:3.9 $ 123 11:8 66:5.1 77:1.5 $ 456 44:3 88:4.2 99:1.8 2147483647:6.3 $ 2147483647 99:3.9 456:6.3 $ ) mcl-12-135/graphs/falkner.mci0000644000402500021140000005713310556367530012714 00000000000000inverted taxi distance (mclheader mcltype matrix dimensions 150x150 ) (mclmatrix begin 0 0:1.00000000 1:0.50000000 9:0.25000000 10:0.50000000 11:0.16666667 17:0.25000000 18:0.16666667 19:0.12500000 $ 1 0:0.50000000 1:1.00000000 2:0.25000000 9:0.16666667 10:0.25000000 11:0.25000000 12:0.16666667 17:0.16666667 18:0.25000000 19:0.16666667 20:0.12500000 $ 2 1:0.25000000 2:1.00000000 3:0.50000000 11:0.25000000 12:0.50000000 18:0.12500000 19:0.16666667 20:0.25000000 21:0.16666667 $ 3 2:0.50000000 3:1.00000000 4:0.25000000 11:0.16666667 12:0.25000000 19:0.12500000 20:0.16666667 21:0.25000000 22:0.12500000 $ 4 3:0.25000000 4:1.00000000 5:0.50000000 13:0.25000000 21:0.12500000 22:0.25000000 $ 5 4:0.50000000 5:1.00000000 13:0.50000000 22:0.16666667 $ 6 6:1.00000000 7:0.50000000 8:0.25000000 14:0.25000000 15:0.50000000 16:0.25000000 23:0.12500000 24:0.16666667 25:0.16666667 26:0.12500000 $ 7 6:0.50000000 7:1.00000000 8:0.50000000 14:0.16666667 15:0.25000000 16:0.50000000 24:0.12500000 25:0.25000000 26:0.16666667 27:0.12500000 $ 8 6:0.25000000 7:0.50000000 8:1.00000000 15:0.16666667 16:0.25000000 25:0.16666667 26:0.25000000 27:0.16666667 $ 9 0:0.25000000 1:0.16666667 9:1.00000000 10:0.50000000 17:0.25000000 18:0.16666667 28:0.12500000 29:0.16666667 $ 10 0:0.50000000 1:0.25000000 9:0.50000000 10:1.00000000 11:0.25000000 17:0.50000000 18:0.25000000 19:0.16666667 29:0.12500000 $ 11 0:0.16666667 1:0.25000000 2:0.25000000 3:0.16666667 10:0.25000000 11:1.00000000 12:0.50000000 17:0.16666667 18:0.25000000 19:0.50000000 20:0.25000000 21:0.16666667 $ 12 1:0.16666667 2:0.50000000 3:0.25000000 11:0.50000000 12:1.00000000 18:0.16666667 19:0.25000000 20:0.50000000 21:0.25000000 $ 13 4:0.25000000 5:0.50000000 13:1.00000000 22:0.25000000 30:0.16666667 31:0.16666667 32:0.12500000 $ 14 6:0.25000000 7:0.16666667 14:1.00000000 15:0.50000000 16:0.25000000 23:0.25000000 24:0.50000000 25:0.16666667 32:0.12500000 33:0.25000000 34:0.16666667 $ 15 6:0.50000000 7:0.25000000 8:0.16666667 14:0.50000000 15:1.00000000 16:0.50000000 23:0.16666667 24:0.25000000 25:0.25000000 26:0.16666667 33:0.16666667 34:0.25000000 35:0.12500000 $ 16 6:0.25000000 7:0.50000000 8:0.25000000 14:0.25000000 15:0.50000000 16:1.00000000 24:0.16666667 25:0.50000000 26:0.25000000 27:0.16666667 33:0.12500000 34:0.16666667 35:0.16666667 36:0.12500000 $ 17 0:0.25000000 1:0.16666667 9:0.25000000 10:0.50000000 11:0.16666667 17:1.00000000 18:0.50000000 19:0.25000000 29:0.16666667 37:0.25000000 38:0.16666667 $ 18 0:0.16666667 1:0.25000000 2:0.12500000 9:0.16666667 10:0.25000000 11:0.25000000 12:0.16666667 17:0.50000000 18:1.00000000 19:0.50000000 20:0.25000000 37:0.16666667 38:0.25000000 $ 19 0:0.12500000 1:0.16666667 2:0.16666667 3:0.12500000 10:0.16666667 11:0.50000000 12:0.25000000 17:0.25000000 18:0.50000000 19:1.00000000 20:0.50000000 21:0.25000000 37:0.12500000 38:0.16666667 39:0.12500000 $ 20 1:0.12500000 2:0.25000000 3:0.16666667 11:0.25000000 12:0.50000000 18:0.25000000 19:0.50000000 20:1.00000000 21:0.50000000 38:0.12500000 39:0.16666667 40:0.12500000 $ 21 2:0.16666667 3:0.25000000 4:0.12500000 11:0.16666667 12:0.25000000 19:0.25000000 20:0.50000000 21:1.00000000 22:0.25000000 30:0.16666667 39:0.25000000 40:0.16666667 $ 22 3:0.12500000 4:0.25000000 5:0.16666667 13:0.25000000 21:0.25000000 22:1.00000000 30:0.50000000 31:0.16666667 39:0.12500000 40:0.16666667 41:0.16666667 42:0.12500000 $ 23 6:0.12500000 14:0.25000000 15:0.16666667 23:1.00000000 24:0.50000000 31:0.16666667 32:0.25000000 33:0.25000000 34:0.16666667 42:0.12500000 $ 24 6:0.16666667 7:0.12500000 14:0.50000000 15:0.25000000 16:0.16666667 23:0.50000000 24:1.00000000 25:0.25000000 32:0.16666667 33:0.50000000 34:0.25000000 $ 25 6:0.16666667 7:0.25000000 8:0.16666667 14:0.16666667 15:0.25000000 16:0.50000000 24:0.25000000 25:1.00000000 26:0.50000000 27:0.25000000 33:0.16666667 34:0.25000000 35:0.25000000 36:0.16666667 $ 26 6:0.12500000 7:0.16666667 8:0.25000000 15:0.16666667 16:0.25000000 25:0.50000000 26:1.00000000 27:0.50000000 34:0.16666667 35:0.50000000 36:0.25000000 $ 27 7:0.12500000 8:0.16666667 16:0.16666667 25:0.25000000 26:0.50000000 27:1.00000000 35:0.25000000 36:0.50000000 $ 28 9:0.12500000 28:1.00000000 29:0.50000000 43:0.12500000 $ 29 9:0.16666667 10:0.12500000 17:0.16666667 28:0.50000000 29:1.00000000 37:0.16666667 43:0.16666667 $ 30 13:0.16666667 21:0.16666667 22:0.50000000 30:1.00000000 31:0.25000000 39:0.16666667 40:0.25000000 41:0.25000000 42:0.16666667 45:0.16666667 46:0.25000000 47:0.12500000 $ 31 13:0.16666667 22:0.16666667 23:0.16666667 30:0.25000000 31:1.00000000 32:0.50000000 41:0.25000000 42:0.50000000 46:0.12500000 47:0.25000000 48:0.16666667 $ 32 13:0.12500000 14:0.12500000 23:0.25000000 24:0.16666667 31:0.50000000 32:1.00000000 33:0.25000000 41:0.16666667 42:0.25000000 47:0.16666667 48:0.25000000 49:0.12500000 $ 33 14:0.25000000 15:0.16666667 16:0.12500000 23:0.25000000 24:0.50000000 25:0.16666667 32:0.25000000 33:1.00000000 34:0.50000000 48:0.12500000 49:0.25000000 $ 34 14:0.16666667 15:0.25000000 16:0.16666667 23:0.16666667 24:0.25000000 25:0.25000000 26:0.16666667 33:0.50000000 34:1.00000000 35:0.25000000 49:0.16666667 50:0.12500000 $ 35 15:0.12500000 16:0.16666667 25:0.25000000 26:0.50000000 27:0.25000000 34:0.25000000 35:1.00000000 36:0.50000000 50:0.25000000 $ 36 16:0.12500000 25:0.16666667 26:0.25000000 27:0.50000000 35:0.50000000 36:1.00000000 50:0.16666667 $ 37 17:0.25000000 18:0.16666667 19:0.12500000 29:0.16666667 37:1.00000000 38:0.50000000 43:0.25000000 52:0.25000000 $ 38 17:0.16666667 18:0.25000000 19:0.16666667 20:0.12500000 37:0.50000000 38:1.00000000 43:0.16666667 44:0.16666667 52:0.16666667 $ 39 19:0.12500000 20:0.16666667 21:0.25000000 22:0.12500000 30:0.16666667 39:1.00000000 40:0.50000000 44:0.25000000 45:0.25000000 46:0.16666667 $ 40 20:0.12500000 21:0.16666667 22:0.16666667 30:0.25000000 39:0.50000000 40:1.00000000 41:0.25000000 44:0.16666667 45:0.50000000 46:0.25000000 $ 41 22:0.16666667 30:0.25000000 31:0.25000000 32:0.16666667 40:0.25000000 41:1.00000000 42:0.50000000 45:0.16666667 46:0.25000000 47:0.25000000 48:0.16666667 53:0.16666667 54:0.12500000 $ 42 22:0.12500000 23:0.12500000 30:0.16666667 31:0.50000000 32:0.25000000 41:0.50000000 42:1.00000000 46:0.16666667 47:0.50000000 48:0.25000000 53:0.25000000 54:0.16666667 55:0.12500000 $ 43 28:0.12500000 29:0.16666667 37:0.25000000 38:0.16666667 43:1.00000000 51:0.16666667 52:0.25000000 60:0.25000000 61:0.16666667 62:0.12500000 $ 44 38:0.16666667 39:0.25000000 40:0.16666667 44:1.00000000 45:0.25000000 62:0.12500000 63:0.16666667 64:0.25000000 $ 45 30:0.16666667 39:0.25000000 40:0.50000000 41:0.16666667 44:0.25000000 45:1.00000000 46:0.50000000 64:0.12500000 $ 46 30:0.25000000 31:0.12500000 39:0.16666667 40:0.25000000 41:0.25000000 42:0.16666667 45:0.50000000 46:1.00000000 47:0.25000000 53:0.16666667 $ 47 30:0.12500000 31:0.25000000 32:0.16666667 41:0.25000000 42:0.50000000 46:0.25000000 47:1.00000000 48:0.50000000 53:0.50000000 54:0.25000000 55:0.16666667 65:0.12500000 $ 48 31:0.16666667 32:0.25000000 33:0.12500000 41:0.16666667 42:0.25000000 47:0.50000000 48:1.00000000 49:0.25000000 53:0.25000000 54:0.50000000 55:0.25000000 65:0.16666667 66:0.12500000 $ 49 32:0.12500000 33:0.25000000 34:0.16666667 48:0.25000000 49:1.00000000 54:0.16666667 55:0.25000000 56:0.25000000 57:0.16666667 65:0.16666667 66:0.25000000 $ 50 34:0.12500000 35:0.25000000 36:0.16666667 50:1.00000000 56:0.16666667 57:0.25000000 58:0.50000000 59:0.25000000 67:0.16666667 $ 51 43:0.16666667 51:1.00000000 60:0.16666667 68:0.12500000 $ 52 37:0.25000000 38:0.16666667 43:0.25000000 52:1.00000000 60:0.25000000 61:0.50000000 62:0.25000000 63:0.16666667 68:0.16666667 69:0.16666667 $ 53 41:0.16666667 42:0.25000000 46:0.16666667 47:0.50000000 48:0.25000000 53:1.00000000 54:0.50000000 55:0.25000000 65:0.16666667 71:0.16666667 72:0.12500000 $ 54 41:0.12500000 42:0.16666667 47:0.25000000 48:0.50000000 49:0.16666667 53:0.50000000 54:1.00000000 55:0.50000000 65:0.25000000 66:0.16666667 71:0.12500000 72:0.16666667 73:0.12500000 $ 55 42:0.12500000 47:0.16666667 48:0.25000000 49:0.25000000 53:0.25000000 54:0.50000000 55:1.00000000 56:0.25000000 65:0.50000000 66:0.25000000 72:0.25000000 73:0.16666667 74:0.12500000 $ 56 49:0.25000000 50:0.16666667 55:0.25000000 56:1.00000000 57:0.50000000 58:0.25000000 65:0.16666667 66:0.25000000 72:0.12500000 73:0.16666667 74:0.25000000 $ 57 49:0.16666667 50:0.25000000 56:0.50000000 57:1.00000000 58:0.50000000 59:0.25000000 66:0.16666667 67:0.16666667 73:0.12500000 74:0.16666667 75:0.12500000 $ 58 50:0.50000000 56:0.25000000 57:0.50000000 58:1.00000000 59:0.50000000 67:0.25000000 74:0.12500000 75:0.16666667 $ 59 50:0.25000000 57:0.25000000 58:0.50000000 59:1.00000000 67:0.50000000 75:0.25000000 $ 60 43:0.25000000 51:0.16666667 52:0.25000000 60:1.00000000 61:0.50000000 62:0.25000000 68:0.50000000 69:0.16666667 76:0.12500000 77:0.16666667 78:0.12500000 $ 61 43:0.16666667 52:0.50000000 60:0.50000000 61:1.00000000 62:0.50000000 63:0.25000000 68:0.25000000 69:0.25000000 77:0.12500000 78:0.16666667 $ 62 43:0.12500000 44:0.12500000 52:0.25000000 60:0.25000000 61:0.50000000 62:1.00000000 63:0.50000000 64:0.25000000 68:0.16666667 69:0.50000000 78:0.25000000 $ 63 44:0.16666667 52:0.16666667 61:0.25000000 62:0.50000000 63:1.00000000 64:0.50000000 69:0.25000000 78:0.16666667 $ 64 44:0.25000000 45:0.12500000 62:0.25000000 63:0.50000000 64:1.00000000 69:0.16666667 70:0.16666667 78:0.12500000 $ 65 47:0.12500000 48:0.16666667 49:0.16666667 53:0.16666667 54:0.25000000 55:0.50000000 56:0.16666667 65:1.00000000 66:0.50000000 72:0.50000000 73:0.25000000 74:0.16666667 79:0.25000000 80:0.16666667 $ 66 48:0.12500000 49:0.25000000 54:0.16666667 55:0.25000000 56:0.25000000 57:0.16666667 65:0.50000000 66:1.00000000 72:0.25000000 73:0.50000000 74:0.25000000 79:0.16666667 80:0.25000000 81:0.12500000 $ 67 50:0.16666667 57:0.16666667 58:0.25000000 59:0.50000000 67:1.00000000 75:0.50000000 81:0.12500000 82:0.25000000 $ 68 51:0.12500000 52:0.16666667 60:0.50000000 61:0.25000000 62:0.16666667 68:1.00000000 69:0.25000000 76:0.16666667 77:0.25000000 78:0.16666667 83:0.25000000 $ 69 52:0.16666667 60:0.16666667 61:0.25000000 62:0.50000000 63:0.25000000 64:0.16666667 68:0.25000000 69:1.00000000 78:0.50000000 83:0.12500000 84:0.16666667 85:0.12500000 $ 70 64:0.16666667 70:1.00000000 71:0.25000000 85:0.12500000 86:0.16666667 $ 71 53:0.16666667 54:0.12500000 70:0.25000000 71:1.00000000 86:0.16666667 87:0.12500000 $ 72 53:0.12500000 54:0.16666667 55:0.25000000 56:0.12500000 65:0.50000000 66:0.25000000 72:1.00000000 73:0.50000000 74:0.25000000 79:0.50000000 80:0.25000000 87:0.16666667 88:0.16666667 $ 73 54:0.12500000 55:0.16666667 56:0.16666667 57:0.12500000 65:0.25000000 66:0.50000000 72:0.50000000 73:1.00000000 74:0.50000000 79:0.25000000 80:0.50000000 81:0.16666667 87:0.12500000 88:0.25000000 $ 74 55:0.12500000 56:0.25000000 57:0.16666667 58:0.12500000 65:0.16666667 66:0.25000000 72:0.25000000 73:0.50000000 74:1.00000000 79:0.16666667 80:0.25000000 81:0.25000000 88:0.16666667 89:0.12500000 $ 75 57:0.12500000 58:0.16666667 59:0.25000000 67:0.50000000 75:1.00000000 81:0.16666667 82:0.50000000 89:0.16666667 $ 76 60:0.12500000 68:0.16666667 76:1.00000000 77:0.50000000 83:0.16666667 90:0.25000000 91:0.16666667 92:0.12500000 $ 77 60:0.16666667 61:0.12500000 68:0.25000000 76:0.50000000 77:1.00000000 83:0.25000000 90:0.16666667 91:0.25000000 92:0.16666667 $ 78 60:0.12500000 61:0.16666667 62:0.25000000 63:0.16666667 64:0.12500000 68:0.16666667 69:0.50000000 78:1.00000000 83:0.16666667 84:0.25000000 85:0.16666667 92:0.12500000 93:0.12500000 $ 79 65:0.25000000 66:0.16666667 72:0.50000000 73:0.25000000 74:0.16666667 79:1.00000000 80:0.50000000 87:0.25000000 88:0.25000000 96:0.16666667 97:0.12500000 $ 80 65:0.16666667 66:0.25000000 72:0.25000000 73:0.50000000 74:0.25000000 79:0.50000000 80:1.00000000 81:0.25000000 87:0.16666667 88:0.50000000 96:0.25000000 97:0.16666667 $ 81 66:0.12500000 67:0.12500000 73:0.16666667 74:0.25000000 75:0.16666667 80:0.25000000 81:1.00000000 82:0.25000000 88:0.16666667 89:0.25000000 96:0.12500000 97:0.16666667 98:0.16666667 $ 82 67:0.25000000 75:0.50000000 81:0.25000000 82:1.00000000 89:0.25000000 98:0.16666667 $ 83 68:0.25000000 69:0.12500000 76:0.16666667 77:0.25000000 78:0.16666667 83:1.00000000 90:0.16666667 91:0.25000000 92:0.50000000 99:0.16666667 100:0.25000000 101:0.16666667 $ 84 69:0.16666667 78:0.25000000 84:1.00000000 85:0.50000000 93:0.25000000 101:0.12500000 102:0.25000000 $ 85 69:0.12500000 70:0.12500000 78:0.16666667 84:0.50000000 85:1.00000000 93:0.50000000 94:0.16666667 102:0.16666667 $ 86 70:0.16666667 71:0.16666667 86:1.00000000 94:0.25000000 95:0.50000000 103:0.12500000 $ 87 71:0.12500000 72:0.16666667 73:0.12500000 79:0.25000000 80:0.16666667 87:1.00000000 88:0.25000000 96:0.16666667 103:0.16666667 104:0.25000000 $ 88 72:0.16666667 73:0.25000000 74:0.16666667 79:0.25000000 80:0.50000000 81:0.16666667 87:0.25000000 88:1.00000000 96:0.50000000 97:0.25000000 104:0.12500000 105:0.12500000 $ 89 74:0.12500000 75:0.16666667 81:0.25000000 82:0.25000000 89:1.00000000 97:0.16666667 98:0.50000000 105:0.16666667 $ 90 76:0.25000000 77:0.16666667 83:0.16666667 90:1.00000000 91:0.50000000 92:0.25000000 99:0.25000000 100:0.16666667 $ 91 76:0.16666667 77:0.25000000 83:0.25000000 90:0.50000000 91:1.00000000 92:0.50000000 99:0.50000000 100:0.25000000 101:0.16666667 106:0.12500000 $ 92 76:0.12500000 77:0.16666667 78:0.12500000 83:0.50000000 90:0.25000000 91:0.50000000 92:1.00000000 99:0.25000000 100:0.50000000 101:0.25000000 106:0.16666667 107:0.12500000 $ 93 78:0.12500000 84:0.25000000 85:0.50000000 93:1.00000000 94:0.25000000 102:0.25000000 107:0.12500000 $ 94 85:0.16666667 86:0.25000000 93:0.25000000 94:1.00000000 95:0.50000000 108:0.16666667 $ 95 86:0.50000000 94:0.50000000 95:1.00000000 103:0.16666667 108:0.25000000 $ 96 79:0.16666667 80:0.25000000 81:0.12500000 87:0.16666667 88:0.50000000 96:1.00000000 97:0.50000000 104:0.16666667 105:0.16666667 109:0.12500000 110:0.16666667 111:0.12500000 $ 97 79:0.12500000 80:0.16666667 81:0.16666667 88:0.25000000 89:0.16666667 96:0.50000000 97:1.00000000 98:0.25000000 105:0.25000000 110:0.25000000 111:0.16666667 $ 98 81:0.16666667 82:0.16666667 89:0.50000000 97:0.25000000 98:1.00000000 105:0.25000000 110:0.12500000 111:0.16666667 $ 99 83:0.16666667 90:0.25000000 91:0.50000000 92:0.25000000 99:1.00000000 100:0.50000000 101:0.25000000 106:0.16666667 112:0.16666667 113:0.25000000 114:0.16666667 $ 100 83:0.25000000 90:0.16666667 91:0.25000000 92:0.50000000 99:0.50000000 100:1.00000000 101:0.50000000 106:0.25000000 107:0.16666667 112:0.12500000 113:0.16666667 114:0.25000000 $ 101 83:0.16666667 84:0.12500000 91:0.16666667 92:0.25000000 99:0.25000000 100:0.50000000 101:1.00000000 102:0.25000000 106:0.50000000 107:0.25000000 113:0.12500000 114:0.16666667 115:0.12500000 $ 102 84:0.25000000 85:0.16666667 93:0.25000000 101:0.25000000 102:1.00000000 106:0.16666667 107:0.25000000 115:0.25000000 $ 103 86:0.12500000 87:0.16666667 95:0.16666667 103:1.00000000 104:0.50000000 108:0.16666667 109:0.25000000 116:0.12500000 $ 104 87:0.25000000 88:0.12500000 96:0.16666667 103:0.50000000 104:1.00000000 109:0.50000000 116:0.16666667 $ 105 88:0.12500000 89:0.16666667 96:0.16666667 97:0.25000000 98:0.25000000 105:1.00000000 110:0.25000000 111:0.50000000 117:0.25000000 $ 106 91:0.12500000 92:0.16666667 99:0.16666667 100:0.25000000 101:0.50000000 102:0.16666667 106:1.00000000 107:0.50000000 113:0.16666667 114:0.25000000 115:0.16666667 118:0.12500000 119:0.25000000 120:0.16666667 $ 107 92:0.12500000 93:0.12500000 100:0.16666667 101:0.25000000 102:0.25000000 106:0.50000000 107:1.00000000 114:0.16666667 115:0.25000000 119:0.16666667 120:0.25000000 $ 108 94:0.16666667 95:0.25000000 103:0.16666667 108:1.00000000 121:0.12500000 122:0.12500000 $ 109 96:0.12500000 103:0.25000000 104:0.50000000 109:1.00000000 116:0.25000000 122:0.16666667 123:0.25000000 124:0.16666667 $ 110 96:0.16666667 97:0.25000000 98:0.12500000 105:0.25000000 110:1.00000000 111:0.50000000 116:0.16666667 117:0.25000000 124:0.12500000 125:0.16666667 126:0.12500000 $ 111 96:0.12500000 97:0.16666667 98:0.16666667 105:0.50000000 110:0.50000000 111:1.00000000 117:0.50000000 125:0.25000000 126:0.16666667 127:0.12500000 $ 112 99:0.16666667 100:0.12500000 112:1.00000000 113:0.50000000 114:0.25000000 118:0.25000000 128:0.25000000 $ 113 99:0.25000000 100:0.16666667 101:0.12500000 106:0.16666667 112:0.50000000 113:1.00000000 114:0.50000000 118:0.50000000 119:0.16666667 128:0.16666667 129:0.12500000 $ 114 99:0.16666667 100:0.25000000 101:0.16666667 106:0.25000000 107:0.16666667 112:0.25000000 113:0.50000000 114:1.00000000 118:0.25000000 119:0.25000000 120:0.16666667 128:0.12500000 129:0.16666667 $ 115 101:0.12500000 102:0.25000000 106:0.16666667 107:0.25000000 115:1.00000000 119:0.16666667 120:0.25000000 121:0.16666667 129:0.12500000 130:0.16666667 131:0.12500000 $ 116 103:0.12500000 104:0.16666667 109:0.25000000 110:0.16666667 116:1.00000000 122:0.16666667 123:0.25000000 124:0.50000000 134:0.12500000 135:0.25000000 136:0.12500000 $ 117 105:0.25000000 110:0.25000000 111:0.50000000 117:1.00000000 125:0.50000000 126:0.25000000 127:0.16666667 136:0.16666667 $ 118 106:0.12500000 112:0.25000000 113:0.50000000 114:0.25000000 118:1.00000000 119:0.25000000 128:0.25000000 129:0.16666667 $ 119 106:0.25000000 107:0.16666667 113:0.16666667 114:0.25000000 115:0.16666667 118:0.25000000 119:1.00000000 120:0.50000000 129:0.50000000 137:0.16666667 $ 120 106:0.16666667 107:0.25000000 114:0.16666667 115:0.25000000 119:0.50000000 120:1.00000000 129:0.25000000 130:0.16666667 137:0.25000000 $ 121 108:0.12500000 115:0.16666667 121:1.00000000 130:0.25000000 131:0.50000000 132:0.25000000 133:0.16666667 138:0.16666667 $ 122 108:0.12500000 109:0.16666667 116:0.16666667 122:1.00000000 123:0.50000000 124:0.25000000 133:0.16666667 134:0.50000000 135:0.16666667 139:0.16666667 140:0.25000000 141:0.16666667 $ 123 109:0.25000000 116:0.25000000 122:0.50000000 123:1.00000000 124:0.50000000 134:0.25000000 135:0.25000000 139:0.12500000 140:0.16666667 141:0.25000000 $ 124 109:0.16666667 110:0.12500000 116:0.50000000 122:0.25000000 123:0.50000000 124:1.00000000 134:0.16666667 135:0.50000000 136:0.16666667 140:0.12500000 141:0.16666667 $ 125 110:0.16666667 111:0.25000000 117:0.50000000 125:1.00000000 126:0.50000000 127:0.25000000 136:0.25000000 142:0.12500000 $ 126 110:0.12500000 111:0.16666667 117:0.25000000 125:0.50000000 126:1.00000000 127:0.50000000 136:0.16666667 142:0.16666667 $ 127 111:0.12500000 117:0.16666667 125:0.25000000 126:0.50000000 127:1.00000000 142:0.25000000 $ 128 112:0.25000000 113:0.16666667 114:0.12500000 118:0.25000000 128:1.00000000 143:0.25000000 144:0.16666667 $ 129 113:0.12500000 114:0.16666667 115:0.12500000 118:0.16666667 119:0.50000000 120:0.25000000 129:1.00000000 137:0.25000000 144:0.12500000 145:0.16666667 $ 130 115:0.16666667 120:0.16666667 121:0.25000000 130:1.00000000 131:0.50000000 132:0.25000000 137:0.16666667 138:0.16666667 145:0.12500000 146:0.25000000 147:0.12500000 $ 131 115:0.12500000 121:0.50000000 130:0.50000000 131:1.00000000 132:0.50000000 133:0.25000000 138:0.25000000 146:0.16666667 147:0.16666667 $ 132 121:0.25000000 130:0.25000000 131:0.50000000 132:1.00000000 133:0.50000000 138:0.50000000 139:0.16666667 146:0.12500000 147:0.25000000 $ 133 121:0.16666667 122:0.16666667 131:0.25000000 132:0.50000000 133:1.00000000 134:0.25000000 138:0.25000000 139:0.25000000 140:0.16666667 147:0.16666667 $ 134 116:0.12500000 122:0.50000000 123:0.25000000 124:0.16666667 133:0.25000000 134:1.00000000 135:0.25000000 139:0.25000000 140:0.50000000 141:0.25000000 148:0.16666667 149:0.12500000 $ 135 116:0.25000000 122:0.16666667 123:0.25000000 124:0.50000000 134:0.25000000 135:1.00000000 136:0.25000000 140:0.16666667 141:0.25000000 148:0.16666667 149:0.25000000 $ 136 116:0.12500000 117:0.16666667 124:0.16666667 125:0.25000000 126:0.16666667 135:0.25000000 136:1.00000000 149:0.12500000 $ 137 119:0.16666667 120:0.25000000 129:0.25000000 130:0.16666667 137:1.00000000 145:0.50000000 146:0.16666667 $ 138 121:0.16666667 130:0.16666667 131:0.25000000 132:0.50000000 133:0.25000000 138:1.00000000 139:0.25000000 146:0.16666667 147:0.50000000 $ 139 122:0.16666667 123:0.12500000 132:0.16666667 133:0.25000000 134:0.25000000 138:0.25000000 139:1.00000000 140:0.50000000 141:0.25000000 147:0.16666667 148:0.16666667 $ 140 122:0.25000000 123:0.16666667 124:0.12500000 133:0.16666667 134:0.50000000 135:0.16666667 139:0.50000000 140:1.00000000 141:0.50000000 148:0.25000000 149:0.16666667 $ 141 122:0.16666667 123:0.25000000 124:0.16666667 134:0.25000000 135:0.25000000 139:0.25000000 140:0.50000000 141:1.00000000 148:0.50000000 149:0.25000000 $ 142 125:0.12500000 126:0.16666667 127:0.25000000 142:1.00000000 $ 143 128:0.25000000 143:1.00000000 144:0.50000000 $ 144 128:0.16666667 129:0.12500000 143:0.50000000 144:1.00000000 $ 145 129:0.16666667 130:0.12500000 137:0.50000000 145:1.00000000 146:0.25000000 $ 146 130:0.25000000 131:0.16666667 132:0.12500000 137:0.16666667 138:0.16666667 145:0.25000000 146:1.00000000 147:0.25000000 $ 147 130:0.12500000 131:0.16666667 132:0.25000000 133:0.16666667 138:0.50000000 139:0.16666667 146:0.25000000 147:1.00000000 $ 148 134:0.16666667 135:0.16666667 139:0.16666667 140:0.25000000 141:0.50000000 148:1.00000000 149:0.50000000 $ 149 134:0.12500000 135:0.25000000 136:0.12500000 140:0.16666667 141:0.25000000 148:0.50000000 149:1.00000000 $ ) mcl-12-135/graphs/tiny-one.mci0000644000402500021140000000011210556367533013020 00000000000000 (mclheader mcltype matrix dimensions 1x1 ) (mclmatrix begin 0 0:1 $ ) mcl-12-135/graphs/tiny-nil.mci0000644000402500021140000000010010556367532013015 00000000000000 (mclheader mcltype matrix dimensions 0x0 ) (mclmatrix begin ) mcl-12-135/graphs/lattice.mci0000644000402500021140000000116010556370153012677 00000000000000 try e.g. mcl lattice.mci -o - and mcx /lattice.mci lm tp add /- wm | mcl - -o - (the mcx invocation transforms it to an undirected graph) 11 /|\ 9/ | \10 \ | / __\|/_ / 8 \ 6/ ____\7 /|\ / /|\ 2/ | \/ 4/ | \5 \ | /3 \ | / \|/ \|/ 0 1 (mclheader mcltype matrix dimensions 12x12 ) (mclmatrix begin 0 2 3 6 $ 1 4 5 7 $ 2 6 $ 3 6 7 $ 4 7 $ 5 7 $ 6 8 $ 7 8 $ 8 5 10 11 $ 9 11 $ 10 11 $ 11 $ ) mcl-12-135/graphs/Makefile.in0000644000402500021140000002646111754271036012641 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = graphs DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(exampledir)" DATA = $(example_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ exampledir = $(datadir)/doc/$(PACKAGE)/examples example_DATA = falkner.mci falkner2.mci falkner.coords make-falkner.pl \ proteins.mci matula.mci lattice.mci honey.mci seven.mci \ friends small.mci small.map small.tab fznyy.tab fznyy.mci small64.mci \ petersen.mci \ tiny-min.mci tiny-nil.mci tiny-nilnine.mci tiny-ninenil.mci tiny-one.mci tiny-zero.mci \ data.raw data.hdr data.tab data.abc.raw data.abc.hdr data.abc.map \ T Tx Ty Txy EXTRA_DIST = $(example_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu graphs/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu graphs/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-exampleDATA: $(example_DATA) @$(NORMAL_INSTALL) test -z "$(exampledir)" || $(MKDIR_P) "$(DESTDIR)$(exampledir)" @list='$(example_DATA)'; test -n "$(exampledir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(exampledir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(exampledir)" || exit $$?; \ done uninstall-exampleDATA: @$(NORMAL_UNINSTALL) @list='$(example_DATA)'; test -n "$(exampledir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(exampledir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(exampledir)" && rm -f $$files tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(exampledir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-exampleDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-exampleDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exampleDATA install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ pdf-am ps ps-am uninstall uninstall-am uninstall-exampleDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/graphs/small.map0000644000402500021140000000036510556367531012403 00000000000000(mclheader mcltype matrix dimensions 12x12 ) (mclrows 104 108 112 116 120 124 128 132 136 140 144 148 $ ) (mclmatrix begin 0 148 $ 1 144 $ 2 140 $ 3 136 $ 4 132 $ 5 128 $ 6 124 $ 7 120 $ 8 116 $ 9 112 $ 10 108 $ 11 104 $ ) mcl-12-135/graphs/small.tab0000644000402500021140000000012411531312073012346 000000000000000 nul 1 een 2 twee 3 drie 4 vier 5 vijf 6 zes 7 zeven 8 acht 9 negen 10 tien 11 elf mcl-12-135/graphs/tiny-ninenil.mci0000644000402500021140000000014710556367533013703 00000000000000 (mclheader mcltype matrix dimensions 9x0 ) (mclrows 3 6 9 12 15 18 21 24 27 $ ) (mclmatrix begin ) mcl-12-135/graphs/matula.mci0000644000402500021140000000067410556367531012554 00000000000000(mclheader mcltype matrix dimensions 20x20 ) (mclmatrix begin 0 1 $ 1 0 2 12 $ 2 1 5 6 $ 3 9 10 11 14 $ 4 5 12 15 16 $ 5 2 4 12 15 16 $ 6 2 7 13 16 18 $ 7 6 8 17 18 19 $ 8 7 18 19 $ 9 3 10 14 $ 10 3 9 14 $ 11 3 12 14 $ 12 1 4 5 11 15 16 $ 13 6 16 17 18 $ 14 3 9 10 11 $ 15 4 5 12 16 $ 16 4 5 6 12 13 15 17 $ 17 7 13 16 18 $ 18 6 7 8 13 17 19 $ 19 7 8 18 $ ) mcl-12-135/graphs/honey.mci0000644000402500021140000000253110556367531012405 00000000000000 40__ __42 43__44__45 /\ /\ /\ /\ /\ /\ 29/__\/__\/__\ __33__34__35__ /__\/__\/__\39 /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ 17/__\/__\/__\/__\/__\/__\/__\/__\/__\/__\/__\28 \ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ / \/__\/__\/__\/__\/__\/__\/__\/__\/__\/__\/ 6\ 7/\ 8/\ 9/ 10 11 12 13\ /\ /\ /16 \/__\/__\/ \/__\/__\/ 0 1 2 3 4 5 (mclheader mcltype matrix dimensions 46x46 ) (mclmatrix begin 0 1 6 7 $ 1 0 2 7 8 $ 2 1 8 9 $ 3 4 13 14 $ 4 3 5 14 15 $ 5 4 15 16 $ 6 0 7 17 18 $ 7 0 1 6 8 18 19 $ 8 1 2 7 9 19 20 $ 9 2 8 10 20 21 $ 10 9 11 21 22 $ 11 10 12 22 23 $ 12 11 13 23 24 $ 13 3 12 14 24 25 $ 14 3 4 13 15 25 26 $ 15 4 5 14 16 26 27 $ 16 5 15 27 28 $ 17 6 18 29 $ 18 6 7 17 19 29 30 $ 19 7 8 18 20 30 31 $ 20 8 9 19 21 31 32 $ 21 9 10 20 22 32 33 $ 22 10 11 21 23 33 34 $ 23 11 12 22 24 34 35 $ 24 12 13 23 25 35 36 $ 25 13 14 24 26 36 37 $ 26 14 15 25 27 37 38 $ 27 15 16 26 28 38 39 $ 28 16 27 39 $ 29 17 18 30 40 $ 30 18 19 29 31 40 41 $ 31 19 20 30 32 41 42 $ 32 20 21 31 33 42 $ 33 21 22 32 34 $ 34 22 23 33 35 $ 35 23 24 34 36 $ 36 24 25 35 37 43 $ 37 25 26 36 38 43 44 $ 38 26 27 37 39 44 45 $ 39 27 28 38 45 $ 40 29 30 41 $ 41 30 31 40 42 $ 42 31 32 41 $ 43 36 37 44 $ 44 37 38 43 45 $ 45 38 39 44 $ ) mcl-12-135/graphs/Tx0000644000402500021140000000022710645641743011106 00000000000000(mclheader mcltype matrix dimensions 26x4 ) (mclmatrix begin 0 0 1 12 13 14 $ 1 2 3 15 16 $ 2 4 5 17 18 $ 3 6 7 8 9 10 11 19 20 21 22 23 24 25 $ ) mcl-12-135/graphs/fznyy.tab0000644000402500021140000000036610556367530012443 0000000000000011 elf 22 tweeentwintig 33 drieendertig 44 vierenveertig 55 vijfenvijftig 66 zesenzestig 77 zevenenzeventig 88 achtentachtig 99 negenennegentig 123 honderdendrientwintig 456 vierhonderdzesenvijftig 2147483647 veel mcl-12-135/graphs/Makefile.am0000644000402500021140000000112511261454765012623 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.7 2007-01-29 11:35:37 flux Exp $ exampledir = $(datadir)/doc/$(PACKAGE)/examples example_DATA = falkner.mci falkner2.mci falkner.coords make-falkner.pl \ proteins.mci matula.mci lattice.mci honey.mci seven.mci \ friends small.mci small.map small.tab fznyy.tab fznyy.mci small64.mci \ petersen.mci \ tiny-min.mci tiny-nil.mci tiny-nilnine.mci tiny-ninenil.mci tiny-one.mci tiny-zero.mci \ data.raw data.hdr data.tab data.abc.raw data.abc.hdr data.abc.map \ T Tx Ty Txy EXTRA_DIST = $(example_DATA) mcl-12-135/graphs/small.mci0000644000402500021140000000036710626763602012375 00000000000000 (mclheader mcltype matrix dimensions 12x12 ) (mclmatrix begin 0 1 5 6 9 $ 1 0 2 4 $ 2 1 3 4 $ 3 2 7 8 10 $ 4 1 2 6 7 $ 5 0 9 $ 6 0 4 9 $ 7 3 4 8 10 $ 8 3 7 10 11 $ 9 0 5 6 $ 10 3 7 8 11 $ 11 8 10 $ ) mcl-12-135/graphs/T0000644000402500021140000000021510645641737010716 00000000000000(mclheader mcltype matrix dimensions 26x2 ) (mclmatrix begin 0 0 1 2 3 4 5 12 13 14 15 16 17 18 $ 1 6 7 8 9 10 11 19 20 21 22 23 24 25 $ ) mcl-12-135/graphs/data.tab0000644000402500021140000000020610556367530012166 00000000000000# # sort mode is alphabetical 0 acht 1 drie 2 een 3 elf 4 negen 5 nul 6 tien 7 twee 8 vier 9 vijf 10 zes 11 zeven mcl-12-135/graphs/Ty0000644000402500021140000000022710645641775011114 00000000000000(mclheader mcltype matrix dimensions 26x4 ) (mclmatrix begin 0 0 1 2 3 4 5 12 13 14 15 16 17 18 $ 1 6 7 19 20 $ 2 8 9 21 22 $ 3 10 11 23 24 25 $ ) mcl-12-135/graphs/make-falkner.pl0000755000402500021140000000700610647104741013461 00000000000000#!/usr/bin/perl -w use Getopt::Long; use strict; my @ARGV_COPY = @ARGV; my $n_args = @ARGV; $::debug = 0; $::test = 0; my $help = 0; my $foo = ''; my $fndata = ""; my $fndefs = ""; my $progname = 'funkelectric'; my $R = 2.0; my $radius = 0.34; # --debug debug # --test test sub help { print < data in format, id 0, 1, 2, .. --mink= minkovsky distance parameter --radius= cutoff for inclusion (note: inverted distance) --defs= write postscript definitions "/v0[1 4]def" etc EOH } if (! GetOptions ( "help" => \$help , "test" => \$::test , "debug=i" => \$::debug , "data=s" => \$fndata , "defs=s" => \$fndefs , "mink=f" => \$R , "radius=f" => \$radius ) ) { print STDERR "option processing failed\n"; exit(1); } if ($help) { help(); exit(0); } my $fh = \*DATA; if ($fndata) { if ($fndata eq '-') { $fh = \*STDIN; } else { open(FH, "<$fndata") || die "no can do no open file named $fndata"; $fh = \*FH; } } my %co = (); while (<$fh>) { chomp; next if /^\s*#/; next unless /\S+\s*\S+/; my ($c, $x, $y) = split; $co{$c} = [$x, $y]; } my $dim = keys %co; if ($fndefs) { open (DEFS, ">$fndefs") || die "cannot open $fndefs for writing"; print DEFS "\n\n"; for my $c (sort {$a <=> $b} keys %co) { print DEFS "/v$c\[$co{$c}[0] $co{$c}[1]]def\n"; } print DEFS "\n\n"; close DEFS; } my $dims = $dim . 'x' . $dim; print < $b } keys %co) { my ($u, $v) = @{$co{$c}}; printf "%-4d", $c; for my $d (sort { $a <=> $b } keys %co) { next if $c == $d; my ($x, $y) = @{$co{$d}}; my $d1 = $x-$u; my $d2 = $y-$v; $d1 *= -1 if $d1 < 0; $d2 *= -1 if $d2 < 0; my $sim = 1/(($d1 ** $R + $d2 ** $R)**(1/$R)); # print ".. [$c($u,$v) $d($x,$y)] [$d1 $d2] [$R $sim $radius]\n"; # next; next if 1/sqrt($d1**2 + $d2**2) < $radius; printf " $d:%.3f", $sim; } print " \$\n"; } print ")\n"; __DATA__ 0 4 1 1 5 1 2 7 1 3 8 1 4 10 1 5 11 1 6 16 1 7 17 1 8 18 1 9 3 2 10 4 2 11 6 2 12 7 2 13 11 2 14 15 2 15 16 2 16 17 2 17 4 3 18 5 3 19 6 3 20 7 3 21 8 3 22 10 3 23 14 3 24 15 3 25 17 3 26 18 3 27 19 3 28 1 4 29 2 4 30 10 4 31 12 4 32 13 4 33 15 4 34 16 4 35 18 4 36 19 4 37 4 5 38 5 5 39 8 5 40 9 5 41 11 5 42 12 5 43 3 6 44 7 6 45 9 6 46 10 6 47 12 6 48 13 6 49 15 6 50 18 6 51 1 7 52 4 7 53 12 7 54 13 7 55 14 7 56 16 7 57 17 7 58 18 7 59 19 7 60 3 8 61 4 8 62 5 8 63 6 8 64 7 8 65 14 8 66 15 8 67 19 8 68 3 9 69 5 9 70 9 9 71 11 9 72 14 9 73 15 9 74 16 9 75 19 9 76 1 10 77 2 10 78 5 10 79 14 10 80 15 10 81 17 10 82 19 10 83 3 11 84 6 11 85 7 11 86 10 11 87 13 11 88 15 11 89 18 11 90 1 12 91 2 12 92 3 12 93 7 12 94 9 12 95 10 12 96 15 12 97 16 12 98 18 12 99 2 13 100 3 13 101 4 13 102 6 13 103 12 13 104 13 13 105 17 13 106 4 14 107 5 14 108 10 14 109 13 14 110 16 14 111 17 14 112 1 15 113 2 15 114 3 15 115 6 15 116 14 15 117 17 15 118 2 16 119 4 16 120 5 16 121 8 16 122 12 16 123 13 16 124 14 16 125 17 16 126 18 16 127 19 16 128 1 17 129 4 17 130 7 17 131 8 17 132 9 17 133 10 17 134 12 17 135 14 17 136 16 17 137 5 18 138 9 18 139 11 18 140 12 18 141 13 18 142 19 18 143 1 19 144 2 19 145 5 19 146 7 19 147 9 19 148 13 19 149 14 19 mcl-12-135/graphs/friends0000644000402500021140000000033411745500375012141 00000000000000ann bob ann fred ann john ann gilian bob charlie bob esme charlie esme charlie dan dan harriet dan kelly dan indy esme gilian esme harriet fred john gilian john harriet kelly harriet indy indy kelly indy lucy kelly lucy mcl-12-135/graphs/data.abc.hdr0000644000402500021140000000005510556367527012731 00000000000000(mclheader mcltype matrix dimensions 12x12 ) mcl-12-135/util/0000777000402500021140000000000011756465220010342 500000000000000mcl-12-135/util/alloc.h0000644000402500021140000000365311147245271011524 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_alloc_h #define tingea_alloc_h #include /* ========================================================================= * * * mcxRealloc is notable, for it *frees* memory and returns a NULL pointer * if the newly requested block has size 0. This must be so in order to * allow routines to do their math and housekeeping. If they register the * new block as having 0 bytes, then they need not and must not attempt to * free it thereafter. * * ========================================================================= * */ #include "types.h" void* mcxAlloc ( dim size , mcxOnFail ON_FAIL ) ; void* mcxRealloc ( void* object , dim new_size , mcxOnFail ON_FAIL ) ; void mcxFree ( void* object ) ; void mcxNFree ( void* base , dim n_elem , dim elem_size , void (*obRelease) (void *) ) ; void* mcxNAlloc ( dim n_elem , dim elem_size , void* (*obInit) (void *) , mcxOnFail ON_FAIL ) ; void* mcxNRealloc ( void* mem , dim n_elem , dim n_elem_prev , dim elem_size , void* (*obInit) (void *) , mcxOnFail ON_FAIL ) ; void mcxMemDenied ( FILE* channel , const char* requestee , const char* unittype , dim n ) ; void mcxAllocLimits ( long maxchunksize , long maxtimes ) ; #endif mcl-12-135/util/array.c0000644000402500021140000003035511745761654011556 00000000000000/* (C) Copyright 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include #include #include #include #include "array.h" #include "alloc.h" #include "types.h" #include "err.h" #include "minmax.h" mcxstatus mcxSplice ( void* base1pptr , const void* base2ptr , dim size /* size of base1 and base2 members */ , dim *pn_base1 /* # base1 elements currently in use */ , dim *pN_base1 /* # base1 elements for which is malloced */ , ofs O_base1 /* splice relative to this element */ , dim d_base1 /* delete this number of elements */ , dim c_base2 /* number of elements to copy */ ) { char **ppr1 = (char **) base1pptr ; char* dummy ; const char *ptr2 = (const char *) base2ptr ; dim n_base1 = *pn_base1 ; dim N_base1 = *pN_base1 ; dim m_base1 = 0, o_base1 = 0 ; const char *errMsg = "" ; mcxstatus stat = STATUS_FAIL ; do { if (n_base1 > N_base1) { errMsg = "integer arguments not consistent" ; break ; } if (n_base1 + c_base2 < d_base1) { errMsg = "overly deleterious" ; break ; } m_base1 = (n_base1 + c_base2) - d_base1 /* new size */ ; if (O_base1 >= 0) o_base1 = O_base1 ; else { if ((dim) -O_base1 > n_base1 + 1) { errMsg = "offset specification out of bounds" ; break ; } o_base1 = (n_base1 + 1) + O_base1 ; } if (o_base1 > n_base1) { errMsg = "computed splice offset not in bounds" ; break ; } if (*ppr1 == NULL && ptr2 == NULL) { errMsg = "source and destination both void" ; break ; } if (o_base1 + d_base1 > n_base1) { errMsg = "not that many elements to delete" ; break ; } stat = STATUS_OK ; } while (0) ; if (stat != STATUS_OK) { mcxErr("[mcxSplice PBD]", "%s", errMsg) ; mcxErr ( "[mcxSplice PBD]" , "[n1, %lu] [N1, %lu] [o1, %lu] [d1, %lu] [c2, %lu]" , (ulong) n_base1, (ulong) N_base1 , (ulong) O_base1 , (ulong) d_base1, (ulong) c_base2 ) ; return STATUS_FAIL ; } if (m_base1 > N_base1) { if (!(dummy = mcxRealloc(*ppr1, size*m_base1, RETURN_ON_FAIL))) { mcxMemDenied(stderr, "mcxSplice", "void", m_base1) ; return STATUS_FAIL ; } *pN_base1 = N_base1 = m_base1 ; *ppr1 = dummy ; } if (o_base1 < n_base1) memmove ( *ppr1 + size*(o_base1 + c_base2) , *ppr1 + size*(o_base1 + d_base1) , size*(n_base1 - o_base1 - d_base1) ) ; if (c_base2) memcpy ( *ppr1 + size * (o_base1) , ptr2 , size*(c_base2) ) ; *pn_base1 = m_base1 ; return STATUS_OK ; } /* fixme, this implementation looks ugly (nested while). use instead: ; for (offset=1;offsetmempptr = mempptr ; buf->size = size ; buf->n = 0 ; buf->bFinalized = 0 ; buf->factor = 1.41 ; dummy = mcxRealloc ( *usrpptr , n_alloc * size , RETURN_ON_FAIL ) ; if (n_alloc && !dummy) { mcxMemDenied(stderr, "mcxBufInit", "char", n_alloc * size) ; buf->n_alloc = 0 ; return STATUS_FAIL ; } buf->n_alloc = n_alloc ; *usrpptr = dummy ; return STATUS_OK ; } void* mcxBufExtend ( mcxBuf* buf , dim n_request , mcxOnFail ON_FAIL ) { dim oldsize = buf->n ; char **usrpptr = (char **) buf->mempptr ; char* dummy ; if (buf->bFinalized) mcxErr("mcxBufExtend PBD", "extending finalized buffer") ; if (buf->n_alloc < buf->n + n_request) { dim n_new = MCX_MAX ( (dim) (buf->n_alloc * buf->factor + 8) , (dim) (buf->n + n_request) ) ; dummy = mcxRealloc(*usrpptr, n_new * buf->size, ON_FAIL) ; if (n_new && !dummy) { mcxMemDenied(stderr,"mcxBufExtend","char",buf->n*buf->size) ; return NULL ; } buf->n_alloc = n_new ; *usrpptr = dummy ; } buf->n += n_request ; return *usrpptr + (oldsize * buf->size) ; } dim mcxBufFinalize ( mcxBuf* buf ) { char **usrpptr = (char **) buf->mempptr ; char* dummy ; if (buf->bFinalized) mcxErr("mcxBufFinalize PBD", "finalising finalized buffer") ; else buf->bFinalized = 1 ; dummy = mcxRealloc ( *usrpptr , buf->n * buf->size , RETURN_ON_FAIL ) ; if (buf->n && !dummy) { mcxMemDenied(stderr, "mcxBufFinalize", "char", buf->n * buf->size) ; errno = ENOMEM ; return buf->n ; } *usrpptr = dummy ; buf->n_alloc = buf->n ; return buf->n ; } void mcxBufReset ( mcxBuf* buf , void* mempptr ) { if (!buf->bFinalized) mcxErr("mcxBufReset PBD", "buffer not finalized") ; buf->mempptr = mempptr ; buf->n = 0 ; buf->n_alloc = 0 ; buf->bFinalized = 0 ; } /* Return a larger or equal element; the smallest of these. * The result is the minimal element at least as big as pivot. * and a 'ceil' for pivot. */ void* mcxBsearchCeil ( const void *pivot , const void *base , dim nmemb , dim size , int (*cmp)(const void *, const void *) ) { dim lft = -1 /* on purpose; we use wraparound */ ; dim rgt = nmemb ; dim bar = nmemb/2 /* nothing, or nothing that is larger than pivot */ ; if (!nmemb || cmp(pivot, ((char*)base) + (nmemb-1) * size) > 0) return NULL /* invariant: lft points to a * a member that is smaller than pivot or it * points before the first member. */ ; while (lft+1 < rgt) { /* bar is smaller than pivot, move lft inward */ if (cmp(pivot, ((char*) base) + bar*size) > 0) lft = bar /* bar is larger or equal element, move rgt inward */ ; else rgt = bar /* update bar to be the middle of lft and rgt * when lft == -1 this depends on unsigned wraparound. */ ; bar = rgt - (rgt-lft) / 2; ; } return (((char*) base) + bar * size) ; } /* Return a smaller or equal element; the largest of these. * The result is the maximal element not exceeding pivot, * and a 'floor' for pivot. */ void* mcxBsearchFloor ( const void *pivot , const void *base , dim nmemb , dim size , int (*cmp)(const void *, const void *) ) { dim lft = 0 ; dim rgt = nmemb ; dim bar = nmemb / 2 /* nothing, or nothing that is smaller than pivot */ ; if (!nmemb || cmp(pivot, base) < 0) return NULL /* invariant: rgt points to a * a member that is larger than pivot or it * points beyond the last member. */ ; while (lft+1 < rgt) { /* bar is greater than pivot, move right inward */ if (cmp(pivot, ((char*) base) + bar*size) < 0) rgt = bar /* bar is smaller than (or equal to) pivot element, move lft inward */ ; else lft = bar /* update bar to be the middle of lft and rgt */ ; bar = lft + (rgt-lft) / 2; ; } return (((char*) base) + bar * size) ; } /* TODO: compare with std::lower_bound implementation template fwd_it lower_bound(fwd_it first, fwd_it last, const t & val) { typedef typename iterator_traits::difference_type distance; distance len = std::distance(first, last); distance half; fwd_it middle; while (len > 0) { half = len >> 1; middle = first; std::advance(middle, half); if (*middle < val) { first = middle; ++first; len = len - half - 1; } else len = half; } return first; } */ double mcxMedian ( void* base , dim n , dim sz , double (*get)(const void*) , double* iqr ) { double median = 0.0, q1 = 0.0, q2 = 0.0, quant = 0.0 ; if (n > 1) median = (get((char*) base + sz * (n/2)) + get((char*) base+ sz * ((n-1)/2))) / 2.0 ; else if (n == 1) median = get(base) /* p locates the left boundary of quantile, * q locates the right boundary. We need to interpolate * neighbours in case the boundaries don't fall exacly * on integer offsets. In that case pLoffset and rOffset * are different and a weighted mean between them * is computed. */ ; if (n > 1) { dim n3 = 3 * n ; dim pLoffset = n / 4 ; dim pRoffset = pLoffset + 1 ; double pLweight = (4 - (n % 4)) / 4.0 ; double pRweight = 1.0 - pLweight ; dim qRoffset = (n3 - (n3 % 4)) / 4 ; dim qLoffset = qRoffset - 1 ; double qRweight = (n3 % 4) / 4.0 ; double qLweight = 1 - qRweight ; q1 = pLweight * get((char*) base + sz * pLoffset) + pRweight * get((char*) base + sz * pRoffset) ; q2 = qLweight * get((char*) base + sz * qLoffset) + qRweight * get((char*) base + sz * qRoffset) ; quant = q2 - q1 ; if (quant < 0) quant = -quant ; } if (iqr) *iqr = quant ; return median ; } void mcxShuffle ( void* datap , dim nmem , dim mem_size , char* mem_cell /* should have mem_size size */ ) { dim n = nmem ; char* data = datap ; while (n > 0) { unsigned long r = (random() >> 3) % n /* Fisher-Yates shuffle */ ; if (r != n-1) { memcpy(mem_cell, data + (n-1) * mem_size, mem_size) ; memcpy(data + (n-1) * mem_size, data + r * mem_size, mem_size) ; memcpy(data + r * mem_size, mem_cell, mem_size) ; } n-- ; } } mcl-12-135/util/err.h0000644000402500021140000001672311137710365011224 00000000000000/* (C) Copyright 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_err_h #define tingea_err_h #include #include #include "types.h" /* Experimental scheme for logging * Contains * Three axes that have scales: * - data 1 2 3 * CELL * LIST * AGGR * - function/code 1 2 3 4 * LINE * FUNCTION * MODULE * APP * - monitoring 1 2 3 4 5 * DEBUG * INFO * WARN * ERR * PANIC * * These scales correspond with * * what (data, what are its parameters) * how (function, what is changing) * pulse (anything) * * Several axes that are radio buttons: * - IO * - Thread * - gauge progress bars * - IP inter (process) * - SLOT1 custom * - SLOT2 custom * - SLOT3 custom * * The programmer associates one or more logging levels with a logging * statement. The user sets logging levels in terms of quietness. * Quietness is quantified as shown in the list below. It may be applied * to a single axis or to several axes simultaneously. * * x is silent * 5 is tersest monitoring level * 4 is tersest function/code level * 3 is tersest data level * 9 is tersest level possible, may exceed actual upper bound * 1 is yappiest level. * * Only those statements for which the quiet level is quieter than the * user-specified level will be printed. If the programmer combines several * axes generally all the corresponding levels are checked and all have to be * OK, unless the user has specified that she is happy if at least one level is * OK. This is done by including a literal 'V' in the MCXLOGTAG string or in * the corresponding command-line option (usually -q). * * MCXLOGTAG is of the following form: * * []<[dfgimstABC][0-9]>+[V] * * The optional is one of [19x] as described above. The rest are * pairs consisting of an indicator * * d data * f function * g gauge/progress * i IO * m monitoring * n network * t thread * A custom axis 1 * B custom axis 1 * C custom axis 1 * * followed by a level. Each indicator specifies an axis; each axis has its * own scale and number of steps on the scale (see above). Finally, a 'V' * occurring anywhere signifies that OR logic is applied to loggin clauses * rather than AND logic. * * The lead tag sets a logging level for all axes simultaneously as follows: * 1 MCX_LOG_ALL * 9 MCX_LOG_TERSER * 8 MCX_LOG_TERSE * x MCX_LOG_NONE */ extern mcxbits mcxLogLevel; /* When called this one optionally checks environment variable * MCXLOGTAG to set the logging levels mcxLogLevelSetByString */ void mcxLogSetFILE ( FILE* fp , mcxbool ENV_LOG ) ; /* When writing to this file embed the print statement in an if statement * that checks whether your priority is ok with mcxLogGet. * This is paramount with GAUGE type logging as a GAUGE = x setting * may indicate that the user is logging to a shared stream. */ FILE* mcxLogGetFILE ( void ) ; extern volatile sig_atomic_t mcxLogSigGuard ; void mcxLogSig ( int sig ) ; /* ******************** data */ #define MCX_LOG_CELL 1 << 0 /* node, point, scalar */ #define MCX_LOG_LIST 1 << 1 /* list, tree, hash */ #define MCX_LOG_AGGR 1 << 2 /* everything else */ #define MCX_LOG_DATA (MCX_LOG_CELL | MCX_LOG_LIST | MCX_LOG_AGGR) #define MCX_LOG_DATA0 MCX_LOG_CELL /* ******************** function */ #define MCX_LOG_LINE 1u << 3 #define MCX_LOG_FUNCTION 1u << 4 #define MCX_LOG_MODULE 1u << 5 #define MCX_LOG_APP 1u << 6 #define MCX_LOG_FUNC (MCX_LOG_LINE | MCX_LOG_FUNCTION | MCX_LOG_MODULE | MCX_LOG_APP) #define MCX_LOG_FUNC0 MCX_LOG_LINE /* ******************** monitoring */ #define MCX_LOG_DEBUG 1u << 7 #define MCX_LOG_INFO 1u << 8 #define MCX_LOG_WARN 1u << 9 #define MCX_LOG_ERR 1u << 10 #define MCX_LOG_PANIC 1u << 11 #define MCX_LOG_MON ( MCX_LOG_DEBUG| MCX_LOG_INFO | MCX_LOG_WARN | MCX_LOG_ERR| MCX_LOG_PANIC ) #define MCX_LOG_MON0 MCX_LOG_DEBUG /* ********************* unimodal axes */ #define MCX_LOG_IO 1u << 12 #define MCX_LOG_IP 1u << 13 #define MCX_LOG_THREAD 1u << 15 #define MCX_LOG_NETWORK 1u << 16 #define MCX_LOG_ASPECTS ( MCX_LOG_IO | MCX_LOG_IP | MCX_LOG_THREAD | MCX_LOG_GAUGE | MCX_LOG_NETWORK ) /* ********************* miscellaneous*/ #define MCX_LOG_GAUGE 1u << 17 /* ********************* control */ #define MCX_LOG_AND 1u << 18 #define MCX_LOG_OR 1u << 19 #define MCX_LOG_NULL 1u << 20 /* turns of logging */ /* ********************* unspecified */ #define MCX_LOG_SLOT1 1u << 22 #define MCX_LOG_SLOT2 1u << 22 #define MCX_LOG_SLOT3 1u << 23 #define MCX_LOG_SLOT ( MCX_LOG_SLOT1 | MCX_LOG_SLOT2 | MCX_LOG_SLOT3 ) /* ********************* all / terse */ #define MCX_LOG_NONE 0 #define MCX_LOG_VERBOSE ( MCX_LOG_CELL | MCX_LOG_LINE | MCX_LOG_DEBUG | MCX_LOG_SLOT | MCX_LOG_ASPECTS ) #define MCX_LOG_TERSER ( MCX_LOG_PANIC | MCX_LOG_AGGR | MCX_LOG_APP ) #define MCX_LOG_TERSE ( MCX_LOG_TERSER | MCX_LOG_ASPECTS ) #define MCX_LOG_UNIVERSE ( MCX_LOG_DATA | MCX_LOG_FUNC | MCX_LOG_MON | MCX_LOG_SLOT | MCX_LOG_ASPECTS ) /* ********************* unused */ #define MCX_LOG_UNUSED 1u << 24 void mcxLogLevelSetByString ( const char* str ) ; void mcxLog ( mcxbits level_programmer , const char* tag , const char* fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 3, 4))) #endif ; mcxbool mcxLogGet ( mcxbits level_programmer ) ; void mcxLog2 ( const char* tag , const char* fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 2, 3))) #endif ; void mcxTell ( const char *caller , const char *fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 2, 3))) #endif ; void mcxTellf ( FILE* fp , const char *caller , const char *fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 3, 4))) #endif ; void mcxWarn ( const char *caller , const char *fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 2, 3))) #endif ; void mcxErr ( const char *caller , const char *fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 2, 3))) #endif ; void mcxErrf ( FILE* fp , const char *caller , const char *fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 3, 4))) #endif ; void mcxDie ( int status , const char *caller , const char *fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 3, 4))) #endif ; void mcxTellFile ( FILE* fp ) ; void mcxWarnFile ( FILE* fp ) ; void mcxErrorFile ( FILE* fp ) ; void mcxFail ( void ) ; void mcxExit ( int val ) ; #endif mcl-12-135/util/compile.h0000644000402500021140000000446411147245307012063 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_compile_h #define tingea_compile_h #ifndef TINGEA__TYPED_MINMAX # define TINGEA__TYPED_MINMAX 0 #endif #ifndef __GNUC__ # define MCX_GNUC_OK 0 # define inline /* no inline */ # define cpl__pure /* no pure */ # define cpl__const /* no const */ # define cpl__noreturn /* no noreturn */ # define cpl__malloc /* no malloc */ # define cpl__must_check /* no warn_unused_result */ # define cpl__deprecated /* no deprecated */ # define cpl__used /* no used */ # define cpl__unused /* no unused */ # define cpl__packed /* no packed */ # define likely(x) (x) # define unlikely(x) (x) #else #define MCX_GNUC_OK 1 #if __GNUC__ >= 3 # define inline __inline__ __attribute__ ((always_inline)) # define cpl__pure __attribute__ ((pure)) # define cpl__const __attribute__ ((const)) # define cpl__noreturn __attribute__ ((noreturn)) # define cpl__malloc __attribute__ ((malloc)) # define cpl__must_check __attribute__ ((warn_unused_result)) # define cpl__deprecated __attribute__ ((deprecated)) # define cpl__used __attribute__ ((used)) # define cpl__unused __attribute__ ((unused)) # define cpl__packed __attribute__ ((packed)) # define likely(x) __builtin_expect (!!(x), 1) # define unlikely(x) __builtin_expect (!!(x), 0) #else # define inline /* no inline */ # define cpl__pure /* no pure */ # define cpl__const /* no const */ # define cpl__noreturn /* no noreturn */ # define cpl__malloc /* no malloc */ # define cpl__must_check /* no warn_unused_result */ # define cpl__deprecated /* no deprecated */ # define cpl__used /* no used */ # define cpl__unused /* no unused */ # define cpl__packed /* no packed */ # define likely(x) (x) # define unlikely(x) (x) #endif #endif #endif mcl-12-135/util/alloc.c0000644000402500021140000001133311754270673011521 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ /* include include include include */ /* had a look whether this helped. It did, a bit. * Something like CFLAGS="-L$HOME/local/lib -I$HOME/local/include -O3 -Wall" ./configure --prefix=$HOME/local * should do it, provided you were able to intall gperftools and libunwind * I found it tricky and was possibly helped along by CPPFLAGS="-I$HOME/local/include" CFLAGS="-I$HOME/local/include" LD_RUN_PATH=$HOME/local/lib ./configure --prefix=$HOME/local/ * and (ebi-002|mcl/mcl) grep unwind include/* include/include.am:AM_LDFLAGS = -lm -lunwind -ltcmalloc */ #if 0 #include "gperftools/tcmalloc.h" # define themalloc tc_malloc # define therealloc tc_realloc # define thefree tc_free #else # define themalloc malloc # define therealloc realloc # define thefree free #endif #include #include #include #include "alloc.h" #include "err.h" static dim mcx_alloc_maxchunksize = 1048576; static long mcx_alloc_maxtimes = -1; static mcxbool mcx_alloc_limit = FALSE; void mcxAllocLimits ( long maxchunksize , long maxtimes ) { if (maxchunksize > 0) mcx_alloc_maxchunksize = maxchunksize ; if (maxtimes > 0) mcx_alloc_maxtimes = maxtimes ; mcx_alloc_limit = TRUE; ; } void* mcxRealloc ( void* object , dim new_size , mcxOnFail ON_FAIL ) { void* mblock = NULL ; mcxstatus status = STATUS_OK ; const char* me = "mcxRealloc" ; if (!new_size) { if (object) mcxFree(object) ; } else { if ( mcx_alloc_limit && (!mcx_alloc_maxtimes-- || new_size > mcx_alloc_maxchunksize) ) mblock = NULL ; else mblock = object ? therealloc(object, new_size) : themalloc(new_size) ; } if (new_size && (!mblock)) mcxMemDenied(stderr, me, "byte", new_size) , status = 1 ; if (status) { const char* tin = getenv("TINGEA_MEM_SIGNAL") ; if (tin) { unsigned tintin = atoi(tin) ; raise(tintin ? tintin : SIGSEGV) ; } if (ON_FAIL == SLEEP_ON_FAIL) { mcxTell(me, "pid %ld, entering sleep mode", (long) getpid()) ; while(1) sleep(1000) ; } if (ON_FAIL == EXIT_ON_FAIL || ON_FAIL == ENQUIRE_ON_FAIL) { mcxTell(me, "going down") ; if (ON_FAIL == ENQUIRE_ON_FAIL) mcxTell(me, "ENQUIRE fail mode ignored") ; exit(1) ; } } return mblock ; } void mcxNFree ( void* base , dim n_elem , dim elem_size , void (*obRelease) (void *) ) { if (n_elem && obRelease) { char *ob = base ; while (n_elem-- > 0) obRelease(ob) , ob += elem_size ; } mcxFree(base) ; } void* mcxNAlloc ( dim n_elem , dim elem_size , void* (*obInit) (void *) , mcxOnFail ON_FAIL ) { return mcxNRealloc(NULL, n_elem, 0, elem_size, obInit, ON_FAIL) ; } void* mcxNRealloc ( void* mem , dim n_elem , dim n_elem_prev , dim elem_size , void* (*obInit) (void *) , mcxOnFail ON_FAIL ) { char* ob ; mem = mcxRealloc(mem, n_elem * elem_size, ON_FAIL) ; if (!mem) return NULL ; if (obInit && n_elem > n_elem_prev) { ob = ((char*) mem) + (elem_size * n_elem_prev) ; while (n_elem-- > n_elem_prev) /* careful with unsignedness */ { obInit(ob) ; ob += elem_size ; } } return mem ; } void mcxMemDenied ( FILE* channel , const char* requestee , const char* unittype , dim n ) { mcxErrf ( channel , requestee , "memory shortage: could not alloc [%lu] instances of [%s]" , (ulong) n , unittype ) ; } void mcxFree ( void* object ) { if (object) thefree(object) ; } void* mcxAlloc ( dim size , mcxOnFail ON_FAIL ) { return mcxRealloc(NULL, size, ON_FAIL) ; } mcl-12-135/util/gralloc.h0000644000402500021140000000167211147245457012062 00000000000000/* (C) Copyright 2004, 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_gralloc_h #define tingea_gralloc_h #include "types.h" /* * gralloc; grid memory allocation; allocation of equally sized chunks */ typedef struct mcxGrim mcxGrim; #define MCX_GRIM_GEOMETRIC 1 #define MCX_GRIM_ARITHMETIC 2 mcxGrim* mcxGrimNew ( dim sz_unit , dim n_units /* initial capacity */ , mcxbits options ) ; void* mcxGrimGet ( mcxGrim* src ) ; void mcxGrimLet ( mcxGrim* src , void* mem ) ; dim mcxGrimCount ( mcxGrim* src ) ; dim mcxGrimMemSize ( mcxGrim* src ) ; void mcxGrimFree ( mcxGrim** src ) ; #endif mcl-12-135/util/equate.h0000644000402500021140000000302311147245325011705 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef equate_h #define equate_h int intCmp ( const void* i1 , const void* i2 ) ; int intRevCmp ( const void* i1 , const void* i2 ) ; int intnCmp ( const int* i1 , const int* i2 , int n ) ; int fltCmp ( const void* f1 , const void* f2 ) ; int fltRevCmp ( const void* f1 , const void* f2 ) ; int dblCmp ( const void* f1 , const void* f2 ) ; int dblRevCmp ( const void* f1 , const void* f2 ) ; int intLt ( const void* i1 , const void* i2 ) ; int intLq ( const void* i1 , const void* i2 ) ; int intGt ( const void* i1 , const void* i2 ) ; int intGq ( const void* i1 , const void* i2 ) ; int fltLt ( const void* f1 , const void* f2 ) ; int fltLq ( const void* f1 , const void* f2 ) ; int fltGt ( const void* f1 , const void* f2 ) ; int fltGq ( const void* f1 , const void* f2 ) ; #endif mcl-12-135/util/equate.c0000644000402500021140000000551111147246014011700 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include #include "equate.h" int dblCmp ( const void* f1 , const void* f2 ) { return ( *((double*)f1) < *((double*)f2) ? -1 : *((double*)f1) > *((double*)f2) ? 1 : 0 ) ; } int dblRevCmp ( const void* f1 , const void* f2 ) { return ( *((double*)f1) > *((double*)f2) ? 1 : *((double*)f1) < *((double*)f2) ? -1 : 0 ) ; } int fltCmp ( const void* f1 , const void* f2 ) { return ( *((float*)f1) < *((float*)f2) ? -1 : *((float*)f1) > *((float*)f2) ? 1 : 0 ) ; } int fltRevCmp ( const void* f1 , const void* f2 ) { return ( *((float*)f1) > *((float*)f2) ? 1 : *((float*)f1) < *((float*)f2) ? -1 : 0 ) ; } int intCmp ( const void* i1 , const void* i2 ) { return ( *((int*)i1) - *((int*)i2)) ; } int intRevCmp ( const void* i1 , const void* i2 ) { return ( *((int*)i2) - *((int*)i1)) ; } int intnCmp ( const int* i1 , const int* i2 , int n ) { const int* i1max = i1+n ; while (i1 *((int*) i2) ); ; } int intGq ( const void* i1 , const void* i2 ) { return ( *((int*) i1) >= *((int*) i2) ); ; } int fltLt ( const void* f1 , const void* f2 ) { return ( *((float*) f1) < *((float*) f2) ); ; } int fltLq ( const void* f1 , const void* f2 ) { return ( *((float*) f1) <= *((float*) f2) ); ; } int fltGt ( const void* f1 , const void* f2 ) { return ( *((float*) f1) > *((float*) f2) ); ; } int fltGq ( const void* f1 , const void* f2 ) { return ( *((float*) f1) >= *((float*) f2) ); ; } mcl-12-135/util/tok.c0000644000402500021140000001531711352514546011224 00000000000000/* (C) Copyright 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ /* TODO allow empty args () */ #include #include #include #include "tok.h" #include "types.h" #include "ting.h" #include "ding.h" #include "err.h" #include "alloc.h" #include "compile.h" #ifndef DEBUG # define DEBUG 0 #else # define DEBUG_DEFINED #endif char* mcxTokSkip ( const char* offset , int (*fbool)(int c) , ofs len ) { return mcxStrChrAint(offset, fbool, len) ; } /* * Accounts for nesting. * Will do '}', ')', ']', '>', assuming one of several conventions. * Does not handle string arguments with embedded delimiters, e.g. "foo) bar" */ mcxstatus mcxTokMatch ( const char* str_search , char** endptr , mcxbits mode , ofs len /* considered if >= 0 */ ) { const char* offset= str_search ; unsigned char c = *offset ; mcxstatus status = STATUS_OK ; mcxTing* stack ; const char* z ; *endptr = NULL ; if (len < 0) len = strlen(offset) ; z = offset + len ; switch(c) { case '{' : case '(' : case '[' : break ; default : mcxErr("mcxTokMatch", "not my coal of char <%c>", (int) c) ; return STATUS_FAIL ; } if (!(stack = mcxTingEmpty(NULL, 80))) return STATUS_FAIL ; do { unsigned char m = '\0' ; c = *offset ; switch(c) { case '{' : case '(' : case '[' : status = mcxTingTackc(stack, c) ; break ; case ')' : m = '(' ; break ; case '}' : m = '{' ; break ; case ']' : m = '[' ; break ; } if (m) status = mcxTingTickc(stack, m) ; if (status) break ; if (!stack->len) break ; offset++ ; } while (offset < z) ; if (stack->len) status = STATUS_FAIL ; else if (!status) *endptr = (char* )offset ; if (status) mcxErr ( "mcxTokMatch" , "stacklen <%lu>, offset <%ld>, char <%c>" , (ulong) stack->len , (long) (offset - str_search) , (int) *offset ) ; mcxTingFree(&stack) ; return status ; } mcxstatus mcxTokFind ( const char* offset , char* tok /* Only tok[0] considered for now! */ , char** pos , mcxbits mode cpl__unused , ofs len /* considered if >= 0 */ ) { mcxstatus status = STATUS_OK ; const char* x = offset, *z ; char *y = NULL ; if (len < 0) len = strlen(offset) ; z = offset + len ; *pos = NULL ; while (x < z) { if (*x == tok[0]) break ; switch(*x) { case '(' : case '{' : case '[' : if (!(status = mcxTokMatch(x, &y, 0, z-x))) x = y+1 ; break ; default : x++ ; break ; } if (status) break ; } if (!status) { *pos = (char*) x ; return *x == tok[0] ? STATUS_OK : STATUS_DONE ; } return STATUS_FAIL ; } void mcxTokFuncFree ( mcxTokFunc* tf ) { mcxTingFree(&(tf->key)) ; mcxListFree(&(tf->args), mcxTingFree_v) ; } mcxstatus mcxTokExpectFunc ( mcxTokFunc* tf , const char* str , dim str_len , char** z_pp , int n_min , int n_max , int *n_args ) { const char* me = "mcxTokExpectFunc" ; const char *z = str + str_len ; char *x = mcxTokSkip(str, isspace, str_len) /* signed issue */ ; char *y ; mcxTing* key = mcxTingEmpty(NULL, 20) ; mcxTing* args = mcxTingEmpty(NULL, 40) ; mcxstatus status = STATUS_FAIL ; mcxLink* src = NULL ; int ct = 0 ; *z_pp = NULL ; tf->key = NULL ; tf->args = NULL ; if (n_args) *n_args = 0 ; do { if (!x) { mcxErr(me, "no identifier at EOS") ; break ; } y = mcxStrChrAint(x, isalpha, z-x) ; if (y==x) { mcxErr(me, "expect identifier: <%s>", x) ; break ; } if (!y) { mcxErr(me, "lost identifier: <%s>", x) ; break ; } mcxTingNWrite(key, x, y-x) ; x = mcxTokSkip(y, isspace, z-y) ; if (!x || *x != '(') { mcxErr(me, "expect parenthesis: <%s>", x ? x : "EOS") ; break ; } if (mcxTokMatch(x, &y, 0, z-x)) { mcxErr(me, "error parsing <%s>", x) ; break ; } mcxTingNWrite(args, x+1, y-x-1) ; if (!(src = mcxTokArgs(args->str, args->len, &ct, tf->opts))) break ; if ( ( n_min >= 0 && ct < n_min ) || ( n_max >= 0 && ct > n_max ) ) { mcxErr ( me , "for key <%s>, arg count %d conflicts min/max %d/%d" , key->str , ct, n_min, n_max ) ; break ; } *z_pp = y+1 ; status = STATUS_OK ; } while (0) ; mcxTingFree(&args) ; if (status) { mcxTingFree(&key) ; mcxListFree(&src, mcxTingFree_v) ; } else { tf->key = key ; tf->args = src ; if (n_args) *n_args = ct ; } return status ; } mcxLink* mcxTokArgs ( const char* str , long str_len , int* n_args , mcxbits opts ) { mcxLink* src = mcxListSource(8, MCX_GRIM_ARITHMETIC) ; mcxLink* lk = src ; const char* x = str ; char* y = NULL ; const char* z = str + str_len ; mcxTing* arg = NULL ; int ct = 0 ; mcxstatus status = STATUS_FAIL ; while ((status = mcxTokFind(x, ",", &y, 0, z-x)) == STATUS_OK || y) { const char* l = x, *r = y ; if (opts & MCX_TOK_DEL_WS) { l = mcxStrChrAint(x, isspace, y-x) ; r = mcxStrRChrAint(x, isspace, y-x) ; if (l && r && l<=r) r++ ; else r = l = x ; } arg = mcxTingNNew(l, r-l) #if DEBUG ;fprintf(stderr, "adding <%s> [%d/ /%s]\n", arg->str, status, y) #endif ; lk = mcxLinkAfter(lk, arg) ; x = y+1 ; ct++ ; if (status) break ; } if (!y) { mcxErr("mcxTokArgs", "error occurred") ; mcxListFree(&src, mcxTingFree_v) ; return NULL ; } *n_args = ct ; return src ; } #ifndef DEBUG_DEFINED # undef DEBUG #else # undef DEBUG_DEFINED #endif mcl-12-135/util/heap.h0000644000402500021140000000241511163174777011354 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_heap_h #define tingea_heap_h /* Use a heap to compute the K largest elements according to some sortin * criterion. * Note that a new element only has to be compared with the root (when * the heap is at full capacity) to know whether it should enter the heap * and evict the root. */ typedef struct { void *base ; dim heapSize ; dim elemSize ; int (*cmp)(const void* lft, const void* rgt) ; dim n_inserted ; } mcxHeap ; mcxHeap* mcxHeapInit ( void* heap ) ; mcxHeap* mcxHeapNew ( mcxHeap* heap , dim heapSize , dim elemSize , int (*cmp)(const void* lft, const void* rgt) ) ; void mcxHeapFree ( mcxHeap** heap ) ; void mcxHeapRelease ( void* heapv ) ; void mcxHeapClean ( mcxHeap* heap ) ; void mcxHeapInsert ( mcxHeap* heap , void* elem ) ; #endif mcl-12-135/util/inttypes.h0000644000402500021140000000347111651255121012302 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005, 2006 Stijn van Dongen * (C) Copyright 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_inttypes_h #define tingea_inttypes_h #include #include #if UINT_MAX >= 4294967295 # define MCX_UINT32 unsigned int # define MCX_INT32 int #else # define MCX_UINT32 unsigned long # define MCX_INT32 long #endif typedef MCX_UINT32 u32 ; /* at least 32 bits */ typedef MCX_INT32 i32 ; /* at least 32 bits */ typedef unsigned char u8 ; /* at least 8 bits */ #ifndef ulong # define ulong unsigned long #endif #ifndef uchar # define uchar unsigned char #endif /* dim is garantueed to be an unsigned type. * ofs is garantueed to be the corresponding signed type. */ #if 0 # define dim size_t # define ofs ssize_t #else typedef size_t dim; typedef ssize_t ofs; #endif #ifdef SIZE_MAX # define DIM_MAX SIZE_MAX #else # define DIM_MAX ((size_t)-1) #endif #ifdef SSIZE_MAX # define OFS_MAX SSIZE_MAX #else # define OFS_MAX LONG_MAX /* lame, reasonable stopgap */ #endif #ifdef SSIZE_MIN # define OFS_MIN SSIZE_MIN #else # define OFS_MIN LONG_MIN /* lame, reasonable stopgap */ #endif /* annotate 'unsigned due to prototype' * and related messages */ #define different_sign #define different_width #endif mcl-12-135/util/opt.c0000644000402500021140000005354711705601606011234 00000000000000/* (C) Copyright 2002, 2003, 2004, 2005, 2006 Stijn van Dongen * (C) Copyright 2007, 2008, 2009, 2010 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ /* TODO * does display skip account for hidden options? */ #include #include #include #include #include "opt.h" #include "alloc.h" #include "types.h" #include "ding.h" #include "err.h" #include "equate.h" #include "minmax.h" #include "compile.h" static int strcmp_void ( const void* s1 , const void* s2 ) { return strcmp(s1, s2) ; } mcxHash* mcxOptHash ( mcxOptAnchor* opts , mcxHash* hash ) { mcxOptAnchor* anch = opts ? opts+0 : NULL ; hash = hash ? hash : mcxHashNew ( 100 , mcxStrHash , strcmp_void ) ; if (!hash) return NULL ; while (anch && anch->tag) { mcxKV* kv = mcxHashSearch(anch->tag, hash, MCX_DATUM_INSERT) ; if (!kv) { mcxHashFree(&hash, NULL, NULL) ; return NULL ; } if (kv->val) mcxErr ( "mcxOptHash" , "warning: option <%s> already present" , anch->tag ) ; kv->val = anch ; anch++ ; } return hash ; } void mcxOptHashFree ( mcxHash** hashpp ) { mcxHashFree(hashpp, NULL, NULL) ; } void* mcxOptInit ( void* opt ) { mcxOption* option = opt ; option->anch = NULL ; option->val = NULL ; return option ; } mcxOptAnchor* mcxOptFind ( char* tag , mcxHash* hopts ) { mcxKV* kv = mcxHashSearch(tag, hopts, MCX_DATUM_FIND) ; return kv ? (mcxOptAnchor*) kv->val : NULL ; } mcxOption* mcxOptParse__ ( mcxHash* opthash , char** argv , int argc , int prefix /* skip these */ , int suffix /* skip those too */ , int* n_elems_read , mcxstatus* status ) { char** argp = argv+prefix ; char** argl = argv+argc-suffix /* arg last */ ; mcxbool do_exhaust = n_elems_read ? TRUE : FALSE /* fixme: very ugly internal iface*/ ; mcxOption* opts = mcxNAlloc (argc+1, sizeof(mcxOption), mcxOptInit, RETURN_ON_FAIL) ; mcxOption* opt = opts ; if (!opts) { *status = MCX_OPT_STATUS_NOMEM ; return NULL ; } *status = MCX_OPT_STATUS_OK ; if (do_exhaust) *n_elems_read = 0 ; while (argp < argl) { char* arg = *argp ; const char* embedded_val = NULL ; mcxKV* kv = mcxHashSearch(arg, opthash, MCX_DATUM_FIND) ; mcxOptAnchor* anch = kv ? (mcxOptAnchor*) kv->val : NULL ; const char* eq = strchr(arg, '=') ; if (!kv && eq) { char argcpy[501] ; if (eq - arg < 500) { strncpy(argcpy, arg, (eq-arg)) ; argcpy[eq-arg] = '\0' ; if ( !strncmp(argcpy, "--", 2) && (kv = mcxHashSearch(argcpy+1, opthash, MCX_DATUM_FIND)) && (anch = (mcxOptAnchor*) kv->val) ) embedded_val = eq+1 ; else kv = NULL ; } else { /* fimxe do sth */ } } ; if (kv) { opt->anch = anch ; if (do_exhaust) (*n_elems_read)++ ; if (embedded_val) opt->val = embedded_val ; else if (anch->flags & MCX_OPT_HASARG) { argp++ ; if (argp >= argl) { mcxErr("mcxOptParse", "option <%s> takes value", anch->tag) ; *status = MCX_OPT_STATUS_NOARG ; break ; } opt->val = *argp /* mq note: shallow copy */ ; if (do_exhaust) (*n_elems_read)++ ; } } else { if (do_exhaust) break ; else { mcxErr("mcxOptParse", "unsupported option <%s>", arg) ; *status = MCX_OPT_STATUS_UNKNOWN ; break ; } } argp++ ; opt++ ; } if (*status) mcxOptFree(&opts) ; return opts ; } mcxOption* mcxOptExhaust ( mcxOptAnchor *anch , char **argv , int argc , int prefix /* skip these */ , int *n_elems_read , mcxstatus *status ) { mcxHash* opthash = mcxOptHash(anch, NULL) ; mcxOption* opts = mcxOptParse__ (opthash, argv, argc, prefix, 0, n_elems_read, status) ; mcxOptHashFree(&opthash) ; return opts ; } mcxOption* mcxOptParse ( mcxOptAnchor *anch , char **argv , int argc , int prefix /* skip these */ , int suffix /* skip those too */ , mcxstatus *status ) { mcxHash* opthash = mcxOptHash(anch, NULL) ; mcxOption* opts = mcxOptParse__(opthash, argv, argc, prefix, suffix, NULL, status) ; mcxOptHashFree(&opthash) ; return opts ; } mcxOption* mcxHOptExhaust ( mcxHash *opthash , char **argv , int argc , int prefix /* skip these */ , int *n_elems_read , mcxstatus *status ) { return mcxOptParse__ (opthash, argv, argc, prefix, 0, n_elems_read, status) ; } mcxOption* mcxHOptParse ( mcxHash *opthash , char **argv , int argc , int prefix /* skip these */ , int suffix /* skip those too */ , mcxstatus *status ) { return mcxOptParse__(opthash, argv, argc, prefix, suffix, NULL, status) ; } void mcxOptFree ( mcxOption** optpp ) { if (*optpp) mcxFree(*optpp) ; *optpp = NULL ; } void mcxUsage ( FILE* fp , const char* caller , const char** lines ) { int i = 0 ; while(lines[i]) { fprintf(fp, "%s\n", lines[i]) ; i++ ; } fprintf(fp, "[%s] Printed %d lines\n", caller, i+1) ; } static int (*rltFunctions[8])(const void* f1, const void* f2) = { intGt , intGq , fltGt, fltGq , intLt , intLq , fltLt, fltLq } ; int mcxOptPrintDigits = 5; const char* rltSigns[8] = { "(", "[", "(", "[" , ")", "]", ")", "]" } ; /* * todo: NULL lftbound argument & non-NULL lftRelate argument * idem for rgt */ static int checkBoundsUsage ( unsigned char type , void* var cpl__unused , int (*lftRlt) (const void*, const void*) , void* lftBound , int (*rgtRlt) (const void*, const void*) , void* rgtBound ) { int i ; const char* me = "checkBoundsUsage PBD" ; if (type != 'f' && type != 'i') { mcxErr(me, "unsupported checkbound type <%c>", type) ; return 1 ; } if ((lftRlt && !lftBound)||(!lftRlt && lftBound)) { mcxErr(me, "abusive lftRlt lftBound combination") ; return 1 ; } if ((rgtRlt && !rgtBound)||(!rgtRlt && rgtBound)) { mcxErr(me, "abusive rgtRlt rgtBound combination") ; return 1 ; } if (lftRlt) { for(i=0;i<4;i++) if (lftRlt == rltFunctions[i]) break ; if (i == 4) { mcxErr(me, "lftRlt should use gt or gq arg") ; return 1 ; } ; } if (rgtRlt) { for(i=4;i<8;i++) if (rgtRlt == rltFunctions[i]) break ; if (i==8) { mcxErr(me, "rgtRlt should use lt or lq arg") ; return 1 ; } ; } return 0 ; } /* returns * STATUS_OK for matching bounds * STATUS_FAIL for non-matching bounds * STATUS_CB_PBD for internal error. */ enum { STATUS_CB_PBD = STATUS_UNUSED + 1 } ; static mcxstatus checkBounds ( unsigned char type , void* var , int (*lftRlt) (const void*, const void*) , void* lftBound , int (*rgtRlt) (const void*, const void*) , void* rgtBound ) { int lftOk, rgtOk ; if (checkBoundsUsage(type, var, lftRlt, lftBound, rgtRlt, rgtBound)) { mcxErr("checkBounds PBD", "internal error -- cannot validate") ; return STATUS_CB_PBD ; } lftOk = !lftRlt || lftRlt(var, lftBound) ; rgtOk = !rgtRlt || rgtRlt(var, rgtBound) ; return (lftOk && rgtOk) ? STATUS_OK : STATUS_FAIL ; } static mcxTing* checkBoundsRange ( unsigned char type , void* var cpl__unused , int (*lftRlt) (const void*, const void*) , void* lftBound , int (*rgtRlt) (const void*, const void*) , void* rgtBound ) { mcxTing* textRange = mcxTingEmpty(NULL, 40) ; char* lftToken = (char *) "" ; int i ; if (!textRange) return NULL ; if (lftRlt) { for(i=0;i<4;i++) if (lftRlt == rltFunctions[i]) break ; if (i<4) lftToken = (char *) rltSigns[i] ; } else lftToken = (char *) "(" ; mcxTingPrint(textRange, "%s", lftToken) /* * This might fail due to mem shortage; * we ignore and simply keep plodding on with more mcxTingPrint-s * below. It's actually pretty inconceivable, since we alloced * 40 bytes - it depends on mcxOptPrintDigits. */ ; if (lftBound) { if (type == 'f') mcxTingPrintAfter (textRange, "%.*f", mcxOptPrintDigits, *((float*)lftBound)) ; else if (type == 'i') mcxTingPrintAfter(textRange, "%d", *((int*)lftBound)) ; } else mcxTingPrintAfter(textRange, "%s", "<-") ; mcxTingPrintAfter(textRange, "%s", ",") ; if (rgtBound) { if (type == 'f') mcxTingPrintAfter (textRange, "%.*f", mcxOptPrintDigits, *((float*)rgtBound)) ; else if (type == 'i') mcxTingPrintAfter(textRange, "%d", *((int*)rgtBound)) ; } else mcxTingPrintAfter(textRange, "%s", "->") ; if (rgtRlt) { for(i=4;i<8;i++) if (rgtRlt == rltFunctions[i]) break ; if (i<8) rgtToken = (char *) rltSigns[i] ; } else rgtToken = (char *) ")" ; mcxTingPrintAfter(textRange, "%s", rgtToken) ; return textRange ; } mcxbool mcxOptCheckBounds ( const char* caller , const char* flag , unsigned char type , void* var , int (*lftRlt) (const void*, const void*) , void* lftBound , int (*rgtRlt) (const void*, const void*) , void* rgtBound ) { mcxTing* textRange ; mcxstatus stat = checkBounds(type, var, lftRlt, lftBound, rgtRlt, rgtBound) ; if (stat == STATUS_CB_PBD) { mcxErr("mcxOptCheckBounds", "cannot validate option %s", flag) ; return FALSE ; } else if (stat == STATUS_FAIL) { if (! ( textRange = checkBoundsRange ( type , var , lftRlt , lftBound , rgtRlt , rgtBound ) ) ) return FALSE ; mcxErr ( caller , "%s argument to %s should be in range %s" , type == 'i' ? "integer" : type == 'f' ? "float" : "MICANS" , flag , textRange->str ) ; mcxTingFree(&textRange) ; return FALSE ; } return TRUE ; } int mcxOptAnchorCmpId ( const void *a1 , const void *a2 ) { const mcxOptAnchor* A1 = a1 ; const mcxOptAnchor* A2 = a2 ; return A1->id < A2->id ? -1 : A1->id - A2->id ; } int mcxOptAnchorCmpTag ( const void *a1 , const void *a2 ) { const mcxOptAnchor* A1 = a1 ; const mcxOptAnchor* A2 = a2 ; return A1->tag && A2->tag ? strcmp(A1->tag, A2->tag) : A1->tag ? -1 : 1 ; } void mcxOptAnchorSortByTag ( mcxOptAnchor *anchors , dim n_anchors ) { if (n_anchors) qsort(anchors, n_anchors, sizeof(mcxOptAnchor), mcxOptAnchorCmpTag) ; } void mcxOptAnchorSortById ( mcxOptAnchor *anchors , dim n_anchors ) { if (n_anchors) qsort(anchors, n_anchors, sizeof(mcxOptAnchor), mcxOptAnchorCmpId) ; } void parse_descr ( const char* field , const char** descrp , const char** markp , int* mark_width ) { const char* m = strstr(field, "\tM") ; const char* n = m ? strstr(m+2, "\t") : NULL ; const char* d = strstr(field, "\tD") ; if (m && n) *mark_width = n - m - 2 /* truncintok */ , *markp = m + 2 ; else *markp = "" , *mark_width = 0 ; *descrp = d ? d + 2 : field ; } void mcxOptApropos ( FILE* fp , const char* me cpl__unused , const char* syntax , int width , mcxbits display , const mcxOptAnchor opt[] ) { const mcxOptAnchor *baseopt = opt ; mcxTing* scr = mcxTingEmpty(NULL, 100) ; int id_prev = -1 ; const char* descr_usage, *descr_mark ; int mark_width = 0, mark_width_max = 0 ; int mywidth = 0 ; if (syntax) fprintf(fp, "%s\n\n", syntax) ; for (opt = baseopt; opt->tag; opt++) { int thislen = strlen(opt->tag) /* truncintok */ ; if (opt->descr_arg) thislen += 1 + strlen(opt->descr_arg) /* truncintok */ ; if ( !(opt->flags & MCX_OPT_HIDDEN) || display & MCX_OPT_DISPLAY_HIDDEN ) mywidth = MCX_MAX(mywidth, thislen) ; if (opt->descr_usage) { parse_descr (opt->descr_usage, &descr_usage, &descr_mark, &mark_width) ; mark_width_max = MCX_MAX(mark_width_max, mark_width) ; } } if (!width) width = mywidth ; for (opt = baseopt; opt->tag; opt++) { const char* skip = "" ; const char* hidden = opt->flags & MCX_OPT_HIDDEN ? " ___" : "" ; if ( opt->flags & MCX_OPT_HIDDEN && !(display & MCX_OPT_DISPLAY_HIDDEN) ) { id_prev = opt->id ; continue ; } if (display & MCX_OPT_DISPLAY_SKIP && opt->id - id_prev > 1) skip = "\n" ; id_prev = opt->id ; if (opt->flags & MCX_OPT_HASARG && opt->descr_arg) mcxTingPrint ( scr , "%s%c%s" , opt->tag , ' ' , opt->descr_arg ) ; else mcxTingPrint(scr, "%s", opt->tag) ; fputs(skip, fp) ; if (!opt->descr_usage) { fprintf(fp, "%s\n", scr->str) ; continue ; } if (mark_width_max) { parse_descr (opt->descr_usage, &descr_usage, &descr_mark, &mark_width) ; fprintf(fp, "%-*s", width, scr->str) ; fprintf(fp, " %-*.*s ",(int) mark_width_max,mark_width, descr_mark) ; fprintf(fp, "%s%s\n", descr_usage, hidden) ; } else { fprintf(fp, "%-*s", width, scr->str) ; fprintf(fp, " %s%s\n", opt->descr_usage, hidden) ; } } } char** mcxOptParseString ( char* src , int* argc , unsigned char delim ) { dim srclen = strlen(src) ; dim n_delim = mcxStrCountChar(src, delim, srclen) ; dim n_args = 0 ; char** argv ; char *z = src + srclen ; char *p = src, *os ; *argc = 0 ; if (!srclen) return NULL ; if (!(argv = mcxAlloc(sizeof(char*) * (n_delim+1), RETURN_ON_FAIL))) return NULL ; while (p=z) break ; os = p ; if (!(p = strchr(os, delim))) p = z ; *p = '\0' ; argv[n_args++] = os ; p++ ; } *argc = n_args ; return argv ; } mcxbool mcxOptIsInfo ( const char* arg , mcxOptAnchor* options ) { mcxOptAnchor* opt ; for (opt = options; opt->tag; opt++) if (!strcmp(opt->tag, arg)) break ; return (opt->tag && opt->flags & MCX_OPT_INFO) ? TRUE : FALSE ; } mcxTing* mcxOptArgLine ( const char** argv , int argc , int quote ) { mcxTing* cl = mcxTingEmpty(NULL, 80) ; int i ; const char* ql = "*", *qr = "*" ; if (quote == '[') ql = "[", qr = "]" ; else if (quote == '{') ql = "{", qr = "}" ; else if (quote == '<') ql = "<", qr = ">" ; else if (quote == '(') ql = "(", qr = ")" ; else if (quote == '"') ql = "\"", qr = "\"" ; else if (quote == '\'') ql = "'", qr = "'" ; if (argc) mcxTingPrint(cl, "%s%s%s", ql, argv[0], qr) ; for (i=1;idisp_argc ; const char** argv = bundle->disp_argv ; const char* me = bundle->disp_name ; const char* syntax = bundle->disp_syntax ; mcxOptAnchor* dispatcher_options = bundle->disp_shared ; dim n_options= bundle->n_disp_shared ; mcxDispEntry* entry_dir= bundle->disp_table ; void (*report_version)(const char* me) = bundle->disp_version ; const char* mode_str ; mcxDispHook* hk = NULL ; mcxOption* opts, *opt ; int n_arg_read = 0 ; mcxstatus parseStatus = STATUS_FAIL ; mcxHash *clmOpts, *delgOpts, *mergedOpts ; mcxDispEntry* entry ; int help = argc <= 1 || !strcmp(argv[1], "-h") ? 1 : 0 ; int delg_id_max ; int a ; mcxOptAnchorSortById(dispatcher_options, n_options) ; clmOpts = mcxOptHash(dispatcher_options, NULL) ; delg_id_max = dispatcher_options[n_options-1].id ; if (help) { entry = entry_dir+0 ; fprintf(stdout, "%s\n\n", syntax) ; while(entry->id >= 0) { hk = entry->get_hk() ; if (!(hk->flags & MCX_DISP_HIDDEN)) fprintf(stdout, "%s %s\n", me, hk->syntax) ; entry++ ; } fprintf ( stdout , "\n%s help (invoke manual page for )\n" "help pages should be available for:" , me ) ; entry = entry_dir+0 ; while(entry->id >= 0) { hk = entry->get_hk() ; if (!(hk->flags & MCX_DISP_HIDDEN) && (hk->flags & MCX_DISP_MANUAL)) fprintf(stdout, " %s", hk->name) ; entry++ ; } fputc('\n', stdout) ; exit(0) ; } else if (argc > 1 && !strcmp(argv[1], "--version")) { report_version(me) ; exit(0) ; } else if (argc > 1 && !strcmp(argv[1], "help")) { mcxTing* minime = mcxTingNew(me) ; if (argc != 3) mcxDie ( 1 , me , "help mode requires single trailing mode argument, e.g. %s help %s" , me, (entry_dir+0)->get_hk()->name ) ; entry = entry_dir+0 /* todo unify all entry walking code */ ; while (entry->id >= 0) { hk = entry->get_hk() ; if (!strcmp(hk->name, argv[2])) { mcxTingPrintAfter(minime, "%s", hk->name) ; mcxErr(minime->str, "searching for manual pages using MANPATH variable") ; execlp("man", "man", minime->str, NULL) ; mcxErr(minime->str, "the 'man' program was not found") ; mcxDie(1, me, "make sure PATH is set correctly") ; } entry++ ; } if (entry->id < 0) mcxDie(1, me, "unknown mode <%s>", argv[2]) ; } /* todo emit warning to check for right version of manual page */ mode_str = argv[1] /* Find the mode in which we are invoked */ ; { const char* name ; entry = entry_dir+0 ; while (entry->id >= 0) { hk = entry->get_hk() ; name = hk->name ; if (!strcmp(name, mode_str)) break ; entry++ ; } if (entry->id < 0) mcxDie(1, me, "unknown mode <%s>", mode_str) ; } mcxOptAnchorSortById(hk->options, hk->n_options) /* caller screwed up: it's IDs should top the * largest ID in the shared options. */ ; if (hk->n_options && delg_id_max >= hk->options[0].id) mcxDie(1, me, "PBD option merge is pointless") ; delgOpts = mcxOptHash(hk->options, NULL) ; mergedOpts = mcxHashMerge(clmOpts, delgOpts, NULL, NULL) ; opts = mcxHOptExhaust (mergedOpts, (char**) argv, argc, 2, &n_arg_read, &parseStatus) ; a = 2 + n_arg_read /* fixme: we should be able to check n_at_most and n_at_least * right here, should we not? */ ; if (parseStatus != STATUS_OK) { mcxErr(me, "initialization failed") ; exit(1) ; } if (hk->init()) mcxDie(1, me, "initialization failed for <%s>", hk->name) ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; if (anch->id <= delg_id_max) { if (bundle->shared_handler(anch->id, opt->val, hk, bundle)) mcxDie(1, me, "dispatcher curtains") ; } else if (hk->arg_cb(anch->id, opt->val)) mcxDie(1, me, "dispatchee curtains") ; } /* do the checks below after parsing: * Parsing is needed to -h --help type flags * and other type of meta-enquiry options. */ if ( a + hk->n_at_least > argc || (hk->n_at_most >= 0 && a + hk->n_at_most < argc) ) { mcxTing* t = mcxTingPrint ( NULL , "mode %s needs %s %d trailing arguments" , mode_str , hk->n_at_least == hk->n_at_most ? "exactly" : "at least" , hk->n_at_least ) ; if (hk->n_at_most > hk->n_at_most) mcxTingPrintAfter(t, " and at most %d", hk->n_at_most) ; if (hk->n_at_most >= 0 && a + hk->n_at_most < argc) mcxTingPrintAfter(t, " (found %s)", argv[a]) ; mcxDie(1, me, "%s", t->str) ; } mcxOptFree(&opts) ; mcxOptHashFree(&clmOpts) ; mcxOptHashFree(&delgOpts) ; mcxOptHashFree(&mergedOpts) ; return hk->main(argc-a, argv+a) ; } mcl-12-135/util/list.h0000644000402500021140000000641011147245506011400 00000000000000/* (C) Copyright 2004, 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_list_h #define tingea_list_h #include "gralloc.h" #include "types.h" /* TODO: * - linkDelete linkRemove semantics interface documentation. * - make prev xor next link optional. * - make hidden pointer optional. * - provide interface that uses list struct. * - convenience interface for tying two chains together. * - list-to-array interface. */ /* * History. * The data structure used is similar to that by Jan van der Steen's pool.c * code, which used to be part of this library. So kudos to Jan. The * present implementation, which is a bit different, was not directly copied * nor modified. It descended from a botched linked list implementation * having it's own buffered storage. Only at that time I realized that the * right solution for lists and hashes is to have a private pool of gridmem, * rather than deriving it from a global pool (so that we still can defer * thread-safety to malloc). Right? * The present implementation was then derived from the botched linked list * and sanitized afterwards. The linked list.c is still slightly botched. */ /* Description * This provides a doubly linked list/link interface with buffered storage * (invisible to the user). The current interface operates entirely via * links, the commanding structure is hidden. Other interface types may * arise later. * * You can create a number of chains drawing memory from the same pool. * * It only provides basic link insertions and deletions as a convenience * interface, and does not maintain consistency checks, neither on links, * nor on storage. */ typedef struct mcxLink { struct mcxLink* next ; struct mcxLink* prev ; void* val ; } mcxLink ; /* Options: * same as for mcxGrimNew */ mcxLink* mcxListSource ( dim capacity_start , mcxbits options ) ; /* * This removes all links that have the same parent link as lk. [huh?] * BEWARE freeval doesn't do anything yet */ void mcxListFree ( mcxLink** lk , void freeval(void* valpp) /* (yourtype1** valpp) */ ) ; /* Creates new chain, that can later be tied to other chains. */ mcxLink* mcxLinkSpawn ( mcxLink* lk , void* val ) ; /* * This inspects prev and next and links them if possible. * * You can use the val pointer, immediately after deleting. * That makes it unsafe in threads (but you need locking anyway). * The feature is used in the hash library. */ mcxLink* mcxLinkDelete ( mcxLink* lk ) ; /* * This just deallocates the link. */ void mcxLinkRemove ( mcxLink* lk ) ; mcxLink* mcxLinkAfter ( mcxLink* prev , void* val ) ; mcxLink* mcxLinkBefore ( mcxLink* prev , void* val ) ; void mcxLinkClose ( mcxLink* left , mcxLink* right ) ; /* * Get the grim that serves this list */ mcxGrim* mcxLinkGrim ( mcxLink* lk ) ; #endif mcl-12-135/util/gralloc.c0000644000402500021140000000775711147246035012060 00000000000000/* (c) Copyright 2004, 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include "alloc.h" #include "gralloc.h" /* TODO * calloc stuff. * implement arithmetic capacity strategy. */ #define DEBUG 0 typedef struct memnext { struct memnext* next ; } memnext ; /* future idea; use higher bita as perbytage style coefficients. duh. */ #define n1(grim) ((grim->flags >> 16) & 0xFF) #define n2(grim) ((grim->flags >> 24) & 0xFF) typedef struct grim_buf { char* units /* n_units * (sizeof(memnext) + sz_unit) */ ; dim n_units /* number of units available for this struct */ ; struct grim_buf* prev ; } grim_buf ; struct mcxGrim { grim_buf* buf ; dim sz_unit /* size of one unit */ ; memnext* na /* next available */ ; dim ct /* number in use */ ; mcxbits flags /* allocation strategy, numbers */ ; } ; grim_buf* grim_buf_new ( dim sz_unit , dim n_units ) { dim i ; grim_buf* buf ; char* units ; dim sz_load = sizeof(memnext) + sz_unit ; if (!(buf = mcxAlloc(sizeof(grim_buf), RETURN_ON_FAIL))) return NULL ; if ( !(buf->units = units = mcxAlloc(n_units * sz_load, RETURN_ON_FAIL) ) ) { mcxFree(buf) ; return NULL ; } buf->prev = NULL ; buf->n_units = n_units #if DEBUG ; fprintf (stderr, "Extending grim with <%lu> units\n", (ulong) n_units); #endif ; for (i=0;inext = (memnext*) (units + (i+1) * sz_load) ; ((memnext*) (buf->units + (n_units-1) * sz_load))->next = NULL ; return buf ; } mcxGrim* mcxGrimNew ( dim sz_unit , dim n_units , mcxbits options ) { mcxGrim* src = mcxAlloc(sizeof(mcxGrim), RETURN_ON_FAIL) ; if (!src) return NULL ; if (!(src->buf = grim_buf_new(sz_unit, n_units))) { mcxFree(src) ; return NULL ; } src->buf->prev = NULL ; src->flags = options ; src->na = (void*) src->buf->units ; src->ct = 0 ; src->sz_unit = sz_unit ; return src ; } dim mcxGrimMemSize ( mcxGrim* src ) { grim_buf *buf = src->buf, *this = buf->prev ; dim n = buf->n_units ; while (this) n += this->n_units , this = this->prev ; return n ; } mcxbool mcx_grim_extend ( mcxGrim* src ) { grim_buf* prevbuf = src->buf->prev ; dim n_units = prevbuf ? 2 * prevbuf->n_units : src->buf->n_units #if DEBUG ; dim t = mcxGrimMemSize(src) ; fprintf(stderr, "have %lu units\n", (ulong) t) #endif ; grim_buf* newbuf = grim_buf_new(src->sz_unit, n_units) ; if (!newbuf) return FALSE ; newbuf->prev = src->buf->prev ; src->buf->prev = newbuf ; src->na = (void*) newbuf->units /* fixme cast */ ; return TRUE ; } void mcxGrimFree ( mcxGrim** srcp ) { grim_buf *this = (*srcp)->buf ; while (this) { grim_buf* tmp = this->prev ; mcxFree(this->units) ; mcxFree(this) ; this = tmp ; } mcxFree(*srcp) ; *srcp = NULL ; } void mcxGrimLet ( mcxGrim* src , void* mem ) { memnext* na = (void*) ((char*) mem - sizeof(memnext)) ; na->next = src->na ; src->na = na ; src->ct-- ; } void* mcxGrimGet ( mcxGrim* src ) { void* mem ; if (!src->na && !mcx_grim_extend(src)) return NULL ; mem = ((char*) src->na) + sizeof(memnext) ; src->na = src->na->next ; src->ct++ ; return mem ; } dim mcxGrimCount ( mcxGrim* src ) { return src->ct ; } mcl-12-135/util/ding.c0000644000402500021140000002266111745761665011364 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include #include #include #include #include #include "ding.h" #include "types.h" #include "alloc.h" #include "minmax.h" char* mcxStrDup ( const char* str ) { return mcxStrNDup(str, strlen(str)) ; } char* mcxStrNDup ( const char* str , dim n ) { char* rts = mcxAlloc(n+1, RETURN_ON_FAIL) ; if (rts) memcpy(rts, str, n) , rts[n] = '\0' ; return rts ; } dim mcxStrCountChar ( const char* p , char c , ofs len ) { const char* z = p ; dim ct = 0 ; z += (len >= 0) ? (dim) len : strlen(p) ; while (p= 0 ? p+offset : p + strlen(p) ; while (--z >= p && !fbool((unsigned char) *z)) ; return (char*) (z >= p ? z : NULL) ; } char* mcxStrRChrAint ( const char* p , int (*fbool)(int c) , ofs offset ) { const char* z = offset >= 0 ? p+offset : p + strlen(p) ; while (--z >= p && fbool((unsigned char) *z)) ; return (char*) (z >= p ? z : NULL) ; } const char* bit8[256] = { "00000000" , "00000001" , "00000010" , "00000011" , "00000100" , "00000101" , "00000110" , "00000111" , "00001000" , "00001001" , "00001010" , "00001011" , "00001100" , "00001101" , "00001110" , "00001111" , "00010000" , "00010001" , "00010010" , "00010011" , "00010100" , "00010101" , "00010110" , "00010111" , "00011000" , "00011001" , "00011010" , "00011011" , "00011100" , "00011101" , "00011110" , "00011111" , "00100000" , "00100001" , "00100010" , "00100011" , "00100100" , "00100101" , "00100110" , "00100111" , "00101000" , "00101001" , "00101010" , "00101011" , "00101100" , "00101101" , "00101110" , "00101111" , "00110000" , "00110001" , "00110010" , "00110011" , "00110100" , "00110101" , "00110110" , "00110111" , "00111000" , "00111001" , "00111010" , "00111011" , "00111100" , "00111101" , "00111110" , "00111111" , "01000000" , "01000001" , "01000010" , "01000011" , "01000100" , "01000101" , "01000110" , "01000111" , "01001000" , "01001001" , "01001010" , "01001011" , "01001100" , "01001101" , "01001110" , "01001111" , "01010000" , "01010001" , "01010010" , "01010011" , "01010100" , "01010101" , "01010110" , "01010111" , "01011000" , "01011001" , "01011010" , "01011011" , "01011100" , "01011101" , "01011110" , "01011111" , "01100000" , "01100001" , "01100010" , "01100011" , "01100100" , "01100101" , "01100110" , "01100111" , "01101000" , "01101001" , "01101010" , "01101011" , "01101100" , "01101101" , "01101110" , "01101111" , "01110000" , "01110001" , "01110010" , "01110011" , "01110100" , "01110101" , "01110110" , "01110111" , "01111000" , "01111001" , "01111010" , "01111011" , "01111100" , "01111101" , "01111110" , "01111111" , "10000000" , "10000001" , "10000010" , "10000011" , "10000100" , "10000101" , "10000110" , "10000111" , "10001000" , "10001001" , "10001010" , "10001011" , "10001100" , "10001101" , "10001110" , "10001111" , "10010000" , "10010001" , "10010010" , "10010011" , "10010100" , "10010101" , "10010110" , "10010111" , "10011000" , "10011001" , "10011010" , "10011011" , "10011100" , "10011101" , "10011110" , "10011111" , "10100000" , "10100001" , "10100010" , "10100011" , "10100100" , "10100101" , "10100110" , "10100111" , "10101000" , "10101001" , "10101010" , "10101011" , "10101100" , "10101101" , "10101110" , "10101111" , "10110000" , "10110001" , "10110010" , "10110011" , "10110100" , "10110101" , "10110110" , "10110111" , "10111000" , "10111001" , "10111010" , "10111011" , "10111100" , "10111101" , "10111110" , "10111111" , "11000000" , "11000001" , "11000010" , "11000011" , "11000100" , "11000101" , "11000110" , "11000111" , "11001000" , "11001001" , "11001010" , "11001011" , "11001100" , "11001101" , "11001110" , "11001111" , "11010000" , "11010001" , "11010010" , "11010011" , "11010100" , "11010101" , "11010110" , "11010111" , "11011000" , "11011001" , "11011010" , "11011011" , "11011100" , "11011101" , "11011110" , "11011111" , "11100000" , "11100001" , "11100010" , "11100011" , "11100100" , "11100101" , "11100110" , "11100111" , "11101000" , "11101001" , "11101010" , "11101011" , "11101100" , "11101101" , "11101110" , "11101111" , "11110000" , "11110001" , "11110010" , "11110011" , "11110100" , "11110101" , "11110110" , "11110111" , "11111000" , "11111001" , "11111010" , "11111011" , "11111100" , "11111101" , "11111110" , "11111111" } ; mcxTing* mcxMemPrint ( mcxTing* ting , void* p , dim n_bytes , mcxbits flags ) { char* m = p ; mcxbool space = !(flags & MCX_MEMPRINT_NOSPACE) ; mcxbool rev = flags & MCX_MEMPRINT_REVERSE ; dim i ; ting = mcxTingEmpty(ting, 32) ; for (i=0;i best) best = TBL(i+1,j+1) ; } *lcs = best ; } free(tbl) ; return min_val ; } int mcxSetenv ( const char* kv ) { mcxTing* tv = mcxTingNew(kv) ; if (!strchr(kv, '=')) mcxTingAppend(tv, "=1") ; return putenv(mcxTinguish(tv)) ; } mcxstatus mcxStrTol ( const char* s , long* value , char** end ) { int errno_sa = errno ; char* e = NULL ; mcxstatus status = STATUS_OK ; errno = 0 ; *value = strtol(s, &e, 10) ; if (errno || e == s) status = STATUS_FAIL ; errno = errno_sa ; if (end) *end = e ; return status ; } mcxstatus mcxStrToul ( const char* s , ulong* value , char** end ) { int errno_sa = errno ; mcxstatus status = STATUS_OK ; char* e = NULL ; errno = 0 ; *value = strtoul(s, &e, 10) ; if (errno || e == s) status = STATUS_FAIL ; errno = errno_sa ; if (end) *end = e ; return status ; } mcl-12-135/util/tr.c0000644000402500021140000005642011147246123011047 00000000000000/* (C) Copyright 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ /* TODO * - xtr_get_token does not check repeat pointer. crashable? * - something that translates \012 to the byte value. * - write regression test. * - More error codes * - Have a magic repeat operator that does not stop on boundaries. * - Do sane things to implicit \0 (e.g. as result of complement) and * characters outside ascii range. * - [*a*256] leads to count 0. * # tr a-z A-C[*#*]X-Z will not (now nor ever) lookahead * - what about alpha tr(1) capabilities? * 6. In the POSIX locale, to translate all ASCII characters that are not * specified, enter: * tr -c '[ -~]' '[A-_]' newfile */ /* NOTE - only room for 256 classes including sentinels C_CLASSSTART C_CLASSEND - during tlt phase delete and squash bits are ignored and not respected */ /* randomly located documentation of intermediate and final tbl formats * * css class start sentinel * ces class end sentinel * rps repeat sentinel * rss range start sentinel * res range end sentinel * * Class: * css | class , i1, i2, i3, .. , ces | class * where i1 etc are to be mapped * * Repeat: * rss | value, count * * Range * rss | _ , i, i+1, i+2, i+3, .. , res | _ * * Final tbl format: value stored in lower 8 bits. * Higher bits may contain MCX_TR_TRANSLATE, MCX_TR_DELETE MCX_TR_SQUASH */ #include #include #include #include #include "tr.h" #include "ting.h" #include "types.h" #include "ding.h" #include "err.h" const char* X_REPEAT_UNEXPECTED = "repeat unexpected"; const char* X_REPEAT_SYNTAX = "repeat syntax"; const char* X_CLASS_UNKNOWN = "class unknown"; const char* X_CLASS_UNEXPECTED = "class unexpected"; const char* X_OCTAL_RANGE = "octal range"; const char* X_OCTAL_SYNTAX = "octal syntax"; const char* X_HEX_RANGE = "hex range"; const char* X_HEX_SYNTAX = "hex syntax"; const char* X_RANGE_INVERTED = "inverted range"; const char* mcx_tr_err = NULL; mcxbool mcx_tr_debug = FALSE; #define MAX_SPEC_INDEX 511 #define error_break break #define UC(c) ((unsigned char) *(c)) static const char* us = "tr"; enum { C_CLASSSTART = 1u , C_ALNUM , C_ALPHA , C_CNTRL , C_DIGIT , C_GRAPH , C_LOWER , C_PRINT , C_PUNCT , C_SPACE , C_UPPER , C_XDIGIT , C_CLASSEND /* 13 */ , C_RANGESTART , C_RANGEEND , C_REPEAT /* next token encodes repeat (stops on boundary)*/ , C_FLOOD /* next token encodeѕ flood (floods all) */ , C_EOF } ; #define ISCLASS(cl) ((cl) > C_CLASSSTART && (cl) < C_CLASSEND) #define ISREPEAT(cl) ((cl) == C_REPEAT || (cl) == C_FLOOD) #define ISUCHARRANGE(i) \ ( (i) >= 0 && (i) < 256 ) #define ISBOUNDARY(cl) \ ( (cl) == C_CLASSSTART || (cl) == C_CLASSEND \ || (cl) == C_RANGESTART || (cl) == C_RANGEEND ) #define ISSTART(cl) \ ( (cl) == C_CLASSSTART || (cl) == C_RANGESTART ) #define ISEND(cl) \ ( (cl) == C_CLASSEND || (cl) == C_RANGEEND ) #define ISUPPERSTART(tok) \ ( tok == ((C_CLASSSTART << 8) | C_UPPER) ) #define ISLOWERSTART(tok) \ ( tok == ((C_CLASSSTART << 8) | C_LOWER) ) int (*isit[13])(int c) = { NULL /* so C_CLASSVAL - C_CLASSSTART gives an index */ , isalnum , isalpha , iscntrl , isdigit , isgraph , islower , isprint , ispunct , isspace , isupper , isxdigit } ; mcxTing* mcxTRsplash ( mcxTR* tr , mcxbits bits ) { int i,j ; u32* tbl = tr->tlt ; mcxTing* splash = mcxTingEmpty(NULL, 256) ; for (i=1,j=0;i<256;i++) /* NOTE: \000 excluded */ { u32 tok = tbl[i] ; u32 meta = tok >> 8 ; if ( ((bits & MCX_TR_SOURCE) && (meta & MCX_TR_TRANSLATE)) || ((bits & MCX_TR_SOURCE_C) && ! (meta & MCX_TR_TRANSLATE)) || ((bits & MCX_TR_SQUASH) && (meta & MCX_TR_SQUASH)) || ((bits & MCX_TR_SQUASH_C) && ! (meta & MCX_TR_SQUASH)) || ((bits & MCX_TR_DELETE) && (meta & MCX_TR_DELETE)) || ((bits & MCX_TR_DELETE_C) && ! (meta & MCX_TR_DELETE)) ) splash->str[j++] = i ; } splash->str[j] = '\0' ; return splash ; } ofs mcxTRtranslate ( char* src , mcxTR* tr ) { dim i,j ; int prev = INT_MAX /* only relevant for squash case */ ; dim len = strlen(src) ; u32* tbl = tr->tlt ; for (i=0,j=0;i> 8) & MCX_TR_TRANSLATE ? idxmap : idx ; if ((tbl[val] >> 8) & MCX_TR_DELETE) continue ; if (!((tbl[val] >> 8) & MCX_TR_SQUASH) || val != prev) { *(src+j++) = (char) val ; prev = val ; } } *(src+j) = '\0' ; return (ofs) j ; } ofs mcxTingTranslate ( mcxTing* src , mcxTR* tr ) { src->len = mcxTRtranslate(src->str, tr) ; return src->len ; } /* fixme conceivably mcxTRtranslate could return -1 as * error condition. hum ho. */ ofs mcxTingTr ( mcxTing* txt , const char* src , const char* dst , const char* set_delete , const char* set_squash , mcxbits modes ) { mcxTR tr ; if (mcxTRloadTable(&tr, src, dst, set_delete, set_squash, modes)) return -1 ; txt->len = mcxTRtranslate(txt->str, &tr) ; return txt->len ; } static const char* xtr_get_token ( const char *p , const char *z , u8* classp , u8* valuep , int *repeat ) #define MCX_HEX(c) ( (c>='0' && c<='9') ? c-'0'\ : (c>='a' && c<='f') ? c-'a'+10\ : (c>='A' && c<='F') ? c-'A'+10\ : 0\ ) { int c = UC(p), d = 0, np = 0 ; mcxstatus status = STATUS_FAIL ; i32 value = 0, class = 0 /* need to be able to check overflow */ ; const char* me = "xtr_" "get_token" ; mcxbool class_ok = classp ? TRUE : FALSE ; if (classp) *classp = 0 ; if (valuep) *valuep = 0 ; if (repeat) *repeat = -1 ; while (1) { if (p >= z) break /*************************************************************************/ ; if (c == '\\') { if (p+1 >= z) error_break ; d = UC(p+1) ; if (strchr("0123", d)) { if ( p+3 >=z || !isdigit(UC(p+2)) || !isdigit(UC(p+3)) /* fixme 009 */ ) { mcx_tr_err = X_OCTAL_SYNTAX ; error_break ; } value = 64*(d-'0') + 8*(UC(p+2)-'0') + (UC(p+3)-'0') ; if (value > 0377) { mcx_tr_err = X_OCTAL_RANGE ; error_break ; } np = 4 ; } else if (d == 'x') { if ( p+3 >= z || !isxdigit(UC(p+2)) || !isxdigit(UC(p+3)) ) { mcx_tr_err = X_HEX_SYNTAX ; error_break ; } value = 16 * MCX_HEX(UC(p+2)) + MCX_HEX(UC(p+3)) ; np = 4 ; } else if (strchr("\\abfnrtv", d)) { np = 2 ; switch(d) { case 'a' : value = 07 ; break ; case 'b' : value = 010 ; break ; case 'f' : value = 014 ; break ; case 'n' : value = 012 ; break ; case 'r' : value = 015 ; break ; case 't' : value = 011 ; break ; case 'v' : value = 013 ; break ; case '\\': value = 0134; break ; default : value = '?' ; break /* impossible */ ; } } else { value= d ; np = 2 ; } } /* case '\\' */ /*************************************************************************/ else if (c == '[') { if (!class_ok) /* fixme: could just accept '[' */ { mcx_tr_err = X_CLASS_UNEXPECTED ; error_break ; } /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ else if (p+1 < z && UC(p+1) == ':') { if (!strncmp(p+2, "alpha:]", 7)) class = C_ALPHA, np = 4+ 5 ; else if (!strncmp(p+2, "alnum:]", 7)) class = C_ALNUM, np = 4+ 5 ; else if (!strncmp(p+2, "digit:]", 7)) class = C_DIGIT, np = 4+ 5 ; else if (!strncmp(p+2, "cntrl:]", 7)) class = C_CNTRL, np = 4+ 5 ; else if (!strncmp(p+2, "graph:]", 7)) class = C_GRAPH, np = 4+ 5 ; else if (!strncmp(p+2, "lower:]", 7)) class = C_LOWER, np = 4+ 5 ; else if (!strncmp(p+2, "print:]", 7)) class = C_PRINT, np = 4+ 5 ; else if (!strncmp(p+2, "punct:]", 7)) class = C_PUNCT, np = 4+ 5 ; else if (!strncmp(p+2, "space:]", 7)) class = C_SPACE, np = 4+ 5 ; else if (!strncmp(p+2, "upper:]", 7)) class = C_UPPER, np = 4+ 5 ; else if (!strncmp(p+2, "xdigit:]", 8)) class = C_XDIGIT, np = 4+ 6 ; else { mcx_tr_err = X_CLASS_UNKNOWN ; break ; } } /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ else if (p+1 < z && UC(p+1) == '*') { int num = 0 ; u8 value2 = 0 ; const char* q = NULL ; if (p+2 >= z) { mcx_tr_err = X_REPEAT_SYNTAX ; error_break ; } if (!(q = xtr_get_token(p+2, z, NULL, &value2, NULL))) error_break ; if (UC(q) == '*' && UC(q+1) == ']') class = C_FLOOD ; else if ( (UC(q) == '#' && UC(q+1) == ']') || (UC(q) == '*') ) class = C_REPEAT ; else { mcx_tr_err = X_REPEAT_SYNTAX ; error_break ; } if (UC(q+1) == ']') { *repeat = 0 ; q++ ; } else { if (sscanf(q+1, "%d]", &num) != 1) break ; if (!(q = strchr(q, ']'))) break ; if (num < 0 || num > 256) break ; *repeat = num ; if (!num) class = C_FLOOD ; } /* q[0] should be ']' now */ value = value2 ; np = (q+1) - p /* truncintok */ ; } /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ else break ; } /*************************************************************************/ else { value = c ; np = 1 ; } status = STATUS_OK ; break ; } if (status) { mcxErr(me, "error at char (%c)", UC(p)) ; return NULL ; } if (mcx_tr_debug) fprintf(stdout, "xtr_get_token (%d | %d)\n", (int) value, (int) class) ; if (classp) *classp = class ; if (valuep) *valuep = value ; return p + np ; } char* mcxStrEscapedValue ( const char* p , const char* z , int *value ) { u8 val = p[0] ; const char* q = NULL ; if (val != '\\') { *value = val ; return (char*) (p+1) ; } if (!(q = xtr_get_token(p, z, NULL, &val, NULL))) return NULL ; *value = val ; return (char*) q ; } /* Sets either * value to something in the range 0-255 and length * to something >= 1 * or * value to one of the constants C_ALPHA etc and length to 0. * * Returns the next parsable character or NULL for failure. */ static const char* xtr_get_set ( const char *p , const char *z , u8 *classp , u8 *valuep , int *countp ) { const char* q = xtr_get_token(p, z, classp, valuep, countp) ; if (!q) return NULL ; if (!*classp && *q == '-') { u8 range_top = 0 ; q = xtr_get_token(q+1, z, NULL, &range_top, NULL) ; if (!q) return NULL ; if (range_top < *valuep) { mcx_tr_err = X_RANGE_INVERTED ; return NULL ; } *countp = range_top - *valuep + 1 ; } else if (!*classp) *countp = 1 /* else it is a repeat class or .. */ ; return q ; } static void mcx_tr_enc_dump ( u32* enc , const char* tag ) { int i = 0 ; fprintf(stdout, "(dumping %s\n", tag) ; while (i> 8 ; int val = enc[i] & 0377 ; fprintf(stdout, "%6d%6d%6d\n", i, meta, val) ; if (meta == C_EOF) break ; i++ ; } fprintf(stdout, ")\n") ; } static mcxstatus xtr_get_spec ( const char* spec , u32* tbl /* size MAX_SPEC_INDEX+1 */ , mcxbool repeat_ok /* doubles as true for dst, false for src, ugly! */ ) { const char* p = spec ; const char* z = spec + strlen(spec) ; int offset=0, i=0 ; mcxstatus status = STATUS_FAIL ; while (1) { u8 value = 0 ; u8 class = 0 ; int count = -1 ; status = STATUS_OK ; if (p >= z) break ; status = STATUS_FAIL /* space for 1 token; check anything longer. * (reserve space for EOF token) */ ; if (offset >= MAX_SPEC_INDEX) break ; if (!(p = xtr_get_set(p, z, &class, &value, &count))) break ; if (ISREPEAT(class) && count >= 0) { if (!repeat_ok) { mcx_tr_err = X_REPEAT_UNEXPECTED ; break ; } tbl[offset++] = (class << 8) | value ; if (offset >= MAX_SPEC_INDEX) break ; tbl[offset++] = count & 0377 ; } else if (ISCLASS(class)) { int (*innit)(int) = isit[class - C_CLASSSTART] ; tbl[offset++] = (C_CLASSSTART << 8 ) | class ; for (i=0;i<256;i++) { if (innit(i)) { if (offset >= MAX_SPEC_INDEX) break ; tbl[offset++] = i ; } } if (i != 256) break ; if (offset >= MAX_SPEC_INDEX) break ; tbl[offset++] = (C_CLASSEND << 8) | class ; } else if (count > 1) { tbl[offset++] = (C_RANGESTART << 8) ; for (i=value;i= MAX_SPEC_INDEX) break ; tbl[offset++] = i ; } if (i != value+count) break ; if (offset >= MAX_SPEC_INDEX) break ; tbl[offset++] = C_RANGEEND << 8 ; } else tbl[offset++] = value ; status = STATUS_OK ; } tbl[offset++] = C_EOF << 8 ; if (status || p!=z) { mcxErr(us, "error!") ; return STATUS_FAIL ; } return STATUS_OK ; } static mcxstatus mcx_tr_encode_boolean ( mcxTR* tr , u32* enc , mcxbits bit ) { int i ; for (i=0;i> 8 ; int value = enc[i] & 0377 ; if (class == C_EOF) break ; if (class) continue ; tr->tlt[value] |= bit << 8 ; } return STATUS_OK ; } static mcxstatus mcx_tr_translate_encode ( mcxTR* tr , u32* srcenc , u32* dstenc ) { int X = -1, Y = -1 ; int s = 0, d = 0 ; int star_count = 0 ; mcxbool star_fill = FALSE , flood_fill = FALSE , src_end = FALSE , dst_end = FALSE , to_lower = FALSE , to_upper = FALSE , src_class_end = FALSE ; while (1) { u32 src_tok = 0 ; u32 src_cls = 0 ; u32 src_val = 0 ; u32 dst_tok = 0 ; u32 dst_cls = 0 ; u32 dst_val = 0 ; src_class_end = FALSE ; if (s >= MAX_SPEC_INDEX || d >= MAX_SPEC_INDEX) { mcxErr(us, "panic off the rails") ; break ; } if (X >= 0 && Y >= 0) { tr->tlt[X] = Y | (MCX_TR_TRANSLATE << 8) ;if (mcx_tr_debug) fprintf(stdout, "map %d to %d\n", X, Y) ; X = -1 ; if (star_count) star_count-- ; if (!star_count && !star_fill && !flood_fill) Y = -1 ; } else if (s || d) mcxErr(us, "fimbly feeling") /* skip ends, unset star_fill if necessary */ ; src_tok = srcenc[s++] ; src_cls = src_tok >> 8 ; src_val = src_tok & 0377 /* consider both * tring -x 'abcdef[:digit:]' -y '[*_#][*##]' (magic ends with f) * tring -x '[:digit:]abcdef' -y '[*##][*_#]' (magic ends before a) */ ; if (ISBOUNDARY(src_cls)) star_fill = FALSE ; if (ISEND(src_cls)) src_tok = srcenc[s++] , src_cls = src_tok >> 8 , src_val = src_tok & 0377 , src_class_end = TRUE ; if (!star_count && !star_fill && !flood_fill) { dst_tok = dstenc[d++] ; dst_cls = dst_tok >> 8 ; dst_val = dst_tok & 0377 ; if (ISEND(dst_cls)) dst_tok = dstenc[d++] , dst_cls = dst_tok >> 8 , dst_val = dst_tok & 0377 ; } ;if (mcx_tr_debug) fprintf(stdout, "have %3d %3d %3d %3d\n", (int) src_cls, (int) src_val, (int) dst_cls, (int) dst_val); /* check class/range conditions. */ if (ISLOWERSTART(src_tok) && ISUPPERSTART(dst_tok)) to_upper = TRUE ; else if (ISUPPERSTART(src_tok) && ISLOWERSTART(dst_tok)) to_lower = TRUE ; else if ((to_upper || to_lower) && src_class_end) to_lower = FALSE , to_upper = FALSE /* check repeat */ ; if (ISREPEAT(dst_cls)) { Y = dst_val ; star_count = dstenc[d++] ; if (dst_cls == C_FLOOD) flood_fill = TRUE ; else if (!star_count) star_fill = TRUE ;if (mcx_tr_debug) fprintf(stdout, "star count/fill/flood %d %d %d\n", star_count, star_fill, flood_fill) ; } ;if (mcx_tr_debug && (to_upper || to_lower)) fprintf(stdout, "case mapping\n") ; if (!star_count && !star_fill && !flood_fill) { if (ISSTART(dst_cls)) Y = dstenc[d++] ; else Y = dst_val ; } if (ISSTART(src_cls)) X = srcenc[s++] ; else X = src_val ; if (!ISUCHARRANGE(X) || !ISUCHARRANGE(Y)) mcxErr(us, "panic %d %d", X, Y) , X = 0 , Y = 0 ; if (to_lower) { if (!isupper(X)) { mcxErr(us, "panic %d not lower", X) ; X = 0, Y = 0 ; } else Y = tolower(X) ; } else if (to_upper) { if (!islower(X)) { mcxErr(us, "panic %d not upper", X) ; X = 0, Y = 0 ; } else Y = toupper(X) ; } src_end = src_cls == C_EOF ; dst_end = dst_cls == C_EOF ; if (src_end || dst_end) break ; } if (!src_end) mcxErr(us, "trailing fluff in src") ; if (!dst_end && !((star_fill || flood_fill) && dstenc[d] >> 8 == C_EOF)) mcxErr(us, "trailing fluff in dst") ; return STATUS_OK /* specs parsed alright, just ignore spurious stuff */ ; } static void mcx_tr_complement ( u32* enc ) { u32 tmp[256] ; int i = 0 ; int j = 0 ; int delta = 1 ; for (i=0;i<256;i++) tmp[i] = 0 ; for (i=0;i<=MAX_SPEC_INDEX;i+=delta) { int class = enc[i] >> 8 ; int value = enc[i] & 0377 ; if (ISREPEAT(class)) { delta = 2 ; mcxErr(us, "value taken but repeat ignored in complement") ; tmp[value] = 1 ; continue ; } else if (ISBOUNDARY(class)) /* nada */ ; else tmp[value] = 1 ; delta = 1 ; } for (i=0;i<256;i++) if (!tmp[i]) enc[j++] = i ; enc[j++] = C_EOF << 8 ; while (j<=MAX_SPEC_INDEX) enc[j++] = C_EOF << 8 ; } /* * the enc arrays use stop and end tokens for ranges and classes. both are * required to have more than 1 element. No more than MAX_SPEC_INDEX+1 * positions are allocated for either specification, which also cater for * start and end and EOF tokens - the +1 is for the EOF token. * * carryon */ static mcxstatus mcx_tr_encode ( mcxTR* tr , const char* src , const char* dst , const char* set_delete , const char* set_squash ) { u32 srcenc[MAX_SPEC_INDEX+1] ; u32 dstenc[MAX_SPEC_INDEX+1] ; int i ; if (src && dst) { for (i=0;i<=MAX_SPEC_INDEX;i++) srcenc[i] = 0 , dstenc[i] = 0 ; if (xtr_get_spec(src, srcenc, FALSE)) return STATUS_FAIL ; if (mcx_tr_debug) mcx_tr_enc_dump(srcenc, "source") ; if (tr->modes & MCX_TR_SOURCE_C) mcx_tr_complement(srcenc) ; if (xtr_get_spec(dst, dstenc, TRUE)) return STATUS_FAIL ; if (mcx_tr_debug) mcx_tr_enc_dump(dstenc, "destination") ; if (tr->modes & MCX_TR_DEST_C) mcx_tr_complement(dstenc) ; if (mcx_tr_translate_encode(tr, srcenc, dstenc)) return STATUS_FAIL ; } if (set_delete) { for (i=0;i<=MAX_SPEC_INDEX;i++) srcenc[i] = 0 ; if (xtr_get_spec(set_delete, srcenc, FALSE)) return STATUS_FAIL ; if (mcx_tr_debug) mcx_tr_enc_dump(srcenc, "delete") ; if (tr->modes & MCX_TR_DELETE_C) mcx_tr_complement(srcenc) ; mcx_tr_encode_boolean(tr, srcenc, MCX_TR_DELETE) ; } if (set_squash) { for (i=0;i<=MAX_SPEC_INDEX;i++) srcenc[i] = 0 ; if (xtr_get_spec(set_squash, srcenc, FALSE)) return STATUS_FAIL ; if (mcx_tr_debug) mcx_tr_enc_dump(srcenc, "squash") ; if (tr->modes & MCX_TR_SQUASH_C) mcx_tr_complement(srcenc) ; mcx_tr_encode_boolean(tr, srcenc, MCX_TR_SQUASH) ; } return STATUS_OK ; } mcxstatus mcxTRloadTable ( mcxTR* tr , const char* src , const char* dst , const char* set_delete , const char* set_squash , mcxbits modes ) { const char* me = "mcxTRloadTable" ; int i ; mcx_tr_err = NULL ; if (src && UC(src) == '^') src++ , modes |= MCX_TR_SOURCE_C ; if (dst && UC(dst) == '^') dst++ , modes |= MCX_TR_DEST_C ; if (src && dst) modes |= MCX_TR_TRANSLATE ; if (set_delete) { if (UC(set_delete) == '^') set_delete++ , modes |= MCX_TR_DELETE_C ; modes |= MCX_TR_DELETE ; } ; if (set_squash) { if (UC(set_squash) == '^') set_squash++ , modes |= MCX_TR_SQUASH_C ; modes |= MCX_TR_SQUASH ; } tr->modes = modes ; for (i=0;i<256;i++) tr->tlt[i] = 0 ; if (src && !dst) { mcxErr(me, "src requires dst") ; return STATUS_FAIL ; } return mcx_tr_encode(tr, src, dst, set_delete, set_squash) ; } mcl-12-135/util/hash.h0000644000402500021140000002516711147245463011364 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_hash_h #define tingea_hash_h #include /* TODO: * - make sort routines for keys and values by key or value criteria. * - make interface for storing integers, preferably without objectifying them. * - shrink hashes dynamically. * */ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** Implementation notes (a few). * * * This hash interface is very powerful. It gives you more than enough * rope to hang yourself and then some. It can be used as is, or wrappers * can be made around it that restrict a caller's ability to err. * * The danger lies in the fact that this interface only does retrieval * and storage of pointers (both for keys and values), and does not clone * anything. Anything happening with the objects pointed to during the * lifetime of the hash is the responsibility of the caller. * * What the interface cannot do currently is hash integers by value (rather * than by reference). This functionality will probably be added someday. * Features: * o Searching, inserting, and deletion are all done by * mcxHashSearch. It returns a pointer to mcxKV. In all modes, the * caller can use the returned mcxKV* structure to obtain * the 'val' and 'key' members. * * o Hashes grow automatically once the average load per bucket * exceeds a settable threshold and if the hash was not declared * constant. * * o Caller supplies both the hash function and the compare function. * This interface provides several hash functions operating on a * (void* base, int len) combo, where base is cast to char by the * hash function. These functions can be used in creating custom hash * functions for your custom objects. * * o You can (of course) have multiple hashes. This is not really * a feature - however, since the idiotic does not offer * this I thought I'd mention it. * * o Witness mcxHashWalkInit, mcxHashWalkStep. * * o There is mcxHashMerge. * * o mcxHashKeys, mcxHashKVs. * * Enjoy. * Notes * There is a utility hashfile.c (distributed in a separate package) * that can be used to stress-test this module. It allows customization * of several aspects, including the hash function that should be used. */ #include "types.h" #include "list.h" /* The hash struct is hidden. Use mcxHashGetSettings if you need * to peek into the interior. Or read hash.c */ typedef struct mcxHash mcxHash; typedef struct { void* key ; void* val ; } mcxKV ; mcxHash* mcxHashNew ( dim n_buckets , u32 (*hash) (const void *a) , int (*cmp) (const void *a, const void *b) ) ; #define MCX_HASH_OPT_DEFAULTS 0 #define MCX_HASH_OPT_CONSTANT 1 #define MCX_HASH_OPT_UNUSED 2 void mcxHashSetOpts ( mcxHash* hash , double load , int option /* negative values will be ignored (feature) */ ) ; dim mcxHashMemSize ( mcxHash* hash ) ; typedef struct mcxHashSettings { dim n_buckets ; dim n_entries ; float load ; mcxbits options ; } mcxHashSettings ; void mcxHashGetSettings ( mcxHash* hash , mcxHashSettings* settings ) ; /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** mcxHashSearch * * action returns * * MCX_DATUM_DELETE -> deleted mcxKV* or NULL if not present * MCX_DATUM_INSERT -> new or present mcxKV* * MCX_DATUM_FIND -> mcxKV* if present NULL otherwise. * * usage: * * Values have to be inserted by the caller into the returned KV struct. * Make sure that keys point to objects that are constant * (with respect to the cmp function) during the lifetime of the hash. * YOU have to ensure the integrity of both keys and values. * This enables you to do whatever suits you, such as appending to * values. * * When inserting, check whether kv->key != key (where kv is returned value) * if this is the case, an identically comparing key is already present. * You may want to destroy one of the two keys and decide what to do * with the value. * * When deleting, the key-value pair is removed from the hash *AND RETURNED * TO CALLER* - you have to decide yourself what to do with it. You have to * fetch the val and key members of the returned mcxKV object immediately: * Subsequent inserts in the hash may reuse it. If the key was not present, * a value of NULL is returned. * * When finding, life is simple. NULL if absent, matching kv otherwise. * * note: * * memory management of keys and values is totally up to caller. * If usage is clean, you can use mcxHashFree for disposal of hash. */ #define mcxHashSearch(key, hash, ACTION) mcxHashSearchx(key, hash, ACTION, NULL) mcxKV* mcxHashSearchx ( void* key , mcxHash* hash , mcxmode ACTION , int* delta ) ; /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** mcxHashMerge * * this one COPIES OBJECT POINTERS and DOES NOT CLONE. * so after the merge, hash1 and hash2 keys and values should not be freed. * In case there are equivalent keys in hash1 and hash2, this may * cause trouble when the caller wants to do cleaning afterwards. * This interface is still under development. * * hashd may be equal to hash1 or hash2, and it may also be NULL. */ mcxHash* mcxHashMerge ( mcxHash* hash1 , mcxHash* hash2 , mcxHash* hashd , void* merge(void* val1, void* val2) ) ; /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** mcxHashFree * * This only works if all keys are of the same type and/or all values * are of the same type, and if your objects were created as expected by * the free routines (presumably malloced heap memory) - be careful with * constant objects like constant strings. * * freekey and freeval may not free their argument. This is because * tingea does not allow routines that leave arguments in an * inconsistent state, and free routines in tingea generally accept * an argument of the form ** pptr. * In the case of mcxHashFree this means that the interface may * feel slighly more cumbersome. * A way out would have been to make the callbacks of signature * * void freemem(void** mempp) * * The caller could access *mempp, cast it to the expected type, * and later set *mempp to NULL. However, this would require * new free routines for lots of types. With the current interface * existing Release routines can be used: * * The type of free routine expected by mcxHashFree is generally * called Release or Release_v, e.g. mcxTingRelease. * Release routines release all memory of a composite object except the * memory which holds the outer struct. * * If one of key or val is *not* a composite type or is a composite type * that does not contain malloced memory, use mcxHashFreeScalar. * * Both freekey and freeval may be NULL. When NULL, the corresponding * KV member is not loooked at. This is useful e.g. when hashing objects * owned by someone else. */ void mcxHashFree ( mcxHash** hashpp , void freekey(void* keypp) /* (yourtype1** keypp) */ , void freeval(void* valpp) /* (yourtype2** valpp) */ ) ; void mcxHashFreeScalar ( void* scalar ) ; /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * It copies the pointers stored in the hash */ void** mcxHashKeys ( mcxHash* hash , dim* n_entries , int (*cmp)(const void*, const void*) /* works on keys */ , mcxbits opts /* unused yet */ ) ; /* Future options: SORT, SORT_DESC */ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * It copies the pointers stored in the hash */ void** mcxHashKVs ( mcxHash* hash , dim* n_entries , int (*cmp)(const void*, const void*) , mcxbits opts /* unused yet */ ) ; /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Prints some information to stdout. */ void mcxHashStats ( FILE* fp , mcxHash* hash ) ; typedef struct mcxHashWalk mcxHashWalk; mcxHashWalk* mcxHashWalkInit ( mcxHash *hash ) ; mcxKV* mcxHashWalkStep ( mcxHashWalk* walk , dim *i_bucket ) ; void mcxHashWalkFree ( mcxHashWalk **walkpp ) ; void mcxHashApply ( mcxHash* hash , void (*cb)(const void* key, void* val, void* data) , void* data ) ; /* UNIX ELF hash */ /* POOR! */ u32 mcxELFhash ( const void *key , u32 len ) ; /* created by Bob Jenkins */ u32 mcxBJhash ( const void* key , u32 len ) ; /* One at a time hash, Bob Jenkins/Colin Plumb */ u32 mcxOAThash ( const void *key , u32 len ) ; /* created by Daniel Phillips */ u32 mcxDPhash ( const void* key , u32 len ) ; /* "Berkely Database" hash (from Ozan Yigit's page) */ /* POOR! */ u32 mcxBDBhash ( const void *key , u32 len ) ; /* Dan Bernstein hash (from Ozan Yigit's page) */ u32 mcxDJBhash ( const void *key , u32 len ) ; /* created by Chris Torek */ u32 mcxCThash ( const void* key , u32 len ) ; /* "GNU Emacs" hash (from m4) */ /* not among the best */ u32 mcxGEhash ( const void* key , u32 len ) ; /* Fowler Noll Vo hash */ u32 mcxFNVhash ( const void *buf , u32 len ) ; /* All experimental with weak points. */ u32 mcxSvDhash ( const void *key , u32 len ) ; u32 mcxSvD2hash ( const void *key , u32 len ) ; u32 mcxSvD1hash ( const void *key , u32 len ) ; /* uses mcxDPhash */ u32 mcxStrHash ( const void* s ) ; int mcxStrCmp ( const void* a , const void* b ) ; #endif mcl-12-135/util/types.h0000644000402500021140000000543011147245557011600 00000000000000/* (C) Copyright 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef types_h #define types_h #include "inttypes.h" typedef unsigned long mcxbits ; typedef unsigned long mcxmode ; typedef unsigned long mcxenum ; /* mcxstatus defined below */ /* mcxbool defined below */ #define BIT_ON(var,bits) (var) |= (bits) #define BIT_OFF(var, bits) do { (var) |= (bits); (var) ^= (bits); } while (0) #define ALL_BITS_OFF 0 #define VOID_TO_UINT (unsigned) #define UINT_TO_VOID (void*) #define VOID_TO_ULONG (unsigned long) #define ULONG_TO_VOID (void*) #define NOTHING do { } while (0) /* ************************************************************************** * * ** Implementation notes (a few). * * * The intent is that routines that return mcxstatus can define their own * values, so one must check the interface of a given routine as to what kind * of symbolic values it may return. * * For example, the opt library defines MCX_OPT_OK, MCX_OPT_NOARG, and * MCX_OPT_UNKNOWN. * * The intent is also that the OK value is always defined as zero -- it's * not the zero that counts but the fact that all OK values (e.g. STATUS_OK, * MCX_OPT_OK etc) are equal. One should be able to count on this. * If multiple ok values are possible, use one of mcxenum, mcxbits, mcxmode. * */ typedef enum { STATUS_OK = 0 , STATUS_FAIL , STATUS_DONE /* for iterator type interfaces (e.g. readLine) */ , STATUS_IGNORE /* for iterator type interfaces (line parser) */ , STATUS_NOMEM , STATUS_ABORT /* e.g. user response */ , STATUS_NEW /* for cache type interfaces */ , STATUS_UNUSED /* use this as lower bound for new statuses */ } mcxstatus ; extern const char* mcx_status_list[]; #define MCXSTATUS(status) \ ( status <= STATUS_UNUSED \ ? mcx_status_list[status] \ : "NO_such_status!" \ ) #ifndef FALSE typedef enum { FALSE = 0 , TRUE = 1 } mcxbool ; #else typedef int mcxbool ; #endif typedef enum { RETURN_ON_FAIL = 1960 , EXIT_ON_FAIL , SLEEP_ON_FAIL , ENQUIRE_ON_FAIL /* user sets TINGEA_MEM_DO to e.g. exit or retry */ } mcxOnFail ; #define MCX_DATUM_THREADING 1 #define MCX_DATUM_FIND 2 #define MCX_DATUM_INSERT 4 #define MCX_DATUM_DELETE 8 #endif mcl-12-135/util/opt.h0000644000402500021140000002073511341053226011225 00000000000000/* (C) Copyright 2002, 2003, 2004, 2005, 2006 Stijn van Dongen * (C) Copyright 2007, 2008, 2009, 2010 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ /* TODO * recode dispatch case 'no arguments supplied'. now ugly. */ #ifndef tingea_opt_h #define tingea_opt_h #include "types.h" #include "ting.h" #include "hash.h" /* ************************************************************************** * * ** Implementation notes (a few). * * This interface munges and parses text presented to it, and creates * arrays and optionally hashes from them. It does so by simply storing * pointers to the data presented to it, and does not copy anything at all. * * It is the callers job to make sure that the data scrutinized by this * interface stays constant during interface usage. * * Tentatively, this interface treats -I 3 and --I=3 as equivalent * syntax. It is possible to define -I and --I= as separate options. * (by defining -I with MCX_OPT_HASARG and --I with MCX_OPT_DEFAULT). * * TODO: * implement newline/indent magic in option descriptions. * * The prefix thing, is it necessary? caller could pass argv+prefix .. */ #define MCX_OPT_DEFAULT 0 /* -a, xyz */ #define MCX_OPT_HASARG 1 /* -a 10, xyz foo */ #define MCX_OPT_REQUIRED 2 #define MCX_OPT_INFO 4 #define MCX_OPT_HIDDEN 16 #define MCX_OPT_UNUSED 32 enum { MCX_OPT_STATUS_OK = 0 , MCX_OPT_STATUS_NOARG , MCX_OPT_STATUS_UNKNOWN , MCX_OPT_STATUS_NOMEM } ; /* struct mcxOptAnchor * * id * When using mcxOptApropos, if the option MCX_OPT_DISPLAY_SKIP is used, * an increment larger then one between successive ids (from the structs * in the array presented to mcxOptApropos) causes an additional newline * to be output before the option synopsis. * This enables the creation of paragraphs in a simple manner. * * descr_usage * By default, this just contains the description of what the option does * It is possible to specify a mark to be printed in front of that * description. This requires both the mark and the description * (which are joined in the same string) to be proceded by a special * sequence. For the mark this is "\tM" and for the description * this is "\tD". The description string should be last. A valid entry is * thus * "\tM!\tDset the resource scheme" * This will print the marker '!' inbetween the option tag and its * description. * * Presumably, the legend to such markers is explained by the caller. */ typedef struct mcxOptAnchor { char* tag /* '-foo' or '--expand-only' etc */ ; int flags /* MCX_OPT_HASARG etc */ ; int id /* ID */ ; char* descr_arg /* "" or "", NULL ok */ ; char* descr_usage /* NULL allowed */ ; } mcxOptAnchor ; void mcxOptAnchorSortByTag ( mcxOptAnchor *anchors , dim n_anchors ) ; void mcxOptAnchorSortById ( mcxOptAnchor *anchors , dim n_anchors ) ; /* * An array of these is returned by parse routines below. * An entry with .anch == NULL indicates end-of-array. */ typedef struct mcxOption { mcxOptAnchor* anch ; const char* val ; } mcxOption ; /* * these routines only use status MCX_OPT_NOARG. The interface * is not yet frozen. */ /* This tries to find as many arguments as it can, and reports the * number of array elements it skipped. */ mcxOption* mcxOptExhaust ( mcxOptAnchor* anch , char** argv , int argc , int prefix /* skip these */ , int* n_elems_read , mcxstatus* status ) ; /* This will never read past the last arguments (suffix of them). * It does currently not enforce that the number of arguments left * is exactly equal to suffix (fixme?). */ mcxOption* mcxOptParse ( mcxOptAnchor* anch , char** argv , int argc , int prefix /* skip these */ , int suffix /* skip those too */ , mcxstatus* status ) ; void mcxOptFree ( mcxOption** optpp ) ; mcxbool mcxOptIsInfo ( const char* arg , mcxOptAnchor* options ) ; #define MCX_OPT_DISPLAY_DEFAULT 0 #define MCX_OPT_DISPLAY_BREAK_HARD 1 << 4 /* break overly long lines */ #define MCX_OPT_DISPLAY_BREAK_SOFT 1 << 6 /* break overly long lines */ #define MCX_OPT_DISPLAY_CAPTION 1 << 10 /* break after option */ #define MCX_OPT_DISPLAY_PAR 1 << 12 /* ? useful ? paragraph mode */ #define MCX_OPT_DISPLAY_SKIP 1 << 14 /* display enum skips as pars */ #define MCX_OPT_DISPLAY_HIDDEN 1 << 16 /* do that */ void mcxOptApropos ( FILE* fp , const char* me /* unused currently */ , const char* syntax , int width , mcxbits display , const mcxOptAnchor opt[] ) ; /* The ones below are for spreading responsibility for parsing * argument over different modules. * See the mcl implementation for an example. */ mcxOption* mcxHOptExhaust ( mcxHash* opthash , char** argv , int argc , int prefix /* skip these */ , int* n_elems_read , mcxstatus* status ) ; mcxOption* mcxHOptParse ( mcxHash* opthash , char** argv , int argc , int prefix /* skip these */ , int suffix /* skip those too */ , mcxstatus* status ) ; /* * Creates a hash where the tag string is key, and the mcxOptAnchor is value. */ mcxHash* mcxOptHash ( mcxOptAnchor* opts , mcxHash* hash ) ; void mcxOptHashFree ( mcxHash** hashpp ) ; mcxOptAnchor* mcxOptFind ( char* tag , mcxHash* hopts ) ; void mcxUsage ( FILE* fp , const char* caller , const char** lines ) ; extern int mcxOptPrintDigits; mcxbool mcxOptCheckBounds ( const char* caller , const char* flag , unsigned char type , void* var , int (*lftRlt) (const void*, const void*) , void* lftBound , int (*rgtRlt) (const void*, const void*) , void* rgtBound ) ; /* TODO * provide escape mechanisms for delim; * e.g. mcx tilde, UNIX backslash, or SGML percent sign based. * -> smarter space-based separation. whitespace ? * * NOTE * Separates on spaces, which are replaced with '\0'. * src is modified ('\0' are written throughout). * the char* members 'char* argv[]' all point to within src. */ char** mcxOptParseString ( char* src , int* argc , unsigned char delim ) ; mcxTing* mcxOptArgLine ( const char** argv , int argc , int quote /* '[' or '"' */ ) ; /* * Severely undocumented stuff, but quite useful. * This is used to write a program that * - takes modes, e.g. 'clm dist' 'clm info' 'clm meet' * - has a set of shared options * - allows modes to have their own unique set of options * - Program and mode options are not separated by the mode, * but all are specified after the mode. * Look at htpp://micans.org/mcl/src/mcl-latest/src/shcl/clm.c * htpp://micans.org/mcl/src/mcl-latest/src/shmx/mcx.c * for two fully functioning examples. */ #define MCX_DISP_DEFAULT 0 #define MCX_DISP_HIDDEN 1 #define MCX_DISP_MANUAL 2 typedef struct { const char* name ; const char* syntax ; mcxOptAnchor* options ; int n_options ; mcxstatus (*arg_cb)(int optid, const char* val) ; mcxstatus (*init)( void ) ; mcxstatus (*main)(int argc, const char* argv[]) ; int n_at_least /* trailing arguments */ ; int n_at_most /* trailing arguments */ ; mcxbits flags ; } mcxDispHook ; typedef struct { int id ; mcxDispHook* (*get_hk)(void) ; } mcxDispEntry ; typedef struct mcx_disp_bundle { int disp_argc ; const char** disp_argv ; const char* disp_name ; const char* disp_syntax ; mcxOptAnchor* disp_shared ; dim n_disp_shared ; mcxstatus (*shared_handler)(int optid, const char* val, mcxDispHook*, struct mcx_disp_bundle*) ; void (*disp_version)(const char* me) ; mcxDispEntry* disp_table ; } mcxDispBundle ; int mcxDispatch ( mcxDispBundle* bundle ) ; #endif mcl-12-135/util/heap.c0000644000402500021140000000611611311741155011332 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include #include #include "alloc.h" #include "heap.h" #include "types.h" #include "err.h" mcxHeap* mcxHeapInit ( void* h ) { mcxHeap* heap = h ; if (!heap && !(heap = mcxAlloc(sizeof(mcxHeap), RETURN_ON_FAIL))) return NULL ; heap->base = NULL ; heap->heapSize = 0 ; heap->elemSize = 0 ; heap->cmp = NULL ; heap->n_inserted = 0 ; return heap ; } mcxHeap* mcxHeapNew ( mcxHeap* h , dim heapSize , dim elemSize , int (*cmp) (const void* lft, const void* rgt) ) { mcxHeap* heap = mcxHeapInit(h) ; mcxstatus status = STATUS_FAIL ; char* base ; do { if (!heap) break ; if (!(heap->base = mcxAlloc (heapSize*elemSize, RETURN_ON_FAIL))) break ; status = STATUS_OK ; } while (0) ; if (status) { mcxHeapFree(&heap) ; return NULL ; } heap->heapSize = heapSize ; heap->elemSize = elemSize ; heap->cmp = cmp ; heap->n_inserted = 0 ; base = (char*) heap->base ; return heap ; } void mcxHeapClean ( mcxHeap* heap ) { heap->n_inserted = 0 ; } void mcxHeapRelease ( void* heapv ) { mcxHeap* heap = (mcxHeap*) heapv ; if (heap->base) mcxFree(heap->base) ; heap->base = NULL ; heap->heapSize = 0 ; } void mcxHeapFree ( mcxHeap** heap ) { if (*heap) { if ((*heap)->base) mcxFree((*heap)->base) ; mcxFree(*heap) ; *heap = NULL ; } } void mcxHeapInsert ( mcxHeap* heap , void* elem ) { char* heapRoot = heap->base ; char* elemch = elem ; dim elsz = heap->elemSize ; dim hpsz = heap->heapSize ; int (*cmp)(const void *, const void*) = heap->cmp ; if (heap->n_inserted < hpsz) { dim i = heap->n_inserted ; while (i != 0 && (cmp)(heapRoot+elsz*((i-1)/2), elemch) < 0) { memcpy(heapRoot + i*elsz, heapRoot + elsz*((i-1)/2), elsz) ; i = (i-1)/2 ; } memcpy(heapRoot + i*elsz, elemch, elsz) ; heap->n_inserted++ ; } else if ((cmp)(elemch, heapRoot) < 0) { dim root = 0 ; dim d ; while ((d = 2*root+1) < hpsz) { if ( (d+1 #define MCX_RAND_MAX RAND_MAX #define mcxUniform0 ((1.0 * random()) / ((double) RAND_MAX + 1.0)) #define mcxUniform1 (1.0 - ((1.0 * random()) / ((double) RAND_MAX + 1.0))) /* This is for weak seeding, to obtain fresh seeds which will definitely * *not* be suitable for cryptographic needs */ unsigned long mcxSeed ( unsigned long seedlet ) ; double mcxNormal ( void ) ; double mcxNormalCut ( double radius , double stddev ) ; double mcxNormalZiggurat ( void ) ; double mcxNormalBoxMuller ( void ) ; /* Generate numbers in the interval [-outer, outer] according * to the normal distribution with standard deviation sigma. * Use e.g. outer = 2.0 sigma = 0.5 */ double mcxNormalSample ( double radius , double stddev ) ; #endif mcl-12-135/util/ting.h0000644000402500021140000002727511253654654011410 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_ting #define tingea_ting #include "types.h" typedef struct { char *str ; dim len ; dim mxl ; } mcxTing ; /* ************************************************************************** * * ** Implementation notes (a few). * * Synopsis * This little module provides an objectified C-string compatible interface * to strings. * Some philosophy * Do not mind the overhead of 2*sizeof(int) bytes per ting. * If you have humongous amounts of small strings, use C-strings. Optionally * you can do the needed char manipulation in a ting used as scratch-space * using the ting interface, then create a normal string once you are done. * Use mcxTinguish to avoid copying if needed. * Feel free to use the str member with routines from * or perhaps from ding.h. Just remember to treat it as a const object * when doing so. * Applications * Zoem is the macro processor that processes the zoem language. It is very * string-heavy and its string operations are entirely based on the ting * module. * Caveat * Nearly all routines return a NULL pointer to indicate malloc failure. * Data structure * str: array of chars * * len: length of string in str (excluding '\0') * *(str+len) == '\0' * * mxl: current allocated number of writable char's (excluding '\0') * Allocated amount is mxl+1 * *(str+mxl) == '\0' - but don't count on that. * Notes * mcxTingEnsure is the only routine allowed to fiddle with mxl. * (apart from mcxTingInit which sets it to zero). * * Future idea * mcxTingFinalize, (realloc to length) * * Routines marked `!' will NOT accept ting==NULL argument. * Routines marked `#' should not be called other than by ting routines * * _ #Init _ * / \ * Ensure <--- #Instantiate * / \ \ * Empty !Splice New,Write,Print,PrintAfter * NWrite | * | * Append,Insert,Delete,PrintSplice * TODO * the library should be able to deal with embedded \0's. Really. */ /* ************************************************************************** * * ** Various instantiation routines. */ /* Accepts NULL argument. * void arguments so that it can be used * as callback. * * Should ordinarily *not* be used, unless * you want to initialize a ting allocated * on the frame stack. */ void* mcxTingInit ( void* ting ) ; /* Accepts NULL argument. * Should ordinarily *not* be used. */ mcxTing* mcxTingInstantiate ( mcxTing* dst_ting , const char* str ) ; /* Accepts NULL argument. Does not affect * ting->str. used for preallocing, e.g. to * prepare for successive calls of Append. (see * also Empty). */ mcxTing* mcxTingEnsure ( mcxTing* ting , dim length ) ; /* Accepts NULL argument. The string part is * set to the empty string. * Can be used for preallocing. */ mcxTing* mcxTingEmpty ( mcxTing* ting , dim length ) ; /* ************************************************************************** * * ** Some freeing routines. */ /* Free members and shell struct * You pass the address of a variable, * loosely speaking. */ void mcxTingFree ( mcxTing **tingpp ) ; /* Free members and shell struct * Use with callbacks, e.g. * for freeing hash with tings in one go. */ void mcxTingFree_v ( void *tingpp ) ; /* Free members * Use for freeing array of ting; * e.g. as callback in mcxNFree. */ void mcxTingRelease ( void *ting ) ; /* ************************************************************************** * * ** A bunch of user-land creation routines. */ /* accepts NULL argument, maps to empty string. */ mcxTing* mcxTingNew ( const char* str ) ; /* accepts NULL argument, maps to empty string. */ mcxTing* mcxTingNNew ( const char* str , dim n ) ; /* accepts NULL argument. */ mcxTing* mcxTingWrite ( mcxTing* ting , const char* str ) ; /* accepts NULL argument. */ mcxTing* mcxTingNWrite ( mcxTing* ting , const char* str , dim n ) ; /* usurps argument. */ mcxTing* mcxTingify ( char* str ) ; /* destroys argument, returns str member. */ char* mcxTinguish ( mcxTing* ting ) ; /* ************************************************************************** * * ** Appending, inserting, deleting, shrinking. * Some can be used as creation routine (e.g. append). */ #define TING_INS_CENTER -3 #define TING_INS_OVERRUN -4 #define TING_INS_OVERWRITE -5 /* * The offset argument can be negative, for subscripting from the end. * * The n_delete argument can be nonnegative, or one of * TING_INS_CENTER center, (try to) overwrite without changing length. * TING_INS_OVERRUN overwrite till the end. * TING_INS_OVERWRITE (try to) overwrite without changing length. * * The n_copy argument is not magical like the previous two. * */ /* does NOT accept NULL argument. */ mcxstatus mcxTingSplice ( mcxTing* ting , const char* pstr , ofs d_offset /* negative offset refers to end */ , ofs n_delete /* special modes as documented above */ , dim n_copy ) ; /* accepts NULL argument. */ mcxTing* mcxTingInsert ( mcxTing* ting , const char* str , ofs offset ) ; /* accepts NULL argument. */ mcxTing* mcxTingNInsert ( mcxTing* ting , const char* str , ofs offset /* of ting->str */ , dim length /* of str */ ) ; /* accepts NULL argument. */ mcxTing* mcxTingAppend ( mcxTing* ting , const char* str ) ; /* accepts NULL argument. */ mcxTing* mcxTingKAppend ( mcxTing* ting , const char* str , dim n ) ; /* accepts NULL argument. */ mcxTing* mcxTingNAppend ( mcxTing* ting , const char* str , dim n ) ; /* accepts NULL argument. */ mcxTing* mcxTingDelete ( mcxTing* ting , ofs offset , dim width ) ; /* accepts NULL argument. */ mcxTing* mcxTingShrink ( mcxTing* ting , ofs length ) ; /* Fails only for memory reason */ mcxstatus mcxTingTackc ( mcxTing* ting , unsigned char c ) ; /* Fails if last char is not the same as c */ mcxstatus mcxTingTickc ( mcxTing* ting , unsigned char c ) ; /* ************************************************************************** * * ** A bunch of printf like routines. */ /* Accepts NULL argument. */ mcxTing* mcxTingPrint ( mcxTing* ting , const char* fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 2, 3))) #endif ; /* Accepts NULL argument. */ mcxTing* mcxTingPrintAfter ( mcxTing* dst , const char* fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 2, 3))) #endif ; /* Accepts NULL argument. * same offset and delete interface as * mcxTingSplice. */ mcxTing* mcxTingPrintSplice ( mcxTing* dst , ofs offset , ofs n_delete /* count of chars to delete, special modes */ , const char* fmt , ... ) #ifdef __GNUC__ __attribute__ ((format (printf, 4, 5))) #endif ; /* ************************************************************************** * * ** Miscellaneous. */ char* mcxTingStr ( const mcxTing* ting ) ; char* mcxTingSubStr ( const mcxTing* ting , ofs offset , ofs length /* use -1 to indicate remainder of string */ ) ; /* accepts NULL argument. */ mcxTing* mcxTingRoman ( mcxTing* dst , long x , mcxbool ucase ) ; /* accepts NULL argument. */ mcxTing* mcxTingInteger ( mcxTing* dst , long x ) ; /* accepts NULL argument. */ mcxTing* mcxTingDouble ( mcxTing* dst , double x , int decimals ) ; /* ************************************************************************** * * ** Comparing. */ /* compare two mcxTing* pointers */ int mcxTingCmp ( const void* t1 , const void* t2 ) ; /* compare two mcxTing* pointers */ int mcxTingRevCmp ( const void* t1 , const void* t2 ) ; /* compare two mcxTing** pointers */ int mcxTingPCmp ( const void* t1 , const void* t2 ) ; /* compare two mcxTing** pointers */ int mcxTingPRevCmp ( const void* t1 , const void* t2 ) ; /* compare two mcxKV** pointers by key as mcxTing* */ int mcxPKeyTingCmp ( const void* k1 , const void* k2 ) ; /* compare two mcxKV** pointers by key as mcxTing* */ int mcxPKeyTingRevCmp ( const void* k1 , const void* k2 ) ; /* ************************************************************************** * * ** Hashing. */ u32 (*mcxTingHFieByName(const char* id))(const void* ting) ; u32 mcxTingELFhash ( const void* ting ) ; u32 mcxTingHash ( const void* ting ) ; u32 mcxTingBJhash ( const void* ting ) ; u32 mcxTingCThash ( const void* ting ) ; u32 mcxTingDPhash ( const void* ting ) ; u32 mcxTingBDBhash ( const void* ting ) ; u32 mcxTingGEhash ( const void* ting ) ; u32 mcxTingOAThash ( const void* ting ) ; u32 mcxTingFNVhash ( const void* ting ) ; u32 mcxTingSvDhash ( const void* ting ) ; u32 mcxTingSvD2hash ( const void* ting ) ; u32 mcxTingSvD1hash ( const void* ting ) ; u32 mcxTingDJBhash ( const void* ting ) ; #endif mcl-12-135/util/Makefile.in0000644000402500021140000003431211754271040012317 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = util DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = LIBRARIES = $(noinst_LIBRARIES) AR = ar ARFLAGS = cru libutil_a_AR = $(AR) $(ARFLAGS) libutil_a_LIBADD = am_libutil_a_OBJECTS = alloc.$(OBJEXT) array.$(OBJEXT) rand.$(OBJEXT) \ equate.$(OBJEXT) opt.$(OBJEXT) io.$(OBJEXT) err.$(OBJEXT) \ hash.$(OBJEXT) heap.$(OBJEXT) let.$(OBJEXT) list.$(OBJEXT) \ gralloc.$(OBJEXT) tok.$(OBJEXT) ting.$(OBJEXT) ding.$(OBJEXT) \ tr.$(OBJEXT) types.$(OBJEXT) libutil_a_OBJECTS = $(am_libutil_a_OBJECTS) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/autofoo/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libutil_a_SOURCES) DIST_SOURCES = $(libutil_a_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = -I$(top_srcdir) noinst_LIBRARIES = libutil.a libutil_a_SOURCES = alloc.c array.c rand.c equate.c opt.c io.c \ err.c hash.c heap.c let.c list.c gralloc.c tok.c ting.c ding.c \ tr.c types.c EXTRA_DIST = alloc.h array.h rand.h equate.h hash.h heap.h let.h io.h \ opt.h err.h tok.h ting.h ding.h list.h gralloc.h tok.h \ compile.h getpagesize.h types.h inttypes.h minmax.h tr.h all: all-am .SUFFIXES: .SUFFIXES: .c .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu util/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu util/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libutil.a: $(libutil_a_OBJECTS) $(libutil_a_DEPENDENCIES) -rm -f libutil.a $(libutil_a_AR) libutil.a $(libutil_a_OBJECTS) $(libutil_a_LIBADD) $(RANLIB) libutil.a mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alloc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/array.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ding.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/equate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/err.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gralloc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/heap.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/io.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/let.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/list.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opt.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rand.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ting.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tok.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tr.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/types.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(LIBRARIES) installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-noinstLIBRARIES ctags distclean distclean-compile \ distclean-generic distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/util/types.c0000644000402500021140000000077611147246140011570 00000000000000/* (C) Copyright 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include "types.h" const char* mcx_status_list[] = { "OK" , "FAIL" , "DONE" , "IGNORE" , "NOMEM" , "ABORT" , "NEW" , "UNUSED" } ; mcl-12-135/util/hash.c0000644000402500021140000006176611432046602011353 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ /* TODO (?) * * integer overflow handling. * * better bucket fill statistics. * * nested hashes. * could lump * options cmp hash src_link * into a structure and make hashes share them. */ #include #include #include #include #include #include "hash.h" #include "minmax.h" #include "types.h" #include "inttypes.h" #include "ting.h" #include "err.h" #include "alloc.h" #include "gralloc.h" #include "compile.h" #include "list.h" /* the distribution of bit counts over all 32-bit keys */ int promilles[32] = { 0, 0, 0, 0, 0, 0, 0, 0 , 2, 7, 15, 30, 53, 81,110,131 ,140,131,110, 81, 53, 30, 15, 7 , 2, 0, 0, 0, 0, 0, 0, 0 } ; #ifndef TINGEA_HASH_CACHE # define TINGEA_HASH_CACHE 0 #endif typedef struct hash_link { struct hash_link* next ; mcxKV kv #if TINGEA_HASH_CACHE ; u32 hv #endif ; } hash_link ; typedef struct bucket { hash_link* base ; } mcx_bucket ; /* For further optimization work, options * options * load * cmp * hash * src_link * can be shared between different hashes (e.g. * with multidimensional hashes). Consider * making src_link file static variable. */ struct mcxHash { dim n_buckets /* 2^n_bits */ ; mcx_bucket *buckets ; dim n_entries ; mcxbits options ; int (*cmp) (const void *a, const void *b) ; u32 (*hash) (const void *a) ; mcxGrim* src_link ; float load ; } ; struct mcxHashWalk { mcxHash* hash ; dim i_bucket ; hash_link* link ; } ; void* mcx_bucket_init ( void* buck ) { ((mcx_bucket*) buck)->base = NULL ; return NULL ; } void bitprint ( u32 key , FILE* fp ) ; int bitcount ( u32 key ) ; mcxHash* mcxHashNew ( dim n_buckets , u32 (*hash)(const void *a) , int (*cmp) (const void *a, const void *b) ) { mcxHash *h ; mcxbool ok = FALSE ; u8 n_bits = 0 ; if (!n_buckets) { mcxErr("mcxHashNew strange", "void alloc request") ; n_buckets = 2 ; } if (!(h = mcxAlloc(sizeof(mcxHash), RETURN_ON_FAIL))) return NULL ; while(n_buckets) { n_buckets >>= 1 ; n_bits++ ; } h->load = 0.5 ; h->n_entries = 0 ; h->n_buckets = n_buckets = (1 << n_bits) ; h->cmp = cmp ; h->hash = hash ; h->options = MCX_HASH_OPT_DEFAULTS ; h->src_link = NULL ; while (1) /* fixme 2nd arg below, have better choice? */ { h->src_link = mcxGrimNew(sizeof(hash_link), h->n_buckets, MCX_GRIM_ARITHMETIC) ; if (!h->src_link) break ; if (! ( h->buckets = mcxNAlloc ( h->n_buckets , sizeof(mcx_bucket) , mcx_bucket_init , RETURN_ON_FAIL ) ) ) break ; ok = TRUE ; break ; } if (!ok) { mcxGrimFree(&(h->src_link)) ; mcxFree(h) ; return NULL ; } return h ; } dim mcxHashMemSize ( mcxHash* hash ) { return mcxGrimMemSize(hash->src_link) + sizeof(mcx_bucket) * hash->n_buckets ; } void mcxHashGetSettings ( mcxHash* hash , mcxHashSettings* settings ) { settings->n_buckets = hash->n_buckets ; settings->load = hash->load ; settings->n_entries = hash->n_entries ; settings->options = hash->options ; } static dim hash_link_size ( hash_link* link ) { dim s = 0 ; while(link) link = link->next , s++ ; return(s) ; } void mcxHashStats ( FILE* fp , mcxHash* h ) { dim buckets = h->n_buckets ; dim buckets_used = 0 ; float ctr = 0.0 ; float cb = 0.0 ; dim max = 0 ; dim entries = 0 ; const char* me = "mcxHashStats" ; int j, k, distr[32] ; mcx_bucket *buck ; for (j=0;j<32;j++) distr[j] = 0 ; for (buck=h->buckets; buckbuckets + h->n_buckets; buck++) { dim d = hash_link_size(buck->base) ; hash_link* this= buck->base ; if (d) { buckets_used++ ; entries += d ; ctr += (float) d * d ; cb += (float) d * d * d ; max = MCX_MAX(max, d) ; } while(this) { u32 u = (h->hash)(this->kv.key) ; int ct = bitcount(u) ; this = this->next ; distr[ct]++ ;if (0) fprintf(stderr, "bucket [%d] key [%s]\n", (int)d, ((mcxTing*) this->kv.key)->str) ; } } ctr = ctr / MCX_MAX(1, entries) ; cb = sqrt(cb / MCX_MAX(1, entries)) ; if (buckets && buckets_used) mcxTellf ( fp , me , "%4.2f bucket usage (%ld available, %ld used, %ld entries)" , (double) ((double) buckets_used) / buckets , (long) buckets , (long) buckets_used , (long) entries ) , mcxTellf ( fp , me , "bucket average: %.2f, center: %.2f, cube: %.2f, max: %ld" , (double) entries / ((double) buckets_used) , (double) ctr , (double) cb , (long) max ) ; mcxTellf(fp, me, "bit distribution (promilles):") ; fprintf ( fp , " %-37s %s\n" , "Current bit distribution" , "Ideally random distribution" ) ; for (k=0;k<4;k++) { for (j=k*8;j<(k+1)*8;j++) fprintf(fp, "%3.0f ", entries ? (1000 * (float)distr[j]) / entries : 0.0) ; fprintf(fp, " "); ; for (j=k*8;j<(k+1)*8;j++) fprintf(fp, "%3d ", promilles[j]) ; fprintf(fp, "\n") ; } mcxTellf(fp, me, "link count: %ld", (long) (mcxGrimCount(h->src_link))) ; mcxTellf(fp, me, "link mem count: %ld", (long) (mcxGrimMemSize(h->src_link))) ; mcxTellf(fp, me, "done") ; } void mcxHashSetOpts ( mcxHash* h , double load , int options ) { if (options >= 0) h->options |= options /* fixme; are there states in which either of these can be corrupting ? */ ; h->load = load ; } void mcxHashFreeScalar ( void* scalar cpl__unused ) { /* this triggers freeing of kv.key or kv.val */ ; } void mcxHashFree ( mcxHash** hpp , void freekey(void* key) , void freeval(void* key) ) { mcxHash* h = *hpp ; mcx_bucket* buck = h ? h->buckets : NULL ; dim d = h ? h->n_buckets : 0 ; if (!h) return ; if (freekey || freeval) { while (d-- > 0) /* careful with unsignedness */ { hash_link* link = (buck++)->base ; while(link) { void* key = link->kv.key ; void* val = link->kv.val ; if (freekey && key) freekey(key) , mcxFree(key) ; if (freeval && val) freeval(val) , mcxFree(val) ; link = link->next ; } } } mcxGrimFree(&h->src_link) ; mcxFree(h->buckets) ; mcxFree(h) ; *hpp = NULL ; } #define MCX_HASH_DOUBLING MCX_HASH_OPT_UNUSED #if TINGEA_HASH_CACHE static hash_link* mcx_bucket_search ( mcxHash* h , void* ob , mcxmode ACTION , u32* hashval ) { u32 thishash = hashval ? *hashval : (h->hash)(ob) ; mcx_bucket *buck = h->buckets + (thishash & (h->n_buckets-1)) ; hash_link* link = buck->base, *prev = NULL, *new ; int delta = 0 ; while ( link && ( link->hv != thishash || h->cmp(ob, link->kv.key) ) ) prev = link , link = link->next ; if (link && ACTION == MCX_DATUM_DELETE) { if (buck->base == link) buck->base = link->next ; else prev->next = link->next ; delta = -1 ; mcxGrimLet(h->src_link, link) /* we return link below though */ ; } else if (!link) { if (ACTION == MCX_DATUM_FIND || ACTION == MCX_DATUM_DELETE) link = NULL ; else if (ACTION == MCX_DATUM_INSERT) { new = mcxGrimGet(h->src_link) /* fixme could be NULL */ ; new->next = NULL ; new->kv.val = NULL ; new->kv.key = ob ; new->hv = thishash ; if (!buck->base) buck->base = new /* in TINGEA_HASH_CACHE case we always append */ ; else new->next = prev->next , prev->next = new ; delta = 1 ; link = new ; } } h->n_entries += delta ; return link ; } #else static hash_link* mcx_bucket_search ( mcxHash* h , void* ob , mcxmode ACTION , u32* hashval ) { u32 thishash = hashval ? *hashval : (h->hash)(ob) ; mcx_bucket *buck = h->buckets + (thishash & (h->n_buckets-1)) ; hash_link* link = buck->base, *prev = NULL, *new ; int c = 1 ; int delta = 0 ; while ( link && (c = h->cmp(ob, link->kv.key)) > 0 ) prev = link , link = link->next ; if (!c && ACTION == MCX_DATUM_DELETE) { if (buck->base == link) buck->base = link->next ; else prev->next = link->next ; delta = -1 ; mcxGrimLet(h->src_link, link) /* we return link below though */ ; } else if (!link || c < 0) { if (ACTION == MCX_DATUM_FIND || ACTION == MCX_DATUM_DELETE) link = NULL ; else if (ACTION == MCX_DATUM_INSERT) { new = mcxGrimGet(h->src_link) /* fixme could be NULL */ ; new->next = NULL ; new->kv.val = NULL ; new->kv.key = ob ; if (!buck->base) buck->base = new ; else if (link == buck->base) new->next = buck->base , buck->base = new ; else new->next = prev->next , prev->next = new ; delta = 1 ; link = new ; } } h->n_entries += delta ; return link ; } #endif static mcxstatus mcx_hash_double ( mcxHash* h ) ; mcxKV* mcxHashSearchx ( void* key , mcxHash* h , mcxmode ACTION , int* delta ) { hash_link *link ; dim n_entries = h->n_entries ; if ( h->load * h->n_buckets < h->n_entries && !(h->options & (MCX_HASH_OPT_CONSTANT | MCX_HASH_DOUBLING)) && mcx_hash_double(h) ) mcxErr("mcxHashSearch", "cannot double hash") ; link = mcx_bucket_search(h, key, ACTION, NULL) ; if (delta) *delta = h->n_entries < n_entries ? -1 : (int) (h->n_entries - n_entries) ; return link ? &link->kv : NULL ; } enum { ARRAY_OF_KEY , ARRAY_OF_KV } ; void mcxHashApply ( mcxHash* hash , void (*cb)(const void* key, void* val, void* data) , void* data ) { mcxHashWalk* walk = mcxHashWalkInit(hash) ; mcxKV* kv ; dim i_bucket ; while ((kv = mcxHashWalkStep(walk, &i_bucket))) cb(kv->key, kv->val, data) ; mcxHashWalkFree(&walk) ; } static void** hash_array ( mcxHash* hash , dim* n_entries , int (*cmp)(const void*, const void*) , mcxbits opts cpl__unused , mcxenum mode ) { void** obs = mcxAlloc(sizeof(void*) * hash->n_entries, RETURN_ON_FAIL) ; dim d = 0 ; mcxKV* kv ; const char* me = mode == ARRAY_OF_KEY ? "mcxHashKeys" : "mcxHashKVs" ; mcxHashWalk* walk = mcxHashWalkInit(hash) ; if (!walk || !obs) return NULL ; while ((kv = mcxHashWalkStep(walk, NULL))) /* fixme extract */ { if (d >= hash->n_entries) { mcxErr ( me , "PANIC inconsistent state (n_entries %ld)" , (long) hash->n_entries ) ; break ; } obs[d] = mode == ARRAY_OF_KEY ? kv->key : kv ; d++ ; } if (d != hash->n_entries) mcxErr(me, "PANIC inconsistent state (n_entries %lu)", (ulong) hash->n_entries) ; if (cmp) qsort(obs, d, sizeof(void*), cmp) ; mcxHashWalkFree(&walk) ; *n_entries = d ; return obs ; } void** mcxHashKeys ( mcxHash* hash , dim* n_entries , int (*cmp)(const void*, const void*) , mcxbits opts /* unused yet */ ) { return hash_array(hash, n_entries, cmp, opts, ARRAY_OF_KEY) ; } void** mcxHashKVs ( mcxHash* hash , dim* n_entries , int (*cmp)(const void*, const void*) , mcxbits opts /* unused yet */ ) { return hash_array(hash, n_entries, cmp, opts, ARRAY_OF_KV) ; } mcxKV* mcxHashWalkStep ( mcxHashWalk *walk , dim *i_bucket ) { hash_link* step = walk->link ; while (!step && ++walk->i_bucket < walk->hash->n_buckets) step = (walk->hash->buckets+walk->i_bucket)->base ; if (step) { walk->link = step->next ; if (i_bucket) *i_bucket = walk->i_bucket ; return &step->kv ; } return NULL ; } mcxHashWalk* mcxHashWalkInit ( mcxHash *h ) { mcxHashWalk* walk = mcxAlloc(sizeof *walk, RETURN_ON_FAIL) ; if (!walk) return NULL ; walk->hash = h ; if (!h || !h->buckets) { mcxFree(walk) ; return NULL ; } walk->i_bucket = 0 ; walk->link = (h->buckets+0)->base ; return walk ; } void mcxHashWalkFree ( mcxHashWalk **walkpp ) { mcxFree(*walkpp) ; *walkpp = NULL ; } mcxHash* mcxHashMerge ( mcxHash* h1 , mcxHash* h2 , mcxHash* hd /* hash destination */ , void* merge(void* val1, void* val2) ) { mcxHash* ha[2] /* hash array */ ; mcxHash* h ; int i ; if (!h1 || !h2) mcxDie(1, "mcxHashMerge FATAL", "clone functionality not yet supported") /* * fixme/note I am comparing fie pointers here, is that ok? */ ; if (h1->hash != h2->hash || h1->cmp != h2->cmp) mcxErr("mcxHashMerge WARNING", "non matching hash or cmp fie") ; if (merge) mcxErr("mcxHashMerge WARNING", "merge functionality not yet supported") ; hd = hd ? hd : mcxHashNew ( h1->n_entries + h2->n_entries , h1->hash , h1->cmp ) ; if (!hd) return NULL ; ha[0] = h1 ; ha[1] = h2 ; for (i=0;i<2;i++) { h = ha[i] ; if (h != hd) { mcx_bucket* buck ; for (buck = h->buckets; buckbuckets + h->n_buckets; buck++) { hash_link* this = buck->base ; while(this) { mcxKV* kv = mcxHashSearch(this->kv.key, hd, MCX_DATUM_INSERT) ; if (!kv) return NULL /* note/fixme: cannot free hd, don't have key/val free functions */ ; if (!kv->val) kv->val = this->kv.val ; this = this->next ; } } } } return hd ; } static mcxstatus mcx_hash_double ( mcxHash* h ) { mcx_bucket* ole_bucket = h->buckets ; mcx_bucket* ole_buckets = h->buckets ; dim d = h->n_buckets ; dim n_fail = 0 ; if (h->options & MCX_HASH_DOUBLING) /* called before */ { mcxErr("mcx_hash_double PANIC", "double trouble") ; return STATUS_FAIL ; } h->options |= MCX_HASH_DOUBLING ; if (! ( h->buckets = mcxNAlloc ( 2 * h->n_buckets , sizeof(mcx_bucket) , mcx_bucket_init , RETURN_ON_FAIL ) ) ) { h->options ^= MCX_HASH_DOUBLING ; h->buckets = ole_buckets ; return STATUS_FAIL ; } h->n_buckets *= 2 ; h->n_entries = 0 ; while(d-- > 0) /* careful with unsignedness */ { hash_link* this = ole_bucket->base ; while(this) { hash_link* next = this->next, *clone ; void* val = this->kv.val ; void* key = this->kv.key ; mcxGrimLet(h->src_link, this) /* will be used immediately */ #if TINGEA_HASH_CACHE ; clone = mcx_bucket_search(h, key, MCX_DATUM_INSERT, &this->hv) #else ; clone = mcx_bucket_search(h, key, MCX_DATUM_INSERT, NULL) #endif ; if (clone) clone->kv.val = val ; else n_fail++ ; this = next ; } ole_bucket++ ; } if (n_fail) mcxErr ( "mcx_hash_double PANIC" , "<%ld> reinsertion failures in hash with <%ld> entries" , (long) n_fail , (long) h->n_entries ) ; mcxFree(ole_buckets) ; h->options ^= MCX_HASH_DOUBLING ; return STATUS_OK ; } #define BJmix(a,b,c) \ { \ a -= b; a -= c; a ^= (c>>13); \ b -= c; b -= a; b ^= (a<< 8); \ c -= a; c -= b; c ^= (b>>13); \ a -= b; a -= c; a ^= (c>>12); \ b -= c; b -= a; b ^= (a<<16); \ c -= a; c -= b; c ^= (b>> 5); \ a -= b; a -= c; a ^= (c>> 3); \ b -= c; b -= a; b ^= (a<<10); \ c -= a; c -= b; c ^= (b>>15); \ } /* * Thomas Wang says Robert Jenkins says this is a good integer hash function: *unsigned int inthash(unsigned int key) *{ * key += (key << 12); * key ^= (key >> 22); * key += (key << 4); * key ^= (key >> 9); * key += (key << 10); * key ^= (key >> 2); * key += (key << 7); * key ^= (key >> 12); * return key; *} */ /* created by Bob Jenkins */ u32 mcxBJhash ( register const void* key , register u32 len ) { register u32 a, b, c, l ; const char* k = key ; l = len ; a = b = 0x9e3779b9u ; c = 0xabcdef01u ; while (l >= 12) { a += k[0] + (k[1]<<8) + (k[2]<<16) + (k[3]<<24) ; b += k[4] + (k[5]<<8) + (k[6]<<16) + (k[7]<<24) ; c += k[8] + (k[9]<<8) + (k[10]<<16)+ (k[11]<<24) ; BJmix(a,b,c) ; k += 12 ; l -= 12 ; } c += len ; switch(l) /* all the case statements fall through */ { case 11: c+= k[10]<<24 ; case 10: c+= k[9]<<16 ; case 9 : c+= k[8]<<8 /* the first byte of c is reserved for the length */ ; case 8 : b+= k[7]<<24 ; case 7 : b+= k[6]<<16 ; case 6 : b+= k[5]<<8 ; case 5 : b+= k[4] ; case 4 : a+= k[3]<<24 ; case 3 : a+= k[2]<<16 ; case 2 : a+= k[1]<<8 ; case 1 : a+= k[0] /* case 0: nothing left to add */ ; } BJmix(a,b,c) ; return c ; } /* created by Chris Torek */ u32 mcxCThash ( const void *key , u32 len ) #define ctHASH4a h = (h << 5) - h + *k++; #define ctHASH4b h = (h << 5) + h + *k++; #define ctHASH4 ctHASH4b { u32 h = 0 ; const unsigned char *k = key ; if (len > 0) { unsigned loop = (len + 8 - 1) >> 3 /* loop >= 1 */ ; switch (len & (8 - 1)) { case 0: do { /* All fall through */ ctHASH4 case 7: ctHASH4 case 6: ctHASH4 case 5: ctHASH4 case 4: ctHASH4 case 3: ctHASH4 case 2: ctHASH4 case 1: ctHASH4 } while (--loop) /* unsignedcmpok */ ; } } ; return h ; } /* All 3 hash fies below play on a similar theme. Interesting: as long as only * << >> and ^ are used, a hash function does a partial homogeneous fill of all * 2^k different strings of length k built out of two distinct characters -- * not all buckets need be used. E.g. for k=15, such a hash function might fill * 2^13 buckets with 4 entries each, or it might fill 2^10 buckets with 32 * entries each. This was observed, not proven. */ u32 mcxSvDhash ( const void *key , u32 len ) { u32 h = 0x7cabd53e /* 0x7cabd53e */ ; const char* k = key ; h = 0x0180244a ; while (len--) { u32 g = *k ; u32 gc = 0xff ^ g ; u32 hc = 0xffffffffu ; hc ^= h ; h = ( (h << 2) + h + (h >> 3)) ^ ( (g << 25) + (gc << 18) + (g << 11) + (g << 5) + g ) ; k++ ; } ; return h ; } /* created by me */ u32 mcxSvD2hash ( const void *key , u32 len ) { u32 h = 0x7cabd53e /* 0x7cabd53e */ ; const char* k = key ; while (len--) { u32 g = *k ; u32 gc = 0xff ^ g ; h = ( (h << 3) ^ h ^ (h >> 5) ) ^ ( (g << 25) ^ (gc << 18) ^ (g << 11) ^ (gc << 5) ^ g ) ; k++ ; } ; return h ; } /* created by me */ u32 mcxSvD1hash ( const void *key , u32 len ) { u32 h = 0xeca96537u ; const char* k = key ; while (len--) { u32 g = *k ; h = ( (h << 3) ^ h ^ (h >> 5) ) ^ ( (g << 21) ^ (g << 12) ^ (g << 5) ^ g ) ; k++ ; } ; return h ; } /* created by Daniel Phillips */ u32 mcxDPhash ( const void *key , u32 len ) { u32 h0 = 0x12a3fe2du , h1 = 0x37abe8f9u ; const char* k = key ; while (len--) { u32 h = h1 + (h0 ^ (*k++ * 71523)) ; h1 = h0 ; h0 = h ; } return h0 ; } /* "GNU Emacs" hash (from m4) */ u32 mcxGEhash ( const void* key , u32 len ) { const char* k = key ; u32 hash = 0 ; int t ; while (len--) { if ((t = *k++) >= 0140) t -= 40 ; hash = ((hash << 3) + (hash >> 28) + t) ; } return hash ; } /* Fowler Noll Vo hash */ u32 mcxFNVhash ( const void *buf , u32 len ) { u32 hval = 0x811c9dc5 ; const char *bp = buf ; while (len--) { #if 0 /* other branch supposedly optimizes gcc */ hval *= 0x01000193 #else hval += (hval<<1) + (hval<<4) + (hval<<7) + (hval<<8) + (hval<<24) #endif ; hval ^= *bp++; ; } return hval ; } /* Berkely Database hash */ u32 mcxBDBhash ( const void *key , u32 len ) { const char* k = key ; u32 hash = 0 ; while (len--) { hash = *k++ + (hash << 6) + (hash << 16) - hash ; } return hash ; } /* One at a time hash, Bob Jenkins/Colin Plumb */ u32 mcxOAThash ( const void *key , u32 len ) { const char* k = key ; u32 hash = 0 ; while (len--) { hash += *k++ ; hash += (hash << 10) ; hash ^= (hash >> 6) ; } hash += (hash << 3); ; hash ^= (hash >> 11); ; hash += (hash << 15); ; return hash ; } /* by Dan Bernstein */ u32 mcxDJBhash ( const void *key , u32 len ) { const char* k = key ; u32 hash = 5381 ; while (len--) { hash = *k++ + (hash << 5) + hash ; } return hash ; } /* UNIX ELF hash */ u32 mcxELFhash ( const void *key , u32 len ) { const char* k = key ; u32 hash = 0 ; u32 g ; while (len--) { hash = *k++ + (hash << 4) ; if ((g = (hash & 0xF0000000u))) hash ^= g >> 24 ; hash &= ~g ; } return hash ; } u32 mcxStrHash ( const void* s ) { dim l = strlen(s) ; return(mcxDPhash(s, l)) ; } int mcxStrCmp ( const void* a , const void* b ) { return strcmp(a, b) ; } void bitprint ( u32 key , FILE* fp ) { do { fputc(key & 1 ? '1' : '0', fp) ; } while ((key = key >> 1)) ; } int bitcount ( u32 key ) { int ct = 0 ; do { if (key & 1) ct++ ; } while ((key = key >> 1)) ; return ct ; } #if 0 /* The old legacy hash */ static __u32 dx_hack_hash (const char *name, int len) { __u32 hash0 = 0x12a3fe2d, hash1 = 0x37abe8f9; while (len--) { __u32 hash = hash1 + (hash0 ^ (*name++ * 7152373)); if (hash & 0x80000000) hash -= 0x7fffffff; hash1 = hash0; hash0 = hash; } return (hash0 << 1); } #endif mcl-12-135/util/io.h0000644000402500021140000002116611147245477011050 00000000000000/* (C) Copyright 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ /* STATUS: * usable: yes * tested: yes, stress-tested in zoem and mcl * ad hoc: somewhat * quirks: probably a few * support: limited * * AIMS * - Provide convenient and efficient wrappers for reading lines, files, searching. * - Within these wrappers, account bytes and lines read. * It is explicitly not an aim to be an all-encompassing interface, wrapping * everything provided by stdio.h. The type is not opaque and you are * encouraged to inspect its fp member. * - The open modes are inspected to infer some knowledge, * then passed on directly to fopen. * - File "-" is interpreted as either STDIN or STDOUT depending on the open mode. * * BUGS * - buffer framework is fully implemented: * mcxIOexpectNum and mcxIOexpectReal ignore buffer. * - Should incorporate more (f)error checking. * * TODO: * - document interfaces. * - document which routines corrupt the counts. * - make sure that buffer treats \0 bytes correctly. Should be * pretty close. * - buffered reads (problematic: mcxIOexpectNum and friends). * - design {reset,close} framework, esp related to usr member. * ? support for pipes */ #ifndef tingea_file_h #define tingea_file_h #include #include #include "ting.h" #include "types.h" /* The thing below seems a reasonable test for seekability. * Let's agree that the main thing is the encapsulation. * */ #define mcxFPisSeekable(fp) (!fseek(fp, 0, SEEK_CUR)) /* Possibly more stringent check: * int had_error = ferror(file); * long curpos = ftell(file); * bool seekable = (curpos != -1L && fseek(file, curpos, SEEK_SET) == 0); * if (!had_error) * clearerr(file); */ /* ************************************************************************** * * ** Implementation notes. * * * This is meant to be a lightweight layer for file operations. * It is so lightweight that the pivotal data structure is not hidden. * * Basic usage: * mcxIO* xf = mcxIOnew(somestr, "r"); * mcxIOopen(xf, EXIT_ON_FAIL); * * * Searching: * mcxIOfind(xf, pattern, ON_FAIL) * * * Reading lines: * mcxIOreadLine(xf, txt, mode) * modes (xor'ed bits): * MCX_READLINE_CHOMP * MCX_READLINE_SKIP_EMPTY * MCX_READLINE_PAR (read a paragraph) * MCX_READLINE_BSC (backslash continues line) * MCX_READLINE_DOT (single dot on single line ends paragraph) * Reading files: * mcxIOreadFile(xf, txt) * * * Reading bytes: * int c = mcxIOstep(xf) * mcxIOstepback(c, xf) * * These keep track of byte count, line count, and ofset within line. * * * Reset attributes for file name object - change name or mode. * mcxIOrenew(xf, name, mode) * * * There are some more small utility functions. * ************************************************************************** * * * * TODO: * much todo about everything. * * mcxIOdiscardLine * mcxIOskipSpace * Change to instance of sth more general. * */ #define mcxIOateof(xf) (xf->ateof) #define mcxIOstdio(xf) (xf->stdio) #define mcxIOlc(xf) ((long) ((xf->lc) + (xf->lo ? 1 : 0))) /* this also takes care of EOF * not preceded by a newline */ /* As long as you did not use mcxIOopen, feel free to do anything with the fn * member, especially right after mcxIOnew. */ typedef struct { mcxTing* fn ; char* mode ; FILE* fp ; dim lc /* line count */ ; dim lo /* line offset */ ; dim lo_ /* line offset backup, only valid when lo == 0 */ ; dim bc /* byte count */ ; int ateof ; int stdio ; mcxTing* buffer /* e.g. when tryCookie fails and unseekable stream */ ; dim buffer_consumed ; void* usr /* user object */ ; mcxstatus (*usr_reset)(void*) /* function to reset user object */ ; void (*usr_free)(void*) /* function to free user object */ ; } mcxIO ; /* * mcxIOrenew does *not* support callback for resetting the usr object */ mcxIO* mcxIOrenew ( mcxIO* xf , const char* name , const char* mode ) ; mcxIO* mcxIOnew ( const char* name , const char* mode ) ; mcxstatus mcxIOopen ( mcxIO* xf , mcxOnFail ON_FAIL ) ; mcxstatus mcxIOtestOpen ( mcxIO* xf , mcxOnFail ON_FAIL ) ; /* * mcxIOfree does *not* support callback for freeing the usr object */ void mcxIOfree ( mcxIO** xf ) ; void mcxIOfree_v ( void* xfpp ) ; void mcxIOrelease ( mcxIO* xf ) ; void mcxIOerr ( mcxIO* xf , const char *complainer , const char *complaint ) ; /* Currently, for stdin/stdout/stderr clearerr is issued if necessary. * This makes e.g. repeated reads from STDIN possible. * * usr_reset is called if present. */ mcxstatus mcxIOclose ( mcxIO *xf ) ; mcxstatus mcxIOreset ( mcxIO *xf ) ; mcxstatus mcxIOreadFile ( mcxIO *xf , mcxTing *fileTxt ) ; #define MCX_READLINE_DEFAULT 0 #define MCX_READLINE_CHOMP 1 #define MCX_READLINE_SKIP_EMPTY 2 #define MCX_READLINE_PAR 4 #define MCX_READLINE_BSC 8 #define MCX_READLINE_DOT 16 mcxstatus mcxIOreadLine ( mcxIO *xf , mcxTing *lineTxt , mcxbits flags ) ; ofs mcxIOappendChunk ( mcxIO *xf , mcxTing *dst , dim sz , mcxbits flags ) ; /* Returns the number of bytes that could be discarded. */ dim mcxIOdiscardLine ( mcxIO *xf ) ; /* Returns the number of bytes that could be discarded. * ONLY keeps the xf->bc counter up to date. */ dim mcxIOdiscard ( mcxIO *xf , dim amount ) ; /* OK to call this after mcxIOnew, before mcxIOopen */ mcxstatus mcxIOnewName ( mcxIO* xf , const char* newname ) ; /* OK to call this after mcxIOnew, before mcxIOopen */ mcxstatus mcxIOappendName ( mcxIO* xf , const char* suffix ) ; int mcxIOstep ( mcxIO* xf ) ; int mcxIOstepback ( int c , mcxIO* xf ) ; void mcxIOpos ( mcxIO* xf , FILE* channel ) ; void mcxIOlistParmodes ( void ) ; /* * Returns count of trailing characters in str not matching. */ int mcxIOexpect ( mcxIO* xf , const char* str , mcxOnFail ON_FAIL ) ; mcxstatus mcxIOexpectReal ( mcxIO* xf , double* dblp , mcxOnFail ON_FAIL ) ; mcxstatus mcxIOexpectNum ( mcxIO* xf , long* lngp , mcxOnFail ON_FAIL ) ; /* * Returns next non-white space char, * which is pushed back onto stream after reading. */ int mcxIOskipSpace ( mcxIO* xf ) ; /* * Purpose: find str in file. If str is found file pointer is set at the end * of match (fgetc or mcxIOstep would retrieve the next byte), otherwise, * the stream is at EOF. * * Internally this uses Boyer Moore Horspool (bmh) search. * It processes the stream with fgetc, so the input file need not be * seekable. This means that finding is relatively slow. * * An improvement would be to implement faster input munging for seekable * streams, (using reads of size pagesize) and then reposition the stream * after searching. * */ mcxstatus mcxIOfind ( mcxIO* xf , const char* str , mcxOnFail ON_FAIL ) ; /* * NOTE * When the cookie is not found this routine does * 1) It tries to fseek to the point of departure * 2) If that fails, it stores the bytes it could not rewind * in xfin->buffer * * + mcxIOstep * + mcxIOfind * + mcxIOskipSpace * + mcxIOexpect * + mcxIOreadLine * * will access this buffer, but certain other routines will not, e.g. * * - mcxIOreadFile * - mcxIOexpectNum * - mcxIOexpectReal * - all stdio routines (fread, fgetc) * * For all mcxIO routines this is an open bug. * */ mcxbool mcxIOtryCookie ( mcxIO* xfin , const unsigned char abcd[4] ) ; mcxbool mcxIOwriteCookie ( mcxIO* xfout , const unsigned char abcd[4] ) ; #endif mcl-12-135/util/tr.h0000644000402500021140000001037311147245551011055 00000000000000/* (C) Copyright 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea under * the terms of the GNU General Public License; either version 3 of the License * or (at your option) any later version. You should have received a copy of * the GPL along with tingea, in the file COPYING. */ #ifndef tingea_tr #define tingea_tr #include #include "ting.h" #include "types.h" #include "inttypes.h" /* * README * This interface is not POSIX compliant. It might evolve to * optionally be indeed. * However, given some of the braindeadliness of POSIX tr compliance, * I don't think the worlds needs another tr implementation. * My gripe is mainly about derailed syntax such as '[:alpha:0'. * It should go down in a ball of flames, not happily parse. * To be honest, I don't know for sure whether this is a POSIX * lack of requirement or an implementation choice. * * I did choose to follow most of the POSIX syntax. It is probably * a sign of weakness. * This interface should be able to do everything a POSIX interface can, * possibly more. * * - It allows separate specification of src, dst, del and squash sets. * - Provisionally we accept "^spec" to indicate complement, * for any of src dst del squash sets. * - It uses [*c*20] to denote repeats, rather than [c*20]. * rationale: do not slam door shut on new syntax. * - It does not recognize '[a-z]' ranges, only 'a-z'. * rationale: none. If ever, notation will be [-a-z] or similar. * - The magic repeat operator [*c#] stops on boundaries * rationale: I like it. * A boundary is introduced by stop/start of ranges and classes. * - The magic repeat operator [*c*] does not stop on boundaries. * - For now, the interface does 1) deletion, 2) translation, 3) squashing. * in the future it may provide a custom order of doing things. * * * Apart from the fact that you cannot have '\0' in C strings, everything * here should work for '\0' as well - specifically the mcxTrTable structure. * However, the current interface uses C strings for dst and src and C strings * for data. * * More documentation to follow. * */ extern const char* mcx_tr_err; extern mcxbool mcx_tr_debug; typedef struct { u32 tlt[256] ; mcxbits modes ; } mcxTR ; #define MCX_TR_DEFAULT 0 #define MCX_TR_TRANSLATE 1 << 1 #define MCX_TR_SOURCE 1 << 2 #define MCX_TR_DEST 1 << 3 #define MCX_TR_SQUASH 1 << 4 #define MCX_TR_DELETE 1 << 5 #define MCX_TR_SOURCE_C 1 << 6 #define MCX_TR_DEST_C 1 << 7 #define MCX_TR_DELETE_C 1 << 8 #define MCX_TR_SQUASH_C 1 << 9 #define MCX_TR_COMPLEMENT 1 << 10 mcxstatus mcxTRloadTable ( mcxTR* tr , const char* src , const char* dst , const char* set_delete , const char* set_squash , mcxbits modes ) ; /* returns new length of string. * fixme: document map/squash semantics. */ ofs mcxTRtranslate ( char* src , mcxTR* tr ) ; ofs mcxTingTranslate ( mcxTing* src , mcxTR* tr ) ; ofs mcxTingTr ( mcxTing* txt , const char* src , const char* dst , const char* set_delete , const char* set_squash , mcxbits flags ) ; /* Accepts e.g. \012 and sets *value to 10. * idem \xa0 and \n (\t, \r, \b etc) * Does *not* yet accept \0xa0 * * Returns next parsable character. * * This interface should be moved to ding. */ char* mcxStrEscapedValue ( const char* p , const char* z , int *value ) ; /* * returns a ting containing all the characters according to bits. * bits accept * MCX_TR_SOURCE * MCX_TR_SOURCE_C * MCX_TR_SQUASH * MCX_TR_SQUASH_C * MCX_TR_DELETE * MCX_TR_DELETE_C * * NOTE * MCX_TR_DEST * MCX_TR_DEST_C * are not yet implemented. * * NOTE DANGER SIGN * tr no longer contains information on complements that were * used in constructing it. * The complements that bits refer to is simply the information * present in tr. * So a source of "^a-z" given to mcxTRloadTable * and MCX_TR_SOURCE_C given to mcxTRsplash * result in a string containing all of a-z. */ mcxTing* mcxTRsplash ( mcxTR* tr , mcxbits bits ) ; #endif mcl-12-135/util/minmax.h0000644000402500021140000000433511147247277011731 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef minmax_h #define minmax_h #include "compile.h" #if MCX_GNUC_OK && TINGEA__TYPED_MINMAX /* these buggers do not nest, which I dislike */ # define MCX_MAX(x,y) \ ( { const typeof(x) _x = x; \ const typeof(y) _y = y; \ (void) (&_x == &_y); \ _x > _y ? _x : _y; \ } ) # define MCX_MIN(x,y) \ ( { const typeof(x) _x = x; \ const typeof(y) _y = y; \ (void) (&_x == &_y); \ _x < _y ? _x : _y; \ } ) #else /* The usual brain-damaged min and max, which do nest though. */ # define MCX_MAX(a,b) ((a)>(b) ? (a) : (b)) # define MCX_MIN(a,b) ((a)<(b) ? (a) : (b)) #endif #define ABS(x) ((x) > 0 ? (x) : (x) < 0 ? (-(x)) : 0) /* The first version cannot be used recursively. * I don't like this at all I think, which is why I turned it off. */ #if 0 && MCX_GNUC_OK # define MCX_SIGN(a) \ __extension__ \ ( { typedef _ta = (a) \ ; _ta _a = (a) \ ; _a > 0 \ ? 1 \ : _a < 0 \ ? -1 \ : 0 \ ; } \ ) #else # define MCX_SIGN(a) \ ((a) > 0 ? 1 : !(a) ? 0 : -1) #endif #define MCX_RESTRICT(x,a,b) \ do { if (x < a) x = a; else if (x > b) x = b; } while (0) #endif mcl-12-135/util/rand.c0000644000402500021140000002373611147246105011352 00000000000000/* (C) Copyright 2004, 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * * (C) Ziggurat method Copyright 2005 Jochen Voss. * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include #include #include #include #include "rand.h" #include "math.h" #include "types.h" unsigned long mcxSeed ( unsigned long i ) { pid_t p = getpid() ; pid_t pp = getppid() ; time_t t = time(NULL) ; unsigned long s = (p ^ p << 4 ^ p << 16 ^ p << 28) ^ (pp ^ pp << 8 ^ pp << 24) ^ (t ^ t << 12 ^ t << 20) ^ (i ^ i << 3 ^ i << 23 ^ i << 26) /* I have no solid evidence backing up the usefulness of the xors. * They won't increase entropy anyway of course. * Anyway, the xors do seem useful in order to spread input * bits out over the output space, as seen from some hashing * experiments. */ ; return s ; } /* Box-Muller transform */ double mcxNormalBoxMuller ( void ) { double a = 1.0 - (random() * 1.0) / (RAND_MAX + 1.0) ; double b = 1.0 - (random() * 1.0) / (RAND_MAX + 1.0) ; return sqrt( -2.0 * log(a)) * cos(2*3.14159265358979323846*b) ; } double mcxNormal ( void ) { return mcxNormalZiggurat() ; } double mcxNormalCut ( double radius , double stddev ) { dim d ; if (radius < 0) radius = -radius ; for (d=0;d<256;d++) { double r = stddev * mcxNormal() ; if (r >= -radius && r <= radius) return r ; } return 0.0 ; } double mcxNormalSample ( double radius , double stddev ) { int n_try = 0 ; double r = 2 * radius * (((1.0 * random()) / RAND_MAX) - 0.5) ; while (n_try++ < 1000) { double n = exp( - (r * r) / (2 * stddev * stddev)) / (2.5066282746 * stddev) ; double p = (1.0 * random()) / RAND_MAX ; if (n >= p) break ; r = 2 * radius * (((1.0 * random()) / RAND_MAX) - 0.5) ; } return r ; } /* Ziggurat method * * Copyright (C) 2005 Jochen Voss. * * For details see the following article. * * George Marsaglia, Wai Wan Tsang * The Ziggurat Method for Generating Random Variables * Journal of Statistical Software, vol. 5 (2000), no. 8 * http://www.jstatsoft.org/v05/i08/ */ /* position of right-most step */ #define PARAM_R 3.44428647676 /* tabulated values for the heigt of the Ziggurat levels */ static const double ytab[128] = { 1.000000000000 , 0.963598623011 , 0.936280813353 , 0.913041104253 , 0.892278506696 , 0.873239356919 , 0.855496407634 , 0.838778928349 , 0.822902083699 , 0.807732738234 , 0.793171045519 , 0.779139726505 , 0.765577436082 , 0.752434456248 , 0.739669787677 , 0.727249120285 , 0.715143377413 , 0.703327646455 , 0.691780377035 , 0.680482768910 , 0.669418297233 , 0.658572339120 , 0.647931876189 , 0.637485254896 , 0.627221991450 , 0.617132611532 , 0.607208517467 , 0.597441877296 , 0.587825531465 , 0.578352913803 , 0.569017984198 , 0.559815170911 , 0.550739320877 , 0.541785656682 , 0.532949739145 , 0.524227434628 , 0.515614886373 , 0.507108489253 , 0.498704867478 , 0.490400854812 , 0.482193476986 , 0.474079936010 , 0.466057596125 , 0.458123971214 , 0.450276713467 , 0.442513603171 , 0.434832539473 , 0.427231532022 , 0.419708693379 , 0.412262232120 , 0.404890446548 , 0.397591718955 , 0.390364510382 , 0.383207355816 , 0.376118859788 , 0.369097692334 , 0.362142585282 , 0.355252328834 , 0.348425768415 , 0.341661801776 , 0.334959376311 , 0.328317486588 , 0.321735172063 , 0.315211514970 , 0.308745638367 , 0.302336704338 , 0.295983912320 , 0.289686497571 , 0.283443729739 , 0.277254911560 , 0.271119377649 , 0.265036493387 , 0.259005653912 , 0.253026283183 , 0.247097833139 , 0.241219782932 , 0.235391638239 , 0.229612930649 , 0.223883217122 , 0.218202079518 , 0.212569124201 , 0.206983981709 , 0.201446306496 , 0.195955776745 , 0.190512094256 , 0.185114984406 , 0.179764196185 , 0.174459502324 , 0.169200699492 , 0.163987608600 , 0.158820075195 , 0.153697969964 , 0.148621189348 , 0.143589656295 , 0.138603321143 , 0.133662162669 , 0.128766189309 , 0.123915440582 , 0.119109988745 , 0.114349940703 , 0.109635440230 , 0.104966670533 , 0.100343857232 , 0.0957672718266 , 0.0912372357329 , 0.0867541250127 , 0.082318375932 , 0.0779304915295 , 0.0735910494266 , 0.0693007111742 , 0.065060233529 , 0.0608704821745 , 0.0567324485840 , 0.0526472709800 , 0.0486162607163 , 0.0446409359769 , 0.0407230655415 , 0.0368647267386 , 0.0330683839378 , 0.0293369977411 , 0.0256741818288 , 0.0220844372634 , 0.0185735200577 , 0.0151490552854 , 0.0118216532614 , 0.00860719483079, 0.00553245272614, 0.00265435214565 } ; /* tabulated values for 2^24 times x[i]/x[i+1], * used to accept for U*x[i+1]<=x[i] * without any floating point operations */ static const unsigned long ktab[128] = { 0 , 12590644 , 14272653 , 14988939 , 15384584 , 15635009 , 15807561 , 15933577 , 16029594 , 16105155 , 16166147 , 16216399 , 16258508 , 16294295 , 16325078 , 16351831 , 16375291 , 16396026 , 16414479 , 16431002 , 16445880 , 16459343 , 16471578 , 16482744 , 16492970 , 16502368 , 16511031 , 16519039 , 16526459 , 16533352 , 16539769 , 16545755 , 16551348 , 16556584 , 16561493 , 16566101 , 16570433 , 16574511 , 16578353 , 16581977 , 16585398 , 16588629 , 16591685 , 16594575 , 16597311 , 16599901 , 16602354 , 16604679 , 16606881 , 16608968 , 16610945 , 16612818 , 16614592 , 16616272 , 16617861 , 16619363 , 16620782 , 16622121 , 16623383 , 16624570 , 16625685 , 16626730 , 16627708 , 16628619 , 16629465 , 16630248 , 16630969 , 16631628 , 16632228 , 16632768 , 16633248 , 16633671 , 16634034 , 16634340 , 16634586 , 16634774 , 16634903 , 16634972 , 16634980 , 16634926 , 16634810 , 16634628 , 16634381 , 16634066 , 16633680 , 16633222 , 16632688 , 16632075 , 16631380 , 16630598 , 16629726 , 16628757 , 16627686 , 16626507 , 16625212 , 16623794 , 16622243 , 16620548 , 16618698 , 16616679 , 16614476 , 16612071 , 16609444 , 16606571 , 16603425 , 16599973 , 16596178 , 16591995 , 16587369 , 16582237 , 16576520 , 16570120 , 16562917 , 16554758 , 16545450 , 16534739 , 16522287 , 16507638 , 16490152 , 16468907 , 16442518 , 16408804 , 16364095 , 16301683 , 16207738 , 16047994 , 15704248 , 15472926 } ; /* tabulated values of 2^{-24}*x[i] */ static const double wtab[128] = { 1.62318314817e-08 , 2.16291505214e-08 , 2.54246305087e-08, 2.84579525938e-08 , 3.10340022482e-08 , 3.33011726243e-08 , 3.53439060345e-08, 3.72152672658e-08 , 3.89509895720e-08 , 4.05763964764e-08 , 4.21101548915e-08, 4.35664624904e-08 , 4.49563968336e-08 , 4.62887864029e-08 , 4.75707945735e-08, 4.88083237257e-08 , 5.00063025384e-08 , 5.11688950428e-08 , 5.22996558616e-08, 5.34016475624e-08 , 5.44775307871e-08 , 5.55296344581e-08 , 5.65600111659e-08, 5.75704813695e-08 , 5.85626690412e-08 , 5.95380306862e-08 , 6.04978791776e-08, 6.14434034901e-08 , 6.23756851626e-08 , 6.32957121259e-08 , 6.42043903937e-08, 6.51025540077e-08 , 6.59909735447e-08 , 6.68703634341e-08 , 6.77413882848e-08, 6.86046683810e-08 , 6.94607844804e-08 , 7.03102820203e-08 , 7.11536748229e-08, 7.19914483720e-08 , 7.28240627230e-08 , 7.36519550992e-08 , 7.44755422158e-08, 7.52952223703e-08 , 7.61113773308e-08 , 7.69243740467e-08 , 7.77345662086e-08, 7.85422956743e-08 , 7.93478937793e-08 , 8.01516825471e-08 , 8.09539758128e-08, 8.17550802699e-08 , 8.25552964535e-08 , 8.33549196661e-08 , 8.41542408569e-08, 8.49535474601e-08 , 8.57531242006e-08 , 8.65532538723e-08 , 8.73542180955e-08, 8.81562980590e-08 , 8.89597752521e-08 , 8.97649321908e-08 , 9.05720531451e-08, 9.13814248700e-08 , 9.21933373471e-08 , 9.30080845407e-08 , 9.38259651738e-08, 9.46472835298e-08 , 9.54723502847e-08 , 9.63014833769e-08 , 9.71350089201e-08, 9.79732621669e-08 , 9.88165885297e-08 , 9.96653446693e-08 , 1.00519899658e-07, 1.01380636230e-07 , 1.02247952126e-07 , 1.03122261554e-07 , 1.04003996769e-07, 1.04893609795e-07 , 1.05791574313e-07 , 1.06698387725e-07 , 1.07614573423e-07, 1.08540683296e-07 , 1.09477300508e-07 , 1.10425042570e-07 , 1.11384564771e-07, 1.12356564007e-07 , 1.13341783071e-07 , 1.14341015475e-07 , 1.15355110887e-07, 1.16384981291e-07 , 1.17431607977e-07 , 1.18496049514e-07 , 1.19579450872e-07, 1.20683053909e-07 , 1.21808209468e-07 , 1.22956391410e-07 , 1.24129212952e-07, 1.25328445797e-07 , 1.26556042658e-07 , 1.27814163916e-07 , 1.29105209375e-07, 1.30431856341e-07 , 1.31797105598e-07 , 1.33204337360e-07 , 1.34657379914e-07, 1.36160594606e-07 , 1.37718982103e-07 , 1.39338316679e-07 , 1.41025317971e-07, 1.42787873535e-07 , 1.44635331499e-07 , 1.46578891730e-07 , 1.48632138436e-07, 1.50811780719e-07 , 1.53138707402e-07 , 1.55639532047e-07 , 1.58348931426e-07, 1.61313325908e-07 , 1.64596952856e-07 , 1.68292495203e-07 , 1.72541128694e-07, 1.77574279496e-07 , 1.83813550477e-07 , 1.92166040885e-07 , 2.05295471952e-07, 2.22600839893e-07 } ; double mcxNormalZiggurat ( void ) { unsigned long U, sign, i, j ; double x = 0.0, y ; while (1) { U = random() ; i = U & 0x0000007F /* 7 bit to choose the step */ ; sign = U & 0x00000080 /* 1 bit for the sign */ ; j = random() & 0x00FFFFFF /* 24 bit for the x-value */ ; x = j*wtab[i] ; if (j < ktab[i]) break ; if (i<127) { double y0, y1 ; y0 = ytab[i] ; y1 = ytab[i+1] ; y = y1+(y0-y1) * mcxUniform0 ; } else { x = PARAM_R - log(mcxUniform1)/PARAM_R ; y = exp(-PARAM_R*(x-0.5*PARAM_R)) * mcxUniform0 ; } if (y < exp(-0.5*x*x)) break ; } return sign ? x : -x ; } mcl-12-135/util/list.c0000644000402500021140000001106511147246067011400 00000000000000/* (C) Copyright 2004, 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include "list.h" #include "alloc.h" #include "gralloc.h" #include "compile.h" #define DEBUG 0 /* TODO. very funny interface. in flux. * * ! allow null argument for linkdelete. * * ! * little support for corruption checking. * is the spawn thing a good idea ? * ! * interface with list object, or not? * not requires hidden list pointer everywhere (have that now). * perhaps supply separate interface with list handle .. ?] * ! * how to unify FLink, BLink, and link (forward/backward/bidi) * optify hidden list pointer, next xor prev pointer. * * - Add triple sanity checks for user supplied data (?) * - implement val freeing. * - with deleting, should warn if no handle remains .. * and can check grim count. */ /* Note. * We very much do not want to define (as previously thought) next and prev * as const pointers (with the goal of keeping chain consistency up * to this interface). * This interface provides some convenience interfaces, but * the integrity and life-cycle of the chains built with the links * is entirely up to the caller. So tie-rap away with them links. * * So we do not keep track of list characteristics, * e.g. first, last, count. That would be something for a higher layer. */ typedef struct { mcxGrim* grim ; } mcx_list ; typedef struct lsptr { mcx_list* ls ; } lsptr ; #define mcx_list_find(lk) ((lsptr*)((void*)((char*) lk - sizeof(lsptr))))->ls void mcx_link_init ( mcxLink* lk , void* val ) { lk->next = NULL ; lk->prev = NULL ; lk->val = val ; } mcxLink* mcx_list_shift ( mcx_list* ls , void* val ) { void* mem ; mcxLink* lk ; if (!(mem = mcxGrimGet(ls->grim))) return NULL ; lk = (void*) ((char*) mem + sizeof(lsptr)) ; ((lsptr*) mem)->ls = ls ; mcx_link_init(lk, val) ; return lk ; } mcxLink* mcxListSource ( dim capacity_start , mcxbits options ) { mcx_list* ls ; if (!(ls = mcxAlloc(sizeof(mcx_list), RETURN_ON_FAIL))) return NULL #if DEBUG ; fprintf (stderr, "new list ptr <%p> capacity <%ld>\n", (void*) ls, (long) capacity_start) #endif ; if (! (ls->grim = mcxGrimNew(sizeof(lsptr) + sizeof(mcxLink), capacity_start, options) ) ) return NULL ; return mcx_list_shift(ls, NULL) ; } mcxLink* mcxLinkSpawn ( mcxLink* lk , void* val ) { mcx_list* ls = mcx_list_find(lk) ; return mcx_list_shift(ls, val) ; } void mcxLinkClose ( mcxLink* left , mcxLink* right ) { if (left) left->next = right ; if (right) right->prev = left ; } mcxLink* mcxLinkBefore ( mcxLink* next , void* val ) { mcx_list* ls = mcx_list_find(next) ; mcxLink* new = mcx_list_shift(ls, val) ; if (!new) return NULL ; new->next = next ; new->prev = next->prev ; next->prev = new ; if (new->prev) new->prev->next = new ; return new ; } mcxLink* mcxLinkAfter ( mcxLink* prev , void* val ) { mcx_list* ls = mcx_list_find(prev) ; mcxLink* new #if DEBUG ; fprintf(stderr, "list ptr <%p>\n", (void*) ls) #endif ; new = mcx_list_shift(ls, val) ; if (!new) return NULL ; new->prev = prev ; new->next = prev->next ; prev->next = new ; if (new->next) new->next->prev = new ; return new ; } void mcxLinkRemove ( mcxLink* lk ) { mcx_list* ls = mcx_list_find(lk) ; mcxGrimLet(ls->grim, ((char*) lk) - sizeof(lsptr)) ; } mcxLink* mcxLinkDelete ( mcxLink* lk ) { mcx_list* ls = mcx_list_find(lk) ; mcxLink* prev = lk->prev ; mcxLink* next = lk->next ; if (prev) prev->next = next ; if (next) next->prev = prev ; mcxGrimLet(ls->grim, ((char*) lk) - sizeof(lsptr)) ; return lk ; } mcxGrim* mcxLinkGrim ( mcxLink* lk ) { mcx_list* ls = mcx_list_find(lk) ; return ls->grim ; } void mcxListFree ( mcxLink** lkp , void freeval(void* valpp) cpl__unused /* (yourtype1** valpp) */ ) { if (*lkp) { mcx_list* ls = mcx_list_find(*lkp) ; mcxGrimFree(&(ls->grim)) ; mcxFree(ls) ; *lkp = NULL ; } ; } #undef DEBUG mcl-12-135/util/tok.h0000644000402500021140000000520611341063513011214 00000000000000/* (C) Copyright 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_tok #define tingea_tok #include #include "inttypes.h" #include "types.h" #include "list.h" #include "ting.h" /* This is a first sketchy attempt at some parse/tokenize routines. * The scope is not very well defined yet. Should it do basic constructs * only, or aim for more power, possibly aided by callbacks, and * god forbid, a state description? * * TODO * quoted strings not yet implemented! * SGML not yet implemented! * * unify with mcxIOExpect, possibly stuff from ding.h * wide chars? */ #define MCX_TOK_MODE_UNIX 1 /* Unix escapes, including esc newlines */ #define MCX_TOK_MODE_QUOTED 2 /* Quotes delimit tokens, hide brackets */ #define MCX_TOK_MODE_PLAIN 4 #define MCX_TOK_MODE_SGML 8 /* &code; other? */ #define MCX_TOK_DEL_WS 16 /* only delimiting whitespace */ /* Returns first character not matching fbool, NULL if none. */ char* mcxTokSkip ( const char* offset , int (*fbool)(int c) , ofs len ) ; /* * Accounts for nesting. * Will do '}', ')', ']', '>', assuming one of several conventions. */ mcxstatus mcxTokMatch ( const char* offset , char** end , mcxbits mode , ofs len /* considered if >= 0 */ ) ; /* * Find some token, skipping over expressions. * Either *pos == NULL and retval == STATUS_FAIL * or *pos != NULL and retval == STATUS_OK * or *pos != NULL and retval == STATUS_DONE */ mcxstatus mcxTokFind ( const char* offset , char* tok /* Only tok[0] considered for now! */ , char** pos , mcxbits mode , ofs len /* considered if >= 0 */ ) ; /* fixme. - document; - add free routine. - then perhaps optify. */ mcxLink* mcxTokArgs ( const char* str , long str_len , int* n_args , mcxbits opts ) ; typedef struct { mcxTing* key ; mcxLink* args ; mcxbits opts ; } mcxTokFunc ; void mcxTokFuncFree ( mcxTokFunc* tf ) ; mcxstatus mcxTokExpectFunc ( mcxTokFunc* tf , const char* str , dim str_len , char** z , int n_min , int n_max , int *n_args ) ; #endif mcl-12-135/util/array.h0000644000402500021140000000775011632405347011553 00000000000000/* (C) Copyright 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_array_h #define tingea_array_h #include "types.h" mcxstatus mcxSplice ( void* base1pp /* _address_ of pointer to elements */ , const void* base2p /* pointer to elements */ , dim size /* size of base1 and base2 members */ , dim *n_base1 /* total length of elements after base1 */ , dim *N_base1 /* number of alloc'ed elements for base1 */ , ofs o_base1 /* splice relative to this ofset */ , dim d_base1 /* delete this number of elements */ , dim c_base2 /* number of elements to copy */ ) ; dim mcxDedup ( void* base , dim nmemb , dim size , int (*cmp)(const void *, const void *) , void (*merge)(void *, const void *) ) ; mcxstatus mcxResize ( void* mempp , dim size , dim* ct , dim newct , mcxOnFail ON_FAIL ) ; /* Return largest element smaller than or equal to key. * return NULL if no element is smaller than key. * Returns rightmost element in case entries sort identically, * (note: mcxBsearchCeil will then return the leftmost element) * * base should be sorted according to cmp */ void* mcxBsearchFloor ( const void *key , const void *base , dim nmemb , dim size , int (*cmp)(const void *, const void *) ) ; /* Return smallest element larger than or equal to key. * return NULL if no element is larger than key. * Returns leftmost element in case entries sort identically, * (note: mcxBsearchFloor will then return the rightmost element) * * base should be sorted according to cmp */ void* mcxBsearchCeil ( const void *key , const void *base , dim nmemb , dim size , int (*cmp)(const void *, const void *) ) ; /* Uses weighted combinations of neighbours when the quartile * range does not fall perfectly on array offsets (i.e. * when the array size is not a multiple of 4. */ double mcxMedian ( void* base , dim n , dim sz , double (*get)(const void*) , double* iqr ) ; /* Fisher Yates shuffle */ void mcxShuffle ( void* datap , dim nmem , dim mem_size , char* mem_cell /* should have mem_size size */ ) ; typedef struct { void* mempptr ; dim size ; dim n ; dim n_alloc ; float factor ; mcxbool bFinalized ; } mcxBuf ; /* * *mempptr should be peekable; NULL or valid memory pointer. */ mcxstatus mcxBufInit ( mcxBuf* buf , void* mempptr , dim size , dim n ) ; /* * Extends the buffer by n_request unitialized chunks and returns a pointer * to this space. It is the caller's responsibility to treat this space * consistently. The counter buf->n is increased by n_request. * * If we cannot extend (realloc), a NULL pointer is returned; * the original space is left intact. * * Returns NULL on (alloc) failure */ void* mcxBufExtend ( mcxBuf* buf , dim n_request , mcxOnFail ON_FAIL ) ; /* * Make superfluous memory reclaimable by system, * prepare for discarding buf (but not *(buf->memptr)!) * * If for some bizarre reason we cannot shrink (realloc), * errno is set to ENOMEM. * the original space is left intact. Its size is in buf->n . */ dim mcxBufFinalize ( mcxBuf* buf ) ; /* * Make buffer refer to a new variable. Size cannot be changed, * so variable should be of same type as before. */ void mcxBufReset ( mcxBuf* buf , void* mempptr ) ; #endif mcl-12-135/util/Makefile.am0000644000402500021140000000137311030660341012300 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am-assimilate,v 1.3 2005-12-07 16:58:40 flux Exp $ INCLUDES = -I$(top_srcdir) noinst_LIBRARIES = libutil.a libutil_a_SOURCES = alloc.c array.c rand.c equate.c opt.c io.c \ err.c hash.c heap.c let.c list.c gralloc.c tok.c ting.c ding.c \ tr.c types.c EXTRA_DIST = alloc.h array.h rand.h equate.h hash.h heap.h let.h io.h \ opt.h err.h tok.h ting.h ding.h list.h gralloc.h tok.h \ compile.h getpagesize.h types.h inttypes.h minmax.h tr.h mcl-12-135/util/let.c0000644000402500021140000013541011632404337011205 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Stijn van Dongen * (C) Copyright 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ /* * You probably don't want to look at this code - the reasons are explained * below. I like the beast though, especially the part that you can specify * callbacks to parse 'external' data. */ /* * TODO * catch integer overflow. * consider unsigned type. Perhaps implement signed with separate sign. * consider bit operators and unsigned type. * precision. */ #include #include #include #include #include "let.h" #include "ting.h" #include "ding.h" #include "alloc.h" #include "minmax.h" #include "err.h" #include "types.h" #include "ding.h" #include "compile.h" /* ************************************************************************** * * ** Implementation notes (a few). * * Features * All of C's operators in a revised precedence scheme, with exponentiation * added. The groups of logical operators, bitwise operators, comparison * operators have equal precedence internally (but changing this is a * matter of editing a single table). Unsigned integers are not supported * (so bitwise complement behaves funnily). Ternary operator behaves as * should; evaluates only one of its branches. Boolean logical operators * do shortcircuit. All mathematical functions from math.h and some * additional ones (e.g. abs, round, sign). Variables can be parsed and * evaluated using user-supplied functions. Currently, variables must be * recognizable by a special lead character. Todos * I may want to pass raam along to compute and flatten after all. * This brings back in the tokids, which are nice to have. * It also means that global callbacks can be localized. * * Right now, inf is not caught. isinf() seems not portable though :( * * getatoken could be equipped with more error handling facilities now that * user_parse is inserted. The current behaviour is that parsing control * is transfered to native parsing if user parsing does not succeed. This * can be used for overloading the special character, e.g. setting it to * '!' -> user parsing could require a !<..> sequence; if not found, '!' * would be seen as the negation operator. * * user_parse and user_eval need to be global in scope as long * as raam is not passed along in compute and flatten, * but that is actually not a problem (apart from reentrancy). * * Hashing of function names. * * Audit overflow, exceptions, long/double mixing. * * Should min(1,2.0) be 1 rather than 1.0 ? in that case, need special * behaviour for twoary max and min just like now for oneary abs. * * Make int to double overflow promotion a trmInit option. * * on STATUS_FAIL for parse, write error message in telraam. * * allow functions with empty arguments (e.g. rand()). * * add some of the funny stuff provided by fv, f? * * tn toktype is used both in lexing/parsing stage and in reduction stage. * not scalable. Future idea: * Implement an intermediate layer between parsing and evaluation. * E.g. convert the result of trmParse() to a stack. Done * Errors cascade back. For parse errors all memory seems to be reclaimed * (for all cases tried so far). * After parsing, no other errors should be possible I believe. * * made real type, which could be long double. Tis not however, * because long double math does not seem widespread and/or standard. * made num type, which could be long long. Tis not however, * because long long math seems to be C99 (not widespread etc). * * enabled user callbacks for variable and function interpolation. Integers/Floats * It is tracked which operations result in integers and which do * not. If integer overflow occurs the result is promoted to double. * The internal logic implementing this behaviour dictates that * as long as (flags & TN_ISINT) it must be true that fval ==~ ival. * TODO: make this customizable. * NOTE: doubles pbb can capture all 32-bit integers, but not so for * 64-bit integers. May make subtle difference. Apology * It's lame to write your own parser rather than lex and yacc but scriptor * wanted to do it one more time than zero. * * The result is pretty ad hoc and not generic, what it's got going for it * is that it works. Also, trmParse() is not that bad I believe, although * it is not very scalable either. compute() is the trickiest. Some * provisions were made to get short-circuiting and the ternary op working. * The same data structure is used for tokenization, parsing, and * evaluation. Ugly! Implementation notes * . Parse tree is implicitly stored as a linked list. * . Evaluation is done by compute/flatten; precedence and branching are done * during evaluation, rather than (partly) precomputed (which would much be * cleaner). precedence is done in flatten; branching in compute. * . tn's (token nodes) are used both by lexer, parser, and interpreter, * which is not the nicest way of doing it. * . Could push and convert all tokens to a stack (format), which would unify * operators and functions to some extent, and separate interpretation from * parsing and braching. Errors * Currently we have arithmetic error only. * TODO: * Overflow error -- but isinf does not seem portable :( Caveat * tnFree/tnDup should not be applied to a TOKEN_CLOSE node, dupwise * speaking. This is because compute currently has a sanity check for * pointer identity before and after its main loop. * * tricky spots, unfinished thoughts, future ideas, and omitted assertions * are marked with the sequence 'mq' (or even 'mqmq'), but not all of them. * Some reminders * routines that must be checked (malloc dependent) * tnDup * tnNewToken * tnPushToken * tnPushThis * routines that need be checked for other reason * tnUser * flatten * compute * getatom * getexpression * trmParse */ typedef double real; /* but we always use double arithmetic */ /* i.e. never use long double */ #ifdef LET99 typedef long long num; # define NUM_MIN LLONG_MIN /* this branch has not been tested! */ # define NUM_MAX LLONG_MAX /* and requires modifiation of trmEval */ #else typedef long num; # define NUM_MIN LONG_MIN # define NUM_MAX LONG_MAX #endif static int debug_g = 0; static int (*user_parse_g)(mcxTing* txt, int offset) = NULL; static mcxenum (*user_eval_g)(const char* token, long *ival, double *fval) = NULL; static char user_char_g = 0; typedef struct tn /* the lex/parse/interpret one stop-shop */ { mcxTing* token ; i32 toktype ; i32 optype ; i32 opid ; real fval ; num ival ; struct tn* prev ; struct tn* next ; i32 flags ; } tn; /* token node, or whatever */ struct telRaam { mcxTing *text ; mcxTing *token /* current token */ ; char* p ; mcxbool buffered /* should use buffer (pushed back token)? */ ; tn* node /* document symantics */ ; tn* start ; real fval ; num ival ; i32 flags ; i32 toktype ; i32 depth ; tn* stack /* when converting parsed expression to stack */ ; int stack_size ; } ; typedef enum { TOKEN_EXH = -1 , TOKEN_START = 0 /* special start symbol */ , TOKEN_UNIOP = 1 /* unary, 1 */ , TOKEN_BINOP = 2 /* binary, 2 */ , TOKEN_FUN = 69 /* can be fun, but I mean 6 = ( 9 = ) */ , TOKEN_TRIOP = 3333 /* ternary, let's stress the fact */ , TOKEN_TRICATCH = 6667 /* complement of a number wrt another number */ , TOKEN_CMP = 12321 /* hum, dunnow really */ , TOKEN_OR = 11 /* || */ , TOKEN_AND = 88 /* && */ , TOKEN_OPEN = 6 /* like fun, 6 = ( */ , TOKEN_CLOSE = 9 /* like fun, 9 = ) */ , TOKEN_COMMA = 13579 /* gaps */ , TOKEN_CONST = 31415 /* PI */ , TOKEN_USER = 981 /* G, variable */ } tokentype ; #define OP_UNI_NEG 1 << 0 /* - */ #define OP_UNI_NOT 1 << 1 /* ! */ #define OP_UNI_COMPL 1 << 2 /* ~ */ #define OP_EXP_EXP 1 << 3 /* ** */ #define OP_MUL_MUL 1 << 4 /* * */ #define OP_MUL_FRAC 1 << 5 /* / */ #define OP_MUL_DIV 1 << 6 /* // */ #define OP_MUL_MOD 1 << 7 /* % */ #define OP_ADD_ADD 1 << 8 /* + */ #define OP_ADD_SUB 1 << 9 /* - */ #define OP_BIT_LSHIFT 1 << 10 /* << */ #define OP_BIT_RSHIFT 1 << 11 /* >> */ #define OP_BIT_AND 1 << 12 /* & */ #define OP_BIT_OR 1 << 13 /* | */ #define OP_BIT_XOR 1 << 14 /* ^ */ #define OP_CMP_LT 1 << 15 /* < */ #define OP_CMP_LQ 1 << 16 /* <= */ #define OP_CMP_GQ 1 << 17 /* >= */ #define OP_CMP_GT 1 << 18 /* > */ #define OP_CMP_EQ 1 << 19 /* == */ #define OP_CMP_NE 1 << 20 /* != */ #define OP_TRI_START 1 << 21 /* ! */ #define OPTYPE_UNI (OP_UNI_NEG | OP_UNI_NOT | OP_UNI_COMPL) #define OPTYPE_EXP OP_EXP_EXP #define OPTYPE_MUL (OP_MUL_MUL | OP_MUL_FRAC | OP_MUL_DIV | OP_MUL_MOD) #define OPTYPE_ADD (OP_ADD_ADD | OP_ADD_SUB) #define OPTYPE_BIT (OP_BIT_LSHIFT | OP_BIT_RSHIFT \ | OP_BIT_AND | OP_BIT_OR | OP_BIT_XOR) #define OPTYPE_CMP (OP_CMP_LT | OP_CMP_LQ | OP_CMP_GT | OP_CMP_GQ \ | OP_CMP_EQ | OP_CMP_NE) #define OPTYPE_TRI OP_TRI_START typedef struct opHook { char* opname ; i32 opid ; i32 optype ; } opHook ; double sign (double f ) { return f > 0 ? 1.0 : f < 0 ? -1.0 : 0.0 ; } double letround (double f ) { return f > 0 ? floor(f+0.5) : ceil(f-0.5) ; } double letlog2 (double f) { return f > 0 ? log(f) / log(2.0) : 0.0 ; } typedef struct fun1Hook { char* funname ; double (*funcd)(double a) ; i32 funflags ; } fun1Hook ; #define FUN_SPECIAL 1 #define FUN_INTRESULT 2 #define FUN_OVERLOADED 4 double show_bits(double a) { return a; } static fun1Hook fun1HookDir[] = { { "sin", sin , 0 } , { "cos", cos , 0 } , { "tan", tan , 0 } , { "exp", exp , 0 } , { "log", log , 0 } , { "log10", log10 , 0 } , { "log2", letlog2 , 0 } , { "asin", asin , 0 } , { "acos", cos , 0 } , { "atan", atan , 0 } , { "sqrt", sqrt , 0 } , { "abs", fabs , FUN_SPECIAL } , { "floor", floor , FUN_INTRESULT } , { "ceil", ceil , FUN_INTRESULT } , { "round", letround , FUN_INTRESULT } , { "int", letround , FUN_INTRESULT } , { "sign", sign , FUN_INTRESULT } , { "bits", show_bits , FUN_SPECIAL } , { NULL, NULL , 0 } } ; double max ( double a, double b ) { return a > b ? a : b ; } double min ( double a, double b ) { return a < b ? a : b ; } num maxl ( num a, num b ) { return a > b ? a : b ; } num minl ( num a, num b ) { return a < b ? a : b ; } typedef struct fun2Hook { char* funname ; double (*funcd)(double a, double b) ; num (*funcl)(num a, num b) ; i32 funflags ; } fun2Hook ; static fun2Hook fun2HookDir[] = { { "max", max , maxl, 0 } , { "min", min , minl, 0 } , { NULL, NULL , NULL, 0 } } ; /* mq if (tn_isint(lft) && tn_isint(rgt) && hook->funcl) */ static opHook opHookDir[] = { { "-", OP_UNI_NEG, OPTYPE_UNI } , { "!", OP_UNI_NOT, OPTYPE_UNI } , { "~", OP_UNI_COMPL, OPTYPE_UNI } , { "**", OP_EXP_EXP, OPTYPE_EXP } , { "*", OP_MUL_MUL, OPTYPE_MUL } , { "/", OP_MUL_FRAC, OPTYPE_MUL } , { "//", OP_MUL_DIV, OPTYPE_MUL } , { "%", OP_MUL_MOD, OPTYPE_MUL } , { "+", OP_ADD_ADD, OPTYPE_ADD } , { "-", OP_ADD_SUB, OPTYPE_ADD } , { "<<", OP_BIT_LSHIFT, OPTYPE_BIT } , { ">>", OP_BIT_RSHIFT, OPTYPE_BIT } , { "&", OP_BIT_AND, OPTYPE_BIT } , { "|", OP_BIT_OR, OPTYPE_BIT } , { "^", OP_BIT_XOR, OPTYPE_BIT } , { "<", OP_CMP_LT, OPTYPE_CMP } , { "<=", OP_CMP_LQ, OPTYPE_CMP } , { ">=", OP_CMP_GQ, OPTYPE_CMP } , { ">", OP_CMP_GT, OPTYPE_CMP } , { "==", OP_CMP_EQ, OPTYPE_CMP } , { "!=", OP_CMP_NE, OPTYPE_CMP } , { "?", OP_TRI_START, OPTYPE_TRI } , { NULL, 0, 0, } } ; enum { EXPECT_ANY = 1 , EXPECT_ATOM = 2 } ; #define TN_ISINT 1 /* tn token node, object used everywhere */ #define TN_NOINT 2 #define TN_ISNAN 4 #define TN_ISINF 8 #define tn_isint(a) (a->flags & TN_ISINT) mcxbool trmIsNan ( int flags ) { return flags & TN_ISNAN ; } mcxbool trmError ( int flags ) { return flags & (TN_ISNAN | TN_ISINF) ; } mcxbool trmIsInf ( int flags ) { return flags & TN_ISINF ; } mcxbool trmIsNum ( int flags ) { return flags & TN_ISINT ; } mcxbool trmIsReal ( int flags ) { return !(flags & (TN_ISINT | TN_ISNAN | TN_ISINF)) ; } mcxstatus getexpression ( telRaam *raam ) ; mcxstatus getatom ( telRaam* raam ) ; void dump ( tn* node , i32 times , const char* msg ) ; void trmDump ( telRaam* raam , const char* msg ) { dump(raam->start, 0, msg) ; } tn* tnNewToken ( const char* token , i32 toktype , real fval , num ival ) { tn* node = mcxAlloc(sizeof(tn), RETURN_ON_FAIL) ; if (!node) return NULL ; if (!(node->token = mcxTingNew(token ? token : "_<>_"))) { mcxFree(node) ; return NULL ; } node->toktype = toktype ; node->optype = 0 ; node->opid = 0 ; node->ival = ival ; node->fval = fval ; node->next = NULL ; node->prev = NULL ; node->flags = 0 ; if (debug_g) dump(node, 1, "new node") ; return node ; } tn* tnDup ( tn* this , const char* str ) { tn* new = tnNewToken ( str , this->toktype , this->fval , this->ival ) ; if (!new) return NULL ; new->optype = this->optype ; new->next = this->next ; new->prev = this->prev ; new->flags = this->flags ; return new ; } mcxstatus tnFree ( tn* lft , tn* rgt ) { tn* cur = lft, *next ; while (cur) { mcxTingFree(&(cur->token)) ; if (debug_g) fprintf(stderr, "___ [telraam] freeing node <%p>\n", (void*) cur) ; if (cur == rgt) { mcxFree(cur) ; break ; } if (cur->next && cur->next->prev != cur) { mcxErr("tnFree", "free encountered spaghetti") ; return STATUS_FAIL ; } next = cur->next ; mcxFree(cur) ; cur = next ; } return STATUS_OK ; } void tnLink2 ( tn* one , tn* two ) { if (one) one->next = two ; if (two) two->prev = one ; } void tnLink3 ( tn* one , tn* two , tn* three ) { if (one) one->next = two ; if (three) three->prev = two ; two->prev = one ; two->next = three ; } mcxstatus tnPushToken ( telRaam* raam ) { i32 toktype = raam->toktype ; tn* new = tnNewToken(raam->token->str, toktype, 0.0, 0) ; if (!new) return STATUS_FAIL ; if (toktype == TOKEN_CONST) new->fval = raam->fval , new->ival = raam->ival , new->flags = raam->flags ; else if ( toktype == TOKEN_BINOP || toktype == TOKEN_UNIOP ) { opHook* oh = raam->toktype == TOKEN_BINOP ? opHookDir+3 : opHookDir+0 /* bigg phat ugly hack */ /* (need to overcome '-' uni/bin ambiguity */ ; while (oh->opname) { if (!strcmp(oh->opname, raam->token->str)) { new->optype = oh->optype ; new->opid = oh->opid ; break ; } oh++ ; } if (!oh->opname) { mcxErr("tnPushToken", "no such operator: <%s>", raam->token->str) ; tnFree(new, NULL) ; return STATUS_FAIL ; } } else if (raam->toktype == TOKEN_FUN) { /* mq: move name resolution to here ? mm, needs arity */ ; } tnLink3(raam->node, new, NULL) ; raam->node = new ; return STATUS_OK ; } mcxstatus tnPushThis ( telRaam* raam , const char* token , i32 toktype ) { tn* new = tnNewToken(token, toktype, 0.0, 0) ; if (!new) return STATUS_FAIL ; tnLink3(raam->node, new, NULL) ; raam->node = new ; return STATUS_OK ; } void trmDebug ( void ) { debug_g = 1 ; } telRaam* trmInit ( const char* str ) { telRaam* raam= mcxAlloc(sizeof(telRaam), RETURN_ON_FAIL) ; if (!raam) return NULL ; raam->text = mcxTingNew(str) ; raam->token = mcxTingEmpty(NULL, 30) ; raam->p = raam->text->str ; raam->buffered = FALSE ; raam->node = tnNewToken("_start_", TOKEN_START, 0.0, 0) ; raam->start = raam->node ; raam->fval = 0.0 ; raam->ival = 0 ; raam->flags = 0 ; raam->depth = 1 ; raam->toktype= 0 ; raam->stack = NULL ; if (!raam->text || !raam->token || !raam->node) mcxFree(raam) , raam = NULL ; return raam ; } mcxstatus trmExit ( telRaam* raam ) { if (tnFree(raam->start, raam->node)) return STATUS_FAIL ; mcxTingFree(&(raam->text)) ; mcxTingFree(&(raam->token)) ; mcxFree(raam) ; return STATUS_OK ; } void untoken ( telRaam* raam ) { raam->buffered = TRUE ; } void dump ( tn* node , i32 times , const char* msg ) { tn* prev = NULL ; printf("______ %s\n", msg ? msg : "dumping dumping dumping") ; printf ("%8s" "%10s" "%10s" "%10s" "%12s" "%10s" "%6s\n" ,"toktype","optype","opclass","token","fval","ival","flags" ) ; while (node) { printf ("%8d" "%10d" "%10d" "%10s" "%12.4f""%10ld""%6d\n" , node->toktype , node->opid , node->optype , node->token ? node->token->str : "<>" , node->fval , (long) node->ival , node->flags ) ; prev = node ; node = node->next ; if (node && (node->prev->next != node || node->prev != prev)) fprintf ( stderr , "_____ [telraam] PANICK incorrect linking" " <%p> n<%p> np<%p> npn<%p>\n" , (void*) prev , (void*) node , (void*) node->prev , (void*) node->prev->next ) ; if (!--times) break ; } } int getatoken ( telRaam* raam , i32 mode ) { char* p = raam->p ; i32 toktype = 0 ; int len ; while (isspace((unsigned char) *p)) p++ ; raam->p = p ; if (!*p) { mcxTingWrite(raam->token, "EOF") ; return TOKEN_EXH ; } else if ( mode == EXPECT_ATOM && ( *p == '-' || *p == '!' || *p == '~' ) ) { toktype = TOKEN_UNIOP ; p = p+1 ; } else if (*p == ':') { toktype = TOKEN_TRICATCH ; p = p+1 ; } else if (*p == '&' && *(p+1) == '&') { toktype = TOKEN_AND ; p = p+2 ; } else if (*p == '|' && *(p+1) == '|') { toktype = TOKEN_OR ; p = p+2 ; } else if (*p == '?') { toktype = TOKEN_TRIOP ; p = p+1 ; } else if (*p == ',') { toktype = TOKEN_COMMA ; p = p+1 ; } else if (isdigit((unsigned char) *p)) { int l ; double f ; sscanf(p, "%lf%n", &f, &l) /* mq need error checking */ ; toktype = TOKEN_CONST ; raam->fval = f ; raam->ival = 0 ; if (raam->fval < NUM_MIN || raam->fval > NUM_MAX) raam->flags = TN_NOINT ; else { raam->flags = mcxStrChrAint(p, isdigit, l) ? 0 : TN_ISINT ; raam->ival = f > 0 ? f + 0.5 : f - 0.5 ; } p = p+l ; } else if (isalpha((unsigned char) *p) || *p == '_') { char* q = p ; while(isalpha((unsigned char) *q) || *q == '_' || isdigit((unsigned char) *q)) q++ ; p = q ; toktype = TOKEN_FUN ; } else if (*p == '(' || *p == ')') { toktype = *p == '(' ? TOKEN_OPEN : TOKEN_CLOSE ; p = p+1 ; } else if ( user_char_g == *p && (len = user_parse_g(raam->text, p-raam->text->str)) > 0 ) /* ^truncintok */ { p += len ; toktype = TOKEN_USER ; } else { char* q = p ; while (*q == *p || *q == '=') /* hack */ q++ ; toktype = TOKEN_BINOP ; p = q ; } mcxTingNWrite(raam->token, raam->p, (dim) (p-raam->p)) ; raam->p = p ; return toktype ; } i32 gettoken ( telRaam* raam , i32 mode ) { if (raam->buffered) raam->buffered = FALSE ; else raam->toktype = getatoken(raam, mode) ; return raam->toktype ; } tn* findop ( tn* end ) { tn* node = end->prev, *max = NULL ; while (node->toktype != TOKEN_OPEN) { if ( node->toktype == TOKEN_UNIOP || node->toktype == TOKEN_BINOP || node->toktype == TOKEN_TRIOP ) { if ( !max || node->optype <= max->optype ) max = node ; } node = node->prev ; } return max ; } tn* finduser ( tn* start ) { tn* node = start->next ; while (node->toktype != TOKEN_CLOSE) { if (node->toktype == TOKEN_USER) return node ; node = node->next ; } return NULL ; } mcxstatus tnUser ( tn* usr ) { mcxenum stat = user_eval_g(usr->token->str, &usr->ival, &usr->fval) ; if (stat == TRM_ISNUM) { usr->flags = TN_ISINT ; usr->fval = usr->ival ; } else if (stat == TRM_ISREAL) usr->flags = 0 ; else if (stat == TRM_ISNAN) { usr->flags = TN_ISNAN ; return STATUS_FAIL ; } else if (stat == TRM_FAIL) { usr->flags = TN_ISNAN ; return STATUS_FAIL ; } usr->toktype = TOKEN_CONST ; return STATUS_OK ; } /* * Flattens a bunch of leafs interspersed with operators. * Leaves received start and corresponding end alone. */ mcxstatus flatten ( tn* start , tn* end ) { tn* new, *op, *usr ; real fval = 0.0 ; num ival = 0 ; const char* me = "flatten" ; if ( start->toktype != TOKEN_OPEN || end->toktype != TOKEN_CLOSE ) { mcxErr ( me , "wrong toktype - ids (%p, %p)" , (void*) start, (void*) end ) ; dump(start, 0, NULL) ; return STATUS_FAIL ; } new = start->next ; while ((usr = finduser(start))) { if (tnUser(usr)) return STATUS_FAIL ; } while ((op = findop(end))) { tn* lft = op->prev ; tn* rgt = op->next /* ugly in case of UNIOP */ ; int err = 0 ; i32 flags = 0 ; if (op->toktype == TOKEN_UNIOP) { real frgt = rgt->fval ; num irgt = rgt->ival ; switch(op->opid) { case OP_UNI_NOT : ival = (tn_isint(rgt) && irgt) ? 0 : frgt ? 0 : 1 ; fval = ival ; flags |= TN_ISINT ; break ; case OP_UNI_NEG : fval = -frgt ; ival = -irgt ; break ; case OP_UNI_COMPL : ival = ~irgt ; fval = ival ; flags |= TN_ISINT ; break ; default : err = 1 ; } lft = op ; flags |= tn_isint(rgt) /* mq fval=ival assignment ugly, need overflow check as well :) */ ; } else if (op->toktype == TOKEN_BINOP) { real flft = lft->fval ; real frgt = rgt->fval ; num ilft = lft->ival ; num irgt = rgt->ival ; if (op->opid & OPTYPE_BIT) { if (!tn_isint(lft)) ilft = lft->fval /* fixme: why the reassign? */ ; if (!tn_isint(rgt)) irgt = rgt->fval /* fixme: why the reassign? */ ; if (!tn_isint(rgt) || !tn_isint(lft)) mcxErr ( "let" , "[flatten][bitop %s] forcing real operands to number" , op->token->str ) ; } if (lft->toktype != TOKEN_CONST || rgt->toktype != TOKEN_CONST) { mcxErr(me, "this bifoo is not the right foo") ; dump(start, 0, NULL) ; return STATUS_FAIL ; } switch(op->opid) { case OP_MUL_MUL : fval = flft * frgt ; ival = ilft * irgt ; break ; case OP_EXP_EXP : if (flft < 0 && !(rgt->flags & TN_ISINT)) fval = 0.0 , flags |= TN_ISNAN ; else fval = pow(flft,frgt) ; ival = letround(fval) ; break ; case OP_ADD_ADD : fval = flft + frgt ; ival = ilft + irgt ; break ; case OP_MUL_FRAC : fval = frgt ? (flft / frgt) : 0.0 ; ival = irgt ? (ilft / irgt) : 0 ; if (tn_isint(lft) && tn_isint(rgt) && ival * irgt == ilft) flags |= TN_ISINT ; else flags |= TN_NOINT ; if (!frgt) flags |= TN_ISNAN ; break ; case OP_MUL_DIV : fval = frgt ? floor(flft/frgt) : 0.0 ; ival = irgt ? (ilft / irgt) : 0 ; if (!frgt) flags |= TN_ISNAN ; break ; case OP_MUL_MOD : fval = frgt ? frgt * (flft/frgt-floor(flft/frgt)) : 0.0 ; ival = irgt ? (ilft % irgt) : 0.0 ; if (!frgt) flags |= TN_ISNAN ; break ; case OP_ADD_SUB : fval = flft - frgt ; ival = ilft - irgt ; break ; case OP_CMP_LT : ival = tn_isint(lft) && tn_isint(rgt) && (ilft < irgt) ? 1 : flft < frgt ? 1 : 0 ; flags |= TN_ISINT ; break ; case OP_CMP_LQ : ival = tn_isint(lft) && tn_isint(rgt) && (ilft <= irgt) ? 1 : flft <= frgt ? 1 : 0 ; flags |= TN_ISINT ; break ; case OP_CMP_GQ : ival = tn_isint(lft) && tn_isint(rgt) && (ilft >= irgt) ? 1 : flft >= frgt ? 1 : 0 ; flags |= TN_ISINT ; break ; case OP_CMP_GT : ival = tn_isint(lft) && tn_isint(rgt) && (ilft > irgt) ? 1 : flft > frgt ? 1 : 0 ; flags |= TN_ISINT ; break ; case OP_CMP_EQ : ival = tn_isint(lft) && tn_isint(rgt) && (ilft == irgt) ? 1 : flft == frgt ? 1 : 0 ; flags |= TN_ISINT ; break ; case OP_CMP_NE : ival = tn_isint(lft) && tn_isint(rgt) && (ilft != irgt) ? 1 : flft != frgt ? 1 : 0 ; flags |= TN_ISINT ; break ; case OP_BIT_LSHIFT : ival = ilft << irgt ; flags |= TN_ISINT ; break ; case OP_BIT_RSHIFT : ival = ilft >> irgt ; flags |= TN_ISINT ; break ; case OP_BIT_AND : ival = ilft & irgt ; flags |= TN_ISINT ; break ; case OP_BIT_OR : ival = ilft | irgt ; flags |= TN_ISINT ; break ; case OP_BIT_XOR : ival = ilft ^ irgt ; flags |= TN_ISINT ; break ; default : err = 1 ; } /* this rule implements implicit behaviour with overruling: * two integers result in an integer unless overruled * with the TN_NOINT attribute. */ if (!(flags & TN_NOINT)) flags |= tn_isint(lft) & tn_isint(rgt) /* next we check whether overflow occurred. If so, discard the * integer attribute. This depends on i) fval follows ival as * long as the integer attribute is set and ii) in that pursuit, * fval is computed to be similar to ival. */ ; if ((fval > NUM_MAX || fval < NUM_MIN) && (flags & TN_ISINT)) flags ^= TN_ISINT /* make fval follow ival, otherwise, give ival special * value. *Never* should float->int conversion happen * in this code; it should be user-enforced. * Setting ival to 0 may help show any such behaviour as a bug. */ ; if (flags & TN_ISINT) fval = ival ; else ival = 0 ; } else { mcxErr(me, "panicking at toktype <%ld>", (long) op->toktype) ; return STATUS_FAIL ; } if (err) { mcxErr ( me , "op <%s> id <%ld> class <%ld> not yet supported" , op->token->str , (long) op->opid , (long) op->optype ) ; return STATUS_FAIL ; } if (flags & TN_ISNAN) { mcxErr(me, "arithmetic exception for op <%s>", op->token->str) ; return STATUS_FAIL ; } if (!(new = tnNewToken("_eval_", TOKEN_CONST, fval, ival))) return STATUS_FAIL ; new->flags = flags /* mq need overflow check, nan check etc */ ; tnLink3(lft->prev, new, rgt->next) ; if (tnFree(lft, rgt)) return STATUS_FAIL ; } return STATUS_OK ; } fun1Hook* getfun1id ( tn* start ) { fun1Hook *fh = fun1HookDir+0 ; while (fh->funname && strcmp(fh->funname, start->token->str)) fh++ ; return fh->funname ? fh : NULL ; } fun2Hook* getfun2id ( tn* start ) { fun2Hook *fh = fun2HookDir+0 ; while (fh->funname && strcmp(fh->funname, start->token->str)) fh++ ; return fh->funname ? fh : NULL ; } tn* funcx ( tn* start , tn* end ) { tn *new, *arg = end->prev ; real fval = 0.0 ; num ival = 0 ; i32 flags = 0 ; int n_args = arg->toktype == TOKEN_CONST ; int err = 0 ; const char* me = "funcx" ; const char* fn = "_init_" ; if ( start->toktype != TOKEN_FUN || start->next->toktype != TOKEN_OPEN || end->toktype != TOKEN_CLOSE ) { mcxErr(me, "wrong toktype - ids (%p, %p)", (void*) start, (void*) end) ; dump(start, 0, NULL) ; return NULL ; } while ( arg->toktype == TOKEN_CONST && arg->prev->toktype == TOKEN_COMMA ) arg = arg->prev->prev , n_args++ ; if (arg->prev != start->next) { mcxErr(me, "this function foo is not the right foo") ; dump(start, 0, NULL) ; return NULL ; } if (n_args == 1) { tn* op1 = arg ; fun1Hook* fh = getfun1id(start) ; if (fh) { fn = fh->funname ; if (fh->funflags & FUN_SPECIAL) { if (!strcmp(fn, "abs")) { if (tn_isint(op1)) { ival = op1->ival > 0 ? op1->ival : -op1->ival ; flags |= TN_ISINT ; } else fval = op1->fval > 0 ? op1->fval : -op1->fval ; } else if (!strcmp(fn, "bits")) { if (tn_isint(op1)) { ival = op1->ival ; flags |= TN_ISINT /* mq show the damn bits */ ; } else fval = op1->fval /* mq show the damn bits */ ; } else err = 1 ; } else { fval = (fh->funcd)(op1->fval) ; if ( fh->funflags & FUN_INTRESULT && fval <= NUM_MAX && fval >= NUM_MIN ) { flags |= TN_ISINT ; ival = (num) fval > 0 ? fval+0.5 : fval - 0.5 ; } } } else err = 1 ; } else if (n_args == 2) { tn* op1 = arg, *op2 = op1->next->next ; fun2Hook* fh = getfun2id(start) ; if (fh) { fn = fh->funname ; if (tn_isint(op1) && tn_isint(op2) && fh->funcl) { ival = (fh->funcl)(op1->ival, op2->ival) ; flags |= TN_ISINT ; } else fval = (fh->funcd)(op1->fval, op2->fval) ; } else err = 1 ; } else err = 1 ; if (err) { mcxErr ( me , "<%s> [%d] not supported" , start->token->str , n_args ) ; return NULL ; } else { if (!(new = tnNewToken(fn, TOKEN_CONST, fval, ival))) return NULL ; new->flags = flags ; } return new ; } tn* match ( tn* start ) { int depth = 1 ; if (start->toktype != TOKEN_OPEN) { mcxErr("match", "node <%p> has wrong toktype", (void*) start) ; return NULL ; } while (start->next) { start = start->next ; if (start->toktype == TOKEN_OPEN) depth++ ; else if (start->toktype == TOKEN_CLOSE) { depth-- ; if (!depth) break ; } } return depth ? NULL : start ; } /* * must leave received start and corresponding end alone */ mcxstatus compute ( tn* start ) { tn* ptr, *new, *end ; const char* me = "compute" ; if (start->toktype != TOKEN_OPEN) { mcxErr(me, "node <%p> has wrong toktype", (void*) start) ; return(STATUS_FAIL) ; } if (!(end = match(start))) { mcxErr(me, "node <%p> has no match", (void*) start) ; return(STATUS_FAIL) ; } ptr = start->next ; while (ptr) /* ok by the naming police? */ { tn* eosc, *val ; if (ptr->toktype == TOKEN_FUN) { if (compute(ptr->next)) return STATUS_FAIL /* now:: LPT op CM [op CM]* RPT */ ; eosc = match(ptr->next) ; if (!eosc || !(val = funcx(ptr, eosc))) return STATUS_FAIL /* now:: fun LPT val RPT */ ; tnLink3(ptr->prev, val, eosc->next) ; if (tnFree(ptr, eosc)) return STATUS_FAIL ; ptr = val->next ; } else if (ptr->toktype == TOKEN_OPEN) { if (compute(ptr)) return STATUS_FAIL ; if (!(eosc = match(ptr))) /* should check singularity */ return STATUS_FAIL ; if (!(val = tnDup(eosc->prev, "_scope_"))) return STATUS_FAIL ; tnLink3(ptr->prev, val, eosc->next) ; if (tnFree(ptr, eosc)) return STATUS_FAIL ; ptr = val->next ; } /* should check presence TRICATCH */ else if (ptr->toktype == TOKEN_TRIOP) { tn* br1 = ptr->next, *br2, *eobr1, *eobr2 /* branches */ ; if (!(eobr1 = match(br1))) return STATUS_FAIL ; if (!(br2 = eobr1->next->next)) return STATUS_FAIL ; eobr2 = match(br2) ; if (ptr->prev->fval) /* mqmq! logic by fval */ { if (compute(br1)) return STATUS_FAIL ; if (!(new = tnDup(br1->next, "triop1"))) return STATUS_FAIL ; tnLink3(ptr->prev->prev, new, eobr2->next) ; if (tnFree(ptr->prev, eobr2)) return STATUS_FAIL ; } else { if (compute(br2)) return STATUS_FAIL ; if (!(new = tnDup(br2->next, "triop2"))) return STATUS_FAIL ; tnLink3(ptr->prev->prev, new, eobr2->next) ; if (tnFree(ptr->prev, eobr2)) return STATUS_FAIL ; } ptr = new->next ; } else if (ptr->toktype == TOKEN_AND) /* now:: val AND LPT any RPT */ { tn* pivot = ptr->prev, *clause=ptr->next, *after ; if (pivot->fval) { if (compute(clause)) return STATUS_FAIL /* should check singularity of result */ /* lpt val rpt ? */ ; after = clause->next->next->next /* oops, ugly dugly */ ; pivot->fval = clause->next->fval /* mqmq! logic by fval */ ; if (tnFree(pivot->next, after->prev)) return STATUS_FAIL ; tnLink2(pivot, after) ; ptr = after ; } else { tn* eoclause = match(clause) ; tn* any = eoclause ? eoclause->next : NULL ; if (!eoclause || tnFree(pivot->next, eoclause)) return STATUS_FAIL ; tnLink2(pivot, any) ; ptr = any ; } pivot->ival = pivot->fval ? 1 : 0 ; pivot->flags |= TN_ISINT ; } else if (ptr->toktype == TOKEN_OR) { tn* pivot = ptr->prev, *clause=ptr->next, *after ; if (pivot->fval) { tn* eoclause = match(clause) ; tn* any = eoclause ? eoclause->next : NULL ; if (!eoclause || tnFree(pivot->next, eoclause)) return STATUS_FAIL ; tnLink2(pivot, any) ; ptr = any ; } else { if (compute(clause)) return STATUS_FAIL /* should check singularity of result */ ; after = clause->next->next->next /* oops, ugly dugly */ ; pivot->fval = clause->next->fval /* mqmq! logic by fval */ ; if (tnFree(pivot->next, after->prev)) return STATUS_FAIL ; tnLink2(pivot, after) ; ptr = after ; } pivot->ival = pivot->fval ? 1 : 0 ; pivot->flags |= TN_ISINT ; } else if (ptr->toktype == TOKEN_CLOSE) break ; else ptr = ptr->next ; } /* NOTE: by design we should always have ptr != NULL * that makes the clause to the while (ptr) { } loop * above a bit dodgy. */ if (ptr != end || ptr->toktype != TOKEN_CLOSE) { mcxErr(me, "ptr does not close") ; dump(ptr->prev, 0, NULL) ; return STATUS_FAIL ; } if (flatten(start, ptr)) return STATUS_FAIL ; return STATUS_OK ; } mcxstatus getatom ( telRaam* raam ) { i32 toktype = gettoken(raam, EXPECT_ATOM) ; const char* me = "getatom" ; if (toktype < 0) { mcxErr(me, "unexpected token <%s>", raam->token->str) ; return STATUS_FAIL ; } ; if (toktype == TOKEN_UNIOP) { if (tnPushToken(raam)) return STATUS_FAIL ; if (getatom(raam)) return STATUS_FAIL ; } else if (toktype == TOKEN_OPEN) { if (getexpression(raam)) return STATUS_FAIL ; if ((toktype = gettoken(raam, EXPECT_ANY)) != TOKEN_CLOSE) { mcxErr(me, "no close (token <%ld>)", (long) toktype) ; return STATUS_FAIL ; } if (raam->depth < 0) { mcxErr(me, "spurious rpth (atom I)") ; return STATUS_FAIL ; } } else if (toktype == TOKEN_FUN) { if (tnPushToken(raam)) return STATUS_FAIL ; if (tnPushThis(raam, "_open_", TOKEN_OPEN)) return STATUS_FAIL ; if ((toktype = gettoken(raam, EXPECT_ANY)) != TOKEN_OPEN) { mcxErr(me, "expect '(' after function symbol") ; return STATUS_FAIL ; } while(1) { if (getexpression(raam)) return STATUS_FAIL ; if (gettoken(raam, EXPECT_ANY) == TOKEN_COMMA) { if (tnPushToken(raam)) return STATUS_FAIL ; } else { untoken(raam) ; break ; } } if ((toktype = gettoken(raam, EXPECT_ANY)) != TOKEN_CLOSE) { mcxErr(me, "expect ')' closing function symbol") ; return STATUS_FAIL ; } if (tnPushThis(raam, "_close_", TOKEN_CLOSE)) return STATUS_FAIL ; } else if (toktype == TOKEN_CONST) { if (tnPushToken(raam)) return STATUS_FAIL ; } else if (toktype == TOKEN_CLOSE) { mcxErr(me, "empty group not allowed") ; return STATUS_FAIL ; } else if (toktype == TOKEN_USER) { if (tnPushToken(raam)) return STATUS_FAIL ; } else { mcxErr(me, "unexpected token <%s> (atom)", raam->token->str) ; return STATUS_FAIL ; } return STATUS_OK ; } mcxstatus getexpression ( telRaam* raam ) { i32 toktype ; const char* me = "getexpression" ; raam->depth++ ; if (tnPushThis(raam, "_open_", TOKEN_OPEN)) return STATUS_FAIL ; while (1) { if (getatom(raam)) return STATUS_FAIL ; toktype = gettoken(raam, EXPECT_ANY) ; if (toktype == TOKEN_BINOP) { if (tnPushToken(raam)) return STATUS_FAIL ; } else if (toktype == TOKEN_AND) { if (tnPushThis(raam, "_close_", TOKEN_CLOSE)) return STATUS_FAIL ; if (tnPushToken(raam)) return STATUS_FAIL ; if (tnPushThis(raam, "_open_", TOKEN_OPEN)) return STATUS_FAIL ; } else if (toktype == TOKEN_OR) { if (tnPushThis(raam, "_close_", TOKEN_CLOSE)) return STATUS_FAIL ; if (tnPushToken(raam)) return STATUS_FAIL ; if (tnPushThis(raam, "_open_", TOKEN_OPEN)) return STATUS_FAIL ; } else if (toktype == TOKEN_TRIOP) { if (tnPushThis(raam, "_close_", TOKEN_CLOSE)) return STATUS_FAIL ; if (tnPushToken(raam)) return STATUS_FAIL ; if (tnPushThis(raam, "_open_", TOKEN_OPEN)) return STATUS_FAIL ; if (getexpression(raam)) return STATUS_FAIL ; if (tnPushThis(raam, "_close_", TOKEN_CLOSE)) return STATUS_FAIL ; toktype = gettoken(raam, EXPECT_ANY) ; if (toktype != TOKEN_TRICATCH) { mcxErr ( me , "unexpected token <%s> (expression)" , raam->token->str ) ; return STATUS_FAIL ; } if (tnPushToken(raam)) return STATUS_FAIL ; if (tnPushThis(raam, "_open_", TOKEN_OPEN)) return STATUS_FAIL ; } else if ( toktype == TOKEN_COMMA || toktype == TOKEN_CLOSE || toktype == TOKEN_EXH || toktype == TOKEN_TRICATCH ) { untoken(raam) ; break ; } else { mcxErr ( me , "unexpected token <%s> <%ld> (expression)" , raam->token->str , (long) toktype ) ; return STATUS_FAIL ; } } if (tnPushThis(raam, "_close_", TOKEN_CLOSE)) return STATUS_FAIL ; raam->depth-- ; return STATUS_OK ; } mcxstatus trmParse ( telRaam* raam ) { if (tnPushThis(raam, "_open_", TOKEN_OPEN)) return STATUS_FAIL ; if (getexpression(raam)) return STATUS_FAIL ; if (tnPushThis(raam, "_close_", TOKEN_CLOSE)) return STATUS_FAIL ; if (gettoken(raam, EXPECT_ANY) != TOKEN_EXH) { mcxErr("trmParse", "spurious token <%s>", raam->token->str) ; return STATUS_FAIL ; } return STATUS_OK ; } void trmRegister ( telRaam* raam cpl__unused , int (user_parse)(mcxTing* txt, int offset) , mcxenum (user_eval)(const char* token, long *ival, double *fval) , char user_char ) { user_parse_g = user_parse ; user_eval_g = user_eval ; user_char_g = user_char ; } int trmEval ( telRaam* raam , long* lp , double* fp ) { tn* result ; mcxstatus stat = compute(raam->start->next) ; result = stat ? NULL : (raam->start->next->next) ; if (result) { *lp = result->ival ; *fp = result->fval ; return result->flags ; } return -1 ; } int trmStack ( telRaam* raam ) { tn* result ; mcxstatus stat = compute(raam->start->next) ; return stat ; } mcl-12-135/util/ding.h0000644000402500021140000000351011602102640011327 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_ding #define tingea_ding #include #include "types.h" #include "ting.h" char* mcxStrDup ( const char* str ) ; char* mcxStrNDup ( const char* str , dim n ) ; mcxstatus mcxStrTol ( const char* s , long* value , char** end ) ; mcxstatus mcxStrToul ( const char* s , ulong* value , char** end ) ; /* * if len < 0, strlen(p) is used. */ dim mcxStrCountChar ( const char* p , char c , ofs len /* -1 for don't know */ ) ; char* mcxStrChrIs ( const char* src , int (*fbool)(int c) , ofs len /* -1 for don't know */ ) ; char* mcxStrChrAint ( const char* src , int (*fbool)(int c) , ofs len /* -1 for don't know */ ) ; char* mcxStrRChrIs ( const char* src , int (*fbool)(int c) , ofs offset /* -1 for don't know */ ) ; char* mcxStrRChrAint ( const char* src , int (*fbool)(int c) , ofs offset /* -1 for don't know */ ) ; #define MCX_MEMPRINT_REVERSE 1 #define MCX_MEMPRINT_NOSPACE 2 /* Strides in char units, treats/truncates each unit * as/to an 8-bit entity. */ mcxTing* mcxMemPrint ( mcxTing* ting , void* p , dim n_bytes , mcxbits flags ) ; int mcxEditDistance ( const char* s1 , const char* s2 , int* lcs ) ; int mcxSetenv ( const char* kv ) ; #endif mcl-12-135/util/io.c0000644000402500021140000006037711477735544011057 00000000000000/* (C) Copyright 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #define DEBUG 0 /* NOTE * Very few routines should be allowed to touch buffer. * create/free routines, and step and stepBack. * currently many routines ignore the buffer (but warn * when doing so). * mcxIOtryCookie is currently only one filling buffer. * Conceivably, mcxIOfind could be next. * * TODO * buffering: document, who can initiate it? * buffering: document, which routines are incompatible? * general: remove dependency on ungetc. * make mcxIOreadLine/ mcxIOstep zlib-aware. * mcxIOfind can be made much faster. * - inline fillpatbuf * - get rid of modulus computations - subtract patlen if necessary. * - use buffered input. */ #include #include #include #include #include #include #include #include #include "io.h" #include "types.h" #include "ting.h" #include "ding.h" #include "err.h" #include "alloc.h" #include "compile.h" #include "getpagesize.h" #define inbuffer(xf) (xf->buffer_consumed < xf->buffer->len) static void buffer_empty ( mcxIO* xf ) { mcxTingEmpty(xf->buffer, getpagesize()) /* sets xf->buffer->len to 0 */ ; xf->buffer_consumed = 0 ; } static void buffer_spout ( mcxIO* xf , const char* me ) { mcxErr ( "mcxIO" , "warning: reader %s in file <%s> discards buffered input <%.*s>" , me , xf->fn->str , (int) (xf->buffer->len - xf->buffer_consumed) , xf->buffer->str+xf->buffer_consumed ) ; buffer_empty(xf) ; } int begets_stdio ( const char* name , const char* mode ) { if ( ( strchr(mode, 'r') && !strcmp(name, "-") ) || ( (strchr(mode, 'w') || strchr(mode, 'a')) && (!strcmp(name, "-") || !strcmp(name, "stderr")) ) ) return 1 ; return 0 ; } static int mcxIOwarnOpenfp ( mcxIO* xf , const char* who ) { if (xf->fp && !xf->stdio) { mcxIOerr(xf, who, "has open file pointer") ; return 1 ; } return 0 ; } mcxstatus mcxIOclose ( mcxIO* xf ) { fflush(xf->fp) ;if (!strcmp(xf->fn->str, "-") && !strcmp(xf->mode, "w") && !xf->stdio) mcxDie(1, "tst", "should not happen") ; if (xf->fp && !xf->stdio) { fclose(xf->fp) ; xf->fp = NULL ; } else if (xf->fp && xf->stdio) { int fe = ferror(xf->fp) /* fixme why not in branch above? */ ; if (fe) mcxErr("mcxIOclose", "error [%d] for [%s] stdio", fe, xf->mode) , perror("mcxIOclose") ; if (xf->ateof || feof(xf->fp)) clearerr(xf->fp) ; } /* fixme contract with usr_reset */ return mcxIOreset(xf) ; } /* note: does not touch all members, notably * usr * fn * mode * fp */ mcxstatus mcxIOreset ( mcxIO* xf ) { xf->lc = 0 ; xf->lo = 0 ; xf->lo_ = 0 ; xf->bc = 0 ; xf->ateof = 0 /* regardless of read/write */ ; buffer_empty(xf) /* xf->fp not touched; promote user care */ ; if (xf->usr && xf->usr_reset) return xf->usr_reset(xf->usr) ; return STATUS_OK ; } void mcxIOerr ( mcxIO* xf , const char *complainer , const char *complaint ) { if (!xf) return ; mcxErr ( complainer , "%s stream <%s> %s" , xf->mode , xf->fn->str , complaint ) ; } mcxIO* mcxIOnew ( const char* str , const char* mode ) { if (!str || !mode) { mcxErr("mcxIOnew PBD", "void string or mode argument") ; return NULL ; } return mcxIOrenew(NULL, str, mode) ; } /* fixme: the code below is mildly muddy. * The ->stdio decision (for new streams) might best be made * at open time? */ mcxIO* mcxIOrenew ( mcxIO* xf , const char* name , const char* mode ) { mcxbool twas_stdio = xf && xf->stdio /* it was one of STD{IN,OUT,ERR} */ ; if ( mode && !strstr(mode, "w") && !strstr(mode, "r") && !strstr(mode, "a") ) { mcxErr ("mcxIOrenew PBD", "unsupported open mode <%s>", mode) ; return NULL ; } if ( getenv("TINGEA_PLUS_APPEND") && ( name && (uchar) name[0] == '+' ) && ( mode && strchr(mode, 'w') ) ) { name++ /* user can specify -o +foo to append to foo */ ; mode = "a" ; } if (!xf) /* case 1) create a new one */ { if (!name || !mode) { mcxErr("mcxIOrenew PBD", "too few arguments") ; return NULL ; } if (!(xf = (mcxIO*) mcxAlloc(sizeof(mcxIO), RETURN_ON_FAIL))) return NULL ; if (!(xf->fn = mcxTingEmpty(NULL, 20))) return NULL ; if (!(xf->buffer = mcxTingEmpty(NULL, getpagesize()))) return NULL ; xf->fp = NULL ; xf->mode = NULL ; xf->usr = NULL ; xf->usr_reset = NULL ; xf->buffer_consumed = 0 ; } else if (xf->stdio) /* case 2) have one, don't close */ NOTHING ; else if (mcxIOwarnOpenfp(xf, "mcxIOrenew")) mcxIOclose(xf) /* case 3) have one, warn and close if open */ ; mcxIOreset(xf) ; if (name && !mcxTingWrite(xf->fn, name)) return NULL ; if (mode) { if (xf->mode) mcxFree(xf->mode) ; xf->mode = mcxStrDup(mode) ; } xf->stdio = begets_stdio(xf->fn->str, xf->mode) /* name changed, no longer stdio */ ; if (twas_stdio && !xf->stdio) xf->fp = NULL ; if (xf->stdio && mode && strchr(mode, 'a')) /* recently added */ { if (xf->mode) mcxFree(xf->mode) ; xf->mode = mcxStrDup("w") ; } return xf ; } mcxstatus mcxIOopen ( mcxIO* xf , mcxOnFail ON_FAIL ) { const char* fname = xf->fn->str ; if (!xf) { mcxErr("mcxIOnew PBD", "received void object") ; if (ON_FAIL == RETURN_ON_FAIL) return STATUS_FAIL ; exit(1) ; } if (mcxIOwarnOpenfp(xf, "mcxIOopen PBD")) return STATUS_OK ; if (!strcmp(fname, "-")) { if (strchr(xf->mode, 'r')) xf->fp = stdin ; else if (strchr(xf->mode, 'w') || strchr(xf->mode, 'a')) xf->fp = stdout ; } else if ( !strcmp(fname, "stderr") && (strchr(xf->mode, 'w') || strchr(xf->mode, 'a')) ) xf->fp = stderr ; else if ((xf->fp = fopen(fname, xf->mode)) == NULL) { if (ON_FAIL == RETURN_ON_FAIL) return STATUS_FAIL ; mcxIOerr(xf, "mcxIOopen", "cannae be opened") ; mcxExit(1) ; } return STATUS_OK ; } mcxstatus mcxIOtestOpen ( mcxIO* xf , mcxOnFail ON_FAIL ) { if (!xf->fp && mcxIOopen(xf, ON_FAIL) != STATUS_OK) { mcxErr ("mcxIO", "cannot open file <%s> in mode %s", xf->fn->str, xf->mode) ; return STATUS_FAIL ; } return STATUS_OK ; } void mcxIOrelease ( mcxIO* xf ) { if (xf) { mcxIOclose(xf) ; if (xf->fn) mcxTingFree(&(xf->fn)) ; if (xf->mode) mcxFree(xf->mode) ; } } mcxstatus mcxIOappendName ( mcxIO* xf , const char* suffix ) { if (xf->fp && !xf->stdio) mcxErr ( "mcxIOappendName PBD" , "stream open while request for name change from <%s> to <%s>" , xf->fn->str , suffix ) ; else if (!mcxTingAppend(xf->fn, suffix)) return STATUS_FAIL ; xf->stdio = begets_stdio(xf->fn->str, "-") ; return STATUS_OK ; } #if 0 mcxstatus mcxIOnewName ( mcxIO* xf , const char* newname ) { if (!mcxTingEmpty(xf->fn, 0)) return STATUS_FAIL ; return mcxIOappendName(xf, newname) ; } #else mcxstatus mcxIOnewName ( mcxIO* xf , const char* newname ) { return mcxIOrenew(xf, newname, NULL) ? STATUS_OK : STATUS_FAIL ; } #endif int mcxIOstepback ( int c , mcxIO* xf ) { if (c == EOF) return EOF ; else { if (inbuffer(xf) && xf->buffer_consumed > 0) c = xf->buffer->str[--xf->buffer_consumed] /* insert a new branch for zlib aware reading here; splice into buffer */ ; else if (ungetc(c, xf->fp) == EOF) { mcxErr ( "mcxIOstepback" , "failed to push back <%d> on stream <%s>\n" , c , xf->fn->str ) ; return EOF ; } xf->bc-- ; if (c == '\n') xf->lc-- , xf->lo = xf->lo_ , xf->lo_ = 0 ; else xf->lo-- ; } return c ; } int mcxIOstep ( mcxIO* xf ) { int c #if 0 ;if (xf->buffer) fprintf(stderr, "buffer [%s]\n", xf->buffer->str) ;else fprintf(stderr, "nobuffer\n") #endif ; if (xf->ateof) c = EOF ; else if (inbuffer(xf)) { c = xf->buffer->str[xf->buffer_consumed++] ; if (!inbuffer(xf)) buffer_empty(xf) ; } else c = fgetc(xf->fp) ; switch(c) { case '\n' : xf->lc++ ; xf->bc++ ; xf->lo_ = xf->lo ; xf->lo = 0 ; break ; case EOF : xf->ateof = 1 ; break ; default : xf->bc++ ; xf->lo++ ; break ; } return c ; } /* fixme todo * * look at bc; substract it from sz (we might have read a part already). * * support growing files. and look at other items in the grep source code. */ mcxstatus mcxIOreadFile ( mcxIO *xf , mcxTing *filetxt ) { struct stat mystat ; size_t sz = 4096 ; ssize_t r ; const char* me = "mcxIOreadFile" ; mcxTingEmpty(filetxt, 0) ; if (inbuffer(xf)) buffer_spout(xf, me) ; if (!xf->stdio) { if (stat(xf->fn->str, &mystat)) mcxIOerr(xf, me, "cannae stat file") ; else sz = mystat.st_size ; } if (!xf->fp && mcxIOopen(xf, RETURN_ON_FAIL)) { mcxIOerr(xf, me, "cannae open file") ; return STATUS_FAIL ; } if (xf->ateof) return STATUS_OK /* fixme; ting count overflow */ ; if (!(filetxt = mcxTingEmpty(filetxt, sz))) return STATUS_NOMEM ; while ((r = mcxIOappendChunk(xf, filetxt, sz, 0)) > 0 && !xf->ateof) ; if (r <0) return STATUS_FAIL /* fixme; look closer at error */ ; return STATUS_OK ; } static dim mcxIO__rl_fillbuf__ ( mcxIO* xf , char* buf , dim size , int* last ) { int a = 0 ; dim ct = 0 ; while(ctateof = 1 ; return z #undef MCX_IORL_BSZ ; } dim mcxIOdiscardLine ( mcxIO *xf ) { int a ; dim ct = 0 ; if (!xf->fp) { mcxIOerr(xf, "mcxIOdiscardLine", "is not open") ; return 0 /* fixme; set errno? */ ; } while(((a = mcxIOstep(xf)) != '\n') && a != EOF) ct++ ; if (inbuffer(xf)) /* fixme/design check buffer for line */ buffer_spout(xf, "mcxIOdiscardLine") ; return ct ; } ofs mcxIOappendChunk ( mcxIO *xf , mcxTing *dst , dim sz , mcxbits flags cpl__unused ) { unsigned long psz = getpagesize() ; dim k = sz / psz /* fixme: size checks? */ ; dim rem = sz % psz ; ofs r = 1 /* pretend in case k == 0 */ /* mcxbool account = flags & MCX_CHUNK_ACCOUNT ? TRUE : FALSE */ ; dim offset = dst->len ; char* p ; if (!dst || !xf->fp || !mcxTingEnsure(dst, dst->len + sz)) return -1 /* fixme set some (new) errno */ ; if (k) while (k-- > 0 && (r = read(fileno(xf->fp), dst->str+dst->len, psz)) > 0) dst->len += r /* careful with unsignedness */ ; if ( r > 0 && rem > 0 && (r = read(fileno(xf->fp), dst->str+dst->len, rem)) > 0 ) dst->len += r ; dst->str[dst->len] = '\0' ; xf->bc += dst->len - offset ; for (p = dst->str+offset; pstr+dst->len; p++) { if (*p == '\n') { xf->lc++ ; xf->lo_ = xf->lo ; xf->lo = 0 ; } else xf->lo++ ; } /* fixme; what if k == 0, rem == 0 ? */ if (!r) /* fixme; other possibilities? */ xf->ateof = 1 ; return dst->len ; } mcxstatus mcxIOreadLine ( mcxIO *xf , mcxTing *dst , mcxbits flags ) { int a ; dim ll ; mcxbool chomp = flags & MCX_READLINE_CHOMP ? TRUE : FALSE ; mcxbool skip = flags & MCX_READLINE_SKIP_EMPTY ? TRUE : FALSE ; mcxbool par = flags & MCX_READLINE_PAR ? TRUE : FALSE ; mcxbool dot = flags & MCX_READLINE_DOT ? TRUE : FALSE ; mcxbool bsc = flags & MCX_READLINE_BSC ? TRUE : FALSE ; mcxbool repeat = dot || par || bsc ? TRUE : FALSE ; mcxbool continuation = FALSE ; mcxTing* line ; mcxstatus stat = STATUS_OK ; if (!xf->fp && mcxIOopen(xf, RETURN_ON_FAIL)) { mcxIOerr(xf, "mcxIOreadLine", "is not open") ; return STATUS_FAIL ; } if (xf->ateof) return STATUS_DONE ; if (!dst || !mcxTingEmpty(dst, 1)) return STATUS_NOMEM ; if (skip || par) { while((a = mcxIOstep(xf)) == '\n') NOTHING ; if (xf->ateof) return STATUS_DONE ; else mcxIOstepback(a, xf) ; } if (!(line = repeat ? mcxTingEmpty(NULL, 1) : dst)) return STATUS_NOMEM ; while (1) { ofs d = mcxIO__rl_rl__(xf, line) ; if (IO_MEM_ERROR == d) { stat = STATUS_NOMEM /* fixme grainify error/status */ ; break ; } ll = line->len ; if (!repeat) break ; else /* must append line to dst */ { if ( dot && !continuation && line->str[0] == '.' && ( ll == 2 || (ll == 3 && line->str[1] == '\r') ) /* fixme still not fully covering */ ) break /* do not attach the single-dot-line */ ; if (par && !continuation && ll == 1) break /* do not attach the second newline */ ; if (!mcxTingNAppend(dst, line->str, line->len)) { stat = STATUS_NOMEM ; break ; } continuation = bsc && (ll > 1 && *(line->str+ll-2) == '\\') ; if (continuation) mcxTingShrink(dst, -2) ; if (!par && !dot && (bsc && !continuation)) break ; if (xf->ateof) break ; } } if (repeat) mcxTingFree(&line) ; if (stat) return stat /* fixme; should we not check chomp first ? */ /* fixme _: \n\r ? */ ; if (chomp && dst->len && *(dst->str+dst->len-1) == '\n') mcxTingShrink(dst, -1) ; if (xf->ateof && !dst->len) return STATUS_DONE ; return STATUS_OK ; } void mcxIOlistParmodes ( void ) { fprintf ( stdout , "%5d vanilla mode, fetch next line\n" , MCX_READLINE_DEFAULT ) ; fprintf(stdout, "%5d chomp trailing newline\n", MCX_READLINE_CHOMP) ; fprintf(stdout, "%5d skip empty lines\n", MCX_READLINE_SKIP_EMPTY) ; fprintf(stdout, "%5d paragraph mode\n", MCX_READLINE_PAR) ; fprintf(stdout, "%5d backslash escapes newline\n", MCX_READLINE_BSC) ; fprintf ( stdout , "%5d section mode, ended by singly dot on a single line\n" , MCX_READLINE_DOT ) ; } void mcxIOpos ( mcxIO* xf , FILE* channel ) { const char* ateof = xf->ateof ? "at EOF in " : "" ; fprintf ( channel , "[mcxIO] %sstream <%s>, line <%ld>, character <%ld>\n" , ateof , xf->fn->str , (long) xf->lc , (long) xf->lo ) ; } void mcxIOfree_v ( void* xfpp ) { mcxIOfree((mcxIO**) xfpp) ; } void mcxIOfree ( mcxIO** xfpp ) { if (*xfpp) { mcxIO* xf = *xfpp ; mcxIOrelease(xf) ; mcxTingFree(&(xf->buffer)) ; if (xf->usr && xf->usr_free) xf->usr_free(xf->usr) ; mcxFree(xf) ; *xfpp = NULL ; } } mcxstatus mcxIOexpectReal ( mcxIO* xf , double* dblp , mcxOnFail ON_FAIL ) { int n_read = 0 ; int n_conv = 0 ; if (inbuffer(xf)) buffer_spout(xf, "mcxIOexpectReal") ; mcxIOskipSpace(xf) /* keeps accounting correct */ ; n_conv = fscanf(xf->fp, " %lf%n", dblp, &n_read) ; xf->bc += n_read /* fixme do fscanf error handling */ ; xf->lo += n_read ; if (1 != n_conv) { if (ON_FAIL == EXIT_ON_FAIL) { mcxIOpos(xf, stderr) ; mcxErr("parseReal", "parse error: expected to find real") ; mcxExit(1) ; } return STATUS_FAIL ; } return STATUS_OK ; } mcxstatus mcxIOexpectNum ( mcxIO* xf , long* lngp , mcxOnFail ON_FAIL ) { int n_read = 0 ; int n_conv = 0 ; mcxstatus status = STATUS_OK ; if (inbuffer(xf)) buffer_spout(xf, "mcxIOexpectNum") ; mcxIOskipSpace(xf) /* keeps accounting correct */ ; errno = 0 ; n_conv = fscanf(xf->fp, "%ld%n", lngp, &n_read) ; xf->bc += n_read /* fixme do fscanf error handling */ ; xf->lo += n_read ; if (1 != n_conv) mcxErr("mcxIOexpectNum", "parse error: expected to find integer") , status = STATUS_FAIL ; else if (errno == ERANGE) mcxErr("mcxIOexpectNum", "range error: not in allowable range") , status = STATUS_FAIL ; if (status) { mcxIOpos(xf, stderr) ; if (ON_FAIL == EXIT_ON_FAIL) mcxExit(1) ; } return status ; } int mcxIOskipSpace ( mcxIO* xf ) { int c ; while ((c = mcxIOstep(xf)) != EOF && isspace(c)) ; return mcxIOstepback(c, xf) ; } mcxbool mcxIOtryCookie ( mcxIO* xf , const uchar abcd[4] ) { uchar efgh[5] ; int n_read = fread(efgh, sizeof efgh[0], 4, xf->fp) ; int error = ferror(xf->fp) ; dim i = 0 ; if (n_read == 4) for (i=0; i<4 && abcd[i] == efgh[i]; i++) NOTHING #if 0 ;fprintf(stderr, "IN %d %d %d %d %d %d\n", i, n_read, (int) efgh[0], (int) efgh[1], (int) efgh[2], (int) efgh[3]) ;fprintf(stderr, "IN %d %d %d %d %d %d\n", i, n_read, (int) abcd[0], (int) abcd[1], (int) abcd[2], (int) abcd[3]) #endif ; if (i == 4) { xf->bc += 4 ; return TRUE ; } if (!fseek(xf->fp, -n_read, SEEK_CUR)) xf->bc += (4-n_read) ; else { mcxTingNAppend(xf->buffer, (char*) efgh, n_read) ; /* xf->bc += n_read mcxIOstep does subsequent accounting */ ; if (!error) clearerr(xf->fp) ; } return FALSE ; } mcxbool mcxIOwriteCookie ( mcxIO* xf , const uchar abcd[4] ) { dim n_written = fwrite(abcd, sizeof abcd[0], 4, xf->fp) ; if (n_written != 4) { mcxErr("mcxIOwriteCookie", "failed to write <%.4s>", abcd) ; return FALSE ; } return TRUE ; } /* fixme: newlines in str thrash correct lc/lo counting */ int mcxIOexpect ( mcxIO *xf , const char *str , mcxOnFail ON_FAIL ) { const char* s = str ; int c = 0 ; int d = 0 ; int n_trailing /* * no functional behaviour yet attached to this state change * fixme: semantics for STDIN agree between stdlib and us? */ ; while ( c = (uchar) s[0] , ( c && ( d = mcxIOstep(xf) , c == d ) ) ) s++ ; n_trailing = strlen(s) /* truncintok */ ; if (c && ON_FAIL == EXIT_ON_FAIL) { mcxErr("mcxIOexpect", "parse error: expected to see <%s>", str) ; mcxIOpos(xf, stderr) ; mcxExit(1) ; } return n_trailing ; } typedef struct { int tbl[256] ; int* circle /* circular buffer */ ; int circle_last /* circle bumper */ ; const char* pat ; int patlen ; } mcxIOpat ; static void mcxio_newpat ( mcxIOpat* md , const char* pattern ) { int i ; int *tbl = md->tbl ; const char* pat ; int patlen = strlen(pattern) /* truncintok */ ; md->circle = mcxAlloc(patlen * sizeof(int), EXIT_ON_FAIL) ; md->pat = pattern ; md->patlen = patlen ; pat = md->pat /* initialize */ ; for (i = 0; i < 256; i ++) tbl[i] = patlen ; for (i = 0; i < patlen-1; i++) tbl[(uchar) pat[i]] = patlen -i -1 #if DEBUG ; for (i=0; icircle_last = patlen -1 ; } static void mcxIOcleanpat ( mcxIOpat* md ) { mcxFree(md->circle) ; } static int fillpatbuf ( mcxIO* xfin , int shift , mcxIOpat* md ) { int c = 0 ; int z = 0 ; int patlen = md->patlen ; while (z < shift && (c = mcxIOstep(xfin)) != EOF) { int q = (md->circle_last+z+1) % patlen ; md->circle[q] = c ; z++ ; } md->circle_last = (md->circle_last+shift) % patlen ; return c ; } mcxstatus mcxIOfind ( mcxIO* xfin , const char* pat , mcxOnFail ON_FAIL ) { int j, k ; int shift, patlen ; int* tbl ; int* circle ; mcxIOpat md ; int found = 0 ; mcxio_newpat(&md, pat) ; patlen = md.patlen ; tbl = md.tbl ; circle = md.circle ; shift = patlen /* * hum. This means that empty pattern matches on empty string .. * Need to fix fillpatbuf if this should be reversed. */ ; if (!patlen) found = 1 ; else do { if (EOF == fillpatbuf(xfin, shift, &md)) break ; for ( j=md.circle_last+patlen, k=patlen-1 ; j>md.circle_last && circle[j%patlen] == (uchar) pat[k] ; j--, k-- ) NOTHING #if DEBUG fprintf (stderr ,"comparing circlebuf pos %d char [%c] with pattern pos %d char [%c]\n" ,(int) (j%patlen) ,(int) ((uchar) circle[j%patlen]) ,(int) k ,(int) pat[k] ) #endif ; if (j == md.circle_last) { found++ ; break ; } shift = tbl[circle[md.circle_last % patlen]] #if DEBUG ; fprintf ( stderr , "___ last[%d] index[%d] pivot[%c] shift[%d]\n" , (int) md.circle_last , (int) md.circle_last % patlen , (int) circle[md.circle_last % patlen] , (int) shift ) #endif ; } while (1) ; mcxIOcleanpat(&md) ; if (!found && ON_FAIL == RETURN_ON_FAIL) return STATUS_FAIL ; else if (!found) exit(EXIT_FAILURE) ; return STATUS_OK ; } dim mcxIOdiscard ( mcxIO* xf , dim amount ) { dim bsz = xf->buffer->mxl ; char* buf = xf->buffer->str ; dim n_read = 0 ; dim n_chunk = amount / bsz ; dim rem = amount - bsz * n_chunk ; dim i, n ; if (inbuffer(xf)) buffer_spout(xf, "mcxIOdiscard") ; for (i=0;ifp) ; n_read += n ; xf->bc += n ; if (n != bsz) break ; } if (i < n_chunk) return n_read ; if (rem) n = fread(buf, 1, rem, xf->fp) , n_read += n , xf->bc += n ; return n_read ; } mcl-12-135/util/let.h0000644000402500021140000000242011627441021011177 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Stijn van Dongen * (C) Copyright 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #ifndef tingea_let #define tingea_let #include "types.h" #include "ting.h" #define TRM_FAIL 0 #define TRM_ISNUM 1 #define TRM_ISREAL 2 #define TRM_ISINF 3 #define TRM_ISNAN 4 typedef struct telRaam telRaam; telRaam* trmInit ( const char* str ) ; mcxstatus trmExit ( telRaam* raam ) ; mcxstatus trmParse ( telRaam* raam ) ; int trmEval ( telRaam* raam , long* lp , double* fp ) ; void trmRegister ( telRaam* raam , int (user_parse)(mcxTing* txt, int offset) , mcxenum (user_eval)(const char* token, long *ival, double *fval) , char user_char ) ; mcxbool trmError ( int flags ) ; mcxbool trmIsReal ( int flags ) ; mcxbool trmIsNum ( int flags ) ; mcxbool trmIsNan ( int flags ) ; mcxbool trmIsInf ( int flags ) ; void trmDump ( telRaam* raam , const char* msg ) ; void trmDebug ( void ) ; #endif mcl-12-135/util/ting.c0000644000402500021140000004667411147246115011376 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include #include #include #include #include "../config.h" #include "ting.h" #include "ding.h" #include "minmax.h" #include "alloc.h" #include "array.h" #include "hash.h" #include "types.h" #include "err.h" #include "tr.h" void mcxTingRelease ( void* tingv ) { if (tingv && ((mcxTing*)tingv)->str) mcxFree(((mcxTing*)tingv)->str) ; } void mcxTingFree ( mcxTing **tingpp ) { mcxTing* ting = *tingpp ; if (ting) { if (ting->str) mcxFree(ting->str) ; mcxFree(ting) ; *tingpp = NULL ; } } void mcxTingFree_v ( void *tingpp ) { mcxTingFree((mcxTing**) tingpp) ; } #if 0 void mcxTingAbandon ( void *tingpp ) { mcxTing* ting = *((mcxTing**) tingpp) ; mcxFree(ting) ; } #endif mcxTing* mcxTingShrink ( mcxTing* ting , ofs offset ) { if (offset < 0) offset = ting->len + offset /* fixme conversion? */ ; if (offset < 0 || (dim) offset > ting->len) { mcxErr ( "mcxTingShrink" , "funny offset <%lu> newlen <%ld> combo" , (ulong) ting->len , (long) offset ) ; return ting ; } else { *(ting->str+offset) = '\0' ; ting->len = offset; ; } return ting ; } mcxTing* mcxTingEnsure ( mcxTing* ting , dim len ) { if (!ting && !(ting = (mcxTing*) mcxTingInit(NULL))) return NULL ; if (len <= ting->mxl) ; else { char* t = mcxRealloc(ting->str, len+1, RETURN_ON_FAIL) ; if (!t) return NULL ; ting->str = t ; ting->mxl = len ; if (1) *(ting->str+ting->mxl) = '\0' /* there should be no need to do this; * and for large allocations this may fail. */ ; } return ting ; } #ifndef HAVE_VA_COPY #define HAVE_VA_COPY 1 #endif /* todo nul hardening */ static mcxTing* mcx_ting_print ( mcxTing* dst , const char* fmt , va_list *args ) #define PRINT_BUF_SIZE 512 { char buf[PRINT_BUF_SIZE], *src ; mcxTing* txtbuf = NULL ; dim m = PRINT_BUF_SIZE ; int npf /* Perhaps hook this #definery with configure options that * benefit from autoconf machinery. */ #if HAVE_VA_COPY ; va_list args2 ; va_copy(args2, *args) ; npf = vsnprintf(buf, PRINT_BUF_SIZE, fmt, args2) ; va_end(args2) #else ; npf = vsnprintf(buf, PRINT_BUF_SIZE, fmt, *args) #endif /* from reading standards it seems that npf >= PRINT_BUF_SIZE * should be sufficient. However, alpha OSF1 provides * a counterexample. And from reading standard annotations * it seems that vsnprintf is widely ill-implemented */ ; if (npf < 0 || npf >= PRINT_BUF_SIZE - 1) { m = (npf >= 0 && npf >= PRINT_BUF_SIZE - 1) ? ((dim) npf) + 1 : 2 * m /* Suppose m is set to npf+1. Then mcxTingEmpty will malloc npf+2 * bytes and vnsprintf is given m+1=npf+2 as size argument, * which is > PRINT_BUF_SIZE. */ ; while (1) { if (!(txtbuf = mcxTingEmpty(txtbuf, m))) { mcxTingFree(&txtbuf) ; return NULL ; } #if HAVE_VA_COPY va_copy(args2, *args) ; npf = vsnprintf(txtbuf->str, m+1, fmt, args2) ; va_end(args2) #else ; npf = vsnprintf(txtbuf->str, m+1, fmt, *args) #endif /* Only the npf < 0 case is expected below. * The other check is defensive coding. We gave * vsnprintf m+1 as size argument, so the check is * against one less than that (alpha OSF1 example). */ ; if (npf < 0 || (dim) npf >= m) m *= 2 ; else break ; } src = txtbuf->str ; } else src = buf ; dst = mcxTingWrite(dst, src) ; mcxTingFree(&txtbuf) ; return dst ; } mcxTing* mcxTingPrintSplice ( mcxTing* dst , ofs offset , ofs delete , const char* fmt , ... ) { va_list args ; mcxTing *infix = NULL ; va_start(args, fmt) ; infix = mcx_ting_print(NULL, fmt, &args) ; va_end(args) ; if (!infix) return NULL ; if (!dst) return infix ; if ( mcxTingSplice(dst, infix->str, offset, delete, infix->len) != STATUS_OK ) { mcxTingFree(&infix) ; return NULL ; } mcxTingFree(&infix) ; return dst ; } mcxTing* mcxTingPrint ( mcxTing* dst , const char* fmt , ... ) { va_list args ; va_start(args, fmt) ; dst = mcx_ting_print(dst, fmt, &args) ; va_end(args) ; return dst ; } mcxTing* mcxTingPrintAfter ( mcxTing* dst , const char* fmt , ... ) { va_list args ; mcxTing *affix = NULL ; va_start(args, fmt) ; affix = mcx_ting_print(affix, fmt, &args) ; va_end(args) ; if (!dst) return affix ; if (!affix) /* presumably malloc failure */ return NULL ; if (!mcxTingAppend(dst, affix->str)) { mcxTingFree(&affix) ; return NULL ; } mcxTingFree(&affix) ; return dst ; } static const char* roman[40] = { "" , "i" , "ii", "iii", "iv" , "v" , "vi", "vii", "viii", "ix" , "" , "x" , "xx", "xxx", "xl" , "l" , "lx", "lxx", "lxxx", "xc" , "" , "c" , "cc", "ccc", "cd" , "d" , "dc", "dcc", "dccc", "cm" , "" , "m" , "mm", "mmm", "mmmm", "" , "" , "", "", "" } ; mcxTing* mcxTingRoman ( mcxTing* dst , long a , mcxbool ucase ) { long i, x, c, m ; char* p ; if (a >= 5000 || a <= 0) return mcxTingWrite(dst, "-") ; i = a % 10 ; a /= 10 ; x = a % 10 ; a /= 10 ; c = a % 10 ; a /= 10 ; m = a ; dst = mcxTingPrint ( dst , "%s%s%s%s" , roman[30+m] , roman[20+c] , roman[10+x] , roman[ 0+i] ) ; if (dst && ucase) for (p=dst->str;pstr+dst->len;p++) *p += 'A' - 'a' ; return dst ; } mcxTing* mcxTingDouble ( mcxTing* dst , double x , int decimals ) { char num[500] ; char* p ; int len = snprintf(num, 500, "%.*f", decimals, x) ; if (decimals < 0) { mcxErr("mcxTingDouble PBD", "negative decimals arg") ; decimals = 6 ; } if (len < 0 || len >= 500) return mcxTingWrite(dst, "[]") ; p = num+len-1 /* GNU libcx bug workaround */ /* it returns 2 for length of 'inf' */ ; if (decimals && strcmp(num, "inf")) { while (*p == '0') p-- ; if (*p == '.') *++p = '0' ; *++p = '\0' ; } return mcxTingWrite(dst, num) ; } mcxTing* mcxTingInteger ( mcxTing* dst , long x ) { char num[128] ; int len = snprintf(num, 128, "%ld", x) ; if (len < 0 || len >= 128) return mcxTingWrite(dst, "[]") ; return mcxTingWrite(dst, num) ; } void* mcxTingInit ( void * tingv ) { mcxTing *ting = tingv ; if (!ting) { if (!(ting = mcxAlloc(sizeof(mcxTing), RETURN_ON_FAIL))) return NULL ; } if (!(ting->str = (char*) mcxAlloc(sizeof(char), RETURN_ON_FAIL))) return NULL ; *(ting->str+0) = '\0' ; ting->len = 0 ; ting->mxl = 0 ; return ting ; } /* * Take string into an existing ting or into a new ting */ mcxTing* mcxTingInstantiate ( mcxTing* ting , const char* string ) /* strnotice strlen */ { dim length = string ? strlen(string) : 0 /* ensure handles ting==NULL and/or length==0 cases */ ; if (!(ting = mcxTingEnsure(ting, length))) return NULL /* strnotice strncpy */ ; if (string) { strncpy(ting->str, string, length) ; *(ting->str+length) = '\0' ; } ting->len = length ; return ting ; } int mcxTingRevCmp ( const void* t1 , const void* t2 ) { return (strcmp(((mcxTing*)t2)->str, ((mcxTing*)t1)->str)) ; } int mcxTingCmp ( const void* t1 , const void* t2 ) { return (strcmp(((mcxTing*)t1)->str, ((mcxTing*)t2)->str)) ; } int mcxTingPCmp ( const void* t1 , const void* t2 ) { return (strcmp(((mcxTing**)t1)[0]->str, ((mcxTing**)t2)[0]->str)) ; } int mcxTingPRevCmp ( const void* t1 , const void* t2 ) { return (strcmp(((mcxTing**)t2)[0]->str, ((mcxTing**)t1)[0]->str)) ; } int mcxPKeyTingCmp ( const void* k1 , const void* k2 ) { return strcmp ( ((mcxTing*) ((mcxKV**)k1)[0]->key)->str , ((mcxTing*) ((mcxKV**)k2)[0]->key)->str ) ; } int mcxPKeyTingRevCmp ( const void* k1 , const void* k2 ) { return strcmp ( ((mcxTing*) ((mcxKV**)k2)[0]->key)->str , ((mcxTing*) ((mcxKV**)k1)[0]->key)->str ) ; } mcxstatus mcxTingSplice ( mcxTing* ting , const char* pstr , ofs offset , ofs n_delete , dim n_copy ) { dim newlen ; if (!ting) { mcxErr("mcxTingSplice PBD", "void ting argument") ; return STATUS_FAIL ; } /* offset -1 denotes appending at the end, * offset -2 denotes inserting at the last-but-one position. * etc */ if (offset < 0) { if ((dim) -offset > ting->len + 1) offset = 0 ; else offset = ting->len + offset + 1 ; } else if ((dim) offset > ting->len) offset = ting->len ; if (n_delete == TING_INS_CENTER) { n_delete = MCX_MIN(ting->len, n_copy) ; offset = (ting->len - n_delete) / 2 /* n_delete <= ting->len */ ; } else if (n_delete == TING_INS_OVERWRITE) n_delete = MCX_MIN(ting->len - offset, n_copy) /* offset <= ting->len */ ; else if (n_delete == TING_INS_OVERRUN || n_delete < 0) n_delete = ting->len - offset /* offset <= ting->len */ ; else if (n_delete < 0) { mcxErr ( "mcxTingSplice PBD" , "unsupported delete mode %ld" , (long) n_delete ) ; return STATUS_FAIL ; } else if ((dim) (offset + n_delete) > ting->len) n_delete = ting->len - offset ; if (ting->len + n_copy < (dim) n_delete) /* now spurious? */ { mcxErr("mcxTingSplice PBD", "arguments result in negative length") ; return STATUS_FAIL ; } /* * essential: mcxSplice does not know to allocate room for '\0' */ newlen = ting->len - n_delete + n_copy ; if (!mcxTingEnsure(ting, newlen)) return STATUS_FAIL ; if ( mcxSplice ( &(ting->str) , pstr , sizeof(char) , &(ting->len) , &(ting->mxl) , offset , (dim) n_delete , n_copy ) != STATUS_OK ) return STATUS_FAIL /* * essential: mcxSplice might have realloced, so has to be done afterwards. */ ; *(ting->str+newlen) = '\0' ; if (ting->len != newlen) { mcxErr("mcxTingSplice panic", "mcxSplice gives unexpected result") ; return STATUS_FAIL ; } return STATUS_OK ; } mcxTing* mcxTingNew ( const char* str ) { return mcxTingInstantiate(NULL, str) ; } mcxTing* mcxTingNNew ( const char* str , dim sz ) { mcxTing* ting = mcxTingEnsure(NULL, sz) ; if (!ting) return NULL /* strnotice memcpy */ ; if (str && sz) memcpy(ting->str, str, sz) ; *(ting->str+sz) = '\0' ; ting->len = sz ; return ting ; } mcxTing* mcxTingEmpty ( mcxTing* ting , dim len ) { if (!(ting = mcxTingEnsure(ting, len))) return NULL ; *(ting->str+0) = '\0' , ting->len = 0 ; return ting ; } mcxTing* mcxTingWrite ( mcxTing* ting , const char* str ) { return mcxTingInstantiate(ting, str) ; } mcxTing* mcxTingNWrite ( mcxTing* ting , const char* str , dim sz ) { if (!(ting = mcxTingEnsure(ting, sz))) return NULL /* strnotice strncpy */ ; memcpy(ting->str, str, sz) ; *(ting->str+sz) = '\0' ; ting->len = sz ; return ting ; } char* mcxTingSubStr ( const mcxTing* ting , ofs offset , ofs length ) { char* str ; if (offset < 0 || (dim) offset > ting->len) offset = ting->len ; if (length < 0 || (dim) (offset+length) > ting->len) length = ting->len - offset ; if (!(str = mcxAlloc((dim) (length+1), RETURN_ON_FAIL))) return NULL ; if (length) memcpy(str, ting->str+offset, (dim) length) ; *(str+length) = '\0' ; return str ; } mcxTing* mcxTingify ( char* str ) { mcxTing* ting = mcxAlloc(sizeof(mcxTing), RETURN_ON_FAIL) ; ting->str = str /* strnotice strlen; ? tingify2 */ ; ting->len = strlen(str) ; return ting ; } char* mcxTinguish ( mcxTing* ting ) { char* str = ting->str ; mcxFree(ting) ; return str ; } char* mcxTingStr ( const mcxTing* ting ) { ofs slen = ting->len ; return mcxTingSubStr(ting, 0, slen) ; } mcxTing* mcxTingAppend ( mcxTing* ting , const char* str ) { if (!ting) return mcxTingNew(str) /* strnotice strlen */ ; if ( mcxTingSplice ( ting , str , -1 /* splice offset */ , 0 /* delete nothing */ , str? strlen(str) : 0 /* string length */ ) != STATUS_OK ) return NULL ; return ting ; } mcxTing* mcxTingKAppend ( mcxTing* ting , const char* str , dim sz ) { dim len = strlen(str) ; if (!ting && !sz) return mcxTingEmpty(NULL, 0) ; if (!sz) return ting ; while (sz-- > 0) /* careful with unsignedness */ if (!(ting = mcxTingNAppend(ting, str, len))) return NULL ; return ting ; } mcxTing* mcxTingNAppend ( mcxTing* ting , const char* str , dim sz ) { if (!ting) return mcxTingNWrite(NULL, str, sz) ; if ( mcxTingSplice ( ting , str , -1 /* splice offset */ , 0 /* delete nothing */ , sz ) != STATUS_OK ) return NULL ; return ting ; } mcxTing* mcxTingInsert ( mcxTing* ting , const char* str , ofs offset ) { if (!ting) return mcxTingNew(str) /* strnotice strlen */ ; if ( mcxTingSplice ( ting , str , offset /* splice offset */ , 0 /* delete nothing */ , str ? strlen(str) : 0 /* string length */ ) != STATUS_OK ) return NULL ; return ting ; } mcxTing* mcxTingNInsert ( mcxTing* ting , const char* str , ofs offset , dim length ) { if (!ting) return mcxTingNWrite(NULL, str, length) ; if ( mcxTingSplice ( ting , str , offset /* splice offset */ , 0 /* delete nothing */ , length /* length of str */ ) != STATUS_OK ) return NULL ; return ting ; } mcxTing* mcxTingDelete ( mcxTing* ting , ofs offset , dim width ) { ofs swidth = width ; if (!ting) return NULL ; if ( mcxTingSplice ( ting , NULL , offset /* splice offset */ , swidth /* delete width */ , 0 /* string length */ ) != STATUS_OK ) return NULL ; return ting ; } u32 mcxTingDJBhash ( const void* ting ) { return(mcxBJhash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingBDBhash ( const void* ting ) { return(mcxBDBhash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingBJhash ( const void* ting ) { return(mcxBJhash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingCThash ( const void* ting ) { return(mcxCThash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingDPhash ( const void* ting ) { return(mcxDPhash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingGEhash ( const void* ting ) { return(mcxGEhash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingOAThash ( const void* ting ) { return(mcxOAThash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingELFhash ( const void* ting ) { return(mcxELFhash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingFNVhash ( const void* ting ) { return(mcxFNVhash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 (*mcxTingHFieByName(const char* id))(const void* ting) { if (!strcmp(id, "dp")) return mcxTingDPhash ; else if (!strcmp(id, "bj")) return mcxTingBJhash ; else if (!strcmp(id, "elf")) return mcxTingELFhash ; else if (!strcmp(id, "djb")) return mcxTingDJBhash ; else if (!strcmp(id, "bdb")) return mcxTingBDBhash ; else if (!strcmp(id, "ge")) return mcxTingGEhash ; else if (!strcmp(id, "oat")) return mcxTingOAThash ; else if (!strcmp(id, "svd")) return mcxTingSvDhash ; else if (!strcmp(id, "svd2")) return mcxTingSvD2hash ; else if (!strcmp(id, "svd1")) return mcxTingSvD1hash ; else if (!strcmp(id, "ct")) return mcxTingCThash ; else if (!strcmp(id, "fnv")) return mcxTingFNVhash ; else return NULL ; } u32 mcxTingSvDhash ( const void* ting ) { return(mcxSvDhash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingSvD2hash ( const void* ting ) { return(mcxSvD2hash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingSvD1hash ( const void* ting ) { return(mcxSvD1hash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } u32 mcxTingHash ( const void* ting ) { return(mcxDPhash(((mcxTing*) ting)->str, ((mcxTing*) ting)->len)) ; } /* Fails only for memory reason */ mcxstatus mcxTingTackc ( mcxTing* ting , unsigned char c ) { if (!ting || !mcxTingEnsure(ting, ting->len+1)) return STATUS_FAIL ; ting->str[ting->len] = c ; ting->str[ting->len+1] = '\0' ; ting->len += 1 ; return STATUS_OK ; } /* Fails if last char is not the same as c */ mcxstatus mcxTingTickc ( mcxTing* ting , unsigned char c ) { if (!ting || !ting->len) return STATUS_FAIL ; if ((unsigned char) ting->str[ting->len-1] == c) { mcxTingShrink(ting, -1) ; return STATUS_OK ; } return STATUS_FAIL ; } mcl-12-135/util/getpagesize.h0000644000402500021140000000154010642147132012726 00000000000000/* Emulate getpagesize on systems that lack it. */ #ifndef HAVE_GETPAGESIZE #if !defined getpagesize && defined __BEOS__ # include # define getpagesize() B_PAGE_SIZE #endif #ifdef HAVE_UNISTD_H # include #endif #if !defined getpagesize && defined _SC_PAGESIZE # if !(defined VMS && __VMS_VER < 70000000) # define getpagesize() sysconf (_SC_PAGESIZE) # endif #endif #if !defined getpagesize && defined VMS # ifdef __ALPHA # define getpagesize() 8192 # else # define getpagesize() 512 # endif #endif #ifndef getpagesize # include # ifdef EXEC_PAGESIZE # define getpagesize() EXEC_PAGESIZE # else # ifdef NBPG # ifndef CLSIZE # define CLSIZE 1 # endif # define getpagesize() (NBPG * CLSIZE) # else # ifdef NBPC # define getpagesize() NBPC # endif # endif # endif #endif #endif /* not HAVE_GETPAGESIZE */ mcl-12-135/util/err.c0000644000402500021140000001677711147246016011226 00000000000000/* (C) Copyright 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009 Stijn van Dongen * * This file is part of tingea. You can redistribute and/or modify tingea * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with tingea, in the file COPYING. */ #include #include #include #include #include #include #include "err.h" #include "types.h" #include "compile.h" /* TODO unify code. */ FILE* mcxLogFILE = NULL; static FILE* mcx_fperr = NULL; static FILE* mcx_fpwarn = NULL; static FILE* mcx_fptell = NULL; mcxbits mcxLogLevel = 0; void mcx_err_f ( FILE* fp , const char *caller , const char *fmt , va_list *args ) { if (caller) fprintf(fp, "___ [%s] ", caller) ; else fprintf(fp, "___ ") ; vfprintf(fp, fmt, *args) ; fprintf(fp, "\n") ; return ; } void mcxFail ( void ) { while(1) sleep(1000) ; } void mcxDie ( int status , const char* caller , const char* fmt , ... ) { va_list args ; va_start(args, fmt) ; mcx_err_f(stderr, caller, fmt, &args) ; va_end(args) ; mcxExit(status) ; } void mcxExit ( int val ) { exit(val) ; } void mcxErrorFile ( FILE* fp ) { mcx_fperr = fp ; } void mcxTellFile ( FILE* fp ) { mcx_fptell = fp ; } void mcxLogSetFILE ( FILE* fp , mcxbool ENV_LOG ) { mcxLogFILE = fp ; if (ENV_LOG) mcxLogLevelSetByString(getenv("TINGEA_LOG_TAG")) ; } FILE* mcxLogGetFILE ( void ) { return mcxLogFILE ? mcxLogFILE : stderr ; } void mcxWarnFile ( FILE* fp ) { mcx_fpwarn = fp ; } void mcxErrf ( FILE* fp , const char *caller , const char *fmt , ... ) { va_list args ; va_start(args, fmt) ; mcx_err_f(fp, caller, fmt, &args) ; va_end(args) ; } void mcxErr ( const char *caller , const char *fmt , ... ) { FILE* fp = mcx_fperr ? mcx_fperr : stderr ; va_list args ; va_start(args, fmt) ; mcx_err_f(fp, caller, fmt, &args) ; va_end(args) ; } void mcxWarn ( const char *caller , const char *fmt , ... ) { va_list args ; if (caller) fprintf(stderr, "[%s] ", caller) ; va_start(args, fmt) ; vfprintf(stderr, fmt, args) ; fprintf(stderr, "\n") ; va_end(args) ; return ; } static void mcx_write_f ( FILE* fp , const char *caller , const char *fmt , va_list *args , ... ) { if (caller) fprintf(fp, "[%s] ", caller) ; vfprintf(fp, fmt, *args) ; fprintf(fp, "\n") ; return ; } void mcxTellf ( FILE* fp , const char *caller , const char *fmt , ... ) { va_list args ; va_start(args, fmt) ; mcx_write_f(fp, caller, fmt, &args) ; va_end(args) ; } void mcxTell ( const char *caller , const char *fmt , ... ) { FILE* fp = mcx_fptell ? mcx_fptell : stderr ; va_list args ; va_start(args, fmt) ; mcx_write_f(fp, caller, fmt, &args) ; va_end(args) ; } struct mcx_log_class_annotated { int type ; mcxbits class ; mcxbits low ; } ; struct mcx_log_class_annotated mcx_log_class_list[] = { { 'd' , MCX_LOG_DATA , MCX_LOG_DATA0 } , { 'f' , MCX_LOG_FUNC , MCX_LOG_FUNC0 } , { 'g' , MCX_LOG_GAUGE , MCX_LOG_GAUGE } , { 'i' , MCX_LOG_IO , MCX_LOG_IO } , { 'm' , MCX_LOG_MON , MCX_LOG_MON0 } , { 'n' , MCX_LOG_NETWORK , MCX_LOG_NETWORK } , { 'p' , MCX_LOG_IP , MCX_LOG_IP } , { 't' , MCX_LOG_THREAD , MCX_LOG_THREAD } , { 'A' , MCX_LOG_SLOT1 , MCX_LOG_SLOT1 } , { 'B' , MCX_LOG_SLOT2 , MCX_LOG_SLOT2 } , { 'C' , MCX_LOG_SLOT3 , MCX_LOG_SLOT3 } } ; mcxbool mcxLogGet ( mcxbits level_programmer ) { dim i ; mcxbool ok = FALSE ; for (i=0;i= (mcxLogLevel & mcx_log_class_list[i].class)) ) ; if (mcxLogLevel & MCX_LOG_OR) { if (ok) return TRUE ; } else if (!ok) /* AND, implicit or not */ return FALSE ; } return ok ; } void mcxLog2 ( const char* tag , const char* fmt , ... ) { FILE* fp = mcxLogFILE ? mcxLogFILE : stderr ; va_list args ; va_start(args, fmt) ; mcx_write_f(fp, tag, fmt, &args) ; va_end(args) ; } void mcxLog ( mcxbits level_programmer , const char* tag , const char* fmt , ... ) { FILE* fp = mcxLogFILE ? mcxLogFILE : stderr ; va_list args ; mcxbool ok = FALSE ; if (!mcxLogLevel || (mcxLogLevel & MCX_LOG_NULL)) return ; ok = mcxLogGet(level_programmer) ; if (ok) { va_start(args, fmt) ; mcx_write_f(fp, tag, fmt, &args) ; va_end(args) ; } } /* dependency with mcx_level_setnum */ static int mcx_level_parsenum ( int T , int c ) { int r = -1 ; if (c == 'x') r = 0 ; else if (c >= '1' && c <= '9') r = ((int) c) - '0' ; else mcxErr ( "mcxLogLevelSetByString" , "%c axis level [%c] parse error" , (int) T , (int) c ) ; return r ; } /* covers val -1 mcx_level_parsenum case */ static int mcx_level_setnum ( int val , mcxbits CLASS , mcxbits CLASS0 ) { mcxbits new = 0 ; if (val > 0) { new = (1 << (val-1)) * CLASS0 /* below we know that new is simply too high: e.g. new == 6 * but there are only 5 classes. * We then set new to the highest class member */ ; if (!(new & CLASS)) new = CLASS ^ (CLASS >> 1) ^ (CLASS0 >> 1) ; } return new ; } volatile sig_atomic_t mcxLogSigGuard = 0; void mcxLogSig ( int sig ) { mcxLogSigGuard = sig ; } void mcxLogLevelSetByString ( const char* str ) { dim i ; u8 str0 = str ? str[0] : 0 ; if (!str) return ; if (str0 == 'x') mcxLogLevel = 0 ; else if (str0 == '1') mcxLogLevel = MCX_LOG_VERBOSE ; else if (str0 == '8') mcxLogLevel = MCX_LOG_TERSE ; else if (str0 == '9') mcxLogLevel = MCX_LOG_TERSER ; if (strchr(str, 'V')) mcxLogLevel |= MCX_LOG_OR ; if (strchr(str, '#')) mcxLogLevel |= MCX_LOG_NULL ; if (strchr(str, '%')) BIT_OFF(mcxLogLevel, MCX_LOG_NULL) ; for (i=0;i header file. */ #undef HAVE_FLOAT_H /* Define to 1 if you have the `floor' function. */ #undef HAVE_FLOOR /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H /* Define to 1 if you have the `m' library (-lm). */ #undef HAVE_LIBM /* Define to 1 if you have the header file. */ #undef HAVE_LIMITS_H /* Define to 1 if your system has a GNU libc compatible `malloc' function, and to 0 otherwise. */ #undef HAVE_MALLOC /* Define to 1 if you have the header file. */ #undef HAVE_MALLOC_H /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H /* Define to 1 if you have the `memset' function. */ #undef HAVE_MEMSET /* Define to 1 if you have the `pow' function. */ #undef HAVE_POW /* Define if you have POSIX threads libraries and header files. */ #undef HAVE_PTHREAD /* Define to 1 if you have the `rint' function. */ #undef HAVE_RINT /* Define to 1 if you have the `sqrt' function. */ #undef HAVE_SQRT /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H /* Define to 1 if you have the `strchr' function. */ #undef HAVE_STRCHR /* Define to 1 if you have the header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H /* Define to 1 if you have the `strpbrk' function. */ #undef HAVE_STRPBRK /* Define to 1 if you have the `strstr' function. */ #undef HAVE_STRSTR /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* Define if va_copy() macro exists (and no fallback implementation is required) */ #undef HAVE_VA_COPY /* Define to 1 if you have the `vprintf' function. */ #undef HAVE_VPRINTF /* output citation reference (default yes) */ #undef MCL_HELPFUL_REMINDER /* Name of package */ #undef PACKAGE /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT /* Define to the full name of this package. */ #undef PACKAGE_NAME /* Define to the full name and version of this package. */ #undef PACKAGE_STRING /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME /* Define to the home page for this package. */ #undef PACKAGE_URL /* Define to the version of this package. */ #undef PACKAGE_VERSION /* Define to the necessary symbol if this constant uses a non-standard name on your system. */ #undef PTHREAD_CREATE_JOINABLE /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Version number of package */ #undef VERSION /* Optional va_copy() implementation activation */ #ifndef HAVE_VA_COPY #define va_copy(d, s) __VA_COPY_USE(d, s) #define HAVE_VA_COPY 1 #endif /* Define to id of used va_copy() implementation */ #undef __VA_COPY_USE /* Define to empty if `const' does not conform to ANSI C. */ #undef const /* Define to rpl_malloc if the replacement function should be used. */ #undef malloc /* Define to `unsigned int' if does not define. */ #undef size_t mcl-12-135/LICENSE0000644000402500021140000000531011164424410010272 00000000000000 This program is free software; you can redistribute it and/or modify it under the terms of version 3 of the GNU General Public License as published by the Free Software Foundation. It should be shipped with MCL in the top level directory as the file COPYING. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License, version 2, along with this program in the file COPYING; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -*- If you use MCL software in your scientific research, please cite it appropriately as you would cite a journal or a book. This includes papers published in regular or electronic journals, usage of MCL as a back-end to a database that is accessible via a web interface, or inclusion of MCL in a larger framework of software that is distributed for other people for scientific use. Include one of the following citations: Stijn van Dongen, Graph Clustering by Flow Simulation. PhD thesis, University of Utrecht, May 2000. ( http://www.library.uu.nl/digiarchief/dip/diss/1895620/inhoud.htm ) Stijn van Dongen. A cluster algorithm for graphs. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000. ( http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z ) and proper attributions to mcl's home http://micans.org/mcl/ and its author, Stijn van Dongen. The publications listed above can be retrieved from the preceding URL. If you are using some wrapper around mcl such as the blast module or the tribe module, you are asked to act likewise. For biological applications, it is appropriate to cite, additionally, the reference article for the first application of mcl to biological data: Enright A.J., Van Dongen S., Ouzounis C.A. An efficient algorithm for large-scale detection of protein families, Nucleic Acids Research 30(7):1575-1584 (2002). -*- For copyright notices of source files, header files, documentation files, and build files, consult the files themselves. The largest part of MCL is held copyright by Stijn van Dongen. The build part is copyright by Joost van Baal. util/getpagesize.h is copyright by the Free Software Foundation. The Ziggurat method in util/rand.h is copyright by Jochen Voss. mcl-12-135/mkinstalldirs0000755000402500021140000000141707255772655012126 00000000000000#! /bin/sh # mkinstalldirs --- make directory hierarchy # Author: Noah Friedman # Created: 1993-05-16 # Public domain # $Id mkinstalldirs,v 1.13 1999/01/05 03:18:55 bje Exp $ # $Id: mkinstalldirs,v 1.1 2001/03/21 00:28:29 vanbaal Exp $ errstatus=0 for file do set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` shift pathcomp= for d do pathcomp="$pathcomp$d" case "$pathcomp" in -* ) pathcomp=./$pathcomp ;; esac if test ! -d "$pathcomp"; then echo "mkdir $pathcomp" mkdir "$pathcomp" || lasterr=$? if test ! -d "$pathcomp"; then errstatus=$lasterr fi fi pathcomp="$pathcomp/" done done exit $errstatus # mkinstalldirs ends here mcl-12-135/testing/0000777000402500021140000000000011756465226011050 500000000000000mcl-12-135/testing/setops/0000777000402500021140000000000011756465226012365 500000000000000mcl-12-135/testing/setops/Makefile.in0000644000402500021140000002232411754271040014334 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/include/include.am subdir = testing/setops ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir) LDADD = ../mcl/libmcl.a ../clew/libclew.a ../gryphon/libgryphon.a ../impala/libimpala.a ../../util/libutil.a AM_LDFLAGS = -lm this = set-test.sh EXTRA_DIST = $(this) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/include/include.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu testing/setops/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu testing/setops/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am # AM_LDFLAGS = -lm -lunwind -ltcmalloc # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/testing/setops/set-test.sh0000755000402500021140000000177211162712545014405 00000000000000#!/usr/local/bin/bash # mcxminusmeet # modes: 1 overwrite matrix vector (reinstate later) # 2 right rather than left # 4 check # 8 use mclvBinary # 16 dump final matrix (should be identical) # 32 use dispatching meet implementation set -e shmx=../../src/shmx export MCLXIODIGITS=8 export TINGEA_LOG_TAG=x if let $(( $# < 5 )); then echo "need modes nodes1 edges1 nodes2 edges2 arguments" $shmx/mcxminusmeet false fi modes=$1 nodes1=$2 edges1=$3 nodes2=$4 edges2=$5 $shmx/mcxrand -gen $nodes1 -add $edges1 | $shmx/mcx alter -canonical 10 -o rn1.mci $shmx/mcxrand -gen $nodes2 -add $edges2 | $shmx/mcx alter -canonical 10 -o rn2.mci # valgrind --show-reachable=yes --leak-check=full $shmx/mcxminusmeet $modes rn1.mci rn2.mci if let $(( $modes & 16 )); then echo "-->" $(mcxi /out.mmm lm /rn1.mci lm -1 mul add /- wm | mcxdump | wc -l) "<--" else echo "--> matrix not output - no identity check <--" fi mcl-12-135/testing/setops/Makefile.am0000644000402500021140000000031111175134025014311 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.3 2007-04-19 16:06:12 flux Exp $ include $(top_srcdir)/include/include.am this = set-test.sh EXTRA_DIST = $(this) mcl-12-135/testing/stream/0000777000402500021140000000000011756465226012343 500000000000000mcl-12-135/testing/stream/abc-pairs.pl0000755000402500021140000000121211101712026014425 00000000000000#!/usr/local/bin/perl use strict; use Getopt::Long; my $cmode = 'extend'; my $rmode = 'extend'; my $etcai = 0; if (! GetOptions ( "cmode=s" => \$cmode , "rmode=s" => \$rmode , "etcai" => \$etcai ) ) { print STDERR "option processing failed\n"; exit(1); } my $cstrict = $cmode eq 'restrict'; my $rstrict = $rmode eq 'restrict'; my $ai = 0; while (<>) { chomp; my @F = split; my $l = $etcai ? $ai : shift @F; next if $cstrict && !$etcai && lc($l) ne $l; my @f = grep { !$rstrict || lc($_) eq $_ } @F; next if $etcai && !@f; $ai++; for (@f) { print "$l\t$_\n"; } } mcl-12-135/testing/stream/abc-test.sh0000755000402500021140000000760511142061353014306 00000000000000#!/usr/local/bin/bash export MCLXIOVERBOSITY=2 # 2=forced-silent 8=forced-verbose export TINGEA_LOG_TAG=x set -e # set -x load='mx/mcxload' NUM=5 have_arg=$# REPEAT=1 if let $(($#)); then REPEAT=$1 fi function out { s=$? if let $(($s)); then echo "error occurred! in cmode=$cmode rmode=$rmode" elif ! let $(($have_arg)); then rm -f xxx.* yyy.* fi } trap out SIGTERM # EXIT for ((q=0;$q<$REPEAT;q=$(($q+1)))); do echo "--- $q ---" for rmode in restrict extend; do for cmode in restrict extend; do for ((i=1;$i<=$NUM;i=$(($i+1)))); do N=$((20*$i)) # generate N lines k=$((2*$i)) # with k s=$((1*$i)) # with s sdev echo "generate $N $k $s" stem="xxx.$cmode.$rmode" # generate etc file. ./abc.pl $N $k $s > $stem.raw # load it, with various tab modes. $load -etc $stem.raw \ -$rmode-tabr az.tab -write-tabr $stem.tabr \ -$cmode-tabc az.tab -write-tabc $stem.tabc \ -o $stem.mci > /dev/null # dump it with standard mcxdump. mcxdump -imx $stem.mci -tabr $stem.tabr -tabc $stem.tabc --no-values --lazy-tab | sort > $stem.dump.mci # dump the original input under the same extend/restrict conditions. ./abc-pairs.pl --rmode=$rmode --cmode=$cmode $stem.raw | sort -u > $stem.dump.raw # reload the loaded/dumped input with strict tabs; output is not further tested. $load --stream-split -abc $stem.dump.mci -strict-tabr $stem.tabr -strict-tabc $stem.tabc -o /dev/null > /dev/null # diff the abc-pairs and mcxload outputs. if diff -q $stem.dump.raw $stem.dump.mci; then echo "/ $rmode $cmode $i ok" else echo "/ $rmode $cmode $i error" false fi ## ## now, similarly for etc-ai mode ## rawfile=yyy.$rmode.raw cp $stem.raw $rawfile stem="yyy.$rmode" $load -etc-ai $rawfile \ -$rmode-tabr az.tab -write-tabr $stem.tabr \ -o $stem.mci > /dev/null mcxdump -imx $stem.mci -tabr $stem.tabr --no-values --lazy-tab | sort > $stem.dump.mci ./abc-pairs.pl --etcai --rmode=$rmode $rawfile | sort -u > $stem.dump.raw if diff -q $stem.dump.raw $stem.dump.mci; then echo "/ etcai $rmode $i ok" else echo "/ etcai $rmode $i error" false fi done # Originally we had something here to check symmetric load with etc. done done done # for rmode in restrict extend; do # for cmode in restrict extend; do # # for ((i=1;$i<=$NUM;i=$(($i+1)))); do # # N=$((100*$i)) # # stem="yyy" # ./abc.pl $N 1 0 > $stem.raw # # $load -abc $stem.raw \ # -$rmode-tabr az.tab -write-tabr $stem.rtab \ # -$cmode-tabc az.tab -write-tabc $stem.ctab \ # -o $stem.mci > /dev/null # mcxdump -imx $stem.mci -tabr $stem.rtab -tabc $stem.ctab --no-values | sort > $stem.dump.mci # $load -abc $stem.dump.mci -strict-tabc $stem.ctab -strict-tabr $stem.rtab -o /dev/null # ./abc-pairs.pl --rmode=$rmode --cmode=$cmode $stem.raw | sort -u > $stem.dump.raw # if diff -q $stem.dump.raw $stem.dump.mci; then # echo "/ $rmode $cmode $i ok" # else # echo "/ $rmode $cmode $i error" # false # fi # # done # # $load -abc $stem.raw \ # -$rmode-tab az.tab -write-tab $stem.dtab \ # -o $stem.dci > /dev/null # mcxdump -imx $stem.dci -tab $stem.dtab --no-values | sort > $stem.dump.dci # $load -abc $stem.dump.dci -strict-tab $stem.dtab -o /dev/null > /dev/null # ./abc-pairs.pl --rmode=$rmode --cmode=$rmode $stem.raw | sort -u > $stem.dump.daw # if diff -q $stem.dump.daw $stem.dump.dci; then # echo "= $rmode $i ok" # else # echo "= $rmode $i error" # false # fi # # done # done mcl-12-135/testing/stream/Makefile.in0000644000402500021140000002236011754271040014312 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/include/include.am subdir = testing/stream ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir) LDADD = ../mcl/libmcl.a ../clew/libclew.a ../gryphon/libgryphon.a ../impala/libimpala.a ../../util/libutil.a AM_LDFLAGS = -lm this = abc-pairs.pl abc-test.sh abc.pl az.tab EXTRA_DIST = $(this) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/include/include.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu testing/stream/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu testing/stream/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am # AM_LDFLAGS = -lm -lunwind -ltcmalloc # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/testing/stream/az.tab0000644000402500021140000000025410732226256013351 000000000000000 a 1 b 2 c 3 d 4 e 5 f 6 g 7 h 8 i 9 j 10 k 11 l 12 m 13 n 14 o 15 p 16 q 17 r 18 s 19 t 20 u 21 v 22 w 23 x 24 y 25 z mcl-12-135/testing/stream/Makefile.am0000644000402500021140000000034511101342235014267 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.3 2007-04-19 16:06:12 flux Exp $ include $(top_srcdir)/include/include.am this = abc-pairs.pl abc-test.sh abc.pl az.tab EXTRA_DIST = $(this) mcl-12-135/testing/stream/abc.pl0000755000402500021140000000064411101342454013325 00000000000000#!/usr/local/bin/perl -w use strict; my ($N, $k, $sd) = @ARGV; $N = 100 unless defined($N); $k = 1+int(($N/10)) unless defined $k; $sd = $k-1 unless defined $sd; my @w = map { chr($_) } (ord('a')..ord('z'), ord('A')..ord('Z')); while ($N-- > 0) { my $d = $sd - int(rand(2*$sd)); my $l = $k + $d; print $w[int(rand(@w))]; while ($l-- > 0) { print "\t", $w[int(rand(@w))]; } print "\n"; } mcl-12-135/testing/blast/0000777000402500021140000000000011756465226012155 500000000000000mcl-12-135/testing/blast/blastfile90000644000402500021140000045776710740707737014102 00000000000000# BLASTP 2.2.6 [Apr-09-2003] # Query: HINF-KW2-01-000389 HI0410 transcriptional regulatory protein (tyrR) # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score HINF-KW2-01-000389 HINF-KW2-01-000389 100.00 318 0 0 1 318 1 318 0.0 629.0 # BLASTP 2.2.6 [Apr-09-2003] # Query: HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score HINF-KW2-01-000704 HINF-KW2-01-000704 100.00 208 0 0 1 208 1 208 2e-113 396.7 HINF-KW2-01-000704 SYNE-PCC-01-001575 36.87 198 121 2 5 202 7 200 2.6e-35 137.5 HINF-KW2-01-000704 SYNE-PCC-01-001160 31.03 203 135 1 5 202 17 219 1.0e-31 125.6 HINF-KW2-01-000704 SYNE-PCC-01-000608 31.60 212 132 2 3 201 2 213 1.8e-31 124.8 HINF-KW2-01-000704 SYNE-PCC-01-001075 30.88 217 132 3 5 206 8 221 1.2e-24 102.1 HINF-KW2-01-000704 SYNE-PCC-01-002731 26.67 210 125 6 2 196 5 200 1.6e-16 75.10 HINF-KW2-01-000704 SYNE-PCC-01-001039 28.48 165 94 3 48 201 68 219 5.2e-15 70.09 HINF-KW2-01-000704 SYNE-PCC-01-002635 25.79 221 135 6 1 196 52 268 2.2e-13 64.70 HINF-KW2-01-000704 SYNE-PCC-01-002672 28.41 176 102 5 7 170 4 167 7.0e-12 59.69 HINF-KW2-01-000704 SYNE-PCC-01-002486 26.96 204 129 6 5 191 1 201 7.0e-12 59.69 HINF-KW2-01-000704 SYNE-PCC-01-001306 30.95 126 83 3 36 159 47 170 3.5e-11 57.38 HINF-KW2-01-000704 SYNE-PCC-01-002489 25.73 171 119 3 7 169 4 174 4.5e-11 57.00 HINF-KW2-01-000704 SYNE-PCC-01-001461 27.98 218 124 9 6 196 3 214 1.3e-10 55.45 HINF-KW2-01-000704 HINF-KW2-01-001671 28.44 211 117 6 5 191 1 201 1.3e-10 55.45 HINF-KW2-01-000704 SYNE-PCC-01-000242 25.51 196 123 4 6 197 4 180 3.8e-10 53.91 HINF-KW2-01-000704 SYNE-PCC-01-000800 31.25 112 73 2 6 115 419 528 1.9e-09 51.60 HINF-KW2-01-000704 SYNE-PCC-01-002033 30.09 113 76 3 9 121 1 110 2.5e-09 51.22 HINF-KW2-01-000704 SYNE-PCC-01-000414 23.22 211 133 5 7 191 14 221 3.2e-09 50.83 HINF-KW2-01-000704 HINF-KW2-01-000816 26.79 209 124 8 6 191 3 205 5.5e-09 50.06 HINF-KW2-01-000704 SYNE-PCC-01-002951 43.40 53 30 0 145 197 8 60 9.4e-09 49.29 HINF-KW2-01-000704 SYNE-PCC-01-001437 27.87 122 76 4 6 120 32 148 1.6e-08 48.52 HINF-KW2-01-000704 HINF-KW2-01-001345 26.27 118 82 3 6 121 4 118 8.0e-08 46.21 HINF-KW2-01-000704 SYNE-PCC-01-000511 43.14 51 29 0 149 199 309 359 1.4e-07 45.44 HINF-KW2-01-000704 SYNE-PCC-01-000518 29.41 119 80 2 5 121 1 117 1.8e-07 45.05 HINF-KW2-01-000704 HINF-KW2-01-000863 26.61 109 77 3 6 114 5 110 3.0e-07 44.28 HINF-KW2-01-000704 SYNE-PCC-01-002879 24.56 114 82 2 7 118 720 831 4.0e-07 43.90 HINF-KW2-01-000704 SYNE-PCC-01-002618 23.33 150 110 3 6 152 13 160 4.0e-07 43.90 HINF-KW2-01-000704 SYNE-PCC-01-000523 28.57 119 78 3 5 121 1 114 5.2e-07 43.51 HINF-KW2-01-000704 SYNE-PCC-01-002221 22.81 114 85 3 6 118 4 115 8.8e-07 42.74 HINF-KW2-01-000704 SYNE-PCC-01-002086 24.79 117 84 2 7 121 30 144 8.8e-07 42.74 HINF-KW2-01-000704 SYNE-PCC-01-002617 23.81 126 87 3 1 123 1186 1305 2.6e-06 41.20 # BLASTP 2.2.6 [Apr-09-2003] # Query: HINF-KW2-01-000816 HI0837 response regulator (cpxR) # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score HINF-KW2-01-000816 HINF-KW2-01-000816 100.00 227 0 0 1 227 1 227 7e-109 382.1 HINF-KW2-01-000816 SYNE-PCC-01-002033 40.99 222 127 4 6 223 1 222 2.2e-30 121.3 HINF-KW2-01-000816 HINF-KW2-01-000863 34.67 225 143 3 3 223 5 229 1.9e-29 118.2 HINF-KW2-01-000816 SYNE-PCC-01-000414 36.09 230 139 5 1 223 11 239 1.1e-26 109.0 HINF-KW2-01-000816 SYNE-PCC-01-001437 31.30 230 147 3 3 223 32 259 1.5e-26 108.6 HINF-KW2-01-000816 SYNE-PCC-01-001461 34.35 230 145 3 1 225 1 229 2.5e-26 107.8 HINF-KW2-01-000816 HINF-KW2-01-001345 30.36 224 147 3 3 223 4 221 5.2e-24 100.1 HINF-KW2-01-000816 SYNE-PCC-01-002672 35.14 185 113 3 1 178 1 185 8.9e-24 99.37 HINF-KW2-01-000816 SYNE-PCC-01-002486 33.78 225 142 3 3 225 2 221 3.4e-23 97.44 HINF-KW2-01-000816 HINF-KW2-01-001671 31.11 225 143 4 3 225 2 216 9.8e-23 95.90 HINF-KW2-01-000816 SYNE-PCC-01-000242 29.78 225 150 4 3 225 4 222 3.2e-21 90.89 HINF-KW2-01-000816 SYNE-PCC-01-002086 43.33 120 64 2 1 116 27 146 3.5e-20 87.43 HINF-KW2-01-000816 SYNE-PCC-01-002731 41.18 119 66 2 4 118 10 128 1.5e-18 82.03 HINF-KW2-01-000816 SYNE-PCC-01-000523 31.75 189 122 3 3 184 2 190 1.9e-18 81.65 HINF-KW2-01-000816 SYNE-PCC-01-000518 32.78 180 113 3 3 178 2 177 1.9e-18 81.65 HINF-KW2-01-000816 SYNE-PCC-01-002635 38.40 125 72 3 4 123 58 182 2.9e-14 67.78 HINF-KW2-01-000816 SYNE-PCC-01-000877 27.50 200 139 3 25 223 27 221 2.9e-14 67.78 HINF-KW2-01-000816 SYNE-PCC-01-002873 39.09 110 63 2 2 107 925 1034 8.3e-14 66.24 HINF-KW2-01-000816 SYNE-PCC-01-002873 29.51 122 77 2 3 115 772 893 6.8e-08 46.59 HINF-KW2-01-000816 SYNE-PCC-01-001306 37.90 124 73 2 4 123 20 143 1.9e-13 65.08 HINF-KW2-01-000816 SYNE-PCC-01-001306 33.98 103 63 3 4 101 742 844 1.4e-08 48.91 HINF-KW2-01-000816 SYNE-PCC-01-002879 32.41 145 87 4 2 137 718 860 2.1e-12 61.62 HINF-KW2-01-000816 SYNE-PCC-01-002489 35.94 128 76 2 1 122 1 128 2.7e-12 61.23 HINF-KW2-01-000816 SYNE-PCC-01-001133 35.40 113 69 2 4 112 11 123 3.5e-12 60.85 HINF-KW2-01-000816 SYNE-PCC-01-002788 30.25 119 79 2 1 115 4 122 1.9e-10 55.07 HINF-KW2-01-000816 SYNE-PCC-01-001132 37.27 110 63 3 3 107 631 739 1.9e-10 55.07 HINF-KW2-01-000816 SYNE-PCC-01-002618 35.59 118 72 2 2 115 12 129 2.5e-10 54.68 HINF-KW2-01-000816 SYNE-PCC-01-000800 39.29 112 62 3 3 109 419 529 1.2e-09 52.37 HINF-KW2-01-000816 SYNE-PCC-01-002617 30.00 110 72 2 3 107 1191 1300 3.6e-09 50.83 HINF-KW2-01-000816 SYNE-PCC-01-002221 29.31 116 75 5 1 111 2 115 6.8e-08 46.59 HINF-KW2-01-000816 SYNE-PCC-01-001075 29.19 185 114 9 4 178 11 188 5.8e-07 43.51 HINF-KW2-01-000816 HINF-KW2-01-000704 28.16 103 71 2 27 128 35 135 8.4e-06 39.66 # BLASTP 2.2.6 [Apr-09-2003] # Query: HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score HINF-KW2-01-000863 HINF-KW2-01-000863 100.00 236 0 0 1 236 1 236 4e-130 452.6 HINF-KW2-01-000863 SYNE-PCC-01-000414 33.33 234 146 3 4 231 12 241 5.5e-32 126.7 HINF-KW2-01-000863 HINF-KW2-01-000816 34.67 225 143 3 5 229 3 223 1.2e-31 125.6 HINF-KW2-01-000863 SYNE-PCC-01-001437 32.77 238 141 5 5 231 32 261 5.1e-30 120.2 HINF-KW2-01-000863 HINF-KW2-01-001345 31.90 232 145 5 3 231 2 223 1.3e-25 105.5 HINF-KW2-01-000863 SYNE-PCC-01-002033 32.17 230 144 4 8 231 1 224 1.6e-23 98.60 HINF-KW2-01-000863 SYNE-PCC-01-000518 30.43 230 149 4 5 231 2 223 3.0e-22 94.36 HINF-KW2-01-000863 SYNE-PCC-01-001461 29.29 239 143 5 4 229 2 227 5.1e-22 93.59 HINF-KW2-01-000863 SYNE-PCC-01-002672 29.13 230 157 4 6 231 4 231 1.5e-21 92.05 HINF-KW2-01-000863 SYNE-PCC-01-000523 30.00 230 157 3 5 231 2 230 1.2e-18 82.42 HINF-KW2-01-000863 SYNE-PCC-01-000242 30.53 226 147 4 5 229 4 220 1.5e-18 82.03 HINF-KW2-01-000863 SYNE-PCC-01-002486 28.19 227 154 3 5 230 2 220 1.7e-17 78.57 HINF-KW2-01-000863 SYNE-PCC-01-000877 28.70 230 156 3 6 235 6 227 2.9e-17 77.80 HINF-KW2-01-000863 HINF-KW2-01-001671 26.61 233 156 5 5 236 2 220 1.1e-13 65.85 HINF-KW2-01-000863 SYNE-PCC-01-002086 34.48 116 73 1 6 118 30 145 3.7e-12 60.85 HINF-KW2-01-000863 SYNE-PCC-01-002635 36.13 119 72 2 6 120 58 176 2.4e-11 58.15 HINF-KW2-01-000863 SYNE-PCC-01-002731 30.25 119 80 1 6 121 10 128 4.1e-11 57.38 HINF-KW2-01-000863 SYNE-PCC-01-002489 32.06 131 80 3 6 131 4 130 4.1e-11 57.38 HINF-KW2-01-000863 SYNE-PCC-01-000800 29.84 124 84 1 5 125 419 542 5.9e-10 53.53 HINF-KW2-01-000863 SYNE-PCC-01-001132 32.43 111 70 2 5 112 631 739 2.2e-09 51.60 HINF-KW2-01-000863 SYNE-PCC-01-001306 31.03 116 77 1 6 118 20 135 2.9e-09 51.22 HINF-KW2-01-000863 SYNE-PCC-01-001306 29.13 103 69 1 6 104 742 844 8.0e-07 43.13 HINF-KW2-01-000863 SYNE-PCC-01-002618 31.20 125 82 2 5 125 13 137 2.5e-08 48.14 HINF-KW2-01-000863 SYNE-PCC-01-001575 26.98 126 88 3 2 124 5 129 2.5e-08 48.14 HINF-KW2-01-000863 SYNE-PCC-01-002879 27.03 148 97 2 6 150 720 859 3.2e-08 47.75 HINF-KW2-01-000863 SYNE-PCC-01-002873 29.36 109 74 1 5 110 926 1034 1.0e-06 42.74 HINF-KW2-01-000863 SYNE-PCC-01-002788 27.12 118 83 1 5 119 6 123 1.0e-06 42.74 # BLASTP 2.2.6 [Apr-09-2003] # Query: HINF-KW2-01-000960 HI0980 Hin recombinational enhancer binding protein (fis) # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score HINF-KW2-01-000960 HINF-KW2-01-000960 100.00 99 0 0 1 99 1 99 5.9e-53 194.5 # BLASTP 2.2.6 [Apr-09-2003] # Query: HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score HINF-KW2-01-001345 HINF-KW2-01-001345 100.00 231 0 0 1 231 1 231 2e-133 463.8 HINF-KW2-01-001345 SYNE-PCC-01-000414 38.60 228 131 5 5 223 14 241 4.7e-36 140.2 HINF-KW2-01-001345 SYNE-PCC-01-000518 36.56 227 138 3 4 226 2 226 1.0e-35 139.0 HINF-KW2-01-001345 SYNE-PCC-01-001437 38.72 235 128 6 2 223 30 261 3.0e-35 137.5 HINF-KW2-01-001345 SYNE-PCC-01-000242 34.68 222 142 2 1 221 1 220 9.7e-34 132.5 HINF-KW2-01-001345 SYNE-PCC-01-000523 33.62 232 141 3 4 224 2 231 1.8e-32 128.3 HINF-KW2-01-001345 SYNE-PCC-01-002033 37.23 231 132 5 7 227 1 228 5.3e-32 126.7 HINF-KW2-01-001345 SYNE-PCC-01-001461 32.44 225 145 3 4 221 3 227 1.9e-29 118.2 HINF-KW2-01-001345 HINF-KW2-01-000816 31.70 224 144 3 4 221 3 223 1.9e-29 118.2 HINF-KW2-01-001345 HINF-KW2-01-000863 32.33 232 144 5 2 223 3 231 5.5e-29 116.7 HINF-KW2-01-001345 SYNE-PCC-01-002672 31.03 232 147 3 5 225 4 233 4.7e-28 113.6 HINF-KW2-01-001345 HINF-KW2-01-001671 30.59 219 145 3 4 221 2 214 2.3e-27 111.3 HINF-KW2-01-001345 SYNE-PCC-01-002486 32.14 224 148 3 4 225 2 223 1.5e-26 108.6 HINF-KW2-01-001345 SYNE-PCC-01-000877 33.77 231 144 6 5 231 6 231 1.5e-26 108.6 HINF-KW2-01-001345 SYNE-PCC-01-002489 40.52 116 66 1 5 117 4 119 2.0e-18 81.65 HINF-KW2-01-001345 SYNE-PCC-01-002731 25.89 197 130 4 5 200 10 191 9.8e-18 79.34 HINF-KW2-01-001345 SYNE-PCC-01-002788 40.52 116 68 1 4 118 6 121 7.0e-16 73.17 HINF-KW2-01-001345 SYNE-PCC-01-001306 35.40 113 72 1 5 116 20 132 1.6e-15 72.02 HINF-KW2-01-001345 SYNE-PCC-01-001306 28.44 109 76 2 5 111 742 850 1.4e-08 48.91 HINF-KW2-01-001345 SYNE-PCC-01-002086 34.19 117 76 1 5 120 30 146 1.3e-14 68.94 HINF-KW2-01-001345 SYNE-PCC-01-002635 24.66 223 150 6 5 211 58 278 3.8e-14 67.40 HINF-KW2-01-001345 SYNE-PCC-01-001133 30.41 148 99 2 5 151 11 155 2.5e-13 64.70 HINF-KW2-01-001345 SYNE-PCC-01-002873 27.50 160 99 4 4 162 926 1069 7.2e-13 63.16 HINF-KW2-01-001345 SYNE-PCC-01-002873 23.49 166 111 4 3 152 771 936 6.3e-09 50.06 HINF-KW2-01-001345 SYNE-PCC-01-001132 34.62 104 67 1 4 106 631 734 9.4e-13 62.77 HINF-KW2-01-001345 SYNE-PCC-01-002221 37.61 117 69 3 1 115 1 115 2.7e-12 61.23 HINF-KW2-01-001345 SYNE-PCC-01-002618 28.57 126 86 2 4 128 13 135 5.2e-11 57.00 HINF-KW2-01-001345 SYNE-PCC-01-000800 33.04 112 74 1 3 113 418 529 5.2e-11 57.00 HINF-KW2-01-001345 SYNE-PCC-01-002879 33.33 108 71 1 5 111 720 827 1.2e-10 55.84 HINF-KW2-01-001345 SYNE-PCC-01-000608 29.06 117 80 2 4 117 5 121 3.4e-10 54.30 HINF-KW2-01-001345 SYNE-PCC-01-002778 24.35 115 84 2 5 118 632 744 5.4e-08 46.98 HINF-KW2-01-001345 SYNE-PCC-01-002617 30.19 106 72 2 4 107 1191 1296 5.4e-08 46.98 HINF-KW2-01-001345 SYNE-PCC-01-001160 31.62 117 75 3 4 117 18 132 5.4e-08 46.98 HINF-KW2-01-001345 HINF-KW2-01-000704 26.27 118 82 3 4 118 6 121 9.2e-08 46.21 HINF-KW2-01-001345 SYNE-PCC-01-001575 29.51 122 81 3 2 120 6 125 1.6e-07 45.44 HINF-KW2-01-001345 SYNE-PCC-01-001075 31.34 134 81 5 4 128 9 140 2.7e-07 44.67 # BLASTP 2.2.6 [Apr-09-2003] # Query: HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score HINF-KW2-01-001671 HINF-KW2-01-001671 100.00 221 0 0 1 221 1 221 8e-126 438.3 HINF-KW2-01-001671 SYNE-PCC-01-002486 39.73 224 130 1 1 219 1 224 6.4e-43 162.9 HINF-KW2-01-001671 SYNE-PCC-01-000523 38.16 228 127 4 1 214 1 228 4.9e-35 136.7 HINF-KW2-01-001671 SYNE-PCC-01-000518 36.20 221 134 3 1 214 1 221 3.2e-34 134.0 HINF-KW2-01-001671 SYNE-PCC-01-002672 36.56 227 128 3 3 214 4 229 4.1e-34 133.7 HINF-KW2-01-001671 SYNE-PCC-01-001461 35.09 228 134 5 2 216 3 229 1.3e-32 128.6 HINF-KW2-01-001671 SYNE-PCC-01-000242 31.51 219 146 1 2 216 4 222 1.7e-32 128.3 HINF-KW2-01-001671 SYNE-PCC-01-002033 33.33 228 138 5 5 219 1 227 1.9e-31 124.8 HINF-KW2-01-001671 SYNE-PCC-01-001437 34.20 231 137 3 2 217 32 262 7.3e-31 122.9 HINF-KW2-01-001671 SYNE-PCC-01-000414 38.50 226 125 5 3 214 14 239 2.8e-30 120.9 HINF-KW2-01-001671 HINF-KW2-01-001345 30.59 219 145 3 2 214 4 221 2.2e-27 111.3 HINF-KW2-01-001671 HINF-KW2-01-000816 34.35 230 129 6 2 216 3 225 3.8e-27 110.5 HINF-KW2-01-001671 SYNE-PCC-01-000877 31.05 219 141 5 3 214 6 221 6.9e-21 89.74 HINF-KW2-01-001671 HINF-KW2-01-000863 27.04 233 155 5 2 220 5 236 4.6e-17 77.03 HINF-KW2-01-001671 SYNE-PCC-01-002731 27.72 202 129 5 3 202 10 196 1.3e-16 75.48 HINF-KW2-01-001671 SYNE-PCC-01-001306 34.82 112 68 2 24 130 41 152 8.7e-16 72.79 HINF-KW2-01-001671 SYNE-PCC-01-001306 31.58 114 74 2 4 113 742 855 6.9e-13 63.16 HINF-KW2-01-001671 SYNE-PCC-01-001133 32.76 116 70 3 3 113 11 123 3.6e-14 67.40 HINF-KW2-01-001671 SYNE-PCC-01-002879 31.37 102 68 1 3 102 720 821 2.0e-12 61.62 HINF-KW2-01-001671 SYNE-PCC-01-002788 27.97 118 81 2 2 116 6 122 7.6e-12 59.69 HINF-KW2-01-001671 SYNE-PCC-01-002635 31.67 120 79 2 3 119 58 177 7.6e-12 59.69 HINF-KW2-01-001671 SYNE-PCC-01-002086 29.91 117 80 1 3 117 30 146 7.6e-12 59.69 HINF-KW2-01-001671 SYNE-PCC-01-000608 27.19 217 125 7 1 201 4 203 7.6e-12 59.69 HINF-KW2-01-001671 SYNE-PCC-01-001075 25.70 214 131 6 1 201 8 206 1.3e-11 58.92 HINF-KW2-01-001671 SYNE-PCC-01-002873 30.97 113 76 1 2 112 926 1038 2.2e-11 58.15 HINF-KW2-01-001671 SYNE-PCC-01-002873 28.83 111 70 3 2 104 772 881 2.5e-07 44.67 HINF-KW2-01-001671 SYNE-PCC-01-002489 29.55 132 85 3 3 126 4 135 1.1e-10 55.84 HINF-KW2-01-001671 SYNE-PCC-01-001160 25.12 207 134 5 1 201 17 208 1.4e-10 55.45 HINF-KW2-01-001671 HINF-KW2-01-000704 28.44 211 117 6 1 201 5 191 1.4e-10 55.45 HINF-KW2-01-001671 SYNE-PCC-01-002618 27.35 117 83 1 2 116 13 129 9.3e-10 52.76 HINF-KW2-01-001671 SYNE-PCC-01-000800 31.86 113 75 1 2 112 419 531 1.6e-09 51.99 HINF-KW2-01-001671 SYNE-PCC-01-002617 26.32 114 80 2 4 113 1192 1305 2.3e-08 48.14 HINF-KW2-01-001671 SYNE-PCC-01-002617 26.26 99 61 3 2 97 1035 1124 2.1e-06 41.59 HINF-KW2-01-001671 SYNE-PCC-01-001132 28.16 103 71 2 4 103 632 734 4.3e-07 43.90 # BLASTP 2.2.6 [Apr-09-2003] # Query: MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score MGEN-G37-01-000221 MGEN-G37-01-000221 100.00 1805 0 0 1 1805 1 1805 0.0 3217.2 MGEN-G37-01-000221 SCER-S28-01-000806 19.38 1063 680 28 35 973 731 1740 8.6e-34 136.0 MGEN-G37-01-000221 SCER-S28-01-000806 19.94 1073 692 34 642 1636 721 1704 8.1e-32 129.4 MGEN-G37-01-000221 SCER-S28-01-000806 17.81 1134 787 22 446 1512 660 1715 1.4e-31 128.6 MGEN-G37-01-000221 SCER-S28-01-000806 21.03 447 287 13 29 440 1326 1741 8.1e-16 76.26 MGEN-G37-01-000221 SCER-S28-01-002651 19.81 1080 703 33 34 1060 938 1907 4.1e-28 117.1 MGEN-G37-01-000221 SCER-S28-01-002651 19.93 1149 782 37 368 1467 867 1926 4.3e-25 107.1 MGEN-G37-01-000221 SCER-S28-01-002651 19.40 1299 816 47 101 1325 767 1908 5.6e-25 106.7 MGEN-G37-01-000221 SCER-S28-01-002651 17.43 855 599 21 719 1513 865 1672 6.6e-18 83.19 MGEN-G37-01-000221 SCER-S28-01-002651 20.30 591 361 20 1171 1751 748 1238 1.9e-09 55.07 MGEN-G37-01-000221 SCER-S28-01-002651 22.01 259 188 9 20 276 1636 1882 1.3e-08 52.37 MGEN-G37-01-000221 MPNE-M12-01-000474 24.25 730 469 32 186 881 270 949 1.5e-25 108.6 MGEN-G37-01-000221 MPNE-M12-01-000474 19.95 802 515 27 649 1377 263 1010 2.8e-16 77.80 MGEN-G37-01-000221 MPNE-M12-01-000474 21.42 551 350 18 23 541 472 971 6.9e-15 73.17 MGEN-G37-01-000221 MPNE-M12-01-000474 21.28 592 357 21 28 603 448 946 2.6e-14 71.25 MGEN-G37-01-000221 MPNE-M12-01-000474 20.96 477 265 19 1105 1493 393 845 5.6e-09 53.53 MGEN-G37-01-000221 MPNE-M12-01-000474 23.38 462 290 21 50 497 618 1029 2.1e-08 51.60 MGEN-G37-01-000221 MPNE-M12-01-000474 19.82 444 297 9 1185 1615 375 772 3.6e-08 50.83 MGEN-G37-01-000221 MPNE-M12-01-000474 19.05 357 235 13 25 378 671 976 2.6e-06 44.67 MGEN-G37-01-000221 MGEN-G37-01-000335 22.68 679 395 28 5 616 140 755 4.7e-24 103.6 MGEN-G37-01-000221 MGEN-G37-01-000335 21.23 697 451 25 194 836 76 728 6.0e-19 86.66 MGEN-G37-01-000221 MGEN-G37-01-000335 21.38 809 504 34 637 1387 5 739 3.9e-10 57.38 MGEN-G37-01-000221 MGEN-G37-01-000335 19.17 480 337 12 1156 1614 307 756 4.8e-08 50.45 MGEN-G37-01-000221 SCER-S28-01-001306 21.73 612 383 23 332 893 186 751 1.1e-15 75.87 MGEN-G37-01-000221 SCER-S28-01-001306 21.64 610 386 22 30 603 170 723 2.0e-14 71.63 MGEN-G37-01-000221 SCER-S28-01-001306 19.68 493 356 14 29 508 287 752 7.6e-14 69.71 MGEN-G37-01-000221 SCER-S28-01-001306 18.47 655 428 20 149 771 166 746 7.1e-12 63.16 MGEN-G37-01-000221 SCER-S28-01-001306 21.91 388 246 14 60 400 402 779 1.1e-09 55.84 MGEN-G37-01-000221 SCER-S28-01-001306 19.25 722 487 24 348 1046 119 767 1.5e-09 55.45 MGEN-G37-01-000221 SCER-S28-01-001306 18.51 686 443 20 948 1605 178 775 1.6e-08 51.99 MGEN-G37-01-000221 SYNE-PCC-01-000727 18.97 991 701 27 559 1481 103 1059 1.3e-13 68.94 MGEN-G37-01-000221 SYNE-PCC-01-000727 21.49 377 249 6 384 741 700 1048 2.9e-13 67.78 MGEN-G37-01-000221 SYNE-PCC-01-000727 19.30 658 430 21 197 791 345 964 7.1e-12 63.16 MGEN-G37-01-000221 SYNE-PCC-01-000727 19.56 547 333 20 42 572 586 1041 4.0e-07 47.37 MGEN-G37-01-000221 SYNE-PCC-01-001071 24.50 298 194 7 307 596 63 337 1.8e-10 58.54 MGEN-G37-01-000221 SYNE-PCC-01-001071 21.68 309 197 6 73 369 76 351 2.1e-08 51.60 MGEN-G37-01-000221 SYNE-PCC-01-001071 20.13 298 206 8 254 541 74 349 1.5e-06 45.44 MGEN-G37-01-000221 SYNE-PCC-01-001071 18.27 301 199 7 1215 1507 84 345 4.5e-06 43.90 MGEN-G37-01-000221 SCER-S28-01-001667 22.27 211 154 4 372 579 287 490 1.5e-09 55.45 MGEN-G37-01-000221 SCER-S28-01-001667 20.57 598 413 19 324 897 325 884 1.8e-07 48.52 MGEN-G37-01-000221 SCER-S28-01-001667 22.80 307 209 10 1083 1372 337 632 3.1e-07 47.75 MGEN-G37-01-000221 SCER-S28-01-001667 21.77 147 107 3 920 1061 323 466 3.4e-06 44.28 MGEN-G37-01-000221 SYNE-PCC-01-000943 20.97 248 152 8 295 537 77 285 3.4e-06 44.28 # BLASTP 2.2.6 [Apr-09-2003] # Query: MGEN-G37-01-000317 MG312 cytadherence accessory protein (hmw1) # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score MGEN-G37-01-000317 MGEN-G37-01-000317 100.00 1139 0 0 1 1139 1 1139 0.0 2171.7 MGEN-G37-01-000317 SCER-S28-01-000806 20.40 853 576 31 240 1025 750 1566 5.4e-10 56.22 MGEN-G37-01-000317 SCER-S28-01-000806 20.03 579 377 17 544 1076 750 1288 3.0e-08 50.45 # BLASTP 2.2.6 [Apr-09-2003] # Query: MGEN-G37-01-000335 MG328 conserved hypothetical protein # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score MGEN-G37-01-000335 MGEN-G37-01-000335 100.00 756 0 0 1 756 1 756 0.0 1415.2 MGEN-G37-01-000335 MPNE-M12-01-000474 27.99 711 376 21 153 756 352 1033 1.6e-55 206.8 MGEN-G37-01-000335 MPNE-M12-01-000474 26.36 626 401 10 131 733 286 874 2.3e-54 203.0 MGEN-G37-01-000335 MPNE-M12-01-000474 33.66 101 45 2 109 187 1 101 2.5e-08 50.06 MGEN-G37-01-000335 SCER-S28-01-000806 19.02 820 530 22 3 721 886 1672 2.7e-23 99.75 MGEN-G37-01-000335 SCER-S28-01-000806 20.45 748 492 24 89 749 656 1387 4.1e-19 85.89 MGEN-G37-01-000335 SCER-S28-01-000806 22.25 773 479 31 4 685 991 1732 7.0e-19 85.11 MGEN-G37-01-000335 SCER-S28-01-000806 23.91 368 244 16 10 352 1377 1733 5.0e-09 52.37 MGEN-G37-01-000335 MGEN-G37-01-000221 22.39 679 397 27 140 755 5 616 2.4e-19 86.66 MGEN-G37-01-000335 MGEN-G37-01-000221 20.39 716 449 24 54 728 201 836 3.1e-19 86.27 MGEN-G37-01-000335 MGEN-G37-01-000221 19.58 802 533 23 10 751 524 1273 1.9e-16 77.03 MGEN-G37-01-000335 MGEN-G37-01-000221 20.59 709 473 22 102 749 24 703 5.2e-14 68.94 MGEN-G37-01-000335 MGEN-G37-01-000221 19.81 742 490 26 94 756 899 1614 9.8e-13 64.70 MGEN-G37-01-000335 SCER-S28-01-001306 21.51 558 350 16 259 754 247 778 3.3e-16 76.26 MGEN-G37-01-000335 SCER-S28-01-002651 23.77 387 229 12 402 756 856 1208 3.0e-14 69.71 MGEN-G37-01-000335 SCER-S28-01-002651 19.75 810 531 29 4 756 1093 1840 4.0e-14 69.32 MGEN-G37-01-000335 SCER-S28-01-002651 19.51 533 369 13 263 749 867 1385 8.3e-12 61.62 MGEN-G37-01-000335 SYNE-PCC-01-000727 19.67 361 257 8 99 437 174 523 4.7e-07 45.82 MGEN-G37-01-000335 SYNE-PCC-01-000727 20.63 378 242 9 241 612 718 1043 3.1e-06 43.13 MGEN-G37-01-000335 SYNE-PCC-01-000943 21.59 264 137 8 254 511 77 276 2.3e-06 43.51 MGEN-G37-01-000335 MJAN-DSM-01-001277 23.63 182 123 5 564 738 260 432 5.2e-06 42.36 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000242 sll0396 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000242 SYNE-PCC-01-000242 100.00 224 0 0 1 224 1 224 2e-126 440.3 SYNE-PCC-01-000242 SYNE-PCC-01-001437 41.56 231 122 4 2 220 30 259 2.1e-46 174.5 SYNE-PCC-01-000242 SYNE-PCC-01-002033 39.82 226 126 4 7 223 1 225 5.4e-42 159.8 SYNE-PCC-01-000242 SYNE-PCC-01-002486 36.82 220 138 1 4 222 2 221 7.1e-42 159.5 SYNE-PCC-01-000242 SYNE-PCC-01-000518 39.55 220 130 2 4 220 2 221 6.0e-41 156.4 SYNE-PCC-01-000242 SYNE-PCC-01-001461 38.33 227 132 3 4 222 3 229 1.5e-39 151.8 SYNE-PCC-01-000242 SYNE-PCC-01-000414 38.36 232 129 6 5 224 14 243 3.3e-39 150.6 SYNE-PCC-01-000242 SYNE-PCC-01-002672 34.96 226 137 2 5 220 4 229 9.9e-36 139.0 SYNE-PCC-01-000242 HINF-KW2-01-001345 34.68 222 142 2 1 220 1 221 9.3e-34 132.5 SYNE-PCC-01-000242 SYNE-PCC-01-000523 33.92 227 140 2 4 220 2 228 4.6e-33 130.2 SYNE-PCC-01-000242 HINF-KW2-01-001671 31.51 219 146 1 4 222 2 216 1.8e-32 128.3 SYNE-PCC-01-000242 HINF-KW2-01-000816 30.22 225 149 4 4 222 3 225 1.3e-27 112.1 SYNE-PCC-01-000242 SYNE-PCC-01-000877 34.23 222 134 6 5 220 6 221 2.2e-27 111.3 SYNE-PCC-01-000242 HINF-KW2-01-000863 30.53 226 147 4 4 220 5 229 5.1e-24 100.1 SYNE-PCC-01-000242 SYNE-PCC-01-002086 34.19 117 75 1 5 119 30 146 1.2e-17 78.95 SYNE-PCC-01-000242 SYNE-PCC-01-001306 31.45 124 83 1 2 123 17 140 2.3e-16 74.71 SYNE-PCC-01-000242 SYNE-PCC-01-001306 26.19 126 90 1 5 127 742 867 2.0e-07 45.05 SYNE-PCC-01-000242 SYNE-PCC-01-002731 26.52 181 125 4 2 179 7 182 2.5e-15 71.25 SYNE-PCC-01-000242 SYNE-PCC-01-002221 29.17 120 82 3 1 118 1 119 3.1e-13 64.31 SYNE-PCC-01-000242 SYNE-PCC-01-002489 30.83 120 79 2 5 120 4 123 9.1e-13 62.77 SYNE-PCC-01-000242 SYNE-PCC-01-002635 26.87 134 95 2 5 135 58 191 7.7e-12 59.69 SYNE-PCC-01-000242 SYNE-PCC-01-002788 33.98 103 66 1 4 104 6 108 1.7e-11 58.54 SYNE-PCC-01-000242 SYNE-PCC-01-002618 23.89 180 114 5 4 181 13 171 1.7e-11 58.54 SYNE-PCC-01-000242 SYNE-PCC-01-001133 36.17 94 58 1 26 117 32 125 1.7e-11 58.54 SYNE-PCC-01-000242 HINF-KW2-01-000704 25.51 196 123 4 4 180 6 197 4.2e-10 53.91 SYNE-PCC-01-000242 SYNE-PCC-01-001160 29.41 102 70 2 4 103 18 119 1.2e-09 52.37 SYNE-PCC-01-000242 SYNE-PCC-01-001132 24.59 122 90 1 3 122 630 751 1.6e-09 51.99 SYNE-PCC-01-000242 SYNE-PCC-01-002879 30.28 109 74 1 5 111 720 828 2.1e-09 51.60 SYNE-PCC-01-000242 SYNE-PCC-01-000608 25.96 104 73 3 4 103 5 108 1.0e-08 49.29 SYNE-PCC-01-000242 SYNE-PCC-01-001075 26.72 116 83 2 2 115 7 122 1.8e-08 48.52 SYNE-PCC-01-000242 SYNE-PCC-01-000800 26.05 119 86 1 2 118 417 535 3.0e-08 47.75 SYNE-PCC-01-000242 SYNE-PCC-01-002873 26.55 113 81 1 4 114 926 1038 3.9e-08 47.37 SYNE-PCC-01-000242 SYNE-PCC-01-002873 27.83 115 76 2 4 111 772 886 5.1e-08 46.98 SYNE-PCC-01-000242 SYNE-PCC-01-002617 26.61 109 77 1 4 109 1191 1299 1.1e-07 45.82 SYNE-PCC-01-000242 SYNE-PCC-01-002778 25.22 115 78 2 5 115 632 742 4.8e-06 40.43 SYNE-PCC-01-000242 SYNE-PCC-01-001575 26.44 87 64 0 29 115 35 121 4.8e-06 40.43 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000295 sll0474 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000295 SYNE-PCC-01-000295 100.00 806 0 0 1 806 1 806 0.0 1490.7 SYNE-PCC-01-000295 SYNE-PCC-01-002879 32.58 442 240 14 258 655 266 693 1.5e-43 167.2 SYNE-PCC-01-000295 SYNE-PCC-01-002873 36.88 320 180 6 330 645 445 746 2.2e-42 163.3 SYNE-PCC-01-000295 SYNE-PCC-01-000800 40.07 267 154 4 386 650 130 392 1.2e-37 147.5 SYNE-PCC-01-000295 SYNE-PCC-01-001280 38.43 255 150 2 396 650 416 663 3.0e-36 142.9 SYNE-PCC-01-000295 SYNE-PCC-01-002778 33.65 318 191 6 396 706 355 659 1.3e-34 137.5 SYNE-PCC-01-000295 SYNE-PCC-01-002617 32.74 336 186 6 325 649 707 1013 3.7e-34 136.0 SYNE-PCC-01-000295 SYNE-PCC-01-001509 40.17 229 126 2 422 650 190 407 1.4e-33 134.0 SYNE-PCC-01-000295 SYNE-PCC-01-001306 38.71 248 137 5 398 637 294 534 1.4e-33 134.0 SYNE-PCC-01-000295 SYNE-PCC-01-000891 35.98 264 158 4 393 652 575 831 7.0e-33 131.7 SYNE-PCC-01-000295 SYNE-PCC-01-001294 36.72 256 157 4 402 655 178 430 1.7e-31 127.1 SYNE-PCC-01-000295 SYNE-PCC-01-001132 34.46 267 164 4 391 649 338 601 1.5e-30 124.0 SYNE-PCC-01-000295 SYNE-PCC-01-000985 32.95 264 150 7 393 649 45 288 8.9e-28 114.8 SYNE-PCC-01-000295 SYNE-PCC-01-001517 28.94 349 224 9 311 650 827 1160 1.8e-25 107.1 SYNE-PCC-01-000295 SYNE-PCC-01-001690 27.95 254 166 6 397 650 509 745 4.1e-17 79.34 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000414 sll0649 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000414 SYNE-PCC-01-000414 100.00 245 0 0 1 245 1 245 4e-134 466.1 SYNE-PCC-01-000414 SYNE-PCC-01-001437 43.83 235 119 3 14 241 33 261 2.9e-44 167.5 SYNE-PCC-01-000414 SYNE-PCC-01-002033 41.81 232 123 5 16 242 1 225 3.6e-42 160.6 SYNE-PCC-01-000414 SYNE-PCC-01-001461 40.17 234 134 2 11 242 1 230 5.0e-36 140.2 SYNE-PCC-01-000414 SYNE-PCC-01-000242 38.36 232 129 6 14 243 5 224 2.5e-35 137.9 SYNE-PCC-01-000414 HINF-KW2-01-001345 38.16 228 132 5 14 241 5 223 3.7e-31 124.0 SYNE-PCC-01-000414 HINF-KW2-01-000863 33.33 234 146 3 12 241 4 231 1.9e-30 121.7 SYNE-PCC-01-000414 HINF-KW2-01-000816 36.09 230 139 5 11 239 1 223 6.0e-29 116.7 SYNE-PCC-01-000414 SYNE-PCC-01-002672 34.31 239 143 6 11 242 1 232 1.0e-28 115.9 SYNE-PCC-01-000414 SYNE-PCC-01-000877 35.09 228 138 5 14 241 6 223 9.5e-27 109.4 SYNE-PCC-01-000414 SYNE-PCC-01-000518 35.06 231 139 6 14 242 3 224 3.6e-26 107.5 SYNE-PCC-01-000414 SYNE-PCC-01-002486 35.68 227 137 3 14 240 3 220 8.1e-26 106.3 SYNE-PCC-01-000414 HINF-KW2-01-001671 37.61 226 127 4 14 239 3 214 2.3e-25 104.8 SYNE-PCC-01-000414 SYNE-PCC-01-000523 35.47 234 139 6 14 241 3 230 2.0e-24 101.7 SYNE-PCC-01-000414 SYNE-PCC-01-001306 42.99 107 61 0 14 120 20 126 2.7e-21 91.28 SYNE-PCC-01-000414 SYNE-PCC-01-001306 32.04 103 69 1 14 115 742 844 5.6e-11 57.00 SYNE-PCC-01-000414 SYNE-PCC-01-002086 39.09 110 67 0 11 120 27 136 4.6e-21 90.51 SYNE-PCC-01-000414 SYNE-PCC-01-002731 35.19 108 70 0 13 120 9 116 3.3e-19 84.34 SYNE-PCC-01-000414 SYNE-PCC-01-002489 36.61 112 69 1 11 120 1 112 1.5e-16 75.48 SYNE-PCC-01-000414 SYNE-PCC-01-001133 34.26 108 71 0 13 120 10 117 7.6e-16 73.17 SYNE-PCC-01-000414 SYNE-PCC-01-000800 33.64 107 71 0 14 120 420 526 1.4e-14 68.94 SYNE-PCC-01-000414 SYNE-PCC-01-002635 29.36 109 76 1 13 120 57 165 1.7e-12 62.00 SYNE-PCC-01-000414 SYNE-PCC-01-002788 30.19 106 74 0 10 115 3 108 3.0e-12 61.23 SYNE-PCC-01-000414 SYNE-PCC-01-002618 30.19 106 74 0 10 115 10 115 5.1e-12 60.46 SYNE-PCC-01-000414 SYNE-PCC-01-002221 35.24 105 63 4 14 116 5 106 6.6e-12 60.08 SYNE-PCC-01-000414 SYNE-PCC-01-002617 28.70 115 81 1 4 117 1182 1296 1.1e-11 59.31 SYNE-PCC-01-000414 SYNE-PCC-01-002617 29.41 102 60 3 14 113 1036 1127 2.2e-07 45.05 SYNE-PCC-01-000414 SYNE-PCC-01-002873 30.00 110 72 1 14 118 773 882 1.5e-11 58.92 SYNE-PCC-01-000414 SYNE-PCC-01-002873 31.78 107 73 0 14 120 927 1033 5.6e-11 57.00 SYNE-PCC-01-000414 SYNE-PCC-01-002879 29.25 106 75 0 13 118 719 824 3.3e-11 57.77 SYNE-PCC-01-000414 SYNE-PCC-01-001132 32.04 103 70 0 14 116 632 734 4.3e-11 57.38 SYNE-PCC-01-000414 SYNE-PCC-01-000608 28.16 103 72 2 14 114 6 108 1.4e-09 52.37 SYNE-PCC-01-000414 SYNE-PCC-01-001160 40.38 104 56 4 14 114 19 119 2.4e-09 51.60 SYNE-PCC-01-000414 SYNE-PCC-01-001575 27.52 109 75 2 14 120 9 115 7.6e-08 46.59 SYNE-PCC-01-000414 HINF-KW2-01-000704 28.04 107 73 2 14 118 7 111 7.6e-08 46.59 SYNE-PCC-01-000414 SYNE-PCC-01-001075 30.10 103 68 2 14 114 10 110 6.4e-07 43.51 SYNE-PCC-01-000414 SYNE-PCC-01-002778 28.57 112 75 2 10 118 625 734 7.1e-06 40.05 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000511 sll0782 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000511 SYNE-PCC-01-000511 100.00 369 0 0 1 369 1 369 0.0 724.2 SYNE-PCC-01-000511 SYNE-PCC-01-001575 46.27 67 36 0 303 369 141 207 4.1e-11 58.15 SYNE-PCC-01-000511 SYNE-PCC-01-000608 44.26 61 34 0 309 369 161 221 1.7e-09 52.76 SYNE-PCC-01-000511 SYNE-PCC-01-001160 37.70 61 38 0 309 369 166 226 6.6e-09 50.83 SYNE-PCC-01-000511 SYNE-PCC-01-001075 29.38 160 85 7 207 359 76 214 6.6e-09 50.83 SYNE-PCC-01-000511 SYNE-PCC-01-001039 35.82 67 43 0 303 369 161 227 1.9e-08 49.29 SYNE-PCC-01-000511 SYNE-PCC-01-002951 42.37 59 34 0 309 367 12 70 4.3e-08 48.14 SYNE-PCC-01-000511 HINF-KW2-01-000704 43.14 51 29 0 309 359 149 199 2.8e-07 45.44 SYNE-PCC-01-000511 SYNE-PCC-01-002731 41.67 48 28 0 309 356 153 200 4.7e-07 44.67 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000518 sll0789 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000518 SYNE-PCC-01-000518 100.00 232 0 0 1 232 1 232 7e-128 445.3 SYNE-PCC-01-000518 SYNE-PCC-01-000523 58.55 234 90 2 1 227 1 234 7.4e-66 239.2 SYNE-PCC-01-000518 SYNE-PCC-01-002672 40.52 232 125 3 3 224 4 232 1.3e-38 148.7 SYNE-PCC-01-000518 SYNE-PCC-01-002486 41.26 223 127 3 1 222 1 220 5.0e-38 146.7 SYNE-PCC-01-000518 SYNE-PCC-01-000242 39.55 220 130 2 2 221 4 220 2.5e-37 144.4 SYNE-PCC-01-000518 HINF-KW2-01-001345 36.56 227 138 3 2 226 4 226 2.7e-31 124.4 SYNE-PCC-01-000518 HINF-KW2-01-001671 36.20 221 134 3 1 221 1 214 2.9e-30 120.9 SYNE-PCC-01-000518 SYNE-PCC-01-001437 35.44 237 131 5 2 223 32 261 2.5e-29 117.9 SYNE-PCC-01-000518 SYNE-PCC-01-000414 33.61 238 133 6 3 224 14 242 3.4e-26 107.5 SYNE-PCC-01-000518 HINF-KW2-01-000863 30.87 230 148 4 2 223 5 231 3.1e-24 100.9 SYNE-PCC-01-000518 SYNE-PCC-01-002033 36.24 229 133 6 5 224 1 225 1.2e-23 98.98 SYNE-PCC-01-000518 SYNE-PCC-01-001461 33.91 230 137 7 2 221 3 227 1.6e-23 98.60 SYNE-PCC-01-000518 SYNE-PCC-01-000877 34.65 228 128 7 5 223 8 223 9.8e-18 79.34 SYNE-PCC-01-000518 HINF-KW2-01-000816 30.22 225 148 4 2 221 3 223 1.7e-17 78.57 SYNE-PCC-01-000518 SYNE-PCC-01-002635 36.79 106 62 3 3 105 58 161 4.3e-13 63.93 SYNE-PCC-01-000518 SYNE-PCC-01-002489 35.24 105 66 1 3 105 4 108 1.1e-11 59.31 SYNE-PCC-01-000518 SYNE-PCC-01-001306 31.19 109 71 2 3 109 20 126 3.1e-11 57.77 SYNE-PCC-01-000518 SYNE-PCC-01-001306 31.78 107 68 3 1 104 740 844 3.5e-07 44.28 SYNE-PCC-01-000518 SYNE-PCC-01-002731 33.33 105 66 2 3 105 10 112 1.2e-10 55.84 SYNE-PCC-01-000518 SYNE-PCC-01-000800 32.08 106 68 3 2 105 419 522 3.7e-09 50.83 SYNE-PCC-01-000518 SYNE-PCC-01-001075 25.35 213 138 7 1 205 8 207 4.9e-09 50.45 SYNE-PCC-01-000518 SYNE-PCC-01-002873 27.78 108 73 2 2 104 772 879 1.1e-08 49.29 SYNE-PCC-01-000518 SYNE-PCC-01-002873 32.38 105 67 2 2 104 926 1028 7.0e-08 46.59 SYNE-PCC-01-000518 SYNE-PCC-01-002086 28.57 105 71 2 3 105 30 132 1.1e-08 49.29 SYNE-PCC-01-000518 SYNE-PCC-01-001160 28.36 134 90 4 1 131 17 147 2.4e-08 48.14 SYNE-PCC-01-000518 SYNE-PCC-01-001133 27.52 109 75 2 3 109 11 117 3.2e-08 47.75 SYNE-PCC-01-000518 SYNE-PCC-01-002618 28.44 109 74 2 2 108 13 119 2.1e-07 45.05 SYNE-PCC-01-000518 HINF-KW2-01-000704 31.43 105 68 2 1 103 5 107 4.6e-07 43.90 SYNE-PCC-01-000518 SYNE-PCC-01-002617 28.32 113 70 3 1 107 1190 1297 7.8e-07 43.13 SYNE-PCC-01-000518 SYNE-PCC-01-002879 29.81 104 69 2 3 104 720 821 1.0e-06 42.74 SYNE-PCC-01-000518 SYNE-PCC-01-002788 30.48 105 69 2 2 104 6 108 1.7e-06 41.97 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000523 sll0797 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000523 SYNE-PCC-01-000523 100.00 234 0 0 1 234 1 234 5e-128 445.7 SYNE-PCC-01-000523 SYNE-PCC-01-000518 58.55 234 90 2 1 234 1 227 2.6e-66 240.7 SYNE-PCC-01-000523 SYNE-PCC-01-002486 39.13 230 129 3 1 229 1 220 8.1e-36 139.4 SYNE-PCC-01-000523 SYNE-PCC-01-002672 41.45 234 125 3 3 230 4 231 2.4e-35 137.9 SYNE-PCC-01-000523 HINF-KW2-01-001671 38.16 228 127 4 1 228 1 214 1.0e-30 122.5 SYNE-PCC-01-000523 SYNE-PCC-01-000242 33.92 227 140 2 2 228 4 220 2.5e-29 117.9 SYNE-PCC-01-000523 HINF-KW2-01-001345 33.62 232 141 3 2 231 4 224 1.4e-27 112.1 SYNE-PCC-01-000523 SYNE-PCC-01-001437 34.32 236 142 4 2 230 32 261 1.7e-25 105.1 SYNE-PCC-01-000523 SYNE-PCC-01-000414 35.90 234 138 6 3 230 14 241 6.4e-25 103.2 SYNE-PCC-01-000523 SYNE-PCC-01-001461 32.50 240 144 6 2 233 3 232 1.9e-21 91.66 SYNE-PCC-01-000523 HINF-KW2-01-000863 31.30 230 154 3 2 230 5 231 7.3e-21 89.74 SYNE-PCC-01-000523 HINF-KW2-01-000816 29.29 239 139 5 2 228 3 223 3.6e-20 87.43 SYNE-PCC-01-000523 SYNE-PCC-01-002033 30.08 236 143 8 5 230 1 224 5.8e-18 80.11 SYNE-PCC-01-000523 SYNE-PCC-01-002635 36.79 106 62 3 3 105 58 161 5.1e-14 67.01 SYNE-PCC-01-000523 SYNE-PCC-01-000877 29.79 235 147 7 3 233 6 226 6.7e-14 66.63 SYNE-PCC-01-000523 SYNE-PCC-01-001306 34.29 105 65 2 3 105 20 122 3.3e-13 64.31 SYNE-PCC-01-000523 SYNE-PCC-01-001306 29.91 107 70 3 1 104 740 844 3.0e-06 41.20 SYNE-PCC-01-000523 SYNE-PCC-01-002873 32.41 108 68 3 2 104 772 879 1.3e-12 62.39 SYNE-PCC-01-000523 SYNE-PCC-01-002873 31.43 105 68 2 2 104 926 1028 7.9e-07 43.13 SYNE-PCC-01-000523 SYNE-PCC-01-002731 33.33 105 66 2 3 105 10 112 2.8e-12 61.23 SYNE-PCC-01-000523 SYNE-PCC-01-002086 31.43 105 68 2 3 105 30 132 1.1e-11 59.31 SYNE-PCC-01-000523 SYNE-PCC-01-001133 28.44 109 74 2 3 109 11 117 9.0e-11 56.22 SYNE-PCC-01-000523 SYNE-PCC-01-002489 34.29 105 67 1 3 105 4 108 1.2e-10 55.84 SYNE-PCC-01-000523 SYNE-PCC-01-002617 29.08 141 87 4 1 133 1190 1325 1.5e-10 55.45 SYNE-PCC-01-000523 SYNE-PCC-01-000800 31.13 106 69 3 2 105 419 522 2.2e-09 51.60 SYNE-PCC-01-000523 SYNE-PCC-01-002618 32.38 105 67 2 2 104 13 115 1.4e-08 48.91 SYNE-PCC-01-000523 SYNE-PCC-01-001075 32.38 105 67 2 1 103 8 110 7.1e-08 46.59 SYNE-PCC-01-000523 SYNE-PCC-01-001132 30.19 106 70 3 2 105 631 734 1.2e-07 45.82 SYNE-PCC-01-000523 SYNE-PCC-01-002879 30.77 104 68 2 3 104 720 821 2.7e-07 44.67 SYNE-PCC-01-000523 SYNE-PCC-01-002788 29.52 105 70 2 2 104 6 108 2.7e-07 44.67 SYNE-PCC-01-000523 SYNE-PCC-01-001160 25.71 140 100 3 1 138 17 154 7.9e-07 43.13 SYNE-PCC-01-000523 HINF-KW2-01-000704 29.52 105 70 2 1 103 5 107 1.8e-06 41.97 SYNE-PCC-01-000523 SYNE-PCC-01-002221 23.75 160 112 6 2 154 4 160 3.0e-06 41.20 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000542 sll0821 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000542 SYNE-PCC-01-000542 100.00 1276 0 0 1 1276 1 1276 0.0 2479.5 SYNE-PCC-01-000542 SYNE-PCC-01-002489 41.77 249 135 2 606 849 157 400 3.2e-51 193.4 SYNE-PCC-01-000542 SYNE-PCC-01-002618 47.37 190 99 1 1072 1260 121 310 2.4e-46 177.2 SYNE-PCC-01-000542 SYNE-PCC-01-002618 30.51 177 107 6 423 591 141 309 5.1e-09 53.14 SYNE-PCC-01-000542 SYNE-PCC-01-001133 45.76 177 95 1 1088 1263 276 452 6.0e-42 162.5 SYNE-PCC-01-000542 SYNE-PCC-01-001133 29.01 162 107 4 434 591 291 448 4.2e-11 60.08 SYNE-PCC-01-000542 SYNE-PCC-01-002220 39.44 180 106 2 914 1090 450 629 2.9e-36 143.7 SYNE-PCC-01-000542 SYNE-PCC-01-002220 27.32 183 106 6 8 186 460 619 5.0e-12 63.16 SYNE-PCC-01-000542 SYNE-PCC-01-000983 34.78 207 123 1 903 1097 22 228 7.9e-34 135.6 SYNE-PCC-01-000542 SYNE-PCC-01-000983 25.52 192 107 4 8 186 43 211 1.4e-11 61.62 SYNE-PCC-01-000542 SYNE-PCC-01-002778 32.84 201 110 5 913 1090 150 348 8.2e-23 98.98 SYNE-PCC-01-000542 SYNE-PCC-01-001690 33.97 156 94 3 15 165 144 295 3.2e-19 87.04 SYNE-PCC-01-000542 SYNE-PCC-01-001690 23.68 152 91 3 932 1059 145 295 1.1e-08 51.99 SYNE-PCC-01-000542 SYNE-PCC-01-002617 25.41 185 126 5 913 1088 568 749 1.4e-09 55.07 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000608 sll0921 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000608 SYNE-PCC-01-000608 100.00 222 0 0 1 222 1 222 3e-116 406.8 SYNE-PCC-01-000608 SYNE-PCC-01-001160 42.20 218 118 2 4 221 17 226 7.5e-44 166.0 SYNE-PCC-01-000608 SYNE-PCC-01-001075 39.55 220 130 2 4 222 8 225 1.2e-36 142.1 SYNE-PCC-01-000608 SYNE-PCC-01-001575 32.42 219 131 2 4 222 7 208 1.7e-32 128.3 SYNE-PCC-01-000608 HINF-KW2-01-000704 31.60 212 132 2 2 213 3 201 2.1e-30 121.3 SYNE-PCC-01-000608 SYNE-PCC-01-001039 33.14 175 100 3 46 219 67 225 1.4e-18 82.03 SYNE-PCC-01-000608 SYNE-PCC-01-002731 28.31 219 145 3 2 220 6 212 1.2e-17 78.95 SYNE-PCC-01-000608 HINF-KW2-01-001671 27.19 217 125 7 4 203 1 201 1.7e-11 58.54 SYNE-PCC-01-000608 SYNE-PCC-01-001461 23.87 222 157 4 5 216 3 222 3.8e-11 57.38 SYNE-PCC-01-000608 SYNE-PCC-01-000414 26.72 116 83 2 6 121 14 127 3.2e-10 54.30 SYNE-PCC-01-000608 HINF-KW2-01-001345 29.06 117 80 2 5 121 4 117 3.2e-10 54.30 SYNE-PCC-01-000608 SYNE-PCC-01-002489 28.81 118 80 3 6 121 4 119 4.2e-10 53.91 SYNE-PCC-01-000608 SYNE-PCC-01-000511 44.26 61 34 0 161 221 309 369 9.3e-10 52.76 SYNE-PCC-01-000608 SYNE-PCC-01-002879 25.93 135 92 2 1 135 715 841 1.6e-09 51.99 SYNE-PCC-01-000608 SYNE-PCC-01-001306 33.75 80 52 1 37 115 49 128 2.1e-09 51.60 SYNE-PCC-01-000608 SYNE-PCC-01-001306 23.68 114 85 2 8 120 743 855 6.2e-06 40.05 SYNE-PCC-01-000608 SYNE-PCC-01-000800 31.52 92 62 1 32 123 444 534 4.6e-09 50.45 SYNE-PCC-01-000608 SYNE-PCC-01-000242 25.96 104 73 3 5 108 4 103 1.0e-08 49.29 SYNE-PCC-01-000608 SYNE-PCC-01-001132 25.60 125 90 2 5 129 631 752 2.3e-08 48.14 SYNE-PCC-01-000608 SYNE-PCC-01-002618 30.17 116 79 1 5 120 13 126 3.0e-08 47.75 SYNE-PCC-01-000608 SYNE-PCC-01-001437 30.65 124 75 4 5 121 32 151 3.0e-08 47.75 SYNE-PCC-01-000608 SYNE-PCC-01-002951 39.34 61 37 0 161 221 12 72 3.9e-08 47.37 SYNE-PCC-01-000608 SYNE-PCC-01-002672 27.59 116 80 2 6 121 4 115 3.9e-08 47.37 SYNE-PCC-01-000608 SYNE-PCC-01-002086 28.45 116 79 2 6 120 30 142 5.1e-08 46.98 SYNE-PCC-01-000608 SYNE-PCC-01-002873 28.83 111 77 2 5 115 926 1034 1.1e-07 45.82 SYNE-PCC-01-000608 SYNE-PCC-01-002873 28.35 127 88 2 1 124 768 894 1.9e-07 45.05 SYNE-PCC-01-000608 SYNE-PCC-01-002788 25.64 117 85 2 5 121 6 120 1.1e-07 45.82 SYNE-PCC-01-000608 SYNE-PCC-01-002033 28.71 101 67 3 8 108 1 96 1.1e-07 45.82 SYNE-PCC-01-000608 SYNE-PCC-01-001133 25.84 89 66 0 32 120 35 123 2.5e-07 44.67 SYNE-PCC-01-000608 SYNE-PCC-01-002486 23.77 223 151 6 4 216 1 214 5.6e-07 43.51 SYNE-PCC-01-000608 SYNE-PCC-01-002221 26.72 116 80 3 5 119 4 115 7.3e-07 43.13 SYNE-PCC-01-000608 SYNE-PCC-01-002617 25.00 116 85 2 8 122 1193 1307 6.2e-06 40.05 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000727 sll1120 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000727 SYNE-PCC-01-000727 100.00 1200 0 0 1 1200 1 1200 0.0 1778.1 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000800 sll1228 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000800 SYNE-PCC-01-000800 100.00 633 0 0 1 633 1 633 0.0 1209.1 SYNE-PCC-01-000800 SYNE-PCC-01-001132 41.55 491 271 5 144 623 346 831 2.1e-93 332.4 SYNE-PCC-01-000800 SYNE-PCC-01-002879 35.91 440 262 6 124 551 420 851 2.2e-58 216.1 SYNE-PCC-01-000800 SYNE-PCC-01-002873 35.26 397 239 5 145 535 509 893 2.4e-49 186.0 SYNE-PCC-01-000800 SYNE-PCC-01-002873 36.07 122 78 0 419 540 926 1047 6.6e-15 71.63 SYNE-PCC-01-000800 SYNE-PCC-01-002617 31.97 488 292 11 62 523 664 1137 6.8e-44 167.9 SYNE-PCC-01-000800 SYNE-PCC-01-002617 33.80 142 89 2 404 544 1180 1317 2.8e-13 66.24 SYNE-PCC-01-000800 SYNE-PCC-01-000295 40.07 267 154 4 130 392 386 650 3.4e-43 165.6 SYNE-PCC-01-000800 SYNE-PCC-01-000891 39.22 255 151 4 140 392 577 829 2.0e-40 156.4 SYNE-PCC-01-000800 SYNE-PCC-01-001294 32.18 376 236 6 4 375 49 409 3.9e-39 152.1 SYNE-PCC-01-000800 SYNE-PCC-01-001280 40.60 234 127 4 163 392 438 663 5.6e-38 148.3 SYNE-PCC-01-000800 SYNE-PCC-01-002778 29.10 488 304 10 68 528 266 738 1.5e-35 140.2 SYNE-PCC-01-000800 SYNE-PCC-01-001306 34.14 290 164 5 124 396 288 567 1.9e-33 133.3 SYNE-PCC-01-000800 SYNE-PCC-01-001306 30.46 174 117 3 374 544 694 866 3.3e-14 69.32 SYNE-PCC-01-000800 SYNE-PCC-01-001306 31.25 128 85 1 411 535 8 135 4.7e-13 65.47 SYNE-PCC-01-000800 SYNE-PCC-01-001509 34.77 302 176 9 98 394 124 409 2.4e-33 132.9 SYNE-PCC-01-000800 SYNE-PCC-01-001517 30.93 236 144 7 163 393 940 1161 9.5e-22 94.36 SYNE-PCC-01-000800 SYNE-PCC-01-001517 32.69 104 69 1 419 521 8 111 9.6e-06 41.20 SYNE-PCC-01-000800 SYNE-PCC-01-000985 29.07 227 144 6 163 385 69 282 1.6e-21 93.59 SYNE-PCC-01-000800 SYNE-PCC-01-001690 31.90 232 139 8 165 393 531 746 4.4e-19 85.50 SYNE-PCC-01-000800 SYNE-PCC-01-002788 42.73 110 63 0 419 528 6 115 5.8e-19 85.11 SYNE-PCC-01-000800 SYNE-PCC-01-000414 34.92 126 81 1 420 545 14 138 2.5e-14 69.71 SYNE-PCC-01-000800 SYNE-PCC-01-002635 35.59 118 75 1 420 536 58 175 2.8e-13 66.24 SYNE-PCC-01-000800 SYNE-PCC-01-002731 33.63 113 75 0 417 529 7 119 1.1e-12 64.31 SYNE-PCC-01-000800 SYNE-PCC-01-001133 32.76 116 78 0 414 529 5 120 1.8e-12 63.54 SYNE-PCC-01-000800 SYNE-PCC-01-001461 29.73 111 78 0 419 529 3 113 2.4e-12 63.16 SYNE-PCC-01-000800 SYNE-PCC-01-002033 31.76 148 95 3 422 567 1 144 3.4e-11 59.31 SYNE-PCC-01-000800 SYNE-PCC-01-001575 32.61 138 82 3 443 577 34 163 6.4e-10 55.07 SYNE-PCC-01-000800 SYNE-PCC-01-002086 26.72 116 85 0 420 535 30 145 8.4e-10 54.68 SYNE-PCC-01-000800 HINF-KW2-01-000816 39.29 112 62 3 419 529 3 109 8.4e-10 54.68 SYNE-PCC-01-000800 SYNE-PCC-01-002489 31.53 111 74 1 420 528 4 114 1.1e-09 54.30 SYNE-PCC-01-000800 SYNE-PCC-01-002618 32.73 110 74 0 412 521 6 115 1.4e-09 53.91 SYNE-PCC-01-000800 SYNE-PCC-01-001437 25.52 145 93 4 392 529 11 147 3.2e-09 52.76 SYNE-PCC-01-000800 SYNE-PCC-01-000518 33.04 115 73 3 419 531 2 114 7.1e-09 51.60 SYNE-PCC-01-000800 HINF-KW2-01-001345 33.04 112 74 1 418 529 3 113 7.1e-09 51.60 SYNE-PCC-01-000800 SYNE-PCC-01-000608 29.27 123 72 2 444 551 32 154 1.2e-08 50.83 SYNE-PCC-01-000800 SYNE-PCC-01-002672 29.09 110 76 1 420 529 4 111 3.5e-08 49.29 SYNE-PCC-01-000800 HINF-KW2-01-000863 29.84 124 84 1 419 542 5 125 3.5e-08 49.29 SYNE-PCC-01-000800 SYNE-PCC-01-000523 32.17 115 74 3 419 531 2 114 4.6e-08 48.91 SYNE-PCC-01-000800 HINF-KW2-01-001671 31.86 113 75 1 419 531 2 112 1.0e-07 47.75 SYNE-PCC-01-000800 SYNE-PCC-01-000242 26.05 119 86 1 417 535 2 118 1.3e-07 47.37 SYNE-PCC-01-000800 SYNE-PCC-01-001160 29.31 116 78 2 419 532 18 131 3.0e-07 46.21 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000877 sll1330 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000877 SYNE-PCC-01-000877 100.00 250 0 0 1 250 1 250 1e-143 498.0 SYNE-PCC-01-000877 SYNE-PCC-01-002033 35.27 224 137 3 8 223 1 224 1.3e-31 125.6 SYNE-PCC-01-000877 SYNE-PCC-01-000414 35.09 228 138 5 6 223 14 241 6.5e-31 123.2 SYNE-PCC-01-000877 SYNE-PCC-01-001461 34.07 226 137 5 6 221 4 227 2.1e-29 118.2 SYNE-PCC-01-000877 SYNE-PCC-01-001437 34.63 231 136 7 6 223 33 261 1.1e-27 112.5 SYNE-PCC-01-000877 SYNE-PCC-01-000242 34.23 222 134 6 6 221 5 220 2.6e-27 111.3 SYNE-PCC-01-000877 HINF-KW2-01-001345 33.77 231 144 6 6 231 5 231 1.7e-26 108.6 SYNE-PCC-01-000877 SYNE-PCC-01-002486 33.68 190 121 4 50 237 47 233 1.8e-25 105.1 SYNE-PCC-01-000877 SYNE-PCC-01-002672 35.64 188 109 5 50 226 48 234 1.7e-23 98.60 SYNE-PCC-01-000877 SYNE-PCC-01-000518 34.65 228 128 7 8 223 5 223 9.4e-22 92.82 SYNE-PCC-01-000877 HINF-KW2-01-001671 31.05 219 141 5 6 221 3 214 8.0e-21 89.74 SYNE-PCC-01-000877 HINF-KW2-01-000816 27.85 219 152 3 8 221 6 223 1.0e-20 89.35 SYNE-PCC-01-000877 HINF-KW2-01-000863 28.70 230 156 3 6 227 6 235 8.8e-20 86.27 SYNE-PCC-01-000877 SYNE-PCC-01-000523 30.64 235 145 7 6 226 3 233 4.8e-18 80.49 SYNE-PCC-01-000877 SYNE-PCC-01-002731 24.38 201 134 5 5 202 9 194 5.7e-11 57.00 SYNE-PCC-01-000877 SYNE-PCC-01-001133 32.46 114 72 2 6 115 11 123 1.3e-10 55.84 SYNE-PCC-01-000877 SYNE-PCC-01-001306 30.69 101 67 1 18 115 32 132 1.1e-09 52.76 SYNE-PCC-01-000877 SYNE-PCC-01-002618 26.67 120 85 1 6 122 14 133 2.4e-09 51.60 SYNE-PCC-01-000877 SYNE-PCC-01-002086 28.21 117 81 1 6 119 30 146 3.1e-09 51.22 SYNE-PCC-01-000877 SYNE-PCC-01-002635 26.23 122 86 3 3 120 55 176 1.3e-07 45.82 SYNE-PCC-01-000877 SYNE-PCC-01-000800 28.00 125 83 2 6 127 420 540 1.7e-07 45.44 SYNE-PCC-01-000877 SYNE-PCC-01-002489 26.19 126 88 2 6 126 4 129 5.0e-07 43.90 SYNE-PCC-01-000877 SYNE-PCC-01-002873 28.33 120 75 3 6 114 773 892 1.5e-06 42.36 SYNE-PCC-01-000877 SYNE-PCC-01-002788 29.31 116 79 1 6 118 7 122 2.5e-06 41.59 SYNE-PCC-01-000877 SYNE-PCC-01-001132 29.91 107 71 2 3 105 628 734 3.2e-06 41.20 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000891 sll1353 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000891 SYNE-PCC-01-000891 100.00 998 0 0 1 998 1 998 0.0 1756.1 SYNE-PCC-01-000891 SYNE-PCC-01-002879 41.13 282 145 5 547 828 419 679 5.5e-35 139.0 SYNE-PCC-01-000891 SYNE-PCC-01-002873 44.21 242 130 3 583 824 510 746 8.8e-33 131.7 SYNE-PCC-01-000891 SYNE-PCC-01-001280 29.98 507 313 10 351 841 194 674 2.8e-31 126.7 SYNE-PCC-01-000891 SYNE-PCC-01-002617 41.61 286 153 5 552 824 725 1009 2.4e-30 123.6 SYNE-PCC-01-000891 SYNE-PCC-01-001306 41.77 237 132 4 558 791 276 509 6.5e-28 115.5 SYNE-PCC-01-000891 SYNE-PCC-01-000800 39.22 255 151 4 577 829 140 392 4.7e-26 109.4 SYNE-PCC-01-000891 SYNE-PCC-01-001132 34.15 325 186 7 514 824 287 597 2.0e-24 104.0 SYNE-PCC-01-000891 SYNE-PCC-01-001294 36.67 210 130 2 585 791 179 388 8.2e-23 98.60 SYNE-PCC-01-000891 SYNE-PCC-01-000295 35.98 264 158 4 575 831 393 652 2.6e-21 93.59 SYNE-PCC-01-000891 SYNE-PCC-01-001509 36.17 235 138 3 604 836 190 414 8.3e-15 72.02 SYNE-PCC-01-000891 SYNE-PCC-01-002778 30.14 292 163 6 547 829 347 606 1.8e-14 70.86 SYNE-PCC-01-000891 SYNE-PCC-01-000985 32.02 253 154 6 575 823 45 283 4.5e-13 66.24 SYNE-PCC-01-000891 SYNE-PCC-01-001517 34.29 210 123 6 575 780 915 1113 2.9e-12 63.54 SYNE-PCC-01-000891 SYNE-PCC-01-002220 37.21 86 53 1 524 608 129 214 1.1e-06 45.05 SYNE-PCC-01-000891 SYNE-PCC-01-000983 29.35 92 61 2 525 612 196 287 9.1e-06 41.97 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000943 sll1424 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000943 SYNE-PCC-01-000943 100.00 491 0 0 1 491 1 491 0.0 865.1 SYNE-PCC-01-000943 SCER-S28-01-000806 24.04 183 128 5 87 269 1607 1778 6.3e-10 54.68 SYNE-PCC-01-000943 SCER-S28-01-000806 24.02 229 138 6 79 271 1050 1278 6.3e-10 54.68 SYNE-PCC-01-000943 SCER-S28-01-000806 17.27 388 281 10 79 456 1155 1512 1.2e-08 50.45 SYNE-PCC-01-000943 SCER-S28-01-000806 21.35 267 154 10 68 279 901 1166 5.0e-07 45.05 SYNE-PCC-01-000943 SCER-S28-01-000806 19.91 226 160 6 69 276 1466 1688 6.5e-07 44.67 SYNE-PCC-01-000943 SCER-S28-01-000806 21.68 226 140 8 89 284 1412 1630 6.5e-07 44.67 SYNE-PCC-01-000943 SCER-S28-01-000806 21.61 199 150 3 77 269 1304 1502 6.5e-07 44.67 SYNE-PCC-01-000943 SYNE-PCC-01-000727 20.30 202 159 1 77 278 735 934 7.0e-09 51.22 SYNE-PCC-01-000943 SYNE-PCC-01-000727 20.78 231 168 5 48 271 663 885 1.2e-08 50.45 SYNE-PCC-01-000943 SYNE-PCC-01-000727 23.14 350 222 9 106 428 200 529 3.5e-08 48.91 SYNE-PCC-01-000943 MGEN-G37-01-000335 22.98 235 158 7 79 292 295 527 4.5e-08 48.52 SYNE-PCC-01-000943 SCER-S28-01-002651 21.74 184 130 3 84 260 869 1045 5.9e-08 48.14 SYNE-PCC-01-000943 SCER-S28-01-002651 22.17 212 149 4 69 272 1532 1735 5.0e-07 45.05 SYNE-PCC-01-000943 SCER-S28-01-002651 18.41 201 143 3 71 271 1006 1185 4.2e-06 41.97 SYNE-PCC-01-000943 MGEN-G37-01-000221 24.24 231 144 7 69 292 1354 1560 7.7e-08 47.75 SYNE-PCC-01-000943 MGEN-G37-01-000221 22.05 263 155 7 73 286 478 739 6.5e-07 44.67 SYNE-PCC-01-000943 MGEN-G37-01-000221 20.16 253 159 6 69 284 556 802 5.5e-06 41.59 SYNE-PCC-01-000943 MPNE-M12-01-000474 23.90 205 111 5 77 270 362 532 5.0e-07 45.05 SYNE-PCC-01-000943 MPNE-M12-01-000474 22.78 259 174 9 77 323 695 939 3.2e-06 42.36 SYNE-PCC-01-000943 SCER-S28-01-001306 20.27 222 143 5 68 284 563 755 1.9e-06 43.13 SYNE-PCC-01-000943 SCER-S28-01-001306 18.01 272 189 6 42 279 388 659 2.5e-06 42.74 SYNE-PCC-01-000943 SYNE-PCC-01-001071 22.03 227 150 6 62 272 75 290 2.5e-06 42.74 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000983 sll1473 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000983 SYNE-PCC-01-000983 100.00 481 0 0 1 481 1 481 0.0 919.5 SYNE-PCC-01-000983 SYNE-PCC-01-002220 32.22 239 133 3 33 268 450 662 4.4e-32 128.3 SYNE-PCC-01-000983 SYNE-PCC-01-002220 30.70 215 136 5 224 430 156 365 1.2e-21 93.59 SYNE-PCC-01-000983 SYNE-PCC-01-000542 33.16 190 115 1 22 211 903 1080 2.0e-29 119.4 SYNE-PCC-01-000983 SYNE-PCC-01-000542 25.52 192 107 4 43 211 8 186 5.1e-12 61.62 SYNE-PCC-01-000983 SYNE-PCC-01-002778 30.09 226 123 4 39 241 155 368 6.6e-20 87.81 SYNE-PCC-01-000983 SYNE-PCC-01-001517 25.93 243 146 11 243 465 656 884 3.9e-12 62.00 SYNE-PCC-01-000983 SYNE-PCC-01-001517 25.00 220 145 6 224 431 511 722 1.6e-10 56.61 SYNE-PCC-01-000983 SYNE-PCC-01-002617 24.66 223 147 5 28 244 570 777 1.1e-11 60.46 SYNE-PCC-01-000983 SYNE-PCC-01-002873 27.11 166 107 5 248 401 254 417 2.2e-07 46.21 SYNE-PCC-01-000983 SYNE-PCC-01-001690 19.75 162 94 2 47 184 141 290 2.4e-06 42.74 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-000985 sll1475 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-000985 SYNE-PCC-01-000985 100.00 297 0 0 1 297 1 297 2e-159 550.4 SYNE-PCC-01-000985 SYNE-PCC-01-001517 40.09 227 134 2 63 288 934 1159 3.7e-44 167.5 SYNE-PCC-01-000985 SYNE-PCC-01-000295 33.47 242 135 6 66 288 415 649 1.8e-30 122.1 SYNE-PCC-01-000985 SYNE-PCC-01-000891 32.03 231 140 5 66 283 597 823 2.7e-26 108.2 SYNE-PCC-01-000985 SYNE-PCC-01-002778 30.64 235 156 5 68 295 378 612 1.1e-24 102.8 SYNE-PCC-01-000985 SYNE-PCC-01-001509 30.84 214 143 4 78 288 195 406 3.3e-24 101.3 SYNE-PCC-01-000985 SYNE-PCC-01-001280 31.06 235 155 5 69 297 438 671 3.3e-24 101.3 SYNE-PCC-01-000985 SYNE-PCC-01-001132 30.04 243 147 4 66 288 362 601 2.1e-23 98.60 SYNE-PCC-01-000985 SYNE-PCC-01-002879 30.21 235 146 9 66 288 455 683 6.2e-23 97.06 SYNE-PCC-01-000985 SYNE-PCC-01-000800 29.13 230 146 6 66 282 160 385 1.8e-22 95.52 SYNE-PCC-01-000985 SYNE-PCC-01-002873 30.61 245 152 9 63 295 521 759 3.1e-22 94.74 SYNE-PCC-01-000985 SYNE-PCC-01-001306 29.28 222 141 5 66 276 318 534 4.4e-21 90.89 SYNE-PCC-01-000985 SYNE-PCC-01-001294 27.50 240 153 8 63 285 188 423 3.5e-18 81.26 SYNE-PCC-01-000985 SYNE-PCC-01-002617 25.10 243 158 5 66 288 775 1013 7.8e-18 80.11 SYNE-PCC-01-000985 SYNE-PCC-01-001690 27.10 214 150 4 71 283 531 739 2.1e-15 72.02 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001039 sll1544 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001039 SYNE-PCC-01-001039 100.00 228 0 0 1 228 1 228 6e-127 442.2 SYNE-PCC-01-001039 SYNE-PCC-01-000608 33.14 175 100 3 67 225 46 219 1.5e-18 82.03 SYNE-PCC-01-001039 SYNE-PCC-01-001160 32.73 165 98 5 71 225 63 224 4.8e-17 77.03 SYNE-PCC-01-001039 HINF-KW2-01-000704 28.48 165 94 3 68 219 48 201 5.8e-15 70.09 SYNE-PCC-01-001039 SYNE-PCC-01-001075 29.38 211 118 6 34 222 18 219 2.9e-14 67.78 SYNE-PCC-01-001039 SYNE-PCC-01-001575 24.62 195 144 3 34 228 17 208 6.4e-14 66.63 SYNE-PCC-01-001039 SYNE-PCC-01-000511 35.82 67 43 0 161 227 303 369 1.1e-08 49.29 SYNE-PCC-01-001039 SYNE-PCC-01-002951 37.29 59 37 0 167 225 12 70 2.2e-06 41.59 SYNE-PCC-01-001039 SYNE-PCC-01-002731 30.10 103 67 4 120 218 103 204 2.2e-06 41.59 SYNE-PCC-01-001039 SYNE-PCC-01-002635 23.50 200 126 5 51 225 82 279 3.8e-06 40.82 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001071 sll1583 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001071 SYNE-PCC-01-001071 100.00 562 0 0 1 562 1 562 0.0 859.8 SYNE-PCC-01-001071 SYNE-PCC-01-000727 22.68 269 159 5 76 330 703 936 3.4e-07 45.82 SYNE-PCC-01-001071 SYNE-PCC-01-000727 22.90 297 180 10 65 330 195 473 7.6e-07 44.67 SYNE-PCC-01-001071 MPNE-M12-01-000474 23.41 299 187 8 30 307 377 654 7.6e-07 44.67 SYNE-PCC-01-001071 SYNE-PCC-01-000943 23.77 223 151 6 75 290 62 272 2.9e-06 42.74 SYNE-PCC-01-001071 SCER-S28-01-000806 19.18 318 235 6 25 328 1346 1655 3.8e-06 42.36 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001075 sll1592 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001075 SYNE-PCC-01-001075 100.00 226 0 0 1 226 1 226 9e-125 434.9 SYNE-PCC-01-001075 SYNE-PCC-01-001160 38.71 217 126 2 8 224 17 226 3.3e-39 150.6 SYNE-PCC-01-001075 SYNE-PCC-01-000608 39.55 220 130 2 8 225 4 222 2.7e-36 141.0 SYNE-PCC-01-001075 SYNE-PCC-01-001575 35.75 221 126 2 6 226 5 209 1.8e-32 128.3 SYNE-PCC-01-001075 HINF-KW2-01-000704 30.88 217 132 3 8 221 5 206 1.4e-24 102.1 SYNE-PCC-01-001075 SYNE-PCC-01-001039 29.38 211 118 6 18 219 34 222 2.9e-14 67.78 SYNE-PCC-01-001075 SYNE-PCC-01-002731 25.22 226 152 5 1 223 1 212 1.8e-13 65.08 SYNE-PCC-01-001075 HINF-KW2-01-001671 25.70 214 131 6 8 206 1 201 1.3e-11 58.92 SYNE-PCC-01-001075 SYNE-PCC-01-000518 25.59 211 140 6 8 207 1 205 3.9e-11 57.38 SYNE-PCC-01-001075 SYNE-PCC-01-002221 30.70 114 76 3 9 121 4 115 5.0e-11 57.00 SYNE-PCC-01-001075 SYNE-PCC-01-002033 35.40 113 70 3 12 124 1 110 7.3e-10 53.14 SYNE-PCC-01-001075 SYNE-PCC-01-001437 29.92 127 80 3 5 124 28 152 1.6e-09 51.99 SYNE-PCC-01-001075 SYNE-PCC-01-002486 27.31 216 127 6 8 207 1 202 2.1e-09 51.60 SYNE-PCC-01-001075 SYNE-PCC-01-000511 29.38 160 85 7 76 214 207 359 3.6e-09 50.83 SYNE-PCC-01-001075 SYNE-PCC-01-002788 33.63 113 69 4 9 118 6 115 6.2e-09 50.06 SYNE-PCC-01-001075 HINF-KW2-01-000816 28.37 215 128 11 11 209 4 208 1.0e-08 49.29 SYNE-PCC-01-001075 SYNE-PCC-01-000523 30.25 119 79 2 8 124 1 117 1.4e-08 48.91 SYNE-PCC-01-001075 SYNE-PCC-01-000242 26.72 116 83 2 7 122 2 115 1.8e-08 48.52 SYNE-PCC-01-001075 SYNE-PCC-01-002672 31.36 118 73 4 10 124 4 116 2.3e-08 48.14 SYNE-PCC-01-001075 SYNE-PCC-01-000414 29.06 117 79 2 10 124 14 128 2.3e-08 48.14 SYNE-PCC-01-001075 SYNE-PCC-01-002618 30.09 113 73 3 3 112 7 116 4.0e-08 47.37 SYNE-PCC-01-001075 SYNE-PCC-01-002617 25.20 123 87 3 7 126 1189 1309 5.2e-08 46.98 SYNE-PCC-01-001075 SYNE-PCC-01-002951 43.86 57 32 0 164 220 12 68 8.9e-08 46.21 SYNE-PCC-01-001075 HINF-KW2-01-001345 31.34 134 81 5 9 140 4 128 2.6e-07 44.67 SYNE-PCC-01-001075 SYNE-PCC-01-001306 24.79 117 83 3 10 123 19 133 7.5e-07 43.13 SYNE-PCC-01-001075 SYNE-PCC-01-001306 23.08 156 113 4 4 154 736 889 8.3e-06 39.66 SYNE-PCC-01-001075 SYNE-PCC-01-002635 22.37 228 162 5 8 223 56 280 1.7e-06 41.97 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001132 sll1672 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001132 SYNE-PCC-01-001132 100.00 834 0 0 1 834 1 834 0.0 1471.8 SYNE-PCC-01-001132 SYNE-PCC-01-000800 41.55 491 271 5 346 831 144 623 2.2e-85 306.2 SYNE-PCC-01-001132 SYNE-PCC-01-002879 35.68 454 262 6 303 743 395 831 1.3e-61 227.3 SYNE-PCC-01-001132 SYNE-PCC-01-002873 35.85 410 233 7 368 769 530 917 2.5e-57 213.0 SYNE-PCC-01-001132 SYNE-PCC-01-002873 32.85 137 86 1 631 761 926 1062 3.5e-11 59.69 SYNE-PCC-01-001132 SYNE-PCC-01-002617 32.16 485 286 12 274 743 689 1145 4.2e-49 185.7 SYNE-PCC-01-001132 SYNE-PCC-01-002617 34.21 114 74 1 627 739 1187 1300 1.0e-10 58.15 SYNE-PCC-01-001132 SYNE-PCC-01-001280 37.50 304 167 8 304 601 376 662 3.8e-42 162.5 SYNE-PCC-01-001132 SYNE-PCC-01-001306 41.97 274 138 7 314 585 276 530 2.9e-37 146.4 SYNE-PCC-01-001132 SYNE-PCC-01-001306 30.97 113 77 1 632 743 742 854 1.3e-10 57.77 SYNE-PCC-01-001132 SYNE-PCC-01-001306 30.51 118 82 0 630 747 18 135 1.4e-07 47.75 SYNE-PCC-01-001132 SYNE-PCC-01-000891 35.67 328 177 10 287 597 514 824 2.0e-35 140.2 SYNE-PCC-01-001132 SYNE-PCC-01-000295 37.13 237 138 4 368 601 421 649 7.8e-35 138.3 SYNE-PCC-01-001132 SYNE-PCC-01-002778 28.98 421 261 9 323 735 343 733 8.3e-29 118.2 SYNE-PCC-01-001132 SYNE-PCC-01-001294 33.87 248 138 5 368 604 197 429 1.1e-28 117.9 SYNE-PCC-01-001132 SYNE-PCC-01-001509 33.76 234 131 5 369 598 190 403 9.5e-25 104.8 SYNE-PCC-01-001132 SYNE-PCC-01-001517 32.28 254 145 6 348 596 923 1154 9.2e-20 88.20 SYNE-PCC-01-001132 SYNE-PCC-01-000985 30.38 237 142 4 368 601 72 288 3.9e-18 82.80 SYNE-PCC-01-001132 SYNE-PCC-01-002788 39.81 103 62 0 631 733 6 108 4.7e-16 75.87 SYNE-PCC-01-001132 SYNE-PCC-01-001690 25.60 293 177 9 319 601 483 744 3.7e-13 66.24 SYNE-PCC-01-001132 SYNE-PCC-01-002489 33.05 118 77 1 632 747 4 121 2.3e-10 57.00 SYNE-PCC-01-001132 SYNE-PCC-01-001133 31.73 104 71 0 632 735 11 114 2.3e-10 57.00 SYNE-PCC-01-001132 SYNE-PCC-01-002033 32.67 101 65 1 634 734 1 98 6.6e-10 55.45 SYNE-PCC-01-001132 SYNE-PCC-01-002086 28.85 104 74 0 632 735 30 133 1.1e-09 54.68 SYNE-PCC-01-001132 HINF-KW2-01-000816 37.27 110 63 3 631 739 3 107 5.6e-09 52.37 SYNE-PCC-01-001132 SYNE-PCC-01-001575 30.40 125 82 3 631 752 8 130 2.1e-08 50.45 SYNE-PCC-01-001132 SYNE-PCC-01-002618 42.37 59 34 0 631 689 13 71 4.7e-08 49.29 SYNE-PCC-01-001132 SYNE-PCC-01-002731 32.08 106 70 2 630 734 8 112 8.1e-08 48.52 SYNE-PCC-01-001132 SYNE-PCC-01-000414 32.04 103 70 0 632 734 14 116 8.1e-08 48.52 SYNE-PCC-01-001132 SYNE-PCC-01-001461 28.85 104 74 0 631 734 3 106 1.8e-07 47.37 SYNE-PCC-01-001132 SYNE-PCC-01-001437 28.07 114 73 2 628 734 29 140 1.8e-07 47.37 SYNE-PCC-01-001132 HINF-KW2-01-001345 34.62 104 67 1 631 734 4 106 1.8e-07 47.37 SYNE-PCC-01-001132 HINF-KW2-01-000863 32.43 111 70 2 631 739 5 112 2.4e-07 46.98 SYNE-PCC-01-001132 SYNE-PCC-01-002672 33.01 103 67 1 632 734 4 104 6.8e-07 45.44 SYNE-PCC-01-001132 SYNE-PCC-01-002635 29.63 108 76 0 627 734 54 161 8.9e-07 45.05 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001133 sll1673 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001133 SYNE-PCC-01-001133 100.00 452 0 0 1 452 1 452 0.0 775.4 SYNE-PCC-01-001133 SYNE-PCC-01-002618 52.15 163 78 0 290 452 151 313 1.4e-45 172.9 SYNE-PCC-01-001133 SYNE-PCC-01-002618 33.01 103 66 1 32 131 35 137 2.8e-12 62.39 SYNE-PCC-01-001133 SYNE-PCC-01-000542 46.63 163 86 1 290 452 1102 1263 2.6e-39 152.1 SYNE-PCC-01-001133 SYNE-PCC-01-000542 29.01 162 107 4 291 448 434 591 1.2e-12 63.54 SYNE-PCC-01-001133 SYNE-PCC-01-001306 29.59 267 138 7 32 273 41 282 1.0e-22 97.06 SYNE-PCC-01-001133 SYNE-PCC-01-001306 33.72 86 56 1 32 116 763 848 7.5e-10 54.30 SYNE-PCC-01-001133 SYNE-PCC-01-001461 39.56 91 55 0 32 122 25 115 6.1e-20 87.81 SYNE-PCC-01-001133 SYNE-PCC-01-002033 45.05 91 47 1 32 122 20 107 1.4e-19 86.66 SYNE-PCC-01-001133 SYNE-PCC-01-002731 38.04 92 57 0 32 123 31 122 6.3e-17 77.80 SYNE-PCC-01-001133 SYNE-PCC-01-002086 38.94 113 69 0 11 123 30 142 2.4e-16 75.87 SYNE-PCC-01-001133 SYNE-PCC-01-000414 35.40 113 73 0 10 122 13 125 7.7e-15 70.86 SYNE-PCC-01-001133 SYNE-PCC-01-001437 39.25 107 54 3 32 131 54 156 6.6e-14 67.78 SYNE-PCC-01-001133 SYNE-PCC-01-002672 33.63 113 73 1 10 122 3 113 2.8e-12 62.39 SYNE-PCC-01-001133 SYNE-PCC-01-002489 33.33 99 64 1 33 129 26 124 3.6e-12 62.00 SYNE-PCC-01-001133 SYNE-PCC-01-002635 31.33 83 57 0 48 130 96 178 4.7e-12 61.62 SYNE-PCC-01-001133 HINF-KW2-01-001671 31.52 92 61 1 32 123 24 113 4.7e-12 61.62 SYNE-PCC-01-001133 HINF-KW2-01-001345 38.46 91 55 1 33 123 27 116 8.0e-12 60.85 SYNE-PCC-01-001133 SYNE-PCC-01-000242 36.17 94 58 1 32 125 26 117 4.0e-11 58.54 SYNE-PCC-01-001133 HINF-KW2-01-000816 32.61 92 58 2 32 123 25 112 5.2e-11 58.15 SYNE-PCC-01-001133 SYNE-PCC-01-002788 33.90 118 78 0 6 123 2 119 6.8e-11 57.77 SYNE-PCC-01-001133 SYNE-PCC-01-002879 35.14 111 72 0 4 114 713 823 1.2e-10 57.00 SYNE-PCC-01-001133 SYNE-PCC-01-000800 32.76 116 78 0 5 120 414 529 3.4e-10 55.45 SYNE-PCC-01-001133 SYNE-PCC-01-002486 30.00 90 61 1 33 122 25 112 4.4e-10 55.07 SYNE-PCC-01-001133 SYNE-PCC-01-000523 29.35 92 61 2 33 122 25 114 7.5e-10 54.30 SYNE-PCC-01-001133 SYNE-PCC-01-002221 33.33 93 57 3 32 122 26 115 6.4e-09 51.22 SYNE-PCC-01-001133 SYNE-PCC-01-000877 32.26 93 58 2 32 123 27 115 6.4e-09 51.22 SYNE-PCC-01-001133 SYNE-PCC-01-002617 31.82 88 59 1 32 118 1213 1300 1.4e-08 50.06 SYNE-PCC-01-001133 SYNE-PCC-01-002873 30.56 108 75 0 11 118 927 1034 1.8e-08 49.68 SYNE-PCC-01-001133 HINF-KW2-01-000863 30.00 90 60 1 32 121 27 113 2.4e-08 49.29 SYNE-PCC-01-001133 SYNE-PCC-01-001132 26.51 83 61 0 32 114 653 735 2.7e-07 45.82 SYNE-PCC-01-001133 SYNE-PCC-01-000518 27.94 68 47 1 55 122 49 114 2.7e-07 45.82 SYNE-PCC-01-001133 SYNE-PCC-01-000608 25.84 89 66 0 35 123 32 120 5.9e-07 44.67 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001160 sll1708 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001160 SYNE-PCC-01-001160 100.00 226 0 0 1 226 1 226 4e-125 436.0 SYNE-PCC-01-001160 SYNE-PCC-01-000608 42.66 218 117 2 17 226 4 221 8.2e-46 172.6 SYNE-PCC-01-001160 SYNE-PCC-01-001075 38.71 217 126 2 17 226 8 224 3.3e-39 150.6 SYNE-PCC-01-001160 HINF-KW2-01-000704 31.03 203 135 1 17 219 5 202 1.2e-31 125.6 SYNE-PCC-01-001160 SYNE-PCC-01-001575 30.95 210 136 1 17 226 7 207 6.3e-30 119.8 SYNE-PCC-01-001160 SYNE-PCC-01-001039 32.73 165 98 5 63 224 71 225 4.7e-17 77.03 SYNE-PCC-01-001160 SYNE-PCC-01-002731 25.94 212 143 5 19 225 10 212 4.0e-16 73.94 SYNE-PCC-01-001160 SYNE-PCC-01-002486 26.17 214 123 5 17 208 1 201 1.4e-13 65.47 SYNE-PCC-01-001160 SYNE-PCC-01-002788 35.90 117 71 3 18 132 6 120 9.2e-13 62.77 SYNE-PCC-01-001160 HINF-KW2-01-001671 25.12 207 134 5 17 208 1 201 1.5e-10 55.45 SYNE-PCC-01-001160 SYNE-PCC-01-000518 28.36 134 90 4 17 147 1 131 5.6e-10 53.53 SYNE-PCC-01-001160 SYNE-PCC-01-000414 37.61 117 67 4 19 132 14 127 5.6e-10 53.53 SYNE-PCC-01-001160 SYNE-PCC-01-002221 33.33 117 75 3 18 133 4 118 7.3e-10 53.14 SYNE-PCC-01-001160 SYNE-PCC-01-000242 29.41 102 70 2 18 119 4 103 1.2e-09 52.37 SYNE-PCC-01-001160 SYNE-PCC-01-002951 35.53 76 41 1 151 226 5 72 1.6e-09 51.99 SYNE-PCC-01-001160 SYNE-PCC-01-002617 28.57 126 83 3 4 126 1179 1300 2.1e-09 51.60 SYNE-PCC-01-001160 SYNE-PCC-01-000800 31.90 116 75 2 18 131 419 532 2.1e-09 51.60 SYNE-PCC-01-001160 SYNE-PCC-01-002672 25.59 211 134 6 19 208 4 212 2.8e-09 51.22 SYNE-PCC-01-001160 SYNE-PCC-01-000511 37.70 61 38 0 166 226 309 369 3.6e-09 50.83 SYNE-PCC-01-001160 SYNE-PCC-01-001461 29.75 121 73 4 18 132 3 117 4.7e-09 50.45 SYNE-PCC-01-001160 SYNE-PCC-01-002033 25.23 222 142 8 21 222 1 218 1.0e-08 49.29 SYNE-PCC-01-001160 SYNE-PCC-01-000523 25.71 140 100 3 17 154 1 138 1.0e-08 49.29 SYNE-PCC-01-001160 SYNE-PCC-01-001306 34.67 75 45 2 48 119 47 120 2.3e-08 48.14 SYNE-PCC-01-001160 SYNE-PCC-01-001306 30.34 89 59 1 48 133 769 857 8.9e-08 46.21 SYNE-PCC-01-001160 HINF-KW2-01-001345 31.62 117 75 3 18 132 4 117 5.2e-08 46.98 SYNE-PCC-01-001160 SYNE-PCC-01-001437 22.62 252 145 10 6 222 19 255 1.2e-07 45.82 SYNE-PCC-01-001160 SYNE-PCC-01-001132 34.23 111 70 2 11 119 623 732 1.2e-07 45.82 SYNE-PCC-01-001160 HINF-KW2-01-000863 30.39 102 68 3 18 119 5 103 1.7e-06 41.97 SYNE-PCC-01-001160 SYNE-PCC-01-002489 29.66 118 73 6 19 130 4 117 2.2e-06 41.59 SYNE-PCC-01-001160 HINF-KW2-01-000816 24.40 209 134 8 18 208 3 205 3.7e-06 40.82 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001280 sll1871 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001280 SYNE-PCC-01-001280 100.00 674 0 0 1 674 1 674 0.0 1191.8 SYNE-PCC-01-001280 SYNE-PCC-01-002879 44.07 270 146 4 391 658 411 677 9.5e-52 194.1 SYNE-PCC-01-001280 SYNE-PCC-01-000891 37.15 323 186 9 363 674 525 841 9.2e-47 177.6 SYNE-PCC-01-001280 SYNE-PCC-01-002617 40.40 297 154 5 396 672 736 1029 2.7e-46 176.0 SYNE-PCC-01-001280 SYNE-PCC-01-001132 37.95 303 167 7 376 662 304 601 2.8e-43 166.0 SYNE-PCC-01-001280 SYNE-PCC-01-002873 42.54 228 124 4 438 662 527 750 5.8e-41 158.3 SYNE-PCC-01-001280 SYNE-PCC-01-001306 39.33 267 148 5 388 650 278 534 1.3e-40 157.1 SYNE-PCC-01-001280 SYNE-PCC-01-000295 36.07 280 147 3 391 663 396 650 3.2e-39 152.5 SYNE-PCC-01-001280 SYNE-PCC-01-000800 39.42 241 126 5 435 663 160 392 3.6e-35 139.0 SYNE-PCC-01-001280 SYNE-PCC-01-001294 35.02 277 155 6 393 659 162 423 4.7e-35 138.7 SYNE-PCC-01-001280 SYNE-PCC-01-001509 38.43 229 137 2 435 663 183 407 5.2e-34 135.2 SYNE-PCC-01-001280 SYNE-PCC-01-001517 36.24 229 141 3 435 663 937 1160 7.8e-30 121.3 SYNE-PCC-01-001280 SYNE-PCC-01-002778 32.40 321 196 8 356 664 296 607 4.3e-28 115.5 SYNE-PCC-01-001280 SYNE-PCC-01-000985 29.79 235 158 5 438 671 69 297 2.1e-22 96.67 SYNE-PCC-01-001280 SYNE-PCC-01-001690 27.48 302 183 11 369 663 473 745 2.4e-15 73.17 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001294 sll1888 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001294 SYNE-PCC-01-001294 100.00 432 0 0 1 432 1 432 0.0 797.3 SYNE-PCC-01-001294 SYNE-PCC-01-002617 31.97 463 272 11 1 427 559 1014 8.9e-45 170.2 SYNE-PCC-01-001294 SYNE-PCC-01-002879 40.24 251 141 3 178 428 442 683 1.6e-38 149.4 SYNE-PCC-01-001294 SYNE-PCC-01-000891 39.00 241 141 4 179 417 585 821 1.2e-36 143.3 SYNE-PCC-01-001294 SYNE-PCC-01-000800 32.18 376 236 6 49 409 4 375 9.9e-36 140.2 SYNE-PCC-01-001294 SYNE-PCC-01-001306 37.78 270 147 4 178 432 305 568 1.3e-35 139.8 SYNE-PCC-01-001294 SYNE-PCC-01-002873 38.49 252 146 3 179 430 512 754 3.8e-35 138.3 SYNE-PCC-01-001294 SYNE-PCC-01-001280 37.96 245 142 4 180 423 424 659 1.0e-32 130.2 SYNE-PCC-01-001294 SYNE-PCC-01-000295 36.72 256 157 4 178 430 402 655 2.3e-32 129.0 SYNE-PCC-01-001294 SYNE-PCC-01-001132 33.83 266 150 5 179 429 350 604 7.6e-28 114.0 SYNE-PCC-01-001294 SYNE-PCC-01-001509 36.16 224 129 4 198 420 190 400 2.4e-26 109.0 SYNE-PCC-01-001294 SYNE-PCC-01-001517 31.60 250 146 10 189 432 935 1165 1.4e-18 83.19 SYNE-PCC-01-001294 SYNE-PCC-01-002778 28.14 263 167 6 178 432 363 611 6.0e-17 77.80 SYNE-PCC-01-001294 SYNE-PCC-01-000985 27.20 250 161 8 178 423 53 285 3.3e-15 72.02 SYNE-PCC-01-001294 SYNE-PCC-01-001690 26.48 253 161 9 178 426 513 744 2.4e-13 65.85 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001306 sll1905 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001306 SYNE-PCC-01-001306 100.00 1014 0 0 1 1014 1 1014 0.0 1887.8 SYNE-PCC-01-001306 SYNE-PCC-01-002617 37.77 736 387 13 272 977 729 1423 4e-104 368.6 SYNE-PCC-01-001306 SYNE-PCC-01-002873 33.43 718 384 15 288 983 507 1152 3.3e-80 289.3 SYNE-PCC-01-001306 SYNE-PCC-01-002873 33.33 108 72 0 20 127 927 1034 6.4e-07 45.82 SYNE-PCC-01-001306 SYNE-PCC-01-002873 32.09 134 83 2 6 131 759 892 5.5e-06 42.74 SYNE-PCC-01-001306 SYNE-PCC-01-002879 35.06 522 271 15 253 754 393 866 2.3e-60 223.4 SYNE-PCC-01-001306 SYNE-PCC-01-002879 31.75 252 151 4 741 992 719 949 2.6e-24 103.6 SYNE-PCC-01-001306 SYNE-PCC-01-002879 30.53 131 90 1 4 134 704 833 3.2e-06 43.51 SYNE-PCC-01-001306 SYNE-PCC-01-000891 37.20 328 174 8 208 530 512 812 5.0e-44 169.1 SYNE-PCC-01-001306 SYNE-PCC-01-001280 39.77 259 149 3 279 534 396 650 1.7e-39 154.1 SYNE-PCC-01-001306 SYNE-PCC-01-001132 41.61 274 139 7 276 530 314 585 3.7e-39 152.9 SYNE-PCC-01-001306 SYNE-PCC-01-001132 32.38 105 70 1 742 846 632 735 5.4e-14 69.32 SYNE-PCC-01-001306 SYNE-PCC-01-000295 37.45 243 144 4 299 534 396 637 1.9e-38 150.6 SYNE-PCC-01-001306 SYNE-PCC-01-001294 35.28 326 173 6 259 568 129 432 1.1e-35 141.4 SYNE-PCC-01-001306 SYNE-PCC-01-000800 29.35 460 271 12 318 760 160 582 3.6e-34 136.3 SYNE-PCC-01-001306 SYNE-PCC-01-000800 29.41 153 105 2 694 846 374 523 1.3e-15 74.71 SYNE-PCC-01-001306 SYNE-PCC-01-000800 31.25 128 85 1 8 135 411 535 3.8e-07 46.59 SYNE-PCC-01-001306 SYNE-PCC-01-002778 33.59 259 153 5 285 535 347 594 8.1e-26 108.6 SYNE-PCC-01-001306 SYNE-PCC-01-001509 38.76 209 117 3 325 530 190 390 1.8e-25 107.5 SYNE-PCC-01-001306 SYNE-PCC-01-001517 33.33 216 132 4 318 530 937 1143 1.5e-24 104.4 SYNE-PCC-01-001306 SYNE-PCC-01-001517 25.13 187 127 5 20 196 9 192 3.2e-06 43.51 SYNE-PCC-01-001306 SYNE-PCC-01-001133 30.31 287 156 6 20 284 11 275 1.0e-20 91.66 SYNE-PCC-01-001306 SYNE-PCC-01-001133 35.24 105 67 1 742 846 11 114 1.5e-11 61.23 SYNE-PCC-01-001306 SYNE-PCC-01-000985 27.07 266 156 7 274 534 44 276 3.3e-19 86.66 SYNE-PCC-01-001306 SYNE-PCC-01-001690 24.41 340 222 7 229 562 434 744 7.3e-19 85.50 SYNE-PCC-01-001306 SYNE-PCC-01-002788 38.46 104 63 1 742 845 7 109 4.5e-16 76.26 SYNE-PCC-01-001306 SYNE-PCC-01-002788 32.74 113 76 0 20 132 7 119 7.1e-06 42.36 SYNE-PCC-01-001306 SYNE-PCC-01-001461 46.55 116 62 0 20 135 4 119 1.1e-14 71.63 SYNE-PCC-01-001306 SYNE-PCC-01-001461 25.24 103 76 1 742 844 4 105 1.5e-08 51.22 SYNE-PCC-01-001306 SYNE-PCC-01-002086 38.94 113 69 0 20 132 30 142 5.4e-14 69.32 SYNE-PCC-01-001306 SYNE-PCC-01-002086 28.57 105 74 1 742 846 30 133 1.5e-08 51.22 SYNE-PCC-01-001306 SYNE-PCC-01-000414 41.03 117 67 2 20 135 14 129 2.1e-13 67.40 SYNE-PCC-01-001306 SYNE-PCC-01-000414 32.04 103 69 1 742 844 14 115 2.8e-10 57.00 SYNE-PCC-01-001306 SYNE-PCC-01-002618 30.36 112 77 1 734 845 6 116 3.9e-12 63.16 SYNE-PCC-01-001306 SYNE-PCC-01-002618 35.00 140 87 1 20 159 14 149 1.3e-07 48.14 SYNE-PCC-01-001306 SYNE-PCC-01-002731 34.97 143 92 1 16 157 6 148 5.1e-12 62.77 SYNE-PCC-01-001306 SYNE-PCC-01-002731 32.11 109 73 1 736 844 4 111 1.1e-09 55.07 SYNE-PCC-01-001306 HINF-KW2-01-001671 32.04 103 66 2 742 844 4 102 3.3e-11 60.08 SYNE-PCC-01-001306 HINF-KW2-01-001671 34.82 112 68 2 41 152 24 130 3.4e-08 50.06 SYNE-PCC-01-001306 SYNE-PCC-01-002033 32.67 101 64 2 744 844 1 97 4.8e-10 56.22 SYNE-PCC-01-001306 SYNE-PCC-01-002033 39.47 114 66 1 22 135 1 111 2.4e-09 53.91 SYNE-PCC-01-001306 HINF-KW2-01-000816 32.26 124 80 1 20 143 4 123 8.1e-10 55.45 SYNE-PCC-01-001306 HINF-KW2-01-000816 33.98 103 63 3 742 844 4 101 5.3e-09 52.76 SYNE-PCC-01-001306 SYNE-PCC-01-002486 33.64 107 66 3 740 845 1 103 1.8e-09 54.30 SYNE-PCC-01-001306 SYNE-PCC-01-000523 35.65 115 70 2 20 132 3 115 5.3e-09 52.76 SYNE-PCC-01-001306 SYNE-PCC-01-001437 29.09 110 68 3 742 844 33 139 3.4e-08 50.06 SYNE-PCC-01-001306 SYNE-PCC-01-001437 36.00 125 71 2 15 132 28 150 2.4e-06 43.90 SYNE-PCC-01-001306 SYNE-PCC-01-000242 31.45 124 83 1 17 140 2 123 5.8e-08 49.29 SYNE-PCC-01-001306 SYNE-PCC-01-000242 29.13 103 70 1 742 844 5 104 9.3e-06 41.97 SYNE-PCC-01-001306 HINF-KW2-01-000863 29.13 103 69 1 742 844 6 104 5.8e-08 49.29 SYNE-PCC-01-001306 HINF-KW2-01-000863 31.90 116 76 1 20 135 6 118 5.5e-06 42.74 SYNE-PCC-01-001306 HINF-KW2-01-001345 29.13 103 71 2 742 844 5 105 9.9e-08 48.52 SYNE-PCC-01-001306 HINF-KW2-01-001345 44.00 50 28 0 83 132 67 116 1.3e-07 48.14 SYNE-PCC-01-001306 SYNE-PCC-01-002672 29.13 103 69 3 742 844 5 103 1.3e-07 48.14 SYNE-PCC-01-001306 SYNE-PCC-01-002672 33.33 129 84 1 20 148 4 130 1.3e-07 48.14 SYNE-PCC-01-001306 SYNE-PCC-01-000518 29.78 178 94 5 20 195 3 151 1.7e-07 47.75 SYNE-PCC-01-001306 SYNE-PCC-01-000518 31.78 107 68 3 740 844 1 104 1.9e-06 44.28 SYNE-PCC-01-001306 SYNE-PCC-01-002489 30.56 108 72 2 741 846 3 109 2.9e-07 46.98 SYNE-PCC-01-001306 SYNE-PCC-01-002489 40.74 54 32 0 83 136 69 122 4.2e-06 43.13 SYNE-PCC-01-001306 SYNE-PCC-01-002635 27.91 129 86 3 717 844 38 160 3.8e-07 46.59 SYNE-PCC-01-001306 SYNE-PCC-01-002635 30.43 138 95 1 3 139 41 178 8.4e-07 45.44 SYNE-PCC-01-001306 SYNE-PCC-01-002221 32.71 107 66 3 742 846 5 107 8.4e-07 45.44 SYNE-PCC-01-001306 SYNE-PCC-01-002221 25.81 186 116 5 20 196 5 177 1.1e-06 45.05 SYNE-PCC-01-001306 SYNE-PCC-01-001575 26.61 109 75 2 737 843 4 109 5.5e-06 42.74 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001437 slr0081 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001437 SYNE-PCC-01-001437 100.00 262 0 0 1 262 1 262 3e-152 526.6 SYNE-PCC-01-001437 SYNE-PCC-01-000414 43.83 235 119 3 33 261 14 241 5.1e-50 186.8 SYNE-PCC-01-001437 SYNE-PCC-01-000242 41.56 231 122 4 30 259 2 220 2.6e-46 174.5 SYNE-PCC-01-001437 SYNE-PCC-01-002033 40.09 232 126 5 35 261 1 224 1.8e-42 161.8 SYNE-PCC-01-001437 SYNE-PCC-01-002486 37.99 229 132 5 32 260 2 220 2.2e-37 144.8 SYNE-PCC-01-001437 SYNE-PCC-01-002672 36.25 240 130 6 33 261 4 231 3.8e-37 144.1 SYNE-PCC-01-001437 SYNE-PCC-01-001461 34.32 236 136 4 32 259 3 227 5.5e-36 140.2 SYNE-PCC-01-001437 HINF-KW2-01-001345 38.72 235 128 6 30 261 2 223 3.5e-35 137.5 SYNE-PCC-01-001437 SYNE-PCC-01-000518 36.29 237 129 5 32 261 2 223 1.9e-33 131.7 SYNE-PCC-01-001437 HINF-KW2-01-000863 32.77 238 141 5 32 261 5 231 3.3e-33 131.0 SYNE-PCC-01-001437 HINF-KW2-01-000816 31.30 230 147 3 32 259 3 223 5.7e-33 130.2 SYNE-PCC-01-001437 HINF-KW2-01-001671 34.20 231 137 3 32 262 2 217 9.0e-31 122.9 SYNE-PCC-01-001437 SYNE-PCC-01-000523 34.32 236 142 4 32 261 2 230 3.4e-30 120.9 SYNE-PCC-01-001437 SYNE-PCC-01-000877 34.63 231 136 7 33 261 6 223 1.2e-27 112.5 SYNE-PCC-01-001437 SYNE-PCC-01-002086 39.52 124 66 2 33 154 30 146 8.5e-21 89.74 SYNE-PCC-01-001437 SYNE-PCC-01-002731 32.10 162 94 4 30 182 7 161 2.0e-17 78.57 SYNE-PCC-01-001437 SYNE-PCC-01-001133 35.37 147 84 3 33 175 11 150 8.2e-16 73.17 SYNE-PCC-01-001437 SYNE-PCC-01-002489 34.13 126 76 2 33 156 4 124 1.1e-15 72.79 SYNE-PCC-01-001437 SYNE-PCC-01-001306 36.00 125 71 2 28 150 15 132 9.1e-15 69.71 SYNE-PCC-01-001437 SYNE-PCC-01-001306 29.31 116 72 3 33 145 742 850 1.1e-09 52.76 SYNE-PCC-01-001437 SYNE-PCC-01-002635 28.10 153 97 4 33 182 58 200 8.5e-13 63.16 SYNE-PCC-01-001437 SYNE-PCC-01-002788 29.84 124 78 3 32 153 6 122 2.5e-12 61.62 SYNE-PCC-01-001437 SYNE-PCC-01-001132 28.07 114 73 2 29 140 628 734 4.7e-11 57.38 SYNE-PCC-01-001437 SYNE-PCC-01-002879 30.77 130 81 2 12 139 699 821 1.0e-10 56.22 SYNE-PCC-01-001437 SYNE-PCC-01-002618 26.36 129 86 2 32 158 13 134 2.3e-10 55.07 SYNE-PCC-01-001437 SYNE-PCC-01-000800 25.52 145 93 4 11 147 392 529 3.9e-10 54.30 SYNE-PCC-01-001437 SYNE-PCC-01-002873 32.00 125 81 2 19 141 759 881 6.7e-10 53.53 SYNE-PCC-01-001437 SYNE-PCC-01-002873 25.86 116 77 2 32 145 926 1034 9.1e-07 43.13 SYNE-PCC-01-001437 SYNE-PCC-01-001075 29.92 127 80 3 28 152 5 124 2.0e-09 51.99 SYNE-PCC-01-001437 SYNE-PCC-01-002617 25.41 122 81 3 27 145 1186 1300 5.7e-09 50.45 SYNE-PCC-01-001437 HINF-KW2-01-000704 27.87 122 76 4 32 148 6 120 2.2e-08 48.52 SYNE-PCC-01-001437 SYNE-PCC-01-000608 30.65 124 75 4 32 151 5 121 3.7e-08 47.75 SYNE-PCC-01-001437 SYNE-PCC-01-002221 28.33 120 72 6 32 147 4 113 8.2e-08 46.59 SYNE-PCC-01-001437 SYNE-PCC-01-001160 22.62 252 145 10 19 255 6 222 1.4e-07 45.82 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001461 slr0115 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001461 SYNE-PCC-01-001461 100.00 241 0 0 1 241 1 241 8e-140 485.0 SYNE-PCC-01-001461 SYNE-PCC-01-002033 40.85 235 131 4 6 236 1 231 3.3e-48 180.6 SYNE-PCC-01-001461 SYNE-PCC-01-000414 39.74 234 135 2 1 230 11 242 2.7e-42 161.0 SYNE-PCC-01-001461 SYNE-PCC-01-002486 38.20 233 137 2 3 235 2 227 4.3e-40 153.7 SYNE-PCC-01-001461 SYNE-PCC-01-000242 38.33 227 132 3 3 229 4 222 1.6e-39 151.8 SYNE-PCC-01-001461 SYNE-PCC-01-002672 37.87 235 138 3 1 230 1 232 7.6e-37 142.9 SYNE-PCC-01-001461 SYNE-PCC-01-001437 34.32 236 136 4 3 227 32 259 4.9e-36 140.2 SYNE-PCC-01-001461 HINF-KW2-01-000816 34.35 230 145 3 1 229 1 225 4.6e-34 133.7 SYNE-PCC-01-001461 HINF-KW2-01-001671 35.09 228 134 5 3 229 2 216 1.5e-32 128.6 SYNE-PCC-01-001461 SYNE-PCC-01-000877 34.07 226 137 5 4 227 6 221 2.0e-29 118.2 SYNE-PCC-01-001461 HINF-KW2-01-001345 32.44 225 145 3 3 227 4 221 2.0e-29 118.2 SYNE-PCC-01-001461 SYNE-PCC-01-000518 33.91 230 137 7 3 227 2 221 1.3e-28 115.5 SYNE-PCC-01-001461 SYNE-PCC-01-000523 32.50 240 144 6 3 232 2 233 9.3e-27 109.4 SYNE-PCC-01-001461 HINF-KW2-01-000863 29.29 239 143 5 2 227 4 229 1.0e-25 105.9 SYNE-PCC-01-001461 SYNE-PCC-01-001306 46.55 116 62 0 4 119 20 135 1.1e-24 102.4 SYNE-PCC-01-001461 SYNE-PCC-01-001306 24.77 109 81 1 4 111 742 850 7.9e-10 53.14 SYNE-PCC-01-001461 SYNE-PCC-01-002731 38.28 128 79 0 4 131 10 137 2.5e-24 101.3 SYNE-PCC-01-001461 SYNE-PCC-01-001133 39.29 112 68 0 4 115 11 122 8.2e-23 96.29 SYNE-PCC-01-001461 SYNE-PCC-01-002489 34.36 163 94 4 1 151 1 162 1.4e-22 95.52 SYNE-PCC-01-001461 SYNE-PCC-01-002635 37.04 135 84 1 4 137 58 192 6.9e-22 93.20 SYNE-PCC-01-001461 SYNE-PCC-01-002086 32.50 120 81 0 1 120 27 146 4.5e-21 90.51 SYNE-PCC-01-001461 SYNE-PCC-01-002788 33.61 119 79 0 1 119 4 122 8.4e-20 86.27 SYNE-PCC-01-001461 SYNE-PCC-01-002618 31.62 117 80 0 3 119 13 129 9.7e-16 72.79 SYNE-PCC-01-001461 SYNE-PCC-01-000800 29.73 111 78 0 3 113 419 529 5.9e-13 63.54 SYNE-PCC-01-001461 SYNE-PCC-01-000608 23.87 222 157 4 3 222 5 216 5.0e-12 60.46 SYNE-PCC-01-001461 SYNE-PCC-01-002879 27.45 102 74 0 4 105 720 821 9.4e-11 56.22 SYNE-PCC-01-001461 SYNE-PCC-01-002873 25.69 109 81 0 3 111 926 1034 1.6e-10 55.45 SYNE-PCC-01-001461 SYNE-PCC-01-002873 20.00 145 111 1 3 142 772 916 6.9e-06 40.05 SYNE-PCC-01-001461 SYNE-PCC-01-001132 28.85 104 74 0 3 106 631 734 1.6e-10 55.45 SYNE-PCC-01-001461 HINF-KW2-01-000704 27.98 218 124 9 3 214 6 196 1.6e-10 55.45 SYNE-PCC-01-001461 SYNE-PCC-01-001575 29.37 126 85 2 3 126 8 131 2.3e-09 51.60 SYNE-PCC-01-001461 SYNE-PCC-01-002221 26.96 115 79 3 3 115 4 115 5.1e-09 50.45 SYNE-PCC-01-001461 SYNE-PCC-01-001160 29.75 121 73 4 3 117 18 132 5.1e-09 50.45 SYNE-PCC-01-001461 SYNE-PCC-01-002617 25.68 148 101 4 3 146 1191 1333 1.1e-08 49.29 SYNE-PCC-01-001461 SYNE-PCC-01-002778 27.83 115 81 1 4 118 632 744 9.7e-08 46.21 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001509 slr0210 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001509 SYNE-PCC-01-001509 100.00 417 0 0 1 417 1 417 0.0 817.4 SYNE-PCC-01-001509 SYNE-PCC-01-000295 40.17 229 126 2 190 407 422 650 9.8e-41 156.8 SYNE-PCC-01-001509 SYNE-PCC-01-001280 38.43 229 137 2 183 407 435 663 7.3e-36 140.6 SYNE-PCC-01-001509 SYNE-PCC-01-002879 39.91 228 128 3 190 411 462 686 1.8e-34 136.0 SYNE-PCC-01-001509 SYNE-PCC-01-000800 34.77 302 176 9 124 409 98 394 2.0e-33 132.5 SYNE-PCC-01-001509 SYNE-PCC-01-000891 36.60 235 137 3 190 414 604 836 7.5e-33 130.6 SYNE-PCC-01-001509 SYNE-PCC-01-002873 36.84 228 135 3 190 411 531 755 9.8e-33 130.2 SYNE-PCC-01-001509 SYNE-PCC-01-001294 31.48 305 174 6 129 400 118 420 1.7e-32 129.4 SYNE-PCC-01-001509 SYNE-PCC-01-002617 37.66 231 123 3 190 402 782 1009 4.9e-32 127.9 SYNE-PCC-01-001509 SYNE-PCC-01-002778 37.33 225 133 6 190 407 383 606 4.6e-30 121.3 SYNE-PCC-01-001509 SYNE-PCC-01-001517 34.86 218 137 4 193 408 947 1161 1.0e-29 120.2 SYNE-PCC-01-001509 SYNE-PCC-01-001306 38.76 209 117 3 190 390 325 530 9.5e-28 113.6 SYNE-PCC-01-001509 SYNE-PCC-01-001132 33.76 234 131 5 190 403 369 598 1.2e-25 106.7 SYNE-PCC-01-001509 SYNE-PCC-01-000985 30.84 214 143 4 195 406 78 288 4.9e-24 101.3 SYNE-PCC-01-001509 SYNE-PCC-01-001690 25.81 217 150 4 195 408 538 746 2.1e-19 85.89 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001517 slr0222 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001517 SYNE-PCC-01-001517 100.00 1178 0 0 1 1178 1 1178 0.0 2247.2 SYNE-PCC-01-001517 SYNE-PCC-01-000985 37.50 280 165 5 885 1159 14 288 2.0e-44 170.6 SYNE-PCC-01-001517 SYNE-PCC-01-002873 25.83 631 407 20 564 1167 162 758 8.6e-35 138.7 SYNE-PCC-01-001517 SYNE-PCC-01-002617 23.54 701 440 22 538 1153 318 1007 2.6e-31 127.1 SYNE-PCC-01-001517 SYNE-PCC-01-001280 36.40 250 144 6 925 1160 415 663 8.3e-30 122.1 SYNE-PCC-01-001517 SYNE-PCC-01-002778 34.84 244 152 4 929 1165 368 611 1.4e-29 121.3 SYNE-PCC-01-001517 SYNE-PCC-01-000295 28.94 349 224 9 827 1160 311 650 6.6e-27 112.5 SYNE-PCC-01-001517 SYNE-PCC-01-000891 32.05 259 159 7 915 1160 575 829 1.2e-25 108.2 SYNE-PCC-01-001517 SYNE-PCC-01-001509 34.86 218 137 4 947 1161 193 408 2.8e-25 107.1 SYNE-PCC-01-001517 SYNE-PCC-01-001306 34.26 216 130 4 937 1143 318 530 9.8e-23 98.60 SYNE-PCC-01-001517 SYNE-PCC-01-001306 25.13 187 127 5 9 192 20 196 9.5e-10 55.45 SYNE-PCC-01-001517 SYNE-PCC-01-002879 31.58 285 156 10 914 1164 407 686 3.7e-22 96.67 SYNE-PCC-01-001517 SYNE-PCC-01-001132 32.53 249 141 6 930 1154 351 596 4.1e-21 93.20 SYNE-PCC-01-001517 SYNE-PCC-01-001132 29.73 111 77 1 5 115 628 737 5.8e-07 46.21 SYNE-PCC-01-001517 SYNE-PCC-01-000800 31.13 257 156 8 921 1161 142 393 7.0e-21 92.43 SYNE-PCC-01-001517 SYNE-PCC-01-000800 32.69 104 69 1 8 111 419 521 2.0e-07 47.75 SYNE-PCC-01-001517 SYNE-PCC-01-002220 22.93 689 419 22 496 1101 141 800 1.2e-20 91.66 SYNE-PCC-01-001517 SYNE-PCC-01-001294 29.83 295 172 12 892 1165 152 432 2.7e-20 90.51 SYNE-PCC-01-001517 SYNE-PCC-01-001690 25.40 248 178 5 916 1161 504 746 3.0e-19 87.04 SYNE-PCC-01-001517 SYNE-PCC-01-000983 25.93 243 146 11 656 884 243 465 1.0e-11 62.00 SYNE-PCC-01-001517 SYNE-PCC-01-000983 25.33 225 148 6 506 722 219 431 5.2e-08 49.68 SYNE-PCC-01-001517 SYNE-PCC-01-001133 24.44 266 132 10 261 500 137 359 1.8e-08 51.22 SYNE-PCC-01-001517 SYNE-PCC-01-002672 27.81 151 99 4 9 154 4 149 4.4e-07 46.59 SYNE-PCC-01-001517 HINF-KW2-01-000816 32.50 120 74 4 8 126 3 116 6.4e-06 42.74 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001575 slr0312 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001575 SYNE-PCC-01-001575 100.00 209 0 0 1 209 1 209 1e-114 401.0 SYNE-PCC-01-001575 HINF-KW2-01-000704 36.87 198 121 2 7 200 5 202 2.7e-35 137.5 SYNE-PCC-01-001575 SYNE-PCC-01-000608 32.42 219 131 2 7 208 4 222 2.5e-33 131.0 SYNE-PCC-01-001575 SYNE-PCC-01-001075 35.75 221 126 2 5 209 6 226 1.6e-32 128.3 SYNE-PCC-01-001575 SYNE-PCC-01-001160 30.95 210 136 1 7 207 17 226 5.7e-30 119.8 SYNE-PCC-01-001575 SYNE-PCC-01-002731 29.44 180 118 3 35 206 34 212 1.7e-18 81.65 SYNE-PCC-01-001575 SYNE-PCC-01-002635 24.14 232 147 5 2 206 51 280 1.8e-15 71.63 SYNE-PCC-01-001575 SYNE-PCC-01-002489 27.75 173 109 5 9 167 4 174 3.4e-14 67.40 SYNE-PCC-01-001575 SYNE-PCC-01-001039 24.62 195 144 3 17 208 34 228 5.8e-14 66.63 SYNE-PCC-01-001575 SYNE-PCC-01-000511 46.27 67 36 0 141 207 303 369 2.0e-11 58.15 SYNE-PCC-01-001575 SYNE-PCC-01-001132 31.20 125 81 3 8 130 631 752 3.5e-11 57.38 SYNE-PCC-01-001575 SYNE-PCC-01-002033 33.04 115 74 2 11 125 1 112 1.3e-10 55.45 SYNE-PCC-01-001575 SYNE-PCC-01-000800 31.10 164 100 4 8 163 419 577 1.3e-10 55.45 SYNE-PCC-01-001575 SYNE-PCC-01-002873 30.26 152 102 3 8 157 926 1075 1.7e-10 55.07 SYNE-PCC-01-001575 SYNE-PCC-01-002618 27.52 109 75 2 3 109 8 114 2.3e-10 54.68 SYNE-PCC-01-001575 SYNE-PCC-01-000414 28.10 121 83 2 9 127 14 132 8.6e-10 52.76 SYNE-PCC-01-001575 SYNE-PCC-01-002221 24.56 114 83 3 8 120 4 115 1.9e-09 51.60 SYNE-PCC-01-001575 SYNE-PCC-01-001461 29.37 126 85 2 8 131 3 126 1.9e-09 51.60 SYNE-PCC-01-001575 SYNE-PCC-01-002672 27.27 121 86 1 9 129 4 122 2.5e-09 51.22 SYNE-PCC-01-001575 HINF-KW2-01-000863 26.98 126 88 3 5 129 2 124 1.2e-08 48.91 SYNE-PCC-01-001575 SYNE-PCC-01-002951 39.68 63 38 0 147 209 12 74 3.6e-08 47.37 SYNE-PCC-01-001575 SYNE-PCC-01-002617 25.42 118 83 2 7 121 1190 1305 1.1e-07 45.82 SYNE-PCC-01-001575 SYNE-PCC-01-001306 25.76 132 95 2 40 169 49 179 1.4e-07 45.44 SYNE-PCC-01-001575 SYNE-PCC-01-001306 25.62 121 85 2 4 121 737 855 2.3e-07 44.67 SYNE-PCC-01-001575 HINF-KW2-01-001345 29.51 122 81 3 6 125 2 120 1.4e-07 45.44 SYNE-PCC-01-001575 SYNE-PCC-01-002086 26.05 119 84 3 9 125 30 146 1.8e-07 45.05 SYNE-PCC-01-001575 SYNE-PCC-01-002879 27.21 136 87 4 1 133 712 838 6.8e-07 43.13 SYNE-PCC-01-001575 SYNE-PCC-01-002788 29.66 118 79 2 8 123 6 121 8.9e-07 42.74 SYNE-PCC-01-001575 SYNE-PCC-01-002486 22.69 119 90 1 7 125 1 117 1.5e-06 41.97 SYNE-PCC-01-001575 SYNE-PCC-01-000242 26.44 87 64 0 35 121 29 115 4.4e-06 40.43 SYNE-PCC-01-001575 SYNE-PCC-01-000518 25.00 128 92 2 7 132 1 126 7.5e-06 39.66 SYNE-PCC-01-001575 SYNE-PCC-01-000877 23.68 190 124 5 34 203 29 217 9.8e-06 39.28 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001690 slr0473 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001690 SYNE-PCC-01-001690 100.00 748 0 0 1 748 1 748 0.0 1496.5 SYNE-PCC-01-001690 SYNE-PCC-01-000295 27.95 254 166 6 509 745 397 650 7.4e-21 91.66 SYNE-PCC-01-001690 SYNE-PCC-01-001517 25.40 248 178 5 504 746 916 1161 1.3e-20 90.89 SYNE-PCC-01-001690 SYNE-PCC-01-001306 25.00 340 220 7 434 744 229 562 1.6e-20 90.51 SYNE-PCC-01-001690 SYNE-PCC-01-000800 31.20 266 158 9 497 746 137 393 4.8e-20 88.97 SYNE-PCC-01-001690 SYNE-PCC-01-002879 27.16 243 161 6 518 747 445 684 6.3e-20 88.58 SYNE-PCC-01-001690 SYNE-PCC-01-002873 28.11 249 155 8 509 744 513 750 6.3e-20 88.58 SYNE-PCC-01-001690 SYNE-PCC-01-000542 33.97 156 94 3 144 295 15 165 1.8e-19 87.04 SYNE-PCC-01-001690 SYNE-PCC-01-000542 23.68 152 91 3 145 295 932 1059 6.5e-09 51.99 SYNE-PCC-01-001690 SYNE-PCC-01-001509 25.81 217 150 4 538 746 195 408 4.1e-19 85.89 SYNE-PCC-01-001690 SYNE-PCC-01-001280 28.00 300 184 12 473 745 369 663 4.1e-19 85.89 SYNE-PCC-01-001690 SYNE-PCC-01-000891 26.17 256 166 7 505 745 582 829 4.5e-18 82.42 SYNE-PCC-01-001690 SYNE-PCC-01-002617 25.16 314 194 9 464 744 708 1013 1.3e-17 80.88 SYNE-PCC-01-001690 SYNE-PCC-01-001294 26.48 253 161 9 513 744 178 426 6.5e-17 78.57 SYNE-PCC-01-001690 SYNE-PCC-01-000985 27.54 236 164 5 510 739 49 283 3.2e-16 76.26 SYNE-PCC-01-001690 SYNE-PCC-01-002778 27.30 304 187 12 470 748 315 609 1.2e-15 74.33 SYNE-PCC-01-001690 SYNE-PCC-01-001132 27.89 294 169 12 483 744 319 601 1.0e-14 71.25 SYNE-PCC-01-001690 SYNE-PCC-01-002220 25.00 148 84 3 146 290 469 592 2.0e-10 57.00 SYNE-PCC-01-001690 SYNE-PCC-01-000983 19.75 162 94 2 141 290 47 184 3.9e-06 42.74 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-001777 slr0599 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-001777 SYNE-PCC-01-001777 100.00 535 0 0 1 535 1 535 0.0 807.7 SYNE-PCC-01-001777 SCER-S28-01-000850 27.31 227 124 7 76 269 257 475 3.5e-09 52.37 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002033 slr0947 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002033 SYNE-PCC-01-002033 100.00 234 0 0 1 234 1 234 5e-132 459.1 SYNE-PCC-01-002033 SYNE-PCC-01-001461 40.60 234 133 3 1 231 6 236 3.2e-48 180.6 SYNE-PCC-01-002033 SYNE-PCC-01-000414 41.81 232 123 5 1 225 16 242 2.7e-47 177.6 SYNE-PCC-01-002033 SYNE-PCC-01-001437 40.09 232 126 5 1 224 35 261 1.5e-42 161.8 SYNE-PCC-01-002033 SYNE-PCC-01-000242 39.82 226 126 4 1 225 7 223 5.8e-42 159.8 SYNE-PCC-01-002033 HINF-KW2-01-000816 40.99 222 127 4 1 222 6 223 1.1e-37 145.6 SYNE-PCC-01-002033 SYNE-PCC-01-002486 38.26 230 133 3 1 229 5 226 4.4e-34 133.7 SYNE-PCC-01-002033 HINF-KW2-01-001345 37.23 231 132 5 1 228 7 227 5.4e-32 126.7 SYNE-PCC-01-002033 SYNE-PCC-01-000877 35.27 224 137 3 1 224 8 223 1.2e-31 125.6 SYNE-PCC-01-002033 HINF-KW2-01-001671 33.33 228 138 5 1 227 5 219 2.1e-31 124.8 SYNE-PCC-01-002033 SYNE-PCC-01-002672 31.60 231 148 5 1 225 6 232 2.5e-29 117.9 SYNE-PCC-01-002033 HINF-KW2-01-000863 32.17 230 144 4 1 224 8 231 2.1e-28 114.8 SYNE-PCC-01-002033 SYNE-PCC-01-000518 36.68 229 132 7 1 225 5 224 3.6e-28 114.0 SYNE-PCC-01-002033 SYNE-PCC-01-002731 31.07 206 116 5 1 203 12 194 3.8e-25 104.0 SYNE-PCC-01-002033 SYNE-PCC-01-002086 40.00 115 66 1 1 112 32 146 1.0e-22 95.90 SYNE-PCC-01-002033 SYNE-PCC-01-000523 31.78 236 139 8 1 224 5 230 3.9e-22 93.97 SYNE-PCC-01-002033 SYNE-PCC-01-001133 41.82 110 61 1 1 107 13 122 8.7e-22 92.82 SYNE-PCC-01-002033 SYNE-PCC-01-002489 38.84 121 69 2 1 116 6 126 1.6e-20 88.58 SYNE-PCC-01-002033 SYNE-PCC-01-002635 37.31 134 80 2 1 130 60 193 3.6e-20 87.43 SYNE-PCC-01-002033 SYNE-PCC-01-001306 39.47 114 66 1 1 111 22 135 4.0e-19 83.96 SYNE-PCC-01-002033 SYNE-PCC-01-001306 30.36 112 74 2 1 108 744 855 4.0e-11 57.38 SYNE-PCC-01-002033 SYNE-PCC-01-002618 38.60 114 67 1 1 111 16 129 2.9e-17 77.80 SYNE-PCC-01-002033 SYNE-PCC-01-002788 35.09 114 71 1 1 111 9 122 2.4e-16 74.71 SYNE-PCC-01-002033 SYNE-PCC-01-000800 31.76 148 95 3 1 144 422 567 5.1e-14 67.01 SYNE-PCC-01-002033 SYNE-PCC-01-001132 32.67 101 65 1 1 98 634 734 1.6e-12 62.00 SYNE-PCC-01-002033 SYNE-PCC-01-002617 30.84 107 70 1 1 103 1194 1300 1.1e-11 59.31 SYNE-PCC-01-002033 SYNE-PCC-01-002617 33.33 99 53 3 1 95 1038 1127 1.6e-07 45.44 SYNE-PCC-01-002033 SYNE-PCC-01-002879 29.13 103 70 1 1 100 722 824 1.8e-11 58.54 SYNE-PCC-01-002033 SYNE-PCC-01-002221 33.33 105 68 2 1 103 7 111 3.1e-11 57.77 SYNE-PCC-01-002033 SYNE-PCC-01-001575 33.05 118 70 3 1 112 11 125 1.5e-10 55.45 SYNE-PCC-01-002033 SYNE-PCC-01-001075 35.40 113 70 3 1 110 12 124 7.6e-10 53.14 SYNE-PCC-01-002033 SYNE-PCC-01-002873 29.25 106 72 1 1 103 929 1034 9.9e-10 52.76 SYNE-PCC-01-002033 SYNE-PCC-01-002873 30.25 119 75 2 1 111 775 893 4.9e-09 50.45 SYNE-PCC-01-002033 HINF-KW2-01-000704 30.09 113 76 3 1 110 9 121 2.9e-09 51.22 SYNE-PCC-01-002033 SYNE-PCC-01-001160 25.23 222 142 8 1 218 21 222 1.1e-08 49.29 SYNE-PCC-01-002033 SYNE-PCC-01-000608 28.71 101 67 3 1 96 8 108 1.2e-07 45.82 SYNE-PCC-01-002033 SYNE-PCC-01-001517 27.59 116 80 2 1 112 11 126 7.9e-07 43.13 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002086 slr1042 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002086 SYNE-PCC-01-002086 100.00 147 0 0 1 147 1 147 1.1e-84 300.8 SYNE-PCC-01-002086 SYNE-PCC-01-000414 40.00 120 72 0 27 146 11 130 3.7e-24 99.75 SYNE-PCC-01-002086 SYNE-PCC-01-001306 38.94 113 69 0 30 142 20 132 1.9e-23 97.44 SYNE-PCC-01-002086 SYNE-PCC-01-001306 28.57 105 74 1 30 133 742 846 1.5e-09 51.22 SYNE-PCC-01-002086 SYNE-PCC-01-002033 40.00 115 66 1 32 146 1 112 5.4e-23 95.90 SYNE-PCC-01-002086 HINF-KW2-01-000816 43.33 120 64 2 27 146 1 116 5.4e-23 95.90 SYNE-PCC-01-002086 SYNE-PCC-01-002731 39.32 117 71 0 30 146 10 126 7.1e-23 95.52 SYNE-PCC-01-002086 SYNE-PCC-01-002635 35.59 118 75 1 29 145 57 174 2.3e-21 90.51 SYNE-PCC-01-002086 SYNE-PCC-01-001461 32.50 120 81 0 27 146 1 120 2.3e-21 90.51 SYNE-PCC-01-002086 SYNE-PCC-01-001437 39.52 124 66 2 30 146 33 154 3.9e-21 89.74 SYNE-PCC-01-002086 SYNE-PCC-01-001133 38.94 113 69 0 30 142 11 123 4.3e-20 86.27 SYNE-PCC-01-002086 SYNE-PCC-01-000242 34.19 117 75 1 30 146 5 119 6.8e-18 78.95 SYNE-PCC-01-002086 SYNE-PCC-01-002873 33.33 108 72 0 30 137 927 1034 1.7e-16 74.33 SYNE-PCC-01-002086 SYNE-PCC-01-002873 27.27 121 83 1 30 145 773 893 4.9e-08 46.21 SYNE-PCC-01-002086 HINF-KW2-01-000863 35.34 116 72 1 30 145 6 118 4.9e-16 72.79 SYNE-PCC-01-002086 SYNE-PCC-01-002489 31.97 122 81 1 27 146 1 122 6.4e-16 72.40 SYNE-PCC-01-002086 SYNE-PCC-01-002788 31.93 119 81 0 27 145 4 122 1.4e-15 71.25 SYNE-PCC-01-002086 SYNE-PCC-01-002879 31.86 113 77 0 29 141 719 831 7.1e-15 68.94 SYNE-PCC-01-002086 HINF-KW2-01-001345 34.19 117 76 1 30 146 5 120 7.1e-15 68.94 SYNE-PCC-01-002086 SYNE-PCC-01-002672 32.50 120 79 1 27 146 1 118 1.6e-14 67.78 SYNE-PCC-01-002086 SYNE-PCC-01-002486 31.62 117 78 1 30 146 3 117 2.7e-14 67.01 SYNE-PCC-01-002086 SYNE-PCC-01-002221 34.43 122 71 5 30 147 5 121 3.5e-14 66.63 SYNE-PCC-01-002086 SYNE-PCC-01-000523 31.09 119 78 2 30 146 3 119 1.3e-13 64.70 SYNE-PCC-01-002086 SYNE-PCC-01-001132 28.85 104 74 0 30 133 632 735 1.5e-12 61.23 SYNE-PCC-01-002086 SYNE-PCC-01-000800 26.72 116 85 0 30 145 420 535 1.9e-12 60.85 SYNE-PCC-01-002086 SYNE-PCC-01-002618 30.17 116 81 0 30 145 14 129 3.3e-12 60.08 SYNE-PCC-01-002086 HINF-KW2-01-001671 29.91 117 80 1 30 146 3 117 4.3e-12 59.69 SYNE-PCC-01-002086 SYNE-PCC-01-002617 30.28 109 75 1 30 137 1192 1300 3.6e-11 56.61 SYNE-PCC-01-002086 SYNE-PCC-01-000518 28.57 119 81 2 30 146 3 119 1.1e-10 55.07 SYNE-PCC-01-002086 SYNE-PCC-01-000877 28.21 117 81 1 30 146 6 119 1.5e-09 51.22 SYNE-PCC-01-002086 SYNE-PCC-01-000608 28.45 116 79 2 30 142 6 120 2.9e-08 46.98 SYNE-PCC-01-002086 SYNE-PCC-01-001575 26.05 119 84 3 30 146 9 125 1.1e-07 45.05 SYNE-PCC-01-002086 SYNE-PCC-01-002778 24.39 123 91 1 22 144 624 744 5.4e-07 42.74 SYNE-PCC-01-002086 HINF-KW2-01-000704 24.79 117 84 2 30 144 7 121 5.4e-07 42.74 SYNE-PCC-01-002086 SYNE-PCC-01-001160 26.21 103 72 3 30 130 19 119 7.8e-06 38.89 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002220 slr1212 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002220 SYNE-PCC-01-002220 100.00 844 0 0 1 844 1 844 0.0 1624.4 SYNE-PCC-01-002220 SYNE-PCC-01-000542 39.44 180 106 2 450 629 914 1090 1.9e-36 143.7 SYNE-PCC-01-002220 SYNE-PCC-01-000542 27.69 195 114 6 460 631 8 198 2.6e-14 70.09 SYNE-PCC-01-002220 SYNE-PCC-01-000983 33.47 239 130 3 450 662 33 268 7.1e-36 141.7 SYNE-PCC-01-002220 SYNE-PCC-01-000983 30.74 244 156 5 128 365 194 430 4.5e-22 95.90 SYNE-PCC-01-002220 SYNE-PCC-01-002617 27.18 471 325 11 171 636 304 761 2.1e-35 140.2 SYNE-PCC-01-002220 SYNE-PCC-01-002778 27.32 399 230 11 456 801 155 546 3.1e-31 126.3 SYNE-PCC-01-002220 SYNE-PCC-01-001517 23.12 692 414 23 141 800 496 1101 9.6e-25 104.8 SYNE-PCC-01-002220 SYNE-PCC-01-001690 25.00 148 84 3 469 592 146 290 2.3e-10 57.00 SYNE-PCC-01-002220 SYNE-PCC-01-002879 27.19 114 77 2 131 241 398 508 6.9e-07 45.44 SYNE-PCC-01-002220 SYNE-PCC-01-002873 22.76 312 190 10 204 494 275 556 6.9e-07 45.44 SYNE-PCC-01-002220 SYNE-PCC-01-000891 37.21 86 53 1 129 214 524 608 9.1e-07 45.05 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002221 slr1213 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002221 SYNE-PCC-01-002221 100.00 241 0 0 1 241 1 241 1e-136 474.6 SYNE-PCC-01-002221 SYNE-PCC-01-001306 29.03 186 110 5 5 177 20 196 9.7e-16 72.79 SYNE-PCC-01-002221 SYNE-PCC-01-001306 32.56 129 78 4 5 126 742 868 3.9e-09 50.83 SYNE-PCC-01-002221 SYNE-PCC-01-002086 34.43 122 71 5 5 121 30 147 6.9e-14 66.63 SYNE-PCC-01-002221 SYNE-PCC-01-000414 32.28 127 81 4 5 128 14 138 9.0e-14 66.24 SYNE-PCC-01-002221 SYNE-PCC-01-000242 29.17 120 82 3 1 119 1 118 3.4e-13 64.31 SYNE-PCC-01-002221 SYNE-PCC-01-002489 31.93 119 74 4 2 115 1 117 1.0e-12 62.77 SYNE-PCC-01-002221 HINF-KW2-01-001345 38.98 118 66 4 1 115 1 115 2.9e-12 61.23 SYNE-PCC-01-002221 SYNE-PCC-01-001133 30.56 144 86 4 5 136 11 152 8.5e-12 59.69 SYNE-PCC-01-002221 SYNE-PCC-01-002033 33.33 105 68 2 7 111 1 103 3.2e-11 57.77 SYNE-PCC-01-002221 SYNE-PCC-01-001075 30.70 114 76 3 4 115 9 121 5.5e-11 57.00 SYNE-PCC-01-002221 HINF-KW2-01-000816 23.21 237 150 8 2 236 1 207 1.2e-10 55.84 SYNE-PCC-01-002221 SYNE-PCC-01-002618 27.13 129 89 3 4 129 13 139 3.6e-10 54.30 SYNE-PCC-01-002221 SYNE-PCC-01-001160 33.33 117 75 3 4 118 18 133 7.9e-10 53.14 SYNE-PCC-01-002221 SYNE-PCC-01-002672 28.57 133 91 4 2 133 1 130 2.3e-09 51.60 SYNE-PCC-01-002221 SYNE-PCC-01-001575 24.56 114 83 3 4 115 8 120 2.3e-09 51.60 SYNE-PCC-01-002221 SYNE-PCC-01-002788 32.23 121 77 3 2 119 4 122 5.1e-09 50.45 SYNE-PCC-01-002221 SYNE-PCC-01-001461 26.96 115 79 3 4 115 3 115 5.1e-09 50.45 SYNE-PCC-01-002221 SYNE-PCC-01-000523 23.12 160 113 5 4 160 2 154 1.1e-08 49.29 SYNE-PCC-01-002221 SYNE-PCC-01-002731 23.12 173 123 5 5 169 10 180 1.5e-08 48.91 SYNE-PCC-01-002221 HINF-KW2-01-000863 25.93 108 78 2 4 111 5 110 5.7e-08 46.98 SYNE-PCC-01-002221 SYNE-PCC-01-001437 28.33 120 72 6 4 113 32 147 7.4e-08 46.59 SYNE-PCC-01-002221 SYNE-PCC-01-000608 26.72 116 80 3 4 115 5 119 8.2e-07 43.13 SYNE-PCC-01-002221 HINF-KW2-01-000704 22.81 114 85 3 4 115 6 118 1.1e-06 42.74 SYNE-PCC-01-002221 SYNE-PCC-01-000800 26.72 131 87 5 4 128 419 546 1.8e-06 41.97 SYNE-PCC-01-002221 SYNE-PCC-01-002879 26.19 126 88 3 5 127 720 843 3.1e-06 41.20 SYNE-PCC-01-002221 SYNE-PCC-01-001132 29.06 117 78 3 2 115 629 743 5.3e-06 40.43 SYNE-PCC-01-002221 SYNE-PCC-01-002617 30.09 113 71 5 4 111 1191 1300 9.1e-06 39.66 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002486 slr1584 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002486 SYNE-PCC-01-002486 100.00 234 0 0 1 234 1 234 2e-133 463.4 SYNE-PCC-01-002486 SYNE-PCC-01-000518 41.26 223 127 3 1 220 1 222 6.8e-43 162.9 SYNE-PCC-01-002486 HINF-KW2-01-001671 39.73 224 130 1 1 224 1 219 6.8e-43 162.9 SYNE-PCC-01-002486 SYNE-PCC-01-000242 36.82 220 138 1 2 221 4 222 7.5e-42 159.5 SYNE-PCC-01-002486 SYNE-PCC-01-000523 39.13 230 129 3 1 220 1 229 6.4e-41 156.4 SYNE-PCC-01-002486 SYNE-PCC-01-001461 38.20 233 137 2 2 227 3 235 4.1e-40 153.7 SYNE-PCC-01-002486 SYNE-PCC-01-002672 37.00 227 132 2 3 219 4 229 5.1e-38 146.7 SYNE-PCC-01-002486 SYNE-PCC-01-001437 37.99 229 132 5 2 220 32 260 1.9e-37 144.8 SYNE-PCC-01-002486 SYNE-PCC-01-002033 38.26 230 133 3 5 226 1 229 4.4e-34 133.7 SYNE-PCC-01-002486 SYNE-PCC-01-000414 35.68 227 137 3 3 220 14 240 1.2e-31 125.6 SYNE-PCC-01-002486 HINF-KW2-01-000816 33.78 225 142 3 2 221 3 225 4.7e-28 113.6 SYNE-PCC-01-002486 HINF-KW2-01-001345 32.14 224 148 3 2 223 4 225 1.5e-26 108.6 SYNE-PCC-01-002486 SYNE-PCC-01-000877 33.68 190 121 4 47 233 50 237 1.7e-25 105.1 SYNE-PCC-01-002486 HINF-KW2-01-000863 28.19 227 154 3 2 220 5 230 3.3e-21 90.89 SYNE-PCC-01-002486 SYNE-PCC-01-002635 38.66 119 70 2 3 118 58 176 3.8e-17 77.41 SYNE-PCC-01-002486 SYNE-PCC-01-002489 36.36 121 71 3 3 118 4 123 3.5e-15 70.86 SYNE-PCC-01-002486 SYNE-PCC-01-002731 27.50 200 128 6 3 200 10 194 1.3e-14 68.94 SYNE-PCC-01-002486 SYNE-PCC-01-002873 33.11 148 81 3 2 145 926 1059 3.9e-14 67.40 SYNE-PCC-01-002486 SYNE-PCC-01-002086 31.62 117 78 1 3 117 30 146 5.1e-14 67.01 SYNE-PCC-01-002486 SYNE-PCC-01-001160 26.17 214 123 5 1 201 17 208 1.5e-13 65.47 SYNE-PCC-01-002486 SYNE-PCC-01-002617 35.14 111 69 1 1 108 1190 1300 4.3e-13 63.93 SYNE-PCC-01-002486 SYNE-PCC-01-001306 30.17 116 79 1 3 116 20 135 1.3e-12 62.39 SYNE-PCC-01-002486 SYNE-PCC-01-001306 33.93 112 69 3 1 108 740 850 1.5e-10 55.45 SYNE-PCC-01-002486 SYNE-PCC-01-002788 31.62 117 78 1 2 116 6 122 1.6e-12 62.00 SYNE-PCC-01-002486 SYNE-PCC-01-001133 30.36 112 75 2 4 112 11 122 2.8e-12 61.23 SYNE-PCC-01-002486 HINF-KW2-01-000704 26.96 204 129 6 1 201 5 191 8.1e-12 59.69 SYNE-PCC-01-002486 SYNE-PCC-01-002618 31.93 119 75 2 2 116 13 129 1.2e-10 55.84 SYNE-PCC-01-002486 SYNE-PCC-01-002879 31.19 109 73 1 3 109 720 828 2.0e-10 55.07 SYNE-PCC-01-002486 SYNE-PCC-01-001075 27.31 216 127 6 1 202 8 207 2.2e-09 51.60 SYNE-PCC-01-002486 SYNE-PCC-01-000608 23.77 223 151 6 1 214 4 216 7.1e-08 46.59 SYNE-PCC-01-002486 SYNE-PCC-01-001575 22.69 119 90 1 1 117 7 125 1.8e-06 41.97 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002489 slr1588 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002489 SYNE-PCC-01-002489 100.00 421 0 0 1 421 1 421 0.0 816.2 SYNE-PCC-01-002489 SYNE-PCC-01-000542 41.77 249 135 2 157 400 606 849 1.2e-46 176.4 SYNE-PCC-01-002489 SYNE-PCC-01-002731 32.75 171 108 2 4 174 10 173 2.7e-22 95.52 SYNE-PCC-01-002489 SYNE-PCC-01-001461 34.36 163 94 4 1 162 1 151 2.7e-22 95.52 SYNE-PCC-01-002489 SYNE-PCC-01-002033 38.84 121 69 2 6 126 1 116 3.3e-20 88.58 SYNE-PCC-01-002489 SYNE-PCC-01-000414 35.71 126 79 1 1 126 11 134 2.4e-18 82.42 SYNE-PCC-01-002489 HINF-KW2-01-001345 40.52 116 66 1 4 119 5 117 4.1e-18 81.65 SYNE-PCC-01-002489 SYNE-PCC-01-002635 30.00 200 119 6 3 186 57 251 1.1e-15 73.56 SYNE-PCC-01-002489 HINF-KW2-01-000816 35.94 128 76 2 1 128 1 122 1.4e-15 73.17 SYNE-PCC-01-002489 SYNE-PCC-01-001437 34.13 126 76 2 4 124 33 156 1.9e-15 72.79 SYNE-PCC-01-002489 SYNE-PCC-01-001306 38.66 119 71 1 4 122 20 136 1.9e-15 72.79 SYNE-PCC-01-002489 SYNE-PCC-01-001306 31.03 116 77 2 3 117 741 854 1.3e-08 50.06 SYNE-PCC-01-002489 SYNE-PCC-01-002086 31.97 122 81 1 1 122 27 146 2.5e-15 72.40 SYNE-PCC-01-002489 SYNE-PCC-01-002672 35.20 125 77 2 1 125 1 121 7.2e-15 70.86 SYNE-PCC-01-002489 SYNE-PCC-01-002486 36.36 121 71 3 4 123 3 118 7.2e-15 70.86 SYNE-PCC-01-002489 SYNE-PCC-01-001575 27.75 173 109 5 4 174 9 167 7.9e-14 67.40 SYNE-PCC-01-002489 SYNE-PCC-01-001133 32.23 121 80 1 4 124 11 129 7.9e-14 67.40 SYNE-PCC-01-002489 SYNE-PCC-01-002873 34.82 112 71 1 4 115 927 1036 2.3e-13 65.85 SYNE-PCC-01-002489 SYNE-PCC-01-002873 27.35 117 82 2 4 117 773 889 4.7e-06 41.59 SYNE-PCC-01-002489 SYNE-PCC-01-001132 33.05 118 77 1 4 121 632 747 2.3e-13 65.85 SYNE-PCC-01-002489 HINF-KW2-01-000863 32.82 131 79 3 4 130 6 131 6.7e-13 64.31 SYNE-PCC-01-002489 SYNE-PCC-01-000518 33.06 124 81 1 4 127 3 124 8.8e-13 63.93 SYNE-PCC-01-002489 SYNE-PCC-01-002221 31.93 119 74 4 1 117 2 115 1.9e-12 62.77 SYNE-PCC-01-002489 SYNE-PCC-01-000242 30.83 120 79 2 4 123 5 120 1.9e-12 62.77 SYNE-PCC-01-002489 SYNE-PCC-01-002879 31.90 116 77 1 2 117 718 831 2.5e-12 62.39 SYNE-PCC-01-002489 SYNE-PCC-01-000800 31.53 111 74 1 4 114 420 528 1.3e-11 60.08 SYNE-PCC-01-002489 SYNE-PCC-01-000523 32.58 132 83 2 4 135 3 128 2.2e-11 59.31 SYNE-PCC-01-002489 SYNE-PCC-01-002788 28.57 119 83 1 1 119 4 120 3.7e-11 58.54 SYNE-PCC-01-002489 HINF-KW2-01-000704 25.73 171 119 3 4 174 7 169 1.1e-10 57.00 SYNE-PCC-01-002489 HINF-KW2-01-001671 29.55 132 85 3 4 135 3 126 2.4e-10 55.84 SYNE-PCC-01-002489 SYNE-PCC-01-002618 26.90 145 88 2 4 132 14 156 3.1e-10 55.45 SYNE-PCC-01-002489 SYNE-PCC-01-000608 28.81 118 80 3 4 119 6 121 9.1e-10 53.91 SYNE-PCC-01-002489 SYNE-PCC-01-002778 27.87 122 84 2 2 123 630 747 2.5e-07 45.82 SYNE-PCC-01-002489 SYNE-PCC-01-000877 26.19 126 88 2 4 129 6 126 9.4e-07 43.90 SYNE-PCC-01-002489 SYNE-PCC-01-002617 27.19 114 74 3 4 113 1192 1300 4.7e-06 41.59 SYNE-PCC-01-002489 SYNE-PCC-01-001160 29.66 118 73 6 4 117 19 130 4.7e-06 41.59 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002617 slr1759 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002617 SYNE-PCC-01-002617 100.00 1462 0 0 1 1462 1 1462 0.0 2740.7 SYNE-PCC-01-002617 SYNE-PCC-01-001306 38.24 680 353 13 761 1401 304 955 1e-104 371.3 SYNE-PCC-01-002617 SYNE-PCC-01-001306 28.81 118 83 1 1183 1300 11 127 3.1e-10 57.38 SYNE-PCC-01-002617 SYNE-PCC-01-001306 35.37 82 50 2 1036 1116 20 99 2.9e-08 50.83 SYNE-PCC-01-002617 SYNE-PCC-01-002873 37.39 658 348 15 763 1401 512 1124 4.7e-99 352.4 SYNE-PCC-01-002617 SYNE-PCC-01-002879 38.96 403 214 5 764 1147 444 833 1.6e-75 274.2 SYNE-PCC-01-002617 SYNE-PCC-01-002879 39.74 156 93 1 1149 1304 677 831 5.9e-25 106.3 SYNE-PCC-01-002617 SYNE-PCC-01-001132 34.40 407 232 10 762 1145 349 743 2.3e-53 200.7 SYNE-PCC-01-002617 SYNE-PCC-01-001132 34.21 114 74 1 1187 1300 627 739 2.1e-14 71.25 SYNE-PCC-01-002617 SYNE-PCC-01-000891 45.78 249 126 3 762 1009 584 824 2.5e-52 197.2 SYNE-PCC-01-002617 SYNE-PCC-01-001280 41.26 269 135 5 764 1029 424 672 1.7e-48 184.5 SYNE-PCC-01-002617 SYNE-PCC-01-001294 31.97 463 272 11 559 1014 1 427 4.9e-48 183.0 SYNE-PCC-01-002617 SYNE-PCC-01-000800 35.14 387 226 9 764 1137 149 523 3.2e-47 180.3 SYNE-PCC-01-002617 SYNE-PCC-01-000800 33.80 142 89 2 1180 1317 404 544 5.0e-16 76.64 SYNE-PCC-01-002617 SYNE-PCC-01-000295 38.06 247 135 4 774 1013 414 649 8.5e-40 155.6 SYNE-PCC-01-002617 SYNE-PCC-01-002778 27.25 510 310 11 575 1043 151 640 3.9e-37 146.7 SYNE-PCC-01-002617 SYNE-PCC-01-001509 37.66 231 123 3 782 1009 190 402 1.9e-31 127.9 SYNE-PCC-01-002617 SYNE-PCC-01-001517 32.49 237 136 5 775 1007 937 1153 1.8e-29 121.3 SYNE-PCC-01-002617 SYNE-PCC-01-001517 25.14 183 126 5 304 482 527 702 8.5e-08 49.29 SYNE-PCC-01-002617 SYNE-PCC-01-002220 26.50 434 300 13 304 722 171 600 7.7e-25 105.9 SYNE-PCC-01-002617 SYNE-PCC-01-000985 24.71 255 168 5 763 1013 54 288 3.5e-17 80.49 SYNE-PCC-01-002617 SYNE-PCC-01-002788 35.71 126 77 2 1186 1311 1 122 7.7e-17 79.34 SYNE-PCC-01-002617 SYNE-PCC-01-001690 25.20 254 164 5 763 1013 514 744 1.0e-16 78.95 SYNE-PCC-01-002617 SYNE-PCC-01-002635 25.11 223 150 7 1177 1388 43 259 2.6e-12 64.31 SYNE-PCC-01-002617 SYNE-PCC-01-002486 35.14 111 69 1 1190 1300 1 108 3.3e-12 63.93 SYNE-PCC-01-002617 SYNE-PCC-01-001133 33.03 109 72 1 1192 1300 11 118 2.8e-11 60.85 SYNE-PCC-01-002617 SYNE-PCC-01-001133 32.61 92 58 3 1026 1116 2 90 1.5e-07 48.52 SYNE-PCC-01-002617 SYNE-PCC-01-000414 28.57 119 84 1 1182 1300 4 121 3.7e-11 60.46 SYNE-PCC-01-002617 SYNE-PCC-01-000414 29.41 102 60 3 1036 1127 14 113 1.6e-06 45.05 SYNE-PCC-01-002617 SYNE-PCC-01-002033 30.84 107 70 1 1194 1300 1 103 8.2e-11 59.31 SYNE-PCC-01-002617 SYNE-PCC-01-002033 33.33 99 53 3 1038 1127 1 95 1.2e-06 45.44 SYNE-PCC-01-002617 SYNE-PCC-01-000523 30.50 141 85 4 1190 1325 1 133 3.1e-10 57.38 SYNE-PCC-01-002617 SYNE-PCC-01-002086 30.28 109 75 1 1192 1300 30 137 5.3e-10 56.61 SYNE-PCC-01-002617 SYNE-PCC-01-002731 28.95 114 80 1 1192 1305 10 122 9.1e-10 55.84 SYNE-PCC-01-002617 SYNE-PCC-01-002672 30.60 134 86 3 1192 1324 4 131 1.2e-09 55.45 SYNE-PCC-01-002617 HINF-KW2-01-000816 30.00 110 72 2 1191 1300 3 107 7.7e-09 52.76 SYNE-PCC-01-002617 HINF-KW2-01-000863 29.09 110 74 1 1191 1300 5 110 1.0e-08 52.37 SYNE-PCC-01-002617 SYNE-PCC-01-001160 28.57 126 83 3 1179 1300 4 126 1.7e-08 51.60 SYNE-PCC-01-002617 SYNE-PCC-01-001437 25.41 122 81 3 1186 1300 27 145 3.8e-08 50.45 SYNE-PCC-01-002617 SYNE-PCC-01-001461 26.17 149 99 5 1191 1333 3 146 8.5e-08 49.29 SYNE-PCC-01-002617 SYNE-PCC-01-002618 27.19 114 82 1 1189 1302 11 123 1.1e-07 48.91 SYNE-PCC-01-002617 HINF-KW2-01-001671 26.32 114 80 2 1192 1305 4 113 1.9e-07 48.14 SYNE-PCC-01-002617 SYNE-PCC-01-001075 25.20 123 87 3 1189 1309 7 126 4.2e-07 46.98 SYNE-PCC-01-002617 HINF-KW2-01-001345 30.19 106 72 2 1191 1296 4 107 4.2e-07 46.98 SYNE-PCC-01-002617 SYNE-PCC-01-001575 25.42 118 83 2 1190 1305 7 121 9.4e-07 45.82 SYNE-PCC-01-002617 SYNE-PCC-01-000242 26.61 109 77 1 1191 1299 4 109 9.4e-07 45.82 SYNE-PCC-01-002617 SYNE-PCC-01-000518 28.45 116 72 3 1190 1300 1 110 2.1e-06 44.67 SYNE-PCC-01-002617 SYNE-PCC-01-000983 23.21 168 111 4 570 722 28 192 3.6e-06 43.90 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002618 slr1760 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002618 SYNE-PCC-01-002618 100.00 315 0 0 1 315 1 315 0.0 630.2 SYNE-PCC-01-002618 SYNE-PCC-01-001133 49.21 189 96 0 125 313 264 452 1.7e-50 188.7 SYNE-PCC-01-002618 SYNE-PCC-01-001133 29.08 141 97 1 14 154 11 148 1.6e-13 65.85 SYNE-PCC-01-002618 SYNE-PCC-01-000542 47.37 190 99 1 121 310 1072 1260 5.0e-47 177.2 SYNE-PCC-01-002618 SYNE-PCC-01-000542 30.51 177 107 6 141 309 423 591 2.2e-10 55.45 SYNE-PCC-01-002618 SYNE-PCC-01-002033 38.60 114 67 1 16 129 1 111 4.2e-17 77.80 SYNE-PCC-01-002618 SYNE-PCC-01-001306 35.00 140 87 1 14 149 20 159 2.7e-16 75.10 SYNE-PCC-01-002618 SYNE-PCC-01-001306 28.57 140 97 2 6 142 734 873 9.6e-14 66.63 SYNE-PCC-01-002618 SYNE-PCC-01-001461 31.62 117 80 0 13 129 3 119 1.3e-15 72.79 SYNE-PCC-01-002618 SYNE-PCC-01-000414 30.47 128 89 0 10 137 10 137 2.1e-13 65.47 SYNE-PCC-01-002618 SYNE-PCC-01-002788 29.66 118 83 0 12 129 5 122 1.1e-12 63.16 SYNE-PCC-01-002618 SYNE-PCC-01-000800 32.73 110 74 0 6 115 412 521 1.8e-12 62.39 SYNE-PCC-01-002618 HINF-KW2-01-000816 35.59 118 72 2 12 129 2 115 3.1e-12 61.62 SYNE-PCC-01-002618 SYNE-PCC-01-002879 23.98 221 153 4 12 231 718 924 4.0e-12 61.23 SYNE-PCC-01-002618 SYNE-PCC-01-002086 30.17 116 81 0 14 129 30 145 9.0e-12 60.08 SYNE-PCC-01-002618 SYNE-PCC-01-002731 30.77 143 87 4 14 151 10 145 1.2e-11 59.69 SYNE-PCC-01-002618 SYNE-PCC-01-000242 23.89 180 114 5 13 171 4 181 2.6e-11 58.54 SYNE-PCC-01-002618 HINF-KW2-01-001345 28.57 126 86 2 13 135 4 128 7.6e-11 57.00 SYNE-PCC-01-002618 SYNE-PCC-01-001132 32.38 105 67 2 13 115 631 733 9.9e-11 56.61 SYNE-PCC-01-002618 SYNE-PCC-01-002486 32.20 118 76 2 13 129 2 116 1.7e-10 55.84 SYNE-PCC-01-002618 SYNE-PCC-01-002489 26.90 145 88 2 14 156 4 132 2.2e-10 55.45 SYNE-PCC-01-002618 SYNE-PCC-01-002873 31.15 122 79 1 13 129 772 893 2.9e-10 55.07 SYNE-PCC-01-002618 SYNE-PCC-01-002873 33.03 109 65 3 12 116 925 1029 2.7e-08 48.52 SYNE-PCC-01-002618 SYNE-PCC-01-002672 29.10 134 90 3 12 145 2 130 2.9e-10 55.07 SYNE-PCC-01-002618 SYNE-PCC-01-001437 26.36 129 86 2 13 134 32 158 2.9e-10 55.07 SYNE-PCC-01-002618 SYNE-PCC-01-001575 27.52 109 75 2 8 114 3 109 3.8e-10 54.68 SYNE-PCC-01-002618 HINF-KW2-01-000863 32.00 125 81 2 13 137 5 125 3.8e-10 54.68 SYNE-PCC-01-002618 SYNE-PCC-01-002221 27.13 129 89 3 13 139 4 129 4.9e-10 54.30 SYNE-PCC-01-002618 SYNE-PCC-01-000523 32.20 118 76 2 13 128 2 117 1.4e-09 52.76 SYNE-PCC-01-002618 HINF-KW2-01-001671 27.35 117 83 1 13 129 2 116 1.4e-09 52.76 SYNE-PCC-01-002618 SYNE-PCC-01-000877 26.67 120 85 1 14 133 6 122 3.2e-09 51.60 SYNE-PCC-01-002618 SYNE-PCC-01-000518 29.10 134 90 3 13 143 2 133 1.2e-08 49.68 SYNE-PCC-01-002618 SYNE-PCC-01-002635 25.00 136 101 1 14 148 58 193 2.1e-08 48.91 SYNE-PCC-01-002618 SYNE-PCC-01-002617 27.19 114 82 1 11 123 1189 1302 2.1e-08 48.91 SYNE-PCC-01-002618 SYNE-PCC-01-002617 34.41 93 56 3 13 100 1035 1127 7.4e-06 40.43 SYNE-PCC-01-002618 SYNE-PCC-01-000608 30.17 116 79 1 13 126 5 120 4.6e-08 47.75 SYNE-PCC-01-002618 SYNE-PCC-01-001075 30.09 113 73 3 7 116 3 112 6.0e-08 47.37 SYNE-PCC-01-002618 HINF-KW2-01-000704 23.33 150 110 3 13 160 6 152 6.7e-07 43.90 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002635 slr1783 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002635 SYNE-PCC-01-002635 100.00 282 0 0 1 282 1 282 3e-161 556.6 SYNE-PCC-01-002635 SYNE-PCC-01-002731 37.00 227 123 4 54 280 6 212 3.7e-38 147.5 SYNE-PCC-01-002635 SYNE-PCC-01-001461 37.04 135 84 1 58 192 4 137 8.4e-22 93.20 SYNE-PCC-01-002635 SYNE-PCC-01-002086 35.59 118 75 1 57 174 29 145 5.4e-21 90.51 SYNE-PCC-01-002635 SYNE-PCC-01-002033 37.31 134 80 2 60 193 1 130 4.6e-20 87.43 SYNE-PCC-01-002635 SYNE-PCC-01-002873 39.45 109 65 1 58 166 927 1034 4.8e-17 77.41 SYNE-PCC-01-002635 SYNE-PCC-01-002873 24.37 197 122 5 58 249 773 947 4.5e-07 44.28 SYNE-PCC-01-002635 SYNE-PCC-01-002486 38.66 119 70 2 58 176 3 118 4.8e-17 77.41 SYNE-PCC-01-002635 HINF-KW2-01-000863 38.66 119 69 2 58 176 6 120 4.0e-16 74.33 SYNE-PCC-01-002635 HINF-KW2-01-000816 38.40 125 72 3 58 182 4 123 4.0e-16 74.33 SYNE-PCC-01-002635 SYNE-PCC-01-002489 30.00 200 119 6 57 251 3 186 6.9e-16 73.56 SYNE-PCC-01-002635 SYNE-PCC-01-000414 33.06 121 80 1 57 177 13 132 1.5e-15 72.40 SYNE-PCC-01-002635 SYNE-PCC-01-001575 24.14 232 147 5 51 280 2 206 2.6e-15 71.63 SYNE-PCC-01-002635 SYNE-PCC-01-000523 37.19 121 71 3 58 176 3 120 4.4e-15 70.86 SYNE-PCC-01-002635 SYNE-PCC-01-000518 28.64 220 120 7 58 255 3 207 5.8e-15 70.48 SYNE-PCC-01-002635 SYNE-PCC-01-001306 30.43 138 95 1 41 178 3 139 9.9e-15 69.71 SYNE-PCC-01-002635 SYNE-PCC-01-001306 26.00 150 104 3 38 181 717 865 2.4e-08 48.52 SYNE-PCC-01-002635 SYNE-PCC-01-001133 27.81 151 105 2 57 204 10 159 9.9e-15 69.71 SYNE-PCC-01-002635 SYNE-PCC-01-000800 35.59 118 75 1 58 175 420 536 9.9e-15 69.71 SYNE-PCC-01-002635 SYNE-PCC-01-002879 28.10 153 108 2 54 205 716 867 3.8e-14 67.78 SYNE-PCC-01-002635 HINF-KW2-01-001345 24.66 223 150 6 58 278 5 211 4.9e-14 67.40 SYNE-PCC-01-002635 HINF-KW2-01-000704 25.79 221 135 6 52 268 1 196 3.2e-13 64.70 SYNE-PCC-01-002635 SYNE-PCC-01-002617 25.11 223 150 7 43 259 1177 1388 4.2e-13 64.31 SYNE-PCC-01-002635 SYNE-PCC-01-002672 37.19 121 73 2 57 177 3 120 9.3e-13 63.16 SYNE-PCC-01-002635 SYNE-PCC-01-001437 28.10 153 97 4 58 200 33 182 9.3e-13 63.16 SYNE-PCC-01-002635 SYNE-PCC-01-002951 51.79 56 27 0 224 279 15 70 1.0e-11 59.69 SYNE-PCC-01-002635 SYNE-PCC-01-000242 26.87 134 95 2 58 191 5 135 1.0e-11 59.69 SYNE-PCC-01-002635 HINF-KW2-01-001671 31.67 120 79 2 58 177 3 119 1.0e-11 59.69 SYNE-PCC-01-002635 SYNE-PCC-01-001132 29.63 108 76 0 54 161 627 734 1.9e-10 55.45 SYNE-PCC-01-002635 SYNE-PCC-01-002788 25.00 128 88 2 52 179 1 120 2.1e-09 51.99 SYNE-PCC-01-002635 SYNE-PCC-01-002618 25.00 136 101 1 58 193 14 148 1.8e-08 48.91 SYNE-PCC-01-002635 SYNE-PCC-01-000877 26.23 122 86 3 55 176 3 120 1.5e-07 45.82 SYNE-PCC-01-002635 SYNE-PCC-01-001075 22.37 228 162 5 56 280 8 223 2.2e-06 41.97 SYNE-PCC-01-002635 SYNE-PCC-01-001039 23.50 200 126 5 82 279 51 225 4.9e-06 40.82 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002672 slr1837 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002672 SYNE-PCC-01-002672 100.00 234 0 0 1 234 1 234 5e-110 386.0 SYNE-PCC-01-002672 SYNE-PCC-01-000518 43.29 231 120 2 4 232 3 224 2.1e-31 124.8 SYNE-PCC-01-002672 SYNE-PCC-01-000523 40.87 230 132 2 4 231 3 230 1.4e-27 112.1 SYNE-PCC-01-002672 SYNE-PCC-01-000242 35.68 227 134 3 4 229 5 220 5.3e-27 110.2 SYNE-PCC-01-002672 SYNE-PCC-01-001437 35.42 240 132 5 4 231 33 261 2.6e-26 107.8 SYNE-PCC-01-002672 SYNE-PCC-01-002486 36.56 227 133 3 4 229 3 219 3.4e-26 107.5 SYNE-PCC-01-002672 HINF-KW2-01-001671 34.80 227 132 3 4 229 3 214 2.2e-25 104.8 SYNE-PCC-01-002672 SYNE-PCC-01-001461 32.00 250 132 5 1 232 1 230 2.9e-25 104.4 SYNE-PCC-01-002672 SYNE-PCC-01-000414 36.17 235 144 4 1 232 11 242 2.7e-23 97.83 SYNE-PCC-01-002672 SYNE-PCC-01-002033 28.88 232 153 6 6 232 1 225 1.4e-19 85.50 SYNE-PCC-01-002672 HINF-KW2-01-000816 30.90 233 147 5 1 229 1 223 9.0e-19 82.80 SYNE-PCC-01-002672 HINF-KW2-01-001345 30.17 232 149 3 4 233 5 225 1.5e-18 82.03 SYNE-PCC-01-002672 HINF-KW2-01-000863 28.82 229 159 3 4 231 6 231 4.2e-16 73.94 SYNE-PCC-01-002672 SYNE-PCC-01-000877 33.33 189 112 5 48 234 50 226 3.9e-14 67.40 SYNE-PCC-01-002672 SYNE-PCC-01-002731 33.65 104 67 1 3 104 9 112 9.6e-13 62.77 SYNE-PCC-01-002672 SYNE-PCC-01-002489 36.11 108 65 2 1 104 1 108 1.3e-12 62.39 SYNE-PCC-01-002672 SYNE-PCC-01-002788 34.58 107 64 2 1 103 4 108 3.7e-12 60.85 SYNE-PCC-01-002672 SYNE-PCC-01-001133 33.65 104 67 1 3 104 10 113 3.7e-12 60.85 SYNE-PCC-01-002672 SYNE-PCC-01-001306 33.01 103 67 1 4 104 20 122 1.1e-11 59.31 SYNE-PCC-01-002672 SYNE-PCC-01-001306 29.13 103 69 3 5 103 742 844 2.5e-08 48.14 SYNE-PCC-01-002672 SYNE-PCC-01-002879 31.73 104 69 1 2 103 718 821 1.8e-11 58.54 SYNE-PCC-01-002672 SYNE-PCC-01-002086 32.08 106 70 1 1 104 27 132 1.8e-11 58.54 SYNE-PCC-01-002672 SYNE-PCC-01-001132 33.01 103 67 1 4 104 632 734 6.9e-11 56.61 SYNE-PCC-01-002672 SYNE-PCC-01-002635 34.29 105 66 2 3 104 57 161 1.3e-09 52.37 SYNE-PCC-01-002672 HINF-KW2-01-000704 30.69 101 68 1 4 102 7 107 1.3e-09 52.37 SYNE-PCC-01-002672 SYNE-PCC-01-002617 30.10 103 69 1 4 103 1192 1294 4.9e-09 50.45 SYNE-PCC-01-002672 SYNE-PCC-01-002873 32.69 104 68 1 2 103 925 1028 6.4e-09 50.06 SYNE-PCC-01-002672 SYNE-PCC-01-002873 23.36 107 75 2 4 103 773 879 2.7e-07 44.67 SYNE-PCC-01-002672 SYNE-PCC-01-002618 28.85 104 72 2 2 103 12 115 1.9e-08 48.52 SYNE-PCC-01-002672 SYNE-PCC-01-001160 28.71 101 70 1 4 102 19 119 7.1e-08 46.59 SYNE-PCC-01-002672 SYNE-PCC-01-000800 28.16 103 72 1 4 104 420 522 1.2e-07 45.82 SYNE-PCC-01-002672 SYNE-PCC-01-001075 33.65 104 61 4 4 102 10 110 1.6e-07 45.44 SYNE-PCC-01-002672 SYNE-PCC-01-000608 29.13 103 69 2 4 102 6 108 1.6e-07 45.44 SYNE-PCC-01-002672 SYNE-PCC-01-001517 29.13 103 70 2 4 103 9 111 2.1e-07 45.05 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002731 slr1909 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002731 SYNE-PCC-01-002731 100.00 213 0 0 1 213 1 213 3e-111 389.8 SYNE-PCC-01-002731 SYNE-PCC-01-002635 36.23 207 112 4 26 212 74 280 3.0e-34 134.0 SYNE-PCC-01-002731 SYNE-PCC-01-002033 32.09 187 101 5 31 194 20 203 5.3e-23 96.67 SYNE-PCC-01-002731 SYNE-PCC-01-002086 42.00 100 58 0 27 126 47 146 1.1e-20 88.97 SYNE-PCC-01-002731 SYNE-PCC-01-001461 37.84 111 69 0 27 137 21 131 1.5e-20 88.58 SYNE-PCC-01-002731 SYNE-PCC-01-002489 33.77 154 95 2 27 173 21 174 1.9e-20 88.20 SYNE-PCC-01-002731 SYNE-PCC-01-000608 29.63 189 123 2 34 212 32 220 4.7e-19 83.57 SYNE-PCC-01-002731 HINF-KW2-01-000816 28.65 192 105 5 27 194 21 204 8.0e-19 82.80 SYNE-PCC-01-002731 SYNE-PCC-01-001575 29.44 180 118 3 34 212 35 206 1.8e-18 81.65 SYNE-PCC-01-002731 SYNE-PCC-01-001306 36.89 122 76 1 27 148 37 157 1.8e-18 81.65 SYNE-PCC-01-002731 SYNE-PCC-01-001306 32.99 97 64 1 27 122 759 855 8.8e-10 52.76 SYNE-PCC-01-002731 SYNE-PCC-01-000414 28.72 195 107 4 27 194 31 220 3.0e-18 80.88 SYNE-PCC-01-002731 SYNE-PCC-01-001133 38.04 92 57 0 31 122 32 123 2.6e-17 77.80 SYNE-PCC-01-002731 HINF-KW2-01-001345 26.52 181 117 4 26 191 21 200 3.7e-16 73.94 SYNE-PCC-01-002731 SYNE-PCC-01-001437 34.51 142 77 4 27 161 50 182 6.3e-16 73.17 SYNE-PCC-01-002731 HINF-KW2-01-001671 28.18 181 113 5 31 196 24 202 1.1e-15 72.40 SYNE-PCC-01-002731 SYNE-PCC-01-002672 29.12 182 107 3 27 188 21 200 2.4e-15 71.25 SYNE-PCC-01-002731 HINF-KW2-01-000704 27.37 179 103 5 34 200 33 196 1.2e-14 68.94 SYNE-PCC-01-002731 SYNE-PCC-01-001160 26.52 181 121 3 39 212 50 225 2.6e-14 67.78 SYNE-PCC-01-002731 SYNE-PCC-01-002951 50.88 57 28 0 153 209 12 68 3.5e-14 67.40 SYNE-PCC-01-002731 SYNE-PCC-01-000242 27.95 161 108 4 27 182 22 179 1.3e-13 65.47 SYNE-PCC-01-002731 SYNE-PCC-01-002873 35.63 87 56 0 31 117 948 1034 3.8e-13 63.93 SYNE-PCC-01-002731 HINF-KW2-01-000863 31.68 101 66 1 28 128 24 121 8.5e-13 62.77 SYNE-PCC-01-002731 SYNE-PCC-01-002788 28.12 96 69 0 30 125 27 122 1.5e-12 62.00 SYNE-PCC-01-002731 SYNE-PCC-01-002879 34.07 91 60 0 27 117 737 827 1.9e-12 61.62 SYNE-PCC-01-002731 SYNE-PCC-01-002486 26.78 183 117 6 27 194 20 200 4.2e-12 60.46 SYNE-PCC-01-002731 SYNE-PCC-01-001075 23.94 188 128 3 37 212 39 223 1.2e-11 58.92 SYNE-PCC-01-002731 SYNE-PCC-01-000800 32.58 89 60 0 31 119 441 529 4.7e-11 57.00 SYNE-PCC-01-002731 SYNE-PCC-01-000523 32.32 99 63 2 32 128 25 121 1.8e-10 55.07 SYNE-PCC-01-002731 SYNE-PCC-01-002617 31.18 93 63 1 31 122 1213 1305 4.0e-10 53.91 SYNE-PCC-01-002731 SYNE-PCC-01-000518 35.90 78 48 1 54 131 49 124 1.2e-09 52.37 SYNE-PCC-01-002731 SYNE-PCC-01-002618 30.71 127 76 4 26 145 30 151 4.4e-09 50.45 SYNE-PCC-01-002731 SYNE-PCC-01-000877 24.46 184 121 5 26 194 22 202 5.7e-09 50.06 SYNE-PCC-01-002731 SYNE-PCC-01-001132 30.49 82 57 0 31 112 653 734 2.2e-08 48.14 SYNE-PCC-01-002731 SYNE-PCC-01-000511 41.67 48 28 0 153 200 309 356 2.4e-07 44.67 SYNE-PCC-01-002731 SYNE-PCC-01-002221 23.72 156 109 5 27 180 22 169 4.1e-07 43.90 SYNE-PCC-01-002731 SYNE-PCC-01-001039 30.10 103 67 4 103 204 120 218 2.0e-06 41.59 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002778 slr1969 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002778 SYNE-PCC-01-002778 100.00 750 0 0 1 750 1 750 0.0 1407.5 SYNE-PCC-01-002778 SYNE-PCC-01-002617 27.25 510 310 11 151 640 575 1043 9.6e-45 171.0 SYNE-PCC-01-002778 SYNE-PCC-01-000295 33.65 318 191 6 355 659 396 706 2.7e-39 152.9 SYNE-PCC-01-002778 SYNE-PCC-01-000800 28.93 477 297 11 266 727 68 517 1.1e-37 147.5 SYNE-PCC-01-002778 SYNE-PCC-01-001517 34.84 244 152 4 368 611 929 1165 2.6e-34 136.3 SYNE-PCC-01-002778 SYNE-PCC-01-001280 35.23 264 154 6 355 607 407 664 4.5e-34 135.6 SYNE-PCC-01-002778 SYNE-PCC-01-002879 36.40 261 142 7 355 601 427 677 1.3e-33 134.0 SYNE-PCC-01-002778 SYNE-PCC-01-001132 28.67 415 258 9 343 727 323 729 1.4e-32 130.6 SYNE-PCC-01-002778 SYNE-PCC-01-002873 28.16 380 243 10 359 726 513 874 3.2e-32 129.4 SYNE-PCC-01-002778 SYNE-PCC-01-002220 27.32 399 230 11 155 546 456 801 2.7e-31 126.3 SYNE-PCC-01-002778 SYNE-PCC-01-001509 37.33 225 133 6 383 606 190 407 8.7e-30 121.3 SYNE-PCC-01-002778 SYNE-PCC-01-001306 33.98 259 152 6 347 594 285 535 7.4e-29 118.2 SYNE-PCC-01-002778 SYNE-PCC-01-000891 30.14 292 163 6 347 606 547 829 6.3e-28 115.2 SYNE-PCC-01-002778 SYNE-PCC-01-000985 30.42 263 173 6 350 612 43 295 3.4e-26 109.4 SYNE-PCC-01-002778 SYNE-PCC-01-000983 30.09 226 123 4 155 368 39 241 2.1e-23 100.1 SYNE-PCC-01-002778 SYNE-PCC-01-000542 32.84 201 110 5 150 348 913 1090 4.6e-23 98.98 SYNE-PCC-01-002778 SYNE-PCC-01-000542 25.82 213 137 7 145 351 2 199 3.8e-09 52.76 SYNE-PCC-01-002778 SYNE-PCC-01-001294 26.14 329 208 7 295 611 127 432 3.0e-22 96.29 SYNE-PCC-01-002778 SYNE-PCC-01-001690 27.30 304 187 12 315 609 470 748 1.2e-15 74.33 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002788 slr1982 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002788 SYNE-PCC-01-002788 100.00 123 0 0 1 123 1 123 4.6e-67 241.9 SYNE-PCC-01-002788 SYNE-PCC-01-002879 42.98 114 65 0 5 118 718 831 1.4e-23 97.44 SYNE-PCC-01-002788 SYNE-PCC-01-000800 42.73 110 63 0 6 115 419 528 7.7e-22 91.66 SYNE-PCC-01-002788 SYNE-PCC-01-002873 41.23 114 67 0 5 118 925 1038 3.8e-21 89.35 SYNE-PCC-01-002788 SYNE-PCC-01-001132 39.81 103 62 0 6 108 631 733 1.1e-20 87.81 SYNE-PCC-01-002788 SYNE-PCC-01-001461 33.61 119 79 0 4 122 1 119 3.3e-20 86.27 SYNE-PCC-01-002788 SYNE-PCC-01-001306 36.84 114 71 1 7 119 742 855 1.4e-18 80.88 SYNE-PCC-01-002788 SYNE-PCC-01-001306 32.74 113 76 0 7 119 20 132 3.5e-14 66.24 SYNE-PCC-01-002788 SYNE-PCC-01-002617 35.71 126 77 2 1 122 1186 1311 4.0e-18 79.34 SYNE-PCC-01-002788 SYNE-PCC-01-002617 28.72 94 64 2 6 97 1035 1127 1.2e-06 41.20 SYNE-PCC-01-002788 SYNE-PCC-01-002033 35.09 114 71 1 9 122 1 111 9.8e-17 74.71 SYNE-PCC-01-002788 HINF-KW2-01-001345 40.52 116 68 1 6 121 4 118 2.9e-16 73.17 SYNE-PCC-01-002788 SYNE-PCC-01-002672 34.71 121 73 2 4 122 1 117 6.4e-16 72.02 SYNE-PCC-01-002788 SYNE-PCC-01-002086 31.93 119 81 0 4 122 27 145 1.1e-15 71.25 SYNE-PCC-01-002788 SYNE-PCC-01-001133 33.90 118 78 0 2 119 6 123 1.4e-15 70.86 SYNE-PCC-01-002788 SYNE-PCC-01-000414 29.17 120 85 0 3 122 10 129 1.6e-14 67.40 SYNE-PCC-01-002788 SYNE-PCC-01-002731 27.59 116 84 0 7 122 10 125 7.8e-14 65.08 SYNE-PCC-01-002788 SYNE-PCC-01-002618 29.66 118 83 0 5 122 12 129 3.0e-13 63.16 SYNE-PCC-01-002788 SYNE-PCC-01-001160 35.90 117 71 3 6 120 18 132 3.9e-13 62.77 SYNE-PCC-01-002788 SYNE-PCC-01-002486 31.62 117 78 1 6 122 2 116 6.6e-13 62.00 SYNE-PCC-01-002788 SYNE-PCC-01-001437 29.84 124 78 3 6 122 32 153 8.6e-13 61.62 SYNE-PCC-01-002788 HINF-KW2-01-000816 30.25 119 79 2 4 122 1 115 1.5e-12 60.85 SYNE-PCC-01-002788 HINF-KW2-01-001671 27.97 118 81 2 6 122 2 116 3.3e-12 59.69 SYNE-PCC-01-002788 SYNE-PCC-01-002489 28.57 119 83 1 4 120 1 119 7.3e-12 58.54 SYNE-PCC-01-002788 SYNE-PCC-01-000242 33.98 103 66 1 6 108 4 104 7.3e-12 58.54 SYNE-PCC-01-002788 HINF-KW2-01-000863 27.12 118 83 1 6 123 5 119 5.2e-10 52.37 SYNE-PCC-01-002788 SYNE-PCC-01-002635 25.00 128 88 2 1 120 52 179 6.8e-10 51.99 SYNE-PCC-01-002788 SYNE-PCC-01-000523 29.66 118 79 2 6 121 2 117 1.2e-09 51.22 SYNE-PCC-01-002788 SYNE-PCC-01-002221 32.23 121 77 3 4 122 2 119 2.0e-09 50.45 SYNE-PCC-01-002788 SYNE-PCC-01-001075 33.63 113 69 4 6 115 9 118 2.6e-09 50.06 SYNE-PCC-01-002788 SYNE-PCC-01-000518 29.66 118 79 2 6 121 2 117 1.7e-08 47.37 SYNE-PCC-01-002788 SYNE-PCC-01-000608 25.64 117 85 2 6 120 5 121 4.9e-08 45.82 SYNE-PCC-01-002788 SYNE-PCC-01-001575 29.66 118 79 2 6 121 8 123 4.1e-07 42.74 SYNE-PCC-01-002788 SYNE-PCC-01-001517 31.65 79 54 0 6 84 8 86 4.1e-07 42.74 SYNE-PCC-01-002788 SYNE-PCC-01-000877 29.31 116 79 1 7 122 6 118 9.2e-07 41.59 SYNE-PCC-01-002788 SYNE-PCC-01-002778 22.22 117 89 1 5 121 630 744 1.2e-06 41.20 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002873 slr2098 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002873 SYNE-PCC-01-002873 100.00 1261 0 0 1 1261 1 1261 0.0 2350.5 SYNE-PCC-01-002873 SYNE-PCC-01-002617 37.20 656 348 15 524 1134 775 1411 9.0e-99 351.3 SYNE-PCC-01-002873 SYNE-PCC-01-001306 34.18 670 360 14 524 1134 318 965 5.3e-83 298.9 SYNE-PCC-01-002873 SYNE-PCC-01-001306 33.33 108 72 0 927 1034 20 127 6.9e-14 69.32 SYNE-PCC-01-002873 SYNE-PCC-01-001306 34.33 134 80 2 759 892 6 131 7.6e-13 65.85 SYNE-PCC-01-002873 SYNE-PCC-01-002879 41.48 405 215 4 524 912 455 853 2.0e-82 297.0 SYNE-PCC-01-002873 SYNE-PCC-01-002879 42.26 239 131 4 898 1134 689 922 4.6e-42 162.9 SYNE-PCC-01-002873 SYNE-PCC-01-001132 35.58 416 238 7 524 917 362 769 7.2e-64 235.3 SYNE-PCC-01-002873 SYNE-PCC-01-001132 32.85 137 86 1 926 1062 631 761 9.6e-16 75.48 SYNE-PCC-01-002873 SYNE-PCC-01-000800 34.82 382 231 5 524 893 160 535 2.6e-53 200.3 SYNE-PCC-01-002873 SYNE-PCC-01-000800 36.07 122 78 0 926 1047 419 540 1.1e-16 78.57 SYNE-PCC-01-002873 SYNE-PCC-01-000891 45.18 228 120 3 524 746 597 824 1.3e-49 188.0 SYNE-PCC-01-002873 SYNE-PCC-01-000295 36.88 320 180 6 445 746 330 645 6.4e-44 169.1 SYNE-PCC-01-002873 SYNE-PCC-01-001280 42.54 228 124 4 527 750 438 662 1.2e-42 164.9 SYNE-PCC-01-002873 SYNE-PCC-01-001294 37.92 240 140 3 524 754 191 430 7.5e-37 145.6 SYNE-PCC-01-002873 SYNE-PCC-01-002778 27.94 383 252 9 526 896 378 748 9.2e-35 138.7 SYNE-PCC-01-002873 SYNE-PCC-01-001517 25.92 625 414 18 162 758 564 1167 2.0e-34 137.5 SYNE-PCC-01-002873 SYNE-PCC-01-001517 22.81 228 143 5 234 457 242 440 5.4e-11 59.69 SYNE-PCC-01-002873 SYNE-PCC-01-001517 27.73 119 72 4 772 885 8 117 6.9e-06 42.74 SYNE-PCC-01-002873 SYNE-PCC-01-001509 36.84 228 135 3 531 755 190 411 3.3e-32 130.2 SYNE-PCC-01-002873 SYNE-PCC-01-000985 30.58 242 150 9 524 759 66 295 5.8e-21 92.82 SYNE-PCC-01-002873 SYNE-PCC-01-002788 41.23 114 67 0 925 1038 5 118 6.4e-20 89.35 SYNE-PCC-01-002873 SYNE-PCC-01-001690 27.60 221 142 6 535 750 537 744 1.6e-18 84.73 SYNE-PCC-01-002873 SYNE-PCC-01-002635 39.45 109 65 1 927 1034 58 166 2.5e-16 77.41 SYNE-PCC-01-002873 SYNE-PCC-01-002635 24.37 197 122 5 773 947 58 249 2.4e-06 44.28 SYNE-PCC-01-002873 SYNE-PCC-01-002086 33.33 108 72 0 927 1034 30 137 2.1e-15 74.33 SYNE-PCC-01-002873 SYNE-PCC-01-002086 27.27 121 83 1 773 893 30 145 6.2e-07 46.21 SYNE-PCC-01-002873 HINF-KW2-01-000816 39.09 110 63 2 925 1034 2 107 3.1e-14 70.48 SYNE-PCC-01-002873 HINF-KW2-01-000816 29.51 122 77 2 772 893 3 115 3.9e-09 53.53 SYNE-PCC-01-002873 SYNE-PCC-01-002731 33.33 108 72 0 927 1034 10 117 1.5e-13 68.17 SYNE-PCC-01-002873 SYNE-PCC-01-002731 26.81 138 96 1 764 901 1 133 1.1e-08 51.99 SYNE-PCC-01-002873 SYNE-PCC-01-002486 33.11 148 81 3 926 1059 2 145 2.6e-13 67.40 SYNE-PCC-01-002873 SYNE-PCC-01-002489 34.82 112 71 1 927 1036 4 115 7.6e-13 65.85 SYNE-PCC-01-002873 SYNE-PCC-01-000523 32.23 121 74 4 772 892 2 114 2.9e-12 63.93 SYNE-PCC-01-002873 SYNE-PCC-01-000523 31.30 115 75 2 926 1038 2 114 1.1e-06 45.44 SYNE-PCC-01-002873 HINF-KW2-01-001345 27.50 160 99 4 926 1069 4 162 4.9e-12 63.16 SYNE-PCC-01-002873 HINF-KW2-01-001345 23.49 166 111 4 771 936 3 152 4.3e-08 50.06 SYNE-PCC-01-002873 SYNE-PCC-01-000414 29.71 138 86 3 773 910 14 140 8.4e-12 62.39 SYNE-PCC-01-002873 SYNE-PCC-01-000414 32.41 108 73 0 927 1034 14 121 1.2e-10 58.54 SYNE-PCC-01-002873 SYNE-PCC-01-001133 30.56 108 75 0 927 1034 11 118 1.1e-11 62.00 SYNE-PCC-01-002873 SYNE-PCC-01-001133 29.50 139 84 4 773 905 11 141 4.8e-07 46.59 SYNE-PCC-01-002873 HINF-KW2-01-001671 30.97 113 76 1 926 1038 2 112 1.6e-10 58.15 SYNE-PCC-01-002873 HINF-KW2-01-001671 28.83 111 70 3 772 881 2 104 1.8e-06 44.67 SYNE-PCC-01-002873 SYNE-PCC-01-001461 25.69 109 81 0 926 1034 3 111 1.0e-09 55.45 SYNE-PCC-01-002873 SYNE-PCC-01-002618 31.15 122 79 1 772 893 13 129 1.3e-09 55.07 SYNE-PCC-01-002873 SYNE-PCC-01-002618 33.03 109 65 3 925 1029 12 116 1.3e-07 48.52 SYNE-PCC-01-002873 SYNE-PCC-01-001575 30.26 152 102 3 926 1075 8 157 1.3e-09 55.07 SYNE-PCC-01-002873 SYNE-PCC-01-002672 33.64 110 71 1 925 1034 2 109 2.3e-09 54.30 SYNE-PCC-01-002873 SYNE-PCC-01-002672 25.00 120 80 3 773 892 4 113 6.2e-07 46.21 SYNE-PCC-01-002873 SYNE-PCC-01-001437 32.00 125 81 2 759 881 19 141 3.9e-09 53.53 SYNE-PCC-01-002873 SYNE-PCC-01-001437 25.86 116 77 2 926 1034 32 145 5.3e-06 43.13 SYNE-PCC-01-002873 HINF-KW2-01-000863 29.36 109 74 1 926 1034 5 110 5.1e-09 53.14 SYNE-PCC-01-002873 HINF-KW2-01-000863 31.03 116 68 3 772 885 5 110 4.8e-07 46.59 SYNE-PCC-01-002873 SYNE-PCC-01-002033 29.25 106 72 1 929 1034 1 103 6.6e-09 52.76 SYNE-PCC-01-002873 SYNE-PCC-01-002033 30.25 119 75 2 775 893 1 111 3.3e-08 50.45 SYNE-PCC-01-002873 SYNE-PCC-01-000518 27.12 118 81 2 772 889 2 114 4.3e-08 50.06 SYNE-PCC-01-002873 SYNE-PCC-01-000518 32.17 115 74 2 926 1038 2 114 9.6e-08 48.91 SYNE-PCC-01-002873 SYNE-PCC-01-000242 26.55 113 81 1 926 1038 4 114 2.8e-07 47.37 SYNE-PCC-01-002873 SYNE-PCC-01-000242 27.83 115 76 2 772 886 4 111 3.6e-07 46.98 SYNE-PCC-01-002873 SYNE-PCC-01-000608 25.37 201 119 5 768 948 1 190 4.8e-07 46.59 SYNE-PCC-01-002873 SYNE-PCC-01-000608 28.83 111 77 2 926 1034 5 115 8.1e-07 45.82 SYNE-PCC-01-002873 SYNE-PCC-01-000877 28.33 120 75 3 773 892 6 114 9.0e-06 42.36 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002879 slr2104 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002879 SYNE-PCC-01-002879 100.00 950 0 0 1 950 1 950 0.0 1822.4 SYNE-PCC-01-002879 SYNE-PCC-01-002873 41.89 413 218 4 447 853 516 912 1.2e-79 287.3 SYNE-PCC-01-002879 SYNE-PCC-01-002873 41.02 256 144 4 689 939 898 1151 1.2e-44 171.0 SYNE-PCC-01-002879 SYNE-PCC-01-002617 38.01 442 239 6 408 833 725 1147 4.1e-72 262.3 SYNE-PCC-01-002879 SYNE-PCC-01-002617 28.96 297 183 5 677 948 1149 1442 4.0e-27 112.8 SYNE-PCC-01-002879 SYNE-PCC-01-001132 35.50 462 256 10 390 831 304 743 1.3e-65 240.7 SYNE-PCC-01-002879 SYNE-PCC-01-001306 34.67 522 273 15 393 866 253 754 9.5e-61 224.6 SYNE-PCC-01-002879 SYNE-PCC-01-001306 32.54 252 149 4 719 949 741 992 7.6e-26 108.6 SYNE-PCC-01-002879 SYNE-PCC-01-001306 30.53 131 90 1 704 833 4 134 2.1e-12 63.93 SYNE-PCC-01-002879 SYNE-PCC-01-000800 36.65 412 242 5 447 851 152 551 4.0e-59 219.2 SYNE-PCC-01-002879 SYNE-PCC-01-000891 43.40 265 139 4 422 679 568 828 2.0e-50 190.3 SYNE-PCC-01-002879 SYNE-PCC-01-001280 44.44 270 145 4 411 677 391 658 9.2e-48 181.4 SYNE-PCC-01-002879 SYNE-PCC-01-000295 32.35 442 241 13 266 693 258 655 4.3e-45 172.6 SYNE-PCC-01-002879 SYNE-PCC-01-001294 38.60 272 155 4 424 683 157 428 3.0e-38 149.8 SYNE-PCC-01-002879 SYNE-PCC-01-002778 29.33 416 250 10 427 829 355 739 4.9e-33 132.5 SYNE-PCC-01-002879 SYNE-PCC-01-001509 39.91 228 128 3 462 686 190 411 1.3e-30 124.4 SYNE-PCC-01-002879 SYNE-PCC-01-001517 31.58 285 156 10 407 686 914 1164 4.6e-23 99.37 SYNE-PCC-01-002879 SYNE-PCC-01-002788 42.98 114 65 0 718 831 5 118 1.7e-22 97.44 SYNE-PCC-01-002879 SYNE-PCC-01-000985 30.21 235 146 9 455 683 66 288 8.1e-20 88.58 SYNE-PCC-01-002879 SYNE-PCC-01-001690 26.82 220 151 4 466 684 537 747 6.4e-17 78.95 SYNE-PCC-01-002879 SYNE-PCC-01-002086 31.86 113 77 0 719 831 29 141 6.6e-14 68.94 SYNE-PCC-01-002879 SYNE-PCC-01-001133 35.14 111 72 0 713 823 4 114 6.6e-14 68.94 SYNE-PCC-01-002879 SYNE-PCC-01-002731 33.04 112 75 0 716 827 6 117 1.1e-13 68.17 SYNE-PCC-01-002879 SYNE-PCC-01-002635 28.10 153 108 2 716 867 54 205 1.5e-13 67.78 SYNE-PCC-01-002879 HINF-KW2-01-000816 32.41 145 87 4 718 860 2 137 5.6e-13 65.85 SYNE-PCC-01-002879 SYNE-PCC-01-002489 31.90 116 77 1 718 831 2 117 6.2e-12 62.39 SYNE-PCC-01-002879 HINF-KW2-01-001671 31.37 102 68 1 720 821 3 102 1.1e-11 61.62 SYNE-PCC-01-002879 SYNE-PCC-01-002618 23.98 221 153 4 718 924 12 231 1.4e-11 61.23 SYNE-PCC-01-002879 HINF-KW2-01-000863 28.38 148 95 2 720 859 6 150 2.4e-11 60.46 SYNE-PCC-01-002879 SYNE-PCC-01-002672 31.13 106 71 1 718 823 2 105 6.9e-11 58.92 SYNE-PCC-01-002879 SYNE-PCC-01-002033 29.13 103 70 1 722 824 1 100 9.0e-11 58.54 SYNE-PCC-01-002879 SYNE-PCC-01-000414 29.25 106 75 0 719 824 13 118 1.5e-10 57.77 SYNE-PCC-01-002879 SYNE-PCC-01-000608 23.42 222 143 5 715 913 1 218 3.4e-10 56.61 SYNE-PCC-01-002879 SYNE-PCC-01-001461 27.45 102 74 0 720 821 4 105 4.5e-10 56.22 SYNE-PCC-01-002879 SYNE-PCC-01-001437 30.77 130 81 2 699 821 12 139 4.5e-10 56.22 SYNE-PCC-01-002879 HINF-KW2-01-001345 33.33 108 71 1 720 827 5 111 5.8e-10 55.84 SYNE-PCC-01-002879 SYNE-PCC-01-002486 31.19 109 73 1 720 828 3 109 9.9e-10 55.07 SYNE-PCC-01-002879 SYNE-PCC-01-000242 30.28 109 74 1 720 828 5 111 1.1e-08 51.60 SYNE-PCC-01-002879 SYNE-PCC-01-000523 30.77 104 68 2 720 821 3 104 1.3e-06 44.67 SYNE-PCC-01-002879 HINF-KW2-01-000704 24.56 114 82 2 720 831 7 118 2.3e-06 43.90 SYNE-PCC-01-002879 SYNE-PCC-01-001575 27.21 136 87 4 712 838 1 133 3.9e-06 43.13 SYNE-PCC-01-002879 SYNE-PCC-01-000518 29.81 104 69 2 720 821 3 104 5.1e-06 42.74 # BLASTP 2.2.6 [Apr-09-2003] # Query: SYNE-PCC-01-002951 ssl0564 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SYNE-PCC-01-002951 SYNE-PCC-01-002951 100.00 89 0 0 1 89 1 89 2.0e-49 182.6 SYNE-PCC-01-002951 SYNE-PCC-01-002731 50.88 57 28 0 12 68 153 209 9.2e-15 67.40 SYNE-PCC-01-002951 SYNE-PCC-01-002635 51.79 56 27 0 15 70 224 279 1.9e-12 59.69 SYNE-PCC-01-002951 SYNE-PCC-01-001160 35.53 76 41 1 5 72 151 226 4.0e-10 51.99 SYNE-PCC-01-002951 HINF-KW2-01-000704 43.40 53 30 0 8 60 145 197 2.6e-09 49.29 SYNE-PCC-01-002951 SYNE-PCC-01-000511 42.37 59 34 0 12 70 309 367 5.7e-09 48.14 SYNE-PCC-01-002951 SYNE-PCC-01-001575 39.68 63 38 0 12 74 147 209 9.8e-09 47.37 SYNE-PCC-01-002951 SYNE-PCC-01-000608 39.34 61 37 0 12 72 161 221 9.8e-09 47.37 SYNE-PCC-01-002951 SYNE-PCC-01-001075 43.86 57 32 0 12 68 164 220 2.2e-08 46.21 SYNE-PCC-01-002951 SYNE-PCC-01-001039 37.29 59 37 0 12 70 167 225 5.4e-07 41.59 # BLASTP 2.2.6 [Apr-09-2003] # Query: MJAN-DSM-01-000260 MJ0255 conserved hypothetical protein {Xanthobacter sp.} # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score MJAN-DSM-01-000260 MJAN-DSM-01-000260 100.00 251 0 0 1 251 1 251 3e-145 503.1 # BLASTP 2.2.6 [Apr-09-2003] # Query: MJAN-DSM-01-001076 MJ1053 hypothetical protein # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score MJAN-DSM-01-001076 MJAN-DSM-01-001076 100.00 116 0 0 1 116 1 116 5.3e-62 225.7 # BLASTP 2.2.6 [Apr-09-2003] # Query: MJAN-DSM-01-001277 MJ1254 hypothetical protein # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score MJAN-DSM-01-001277 MJAN-DSM-01-001277 100.00 444 0 0 1 444 1 444 0.0 682.2 # BLASTP 2.2.6 [Apr-09-2003] # Query: MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score MPNE-M12-01-000474 MPNE-M12-01-000474 100.00 1033 0 0 1 1033 1 1033 0.0 1669.1 MPNE-M12-01-000474 MGEN-G37-01-000335 31.05 467 255 11 603 1033 321 756 6.5e-47 178.7 MPNE-M12-01-000474 MGEN-G37-01-000335 28.51 463 288 4 431 864 297 745 1.0e-36 144.8 MPNE-M12-01-000474 MGEN-G37-01-000335 33.66 101 45 2 1 101 109 187 3.5e-08 50.06 MPNE-M12-01-000474 MGEN-G37-01-000221 24.35 620 361 28 419 974 339 914 1.9e-14 70.86 MPNE-M12-01-000474 MGEN-G37-01-000221 21.40 556 344 18 472 971 23 541 2.4e-09 53.91 MPNE-M12-01-000474 MGEN-G37-01-000221 20.00 625 437 19 360 954 944 1535 7.8e-08 48.91 MPNE-M12-01-000474 MGEN-G37-01-000221 21.11 578 347 20 422 945 776 1298 3.0e-07 46.98 MPNE-M12-01-000474 SCER-S28-01-000806 20.87 575 400 14 419 974 1094 1632 9.5e-14 68.55 MPNE-M12-01-000474 SCER-S28-01-000806 21.27 616 412 20 431 1033 788 1343 6.4e-10 55.84 MPNE-M12-01-000474 SCER-S28-01-000806 20.25 558 356 17 432 921 1190 1726 2.4e-09 53.91 MPNE-M12-01-000474 SYNE-PCC-01-000727 22.01 268 183 7 686 948 719 965 4.1e-09 53.14 MPNE-M12-01-000474 SYNE-PCC-01-000727 20.00 360 236 8 591 918 708 1047 9.2e-09 51.99 MPNE-M12-01-000474 SCER-S28-01-002651 20.22 460 312 16 481 920 863 1287 7.0e-09 52.37 MPNE-M12-01-000474 SCER-S28-01-002651 22.62 252 163 8 746 970 868 1114 3.0e-07 46.98 MPNE-M12-01-000474 SCER-S28-01-001306 21.28 592 369 24 421 946 174 734 1.0e-07 48.52 MPNE-M12-01-000474 SYNE-PCC-01-001071 22.96 196 134 4 688 877 167 351 6.6e-07 45.82 MPNE-M12-01-000474 SYNE-PCC-01-001071 19.93 276 184 6 681 924 83 353 1.1e-06 45.05 MPNE-M12-01-000474 SYNE-PCC-01-001071 23.90 272 183 8 702 953 76 343 1.9e-06 44.28 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-000190 ORFP:YBL051C YBL051C, Chr II from 122715-124721, reverse complement # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-000190 SCER-S28-01-000190 100.00 668 0 0 1 668 1 668 0.0 904.0 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-000222 ORFP:YBL081W YBL081W, Chr II from 71860-72966 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-000222 SCER-S28-01-000222 100.00 368 0 0 1 368 1 368 2e-133 464.2 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-000320 ORFP:YBR059C AKL1, Chr II from 356820-360146, reverse complement # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-000320 SCER-S28-01-000320 100.00 1108 0 0 1 1108 1 1108 0.0 1778.5 SCER-S28-01-000320 SCER-S28-01-000850 24.70 251 160 12 84 316 238 477 1.3e-08 51.60 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-000752 ORFP:YDL005C MED2, Chr IV from 441010-442305, reverse complement # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-000752 SCER-S28-01-000752 100.00 261 0 0 1 261 1 261 9e-101 356.3 SCER-S28-01-000752 SCER-S28-01-000752 100.00 66 0 0 366 431 366 431 2.4e-26 109.0 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-000782 ORFP:YDL035C GPR1, Chr IV from 389168-392053, reverse complement # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-000782 SCER-S28-01-000782 100.00 961 0 0 1 961 1 961 0.0 1689.1 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-000806 SCER-S28-01-000806 100.00 1790 0 0 1 1790 1 1790 0.0 3117.8 SCER-S28-01-000806 SCER-S28-01-002651 20.55 1100 718 24 636 1616 839 1901 9.5e-33 132.5 SCER-S28-01-000806 SCER-S28-01-002651 20.02 984 664 23 852 1771 860 1784 1.0e-31 129.0 SCER-S28-01-000806 SCER-S28-01-002651 21.54 599 410 19 659 1233 1363 1925 4.3e-17 80.49 SCER-S28-01-000806 SCER-S28-01-002651 21.60 375 269 7 1371 1720 854 1228 6.8e-15 73.17 SCER-S28-01-000806 MGEN-G37-01-000221 17.93 1149 847 22 660 1761 446 1545 1.6e-32 131.7 SCER-S28-01-000806 MGEN-G37-01-000221 19.04 1255 841 35 620 1755 556 1754 8.0e-32 129.4 SCER-S28-01-000806 MGEN-G37-01-000221 21.43 1115 741 37 753 1753 310 1403 1.8e-28 118.2 SCER-S28-01-000806 MGEN-G37-01-000221 20.43 1111 727 37 731 1736 35 1093 1.2e-24 105.5 SCER-S28-01-000806 MGEN-G37-01-000221 19.86 997 632 27 841 1740 47 973 2.8e-24 104.4 SCER-S28-01-000806 SCER-S28-01-001306 20.99 724 499 17 742 1435 103 783 3.4e-30 124.0 SCER-S28-01-000806 SCER-S28-01-001306 20.06 723 488 24 1062 1733 104 787 7.3e-17 79.72 SCER-S28-01-000806 SCER-S28-01-001306 20.42 617 411 19 710 1278 239 823 3.4e-14 70.86 SCER-S28-01-000806 SCER-S28-01-001306 19.06 614 363 18 1185 1735 119 661 2.2e-13 68.17 SCER-S28-01-000806 MPNE-M12-01-000474 22.22 648 394 19 1152 1762 287 861 2.2e-21 94.74 SCER-S28-01-000806 MPNE-M12-01-000474 19.44 921 582 30 760 1643 232 1029 7.3e-17 79.72 SCER-S28-01-000806 MPNE-M12-01-000474 19.14 606 408 19 720 1259 388 977 3.4e-14 70.86 SCER-S28-01-000806 MPNE-M12-01-000474 26.37 201 123 5 1586 1763 351 549 1.2e-08 52.37 SCER-S28-01-000806 MGEN-G37-01-000335 19.15 731 462 24 769 1473 93 720 3.0e-18 84.34 SCER-S28-01-000806 MGEN-G37-01-000335 21.88 713 424 26 656 1297 89 739 1.1e-17 82.42 SCER-S28-01-000806 MGEN-G37-01-000335 19.91 638 432 18 1137 1732 85 685 1.4e-15 75.48 SCER-S28-01-000806 MGEN-G37-01-000335 19.73 821 539 23 796 1578 6 744 5.2e-15 73.56 SCER-S28-01-000806 MGEN-G37-01-000335 19.24 603 433 14 663 1224 151 740 1.5e-14 72.02 SCER-S28-01-000806 MGEN-G37-01-000335 18.03 649 383 16 1178 1770 8 563 5.6e-09 53.53 SCER-S28-01-000806 SYNE-PCC-01-000727 16.68 977 676 23 742 1684 161 1033 3.7e-13 67.40 SCER-S28-01-000806 SYNE-PCC-01-000727 20.47 342 232 9 875 1189 202 530 1.3e-10 58.92 SCER-S28-01-000806 SYNE-PCC-01-000727 19.81 313 211 7 1128 1440 731 1003 3.3e-09 54.30 SCER-S28-01-000806 SYNE-PCC-01-000727 18.30 683 415 20 732 1320 416 1049 2.8e-08 51.22 SCER-S28-01-000806 SYNE-PCC-01-000727 20.48 249 159 8 1520 1765 780 992 3.4e-06 44.28 SCER-S28-01-000806 SYNE-PCC-01-000943 20.79 178 131 4 1128 1302 101 271 4.7e-08 50.45 SCER-S28-01-000806 SYNE-PCC-01-000943 17.78 270 189 6 1155 1410 79 329 1.8e-07 48.52 SCER-S28-01-000806 SYNE-PCC-01-000943 17.92 212 162 6 1520 1727 80 283 3.1e-07 47.75 SCER-S28-01-000806 SYNE-PCC-01-000943 20.00 230 139 6 726 947 86 278 8.9e-07 46.21 SCER-S28-01-000806 SYNE-PCC-01-000943 19.20 224 145 6 1055 1278 84 271 8.9e-07 46.21 SCER-S28-01-000806 MJAN-DSM-01-001277 22.45 196 121 5 1538 1725 274 446 1.8e-07 48.52 SCER-S28-01-000806 MJAN-DSM-01-001277 26.89 119 70 4 1633 1741 275 386 5.8e-06 43.51 SCER-S28-01-000806 SCER-S28-01-001667 25.91 247 151 7 1515 1755 336 556 4.0e-07 47.37 SCER-S28-01-000806 SYNE-PCC-01-001071 19.39 428 273 14 914 1311 76 461 6.8e-07 46.59 SCER-S28-01-000806 SYNE-PCC-01-001071 19.92 261 172 5 1514 1768 80 309 1.5e-06 45.44 SCER-S28-01-000806 MGEN-G37-01-000317 18.80 569 396 18 750 1288 544 1076 2.6e-06 44.67 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-000850 ORFP:YDL101C DUN1, Chr IV from 280306-281847, reverse complement # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-000850 SCER-S28-01-000850 100.00 513 0 0 1 513 1 513 0.0 977.6 SCER-S28-01-000850 SYNE-PCC-01-001777 27.31 227 124 7 257 475 76 269 3.3e-09 52.37 SCER-S28-01-000850 SCER-S28-01-000320 25.10 243 153 12 246 477 92 316 2.1e-08 49.68 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-001230 ORFP:YDR213W UPC2, Chr IV from 889743-892484 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-001230 SCER-S28-01-001230 100.00 560 0 0 354 913 354 913 0.0 1067.8 SCER-S28-01-001230 SCER-S28-01-001230 100.00 288 0 0 1 288 1 288 3e-137 478.8 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-001306 SCER-S28-01-001306 100.00 875 0 0 1 875 1 875 0.0 1602.4 SCER-S28-01-001306 SCER-S28-01-000806 21.97 660 442 20 103 726 742 1364 4.6e-30 122.5 SCER-S28-01-001306 SCER-S28-01-000806 23.22 659 424 19 191 807 929 1547 8.2e-27 111.7 SCER-S28-01-001306 SCER-S28-01-000806 23.34 694 391 30 91 725 1044 1655 2.2e-24 103.6 SCER-S28-01-001306 SCER-S28-01-000806 19.65 733 509 19 17 715 1096 1782 4.3e-20 89.35 SCER-S28-01-001306 SCER-S28-01-000806 21.15 539 372 13 239 748 710 1224 1.1e-18 84.73 SCER-S28-01-001306 MGEN-G37-01-000335 22.22 504 308 17 247 725 259 703 2.2e-19 87.04 SCER-S28-01-001306 MGEN-G37-01-000221 20.64 596 385 21 186 725 332 895 4.8e-19 85.89 SCER-S28-01-001306 MGEN-G37-01-000221 19.11 717 497 20 64 714 672 1371 6.5e-16 75.48 SCER-S28-01-001306 MGEN-G37-01-000221 21.61 597 379 21 180 723 43 603 1.6e-14 70.86 SCER-S28-01-001306 MGEN-G37-01-000221 20.15 675 415 22 134 724 901 1535 8.8e-13 65.08 SCER-S28-01-001306 MGEN-G37-01-000221 19.81 535 342 17 243 726 225 723 3.3e-12 63.16 SCER-S28-01-001306 MGEN-G37-01-000221 20.33 487 323 14 188 661 1165 1599 1.3e-11 61.23 SCER-S28-01-001306 MGEN-G37-01-000221 17.34 519 354 15 180 637 1250 1754 2.9e-08 50.06 SCER-S28-01-001306 SCER-S28-01-002651 22.18 708 469 26 53 722 1177 1840 4.5e-17 79.34 SCER-S28-01-001306 SCER-S28-01-002651 21.77 519 313 16 192 699 857 1293 2.5e-15 73.56 SCER-S28-01-001306 SCER-S28-01-002651 19.84 610 403 20 186 725 900 1493 6.7e-13 65.47 SCER-S28-01-001306 SCER-S28-01-002651 23.76 202 124 6 526 726 861 1033 7.0e-10 55.45 SCER-S28-01-001306 MPNE-M12-01-000474 22.51 573 350 21 178 722 398 904 6.5e-16 75.48 SCER-S28-01-001306 MPNE-M12-01-000474 22.68 388 241 13 390 724 269 650 5.3e-10 55.84 SCER-S28-01-001306 SYNE-PCC-01-001071 18.84 292 215 6 430 715 68 343 4.5e-09 52.76 SCER-S28-01-001306 SYNE-PCC-01-001071 19.31 347 241 9 306 624 55 390 7.2e-07 45.44 SCER-S28-01-001306 SYNE-PCC-01-000943 19.12 272 186 7 388 659 42 279 1.7e-08 50.83 SCER-S28-01-001306 MGEN-G37-01-000317 18.18 572 394 19 192 720 395 935 1.1e-07 48.14 SCER-S28-01-001306 SYNE-PCC-01-000727 20.16 253 183 4 194 438 877 1118 4.2e-07 46.21 SCER-S28-01-001306 MJAN-DSM-01-001277 22.28 193 116 6 541 706 283 468 7.2e-07 45.44 SCER-S28-01-001306 MJAN-DSM-01-001277 24.24 165 104 6 464 618 274 427 2.7e-06 43.51 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-001450 ORFP:YDR420W HKR1, Chr IV from 1306256-1311664 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-001450 SCER-S28-01-001450 100.00 1014 0 0 789 1802 789 1802 0.0 1398.6 SCER-S28-01-001450 SCER-S28-01-001450 100.00 435 0 0 17 451 17 451 1e-131 461.1 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817, reverse complement # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-001667 SCER-S28-01-001667 100.00 1336 0 0 1 1336 1 1336 0.0 2375.1 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-002073 ORFP:YGL073W HSF1, Chr VII from 368751-371252 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-002073 SCER-S28-01-002073 100.00 833 0 0 1 833 1 833 0.0 1333.9 SCER-S28-01-002073 SCER-S28-01-002525 31.86 113 63 4 175 275 6 116 7.3e-09 51.99 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-002137 ORFP:YGL137W SEC27, Chr VII from 249872-249889,250090-252741 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-002137 SCER-S28-01-002137 100.00 889 0 0 1 889 1 889 0.0 1731.5 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-002414 ORFP:YGR142W BTN2, Chr VII from 772449-773681 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-002414 SCER-S28-01-002414 100.00 410 0 0 1 410 1 410 0.0 627.5 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-002525 ORFP:YGR249W MGA1, Chr VII from 988045-989415 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-002525 SCER-S28-01-002525 100.00 456 0 0 1 456 1 456 0.0 676.0 SCER-S28-01-002525 SCER-S28-01-002073 31.86 113 63 4 6 116 175 275 3.8e-09 51.99 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-002584 ORFP:YHL009W-B YHL009W-B, Chr VIII from 85904-86989,86991-91313 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-002584 SCER-S28-01-002584 100.00 1802 0 0 1 1802 1 1802 0.0 3508.8 SCER-S28-01-002584 SCER-S28-01-000806 19.43 1168 742 43 255 1350 732 1772 3.9e-10 57.38 SCER-S28-01-002584 SCER-S28-01-002651 19.88 342 230 12 1000 1313 865 1190 1.1e-07 49.29 # BLASTP 2.2.6 [Apr-09-2003] # Query: SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 # Database: tst.fasta # Fields: Query id, Subject id, % identity, alignment length, mismatches, gap openings, q. start, q. end, s. start, s. end, e-value, bit score SCER-S28-01-002651 SCER-S28-01-002651 100.00 1928 0 0 1 1928 1 1928 0.0 3607.8 SCER-S28-01-002651 SCER-S28-01-000806 20.42 989 678 24 860 1796 852 1783 2.8e-38 151.0 SCER-S28-01-002651 SCER-S28-01-000806 20.87 1107 738 37 839 1901 636 1648 2.8e-38 151.0 SCER-S28-01-002651 SCER-S28-01-000806 23.00 487 325 14 746 1228 1280 1720 6.2e-22 96.67 SCER-S28-01-002651 SCER-S28-01-000806 22.55 603 399 21 1363 1925 659 1233 1.5e-20 92.05 SCER-S28-01-002651 SCER-S28-01-000806 22.34 461 295 15 727 1167 1365 1782 4.9e-19 87.04 SCER-S28-01-002651 SCER-S28-01-000806 22.49 507 326 15 746 1191 1131 1631 1.1e-18 85.89 SCER-S28-01-002651 MGEN-G37-01-000221 20.55 1173 722 45 867 1923 368 1446 9.5e-31 125.9 SCER-S28-01-002651 MGEN-G37-01-000221 19.70 1117 731 33 871 1907 30 1060 5.8e-28 116.7 SCER-S28-01-002651 MGEN-G37-01-000221 20.27 1253 820 45 767 1923 101 1270 2.3e-24 104.8 SCER-S28-01-002651 MGEN-G37-01-000221 18.36 1024 712 30 963 1926 21 980 1.5e-23 102.1 SCER-S28-01-002651 MGEN-G37-01-000221 17.60 1159 777 28 869 1900 589 1696 8.9e-21 92.82 SCER-S28-01-002651 MGEN-G37-01-000221 22.04 549 354 20 1403 1909 373 889 9.9e-20 89.35 SCER-S28-01-002651 MGEN-G37-01-000221 20.10 831 549 28 865 1638 949 1721 1.1e-18 85.89 SCER-S28-01-002651 MGEN-G37-01-000221 19.24 759 482 21 846 1548 1028 1711 1.8e-13 68.55 SCER-S28-01-002651 MGEN-G37-01-000221 20.90 555 334 20 748 1203 1171 1719 4.0e-13 67.40 SCER-S28-01-002651 MGEN-G37-01-000221 22.01 259 188 9 1636 1882 20 276 1.3e-08 52.37 SCER-S28-01-002651 SCER-S28-01-001306 22.45 628 395 28 1339 1898 156 759 6.0e-17 80.11 SCER-S28-01-002651 SCER-S28-01-001306 22.24 553 324 23 1299 1827 278 748 1.3e-14 72.40 SCER-S28-01-002651 SCER-S28-01-001306 21.65 425 250 13 857 1202 192 612 5.3e-13 67.01 SCER-S28-01-002651 SCER-S28-01-001306 19.08 786 526 26 891 1657 177 871 1.2e-12 65.85 SCER-S28-01-002651 SCER-S28-01-001306 26.70 206 114 6 864 1047 634 824 4.9e-11 60.46 SCER-S28-01-002651 SCER-S28-01-001306 19.90 382 257 7 850 1210 453 806 1.1e-10 59.31 SCER-S28-01-002651 MGEN-G37-01-000335 23.77 387 229 12 856 1208 402 756 1.5e-15 75.48 SCER-S28-01-002651 MGEN-G37-01-000335 20.88 589 355 16 1339 1840 192 756 3.6e-14 70.86 SCER-S28-01-002651 MGEN-G37-01-000335 21.63 393 254 13 867 1243 263 617 1.5e-12 65.47 SCER-S28-01-002651 MGEN-G37-01-000335 19.78 713 441 24 874 1496 85 756 6.0e-09 53.53 SCER-S28-01-002651 MGEN-G37-01-000335 19.21 406 277 11 1301 1663 348 745 3.6e-06 44.28 SCER-S28-01-002651 MPNE-M12-01-000474 18.98 569 403 11 1351 1899 478 1008 2.1e-14 71.63 SCER-S28-01-002651 MPNE-M12-01-000474 20.83 552 388 16 1369 1900 373 895 3.4e-12 64.31 SCER-S28-01-002651 MPNE-M12-01-000474 23.28 524 310 22 1427 1923 398 856 1.1e-10 59.31 SCER-S28-01-002651 MPNE-M12-01-000474 20.35 565 381 20 652 1179 477 1009 2.1e-09 55.07 SCER-S28-01-002651 MPNE-M12-01-000474 17.85 622 462 16 998 1595 378 974 2.3e-08 51.60 SCER-S28-01-002651 SYNE-PCC-01-000727 19.40 299 204 7 868 1166 702 963 4.9e-11 60.46 SCER-S28-01-002651 SYNE-PCC-01-000727 17.20 372 278 8 834 1190 157 513 2.1e-09 55.07 SCER-S28-01-002651 SYNE-PCC-01-000727 18.84 361 259 8 1426 1784 719 1047 1.0e-08 52.76 SCER-S28-01-002651 SYNE-PCC-01-000727 20.77 337 238 10 1426 1739 764 1094 2.3e-08 51.60 SCER-S28-01-002651 MJAN-DSM-01-001277 27.64 199 115 6 998 1168 270 467 4.6e-09 53.91 SCER-S28-01-002651 MJAN-DSM-01-001277 24.05 262 167 12 791 1030 215 466 1.3e-06 45.82 SCER-S28-01-002651 MJAN-DSM-01-001277 22.51 191 135 6 864 1043 276 464 6.2e-06 43.51 SCER-S28-01-002651 SCER-S28-01-001667 23.35 424 265 16 1423 1833 316 692 7.9e-09 53.14 SCER-S28-01-002651 SYNE-PCC-01-001071 21.63 319 197 11 817 1135 121 386 1.0e-08 52.76 SCER-S28-01-002651 SYNE-PCC-01-001071 24.82 278 178 9 881 1135 74 343 1.5e-07 48.91 SCER-S28-01-002651 SYNE-PCC-01-001071 19.42 242 167 5 957 1189 73 295 2.1e-06 45.05 SCER-S28-01-002651 SYNE-PCC-01-000943 22.83 184 128 3 869 1045 84 260 1.3e-08 52.37 SCER-S28-01-002651 SYNE-PCC-01-000943 23.58 212 146 6 1532 1735 69 272 2.5e-07 48.14 SCER-S28-01-002651 SYNE-PCC-01-000943 17.24 203 163 3 984 1185 73 271 9.6e-07 46.21 SCER-S28-01-002651 SYNE-PCC-01-000943 21.03 214 159 4 1672 1876 59 271 2.8e-06 44.67 SCER-S28-01-002651 SCER-S28-01-002584 19.88 342 230 12 865 1190 1000 1313 1.1e-07 49.29 mcl-12-135/testing/blast/Makefile.in0000644000402500021140000002233211754271037014131 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/include/include.am subdir = testing/blast ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir) LDADD = ../mcl/libmcl.a ../clew/libclew.a ../gryphon/libgryphon.a ../impala/libimpala.a ../../util/libutil.a AM_LDFLAGS = -lm this = blastfile blastfile9 EXTRA_DIST = $(this) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/include/include.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu testing/blast/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu testing/blast/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am # AM_LDFLAGS = -lm -lunwind -ltcmalloc # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/testing/blast/blastfile0000644000402500021140000764174110740707734014000 00000000000000BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= HINF-KW2-01-000389 HI0410 transcriptional regulatory protein (tyrR) (318 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value HINF-KW2-01-000389 HI0410 transcriptional regulatory protein (t... 629 0.0 >HINF-KW2-01-000389 HI0410 transcriptional regulatory protein (tyrR) Length = 318 Score = 629 bits (1621), Expect = 0.0 Identities = 318/318 (100%), Positives = 318/318 (100%) Query: 1 MTISKFNPQKPFECFIVQSEAMKSAVENAKRFAMFDAPLLIQGETGSGKDLLAKACHYQS 60 MTISKFNPQKPFECFIVQSEAMKSAVENAKRFAMFDAPLLIQGETGSGKDLLAKACHYQS Sbjct: 1 MTISKFNPQKPFECFIVQSEAMKSAVENAKRFAMFDAPLLIQGETGSGKDLLAKACHYQS 60 Query: 61 LRRDKKFIAVNCAGLPDEDAESEMFGRKVGDSETIGFFEYANKGTVLLDGIAELSLSLQA 120 LRRDKKFIAVNCAGLPDEDAESEMFGRKVGDSETIGFFEYANKGTVLLDGIAELSLSLQA Sbjct: 61 LRRDKKFIAVNCAGLPDEDAESEMFGRKVGDSETIGFFEYANKGTVLLDGIAELSLSLQA 120 Query: 121 KLLRFLTDGSFRRVGEEKEHYANVRVICTSQVPLHLLVEQGKVRADLFHRLNVLTINVPA 180 KLLRFLTDGSFRRVGEEKEHYANVRVICTSQVPLHLLVEQGKVRADLFHRLNVLTINVPA Sbjct: 121 KLLRFLTDGSFRRVGEEKEHYANVRVICTSQVPLHLLVEQGKVRADLFHRLNVLTINVPA 180 Query: 181 LRDRMADIEPLAQGFLQEISEELKIAKPTFDKDFLLYLQKYDWKGNVRELYNTLYRACSL 240 LRDRMADIEPLAQGFLQEISEELKIAKPTFDKDFLLYLQKYDWKGNVRELYNTLYRACSL Sbjct: 181 LRDRMADIEPLAQGFLQEISEELKIAKPTFDKDFLLYLQKYDWKGNVRELYNTLYRACSL 240 Query: 241 VQDNHLTIESLNLALPQSAVISLDEFENKTLDEIIGFYEAQVLKLFYAEYPSTRKLAQRL 300 VQDNHLTIESLNLALPQSAVISLDEFENKTLDEIIGFYEAQVLKLFYAEYPSTRKLAQRL Sbjct: 241 VQDNHLTIESLNLALPQSAVISLDEFENKTLDEIIGFYEAQVLKLFYAEYPSTRKLAQRL 300 Query: 301 GVSHTAIANKLKQYGIGK 318 GVSHTAIANKLKQYGIGK Sbjct: 301 GVSHTAIANKLKQYGIGK 318 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.320 0.137 0.389 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 28,465 Number of Sequences: 78 Number of extensions: 1142 Number of successful extensions: 5 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 4 Number of HSP's gapped (non-prelim): 1 length of query: 318 length of database: 48,235 effective HSP length: 63 effective length of query: 255 effective length of database: 43,321 effective search space: 11046855 effective search space used: 11046855 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 92 (40.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) (208 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 396 e-113 SYNE-PCC-01-001575 slr0312 137 3e-35 SYNE-PCC-01-001160 sll1708 125 1e-31 SYNE-PCC-01-000608 sll0921 124 2e-31 SYNE-PCC-01-001075 sll1592 102 1e-24 SYNE-PCC-01-002731 slr1909 75 2e-16 SYNE-PCC-01-001039 sll1544 70 5e-15 SYNE-PCC-01-002635 slr1783 65 2e-13 SYNE-PCC-01-002672 slr1837 60 7e-12 SYNE-PCC-01-002486 slr1584 60 7e-12 SYNE-PCC-01-001306 sll1905 57 3e-11 SYNE-PCC-01-002489 slr1588 57 5e-11 SYNE-PCC-01-001461 slr0115 55 1e-10 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 55 1e-10 SYNE-PCC-01-000242 sll0396 54 4e-10 SYNE-PCC-01-000800 sll1228 52 2e-09 SYNE-PCC-01-002033 slr0947 51 2e-09 SYNE-PCC-01-000414 sll0649 51 3e-09 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 50 6e-09 SYNE-PCC-01-002951 ssl0564 49 9e-09 SYNE-PCC-01-001437 slr0081 49 2e-08 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 46 8e-08 SYNE-PCC-01-000511 sll0782 45 1e-07 SYNE-PCC-01-000518 sll0789 45 2e-07 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 44 3e-07 SYNE-PCC-01-002879 slr2104 44 4e-07 SYNE-PCC-01-002618 slr1760 44 4e-07 SYNE-PCC-01-000523 sll0797 44 5e-07 SYNE-PCC-01-002221 slr1213 43 9e-07 SYNE-PCC-01-002086 slr1042 43 9e-07 SYNE-PCC-01-002617 slr1759 41 3e-06 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 396 bits (1018), Expect = e-113 Identities = 208/208 (100%), Positives = 208/208 (100%) Query: 1 MQDKLKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNM 60 MQDKLKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNM Sbjct: 1 MQDKLKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNM 60 Query: 61 KGLSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKR 120 KGLSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKR Sbjct: 61 KGLSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKR 120 Query: 121 IAQGEVILSDSIKNLLLERTHEDNPLDSLTDREMGVLRQIATGLSNKQIAAQLFISEETV 180 IAQGEVILSDSIKNLLLERTHEDNPLDSLTDREMGVLRQIATGLSNKQIAAQLFISEETV Sbjct: 121 IAQGEVILSDSIKNLLLERTHEDNPLDSLTDREMGVLRQIATGLSNKQIAAQLFISEETV 180 Query: 181 KVHIRNLLRKLNVHSRVAATVLFFEQNR 208 KVHIRNLLRKLNVHSRVAATVLFFEQNR Sbjct: 181 KVHIRNLLRKLNVHSRVAATVLFFEQNR 208 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 137 bits (345), Expect = 3e-35 Identities = 73/198 (36%), Positives = 118/198 (59%), Gaps = 4/198 (2%) Query: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLS 64 ++VL+ DDH + R+G+ ++ D + +V+A +G + I++ + PDV ++DL M + Sbjct: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 Query: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQG 124 G+ + + A ARI++LT D+ DIY + AGA GYLLK+TEPD LL I+ + +G Sbjct: 67 GVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHRG 126 Query: 125 EVILSDSIKNLLLERTHEDNPLDSLTDREMGVLRQIATGLSNKQIAAQLFISEETVKVHI 184 + + + L++R NP L++RE+ VL +A G+SN IA L I E TVK H+ Sbjct: 127 QKYIPPDVGAKLVQRL--SNP--ELSERELEVLGSLAQGMSNADIATALSIGEGTVKSHV 182 Query: 185 RNLLRKLNVHSRVAATVL 202 +L KL+V R A ++ Sbjct: 183 NRILNKLDVGDRTQAVIV 200 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 125 bits (314), Expect = 1e-31 Identities = 63/203 (31%), Positives = 113/203 (55%), Gaps = 5/203 (2%) Query: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLS 64 +K+L+++D PLM+ G++Q + + FE++ V +G + A +PD+I++D+ + GL Sbjct: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 Query: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQG 124 G++ K ++ I++LT N+I + +GAD Y +K + L+ I G Sbjct: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQDG 136 Query: 125 EVILSDSIKNLLLERTHEDNP-----LDSLTDREMGVLRQIATGLSNKQIAAQLFISEET 179 L I +++E P + SL++RE+ VL+ I G SN++IA L++S T Sbjct: 137 ATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVEGKSNQEIAQTLYLSTNT 196 Query: 180 VKVHIRNLLRKLNVHSRVAATVL 202 +K H+R ++ KL+V RV A V+ Sbjct: 197 IKTHVRGIMNKLSVDDRVQAAVI 219 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 124 bits (312), Expect = 2e-31 Identities = 67/212 (31%), Positives = 121/212 (57%), Gaps = 13/212 (6%) Query: 3 DKLKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKG 62 +K+++ LI+D L+R+G++ + ++ +FE V + ++G G+ + QT PDV+I+D+ + Sbjct: 2 EKIRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPD 61 Query: 63 LSGLDTLKGLRAEGVD--ARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKR 120 ++G+D + L+ ++ R++ILT++D + + AGAD Y +KD+ + L+E I+ Sbjct: 62 MNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 Query: 121 IAQGEVILSDSIKNLLLERTHEDNPLD-----------SLTDREMGVLRQIATGLSNKQI 169 G + +I ++L P + LT+RE+ VL+ I G SN I Sbjct: 122 THGGFAWIDPAIARIVLAHAPGAEPSEPSSPSRTSLSYGLTERELEVLQLIVDGCSNADI 181 Query: 170 AAQLFISEETVKVHIRNLLRKLNVHSRVAATV 201 A +L+I+ TVK H+RN+L KL + R A V Sbjct: 182 AEKLYITVGTVKTHVRNILNKLCANDRTQAAV 213 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 102 bits (253), Expect = 1e-24 Identities = 67/217 (30%), Positives = 109/217 (50%), Gaps = 18/217 (8%) Query: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLS 64 +++LL++D L R G+ + + +V + G I+ Q DV+ILD+ + G+ Sbjct: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIG 67 Query: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQG 124 G++ ++ +LILT I LI+A A GY +K +TL+ I+ +A G Sbjct: 68 GIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVAAG 127 Query: 125 ----EVILSDSIKN-----------LLLERTHEDNPLDSLTDREMGVLRQIATGLSNKQI 169 + I S I+ L L +NP LT RE+ +L +A G SN++I Sbjct: 128 AFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENP---LTKRELEILSLVAKGKSNQEI 184 Query: 170 AAQLFISEETVKVHIRNLLRKLNVHSRVAATVLFFEQ 206 A +L+I+ TV+VH+ +LRKL V R A +L E+ Sbjct: 185 ADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIER 221 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 75.1 bits (183), Expect = 2e-16 Identities = 56/210 (26%), Positives = 103/210 (49%), Gaps = 29/210 (13%) Query: 2 QDKLKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMK 61 ++ +LL+DD P + +K +E V +G E + + T PD+I+ D+ M Sbjct: 5 KENYHLLLVDDDPNLLLLVKDYLEYQGY--QVTTAGNGREALDLLTTTVPDMIVCDIMMP 62 Query: 62 GLSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLI---DAGADGYLLKDTEPDTLLEQI 118 + G ++ +R + I ++ +S AK + + + GAD Y+ K EP+ L Q+ Sbjct: 63 EMDGYAFIEQVRQNPDISWIPVMFLS-AKGQSHNRVKGLNVGADIYMAKPFEPEELAAQV 121 Query: 119 KR-IAQGEVILSDSIKNLLLERTHEDNPLDS-----------LTDREMGVLRQIATGLSN 166 + + Q + +L H ++PL+ LT E V++ +A GL+N Sbjct: 122 QSCLRQADRLLQ-----------HNNHPLEDNARVQVARDVELTPTETKVIQLVAQGLAN 170 Query: 167 KQIAAQLFISEETVKVHIRNLLRKLNVHSR 196 ++IA L +S+ TV+ H+ N+L K +H+R Sbjct: 171 REIADHLKVSQRTVESHVSNMLNKTGLHNR 200 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 70.1 bits (170), Expect = 5e-15 Identities = 47/165 (28%), Positives = 83/165 (50%), Gaps = 24/165 (14%) Query: 48 QTSPDVIILDLNMKGLSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLK 107 Q P V+++ ++ SGLD LK L+A + L+L ++D + GAD L+ Sbjct: 68 QPEPLVVVICQRLEDGSGLDLLKQLKAHARSPQCLLLLLNDHAAIVEEAQQYGADAIFLE 127 Query: 108 DTEPDTLLEQIKRIAQGEVILSDSIKNLLLERTHEDNPL-----------DSLTDREMGV 156 + + GE+ L+ ++ LL RT+ D+ L D LT RE+ + Sbjct: 128 SS-----------LGNGEINLA--VECLLQGRTYIDSRLEAIADYRKSQKDELTQREVAI 174 Query: 157 LRQIATGLSNKQIAAQLFISEETVKVHIRNLLRKLNVHSRVAATV 201 LR +A G +N +I +L ++ TV+ +++ ++RKLN R +A + Sbjct: 175 LRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAI 219 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 64.7 bits (156), Expect = 2e-13 Identities = 57/221 (25%), Positives = 98/221 (44%), Gaps = 29/221 (13%) Query: 1 MQDKLKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNM 60 M + + +LL+DD P +R ++ +E +F+V ++ TE P ++I D+ M Sbjct: 52 MAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDL-AANATEAWDYLQHHLPALVISDIMM 110 Query: 61 KGLSGLDTLKGLRAEGVDAR-----ILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLL 115 + G L+ LR DAR ++ LT D G D +L K +PD L Sbjct: 111 PQVDGYQFLQKLRE---DARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELE 167 Query: 116 EQIKRIAQGEVILSDS-IKNLLLERTHED------------------NPLD-SLTDREMG 155 ++ + + SD+ ++ L+ +++ +P+ T RE Sbjct: 168 AIVRNLLARQQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQS 227 Query: 156 VLRQIATGLSNKQIAAQLFISEETVKVHIRNLLRKLNVHSR 196 VL ++ GL NK+IAAQL S V+ ++ L K +SR Sbjct: 228 VLDLVSQGLMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSR 268 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 59.7 bits (143), Expect = 7e-12 Identities = 50/176 (28%), Positives = 84/176 (47%), Gaps = 24/176 (13%) Query: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 +LL+DD + + + + + VAD G G+++A+ D++ILD + +SGL Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVAD--QGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 Query: 67 DTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQI----KRIA 122 + + +R G +L LT D +D +DAG D YL+K E LL ++ +R + Sbjct: 62 EICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQS 121 Query: 123 QGEVILS--DSIKNLLLERTHEDNPLDSLTDREMGVLRQIA------TGLSNKQIA 170 GE I ++KN LL S+ + + V Q+A LS K++A Sbjct: 122 HGETITETLGAVKNNLL----------SVNNVSLDVANQVAYCQGQRIALSEKEVA 167 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 59.7 bits (143), Expect = 7e-12 Identities = 55/204 (26%), Positives = 95/204 (46%), Gaps = 20/204 (9%) Query: 5 LKVLLI-DDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGL 63 +++LL+ DD PL + L + ++ D S + A + D++ILD+ + L Sbjct: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWD---YASRLEYDLVILDVMLPEL 57 Query: 64 SGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQ 123 G+ + R+ IL++T D ND T +DAGAD Y++K + L +++ + + Sbjct: 58 DGITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLR 117 Query: 124 GEVILSDSIKN----LLLERTHE---DNPLDSLTDREMGVLRQIATG----LSNKQIAAQ 172 + L T+E DN + SLT +E +L + LS I Sbjct: 118 RGCATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDS 177 Query: 173 LF-----ISEETVKVHIRNLLRKL 191 ++ E+TVKVH+R+L +KL Sbjct: 178 IWKLESPPEEDTVKVHVRSLRQKL 201 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 57.4 bits (137), Expect = 3e-11 Identities = 39/126 (30%), Positives = 63/126 (50%), Gaps = 4/126 (3%) Query: 36 VSSGTEGISVALQTSPDVIILDLNMKGLSGLDTLKGLRAEGV--DARILILTVSDAKNDI 93 V+SG E + Q PD+I+LDL M G+ GL+ L+ + D ++ LT S+ K D+ Sbjct: 47 VTSGPEALQRVTQAQPDLILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTASNEKQDL 106 Query: 94 YTLIDAGADGYLLKDTEPDTLLEQIKRIAQGEVILSDSIKNLLLERTHEDNPLDSLTDRE 153 GA Y+ K P LL ++K + + D++ + LLE+ L + T Sbjct: 107 LQAFAKGAVDYVTKPFSPPELLARVKTHLELKQ-TRDNLHHTLLEQARTAEAL-ACTSTR 164 Query: 154 MGVLRQ 159 +G+L Q Sbjct: 165 LGILVQ 170 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 57.0 bits (136), Expect = 5e-11 Identities = 44/171 (25%), Positives = 81/171 (47%), Gaps = 8/171 (4%) Query: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 +L+++D ++R I + + L++ + A+ + G+ +L+ PD+II D+ M + G Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 67 DTLKGLRAEGVDARI--LILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQG 124 + L+ A I + LT D +++GAD YL+K + + LL + Q Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 Query: 125 EVILS----DSIKNLLLERTHEDNPL--DSLTDREMGVLRQIATGLSNKQI 169 + LS SI + L ER + +LT E + R + GL+ Q+ Sbjct: 124 QAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAEIWRDLEVGLNTGQV 174 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 55.5 bits (132), Expect = 1e-10 Identities = 61/218 (27%), Positives = 99/218 (45%), Gaps = 33/218 (15%) Query: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVA-DVSSGTEGI---SVALQTSPDVIILDLNMK 61 ++L+IDD P I LV + N E+ DV +GI ++A+Q PD+I+LDL + Sbjct: 3 RILIIDDDP----AISDLVSI--NLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLP 56 Query: 62 GLSGLDTLKGLRAEG--VDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIK 119 + G + LR + D +L+LT D D+GAD YL K + + +L +++ Sbjct: 57 KVDGFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVR 116 Query: 120 RI----------AQGEVILSDSIKNLLLERTHED--NPLDSLTDREMGVLRQI----ATG 163 + A+ IL+ L+ ER LT E +L + Sbjct: 117 ALLRRTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQT 176 Query: 164 LSNKQIAAQLFISE-----ETVKVHIRNLLRKLNVHSR 196 +S I +++ E ET++VHIR+L KL + R Sbjct: 177 VSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPR 214 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 55.5 bits (132), Expect = 1e-10 Identities = 60/211 (28%), Positives = 91/211 (43%), Gaps = 34/211 (16%) Query: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLS 64 +++LLI+D L+ G++ + L V + G G++ D ++LDL + L Sbjct: 1 MRILLIEDDNLIGNGLQ--IGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLD 58 Query: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKR---- 120 GL+ L+ R+ D +LILT D ++ + +GAD YL K P L E R Sbjct: 59 GLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCK---PFALAEVAARLQAL 115 Query: 121 -----------IAQGEVILSDSIKNLLLERTHEDNPLDSLTDREMGVLRQIATG----LS 165 I Q V L + +++ L +N SLT RE +L LS Sbjct: 116 IRRRYGYHHSVIEQAGVKLDQNQRSVWL-----NNQPISLTSREYKLLELFMLNKDRVLS 170 Query: 166 NKQIAAQLF-----ISEETVKVHIRNLLRKL 191 I +L IS + VHI NL +KL Sbjct: 171 RSSIEEKLSSWDEEISSGALDVHIYNLRQKL 201 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 53.9 bits (128), Expect = 4e-10 Identities = 50/196 (25%), Positives = 88/196 (44%), Gaps = 23/196 (11%) Query: 6 KVLLIDDHPLMRRGIKQLVELDDNFEV--VADVSSGTEGISVALQTSPDVIILDLNMKGL 63 +VL++++ + R +EL+ +E V+ G +G + A + PD+II++ + G+ Sbjct: 4 RVLVVEEEEKLAR----FMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGM 59 Query: 64 SGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQ 123 SGL+ + LR G I+++T D + +DAGAD Y++K D +I+ Sbjct: 60 SGLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIR---- 115 Query: 124 GEVILSDSIKNLLLERTH--EDNPLDSLTDREMGVLRQIATGLSNKQIAAQLFISEETVK 181 + L RTH D L R R+I G + A+ F + + Sbjct: 116 -----------VQLRRTHTTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLL 164 Query: 182 VHIRNLLRKLNVHSRV 197 H R +L + + RV Sbjct: 165 SHARQVLTREQILERV 180 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 51.6 bits (122), Expect = 2e-09 Identities = 35/112 (31%), Positives = 58/112 (51%), Gaps = 4/112 (3%) Query: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSG 65 KVL++DD P R ++QL L VV + +G I++ P VI++D+ M L G Sbjct: 419 KVLVVDDRPESRLLLRQL--LTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDG 476 Query: 66 LDTLKGLRA--EGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLL 115 T + ++A +G I+ LT S + + ++ AG D +L K P+ L+ Sbjct: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELI 528 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 51.2 bits (121), Expect = 2e-09 Identities = 34/113 (30%), Positives = 60/113 (53%), Gaps = 3/113 (2%) Query: 9 LIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGLDT 68 ++DD +RR ++ + + +EVV + G E I+ ++ PD+++LD+ M L G Sbjct: 1 MVDDEASIRRILETRLSMI-GYEVVT-AADGEEAIATFHESDPDLVVLDVMMPKLDGYGV 58 Query: 69 LKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRI 121 + LR E D I++LT D T ++ GAD Y++K P L +I+ + Sbjct: 59 CQELRKES-DIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSV 110 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 50.8 bits (120), Expect = 3e-09 Identities = 49/211 (23%), Positives = 87/211 (41%), Gaps = 29/211 (13%) Query: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 +L+++D + + I++ +E + +V + G G+ + + PD+I+LDL + L GL Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTN--DGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 Query: 67 DTLKGLRAE--GVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQG 124 + +R + D IL+LT + D + GAD YL+K P L+ +++ + + Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRR 131 Query: 125 EVILSDSIKNLLLERTHEDNPLD---------------SLTDREMGVLRQI--------- 160 ++ + + H LD LT E +L Sbjct: 132 QLRQGQPV-GQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWN 190 Query: 161 ATGLSNKQIAAQLFISEETVKVHIRNLLRKL 191 T L K F E V HIR L +K+ Sbjct: 191 RTQLIEKLWGNDFFGDERVVDTHIRRLRKKI 221 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 50.1 bits (118), Expect = 6e-09 Identities = 56/209 (26%), Positives = 97/209 (46%), Gaps = 29/209 (13%) Query: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSG 65 K+LL+DD + + L+EL+ F+V ++G E + L S +++LD+ M L+G Sbjct: 3 KLLLVDDDIELTELLSTLLELE-GFDVET-ANNGLEALQ-KLNESYKLVLLDVMMPKLNG 59 Query: 66 LDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQGE 125 ++TLK +R + +++LT D ++ GAD L K L+ +IK I + Sbjct: 60 IETLKEIRKVS-NVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 Query: 126 VILSDSIKN--------LLLERTH------EDNPLDSLTDREMGVLRQIATGLSNKQIAA 171 S++I N + L +H E+N +LTD E +L + N Sbjct: 119 ASPSNNISNVEILSFDGITLHFSHGIATYNEENL--NLTDYEFKILCLLLKSKGNVVSRE 176 Query: 172 QLFIS---------EETVKVHIRNLLRKL 191 +L + + ++ +HI NL RKL Sbjct: 177 ELSLEVMEKPLTPFDRSLDMHISNLRRKL 205 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 49.3 bits (116), Expect = 9e-09 Identities = 23/53 (43%), Positives = 37/53 (69%) Query: 145 PLDSLTDREMGVLRQIATGLSNKQIAAQLFISEETVKVHIRNLLRKLNVHSRV 197 P SL+DRE+ +L +A GL+N++++ +L IS+ TV H+ N+L K N +RV Sbjct: 8 PPASLSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRV 60 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 48.5 bits (114), Expect = 2e-08 Identities = 34/122 (27%), Positives = 68/122 (55%), Gaps = 12/122 (9%) Query: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVAL-------QTSPDVIILDL 58 ++L+++D +R I ++ ++ +EV A V G + +++ Q + D+IILD+ Sbjct: 32 RILVVEDEVSIRETIVLSLQ-EEGYEVYA-VDDGRDALALLQEFSEDPGQAAVDLIILDI 89 Query: 59 NMKGLSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQI 118 + ++GLD + LR G + ILI++ ++ + T ++ GAD Y+ T+P +L E + Sbjct: 90 MLPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYI---TKPFSLKELV 146 Query: 119 KR 120 R Sbjct: 147 AR 148 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 46.2 bits (108), Expect = 8e-08 Identities = 31/118 (26%), Positives = 60/118 (50%), Gaps = 5/118 (4%) Query: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSG 65 K+L+++D +R I L + V + S I+ ++ +P +I+LD + G SG Sbjct: 4 KILIVEDECAIREMIALF--LSQKYYDVIEASDFKTAIN-KIKENPKLILLDWMLPGRSG 60 Query: 66 LDTLKGLRAEGVDARI--LILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRI 121 + ++ ++ + A I ++LT + D ++AGAD Y+ K P LL +I+ + Sbjct: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAV 118 >SYNE-PCC-01-000511 sll0782 Length = 369 Score = 45.4 bits (106), Expect = 1e-07 Identities = 22/51 (43%), Positives = 32/51 (62%) Query: 149 LTDREMGVLRQIATGLSNKQIAAQLFISEETVKVHIRNLLRKLNVHSRVAA 199 L++RE ++ +A GL ++ IA +L ISE TVK H+ L KLN +R A Sbjct: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQA 359 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 45.1 bits (105), Expect = 2e-07 Identities = 35/119 (29%), Positives = 60/119 (50%), Gaps = 4/119 (3%) Query: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQ--TSPDVIILDLNMKG 62 +++LL++D P + +++ + ++ VV V G S Q + + I D + G Sbjct: 1 MRLLLVEDEPDLGMALEKALRRENY--VVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPG 58 Query: 63 LSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRI 121 LSGL+ + LR + IL+LT D D +DAGAD YL+K LL +++ + Sbjct: 59 LSGLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSL 117 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 44.3 bits (103), Expect = 3e-07 Identities = 29/109 (26%), Positives = 58/109 (53%), Gaps = 3/109 (2%) Query: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSG 65 K+L+++D + R +K + E + ++V + +G E + + +++++D+N+ G +G Sbjct: 5 KILVVEDEIVTRNTLKGIFEAE-GYDVF-EAENGVEMHHILANHNINLVVMDINLPGKNG 62 Query: 66 LDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTL 114 L + LR E + ++ LT D + D ++ GAD YL K P L Sbjct: 63 LLLARELREE-LSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPREL 110 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 43.9 bits (102), Expect = 4e-07 Identities = 28/114 (24%), Positives = 56/114 (49%), Gaps = 4/114 (3%) Query: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 +LL++D+ + R L+ VA+ +G E +++ + D I++D+ M L+G Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQVAN--NGQEALTLLTSNTYDAILMDIQMPMLNGY 777 Query: 67 DTLKGLRAEGVDAR--ILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQI 118 D + +R + I+ +T + D +DAG + +L K +PD L + + Sbjct: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 43.9 bits (102), Expect = 4e-07 Identities = 35/150 (23%), Positives = 72/150 (48%), Gaps = 5/150 (3%) Query: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSG 65 K+L++DD MR ++ ++ + + +A ++G E ++ + P+V++LD M + G Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELA--TNGEEALTKFAEIKPEVVLLDAVMPVMDG 70 Query: 66 LDTLKGLRA--EGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIA- 122 + L + +L++T D + + +AGA Y+ K L +++KR+ Sbjct: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLY 130 Query: 123 QGEVILSDSIKNLLLERTHEDNPLDSLTDR 152 Q + N +LER + + L L +R Sbjct: 131 QNRLQHQLESVNQMLERLAKVDQLTQLANR 160 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 43.5 bits (101), Expect = 5e-07 Identities = 34/119 (28%), Positives = 61/119 (51%), Gaps = 7/119 (5%) Query: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQ--TSPDVIILDLNMKG 62 +++LL++D + IK+++ + VV V+ G++ T + I+D + G Sbjct: 1 MRILLVEDETDLGMAIKKVLVSEKY--VVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPG 58 Query: 63 LSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRI 121 LSGL+ + LR +G +L+LT + +DAGAD YL T+P + E + R+ Sbjct: 59 LSGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYL---TKPFVMAELLARL 114 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 42.7 bits (99), Expect = 9e-07 Identities = 26/114 (22%), Positives = 56/114 (49%), Gaps = 3/114 (2%) Query: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKG-LS 64 K+L+++D L+ + I QL++ D +E+ S G + + PD+++LD+ +KG + Sbjct: 4 KILIVEDERLVAQHIAQLLK-SDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 Query: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQI 118 G++ + +++ I+ LT + GY++K + LL + Sbjct: 63 GIEVAERIKSL-YSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 42.7 bits (99), Expect = 9e-07 Identities = 29/117 (24%), Positives = 57/117 (48%), Gaps = 4/117 (3%) Query: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 VLL++D R I + L D+ V G E + SPD+++LD+ M ++G Sbjct: 30 VLLVEDSSSQREMISGI--LKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGY 87 Query: 67 DTLKGLRAEGVDARILILTVSD--AKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRI 121 + + ++++ + ++ S + D + + GAD Y+ K +P L+ IK++ Sbjct: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQL 144 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 41.2 bits (95), Expect = 3e-06 Identities = 30/126 (23%), Positives = 63/126 (50%), Gaps = 9/126 (7%) Query: 1 MQDKLKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNM 60 +Q L++LL +D+ + ++ Q+ L++ VA ++G E I + D++++D+ M Sbjct: 1186 LQPALQILLAEDNLVNQKVAHQM--LNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQM 1243 Query: 61 KGLSGLDTLKGLRAE---GVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQ 117 + G+ + +R RI+ +T + D +DAG DGY+ K + Q Sbjct: 1244 PVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPIS----INQ 1299 Query: 118 IKRIAQ 123 ++++ Q Sbjct: 1300 LRKVLQ 1305 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.138 0.364 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 18,990 Number of Sequences: 78 Number of extensions: 797 Number of successful extensions: 55 Number of sequences better than 1.0e-05: 31 Number of HSP's better than 0.0 without gapping: 16 Number of HSP's successfully gapped in prelim test: 15 Number of HSP's that attempted gapping in prelim test: 22 Number of HSP's gapped (non-prelim): 33 length of query: 208 length of database: 48,235 effective HSP length: 59 effective length of query: 149 effective length of database: 43,633 effective search space: 6501317 effective search space used: 6501317 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 90 (39.3 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= HINF-KW2-01-000816 HI0837 response regulator (cpxR) (227 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value HINF-KW2-01-000816 HI0837 response regulator (cpxR) 382 e-109 SYNE-PCC-01-002033 slr0947 121 2e-30 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 118 2e-29 SYNE-PCC-01-000414 sll0649 108 1e-26 SYNE-PCC-01-001437 slr0081 108 1e-26 SYNE-PCC-01-001461 slr0115 107 3e-26 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 100 5e-24 SYNE-PCC-01-002672 slr1837 99 9e-24 SYNE-PCC-01-002486 slr1584 97 3e-23 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 96 1e-22 SYNE-PCC-01-000242 sll0396 91 3e-21 SYNE-PCC-01-002086 slr1042 87 3e-20 SYNE-PCC-01-002731 slr1909 82 1e-18 SYNE-PCC-01-000523 sll0797 82 2e-18 SYNE-PCC-01-000518 sll0789 82 2e-18 SYNE-PCC-01-002635 slr1783 68 3e-14 SYNE-PCC-01-000877 sll1330 68 3e-14 SYNE-PCC-01-002873 slr2098 66 8e-14 SYNE-PCC-01-001306 sll1905 65 2e-13 SYNE-PCC-01-002879 slr2104 62 2e-12 SYNE-PCC-01-002489 slr1588 61 3e-12 SYNE-PCC-01-001133 sll1673 61 4e-12 SYNE-PCC-01-002788 slr1982 55 2e-10 SYNE-PCC-01-001132 sll1672 55 2e-10 SYNE-PCC-01-002618 slr1760 55 3e-10 SYNE-PCC-01-000800 sll1228 52 1e-09 SYNE-PCC-01-002617 slr1759 51 4e-09 SYNE-PCC-01-002221 slr1213 47 7e-08 SYNE-PCC-01-001075 sll1592 44 6e-07 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 40 8e-06 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 382 bits (980), Expect = e-109 Identities = 199/227 (87%), Positives = 199/227 (87%) Query: 1 MSKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESYKLVLLDVMMPKLNGI 60 MSKLLLVDDDI GFDVETANNGLEALQKLNESYKLVLLDVMMPKLNGI Sbjct: 1 MSKLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESYKLVLLDVMMPKLNGI 60 Query: 61 ETLKEIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSAS 120 ETLKEIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSAS Sbjct: 61 ETLKEIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSAS 120 Query: 121 PSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSL 180 PSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSL Sbjct: 121 PSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSL 180 Query: 181 EVMEKPLTPFDRSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGYALVT 227 EVMEKPLTPFDRSLDMHI WFKTLRGKGYALVT Sbjct: 181 EVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGYALVT 227 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 121 bits (303), Expect = 2e-30 Identities = 82/222 (36%), Positives = 117/222 (52%), Gaps = 4/222 (1%) Query: 6 LVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESYK-LVLLDVMMPKLNGIETLK 64 +VDD+ G++V TA +G EA+ +ES LV+LDVMMPKL+G + Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 65 EIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRR-SASPSN 123 E+RK S++P++MLTA G+ DR+ GLELGADD + KPF+ +EL ARI+++LRR + Sbjct: 61 ELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMP 120 Query: 124 NISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSLEVM 183 I + +L I + + +E + LT EF +L LL+ G SR E+ EV Sbjct: 121 GIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEVW 180 Query: 184 -EKPLTPFD-RSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGY 223 P D R +D+HI T RG GY Sbjct: 181 GYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGY 222 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 118 bits (295), Expect = 2e-29 Identities = 72/225 (32%), Positives = 116/225 (51%), Gaps = 4/225 (1%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKL-NESYKLVLLDVMMPKLNGIE 61 K+L+V+D+I G+DV A NG+E L N + LV++D+ +P NG+ Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 62 TLKEIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSA-- 119 +E+R+ ++P++ LT R ++D++LGLE+GADD L KPFN REL R + +L R+ Sbjct: 65 LARELREELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMPH 124 Query: 120 SPSNNISNVEILSFDGITLHF-SHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREEL 178 N E F+G L SH + T + L EF+ + ++ G + +REEL Sbjct: 125 QEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREEL 184 Query: 179 SLEVMEKPLTPFDRSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGY 223 ++ + L P DR++D+ I T+ G+GY Sbjct: 185 LKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGY 229 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 108 bits (271), Expect = 1e-26 Identities = 74/230 (32%), Positives = 113/230 (49%), Gaps = 8/230 (3%) Query: 1 MSKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESYK-LVLLDVMMPKLNG 59 M +L+V+DD F N+G L+ E L++LD+M+PKL+G Sbjct: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDG 70 Query: 60 IETLKEIRKV--SNVP-VMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILR 116 +E IR+ S P ++MLTA+GE+IDR++GL GADD L KPF+ REL+AR++A+LR Sbjct: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLR 130 Query: 117 RSASPSNNISNVEILSFDGITLHFSHGIATY---NEENLNLTDYEFKILCLLLKSKGNVV 173 R + + + + L H + Y +E L LT EF +L + G V Sbjct: 131 RQLRQGQPVGQIYRTNHFQVDLD-QHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVW 189 Query: 174 SREELSLEVMEKPLTPFDRSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGY 223 +R +L ++ +R +D HI + KT+ G GY Sbjct: 190 NRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGY 239 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 108 bits (270), Expect = 1e-26 Identities = 64/230 (27%), Positives = 120/230 (52%), Gaps = 11/230 (4%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNE--------SYKLVLLDVMM 54 ++L+V+D++ G++V ++G +AL L E + L++LD+M+ Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 55 PKLNGIETLKEIR-KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKA 113 P++NG++ + +R N P+++++A+G ++++V GLE+GADD + KPF+ +EL+AR +A Sbjct: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 Query: 114 ILRRSASPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVV 173 ++RR NNI+ F + L+ E ++L EF++L L + V Sbjct: 152 MIRRQGLAGNNIA--PFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVW 209 Query: 174 SREELSLEVMEKPLTPFDRSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGY 223 SRE+L + +++D+HI + T+RG GY Sbjct: 210 SREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGY 259 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 107 bits (268), Expect = 3e-26 Identities = 70/230 (30%), Positives = 121/230 (52%), Gaps = 6/230 (2%) Query: 1 MSKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESYK--LVLLDVMMPKLN 58 M ++L++DDD G+DV+ A +G++ Q L + L++LD+M+PK++ Sbjct: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKG-QALAVQLQPDLIMLDLMLPKVD 59 Query: 59 GIETLKEIRK---VSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAIL 115 G + +R+ +++PV+MLTA G+ D++ G + GADD L KPF+ E++AR++A+L Sbjct: 60 GFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALL 119 Query: 116 RRSASPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSR 175 RR+ + EIL+ +TL A + +++ LT EF++L LL+ G VS Sbjct: 120 RRTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSP 179 Query: 176 EELSLEVMEKPLTPFDRSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGYAL 225 ++ EV ++ +HI + KT+ G GY L Sbjct: 180 SDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCL 229 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 100 bits (248), Expect = 5e-24 Identities = 65/224 (29%), Positives = 114/224 (50%), Gaps = 9/224 (4%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESYKLVLLDVMMPKLNGIET 62 K+L+V+D+ +DV A++ A+ K+ E+ KL+LLD M+P +GI+ Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENPKLILLDWMLPGRSGIQF 63 Query: 63 LKEIRKVSN---VPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSA 119 ++ I+K + +P++MLTA+ + D + L GADD + KPF+ + L+ARI+A+ RR Sbjct: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIY 123 Query: 120 SPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELS 179 + ++ LS D + ++ +NL+ EFK+L ++ V SRE+L Sbjct: 124 EQQSQFIQIDELSIDENAQR-----VFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLL 178 Query: 180 LEVMEKPLTPFDRSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGY 223 + L R++D +I + +T+RG GY Sbjct: 179 NRIWHNDLEVEYRTVDSYI-RRLRRNLAPFQCEHYIQTVRGSGY 221 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 99.4 bits (246), Expect = 9e-24 Identities = 59/185 (31%), Positives = 103/185 (55%), Gaps = 7/185 (3%) Query: 1 MSKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEAL-QKLNESYKLVLLDVMMPKLNG 59 M+ +LLVDD+ G ++ A+ G L + Y L++LD M+P+++G Sbjct: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 Query: 60 IETLKEIRKVSN-VPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 +E ++IR + + PV+ LTA+ DRV GL+ G DD L KPF REL+AR++A+LRR Sbjct: 61 LEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQ 120 Query: 119 ASPSNNISNV-----EILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVV 173 + + +LS + ++L ++ +A + + L++ E +L L L++ G ++ Sbjct: 121 SHGETITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQIL 180 Query: 174 SREEL 178 S EE+ Sbjct: 181 SHEEI 185 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 97.4 bits (241), Expect = 3e-23 Identities = 68/225 (30%), Positives = 114/225 (50%), Gaps = 7/225 (3%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNE-SYKLVLLDVMMPKLNGIE 61 ++LLV+DD+ + V+ A + A + Y LV+LDVM+P+L+GI Sbjct: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 Query: 62 TLKEIRKVSNV-PVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSAS 120 ++ R S + P++M+TAR D++ GL+ GADD + KP + EL AR++A+LRR + Sbjct: 62 LCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCA 121 Query: 121 PSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSL 180 +L + I L S +Y+ E L+LT E+ IL LLL++ V+SR + Sbjct: 122 TCQ-----PVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIID 176 Query: 181 EVMEKPLTPFDRSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGYAL 225 + + P + ++ +H+ +T+ G GY L Sbjct: 177 SIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRL 221 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 95.9 bits (237), Expect = 1e-22 Identities = 67/225 (29%), Positives = 114/225 (50%), Gaps = 12/225 (5%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNES-YKLVLLDVMMPKLNGIE 61 ++LL++DD GF V+ +G + L + Y V+LD+ +PKL+G+E Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 62 TLKEIRKV-SNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSAS 120 L++ R +VPV++LTAR +RV GL+ GADD L KPF E+ AR++A++RR Sbjct: 62 VLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYG 121 Query: 121 PSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSL 180 ++ ++ G+ L + N + ++LT E+K+L L + +K V+SR + Sbjct: 122 YHHS-----VIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSI-- 174 Query: 181 EVMEKPLTPFDRSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGYAL 225 E+ L+ +D + + +T+ G GYAL Sbjct: 175 ---EEKLSSWDEEISSGALDVHIYNLRQKLGKQFIRTVHGVGYAL 216 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 90.9 bits (224), Expect = 3e-21 Identities = 60/225 (26%), Positives = 114/225 (50%), Gaps = 8/225 (3%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNE-SYKLVLLDVMMPKLNGIE 61 ++L+V+++ G+DV A +GL+ + E L++++ +P ++G+E Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 62 TLKEIRKV-SNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSAS 120 + +R++ S +P++++TA+ + +RV+GL+ GADD + KPFN E ARI+ LRR+ + Sbjct: 64 LCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTHT 123 Query: 121 PSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSL 180 S+ + L F+ T G + ++LT EF++L LL V++RE++ Sbjct: 124 TSDEVLQFADLRFNRSTREIQRG-----DRLIDLTAKEFELLDYLLSHARQVLTREQILE 178 Query: 181 EVMEKPLTPFDRSLDMHIXXXXXXXXXXXXXXXWFKTLRGKGYAL 225 V ++++I +T+RG GY L Sbjct: 179 RVWGYDFMGDSNIIEVYIRYLRLKLEAAGEPRL-IQTVRGVGYVL 222 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 87.4 bits (215), Expect = 3e-20 Identities = 49/120 (40%), Positives = 72/120 (60%), Gaps = 4/120 (3%) Query: 1 MSKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKL-NESYKLVLLDVMMPKLNG 59 M+ +LLV+D G+ V A +G+EAL+KL N S LV+LD++MP++NG Sbjct: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 Query: 60 IETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILR 116 E + I+ K NVPV+M +++GE+ DR G+ GAD + KPF EL+ IK +LR Sbjct: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 82.0 bits (201), Expect = 1e-18 Identities = 45/119 (37%), Positives = 73/119 (61%), Gaps = 4/119 (3%) Query: 4 LLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESYK-LVLLDVMMPKLNGIET 62 LLLVDDD G+ V TA NG EAL L + +++ D+MMP+++G Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 63 LKEIRK---VSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 ++++R+ +S +PVM L+A+G+ +RV GL +GAD + KPF EL A++++ LR++ Sbjct: 70 IEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQA 128 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 81.6 bits (200), Expect = 2e-18 Identities = 57/189 (30%), Positives = 97/189 (51%), Gaps = 7/189 (3%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNES---YKLVLLDVMMPKLNG 59 ++LLV+D+ + V+ +G +A L Y L ++D ++P L+G Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 60 IETLKEIRKVSN-VPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 +E +++R N +PV+MLTA GE +RV GL+ GADD L KPF EL+AR++A+ RRS Sbjct: 62 LELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRRS 121 Query: 119 ASPSNNISNVEILSFDGITLHFSHGIA---TYNEENLNLTDYEFKILCLLLKSKGNVVSR 175 I + S D S I+ + + LT EF+I L+++ ++S Sbjct: 122 PQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIISG 181 Query: 176 EELSLEVME 184 ++ ++ + Sbjct: 182 SKIRQQLWD 190 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 81.6 bits (200), Expect = 2e-18 Identities = 55/180 (30%), Positives = 96/180 (53%), Gaps = 8/180 (4%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNE---SYKLVLLDVMMPKLNG 59 +LLLV+D+ + V+ +G A L++ +Y L + D M+P L+G Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 60 IETLKEIR-KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 +E +++R + S++P++MLTA+ + DRV GL+ GADD L KPF EL+AR++++ RRS Sbjct: 62 LELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRRS 121 Query: 119 ASPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREEL 178 V D + + + T + + LT EF++L +K ++S E++ Sbjct: 122 PELQPQQLQVGQWWLD----YGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQI 177 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 67.8 bits (164), Expect = 3e-14 Identities = 45/125 (36%), Positives = 68/125 (54%), Gaps = 5/125 (4%) Query: 4 LLLVDDDIXXXXXXXXXXXXXG-FDVETANNGLEALQKLNESYK-LVLLDVMMPKLNGIE 61 LLLVDD+ G F V+ A N EA L LV+ D+MMP+++G + Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 62 TLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 L+++R + ++PV+ LTARG DR+ G + G D L KPF+ EL A ++ +L R Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 Query: 119 ASPSN 123 + S+ Sbjct: 178 QASSD 182 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 67.8 bits (164), Expect = 3e-14 Identities = 50/200 (25%), Positives = 94/200 (47%), Gaps = 6/200 (3%) Query: 25 GFDVETANNGLEALQKLNESYK-LVLLDVMMPKLNGIETLKEIRKVSNVPVMMLTARGED 83 G+ V+ + +A Q N L ++D + +GIE + + + + +L+A+ + Sbjct: 27 GYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIELCRWLYQQHQSMIFILSAKDTE 86 Query: 84 IDRVLGLELGADDCLPKPFNDRELIARIKAILRRSASPSNNISNVEILSFDGITLHFSHG 143 D V GL+ GADD L KPF +E +ARI+ ++RR ++ +L + + + Sbjct: 87 KDIVHGLKAGADDYLTKPFGMQEFLARIECLIRR----VRTVAAPLLLDYGVLKIDLVQR 142 Query: 144 IATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSLEVMEKPLTPFDRSLDMHIXXXXX 203 Y ++LT EF +L +L +++G+ +SR EL + + R++D H+ Sbjct: 143 RVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRRAWPEAIDN-PRTIDTHVLSLRK 201 Query: 204 XXXXXXXXXXWFKTLRGKGY 223 +T+R GY Sbjct: 202 KIETDPRQPSLIQTVRNVGY 221 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 66.2 bits (160), Expect = 8e-14 Identities = 40/110 (36%), Positives = 63/110 (57%), Gaps = 4/110 (3%) Query: 2 SKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNES-YKLVLLDVMMPKLNGI 60 +++LLV+D+ GF+V+ A NGL AL++LN + Y LVL+D+ MP+++GI Sbjct: 925 ARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGI 984 Query: 61 ETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDREL 107 E IR + + +P++ +TA DR L+ G +D L KP EL Sbjct: 985 EATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 Score = 46.6 bits (109), Expect = 7e-08 Identities = 33/122 (27%), Positives = 55/122 (45%), Gaps = 9/122 (7%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKL------NESYKLVLLDVMMPK 56 ++L+VDD+ F VET +G EAL L N + +V +D MP Sbjct: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 Query: 57 LNGIETLKEIRKVS---NVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKA 113 ++G+E + ++ + + ++TA G + V LG DD L KP + L + Sbjct: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLAR 891 Query: 114 IL 115 +L Sbjct: 892 VL 893 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 65.1 bits (157), Expect = 2e-13 Identities = 41/124 (33%), Positives = 65/124 (52%), Gaps = 4/124 (3%) Query: 4 LLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESYK-LVLLDVMMPKLNGIET 62 +L+VDD G+ +G EALQ++ ++ L+LLD+MMP ++G+E Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 63 ---LKEIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSA 119 LK+ + ++PV+ LTA E D + GA D + KPF+ EL+AR+K L Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLELKQ 139 Query: 120 SPSN 123 + N Sbjct: 140 TRDN 143 Score = 48.9 bits (115), Expect = 1e-08 Identities = 33/103 (32%), Positives = 54/103 (52%), Gaps = 5/103 (4%) Query: 4 LLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNES-YKLVLLDVMMPKLNGIET 62 +LL +D++ G+ V+ NNG EAL L + Y +VL+DV MP+++G+ Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 63 LKEIRKV---SNVP-VMMLTARGEDIDRVLGLELGADDCLPKP 101 + IR+ S P ++ +TA + DR L G +D + KP Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 61.6 bits (148), Expect = 2e-12 Identities = 44/145 (30%), Positives = 70/145 (48%), Gaps = 11/145 (7%) Query: 2 SKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKL-NESYKLVLLDVMMPKLNGI 60 + +LLV+D+ G V+ ANNG EAL L + +Y +L+D+ MP LNG Sbjct: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGY 777 Query: 61 ETLKEIRKVS---NVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAIL-- 115 + + IR+ N+P++ +TA D+ L+ G +D L KP L + + Sbjct: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWIPP 837 Query: 116 ---RRSASPSNNISNVEILSFDGIT 137 R +PS+N+ LSF +T Sbjct: 838 NSAREKKNPSSNLK--ADLSFSSMT 860 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 61.2 bits (147), Expect = 3e-12 Identities = 41/128 (32%), Positives = 64/128 (50%), Gaps = 6/128 (4%) Query: 1 MSKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESY---KLVLLDVMMPKL 57 MS +L+V+D+ + + A NG AL LN L++ DVMMP++ Sbjct: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 Query: 58 NG---IETLKEIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAI 114 +G I L++ K + +P + LTA G D G+ GADD L KPF +L+ + + Sbjct: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 Query: 115 LRRSASPS 122 L++ A S Sbjct: 121 LQKQAKLS 128 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 60.8 bits (146), Expect = 4e-12 Identities = 35/113 (30%), Positives = 61/113 (53%), Gaps = 4/113 (3%) Query: 4 LLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLN-ESYKLVLLDVMMPKLNGIET 62 +LLVDD G+ V + +G AL+ L + L+LLD+ MP ++G + Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 63 LKEIRK---VSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIK 112 + I+K + ++P++ ++A G+ D+V E G D + KPF E++ARI+ Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 55.1 bits (131), Expect = 2e-10 Identities = 33/119 (27%), Positives = 66/119 (55%), Gaps = 4/119 (3%) Query: 1 MSKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEAL-QKLNESYKLVLLDVMMPKLNG 59 M+K+LLV+D+ G++V A +G +A+ ++ES +L+L+D+ +P ++G Sbjct: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 Query: 60 IETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAIL 115 K+I+ +++P++ LTA DR + G DD KP + L+ +++A++ Sbjct: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 55.1 bits (131), Expect = 2e-10 Identities = 37/110 (33%), Positives = 59/110 (53%), Gaps = 6/110 (5%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESYK--LVLLDVMMPKLNGI 60 K+L+VDD GF++E A+NG EA+ L ES++ L+ +D+ MP ++G Sbjct: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIA-LWESWEPHLIFMDMRMPVMDGY 689 Query: 61 ETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDREL 107 E K I+ K + V+ LTA + ++ + L G DD L KPF + + Sbjct: 690 EATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTI 739 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 54.7 bits (130), Expect = 3e-10 Identities = 39/118 (33%), Positives = 58/118 (49%), Gaps = 4/118 (3%) Query: 2 SKLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNE-SYKLVLLDVMMPKLNGI 60 +K+L+VDDD G VE A NG EAL K E ++VLLD +MP ++G Sbjct: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 Query: 61 ETLKEIRKVSNVP---VMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAIL 115 + + K+ P V+M+T ++ E GA D + KP + L R+K +L Sbjct: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 52.4 bits (124), Expect = 1e-09 Identities = 39/112 (34%), Positives = 59/112 (52%), Gaps = 6/112 (5%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNESY--KLVLLDVMMPKLNGI 60 K+L+VDD GF V+ A NG A+ L ES+ +++L+D+ MP L+G Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIA-LWESWHPQVILMDMQMPVLDGR 477 Query: 61 ETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIA 109 T ++I+ + + ++ LTA + +R L G DD L KPF ELIA Sbjct: 478 STTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 50.8 bits (120), Expect = 4e-09 Identities = 32/110 (29%), Positives = 54/110 (49%), Gaps = 5/110 (4%) Query: 3 KLLLVDDDIXXXXXXXXXXXXXGFDVETANNGLEALQKLNES-YKLVLLDVMMPKLNGIE 61 ++LL +D++ G+ V ANNG E + L + Y LVL+D+ MP ++GI Sbjct: 1191 QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGIT 1250 Query: 62 TLKEIRKVSNVP----VMMLTARGEDIDRVLGLELGADDCLPKPFNDREL 107 + IR+ + ++ +TA DR L+ G D + KP + +L Sbjct: 1251 ACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 46.6 bits (109), Expect = 7e-08 Identities = 32/116 (27%), Positives = 65/116 (56%), Gaps = 7/116 (6%) Query: 1 MSKLLLVDDDIXXXXXXXXXXXXXGFDV-ETANNGLEALQKLNESYK-LVLLDVMMP-KL 57 ++K+L+V+D+ G+++ A++G AL+K+ E Y LVLLD+ + ++ Sbjct: 2 VTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEI 61 Query: 58 NGIETLKEIRKVSNVPVMMLTA--RGEDIDRVLGLELGADDCLPKPFNDRELIARI 111 +GIE + I+ + ++P++ LTA GE ++R + + KPF +L++ + Sbjct: 62 DGIEVAERIKSLYSIPIVYLTAFSDGETLER--AQKTNPQGYVIKPFRREQLLSTV 115 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 43.5 bits (101), Expect = 6e-07 Identities = 52/185 (28%), Positives = 86/185 (46%), Gaps = 17/185 (9%) Query: 4 LLLVDDDIXXXXXXXXXXXXXGFDVE-TANNGLEALQKLNES-YKLVLLDVMMPKLNGIE 61 LL+ DD++ G DV A +G A+ +N+ + +V+LDV +P + GIE Sbjct: 11 LLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGGIE 70 Query: 62 TLKEIRKV-SNVPVMMLTARGED--IDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 +I+K+ +PV++LT+ + I+R+ +E A K L+ I+++ + Sbjct: 71 ACHQIKKIHPQLPVLILTSHSQPALINRL--IEAQAQGYCVKGVAAETLVLAIRSVAAGA 128 Query: 119 ----ASPSNNISNV-EILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVV 173 A S I + S G L +A + EN LT E +IL L+ K K N Sbjct: 129 FWWDAIASQEIQTAFQHSSSTGAVL----PLADADGEN-PLTKRELEILSLVAKGKSNQE 183 Query: 174 SREEL 178 +EL Sbjct: 184 IADEL 188 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 39.7 bits (91), Expect = 8e-06 Identities = 29/103 (28%), Positives = 51/103 (49%), Gaps = 3/103 (2%) Query: 27 DVETANNGLEALQKLNESYKLVLLDVMMPKLNGIETLKEIRKVS-NVPVMMLTARGEDID 85 DV + G+ L S +++LD+ M L+G++TLK +R + +++LT D Sbjct: 35 DVSSGTEGISVA--LQTSPDVIILDLNMKGLSGLDTLKGLRAEGVDARILILTVSDAKND 92 Query: 86 RVLGLELGADDCLPKPFNDRELIARIKAILRRSASPSNNISNV 128 ++ GAD L K L+ +IK I + S++I N+ Sbjct: 93 IYTLIDAGADGYLLKDTEPDTLLEQIKRIAQGEVILSDSIKNL 135 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.139 0.388 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 19,567 Number of Sequences: 78 Number of extensions: 892 Number of successful extensions: 86 Number of sequences better than 1.0e-05: 30 Number of HSP's better than 0.0 without gapping: 19 Number of HSP's successfully gapped in prelim test: 11 Number of HSP's that attempted gapping in prelim test: 19 Number of HSP's gapped (non-prelim): 33 length of query: 227 length of database: 48,235 effective HSP length: 60 effective length of query: 167 effective length of database: 43,555 effective search space: 7273685 effective search space used: 7273685 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) (236 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 452 e-130 SYNE-PCC-01-000414 sll0649 126 5e-32 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 125 1e-31 SYNE-PCC-01-001437 slr0081 120 5e-30 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 105 1e-25 SYNE-PCC-01-002033 slr0947 99 2e-23 SYNE-PCC-01-000518 sll0789 94 3e-22 SYNE-PCC-01-001461 slr0115 94 5e-22 SYNE-PCC-01-002672 slr1837 92 1e-21 SYNE-PCC-01-000523 sll0797 82 1e-18 SYNE-PCC-01-000242 sll0396 82 2e-18 SYNE-PCC-01-002486 slr1584 79 2e-17 SYNE-PCC-01-000877 sll1330 78 3e-17 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 66 1e-13 SYNE-PCC-01-002086 slr1042 61 4e-12 SYNE-PCC-01-002635 slr1783 58 2e-11 SYNE-PCC-01-002731 slr1909 57 4e-11 SYNE-PCC-01-002489 slr1588 57 4e-11 SYNE-PCC-01-000800 sll1228 54 6e-10 SYNE-PCC-01-001132 sll1672 52 2e-09 SYNE-PCC-01-001306 sll1905 51 3e-09 SYNE-PCC-01-002618 slr1760 48 2e-08 SYNE-PCC-01-001575 slr0312 48 2e-08 SYNE-PCC-01-002879 slr2104 48 3e-08 SYNE-PCC-01-002873 slr2098 43 1e-06 SYNE-PCC-01-002788 slr1982 43 1e-06 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 452 bits (1163), Expect = e-130 Identities = 221/236 (93%), Positives = 221/236 (93%) Query: 1 MTTPKILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGK 60 MTTPKILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGK Sbjct: 1 MTTPKILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGK 60 Query: 61 NGXXXXXXXXXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 NG IFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR Sbjct: 61 NGLLLARELREELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 Query: 121 AMPHQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQT 180 AMPHQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQT Sbjct: 121 AMPHQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQT 180 Query: 181 REELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRFCGDIE 236 REELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRFCGDIE Sbjct: 181 REELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRFCGDIE 236 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 126 bits (317), Expect = 5e-32 Identities = 76/234 (32%), Positives = 115/234 (49%), Gaps = 10/234 (4%) Query: 4 PKILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGX 63 P IL+VED+ ++ E E + +G I +L+V+D+ LP +G Sbjct: 12 PNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 Query: 64 XXXXXXXXXXXXXX---IFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 + LT + E+D+I+GL GADDYL KPF+PREL R R LL R Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRR 131 Query: 121 AMPHQEKENTFGREFYRFNGWKLDLNSHSLITPEG---QEFKLPRSEFRAMLHFCENPGK 177 + + + YR N +++DL+ H +G +E +L EF + F PG+ Sbjct: 132 QLRQGQPVG----QIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGR 187 Query: 178 LQTREELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 + R +L++K+ G + +R VD IRR+RK E P P I T+ G GY+F Sbjct: 188 VWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 125 bits (314), Expect = 1e-31 Identities = 75/225 (33%), Positives = 116/225 (51%), Gaps = 4/225 (1%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXX 64 K+L+V+D+I L + E EG+DV A NG+E L N + LV++D+ +P NG Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKL-NESYKLVLLDVMMPKLNGIE 61 Query: 65 XXXXXXXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMPH 124 + LT R ++D++LGLE+GADD L KPFN REL R + +L R+ Sbjct: 62 TLKEIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSA-- 119 Query: 125 QEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREEL 184 N E F+G L SH + T + L EF+ + ++ G + +REEL Sbjct: 120 SPSNNISNVEILSFDGITLHF-SHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREEL 178 Query: 185 LKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGY 229 ++ + L P DR++D+ I +R+ N P+ T+ G+GY Sbjct: 179 SLEVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGY 223 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 120 bits (300), Expect = 5e-30 Identities = 74/238 (31%), Positives = 124/238 (52%), Gaps = 19/238 (7%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHN-------INLVVMDINL 57 +ILVVEDE+ R T+ + EGY+V+ ++G + +L + ++L+++DI L Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 58 PGKNGXXXXXXXXXXXXXXXIFL-TGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARN 116 P NG I + + + +E++K+ GLE+GADDY+TKPF+ +EL R R Sbjct: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 Query: 117 LLHRAMPHQEKENTFGREFYRFNGWKLDL---NSHSLITPEGQEFKLPRSEFRAMLHFCE 173 ++ R + G F ++ DL + G+E L EFR + F Sbjct: 152 MIRR-------QGLAGNNIAPFRKFR-DLVLYPQECRVLMRGEEVSLAPKEFRLLELFMS 203 Query: 174 NPGKLQTREELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 P ++ +RE+L++ + G + +TVDV IR +R+ E P+ P ++T+ G GYRF Sbjct: 204 YPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 105 bits (262), Expect = 1e-25 Identities = 73/232 (31%), Positives = 113/232 (48%), Gaps = 13/232 (5%) Query: 3 TPKILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNG 62 T KIL+VEDE R + + YDV EA + + + N L+++D LPG++G Sbjct: 2 TRKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKI-KENPKLILLDWMLPGRSG 60 Query: 63 XXXXXXXXXXXXXXXI---FLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLH 119 I LT + E D I L GADDY+TKPF+P+ L R + Sbjct: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 Query: 120 RAMPHQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQ 179 R Q +F + + +D N+ + + QE L +EF+ + F +P K+ Sbjct: 121 RIYEQQS-------QFIQIDELSIDENAQRVFFQQ-QEINLSSTEFKLLHFFMRHPEKVY 172 Query: 180 TREELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 +RE+LL ++ +L+ + RTVD IRR+R++ + I T+ G GYRF Sbjct: 173 SREQLLNRIWHNDLEVEYRTVDSYIRRLRRNLAPF-QCEHYIQTVRGSGYRF 223 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 98.6 bits (244), Expect = 2e-23 Identities = 69/230 (30%), Positives = 107/230 (46%), Gaps = 12/230 (5%) Query: 8 VVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXXXXX 67 +V+DE R L+ GY+V A +G E + +LVV+D+ +P +G Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 68 XXXXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR----AMP 123 I LT + D+I GLE+GADDY+ KPF+P+EL R R++L R MP Sbjct: 61 ELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMP 120 Query: 124 HQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREE 183 + ++D N + + + +L EF + G+ +R E Sbjct: 121 GIPSSGVL-----QIATIRIDTNKRQVYKGD-ERIRLTGMEFSLLELLVSRSGEPFSRSE 174 Query: 184 LLKKMTG--RELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 +L+++ G E R VDV I R+R E+ P+ P +I+T G GY F Sbjct: 175 ILQEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLF 224 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 94.4 bits (233), Expect = 3e-22 Identities = 65/230 (28%), Positives = 110/230 (47%), Gaps = 11/230 (4%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNIN--LVVMDINLPGKNG 62 ++L+VEDE L+ E Y V ++G L +N L + D +PG +G Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 63 XXXXXXXXXXXXXXXIF-LTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRA 121 I LT +D D++ GL+ GADDYL KPF EL R R+L R+ Sbjct: 62 LELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRRS 121 Query: 122 MPHQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTR 181 Q ++ G+ W LD + +++TPE L EF+ + +F ++P ++ + Sbjct: 122 PELQPQQLQVGQ-------WWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSS 174 Query: 182 EELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 E++ ++ + V +R +R+ E++ + N+I T++G GYRF Sbjct: 175 EQIKNQLWALSAESTSNVVAAQVRLLRRKLEEYSH-GNLIETVYGLGYRF 223 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 93.6 bits (231), Expect = 5e-22 Identities = 68/239 (28%), Positives = 107/239 (44%), Gaps = 26/239 (10%) Query: 4 PKILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGX 63 P+IL+++D+ + + E GYDV +A +G++ + +L+++D+ LP +G Sbjct: 2 PRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGF 61 Query: 64 XXXXXXXXXXXXXXI---FLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 I LT DKI G + GADDYLTKPF+ E+ R R LL R Sbjct: 62 TVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRR 121 Query: 121 A--MPHQEKENTFGREFYRFNGWKLDLNSHSL-ITPE-------GQEFKLPRSEFRAMLH 170 +P K + LN L + PE G+ KL EF + Sbjct: 122 TDRIPQAAKHSEI-------------LNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHC 168 Query: 171 FCENPGKLQTREELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGY 229 + G+ + ++L+++ G E T+ V IR +R E +P P I T++G GY Sbjct: 169 LLQRHGQTVSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 92.0 bits (227), Expect = 1e-21 Identities = 64/230 (27%), Positives = 103/230 (44%), Gaps = 6/230 (2%) Query: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXXX 65 IL+V+DE L +G+ + A+ G + +L+++D LP +G Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 66 XXXXXXXXXXXXI-FLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMPH 124 + FLT +D D++ GL+ G DDYL KPF REL R R LL R Sbjct: 64 CRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQSHG 123 Query: 125 QEKENTFG---REFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTR 181 + T G N LD+ ++ + +GQ L E + F + PG++ + Sbjct: 124 ETITETLGAVKNNLLSVNNVSLDV-ANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSH 182 Query: 182 EELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 EE+ + E P + +R +R+ E PN P +I +++G+GY F Sbjct: 183 EEIYSHLWPGESPPSSNVLAALVRLLRRKIE-QPNAPRLINSVYGKGYCF 231 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 82.4 bits (202), Expect = 1e-18 Identities = 65/230 (28%), Positives = 102/230 (44%), Gaps = 4/230 (1%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANH--NINLVVMDINLPGKNG 62 +IL+VEDE +K + +E Y V +G + L N L ++D LPG +G Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 63 XXXXXXXXXXXXXXXIF-LTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRA 121 + LT +++ GL+ GADDYLTKPF EL R R L R+ Sbjct: 62 LELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRRS 121 Query: 122 MPHQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTR 181 Q + T G + L + + E QE L EF+ + +NP ++ + Sbjct: 122 PQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIISG 181 Query: 182 EELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 ++ +++ + +P V +R IR+ N P I T+ G+GYRF Sbjct: 182 SKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQ-NCPCPIKTVPGQGYRF 230 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 82.0 bits (201), Expect = 2e-18 Identities = 62/226 (27%), Positives = 103/226 (45%), Gaps = 10/226 (4%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXX 64 ++LVVE+E ++ + EGYDV A +G++ +L++++ LPG +G Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 65 XXXXXXXXXXXXXIFL-TGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMP 123 I L T +D+ ++++GL+ GADDY+ KPFN E R R L R Sbjct: 64 LCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT-- 121 Query: 124 HQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREE 183 H + RFN S I + L EF + + + ++ TRE+ Sbjct: 122 HTTSDEVLQFADLRFN------RSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQ 175 Query: 184 LLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGY 229 +L+++ G + ++V IR +R E P +I T+ G GY Sbjct: 176 ILERVWGYDFMGDSNIIEVYIRYLRLKLE-AAGEPRLIQTVRGVGY 220 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 78.6 bits (192), Expect = 2e-17 Identities = 61/227 (26%), Positives = 104/227 (45%), Gaps = 9/227 (3%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXX 64 +IL+VED++ TL + Y V A + + +LV++D+ LP +G Sbjct: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 Query: 65 XXXXXXXXXXXXXIFL-TGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMP 123 I + T RD DKI GL+ GADDY+ KP + EL R R LL R Sbjct: 62 LCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCA 121 Query: 124 HQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREE 183 + +G +LD +++ ++ + + L R E+ + N ++ +R Sbjct: 122 TCQPVLEWG-------PIRLDPSTYE-VSYDNEVLSLTRKEYSILELLLRNGRRVLSRSM 173 Query: 184 LLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYR 230 ++ + E P++ TV V +R +R+ + + + I T+HG GYR Sbjct: 174 IIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 77.8 bits (190), Expect = 3e-17 Identities = 63/230 (27%), Positives = 91/230 (39%), Gaps = 8/230 (3%) Query: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXXX 65 I VVE R+ L + GY V + + N L V+D +L +G Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 Query: 66 XXXXXXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMPHQ 125 L+ +D E D + GL+ GADDYLTKPF +E R L+ R Sbjct: 66 CRWLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRV---- 121 Query: 126 EKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREELL 185 + K+DL + +G L EF + + G +R ELL Sbjct: 122 --RTVAAPLLLDYGVLKIDLVQRR-VEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELL 178 Query: 186 KKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRFCGDI 235 ++ E RT+D + +RK E P P++I T+ GYRF I Sbjct: 179 RR-AWPEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRFNSSI 227 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 65.9 bits (159), Expect = 1e-13 Identities = 60/233 (25%), Positives = 100/233 (42%), Gaps = 15/233 (6%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXX 64 +IL++ED+ + N L+ G+ V +G L + + VV+D+ LP +G Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 65 XXXXXXXXXXXXXIF-LTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMP 123 + LT RD +++ GL+ GADDYL KPF E+ R + L+ R Sbjct: 62 VLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYG 121 Query: 124 HQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREE 183 + G KLD N S + Q L E++ + F N ++ +R Sbjct: 122 YH-------HSVIEQAGVKLDQNQRS-VWLNNQPISLTSREYKLLELFMLNKDRVLSRSS 173 Query: 184 LLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRFCGDIE 236 + +K++ + + +DV I +R+ I T+HG GY G +E Sbjct: 174 IEEKLSSWDEEISSGALDVHIYNLRQKL-----GKQFIRTVHGVGYAL-GQVE 220 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 60.8 bits (146), Expect = 4e-12 Identities = 39/116 (33%), Positives = 55/116 (47%), Gaps = 3/116 (2%) Query: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGX-- 63 +L+VED R + GI + G+ V A +GVE L N + +LVV+DI +P NG Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 64 -XXXXXXXXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLL 118 I + + E D+ G+ GAD Y+ KPF P EL + LL Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 58.2 bits (139), Expect = 2e-11 Identities = 40/119 (33%), Positives = 57/119 (47%), Gaps = 4/119 (3%) Query: 6 ILVVEDEIVTRNTLKGIFEAEG-YDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXX 64 +L+V+DE R +++ E G + V A N E L +H LV+ DI +P +G Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 65 XXXXXXXXXXXXX---IFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 +FLT R D+I G + G D +L+KPF+P EL RNLL R Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLAR 176 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 57.4 bits (137), Expect = 4e-11 Identities = 35/119 (29%), Positives = 58/119 (48%), Gaps = 3/119 (2%) Query: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXXX 65 +L+V+D+ +K E +GY V A NG E +L +++V DI +P +G Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 66 XXXXXXXXXXXXI---FLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRA 121 I FL+ + +++ GL +GAD Y+ KPF P EL + ++ L +A Sbjct: 70 IEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQA 128 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 57.4 bits (137), Expect = 4e-11 Identities = 40/131 (30%), Positives = 58/131 (44%), Gaps = 9/131 (6%) Query: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNI--NLVVMDINLPGKNGX 63 ILVVEDE + R + E Y + EAENG +L + + +L++ D+ +P +G Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 64 XXXXXXXXXXXXXX---IFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 IFLT D G+ GADDYL KPF +L N ++ Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLL----NAVNS 119 Query: 121 AMPHQEKENTF 131 + Q K + F Sbjct: 120 RLQKQAKLSAF 130 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 53.5 bits (127), Expect = 6e-10 Identities = 37/124 (29%), Positives = 59/124 (47%), Gaps = 3/124 (2%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLP---GKN 61 K+LVV+D +R L+ + + G+ V EAENG + + + +++MD+ +P G++ Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 Query: 62 GXXXXXXXXXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRA 121 I LT E ++ L G DD+L+KPF P EL L A Sbjct: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVA 538 Query: 122 MPHQ 125 +P Q Sbjct: 539 LPSQ 542 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 51.6 bits (122), Expect = 2e-09 Identities = 36/111 (32%), Positives = 52/111 (46%), Gaps = 5/111 (4%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLP---GKN 61 KILVV+D+ V R L + G+++ EA NG E + + +L+ MD+ +P G Sbjct: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 Query: 62 GXXXXXXXXXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTI 112 + LT E +K + L G DD+L KPF RE TI Sbjct: 691 ATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF--RENTI 739 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 51.2 bits (121), Expect = 3e-09 Identities = 34/116 (29%), Positives = 52/116 (44%), Gaps = 3/116 (2%) Query: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXXX 65 ILVV+D + + E EGY +G E + +L+++D+ +PG +G Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 66 XXXXXXXXXXXXI---FLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLL 118 I FLT + + D + GA DY+TKPF+P EL R + L Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 Score = 43.1 bits (100), Expect = 8e-07 Identities = 28/103 (27%), Positives = 46/103 (44%), Gaps = 4/103 (3%) Query: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXXX 65 IL+ ED ++ + K + + GY V NG E LA + ++V+MD+ +P +G Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 66 XXXXXXXXXXX----XIFLTGRDNEVDKILGLEIGADDYLTKP 104 I +T E D+ L G +DY++KP Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 48.1 bits (113), Expect = 2e-08 Identities = 38/125 (30%), Positives = 57/125 (45%), Gaps = 4/125 (3%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXX 64 KILVV+D+ R L+ + EG+ V A NG E A +V++D +P +G Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 Query: 65 ---XXXXXXXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR- 120 + +TG D+E E GA DY+TKP + L R + LL++ Sbjct: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQN 132 Query: 121 AMPHQ 125 + HQ Sbjct: 133 RLQHQ 137 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 48.1 bits (113), Expect = 2e-08 Identities = 34/126 (26%), Positives = 56/126 (44%), Gaps = 4/126 (3%) Query: 2 TTPKILVVEDEIVTRNTLKGIF--EAEGYDVFEAENGVEMHHILANHNINLVVMDINLPG 59 TT ++L+ +D + R L I + + + +AENG + + H ++ +MD+ +P Sbjct: 5 TTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPE 64 Query: 60 KNGXXXXXXX-XXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLL 118 G I LT D++ D GL+ GA YL K P EL + A + Sbjct: 65 VEGVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDEL-LNAIRTV 123 Query: 119 HRAMPH 124 HR + Sbjct: 124 HRGQKY 129 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 47.8 bits (112), Expect = 3e-08 Identities = 38/148 (25%), Positives = 63/148 (42%), Gaps = 11/148 (7%) Query: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXXX 65 IL+VED + R + ++G V A NG E +L ++ + ++MDI +P NG Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 Query: 66 XXXXXXXXXXX---XIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAM 122 I +T D+ L+ G +D+LTKP P +LL + + Sbjct: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKP--------DLLFQTL 831 Query: 123 PHQEKENTFGREFYRFNGWKLDLNSHSL 150 H N+ + + K DL+ S+ Sbjct: 832 AHWIPPNSAREKKNPSSNLKADLSFSSM 859 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 42.7 bits (99), Expect = 1e-06 Identities = 29/109 (26%), Positives = 49/109 (44%), Gaps = 3/109 (2%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGXX 64 +IL+VED + + + G++V A NG+ L N+ LV+MD+ +P +G Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 Query: 65 XXXXXX---XXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPREL 110 + +T + D+ L+ G +D+L KP P EL Sbjct: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 42.7 bits (99), Expect = 1e-06 Identities = 31/118 (26%), Positives = 52/118 (44%), Gaps = 3/118 (2%) Query: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLP---GKN 61 K+L+VED + R+ L +GY+V A +G + + + + L++MD++LP G Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 Query: 62 GXXXXXXXXXXXXXXXIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLH 119 I LT D+ + G DDY TKP + L + L++ Sbjct: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALIN 123 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.141 0.420 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 22,979 Number of Sequences: 78 Number of extensions: 903 Number of successful extensions: 77 Number of sequences better than 1.0e-05: 26 Number of HSP's better than 0.0 without gapping: 17 Number of HSP's successfully gapped in prelim test: 9 Number of HSP's that attempted gapping in prelim test: 22 Number of HSP's gapped (non-prelim): 28 length of query: 236 length of database: 48,235 effective HSP length: 60 effective length of query: 176 effective length of database: 43,555 effective search space: 7665680 effective search space used: 7665680 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= HINF-KW2-01-000960 HI0980 Hin recombinational enhancer binding protein (fis) (99 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value HINF-KW2-01-000960 HI0980 Hin recombinational enhancer binding ... 194 6e-53 >HINF-KW2-01-000960 HI0980 Hin recombinational enhancer binding protein (fis) Length = 99 Score = 194 bits (493), Expect = 6e-53 Identities = 99/99 (100%), Positives = 99/99 (100%) Query: 1 MLEQQRNSADALTVSVLNAQSQVTSKPLRDSVKQALRNYLAQLDGQDVNDLYELVLAEVE 60 MLEQQRNSADALTVSVLNAQSQVTSKPLRDSVKQALRNYLAQLDGQDVNDLYELVLAEVE Sbjct: 1 MLEQQRNSADALTVSVLNAQSQVTSKPLRDSVKQALRNYLAQLDGQDVNDLYELVLAEVE 60 Query: 61 HPMLDMIMQYTRGNQTRAANMLGINRGTLRKKLKKYGMG 99 HPMLDMIMQYTRGNQTRAANMLGINRGTLRKKLKKYGMG Sbjct: 61 HPMLDMIMQYTRGNQTRAANMLGINRGTLRKKLKKYGMG 99 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.315 0.130 0.345 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 8649 Number of Sequences: 78 Number of extensions: 277 Number of successful extensions: 2 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 1 Number of HSP's gapped (non-prelim): 1 length of query: 99 length of database: 48,235 effective HSP length: 51 effective length of query: 48 effective length of database: 44,257 effective search space: 2124336 effective search space used: 2124336 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.6 bits) S2: 86 (37.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) (231 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 463 e-133 SYNE-PCC-01-000414 sll0649 140 5e-36 SYNE-PCC-01-000518 sll0789 139 1e-35 SYNE-PCC-01-001437 slr0081 137 3e-35 SYNE-PCC-01-000242 sll0396 132 1e-33 SYNE-PCC-01-000523 sll0797 128 2e-32 SYNE-PCC-01-002033 slr0947 126 5e-32 SYNE-PCC-01-001461 slr0115 118 2e-29 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 118 2e-29 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 116 6e-29 SYNE-PCC-01-002672 slr1837 113 5e-28 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 111 2e-27 SYNE-PCC-01-002486 slr1584 108 2e-26 SYNE-PCC-01-000877 sll1330 108 2e-26 SYNE-PCC-01-002489 slr1588 82 2e-18 SYNE-PCC-01-002731 slr1909 79 1e-17 SYNE-PCC-01-002788 slr1982 73 7e-16 SYNE-PCC-01-001306 sll1905 72 2e-15 SYNE-PCC-01-002086 slr1042 69 1e-14 SYNE-PCC-01-002635 slr1783 67 4e-14 SYNE-PCC-01-001133 sll1673 65 2e-13 SYNE-PCC-01-002873 slr2098 63 7e-13 SYNE-PCC-01-001132 sll1672 63 9e-13 SYNE-PCC-01-002221 slr1213 61 3e-12 SYNE-PCC-01-002618 slr1760 57 5e-11 SYNE-PCC-01-000800 sll1228 57 5e-11 SYNE-PCC-01-002879 slr2104 56 1e-10 SYNE-PCC-01-000608 sll0921 54 3e-10 SYNE-PCC-01-002778 slr1969 47 5e-08 SYNE-PCC-01-002617 slr1759 47 5e-08 SYNE-PCC-01-001160 sll1708 47 5e-08 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 46 9e-08 SYNE-PCC-01-001575 slr0312 45 2e-07 SYNE-PCC-01-001075 sll1592 45 3e-07 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 463 bits (1192), Expect = e-133 Identities = 231/231 (100%), Positives = 231/231 (100%) Query: 1 MTRKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENPKLILLDWMLPGRSG 60 MTRKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENPKLILLDWMLPGRSG Sbjct: 1 MTRKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENPKLILLDWMLPGRSG 60 Query: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR Sbjct: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 Query: 121 RIYEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNR 180 RIYEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNR Sbjct: 121 RIYEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNR 180 Query: 181 IWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGYRFSSYLRDKQ 231 IWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGYRFSSYLRDKQ Sbjct: 181 IWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGYRFSSYLRDKQ 231 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 140 bits (352), Expect = 5e-36 Identities = 88/228 (38%), Positives = 133/228 (58%), Gaps = 9/228 (3%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQF 63 ILIVED+ I ++I L ++ + I +D +T + +E P LI+LD MLP G++ Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIY 123 I++Q I+MLTAK E D I L+ GADDY+ KPFSP+ L+AR+ A+ RR Sbjct: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRRQL 133 Query: 124 EQ---QSQFIQIDELSID-ENAQRVFFQ---QQEINLSSTEFKLLHFFMRHPEKVYSREQ 176 Q Q + + +D + Q +Q Q+E+ L+ EF LL FM +P +V++R Q Sbjct: 134 RQGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRTQ 193 Query: 177 LLNRIWHNDLEVEYRTVDSYIRRLRRNLAPFQCE-HYIQTVRGSGYRF 223 L+ ++W ND + R VD++IRRLR+ + P +I+TV G GY+F Sbjct: 194 LIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 139 bits (349), Expect = 1e-35 Identities = 83/227 (36%), Positives = 130/227 (57%), Gaps = 6/227 (2%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE---NPKLILLDWMLPGRSG 60 ++L+VEDE + + L ++ Y V D A + + + N L + DWM+PG SG Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 ++ Q ++ Q S ++PI+MLTAK D + L+AGADDY+ KPF LLAR+ ++ R Sbjct: 62 LELCQKLRGQRS--SLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQR 119 Query: 121 RIYEQQSQFIQIDELSIDENAQRVFFQQQ-EINLSSTEFKLLHFFMRHPEKVYSREQLLN 179 R E Q Q +Q+ + +D V +Q I L++ EF+LL +FM+HP+++ S EQ+ N Sbjct: 120 RSPELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKN 179 Query: 180 RIWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGYRFSSY 226 ++W E V + +R LRR L + + I+TV G GYRF + Sbjct: 180 QLWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGYRFQPH 226 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 137 bits (345), Expect = 3e-35 Identities = 91/235 (38%), Positives = 136/235 (57%), Gaps = 16/235 (6%) Query: 2 TRKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAI---NKIKENP-----KLILLDW 53 + +IL+VEDE +IRE I L L ++ Y+V D + A+ + E+P LI+LD Sbjct: 30 SHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDI 89 Query: 54 MLPGRSGIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLA 113 MLP +G+ + ++ PI++++AK +E + + L GADDYITKPFS + L+A Sbjct: 90 MLPQVNGLDVCRSLRFGGDNT--PILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVA 147 Query: 114 RIEAVWRR---IYEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEK 170 R A+ RR + F + +L + RV + +E++L+ EF+LL FM +P + Sbjct: 148 RCRAMIRRQGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRR 207 Query: 171 VYSREQLLNRIWHNDLEVEYRTVDSYIRRLRRNLA--PFQCEHYIQTVRGSGYRF 223 V+SREQL+ IW D + +TVD +IR LR L P Q E Y+ TVRG GYRF Sbjct: 208 VWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPE-YLVTVRGFGYRF 261 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 132 bits (332), Expect = 1e-33 Identities = 77/222 (34%), Positives = 124/222 (55%), Gaps = 3/222 (1%) Query: 1 MTRKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRS 59 M+ ++L+VE+E + + L L + YDV A D + +E P LI+++ LPG S Sbjct: 1 MSHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMS 60 Query: 60 GIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVW 119 G++ + +++ S IPII++TAK E+ + L+AGADDYI KPF+ ARI Sbjct: 61 GLELCRRLREMGS--RIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQL 118 Query: 120 RRIYEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLN 179 RR + + +Q +L + + + + + I+L++ EF+LL + + H +V +REQ+L Sbjct: 119 RRTHTTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILE 178 Query: 180 RIWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGY 221 R+W D + ++ YIR LR L IQTVRG GY Sbjct: 179 RVWGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGY 220 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 128 bits (321), Expect = 2e-32 Identities = 78/232 (33%), Positives = 131/232 (56%), Gaps = 13/232 (5%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKEN---PKLILLDWMLPGRSG 60 +IL+VEDE + I L + Y V +D A + ++ L ++DW+LPG SG Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 ++ Q ++ Q + ++P++MLTA E+ + L+AGADDY+TKPF LLAR+ A+ R Sbjct: 62 LELCQKLRTQGN--SLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQR 119 Query: 121 RIYEQQSQFIQIDELSIDEN--------AQRVFFQQQEINLSSTEFKLLHFFMRHPEKVY 172 R + Q Q + + S+D + ++ + ++QEI L+ EF++ + M++PE++ Sbjct: 120 RSPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERII 179 Query: 173 SREQLLNRIWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGYRFS 224 S ++ ++W D E V + +R +RR LA C I+TV G GYRF+ Sbjct: 180 SGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGYRFT 231 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 126 bits (317), Expect = 5e-32 Identities = 86/231 (37%), Positives = 123/231 (53%), Gaps = 13/231 (5%) Query: 7 IVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQFIQ 65 +V+DE +IR ++ LS Y+V+ A+D + AI E+ P L++LD M+P G Q Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 66 YIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIYEQ 125 ++K+ IPIIMLTA D I L GADDY+ KPFSP+ L ARI +V RR+ + Sbjct: 61 ELRKESD---IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 Query: 126 ------QSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLN 179 S +QI + ID N ++V+ + I L+ EF LL + + +SR ++L Sbjct: 118 GMPGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQ 177 Query: 180 RIWHNDLE--VEYRTVDSYIRRLRRNLAPFQCE-HYIQTVRGSGYRFSSYL 227 +W E V+ R VD +I RLR L I T RG+GY F L Sbjct: 178 EVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRIL 228 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 118 bits (295), Expect = 2e-29 Identities = 73/225 (32%), Positives = 122/225 (54%), Gaps = 7/225 (3%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASD-FKTAINKIKENPKLILLDWMLPGRSGIQ 62 +ILI++D+ AI +++++ L YDV +A D K ++ P LI+LD MLP G Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 Q +++ E A IP++MLTA +D I ++GADDY+TKPF + +LAR+ A+ RR Sbjct: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 Query: 123 -----YEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQL 177 + S+ + L++ + + I L+ EF+LLH ++ + S + Sbjct: 123 DRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSDI 182 Query: 178 LNRIWHNDLEVEYRTVDSYIRRLRRNLAPF-QCEHYIQTVRGSGY 221 L +W + + + T+ +IR LR L P + +I+TV G+GY Sbjct: 183 LREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 118 bits (295), Expect = 2e-29 Identities = 71/224 (31%), Positives = 127/224 (56%), Gaps = 9/224 (4%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENPKLILLDWMLPGRSGIQF 63 K+L+V+D+ + E+++ L + +DV A++ A+ K+ E+ KL+LLD M+P +GI+ Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESYKLVLLDVMMPKLNGIET 62 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIY 123 ++ I+K + +P++MLTA+ + D + L GADD + KPF+ + L+ARI+A+ RR Sbjct: 63 LKEIRKVSN---VPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSA 119 Query: 124 EQQSQFIQIDELSIDENAQR-----VFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLL 178 + ++ LS D + ++ +NL+ EFK+L ++ V SRE+L Sbjct: 120 SPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELS 179 Query: 179 NRIWHNDLEVEYRTVDSYIRRLRRNLAPFQCE-HYIQTVRGSGY 221 + L R++D +I LRR L + + + +T+RG GY Sbjct: 180 LEVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGY 223 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 116 bits (291), Expect = 6e-29 Identities = 75/232 (32%), Positives = 123/232 (53%), Gaps = 13/232 (5%) Query: 2 TRKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKI-KENPKLILLDWMLPGRSG 60 T KIL+VEDE R + + YDV EA + + + N L+++D LPG++G Sbjct: 3 TPKILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNG 62 Query: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 + + ++++ S +P+I LT + E D I L GADDY+TKPF+P+ L R + Sbjct: 63 LLLARELREELS---LPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLH 119 Query: 121 RIYEQQS-------QFIQIDELSIDENAQRVFFQQ-QEINLSSTEFKLLHFFMRHPEKVY 172 R Q +F + + +D N+ + + QE L +EF+ + F +P K+ Sbjct: 120 RAMPHQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQ 179 Query: 173 SREQLLNRIWHNDLEVEYRTVDSYIRRLRRNLAPF-QCEHYIQTVRGSGYRF 223 +RE+LL ++ +L+ + RTVD IRR+R++ + I T+ G GYRF Sbjct: 180 TREELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 113 bits (283), Expect = 5e-28 Identities = 72/232 (31%), Positives = 121/232 (52%), Gaps = 13/232 (5%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINK-IKENPKLILLDWMLPGRSGIQF 63 IL+V+DE A+ E ++ L + + + A KT + I L++LDWMLP SG++ Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRR-- 121 + I+ + P++ LTAK T +D +A L+AG DDY+ KPF + LLAR+ A+ RR Sbjct: 64 CRQIRILGH--STPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQS 121 Query: 122 --------IYEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYS 173 + ++ + ++ +S+D Q + Q Q I LS E LL F++ P ++ S Sbjct: 122 HGETITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILS 181 Query: 174 REQLLNRIWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGYRFSS 225 E++ + +W + + + +R LRR + I +V G GY F + Sbjct: 182 HEEIYSHLWPGESPPSSNVLAALVRLLRRKIEQPNAPRLINSVYGKGYCFEA 233 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 111 bits (277), Expect = 2e-27 Identities = 67/219 (30%), Positives = 125/219 (57%), Gaps = 7/219 (3%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENP-KLILLDWMLPGRSGIQ 62 +IL++ED+ I + + L++ + V +D KT + + P ++LD LP G++ Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 +Q + + ++ +P+++LTA+ T ++ + L +GADDY+ KPF+ + AR++A+ RR Sbjct: 62 VLQ--QWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRR 119 Query: 123 YEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNRIW 182 Y I+ + +D+N + V+ Q I+L+S E+KLL FM + ++V SR + ++ Sbjct: 120 YGYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLS 179 Query: 183 HNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGY 221 D E+ +D +I LR+ L + +I+TV G GY Sbjct: 180 SWDEEISSGALDVHIYNLRQKLG----KQFIRTVHGVGY 214 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 108 bits (270), Expect = 2e-26 Identities = 72/224 (32%), Positives = 117/224 (52%), Gaps = 4/224 (1%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQ 62 +IL+VED+ + E +A LS + Y V A+D A + L++LD MLP GI Sbjct: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 Query: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 Q K + +PI+M+TA+ T D I L+AGADDY+ KP L AR+ A+ RR Sbjct: 62 LCQ--KWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRG 119 Query: 123 YEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNRIW 182 ++ + +D + V + + ++L+ E+ +L +R+ +V SR +++ IW Sbjct: 120 CATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIW 179 Query: 183 HNDLEVEYRTVDSYIRRLRRNL-APFQCEHYIQTVRGSGYRFSS 225 + E TV ++R LR+ L + I+TV G GYR ++ Sbjct: 180 KLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLAN 223 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 108 bits (270), Expect = 2e-26 Identities = 78/231 (33%), Positives = 121/231 (52%), Gaps = 9/231 (3%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQF 63 I +VE +R +++ L Q Y V + S F A P L ++D L GI+ Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIY 123 +++ +Q I +L+AK TE+D + L AGADDY+TKPF Q LARIE + RR+ Sbjct: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 Query: 124 EQQSQ-FIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNRIW 182 + + L ID +RV +Q ++L+ EF LL+ + SR +LL R W Sbjct: 123 TVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRRAW 182 Query: 183 HNDLEVEYRTVDSYIRRLRRNLA--PFQCEHYIQTVRGSGYRFSSYLRDKQ 231 ++ RT+D+++ LR+ + P Q IQTVR GYRF+S + +++ Sbjct: 183 PEAID-NPRTIDTHVLSLRKKIETDPRQ-PSLIQTVRNVGYRFNSSILEEK 231 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 81.6 bits (200), Expect = 2e-18 Identities = 47/116 (40%), Positives = 67/116 (57%), Gaps = 3/116 (2%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAI---NKIKENPKLILLDWMLPGRSGI 61 IL+VEDE IRE+I LS + Y ++EA + A+ N ++ P LI+ D M+P G Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 62 QFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEA 117 I ++K AAIP I LTA T +D +N+GADDY+ KPF + LL + + Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNS 119 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 79.3 bits (194), Expect = 1e-17 Identities = 51/197 (25%), Positives = 104/197 (52%), Gaps = 16/197 (8%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQF 63 +L+V+D+ + ++ +L + Y V A + + A++ + P +I+ D M+P G F Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIY 123 I+ +++ + IP++ L+AK + + LN GAD Y+ KPF P+ L A++++ R Sbjct: 70 IEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLR--- 126 Query: 124 EQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNRIWH 183 Q + +Q + +++NA+ +++ L+ TE K++ + L NR Sbjct: 127 -QADRLLQHNNHPLEDNAR--VQVARDVELTPTETKVIQLV---------AQGLANREIA 174 Query: 184 NDLEVEYRTVDSYIRRL 200 + L+V RTV+S++ + Sbjct: 175 DHLKVSQRTVESHVSNM 191 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 73.2 bits (178), Expect = 7e-16 Identities = 47/116 (40%), Positives = 67/116 (57%), Gaps = 1/116 (0%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINK-IKENPKLILLDWMLPGRSGIQ 62 K+L+VED R+M++ L +K Y+V+ A D + A+ I E+P+LIL+D LP G Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 Query: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAV 118 + IK A IPII LTA + D + AG DDY TKP + LL ++EA+ Sbjct: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 72.0 bits (175), Expect = 2e-15 Identities = 40/113 (35%), Positives = 63/113 (55%), Gaps = 1/113 (0%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQF 63 IL+V+D +I+ L + Y + A+ ++ + P LILLD M+PG G++ Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIE 116 +K+ IP+I LTA + ++D + GA DY+TKPFSP LLAR++ Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVK 132 Score = 48.9 bits (115), Expect = 1e-08 Identities = 31/109 (28%), Positives = 60/109 (55%), Gaps = 2/109 (1%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKI-KENPKLILLDWMLPGRSGIQF 63 IL+ ED +++ L L + Y V ++ + A++ + K + ++L+D +P G+ Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 64 IQYIKKQESYAAIP-IIMLTAKSTEEDCIACLNAGADDYITKPFSPQIL 111 ++I++ + + P II +TA S E D CL +G +DY++KP + L Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEAL 850 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 68.9 bits (167), Expect = 1e-14 Identities = 40/117 (34%), Positives = 64/117 (54%), Gaps = 1/117 (0%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQF 63 +L+VED + REMI+ L + V A D A+ K++ +P L++LD ++P +G + Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 + IK +P+IM ++K E D + GAD YI KPF P L+ I+ + R Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 67.4 bits (163), Expect = 4e-14 Identities = 55/223 (24%), Positives = 103/223 (46%), Gaps = 18/223 (8%) Query: 5 ILIVEDECAIREMIALFLSQKY-YDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQ 62 +L+V+DE +RE + FL + V A++ A + ++ + P L++ D M+P G Q Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 F+Q +++ + ++P++ LTA+ D I G D +++KPF P L A + + R Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLAR- 176 Query: 123 YEQQSQFIQIDELSIDENAQRVFFQQQEI----NLSSTEFKLLHFFMRHPEKVYS--REQ 176 +Q S + + E Q + +++I + +T + F + V + Sbjct: 177 -QQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVSQG 235 Query: 177 LLNRIWHNDLEVEYRTVDSYIRRL--------RRNLAPFQCEH 211 L+N+ L+ R V+ Y+ RL R L F +H Sbjct: 236 LMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQH 278 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 64.7 bits (156), Expect = 2e-13 Identities = 45/148 (30%), Positives = 73/148 (49%), Gaps = 4/148 (2%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIK-ENPKLILLDWMLPGRSGIQF 63 IL+V+D ++++ L Y V + K A+ ++ + P LILLD +P G Q Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIY 123 + IKK+E IPII ++A D + G DYITKPF + ++ARIE + Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIEG---QFT 127 Query: 124 EQQSQFIQIDELSIDENAQRVFFQQQEI 151 Q+ + E+ A+ V +Q + + Sbjct: 128 IQRQRIALKREVRKRREAEEVLYQSRAL 155 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 63.2 bits (152), Expect = 7e-13 Identities = 44/160 (27%), Positives = 76/160 (47%), Gaps = 17/160 (10%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENP-KLILLDWMLPGRSGIQ 62 +IL+VED +E+ A L ++V A++ A+ ++ N L+L+D +P GI+ Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 Query: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 I++ YA +PI+ +TA + D CL AG +D++ KP P E +W ++ Sbjct: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEP-------EELWNKL 1038 Query: 123 YEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLH 162 +I +D E ++ IN S E + H Sbjct: 1039 L----HWIPVDSPLAPET-----IEESAINTSDPEISIPH 1069 Score = 50.1 bits (118), Expect = 6e-09 Identities = 39/166 (23%), Positives = 77/166 (46%), Gaps = 16/166 (9%) Query: 3 RKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENPK------LILLDWMLP 56 +++L+V+D R ++ L Q + V A+N + E + ++ +DW +P Sbjct: 771 KRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMP 830 Query: 57 GRSGIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQIL---LA 113 G++ + +K I ++TA EE + + G DD + KP SP +L LA Sbjct: 831 NMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLA 890 Query: 114 RIEAVWRRIYEQ--QSQFIQIDELSIDE-----NAQRVFFQQQEIN 152 R+ + ++ QS I ++L++++ A+ + + EIN Sbjct: 891 RVLGDPTALAQEMRQSSGIGAEDLALEKLRRIRGARILLVEDNEIN 936 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 62.8 bits (151), Expect = 9e-13 Identities = 36/104 (34%), Positives = 59/104 (56%), Gaps = 1/104 (0%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQ 62 KIL+V+D+ R+++ L+ +++ EAS+ + AI + P LI +D +P G + Sbjct: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 Query: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPF 106 +YIK Q A ++ LTA EE+ L+AG DD++ KPF Sbjct: 691 ATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 61.2 bits (147), Expect = 3e-12 Identities = 44/117 (37%), Positives = 62/117 (52%), Gaps = 4/117 (3%) Query: 1 MTRKILIVEDECAIREMIALFLSQKYYDV-IEASDFKTAINKIKE-NPKLILLDWMLPGR 58 M KILIVEDE + + IA L Y++ + ASD TA+ KI E P L+LLD + G Sbjct: 1 MVTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGE 60 Query: 59 SGIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARI 115 I I+ ++ +S +IPI+ LTA S E Y+ KPF + LL+ + Sbjct: 61 --IDGIEVAERIKSLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 57.0 bits (136), Expect = 5e-11 Identities = 36/126 (28%), Positives = 67/126 (53%), Gaps = 4/126 (3%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQ 62 KIL+V+D+ +R + ++L ++ + V A++ + A+ K E P+++LLD ++P G Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 Query: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 Q + K + ++M+T E AGA DY+TKP +L R++ R + Sbjct: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVK---RLL 129 Query: 123 YEQQSQ 128 Y+ + Q Sbjct: 130 YQNRLQ 135 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 57.0 bits (136), Expect = 5e-11 Identities = 37/112 (33%), Positives = 61/112 (54%), Gaps = 1/112 (0%) Query: 3 RKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGI 61 +K+L+V+D R ++ L+ + V EA + + AI + +P++IL+D +P G Sbjct: 418 QKVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGR 477 Query: 62 QFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLA 113 Q IK II LTA + E + L+AG DD+++KPF P+ L+A Sbjct: 478 STTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 55.8 bits (133), Expect = 1e-10 Identities = 36/108 (33%), Positives = 58/108 (53%), Gaps = 1/108 (0%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENP-KLILLDWMLPGRSGIQF 63 IL+VED RE L+ K V A++ + A+ + N IL+D +P +G Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQIL 111 + I++QE + +PII +TA + D L+AG +D++TKP P +L Sbjct: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLL 827 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 54.3 bits (129), Expect = 3e-10 Identities = 34/117 (29%), Positives = 63/117 (53%), Gaps = 3/117 (2%) Query: 4 KILIVEDECAIREMI--ALFLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSG 60 +I ++EDE IR+ + AL + + V EA++ + + +++ P ++++D LP +G Sbjct: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 Query: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEA 117 I Q +KK +++LT EE +A +AGAD Y K ++L+ I+A Sbjct: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 47.0 bits (110), Expect = 5e-08 Identities = 28/115 (24%), Positives = 58/115 (50%), Gaps = 3/115 (2%) Query: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQF 63 ++++E + I +I L+ Y VI D A+ +++ P LI++D + + Sbjct: 632 VIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQPGLIIVDGDFVDVTEVT- 690 Query: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAV 118 + IKK + + + +L+ + + A G DDY+ KP P++LL R++++ Sbjct: 691 -RGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDYLLKPLQPELLLQRVQSI 744 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 47.0 bits (110), Expect = 5e-08 Identities = 32/106 (30%), Positives = 56/106 (52%), Gaps = 2/106 (1%) Query: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKI-KENPKLILLDWMLPGRSGIQ 62 +IL+ ED +++ L+ Y V A++ + I+ + K+ L+L+D +P GI Sbjct: 1191 QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGIT 1250 Query: 63 FIQYIKKQESYAAIP-IIMLTAKSTEEDCIACLNAGADDYITKPFS 107 ++I++ P I+ +TA + D CL+AG D YI+KP S Sbjct: 1251 ACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPIS 1296 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 47.0 bits (110), Expect = 5e-08 Identities = 37/117 (31%), Positives = 63/117 (53%), Gaps = 5/117 (4%) Query: 4 KILIVEDECAIREMIALFL-SQKYYDVIEASD--FKTAINKIKENPKLILLDWMLPGRSG 60 KILIVED+ ++ + L + + +++I D + NP LI++D LPG G Sbjct: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDG 77 Query: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEA 117 I+ + IK ++ I I++LT+ + + IA L++GAD Y K + + L+ I A Sbjct: 78 IEATKQIK--QTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAA 132 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 46.2 bits (108), Expect = 9e-08 Identities = 31/118 (26%), Positives = 60/118 (50%), Gaps = 5/118 (4%) Query: 4 KILIVEDECAIREMIALF--LSQKYYDVIEASDFKTAIN-KIKENPKLILLDWMLPGRSG 60 K+L+++D +R I L + V + S I+ ++ +P +I+LD + G SG Sbjct: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSG 65 Query: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAV 118 + ++ ++ + A I ++LT + D ++AGAD Y+ K P LL +I+ + Sbjct: 66 LDTLKGLRAEGVDARI--LILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRI 121 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 45.4 bits (106), Expect = 2e-07 Identities = 36/122 (29%), Positives = 59/122 (48%), Gaps = 5/122 (4%) Query: 2 TRKILIVEDECAIREMIALFLSQK--YYDVIEASDFKTAINKIKEN-PKLILLDWMLPGR 58 T ++LI +D R+ +A +++ + +A + + AI +E+ P + L+D +P Sbjct: 6 TIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEV 65 Query: 59 SGIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAV 118 G+ I I +A I I+LT ++ED L AGA Y+ K P LL I V Sbjct: 66 EGVAAISAICAIVKFARI--IVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTV 123 Query: 119 WR 120 R Sbjct: 124 HR 125 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 44.7 bits (104), Expect = 3e-07 Identities = 42/134 (31%), Positives = 66/134 (49%), Gaps = 11/134 (8%) Query: 4 KILIVEDECAIREMIALFLSQKY-YDVI-EASDFKTAINKIKENP-KLILLDWMLPGRSG 60 +IL+VED+ R + LSQ+ DV EA D +TAI + + +++LD LPG G Sbjct: 9 RILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGG 68 Query: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAV-- 118 I+ IKK + +P+++LT+ S + A A Y K + + L+ I +V Sbjct: 69 IEACHQIKK--IHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVAA 126 Query: 119 ----WRRIYEQQSQ 128 W I Q+ Q Sbjct: 127 GAFWWDAIASQEIQ 140 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.324 0.139 0.404 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 22,170 Number of Sequences: 78 Number of extensions: 973 Number of successful extensions: 82 Number of sequences better than 1.0e-05: 34 Number of HSP's better than 0.0 without gapping: 27 Number of HSP's successfully gapped in prelim test: 7 Number of HSP's that attempted gapping in prelim test: 13 Number of HSP's gapped (non-prelim): 37 length of query: 231 length of database: 48,235 effective HSP length: 60 effective length of query: 171 effective length of database: 43,555 effective search space: 7447905 effective search space used: 7447905 T: 11 A: 40 X1: 15 ( 7.0 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 40 (21.6 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) (221 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 438 e-126 SYNE-PCC-01-002486 slr1584 162 6e-43 SYNE-PCC-01-000523 sll0797 136 5e-35 SYNE-PCC-01-000518 sll0789 134 3e-34 SYNE-PCC-01-002672 slr1837 133 4e-34 SYNE-PCC-01-001461 slr0115 128 1e-32 SYNE-PCC-01-000242 sll0396 128 2e-32 SYNE-PCC-01-002033 slr0947 124 2e-31 SYNE-PCC-01-001437 slr0081 122 7e-31 SYNE-PCC-01-000414 sll0649 120 3e-30 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 111 2e-27 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 110 4e-27 SYNE-PCC-01-000877 sll1330 90 7e-21 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 77 5e-17 SYNE-PCC-01-002731 slr1909 75 1e-16 SYNE-PCC-01-001306 sll1905 73 9e-16 SYNE-PCC-01-001133 sll1673 67 4e-14 SYNE-PCC-01-002879 slr2104 62 2e-12 SYNE-PCC-01-002788 slr1982 60 8e-12 SYNE-PCC-01-002635 slr1783 60 8e-12 SYNE-PCC-01-002086 slr1042 60 8e-12 SYNE-PCC-01-000608 sll0921 60 8e-12 SYNE-PCC-01-001075 sll1592 59 1e-11 SYNE-PCC-01-002873 slr2098 58 2e-11 SYNE-PCC-01-002489 slr1588 56 1e-10 SYNE-PCC-01-001160 sll1708 55 1e-10 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 55 1e-10 SYNE-PCC-01-002618 slr1760 53 9e-10 SYNE-PCC-01-000800 sll1228 52 2e-09 SYNE-PCC-01-002617 slr1759 48 2e-08 SYNE-PCC-01-001132 sll1672 44 4e-07 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 438 bits (1126), Expect = e-126 Identities = 221/221 (100%), Positives = 221/221 (100%) Query: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGL 60 MRILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGL Sbjct: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGL 60 Query: 61 EVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRY 120 EVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRY Sbjct: 61 EVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRY 120 Query: 121 GYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSS 180 GYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSS Sbjct: 121 GYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSS 180 Query: 181 WDEEISSGALDVHIYNLRQKLGKQFIRTVHGVGYALGQVEK 221 WDEEISSGALDVHIYNLRQKLGKQFIRTVHGVGYALGQVEK Sbjct: 181 WDEEISSGALDVHIYNLRQKLGKQFIRTVHGVGYALGQVEK 221 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 162 bits (411), Expect = 6e-43 Identities = 89/224 (39%), Positives = 134/224 (59%), Gaps = 5/224 (2%) Query: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGL 60 MRILL+EDD + L L+ + VD TD + YD V+LD+ LP+LDG+ Sbjct: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGI 60 Query: 61 EVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRY 120 + Q+WRS+ +P+L++TARDT+++++ GL +GADDY+ KP L E+ AR++AL+RR Sbjct: 61 TLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGC 120 Query: 121 GYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSS 180 V+E ++LD + V +N+ +SLT +EY +LEL + N RVLSRS I + + Sbjct: 121 ATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIWK 180 Query: 181 WDEEISSGALDVHIYNLRQK-----LGKQFIRTVHGVGYALGQV 219 + + VH+ +LRQK L I TVHG+GY L + Sbjct: 181 LESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLANL 224 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 136 bits (343), Expect = 5e-35 Identities = 87/228 (38%), Positives = 126/228 (55%), Gaps = 14/228 (6%) Query: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTS--APYDAVVLDLTLPKLD 58 MRILL+ED+ +G ++ L + VDW TDG L + Y ++D LP L Sbjct: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 Query: 59 GLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRR 118 GLE+ Q+ R+ +PVL+LTA + RV+GL +GADDYL KPF +AE+ ARL+AL RR Sbjct: 61 GLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRR 120 Query: 119 RYGYHHSVIEQAGVKLD--QNQRSVW------LNNQPISLTSREYKLLELFMLNKDRVLS 170 + ++ LD N SV L Q I+LT RE+++ + M N +R++S Sbjct: 121 SPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS 180 Query: 171 RSSIEEKLSSWDEEISSGALDVHIYNLRQKLGKQF----IRTVHGVGY 214 S I ++L DEE S + + +R+KL +Q I+TV G GY Sbjct: 181 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGY 228 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 134 bits (336), Expect = 3e-34 Identities = 80/221 (36%), Positives = 125/221 (56%), Gaps = 7/221 (3%) Query: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSA--PYDAVVLDLTLPKLD 58 MR+LL+ED+ +G L+ L + + VDW DG + L Y + D +P L Sbjct: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 Query: 59 GLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRR 118 GLE+ Q+ R +P+L+LTA+D + +RV+GL +GADDYL KPF +AE+ ARL++L RR Sbjct: 61 GLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRR 120 Query: 119 RYGYHHSVIEQAGVKLDQNQRSVWLNNQP-ISLTSREYKLLELFMLNKDRVLSRSSIEEK 177 ++ LD +V Q I+LT++E++LLE FM + ++LS I+ + Sbjct: 121 SPELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKNQ 180 Query: 178 LSSWDEEISSGALDVHIYNLRQKLGK----QFIRTVHGVGY 214 L + E +S + + LR+KL + I TV+G+GY Sbjct: 181 LWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGY 221 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 133 bits (335), Expect = 4e-34 Identities = 83/227 (36%), Positives = 122/227 (53%), Gaps = 16/227 (7%) Query: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 ILL++D+N + L L G +D GKTG+A + YD ++LD LP++ GLE+ Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 63 LQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYGY 122 +Q R PVL LTA+DTLD+RV GL +G DDYL KPF L E+ AR++AL+RR+ + Sbjct: 64 CRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQ-SH 122 Query: 123 HHSVIEQAG-----------VKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSR 171 ++ E G V LD + + Q I+L+ +E LL LF+ ++LS Sbjct: 123 GETITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSH 182 Query: 172 SSIEEKLSSWDEEISSGALDVHIYNLRQKL----GKQFIRTVHGVGY 214 I L + SS L + LR+K+ + I +V+G GY Sbjct: 183 EEIYSHLWPGESPPSSNVLAALVRLLRRKIEQPNAPRLINSVYGKGY 229 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 128 bits (322), Expect = 1e-32 Identities = 80/228 (35%), Positives = 126/228 (55%), Gaps = 14/228 (6%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 RIL+I+DD I + + I L G+ V DG G A D ++LDL LPK+DG Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 62 VLQQWRSNHQ--DVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRR- 118 V Q+ R + + D+PVL+LTA + ++++G SGADDYL KPF + E+ AR++AL+RR Sbjct: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 Query: 119 ----RYGYHHSVIEQAGVKL-DQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSS 173 + H ++ Q + L + ++W + I LT E++LL + + +S S Sbjct: 123 DRIPQAAKHSEILNQGPLTLVPERFEAIWF-GKSIKLTHLEFELLHCLLQRHGQTVSPSD 181 Query: 174 IEEKLSSWDEEISSGALDVHIYNLRQKL-----GKQFIRTVHGVGYAL 216 I ++ ++ + + VHI +LR KL +FI+TV+G GY L Sbjct: 182 ILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCL 229 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 128 bits (321), Expect = 2e-32 Identities = 69/219 (31%), Positives = 128/219 (58%), Gaps = 4/219 (1%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 R+L++E++ + +++ L G+ V DG G P D ++++ LP + GLE Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 62 VLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYG 121 + ++ R +P++++TA+D ++ERV GL +GADDY+ KPF E AR++ +RR + Sbjct: 64 LCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTHT 123 Query: 122 YHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSSW 181 V++ A ++ +++ R + ++ I LT++E++LL+ + + +VL+R I E++ + Sbjct: 124 TSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERVWGY 183 Query: 182 DEEISSGALDVHIYNLRQKL----GKQFIRTVHGVGYAL 216 D S ++V+I LR KL + I+TV GVGY L Sbjct: 184 DFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGYVL 222 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 124 bits (312), Expect = 2e-31 Identities = 76/228 (33%), Positives = 128/228 (56%), Gaps = 14/228 (6%) Query: 5 LIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEVLQ 64 +++D+ I L+ L+ +G+ V DG+ +A + D VVLD+ +PKLDG V Q Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 65 QWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRR--RYGY 122 + R D+P+++LTA + +R+ GL+ GADDY+ KPF+ E+ AR+++++RR + G Sbjct: 61 ELRKE-SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGM 119 Query: 123 ----HHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKL 178 V++ A +++D N+R V+ ++ I LT E+ LLEL + SRS I +++ Sbjct: 120 PGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEV 179 Query: 179 SSWDEE--ISSGALDVHIYNLRQKL-----GKQFIRTVHGVGYALGQV 219 + E + + +DVHI LR KL + I T G GY ++ Sbjct: 180 WGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRI 227 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 122 bits (307), Expect = 7e-31 Identities = 79/231 (34%), Positives = 130/231 (56%), Gaps = 15/231 (6%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTS-------APYDAVVLDLTL 54 RIL++ED+ I + + L + G+ V DG+ +A L A D ++LD+ L Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 55 PKLDGLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQA 114 P+++GL+V + R + P+LI++A+ + E+V GL+ GADDY+ KPF+L E+ AR +A Sbjct: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 Query: 115 LIRRRYGYHHSVI---EQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSR 171 +IRR+ +++ + + L + V + + +SL +E++LLELFM RV SR Sbjct: 152 MIRRQGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVWSR 211 Query: 172 SSIEEKLSSWDEEISSGALDVHIYNLRQKLGK-----QFIRTVHGVGYALG 217 + E + D S +DVHI LR+KL + +++ TV G GY G Sbjct: 212 EQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRFG 262 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 120 bits (302), Expect = 3e-30 Identities = 87/226 (38%), Positives = 123/226 (54%), Gaps = 14/226 (6%) Query: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 IL++EDD I ++ L + F DG+TG+ D +VLDL LPKLDGLEV Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 Query: 63 LQQWRSN--HQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRR-- 118 + R +D +L+LTA+ +R+ GL +GADDYL KPF+ E+ AR++AL+RR Sbjct: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRRQL 133 Query: 119 RYGYHHSVIEQAG---VKLDQNQRSVWLNN--QPISLTSREYKLLELFMLNKDRVLSRSS 173 R G I + V LDQ+Q S + + + + LT E+ LL FM RV +R+ Sbjct: 134 RQGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRTQ 193 Query: 174 IEEKLSSWDEEISSGALDVHIYNLRQKL-----GKQFIRTVHGVGY 214 + EKL D +D HI LR+K+ FI+TV G+GY Sbjct: 194 LIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGY 239 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 111 bits (277), Expect = 2e-27 Identities = 67/219 (30%), Positives = 125/219 (57%), Gaps = 7/219 (3%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 +IL++ED+ I + + L++ + V +D KT + + P ++LD LP G++ Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENP-KLILLDWMLPGRSGIQ 62 Query: 62 VLQ--QWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRR 119 +Q + + ++ +P+++LTA+ T ++ + L +GADDY+ KPF+ + AR++A+ RR Sbjct: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 Query: 120 YGYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLS 179 Y I+ + +D+N + V+ Q I+L+S E+KLL FM + ++V SR + ++ Sbjct: 123 YEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNRIW 182 Query: 180 SWDEEISSGALDVHIYNLRQKLG----KQFIRTVHGVGY 214 D E+ +D +I LR+ L + +I+TV G GY Sbjct: 183 HNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGY 221 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 110 bits (275), Expect = 4e-27 Identities = 79/230 (34%), Positives = 130/230 (56%), Gaps = 22/230 (9%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 ++LL++DD + L L GF V+ +G + L + Y V+LD+ +PKL+G+E Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNES-YKLVLLDVMMPKLNGIE 61 Query: 62 VLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYG 121 L++ R +VPV++LTAR +RV GL+ GADD L KPF E+ AR++A++RR Sbjct: 62 TLKEIRKV-SNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSAS 120 Query: 122 YHHS-----VIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSI-- 174 ++ ++ G+ L + N + ++LT E+K+L L + +K V+SR + Sbjct: 121 PSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSL 180 Query: 175 ---EEKLSSWDEEISSGALDVHIYNLRQKLGKQ-----FIRTVHGVGYAL 216 E+ L+ +D +LD+HI NLR+KL K+ + +T+ G GYAL Sbjct: 181 EVMEKPLTPFDR-----SLDMHISNLRRKLPKRKNKPSWFKTLRGKGYAL 225 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 89.7 bits (221), Expect = 7e-21 Identities = 68/219 (31%), Positives = 110/219 (50%), Gaps = 10/219 (4%) Query: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 I ++E + + + L L + G+ V + A + V+D L DG+E+ Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 Query: 63 LQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYGY 122 + HQ + + IL+A+DT + V GL++GADDYL KPF + E AR++ LIRR Sbjct: 66 CRWLYQQHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVRTV 124 Query: 123 HHSVIEQAGV-KLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSSW 181 ++ GV K+D QR V + LT +E+ LL + + LSR+ + + +W Sbjct: 125 AAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRR--AW 182 Query: 182 DEEISS-GALDVHIYNLRQKL-----GKQFIRTVHGVGY 214 E I + +D H+ +LR+K+ I+TV VGY Sbjct: 183 PEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGY 221 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 77.0 bits (188), Expect = 5e-17 Identities = 63/233 (27%), Positives = 108/233 (46%), Gaps = 15/233 (6%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 +IL++ED+ + N L+ G+ V +G L + + VV+D+ LP +GL Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 62 VLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYG 121 + ++ R +P++ LT RD +++ GL+ GADDYL KPF E+ R + L+ R Sbjct: 65 LARELREE-LSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMP 123 Query: 122 YH-------HSVIEQAGVKLDQNQRS-VWLNNQPISLTSREYKLLELFMLNKDRVLSRSS 173 + G KLD N S + Q L E++ + F N ++ +R Sbjct: 124 HQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREE 183 Query: 174 IEEKLSSWDEEISSGALDVHIYNLRQKL-----GKQFIRTVHGVGYAL-GQVE 220 + +K++ + + +DV I +R+ I T+HG GY G +E Sbjct: 184 LLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRFCGDIE 236 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 75.5 bits (184), Expect = 1e-16 Identities = 56/202 (27%), Positives = 103/202 (50%), Gaps = 17/202 (8%) Query: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 +LL++DD + ++ L G+ V +G+ + LT+ D +V D+ +P++DG Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 63 LQQWRSNHQD--VPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRY 120 ++Q R N +PV+ L+A+ RVKGL GAD Y+ KPF E+AA++Q+ +R+ Sbjct: 70 IEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQA- 128 Query: 121 GYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSS 180 +++ L+ N R + + LT E K+++L + L+ I + L Sbjct: 129 ---DRLLQHNNHPLEDNARVQVARD--VELTPTETKVIQLVA----QGLANREIADHL-- 177 Query: 181 WDEEISSGALDVHIYNLRQKLG 202 ++S ++ H+ N+ K G Sbjct: 178 ---KVSQRTVESHVSNMLNKTG 196 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 72.8 bits (177), Expect = 9e-16 Identities = 39/112 (34%), Positives = 66/112 (58%), Gaps = 5/112 (4%) Query: 24 GFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEVLQQWRSNHQ--DVPVLILTAR 81 G++ + T G + +T A D ++LDL +P +DGLEV + + + Q D+PV+ LTA Sbjct: 41 GYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTAS 100 Query: 82 DTLDERVKGLQSGADDYLCKPFALAEVAARLQA---LIRRRYGYHHSVIEQA 130 + + ++ GA DY+ KPF+ E+ AR++ L + R HH+++EQA Sbjct: 101 NEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLELKQTRDNLHHTLLEQA 152 Score = 63.2 bits (152), Expect = 7e-13 Identities = 36/114 (31%), Positives = 66/114 (57%), Gaps = 4/114 (3%) Query: 4 LLIEDDNLIGNGL-QIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGL-- 60 +L+ +DNLI + ++ L KLG+ VD +G+ ++AL YD V++D+ +P++DGL Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 61 -EVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQ 113 E +++ + + ++ +TA +R + L SG +DY+ KP L + LQ Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQALQ 855 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 67.4 bits (163), Expect = 4e-14 Identities = 38/116 (32%), Positives = 64/116 (55%), Gaps = 8/116 (6%) Query: 3 ILLIEDDNLIGNGLQIG---LTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDG 59 ILL++D + N LQ+ L LG+ V T GK + L D ++LD+ +P +DG Sbjct: 11 ILLVDD---LPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDG 67 Query: 60 LEVLQQWRSNH--QDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQ 113 +V + + QD+P++ ++A ++VK + G DY+ KPF + EV AR++ Sbjct: 68 YQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 61.6 bits (148), Expect = 2e-12 Identities = 32/102 (31%), Positives = 57/102 (55%), Gaps = 2/102 (1%) Query: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 ILL+ED+ + LT G V +G+ + LTS YDA+++D+ +P L+G + Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 Query: 63 LQQWRSN--HQDVPVLILTARDTLDERVKGLQSGADDYLCKP 102 + R H+++P++ +TA ++ K L +G +D+L KP Sbjct: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKP 821 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 59.7 bits (143), Expect = 8e-12 Identities = 33/118 (27%), Positives = 63/118 (53%), Gaps = 4/118 (3%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 ++LL+ED+ + + L L + G+ V DG+ + S +++D++LP +DG Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 Query: 62 VLQQWRSNHQD---VPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALI 116 +Q + H D +P++ LTA +R + + +G DDY KP + + +++ALI Sbjct: 66 ATKQIKG-HPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 59.7 bits (143), Expect = 8e-12 Identities = 38/120 (31%), Positives = 65/120 (54%), Gaps = 3/120 (2%) Query: 3 ILLIEDDNLIGNGLQIGLTKLG-FAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 +LL++D+ + +Q L G F VD + L V+ D+ +P++DG + Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 62 VLQQWRSN--HQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRR 119 LQ+ R + Q +PV+ LTAR +R++G Q+G D +L KPF E+ A ++ L+ R+ Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 59.7 bits (143), Expect = 8e-12 Identities = 35/117 (29%), Positives = 66/117 (56%), Gaps = 2/117 (1%) Query: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 +LL+ED + + L G+ V DG + L + D VVLD+ +P+++G EV Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 63 LQQWRSNHQ--DVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIR 117 ++ +S+ + +VPV++ +++ +R G++ GAD Y+ KPF E+ ++ L+R Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 59.7 bits (143), Expect = 8e-12 Identities = 59/217 (27%), Positives = 95/217 (43%), Gaps = 33/217 (15%) Query: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWF---TDGKTGMAALTSAPYDAVVLDLTLPKL 57 +RI LIED++LI GLQ LT + + +W +G+ G+ + D V++D+ LP + Sbjct: 4 IRIALIEDEDLIRQGLQDALT-MEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDM 62 Query: 58 DGLEVLQQWRSN--HQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQAL 115 +G++V QQ + + V+ILT D + + +GAD Y K +R + L Sbjct: 63 NGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKD-------SRTELL 115 Query: 116 IRRRYGYH-----------HSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLN 164 I H V+ A S + LT RE ++L+L + Sbjct: 116 IEAIQATHGGFAWIDPAIARIVLAHAPGAEPSEPSSPSRTSLSYGLTERELEVLQLIVDG 175 Query: 165 KDRVLSRSSIEEKLSSWDEEISSGALDVHIYNLRQKL 201 S + I EKL I+ G + H+ N+ KL Sbjct: 176 ----CSNADIAEKL-----YITVGTVKTHVRNILNKL 203 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 58.9 bits (141), Expect = 1e-11 Identities = 55/214 (25%), Positives = 97/214 (45%), Gaps = 28/214 (13%) Query: 1 MRILLIEDDNLIGNGL------QIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTL 54 +RILL+EDD L GL + GL G A DG+T +A + +D V+LD+ L Sbjct: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEA----EDGETAIAYVNQQLFDVVILDVGL 63 Query: 55 PKLDGLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQA 114 P + G+E Q + H +PVLILT+ + +++ A Y K A + +++ Sbjct: 64 PGIGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRS 123 Query: 115 LIRRRYGYHHSVIEQAGVKLDQNQRSVWLNNQPIS-------LTSREYKLLELFMLNKDR 167 + + + ++ + + + P++ LT RE ++L L K Sbjct: 124 VAAGAFWWDAIASQEIQTAFQHSSSTGAV--LPLADADGENPLTKRELEILSLVAKGK-- 179 Query: 168 VLSRSSIEEKLSSWDEEISSGALDVHIYNLRQKL 201 S I ++L I+ G + VH++ + +KL Sbjct: 180 --SNQEIADEL-----YIAPGTVRVHVHTILRKL 206 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 58.2 bits (139), Expect = 2e-11 Identities = 35/113 (30%), Positives = 61/113 (53%), Gaps = 2/113 (1%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 RILL+ED+ + L +GF VD +G + L + Y V++D+ +P++DG+E Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 Query: 62 VLQQWRSN--HQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARL 112 R N + +P++ +TA +R + LQ+G +D+L KP E+ +L Sbjct: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKL 1038 Score = 44.7 bits (104), Expect = 3e-07 Identities = 32/111 (28%), Positives = 56/111 (50%), Gaps = 9/111 (8%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSA-----PYDAVVLDLTLPK 56 R+L+++D++ ++ L ++ F V+ G + L A P+ V +D +P Sbjct: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 Query: 57 LDGLEVLQQWRS---NHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFA 104 +DGLEV ++ ++ NHQ + I+TA + VK G DD L KP + Sbjct: 832 MDGLEVARRLKAMGLNHQP-SIFIVTAYGREELFVKAKSLGIDDVLVKPIS 881 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 55.8 bits (133), Expect = 1e-10 Identities = 39/132 (29%), Positives = 67/132 (50%), Gaps = 8/132 (6%) Query: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPY--DAVVLDLTLPKLDGL 60 IL++ED+ +I + L+ + + +G + L S D ++ D+ +P++DG Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 61 EVLQQWRSNHQD--VPVLILTARDTLDERVKGLQSGADDYLCKPF----ALAEVAARLQA 114 ++ + N + +P + LTA T+ + KG+ SGADDYL KPF L V +RLQ Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 Query: 115 LIRRRYGYHHSV 126 + Y S+ Sbjct: 124 QAKLSAFYQGSI 135 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 55.5 bits (132), Expect = 1e-10 Identities = 52/207 (25%), Positives = 89/207 (42%), Gaps = 21/207 (10%) Query: 1 MRILLIEDDNLIGNGLQ--IGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLD 58 M+IL++EDD L+ GL+ +G + + +G + D +V+D+ LP LD Sbjct: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 Query: 59 GLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAE----VAARLQA 114 G+E +Q + + +++LT+ +E + L SGAD Y K L +AA Sbjct: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQDG 136 Query: 115 LIRRRYGYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSI 174 V+E + + Q V SL+ RE +L+L + K S I Sbjct: 137 ATYLDPQIARVVVENLKPPVPEGQADV------SSLSEREIDVLKLIVEGK----SNQEI 186 Query: 175 EEKLSSWDEEISSGALDVHIYNLRQKL 201 + L +S+ + H+ + KL Sbjct: 187 AQTL-----YLSTNTIKTHVRGIMNKL 208 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 55.5 bits (132), Expect = 1e-10 Identities = 60/211 (28%), Positives = 91/211 (43%), Gaps = 34/211 (16%) Query: 1 MRILLIEDDNLIGNGLQ--IGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLD 58 +++LLI+D L+ G++ + L V + G G++ D ++LDL + L Sbjct: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLS 64 Query: 59 GLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCK---PFALAEVAARLQAL 115 GL+ L+ R+ D +LILT D ++ + +GAD YL K P L E R Sbjct: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKR---- 120 Query: 116 IRRRYGYHHSVIEQAGVKLDQNQRSVWL-----NNQPISLTSREYKLLELFMLNKDRVLS 170 I Q V L + +++ L +N SLT RE +L LS Sbjct: 121 -----------IAQGEVILSDSIKNLLLERTHEDNPLDSLTDREMGVLRQIATG----LS 165 Query: 171 RSSIEEKLSSWDEEISSGALDVHIYNLRQKL 201 I +L IS + VHI NL +KL Sbjct: 166 NKQIAAQLF-----ISEETVKVHIRNLLRKL 191 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 52.8 bits (125), Expect = 9e-10 Identities = 32/117 (27%), Positives = 59/117 (50%), Gaps = 2/117 (1%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 +IL+++DD + L++ L K G V+ T+G+ + + V+LD +P +DG Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 Query: 62 VLQQWRSNHQDVP--VLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALI 116 Q +Q+ VL++T D + ++GA DY+ KP A + R++ L+ Sbjct: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 52.0 bits (123), Expect = 2e-09 Identities = 36/113 (31%), Positives = 59/113 (52%), Gaps = 2/113 (1%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 ++L+++D L+ LT LGF V +G+ +A S +++D+ +P LDG Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 Query: 62 VLQQWRSNHQDVPVLI--LTARDTLDERVKGLQSGADDYLCKPFALAEVAARL 112 Q+ +++ Q +I LTA ER + L +G DD+L KPF E+ A L Sbjct: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALL 531 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 48.1 bits (113), Expect = 2e-08 Identities = 30/114 (26%), Positives = 58/114 (50%), Gaps = 4/114 (3%) Query: 4 LLIEDDNLIGNGLQIG-LTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 +L+ +DNL+ + L LG+ V +G+ + AL YD V++D+ +P +DG+ Sbjct: 1192 ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITA 1251 Query: 63 LQQWRSN---HQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQ 113 + R + ++ +TA +R + L +G D Y+ KP ++ ++ LQ Sbjct: 1252 CRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQ 1305 Score = 41.6 bits (96), Expect = 2e-06 Identities = 26/99 (26%), Positives = 50/99 (50%), Gaps = 12/99 (12%) Query: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAP-YDAVVLDLTLPKLDGL 60 ++L+++D+ LQ G FT G++ + P DA +LDL +P +DG+ Sbjct: 1035 QVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFARCPDLDAAILDLQMPNMDGI 1094 Query: 61 EVLQQWR--SNHQDVPVLILTARDTLDERVKGLQSGADD 97 + R + +D+P+++L++ GL +GAD+ Sbjct: 1095 TLAHHLRQFAQGKDLPIILLSS---------GLVAGADE 1124 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 43.9 bits (102), Expect = 4e-07 Identities = 29/103 (28%), Positives = 51/103 (49%), Gaps = 3/103 (2%) Query: 4 LLIEDDNLIGNGLQIGL-TKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 +L+ DD + L I L GF ++ ++G+ +A S + +D+ +P +DG E Sbjct: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 Query: 63 LQQWRSNHQD--VPVLILTARDTLDERVKGLQSGADDYLCKPF 103 + + + V+ LTA +E+ L +G DD+L KPF Sbjct: 692 TKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.137 0.396 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 21,012 Number of Sequences: 78 Number of extensions: 944 Number of successful extensions: 77 Number of sequences better than 1.0e-05: 31 Number of HSP's better than 0.0 without gapping: 23 Number of HSP's successfully gapped in prelim test: 8 Number of HSP's that attempted gapping in prelim test: 14 Number of HSP's gapped (non-prelim): 36 length of query: 221 length of database: 48,235 effective HSP length: 59 effective length of query: 162 effective length of database: 43,633 effective search space: 7068546 effective search space used: 7068546 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) (1805 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) 3217 0.0 SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 135 9e-34 SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 117 4e-28 MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil pro... 108 1e-25 MGEN-G37-01-000335 MG328 conserved hypothetical protein 103 5e-24 SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 76 1e-15 SYNE-PCC-01-000727 sll1120 69 1e-13 SYNE-PCC-01-001071 sll1583 59 2e-10 SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817,... 55 1e-09 SYNE-PCC-01-000943 sll1424 44 3e-06 >MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) Length = 1805 Score = 3217 bits (8340), Expect = 0.0 Identities = 1680/1805 (93%), Positives = 1680/1805 (93%) Query: 1 MKPFDKKPSLQPIYDIGFDDGYLQSEYEKNRSKTDVDKIENQLLKEIKSLEDELKNLKGL 60 MKPFDKKPSLQPIYDIGFDDGYLQSEYEKNRSKTDVDKIENQLLKEIKSLEDELKNLKGL Sbjct: 1 MKPFDKKPSLQPIYDIGFDDGYLQSEYEKNRSKTDVDKIENQLLKEIKSLEDELKNLKGL 60 Query: 61 KNQAEDNPELDKKINHLEVDLNRLVNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQ 120 KNQAEDNPELDKKINHLEVDLNRLVNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQ Sbjct: 61 KNQAEDNPELDKKINHLEVDLNRLVNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQ 120 Query: 121 QENADFLNSKYANLANFQANYHNKLNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALL 180 QENADFLNSKYANLANFQANYHNKLNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALL Sbjct: 121 QENADFLNSKYANLANFQANYHNKLNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALL 180 Query: 181 QNPNITVEKKNYLLNVIDQLYNELDQLENQKRLLSIEYENTYRELVSADNELQNVYENID 240 QNPNITVEKKNYLLNVIDQLYNELDQLENQKRLLSIEYENTYRELVSADNELQNVYENID Sbjct: 181 QNPNITVEKKNYLLNVIDQLYNELDQLENQKRLLSIEYENTYRELVSADNELQNVYENID 240 Query: 241 QNQIQFKHQYQTYRDELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVA 300 QNQIQFKHQYQTYRDELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVA Sbjct: 241 QNQIQFKHQYQTYRDELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVA 300 Query: 301 KQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFA 360 KQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFA Sbjct: 301 KQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFA 360 Query: 361 KHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREI 420 KHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREI Sbjct: 361 KHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREI 420 Query: 421 DTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAI 480 DTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAI Sbjct: 421 DTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAI 480 Query: 481 FQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEA 540 FQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEA Sbjct: 481 FQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEA 540 Query: 541 KHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKL 600 KHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKL Sbjct: 541 KHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKL 600 Query: 601 FQERTYFERNAAVLSNXXXXXXXXXXXXXXTLDQLTKSFEQERLINQREHKELVASVEKQ 660 FQERTYFERNAAVLSN TLDQLTKSFEQERLINQREHKELVASVEKQ Sbjct: 601 FQERTYFERNAAVLSNRLQQKREELLQQKETLDQLTKSFEQERLINQREHKELVASVEKQ 660 Query: 661 KEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQL 720 KEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQL Sbjct: 661 KEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQL 720 Query: 721 NQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQAY 780 NQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQAY Sbjct: 721 NQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQAY 780 Query: 781 FEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFLN 840 FEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFLN Sbjct: 781 FEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFLN 840 Query: 841 HDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYXX 900 HDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIY Sbjct: 841 HDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYEL 900 Query: 901 XXXXXXXXXXXXXXXXIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLE 960 IAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLE Sbjct: 901 TKKQESEQTQKETELKIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLE 960 Query: 961 LDNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHYE 1020 LDNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHYE Sbjct: 961 LDNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHYE 1020 Query: 1021 LKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDXXXXXXXXXXXXXXXX 1080 LKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFD Sbjct: 1021 LKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDEAKKRELEELEKIRRS 1080 Query: 1081 XSQSNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSNEANAK 1140 SQSNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSNEANAK Sbjct: 1081 LSQSNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSNEANAK 1140 Query: 1141 KAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIE 1200 KAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIE Sbjct: 1141 KAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIE 1200 Query: 1201 KQRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTNLLDL 1260 KQRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTNLLDL Sbjct: 1201 KQRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTNLLDL 1260 Query: 1261 KENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFL 1320 KENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFL Sbjct: 1261 KENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFL 1320 Query: 1321 SNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNND 1380 SNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNND Sbjct: 1321 SNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNND 1380 Query: 1381 FAKFSRQREEFENQRXXXXXXXXXXXXXXNSNNFKTKAIQEIENSYKRGMEELNFQKKEF 1440 FAKFSRQREEFENQR NSNNFKTKAIQEIENSYKRGMEELNFQKKEF Sbjct: 1381 FAKFSRQREEFENQRLKLLELQKTLQTQTNSNNFKTKAIQEIENSYKRGMEELNFQKKEF 1440 Query: 1441 DKNKSRLYEYFRKMRDEIERKESQVKLVLKETQRKANLLEAQANKLNIEKNTIDFKEKEL 1500 DKNKSRLYEYFRKMRDEIERKESQVKLVLKETQRKANLLEAQANKLNIEKNTIDFKEKEL Sbjct: 1441 DKNKSRLYEYFRKMRDEIERKESQVKLVLKETQRKANLLEAQANKLNIEKNTIDFKEKEL 1500 Query: 1501 KAFKDKVDQDIDSTXXXXXXXXXXXXXXXXXXXSLIERERAINSKDSLLNKKIETIKRQL 1560 KAFKDKVDQDIDST SLIERERAINSKDSLLNKKIETIKRQL Sbjct: 1501 KAFKDKVDQDIDSTNKQRKELNELLNENKLLQQSLIERERAINSKDSLLNKKIETIKRQL 1560 Query: 1561 HDKEMRVLRLVDRMKLAEQKYQTEINRLRTQTFDSEKQDIKNFFPPLFKINGNDMAFPYL 1620 HDKEMRVLRLVDRMKLAEQKYQTEINRLRTQTFDSEKQDIKNFFPPLFKINGNDMAFPYL Sbjct: 1561 HDKEMRVLRLVDRMKLAEQKYQTEINRLRTQTFDSEKQDIKNFFPPLFKINGNDMAFPYL 1620 Query: 1621 YPWLYPQQKQDDNTLQIRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKKLDQIQLESQLN 1680 YPWLYPQQKQDDNTLQIR KKLDQIQLESQLN Sbjct: 1621 YPWLYPQQKQDDNTLQIRQLFEQQLQFMQQRYENELNELRRQRNLLEKKLDQIQLESQLN 1680 Query: 1681 NKQSEFSKVESMMEKLLEKTESRLNDFDQKINYLTKKVNQHNTYQPSSYQPTPSYQDSDK 1740 NKQSEFSKVESMMEKLLEKTESRLNDFDQKINYLTKKVNQHNTYQPSSYQPTPSYQDSDK Sbjct: 1681 NKQSEFSKVESMMEKLLEKTESRLNDFDQKINYLTKKVNQHNTYQPSSYQPTPSYQDSDK 1740 Query: 1741 QQLLFRIQELEKQNLXXXXXXXXXXXXXXPTSFAAPNITKQQQIAQLNAEINNIKRLIAQ 1800 QQLLFRIQELEKQNL PTSFAAPNITKQQQIAQLNAEINNIKRLIAQ Sbjct: 1741 QQLLFRIQELEKQNLFQQQFQPAPAVVQQPTSFAAPNITKQQQIAQLNAEINNIKRLIAQ 1800 Query: 1801 KAASK 1805 KAASK Sbjct: 1801 KAASK 1805 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 135 bits (341), Expect = 9e-34 Identities = 201/1063 (18%), Positives = 439/1063 (41%), Gaps = 177/1063 (16%) Query: 35 DVDKIENQLLK---EIKSLEDELKNL-----KGLKNQAEDNPELDKKINHLEVDLNRLVN 86 +V+K++ Q K EI SL+ E ++ + L ++ ELD+K L + L Sbjct: 731 EVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQILNSSHSSLKE 790 Query: 87 EYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQANYHNKLN 146 + + + ++ D + E+ L ++ L +EN L +++ H K Sbjct: 791 NFSILETELKNVRDSLDEMTQL----RDVLETKDKENQ-------TALLEYKSTIH-KQE 838 Query: 147 DFHRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNELDQ 206 D + +E +TI +K N + ++ L VE+ L Q + Sbjct: 839 DSIKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNL----QKEKDKSN 894 Query: 207 LENQKRLLSIEYE------------NTYRELVSADNELQNVYENIDQNQIQFKHQYQTYR 254 + +QK S++ + E+ N L E+I + +++K ++Q++ Sbjct: 895 VNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHD 954 Query: 255 DELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQDGITKQNA 314 + +++L K++ D + AE + + K + + Sbjct: 955 NLVAKLTEKLKSLANNYKDMQ------------------AENESLIKAVEESKNESSIQL 996 Query: 315 QHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNEFEQKQ 374 ++++K+ ++++EK+ ++ + + I+ L+Q E + ++E+E + Sbjct: 997 SNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTKEEIISKSDSSKDEYESQI 1056 Query: 375 SDSLLKLETEYKALQHKINEFKNESATKSE---ELL---NQERELFEKRREIDTLLTQAS 428 S KLET A +N+ + T+ E EL N + EL K + L + Sbjct: 1057 SLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLETSEKALKEVK 1116 Query: 429 LEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKE-RNLLDQQKKVD----------S 477 EH +E L+ + E KQ +L + L+KE +L Q KK + + Sbjct: 1117 ENEEHLKEEKIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYN 1176 Query: 478 EAIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFF------EKQLKQHQADFEN--- 528 E I QL +++ ++E E + K+K D+ E E+ + LK+ + D N Sbjct: 1177 EEISQLNDEITSTQQENESI----KKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQI 1232 Query: 529 -ELEAKQQ----ELFEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFE 583 EL+ K + L E+ ++E +K+++ + + N K ++++ +LK + K++ + Sbjct: 1233 KELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKY- 1291 Query: 584 LMLQNEYENLQQE-----------KQKLFQERTYFERNAAVLSNXXXXXXXXXXXXXXTL 632 L LQ E E +++E +K+ E++ + LS L Sbjct: 1292 LELQKESEKIKEELDAKTTELKIQLEKITNLSKAKEKSESELSRLKKTSSEERKNAEEQL 1351 Query: 633 DQL-------TKSFEQER-LINQ------REHKELVASVE-------KQKEILGKKL--- 668 ++L ++FE+ER L+N+ +E+ E + ++E + E+ K++ Sbjct: 1352 EKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNT 1411 Query: 669 -QDFSQTSLNASKNLAEREMAIK--------FKEK-----------------EIEATEKQ 702 + + SL+ + L E++ IK +K+K ++E+ ++Q Sbjct: 1412 RSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQ 1471 Query: 703 LLNDVNNAEVIQADLAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQE 762 L + ++ L +L + ++E++EL+ +K+ + + E + S++ + Sbjct: 1472 LRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLESTIESNETELKSSMETIRKS 1531 Query: 763 LQTLEANQK---------QHSYQNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRL 813 + LE ++K QH + E +K E ++ L + K E++ +KQ L Sbjct: 1532 DEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQEL 1591 Query: 814 SDKHQALNMQQAE---LDRKTHELNNAFLNHDADQKSLQDQLATVKETQKLIDLERSALL 870 ++ + + + E L K ++ + A+ KS Q++ + K ++ E + Sbjct: 1592 NNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQ 1651 Query: 871 EKQREFAENVAGFKRHWSNKTSQLQKIYXXXXXXXXXXXXXXXXXXIAFSDLQKDYQVFE 930 +K ++ E R + + SQL + ++DL Q ++ Sbjct: 1652 QKAQKSEEERRAEVRKFQVEKSQLDE--------------KAMLLETKYNDLVNKEQAWK 1697 Query: 931 LQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQALQNQKQ 973 +D + +++++E++KLA++ + +K E +A +++ + Sbjct: 1698 RDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSE 1740 Score = 129 bits (324), Expect = 8e-32 Identities = 205/1073 (19%), Positives = 441/1073 (41%), Gaps = 167/1073 (15%) Query: 642 ERLINQREHKELVASVEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEK 701 E IN+ +E V +++Q L ++ + + +NL E+ +A+ + KE++ + Sbjct: 721 EEPINKISFEE-VEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDE-KY 778 Query: 702 QLLNDVN-----NAEVIQADLAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSL 756 Q+LN + N +++ +L + SL+ E+ + + ++ L EY+ ++ Sbjct: 779 QILNSSHSSLKENFSILETELKNVRDSLD----EMTQLRDVLETKDKENQTALLEYKSTI 834 Query: 757 QKRLQELQTLEANQKQHSYQNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDK 816 K+ ++TLE + Q + +G ++K+ ++ A + E+ A+++ Sbjct: 835 HKQEDSIKTLEKGLETILSQKKKAEDG-INKMGKDLFAL-------SREMQAVEENCK-- 884 Query: 817 HQALNMQQAELDRKTHELNNAFLNHDADQKSLQDQLATVKETQKLIDLERSALLEKQREF 876 N+Q+ E + + +NH + KSL++ +A K I+ LE+ + Sbjct: 885 ----NLQK--------EKDKSNVNHQKETKSLKEDIAAKITEIKAINEN----LEEMKIQ 928 Query: 877 AENVAGFKRHWSNKTSQLQKIYXXXXXXXXXXXXXXXXXXIAFSDLQKDYQ----VFELQ 932 N++ K H S + + + + + D+Q + + E Sbjct: 929 CNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSLANNYKDMQAENESLIKAVEES 988 Query: 933 KDQEFRQIEAKQRELDKLAEKNNQVKLE---LDNRFQALQNQKQDTVQAQLEL------- 982 K++ Q+ Q ++D ++++ ++E ++ + L+ D Q + E+ Sbjct: 989 KNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTKEEIISKSDSS 1048 Query: 983 -EREQHQLNLEQ------TAFNQAN----ESLLKQREQLTKKIQAF-----HYELKKRNQ 1026 + + Q++L + T N N L K RE+L ++ A+ E K Sbjct: 1049 KDEYESQISLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLETS 1108 Query: 1027 FLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDXXXXXXXXXXXXXXXXXSQSNV 1086 ALK KE ++ K+++I Q EKE T+ ++N+ Sbjct: 1109 EKALKE----VKENEEHLKEEKI-----QLEKEATE------------TKQQLNSLRANL 1147 Query: 1087 E-LERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSNEANAKKAFLI 1145 E LE++ E LA L K + Q N +I Q E + Q+ NE+ KK Sbjct: 1148 ESLEKEHEDLAAQ---LKKYEEQIANKERQYNEEISQLNDEITSTQQ-ENESIKKK---- 1199 Query: 1146 KRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQL 1205 N +L+ E A++ +++ +K E+ LQ+++ K + + + + Sbjct: 1200 --------NDELEGEVKAMKSTS-EEQSNLKKSEIDALNLQIKELKKKNETNEASLLESI 1250 Query: 1206 VAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTNLLDLKENLE 1265 +++++ K+ + + N K E+ L A+++K KY L+L++ E Sbjct: 1251 KSVESETVKIKELQDECNFKEKEVSELEDKLKASEDK--------NSKY---LELQKESE 1299 Query: 1266 RTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSNETE 1325 + K++LD K + +L K N + ++K + R+ + K E L L NE + Sbjct: 1300 KIKEELDAKTTELKIQLEKITNLSKAKEKSESELSRLKKTSSEERKNAEEQLEKLKNEIQ 1359 Query: 1326 RKRAVLEDQISYFEKQRKQATDAILASHKEVKKK----EGELQKLLVELETRKTKLNN-- 1379 K FEK+RK + +E +K E EL +L E E + +++N Sbjct: 1360 IKNQA-------FEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTR 1412 Query: 1380 -DFAKFSRQREEF-ENQRXXXXXXXXXXXXXXNSNNFKTKAIQEIENSYKRGMEELNFQK 1437 + K S +E E ++ + + + IE KR +E L Q Sbjct: 1413 SELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQL 1472 Query: 1438 KEFDKNKSRLYEYFRKMRDEIERKESQVKLVLKETQRKANLLEAQANKLNIEKNTIDFKE 1497 + ++K+++ E +K+ +E +++++++ + ++ + +E+ +L TI + Sbjct: 1473 RAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLESTIESNETELKSSMETIRKSD 1532 Query: 1498 KELKAFKDKVDQDIDSTXXXXXXXXXXXXXXXXXXXSLIERERA---------------- 1541 ++L+ K ++DI + L + R Sbjct: 1533 EKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQELN 1592 Query: 1542 -------INSKDS-LLNKKIETIKRQLHDKEMRVLR-------LVDRMKLAEQKYQTEIN 1586 IN++++ +L K+E I+R+L DK+ + L R+K EQ+ + Sbjct: 1593 NAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQQ 1652 Query: 1587 RLRTQTFDSEKQDIKNFFPPLFKINGNDMAFPYLYPWLYPQQ---KQDDNTLQ 1636 + + ++ + + +++ F +++ M Y L ++ K+D++T++ Sbjct: 1653 KAQ-KSEEERRAEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTVK 1704 Score = 128 bits (322), Expect = 1e-31 Identities = 198/1134 (17%), Positives = 443/1134 (39%), Gaps = 145/1134 (12%) Query: 446 NEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELYLVKKQKQ 505 + +KQ ++ ++K +++++ L + + ++ + + + + Sbjct: 660 SRIKQFKKDSYFSKVDMNEDSILTPELDETGLPKVYFSTYFIQLFNENIYRIRTALSHDP 719 Query: 506 DQKENELLFFEK--QLKQHQADFENELEAKQQELFEAKHALERSFIKLEDKEKDLNTKAQ 563 D++ + FE+ +L++ + E+ + Q E L I L ++ K+L+ K Q Sbjct: 720 DEEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQ 779 Query: 564 QIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNXXXXXXX 623 + + S LK + S +L+ E +N++ ++ Q R E Sbjct: 780 ILNSSHSSLKENFS-------ILETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKS 832 Query: 624 XXXXXXXTLDQLTKSFEQERLINQREHKELVASVEKQKEILGKKLQDFSQTSLNASKNLA 683 ++ L K E L +++ ++ + + K L +++Q + N K Sbjct: 833 TIHKQEDSIKTLEKGLETI-LSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQK--- 888 Query: 684 EREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQSLNQERSELQNAKQRIADF-- 741 E++ + +KE ++ ++ + + + I +L ++ N E ++ + + ++ Sbjct: 889 EKDKSNVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKS 948 Query: 742 ----HNDSLKKLNEYELSLQKRLQELQT--------LEANQKQHSYQNQAYFEGELDKLN 789 H++ + KL E SL +++Q +E ++ + S Q + + ++D ++ Sbjct: 949 RFQSHDNLVAKLTEKLKSLANNYKDMQAENESLIKAVEESKNESSIQ-LSNLQNKIDSMS 1007 Query: 790 REKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFLNHDADQKSLQ 849 +EK+ F R ++ +K+ +SD Q ++ D E +++ L+ Sbjct: 1008 QEKENFQIERGSIEKNIEQLKKTISDLEQTKEEIISKSDSSKDE-------YESQISLLK 1060 Query: 850 DQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYXXXXXXXXXXX 909 ++L T + S L + + E +A +K + ++L+ Sbjct: 1061 EKLETATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLE-------------- 1106 Query: 910 XXXXXXXIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQALQ 969 A +++++ + + +K Q ++ +++L+ L ++ E ++ L+ Sbjct: 1107 ----TSEKALKEVKENEEHLKEEKIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLK 1162 Query: 970 NQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHY---------- 1019 ++ + + E QLN E T+ Q NES+ K+ ++L +++A Sbjct: 1163 KYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKK 1222 Query: 1020 -----------ELKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDXXXX 1068 ELKK+N+ + + K +E+ EKE ++ + Sbjct: 1223 SEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLK 1282 Query: 1069 XXXXXXXXXXXXXSQSNV---ELERKREKLATDF---TNLNKVQHNTQINRDQLNSQIRQ 1122 +S EL+ K +L TNL+K + ++ +L + Sbjct: 1283 ASEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKITNLSKAKEKSESELSRLKKTSSE 1342 Query: 1123 FLLERKN----FQRFSNEANAKKAFLIK--RLRSFASNLKLQKEALAIQKLE-----FDK 1171 ERKN ++ NE K K +L + S+ Q+ + I LE Sbjct: 1343 ---ERKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQN 1399 Query: 1172 RDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDEKKALNQKLVELKN 1231 +E + KE+ +LE+ EKQ + +++ + D+ ++KL+ ++ Sbjct: 1400 ENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIER 1459 Query: 1232 LSQTYLANKNKAEYSQQQLQQKYTNLLDLKENLERTKDQLDKKHRSIFARLTKFANDLRF 1291 NK E ++QL+ + ++E L++ +++ K+ +L Sbjct: 1460 ------DNKRDLESLKEQLRAAQESKAKVEEGLKKLEEESSKEKA-----------ELEK 1502 Query: 1292 EKKQLLKAQRIVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILA 1351 K+ + K + ++ LK + + + E+ + E+ I + ++ I Sbjct: 1503 SKEMMKKLESTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINE 1562 Query: 1352 SHKEVKKKEGELQ---KLLVELETRKTKLNNDFAKFSRQREEFENQRXXXXXXXXXXXXX 1408 S K++++ + +L+ K ELET K +LNN K EE Sbjct: 1563 SEKDIEELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEE------------------ 1604 Query: 1409 XNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDKNKSRLYEYFRKM--------RDEIER 1460 N +++IE K E+ ++E + SRL E +++ + E ER Sbjct: 1605 ---NTVLKSKLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQKSEEER 1661 Query: 1461 KESQVKLVLKETQ--RKANLLEAQANKLNIEKNTIDFKEKELKAFKDKVDQDID 1512 + K ++++Q KA LLE + N L ++ E +K D Q+I+ Sbjct: 1662 RAEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIE 1715 Score = 76.3 bits (186), Expect = 8e-16 Identities = 94/447 (21%), Positives = 197/447 (44%), Gaps = 66/447 (14%) Query: 29 KNRSKTDVDKIENQLLKEIKSLEDELKNLKG---LKNQAEDNP-------------ELDK 72 K +S++++ +++ +E K+ E++L+ LK +KNQA + E + Sbjct: 1326 KEKSESELSRLKKTSSEERKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSE 1385 Query: 73 KINHLEVDLNRLVNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYA 132 KIN LE +L RL NE N + K E+DN ++EL ++ N + L K Sbjct: 1386 KINTLEDELIRLQNE--------NEL--KAKEIDNT----RSELEKVSLSNDELLEEKQN 1431 Query: 133 NLANFQANYHNKLNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNY 192 + + Q +++ + I ++ + + + + + + Q VE+ Sbjct: 1432 TIKSLQ----DEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESKAKVEEG-- 1485 Query: 193 LLNVIDQLYNELDQLENQKRL---LSIEYENTYRELVSADNELQNVYENIDQNQIQFKHQ 249 L + ++ E +LE K + L E+ EL S+ ++ E ++Q++ + Sbjct: 1486 LKKLEEESSKEKAELEKSKEMMKKLESTIESNETELKSSMETIRKSDEKLEQSKKSAEED 1545 Query: 250 YQTYRDELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQDGI 309 + + E S L +I +++++ + +S LR++ +EL+ V ++L+ Sbjct: 1546 IKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSG--------SELETVKQELNNAQEK 1597 Query: 310 TKQNAQH---VEDKLVALNKE-KDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLEH 365 + NA+ ++ KL + +E KD+ Q E N + L+ + E EL + + Sbjct: 1598 IRINAEENTVLKSKLEDIERELKDK---QAEIKSNQEEKELLTSRLKELEQELDSTQQKA 1654 Query: 366 QQNEFEQKQS------------DSLLKLETEYKALQHKINEFKNESATKSEELLNQEREL 413 Q++E E++ + + LET+Y L +K +K + T + +Q +E+ Sbjct: 1655 QKSEEERRAEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEI 1714 Query: 414 FEKRREIDTLLTQASLEYEHQRESSQL 440 + +E+D L + S E + S++ Sbjct: 1715 EKLAKELDNLKAENSKLKEANEDRSEI 1741 >SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 Length = 1928 Score = 117 bits (292), Expect = 4e-28 Identities = 213/1080 (19%), Positives = 441/1080 (40%), Gaps = 163/1080 (15%) Query: 34 TDVDKIENQLLKEIKSLEDELKNLKGLKNQAED-----------NPELDKKINHLEVDLN 82 ++ D+I + L+ ++LE+ + ++GL+ + N EL K+I+ L D++ Sbjct: 938 SEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSKNNELIKQISDLNCDIS 997 Query: 83 RLVNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQANYH 142 + Q + + K S+L +NE+ RL+ D +NSK + +F Sbjct: 998 K---------EQSSQSLIKESKLK-----LENEIKRLK----DVINSKEEEIKSFNDKLS 1039 Query: 143 NKLNDFH----RLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEK---KNYLLN 195 + D L +N N ++RL + N +L +N N EK N L N Sbjct: 1040 SSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRS------KNENFKKEKAALNNQLKN 1093 Query: 196 VIDQLYNELDQLENQKRLLSIEYENTYRELVSADNELQNVYENIDQNQIQFKHQYQTYRD 255 +L ++++N K+ L+ + + VS ++ + ++K YQ ++ Sbjct: 1094 KESELLKMKEKIDNHKKELA-TFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKE 1152 Query: 256 ELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELD-DVAKQLSFQDGITKQNA 314 E S +R+ TK++ K ++L ++D +++ EL+ +++++S Sbjct: 1153 EYSNFQRE---TKEQEQKKRNSLVESLND------SKIKELEARLSQEISLN-------- 1195 Query: 315 QHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENEL-FAKHLEHQQNEFEQK 373 Q++ ++ + E + +T++ ++ DI K + +L F + + +NE E+K Sbjct: 1196 QYLNKRISGNSVETNISSTRRSTSYSDDPLDKEDIIKKYYDLQLAFTEITRNLENEIEEK 1255 Query: 374 QSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEYEH 433 ++ TE + + K ++ K + L Q+ + +D++L Sbjct: 1256 KNLISRLRFTETRLASSSFEDQKIKAQMKKLKKLIQD---MDPSIPLDSIL--------- 1303 Query: 434 QRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKE 493 E DK++++ + ++Y K++LD E + S + ++ + Sbjct: 1304 -NEPLDNCPDKESDINKLMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLS 1362 Query: 494 LEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEA----KQQELFEAKHALERSFI 549 ++Y +K + +++ L E +LK L K ++ +K+ E + Sbjct: 1363 SSDIYKLKFEASEERVKSL---EDKLKTMPLRDRTNLPVGDIIKNRDSI-SKYEEEIRYY 1418 Query: 550 KLEDKEKDLNTKAQQIANE----FSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERT 605 KLE N K Q+I NE SQL D +S E +L + + LQ++ + Sbjct: 1419 KLE------NYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLEST----- 1467 Query: 606 YFERNAAVLSNXXXXXXXXXXXXXXTLDQLTKSFE------QERLINQREHKELVASVEK 659 ER +LS+ T+ Q + FE Q + REH + E+ Sbjct: 1468 --ERQKELLSS--------------TIKQQKQQFENCMDDLQGNELRLREHIHALKQAEE 1511 Query: 660 QKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQ 719 + + ++ + K + EREM + +++ T +L + +++ DLA Sbjct: 1512 DVKNMASIIEKLKTQNKQKEKLIWEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAH 1571 Query: 720 LNQSLN--QERSELQNAKQRIADFHNDSLKKLN--EYELSLQKRLQELQTLEANQKQHSY 775 L + L+ ++RS+ + R+ + N SLK + E + K E T ++ K Sbjct: 1572 LKERLSAVEDRSQYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDL 1631 Query: 776 QNQA-YFEGELDKLNREKQAFLNLRKKQ--------TMEVDAIKQRLSDKHQALNMQQAE 826 Q ++ ++ LN EK A ++L +K+ E +++K ++ + +++ Sbjct: 1632 LKQLDHYTKVVEMLNNEKDA-ISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESD 1690 Query: 827 LDRKTH--ELNNAFLNHDADQ-KSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGF 883 L++KT +++NA L+ + K + +++ ++ET +L + S E + + G+ Sbjct: 1691 LNQKTDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQASCNGY 1750 Query: 884 KRHWSNKTSQLQKIYXXXXXXXXXXXXXXXXXXIAFSDLQKDYQVFELQKDQEFRQIEAK 943 K + ++ + +Y L D Q+ + K Sbjct: 1751 KDKFDDEKQKNIDLYEENQ---------------TLQKLNTDLQLQLKNLHERLSDTTEK 1795 Query: 944 QRELDKLAEKNNQVKLELDNRFQALQNQKQDTVQAQLELEREQHQL---NLEQTAFNQAN 1000 L K+ E N V LE D +++ ++ K LER +L N +QT + Sbjct: 1796 NAWLSKIHELENMVSLETDLKYEEMKKNK--------SLERAVEELQTKNSQQTDVIELA 1847 Query: 1001 ESLLKQREQLTKKIQAFHYELKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEY 1060 + E+ T K +A +L+K L+ K+ + K QE+ + ++ Y Sbjct: 1848 NKNRSEFEEATLKYEAQISDLEKYISQQELEMKKSIRDNSSYRDKVQEMAQEIEFWKSRY 1907 Score = 107 bits (266), Expect = 4e-25 Identities = 220/1149 (19%), Positives = 461/1149 (40%), Gaps = 138/1149 (12%) Query: 368 NEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQA 427 NE K + L ++E++ K L+ K + NE +++LLNQE+E K + + + Sbjct: 867 NEQINKLKNDLQEMESKKKFLEEKNQKTVNE-LENTQDLLNQEKENLRKNESLLNRVKTS 925 Query: 428 SLEYEHQRESSQLLKDKQNEVKQHF-QNLEYAKKELD------KERNL-LDQQKKVDSEA 479 S + Q + KD+ + K QNLE A +++ +ER L++ ++E Sbjct: 926 SETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSKNNEL 985 Query: 480 IFQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFE 539 I Q+ + KE L+K+ K + ENE+ K+LK E E+++ +L Sbjct: 986 IKQISDLNCDISKEQSSQSLIKESKL-KLENEI----KRLKDVINSKEEEIKSFNDKLSS 1040 Query: 540 AKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQK 599 ++ L+ + LE ++ Q + E S L++ + L N+ +N + E K Sbjct: 1041 SEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLK 1100 Query: 600 LFQERTYFERNAAVLSNXXXXXXXXXXXXXXTLDQLTKSFEQERLINQREHKELVASVEK 659 + ++ ++ A S L + T+ E N ++ KE ++ ++ Sbjct: 1101 MKEKIDNHKKELATFSKQRDDAVSEHGKITAELKE-TRIQLTEYKSNYQKIKEEYSNFQR 1159 Query: 660 QKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQ 719 + + +K ++ SLN SK +E+ + + E + Q LN + ++ +++ Sbjct: 1160 ETKEQEQKKRNSLVESLNDSKI---KELEARLSQ---EISLNQYLNKRISGNSVETNISS 1213 Query: 720 LNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQA 779 +S + L D +KK + +L+ + + L+ E +K++ Sbjct: 1214 TRRSTSYSDDPLDK---------EDIIKKYYDLQLAFTEITRNLEN-EIEEKKNLISRLR 1263 Query: 780 YFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFL 839 + E L + E Q KK +K+ + D ++ + LN Sbjct: 1264 FTETRLASSSFEDQKIKAQMKK-------LKKLIQDMDPSIPLDSI--------LNEPLD 1308 Query: 840 NHDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYX 899 N + + + V ++ +D+E A + + + + F++ + IY Sbjct: 1309 NCPDKESDINKLMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYK 1368 Query: 900 XXXXXXXXXXXXXXX----------XXIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDK 949 + D+ K+ + ++E R + + +L + Sbjct: 1369 LKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKNRDSIS-KYEEEIRYYKLENYKLQE 1427 Query: 950 LAEKNN----QVKLEL--DNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESL 1003 + ++N Q+ L+L +AL +++ D +Q LE Q +L + ++ Sbjct: 1428 ILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKEL---------LSSTI 1478 Query: 1004 LKQREQLTKKIQAFH-YELKKRNQFLALKGKR--------LFAKEQDQQRKDQEINWRFK 1054 +Q++Q + EL+ R ALK + K + Q ++ +++ W Sbjct: 1479 KQQKQQFENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIW--- 1535 Query: 1055 QFEKEYTDFDXXXXXXXXXXXXXXXXXSQSNVELERKREKLATDFTNLNKVQHNTQINR- 1113 + E E D D + +L +E+L+ ++ Q+ +INR Sbjct: 1536 EREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVE---DRSQYTDEINRL 1592 Query: 1114 -DQLNSQIR-------QFLLERKNFQRFSNEANAKKAFLIKRLRSFASNLKL---QKEAL 1162 ++LN ++ +F + + +N++ AK + L+K+L + +++ +K+A+ Sbjct: 1593 KEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDAI 1652 Query: 1163 AIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDEKKAL 1222 ++ + E ++ E E + ++ KQ + + ++ A++ LS + Sbjct: 1653 SLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQKN 1712 Query: 1223 NQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTN---LLDLKENLERTKDQLD-KKHRSI 1278 + ++K L +T Q Q++Q N + L+ + KD+ D +K ++I Sbjct: 1713 KEITEKIKYLEETL----------QLQMEQNSRNGELVKTLQASCNGYKDKFDDEKQKNI 1762 Query: 1279 FARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYF 1338 DL +E+ Q L Q++ D LK NLH ++T K A L +I Sbjct: 1763 ---------DL-YEENQTL--QKLNTDLQLQLK----NLHERLSDTTEKNAWLS-KIHEL 1805 Query: 1339 EKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNNDFAKFSRQREEFENQRXXX 1398 E TD ++E+KK + L++ + EL+T+ ++ + ++ R EFE Sbjct: 1806 ENMVSLETDL---KYEEMKKNKS-LERAVEELQTKNSQQTDVIELANKNRSEFEEATLKY 1861 Query: 1399 XXXXXXXXXXXNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDKNKSRLYEYFRKMRDEI 1458 + + K +SY+ ++E+ Q+ EF K++ YE I Sbjct: 1862 EAQISDLEKYISQQELEMKKSIRDNSSYRDKVQEM-AQEIEFWKSR---YESTMIGSKNI 1917 Query: 1459 ERKESQVKL 1467 + +Q K+ Sbjct: 1918 DSNNAQSKI 1926 Score = 106 bits (265), Expect = 6e-25 Identities = 252/1299 (19%), Positives = 520/1299 (40%), Gaps = 231/1299 (17%) Query: 101 KVSELDNLTRFYK-NELTRLQQENADFLNSKYANLA--------NFQANYHNKLNDFHRL 151 KV ++ N F+K L L+++ LN+ L + YH + R+ Sbjct: 767 KVYKIGNTKLFFKAGVLADLEKQKDVKLNNIMIKLTATIRGYTVRKEITYHLQKLKKTRV 826 Query: 152 IENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNELDQLENQK 211 I N + NRL K + NL LL + N K + I++L N+L ++E++K Sbjct: 827 IGNTFRLYNRL-VKEDPWFNLFIRIKPLLTSSNDMTRTKKFN-EQINKLKNDLQEMESKK 884 Query: 212 RLLSIEYENTYRELVSADNELQNVYENIDQNQI---QFKHQYQTYR---DELSQLERKIQ 265 + L + + T EL + + L EN+ +N+ + K +T + D+L + +I Sbjct: 885 KFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEIS 944 Query: 266 LTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQDGITKQNAQHVEDKLVALN 325 K E+ KI I R A L+ K S + + KQ + D ++ Sbjct: 945 REKLEVAQNLEEAHQKIQGLQETIREREATLE---KLHSKNNELIKQ----ISDLNCDIS 997 Query: 326 KEKDRLNTQKEAFFNLRQSA--LID-INKLQQENELFAKHLEHQQNEFEQK--------- 373 KE+ + KE+ L L D IN ++E + F L + + + K Sbjct: 998 KEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCN 1057 Query: 374 -QSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEYE 432 L L TE L+ K FK E A + +L N+E EL + + +ID Sbjct: 1058 IAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKID----------N 1107 Query: 433 HQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERK 492 H++E + K + + V +H + EL + R L + K ++KE+ + ++ Sbjct: 1108 HKKELATFSKQRDDAVSEHGK----ITAELKETRIQLTEYK----SNYQKIKEEYSNFQR 1159 Query: 493 ELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAKHALERSFIKLE 552 E K+++ +K N L+ + L + ELEA+ + L + ++ Sbjct: 1160 E-------TKEQEQKKRNSLV---ESLNDSKI---KELEARLSQEISLNQYLNK---RIS 1203 Query: 553 DKEKDLNTKAQQIANEFSQLKTDK----SKSADFELMLQNEYENLQ---QEKQKLFQERT 605 + N + + + +S DK K D +L NL+ +EK+ L Sbjct: 1204 GNSVETNISSTRRSTSYSDDPLDKEDIIKKYYDLQLAFTEITRNLENEIEEKKNLISRLR 1263 Query: 606 YFERNAAVLSNXXXXXXXXXXXXXXTLDQLTKSFEQERLINQ-REHKELVASVEKQ---K 661 + E A + SFE +++ Q ++ K+L+ ++ Sbjct: 1264 FTETRLA-----------------------SSSFEDQKIKAQMKKLKKLIQDMDPSIPLD 1300 Query: 662 EILGKKLQDFSQTSLNASKNLAE-----REMAIKFK-----EKEIEATEKQLLNDVNNAE 711 IL + L + + +K + E R++ I+ + E I A + + Sbjct: 1301 SILNEPLDNCPDKESDINKLMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESS 1360 Query: 712 VIQADLAQLNQSLNQERSELQNAKQR---IADFHNDSLKKLNEYELSLQKRLQELQTLE- 767 + +D+ +L ++ER + K + + D N + + + S+ K +E++ + Sbjct: 1361 LSSSDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKL 1420 Query: 768 ANQKQHSYQNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAEL 827 N K N++ G+L +L + + + + ++D +++ L + + + + Sbjct: 1421 ENYKLQEILNES--NGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTI 1478 Query: 828 DRKTHELNNAFLNHDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHW 887 ++ + N + ++ L++ + +K+ ++ + ++++EK + +N K W Sbjct: 1479 KQQKQQFENCMDDLQGNELRLREHIHALKQAEEDVK-NMASIIEKLK--TQNKQKEKLIW 1535 Query: 888 SNKTSQLQKIYXXXXXXXXXXXXXXXXXXIAFSDLQKDYQVFELQKDQEFRQIEAKQREL 947 + + SD+Q + EL++ Q+ ++I + +L Sbjct: 1536 EREMERND------------------------SDMQLQETLLELKRVQDVKKILSD--DL 1569 Query: 948 DKLAEKNNQV--KLELDNRFQALQNQKQDTVQAQLELEREQHQLNLE-QTAFNQAN---E 1001 L E+ + V + + + L+ + +++A+ L++E L + +T+ N + Sbjct: 1570 AHLKERLSAVEDRSQYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKIS 1629 Query: 1002 SLLKQREQLTKKIQAFHYELKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYT 1061 LLKQ + TK ++ L ++L K L+ K + + + + + Sbjct: 1630 DLLKQLDHYTKVVEM----LNNEKDAISLAEKELYQKYEALNTECESLKGKI-------- 1677 Query: 1062 DFDXXXXXXXXXXXXXXXXXSQSNVELERKREKLATDF---TNLNKVQHNTQINRDQLNS 1118 V L + +++L +D T+ ++ + + Q N Sbjct: 1678 ------------------------VSLTKIKQELESDLNQKTDALQISNAALSSSTQKNK 1713 Query: 1119 QIRQFLLERKNFQRFSNEANAKKAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKK 1178 +I + + + + E N++ L+K L++ + K DK D++++K Sbjct: 1714 EITEKIKYLEETLQLQMEQNSRNGELVKTLQASCNGYK-------------DKFDDEKQK 1760 Query: 1179 ELQQATLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSD--EKKALNQKLVELKNL--SQ 1234 + L E +K N D++ Q +K E+LSD EK A K+ EL+N+ + Sbjct: 1761 NID---LYEENQTLQKLNTDLQLQ-----LKNLHERLSDTTEKNAWLSKIHELENMVSLE 1812 Query: 1235 TYL----ANKNKA-EYSQQQLQQKYTNLLDLKENLERTKDQLDK---KHRSIFARLTKFA 1286 T L KNK+ E + ++LQ K + D+ E + + + ++ K+ + + L K+ Sbjct: 1813 TDLKYEEMKKNKSLERAVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQISDLEKYI 1872 Query: 1287 NDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSNETE 1325 + E K+ ++ DK ++E + + F + E Sbjct: 1873 SQQELEMKKSIRDNSSYRDK---VQEMAQEIEFWKSRYE 1908 Score = 83.2 bits (204), Expect = 7e-18 Identities = 143/855 (16%), Positives = 331/855 (38%), Gaps = 107/855 (12%) Query: 719 QLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQ------KQ 772 + N+ +N+ +++LQ + + + K +NE E + QE + L N+ K Sbjct: 865 KFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKT 924 Query: 773 HSYQNQAYFE---GELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDR 829 S Q F+ E D+++REK ++ ++ +++ + ++ L +L Sbjct: 925 SSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLE----KLHS 980 Query: 830 KTHELNNAFLNHDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSN 889 K +EL + + D Q + +KE++ ++ E L + E + F S+ Sbjct: 981 KNNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSS 1040 Query: 890 KTSQLQKIYXXXXXXXXXXXXXXXXXXIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDK 949 L SDL+ + F+ +K Q++ K+ EL K Sbjct: 1041 SEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLK 1100 Query: 950 LAEKNNQVKLELDNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQ 1009 + EK + K EL Q+ D V ++ E + ++ T + + + ++ Sbjct: 1101 MKEKIDNHKKEL----ATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSN 1156 Query: 1010 LTKKIQAFHYELKKRNQFL-ALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDXXXX 1068 ++ + E KKRN + +L ++ ++ + R QEI+ +Y + Sbjct: 1157 FQRETK--EQEQKKRNSLVESLNDSKI---KELEARLSQEISLN------QYLNKRISGN 1205 Query: 1069 XXXXXXXXXXXXXSQSNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERK 1128 S S+ L+++ ++ K ++ Q+ ++ + + E+K Sbjct: 1206 SVETNISSTRRSTSYSDDPLDKE---------DIIKKYYDLQLAFTEITRNLENEIEEKK 1256 Query: 1129 NF---QRFSNEANAKKAFLIKRLRSFASNLKL----QKEALAIQKLEFDKRDEQQKKELQ 1181 N RF+ A +F +++++ LK ++ + + + D KE Sbjct: 1257 NLISRLRFTETRLASSSFEDQKIKAQMKKLKKLIQDMDPSIPLDSILNEPLDNCPDKESD 1316 Query: 1182 QATLQLEQFKFEKQNFDIEK------QRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQT 1235 L LE + K+ DIE + + A+ ++ K+ E + + +LK Sbjct: 1317 INKLMLE-VDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLK----- 1370 Query: 1236 YLANKNKAEYSQQQLQQKYTNLLDLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQ 1295 + A++ + + + +L+ + L++ + K SI +K+ ++R+ K + Sbjct: 1371 FEASEERVKSLEDKLKT-----MPLRDRTNLPVGDIIKNRDSI----SKYEEEIRYYKLE 1421 Query: 1296 LLKAQRIVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKE 1355 K Q I+++ N L + +L +++ K A+L +Q+ +K + Sbjct: 1422 NYKLQEILNESNGKLSQLTLDLR----QSKSKEALLSEQLDRLQKDLESTERQKELLSST 1477 Query: 1356 VKKKEGELQKLLVELETRKTKLNNDFAKFSRQREEFEN----------QRXXXXXXXXXX 1405 +K+++ + + + +L+ + +L + E+ +N Q Sbjct: 1478 IKQQKQQFENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWER 1537 Query: 1406 XXXXNSNNFKT-------KAIQEIENSYKRGM-----------------EELNFQKKEFD 1441 N ++ + K +Q+++ + +E+N K+E + Sbjct: 1538 EMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEINRLKEELN 1597 Query: 1442 ---KNKSRLYEYFRKMRDEIERKESQVKLVLKETQRKANLLEAQANKLNIEKNTIDFKEK 1498 K ++ L + F ++ ++E + + + + ++ + LN EK+ I EK Sbjct: 1598 CSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEK 1657 Query: 1499 ELKAFKDKVDQDIDS 1513 EL + ++ + +S Sbjct: 1658 ELYQKYEALNTECES 1672 Score = 55.1 bits (131), Expect = 2e-09 Identities = 115/591 (19%), Positives = 230/591 (38%), Gaps = 110/591 (18%) Query: 1171 KRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDEKKALNQKLVELK 1230 K +Q E +LQL+ ++ N + + ++A EK D K LN +++L Sbjct: 748 KASTKQNCEFLLTSLQLDTKVYKIGNTKLFFKAGVLA---DLEKQKDVK--LNNIMIKLT 802 Query: 1231 NLSQTYLANKNKAEYSQQQLQQKYTNLLDLKENLERTKDQLDKKHR--SIFARLTKF--- 1285 + Y K + Y Q+L K T ++ N R ++L K+ ++F R+ Sbjct: 803 ATIRGYTVRK-EITYHLQKL--KKTRVIG---NTFRLYNRLVKEDPWFNLFIRIKPLLTS 856 Query: 1286 ANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYF--EKQRK 1343 +ND+ KK + ++ +D L+E E FL + ++ LE+ EK+ Sbjct: 857 SNDMTRTKKFNEQINKLKND----LQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENL 912 Query: 1344 QATDAILASHKEVKKKEGELQKLLVELETRKTKLNNDFAKFSRQREEFENQRXXXXXXXX 1403 + +++L VK LQK +L + K +++ + + ++ EE Sbjct: 913 RKNESLL---NRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQ---------- 959 Query: 1404 XXXXXXNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDKNKSRLYEYFRKMRDEIERKES 1463 K + +QE + +E+L+ + E K S L +I +++S Sbjct: 960 -----------KIQGLQETIREREATLEKLHSKNNELIKQISDL-------NCDISKEQS 1001 Query: 1464 QVKLVLKETQRKANLLEAQANKLNIEKNTIDFKEKELKAFKDKVDQDIDSTXXXXXXXXX 1523 L+ KE++ K LE + +L K+ I+ KE+E+K+F DK+ + Sbjct: 1002 SQSLI-KESKLK---LENEIKRL---KDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEK 1054 Query: 1524 XXXXXXXXXXSLIERERAINSKDSLLNKKIETIKRQLHDKEMRVLRLVDRMKLAEQKYQT 1583 SL+ + SK+ K+ + QL +KE +L++ +++ Sbjct: 1055 NCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKI--------- 1105 Query: 1584 EINRLRTQTFDSEKQDIKNFFPPLFKINGNDMAFPYLYPWLYPQQKQDDNTLQIRXXXXX 1643 D+ K+++ F KQ D+ + Sbjct: 1106 ----------DNHKKELATF------------------------SKQRDDAV----SEHG 1127 Query: 1644 XXXXXXXXXXXXXXXXXXXXXXXXKKLDQIQLESQLNNKQSEFSKVESMMEKLLEKTESR 1703 ++ Q E++ ++ S VES+ + +++ E+R Sbjct: 1128 KITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEAR 1187 Query: 1704 LNDFDQKINYLTKKVNQHNT-YQPSSYQPTPSYQDS--DKQQLLFRIQELE 1751 L+ YL K+++ ++ SS + + SY D DK+ ++ + +L+ Sbjct: 1188 LSQEISLNQYLNKRISGNSVETNISSTRRSTSYSDDPLDKEDIIKKYYDLQ 1238 Score = 52.4 bits (124), Expect = 1e-08 Identities = 57/259 (22%), Positives = 122/259 (47%), Gaps = 14/259 (5%) Query: 20 DGYLQSEYEKNRSKTDVDKIENQLLKEIKSLEDELKNLKG-LKNQAEDNPELDKKINHLE 78 D Y + N K + E +L ++ ++L E ++LKG + + + EL+ +N + Sbjct: 1636 DHYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQ-K 1694 Query: 79 VDLNRLVNEYKNFQFQKN-HMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANF 137 D ++ N + QKN + +K+ L+ + + +R N + + + A+ + Sbjct: 1695 TDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSR----NGELVKTLQASCNGY 1750 Query: 138 QANYHNKLNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVI 197 + + ++ L E +NQT+ +LN + + ++ N + K + L N++ Sbjct: 1751 KDKFDDEKQKNIDLYE-ENQTLQKLNTDLQLQLKNLHERLSDTTEKNAWLSKIHELENMV 1809 Query: 198 DQLYNELDQLENQKRLLSIEYENTYRELVSADNELQNVYENIDQNQIQFKHQYQTYRDEL 257 L +L + E K+ S+ E EL + +++ +V E ++N+ +F+ Y ++ Sbjct: 1810 -SLETDL-KYEEMKKNKSL--ERAVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQI 1865 Query: 258 SQLERKIQLTKQELVDKES 276 S LE+ I ++QEL K+S Sbjct: 1866 SDLEKYI--SQQELEMKKS 1882 >MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] Length = 1033 Score = 108 bits (270), Expect = 1e-25 Identities = 175/730 (23%), Positives = 329/730 (45%), Gaps = 84/730 (11%) Query: 186 TVEKKNYLLNVIDQ--LYNELDQLENQKRLLSIEYENTYRELVSADNELQNVYENIDQNQ 243 TV+K N L N + Q + + +Q +L +E+ + +LQ + I+ Q Sbjct: 270 TVDKAN-LTNALSQTVVIKPAEDSAHQSAVLD-------KEIATKQAQLQQLQAQIELRQ 321 Query: 244 IQFKHQYQTYR--DELSQLERKIQLTKQELVDKE-SALRVKIDDADFYINARLAELDD-V 299 Q + TY +E L + + Q V E + L+ ++D A + A +L++ + Sbjct: 322 AQLETPPVTYMGVEEYKLLPVQDVVPVQPTVSFEMTLLQEQLDKALKHNAALQIQLEEQL 381 Query: 300 AKQLSF-QDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENEL 358 AK L + Q + ++ + ++++ L +E LN ++ F + ++L+ + +L++EN Sbjct: 382 AKPLQYDQSPVLQERIELLQNQNTNLTQE---LNELQQKLFKSQNNSLL-LARLEEENRT 437 Query: 359 FAKHLEHQQNEFEQKQ---SDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFE 415 +HL++ E Q L +L+ + +L +I ++K +S E+L + Sbjct: 438 LKQHLQNNLPEANQLNFVLEKQLEQLQQDKHSLTLQIEQYKFDSKKHQEQLAL----IPS 493 Query: 416 KRREIDTLLTQA-SLEYEHQRESSQLLKDKQNEVKQHFQNLEYAK--KELDKERNLLDQQ 472 R EI++L T+ SL+ +QR S L++ + N +K + L K E K RNLL Q Sbjct: 494 LRSEINSLETEVISLKQTNQRLS--LIERENNFLKTEIKQLRETKLNDENTKYRNLLKQY 551 Query: 473 KKVDSEAIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQA-DFENELE 531 + + +++ +LKE + + L + ++ Q Q+ NE L K+L Q +A +FE L Sbjct: 552 ELMRADSDAKLKE--LEHEQHLAHQHHQEQLAQLQRHNEALV--KELDQVKATNFELGLA 607 Query: 532 AK----QQELFEAKHA-LERSFIKLEDKEKDLNTKAQQIANEFSQLK-TDKSKSADFELM 585 A+ Q+ + E K++ L S E+ + L ++ N+ + L+ T K K+A Sbjct: 608 AQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLEFTHKEKTAFDSKT 667 Query: 586 LQNEYENLQQEKQKLFQERTYFERNAAVLSNXXXXXXXXXXXXXXTLDQLTKSFEQERLI 645 L + L+Q + L + + A L+ L +S E + Sbjct: 668 LTLTKQQLEQTQFDL----SLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENLTQL 723 Query: 646 NQREHKELVASVEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEK--QL 703 Q +H+ L S K ++ Q F Q + A +++A+ FK+ E T+K + Sbjct: 724 -QTQHELLQESYNKLQDEANHTQQQFHQAQNEL--DAAHQQLAL-FKQNNEELTDKCSNI 779 Query: 704 LNDVNNAEVIQADLAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYEL------SLQ 757 N++++ ++ + LN N + + K+++ H++ + E+EL ++ Sbjct: 780 QNELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVK 839 Query: 758 KRLQELQTLEANQKQHSYQN--QAY--FEGELDKLNREKQAF--LNLRKKQTMEVDAIKQ 811 L E+Q N+ YQ+ AY + +KL +E Q +NL K+Q + Q Sbjct: 840 AELNEIQITNLNEANAQYQDLLSAYELLQSNHNKLKQELQVLNQVNLEKQQ------LAQ 893 Query: 812 RLSDKHQALNMQQAELDRKTHELNNAFLNHDADQKSLQDQLATVKETQKLIDLERSALLE 871 +L + HQ+L+ AEL + NN LQ AT + +L++ LE Sbjct: 894 KLHNTHQSLSQTHAELTQLQAAYNN-----------LQ---ATPPVSDELLEQFNQVQLE 939 Query: 872 KQREFAENVA 881 KQR +N+A Sbjct: 940 KQRLLQQNLA 949 Score = 77.8 bits (190), Expect = 3e-16 Identities = 157/802 (19%), Positives = 314/802 (39%), Gaps = 127/802 (15%) Query: 649 EHKELVASVEK-------QKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEK 701 EH + +V+K + ++ K +D + S K +A ++ ++ + +IE + Sbjct: 263 EHSFSITTVDKANLTNALSQTVVIKPAEDSAHQSAVLDKEIATKQAQLQQLQAQIELRQA 322 Query: 702 QLLND------VNNAEVIQA-DLAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYEL 754 QL V +++ D+ + +++ E + LQ + HN +L+ E +L Sbjct: 323 QLETPPVTYMGVEEYKLLPVQDVVPVQPTVSFEMTLLQEQLDKALK-HNAALQIQLEEQL 381 Query: 755 S----------LQKRLQELQTLEAN---------QKQHSYQNQAYFEGELDKLNREKQAF 795 + LQ+R++ LQ N QK QN + L++ NR + Sbjct: 382 AKPLQYDQSPVLQERIELLQNQNTNLTQELNELQQKLFKSQNNSLLLARLEEENRTLKQH 441 Query: 796 LNLRKKQTMEVDAI-----KQRLSDKHQ-ALNMQQAELDRKTHELNNAFL-NHDADQKSL 848 L + +++ + +Q DKH L ++Q + D K H+ A + + ++ SL Sbjct: 442 LQNNLPEANQLNFVLEKQLEQLQQDKHSLTLQIEQYKFDSKKHQEQLALIPSLRSEINSL 501 Query: 849 QDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYXXXXXXXXXX 908 + ++ ++K+T +R +L+E++ F + + QL++ Sbjct: 502 ETEVISLKQTN-----QRLSLIERENNFLKT----------EIKQLRE------------ 534 Query: 909 XXXXXXXXIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKL-ELDNRFQA 967 + +L K Y++ D + +++E +Q LA +++Q +L +L +A Sbjct: 535 -TKLNDENTKYRNLLKQYELMRADSDAKLKELEHEQH----LAHQHHQEQLAQLQRHNEA 589 Query: 968 LQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAF---HYELKKR 1024 L + EL ++ Q N SLL + + +QA + EL+ + Sbjct: 590 LVKELDQVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQ 649 Query: 1025 NQFLALKGKRLFA---------KEQDQQRK-----DQEINWRFKQFEKEYTDFDXXXXXX 1070 L K A K+Q +Q + QE FKQ + TD Sbjct: 650 LNVLEFTHKEKTAFDSKTLTLTKQQLEQTQFDLSLTQEQLATFKQQNQSLTD----KLMA 705 Query: 1071 XXXXXXXXXXXSQSNVELERKREKLATDFTNLNKVQHNTQIN----RDQLNSQIRQFLLE 1126 ++ +L+ + E L + L ++TQ +++L++ +Q L Sbjct: 706 SETQLNHLQQSDENLTQLQTQHELLQESYNKLQDEANHTQQQFHQAQNELDAAHQQLALF 765 Query: 1127 RKNFQRFSNEANAKKAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQ 1186 ++N NE K I+ + +K E L + + QQK+++Q Sbjct: 766 KQN-----NEELTDKCSNIQNELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSN 820 Query: 1187 LEQFKFEKQNFDIEKQRQLVAIKTQCEKLS----DEKKALNQKLVELKNLSQTYLANKNK 1242 L Q + E + Q +K + ++ +E A Q L+ L Q +N NK Sbjct: 821 LAQIQAEHELL----QESYNKVKAELNEIQITNLNEANAQYQDLLSAYELLQ---SNHNK 873 Query: 1243 AEYSQQQLQQKYTNLLDLKENLERTKDQLDKKHRSIFARLTKFANDLR----FEKKQLLK 1298 + Q L Q L + L T L + H + +L N+L+ + L + Sbjct: 874 LKQELQVLNQVNLEKQQLAQKLHNTHQSLSQTHAEL-TQLQAAYNNLQATPPVSDELLEQ 932 Query: 1299 AQRIVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEV-- 1356 ++ +K RLL++N +H L E + Q + ++ + ++ KE+ Sbjct: 933 FNQVQLEKQRLLQQNLALVHELQYFNE----LNSSQTHEIKTKQDETVKEVIIVEKEIPV 988 Query: 1357 -KKKEGELQKLLVELETRKTKL 1377 +K+ L+K + +E ++ L Sbjct: 989 PPEKKPRLKKRDIVIENKEDAL 1010 Score = 73.2 bits (178), Expect = 7e-15 Identities = 118/551 (21%), Positives = 228/551 (41%), Gaps = 83/551 (15%) Query: 23 LQSEYEKNRSKTDVDKIE--NQLLKEIKSLEDELKNLKGLKNQAE----DNPELDKKINH 76 LQ E K SK +++ L EI SLE E+ +LK + +N L +I Sbjct: 472 LQIEQYKFDSKKHQEQLALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQ 531 Query: 77 L-EVDLNRLVNEYKN----FQFQKNHMVDKVSELDN----LTRFYKNELTRLQQENADFL 127 L E LN +Y+N ++ + K+ EL++ + ++ +L +LQ+ N + Sbjct: 532 LRETKLNDENTKYRNLLKQYELMRADSDAKLKELEHEQHLAHQHHQEQLAQLQRHNEALV 591 Query: 128 NS-KYANLANFQANYHNKLNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNIT 186 NF+ L + E Q + + N + + + NV L N Sbjct: 592 KELDQVKATNFE------LGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSE 645 Query: 187 VEKKNYLLNVIDQLYNELDQLENQKRLLS--------IEYENTYRELVSADNELQNVYEN 238 ++ + LNV++ + E +++ L+ + T +L + + Q++ + Sbjct: 646 LQNQ---LNVLEFTHKEKTAFDSKTLTLTKQQLEQTQFDLSLTQEQLATFKQQNQSLTDK 702 Query: 239 IDQNQIQFKHQYQTYRDELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDD 298 + ++ Q H Q+ + L+QL+ + +L L + + L+ + + + ELD Sbjct: 703 LMASETQLNHLQQS-DENLTQLQTQHEL----LQESYNKLQDEANHTQQQFHQAQNELDA 757 Query: 299 VAKQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENEL 358 +QL+ + KQN + + DK + E LN K + NL + N L Sbjct: 758 AHQQLA----LFKQNNEELTDKCSNIQNELHDLNRVKTNWENLNT----------EHNLL 803 Query: 359 FAKHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRR 418 K+ QQ E Q + +L +++ E++ LQ N+ K E LN+ + Sbjct: 804 QDKYA--QQKEQMQHEHSNLAQIQAEHELLQESYNKVKAE--------LNEIQI------ 847 Query: 419 EIDTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSE 478 T L +A+ +Y+ + +LL+ N++KQ Q L +++ E+ L Q+ + Sbjct: 848 ---TNLNEANAQYQDLLSAYELLQSNHNKLKQELQVLN----QVNLEKQQLAQKLHNTHQ 900 Query: 479 AIFQLKEKVAQERKELEELY--------LVKKQKQDQKENELLFFEKQLKQHQADFENEL 530 ++ Q ++ Q + L L+++ Q Q E + L + H+ + NEL Sbjct: 901 SLSQTHAELTQLQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQNLALVHELQYFNEL 960 Query: 531 EAKQQELFEAK 541 + Q + K Sbjct: 961 NSSQTHEIKTK 971 Score = 71.2 bits (173), Expect = 3e-14 Identities = 126/592 (21%), Positives = 237/592 (40%), Gaps = 109/592 (18%) Query: 28 EKNRSKTDVDKIENQLLKEIKSLEDELKNLKGLKNQAEDN----PELDKKINHLEVDLNR 83 E N+ ++K QL ++ SL +++ K + ++ P L +IN LE ++ Sbjct: 448 EANQLNFVLEKQLEQLQQDKHSLTLQIEQYKFDSKKHQEQLALIPSLRSEINSLETEVIS 507 Query: 84 LVNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLAN----FQA 139 L Q N + + +N F K E+ +L++ + N+KY NL +A Sbjct: 508 LK--------QTNQRLSLIERENN---FLKTEIKQLRETKLNDENTKYRNLLKQYELMRA 556 Query: 140 NYHNKLNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVIDQ 199 + KL + +E++ ++ +Q+ L +N AL++ + V+ N+ L + Q Sbjct: 557 DSDAKLKE----LEHEQHLAHQHHQE--QLAQLQRHNEALVKELD-QVKATNFELGLAAQ 609 Query: 200 LYNE----LDQLENQKRLLSIE-YENTYRELVSADNELQNVYENIDQNQIQFKHQYQTYR 254 + + L+Q +N L S++ E + L ++ELQN N ++F H+ +T Sbjct: 610 GFEQQKVVLEQ-KNSSLLASLQAAEENVQALGITNSELQN-----QLNVLEFTHKEKTAF 663 Query: 255 DELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQDGITKQNA 314 D + + LTKQ+L + L + + Q KQ Sbjct: 664 D-----SKTLTLTKQQLEQTQFDLSLTQE----------------------QLATFKQQN 696 Query: 315 QHVEDKLVALNKEKDRLNTQKEAFFNLR-QSALI--DINKLQQENELFAKHLEHQQNEFE 371 Q + DKL+A + + L E L+ Q L+ NKLQ E H Q +F Sbjct: 697 QSLTDKLMASETQLNHLQQSDENLTQLQTQHELLQESYNKLQDE-------ANHTQQQFH 749 Query: 372 QKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEY 431 Q Q+ E A ++ FK + +++ N + EL + L + + Sbjct: 750 QAQN--------ELDAAHQQLALFKQNNEELTDKCSNIQNELHD--------LNRVKTNW 793 Query: 432 EHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQER 491 E+ LL+DK + K+ Q+ ++ E L L+E + + Sbjct: 794 ENLNTEHNLLQDKYAQQKEQMQHEHSNLAQIQAEHEL--------------LQESYNKVK 839 Query: 492 KELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAKHALERSFIKL 551 EL E+ + + + + +LL + L+ + + EL+ Q E K L + Sbjct: 840 AELNEIQITNLNEANAQYQDLLSAYELLQSNHNKLKQELQVLNQVNLE-KQQLAQKLHNT 898 Query: 552 EDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQE 603 + + Q+ ++ L+ S + L ++ +Q EKQ+L Q+ Sbjct: 899 HQSLSQTHAELTQLQAAYNNLQATPPVSDE----LLEQFNQVQLEKQRLLQQ 946 Score = 53.5 bits (127), Expect = 6e-09 Identities = 98/477 (20%), Positives = 193/477 (40%), Gaps = 112/477 (23%) Query: 1105 VQHNTQINRDQLNSQIRQFL--LERKNFQRFSNEANAKKAFLIKRLRSFASNLK--LQKE 1160 +Q ++ ++Q N+ + Q L L++K F+ +N + L+ RL LK LQ Sbjct: 393 LQERIELLQNQ-NTNLTQELNELQQKLFKSQNN------SLLLARLEEENRTLKQHLQNN 445 Query: 1161 ALAIQKLEF--DKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDE 1218 +L F +K+ EQ +++ TLQ+EQ+KF+ + + Q QL I + L E Sbjct: 446 LPEANQLNFVLEKQLEQLQQDKHSLTLQIEQYKFDSK----KHQEQLALIPS----LRSE 497 Query: 1219 KKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQ-----------KYTNLL--------- 1258 +L +++ LK +Q + + + + +++Q KY NLL Sbjct: 498 INSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDENTKYRNLLKQYELMRAD 557 Query: 1259 -DLK-ENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQL--------LKAQR------I 1302 D K + LE + + H+ A+L + L E Q+ L AQ + Sbjct: 558 SDAKLKELEHEQHLAHQHHQEQLAQLQRHNEALVKELDQVKATNFELGLAAQGFEQQKVV 617 Query: 1303 VDDKNRLL-------KENERNLHFLSNETERKRAVLE----------------------- 1332 ++ KN L +EN + L ++E + + VLE Sbjct: 618 LEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLEFTHKEKTAFDSKTLTLTKQQLEQ 677 Query: 1333 ---------DQISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNNDFAK 1383 +Q++ F++Q + TD ++AS ++ + + + L +L+T+ L + K Sbjct: 678 TQFDLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQ-QSDENLTQLQTQHELLQESYNK 736 Query: 1384 F----SRQREEFENQRXXXXXXXXXXXXXXNSNNFKTKAIQEIENSYKRGMEELNFQKKE 1439 + +++F + +N T I+N + +LN K Sbjct: 737 LQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNE----LHDLNRVKTN 792 Query: 1440 FDK---NKSRLYEYFRKMRDEIERKESQVKLVLKETQRKANLLEAQANKLNIEKNTI 1493 ++ + L + + + +++++ + S L + Q + LL+ NK+ E N I Sbjct: 793 WENLNTEHNLLQDKYAQQKEQMQHEHSN----LAQIQAEHELLQESYNKVKAELNEI 845 Score = 51.6 bits (122), Expect = 2e-08 Identities = 108/462 (23%), Positives = 191/462 (41%), Gaps = 64/462 (13%) Query: 50 LEDELKNLKGLKNQAEDNPELDKKINHLEVDLNRLVNEYKNFQFQKNHMVDKVSELDNLT 109 LE + +L AE+N + L + + L N+ +F H + LT Sbjct: 618 LEQKNSSLLASLQAAEEN------VQALGITNSELQNQLNVLEF--THKEKTAFDSKTLT 669 Query: 110 RFYKNELTRLQQENADF-LNSKYANLANFQANYHNKLNDFHRLIENQNQTINRLNQKING 168 LT+ Q E F L+ LA F+ + L D +L+ ++ Q +N L Q Sbjct: 670 ------LTKQQLEQTQFDLSLTQEQLATFKQQ-NQSLTD--KLMASETQ-LNHLQQSDEN 719 Query: 169 NQNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNELDQLENQKRLLSIEYENTYRELVSA 228 L + L ++ N ++ N+ Q NELD Q L ++ EL Sbjct: 720 LTQLQTQHELLQESYNKLQDEANHTQQQFHQAQNELDAAHQQLAL----FKQNNEELTDK 775 Query: 229 DNELQNVYENIDQNQIQFKHQYQTYRDELSQLERKIQLTKQELVDKESALRVKIDDADFY 288 + +QN E D N++ K ++ E + L+ K K+++ + S Sbjct: 776 CSNIQN--ELHDLNRV--KTNWENLNTEHNLLQDKYAQQKEQMQHEHS------------ 819 Query: 289 INARLAELDDVAKQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALID 348 LA++ A+ Q+ K A+ E ++ LN+ N Q + + + + Sbjct: 820 ---NLAQIQ--AEHELLQESYNKVKAELNEIQITNLNE----ANAQYQDLLSAYELLQSN 870 Query: 349 INKLQQENELFAK-HLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATK--SEE 405 NKL+QE ++ + +LE QQ QK ++ L + L + N AT S+E Sbjct: 871 HNKLKQELQVLNQVNLEKQQ--LAQKLHNTHQSLSQTHAELTQLQAAYNNLQATPPVSDE 928 Query: 406 LLNQEREL-FEKRREI-DTLLTQASLEYEHQRESSQL--LKDKQNEVKQHFQNLEY---- 457 LL Q ++ EK+R + L L+Y ++ SSQ +K KQ+E + +E Sbjct: 929 LLEQFNQVQLEKQRLLQQNLALVHELQYFNELNSSQTHEIKTKQDETVKEVIIVEKEIPV 988 Query: 458 --AKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEEL 497 KK K+R+++ + K+ D+ KE++ + L ++ Sbjct: 989 PPEKKPRLKKRDIVIENKE-DALGKLSKKERIQAYAERLAKI 1029 Score = 50.8 bits (120), Expect = 4e-08 Identities = 83/444 (18%), Positives = 168/444 (37%), Gaps = 59/444 (13%) Query: 1185 LQLEQFKFEKQNFDIEK--QRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNK 1242 +QLE+ + +D Q ++ ++ Q L+ E L QKL + +N S + + Sbjct: 375 IQLEEQLAKPLQYDQSPVLQERIELLQNQNTNLTQELNELQQKLFKSQNNSLLLARLEEE 434 Query: 1243 AEYSQQQLQQKYTNLLDLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRI 1302 +Q LQ L LE+ +QL + S+ ++ ++ D + ++QL + Sbjct: 435 NRTLKQHLQNNLPEANQLNFVLEKQLEQLQQDKHSLTLQIEQYKFDSKKHQEQLALIPSL 494 Query: 1303 VDDKNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGE 1362 + N L E +T ++ +++E + ++ + + KQ Sbjct: 495 RSEINSLETE-----VISLKQTNQRLSLIERENNFLKTEIKQ------------------ 531 Query: 1363 LQKLLVELETRKTKLNNDFAKFSRQREEFENQRXXXXXXXXXXXXXXNSNNFKTKAIQEI 1422 R+TKLN++ K+ +++E R + + + QE Sbjct: 532 ---------LRETKLNDENTKYRNLLKQYELMR---ADSDAKLKELEHEQHLAHQHHQEQ 579 Query: 1423 ENSYKRGMEELNFQKKEFDKNKSRLYEY------FRKMRDEIERKESQVKLVLKETQRKA 1476 +R E L KE D+ K+ +E F + + +E+K S + L+ + Sbjct: 580 LAQLQRHNEAL---VKELDQVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENV 636 Query: 1477 NLLEAQANKLNIEKNTIDFKEKELKAFKDK----VDQDIDSTXXXXXXXXXXXXXXXXXX 1532 L ++L + N ++F KE AF K Q ++ T Sbjct: 637 QALGITNSELQNQLNVLEFTHKEKTAFDSKTLTLTKQQLEQTQFDLSLTQEQLATFKQQN 696 Query: 1533 XSLIERERAINSKDSLLNKKIETIKRQLHDKEMRVLRLVDRMKLAEQKYQTEINRLRTQT 1592 SL ++ A ++ + L + E + + E+ ++ + K Q E N + Q Sbjct: 697 QSLTDKLMASETQLNHLQQSDENLTQLQTQHEL--------LQESYNKLQDEANHTQQQF 748 Query: 1593 FDSEKQ-DIKNFFPPLFKINGNDM 1615 ++ + D + LFK N ++ Sbjct: 749 HQAQNELDAAHQQLALFKQNNEEL 772 Score = 44.7 bits (104), Expect = 3e-06 Identities = 68/357 (19%), Positives = 151/357 (42%), Gaps = 54/357 (15%) Query: 25 SEYEKNRSKTDVDKIENQLLKEIKSLEDELKNLKGLKNQAEDNPELDKKINHLEVDLNRL 84 ++ + +++ D+ + QL + + L + Q + D+ + L+ L Sbjct: 671 TKQQLEQTQFDLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENLTQLQTQHELL 730 Query: 85 VNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQANYHNK 144 Y Q + NH + + N +L +Q N + L + +N N+ Sbjct: 731 QESYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEE--------LTDKCSNIQNE 782 Query: 145 LNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNEL 204 L+D +R+ N + +N NL+ + A ++K + ++ L Sbjct: 783 LHDLNRVKTNW--------ENLNTEHNLLQDKYA---------QQKEQM----QHEHSNL 821 Query: 205 DQLENQKRLLSIEYENTYRELVSADNELQNVYENIDQNQIQFK---HQYQTYRDELSQLE 261 Q++ + LL Y EL NE+Q N+++ Q++ Y+ + ++L+ Sbjct: 822 AQIQAEHELLQESYNKVKAEL----NEIQ--ITNLNEANAQYQDLLSAYELLQSNHNKLK 875 Query: 262 RKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQDGITKQNAQHVEDKL 321 +++Q+ Q ++K+ L K+ + ++ AEL + Q ++ + Q V D+L Sbjct: 876 QELQVLNQVNLEKQQ-LAQKLHNTHQSLSQTHAELTQL--QAAYNN---LQATPPVSDEL 929 Query: 322 VALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNEFEQKQSDSL 378 + ++ +++ +K+ L Q L +++LQ NEL + Q +E + KQ +++ Sbjct: 930 L---EQFNQVQLEKQ---RLLQQNLALVHELQYFNELNSS----QTHEIKTKQDETV 976 >MGEN-G37-01-000335 MG328 conserved hypothetical protein Length = 756 Score = 103 bits (257), Expect = 5e-24 Identities = 154/679 (22%), Positives = 294/679 (43%), Gaps = 130/679 (19%) Query: 5 DKKPSLQP--IYDIGFDDGYLQSEYEKNRSKT-DVDKIENQLLKEIKSLED--ELKNLKG 59 D K ++P + F++ + Q E N +K +V +KE + +D ++NL Sbjct: 140 DDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTDKVKEPEQFDDFYSIENLTK 199 Query: 60 LKN---------QAEDNPELDKKINHLEVDLNRL--VNEYKNFQFQKNHMVDKVSELDNL 108 N Q +D P + K+I + ++ +++Y N + + D ++D+L Sbjct: 200 AINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLEN-ADLKKQIDDL 258 Query: 109 TRFYKNELTRLQQENADFLN------SKYANLANFQANYHNKLNDFHRLIENQNQTINRL 162 +++ L+QE D SK+ + Q + + D + ++N+ IN L Sbjct: 259 KENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKPVAINPL 318 Query: 163 NQKINGN-------QNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNEL-DQL----ENQ 210 + ++N + L+ + + L+N + V+++ LL V++ NEL +QL E Sbjct: 319 SDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVLNNQINELQNQLLTAREAN 378 Query: 211 KRLLSIEYENTYRELVSADNELQNVYENIDQNQIQ----FKHQYQTYRDELSQLERKIQL 266 +RL +E EN + + NEL+ +++N ++ + +QY+ DE K+Q+ Sbjct: 379 QRLDLVEQENDFLK-----NELKKLHDNTSNDENEKYDDLLNQYELLFDENETKFDKLQV 433 Query: 267 TKQEL-VDKESALRVKIDDADFYIN----ARLAELDDVAKQLSFQD----------GITK 311 +Q L +D + + + D ++ R + D + SF++ G+T Sbjct: 434 KQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQKKALDEKLNGLTI 493 Query: 312 QNAQHVEDKLVAL---NKEKDRLNTQK-----------EAFFNLRQSALIDINKLQQENE 357 QN Q ++DK+ L N+EK LNT + + FN+ Q L + ++ Sbjct: 494 QN-QQLQDKIAELEEWNEEKSNLNTNQLVNLQQQLKDSQNLFNVAQDKLATLEEVNLALN 552 Query: 358 LFAKHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKR 417 LE + + E ++ L KL+ +++ LQ + K + + LN E ++ Sbjct: 553 EKINDLEDELSGSENS-NNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQ-- 609 Query: 418 REIDTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDS 477 ++ + + + E E ++S + N++KQ +LE AKKEL Q V S Sbjct: 610 -DLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLENAKKEL--------QFTPVTS 660 Query: 478 EAIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQEL 537 + + L+EL +K +K E LF E Q Q+Q + N++ A Q E Sbjct: 661 D-------------EHLDELETLKIEK------EQLFLENQALQNQLQYFNDISANQTE- 700 Query: 538 FEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEK 597 E K A D++K + ++K + K DF ++QN+ + L + Sbjct: 701 -EIKEA--------SDEDKPV------------EIKKPRIKKRDF--VIQNKDDKLAKLS 737 Query: 598 QKLFQERTYFERNAAVLSN 616 +K + + Y ER A + +N Sbjct: 738 KK-ERIQAYAERLAKINAN 755 Score = 86.7 bits (213), Expect = 6e-19 Identities = 146/697 (20%), Positives = 292/697 (41%), Gaps = 98/697 (14%) Query: 194 LNVIDQLY--NELDQLENQKRLLSIEYENTYRELVSADNELQNVY-ENIDQNQIQFKHQY 250 L V+D+ + N L+ NQ + E + + + + + Q+V + I + K Sbjct: 76 LKVLDKKWDKNVLNHYANQLKTREEEQQTVDQTMAFQEVDDQSVLTKEIKTGFQELKPSV 135 Query: 251 QTYRDELSQL--ERKIQLTKQELVDK--ESALRVKIDDADFYINARLAELDDVAKQLSFQ 306 T D+ ++ E Q++ +EL ++ E K + + ++ E + S + Sbjct: 136 ITAEDDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTDKVKEPEQFDDFYSIE 195 Query: 307 DGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFAKH--LE 364 + N H K + ++ D+ K + +D EL ++ L+ Sbjct: 196 NLTKAINPVH---KTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLENADLK 252 Query: 365 HQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESA-TKS--EELLNQERELFEKRRE-- 419 Q ++ ++ +D + LE E L+ +++E K++ TK ++LL + R+L+E+ + Sbjct: 253 KQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKP 312 Query: 420 --IDTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDS 477 I+ L + + E E+ ++ LL D+ + +K N++ L N +++ Sbjct: 313 VAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVLNNQINE------ 366 Query: 478 EAIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQEL 537 L+ ++ R+ + L LV+ Q+ D +NEL K+L + ++ ENE K +L Sbjct: 367 -----LQNQLLTAREANQRLDLVE-QENDFLKNEL----KKLHDNTSNDENE---KYDDL 413 Query: 538 FEAKHAL----ERSFIKLEDKEKDLNTKAQQIANEFS--------QLKTDKSKSADFELM 585 L E F KL+ K++ LN Q+ + +++ +SK DF Sbjct: 414 LNQYELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDF--- 470 Query: 586 LQNEYENLQQEKQKLFQERT--------YFERNAAVLSNXXXXXXXXXXXXXXTLDQLTK 637 N +N +E++K E+ + A L L Q K Sbjct: 471 --NNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQLK 528 Query: 638 SFEQERLINQREHKELVASVEKQKEILGKKLQDFSQT---SLNASKNLAEREMAIKFKEK 694 + + L N + K +A++E+ L +K+ D S N++ LA+ + + ++ Sbjct: 529 --DSQNLFNVAQDK--LATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQE 584 Query: 695 -------EIEATEKQLLNDVNNA--------EVIQADLAQLNQSLNQERSELQNAKQRIA 739 + E +K LND N E ++L + QSL+ SE KQ+I Sbjct: 585 SYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQIN 644 Query: 740 DFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQAYFEGELDKLNREKQAFLNLR 799 N + K+L ++ + L EL+TL+ ++Q +NQA L + Q F ++ Sbjct: 645 SLEN-AKKELQFTPVTSDEHLDELETLKIEKEQLFLENQA--------LQNQLQYFNDIS 695 Query: 800 KKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNN 836 QT E+ + SD+ + + +++ + ++ + N Sbjct: 696 ANQTEEI----KEASDEDKPVEIKKPRIKKRDFVIQN 728 Score = 57.4 bits (137), Expect = 4e-10 Identities = 170/809 (21%), Positives = 320/809 (39%), Gaps = 132/809 (16%) Query: 637 KSFEQERLINQREHKELVAS-VEKQKEILGKKLQDFSQTSLNA---SKNLAEREMAIKFK 692 K E N+ + K L+ V++ IL FS + + A +NL E+ Sbjct: 5 KELEISDFDNELDEKTLLKELVQRTNNIL------FSPSKITAIPFERNLLEKTFFGTVD 58 Query: 693 EKEIEATEKQLLNDVNNAEVIQA--DLAQLNQSLNQERS---ELQNAKQRIADFHNDSLK 747 E E E + N + + +V+ D LN NQ ++ E Q Q +A D Sbjct: 59 EAEKEKSIVSFFNWMIDLKVLDKKWDKNVLNHYANQLKTREEEQQTVDQTMAFQEVDDQS 118 Query: 748 KLNEYELSLQKRLQELQ--TLEANQKQHSYQNQAYFEGELDKLNREKQAFLNLRKKQTME 805 L + ++ QEL+ + A + + +A + ++L + +N KK ++ Sbjct: 119 VLTK---EIKTGFQELKPSVITAEDDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQ 175 Query: 806 V---DAIKQ--RLSDKHQALNMQQAELDRKTHELNNAFLNHDAD---QKSLQDQLATVKE 857 + D +K+ + D + N+ +A H+ N D ++ L++Q T K+ Sbjct: 176 IFSTDKVKEPEQFDDFYSIENLTKAI--NPVHKTIQYDQNDDQPFVVKRILKEQHPT-KK 232 Query: 858 TQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQL-QKIYXXXXXXXXXXXXXXXXXX 916 +L D LL + + + + K + +++ L Q+I Sbjct: 233 VDELDDYNNKELLLENADLKKQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKK 292 Query: 917 IAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQALQNQKQDTV 976 + LQ++ ++E +++ I E+++ E Q K L ++ AL+N K V Sbjct: 293 LQDDLLQENRDLYEQLQNKPVA-INPLSDEVNEELENLKQEKALLSDQLDALKN-KSSNV 350 Query: 977 QAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHYELKKRNQFLALKGKRLF 1036 Q QL L L + N+ LL RE +++ E N FL + K+L Sbjct: 351 QQQLAL------LPVLNNQINELQNQLLTAREA-NQRLDLVEQE----NDFLKNELKKLH 399 Query: 1037 --AKEQDQQRKDQEINWRFKQFEKEYTDFDXXXXXXXXXXXXXXXXXSQSNVELERKREK 1094 + ++ D +N F++ T FD +L+ K++ Sbjct: 400 DNTSNDENEKYDDLLNQYELLFDENETKFD----------------------KLQVKQQA 437 Query: 1095 LATDFTN-LNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSNEANAKKAFLIKRLRSFAS 1153 L D+ ++ ++H D L +I + +F N +K L ++L + Sbjct: 438 LNLDYQKTISALKHEN----DVLLDEIEWTRSKDNDFNNTKNSFEEQKKALDEKL----N 489 Query: 1154 NLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQLVAIKTQCE 1213 L +Q + L + E ++ +E++ + L+Q + QN Q +L Sbjct: 490 GLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQLKDSQNLFNVAQDKLAT------ 543 Query: 1214 KLSDEKKALNQKLVELKN-LSQTYLANK--NKAEYSQQQLQQKY----TNLLDLKEN--- 1263 L + ALN+K+ +L++ LS + +N K + + LQ+ Y T+ LK+N Sbjct: 544 -LEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNKLN 602 Query: 1264 ------------LERTKDQLDKKHRSIFA------RLTKFANDLRFEKKQL----LKAQR 1301 E T +L+K +S+ A +L + N L KK+L + + Sbjct: 603 DANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLENAKKELQFTPVTSDE 662 Query: 1302 IVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILAS---HKEVKK 1358 +D+ L E E+ FL N+ L++Q+ YF T+ I + K V+ Sbjct: 663 HLDELETLKIEKEQ--LFLENQ------ALQNQLQYFNDISANQTEEIKEASDEDKPVEI 714 Query: 1359 KEGELQKLLVELETRKTKLNNDFAKFSRQ 1387 K+ ++K ++ + KL AK S++ Sbjct: 715 KKPRIKKRDFVIQNKDDKL----AKLSKK 739 Score = 50.4 bits (119), Expect = 5e-08 Identities = 88/480 (18%), Positives = 197/480 (41%), Gaps = 51/480 (10%) Query: 1156 KLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQLVAI-KTQCEK 1214 +LQ + +AI L + +E + + ++A L + + ++ ++++Q L+ + Q + Sbjct: 307 QLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVLNNQINE 366 Query: 1215 LSDE---KKALNQKLVELKNLSQTYLANKNKA--EYSQQQLQQKYTNLLDLKENL----E 1265 L ++ + NQ+L +L +L N+ K + + +KY +LL+ E L E Sbjct: 367 LQNQLLTAREANQRL-DLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELLFDENE 425 Query: 1266 RTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSNETE 1325 D+L K +++ K + L+ E LL D+ + + + + N E Sbjct: 426 TKFDKLQVKQQALNLDYQKTISALKHENDVLL-------DEIEWTRSKDNDFNNTKNSFE 478 Query: 1326 RKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNNDFAKFS 1385 ++ L+++++ Q +Q D I + ++K LV L+ + N F Sbjct: 479 EQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQLKDSQNLFNVAQ 538 Query: 1386 RQREEFENQRXXXXXXXXXXXXXXNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDK-NK 1444 + E + + + +++ ++ E K +F+K K Sbjct: 539 DKLATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKK 598 Query: 1445 SRLYEYFRKMRDEIERKESQVKLVLKETQRKANLLEAQANKLNIEKNTIDFKEKELKAFK 1504 ++L + + +D + E + L++ ++ + +++ N+L + N+++ +KEL+ Sbjct: 599 NKLNDANEQYQDLLSAFE-ETNSELEKAKQSLSASDSENNQLKQQINSLENAKKELQFTP 657 Query: 1505 DKVDQDIDSTXXXXXXXXXXXXXXXXXXXSLIERERAINSKDSLLNK----------KIE 1554 D+ +D IE+E+ +L N+ + E Sbjct: 658 VTSDEHLDELETLK-----------------IEKEQLFLENQALQNQLQYFNDISANQTE 700 Query: 1555 TIKRQLHDKEMRVLRLVDRMKLAEQKYQTEINRLRTQTFDSEKQDIKNFFPPLFKINGND 1614 IK + D++ V R+K + Q + ++L S+K+ I+ + L KIN N+ Sbjct: 701 EIK-EASDEDKPVEIKKPRIKKRDFVIQNKDDKLAKL---SKKERIQAYAERLAKINANE 756 >SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 Length = 875 Score = 75.9 bits (185), Expect = 1e-15 Identities = 130/612 (21%), Positives = 258/612 (42%), Gaps = 96/612 (15%) Query: 332 NTQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNEFEQKQSDSLLKLETEYKALQHK 391 NTQ+ NL+Q ++ K QQ+N L+ + + K ++ + K ++ + LQ + Sbjct: 186 NTQRICS-NLKQ----ELQKQQQDNAKLKVRLQSYASNSD-KINEKVGKYKSCLETLQER 239 Query: 392 I---NEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEYEHQRESSQLLKDKQNEV 448 I KN TK ++L Q +L+++R I T + + + K+ E+ Sbjct: 240 IATLTSHKNNQETKLKDL-RQNHQLYQRR--ISGFKTSIENLNKTINDLGKNKKEADAEL 296 Query: 449 KQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELY-------LVK 501 + + +EY K+ELD L ++K +S I ++ + + K +E + L++ Sbjct: 297 MKKGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQ 356 Query: 502 KQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAKHALERSFIKL------EDKE 555 K +++ ++L FEK+L++H ++ L + + + +K E+ E Sbjct: 357 FNKFEERVHDL--FEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLE 414 Query: 556 KDLNTKAQQIANEFSQLKTDK------------SKSADFELMLQNEYENLQQEKQKLFQE 603 + +++ ++A ++L + + S + + L +E N +QE L + Sbjct: 415 QKMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQE---LLDD 471 Query: 604 RTYFERNAAVLSNXXXXXXXXXXXXXXTLDQLTKSFEQERLINQREHKELVASV---EKQ 660 + +N A L N +++ K E ER + ++++S+ E Q Sbjct: 472 ASQTAKNYASLENLVKAYKAEIVQSNEYEERI-KHLESERSTLSSQKNQIISSLGTKEAQ 530 Query: 661 KEILGKKLQ----DFSQTSLNASKNLAEREMAIKFKEKEIE-----------ATEKQLLN 705 E L KKL+ + SQ S ++L E+ + + K+++ T+ N Sbjct: 531 YEDLVKKLEAKNIEISQIS-GKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYEN 589 Query: 706 DVNNAEVIQADLAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQT 765 +++ I L N +L Q +L K+ H L+ + LQK E+ Sbjct: 590 KISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQ 649 Query: 766 LEANQKQHSYQNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQA 825 L+A+ E EL++ NR + L KK+T +++ LSD + L Q Sbjct: 650 LKAH------------ELELEEQNRHLKNC--LEKKET----GVEESLSDV-KTLKQQVI 690 Query: 826 ELDRKTHELNNAFLNHDADQKSLQDQLATVKET----QKLIDLERSALLEKQREFAENVA 881 L + ++ A++ LQD L +++E Q+ + ++ L +K +E E Sbjct: 691 VLKSEKQDIT-------AEKLELQDNLESLEEVTKNLQQKVQSQKRELEQKIKELEE--- 740 Query: 882 GFKRHWSNKTSQ 893 K H N+ S+ Sbjct: 741 -IKNHKRNEPSK 751 Score = 71.6 bits (174), Expect = 2e-14 Identities = 132/610 (21%), Positives = 253/610 (41%), Gaps = 92/610 (15%) Query: 30 NRSKTDVDKIENQLLKEIKSLEDELKNLKG-LKNQAEDNPELDKKINHLEVDLNRLVNEY 88 N S T + + LL+ + + NLK L+ Q +DN +L ++ + +++ + Sbjct: 170 NNSSTSSNDV---LLEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKV 226 Query: 89 KNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQANYHNKLNDF 148 ++ + ++++ LT N+ T+L+ +L Y +++ F Sbjct: 227 GKYKSCLETLQERIA---TLTSHKNNQETKLK------------DLRQNHQLYQRRISGF 271 Query: 149 HRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNELDQLE 208 IEN N+TIN L +N + + L++ I+ L ELD Sbjct: 272 KTSIENLNKTINDL------GKNKKEADAELMKKG-----------KEIEYLKRELDDCS 314 Query: 209 NQKRLLSIEYENTYRELVSADNELQNVYEN-IDQNQIQFKHQYQTYRDELSQL-ERKIQ- 265 Q I+ + +E+ E+ EN +++ Q+ + + + L E+K+Q Sbjct: 315 GQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQFNKFEERVHDLFEKKLQK 374 Query: 266 ---------------LTKQELVDKESALRVKIDDADFYINARL-AELDDVAKQLSFQDGI 309 T + + E+ L+ + +D + ++ + D++AK ++ Sbjct: 375 HFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVT 434 Query: 310 TKQNAQHVEDKLVALNKE------KDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHL 363 K V+++L+ + + NT++E + Q+A N EN + A Sbjct: 435 QKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAK---NYASLENLVKAYKA 491 Query: 364 E-HQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDT 422 E Q NE+E++ + LE+E L + N+ + TK + + ++L K EI Sbjct: 492 EIVQSNEYEER----IKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQ 547 Query: 423 LLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQ 482 + + E S LK Q+++++ NL K N + Q ++ + + Sbjct: 548 ISGKEQSLTEKNENLSNELKKVQDQLEK-LNNLNITTK--SNYENKISSQNEIVKALVSE 604 Query: 483 ---LKEKVAQ--ERKELEELYLVKKQKQDQKENELL----FFEKQLKQHQADFENELEAK 533 LK+++ Q E KE E+ K + QK NE L QLK H E ELE + Sbjct: 605 NDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAH----ELELEEQ 660 Query: 534 QQELFEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENL 593 + L K+ LE+ +E+ D+ T QQ+ LK++K +L LQ+ E+L Sbjct: 661 NRHL---KNCLEKKETGVEESLSDVKTLKQQVI----VLKSEKQDITAEKLELQDNLESL 713 Query: 594 QQEKQKLFQE 603 ++ + L Q+ Sbjct: 714 EEVTKNLQQK 723 Score = 69.7 bits (169), Expect = 8e-14 Identities = 97/493 (19%), Positives = 207/493 (41%), Gaps = 40/493 (8%) Query: 29 KNRSKTDVDKIENQLLKEIKSLEDELKNLKGLKNQAEDNPELDKKINHLEVDLNRLVNEY 88 KN+ + D + ++ KEI+ L+ EL + G +E+ + I + + ++ Sbjct: 287 KNKKEADAELMKKG--KEIEYLKRELDDCSG--QLSEEKIKNSSLIQEMGKNREEMIKSI 342 Query: 89 KNF--QFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLA-NFQANYHNKL 145 +NF + + +H++ + + ++ +L + D LN N +N L Sbjct: 343 ENFFSEDKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETML 402 Query: 146 NDFHRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNELD 205 + I+ L QK++ +++ + + ++V +K ++ V ++L L Sbjct: 403 KQQYEDIKEN------LEQKMSSSKDEMAKTIN-----ELSVTQKGLIMGVQEEL---LT 448 Query: 206 QLENQKRLLSIEYENTYRELVSADNELQNVYENIDQNQIQFKH---QYQTYRDELSQLER 262 N + L E NT +EL+ ++ Y +++ +K Q Y + + LE Sbjct: 449 SSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLES 508 Query: 263 K---IQLTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQDGITKQNAQHVED 319 + + K +++ + +D + A+ E+ ++ + + +T++N +++ + Sbjct: 509 ERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQISGK---EQSLTEKN-ENLSN 564 Query: 320 KLVALNKEKDRLN----TQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNEFEQKQS 375 +L + + ++LN T K + N S + L EN+ + ++ E +Q Sbjct: 565 ELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQK 624 Query: 376 DSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEYEHQR 435 D KLE A Q K NE + + +L E EL E+ R + L + E Sbjct: 625 DHTTKLE----AFQ-KNNEQLQKLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVEESL 679 Query: 436 ESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELE 495 + LK + +K Q++ K EL L++ K + + K ++ Q+ KELE Sbjct: 680 SDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQSQKRELEQKIKELE 739 Query: 496 ELYLVKKQKQDQK 508 E+ K+ + +K Sbjct: 740 EIKNHKRNEPSKK 752 Score = 63.2 bits (152), Expect = 7e-12 Identities = 121/655 (18%), Positives = 263/655 (40%), Gaps = 106/655 (16%) Query: 149 HRLIENQNQTINR-LNQKINGNQNLIDNNVALLQ-----NPNITVEKKNYLLNVIDQLYN 202 H I N + + N L + Q + N LQ N + V ++Y N D++ Sbjct: 166 HTSINNSSTSSNDVLLEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNS-DKINE 224 Query: 203 ELDQLENQKRLLSIEYENTYRELVSADNELQNVYENIDQNQIQFKHQYQTYRDELSQLER 262 ++ + ++ L + L S N + +++ QN ++ + ++ + L + Sbjct: 225 KVGKYKSCLETL----QERIATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNK 280 Query: 263 KIQLTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQDGITKQNAQHVEDKLV 322 I + + ++ L K + ++ ELDD + QLS + +N+ +++ Sbjct: 281 TINDLGKNKKEADAELMKKGKEIEYLKR----ELDDCSGQLSEEK---IKNSSLIQE--- 330 Query: 323 ALNKEKDRLNTQKEAFFNLRQSA-LIDINKLQQE-NELFAKHLEHQ------------QN 368 + K ++ + E FF+ ++ L+ NK ++ ++LF K L+ +N Sbjct: 331 -MGKNREEMIKSIENFFSEDKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRN 389 Query: 369 EFEQKQSDSLLKLETEYKA----LQHKINEFKNESATKSEELLNQERELFEKRREIDTLL 424 + S++ L+ +Y+ L+ K++ K+E A EL ++ L +E LL Sbjct: 390 TTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKGLIMGVQE--ELL 447 Query: 425 T-----QASLEYEHQRESSQLLKDKQNEVKQH--FQNLEYA-KKELDKERNLLDQQKKVD 476 T Q +L E +LL D K + +NL A K E+ + ++ K ++ Sbjct: 448 TSSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLE 507 Query: 477 SEAIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQE 536 SE + ++N+++ + D +LEAK E Sbjct: 508 SE-----------------------RSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIE 544 Query: 537 LFEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQE 596 + + + KE+ L K + ++NE +++ K + + ++ YEN Sbjct: 545 ISQ-----------ISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISS 593 Query: 597 KQKLFQERTYFERNAAVLSNXXXXXXXXXXXXXXTLDQLTKSFEQERLINQREHKELVAS 656 + ++ + A V N TL Q + + + Q++H + + Sbjct: 594 QNEIVK--------ALVSEN-------------DTLKQRIQQLVEIKENEQKDHTTKLEA 632 Query: 657 VEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQAD 716 +K E L K + Q + L E+ +K ++ E ++ L+DV + Sbjct: 633 FQKNNEQLQKLNVEVVQLKAH-ELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIV 691 Query: 717 LAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQK 771 L Q + E+ ELQ+ + + + + +K+ + L+++++EL+ ++ +++ Sbjct: 692 LKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQSQKRELEQKIKELEEIKNHKR 746 Score = 55.8 bits (133), Expect = 1e-09 Identities = 85/388 (21%), Positives = 164/388 (42%), Gaps = 57/388 (14%) Query: 60 LKNQAEDNPE-LDKKINHLEVDLNRLVNEYKNFQFQKNHMVDKVSEL----DNLTRFYKN 114 LK Q ED E L++K++ + ++ + +NE QK ++ EL N+ + Sbjct: 402 LKQQYEDIKENLEQKMSSSKDEMAKTINELS--VTQKGLIMGVQEELLTSSGNIQTALVS 459 Query: 115 ELTRLQQENADFLNS---KYANLANFQANYHNKL---NDFHRLIEN-----------QNQ 157 E+ +QE D + YA+L N Y ++ N++ I++ +NQ Sbjct: 460 EMNNTRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQ 519 Query: 158 TINRLNQKINGNQNLIDN----NVALLQ---NPNITVEKKNYLLNVIDQLYNELDQLENQ 210 I+ L K ++L+ N+ + Q EK L N + ++ ++L++L N Sbjct: 520 IISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNN- 578 Query: 211 KRLLSIEYENTYRELVSADNELQNVYENIDQNQIQFKHQYQTYRDELSQLERKIQLTKQE 270 L+I ++ Y +S+ NE+ V + +N + Q E+ + E+K TK E Sbjct: 579 ---LNITTKSNYENKISSQNEI--VKALVSENDTLKQRIQQLV--EIKENEQKDHTTKLE 631 Query: 271 LVDKESALRVKIDDADFYINARLAELDDVAKQLSF-----QDGITKQ--NAQHVEDKLVA 323 K + K++ + A EL++ + L + G+ + + + ++ +++ Sbjct: 632 AFQKNNEQLQKLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIV 691 Query: 324 LNKEK-----------DRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNEFEQ 372 L EK D L + +E NL+Q +L+Q+ + + H++NE + Sbjct: 692 LKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQSQKRELEQKIKELEEIKNHKRNEPSK 751 Query: 373 KQSDSLLKLETEYKALQHKINEFKNESA 400 K + + K K N F N SA Sbjct: 752 KGTQNFTKPSDSPKKNATTSNLFPNNSA 779 Score = 55.5 bits (132), Expect = 1e-09 Identities = 137/722 (18%), Positives = 281/722 (38%), Gaps = 96/722 (13%) Query: 348 DINKLQQENELFAKHLEHQQNEFEQKQSDSLLKLET--EYKALQHK--INEFKNESATKS 403 +I ++++ +E AK E +++ + S++ LK EY K ++ N S+T S Sbjct: 119 EITEVREVSEGVAK--ETKESHGDPNDSETTLKDSKMHEYTMTNGKAPLHTSINNSSTSS 176 Query: 404 EELLNQERELFEKRREIDTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELD 463 ++L E F + I + L Q E + Q++ + LK + ++ + N + +++ Sbjct: 177 NDVL---LEAFTNTQRICSNLKQ---ELQKQQQDNAKLKVR---LQSYASNSDKINEKVG 227 Query: 464 KERNLLDQQKKVDSEAIFQLKEKVAQ--ERKELEELYLVKKQKQDQKENELLFFEKQLKQ 521 K ++ L+ L+E++A K +E L +D ++N L+ ++++ Sbjct: 228 KYKSCLET-----------LQERIATLTSHKNNQETKL-----KDLRQNHQLY-QRRISG 270 Query: 522 HQADFENELEAKQQELFEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSAD 581 + EN L +L + K + +K K K++ +++ + QL +K K++ Sbjct: 271 FKTSIEN-LNKTINDLGKNKKEADAELMK---KGKEIEYLKRELDDCSGQLSEEKIKNSS 326 Query: 582 FELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNXXXXXXXXXXXXXXTLDQLTKSFEQ 641 + E + + + F E L + + Sbjct: 327 LIQEMGKNREEMIKSIENFFSE--------------------------DKAHHLLQFNKF 360 Query: 642 ERLINQREHKELVASVEKQKEILGKKLQDFS-QTSLNASKNLAEREMAIKFK-EKEIEAT 699 E ++ K+L + K+ L L++ + + S N L ++ IK E+++ ++ Sbjct: 361 EERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSS 420 Query: 700 EKQLLNDVNNAEVIQADLAQ------LNQSLNQER---SELQNAKQRIADFHNDSLKKLN 750 + ++ +N V Q L L S N + SE+ N +Q + D + + K Sbjct: 421 KDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYA 480 Query: 751 EYELSLQKRLQELQTLEANQKQHSYQNQAYFEGELDKLNREK-QAFLNLRKKQTMEVDAI 809 E L + E Q + + E E L+ +K Q +L K+ D + Sbjct: 481 SLE-----NLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLV 535 Query: 810 KQRLSDKHQALNMQQAELDRKTHELNNAFLNHDADQKSLQDQLATVKETQKLIDLERSAL 869 K K +A N++ +++ K L N + K +QDQL + Sbjct: 536 K-----KLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENK 590 Query: 870 LEKQREFAENVAGFKRHWSNKTSQLQKIYXXXXXXXXXXXXXXXXXXIAFSDLQKDY--- 926 + Q E + + + QL +I L + Sbjct: 591 ISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQL 650 Query: 927 QVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQALQNQKQDTVQAQLELEREQ 986 + EL+ +++ R ++ + + E++ L + L+++KQD +LEL+ Sbjct: 651 KAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNL 710 Query: 987 HQLNLEQTAFNQANESLLKQREQLTKKIQAFHYELK--KRNQFLALKGKRLFAKEQDQQR 1044 L Q +S ++ EQ K+++ E+K KRN+ + KG + F K D + Sbjct: 711 ESLEEVTKNLQQKVQSQKRELEQKIKELE----EIKNHKRNE-PSKKGTQNFTKPSDSPK 765 Query: 1045 KD 1046 K+ Sbjct: 766 KN 767 Score = 52.0 bits (123), Expect = 2e-08 Identities = 125/686 (18%), Positives = 261/686 (38%), Gaps = 116/686 (16%) Query: 948 DKLAEKNNQVKLELDNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQR 1007 D L E + N Q LQ Q+QD + ++ L+ S Sbjct: 178 DVLLEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQ------------------SYASNS 219 Query: 1008 EQLTKKIQAFHYELKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDXXX 1067 +++ +K+ + L+ + +A L + + +Q+ K +++ + +++ + F Sbjct: 220 DKINEKVGKYKSCLETLQERIAT----LTSHKNNQETKLKDLRQNHQLYQRRISGFKTSI 275 Query: 1068 XXXXXXXXXXXXXXSQSNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLER 1127 +++ EL +K +++ + + +L+ Q E+ Sbjct: 276 ENLNKTINDLGKNKKEADAELMKKGKEI--------------EYLKRELDDCSGQLSEEK 321 Query: 1128 KNFQRFSNEANAKKAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQL 1187 E + +IK + +F S K A L+F+K +E+ +L + LQ Sbjct: 322 IKNSSLIQEMGKNREEMIKSIENFFSEDK------AHHLLQFNKFEERVH-DLFEKKLQ- 373 Query: 1188 EQFKFEKQNFDIEKQRQLVAIK-TQCEKLSDEKKALNQKLVELK-NLSQTYLANKNKAEY 1245 ++FD+ K V ++ T E S+ + L Q+ ++K NL Q ++K++ Sbjct: 374 -------KHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAK 426 Query: 1246 SQQQLQQKYTNLLDLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDD 1305 + +L L+ +++L +I L N+ R Q ++DD Sbjct: 427 TINELSVTQKGLI------MGVQEELLTSSGNIQTALVSEMNNTR---------QELLDD 471 Query: 1306 KNRLLKENERNLHFL----------SNETERKRAVLEDQISYFEKQRKQATDAILASHKE 1355 ++ K N +L L SNE E + LE + S Q+ Q ++ + Sbjct: 472 ASQTAK-NYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQ 530 Query: 1356 VKKKEGELQKLLVE----------LETRKTKLNNDFAKFSRQREEFENQRXXXXXXXXXX 1405 + +L+ +E L + L+N+ K Q E+ N Sbjct: 531 YEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENK 590 Query: 1406 XXXXNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDKNKSRLYEYFRKMRDEIERKESQV 1465 +S N KA+ ++ K+ +++L K+ K+ + E F+K ++++ Sbjct: 591 I---SSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQ------ 641 Query: 1466 KLVLKETQRKANLLEAQANKLNIEKNTIDFKEKELKAFKDKVDQDIDSTXXXXXXXXXXX 1525 KL ++ Q KA+ LE + ++ KN ++ KE + ++ D+ + Sbjct: 642 KLNVEVVQLKAHELELEEQNRHL-KNCLEKKETGV----EESLSDVKTLKQQVIVLKSEK 696 Query: 1526 XXXXXXXXSLIERERAINSKDSLLNKKIETIKRQLHDKEMRVLRLVDRMKLAEQKYQTEI 1585 L + ++ L +K+++ KR+L K + ++ + + E Sbjct: 697 QDITAEKLELQDNLESLEEVTKNLQQKVQSQKRELEQK-------IKELEEIKNHKRNEP 749 Query: 1586 NRLRTQTF----DSEKQD--IKNFFP 1605 ++ TQ F DS K++ N FP Sbjct: 750 SKKGTQNFTKPSDSPKKNATTSNLFP 775 >SYNE-PCC-01-000727 sll1120 Length = 1200 Score = 68.9 bits (167), Expect = 1e-13 Identities = 185/991 (18%), Positives = 372/991 (37%), Gaps = 102/991 (10%) Query: 559 NTKAQQIANEFS---QLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFER-NAAVL 614 N +I+ E++ +LK K + + E + + ++L + R Y E N + Sbjct: 103 NGNGAKISKEWTVTRRLKVTKGGNYSSNYYINGETATVTELHEQLNELRIYPEGYNIVLQ 162 Query: 615 SNXXXXXXXXXXXXXXTLDQLTKSFEQER-LINQREHKELVASVEKQKEILGKKLQDFSQ 673 + +D+L E +R ++ +E V E++ +I+ +L+ Sbjct: 163 GDVTRIITMNSKERREIIDELAGVAEFDRKIVKTKETLTEVQDREERCQIIATELER--- 219 Query: 674 TSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQSLNQERSELQN 733 + A+R+ A K++ + EKQ V + ++ +L L ++R + Q Sbjct: 220 ---TLERLAADRQKAEKYQALRQQVQEKQGWAKVIQYKAVEQQRQKLWGQLERDREQSQQ 276 Query: 734 AKQRI------ADFHNDSLKKLNEYELSL--QKRLQELQTLEANQKQHSYQNQAYFEGEL 785 +Q + L+KLN +L +++L L + Q Q Y +G+ Sbjct: 277 IQQALDQRSQAIQTQQTELEKLNAQVKALGEEEQLAVAAQLATQKAQRDQLQQRYNDGDR 336 Query: 786 DKLNREK-----QAFLNLRKKQTMEVDAIK-----QRLSDKHQALNMQQAELDRKTHELN 835 N ++ QA ++ ++Q + + K Q L A+ Q +L++ H+ Sbjct: 337 QITNHQQQVGQIQAEISQSQQQFLHIQQEKSFHNTQTLPQLEAAVQTSQQQLEQLRHQAQ 396 Query: 836 NAFLNHDADQKSLQDQLATVKETQKLIDLERSALL---EKQREFAENVAGFKRHWSNKTS 892 +A + TV + Q + +RS L E+Q++ N+A + + Sbjct: 397 AIASASEAWVQEQTQLSRTVNQLQDELIPQRSQLAQLEERQQQLLTNLAELTPLLTKVSV 456 Query: 893 QLQKIYXXXXXXXXXXXXXXXXXXIAFSDLQKDYQVFELQKDQEFRQI---EAKQRELDK 949 +L++ SDL + Q L ++ + R + + KQR+LDK Sbjct: 457 ELEEKQFAQGQFNFQGEALTSQIQTLASDLAQLEQERSLLQETQTRLLKEQQEKQRQLDK 516 Query: 950 LAEKNNQVKLELDNRFQALQNQKQDT-----VQAQLELEREQHQLNLEQTAFNQANESLL 1004 L E +Q + E+ + + D + AQL Q+QL LE A + ++ Sbjct: 517 L-EAASQAQQEVQGTYATKVILQSDLPGVCGLVAQLGQVEPQYQLALEIAAGGRLGFLVV 575 Query: 1005 KQREQLTKKIQAFHYELKKRNQFLALKGKRLFAKEQDQQRK------DQEINWRFKQFEK 1058 + I+ R FL L R K Q+ D +N ++ Sbjct: 576 EDDGVAAAGIEILKQAKAGRATFLPLNKIRP-PKGQNPNLSYAHGYIDLAVN--LIDGDR 632 Query: 1059 EYTDFDXXXXXXXXXXXXXXXXXSQSN----VELERKREKLATDFTNLNKVQHN-----T 1109 Y D + V LE + + + ++ Q + T Sbjct: 633 RYADIFAFIFGNTIVFDTLVNARNHLGKHRIVTLEGDLLEASGAMSGGSRNQRSGLRFGT 692 Query: 1110 QINRDQLN-SQIRQFLLERKNFQRFSNEANAKKAFLIKRLRSFASNLKLQKEALAIQKLE 1168 ++ D Q+RQ L + + Q + E ++ ++L ++ Q+ + Sbjct: 693 MVSEDTAEVKQLRQRLQDIQQVQGRNEELLLERTVRSRQLTQQLMEMRQQQREAQLH--- 749 Query: 1169 FDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDEKKALNQKLVE 1228 ++ E+ L Q Q+ Q + +Q E Q+ L ++ L + + Q+L Sbjct: 750 -GEQTERDIARLSQQQTQINQQQINQQQKLAELQQNLALLQQSLPPLEQQLASAQQQLTA 808 Query: 1229 LKNLSQTYLANKN--------KAEYSQ--QQLQQKYTNLLDLKENLERTKDQLDKKHRSI 1278 L+ SQT+ + +AEY + Q L+Q +L DL+ + +R ++++ + I Sbjct: 809 LET-SQTHQQWQTIQIQIRTVEAEYQRQLQALRQGEDHLKDLQNSSQRLEEKIAQAQEKI 867 Query: 1279 FARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYF 1338 A DL ++Q LK ++ TE + A L +++ Sbjct: 868 AQHQ---AQDLTLAQEQ------------EQLKIALAEMNGAIQTTEAQLAKLSEKLG-- 910 Query: 1339 EKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNNDFAKFSRQREEFENQRXXX 1398 KQ D + +++ ++ E Q +L+T + + + + Q E E Sbjct: 911 --STKQERDRLETQLNQLRSQQQEQQWQWEKLQTNQQEYQENLTQLQTQLEALEQDLPDP 968 Query: 1399 XXXXXXXXXXXNSNNFKTKAIQEIENSYKRGMEELNFQK-------KEFDKNKSRLYEYF 1451 +N ++E+E S + G + L + +E++K ++RL E Sbjct: 969 WPEIPLLQDRDEANLDFANILEELERSIRNGQKRLEAMEPVNMLALQEYEKTEARLGELS 1028 Query: 1452 RKMRDEI-ERKESQVKLVLKETQRKANLLEA 1481 K++ ER E +++ T R+ + +A Sbjct: 1029 EKLQTIAGERTELLLRIENFTTLRRRSFQDA 1059 Score = 67.8 bits (164), Expect = 3e-13 Identities = 79/377 (20%), Positives = 155/377 (41%), Gaps = 47/377 (12%) Query: 384 EYKALQHKINEFKNESATKSEELLNQ---ERELFEKRREIDTLLTQASLEYEHQRESSQL 440 E K L+ ++ + + E LL + R+L ++ E+ +A L E Sbjct: 700 EVKQLRQRLQDIQQVQGRNEELLLERTVRSRQLTQQLMEMRQQQREAQLHGEQTERDIAR 759 Query: 441 LKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELYLV 500 L +Q ++ Q N + EL + LL Q ++ L++++A +++L L Sbjct: 760 LSQQQTQINQQQINQQQKLAELQQNLALLQQ-------SLPPLEQQLASAQQQLTALETS 812 Query: 501 KKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAKHALERSFIKLEDKEKDLNT 560 + +Q Q + Q++ +A+++ +L+A +Q ED KDL Sbjct: 813 QTHQQWQT------IQIQIRTVEAEYQRQLQALRQG---------------EDHLKDLQN 851 Query: 561 KAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNXXXX 620 +Q++ + +Q + ++ +L L E E L+ ++ E A LS Sbjct: 852 SSQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEAQLAKLSEKLGS 911 Query: 621 XXXXXXXXXXTLDQLTKSFEQERL------INQREHKELVASVEKQKEILGKKL------ 668 L+QL ++++ NQ+E++E + ++ Q E L + L Sbjct: 912 TKQERDRLETQLNQLRSQQQEQQWQWEKLQTNQQEYQENLTQLQTQLEALEQDLPDPWPE 971 Query: 669 ----QDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQSL 724 QD + +L+ + L E E +I+ +K +EA E + + E +A L +L++ L Sbjct: 972 IPLLQDRDEANLDFANILEELERSIRNGQKRLEAMEPVNMLALQEYEKTEARLGELSEKL 1031 Query: 725 NQERSELQNAKQRIADF 741 E RI +F Sbjct: 1032 QTIAGERTELLLRIENF 1048 Score = 63.2 bits (152), Expect = 7e-12 Identities = 125/658 (18%), Positives = 268/658 (40%), Gaps = 101/658 (15%) Query: 197 IDQLYNELDQLENQKRLLSIEYENTYRELVSADNELQNVYENIDQNQIQFKHQYQT---- 252 + Q+ E+ Q +Q++ L I+ E ++ + +L+ + Q Q +HQ Q Sbjct: 345 VGQIQAEISQ--SQQQFLHIQQEKSFHNTQTLP-QLEAAVQTSQQQLEQLRHQAQAIASA 401 Query: 253 ---YRDELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQDGI 309 + E +QL R + + EL+ + S L ++++ + LAEL + ++S + Sbjct: 402 SEAWVQEQTQLSRTVNQLQDELIPQRSQL-AQLEERQQQLLTNLAELTPLLTKVSVE--- 457 Query: 310 TKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNE 369 +E+K A + + N Q EA + Q+ D+ +L+QE L + E Sbjct: 458 -------LEEKQFA----QGQFNFQGEALTSQIQTLASDLAQLEQERSLLQETQTRLLKE 506 Query: 370 FEQKQSDSLLKLETEYKALQHKINEFKNESATKSE--------ELLNQERELFEKRREI- 420 ++KQ L KLE +A Q + + +S+ L Q ++ EI Sbjct: 507 QQEKQR-QLDKLEAASQAQQEVQGTYATKVILQSDLPGVCGLVAQLGQVEPQYQLALEIA 565 Query: 421 -----------DTLLTQASLEYEHQRESSQ---LLKDKQNEVKQHFQNLEYAKKELDKER 466 D + A +E Q ++ + L +K K NL YA +D Sbjct: 566 AGGRLGFLVVEDDGVAAAGIEILKQAKAGRATFLPLNKIRPPKGQNPNLSYAHGYIDLAV 625 Query: 467 NLLDQQKK------------------VDSEAIFQLKEKVAQERKELEELYLVKKQKQDQK 508 NL+D ++ V++ V E LE + ++Q+ Sbjct: 626 NLIDGDRRYADIFAFIFGNTIVFDTLVNARNHLGKHRIVTLEGDLLEASGAMSGGSRNQR 685 Query: 509 E--------NELLFFEKQLKQHQADFENELEAKQQELFEAK----HALERSFIKLEDKEK 556 +E KQL+Q D + +++ + +EL + L + +++ +++ Sbjct: 686 SGLRFGTMVSEDTAEVKQLRQRLQDIQ-QVQGRNEELLLERTVRSRQLTQQLMEMRQQQR 744 Query: 557 DLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLSN 616 + +Q + ++L +++ ++ Q + LQQ L Q E+ A Sbjct: 745 EAQLHGEQTERDIARLSQQQTQINQQQINQQQKLAELQQNLALLQQSLPPLEQQLA---- 800 Query: 617 XXXXXXXXXXXXXXTLDQLTKSFEQERLINQREHKELVASVEKQKEILGKKLQDFSQTSL 676 T + +++ +Q + I Q + + + A ++Q + L ++ +D + Sbjct: 801 --------SAQQQLTALETSQTHQQWQTI-QIQIRTVEAEYQRQLQAL-RQGEDHLKDLQ 850 Query: 677 NASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQSLNQERSELQNAKQ 736 N+S+ L E+ I +++I + Q L E ++ LA++N ++ ++L + Sbjct: 851 NSSQRLEEK---IAQAQEKIAQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEAQLAKLSE 907 Query: 737 RIADF--HNDSLK-KLNEYELSLQKRLQELQTLEANQKQHSYQNQAYFEGELDKLNRE 791 ++ D L+ +LN+ Q++ + + L+ NQ+++ +N + +L+ L ++ Sbjct: 908 KLGSTKQERDRLETQLNQLRSQQQEQQWQWEKLQTNQQEYQ-ENLTQLQTQLEALEQD 964 Score = 47.4 bits (111), Expect = 4e-07 Identities = 107/547 (19%), Positives = 209/547 (38%), Gaps = 107/547 (19%) Query: 42 QLLKEIKSLEDELKNLKGLKNQAEDNPELDKKINHLEVDLNRLVNEYKN-----FQFQKN 96 ++LK+ K+ L ++ NP L ++++ +N + + + F F Sbjct: 586 EILKQAKAGRATFLPLNKIRPPKGQNPNLSYAHGYIDLAVNLIDGDRRYADIFAFIFGNT 645 Query: 97 HMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQANYHNKLNDFHRLIENQN 156 + D + N K+ + L+ D L + A ++ N + L F ++ Sbjct: 646 IVFDTLVNARN--HLGKHRIVTLE---GDLLEASGA-MSGGSRNQRSGLR-FGTMVSEDT 698 Query: 157 QTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNELDQLENQKRLLSI 216 + +L Q++ Q + N LL + QL +L ++ Q+R + Sbjct: 699 AEVKQLRQRLQDIQQVQGRNEELLLERTVRSR----------QLTQQLMEMRQQQREAQL 748 Query: 217 EYENTYRELVSADNELQNVYENIDQNQIQFKHQYQTYRDELSQLERKIQLTKQELVDKES 276 E T R++ + Q Q Q Q + +L++L++ + L +Q L E Sbjct: 749 HGEQTERDIA-----------RLSQQQTQINQQQINQQQKLAELQQNLALLQQSLPPLEQ 797 Query: 277 ALRVKIDDADFYINARLAELDDVAKQLS-FQDGITKQNAQHVEDKLVALNKEKDRLNTQK 335 +L +QL+ + T Q Q ++ ++ + E R Q Sbjct: 798 ------------------QLASAQQQLTALETSQTHQQWQTIQIQIRTVEAEYQR---QL 836 Query: 336 EAFFNLRQSALIDINKLQQENELFAKHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEF 395 +A LRQ + LQ ++ + + Q + Q Q+ L L E + L+ + E Sbjct: 837 QA---LRQGE-DHLKDLQNSSQRLEEKIAQAQEKIAQHQAQDLT-LAQEQEQLKIALAEM 891 Query: 396 KNESATKSEELLNQERELFEKRREIDTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNL 455 T +L +L ++E D L TQ + L+ +Q E + ++ L Sbjct: 892 NGAIQTTEAQLAKLSEKLGSTKQERDRLETQLN-----------QLRSQQQEQQWQWEKL 940 Query: 456 EYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFF 515 + ++E + NL Q ++++ L++ + E+ L QD+ E L Sbjct: 941 QTNQQEY--QENLTQLQTQLEA-----LEQDLPDPWPEIPLL-------QDRDEANL--- 983 Query: 516 EKQLKQHQADFENELEAKQQELFEAKHALER----SFIKLEDKEK------DLNTKAQQI 565 DF N LE ++ + + LE + + L++ EK +L+ K Q I Sbjct: 984 ---------DFANILEELERSIRNGQKRLEAMEPVNMLALQEYEKTEARLGELSEKLQTI 1034 Query: 566 ANEFSQL 572 A E ++L Sbjct: 1035 AGERTEL 1041 >SYNE-PCC-01-001071 sll1583 Length = 562 Score = 58.5 bits (140), Expect = 2e-10 Identities = 73/298 (24%), Positives = 125/298 (41%), Gaps = 31/298 (10%) Query: 307 DGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQ---QENELFAKHL 363 DG + + H + KL L K+ + E +AL + N+L Q E L Sbjct: 63 DGESPEAVIHAKGKLRRLEKDLQSVQASLE-------NALAERNQLTENYQAQEKMVAAL 115 Query: 364 EHQQNEFEQKQSDSLLKLETEYKALQHKIN-EFKNESATKSEELLNQERELFEKRREIDT 422 +HQ ++ QS+ + L+ K+N E E+ S+ L E+ E R ++ Sbjct: 116 QHQLAHYDDIQSEKFVGLQ--------KLNQELLQENTNLSDRLKQAVNEVAETRPKLVQ 167 Query: 423 LLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKK----ELDKERNLLDQQKKVDSE 478 L SL +Q+ S QL +QN+ K Q L +K ++E+ + Q E Sbjct: 168 L---NSLVTRNQQLSDQLSYVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEE 224 Query: 479 AIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELF 538 + QL + Q ++EL+ + Q Q EN ++ +Q E + + ++ +L Sbjct: 225 QVRQLTAERDQVQQELQTARQQSQSAQTQAENLQAALDRLGQQ-----EEQWQGERSQLT 279 Query: 539 EAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQE 596 + LE + +L +L K + E +LKT+K + A Q + LQQE Sbjct: 280 AKLNQLEEAQKELALANAELKVKLETTQAEGDRLKTEKKEQAAALQSAQGQVTQLQQE 337 Score = 51.6 bits (122), Expect = 2e-08 Identities = 67/309 (21%), Positives = 117/309 (37%), Gaps = 45/309 (14%) Query: 73 KINHLEVDLNRLVNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTR---LQQENADFLNS 129 K+ LE DL + +N ++N + + + + +++L +Q E L Sbjct: 76 KLRRLEKDLQSVQASLENALAERNQLTENYQAQEKMVAALQHQLAHYDDIQSEKFVGLQK 135 Query: 130 KYANLANFQANYHNKLNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEK 189 L N ++L + + +LN + NQ L D + QN +E+ Sbjct: 136 LNQELLQENTNLSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSDQLSYVEQNQAKAIEQ 195 Query: 190 KNYLLNVIDQLYNELDQL---------ENQKRLLSIEYENTYRELVSADNELQNVYENID 240 + + Q +E +Q E Q R L+ E + +EL +A + Q+ Sbjct: 196 RLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQELQTARQQSQSA----- 250 Query: 241 QNQIQFKHQYQTYRDELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVA 300 Q Q + Q D L Q E + Q + +L A+L +L++ Sbjct: 251 QTQAE---NLQAALDRLGQQEEQWQGERSQLT------------------AKLNQLEEAQ 289 Query: 301 KQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFA 360 K+L+ + K KL E DRL T+K+ QSA + +LQQE Sbjct: 290 KELALANAELKV-------KLETTQAEGDRLKTEKKEQAAALQSAQGQVTQLQQELAALQ 342 Query: 361 KHLEHQQNE 369 ++L + E Sbjct: 343 ENLAKAKGE 351 Score = 45.4 bits (106), Expect = 2e-06 Identities = 60/298 (20%), Positives = 134/298 (44%), Gaps = 32/298 (10%) Query: 254 RDELSQLERKIQLTKQELVDKESALRVKIDDADFY---------INARLAELDDVAKQLS 304 + +L +LE+ +Q + L E+AL + + Y + +LA DD+ + Sbjct: 74 KGKLRRLEKDLQSVQASL---ENALAERNQLTENYQAQEKMVAALQHQLAHYDDIQSEKF 130 Query: 305 FQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLE 364 G+ K N + +++ ++ K +N E + L+ +N L N+ L Sbjct: 131 V--GLQKLNQELLQENTNLSDRLKQAVNEVAET-----RPKLVQLNSLVTRNQ----QLS 179 Query: 365 HQQNEFEQKQSDSL-LKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTL 423 Q + EQ Q+ ++ +L ++ K Q + + + + +++ + Q R+L +R ++ Sbjct: 180 DQLSYVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQE 239 Query: 424 LTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQL 483 L A + + + ++ L+ + + Q + + + +L + N L++ +K + A +L Sbjct: 240 LQTARQQSQSAQTQAENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELALANAEL 299 Query: 484 KEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAK 541 K K+ + E + L KK++ ++ + Q+ Q + EL A Q+ L +AK Sbjct: 300 KVKLETTQAEGDRLKTEKKEQAAALQSA----QGQVTQ----LQQELAALQENLAKAK 349 Score = 43.9 bits (102), Expect = 4e-06 Identities = 53/301 (17%), Positives = 129/301 (42%), Gaps = 47/301 (15%) Query: 1215 LSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTNLLDLK-ENLERTKDQLDK 1273 L + +L L E L++ Y A + Q QL Y ++ K L++ +L + Sbjct: 84 LQSVQASLENALAERNQLTENYQAQEKMVAALQHQLAH-YDDIQSEKFVGLQKLNQELLQ 142 Query: 1274 KHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSNETERKRAVLED 1333 ++ ++ RL + N++ + +L++ N L+ N++ L D Sbjct: 143 ENTNLSDRLKQAVNEVAETRPKLVQL-------NSLVTRNQQ---------------LSD 180 Query: 1334 QISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNNDFAKFSRQREEFEN 1393 Q+SY E+ + +A + LAS +++ ++ E ++ A+++ Q ++E Sbjct: 181 QLSYVEQNQAKAIEQRLASQEKLWQQRHEQEQ----------------AQWNSQASQWEE 224 Query: 1394 QRXXXXXXXXXXXXXXNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDKNKSRLYEYFRK 1453 Q + ++++ Q + + ++ L Q++++ +S+L + Sbjct: 225 QVRQLTAERDQVQQELQTARQQSQSAQTQAENLQAALDRLGQQEEQWQGERSQLTAKLNQ 284 Query: 1454 MRD---EIERKESQVKLVLKETQRKANLLEA----QANKLNIEKNTIDFKEKELKAFKDK 1506 + + E+ +++K+ L+ TQ + + L+ QA L + + ++EL A ++ Sbjct: 285 LEEAQKELALANAELKVKLETTQAEGDRLKTEKKEQAAALQSAQGQVTQLQQELAALQEN 344 Query: 1507 V 1507 + Sbjct: 345 L 345 >SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817, reverse complement Length = 1336 Score = 55.5 bits (132), Expect = 1e-09 Identities = 47/211 (22%), Positives = 100/211 (47%), Gaps = 10/211 (4%) Query: 372 QKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEY 431 + +++S+ + T H + N++ S LN+ KR E++ Q E Sbjct: 287 RSETESVNPVSTPASVEYHAGMKSLNKAPYSSNSTLNE----VNKRYELEQQQQQEEAEL 342 Query: 432 EHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQER 491 E +L K+NE+K+ + K+E K + L+ Q++++ E + E A+++ Sbjct: 343 RRLEEQKRLQLQKENEMKR-LEEERRIKQEERKRQMELEHQRQLEEEERKRQMELEAKKQ 401 Query: 492 KELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAKHALERSFIKL 551 EL+ +++++ +KE ELL E Q KQ + + L+ ++QE K E+S Sbjct: 402 MELKRQRQFEEEQRLKKERELL--EIQRKQREQETAERLKKEEQEALAKKEEEEKSKRNK 459 Query: 552 EDKE---KDLNTKAQQIANEFSQLKTDKSKS 579 D E +++N K + + + + +++++ Sbjct: 460 VDNESYTQEINGKVDNLLEDLNAVLAEETET 490 Score = 48.5 bits (114), Expect = 2e-07 Identities = 122/598 (20%), Positives = 233/598 (38%), Gaps = 62/598 (10%) Query: 324 LNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNEFEQKQSDSLLKLET 383 +NK + Q++ LR+ +LQ+ENE+ K LE ++ +Q++ ++LE Sbjct: 325 VNKRYELEQQQQQEEAELRRLEEQKRLQLQKENEM--KRLE-EERRIKQEERKRQMELEH 381 Query: 384 EYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEYEHQRESSQLLKD 443 + + + + A K EL Q + E+R + + L + + Q + +L K+ Sbjct: 382 QRQLEEEERKRQMELEAKKQMELKRQRQFEEEQRLKKERELLEIQRKQREQETAERLKKE 441 Query: 444 KQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQ-LKEKVAQERKELEELYLVKK 502 +Q + AKKE +++ ++ KVD+E+ Q + KV ++L + + Sbjct: 442 EQEAL---------AKKEEEEK----SKRNKVDNESYTQEINGKVDNLLEDLNAVLAEET 488 Query: 503 QKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAKHALERSFIKLEDKEKDLNTKA 562 + +N E+ + + L + E I L D+ LNT Sbjct: 489 ETTPTMQNGTYVPERSTARAHDQLKKPLNIAKVESLGGSDL--NDSISLSDEIAGLNT-- 544 Query: 563 QQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLS------- 615 ++ E K D S E+ N +E E ++ E + + A +S Sbjct: 545 SNLSGEDQDEKNDLSFEKGDEVRYSNNFEG---EAPHVYHEVSIIQEEAPAVSQKLILPE 601 Query: 616 -NXXXXXXXXXXXXXXTLDQLTKSFEQERL--INQREHKELVASVEKQKEILGKKLQDFS 672 N T++ + E L IN + + +E+ L + F+ Sbjct: 602 ENNESEALIESKEEIKTMENIDDEVLLEILTDINWSIEDDADSMIERIDLRLAETEYLFN 661 Query: 673 QTSLNASK---NLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQSLNQERS 729 Q L+ K N+ E + + I T L +++N D+ + N + Sbjct: 662 QNLLSLQKIGPNIRPYEDKVNDECHRIIPTLSLFLMEMSN---FSNDIENVESQDNGLQV 718 Query: 730 ELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQAYFEGELDKLN 789 E N K+ + + ++ LK ++ E+SL Q LE ++ +N + E +L+ L Sbjct: 719 ESAN-KKLLWNTLDELLKTVSLDEISLN------QLLECPIRE---KNLPWMENQLNLLL 768 Query: 790 REKQAF---LNLRKKQTMEVDAIKQRLSDKHQA----LNMQQAELDRKTHELNNAFLNHD 842 + QA N + E+ +KQRL + LN E+ +K + ++HD Sbjct: 769 KAFQAIGSDGNEVEYNLREISGLKQRLQFYEKVTKIFLNRIVEEMQKKFSNIRGQDISHD 828 Query: 843 ADQKSLQDQL---ATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKI 897 + L L + +++ A++E + V + W+ K SQLQ I Sbjct: 829 QMIRILTTLLIFSPLILFCKEISQKSYQAIVENWNVSIQPV--YMELWTKKISQLQGI 884 Score = 47.8 bits (112), Expect = 3e-07 Identities = 70/307 (22%), Positives = 131/307 (42%), Gaps = 28/307 (9%) Query: 1083 QSNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNF-----QRFSNEA 1137 Q EL R E+ N+++ + R + + RQ LE + ++ E Sbjct: 337 QEEAELRRLEEQKRLQLQKENEMKRLEEERRIKQEERKRQMELEHQRQLEEEERKRQMEL 396 Query: 1138 NAKKAFLIKRLRSF--ASNLKLQKEALAIQKLEFDKRD-EQQKKELQQATLQLEQFKFEK 1194 AKK +KR R F LK ++E L IQ+ + ++ E+ KKE Q+A + E+ + K Sbjct: 397 EAKKQMELKRQRQFEEEQRLKKERELLEIQRKQREQETAERLKKEEQEALAKKEEEEKSK 456 Query: 1195 QNFDIEKQRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQ--TYLANKNKAEYSQQQLQQ 1252 +N ++ + I + + L ++ A+ + E Q TY+ ++ A + QL++ Sbjct: 457 RN-KVDNESYTQEINGKVDNLLEDLNAVLAEETETTPTMQNGTYVPERSTAR-AHDQLKK 514 Query: 1253 -----KYTNL--LDLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDD 1305 K +L DL +++ + + ++ NDL FEK ++ Sbjct: 515 PLNIAKVESLGGSDLNDSISLSDEIAGLNTSNLSGEDQDEKNDLSFEKGDEVRY------ 568 Query: 1306 KNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQK 1365 N E H +S E AV + I + ++A++ S +E+K E + Sbjct: 569 SNNFEGEAPHVYHEVSIIQEEAPAVSQKLIL---PEENNESEALIESKEEIKTMENIDDE 625 Query: 1366 LLVELET 1372 +L+E+ T Sbjct: 626 VLLEILT 632 Score = 44.3 bits (103), Expect = 3e-06 Identities = 32/147 (21%), Positives = 78/147 (53%), Gaps = 8/147 (5%) Query: 920 SDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQALQNQKQDTVQAQ 979 +++ K Y++ + Q+ +E ++++ +L ++N +LE + R + + ++Q ++ Q Sbjct: 323 NEVNKRYELEQQQQQEEAELRRLEEQKRLQLQKENEMKRLEEERRIKQEERKRQMELEHQ 382 Query: 980 LELEREQHQLNLEQTAFNQ---ANESLLKQREQLTKKIQAFHYELKKRNQFLALKGKRLF 1036 +LE E+ + +E A Q + ++ ++L K+ + + K+R Q A +RL Sbjct: 383 RQLEEEERKRQMELEAKKQMELKRQRQFEEEQRLKKERELLEIQRKQREQETA---ERLK 439 Query: 1037 AKEQD--QQRKDQEINWRFKQFEKEYT 1061 +EQ+ +++++E + R K + YT Sbjct: 440 KEEQEALAKKEEEEKSKRNKVDNESYT 466 >SYNE-PCC-01-000943 sll1424 Length = 491 Score = 44.3 bits (103), Expect = 3e-06 Identities = 52/248 (20%), Positives = 109/248 (43%), Gaps = 44/248 (17%) Query: 295 ELDDVAKQLSFQDGITKQNAQ---HVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINK 351 +LDD+ QL +Q +Q +E +L A+ +E+ + + AL + + Sbjct: 77 QLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLLRR 136 Query: 352 LQQENELFAKHLEHQQNEFEQ--KQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQ 409 + +++ + + + E Q +Q DSLL +E LQ ++ E + + E + Q Sbjct: 137 VSEQSRNLRQEVANLSAERAQLNEQKDSLLAESSE---LQSQVKLRDQELSKRQERIAQQ 193 Query: 410 ERELFEKRREIDTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLL 469 E+ L QRE Q L ++ F +LE +++L E N Sbjct: 194 EKVL------------------ARQREQVQSL-------EKRFASLEAQRQQLQAEINQR 228 Query: 470 DQQKKVDSEAIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENE 529 D K+D QL + +A + +++ +++K E EL F ++++++ + +++ Sbjct: 229 D--TKID-----QLDQAIAAKDNDIQ----AREEKLQGLETELSFLQREVEELERYYQDY 277 Query: 530 LEAKQQEL 537 E + Q++ Sbjct: 278 QELRGQQI 285 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.311 0.128 0.332 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 190,208 Number of Sequences: 78 Number of extensions: 11535 Number of successful extensions: 671 Number of sequences better than 1.0e-05: 10 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 9 Number of HSP's that attempted gapping in prelim test: 120 Number of HSP's gapped (non-prelim): 93 length of query: 1805 length of database: 48,235 effective HSP length: 76 effective length of query: 1729 effective length of database: 42,307 effective search space: 73148803 effective search space used: 73148803 T: 11 A: 40 X1: 16 ( 7.2 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.8 bits) S2: 99 (42.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= MGEN-G37-01-000317 MG312 cytadherence accessory protein (hmw1) (1139 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value MGEN-G37-01-000317 MG312 cytadherence accessory protein (hmw1) 2171 0.0 SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 56 5e-10 >MGEN-G37-01-000317 MG312 cytadherence accessory protein (hmw1) Length = 1139 Score = 2171 bits (5626), Expect = 0.0 Identities = 1080/1139 (94%), Positives = 1080/1139 (94%) Query: 1 MAKNKQSVFEEKNYTQTEPENIFGDLYDGKSTVEEDPNIKVAYDADGNGYYIAFNKETGV 60 MAKNKQSVFEEKNYTQTEPENIFGDLYDGKSTVEEDPNIKVAYDADGNGYYIAFNKETGV Sbjct: 1 MAKNKQSVFEEKNYTQTEPENIFGDLYDGKSTVEEDPNIKVAYDADGNGYYIAFNKETGV 60 Query: 61 YYDPYGDTEYDISQLFDENGNPFVFDEKQEENDYLKYVGNPDYGSYDENGEWVWSGYFEN 120 YYDPYGDTEYDISQLFDENGNPFVFDEKQEENDYLKYVGNPDYGSYDENGEWVWSGYFEN Sbjct: 61 YYDPYGDTEYDISQLFDENGNPFVFDEKQEENDYLKYVGNPDYGSYDENGEWVWSGYFEN 120 Query: 121 DQWISTKESQPTDENYGFDSDLPPEVKQPESVEDNYGFDNDLPPEVKQPESVEDNYGFDN 180 DQWISTKESQPTDENYGFDSDLPPEVKQPESVEDNYGFDNDLPPEVKQPESVEDNYGFDN Sbjct: 121 DQWISTKESQPTDENYGFDSDLPPEVKQPESVEDNYGFDNDLPPEVKQPESVEDNYGFDN 180 Query: 181 DLPPEVKQPESVVDQPSSDDYFAKQPTDENYGFDNDLPPEVKQPESVVDQPSSDDHFAKQ 240 DLPPEVKQPESVVDQPSSDDYFAKQPTDENYGFDNDLPPEVKQPESVVDQPSSDDHFAKQ Sbjct: 181 DLPPEVKQPESVVDQPSSDDYFAKQPTDENYGFDNDLPPEVKQPESVVDQPSSDDHFAKQ 240 Query: 241 PESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNNYQVGFDQVQANLD 300 PESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNNYQVGFDQVQANLD Sbjct: 241 PESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNNYQVGFDQVQANLD 300 Query: 301 NNEEIQPTAEKKVTTDFESKQAQVVDSYQLPIDTDQQDQTTFSSSFETQPTVEQFDQVNS 360 NNEEIQPTAEKKVTTDFESKQAQVVDSYQLPIDTDQQDQTTFSSSFETQPTVEQFDQVNS Sbjct: 301 NNEEIQPTAEKKVTTDFESKQAQVVDSYQLPIDTDQQDQTTFSSSFETQPTVEQFDQVNS 360 Query: 361 EVNDQFKPEITKEPVLESSFNKQDVVETXXXXXXXXXXXXXXKDATNNDSLNSEFIQLNS 420 EVNDQFKPEITKEPVLESSFNKQDVVET KDATNNDSLNSEFIQLNS Sbjct: 361 EVNDQFKPEITKEPVLESSFNKQDVVETSDLNSESNLYSENNKDATNNDSLNSEFIQLNS 420 Query: 421 NSETASDDVHYESKSEPIHDYKFGXXXXXXXXXXXXXXXPVKFNSETAPDAHFESQSEPV 480 NSETASDDVHYESKSEPIHDYKFG PVKFNSETAPDAHFESQSEPV Sbjct: 421 NSETASDDVHYESKSEPIHDYKFGSDLSQSNSNNSLESEPVKFNSETAPDAHFESQSEPV 480 Query: 481 DQVQYDIYQNEELKPTLDQPSSDDYFAKQPTDENYGFDNDLPPEVKQPESVVDQPSSDDH 540 DQVQYDIYQNEELKPTLDQPSSDDYFAKQPTDENYGFDNDLPPEVKQPESVVDQPSSDDH Sbjct: 481 DQVQYDIYQNEELKPTLDQPSSDDYFAKQPTDENYGFDNDLPPEVKQPESVVDQPSSDDH 540 Query: 541 FAKQPESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNNYQVGFDQVQ 600 FAKQPESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNNYQVGFDQVQ Sbjct: 541 FAKQPESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNNYQVGFDQVQ 600 Query: 601 ANLDNNEEIQPTAEKEVTTDFESKQAQVVDSYQLPIDTDQQDQTTFSSSFETQPTVEQFD 660 ANLDNNEEIQPTAEKEVTTDFESKQAQVVDSYQLPIDTDQQDQTTFSSSFETQPTVEQFD Sbjct: 601 ANLDNNEEIQPTAEKEVTTDFESKQAQVVDSYQLPIDTDQQDQTTFSSSFETQPTVEQFD 660 Query: 661 QVNSEVNDQFKPEITKEPVLESSFNKQDVVETSNYTNNLQKFDIQSDNKITITTKKSSPQ 720 QVNSEVNDQFKPEITKEPVLESSFNKQDVVETSNYTNNLQKFDIQSDNKITITTKKSSPQ Sbjct: 661 QVNSEVNDQFKPEITKEPVLESSFNKQDVVETSNYTNNLQKFDIQSDNKITITTKKSSPQ 720 Query: 721 IPTTLPISFVSNRIEYKPVETLALDNKESQQEQITINSITEDSKTLAKTXXXXXXXXXXX 780 IPTTLPISFVSNRIEYKPVETLALDNKESQQEQITINSITEDSKTLAKT Sbjct: 721 IPTTLPISFVSNRIEYKPVETLALDNKESQQEQITINSITEDSKTLAKTLSVQLQQINSL 780 Query: 781 XXXXXXTSESVRLDKKDDQLTINTVNSEDQQPKIEVFVKAKEPVEEHSITQNKQSVEDKS 840 TSESVRLDKKDDQLTINTVNSEDQQPKIEVFVKAKEPVEEHSITQNKQSVEDKS Sbjct: 781 NNQSIVTSESVRLDKKDDQLTINTVNSEDQQPKIEVFVKAKEPVEEHSITQNKQSVEDKS 840 Query: 841 ELDNFNKKSDLYKIISELKRGELNPTINFDAIFQMNDYQMSVKQSFIHLNDFVTNYKNQI 900 ELDNFNKKSDLYKIISELKRGELNPTINFDAIFQMNDYQMSVKQSFIHLNDFVTNYKNQI Sbjct: 841 ELDNFNKKSDLYKIISELKRGELNPTINFDAIFQMNDYQMSVKQSFIHLNDFVTNYKNQI 900 Query: 901 SERYLIIKKELQSELSRLIDQNENLNVQFNNAKNLTTLQKEEMIRSLASDFAIAYKPSNS 960 SERYLIIKKELQSELSRLIDQNENLNVQFNNAKNLTTLQKEEMIRSLASDFAIAYKPSNS Sbjct: 901 SERYLIIKKELQSELSRLIDQNENLNVQFNNAKNLTTLQKEEMIRSLASDFAIAYKPSNS 960 Query: 961 YEQLQKSGEIMRHVQRAITENEKKIESIQGSLKQLKTVYNSCCETIMNNINKLDNTLRFA 1020 YEQLQKSGEIMRHVQRAITENEKKIESIQGSLKQLKTVYNSCCETIMNNINKLDNTLRFA Sbjct: 961 YEQLQKSGEIMRHVQRAITENEKKIESIQGSLKQLKTVYNSCCETIMNNINKLDNTLRFA 1020 Query: 1021 KKEKDPLLLSNFDSVTDNGLVEPNQLMDDLIDFSNTFDNISNEQLDDFIYENMDRNIDFE 1080 KKEKDPLLLSNFDSVTDNGLVEPNQLMDDLIDFSNTFDNISNEQLDDFIYENMDRNIDFE Sbjct: 1021 KKEKDPLLLSNFDSVTDNGLVEPNQLMDDLIDFSNTFDNISNEQLDDFIYENMDRNIDFE 1080 Query: 1081 FEGFNNDFVDIDAKVMDSMSAFSVNDLDIETLVPDRTSNXXXXXXXXXXXXXGDFSLDY 1139 FEGFNNDFVDIDAKVMDSMSAFSVNDLDIETLVPDRTSN GDFSLDY Sbjct: 1081 FEGFNNDFVDIDAKVMDSMSAFSVNDLDIETLVPDRTSNFSSLLDEDLFESSGDFSLDY 1139 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 56.2 bits (134), Expect = 5e-10 Identities = 170/853 (19%), Positives = 317/853 (37%), Gaps = 103/853 (12%) Query: 240 QPESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNNYQVGFDQVQANL 299 Q E+ + + L T + LD+ Q H LK E + + V+ +L Sbjct: 750 QTETESTHENLTEKLIALTNEHKELDEKYQILNSSHSSLK---ENFSILETELKNVRDSL 806 Query: 300 DNNEEIQPTAEKKVTTDFESKQAQVVDSYQLPIDTDQQDQTTFSSSFET--QPTVEQFDQ 357 D +++ E K D E++ A + Y+ I + T ET + D Sbjct: 807 DEMTQLRDVLETK---DKENQTALL--EYKSTIHKQEDSIKTLEKGLETILSQKKKAEDG 861 Query: 358 VNSEVNDQFKPEITKEPVLESSFNKQ---DVVETXXXXXXXXXXXXXXKDATNNDSLNSE 414 +N D F + V E+ N Q D T ++N Sbjct: 862 INKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSLKEDIAAKITEIKAINEN 921 Query: 415 FIQLNSNSETASDDVHYESKSEPIHDYKFGXXXXXXXXXXXXXXXPVKFNSETAPDAHFE 474 ++ S + + SK + +YK N+ A E Sbjct: 922 LEEMKIQCNNLSKEKEHISKE--LVEYKSRFQSHDNLVAKLTEKLKSLANNYKDMQAENE 979 Query: 475 SQSEPVDQVQYDI-YQNEELKPTLDQPSSDDYFAKQPTDENYGFDN-DLPPEVKQ-PESV 531 S + V++ + + Q L+ +D S + EN+ + + ++Q +++ Sbjct: 980 SLIKAVEESKNESSIQLSNLQNKIDSMSQEK--------ENFQIERGSIEKNIEQLKKTI 1031 Query: 532 VDQPSSDDHFAKQPESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNN 591 D + + + +S+ D Y L + L+ + + N + EL EE Sbjct: 1032 SDLEQTKEEIISKSDSSKDEYESQISLLKEKLETATTAN--DENVNKISELTKTREELEA 1089 Query: 592 YQVGFDQVQANLDNNEEIQPTAEKEVTTDFESKQAQVVDSYQLPIDTDQQ---------- 641 + ++ L+ E A KEV + E + + + + +T QQ Sbjct: 1090 ELAAYKNLKNELETKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQQLNSLRANLES 1149 Query: 642 ------DQTTFSSSFETQPTVEQFDQVNSEVNDQFKPEITK-EPVLESSFNKQDVVE--- 691 D +E Q ++ Q N E++ Q EIT + ES K D +E Sbjct: 1150 LEKEHEDLAAQLKKYEEQIANKE-RQYNEEIS-QLNDEITSTQQENESIKKKNDELEGEV 1207 Query: 692 -----TSNYTNNLQKFDIQSDN-KITITTKKSSPQIPT-----------TLPISFVSNRI 734 TS +NL+K +I + N +I KK+ + T+ I + + Sbjct: 1208 KAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDEC 1267 Query: 735 EYKPVETLALDNK--ESQQEQITINSITEDSKTL-----AKTXXXXXXXXXXXXXXXXXT 787 +K E L++K S+ + + ++S+ + AKT Sbjct: 1268 NFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKITNLSKAKE 1327 Query: 788 SESVRLDKKDDQLTINTVNSEDQQPKI--EVFVKAKEPVEEHSITQNKQSVEDKSELDNF 845 L + + N+E+Q K+ E+ +K + +E + S + + Sbjct: 1328 KSESELSRLKKTSSEERKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKI 1387 Query: 846 NKKSD-LYKIISE--LKRGELNPTIN-FDAIFQMNDYQMSVKQSFIH-LNDFVTNYKNQI 900 N D L ++ +E LK E++ T + + + ND + KQ+ I L D + +YK++I Sbjct: 1388 NTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKI 1447 Query: 901 S---ERYLIIKKELQSELSRLIDQNENLNVQFNNAKNLTTLQKEEMIRSLASDFAIAYKP 957 + E+ L I+++ + +L E+L Q A+ + + EE ++ L + Sbjct: 1448 TRNDEKLLSIERDNKRDL-------ESLKEQLRAAQE-SKAKVEEGLKKLEEE------S 1493 Query: 958 SNSYEQLQKSGEIMRHVQRAITENEKKI----ESIQGSLKQLKTVYNSCCETIMN-NINK 1012 S +L+KS E+M+ ++ I NE ++ E+I+ S ++L+ S E I N K Sbjct: 1494 SKEKAELEKSKEMMKKLESTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEK 1553 Query: 1013 LDNTLRFAKKEKD 1025 D R + EKD Sbjct: 1554 SDLISRINESEKD 1566 Score = 50.4 bits (119), Expect = 3e-08 Identities = 113/579 (19%), Positives = 218/579 (37%), Gaps = 86/579 (14%) Query: 544 QPESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNNYQVGFDQVQANL 603 Q E+ + + L T + LD+ Q H LK E + + V+ +L Sbjct: 750 QTETESTHENLTEKLIALTNEHKELDEKYQILNSSHSSLK---ENFSILETELKNVRDSL 806 Query: 604 DNNEEIQPTAEKEVTTDFESKQAQVVDSYQLPIDTDQQDQTTFSSSFET--QPTVEQFDQ 661 D +++ E T D E++ A + Y+ I + T ET + D Sbjct: 807 DEMTQLRDVLE---TKDKENQTALL--EYKSTIHKQEDSIKTLEKGLETILSQKKKAEDG 861 Query: 662 VNSEVNDQFKPEITKEPVLESSFNKQDVVETSNYTNNLQKFDIQSDNKITITTKKSSPQI 721 +N D F + V E+ N Q + SN + + ++ D IT K+ + Sbjct: 862 INKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSLKEDIAAKITEIKAINEN 921 Query: 722 PTTLPIS----------FVSNRIEYKP---------------VETLALDNKESQQEQITI 756 + I +EYK +++LA + K+ Q E ++ Sbjct: 922 LEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSLANNYKDMQAENESL 981 Query: 757 NSITEDSKTLAKTXXXXXXXXXXXXXXXXXTSESVR--LDKKDDQLTINTVNSEDQQPKI 814 E+SK + + R ++K +QL T+ S+ +Q K Sbjct: 982 IKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLK-KTI-SDLEQTKE 1039 Query: 815 EVFVKAKEPVEEH----SITQNKQSVEDKSELDNFNKKSDLYKIISELK---------RG 861 E+ K+ +E+ S+ + K + +N NK S+L K EL+ + Sbjct: 1040 EIISKSDSSKDEYESQISLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKN 1099 Query: 862 ELNPTINFD--AIFQMNDYQMSVKQSFIHLNDFVTNYKNQISERYLIIKKELQSELSRLI 919 EL + A+ ++ + + +K+ I L T K Q++ L++ L L Sbjct: 1100 ELETKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQQLNS--------LRANLESLE 1151 Query: 920 DQNENLNVQFNNAKNLTTLQKEEMIRSLASDFAIAYKPSNSYEQLQKSGEIMRHVQRAIT 979 ++E+L Q L+K E IA K E++ + + + Q+ Sbjct: 1152 KEHEDLAAQ---------LKKYEE--------QIANKERQYNEEISQLNDEITSTQQENE 1194 Query: 980 ENEKKIESIQGSLKQLKTVYNSCCETIMNNINKLDNTLRFAKKEKDPLLLSNFDSV--TD 1037 +KK + ++G +K +K+ + I+ L+ ++ KK+ + S +S+ + Sbjct: 1195 SIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVE 1254 Query: 1038 NGLVEPNQLMDDLIDFSNTFDNISNEQLDDFIYENMDRN 1076 + V+ +L D+ F +L+D + + D+N Sbjct: 1255 SETVKIKELQDEC-----NFKEKEVSELEDKLKASEDKN 1288 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.307 0.128 0.354 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 133,317 Number of Sequences: 78 Number of extensions: 7477 Number of successful extensions: 125 Number of sequences better than 1.0e-05: 2 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 2 Number of HSP's that attempted gapping in prelim test: 34 Number of HSP's gapped (non-prelim): 11 length of query: 1139 length of database: 48,235 effective HSP length: 73 effective length of query: 1066 effective length of database: 42,541 effective search space: 45348706 effective search space used: 45348706 T: 11 A: 40 X1: 16 ( 7.1 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.6 bits) S2: 98 (42.4 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= MGEN-G37-01-000335 MG328 conserved hypothetical protein (756 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value MGEN-G37-01-000335 MG328 conserved hypothetical protein 1415 0.0 MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil pro... 206 2e-55 SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 100 3e-23 MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) 87 2e-19 SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 76 3e-16 SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 70 3e-14 SYNE-PCC-01-000727 sll1120 46 5e-07 SYNE-PCC-01-000943 sll1424 44 2e-06 MJAN-DSM-01-001277 MJ1254 hypothetical protein 42 5e-06 >MGEN-G37-01-000335 MG328 conserved hypothetical protein Length = 756 Score = 1415 bits (3662), Expect = 0.0 Identities = 729/756 (96%), Positives = 729/756 (96%) Query: 1 MAVDKELEISDFDNELDEKTLLKELVQRTNNILFSPSKITAIPFERNLLEKTFFGTVDEA 60 MAVDKELEISDFDNELDEKTLLKELVQRTNNILFSPSKITAIPFERNLLEKTFFGTVDEA Sbjct: 1 MAVDKELEISDFDNELDEKTLLKELVQRTNNILFSPSKITAIPFERNLLEKTFFGTVDEA 60 Query: 61 EKEKSIVSFFNWMIDLKVLDKKWDKNVLNHYANQLKTREEEQQTVDQTMAFQEVDDQSVL 120 EKEKSIVSFFNWMIDLKVLDKKWDKNVLNHYANQLKTREEEQQTVDQTMAFQEVDDQSVL Sbjct: 61 EKEKSIVSFFNWMIDLKVLDKKWDKNVLNHYANQLKTREEEQQTVDQTMAFQEVDDQSVL 120 Query: 121 TKEIKTGFQELKPSVITAEDDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTD 180 TKEIKTGFQELKPSVITAEDDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTD Sbjct: 121 TKEIKTGFQELKPSVITAEDDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTD 180 Query: 181 KVKEPEQFDDFYSIENLTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYN 240 KVKEPEQFDDFYSIENLTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYN Sbjct: 181 KVKEPEQFDDFYSIENLTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYN 240 Query: 241 NKELLLENADLKKQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQE 300 NKELLLENADLKKQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQE Sbjct: 241 NKELLLENADLKKQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQE 300 Query: 301 NRDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVX 360 NRDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPV Sbjct: 301 NRDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVL 360 Query: 361 XXXXXXXXXXXXTAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELL 420 TAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELL Sbjct: 361 NNQINELQNQLLTAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELL 420 Query: 421 FDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQ 480 FDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQ Sbjct: 421 FDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQ 480 Query: 481 KKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSXXXXXXXXXXXXXXKDSQNLFNVAQDK 540 KKALDEKLNGLTIQNQQLQDKIAELEEWNEEKS KDSQNLFNVAQDK Sbjct: 481 KKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQLKDSQNLFNVAQDK 540 Query: 541 LATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNK 600 LATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNK Sbjct: 541 LATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNK 600 Query: 601 LNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLENAKKELQFTPVTS 660 LNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLENAKKELQFTPVTS Sbjct: 601 LNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLENAKKELQFTPVTS 660 Query: 661 DEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEASDEDKPVEIKKPRIK 720 DEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEASDEDKPVEIKKPRIK Sbjct: 661 DEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEASDEDKPVEIKKPRIK 720 Query: 721 KRDFVIQNKDDKLAKLSKKERIQAYAERLAKINANE 756 KRDFVIQNKDDKLAKLSKKERIQAYAERLAKINANE Sbjct: 721 KRDFVIQNKDDKLAKLSKKERIQAYAERLAKINANE 756 >MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] Length = 1033 Score = 206 bits (525), Expect = 2e-55 Identities = 194/711 (27%), Positives = 324/711 (45%), Gaps = 136/711 (19%) Query: 153 VSFEELFNQPSEEINETKKPEVQIFSTDKVKEPEQFDDFYSIE-----------NLTKAI 201 VSFE Q + +QI +++ +P Q+D ++ NLT+ + Sbjct: 352 VSFEMTLLQEQLDKALKHNAALQIQLEEQLAKPLQYDQSPVLQERIELLQNQNTNLTQEL 411 Query: 202 NPVHKTIQYDQNDDQPFVVKRILKEQHPTKK--VDELDDYNNKELLLENADLKKQIDDLK 259 N + + + QN+ ++ R+ +E K+ + L + N +LE KQ++ L+ Sbjct: 412 NELQQKLFKSQNNS--LLLARLEEENRTLKQHLQNNLPEANQLNFVLE-----KQLEQLQ 464 Query: 260 ENNNDQIFDLEQE-------------IDDLKRRLSEEKSKHLHTKKLQDDL-LQENRDLY 305 ++ + +EQ I L+ ++ +++ + K+ L L E + + Sbjct: 465 QDKHSLTLQIEQYKFDSKKHQEQLALIPSLRSEINSLETEVISLKQTNQRLSLIERENNF 524 Query: 306 EQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKS-------SNVQQQLA--- 355 + + K + L+DE + LKQ + + +D LK + Q+QLA Sbjct: 525 LKTEIKQLRETKLNDENTKYRNLLKQYELMRADSDAKLKELEHEQHLAHQHHQEQLAQLQ 584 Query: 356 -----LLPVXXXXXXXXXXXXXTAREANQRLDLVEQENDFLKNELKKLHDNTS--NDENE 408 L+ A+ Q+ ++EQ+N L L+ +N N Sbjct: 585 RHNEALVKELDQVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNS 644 Query: 409 KYDDLLNQYELL------FDENETKFDKLQVKQQALNLDY-QKTISALKHENDVLLDEIE 461 + + LN E FD K Q++Q +L Q+ ++ K +N L D++ Sbjct: 645 ELQNQLNVLEFTHKEKTAFDSKTLTLTKQQLEQTQFDLSLTQEQLATFKQQNQSLTDKL- 703 Query: 462 WTRSKDNDFNNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSXXXXXXXX 521 + + N+ + S DE L L Q++ LQ+ +L++ Sbjct: 704 --MASETQLNHLQQS--------DENLTQLQTQHELLQESYNKLQD-----------EAN 742 Query: 522 XXXXXXKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDEL-------SGSENSN---NL 571 +QN + A +LA ++ N L +K +++++EL + EN N NL Sbjct: 743 HTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNELHDLNRVKTNWENLNTEHNL 802 Query: 572 L------------------AKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLS 613 L A++QA+HE+LQESY K+K + +++ LN+AN QYQDLLS Sbjct: 803 LQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQDLLS 862 Query: 614 AFEETNSELEKAKQSLSASDS---ENNQLKQQINS--------------LENAKKELQFT 656 A+E S K KQ L + E QL Q++++ L+ A LQ T Sbjct: 863 AYELLQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQAT 922 Query: 657 PVTSDEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEASDE-------- 708 P SDE L++ +++EK++L +N AL ++LQYFN+++++QT EIK DE Sbjct: 923 PPVSDELLEQFNQVQLEKQRLLQQNLALVHELQYFNELNSSQTHEIKTKQDETVKEVIIV 982 Query: 709 DKPVEI---KKPRIKKRDFVIQNKDDKLAKLSKKERIQAYAERLAKINANE 756 +K + + KKPR+KKRD VI+NK+D L KLSKKERIQAYAERLAKIN + Sbjct: 983 EKEIPVPPEKKPRLKKRDIVIENKEDALGKLSKKERIQAYAERLAKINGKQ 1033 Score = 202 bits (515), Expect = 2e-54 Identities = 157/626 (25%), Positives = 302/626 (48%), Gaps = 60/626 (9%) Query: 131 LKPSVITAEDDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTDKVKEPEQFDD 190 +KP+ +A K ATKQ ++L Q + + P V ++ K D Sbjct: 286 IKPAEDSAHQSAVLDKEIATKQAQLQQLQAQIELRQAQLETPPVTYMGVEEYKLLPVQD- 344 Query: 191 FYSIENLTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLENAD 250 + PV T+ ++ Q + K + +H +L++ K L + + Sbjct: 345 ----------VVPVQPTVSFEMTLLQEQLDKAL---KHNAALQIQLEEQLAKPLQYDQSP 391 Query: 251 LKKQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQN 310 + ++ +L +N N +L QE+++L+++L + ++ L +L++ ENR L + LQN Sbjct: 392 VLQERIELLQNQNT---NLTQELNELQQKLFKSQNNSLLLARLEE----ENRTLKQHLQN 444 Query: 311 KPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVXXXXXXXXXXX 370 N L+ + ++LE L+Q+K L+ Q++ K S Q+QLAL+P Sbjct: 445 NLPEANQLNFVLEKQLEQLQQDKHSLTLQIEQYKFDSKKHQEQLALIPSLRSEINSLETE 504 Query: 371 XXTAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELLFDENETKFDK 430 + ++ NQRL L+E+EN+FLK E+K+L + NDEN KY +LL QYEL+ +++ K + Sbjct: 505 VISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDENTKYRNLLKQYELMRADSDAKLKE 564 Query: 431 LQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQK--------- 481 L+ +Q + +Q+ ++ L+ N+ L+ E++ ++ + + FE+QK Sbjct: 565 LEHEQHLAHQHHQEQLAQLQRHNEALVKELDQVKATNFELGLAAQGFEQQKVVLEQKNSS 624 Query: 482 -----KALDEKLNGLTIQNQQLQDKIAELEEWNEEKSXXXXXXXXXXXXXXKDSQNLFNV 536 +A +E + L I N +LQ+++ LE ++EK+ + +Q ++ Sbjct: 625 LLASLQAAEENVQALGITNSELQNQLNVLEFTHKEKTAFDSKTLTLTKQQLEQTQFDLSL 684 Query: 537 AQDKLATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKL 596 Q++LAT ++ N +L +K+ E +L+ + S+ L +LQ HE+LQESY KL+ Sbjct: 685 TQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENLTQLQTQHELLQESYNKLQ------ 738 Query: 597 KKNKLNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLENAKKELQFT 656 ++AN Q F + +EL+ A Q L+ N +L + ++++N +L Sbjct: 739 -----DEANHTQQQ----FHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNELHDLNRV 789 Query: 657 PVT----SDEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEASDEDKPV 712 + EH + +KEQ+ E+ L Q+Q +++ ++K +E + Sbjct: 790 KTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLA-QIQAEHELLQESYNKVKAELNEIQIT 848 Query: 713 EIKKPRIKKRDF-----VIQNKDDKL 733 + + + +D ++Q+ +KL Sbjct: 849 NLNEANAQYQDLLSAYELLQSNHNKL 874 Score = 50.1 bits (118), Expect = 2e-08 Identities = 34/101 (33%), Positives = 49/101 (48%), Gaps = 22/101 (21%) Query: 109 MAFQEVDDQSVLTKEIKTGFQELKPSVITAEDDKDEIKPE-------------------- 148 M F E + Q VLTKEIK GF E+ PS IT + K ++ Sbjct: 1 MEFLEQEGQEVLTKEIKAGFCEITPSSITEQTTKPQLDETQLVDEYVHTKELETTPIPIS 60 Query: 149 -ATKQVSFEELFNQPS-EEINETKKPEVQIFSTDKVKEPEQ 187 ATK+V FEE+FN PS ++++E+ I T ++K + Sbjct: 61 FATKEVLFEEVFNTPSTQQVDESVLVNEYIELTQQIKNASE 101 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 99.8 bits (247), Expect = 3e-23 Identities = 152/820 (18%), Positives = 337/820 (41%), Gaps = 134/820 (16%) Query: 3 VDKELEISDFDNELDEKTLLKELVQRTNNILFSPSKITAIPFERNLLEKTFFGTVDEAEK 62 + KE + S+ +++ + K+L +++ + I + + + N L K E + Sbjct: 886 LQKEKDKSNVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVE 945 Query: 63 EKSIVSFFNWMIDLKVLDKKWDKNVLNHYANQLKTREEEQQTVDQTMAFQEVDDQSVLTK 122 KS + ++ K+ +K L AN K + E +++ + A +E ++S + Sbjct: 946 YKSRFQSHDNLV-AKLTEK------LKSLANNYKDMQAENESLIK--AVEESKNESSIQ- 995 Query: 123 EIKTGFQELKPSVITAEDDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTDKV 182 L+ + + +K+ + E + S E+ Q + I++ ++ + +I S Sbjct: 996 -----LSNLQNKIDSMSQEKENFQIE---RGSIEKNIEQLKKTISDLEQTKEEIIS---- 1043 Query: 183 KEPEQFDDFYSIENLTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNN- 241 K D++ S +L K T ND+ + + K + + EL Y N Sbjct: 1044 KSDSSKDEYESQISLLKEKLETATTA----NDENVNKISELTKTREELEA--ELAAYKNL 1097 Query: 242 -KELLLENADLKKQIDDLKENNN---DQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDL 297 EL + +K + ++KEN ++ LE+E + K++L+ ++ +K +DL Sbjct: 1098 KNELETKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQQLNSLRANLESLEKEHEDL 1157 Query: 298 LQENRDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNK----SSNVQQQ 353 + + EQ+ NK N ++N+E+ + +QE + + D L+ + S ++Q Sbjct: 1158 AAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQ 1217 Query: 354 LALLPVXXXXXXXXXXXXXTAREANQ---------------RLDLVEQENDFLKNELKKL 398 L E N+ ++ ++ E +F + E+ +L Sbjct: 1218 SNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSEL 1277 Query: 399 HDN--TSNDENEKYDDLLNQYELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDVL 456 D S D+N KY +L + E + +E + K +L+++ + + +S K +++ Sbjct: 1278 EDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKIT-----NLSKAKEKSESE 1332 Query: 457 LDEIEWTRSKD------------NDFNNTKNSFEEQKKALDEKLNGLTIQNQQ----LQD 500 L ++ T S++ N+ +FE+++K L+E + +T + + L+D Sbjct: 1333 LSRLKKTSSEERKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLED 1392 Query: 501 KIAELEEWNEEKSXXXXXXXXXXXXXXKDSQNLFNVAQDKLATLEEVNLALNEKI--ND- 557 ++ L+ NE K+ + L Q+ + +L++ L+ +KI ND Sbjct: 1393 ELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDE 1452 Query: 558 ------------------------------------LEDELSGS----ENSNNLLAKLQA 577 LE+E S E S ++ KL++ Sbjct: 1453 KLLSIERDNKRDLESLKEQLRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLES 1512 Query: 578 DHEI----LQESYGKLKTDFEKLKKNK------LNDANEQYQDLLSAFEETNSELEKAKQ 627 E L+ S ++ EKL+++K + + + DL+S E+ ++E+ K Sbjct: 1513 TIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKS 1572 Query: 628 SLSASDSENNQLKQQINSLENAKKELQFTPVTSDEHLDELETLKIEKEQLFLENQALQNQ 687 L ++L+ L NA+++++ + +LE ++ E + E ++ Q + Sbjct: 1573 KLRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEE 1632 Query: 688 LQYFN------DISANQTEEIKEASDEDKPVEIKKPRIKK 721 + + + T++ + S+E++ E++K +++K Sbjct: 1633 KELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEK 1672 Score = 85.9 bits (211), Expect = 4e-19 Identities = 150/748 (20%), Positives = 311/748 (41%), Gaps = 103/748 (13%) Query: 89 NHYANQLKTREEEQQTVDQTMAFQEVDDQSVLTKEI-KTG-------------FQELKPS 134 ++YA+++K Q D + ++++ S+LT E+ +TG F E Sbjct: 656 DNYASRIK-----QFKKDSYFSKVDMNEDSILTPELDETGLPKVYFSTYFIQLFNENIYR 710 Query: 135 VITA-EDDKDEIKPEATKQVSFEE---LFNQPSEEINETKKPEVQIFSTDK--------- 181 + TA D DE E ++SFEE L Q ++ E + + ST + Sbjct: 711 IRTALSHDPDE---EPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIAL 767 Query: 182 VKEPEQFDDFYSIENLTKAINPVHKTIQYDQN--DDQPFVVKRILKEQHPTKKVDELDDY 239 E ++ D+ Y I +N H +++ + + + + V+ L E + V E D Sbjct: 768 TNEHKELDEKYQI------LNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDK 821 Query: 240 NNKELLLE-NADLKKQIDDLK--ENNNDQIFDLEQEIDD-----------LKRRLS--EE 283 N+ LLE + + KQ D +K E + I +++ +D L R + EE Sbjct: 822 ENQTALLEYKSTIHKQEDSIKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEE 881 Query: 284 KSKHLHTKKLQDDL--LQENRDLYEQLQNKPVAINPLSDEVNE---ELENLKQEKALLSD 338 K+L +K + ++ +E + L E + K I +++ + E + NL +EK +S Sbjct: 882 NCKNLQKEKDKSNVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISK 941 Query: 339 QLDALK-------NKSSNVQQQLALLPVXXXXXXXXXXXXXTAREANQRLDLVEQENDFL 391 +L K N + + ++L L A E ++ ++ N L Sbjct: 942 ELVEYKSRFQSHDNLVAKLTEKLKSLANNYKDMQAENESLIKAVEESKNESSIQLSN--L 999 Query: 392 KNELKKLHDNTSNDENEK--YDDLLNQYELLFDENETKFDKLQVKQQALNLDYQKTISAL 449 +N++ + N + E+ + + Q + + E +++ K + +Y+ IS L Sbjct: 1000 QNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTKEEIISKSDSSKDEYESQISLL 1059 Query: 450 KHE-------NDVLLDEI-EWTRSKDN------DFNNTKNSFEEQKKALDEKLNGLTIQN 495 K + ND +++I E T++++ + N KN E + + ++ L + Sbjct: 1060 KEKLETATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLETSEKALKEVKENE 1119 Query: 496 QQLQDKIAELEEWNEEKSXXXXXXXXXXXXXXKDSQNLFNVAQDKLATLEEVNLALNEKI 555 + L+++ +LE+ E K+ ++L + + NE+I Sbjct: 1120 EHLKEEKIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEI 1179 Query: 556 NDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAF 615 + L DE++ ++ N + K + E ++ + LKK++++ N Q ++L Sbjct: 1180 SQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKN 1239 Query: 616 EETNSELEKAKQSLSASDSENNQLKQQINSLENAKKELQFTPVTSDEHLDELETLKIE-- 673 E + L ++ +S+ + + +L+ + N E EL+ S++ + L+ E Sbjct: 1240 ETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESE 1299 Query: 674 --KEQLFLENQALQNQLQYFNDI------SANQTEEIKEASDEDKPVEIKKPRIKKRDFV 725 KE+L + L+ QL+ ++ S ++ +K+ S E++ ++ K + Sbjct: 1300 KIKEELDAKTTELKIQLEKITNLSKAKEKSESELSRLKKTSSEERKNAEEQLEKLKNEIQ 1359 Query: 726 IQN----KDDKLAKLSKKERIQAYAERL 749 I+N K+ KL Q Y+E++ Sbjct: 1360 IKNQAFEKERKLLNEGSSTITQEYSEKI 1387 Score = 85.1 bits (209), Expect = 7e-19 Identities = 171/773 (22%), Positives = 313/773 (40%), Gaps = 122/773 (15%) Query: 4 DKELEISDFDNELDEKTLLKELVQRTNNILFSPSKITAIPFERNL--LEKTFFGTVDEAE 61 + +++S+ N++D + KE Q I E+N+ L+KT E Sbjct: 991 ESSIQLSNLQNKIDSMSQEKENFQ-----------IERGSIEKNIEQLKKTISDLEQTKE 1039 Query: 62 K--EKSIVSFFNWMIDLKVLDKKW-------DKNVLNHYANQLKTREEEQQTVDQTMAFQ 112 + KS S + + +L +K D+NV N + KTREE + + + Sbjct: 1040 EIISKSDSSKDEYESQISLLKEKLETATTANDENV-NKISELTKTREELEAELAAYKNLK 1098 Query: 113 -----EVDDQSVLTKEIKTGFQELKPSVITAEDDKDEIKPEATK-QVSFEELFNQPSEEI 166 +++ KE+K + LK I E + E K + + + E L + + Sbjct: 1099 NELETKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQQLNSLRANLESLEKEHEDLA 1158 Query: 167 NETKKPEVQIFSTDKVKEPEQFDDFYSIENLTKAINPVHKTIQYDQNDDQPFVVKRI--L 224 + KK E QI + KE + ++ + + + +++I+ +ND+ VK + Sbjct: 1159 AQLKKYEEQIAN----KERQYNEEISQLNDEITSTQQENESIK-KKNDELEGEVKAMKST 1213 Query: 225 KEQHPTKKVDELDDYNN--KELLLEN----ADLKKQIDDLKENN------NDQIFDLEQE 272 E+ K E+D N KEL +N A L + I ++ D+ E+E Sbjct: 1214 SEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKE 1273 Query: 273 IDDLKRRL--SEEK-SKHLH----TKKLQDDLLQENRDLYEQLQNKPVAINPLSDEVNEE 325 + +L+ +L SE+K SK+L ++K++++L + +L QL+ K ++ ++ E Sbjct: 1274 VSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLE-KITNLSKAKEKSESE 1332 Query: 326 LENLK----QEKALLSDQLDALKN----KSSNVQQQLALLPVXXXXXXXXXXXXXTARE- 376 L LK +E+ +QL+ LKN K+ +++ LL E Sbjct: 1333 LSRLKKTSSEERKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLED 1392 Query: 377 ----ANQRLDLVEQENDFLKNELKKLHDNTSNDE--NEKY-------DDLL--------N 415 +L +E D ++EL+K+ + SNDE EK D++L N Sbjct: 1393 ELIRLQNENELKAKEIDNTRSELEKV--SLSNDELLEEKQNTIKSLQDEILSYKDKITRN 1450 Query: 416 QYELLFDENETKFDKLQVKQQALNLDYQKT-----ISALKHENDVLLDEIEWTRSKDNDF 470 +LL E + K D +K+Q K + L+ E+ E+E ++ Sbjct: 1451 DEKLLSIERDNKRDLESLKEQLRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKL 1510 Query: 471 NNTKNS------------------FEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEK 512 +T S E+ KK+ +E + L + L +I E E+ EE Sbjct: 1511 ESTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEEL 1570 Query: 513 SXXXXXXXXXXXXXXKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDELSGSENSNNLL 572 Q L N AQ+K+ E N L K+ D+E EL + + Sbjct: 1571 KSKLRIEAKSGSELETVKQELNN-AQEKIRINAEENTVLKSKLEDIERELKDKQAE---I 1626 Query: 573 AKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELEKAKQSLSAS 632 Q + E+L +L+ + + ++ K + E+ + + F+ S+L++ L Sbjct: 1627 KSNQEEKELLTSRLKELEQELDSTQQ-KAQKSEEERRAEVRKFQVEKSQLDEKAMLL--- 1682 Query: 633 DSENNQLKQQINSLENAKKELQFTPVTSDEHLDELETLKIEKEQLFLENQALQ 685 +++ N L +N + K++ T+D E+E L E + L EN L+ Sbjct: 1683 ETKYNDL---VNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLK 1732 Score = 52.4 bits (124), Expect = 5e-09 Identities = 88/368 (23%), Positives = 163/368 (44%), Gaps = 36/368 (9%) Query: 10 SDFDNELDEK--TLLKELVQRTNNILFSPSKITAIPFERNLLEKTFFGTVDEA--EKEKS 65 S E EK TL EL++ N + K I R+ LEK DE EK+ + Sbjct: 1377 STITQEYSEKINTLEDELIRLQNE---NELKAKEIDNTRSELEKVSLSN-DELLEEKQNT 1432 Query: 66 IVSFFNWMI---------DLKVLDKKWD-KNVLNHYANQLKTREEEQQTVDQTMAFQEVD 115 I S + ++ D K+L + D K L QL+ +E + V++ + E + Sbjct: 1433 IKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESKAKVEEGLKKLE-E 1491 Query: 116 DQSVLTKEIKTGFQELKPSVITAEDDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQ 175 + S E++ + +K T E ++ E+K +E Q + E K +Q Sbjct: 1492 ESSKEKAELEKSKEMMKKLESTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIK-NLQ 1550 Query: 176 IFSTD---KVKEPEQ-FDDFYSIENLTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTK 231 +D ++ E E+ ++ S + +T++ + N+ Q + RI E++ Sbjct: 1551 HEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQELNNAQEKI--RINAEENTVL 1608 Query: 232 KVDELDDYNNKELLLENADLKKQIDDLKENNNDQIFDLEQEIDDLKRRLS---EEKSKHL 288 K +L+D +EL + A++K ++ KE ++ +LEQE+D +++ EE+ + Sbjct: 1609 K-SKLEDIE-RELKDKQAEIKSNQEE-KELLTSRLKELEQELDSTQQKAQKSEEERRAEV 1665 Query: 289 HTKKLQDDLLQENRDL----YEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALK 344 +++ L E L Y L NK A D V + ++ +QE L+ +LD LK Sbjct: 1666 RKFQVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLK 1725 Query: 345 NKSSNVQQ 352 ++S +++ Sbjct: 1726 AENSKLKE 1733 >MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) Length = 1805 Score = 86.7 bits (213), Expect = 2e-19 Identities = 146/679 (21%), Positives = 282/679 (41%), Gaps = 130/679 (19%) Query: 140 DDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTDKVKEPEQFDDFYSIENLTK 199 D K ++P + F++ + Q E N +K +V +KE + +D ++NL Sbjct: 5 DKKPSLQP--IYDIGFDDGYLQSEYEKNRSKT-DVDKIENQLLKEIKSLED--ELKNLKG 59 Query: 200 AINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLEN-ADLKKQIDDL 258 N Q +D P + K+I + ++ +++Y N + + D ++D+L Sbjct: 60 LKN---------QAEDNPELDKKINHLEVDLNRL--VNEYKNFQFQKNHMVDKVSELDNL 108 Query: 259 KENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKPVAINPL 318 +++ L+QE D SK+ + Q + + D + ++N+ IN L Sbjct: 109 TRFYKNELTRLQQENADFLN------SKYANLANFQANYHNKLNDFHRLIENQNQTINRL 162 Query: 319 SDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVXXXXXXXXXXXXXTAREAN 378 + ++N + L+ + + L+N + V+++ LL V E Sbjct: 163 NQKINGN-------QNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNELDQL-----ENQ 210 Query: 379 QRLDLVEQENDFLK-----NELKKLHDNTSNDENEKYDDLLNQYELLFDENETKFDKLQV 433 +RL +E EN + + NEL+ +++N ++ + +QY+ DE K+Q+ Sbjct: 211 KRLLSIEYENTYRELVSADNELQNVYENIDQNQIQ----FKHQYQTYRDELSQLERKIQL 266 Query: 434 KQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQKKALDEKLNGLTI 493 +Q L +D + + + D ++ R + D + SF++ G+T Sbjct: 267 TKQEL-VDKESALRVKIDDADFYIN----ARLAELDDVAKQLSFQD----------GITK 311 Query: 494 QN-QQLQDKIAELEEWNEEKSXXXXXXXXXXXXXXKDSQNLFNVAQDKLATLEEVNLALN 552 QN Q ++DK+ L N+EK + FN+ Q L + ++ Sbjct: 312 QNAQHVEDKLVAL---NKEKDRLNT-----------QKEAFFNLRQSALIDINKLQQENE 357 Query: 553 EKINDLEDELSGSENS-NNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQ-- 609 LE + + E ++ L KL+ +++ LQ + K + + LN E ++ Sbjct: 358 LFAKHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKR 417 Query: 610 -DLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLENAKKEL--------QFTPVTS 660 ++ + + + E E ++S + N++KQ +LE AKKEL Q V S Sbjct: 418 REIDTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDS 477 Query: 661 D-------------EHLDELETLKIEK------EQLFLENQALQNQLQYFNDISANQTE- 700 + + L+EL +K +K E LF E Q Q+Q + N++ A Q E Sbjct: 478 EAIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQEL 537 Query: 701 -EIKEA--------SDEDKPV------------EIKKPRIKKRDF--VIQNKDDKLAKLS 737 E K A D++K + ++K + K DF ++QN+ + L + Sbjct: 538 FEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEK 597 Query: 738 KK-ERIQAYAERLAKINAN 755 +K + + Y ER A + +N Sbjct: 598 QKLFQERTYFERNAAVLSN 616 Score = 86.3 bits (212), Expect = 3e-19 Identities = 145/716 (20%), Positives = 298/716 (41%), Gaps = 121/716 (16%) Query: 54 FGTVDEAEKEKSIVS--FFNWMIDLKVLDKKWDKNVLNHYANQLKTREEEQQTVDQTMAF 111 + +D+ E +K ++S + N +L D + N NQ++ + + Q D+ Sbjct: 201 YNELDQLENQKRLLSIEYENTYRELVSADNELQNVYENIDQNQIQFKHQYQTYRDELSQL 260 Query: 112 Q---EVDDQSVLTKE----IKTGFQELKPSVITAEDDKDEIKPEATKQVSFEELFNQPSE 164 + ++ Q ++ KE +K + + AE D + KQ+SF++ + + Sbjct: 261 ERKIQLTKQELVDKESALRVKIDDADFYINARLAELD------DVAKQLSFQDGITKQNA 314 Query: 165 EINETKKPEVQIFSTDKVKEPEQFDDFYS--------IENLTKAINPVHKTIQYDQNDDQ 216 + E K + + +K + Q + F++ I L + K +++ QN+ + Sbjct: 315 QHVEDK---LVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNEFE 371 Query: 217 PFVVKRILKEQHPTKKVD-ELDDYNNKELLLENADLKKQIDDLKENNNDQIFDLEQEIDD 275 +LK + K + +++++ N E+A +++ N ++F+ +EID Sbjct: 372 QKQSDSLLKLETEYKALQHKINEFKN-----ESATKSEEL----LNQERELFEKRREIDT 422 Query: 276 LKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKPVAINPLSDEVNEELENLKQEKAL 335 L L++ ++ H ++ L + ++ + QN A E+++E L Q+K + Sbjct: 423 L---LTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYA----KKELDKERNLLDQQKKV 475 Query: 336 LSDQLDALKNKSSNVQQQLALLPVXXXXXXXXXXXXXTAREANQRLDLVEQENDFLKNEL 395 S+ + LK K + +++L L + Q+ D E E F + +L Sbjct: 476 DSEAIFQLKEKVAQERKELEELYLVK----------------KQKQDQKENELLFFEKQL 519 Query: 396 KKLHDNTSNDENEKYDDLLNQYELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDV 455 K+ + N+ K +L L E F KL+ K++ LN Q+ + Sbjct: 520 KQHQADFENELEAKQQELFEAKHAL----ERSFIKLEDKEKDLNTKAQQIANEFS----- 570 Query: 456 LLDEIEWTRSKDNDF-----NNTKNSFEEQKKALDEKL---NGLTIQNQQLQDKIAELEE 507 +++ +SK DF N +N +E++K E+ + + +LQ K EL + Sbjct: 571 ---QLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNRLQQKREELLQ 627 Query: 508 WNEEKSXXXXXXXXXXXXXXKDSQNLFNVAQDK--LATLEEVNLALNEKINDLEDELSGS 565 E + + L N + K +A++E+ L +K+ D S Sbjct: 628 QKETLDQLTKSF---------EQERLINQREHKELVASVEKQKEILGKKLQDFSQT---S 675 Query: 566 ENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELEKA 625 N++ LA+ + + ++ + E +K LND N E ++L + Sbjct: 676 LNASKNLAEREMAIKFKEK-------EIEATEKQLLNDVNNA--------EVIQADLAQL 720 Query: 626 KQSLSASDSENNQLKQQINSLEN-AKKELQFTPVTSDEHLDELETLKIEKEQLFLENQA- 683 QSL+ SE KQ+I N + K+L ++ + L EL+TL+ ++Q +NQA Sbjct: 721 NQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQAY 780 Query: 684 -------LQNQLQYFNDISANQTEEI----KEASDEDKPVEIKKPRIKKRDFVIQN 728 L + Q F ++ QT E+ + SD+ + + +++ + ++ + N Sbjct: 781 FEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNN 836 Score = 77.0 bits (188), Expect = 2e-16 Identities = 155/802 (19%), Positives = 323/802 (40%), Gaps = 112/802 (13%) Query: 10 SDFDNELDEKTLLKELVQRTNNILFSPSKITAIPFERNLLEKTFFGTVDEAEKEKSIVSF 69 +DF+NEL+ K +EL + + + S K+ + N + + + +KS + Sbjct: 524 ADFENELEAKQ--QELFEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSAD 581 Query: 70 FNWMIDLKVLDKKWDKNVLNH-----------YANQLKTREEE----QQTVDQ-TMAFQE 113 F M+ + + + +K L +N+L+ + EE ++T+DQ T +F++ Sbjct: 582 FELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNRLQQKREELLQQKETLDQLTKSFEQ 641 Query: 114 VDDQSVLTKEIKTGFQELKPSVITAEDDKDEI--KPEATKQVSFEELFNQPSEEINETKK 171 E +E K V + E K+ + K + Q S N E+ K Sbjct: 642 ---------ERLINQREHKELVASVEKQKEILGKKLQDFSQTSLNASKNLAEREM-AIKF 691 Query: 172 PEVQIFSTDKVKEPEQFDDFYSIENLTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTK 231 E +I +T+K + +D + E + + +++++ ++++ Q K+ + + H Sbjct: 692 KEKEIEATEK----QLLNDVNNAEVIQADLAQLNQSLNQERSELQN--AKQRIADFHN-- 743 Query: 232 KVDELDDYNNKELLLENADLKKQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTK 291 D L N EL L+ +++ L+ N + + + +L+ EK L+ + Sbjct: 744 --DSLKKLNEYELSLQKR--LQELQTLEANQKQHSYQNQAYFEGELDKLNREKQAFLNLR 799 Query: 292 KLQ----DDLLQENRDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKS 347 K Q D + Q D ++ L + ++ + E+N N ++ L DQL +K Sbjct: 800 KKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFLNHDADQKSLQDQLATVKETQ 859 Query: 348 SNVQQQLALLPVXXXXXXXXXXXXXTAREANQRLDLVEQENDFLKNELKKLHDNTSNDEN 407 + + + L RE + + ++ ++L+K+++ T E+ Sbjct: 860 KLIDLERSAL-------------LEKQREFAENVAGFKRHWSNKTSQLQKIYELTKKQES 906 Query: 408 EK----------YDDLLNQYELLFDENETKFDKLQVKQQALN----------LDYQKTIS 447 E+ + DL Y++ + + +F +++ KQ+ L+ L+ Sbjct: 907 EQTQKETELKIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQ 966 Query: 448 ALKHE-NDVLLDEIEWTRS------KDNDFNNTKNSFEEQKKALDEKLNG----LTIQNQ 496 AL+++ D + ++E R + FN S +Q++ L +K+ L +NQ Sbjct: 967 ALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHYELKKRNQ 1026 Query: 497 QLQDKIAELEEWNEEKSXXXXXXXXXXXXXXKDSQNLFNVAQDKLATLEEVNLALNEKIN 556 L K L +++ K+ + + +L LE++ +L++ Sbjct: 1027 FLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDEAKKRELEELEKIRRSLSQSNV 1086 Query: 557 DLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKN---KLNDANEQYQDLLS 613 +LE + L K+Q + +I ++ F +KN N+AN + L+ Sbjct: 1087 ELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSNEANAKKAFLIK 1146 Query: 614 AFEETNSELEKAKQSLSASDSENNQLKQQINSLENAKKELQFTPVTSDEHLDELETLKIE 673 S L+ K++L+ E ++ +Q KKELQ + +LE K E Sbjct: 1147 RLRSFASNLKLQKEALAIQKLEFDKRDEQ------QKKELQQATL-------QLEQFKFE 1193 Query: 674 KEQLFLENQ----ALQNQLQYFNDISANQTEEIKEASDEDKPVEIKKPRIKKRDFVIQNK 729 K+ +E Q A++ Q + +D +++ E + + K + + +Q K Sbjct: 1194 KQNFDIEKQRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQK 1253 Query: 730 DDKLAKLSKKERIQAYAERLAK 751 L L KE ++ ++L K Sbjct: 1254 YTNL--LDLKENLERTKDQLDK 1273 Score = 68.9 bits (167), Expect = 5e-14 Identities = 143/709 (20%), Positives = 282/709 (39%), Gaps = 90/709 (12%) Query: 102 QQTVDQTMAFQEVDD-QSVLTKEIKTGFQELKPSVITAEDDKDEIKPEATKQVSFEELFN 160 Q ++ + +VD ++ L KEIK+ ELK + ++ E PE K+++ E+ Sbjct: 24 QSEYEKNRSKTDVDKIENQLLKEIKSLEDELKN--LKGLKNQAEDNPELDKKINHLEV-- 79 Query: 161 QPSEEINETKKPEVQI-FSTDKVKEPEQFDDFYSIE------------------------ 195 + +NE K + Q DKV E + FY E Sbjct: 80 DLNRLVNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQA 139 Query: 196 NLTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLENADLKKQI 255 N +N H+ I+ +Q + R+ ++ + + + +N LL+N ++ + Sbjct: 140 NYHNKLNDFHRLIE-----NQNQTINRLNQKINGNQNL-----IDNNVALLQNPNITVEK 189 Query: 256 DDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKPVAI 315 + N DQ+++ ++++ KR LS E D+ LQ ++YE + + Sbjct: 190 KNYLLNVIDQLYNELDQLENQKRLLSIEYENTYRELVSADNELQ---NVYENIDQNQIQF 246 Query: 316 NPLSDEVNEELENLKQE----KALLSDQLDALKNKSSN----VQQQLALL-PVXXXXXXX 366 +EL L+++ K L D+ AL+ K + + +LA L V Sbjct: 247 KHQYQTYRDELSQLERKIQLTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQ 306 Query: 367 XXXXXXTAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELLFDENET 426 A+ +L + +E D L N K+ N + L + EL E Sbjct: 307 DGITKQNAQHVEDKLVALNKEKDRL-NTQKEAFFNLRQSALIDINKLQQENELFAKHLEH 365 Query: 427 KFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQKKALDE 486 + ++ + KQ L + AL+H+ + +E + +K + N + E+++ +D Sbjct: 366 QQNEFEQKQSDSLLKLETEYKALQHKINEFKNE---SATKSEELLNQERELFEKRREIDT 422 Query: 487 KLNGLTIQ-------NQQLQDKIAELEEWNEE----KSXXXXXXXXXXXXXXKDSQNLF- 534 L +++ +Q L+DK E+++ + K DS+ +F Sbjct: 423 LLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQ 482 Query: 535 ---NVAQDKLATLEEVNLALNEKINDLEDEL-----SGSENSNNLLAKLQADHEILQESY 586 VAQ++ LEE+ L +K + E+EL ++ + +L+A + L E+ Sbjct: 483 LKEKVAQER-KELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAK 541 Query: 587 GKLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSL 646 L+ F KL ++K D N + Q + + F + ++ K+ +E L+Q+ L Sbjct: 542 HALERSFIKL-EDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKL 600 Query: 647 ENAKKELQFTPVTSDEHLDELETLKIEKEQLFLENQALQNQLQYF-NDISANQTEEIKEA 705 + + L + ++E+L + + L + F + NQ E + Sbjct: 601 FQERTYFERNAAVLSNRLQQ------KREELLQQKETLDQLTKSFEQERLINQREHKELV 654 Query: 706 SDEDKPVEIKKPRIKKRDFVIQNKDDKLAKLS-----KKERIQAYAERL 749 + +K EI +++ N LA+ K++ I+A ++L Sbjct: 655 ASVEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQL 703 Score = 64.7 bits (156), Expect = 1e-12 Identities = 144/742 (19%), Positives = 299/742 (40%), Gaps = 105/742 (14%) Query: 94 QLKTREEEQQTVDQT---MAFQEVD-DQSVLTKEIKTGFQELKPSVITAE---DDKDEIK 146 +L ++E +QT +T +AF ++ D V + F++++ + + +++K Sbjct: 899 ELTKKQESEQTQKETELKIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVK 958 Query: 147 PEATKQVSFEELFNQPSEEIN---ETKKPEVQIFSTDKVKEPEQFDDFYSIENLTKAINP 203 E + F+ L NQ + + E ++ + Q+ E LTK I Sbjct: 959 LELDNR--FQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQA 1016 Query: 204 VHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLENADL----KKQIDDLK 259 H ++ +N KR+ ++ ++ D+ ++ K+ E D K+++++L+ Sbjct: 1017 FHYELK-KRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDEAKKRELEELE 1075 Query: 260 ENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYE------------- 306 + L Q +L+R+ + + + K+Q + Q NRD Sbjct: 1076 KIRRS----LSQSNVELERKREKLATDFTNLNKVQHNT-QINRDQLNSQIRQFLLERKNF 1130 Query: 307 -------------------------QLQNKPVAINPLSDEVNEELENLKQEKALLSDQLD 341 +LQ + +AI L + +E + + ++A L + Sbjct: 1131 QRFSNEANAKKAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQF 1190 Query: 342 ALKNKSSNVQQQLALLPVXXXXXXXXXXXXXTAREANQRL-DLVEQENDFLKNELKKLHD 400 + ++ ++++Q L+ + + NQ+L +L +L N+ K + Sbjct: 1191 KFEKQNFDIEKQRQLVAIKTQCEKLSDEK----KALNQKLVELKNLSQTYLANKNKA--E 1244 Query: 401 NTSNDENEKYDDLLNQYELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDVLL--- 457 + +KY +LL+ E L E D+L K +++ K + L+ E LL Sbjct: 1245 YSQQQLQQKYTNLLDLKENL----ERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQ 1300 Query: 458 ----DEIEWTRSKDNDFNNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKS 513 D+ + + + + N E ++ L+++++ Q +Q D I + ++K Sbjct: 1301 RIVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKE 1360 Query: 514 XXXXXXXXXXXXXXKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDELSGSENSNNLLA 573 N F + E L K+ +L+ L NSNN Sbjct: 1361 GELQKLLVELETRKTKLNNDFAKFSRQREEFENQRL----KLLELQKTLQTQTNSNNF-- 1414 Query: 574 KLQADHEILQESY--GKLKTDFEKLK--KNKLNDANEQYQDLLSAFEETNSE----LEKA 625 K +A EI + SY G + +F+K + KNK + E ++ + E S+ L++ Sbjct: 1415 KTKAIQEI-ENSYKRGMEELNFQKKEFDKNK-SRLYEYFRKMRDEIERKESQVKLVLKET 1472 Query: 626 KQSLSASDSENNQLKQQINSLENAKKELQFTPVTSDEHLDELETLKIEKEQLFLENQALQ 685 ++ + +++ N+L + N+++ +KEL+ D+ +D + E +L EN+ LQ Sbjct: 1473 QRKANLLEAQANKLNIEKNTIDFKEKELKAFKDKVDQDIDSTNKQRKELNELLNENKLLQ 1532 Query: 686 NQL----QYFN--DISANQTEEIKEASDEDKPVEIKK--PRIKKRDFVIQNKDDKLAKL- 736 L + N D N+ E + DK + + + R+K + Q + ++L Sbjct: 1533 QSLIERERAINSKDSLLNKKIETIKRQLHDKEMRVLRLVDRMKLAEQKYQTEINRLRTQT 1592 Query: 737 --SKKERIQAYAERLAKINANE 756 S+K+ I+ + L KIN N+ Sbjct: 1593 FDSEKQDIKNFFPPLFKINGND 1614 >SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 Length = 875 Score = 76.3 bits (186), Expect = 3e-16 Identities = 117/558 (20%), Positives = 222/558 (39%), Gaps = 88/558 (15%) Query: 259 KENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKPVAINPL 318 K N ++ DL Q +RR+S K+ + K +DL + ++ +L K Sbjct: 247 KNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKK------- 299 Query: 319 SDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLA------LLPVXXXXXXXXXXXXX 372 +E+E LK+E S QL K K+S++ Q++ + + Sbjct: 300 ----GKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLL 355 Query: 373 TAREANQRL-DLVEQE------------NDFLKNELKKLHDNTSNDENEKYDDLLNQYEL 419 + +R+ DL E++ N L+N +L NT ++Y+D+ E Sbjct: 356 QFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQ 415 Query: 420 LF----DENETKFDKLQVKQQALNLDYQK------------TISALKHENDVLLDEIEWT 463 DE ++L V Q+ L + Q+ +S + + LLD+ T Sbjct: 416 KMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQT 475 Query: 464 RSKDNDFNN----------TKNSFEEQKKALDEKLNGLTIQNQQL-----------QDKI 502 N N +EE+ K L+ + + L+ Q Q+ +D + Sbjct: 476 AKNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLV 535 Query: 503 AELEEWNEEKSXXXXXXXXXXXXXXKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDEL 562 +LE N E S S L V QD+L L +N+ ++ E+++ Sbjct: 536 KKLEAKNIEISQISGKEQSLTEKNENLSNELKKV-QDQLEKLNNLNITTK---SNYENKI 591 Query: 563 SGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSEL 622 S + N ++ L ++++ L++ +L ++K+N+ D + L AF++ N +L Sbjct: 592 S---SQNEIVKALVSENDTLKQRIQQL----VEIKENEQKD----HTTKLEAFQKNNEQL 640 Query: 623 EKAKQSLSASDSENNQLKQQINSLENA--KKELQFTPVTSDEHL--DELETLKIEKEQLF 678 +K + + +L++Q L+N KKE SD ++ LK EK+ + Sbjct: 641 QKLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDIT 700 Query: 679 LENQALQNQLQYFNDISANQTEEIKEASD--EDKPVEIKKPRIKKRDFVIQNKDDKLAKL 736 E LQ+ L+ +++ N ++++ E K E+++ + KR+ + K Sbjct: 701 AEKLELQDNLESLEEVTKNLQQKVQSQKRELEQKIKELEEIKNHKRNEPSKKGTQNFTKP 760 Query: 737 SKKERIQAYAERLAKINA 754 S + A L N+ Sbjct: 761 SDSPKKNATTSNLFPNNS 778 >SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 Length = 1928 Score = 69.7 bits (169), Expect = 3e-14 Identities = 90/387 (23%), Positives = 167/387 (43%), Gaps = 66/387 (17%) Query: 402 TSND--ENEKYDDLLNQYELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDE 459 +SND +K+++ +N+ + E E+K L+ K Q KT++ L++ D+L E Sbjct: 856 SSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQ-------KTVNELENTQDLLNQE 908 Query: 460 IEWTRSKDNDFNNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSXXXXXX 519 E R ++ N K S E +K Q D ++E +E + EK Sbjct: 909 KENLRKNESLLNRVKTSSETLQK--------------QFDDLVSEKDEISREK----LEV 950 Query: 520 XXXXXXXXKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADH 579 + Q L +++ ATLE+++ NE I + D N ++K Q+ Sbjct: 951 AQNLEEAHQKIQGLQETIREREATLEKLHSKNNELIKQISD-------LNCDISKEQSSQ 1003 Query: 580 EILQESYGKLKTDFEKLKK--NKLNDANEQYQDLLSAFEETNS----ELEK----AKQSL 629 +++ES KL+ + ++LK N + + + D LS+ EE LEK A L Sbjct: 1004 SLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRL 1063 Query: 630 SASDSENNQLKQQ-----------INSLENAKKELQFTPVTSDEHLDELETLKIEKEQLF 678 + +EN+ L+ + N L+N + EL D H EL T +++ Sbjct: 1064 QSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAV 1123 Query: 679 LENQALQNQLQ----YFNDISANQTEEIKEASDEDKPVEIKKPRIKKRDFVIQNKDDKL- 733 E+ + +L+ + +N + +E S+ + E K+ KKR+ ++++ +D Sbjct: 1124 SEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQR--ETKEQEQKKRNSLVESLNDSKI 1181 Query: 734 ----AKLSKKERIQAYAERLAKINANE 756 A+LS++ + Y + N+ E Sbjct: 1182 KELEARLSQEISLNQYLNKRISGNSVE 1208 Score = 69.3 bits (168), Expect = 4e-14 Identities = 160/810 (19%), Positives = 331/810 (40%), Gaps = 119/810 (14%) Query: 4 DKELEISDFDNELDE-KTLLKELVQRTNNILFSPSKITAIPFERNLLEKTFFGTVDEAEK 62 +KE E+ ++D K L ++ ++ + KITA L E T ++ Sbjct: 1093 NKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITA-----ELKETRIQLTEYKSNY 1147 Query: 63 EKSIVSFFNWMIDLKVLDKKWDKNVLNHYANQLKTREEEQQTVDQTMAFQEVDDQSVLTK 122 +K + N+ + K ++K +N L N K +E E + + Q ++ + ++ + Sbjct: 1148 QKIKEEYSNFQRETKEQEQK-KRNSLVESLNDSKIKELEAR-LSQEISLNQYLNKRISGN 1205 Query: 123 EIKTGFQELKPSVITAEDDKDE---IKPEATKQVSFEELFNQPSEEINETKKPEVQIFST 179 ++T + S ++D D+ IK Q++F E+ EI E K ++ T Sbjct: 1206 SVETNISSTRRSTSYSDDPLDKEDIIKKYYDLQLAFTEITRNLENEIEEKKNLISRLRFT 1265 Query: 180 DKVKEPEQFDDFY---SIENLTKAINPVHKTIQYDQNDDQPF---------VVKRILKEQ 227 + F+D ++ L K I + +I D ++P + K +L+ Sbjct: 1266 ETRLASSSFEDQKIKAQMKKLKKLIQDMDPSIPLDSILNEPLDNCPDKESDINKLMLEVD 1325 Query: 228 HPTKKVD-ELDDYNNKELLLENADLK-KQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKS 285 + +++D E + + E + K ++I ++ I+ L+ E + + + E+K Sbjct: 1326 YLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKSLEDKL 1385 Query: 286 KHLHTK-----------KLQDDLLQENRDL-YEQLQNKPVAINPLSDEVNEELENL---- 329 K + + K +D + + ++ Y +L+N + + +E N +L L Sbjct: 1386 KTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLEN--YKLQEILNESNGKLSQLTLDL 1443 Query: 330 ---KQEKALLSDQLDALKNKSSNVQQQLALLPVXXXXXXXXXXXXXTAREANQRLDLVEQ 386 K ++ALLS+QLD L+ + ++Q LL T ++ Q+ + Sbjct: 1444 RQSKSKEALLSEQLDRLQKDLESTERQKELL-------------SSTIKQQKQQFE--NC 1488 Query: 387 ENDFLKNELK-KLHDNTSNDENEKYDDLLNQYELLFDENETKFDKL----QVKQQALNLD 441 +D NEL+ + H + E ++ + E L +N+ K +KL ++++ ++ Sbjct: 1489 MDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQK-EKLIWEREMERNDSDMQ 1547 Query: 442 YQKTISALKHENDV---LLDEIEWTRSKDNDFNNTKNSFEEQKKALDEKLNGLTIQNQQL 498 Q+T+ LK DV L D++ + + + + ++ + ++ L E+LN L Sbjct: 1548 LQETLLELKRVQDVKKILSDDLAHLKERLSAVED-RSQYTDEINRLKEELNCSLKAETNL 1606 Query: 499 QDKIAELEEWNEEKSXXXXXXXXXXXXXXKDSQNLFNVAQDKLATLEEVNLALNEKINDL 558 + + A L+ E DS+ + D L L+ + E +N+ Sbjct: 1607 KKEFATLKYKLE--------------TSTNDSEAKIS---DLLKQLDHYTKVV-EMLNNE 1648 Query: 559 EDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEET 618 +D +S +E L + Y L T+ E L K K+ + Q+L S + Sbjct: 1649 KDAISLAEKE-------------LYQKYEALNTECESL-KGKIVSLTKIKQELESDLNQK 1694 Query: 619 NSELEKAKQSLSASDSENNQLKQQINSLENAKK----------ELQFT-PVTSDEHLDEL 667 L+ + +LS+S +N ++ ++I LE + EL T + + + D+ Sbjct: 1695 TDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQASCNGYKDKF 1754 Query: 668 ETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEASDEDKPVEIKKPRIKKRDFVIQ 727 + K + L+ ENQ LQ N Q + + E + +I + + ++ Sbjct: 1755 DDEKQKNIDLYEENQTLQK----LNTDLQLQLKNLHERLSDTTEKNAWLSKIHELENMVS 1810 Query: 728 NKDD-KLAKLSKKERIQAYAERLAKINANE 756 + D K ++ K + ++ E L N+ + Sbjct: 1811 LETDLKYEEMKKNKSLERAVEELQTKNSQQ 1840 Score = 61.6 bits (148), Expect = 8e-12 Identities = 102/533 (19%), Positives = 209/533 (39%), Gaps = 60/533 (11%) Query: 263 NDQIFDLE---QEIDDLKRRLSEEKSKHLHTKKLQDDL-------LQENRDLYEQLQNKP 312 N+QI L+ QE++ K+ L E+ K ++ + DL L++N L +++ Sbjct: 867 NEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSS 926 Query: 313 VAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQL--------ALLPVXXXXX 364 + D++ E + + +EK ++ L+ K +Q+ + L Sbjct: 927 ETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSKNNELI 986 Query: 365 XXXXXXXXTAREANQRLDLVEQENDFLKNELKKLHD--NTSNDENEKYDDLLNQYELLFD 422 + L+++ L+NE+K+L D N+ +E + ++D L+ E Sbjct: 987 KQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSE---- 1042 Query: 423 ENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSK---DNDFNNTKNSFEE 479 E KL ++ N+ + S + +D+ + + K +N N ++ + Sbjct: 1043 --EDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLK 1100 Query: 480 QKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSXXXXXXXXXXXXXXKDSQNLFNVAQD 539 K+ +D L ++Q D ++E + E K + N ++ Sbjct: 1101 MKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRE 1160 Query: 540 KLATLEEVNLALNEKIND-----LEDELSGSENSNNLLAKLQADHEI-LQESYGKLKTDF 593 ++ +L E +ND LE LS + N L K + + + S + T + Sbjct: 1161 TKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNKRISGNSVETNISSTRRSTSY 1220 Query: 594 EKLKKNKLNDANEQYQDLLSAFEETNSELEK--------------AKQSLSASDSENNQL 639 +K D ++Y DL AF E LE + L++S E+ ++ Sbjct: 1221 SDDPLDK-EDIIKKYYDLQLAFTEITRNLENEIEEKKNLISRLRFTETRLASSSFEDQKI 1279 Query: 640 KQQINSLENAKKELQ-FTPVTS--DEHLDELETLKIEKEQLFLENQALQNQLQYFNDISA 696 K Q+ L+ +++ P+ S +E LD + + +L LE L+ QL Sbjct: 1280 KAQMKKLKKLIQDMDPSIPLDSILNEPLDNCPDKESDINKLMLEVDYLKRQLDI------ 1333 Query: 697 NQTEEIKEASDEDKPVEIKKPRIKKRDFVIQNKDDKLAKLSKKERIQAYAERL 749 +T +A + + K +I+ + + KL + +ER+++ ++L Sbjct: 1334 -ETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKSLEDKL 1385 >SYNE-PCC-01-000727 sll1120 Length = 1200 Score = 45.8 bits (107), Expect = 5e-07 Identities = 69/361 (19%), Positives = 147/361 (40%), Gaps = 33/361 (9%) Query: 99 EEEQQTVDQTMAFQEVDDQSVLTKEIKTGFQ--ELKPSVITAEDDK--DEIKPEATKQVS 154 +E ++ +D+ E D + V TKE T Q E + +I E ++ + + + K Sbjct: 174 KERREIIDELAGVAEFDRKIVKTKETLTEVQDREERCQIIATELERTLERLAADRQKAEK 233 Query: 155 FEELFNQPSEEINETKKPEVQIFSTDKVKEPEQFD-DFYSIENLTKAINPVHKTIQYDQN 213 ++ L Q E+ K + + + K Q + D + + +A++ + IQ Q Sbjct: 234 YQALRQQVQEKQGWAKVIQYKAVEQQRQKLWGQLERDREQSQQIQQALDQRSQAIQTQQT 293 Query: 214 DDQPFVVKRILKEQHPTKKVDELDDYNNKELLLENADLKKQIDDLKENNND---QIFDLE 270 + + +V L + + + A K Q D L++ ND QI + + Sbjct: 294 ELEKL-----------NAQVKALGEEEQLAVAAQLATQKAQRDQLQQRYNDGDRQITNHQ 342 Query: 271 QEIDDLKRRLSEEKSKHLHTKKLQ-----------DDLLQENRDLYEQLQNKPVAINPLS 319 Q++ ++ +S+ + + LH ++ + + +Q ++ EQL+++ AI S Sbjct: 343 QQVGQIQAEISQSQQQFLHIQQEKSFHNTQTLPQLEAAVQTSQQQLEQLRHQAQAIASAS 402 Query: 320 DEVNEELENLKQEKALLSDQLDALKNKSSNVQQ-QLALLPVXXXXXXXXXXXXXTAREAN 378 + +E L + L D+L +++ + +++ Q LL E Sbjct: 403 EAWVQEQTQLSRTVNQLQDELIPQRSQLAQLEERQQQLLTNLAELTPLLTKVSVELEEKQ 462 Query: 379 QRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELLFD--ENETKFDKLQVKQQ 436 + + L ++++ L + + E E+ Q LL + E + + DKL+ Q Sbjct: 463 FAQGQFNFQGEALTSQIQTLASDLAQLEQERSLLQETQTRLLKEQQEKQRQLDKLEAASQ 522 Query: 437 A 437 A Sbjct: 523 A 523 Score = 43.1 bits (100), Expect = 3e-06 Identities = 73/378 (19%), Positives = 139/378 (36%), Gaps = 58/378 (15%) Query: 241 NKELLLENADLKKQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQE 300 N+ELLLE +Q+ Q+ ++ Q+ ++ LH ++ + D+ + Sbjct: 718 NEELLLERTVRSRQL-------TQQLMEMRQQ----------QREAQLHGEQTERDIAR- 759 Query: 301 NRDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVX 360 L + IN ++L L+Q ALL L L+ + ++ QQQL L Sbjct: 760 -------LSQQQTQINQQQINQQQKLAELQQNLALLQQSLPPLEQQLASAQQQLTALETS 812 Query: 361 XXX---XXXXXXXXXTAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQY 417 E ++L + Q D LK DL N Sbjct: 813 QTHQQWQTIQIQIRTVEAEYQRQLQALRQGEDHLK-------------------DLQNSS 853 Query: 418 ELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSF 477 + L ++ +K+ + QA +L + LK + I+ T ++ + S Sbjct: 854 QRLEEKIAQAQEKI-AQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEAQLAKLSEKLGST 912 Query: 478 EEQKKALDEKLNGLTIQNQQLQ---DKIAELEEWNEEKSXXXXXXXXXXXXXXKDSQNLF 534 ++++ L+ +LN L Q Q+ Q +K+ ++ +E D Sbjct: 913 KQERDRLETQLNQLRSQQQEQQWQWEKLQTNQQEYQENLTQLQTQLEALEQDLPDPWPEI 972 Query: 535 NVAQDKLATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFE 594 + QD+ +E NL + +LE + N L ++ + + + Y K + Sbjct: 973 PLLQDR----DEANLDFANILEELERSI---RNGQKRLEAMEPVNMLALQEYEKTEARLG 1025 Query: 595 KLKKNKLNDANEQYQDLL 612 +L + A E+ + LL Sbjct: 1026 ELSEKLQTIAGERTELLL 1043 >SYNE-PCC-01-000943 sll1424 Length = 491 Score = 43.5 bits (101), Expect = 2e-06 Identities = 57/264 (21%), Positives = 108/264 (40%), Gaps = 70/264 (26%) Query: 254 QIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQE-----NRDLYEQL 308 Q+DD+ +LEQ + EE L + + L+QE NR+ + L Sbjct: 77 QLDDILAQLRVAKTELEQA-----SQAKEEIESELTAVREEQQLVQERSRELNRNYTKAL 131 Query: 309 QNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVXXXXXXXXX 368 Q ++ S + +E+ NL E+A L++Q D+L +SS +Q Q+ L Sbjct: 132 QLLR-RVSEQSRNLRQEVANLSAERAQLNEQKDSLLAESSELQSQVKLRD---------- 180 Query: 369 XXXXTAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELLFDENETKF 428 +E ++R + + Q+ L + +++ E +F Sbjct: 181 ------QELSKRQERIAQQEKVLARQREQVQSL-----------------------EKRF 211 Query: 429 DKLQVKQQALNLDYQKTISALKHENDVLLDEIEWT-RSKDNDFNNTKNSFEEQKKALDEK 487 L+ ++Q L + ++ D +D+++ +KDND +A +EK Sbjct: 212 ASLEAQRQQLQAEI--------NQRDTKIDQLDQAIAAKDNDI-----------QAREEK 252 Query: 488 LNGLTIQNQQLQDKIAELEEWNEE 511 L GL + LQ ++ ELE + ++ Sbjct: 253 LQGLETELSFLQREVEELERYYQD 276 >MJAN-DSM-01-001277 MJ1254 hypothetical protein Length = 469 Score = 42.4 bits (98), Expect = 5e-06 Identities = 43/182 (23%), Positives = 85/182 (46%), Gaps = 16/182 (8%) Query: 564 GSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELE 623 G+ L K + + E +K + LK NKL + E+ ++L ++ +L Sbjct: 260 GTAIFGGLFVKEKISKRKIIERTKNIKNELTSLK-NKLKEKEEEIKNLAIKIKDLEDKLS 318 Query: 624 KAKQSLSASDSENNQLKQQINSLENAKKELQFTPVTSDEHL---DELETLKIEKEQLFLE 680 KA ++L D + L ++I+ E+ ++L DE++ +++E+L E L E Sbjct: 319 KANKNLLNKDEIISVLNERISEYESQIQKLL------DENIIYKEKIESLNKYIETLKKE 372 Query: 681 NQALQNQLQYFNDISANQTEE----IKEASDEDKPVEIKKPRIKKRDFVIQNKDDKLAKL 736 N L+++++ +DI+ EE + ED+ + I IKK + Q + ++ + Sbjct: 373 NDKLKDKVRELSDIAKKYMEEKRGVLWSFLTEDEKIII--DLIKKHGHITQKEIVEITGM 430 Query: 737 SK 738 SK Sbjct: 431 SK 432 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.306 0.127 0.331 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 91,271 Number of Sequences: 78 Number of extensions: 5729 Number of successful extensions: 229 Number of sequences better than 1.0e-05: 9 Number of HSP's better than 0.0 without gapping: 3 Number of HSP's successfully gapped in prelim test: 7 Number of HSP's that attempted gapping in prelim test: 54 Number of HSP's gapped (non-prelim): 40 length of query: 756 length of database: 48,235 effective HSP length: 70 effective length of query: 686 effective length of database: 42,775 effective search space: 29343650 effective search space used: 29343650 T: 11 A: 40 X1: 16 ( 7.1 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 43 (22.0 bits) S2: 96 (41.6 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000242 sll0396 (224 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000242 sll0396 440 e-126 SYNE-PCC-01-001437 slr0081 174 2e-46 SYNE-PCC-01-002033 slr0947 159 5e-42 SYNE-PCC-01-002486 slr1584 159 7e-42 SYNE-PCC-01-000518 sll0789 156 6e-41 SYNE-PCC-01-001461 slr0115 151 1e-39 SYNE-PCC-01-000414 sll0649 150 3e-39 SYNE-PCC-01-002672 slr1837 139 1e-35 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 132 9e-34 SYNE-PCC-01-000523 sll0797 130 5e-33 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 128 2e-32 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 112 1e-27 SYNE-PCC-01-000877 sll1330 111 2e-27 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 100 5e-24 SYNE-PCC-01-002086 slr1042 79 1e-17 SYNE-PCC-01-001306 sll1905 75 2e-16 SYNE-PCC-01-002731 slr1909 71 3e-15 SYNE-PCC-01-002221 slr1213 64 3e-13 SYNE-PCC-01-002489 slr1588 63 9e-13 SYNE-PCC-01-002635 slr1783 60 8e-12 SYNE-PCC-01-002788 slr1982 59 2e-11 SYNE-PCC-01-002618 slr1760 59 2e-11 SYNE-PCC-01-001133 sll1673 59 2e-11 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 54 4e-10 SYNE-PCC-01-001160 sll1708 52 1e-09 SYNE-PCC-01-001132 sll1672 52 2e-09 SYNE-PCC-01-002879 slr2104 52 2e-09 SYNE-PCC-01-000608 sll0921 49 1e-08 SYNE-PCC-01-001075 sll1592 49 2e-08 SYNE-PCC-01-000800 sll1228 48 3e-08 SYNE-PCC-01-002873 slr2098 47 4e-08 SYNE-PCC-01-002617 slr1759 46 1e-07 SYNE-PCC-01-002778 slr1969 40 5e-06 SYNE-PCC-01-001575 slr0312 40 5e-06 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 440 bits (1131), Expect = e-126 Identities = 224/224 (100%), Positives = 224/224 (100%) Query: 1 MSHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMS 60 MSHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMS Sbjct: 1 MSHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMS 60 Query: 61 GLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRR 120 GLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRR Sbjct: 61 GLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRR 120 Query: 121 THTTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERV 180 THTTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERV Sbjct: 121 THTTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERV 180 Query: 181 WGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGYVLRD 224 WGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGYVLRD Sbjct: 181 WGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGYVLRD 224 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 174 bits (441), Expect = 2e-46 Identities = 96/231 (41%), Positives = 137/231 (59%), Gaps = 13/231 (5%) Query: 2 SHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPD-------LIIVNG 54 SHR+LVVE+E + + L L+ EGY+V DG QEF D LII++ Sbjct: 30 SHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDI 89 Query: 55 ALPGMSGLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARI 114 LP ++GL++CR LR G PI++++AK E+V GL+ GADDYI KPF+ E AR Sbjct: 90 MLPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 Query: 115 RVQLRRTHTTSDEVLQFADLR----FNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQV 170 R +RR + + F R + + R + RG+ + L KEF LL+ +S+ R+V Sbjct: 150 RAMIRRQGLAGNNIAPFRKFRDLVLYPQECRVLMRGEE-VSLAPKEFRLLELFMSYPRRV 208 Query: 171 LTREQILERVWGYDFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGY 220 +REQ++E +WG DFMGDS ++V+IR+LR KLE +P + TVRG GY Sbjct: 209 WSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGY 259 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 159 bits (403), Expect = 5e-42 Identities = 90/226 (39%), Positives = 134/226 (59%), Gaps = 10/226 (4%) Query: 7 VVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLELCR 66 +V++E + R +E L GY+V A DG + E PDL++++ +P + G +C+ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 67 RLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTHTT-- 124 LR+ S IPII++TA DV +R+ GL+ GADDY+VKPF+ E ARIR LRR Sbjct: 61 ELRKE-SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGM 119 Query: 125 ----SDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERV 180 S VLQ A +R + + R++ +GD I LT EF LL+ L+S + + +R +IL+ V Sbjct: 120 PGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEV 179 Query: 181 WGY--DFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGYVLR 223 WGY + D+ +++V+I LR KLE P LI T RG GY+ + Sbjct: 180 WGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQ 225 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 159 bits (402), Expect = 7e-42 Identities = 81/220 (36%), Positives = 136/220 (61%), Gaps = 1/220 (0%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 R+L+VE++ LA + L + Y V +A D + A DL+I++ LP + G+ Sbjct: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 Query: 64 LCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTHT 123 LC++ R +PI+++TA+D + +++ GLDAGADDY+VKP + E FAR+R LRR Sbjct: 62 LCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCA 121 Query: 124 TSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERVWGY 183 T VL++ +R + ST E+ + ++ LT KE+ +L+ LL + R+VL+R I++ +W Sbjct: 122 TCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIWKL 181 Query: 184 DFMGDSNIIEVYIRYLRLKLEAAG-EPRLIQTVRGVGYVL 222 + + + ++V++R LR KL++AG I+TV G+GY L Sbjct: 182 ESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRL 221 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 156 bits (394), Expect = 6e-41 Identities = 87/220 (39%), Positives = 129/220 (58%), Gaps = 3/220 (1%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQE--FPPDLIIVNGALPGMSG 61 R+L+VE+E L +E L+ E Y V +DG ++ + L I + +PG+SG Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 62 LELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 LELC++LR S +PI+++TAKD + +RV GLDAGADDY++KPF E AR+R RR+ Sbjct: 62 LELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRRS 121 Query: 122 HTTSDEVLQFADLRFNRSTREIQRGDRL-IDLTAKEFELLDYLLSHARQVLTREQILERV 180 + LQ + T + ++ I LTAKEF+LL+Y + H +Q+L+ EQI ++ Sbjct: 122 PELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKNQL 181 Query: 181 WGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGY 220 W SN++ +R LR KLE LI+TV G+GY Sbjct: 182 WALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGY 221 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 151 bits (382), Expect = 1e-39 Identities = 87/227 (38%), Positives = 129/227 (56%), Gaps = 8/227 (3%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 R+L+++++ ++ + + L+ GYDV A DG+KG A + PDLI+++ LP + G Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 64 LCRRLR--EMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 +C+RLR E + IP++++TA +++++ G D+GADDY+ KPF+ +E AR+R LRRT Sbjct: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 Query: 122 H-----TTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQI 176 E+L L E + I LT EFELL LL Q ++ I Sbjct: 123 DRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSDI 182 Query: 177 LERVWGYDFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGYVL 222 L VWGY+ D I V+IR+LR KLE PR I+TV G GY L Sbjct: 183 LREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCL 229 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 150 bits (379), Expect = 3e-39 Identities = 89/232 (38%), Positives = 139/232 (59%), Gaps = 14/232 (6%) Query: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLEL 64 +L+VE+++++A+ + L+ E + V DG G QE PDLI+++ LP + GLE+ Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 Query: 65 CRRLREM-GSRIP-IILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTH 122 C R+R+ GS+ P I+++TAK + +R++GL GADDY+VKPF+ E AR+R LRR Sbjct: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRRQL 133 Query: 123 TTSDEVLQF-------ADLRFNRSTREIQRGDRL--IDLTAKEFELLDYLLSHARQVLTR 173 V Q DL ++++R +GDR ++LT EF LL +S+ +V R Sbjct: 134 RQGQPVGQIYRTNHFQVDLDQHQASR--YQGDRQEELELTGLEFNLLATFMSYPGRVWNR 191 Query: 174 EQILERVWGYDFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGYVLRD 224 Q++E++WG DF GD +++ +IR LR K+E P I+TV G+GY D Sbjct: 192 TQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFED 243 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 139 bits (349), Expect = 1e-35 Identities = 79/226 (34%), Positives = 124/226 (54%), Gaps = 10/226 (4%) Query: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLEL 64 +L+V++E L + L ++G+ + VA G G A DL+I++ LP +SGLE+ Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 65 CRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRR---- 120 CR++R +G P++ +TAKD +++RV GLDAG DDY++KPF E AR+R LRR Sbjct: 64 CRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQSHG 123 Query: 121 ---THT---TSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTRE 174 T T + +L ++ + + + + I L+ KE LL L Q+L+ E Sbjct: 124 ETITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSHE 183 Query: 175 QILERVWGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGY 220 +I +W + SN++ +R LR K+E PRLI +V G GY Sbjct: 184 EIYSHLWPGESPPSSNVLAALVRLLRRKIEQPNAPRLINSVYGKGY 229 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 132 bits (332), Expect = 9e-34 Identities = 77/222 (34%), Positives = 124/222 (55%), Gaps = 3/222 (1%) Query: 1 MSHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMS 60 M+ ++L+VE+E + + L L + YDV A D + +E P LI+++ LPG S Sbjct: 1 MTRKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRS 59 Query: 61 GLELCRRLREMGS--RIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQL 118 G++ + +++ S IPII++TAK E+ + L+AGADDYI KPF+ ARI Sbjct: 60 GIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVW 119 Query: 119 RRTHTTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILE 178 RR + + +Q +L + + + + + I+L++ EF+LL + + H +V +REQ+L Sbjct: 120 RRIYEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLN 179 Query: 179 RVWGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGY 220 R+W D + ++ YIR LR L IQTVRG GY Sbjct: 180 RIWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGY 221 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 130 bits (326), Expect = 5e-33 Identities = 77/227 (33%), Positives = 124/227 (54%), Gaps = 10/227 (4%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKG--FTQAQEFPPDLIIVNGALPGMSG 61 R+L+VE+E L ++ L E Y V DG + + + Q L IV+ LPG+SG Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 62 LELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 LELC++LR G+ +P++++TA + E RV GLDAGADDY+ KPF E AR+R RR+ Sbjct: 62 LELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRRS 121 Query: 122 HTTSDEVLQFADLRFNRS--------TREIQRGDRLIDLTAKEFELLDYLLSHARQVLTR 173 ++L + + S + + + I LT +EF++ YL+ + ++++ Sbjct: 122 PQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIISG 181 Query: 174 EQILERVWGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGY 220 +I +++W D SN++ +R +R KL P I+TV G GY Sbjct: 182 SKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGY 228 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 128 bits (321), Expect = 2e-32 Identities = 69/219 (31%), Positives = 128/219 (58%), Gaps = 4/219 (1%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 R+L++E++ + +++ L G+ V DG G P D ++++ LP + GLE Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 64 LCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTHT 123 + ++ R +P++++TA+D ++ERV GL +GADDY+ KPF E AR++ +RR + Sbjct: 62 VLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYG 121 Query: 124 TSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERVWGY 183 V++ A ++ +++ R + ++ I LT++E++LL+ + + +VL+R I E++ + Sbjct: 122 YHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSSW 181 Query: 184 DFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGYVL 222 D S ++V+I LR KL + I+TV GVGY L Sbjct: 182 DEEISSGALDVHIYNLRQKL----GKQFIRTVHGVGYAL 216 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 112 bits (279), Expect = 1e-27 Identities = 68/225 (30%), Positives = 127/225 (56%), Gaps = 8/225 (3%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 ++L+V+++ +L + L+ EG+DV A +GL+ + E L++++ +P ++G+E Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNE-SYKLVLLDVMMPKLNGIE 61 Query: 64 LCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTHT 123 + +R++ S +P++++TA+ + +RV+GL+ GADD + KPFN E ARI+ LRR+ + Sbjct: 62 TLKEIRKV-SNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSAS 120 Query: 124 TSDEVLQFADLRFNRSTREIQRG-----DRLIDLTAKEFELLDYLLSHARQVLTREQILE 178 S+ + L F+ T G + ++LT EF++L LL V++RE++ Sbjct: 121 PSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSL 180 Query: 179 RVWGYDFMGDSNIIEVYIRYLRLKL-EAAGEPRLIQTVRGVGYVL 222 V ++++I LR KL + +P +T+RG GY L Sbjct: 181 EVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGYAL 225 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 111 bits (277), Expect = 2e-27 Identities = 76/222 (34%), Positives = 114/222 (51%), Gaps = 12/222 (5%) Query: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEF----PPDLIIVNGALPGMS 60 + VVE L + L+ GY V GF QA++ P L +++ L Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQC----SGFHQARQAFNNQLPTLAVIDSDLTDGD 61 Query: 61 GLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRR 120 G+ELCR L + + I +++AKD ++ V GL AGADDY+ KPF EF ARI +RR Sbjct: 62 GIELCRWLYQQHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRR 120 Query: 121 THTTSDE-VLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILER 179 T + +L + L+ + R ++ +DLT +EF LL L L+R ++L R Sbjct: 121 VRTVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRR 180 Query: 180 VWGYDFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGY 220 W + + + I+ ++ LR K+E +P LIQTVR VGY Sbjct: 181 AWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGY 221 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 100 bits (248), Expect = 5e-24 Identities = 69/226 (30%), Positives = 113/226 (50%), Gaps = 10/226 (4%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 ++LVVE+E ++ + EGYDV A +G++ +L++++ LPG +GL Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 64 LCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT-- 121 L R LRE S +P+I +T +D+ ++++GL+ GADDY+ KPFN E R R L R Sbjct: 65 LARELREELS-LPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMP 123 Query: 122 HTTSDEVLQFADLRFN------RSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQ 175 H + RFN S I + L EF + + + ++ TRE+ Sbjct: 124 HQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREE 183 Query: 176 ILERVWGYDFMGDSNIIEVYIRYLRLKLE-AAGEPRLIQTVRGVGY 220 +L+++ G + ++V IR +R E P +I T+ G GY Sbjct: 184 LLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGY 229 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 79.0 bits (193), Expect = 1e-17 Identities = 40/117 (34%), Positives = 67/117 (57%), Gaps = 2/117 (1%) Query: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLEL 64 VL+VE+ + LK G+ V++A DG++ + Q F PDL++++ +P M+G E+ Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 65 CRRLRE--MGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLR 119 CRR++ +P+I+ ++K + +R G+ GAD YI KPF E I+ LR Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 74.7 bits (182), Expect = 2e-16 Identities = 39/124 (31%), Positives = 68/124 (54%), Gaps = 2/124 (1%) Query: 2 SHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSG 61 S +LVV++ ++ + L+ EGY + G + + + PDLI+++ +PGM G Sbjct: 17 SFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDG 76 Query: 62 LELCRRLRE--MGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLR 119 LE+C RL++ IP+I +TA ++ ++ + GA DY+ KPF+ E AR++ L Sbjct: 77 LEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLE 136 Query: 120 RTHT 123 T Sbjct: 137 LKQT 140 Score = 45.1 bits (105), Expect = 2e-07 Identities = 33/126 (26%), Positives = 59/126 (46%), Gaps = 3/126 (2%) Query: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGL-- 62 +L+ E+ + +L LK GY V V +G + + + D+++++ +P M GL Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 63 -ELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 E RR + R II +TA +R L +G +DY+ KP + ++V Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQALQVAATAL 861 Query: 122 HTTSDE 127 +TS + Sbjct: 862 QSTSQD 867 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 71.2 bits (173), Expect = 3e-15 Identities = 48/181 (26%), Positives = 95/181 (52%), Gaps = 8/181 (4%) Query: 2 SHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSG 61 ++ +L+V+++ L ++ L+Y+GY V+ A +G + PD+I+ + +P M G Sbjct: 7 NYHLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDG 66 Query: 62 LELCRRLREMG--SRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLR 119 ++R+ S IP++ ++AK RV GL+ GAD Y+ KPF +E A+++ LR Sbjct: 67 YAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLR 126 Query: 120 RTHTTSDEVLQFADLRFNRSTR-EIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILE 178 + +D +LQ + + R ++ R L K +L+ L++ R++ ++ + Sbjct: 127 Q----ADRLLQHNNHPLEDNARVQVARDVELTPTETKVIQLVAQGLAN-REIADHLKVSQ 181 Query: 179 R 179 R Sbjct: 182 R 182 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 64.3 bits (155), Expect = 3e-13 Identities = 35/120 (29%), Positives = 67/120 (55%), Gaps = 3/120 (2%) Query: 1 MSHRVLVVEEEEKLARFMELELKYEGYDVSV-ARDGLKGFTQAQEFPPDLIIVNGALPG- 58 M ++L+VE+E +A+ + LK +GY++ V A DG + EF PDL++++ + G Sbjct: 1 MVTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGE 60 Query: 59 MSGLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQL 118 + G+E+ R++ + S IPI+ +TA D E Y++KPF ++ + + + + Sbjct: 61 IDGIEVAERIKSLYS-IPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAI 119 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 62.8 bits (151), Expect = 9e-13 Identities = 37/120 (30%), Positives = 64/120 (53%), Gaps = 4/120 (3%) Query: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLK--GFTQAQEFPPDLIIVNGALPGMSGL 62 +LVVE+E + + L E Y + A +G G + E PDLII + +P M G Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 63 ELCRRLREMG--SRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRR 120 L L++ + IP I +TA +++ G+++GADDY++KPF ++ + +L++ Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 59.7 bits (143), Expect = 8e-12 Identities = 36/134 (26%), Positives = 70/134 (52%), Gaps = 3/134 (2%) Query: 5 VLVVEEEEKLARFMELELKYEG-YDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 +L+V++E + ++ L+ G + V +A + + + Q P L+I + +P + G + Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 64 LCRRLREMG--SRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 ++LRE +P++ +TA+ +R+ G G D ++ KPF+ DE A +R L R Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 Query: 122 HTTSDEVLQFADLR 135 +SD + A L+ Sbjct: 178 QASSDAGSESAKLQ 191 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 58.5 bits (140), Expect = 2e-11 Identities = 35/103 (33%), Positives = 56/103 (54%), Gaps = 2/103 (1%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 +VL+VE+ E + L +GY+V +A DG + T A P LI+++ +LP + G Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 Query: 64 LCRRLR--EMGSRIPIILITAKDDVEERVMGLDAGADDYIVKP 104 ++++ G+ IPII +TA +R + AG DDY KP Sbjct: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKP 108 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 58.5 bits (140), Expect = 2e-11 Identities = 43/180 (23%), Positives = 91/180 (50%), Gaps = 23/180 (12%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 ++LVV+++ + + + L+ EG+ V +A +G + T+ E P++++++ +P M G Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 Query: 64 LCRRLREMGSRIP--IILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 C+ L ++ +++IT DD +AGA DY+ KP + +A +R +++R Sbjct: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIH----WAVLRQRVKRL 128 Query: 122 HTTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERVW 181 L NR +++ +++++ AK +L L++ RQ+ E L+ W Sbjct: 129 ------------LYQNRLQHQLESVNQMLERLAKVDQLTQ--LANRRQL---ELFLDTEW 171 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 58.5 bits (140), Expect = 2e-11 Identities = 34/94 (36%), Positives = 47/94 (50%), Gaps = 2/94 (2%) Query: 26 GYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLELCRRLR--EMGSRIPIILITAK 83 GY V G Q PDLI+++ +P M G ++C ++ E IPII I+A Sbjct: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 Query: 84 DDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQ 117 D ++V + G DYI KPF +E ARI Q Sbjct: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVARIEGQ 125 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 53.9 bits (128), Expect = 4e-10 Identities = 50/196 (25%), Positives = 88/196 (44%), Gaps = 23/196 (11%) Query: 4 RVLVVEEEEKLAR----FMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGM 59 +VL++++ + R +EL+ +E V+ G +G + A + PD+II++ + G+ Sbjct: 6 KVLLIDDHPLMRRGIKQLVELDDNFEV--VADVSSGTEGISVALQTSPDVIILDLNMKGL 63 Query: 60 SGLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIR---- 115 SGL+ + LR G I+++T D + +DAGAD Y++K D +I+ Sbjct: 64 SGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQ 123 Query: 116 -----------VQLRRTHTTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLL 164 + L RTH D L R R+I G + A+ F + + Sbjct: 124 GEVILSDSIKNLLLERTH--EDNPLDSLTDREMGVLRQIATGLSNKQIAAQLFISEETVK 181 Query: 165 SHARQVLTREQILERV 180 H R +L + + RV Sbjct: 182 VHIRNLLRKLNVHSRV 197 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 52.4 bits (124), Expect = 1e-09 Identities = 30/102 (29%), Positives = 58/102 (56%), Gaps = 2/102 (1%) Query: 4 RVLVVEEEEKLARFMELEL-KYEGYDVSVARD-GLKGFTQAQEFPPDLIIVNGALPGMSG 61 ++L+VE++ + +E L +E +++ D G QA PDLI+++ LPG+ G Sbjct: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDG 77 Query: 62 LELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVK 103 +E +++++ +I I+++T+ E + L +GAD Y VK Sbjct: 78 IEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVK 119 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 52.0 bits (123), Expect = 2e-09 Identities = 30/122 (24%), Positives = 62/122 (50%), Gaps = 2/122 (1%) Query: 3 HRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGL 62 +++LVV+++ + + L G+++ A +G + + + P LI ++ +P M G Sbjct: 630 YKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGY 689 Query: 63 ELCRRLREM--GSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRR 120 E + ++ G+ ++ +TA EE+ + L AG DD++ KPF + F + L Sbjct: 690 EATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTIFDSLTKHLGV 749 Query: 121 TH 122 T+ Sbjct: 750 TY 751 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 51.6 bits (122), Expect = 2e-09 Identities = 33/109 (30%), Positives = 54/109 (49%), Gaps = 2/109 (1%) Query: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLEL 64 +L+VE+ E F L +G V VA +G + T D I+++ +P ++G + Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 Query: 65 CRRLR--EMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFF 111 R +R E +PII +TA ++ LDAG +D++ KP D F Sbjct: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLF 828 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 49.3 bits (116), Expect = 1e-08 Identities = 27/104 (25%), Positives = 60/104 (57%), Gaps = 4/104 (3%) Query: 4 RVLVVEEEEKLARFMELELKYE-GYD-VSVARDGLKGFTQAQEFPPDLIIVNGALPGMSG 61 R+ ++E+E+ + + ++ L E ++ V A +G G Q+ PD++I++ LP M+G Sbjct: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 Query: 62 LELCRRLRE--MGSRIPIILITAKDDVEERVMGLDAGADDYIVK 103 +++ ++L++ + + ++++T D E + AGAD Y +K Sbjct: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMK 108 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 48.5 bits (114), Expect = 2e-08 Identities = 31/116 (26%), Positives = 60/116 (51%), Gaps = 2/116 (1%) Query: 2 SHRVLVVEEEEKLARFMELELKYE-GYDVS-VARDGLKGFTQAQEFPPDLIIVNGALPGM 59 S R+L+VE++E + L E G DV+ A DG + D++I++ LPG+ Sbjct: 7 SIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGI 66 Query: 60 SGLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIR 115 G+E C +++++ ++P++++T+ ++A A Y VK ++ IR Sbjct: 67 GGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIR 122 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 47.8 bits (112), Expect = 3e-08 Identities = 31/119 (26%), Positives = 56/119 (47%), Gaps = 2/119 (1%) Query: 2 SHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSG 61 + +VLVV++ + + L G+ V A +G + + P +I+++ +P + G Sbjct: 417 NQKVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDG 476 Query: 62 LELCRRLRE--MGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQL 118 ++++ G II +TA ER L AG DD++ KPF +E A + L Sbjct: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHL 535 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 47.4 bits (111), Expect = 4e-08 Identities = 30/113 (26%), Positives = 59/113 (52%), Gaps = 2/113 (1%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 R+L+VE+ E L+ G++V VA +GL + L++++ +P M G+E Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 Query: 64 LCRRLREMG--SRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARI 114 +R+ +++PI+ +TA +R L AG +D++ KP +E + ++ Sbjct: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKL 1038 Score = 47.0 bits (110), Expect = 5e-08 Identities = 32/115 (27%), Positives = 52/115 (45%), Gaps = 7/115 (6%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFT-----QAQEFPPDLIIVNGALPG 58 RVLVV++ + M+ L+ + V G + + P ++ ++ +P Sbjct: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 Query: 59 MSGLELCRRLREMG--SRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFF 111 M GLE+ RRL+ MG + I ++TA E V G DD +VKP + F Sbjct: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLF 886 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 45.8 bits (107), Expect = 1e-07 Identities = 29/109 (26%), Positives = 56/109 (51%), Gaps = 3/109 (2%) Query: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 ++L+ E+ + L GY V++A +G + ++ DL++++ +P M G+ Sbjct: 1191 QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGIT 1250 Query: 64 LCRRLRE---MGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDE 109 CR +R+ + + I+ +TA +R LDAG D YI KP + ++ Sbjct: 1251 ACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQ 1299 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 40.4 bits (93), Expect = 5e-06 Identities = 29/115 (25%), Positives = 53/115 (46%), Gaps = 8/115 (6%) Query: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMS---- 60 V+V+E++E++A + L Y V D Q + P LIIV+G ++ Sbjct: 632 VIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQPGLIIVDGDFVDVTEVTR 691 Query: 61 GLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIR 115 G++ RR+ S++ + L++ E G DDY++KP + R++ Sbjct: 692 GIKKSRRI----SKVTVFLLSESLSSAEWQALSQKGIDDYLLKPLQPELLLQRVQ 742 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 40.4 bits (93), Expect = 5e-06 Identities = 23/87 (26%), Positives = 42/87 (48%) Query: 29 VSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLELCRRLREMGSRIPIILITAKDDVEE 88 ++ A +G + +E PD+ +++ +P + G+ + + II++T D E+ Sbjct: 35 IAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGVAAISAICAIVKFARIIVLTTYDSDED 94 Query: 89 RVMGLDAGADDYIVKPFNSDEFFARIR 115 GL AGA Y++K DE IR Sbjct: 95 IYRGLQAGAKGYLLKETEPDELLNAIR 121 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.324 0.143 0.402 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 21,339 Number of Sequences: 78 Number of extensions: 944 Number of successful extensions: 84 Number of sequences better than 1.0e-05: 34 Number of HSP's better than 0.0 without gapping: 23 Number of HSP's successfully gapped in prelim test: 11 Number of HSP's that attempted gapping in prelim test: 12 Number of HSP's gapped (non-prelim): 38 length of query: 224 length of database: 48,235 effective HSP length: 60 effective length of query: 164 effective length of database: 43,555 effective search space: 7143020 effective search space used: 7143020 T: 11 A: 40 X1: 15 ( 7.0 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (22.0 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000295 sll0474 (806 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000295 sll0474 1490 0.0 SYNE-PCC-01-002879 slr2104 167 2e-43 SYNE-PCC-01-002873 slr2098 163 2e-42 SYNE-PCC-01-000800 sll1228 147 1e-37 SYNE-PCC-01-001280 sll1871 142 3e-36 SYNE-PCC-01-002778 slr1969 137 1e-34 SYNE-PCC-01-002617 slr1759 135 4e-34 SYNE-PCC-01-001509 slr0210 134 1e-33 SYNE-PCC-01-001306 sll1905 134 1e-33 SYNE-PCC-01-000891 sll1353 131 7e-33 SYNE-PCC-01-001294 sll1888 127 2e-31 SYNE-PCC-01-001132 sll1672 124 1e-30 SYNE-PCC-01-000985 sll1475 114 9e-28 SYNE-PCC-01-001517 slr0222 107 2e-25 SYNE-PCC-01-001690 slr0473 79 4e-17 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 1490 bits (3858), Expect = 0.0 Identities = 764/806 (94%), Positives = 764/806 (94%) Query: 1 MVQEKPRFTRPLRYQLLAGCALILMITSAIAVVLTRQQLQEKSRINIITRAQRLTEGLEF 60 MVQEKPRFTRPLRYQLLAGCALILMITSAIAVVLTRQQLQEKSRINIITRAQRLTEGLEF Sbjct: 1 MVQEKPRFTRPLRYQLLAGCALILMITSAIAVVLTRQQLQEKSRINIITRAQRLTEGLEF 60 Query: 61 AAEGLVETKDVYRLNRLAQNYATWPNVQTISIVDPNGILIAHGGEIKMVRGEKYAQVTPA 120 AAEGLVETKDVYRLNRLAQNYATWPNVQTISIVDPNGILIAHGGEIKMVRGEKYAQVTPA Sbjct: 61 AAEGLVETKDVYRLNRLAQNYATWPNVQTISIVDPNGILIAHGGEIKMVRGEKYAQVTPA 120 Query: 121 LFPIFEQVSISGIPQSLITQIEEEEVVVYALPFNTYSFPEQGESYRDQNSHRRGVAITIL 180 LFPIFEQVSISGIPQSLITQIEEEEVVVYALPFNTYSFPEQGESYRDQNSHRRGVAITIL Sbjct: 121 LFPIFEQVSISGIPQSLITQIEEEEVVVYALPFNTYSFPEQGESYRDQNSHRRGVAITIL 180 Query: 181 SKQELNREVNQXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXPLGKLHRALINYDNTEQFN 240 SKQELNREVNQ PLGKLHRALINYDNTEQFN Sbjct: 181 SKQELNREVNQGLLLVVGSFIIGIVVILLLLGLLIRYAVLLPLGKLHRALINYDNTEQFN 240 Query: 241 LPPLPSNEIGFLGQTLVQTFNQLQIYQREALEIAERKYVEIAQRYELASQATRVWVWECQ 300 LPPLPSNEIGFLGQTLVQTFNQLQIYQREALEIAERKYVEIAQRYELASQATRVWVWECQ Sbjct: 241 LPPLPSNEIGFLGQTLVQTFNQLQIYQREALEIAERKYVEIAQRYELASQATRVWVWECQ 300 Query: 301 PKIHYFEVDPNLITWLGFEQPLEPADGDFFIHLGDRPMFWQAIEQSLEDPTMELSTELRL 360 PKIHYFEVDPNLITWLGFEQPLEPADGDFFIHLGDRPMFWQAIEQSLEDPTMELSTELRL Sbjct: 301 PKIHYFEVDPNLITWLGFEQPLEPADGDFFIHLGDRPMFWQAIEQSLEDPTMELSTELRL 360 Query: 361 EAANGEIYHCLLRGQIHQEQGEAFVKIIGTIADITEIKKAEEQLKLSNKILAKATQLKDE 420 EAANGEIYHCLLRGQIHQEQGEAFVKIIGTIADITEIKKAEEQLKLSNKILAKATQLKDE Sbjct: 361 EAANGEIYHCLLRGQIHQEQGEAFVKIIGTIADITEIKKAEEQLKLSNKILAKATQLKDE 420 Query: 421 FLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRHXXXXXXXXXXXX 480 FLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRH Sbjct: 421 FLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRHLLSLINDILDLS 480 Query: 481 KIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSEIIPNLPDVLVDKRRLCQVL 540 KIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSEIIPNLPDVLVDKRRLCQVL Sbjct: 481 KIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSEIIPNLPDVLVDKRRLCQVL 540 Query: 541 INLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEP 600 INLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEP Sbjct: 541 INLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEP 600 Query: 601 FVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITIPCVFQDKDGPR 660 FVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITIPCVFQDKDGPR Sbjct: 601 FVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITIPCVFQDKDGPR 660 Query: 661 HRGQLVEVTNHGSPTPIIITLISKNSAYATTLSSYFRAKGYQMQWLNCLYPTAAELTQLV 720 HRGQLVEVTNHGSPTPIIITLISKNSAYATTLSSYFRAKGYQMQWLNCLYPTAAELTQLV Sbjct: 661 HRGQLVEVTNHGSPTPIIITLISKNSAYATTLSSYFRAKGYQMQWLNCLYPTAAELTQLV 720 Query: 721 KIGDQSCHVLVMDLANTGEEVKDKLDEIRKFFGSSPITIIALVDATEQTKSNIAQLEIAT 780 KIGDQSCHVLVMDLANTGEEVKDKLDEIRKFFGSSPITIIALVDATEQTKSNIAQLEIAT Sbjct: 721 KIGDQSCHVLVMDLANTGEEVKDKLDEIRKFFGSSPITIIALVDATEQTKSNIAQLEIAT 780 Query: 781 NELLVKPVRFHRLMEIVREETCPVPR 806 NELLVKPVRFHRLMEIVREETCPVPR Sbjct: 781 NELLVKPVRFHRLMEIVREETCPVPR 806 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 167 bits (422), Expect = 2e-43 Identities = 136/442 (30%), Positives = 219/442 (49%), Gaps = 58/442 (13%) Query: 258 QTFNQLQIYQREALEIAE-----RKYVEIAQRYELASQATRVWVWECQPKIHYFEVDPNL 312 Q +Q+ E IA +K E RY LA ++ WE + P + Sbjct: 266 QDVETVQLISNEIWRIARSRRLVKKLTESENRYRLAQAIAKIGNWELDYATNVLFWSPEV 325 Query: 313 ITWLGFEQPLEPADGDF-----FIHLGDRPMFWQAIEQSLEDPTMELSTELRLEAANGEI 367 FE + G + IH GDR + +A + L+ RL +G I Sbjct: 326 FNL--FEIAPQDFAGTYEAFLNLIHPGDRELVDEAYQCHLQK-YQPYDIVHRLLMPDGRI 382 Query: 368 YHCLLRGQIHQEQGEAFVKIIGTIADITEIKKAEEQLK---------------------- 405 + + ++ + GTI D+TE+++A+ L+ Sbjct: 383 KYVQEQCNTVFDKNNLPLLSRGTIQDVTELQEAQISLEHLNEKLEQRIQERTQELENSQE 442 Query: 406 --LSNKILAK-ATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIV 462 L K++A+ AT+ K EFLANMSHE+RTP+N+I+GM E + + L +Q L+ V Sbjct: 443 SLLEAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELV---LQTDLTSQQRNYLQKV 499 Query: 463 ENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVN--HSLTFVQQFAIQKQINLSS 520 + +G K+EAG+++L+ P SV ++ HS+ +Q A K + L+ Sbjct: 500 QYAGELLLGIINNILDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEA--KGLTLNF 557 Query: 521 EIIPNLPDVLV-DKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLS 579 + P +P +LV D+ RL Q+LINL NNA+KFT +G ++ ++ L+K EN Q+ +L Sbjct: 558 HLDPRIPPILVGDRLRLSQILINLGNNAVKFTNQG-EITIRGQLLKT---ENEQT--KLQ 611 Query: 580 FTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKL 639 F+V DTGIG+ D+ + +F+ F Q +++ +R+Y GTGLGL++ K + EL GG + + S + Sbjct: 612 FSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVV 671 Query: 640 NEGSRFKITI------PCVFQD 655 +GS F T+ P V QD Sbjct: 672 GQGSTFHFTVCLGTASPAVAQD 693 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 163 bits (412), Expect = 2e-42 Identities = 109/320 (34%), Positives = 169/320 (52%), Gaps = 22/320 (6%) Query: 330 FIHLGDRPMFWQAIEQSLEDPTM---ELSTELRLEAANGEIYHCLLRGQIHQEQGEAFVK 386 ++ LGDR +Q LE+ T S ++ GEI L +G+ Sbjct: 445 YVDLGDR-------QQMLEELTQFGRSQSRVYKMYNPRGEIRDILATFLATDYEGQK--G 495 Query: 387 IIGTIADITEIKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQ 446 I+G +ADIT IK AE ++K + ++ +A+++K +FLANMSHE+RTP+N+++GM Sbjct: 496 ILGWLADITPIKAAEAEMKRAKELAEEASRIKADFLANMSHEIRTPMNAVIGMTHLALKT 555 Query: 447 VYGPLNGKQVQSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSLTF 506 P +Q + L + SG+H KIEAG++ ++ + ++++ T Sbjct: 556 DLTP---RQREYLHKIRFSGQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATL 612 Query: 507 VQQFAIQKQINLSSEIIPNLPDVLV-DKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIK 565 + + A K + L +I NLP + D RL Q+LIN NNA+KFT +G +V Sbjct: 613 ISEKATNKGLELLFDIDRNLPRHFIGDPLRLGQILINYANNAVKFTEQGDITIVV----- 667 Query: 566 EQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKI 625 + +E L V DTGIGI+ + + N+F F Q DS+ R + GTGLGL++ K+I Sbjct: 668 -RLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRI 726 Query: 626 VELHGGSVTVTSKLNEGSRF 645 EL GG V V S+ +GS F Sbjct: 727 AELMGGEVGVESEYGQGSTF 746 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 147 bits (371), Expect = 1e-37 Identities = 98/267 (36%), Positives = 140/267 (52%), Gaps = 6/267 (2%) Query: 386 KIIGTIADITEIK-KAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQ 444 K++G I + + +AE L + + A + K EFLA++SHELRTPLN+I+G + L Sbjct: 130 KLVGQFLAIAQARHQAETTLTQAKEAADAANRAKTEFLASISHELRTPLNAIIGFSQLLH 189 Query: 445 NQVYGPLNGKQVQSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSL 504 P +L+I+ SG H KIEAGR L+ L+++ Sbjct: 190 RD---PSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQ 246 Query: 505 TFVQQFAIQKQINLSSEIIPNLPD-VLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADL 563 Q A +KQ+ L E P +P+ + D +L QVLINLL NAIKFT +GG + L Sbjct: 247 ALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCL 306 Query: 564 IKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVK 623 Q E + L F V DTG GI A ++ +F PF Q ++ L + G GLGL + + Sbjct: 307 TAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGL-KSCQGNGLGLPISQ 365 Query: 624 KIVELHGGSVTVTSKLNEGSRFKITIP 650 K V+L GG + V SK+++GS F IP Sbjct: 366 KFVQLMGGQIQVRSKVDQGSAFFFAIP 392 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 142 bits (359), Expect = 3e-36 Identities = 89/255 (34%), Positives = 137/255 (53%), Gaps = 7/255 (2%) Query: 396 EIKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQ 455 E++ + L+L++ A K FLANMSHELRTPLN+I+G E L + + + Sbjct: 416 ELENTVKALELASSEAEAANATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEEL 475 Query: 456 VQSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQ 515 V L+ + SG+ KIEAG+M+L L ++ L+ L + Sbjct: 476 VPDLDKILRSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDTISPLLKNNN 535 Query: 516 INLSSEIIPNLPDVLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSP 575 L EI +V D +L Q ++NLL+NA KFT +G I E+ K + + Sbjct: 536 NKLEVEISLESEEVYGDLIKLRQGILNLLSNASKFTKDG-----IISFIVEEFKVDEKD- 589 Query: 576 PQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTV 635 LSF V DTGIG+ ++++ +F+PF Q DS+ R+Y GTGLGL++ +K ++ GG + + Sbjct: 590 -WLSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYL 648 Query: 636 TSKLNEGSRFKITIP 650 TS++ GS F I +P Sbjct: 649 TSEIGVGSSFTIKLP 663 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 137 bits (345), Expect = 1e-34 Identities = 100/318 (31%), Positives = 157/318 (49%), Gaps = 20/318 (6%) Query: 396 EIKKAEEQLKLSNKILAK--ATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLN- 452 E + E +L + ++A A LK +F+ N+SHELRTPL SI+G+ TL P + Sbjct: 355 EKRVIERTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASL 414 Query: 453 --GKQVQSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSLTFVQQF 510 KQ L ++ +G+ ++E+G+ L+ S+ L + + Sbjct: 415 PPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGV 474 Query: 511 AIQKQINLSSEIIPNL--PDVLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQG 568 AI++QINL + N+ D+ RL Q+L LLNNA+KFTP G V+++ Sbjct: 475 AIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGTVILRI------W 528 Query: 569 KENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVEL 628 KE++Q+ F V DTGIGI +L +FE F + Y+ G+GL+L K++VEL Sbjct: 529 KESNQA----IFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVEL 584 Query: 629 HGGSVTVTSKLNEGSRFKITIPCVFQDKDGPRHRGQLVEVTNHGSPTPIIITLISKNSAY 688 HGG + V S +G+ F IP Q P +GQ+ + + P + +I ++ Sbjct: 585 HGGYIEVESSPGQGTIFTTVIP---QQNFPPTTKGQVQDKLDAAMPFNSSVIVIEQDEEI 641 Query: 689 ATTLSSYFRAKGYQMQWL 706 AT + YQ+ WL Sbjct: 642 ATLICELLTVANYQVIWL 659 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 135 bits (341), Expect = 4e-34 Identities = 101/336 (30%), Positives = 163/336 (48%), Gaps = 40/336 (11%) Query: 325 ADGDFFIHLGDRPMFWQAIEQSLEDPTMELSTELRLEAANGEIYHCLLRGQIHQEQGEAF 384 A+G +H DR W A E L LEA ++ L + + +++ E Sbjct: 707 ANGIIALHQCDRQRVWTADEIEL------------LEAIAEQMGIALAQAALLEKERERR 754 Query: 385 VKIIGTIADITEIKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQ 444 E+ + +L+ + A + K EFLA MSHE+RTP+N ++GM E L Sbjct: 755 ----------RELAQKNLELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELL- 803 Query: 445 NQVYGPLNGKQVQSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSL 504 + LN +Q+ ++ + SG KIEA ++ L+ + L+ L Sbjct: 804 --IMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVL 861 Query: 505 TFVQQFAIQKQINLSSEIIPNLPD-VLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADL 563 A K + L+ I P P +L D+ RL Q+L NL+ NA+KFT +G V+ Sbjct: 862 EMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSNLIGNALKFTEKGEVVLT---- 917 Query: 564 IKEQGKENSQS----------PPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYD 613 +K + + ++S ++ F + DTGIGI DR + +F+ F Q+DS+ R+Y Sbjct: 918 VKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYG 977 Query: 614 GTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITI 649 GTGLGL + +++ ++ GG +TVTS+ GS F+ I Sbjct: 978 GTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCI 1013 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 134 bits (336), Expect = 1e-33 Identities = 82/229 (35%), Positives = 124/229 (54%), Gaps = 11/229 (4%) Query: 422 LANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRHXXXXXXXXXXXXK 481 L+++ HE RTPL +I+G L++++YG LN KQ Q ++ NS H K Sbjct: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 Query: 482 IEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSEIIPNLPDVLVDKRRLCQVLI 541 I+A +L +V L ++ VQ A +KQ+ L+ I + VD+RR Q+LI Sbjct: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYVDQRRWKQILI 309 Query: 542 NLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPF 601 NLL+N +KFTP+G + +K K L F+V DTGIGI+ + ++F+PF Sbjct: 310 NLLSNGVKFTPKGSVTLA----VKATDK-------ALIFSVIDTGIGIDPEDQRDLFQPF 358 Query: 602 VQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITIP 650 QI + GTGLGL+L +++ +LHGG + +TS GS F +P Sbjct: 359 KQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILP 407 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 134 bits (336), Expect = 1e-33 Identities = 86/248 (34%), Positives = 134/248 (54%), Gaps = 15/248 (6%) Query: 398 KKAEEQLKLSNKILAKAT-------QLKDEFLANMSHELRTPLNSILGMIETLQNQVYGP 450 ++ +QL N+ L AT + K EFLA MSHE+RTP+N+I+GM L + Sbjct: 294 RRMRQQLAEQNQELVAATTAAEAANRSKSEFLATMSHEIRTPMNAIIGMTGLLLDT---D 350 Query: 451 LNGKQVQSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSLTFVQQF 510 L +Q + + NSG KIEAG++DL++ P + + +L V Sbjct: 351 LTTQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPS 410 Query: 511 AIQKQINLSSEII-PNLPDVLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGK 569 A QK + L + P P++ D RL Q+L+NLL+NA+KFT E G+V V +++ Sbjct: 411 ARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAVKFT-EAGQVKVTVEVVDHDAA 469 Query: 570 ENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELH 629 + Q+ F V DTGIGI ++ +F+ F Q +S++ RR+ GTGLGL++ ++ L Sbjct: 470 KGEY---QICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALM 526 Query: 630 GGSVTVTS 637 GG++ S Sbjct: 527 GGTIWAES 534 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 131 bits (330), Expect = 7e-33 Identities = 86/264 (32%), Positives = 137/264 (51%), Gaps = 11/264 (4%) Query: 393 DITEIKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLN 452 +I E ++ E +L+ + + A ++K EFLAN+SHE+RTP+N+ILG + L + Sbjct: 575 EIEERQRIEIKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCDLLLQKDLSLSQ 634 Query: 453 GKQVQSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAI 512 K+ L + +S + KIEAG++ + L P + ++ A Sbjct: 635 TKKY--LNAIGSSSKILLALIDDILDISKIEAGKLVIHLEPVDLRVIIREIKQIFDYKAE 692 Query: 513 QKQINLSSEIIPNLPDVLV-DKRRLCQVLINLLNNAIKFTPEGGKVV---VQADLIKEQG 568 K + L+ +I L + D RL Q+L NL+ NA+KFT EG + V+ ++ QG Sbjct: 693 SKSLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRSQG 752 Query: 569 KENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVEL 628 S L+ V DTGIGI + IF+ F Q R+Y GTGLGL++ +++ L Sbjct: 753 TYIS-----LAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYGGTGLGLTITRRLTAL 807 Query: 629 HGGSVTVTSKLNEGSRFKITIPCV 652 GG ++++S+L EGS F + P V Sbjct: 808 LGGEISLSSRLGEGSTFILHFPAV 831 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 127 bits (318), Expect = 2e-31 Identities = 84/256 (32%), Positives = 137/256 (53%), Gaps = 5/256 (1%) Query: 402 EQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEI 461 ++L + K +A++LK EFLA+ +HELRTPLN I+G + + + + ++ + +E Sbjct: 178 QELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDM-ADSEAEKHEFVEE 236 Query: 462 VENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSE 521 S KIEAGR+ ++L S ++ + F A K ++ + Sbjct: 237 AYQSALLLLNLINDILDLAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLT 296 Query: 522 IIPNLPDVLV--DKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLS 579 PN +LV ++R L QV++N++ NAIKFT EGG V + + E Q P L Sbjct: 297 A-PNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLK 355 Query: 580 FTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKL 639 +V DTGIG+ ++ + +F+ FVQID + ++ Y GTGLGL + +K+VE GG V S + Sbjct: 356 VSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFS-M 414 Query: 640 NEGSRFKITIPCVFQD 655 EG +T + ++ Sbjct: 415 GEGLGSTVTFTVLLEE 430 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 124 bits (310), Expect = 1e-30 Identities = 83/267 (31%), Positives = 143/267 (53%), Gaps = 11/267 (4%) Query: 391 IADITEIKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGP 450 + + E + + L + +I + K F+ANMSHELR+PLN+I+G + + P Sbjct: 338 LIEYNESLQKQVDLVRAKEIAESEAKAKSTFVANMSHELRSPLNAIIGFSQLMLRTKNLP 397 Query: 451 LNGKQVQSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSLTFVQQF 510 + +Q ++ I++ SG + KIEAG+ L+ + + L++ + Sbjct: 398 M--EQYENAGIIQRSGEYLLNLINNILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLK 455 Query: 511 AIQKQINLSSEIIPNLPD-VLVDKRRLCQVLINLLNNAIKFTPEGGKVVV-------QAD 562 A + I L +LP V D+ +L Q+L+NLL+NAIKFT EG V+ Q + Sbjct: 456 AANEGIELIFIRDHDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQE 515 Query: 563 LIKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLV 622 +I + ++ L FT+ DTG GI L+++FE F Q +S N + +GTGLGL++ Sbjct: 516 VINPETSTEPKNKYWLDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQ-EGTGLGLAIT 574 Query: 623 KKIVELHGGSVTVTSKLNEGSRFKITI 649 ++ ++L GG + V+S +++G+ F +I Sbjct: 575 RQFIKLMGGDINVSSVVDQGTTFSFSI 601 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 114 bits (286), Expect = 9e-28 Identities = 83/264 (31%), Positives = 140/264 (53%), Gaps = 27/264 (10%) Query: 393 DITEIKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLN 452 D+TE ++ EE ++L+ + + ++LK F + SHE RTPL++ L + L+N L+ Sbjct: 45 DVTERRRTEE-VRLALEREKELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLD 103 Query: 453 -GKQVQSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSLTFVQQFA 511 K+ ++L ++NS ++ + EAG+++ + N + L QQF Sbjct: 104 PDKRSRNLHRIQNSVKNMVQLLDDILIINRAEAGKLEFNPNWLDLKLLF-------QQFI 156 Query: 512 IQKQINLSSE----IIPNLPDV--LVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIK 565 + Q+++S + I + D LVD+R + +L NLL+NAIK++P GG++ + L Sbjct: 157 EEIQLSVSDQYYFDFICSAQDTKALVDERLVRSILSNLLSNAIKYSPGGGQIKIALSLDS 216 Query: 566 EQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKI 625 E Q+ F V D GIGI + IFEPF + + R GTGLGL + KK Sbjct: 217 E----------QIIFEVTDQGIGISPEDQKQIFEPFHRGKNV--RNITGTGLGLMVAKKC 264 Query: 626 VELHGGSVTVTSKLNEGSRFKITI 649 V+LH GS+ + S +++G+ I + Sbjct: 265 VDLHSGSILLKSAVDQGTTVTICL 288 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 107 bits (266), Expect = 2e-25 Identities = 95/349 (27%), Positives = 157/349 (44%), Gaps = 24/349 (6%) Query: 311 NLITWLGFEQPLEPADGDFFIHLGDRPMFWQAIE-----QSLED--PTMELSTELRLEAA 363 N W E G + + P+ WQ I ++LE P + T +E Sbjct: 827 NFSNWYYINPSFESLTGYTPDEMYEDPLLWQKIHREEYAENLEQARPNLGEWTIFSMEKK 886 Query: 364 NG-EIYHCLLRGQIHQEQGEAFVKIIGTIADITEIKKAEEQLKLSNKILAKATQLKDEFL 422 +G +I+ + + A V + G DIT+IK+AE + S + + K +F+ Sbjct: 887 DGTQIWAQTVEFLVDDLSDTARVVVFGQ--DITDIKRAEIETLRSLVKERELNEAKSQFV 944 Query: 423 ANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRHXXXXXXXXXXXXKI 482 +SHE RTPL SI+G E L K+ Q + ++NS + + Sbjct: 945 DIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKQQYINNIQNSSQRLKQLIDDVLSISRY 1004 Query: 483 EAGRMDLDLNPTSVSALVNHSL-TFVQQFAIQKQINLSSEIIPNLPDVLVDKRRLCQVLI 541 +A +++++L ++ L N + F + L+ + P+ LVD R L +L Sbjct: 1005 DANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPD-EHSLVDVRLLRHILE 1063 Query: 542 NLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPF 601 N+L+NAIK++ G + + D+ K++ L F V D GIGI +FE F Sbjct: 1064 NILSNAIKYSAPGSTITL--DISKDE--------EHLLFQVRDEGIGIPLQDQEKLFEAF 1113 Query: 602 VQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITIP 650 + + + GTGLGLS+VK+ VE GG++ V S +G+ I +P Sbjct: 1114 HRASNVGD--IPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLP 1160 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 79.3 bits (194), Expect = 4e-17 Identities = 66/254 (25%), Positives = 114/254 (44%), Gaps = 17/254 (6%) Query: 397 IKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQV 456 +++AEE +L+ + LK +F SH+L+ PLN + ++ L+ + L+ Sbjct: 509 LRQAEELAQLARNLERSNADLK-KFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDEDAK 567 Query: 457 QSLEIVENSGRHXXXXXXXXXXXXKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQI 516 ++ K++ L T V +V+ +L ++Q + Sbjct: 568 DFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLTF--TDVQEVVDKALANLKQRIEESGA 625 Query: 517 NLSSEIIPNLPDVLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPP 576 + + ++P V+ D+ +L QV NL+ N IKF + ++ IK G + Sbjct: 626 EIE---VGSMPAVMADQIQLMQVFQNLIANGIKFAGD------KSPKIKIWGDRQEDA-- 674 Query: 577 QLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVT 636 F V D GIGI+ IF F ++ + Y GTG+GL++ KKI+E H G + + Sbjct: 675 -WVFAVQDNGIGIDPQFFERIFVIFQRLHT--RDEYKGTGMGLAICKKIIEGHQGQIWLE 731 Query: 637 SKLNEGSRFKITIP 650 S EGS F +IP Sbjct: 732 SNPGEGSTFYFSIP 745 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.136 0.386 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 72,158 Number of Sequences: 78 Number of extensions: 3061 Number of successful extensions: 74 Number of sequences better than 1.0e-05: 15 Number of HSP's better than 0.0 without gapping: 13 Number of HSP's successfully gapped in prelim test: 2 Number of HSP's that attempted gapping in prelim test: 15 Number of HSP's gapped (non-prelim): 22 length of query: 806 length of database: 48,235 effective HSP length: 70 effective length of query: 736 effective length of database: 42,775 effective search space: 31482400 effective search space used: 31482400 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 96 (41.6 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000414 sll0649 (245 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000414 sll0649 466 e-134 SYNE-PCC-01-001437 slr0081 167 3e-44 SYNE-PCC-01-002033 slr0947 160 4e-42 SYNE-PCC-01-001461 slr0115 140 5e-36 SYNE-PCC-01-000242 sll0396 137 3e-35 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 124 4e-31 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 121 2e-30 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 116 6e-29 SYNE-PCC-01-002672 slr1837 115 1e-28 SYNE-PCC-01-000877 sll1330 109 1e-26 SYNE-PCC-01-000518 sll0789 107 4e-26 SYNE-PCC-01-002486 slr1584 106 8e-26 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 104 2e-25 SYNE-PCC-01-000523 sll0797 101 2e-24 SYNE-PCC-01-001306 sll1905 91 3e-21 SYNE-PCC-01-002086 slr1042 91 5e-21 SYNE-PCC-01-002731 slr1909 84 3e-19 SYNE-PCC-01-002489 slr1588 75 2e-16 SYNE-PCC-01-001133 sll1673 73 8e-16 SYNE-PCC-01-000800 sll1228 69 1e-14 SYNE-PCC-01-002635 slr1783 62 2e-12 SYNE-PCC-01-002788 slr1982 61 3e-12 SYNE-PCC-01-002618 slr1760 60 5e-12 SYNE-PCC-01-002221 slr1213 60 7e-12 SYNE-PCC-01-002617 slr1759 59 1e-11 SYNE-PCC-01-002873 slr2098 59 1e-11 SYNE-PCC-01-002879 slr2104 58 3e-11 SYNE-PCC-01-001132 sll1672 57 4e-11 SYNE-PCC-01-000608 sll0921 52 1e-09 SYNE-PCC-01-001160 sll1708 52 2e-09 SYNE-PCC-01-001575 slr0312 47 8e-08 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 47 8e-08 SYNE-PCC-01-001075 sll1592 44 6e-07 SYNE-PCC-01-002778 slr1969 40 7e-06 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 466 bits (1198), Expect = e-134 Identities = 230/245 (93%), Positives = 230/245 (93%) Query: 1 MWGNRTEFIAMPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIV 60 MWGNRTEFIAMPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIV Sbjct: 1 MWGNRTEFIAMPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIV 60 Query: 61 LDLMLPKLDGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 LDLMLPKLDGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE Sbjct: 61 LDLMLPKLDGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 Query: 121 XXXXXXXXXXXXXXXGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLAT 180 GQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLAT Sbjct: 121 LVARVRALLRRQLRQGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLAT 180 Query: 181 FMSYPGRVWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYK 240 FMSYPGRVWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYK Sbjct: 181 FMSYPGRVWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYK 240 Query: 241 FEDPD 245 FEDPD Sbjct: 241 FEDPD 245 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 167 bits (423), Expect = 3e-44 Identities = 94/235 (40%), Positives = 132/235 (56%), Gaps = 13/235 (5%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQE-------QVPDLIVLDLMLP 66 IL+VED+ I + I +L+ E + +DG L + QE DLI+LD+MLP Sbjct: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 Query: 67 KLDGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXX 126 +++GL+VC +R G + IL+++AKG E++++ GL GADDY+ KPFS +E Sbjct: 93 QVNGLDVCRSLRF--GGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCR 150 Query: 127 XXXXXXXXXGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPG 186 G + + DL + R EE+ L EF LL FMSYP Sbjct: 151 AMIRRQGLAGNNIAPFRKFR----DLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPR 206 Query: 187 RVWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 RVW+R QLIE +WG DF GD + VD HIR LR+K+E DP+ P ++ TV G GY+F Sbjct: 207 RVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 160 bits (405), Expect = 4e-42 Identities = 90/232 (38%), Positives = 133/232 (57%), Gaps = 12/232 (5%) Query: 16 IVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEVCT 75 +V+D+ I +++ L + + DGE + F E PDL+VLD+M+PKLDG VC Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 76 RIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXXXXXXX 135 +R++ D I+MLTA G+ DRI GL GADDY+VKPFSP+E Sbjct: 61 ELRKE---SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 Query: 136 GQ---PVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRT 192 G P + + ++D ++ Q Y+GD E + LTG+EF+LL +S G ++R+ Sbjct: 118 GMPGIPSSGVLQIATIRIDTNKRQV--YKGD--ERIRLTGMEFSLLELLVSRSGEPFSRS 173 Query: 193 QLIEKLWG--NDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFE 242 ++++++WG + D RVVD HI RLR K+E DP+NP I T G GY F+ Sbjct: 174 EILQEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQ 225 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 140 bits (352), Expect = 5e-36 Identities = 84/234 (35%), Positives = 121/234 (51%), Gaps = 6/234 (2%) Query: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDG 70 MP ILI++DD I+ L+ LE + DG G + + PDLI+LDLMLPK+DG Sbjct: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 Query: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXX 130 VC R+R+ + D +LMLTA G+ D+I G +GADDYL KPF E Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 Query: 131 XXXXXGQPV--GQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRV 188 Q +I + ++ +A + + ++LT LEF LL + G+ Sbjct: 121 RTDRIPQAAKHSEILNQGPLTLVPERFEAIWF----GKSIKLTHLEFELLHCLLQRHGQT 176 Query: 189 WNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFE 242 + + ++ ++WG + D + HIR LR K+EP+P P FIKTV G GY E Sbjct: 177 VSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLE 230 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 137 bits (346), Expect = 3e-35 Identities = 83/232 (35%), Positives = 132/232 (56%), Gaps = 14/232 (6%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 +L+VE+++++A+ + L+ E + V DG G QE PDLI+++ LP + GLE+ Sbjct: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLEL 64 Query: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXXXXX 133 C R+R+ GS+ P I+++TAK + +R++GL GADDY+VKPF+ E Sbjct: 65 CRRLREM-GSRIP-IILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTH 122 Query: 134 XXGQPVGQIYRTNHFQVDLDQHQASR--YQGDRQEELELTGLEFNLLATFMSYPGRVWNR 191 V Q DL ++++R +GDR ++LT EF LL +S+ +V R Sbjct: 123 TTSDEVLQF-------ADLRFNRSTREIQRGDRL--IDLTAKEFELLDYLLSHARQVLTR 173 Query: 192 TQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFED 243 Q++E++WG DF GD +++ +IR LR K+E P I+TV G+GY D Sbjct: 174 EQILERVWGYDFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGYVLRD 224 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 124 bits (310), Expect = 4e-31 Identities = 81/228 (35%), Positives = 124/228 (54%), Gaps = 9/228 (3%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 ILIVED+ I ++I L ++ + I +D +T + +E P LI+LD MLP G++ Sbjct: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQF 63 Query: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXXXXX 133 I++Q I+MLTAK E D I L+ GADDY+ KPFSP+ Sbjct: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIY 123 Query: 134 XXGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRTQ 193 + Q + + +D + Q +Q Q+E+ L+ EF LL FM +P +V++R Q Sbjct: 124 ---EQQSQFIQIDELSID-ENAQRVFFQ---QQEINLSSTEFKLLHFFMRHPEKVYSREQ 176 Query: 194 LIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 L+ ++W ND + R VD++IRRLR+ + P +I+TV G GY+F Sbjct: 177 LLNRIWHNDLEVEYRTVDSYIRRLRRNLAPFQCE-HYIQTVRGSGYRF 223 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 121 bits (304), Expect = 2e-30 Identities = 72/234 (30%), Positives = 115/234 (49%), Gaps = 10/234 (4%) Query: 12 PNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 P IL+VED+ ++ E E + +G I +L+V+D+ LP +GL Sbjct: 4 PKILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGL 63 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXXX 131 + +R++ ++ LT + E+D+I+GL GADDYL KPF+PRE Sbjct: 64 LLARELREELSLP---LIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 Query: 132 XXXXGQPVG----QIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGR 187 + + YR N +++DL+ H +G +E +L EF + F PG+ Sbjct: 121 AMPHQEKENTFGREFYRFNGWKLDLNSHSLITPEG---QEFKLPRSEFRAMLHFCENPGK 177 Query: 188 VWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 + R +L++K+ G + +R VD IRR+RK E P P I T+ G GY+F Sbjct: 178 LQTREELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 116 bits (291), Expect = 6e-29 Identities = 76/230 (33%), Positives = 117/230 (50%), Gaps = 8/230 (3%) Query: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDG 70 M +L+V+DD E+ +L+ LE E F N+G L+ E L++LD+M+PKL+G Sbjct: 1 MSKLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESYK-LVLLDVMMPKLNG 59 Query: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXX 130 +E IR+ S P ++MLTA+GE+IDR++GL GADD L KPF+ RE Sbjct: 60 IETLKEIRKV--SNVP-VMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILR 116 Query: 131 XXXXXGQPVGQIYRTNHFQVDLD-QHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVW 189 + + + + L H + Y +E L LT EF +L + G V Sbjct: 117 RSASPSNNISNVEILSFDGITLHFSHGIATY---NEENLNLTDYEFKILCLLLKSKGNVV 173 Query: 190 NRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGY 239 +R +L ++ +R +D HI LR+K+ P++ KT+ G GY Sbjct: 174 SREELSLEVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGY 223 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 115 bits (289), Expect = 1e-28 Identities = 79/239 (33%), Positives = 118/239 (49%), Gaps = 14/239 (5%) Query: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDG 70 M NIL+V+D+ + + + + L + T V + G+TGL + DL++LD MLP++ G Sbjct: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 Query: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXX------- 123 LE+C +IR G P +L LTAK DR+ GL G DDYL+KPF RE Sbjct: 61 LEICRQIRIL-GHSTP-VLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLR 118 Query: 124 XXXXXXXXXXXXGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMS 183 G + N+ +D+ +Q + QG R + L+ E LL F+ Sbjct: 119 RQSHGETITETLGAVKNNLLSVNNVSLDV-ANQVAYCQGQR---IALSEKEVALLTLFLQ 174 Query: 184 YPGRVWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFE 242 PG++ + ++ LW + V+ +R LR+KIE P P I +V G GY FE Sbjct: 175 APGQILSHEEIYSHLWPGESPPSSNVLAALVRLLRRKIE-QPNAPRLINSVYGKGYCFE 232 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 109 bits (272), Expect = 1e-26 Identities = 75/228 (32%), Positives = 113/228 (49%), Gaps = 10/228 (4%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 I +VE + + L+ L++ + + + F Q+P L V+D L DG+E+ Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 Query: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXXXXX 133 C + QQ S I +L+AK E D + GL GADDYL KPF +E Sbjct: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 Query: 134 XXGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRTQ 193 P+ Y ++DL Q + YQG+ ++LT EF+LL G +RT+ Sbjct: 123 TVAAPLLLDYGV--LKIDLVQRRVE-YQGNF---VDLTPQEFSLLYVLTQAEGSALSRTE 176 Query: 194 LIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 L+ + W + + R +DTH+ LRKKIE DP P+ I+TV +GY+F Sbjct: 177 LLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRF 223 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 107 bits (267), Expect = 4e-26 Identities = 74/231 (32%), Positives = 112/231 (48%), Gaps = 11/231 (4%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPD--LIVLDLMLPKLDGL 71 +L+VED+ ++ + + L RE + DG + + L + D M+P L GL Sbjct: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXXX 131 E+C ++R Q S ILMLTAK + DR+ GL GADDYL+KPF E Sbjct: 63 ELCQKLRGQRSSLP--ILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRR 120 Query: 132 XXXXGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNR 191 QP Q + + +D + Q + LT EF LL FM +P ++ + Sbjct: 121 SPEL-QP--QQLQVGQWWLD---YGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSS 174 Query: 192 TQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFE 242 Q+ +LW VV +R LR+K+E + ++ I+TV GLGY+F+ Sbjct: 175 EQIKNQLWALSAESTSNVVAAQVRLLRRKLE-EYSHGNLIETVYGLGYRFQ 224 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 106 bits (264), Expect = 8e-26 Identities = 71/227 (31%), Positives = 112/227 (49%), Gaps = 9/227 (3%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 IL+VEDD +A+ + E L + +T + D DL++LD+MLP+LDG+ + Sbjct: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 Query: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXXXXX 133 C + R S ILM+TA+ D+I GL GADDY+VKP E Sbjct: 63 CQKWRSH--SYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGC 120 Query: 134 XXGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRTQ 193 QPV ++D ++ S E L LT E+++L + RV +R+ Sbjct: 121 ATCQPV---LEWGPIRLDPSTYEVSY----DNEVLSLTRKEYSILELLLRNGRRVLSRSM 173 Query: 194 LIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYK 240 +I+ +W + +E V H+R LR+K++ + I+TV G+GY+ Sbjct: 174 IIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 104 bits (260), Expect = 2e-25 Identities = 79/226 (34%), Positives = 110/226 (48%), Gaps = 14/226 (6%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 IL++EDD I ++ L + F DG+TG+ D +VLDL LPKLDGLEV Sbjct: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 Query: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXXXXX 133 + R +D +L+LTA+ +R+ GL +GADDYL KPF+ E Sbjct: 63 LQQWRS--NHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRY 120 Query: 134 XXGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRTQ 193 V V LDQ+Q S + + + + LT E+ LL FM RV +R+ Sbjct: 121 GYHHSV-----IEQAGVKLDQNQRSVWLNN--QPISLTSREYKLLELFMLNKDRVLSRSS 173 Query: 194 LIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGY 239 + EKL D +D HI LR+K+ FI+TV G+GY Sbjct: 174 IEEKLSSWDEEISSGALDVHIYNLRQKL-----GKQFIRTVHGVGY 214 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 101 bits (252), Expect = 2e-24 Identities = 75/234 (32%), Positives = 114/234 (48%), Gaps = 12/234 (5%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPD--LIVLDLMLPKLDGL 71 IL+VED+ ++ I++ L E++ DG + Q + L ++D +LP L GL Sbjct: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREXXXXXXXXXXX 131 E+C ++R Q S +LMLTA GE +R+ GL GADDYL KPF E Sbjct: 63 ELCQKLRTQGNSLP--VLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRR 120 Query: 132 XXXXGQPVGQIYRTNHFQVDLDQHQASRYQGD----RQEELELTGLEFNLLATFMSYPGR 187 QP QI +F +D + S + ++E+ LT EF + M P R Sbjct: 121 SPQF-QP--QILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPER 177 Query: 188 VWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 + + +++ ++LW D VV +R +R+K+ P IKTV G GY+F Sbjct: 178 IISGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNC-PCPIKTVPGQGYRF 230 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 91.3 bits (225), Expect = 3e-21 Identities = 46/107 (42%), Positives = 67/107 (62%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 IL+V+D +E +I E LE E ++ G L+ + PDLI+LDLM+P +DGLEV Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 C R++Q P ++D ++ LTA E+ D + + GA DY+ KPFSP E Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPE 126 Score = 57.0 bits (136), Expect = 6e-11 Identities = 33/103 (32%), Positives = 60/103 (58%), Gaps = 1/103 (0%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 IL+ ED+ Q+ + L++ + V N+G+ L + D++++D+ +P++DGL Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 74 CTRIRQQPG-SKDPYILMLTAKGEEIDRIIGLSTGADDYLVKP 115 IR+ G S+ P+I+ +TA E DR L++G +DY+ KP Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 90.5 bits (223), Expect = 5e-21 Identities = 43/110 (39%), Positives = 66/110 (60%) Query: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDG 70 M +L+VED ++I L+ + + DG L Q PDL+VLD+++P+++G Sbjct: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 Query: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 EVC RI+ P +K+ ++M ++KGEE DR G+ GAD Y+ KPF P E Sbjct: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPME 136 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 84.3 bits (207), Expect = 3e-19 Identities = 38/108 (35%), Positives = 65/108 (60%) Query: 13 NILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLE 72 ++L+V+DD + L+++ LE + + +G L + VPD+IV D+M+P++DG Sbjct: 9 HLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYA 68 Query: 73 VCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 ++RQ P ++ L+AKG+ +R+ GL+ GAD Y+ KPF P E Sbjct: 69 FIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEE 116 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 75.5 bits (184), Expect = 2e-16 Identities = 41/112 (36%), Positives = 65/112 (58%), Gaps = 2/112 (1%) Query: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQ--EQVPDLIVLDLMLPKL 68 M IL+VED+ I +LI ETL E + + +G L + E +PDLI+ D+M+P++ Sbjct: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 Query: 69 DGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 DG + T +++ + + LTA G D G+++GADDYL+KPF + Sbjct: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQED 112 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 73.2 bits (178), Expect = 8e-16 Identities = 37/108 (34%), Positives = 60/108 (55%) Query: 13 NILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLE 72 NIL+V+D QL+ + L +T G+ LR Q + PDLI+LD+ +P +DG + Sbjct: 10 NILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQ 69 Query: 73 VCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 VC I+++ +D I+ ++A G+ D++ G DY+ KPF E Sbjct: 70 VCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEE 117 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 68.9 bits (167), Expect = 1e-14 Identities = 36/107 (33%), Positives = 57/107 (53%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 +L+V+D E L+R+ L F +GE + +++ P +I++D+ +P LDG Sbjct: 420 VLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRST 479 Query: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 +I+ P + I+ LTA E +R LS G DD+L KPF P E Sbjct: 480 TQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEE 526 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 62.0 bits (149), Expect = 2e-12 Identities = 32/109 (29%), Positives = 59/109 (54%), Gaps = 1/109 (0%) Query: 13 NILIVEDDQEIAQLIRETLERE-QFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 ++L+V+D+ + + ++ LE F + + Q +P L++ D+M+P++DG Sbjct: 57 SLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGY 116 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 + ++R+ + ++ LTA+G DRI G TG D +L KPF P E Sbjct: 117 QFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDE 165 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 61.2 bits (147), Expect = 3e-12 Identities = 32/106 (30%), Positives = 55/106 (51%) Query: 10 AMPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLD 69 +M +L+VED++ ++ L R+ + ++ DGE + + + P LI++D+ LP +D Sbjct: 3 SMAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIID 62 Query: 70 GLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKP 115 G +I+ P I+ LTA DR ++ G DDY KP Sbjct: 63 GWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKP 108 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 60.5 bits (145), Expect = 5e-12 Identities = 32/106 (30%), Positives = 54/106 (50%) Query: 10 AMPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLD 69 A IL+V+DD + +R L++E + +GE L F E P++++LD ++P +D Sbjct: 10 AAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMD 69 Query: 70 GLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKP 115 G C + + + P +LM+T +E GA DY+ KP Sbjct: 70 GFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKP 115 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 60.1 bits (144), Expect = 7e-12 Identities = 37/105 (35%), Positives = 61/105 (58%), Gaps = 5/105 (4%) Query: 14 ILIVEDDQEIAQLIRETLEREQFT-CIVTNDGETGLRIFQEQVPDLIVLDLMLP-KLDGL 71 ILIVED++ +AQ I + L+ + + C++ +DG T L+ E PDL++LD+ + ++DG+ Sbjct: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPF 116 EV RI+ Y L + GE ++R T Y++KPF Sbjct: 65 EVAERIKSLYSIPIVY-LTAFSDGETLER--AQKTNPQGYVIKPF 106 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 59.3 bits (142), Expect = 1e-11 Identities = 33/115 (28%), Positives = 57/115 (49%), Gaps = 1/115 (0%) Query: 4 NRTEFIAMPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDL 63 N T IL+ ED+ ++ + L + + N+G+ + +++ DL+++D+ Sbjct: 1182 NATSLQPALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDM 1241 Query: 64 MLPKLDGLEVCTRIRQQ-PGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFS 117 +P +DG+ C IRQ P + P I+ +TA DR L G D Y+ KP S Sbjct: 1242 QMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPIS 1296 Score = 45.1 bits (105), Expect = 2e-07 Identities = 30/102 (29%), Positives = 53/102 (51%), Gaps = 12/102 (11%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDL--IVLDLMLPKLDGL 71 +LIV+D++ +++++ + C GE+ L F + PDL +LDL +P +DG+ Sbjct: 1036 VLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFA-RCPDLDAAILDLQMPNMDGI 1094 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLV 113 + +RQ KD I++L++ GL GAD+ V Sbjct: 1095 TLAHHLRQFAQGKDLPIILLSS---------GLVAGADELSV 1127 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 58.9 bits (141), Expect = 1e-11 Identities = 33/110 (30%), Positives = 55/110 (50%), Gaps = 5/110 (4%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPD-----LIVLDLMLPKL 68 +L+V+D+ ++++ LE+ +F G L E + ++ +D +P + Sbjct: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 Query: 69 DGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSP 118 DGLEV R++ + P I ++TA G E + S G DD LVKP SP Sbjct: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISP 882 Score = 57.0 bits (136), Expect = 6e-11 Identities = 34/107 (31%), Positives = 53/107 (49%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 IL+VED++ ++ E L F V +G L L+++D+ +P++DG+E Sbjct: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEA 986 Query: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 IRQ P I+ +TA + DR L G +D+L KP P E Sbjct: 987 TIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEE 1033 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 57.8 bits (138), Expect = 3e-11 Identities = 31/106 (29%), Positives = 54/106 (50%) Query: 13 NILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLE 72 +IL+VED++ + + L + V N+G+ L + D I++D+ +P L+G + Sbjct: 719 SILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYD 778 Query: 73 VCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSP 118 IRQQ ++ I+ +TA D+ L G +D+L KP P Sbjct: 779 ATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKP 824 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 57.4 bits (137), Expect = 4e-11 Identities = 33/103 (32%), Positives = 54/103 (52%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 IL+V+D QL+ + L F ++G+ + +++ P LI +D+ +P +DG E Sbjct: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 Query: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPF 116 I+ Q ++ LTA E ++ I LS G DD+L KPF Sbjct: 692 TKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 52.4 bits (124), Expect = 1e-09 Identities = 29/103 (28%), Positives = 59/103 (57%), Gaps = 2/103 (1%) Query: 14 ILIVEDDQEIAQLIRETLERE-QFTCI-VTNDGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 I ++ED+ I Q +++ L E F + +G GL + Q+ PD++++D+ LP ++G+ Sbjct: 6 IALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGI 65 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVK 114 +V ++++ P + +++LT +E + S GAD Y +K Sbjct: 66 DVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMK 108 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 51.6 bits (122), Expect = 2e-09 Identities = 42/104 (40%), Positives = 58/104 (55%), Gaps = 6/104 (5%) Query: 14 ILIVEDDQEIAQLIRETL-EREQFTCIVTNDGETGLRIFQEQV--PDLIVLDLMLPKLDG 70 ILIVEDD + + + L E+F I D G + Q V PDLIV+D+ LP LDG Sbjct: 19 ILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGA-VQQAAVLNPDLIVMDIGLPGLDG 77 Query: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVK 114 +E +I+Q S +I++LT+ + I LS+GAD Y VK Sbjct: 78 IEATKQIKQT--SPQIHIVVLTSHTLPNEIIAALSSGADAYCVK 119 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 46.6 bits (109), Expect = 8e-08 Identities = 30/109 (27%), Positives = 54/109 (49%), Gaps = 4/109 (3%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTN--DGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 +LI +D Q + + R+ ++ +GE + +F+E PD+ ++DL +P+++G+ Sbjct: 9 VLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGV 68 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRE 120 + I K I++LT + D GL GA YL+K P E Sbjct: 69 AAISAICAI--VKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDE 115 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 46.6 bits (109), Expect = 8e-08 Identities = 30/107 (28%), Positives = 55/107 (51%), Gaps = 4/107 (3%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTN--DGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 +L+++D + + I++ +E + +V + G G+ + + PD+I+LDL + L GL Sbjct: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSP 118 + +R + D IL+LT + D + GAD YL+K P Sbjct: 67 DTLKGLRAE--GVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEP 111 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 43.5 bits (101), Expect = 6e-07 Identities = 31/103 (30%), Positives = 52/103 (50%), Gaps = 4/103 (3%) Query: 14 ILIVEDDQEIAQLIRETLEREQFTCIV--TNDGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 IL+VEDD+ + L +E + DGET + +Q+ D+++LD+ LP + G+ Sbjct: 10 ILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGGI 69 Query: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVK 114 E C +I++ IL ++ I+R+I A Y VK Sbjct: 70 EACHQIKKIHPQLPVLILTSHSQPALINRLI--EAQAQGYCVK 110 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 40.0 bits (92), Expect = 7e-06 Identities = 32/112 (28%), Positives = 51/112 (45%), Gaps = 5/112 (4%) Query: 10 AMP---NILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLP 66 AMP +++++E D+EIA LI E L + I D L+ + P LI++D Sbjct: 625 AMPFNSSVIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQPGLIIVDGDF- 683 Query: 67 KLDGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSP 118 +D EV I++ + +L+ + G DDYL+KP P Sbjct: 684 -VDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDYLLKPLQP 734 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.142 0.424 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 23,988 Number of Sequences: 78 Number of extensions: 1027 Number of successful extensions: 81 Number of sequences better than 1.0e-05: 34 Number of HSP's better than 0.0 without gapping: 28 Number of HSP's successfully gapped in prelim test: 6 Number of HSP's that attempted gapping in prelim test: 8 Number of HSP's gapped (non-prelim): 38 length of query: 245 length of database: 48,235 effective HSP length: 60 effective length of query: 185 effective length of database: 43,555 effective search space: 8057675 effective search space used: 8057675 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000511 sll0782 (369 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000511 sll0782 724 0.0 SYNE-PCC-01-001575 slr0312 58 4e-11 SYNE-PCC-01-000608 sll0921 53 2e-09 SYNE-PCC-01-001160 sll1708 51 7e-09 SYNE-PCC-01-001075 sll1592 51 7e-09 SYNE-PCC-01-001039 sll1544 49 2e-08 SYNE-PCC-01-002951 ssl0564 48 4e-08 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 45 3e-07 SYNE-PCC-01-002731 slr1909 45 5e-07 >SYNE-PCC-01-000511 sll0782 Length = 369 Score = 724 bits (1868), Expect = 0.0 Identities = 369/369 (100%), Positives = 369/369 (100%) Query: 1 MLDSAQLIFDLQKVNTTSKRISGCLDTTAITKEITEALIHDFHCVFARIWLTEPDGASLK 60 MLDSAQLIFDLQKVNTTSKRISGCLDTTAITKEITEALIHDFHCVFARIWLTEPDGASLK Sbjct: 1 MLDSAQLIFDLQKVNTTSKRISGCLDTTAITKEITEALIHDFHCVFARIWLTEPDGASLK 60 Query: 61 LVASSGLHTSTNGSFARVPMGAYKVGKIAQSCIPFLSNHLANETWVKDRDWAIANNIRGF 120 LVASSGLHTSTNGSFARVPMGAYKVGKIAQSCIPFLSNHLANETWVKDRDWAIANNIRGF Sbjct: 61 LVASSGLHTSTNGSFARVPMGAYKVGKIAQSCIPFLSNHLANETWVKDRDWAIANNIRGF 120 Query: 121 AGYPLVGHDRVIGVLAVFSEAPFVAEFLEVLQVLCMAVAIAIDAVRQLQSETNTINTTQF 180 AGYPLVGHDRVIGVLAVFSEAPFVAEFLEVLQVLCMAVAIAIDAVRQLQSETNTINTTQF Sbjct: 121 AGYPLVGHDRVIGVLAVFSEAPFVAEFLEVLQVLCMAVAIAIDAVRQLQSETNTINTTQF 180 Query: 181 LDDQIPLPDVLARLLSQTKLTLIGTEKKLSPTLAYLLIRTTEIFNRLSCNYCRLIYGEIS 240 LDDQIPLPDVLARLLSQTKLTLIGTEKKLSPTLAYLLIRTTEIFNRLSCNYCRLIYGEIS Sbjct: 181 LDDQIPLPDVLARLLSQTKLTLIGTEKKLSPTLAYLLIRTTEIFNRLSCNYCRLIYGEIS 240 Query: 241 VTIEAIVEASVSEAFNTDGRSPFKEIEFLAHHVGGEFRSQSSVNQSILQISLQLPYDGFQ 300 VTIEAIVEASVSEAFNTDGRSPFKEIEFLAHHVGGEFRSQSSVNQSILQISLQLPYDGFQ Sbjct: 241 VTIEAIVEASVSEAFNTDGRSPFKEIEFLAHHVGGEFRSQSSVNQSILQISLQLPYDGFQ 300 Query: 301 NIKLNKHLLSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAI 360 NIKLNKHLLSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAI Sbjct: 301 NIKLNKHLLSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAI 360 Query: 361 YQATVQGFI 369 YQATVQGFI Sbjct: 361 YQATVQGFI 369 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 58.2 bits (139), Expect = 4e-11 Identities = 31/67 (46%), Positives = 43/67 (64%) Query: 303 KLNKHLLSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQ 362 +L+ LSERE E++ LAQG+ + DIA L I E TVK HVN L+KL+ +R QA+ Sbjct: 141 RLSNPELSERELEVLGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGDRTQAVIV 200 Query: 363 ATVQGFI 369 A +G + Sbjct: 201 AVKRGIV 207 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 52.8 bits (125), Expect = 2e-09 Identities = 27/61 (44%), Positives = 39/61 (63%) Query: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQATVQGF 368 L+ERE E++ L+ G + DIAE+L+I+ TVK HV L+KL A +R QA +A G Sbjct: 161 LTERELEVLQLIVDGCSNADIAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGL 220 Query: 369 I 369 + Sbjct: 221 V 221 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 50.8 bits (120), Expect = 7e-09 Identities = 23/61 (37%), Positives = 41/61 (67%) Query: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQATVQGF 368 LSERE +++ L+ +G +++IA+ L++S +T+K HV G ++KL+ +R QA A G Sbjct: 166 LSEREIDVLKLIVEGKSNQEIAQTLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSGL 225 Query: 369 I 369 + Sbjct: 226 V 226 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 50.8 bits (120), Expect = 7e-09 Identities = 47/160 (29%), Positives = 83/160 (51%), Gaps = 28/160 (17%) Query: 207 KKLSPTLAYLLIRTTE---IFNRL----SCNYCRLIYGEISVTIEAIVEASVSEAFNTDG 259 KK+ P L L++ + + NRL + YC + G + T+ + + + AF D Sbjct: 76 KKIHPQLPVLILTSHSQPALINRLIEAQAQGYC--VKGVAAETLVLAIRSVAAGAFWWDA 133 Query: 260 RSPFKEIEFLAHHVGGEFRSQSSVNQSILQISLQLPYDGFQNIKLNKHLLSEREKEIVSL 319 + +EI+ H SS ++L ++ DG ++ L++RE EI+SL Sbjct: 134 IAS-QEIQTAFQH--------SSSTGAVLPLA---DADG-------ENPLTKRELEILSL 174 Query: 320 LAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQA 359 +A+G +++IA+EL+I+ TV+ HV+ L KL ++R QA Sbjct: 175 VAKGKSNQEIADELYIAPGTVRVHVHTILRKLEVRDRTQA 214 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 49.3 bits (116), Expect = 2e-08 Identities = 24/67 (35%), Positives = 42/67 (62%) Query: 303 KLNKHLLSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQ 362 K K L++RE I+ L+A+G + +I +ELH++ STV+ +V + KLNA++R A Sbjct: 161 KSQKDELTQREVAILRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIA 220 Query: 363 ATVQGFI 369 +G++ Sbjct: 221 GLREGYL 227 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 48.1 bits (113), Expect = 4e-08 Identities = 25/59 (42%), Positives = 38/59 (64%) Query: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQATVQG 367 LS+RE EI+ L+A GL +++++E L IS+ TV HV+ L K N +NR + + A G Sbjct: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWG 70 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 45.4 bits (106), Expect = 3e-07 Identities = 22/51 (43%), Positives = 32/51 (62%) Query: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQA 359 L++RE ++ +A GL ++ IA +L ISE TVK H+ L KLN +R A Sbjct: 149 LTDREMGVLRQIATGLSNKQIAAQLFISEETVKVHIRNLLRKLNVHSRVAA 199 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 44.7 bits (104), Expect = 5e-07 Identities = 20/48 (41%), Positives = 33/48 (68%) Query: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNR 356 L+ E +++ L+AQGL +R+IA+ L +S+ TV+ HV+ L+K NR Sbjct: 153 LTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNR 200 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.135 0.386 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 31,491 Number of Sequences: 78 Number of extensions: 1257 Number of successful extensions: 15 Number of sequences better than 1.0e-05: 9 Number of HSP's better than 0.0 without gapping: 9 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 6 Number of HSP's gapped (non-prelim): 9 length of query: 369 length of database: 48,235 effective HSP length: 64 effective length of query: 305 effective length of database: 43,243 effective search space: 13189115 effective search space used: 13189115 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.9 bits) S2: 93 (40.4 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000518 sll0789 (232 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000518 sll0789 445 e-128 SYNE-PCC-01-000523 sll0797 239 7e-66 SYNE-PCC-01-002672 slr1837 148 1e-38 SYNE-PCC-01-002486 slr1584 146 5e-38 SYNE-PCC-01-000242 sll0396 144 2e-37 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 124 3e-31 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 120 3e-30 SYNE-PCC-01-001437 slr0081 117 2e-29 SYNE-PCC-01-000414 sll0649 107 3e-26 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 100 3e-24 SYNE-PCC-01-002033 slr0947 99 1e-23 SYNE-PCC-01-001461 slr0115 99 2e-23 SYNE-PCC-01-000877 sll1330 79 1e-17 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 79 2e-17 SYNE-PCC-01-002635 slr1783 64 4e-13 SYNE-PCC-01-002489 slr1588 59 1e-11 SYNE-PCC-01-001306 sll1905 58 3e-11 SYNE-PCC-01-002731 slr1909 56 1e-10 SYNE-PCC-01-000800 sll1228 51 4e-09 SYNE-PCC-01-001075 sll1592 50 5e-09 SYNE-PCC-01-002873 slr2098 49 1e-08 SYNE-PCC-01-002086 slr1042 49 1e-08 SYNE-PCC-01-001160 sll1708 48 2e-08 SYNE-PCC-01-001133 sll1673 48 3e-08 SYNE-PCC-01-002618 slr1760 45 2e-07 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 44 5e-07 SYNE-PCC-01-002617 slr1759 43 8e-07 SYNE-PCC-01-002879 slr2104 43 1e-06 SYNE-PCC-01-002788 slr1982 42 2e-06 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 445 bits (1144), Expect = e-128 Identities = 220/232 (94%), Positives = 220/232 (94%) Query: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS Sbjct: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 Query: 61 GLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXX 120 GLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAE Sbjct: 61 GLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRR 120 Query: 121 XPELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKNQ 180 PELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKNQ Sbjct: 121 SPELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKNQ 180 Query: 181 LWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGYRFQPHPTHAEQ 232 LWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGYRFQPHPTHAEQ Sbjct: 181 LWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGYRFQPHPTHAEQ 232 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 239 bits (609), Expect = 7e-66 Identities = 126/234 (53%), Positives = 158/234 (67%), Gaps = 7/234 (2%) Query: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 MR+LLVEDE DLGMA++K L E YVVDWV DG+ AW YL+ W YTLAI DW++PGLS Sbjct: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 Query: 61 GLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXX 120 GLELCQKLR Q +SLP+LMLTA + +RVEGLDAGADDYL KPF MAE Sbjct: 61 GLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRR 120 Query: 121 XPELQPQQLQVGQWWLDYG----TFAVVTP---EQARITLTAKEFQLLEYFMKHPQQILS 173 P+ QPQ L +G + LD + + P E+ I LT +EFQ+ +Y M++P++I+S Sbjct: 121 SPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS 180 Query: 174 SEQIKNQLWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGYRFQPHP 227 +I+ QLW L E SNVVAAQ+RL+RRKL + + I+TV G GYRF P Sbjct: 181 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGYRFTLSP 234 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 148 bits (374), Expect = 1e-38 Identities = 94/232 (40%), Positives = 125/232 (53%), Gaps = 13/232 (5%) Query: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 +LLV+DE L L KAL + + +D G + G Y L I DWM+P +SGL Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAG--QYDLLILDWMLPQVSGL 61 Query: 63 ELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAE----------XXX 112 E+C+++R S P+L LTAKD + DRV GLDAG DDYLIKPF + E Sbjct: 62 EICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQS 121 Query: 113 XXXXXXXXXPELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQIL 172 ++ L V LD V + RI L+ KE LL F++ P QIL Sbjct: 122 HGETITETLGAVKNNLLSVNNVSLDVAN-QVAYCQGQRIALSEKEVALLTLFLQAPGQIL 180 Query: 173 SSEQIKNQLWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGYRFQ 224 S E+I + LW + +SNV+AA VRLLRRK+E+ + LI +VYG GY F+ Sbjct: 181 SHEEIYSHLWPGESPPSSNVLAALVRLLRRKIEQPNAPRLINSVYGKGYCFE 232 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 146 bits (369), Expect = 5e-38 Identities = 85/223 (38%), Positives = 124/223 (55%), Gaps = 4/223 (1%) Query: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 MR+LLVED+ L L +AL + Y VD D +LAW Y + + Y L I D M+P L Sbjct: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASR--LEYDLVILDVMLPELD 58 Query: 61 GLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXX 120 G+ LCQK R +PILM+TA+D I D++ GLDAGADDY++KP + E Sbjct: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 Query: 121 XPELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKNQ 180 L+ G LD T+ V + ++LT KE+ +LE +++ +++LS I + Sbjct: 119 GCATCQPVLEWGPIRLDPSTYEVSYDNEV-LSLTRKEYSILELLLRNGRRVLSRSMIIDS 177 Query: 181 LWALSAESTSNVVAAQVRLLRRKLEEYS-HGNLIETVYGLGYR 222 +W L + + V VR LR+KL+ + IETV+G+GYR Sbjct: 178 IWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 144 bits (363), Expect = 2e-37 Identities = 82/220 (37%), Positives = 122/220 (55%), Gaps = 3/220 (1%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 R+L+VE+E L +E L+ E Y V +DG ++ + L I + +PG+SG Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQE--FPPDLIIVNGALPGMSG 61 Query: 62 LELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXXX 121 LELC++LR S +PI+++TAKD + +RV GLDAGADDY++KPF E Sbjct: 62 LELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 Query: 122 PELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKNQL 181 + LQ + T + ++ I LTAKEF+LL+Y + H +Q+L+ EQI ++ Sbjct: 122 HTTSDEVLQFADLRFNRSTREIQRGDRL-IDLTAKEFELLDYLLSHARQVLTREQILERV 180 Query: 182 WALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGY 221 W SN++ +R LR KLE LI+TV G+GY Sbjct: 181 WGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGY 220 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 124 bits (311), Expect = 3e-31 Identities = 77/227 (33%), Positives = 121/227 (53%), Gaps = 6/227 (2%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 ++L+VEDE + + L ++ Y V D A + + + N L + DWM+PG SG Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE---NPKLILLDWMLPGRSG 60 Query: 62 LELCQKLRGQRS--SLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXX 119 ++ Q ++ Q S ++PI+MLTAK D + L+AGADDY+ KPF Sbjct: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 Query: 120 XXPELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKN 179 E Q Q +Q+ + +D V +Q I L++ EF+LL +FM+HP+++ S EQ+ N Sbjct: 121 RIYEQQSQFIQIDELSIDENAQRVFFQQQ-EINLSSTEFKLLHFFMRHPEKVYSREQLLN 179 Query: 180 QLWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGYRFQPH 226 ++W E V + +R LRR L + + I+TV G GYRF + Sbjct: 180 RIWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGYRFSSY 226 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 120 bits (302), Expect = 3e-30 Identities = 74/221 (33%), Positives = 116/221 (52%), Gaps = 7/221 (3%) Query: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 MR+LL+ED+ +G L+ L + + VDW DG + L Y + D +P L Sbjct: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSA--PYDAVVLDLTLPKLD 58 Query: 61 GLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXX 120 GLE+ Q+ R +P+L+LTA+D + +RV+GL +GADDYL KPF +AE Sbjct: 59 GLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRR 118 Query: 121 XPELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKNQ 180 ++ LD +V Q I+LT++E++LLE FM + ++LS I+ + Sbjct: 119 RYGYHHSVIEQAGVKLDQNQRSVWLNNQP-ISLTSREYKLLELFMLNKDRVLSRSSIEEK 177 Query: 181 LWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGY 221 L + E +S + + LR+KL + I TV+G+GY Sbjct: 178 LSSWDEEISSGALDVHIYNLRQKLGK----QFIRTVHGVGY 214 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 117 bits (294), Expect = 2e-29 Identities = 80/237 (33%), Positives = 121/237 (51%), Gaps = 22/237 (9%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYL-----DQGWVNYTLAIFDWMV 56 R+L+VEDE + + +L+ E Y V V DG A + L D G L I D M+ Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 57 PGLSGLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXX 116 P ++GL++C+ LR + PIL+++AK ++V GL+ GADDY+ KPF + E Sbjct: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 Query: 117 XXXXXPELQPQQLQVGQWWLDYGTF--AVVTPEQAR-------ITLTAKEFQLLEYFMKH 167 + +Q G + F V+ P++ R ++L KEF+LLE FM + Sbjct: 152 -------MIRRQGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSY 204 Query: 168 PQQILSSEQIKNQLWALSAESTSNVVAAQVRLLRRKLE-EYSHGNLIETVYGLGYRF 223 P+++ S EQ+ +W + S V +R LR KLE + S + TV G GYRF Sbjct: 205 PRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 107 bits (267), Expect = 3e-26 Identities = 76/238 (31%), Positives = 115/238 (48%), Gaps = 25/238 (10%) Query: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 +L+VED+ ++ + + L RE + DG + + L + D M+P L GL Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPD--LIVLDLMLPKLDGL 71 Query: 63 ELCQKLRGQRSSLP--ILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXX 120 E+C ++R Q S ILMLTAK + DR+ GL GADDYL+KPF E Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRA---- 127 Query: 121 XPELQPQQLQVGQ----------WWLD---YGTFAVVTPEQARITLTAKEFQLLEYFMKH 167 L +QL+ GQ + +D + Q + LT EF LL FM + Sbjct: 128 ---LLRRQLRQGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSY 184 Query: 168 PQQILSSEQIKNQLWALSAESTSNVVAAQVRLLRRKLE-EYSHGNLIETVYGLGYRFQ 224 P ++ + Q+ +LW VV +R LR+K+E + ++ I+TV GLGY+F+ Sbjct: 185 PGRVWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFE 242 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 100 bits (250), Expect = 3e-24 Identities = 66/230 (28%), Positives = 114/230 (49%), Gaps = 11/230 (4%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 ++L+VEDE L+ E Y V ++G L +N L + D +PG +G Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNIN--LVVMDINLPGKNG 62 Query: 62 LELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXXX 121 L L ++LR + SLP++ LT +D D++ GL+ GADDYL KPF E Sbjct: 63 LLLARELR-EELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRA 121 Query: 122 PELQPQQLQVGQ-------WWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSS 174 Q ++ G+ W LD + +++TPE L EF+ + +F ++P ++ + Sbjct: 122 MPHQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTR 181 Query: 175 EQIKNQLWALSAESTSNVVAAQVRLLRRKLEEYSH-GNLIETVYGLGYRF 223 E++ ++ + V +R +R+ E++ + N+I T++G GYRF Sbjct: 182 EELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 99.0 bits (245), Expect = 1e-23 Identities = 76/229 (33%), Positives = 108/229 (47%), Gaps = 13/229 (5%) Query: 5 LVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGLEL 64 +V+DE + LE L Y V DG A + + + L + D M+P L G + Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHES--DPDLVVLDVMMPKLDGYGV 58 Query: 65 CQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXXXPE- 123 CQ+LR + S +PI+MLTA +ADR+ GL+ GADDY++KPF E + Sbjct: 59 CQELR-KESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 Query: 124 -----LQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIK 178 LQ+ +D V ++ RI LT EF LLE + + S +I Sbjct: 118 GMPGIPSSGVLQIATIRIDTNKRQVYKGDE-RIRLTGMEFSLLELLVSRSGEPFSRSEIL 176 Query: 179 NQLWALSAES--TSNVVAAQVRLLRRKLEE-YSHGNLIETVYGLGYRFQ 224 ++W + E + VV + LR KLEE S+ LI T G GY FQ Sbjct: 177 QEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQ 225 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 98.6 bits (244), Expect = 2e-23 Identities = 71/230 (30%), Positives = 109/230 (47%), Gaps = 15/230 (6%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 R+L+++D+P + + L Y V DG + Q + L + D M+P + G Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQ--LQPDLIMLDLMLPKVDG 60 Query: 62 LELCQKLRGQR--SSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXX 119 +CQ+LR + +P+LMLTA QI D+++G D+GADDYL KPF + E Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 Query: 120 XXPELQPQQLQVGQWWLDYGTFAVVTPEQ-------ARITLTAKEFQLLEYFMKHPQQIL 172 + PQ + + L+ G +V PE+ I LT EF+LL ++ Q + Sbjct: 121 RTDRI-PQAAKHSE-ILNQGPLTLV-PERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTV 177 Query: 173 SSEQIKNQLWALSAESTSNVVAAQVRLLRRKLE-EYSHGNLIETVYGLGY 221 S I ++W + + +R LR KLE I+TVYG GY Sbjct: 178 SPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 79.3 bits (194), Expect = 1e-17 Identities = 73/228 (32%), Positives = 102/228 (44%), Gaps = 21/228 (9%) Query: 5 LVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNY--TLAIFDWMVPGLSGL 62 +VE P L L L++ Y+V + A Q + N TLA+ D + G+ Sbjct: 8 VVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQA----RQAFNNQLPTLAVIDSDLTDGDGI 63 Query: 63 ELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXXXP 122 ELC+ L Q S+ I +L+AKD D V GL AGADDYL KPFGM E Sbjct: 64 ELCRWLYQQHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 Query: 123 ELQPQQLQVGQWWLDYGTFAV------VTPEQARITLTAKEFQLLEYFMKHPQQILSSEQ 176 + L LDYG + V + + LT +EF LL + LS + Sbjct: 123 TVAAPLL------LDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTE 176 Query: 177 IKNQLWALSAESTSNVVAAQVRLLRRKLE-EYSHGNLIETVYGLGYRF 223 + + W A + V LR+K+E + +LI+TV +GYRF Sbjct: 177 LLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRF 223 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 78.6 bits (192), Expect = 2e-17 Identities = 62/225 (27%), Positives = 108/225 (48%), Gaps = 9/225 (4%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 +LLLV+D+ +L L L E + V+ +G A L++ +Y L + D M+P L+G Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNE---SYKLVLLDVMMPKLNG 59 Query: 62 LELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXXXXX 121 +E +++R + S++P++MLTA+ + DRV GL+ GADD L KPF E Sbjct: 60 IETLKEIR-KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 Query: 122 PELQPQQLQVGQWWLD----YGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQI 177 V D + + + T + + LT EF++L +K ++S E++ Sbjct: 119 ASPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREEL 178 Query: 178 KNQLWALSAESTSNVVAAQVRLLRRKL-EEYSHGNLIETVYGLGY 221 ++ + + LRRKL + + + +T+ G GY Sbjct: 179 SLEVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGY 223 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 63.9 bits (154), Expect = 4e-13 Identities = 39/106 (36%), Positives = 57/106 (53%), Gaps = 5/106 (4%) Query: 3 LLLVEDEPDLGMALEKALRRE-NYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 LLLV+DEP + +++ L ++ VD + AW YL L I D M+P + G Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLP--ALVISDIMMPQVDG 115 Query: 62 LELCQKLR--GQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPF 105 + QKLR + SLP++ LTA+ DR++G G D +L KPF Sbjct: 116 YQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPF 161 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 59.3 bits (142), Expect = 1e-11 Identities = 37/105 (35%), Positives = 60/105 (57%), Gaps = 2/105 (1%) Query: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 +L+VEDE + + + L ENY + ++G +A L+ V L I D M+P + G Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 63 ELCQKLR--GQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPF 105 L L+ + +++P + LTA + D +G+++GADDYLIKPF Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPF 108 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 57.8 bits (138), Expect = 3e-11 Identities = 34/109 (31%), Positives = 57/109 (52%), Gaps = 4/109 (3%) Query: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 +L+V+D + + + L E Y +V G A + Q + L + D M+PG+ GL Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPD--LILLDLMMPGMDGL 77 Query: 63 ELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAE 109 E+C +L+ Q +P++ LTA ++ D ++ GA DY+ KPF E Sbjct: 78 EVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPE 126 Score = 44.3 bits (103), Expect = 3e-07 Identities = 34/107 (31%), Positives = 53/107 (49%), Gaps = 5/107 (4%) Query: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 + +LL ED + L++ Y VD V +G A S L +G +Y + + D +P + Sbjct: 740 LTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKG--DYDVVLMDVEMPEMD 797 Query: 61 GLELCQKLRGQ--RSSLP-ILMLTAKDQIADRVEGLDAGADDYLIKP 104 GL + +R RS P I+ +TA DR L +G +DY+ KP Sbjct: 798 GLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 55.8 bits (133), Expect = 1e-10 Identities = 35/105 (33%), Positives = 59/105 (56%), Gaps = 4/105 (3%) Query: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 LLLV+D+P+L + ++ L + Y V +G A L + + + D M+P + G Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPD--MIVCDIMMPEMDGY 67 Query: 63 ELCQKLRGQR--SSLPILMLTAKDQIADRVEGLDAGADDYLIKPF 105 +++R S +P++ L+AK Q +RV+GL+ GAD Y+ KPF Sbjct: 68 AFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPF 112 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 50.8 bits (120), Expect = 4e-09 Identities = 34/106 (32%), Positives = 56/106 (52%), Gaps = 4/106 (3%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 ++L+V+D P+ + L + L +VV ++G +A + L + W + + + D +P L G Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIA-LWESW-HPQVILMDMQMPVLDG 476 Query: 62 LELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPF 105 QK++ Q I+ LTA +R E L AG DD+L KPF Sbjct: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPF 522 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 50.4 bits (119), Expect = 5e-09 Identities = 53/213 (24%), Positives = 91/213 (42%), Gaps = 21/213 (9%) Query: 1 MRLLLVEDEPDLGMALEKALRRENY--VVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPG 58 +R+LLVED+ + L L +E V +DG A +Y++Q + + I D +PG Sbjct: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQL--FDVVILDVGLPG 65 Query: 59 LSGLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXXX 118 + G+E C +++ LP+L+LT+ Q A ++A A Y +K G+A Sbjct: 66 IGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVK--GVAAETLVLAIRS 123 Query: 119 XXX-----PELQPQQLQVG-QWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQIL 172 + Q++Q Q G + LT +E ++L K Sbjct: 124 VAAGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGK---- 179 Query: 173 SSEQIKNQLWALSAESTSNVVAAQVRLLRRKLE 205 S+++I ++L+ V V + RKLE Sbjct: 180 SNQEIADELYI-----APGTVRVHVHTILRKLE 207 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 49.3 bits (116), Expect = 1e-08 Identities = 30/108 (27%), Positives = 57/108 (52%), Gaps = 5/108 (4%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYL---DQGWVNYTLAIFDWMVPG 58 R+L+V+D + ++ L + +VV+ V+ G A ++L D+ +++ DW +P Sbjct: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 Query: 59 LSGLELCQKLR--GQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKP 104 + GLE+ ++L+ G I ++TA + V+ G DD L+KP Sbjct: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKP 879 Score = 46.6 bits (109), Expect = 7e-08 Identities = 34/105 (32%), Positives = 51/105 (48%), Gaps = 4/105 (3%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 R+LLVED + LR + VD +G +A L+ Y L + D +P + G Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNN--AYALVLMDMQMPEMDG 983 Query: 62 LELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKP 104 +E +R + + LPI+ +TA DR L AG +D+L KP Sbjct: 984 IEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKP 1028 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 49.3 bits (116), Expect = 1e-08 Identities = 30/105 (28%), Positives = 55/105 (52%), Gaps = 4/105 (3%) Query: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 +LLVED + L+ + V DG A L + L + D ++P ++G Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQN--FSPDLVVLDIVMPRMNGY 87 Query: 63 ELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPF 105 E+C++++ + ++P++M ++K + DR G+ GAD Y+ KPF Sbjct: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPF 132 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 48.1 bits (113), Expect = 2e-08 Identities = 36/134 (26%), Positives = 66/134 (49%), Gaps = 6/134 (4%) Query: 1 MRLLLVEDEPDLGMALEKAL-RRENY-VVDWVQDGNLAWSYLDQGWV-NYTLAIFDWMVP 57 M++L+VED+P + + LE+AL E + ++ V +G + + Q V N L + D +P Sbjct: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNG---YGAVQQAAVLNPDLIVMDIGLP 73 Query: 58 GLSGLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEXXXXXXXX 117 GL G+E ++++ + I++LT+ + + L +GAD Y +K + Sbjct: 74 GLDGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAA 133 Query: 118 XXXXPELQPQQLQV 131 L PQ +V Sbjct: 134 QDGATYLDPQIARV 147 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 47.8 bits (112), Expect = 3e-08 Identities = 30/109 (27%), Positives = 53/109 (48%), Gaps = 4/109 (3%) Query: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 +LLV+D P+ L L Y V V G +A L + L + D +P + G Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPD--LILLDIKMPDMDGY 68 Query: 63 ELCQKLRGQRS--SLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAE 109 ++C+ ++ + +PI+ ++A D+V+ + G DY+ KPF + E Sbjct: 69 QVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEE 117 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 45.1 bits (105), Expect = 2e-07 Identities = 31/109 (28%), Positives = 54/109 (49%), Gaps = 4/109 (3%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 ++L+V+D+ + M L L++E + V+ +G A + + + + + D ++P + G Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAE--IKPEVVLLDAVMPVMDG 70 Query: 62 LELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMA 108 CQ L Q S +LM+T D A +AGA DY+ KP A Sbjct: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWA 119 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 43.9 bits (102), Expect = 5e-07 Identities = 33/105 (31%), Positives = 54/105 (51%), Gaps = 4/105 (3%) Query: 1 MRLLLVEDEPDLGMALEKALRRENY--VVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPG 58 +++LL++D P + +++ + ++ VV V G S Q + + I D + G Sbjct: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQ--TSPDVIILDLNMKG 62 Query: 59 LSGLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIK 103 LSGL+ + LR + IL+LT D D +DAGAD YL+K Sbjct: 63 LSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLK 107 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 43.1 bits (100), Expect = 8e-07 Identities = 32/113 (28%), Positives = 51/113 (45%), Gaps = 11/113 (9%) Query: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 +++LL ED + L Y V +G L++ + Y L + D +P + Sbjct: 1190 LQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKF--YDLVLMDMQMPVMD 1247 Query: 61 GLELCQKLRGQRSSLP------ILMLTAKDQIADRVEGLDAGADDYLIKPFGM 107 G+ C+ +R +LP I+ +TA DR E LDAG D Y+ KP + Sbjct: 1248 GITACRHIR---QTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISI 1297 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 42.7 bits (99), Expect = 1e-06 Identities = 31/104 (29%), Positives = 48/104 (46%), Gaps = 4/104 (3%) Query: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 +LLVED L + V +G A + L Y + D +P L+G Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSN--TYDAILMDIQMPMLNGY 777 Query: 63 ELCQKLRGQR--SSLPILMLTAKDQIADRVEGLDAGADDYLIKP 104 + + +R Q +LPI+ +TA D+ + LDAG +D+L KP Sbjct: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKP 821 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 42.0 bits (97), Expect = 2e-06 Identities = 32/105 (30%), Positives = 49/105 (46%), Gaps = 4/105 (3%) Query: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 ++LLVED L + L R+ Y V DG A + + L + D +P + G Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISE--SPQLILMDMSLPIIDG 63 Query: 62 LELCQKLRGQRSS--LPILMLTAKDQIADRVEGLDAGADDYLIKP 104 ++++G +PI+ LTA +DR + AG DDY KP Sbjct: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKP 108 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.136 0.413 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 21,453 Number of Sequences: 78 Number of extensions: 885 Number of successful extensions: 77 Number of sequences better than 1.0e-05: 29 Number of HSP's better than 0.0 without gapping: 16 Number of HSP's successfully gapped in prelim test: 13 Number of HSP's that attempted gapping in prelim test: 18 Number of HSP's gapped (non-prelim): 34 length of query: 232 length of database: 48,235 effective HSP length: 60 effective length of query: 172 effective length of database: 43,555 effective search space: 7491460 effective search space used: 7491460 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000523 sll0797 (234 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000523 sll0797 445 e-128 SYNE-PCC-01-000518 sll0789 240 3e-66 SYNE-PCC-01-002486 slr1584 139 8e-36 SYNE-PCC-01-002672 slr1837 137 2e-35 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 122 1e-30 SYNE-PCC-01-000242 sll0396 117 3e-29 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 112 1e-27 SYNE-PCC-01-001437 slr0081 105 2e-25 SYNE-PCC-01-000414 sll0649 103 6e-25 SYNE-PCC-01-001461 slr0115 92 2e-21 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 90 7e-21 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 87 4e-20 SYNE-PCC-01-002033 slr0947 80 6e-18 SYNE-PCC-01-002635 slr1783 67 5e-14 SYNE-PCC-01-000877 sll1330 67 7e-14 SYNE-PCC-01-001306 sll1905 64 3e-13 SYNE-PCC-01-002873 slr2098 62 1e-12 SYNE-PCC-01-002731 slr1909 61 3e-12 SYNE-PCC-01-002086 slr1042 59 1e-11 SYNE-PCC-01-001133 sll1673 56 9e-11 SYNE-PCC-01-002489 slr1588 56 1e-10 SYNE-PCC-01-002617 slr1759 55 2e-10 SYNE-PCC-01-000800 sll1228 52 2e-09 SYNE-PCC-01-002618 slr1760 49 1e-08 SYNE-PCC-01-001075 sll1592 47 7e-08 SYNE-PCC-01-001132 sll1672 46 1e-07 SYNE-PCC-01-002879 slr2104 45 3e-07 SYNE-PCC-01-002788 slr1982 45 3e-07 SYNE-PCC-01-001160 sll1708 43 8e-07 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 42 2e-06 SYNE-PCC-01-002221 slr1213 41 3e-06 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 445 bits (1145), Expect = e-128 Identities = 223/234 (95%), Positives = 223/234 (95%) Query: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS Sbjct: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 Query: 61 GLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXXX 120 GLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAE Sbjct: 61 GLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRR 120 Query: 121 SPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS 180 SPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS Sbjct: 121 SPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS 180 Query: 181 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGYRFTLSP 234 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGYRFTLSP Sbjct: 181 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGYRFTLSP 234 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 240 bits (613), Expect = 3e-66 Identities = 127/234 (54%), Positives = 159/234 (67%), Gaps = 7/234 (2%) Query: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 MR+LLVEDE DLGMA++K L E YVVDWV DG+ AW YL+ W YTLAI DW++PGLS Sbjct: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 Query: 61 GLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXXX 120 GLELCQKLR Q +SLP+LMLTA + +RVEGLDAGADDYL KPF MAE Sbjct: 61 GLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRR 120 Query: 121 SPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS 180 SP+ QPQ L +G + LD + + P E+ I LT +EFQ+ +Y M++P++I+S Sbjct: 121 SPELQPQQLQVGQWWLDYG----TFAVVTP---EQARITLTAKEFQLLEYFMKHPQQILS 173 Query: 181 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGYRFTLSP 234 +I+ QLW L E SNVVAAQ+RL+RRKL + + I+TV G GYRF P Sbjct: 174 SEQIKNQLWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGYRFQPHP 227 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 139 bits (350), Expect = 8e-36 Identities = 82/230 (35%), Positives = 120/230 (52%), Gaps = 11/230 (4%) Query: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 MRILLVED+ L + + L + Y VD TD S AWDY EY L I+D +LP L Sbjct: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASR--LEYDLVILDVMLPELD 58 Query: 61 GLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXXX 120 G+ LCQK R+ +P+LM+TA +++ GLDAGADDY+ KP + E Sbjct: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 Query: 121 SPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS 180 +L G LDPS + ++ + + ++LT +E+ I + L++N R++S Sbjct: 119 GCATCQPVLEWGPIRLDPS--------TYEVSYDNEVLSLTRKEYSILELLLRNGRRVLS 170 Query: 181 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPC-PIKTVPGQGYR 229 S I +W L+ P + V +R +R+KL I+TV G GYR Sbjct: 171 RSMIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 137 bits (346), Expect = 2e-35 Identities = 88/234 (37%), Positives = 123/234 (52%), Gaps = 12/234 (5%) Query: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 ILLV+DE L + K L + + +D G +Y L I+DW+LP +SGL Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAG--QYDLLILDWMLPQVSGL 61 Query: 63 ELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXXXSP 122 E+C+++R G+S PVL LTA ++RV GLDAG DDYL KPF + E Sbjct: 62 EICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQS 121 Query: 123 QFQPQILTLGNFSLDPSNNLLSV------TISEPLNLERQEIALTVREFQIFQYLMQNPE 176 + TLG NNLLSV ++ + Q IAL+ +E + +Q P Sbjct: 122 HGETITETLGAV----KNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPG 177 Query: 177 RIISGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGYRF 230 +I+S +I LW + P SNV+AA +RL+RRK+ Q N P I +V G+GY F Sbjct: 178 QILSHEEIYSHLWPGESPPSSNVLAALVRLLRRKIEQPNAPRLINSVYGKGYCF 231 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 122 bits (306), Expect = 1e-30 Identities = 80/228 (35%), Positives = 117/228 (51%), Gaps = 14/228 (6%) Query: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 MRILL+ED+ +G ++ L + VDW TDG L + Y ++D LP L Sbjct: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTS--APYDAVVLDLTLPKLD 58 Query: 61 GLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXXX 120 GLE+ Q+ R+ +PVL+LTA + RV+GL +GADDYL KPF +AE Sbjct: 59 GLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRR 118 Query: 121 SPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS 180 + ++ LD N SV L Q I+LT RE+++ + M N +R++S Sbjct: 119 RYGYHHSVIEQAGVKLD--QNQRSVW------LNNQPISLTSREYKLLELFMLNKDRVLS 170 Query: 181 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGY 228 S I ++L DEE S + + +R+KL +Q I+TV G GY Sbjct: 171 RSSIEEKLSSWDEEISSGALDVHIYNLRQKLGKQF----IRTVHGVGY 214 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 117 bits (294), Expect = 3e-29 Identities = 72/227 (31%), Positives = 118/227 (51%), Gaps = 10/227 (4%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 R+L+VE+E L ++ L E Y V DG + + + Q L IV+ LPG+SG Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKG--FTQAQEFPPDLIIVNGALPGMSG 61 Query: 62 LELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXXXS 121 LELC++LR G+ +P++++TA + E RV GLDAGADDY+ KPF E + Sbjct: 62 LELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 Query: 122 PQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIISG 181 ++L + + S + + + I LT +EF++ YL+ + ++++ Sbjct: 122 HTTSDEVLQFADLRFNRS--------TREIQRGDRLIDLTAKEFELLDYLLSHARQVLTR 173 Query: 182 SKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGY 228 +I +++W D SN++ +R +R KL P I+TV G GY Sbjct: 174 EQILERVWGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGY 220 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 112 bits (279), Expect = 1e-27 Identities = 71/232 (30%), Positives = 122/232 (52%), Gaps = 13/232 (5%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 +IL+VEDE + I L + Y V +D A + ++ L ++DW+LPG SG Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKEN---PKLILLDWMLPGRSG 60 Query: 62 LELCQKLRTQGN--SLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXX 119 ++ Q ++ Q + ++P++MLTA E+ + L+AGADDY+TKPF Sbjct: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 Query: 120 XSPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERII 179 + Q Q + + S+D + ++ + ++QEI L+ EF++ + M++PE++ Sbjct: 121 RIYEQQSQFIQIDELSIDEN--------AQRVFFQQQEINLSSTEFKLLHFFMRHPEKVY 172 Query: 180 SGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGYRFT 231 S ++ ++W D E V + +R +RR LA C I+TV G GYRF+ Sbjct: 173 SREQLLNRIWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGYRFS 224 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 105 bits (261), Expect = 2e-25 Identities = 74/236 (31%), Positives = 118/236 (50%), Gaps = 13/236 (5%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTE------YTLAIVDWL 55 RIL+VEDE + I L E Y V V DG A L+ +++E L I+D + Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQ-EFSEDPGQAAVDLIILDIM 90 Query: 56 LPGLSGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXX 115 LP ++GL++C+ LR G++ P+L+++A G +V GL+ GADDY+TKPF + E Sbjct: 91 LPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCR 150 Query: 116 XXXXXSPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNP 175 I F +L+ + + +E++L +EF++ + M P Sbjct: 151 AMIRRQGLAGNNIAPFRKF-----RDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYP 205 Query: 176 ERIISGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQ-NCPCPIKTVPGQGYRF 230 R+ S ++ + +W +D S V +R +R KL Q + P + TV G GYRF Sbjct: 206 RRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 103 bits (256), Expect = 6e-25 Identities = 76/234 (32%), Positives = 115/234 (49%), Gaps = 12/234 (5%) Query: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 IL+VED+ ++ I++ L E++ DG + Q + L ++D +LP L GL Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPD--LIVLDLMLPKLDGL 71 Query: 63 ELCQKLRTQGNSLP--VLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXXX 120 E+C ++R Q S +LMLTA GE +R+ GL GADDYL KPF E Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRR 131 Query: 121 S-PQFQP--QILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPER 177 Q QP QI +F +D + S + ++E+ LT EF + M P R Sbjct: 132 QLRQGQPVGQIYRTNHFQVDLDQHQASRYQGD----RQEELELTGLEFNLLATFMSYPGR 187 Query: 178 IISGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNC-PCPIKTVPGQGYRF 230 + + +++ ++LW D VV +R +R+K+ P IKTV G GY+F Sbjct: 188 VWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 91.7 bits (226), Expect = 2e-21 Identities = 70/240 (29%), Positives = 114/240 (47%), Gaps = 18/240 (7%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 RIL+++D+ + + L Y V DG + + L ++D +LP + G Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPD--LIMLDLMLPKVDG 60 Query: 62 LELCQKLRTQGNS--LPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXX 119 +CQ+LR + +PVLMLTALG+ +++++G D+GADDYLTKPF + E Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 Query: 120 XSPQF-----QPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQN 174 + + +IL G +L P ++ + I LT EF++ L+Q Sbjct: 121 RTDRIPQAAKHSEILNQGPLTLVP-ERFEAIWFG-------KSIKLTHLEFELLHCLLQR 172 Query: 175 PERIISGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKL-AQQNCPCPIKTVPGQGYRFTLS 233 + +S S I +++W + + + +R +R KL P IKTV G GY LS Sbjct: 173 HGQTVSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLELS 232 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 89.7 bits (221), Expect = 7e-21 Identities = 67/230 (29%), Positives = 108/230 (46%), Gaps = 4/230 (1%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 +IL+VEDE +K + +E Y V +G + L N L ++D LPG +G Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANH--NINLVVMDINLPGKNG 62 Query: 62 LELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXXXS 121 L L ++LR + SLP++ LT +++ GL+ GADDYLTKPF E + Sbjct: 63 LLLARELREE-LSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRA 121 Query: 122 PQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIISG 181 Q + T G + L + + E QE L EF+ + +NP ++ + Sbjct: 122 MPHQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTR 181 Query: 182 SKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQ-NCPCPIKTVPGQGYRF 230 ++ +++ + +P V +R IR+ N P I T+ G+GYRF Sbjct: 182 EELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 87.4 bits (215), Expect = 4e-20 Identities = 68/239 (28%), Positives = 116/239 (48%), Gaps = 30/239 (12%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 ++LLV+D+ +L + +L E + V+ +G +A L Y L ++D ++P L+G Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNES---YKLVLLDVMMPKLNG 59 Query: 62 LELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXXXXS 121 +E +++R N +PV+MLTA GE +RV GL+ GADD L KPF E Sbjct: 60 IETLKEIRKVSN-VPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIA--------- 109 Query: 122 PQFQPQILTLGNFSLDPSNNLLSVTISE-----------PLNLERQEIALTVREFQIFQY 170 +I + S PSNN+ +V I + + LT EF+I Sbjct: 110 -----RIKAILRRSASPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCL 164 Query: 171 LMQNPERIISGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKL-AQQNCPCPIKTVPGQGY 228 L+++ ++S ++ ++ + P + + +RRKL ++N P KT+ G+GY Sbjct: 165 LLKSKGNVVSREELSLEVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGY 223 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 80.1 bits (196), Expect = 6e-18 Identities = 69/236 (29%), Positives = 109/236 (46%), Gaps = 22/236 (9%) Query: 5 LVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGLEL 64 +V+DE + ++ L Y V DG +A ++ L ++D ++P L G + Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHE--SDPDLVVLDVMMPKLDGYGV 58 Query: 65 CQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAE-XXXXXXXXXXXSPQ 123 CQ+LR + + +P++MLTALG+ +R+ GL+ GADDY+ KPF E Sbjct: 59 CQELRKESD-IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 Query: 124 FQPQILTLGNFSLDPSNNLLSV-TISEPLNLER-----QEIALTVREFQIFQYLMQNPER 177 P I PS+ +L + TI N + + I LT EF + + L+ Sbjct: 118 GMPGI---------PSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGE 168 Query: 178 IISGSKIRQQLWDLDEEPM--SNVVAAQMRLIRRKLAQQ-NCPCPIKTVPGQGYRF 230 S S+I Q++W E + VV + +R KL + + P I T G GY F Sbjct: 169 PFSRSEILQEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLF 224 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 67.0 bits (162), Expect = 5e-14 Identities = 39/106 (36%), Positives = 61/106 (57%), Gaps = 5/106 (4%) Query: 3 ILLVEDETDLGMAIKKVLV-SEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 +LLV+DE + +++ L S + VD + ++AWDYL++ L I D ++P + G Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLP--ALVISDIMMPQVDG 115 Query: 62 LELCQKLRTQGN--SLPVLMLTALGEPENRVEGLDAGADDYLTKPF 105 + QKLR SLPV+ LTA G +R++G G D +L+KPF Sbjct: 116 YQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPF 161 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 66.6 bits (161), Expect = 7e-14 Identities = 66/235 (28%), Positives = 101/235 (42%), Gaps = 18/235 (7%) Query: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 I +VE L + L Y+V + QA NQ TLA++D L G+ Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLP--TLAVIDSDLTDGDGI 63 Query: 63 ELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXX-XXXXXS 121 ELC+ L Q S+ + +L+A ++ V GL AGADDYLTKPF M E Sbjct: 64 ELCRWLYQQHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 Query: 122 PQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIISG 181 P +L G +D + + + + LT +EF + L Q +S Sbjct: 123 TVAAPLLLDYGVLKID--------LVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSR 174 Query: 182 SKIRQQLWDLDEEPMSN--VVAAQMRLIRRKL-AQQNCPCPIKTVPGQGYRFTLS 233 +++ ++ W E + N + + +R+K+ P I+TV GYRF S Sbjct: 175 TELLRRAW---PEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRFNSS 226 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 64.3 bits (155), Expect = 3e-13 Identities = 36/105 (34%), Positives = 60/105 (57%), Gaps = 4/105 (3%) Query: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 IL+V+D + I ++L E Y +VT G +A + + L ++D ++PG+ GL Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPD--LILLDLMMPGMDGL 77 Query: 63 ELCQKLRT--QGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPF 105 E+C +L+ Q +PV+ LTA E ++ ++ GA DY+TKPF Sbjct: 78 EVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPF 122 Score = 41.2 bits (95), Expect = 3e-06 Identities = 32/107 (29%), Positives = 53/107 (49%), Gaps = 5/107 (4%) Query: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 + ILL ED K +L Y VD V +G +A L +Y + ++D +P + Sbjct: 740 LTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKG--DYDVVLMDVEMPEMD 797 Query: 61 GLELCQKLR-TQGNSLP--VLMLTALGEPENRVEGLDAGADDYLTKP 104 GL + +R +QG S ++ +TA +R L +G +DY++KP Sbjct: 798 GLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 62.4 bits (150), Expect = 1e-12 Identities = 35/108 (32%), Positives = 60/108 (55%), Gaps = 5/108 (4%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTE---YTLAIVDWLLPG 58 R+L+V+D + +K +L K+VV+ V G +A ++L E +++ +DW +P Sbjct: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 Query: 59 LSGLELCQKLRTQG-NSLP-VLMLTALGEPENRVEGLDAGADDYLTKP 104 + GLE+ ++L+ G N P + ++TA G E V+ G DD L KP Sbjct: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKP 879 Score = 43.1 bits (100), Expect = 8e-07 Identities = 33/105 (31%), Positives = 50/105 (47%), Gaps = 4/105 (3%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 RILLVED ++L + VD +G A + L N Y L ++D +P + G Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNN--AYALVLMDMQMPEMDG 983 Query: 62 LELCQKLRTQGN--SLPVLMLTALGEPENRVEGLDAGADDYLTKP 104 +E +R LP++ +TA +R L AG +D+L KP Sbjct: 984 IEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKP 1028 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 61.2 bits (147), Expect = 3e-12 Identities = 35/105 (33%), Positives = 60/105 (57%), Gaps = 4/105 (3%) Query: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 +LLV+D+ +L + +K L + Y V +G +A D L T + + D ++P + G Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTT--TVPDMIVCDIMMPEMDGY 67 Query: 63 ELCQKLRTQGNS--LPVLMLTALGEPENRVEGLDAGADDYLTKPF 105 +++R + +PV+ L+A G+ NRV+GL+ GAD Y+ KPF Sbjct: 68 AFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPF 112 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 59.3 bits (142), Expect = 1e-11 Identities = 33/105 (31%), Positives = 62/105 (59%), Gaps = 4/105 (3%) Query: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 +LLVED + I +L + V DG +A + L+N + L ++D ++P ++G Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPD--LVVLDIVMPRMNGY 87 Query: 63 ELCQKLRT--QGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPF 105 E+C+++++ + ++PV+M ++ GE +R G+ GAD Y+ KPF Sbjct: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPF 132 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 56.2 bits (134), Expect = 9e-11 Identities = 31/109 (28%), Positives = 62/109 (56%), Gaps = 4/109 (3%) Query: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 ILLV+D + + +L++ Y V VT G A L+ + + L ++D +P + G Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPD--LILLDIKMPDMDGY 68 Query: 63 ELCQKLRTQGN--SLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAE 109 ++C+ ++ + +P++ ++ALG+ ++V+ + G DY+TKPF + E Sbjct: 69 QVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEE 117 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 55.8 bits (133), Expect = 1e-10 Identities = 36/105 (34%), Positives = 56/105 (53%), Gaps = 2/105 (1%) Query: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 IL+VEDE + I + L E Y + +G+ A L + L I D ++P + G Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 63 ELCQKLRTQGNS--LPVLMLTALGEPENRVEGLDAGADDYLTKPF 105 L L+ + +P + LTALG ++ +G+++GADDYL KPF Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPF 108 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 55.5 bits (132), Expect = 2e-10 Identities = 41/141 (29%), Positives = 69/141 (48%), Gaps = 13/141 (9%) Query: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 ++ILL ED ++L + Y V +G + D LE ++ Y L ++D +P + Sbjct: 1190 LQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKF--YDLVLMDMQMPVMD 1247 Query: 61 GLELCQKLRTQGNSLP------VLMLTALGEPENRVEGLDAGADDYLTKPFVMAE--XXX 112 G+ C+ +R +LP ++ +TA P +R E LDAG D Y++KP + + Sbjct: 1248 GITACRHIR---QTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVL 1304 Query: 113 XXXXXXXXSPQFQPQILTLGN 133 SPQ + I+TLG+ Sbjct: 1305 QDTSALITSPQAREDIVTLGD 1325 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 51.6 bits (122), Expect = 2e-09 Identities = 33/106 (31%), Positives = 56/106 (52%), Gaps = 4/106 (3%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 ++L+V+D + + ++++L S +VV +G A E+ W + ++D +P L G Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWES-WHPQVI-LMDMQMPVLDG 476 Query: 62 LELCQKLRT--QGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPF 105 QK++ QG ++ LTA R E L AG DD+L+KPF Sbjct: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPF 522 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 48.9 bits (115), Expect = 1e-08 Identities = 34/105 (32%), Positives = 54/105 (51%), Gaps = 4/105 (3%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 +IL+V+D+ + M ++ L E + V+ T+G +A E L +D ++P + G Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVL--LDAVMPVMDG 70 Query: 62 LELCQKLRT--QGNSLPVLMLTALGEPENRVEGLDAGADDYLTKP 104 CQ L Q S VLM+T L + + +AGA DY+TKP Sbjct: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKP 115 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 46.6 bits (109), Expect = 7e-08 Identities = 34/105 (32%), Positives = 52/105 (49%), Gaps = 4/105 (3%) Query: 1 MRILLVEDETDLGMAIKKVLVSEKY--VVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPG 58 +RILLVED+ + + L E V DG A Y+ Q + + I+D LPG Sbjct: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQL--FDVVILDVGLPG 65 Query: 59 LSGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTK 103 + G+E C +++ LPVL+LT+ +P ++A A Y K Sbjct: 66 IGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVK 110 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 45.8 bits (107), Expect = 1e-07 Identities = 32/106 (30%), Positives = 57/106 (53%), Gaps = 4/106 (3%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 +IL+V+D++ + K+L + ++ ++G +A E+ W + L +D +P + G Sbjct: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWES-WEPH-LIFMDMRMPVMDG 688 Query: 62 LELCQKLRTQ--GNSLPVLMLTALGEPENRVEGLDAGADDYLTKPF 105 E + ++ Q GN+ V+ LTA E + L AG DD+L KPF Sbjct: 689 YEATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 44.7 bits (104), Expect = 3e-07 Identities = 32/104 (30%), Positives = 53/104 (50%), Gaps = 4/104 (3%) Query: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 ILLVED +L S+ V +G +A L + Y ++D +P L+G Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSN--TYDAILMDIQMPMLNGY 777 Query: 63 ELCQKLRTQG--NSLPVLMLTALGEPENRVEGLDAGADDYLTKP 104 + + +R Q +LP++ +TA ++ + LDAG +D+LTKP Sbjct: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKP 821 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 44.7 bits (104), Expect = 3e-07 Identities = 31/105 (29%), Positives = 52/105 (49%), Gaps = 4/105 (3%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 ++LLVED + + L+ + Y V DG QA ++ + L ++D LP + G Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQ--LILMDMSLPIIDG 63 Query: 62 LELCQKLR--TQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKP 104 ++++ G +P++ LTA +R + AG DDY TKP Sbjct: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKP 108 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 43.1 bits (100), Expect = 8e-07 Identities = 33/140 (23%), Positives = 65/140 (46%), Gaps = 4/140 (2%) Query: 1 MRILLVEDETDLGMAIKKVL-VSEKY-VVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPG 58 M+IL+VED+ + + +++ L E++ ++ V +G A + L ++D LPG Sbjct: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQ--QAAVLNPDLIVMDIGLPG 74 Query: 59 LSGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAEXXXXXXXXX 118 L G+E ++++ + +++LT+ P + L +GAD Y K + Sbjct: 75 LDGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQ 134 Query: 119 XXSPQFQPQILTLGNFSLDP 138 + PQI + +L P Sbjct: 135 DGATYLDPQIARVVVENLKP 154 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 42.0 bits (97), Expect = 2e-06 Identities = 31/105 (29%), Positives = 54/105 (51%), Gaps = 4/105 (3%) Query: 1 MRILLVEDETDLGMAIKKVLVSEKY--VVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPG 58 +++LL++D + IK+++ + VV V+ G++ T + I+D + G Sbjct: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQ--TSPDVIILDLNMKG 62 Query: 59 LSGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTK 103 LSGL+ + LR +G +L+LT + +DAGAD YL K Sbjct: 63 LSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLK 107 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 41.2 bits (95), Expect = 3e-06 Identities = 36/160 (22%), Positives = 77/160 (48%), Gaps = 10/160 (6%) Query: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWV-TDGSQAWDYLENQWTEYTLAIVDWLLPG-L 59 +IL+VEDE + I ++L S+ Y + + +DG+ A + + + L ++D + G + Sbjct: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPD--LVLLDIRIKGEI 61 Query: 60 SGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAE-XXXXXXXXX 118 G+E+ +++++ S+P++ LTA + E Y+ KPF + Sbjct: 62 DGIEVAERIKSL-YSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIA 120 Query: 119 XXSPQFQPQILTL----GNFSLDPSNNLLSVTISEPLNLE 154 Q +P+ TL G++ L P+ + + + + + +E Sbjct: 121 NHQQQRKPEEDTLSTSTGHYRLQPTLDYIEEHLDQGITVE 160 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.136 0.403 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 21,896 Number of Sequences: 78 Number of extensions: 921 Number of successful extensions: 75 Number of sequences better than 1.0e-05: 31 Number of HSP's better than 0.0 without gapping: 14 Number of HSP's successfully gapped in prelim test: 17 Number of HSP's that attempted gapping in prelim test: 18 Number of HSP's gapped (non-prelim): 34 length of query: 234 length of database: 48,235 effective HSP length: 60 effective length of query: 174 effective length of database: 43,555 effective search space: 7578570 effective search space used: 7578570 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000542 sll0821 (1276 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000542 sll0821 2479 0.0 SYNE-PCC-01-002489 slr1588 193 3e-51 SYNE-PCC-01-002618 slr1760 177 2e-46 SYNE-PCC-01-001133 sll1673 162 6e-42 SYNE-PCC-01-002220 slr1212 143 3e-36 SYNE-PCC-01-000983 sll1473 135 8e-34 SYNE-PCC-01-002778 slr1969 99 8e-23 SYNE-PCC-01-001690 slr0473 87 3e-19 SYNE-PCC-01-002617 slr1759 55 1e-09 >SYNE-PCC-01-000542 sll0821 Length = 1276 Score = 2479 bits (6425), Expect = 0.0 Identities = 1242/1276 (97%), Positives = 1242/1276 (97%) Query: 1 MNPNRSLEDFLRNVINKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFASDGSGEVLAE 60 MNPNRSLEDFLRNVINKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFASDGSGEVLAE Sbjct: 1 MNPNRSLEDFLRNVINKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFASDGSGEVLAE 60 Query: 61 AVNRAALPSLLGLHFPVEDIPPQAREELGNQRKMIAVDVAHRRKKSHELSGRISPTEHSN 120 AVNRAALPSLLGLHFPVEDIPPQAREELGNQRKMIAVDVAHRRKKSHELSGRISPTEHSN Sbjct: 61 AVNRAALPSLLGLHFPVEDIPPQAREELGNQRKMIAVDVAHRRKKSHELSGRISPTEHSN 120 Query: 121 GHYTTVDSCHIQYLLAMGVLSSLTVPVMQDQQLWGIMAVHHSKPRRFTEQEWETMALLSK 180 GHYTTVDSCHIQYLLAMGVLSSLTVPVMQDQQLWGIMAVHHSKPRRFTEQEWETMALLSK Sbjct: 121 GHYTTVDSCHIQYLLAMGVLSSLTVPVMQDQQLWGIMAVHHSKPRRFTEQEWETMALLSK 180 Query: 181 EVSLAITXXXXXXXXXXXXXXXXXXXXXXTTVAQYGDRPETWQYALETVGQAVEADGAVL 240 EVSLAIT TTVAQYGDRPETWQYALETVGQAVEADGAVL Sbjct: 181 EVSLAITQSQLSRQVHQQQVQEALVQRLETTVAQYGDRPETWQYALETVGQAVEADGAVL 240 Query: 241 YIAPDLTGSVAQHYQWNLRFDWGNWLETSLWQELMRGQPSAAMEPMAAVQSTWEKPRPFT 300 YIAPDLTGSVAQHYQWNLRFDWGNWLETSLWQELMRGQPSAAMEPMAAVQSTWEKPRPFT Sbjct: 241 YIAPDLTGSVAQHYQWNLRFDWGNWLETSLWQELMRGQPSAAMEPMAAVQSTWEKPRPFT 300 Query: 301 SVAPLPPTNCVPHGYTLGELEQRSDWIAPPESLSAENFQSFLIVPLAADQQWVGSLILLR 360 SVAPLPPTNCVPHGYTLGELEQRSDWIAPPESLSAENFQSFLIVPLAADQQWVGSLILLR Sbjct: 301 SVAPLPPTNCVPHGYTLGELEQRSDWIAPPESLSAENFQSFLIVPLAADQQWVGSLILLR 360 Query: 361 KEKSLVKHWAGKRGIDRRNILPRLSFEAWEETQKLVPTWNRSERKLAQVASTQLYMAITQ 420 KEKSLVKHWAGKRGIDRRNILPRLSFEAWEETQKLVPTWNRSERKLAQVASTQLYMAITQ Sbjct: 361 KEKSLVKHWAGKRGIDRRNILPRLSFEAWEETQKLVPTWNRSERKLAQVASTQLYMAITQ 420 Query: 421 QFVTRLITQQTAYDPLTQLPNWIIFNRQLTLALLDALYEGKMVGVLVIAMDRFKRINESF 480 QFVTRLITQQTAYDPLTQLPNWIIFNRQLTLALLDALYEGKMVGVLVIAMDRFKRINESF Sbjct: 421 QFVTRLITQQTAYDPLTQLPNWIIFNRQLTLALLDALYEGKMVGVLVIAMDRFKRINESF 480 Query: 481 GHKTGDGLLQEVADRLNQKXXXXXXXXXXXXRWHGDGFTILLTQISDNQEMIPLCERLLS 540 GHKTGDGLLQEVADRLNQK RWHGDGFTILLTQISDNQEMIPLCERLLS Sbjct: 481 GHKTGDGLLQEVADRLNQKLSPLAAYSPLLSRWHGDGFTILLTQISDNQEMIPLCERLLS 540 Query: 541 TFQEPFFLQGQPIYLTASMGISTAPYDGETAESLLKFAEIALTRAKCQGKNTYQFYRPQD 600 TFQEPFFLQGQPIYLTASMGISTAPYDGETAESLLKFAEIALTRAKCQGKNTYQFYRPQD Sbjct: 541 TFQEPFFLQGQPIYLTASMGISTAPYDGETAESLLKFAEIALTRAKCQGKNTYQFYRPQD 600 Query: 601 SAPMLDRLTLESDLRQALTNQEFVLYFQPQVALDTGKLLGVEALVRWQHPRLGQVAPDVF 660 SAPMLDRLTLESDLRQALTNQEFVLYFQPQVALDTGKLLGVEALVRWQHPRLGQVAPDVF Sbjct: 601 SAPMLDRLTLESDLRQALTNQEFVLYFQPQVALDTGKLLGVEALVRWQHPRLGQVAPDVF 660 Query: 661 IPLAEELGLINHLGQWVLETACATHQHFFRETGRRLRMAVNISARQFQDEKWLNSVLECL 720 IPLAEELGLINHLGQWVLETACATHQHFFRETGRRLRMAVNISARQFQDEKWLNSVLECL Sbjct: 661 IPLAEELGLINHLGQWVLETACATHQHFFRETGRRLRMAVNISARQFQDEKWLNSVLECL 720 Query: 721 KRTGMPPEDLELEITESLMMEDIKGTVVLLHRLREEGVQVAIDDFGTGYSSLSILKQLPI 780 KRTGMPPEDLELEITESLMMEDIKGTVVLLHRLREEGVQVAIDDFGTGYSSLSILKQLPI Sbjct: 721 KRTGMPPEDLELEITESLMMEDIKGTVVLLHRLREEGVQVAIDDFGTGYSSLSILKQLPI 780 Query: 781 HRLKIDKSFVNDLLNEGADTAIIQYVIDLANGLNLETVAEGIESEAQLQRLQKMGCHLGQ 840 HRLKIDKSFVNDLLNEGADTAIIQYVIDLANGLNLETVAEGIESEAQLQRLQKMGCHLGQ Sbjct: 781 HRLKIDKSFVNDLLNEGADTAIIQYVIDLANGLNLETVAEGIESEAQLQRLQKMGCHLGQ 840 Query: 841 GYFLTRPLPAEAMMTYLYYPQILDFGPTPPLPKVALPETETEAGQGNVGDRPLPNSLNRE 900 GYFLTRPLPAEAMMTYLYYPQILDFGPTPPLPKVALPETETEAGQGNVGDRPLPNSLNRE Sbjct: 841 GYFLTRPLPAEAMMTYLYYPQILDFGPTPPLPKVALPETETEAGQGNVGDRPLPNSLNRE 900 Query: 901 NPWTEKLHDYVLLKERLQQRNVKEKLVLKIANKIRASLNINDILYSTVTEVRQFLNTDRV 960 NPWTEKLHDYVLLKERLQQRNVKEKLVLKIANKIRASLNINDILYSTVTEVRQFLNTDRV Sbjct: 901 NPWTEKLHDYVLLKERLQQRNVKEKLVLKIANKIRASLNINDILYSTVTEVRQFLNTDRV 960 Query: 961 VLFKFNSQWSGQVVTESHNDFCRSIINDEIDDPCFKGHYLRLYREGRVRAVSDIEKADLA 1020 VLFKFNSQWSGQVVTESHNDFCRSIINDEIDDPCFKGHYLRLYREGRVRAVSDIEKADLA Sbjct: 961 VLFKFNSQWSGQVVTESHNDFCRSIINDEIDDPCFKGHYLRLYREGRVRAVSDIEKADLA 1020 Query: 1021 DCHKELLRHYQVKANLVVPVVFNENLWGLLIAHECKTPRYWQEEDLQLLMELATQVAIAI 1080 DCHKELLRHYQVKANLVVPVVFNENLWGLLIAHECKTPRYWQEEDLQLLMELATQVAIAI Sbjct: 1021 DCHKELLRHYQVKANLVVPVVFNENLWGLLIAHECKTPRYWQEEDLQLLMELATQVAIAI 1080 Query: 1081 HQGELYEQLETANIRLQQISSLDALTQVGNRYLFDSTLEREWQRLQRIREPLALLLCDVD 1140 HQGELYEQLETANIRLQQISSLDALTQVGNRYLFDSTLEREWQRLQRIREPLALLLCDVD Sbjct: 1081 HQGELYEQLETANIRLQQISSLDALTQVGNRYLFDSTLEREWQRLQRIREPLALLLCDVD 1140 Query: 1141 FFKGFNDNYGHPAGDRCLKKIADAMAKVAKRPTDLVARYGGEEFAIILSETSLEGAINVT 1200 FFKGFNDNYGHPAGDRCLKKIADAMAKVAKRPTDLVARYGGEEFAIILSETSLEGAINVT Sbjct: 1141 FFKGFNDNYGHPAGDRCLKKIADAMAKVAKRPTDLVARYGGEEFAIILSETSLEGAINVT 1200 Query: 1201 EALQVEVANLAIPHTVSGTGHVTLSIGIAVYTPERHINPNALVKAADLALYEAKAKGRNQ 1260 EALQVEVANLAIPHTVSGTGHVTLSIGIAVYTPERHINPNALVKAADLALYEAKAKGRNQ Sbjct: 1201 EALQVEVANLAIPHTVSGTGHVTLSIGIAVYTPERHINPNALVKAADLALYEAKAKGRNQ 1260 Query: 1261 WLAYEGSQLPHVDGEV 1276 WLAYEGSQLPHVDGEV Sbjct: 1261 WLAYEGSQLPHVDGEV 1276 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 193 bits (490), Expect = 3e-51 Identities = 104/249 (41%), Positives = 153/249 (61%), Gaps = 10/249 (4%) Query: 606 DRLTLESDLRQALTNQEFVLYFQPQVALDTGKLLGVEALVRWQHPRLGQVAPDVFIPLAE 665 D + DL L + L++QP+V++ L G EAL+RW HPR G V+P +FIP+AE Sbjct: 157 DEAEIWRDLEVGLNTGQVFLFYQPKVSIHNHCLAGCEALIRWHHPRKGFVSPGLFIPIAE 216 Query: 666 ELGLINHLGQWVLETACATHQHFFRETGRRLRMAVNISARQFQDEKWLNSVLECLKRTG- 724 + G I+ +G+WV+ET Q + + +++A+NISARQF E L C+ R G Sbjct: 217 KTGFISVVGEWVIETVLRQCQQWQYQGLDPIQVAINISARQFHGED-----LICILRLGT 271 Query: 725 ----MPPEDLELEITESLMMEDIKGTVVLLHRLREEGVQVAIDDFGTGYSSLSILKQLPI 780 + P+ LE+E+TE+L++++++ ++ L+ LR EG VAIDDFGTGYSSLS L+Q P Sbjct: 272 HKYDVSPQQLEVELTETLLVKNVQDSIKQLNELRAEGFSVAIDDFGTGYSSLSYLQQFPF 331 Query: 781 HRLKIDKSFVNDLLNEGADTAIIQYVIDLANGLNLETVAEGIESEAQLQRLQKMGCHLGQ 840 LKID+SFV + + I +I+LA+ L L AEG+E+ A+ + MGC Q Sbjct: 332 DVLKIDQSFVRHIDKNAKNKTITASIINLAHELELRVTAEGVETWAEYDTIAHMGCDELQ 391 Query: 841 GYFLTRPLP 849 GY +RPLP Sbjct: 392 GYLFSRPLP 400 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 177 bits (448), Expect = 2e-46 Identities = 90/190 (47%), Positives = 123/190 (64%), Gaps = 1/190 (0%) Query: 1072 LATQVAIAIHQGELYEQLETANIRLQQISSLDALTQVGNRYLFDSTLEREWQRLQRIREP 1131 L +V ++Q L QLE+ N L++++ +D LTQ+ NR + L+ EW R + P Sbjct: 121 LRQRVKRLLYQNRLQHQLESVNQMLERLAKVDQLTQLANRRQLELFLDTEWSEAIREQYP 180 Query: 1132 LALLLCDVDFFKGFNDNYGHPAGDRCLKKIADAMAKVAKRPTDLVARYGGEEFAIILSET 1191 ++LLCD+D+FK +ND+YGH GD CL+++A A+ +V RP DL ARYGGEEF I+L T Sbjct: 181 FSILLCDIDYFKNYNDHYGHQGGDDCLQQVAKALTRVVHRPKDLAARYGGEEFLIVLPNT 240 Query: 1192 SLEGAINVTEALQVEVANLAIPHTVSG-TGHVTLSIGIAVYTPERHINPNALVKAADLAL 1250 L+GAI++ E +Q E+ LAIPH S HVTLSIG A P + LV AAD L Sbjct: 241 DLQGAIHIGEDIQAEITRLAIPHVQSAIADHVTLSIGCASTIPRLGSDWGKLVGAADQYL 300 Query: 1251 YEAKAKGRNQ 1260 YEAKA+GRN+ Sbjct: 301 YEAKAQGRNR 310 Score = 53.1 bits (126), Expect = 5e-09 Identities = 53/177 (29%), Positives = 81/177 (45%), Gaps = 16/177 (9%) Query: 423 VTRLITQQTAYDPLTQLPNWIIFNRQLTLAL----LDALYEGKMVGVLVIAMDRFKRINE 478 V +++ + D LTQL N RQL L L +A+ E +L+ +D FK N+ Sbjct: 141 VNQMLERLAKVDQLTQLAN----RRQLELFLDTEWSEAIREQYPFSILLCDIDYFKNYND 196 Query: 479 SFGHKTGDGLLQEVADRLNQKXXXXXXXXXXXXRWHGDGFTILLTQISDNQEMIPLCERL 538 +GH+ GD LQ+VA L + R+ G+ F I+L +D Q I + E + Sbjct: 197 HYGHQGGDDCLQQVAKALTR---VVHRPKDLAARYGGEEFLIVLPN-TDLQGAIHIGEDI 252 Query: 539 ---LSTFQEPFFLQGQPIYLTASMG-ISTAPYDGETAESLLKFAEIALTRAKCQGKN 591 ++ P ++T S+G ST P G L+ A+ L AK QG+N Sbjct: 253 QAEITRLAIPHVQSAIADHVTLSIGCASTIPRLGSDWGKLVGAADQYLYEAKAQGRN 309 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 162 bits (410), Expect = 6e-42 Identities = 81/177 (45%), Positives = 119/177 (67%), Gaps = 1/177 (0%) Query: 1088 QLETANIRLQQISSLDALTQVGNRYLFDSTLEREWQRLQRIREPLALLLCDVDFFKGFND 1147 +L+ AN +LQ ++++D LT + NR FD L +EWQR R ++PL+L+L D+D+FK +ND Sbjct: 276 ELQAANQQLQLLANIDGLTHIANRRRFDEYLAQEWQRHCREQKPLSLILVDIDYFKAYND 335 Query: 1148 NYGHPAGDRCLKKIADAMAKVAKRPTDLVARYGGEEFAIILSETSLEGAINVTEALQVEV 1207 YGH GD CL+K+A+ + +AKR TDLVARYGGEEF I+L T+ + A+ + E + + Sbjct: 336 LYGHQKGDDCLQKVANTLVDIAKRITDLVARYGGEEFVIVLPNTNRQDALAMAENMLQAI 395 Query: 1208 ANLAIPHTVSGTG-HVTLSIGIAVYTPERHINPNALVKAADLALYEAKAKGRNQWLA 1263 A LAIPH S +VT+SIG++ P ++ AD ALY AK++GRN+ +A Sbjct: 396 AALAIPHEGSSVSKYVTISIGVSSIIPMPEDTIERIISEADQALYSAKSQGRNRAIA 452 Score = 60.1 bits (144), Expect = 4e-11 Identities = 46/162 (28%), Positives = 77/162 (47%), Gaps = 8/162 (4%) Query: 434 DPLTQLPNWIIFNRQLTLALLDALYEGKMVGVLVIAMDRFKRINESFGHKTGDGLLQEVA 493 D LT + N F+ L E K + ++++ +D FK N+ +GH+ GD LQ+VA Sbjct: 291 DGLTHIANRRRFDEYLAQEWQRHCREQKPLSLILVDIDYFKAYNDLYGHQKGDDCLQKVA 350 Query: 494 DRLNQKXXXXXXXXXXXXRWHGDGFTILLTQISDNQEMIPLCERLLSTFQE---PFFLQG 550 + L R+ G+ F I+L ++ Q+ + + E +L P Sbjct: 351 NTL---VDIAKRITDLVARYGGEEFVIVLPN-TNRQDALAMAENMLQAIAALAIPHEGSS 406 Query: 551 QPIYLTASMGIST-APYDGETAESLLKFAEIALTRAKCQGKN 591 Y+T S+G+S+ P +T E ++ A+ AL AK QG+N Sbjct: 407 VSKYVTISIGVSSIIPMPEDTIERIISEADQALYSAKSQGRN 448 >SYNE-PCC-01-002220 slr1212 Length = 844 Score = 143 bits (361), Expect = 3e-36 Identities = 71/180 (39%), Positives = 115/180 (63%), Gaps = 3/180 (1%) Query: 914 KERLQQRNVKEKLVLKIANKIRASLNINDILYSTVTEVRQFLNTDRVVLFKFN--SQWS- 970 ++RL ++ +E L+ +I +IR SL++ I + V E+RQFL DRVV+F+F+ S +S Sbjct: 450 EQRLYEQGRRESLLREITQRIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSV 509 Query: 971 GQVVTESHNDFCRSIINDEIDDPCFKGHYLRLYREGRVRAVSDIEKADLADCHKELLRHY 1030 G +V ES + IIN I++ CF +Y + Y++GR++ + DI ++ L CH + L Sbjct: 510 GNIVAESVLAPFKPIINSAIEETCFSNNYAQRYQQGRIQVIEDIHQSHLRQCHIDFLARL 569 Query: 1031 QVKANLVVPVVFNENLWGLLIAHECKTPRYWQEEDLQLLMELATQVAIAIHQGELYEQLE 1090 QV+ANLV+P++ + LWGLL H+C + R W++ ++ LL ++ Q IAI Q LYEQ + Sbjct: 570 QVRANLVLPLINDAILWGLLCIHQCDSSRVWEQTEIDLLKQITNQFEIAIQQATLYEQAQ 629 Score = 63.2 bits (152), Expect = 5e-12 Identities = 50/183 (27%), Positives = 85/183 (46%), Gaps = 27/183 (14%) Query: 8 EDFLRNVINKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFASDGS---GEVLAEAVNR 64 E LR + + ++L L +V+E R FL DRV I++F+ D G ++AE+V Sbjct: 460 ESLLREITQRIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSVGNIVAESVLA 519 Query: 65 AALPSLLGLHFPVEDIPPQAREELGNQRKMIAVDVAHRRKKSHELSGRISPTEHSNGHYT 124 P + I A EE + + A R ++ GRI E H + Sbjct: 520 -----------PFKPIINSAIEET-----CFSNNYAQRYQQ-----GRIQVIEDI--HQS 556 Query: 125 TVDSCHIQYLLAMGVLSSLTVPVMQDQQLWGIMAVHHSKPRRFTEQ-EWETMALLSKEVS 183 + CHI +L + V ++L +P++ D LWG++ +H R EQ E + + ++ + Sbjct: 557 HLRQCHIDFLARLQVRANLVLPLINDAILWGLLCIHQCDSSRVWEQTEIDLLKQITNQFE 616 Query: 184 LAI 186 +AI Sbjct: 617 IAI 619 >SYNE-PCC-01-000983 sll1473 Length = 481 Score = 135 bits (340), Expect = 8e-34 Identities = 72/207 (34%), Positives = 118/207 (57%), Gaps = 12/207 (5%) Query: 903 WTEKLHDYVLLKERLQQRNVKEKLVLKIANKIRASLNINDILYSTVTEVRQFLNTDRVVL 962 W + + ++ ++Q+ +E+ + +I IR SLN+ +L +TV EV+ L DRV++ Sbjct: 22 WHRQNQERRRIEISIKQQTQRERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLI 81 Query: 963 FKFNSQWSGQVVTESHNDFCRSIINDEIDDPCFKGHYLRLYREGRVRAVSDIEKADLADC 1022 ++ +G +TES N SI+ D F Y + Y +G+VRA++DI++ D+ C Sbjct: 82 YRIWQDGTGSAITESVNANYPSILGRTFSDEVFPVEYHQAYTKGKVRAINDIDQDDIEIC 141 Query: 1023 HKELLRHYQVKANLVVPVVFNEN------------LWGLLIAHECKTPRYWQEEDLQLLM 1070 + ++ + VK+ LVVP++ + LWGLLI H+C R WQ +++L+ Sbjct: 142 LADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPWQPWEVELMK 201 Query: 1071 ELATQVAIAIHQGELYEQLETANIRLQ 1097 +LA QVAIAI Q ELYEQL+ N L+ Sbjct: 202 QLANQVAIAIQQSELYEQLQQLNKDLE 228 Score = 61.6 bits (148), Expect = 1e-11 Identities = 49/192 (25%), Positives = 78/192 (40%), Gaps = 36/192 (18%) Query: 8 EDFLRNVINKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFASDGSGEVLAEAVNRAAL 67 E F+ + ++L L L V E + L VDRV IY+ DG+G + E+VN A Sbjct: 43 ERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQDGTGSAITESVN-ANY 101 Query: 68 PSLLGLHFPVEDIPPQAREELGNQRKMIAVDVAHRRKKSHELSGRISPTEHSNGHYTTVD 127 PS+LG F E P + + + D+ ++ Sbjct: 102 PSILGRTFSDEVFPVEYHQAYTKGKVRAINDI----------------------DQDDIE 139 Query: 128 SCHIQYLLAMGVLSSLTVPVMQDQQ------------LWGIMAVHH-SKPRRFTEQEWET 174 C ++ GV S L VP++Q + LWG++ H + R + E E Sbjct: 140 ICLADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPWQPWEVEL 199 Query: 175 MALLSKEVSLAI 186 M L+ +V++AI Sbjct: 200 MKQLANQVAIAI 211 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 99.0 bits (245), Expect = 8e-23 Identities = 66/201 (32%), Positives = 108/201 (53%), Gaps = 25/201 (12%) Query: 913 LKERLQQRNVKEKLVLKIANKIRASLNINDILYSTVTEVRQFLNTDRVVLFKFN------ 966 L++ LQ VK L+ ++ +IR SL++++IL + VT V++FL DR+V+++F+ Sbjct: 150 LQDSLQASQVK--LLSQVIAQIRQSLDLSEILNNAVTAVQKFLFVDRLVIYQFHYSQPSL 207 Query: 967 -------------SQWSGQVVTESHND-FCRSIINDEIDDPCFKG--HYLRLYREGRVRA 1010 Q G+V E+ +++ ++ CF Y + Y +G V A Sbjct: 208 TPLEENQIPAPRPRQQYGEVTYEARRSPEIDTMLGIMTENDCFSQVFSYEQKYLKGAVVA 267 Query: 1011 VSDIEKADLAD-CHKELLRHYQVKANLVVPVVFNENLWGLLIAHECKTPRYWQEEDLQLL 1069 VSDIE + C LL+ YQV+A LV P++ LWGLLIAH+C PR W + + L Sbjct: 268 VSDIENHYSSSYCLVGLLQRYQVRAKLVAPIIVEGQLWGLLIAHQCHHPRQWLDSEKNFL 327 Query: 1070 MELATQVAIAIHQGELYEQLE 1090 ++ +A+AI Q LY +++ Sbjct: 328 GQIGEHLAVAIVQSLLYSEVQ 348 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 87.0 bits (214), Expect = 3e-19 Identities = 53/156 (33%), Positives = 82/156 (52%), Gaps = 9/156 (5%) Query: 15 INKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFASDGSGEVLAEAVNRAALPSLLGLH 74 +N+ + LR+ VIVEE R G DRV +Y+F + G+V+AE R + LGLH Sbjct: 144 LNRLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDENNHGDVIAED-KRDDMEPYLGLH 202 Query: 75 FPVEDIPPQAREELGNQRKMIAVDVAHRRKKSHELSGRISPTEHSNGHYT-----TVDSC 129 +P DIP AR + + DV + L+ ++P+ + T + C Sbjct: 203 YPESDIPQPARRLFIHNPIRVIPDVYG---VAVPLTPAVNPSTNRAVDLTESILRSAYHC 259 Query: 130 HIQYLLAMGVLSSLTVPVMQDQQLWGIMAVHHSKPR 165 H+ YL MGV +SLT+ +++D LWG++A HH P+ Sbjct: 260 HLTYLKNMGVGASLTISLIKDGHLWGLIACHHQTPK 295 Score = 52.0 bits (123), Expect = 1e-08 Identities = 36/152 (23%), Positives = 63/152 (41%), Gaps = 25/152 (16%) Query: 932 NKIRASLNINDILYSTVTEVRQFLNTDRVVLFKFNSQWSGQVVTESHNDFCRSIINDEID 991 N++R N+ D V EVR+ DRV+L++F+ G V+ E D + Sbjct: 145 NRLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDENNHGDVIAEDKRDDMEPYLGLHYP 204 Query: 992 DPCFKGHYLRLYREGRVRAVSDI----------------EKADLAD--------CHKELL 1027 + RL+ +R + D+ DL + CH L Sbjct: 205 ESDIPQPARRLFIHNPIRVIPDVYGVAVPLTPAVNPSTNRAVDLTESILRSAYHCHLTYL 264 Query: 1028 RHYQVKANLVVPVVFNENLWGLLIAHECKTPR 1059 ++ V A+L + ++ + +LWGL+ H +TP+ Sbjct: 265 KNMGVGASLTISLIKDGHLWGLIACHH-QTPK 295 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 55.1 bits (131), Expect = 1e-09 Identities = 47/185 (25%), Positives = 87/185 (47%), Gaps = 12/185 (6%) Query: 913 LKERLQQRNVKEK------LVLKIANKIRASLNINDILYSTVTEVRQFLNTDRVVLFKFN 966 + +R Q +++ +K L+ KI+ +IR SL I + +V R ++ ++ Sbjct: 568 ITDRKQAQDILQKKLNQILLMRKISQEIRRSLQPTLIFQTAARQVGNVFAVSRCLIHNYS 627 Query: 967 SQWSGQV--VTESHNDFCRSIINDEIDDPCFKGHYLRLYREGRVRAVSDIEKADLADCH- 1023 + QV V E S++ EI + + + + R AV D+++ DL H Sbjct: 628 EATTLQVPVVAEYLGGQFTSLLAGEI--AVEQAYDPTIIQGDRAMAVVDLDQ-DLNSTHT 684 Query: 1024 KELLRHYQVKANLVVPVVFNENLWGLLIAHECKTPRYWQEEDLQLLMELATQVAIAIHQG 1083 K + +QVK+ L V + G++ H+C R W ++++LL +A Q+ IA+ Q Sbjct: 685 KAFYQRFQVKSFLAVRTSYQGKANGIIALHQCDRQRVWTADEIELLEAIAEQMGIALAQA 744 Query: 1084 ELYEQ 1088 L E+ Sbjct: 745 ALLEK 749 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.320 0.136 0.403 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 115,699 Number of Sequences: 78 Number of extensions: 4932 Number of successful extensions: 59 Number of sequences better than 1.0e-05: 9 Number of HSP's better than 0.0 without gapping: 9 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 20 Number of HSP's gapped (non-prelim): 19 length of query: 1276 length of database: 48,235 effective HSP length: 74 effective length of query: 1202 effective length of database: 42,463 effective search space: 51040526 effective search space used: 51040526 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 98 (42.4 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000608 sll0921 (222 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000608 sll0921 406 e-116 SYNE-PCC-01-001160 sll1708 166 8e-44 SYNE-PCC-01-001075 sll1592 142 1e-36 SYNE-PCC-01-001575 slr0312 128 2e-32 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 121 2e-30 SYNE-PCC-01-001039 sll1544 82 1e-18 SYNE-PCC-01-002731 slr1909 79 1e-17 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 59 2e-11 SYNE-PCC-01-001461 slr0115 57 4e-11 SYNE-PCC-01-000414 sll0649 54 3e-10 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 54 3e-10 SYNE-PCC-01-002489 slr1588 54 4e-10 SYNE-PCC-01-000511 sll0782 53 9e-10 SYNE-PCC-01-002879 slr2104 52 2e-09 SYNE-PCC-01-001306 sll1905 52 2e-09 SYNE-PCC-01-000800 sll1228 50 5e-09 SYNE-PCC-01-000242 sll0396 49 1e-08 SYNE-PCC-01-001132 sll1672 48 2e-08 SYNE-PCC-01-002618 slr1760 48 3e-08 SYNE-PCC-01-001437 slr0081 48 3e-08 SYNE-PCC-01-002951 ssl0564 47 4e-08 SYNE-PCC-01-002672 slr1837 47 4e-08 SYNE-PCC-01-002086 slr1042 47 5e-08 SYNE-PCC-01-002873 slr2098 46 1e-07 SYNE-PCC-01-002788 slr1982 46 1e-07 SYNE-PCC-01-002033 slr0947 46 1e-07 SYNE-PCC-01-001133 sll1673 45 3e-07 SYNE-PCC-01-002486 slr1584 44 6e-07 SYNE-PCC-01-002221 slr1213 43 7e-07 SYNE-PCC-01-002617 slr1759 40 6e-06 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 406 bits (1044), Expect = e-116 Identities = 209/222 (94%), Positives = 209/222 (94%) Query: 1 MEKIRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLP 60 MEKIRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLP Sbjct: 1 MEKIRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLP 60 Query: 61 DMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 DMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ Sbjct: 61 DMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 Query: 121 ATHGGFAWIDPAIARIVLAHXXXXXXXXXXXXXRTSLSYGLTERELEVLQLIVDGCSNAD 180 ATHGGFAWIDPAIARIVLAH RTSLSYGLTERELEVLQLIVDGCSNAD Sbjct: 121 ATHGGFAWIDPAIARIVLAHAPGAEPSEPSSPSRTSLSYGLTERELEVLQLIVDGCSNAD 180 Query: 181 IAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGLVN 222 IAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGLVN Sbjct: 181 IAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGLVN 222 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 166 bits (419), Expect = 8e-44 Identities = 90/218 (41%), Positives = 137/218 (62%), Gaps = 8/218 (3%) Query: 4 IRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMN 63 ++I ++ED+ L++ GL+ AL FE +G NG + PD++++DIGLP ++ Sbjct: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 Query: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQATH 123 GI+ T+Q+K+ + Q +V+LT + ++AA S+GADAYC+K + E LI AI A Sbjct: 77 GIEATKQIKQ--TSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQ 134 Query: 124 GGFAWIDPAIARIVLAHXXXXXXXXXXXXXRTSLSYGLTERELEVLQLIVDGCSNADIAE 183 G ++DP IAR+V+ + L+ERE++VL+LIV+G SN +IA+ Sbjct: 135 DGATYLDPQIARVVVENLKPPVPEGQADVS------SLSEREIDVLKLIVEGKSNQEIAQ 188 Query: 184 KLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGLV 221 LY++ T+KTHVR I+NKL +DR QAAV A+RSGLV Sbjct: 189 TLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSGLV 226 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 142 bits (357), Expect = 1e-36 Identities = 87/220 (39%), Positives = 118/220 (53%), Gaps = 3/220 (1%) Query: 4 IRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMN 63 IRI L+ED++L R GL L+ EP + GEA +G + + Q DVVI+D+GLP + Sbjct: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIG 67 Query: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQATH 123 GI+ Q+KK ++ Q V+ILT + Q + A A YC+K E L+ AI++ Sbjct: 68 GIEACHQIKK--IHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVA 125 Query: 124 GGFAWIDP-AIARIVLAHXXXXXXXXXXXXXRTSLSYGLTERELEVLQLIVDGCSNADIA 182 G W D A I A LT+RELE+L L+ G SN +IA Sbjct: 126 AGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKSNQEIA 185 Query: 183 EKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGLVN 222 ++LYI GTV+ HV IL KL DRTQAA+ AI LV+ Sbjct: 186 DELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRLVS 225 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 128 bits (321), Expect = 2e-32 Identities = 70/219 (31%), Positives = 116/219 (52%), Gaps = 17/219 (7%) Query: 4 IRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMN 63 IR+ + +D + RQGL + +P + + +A NG + + ++ +PDV ++D+ +P++ Sbjct: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 Query: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQATH 123 G+ + + R+++LT D +E + AGA Y +K++ + L+ AI+ H Sbjct: 67 GVAAISAICA--IVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVH 124 Query: 124 GGFAWIDPAIARIVLAHXXXXXXXXXXXXXRTSLSYGLTERELEVLQLIVDGCSNADIAE 183 G +I P + ++ L+ERELEVL + G SNADIA Sbjct: 125 RGQKYIPPDVGAKLVQRLSNPE---------------LSERELEVLGSLAQGMSNADIAT 169 Query: 184 KLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGLVN 222 L I GTVK+HV ILNKL DRTQA + A++ G+V+ Sbjct: 170 ALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGIVS 208 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 121 bits (303), Expect = 2e-30 Identities = 66/212 (31%), Positives = 119/212 (56%), Gaps = 13/212 (6%) Query: 2 EKIRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPD 61 +K+++ LI+D L+R+G++ + ++ +FE V + ++G G+ + QT PDV+I+D+ + Sbjct: 3 DKLKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKG 62 Query: 62 MNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 ++G+D + L+ ++ R++ILT++D + + AGAD Y +KD+ + L+E I+ Sbjct: 63 LSGLDTLKGLRAEGVD--ARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKR 120 Query: 122 THGGFAWIDPAIARIVLAHXXXXXXXXXXXXXRTSLSYGLTERELEVLQLIVDGCSNADI 181 G + +I ++L LT+RE+ VL+ I G SN I Sbjct: 121 IAQGEVILSDSIKNLLLERTHEDNPLD-----------SLTDREMGVLRQIATGLSNKQI 169 Query: 182 AEKLYITVGTVKTHVRNILNKLCANDRTQAAV 213 A +L+I+ TVK H+RN+L KL + R A V Sbjct: 170 AAQLFISEETVKVHIRNLLRKLNVHSRVAATV 201 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 82.0 bits (201), Expect = 1e-18 Identities = 58/175 (33%), Positives = 91/175 (52%), Gaps = 17/175 (9%) Query: 46 QQTRPDVVIIDIGLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAY 105 QQ P VV+I L D +G+D+ +QLK + QC ++L LND V A GADA Sbjct: 67 QQPEPLVVVICQRLEDGSGLDLLKQLKAHARSPQC--LLLLLNDHAAIVEEAQQYGADAI 124 Query: 106 CMKDSRTELLIE-AIQATHGGFAWIDPAIARIVLAHXXXXXXXXXXXXXRTSLSYGLTER 164 ++ S I A++ G +ID + I R S LT+R Sbjct: 125 FLESSLGNGEINLAVECLLQGRTYIDSRLEAIA--------------DYRKSQKDELTQR 170 Query: 165 ELEVLQLIVDGCSNADIAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSG 219 E+ +L+L+ +G +N++I ++L++ TV+ +V+ I+ KL A DRT AA+ +R G Sbjct: 171 EVAILRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIAGLREG 225 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 79.0 bits (193), Expect = 1e-17 Identities = 60/219 (27%), Positives = 104/219 (47%), Gaps = 12/219 (5%) Query: 2 EKIRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPD 61 E + L++D+ + ++D L E V A NGR L ++ T PD+++ DI +P+ Sbjct: 6 ENYHLLLVDDDPNLLLLVKDYL--EYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPE 63 Query: 62 MNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 M+G +Q+++ P V+ L+ Q + + GAD Y K E L +Q+ Sbjct: 64 MDGYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQS 123 Query: 122 THGGFAWIDPAIARIVLAHXXXXXXXXXXXXXRTSLSYGLTERELEVLQLIVDGCSNADI 181 A +L H + + LT E +V+QL+ G +N +I Sbjct: 124 C--------LRQADRLLQH--NNHPLEDNARVQVARDVELTPTETKVIQLVAQGLANREI 173 Query: 182 AEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGL 220 A+ L ++ TV++HV N+LNK ++RT+ A AI+ + Sbjct: 174 ADHLKVSQRTVESHVSNMLNKTGLHNRTELARWAIQKSI 212 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 58.5 bits (140), Expect = 2e-11 Identities = 57/217 (26%), Positives = 93/217 (42%), Gaps = 33/217 (15%) Query: 4 IRIALIEDEDLIRQGLQDALT-MEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDM 62 +RI LIED++LI GLQ LT + + +W +G+ G+ + D V++D+ LP + Sbjct: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWF---TDGKTGMAALTSAPYDAVVLDLTLPKL 57 Query: 63 NGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKD-------SRTELL 115 +G++V QQ + + V+ILT D + + +GAD Y K +R + L Sbjct: 58 DGLEVLQQWRSN--HQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQAL 115 Query: 116 IEAIQATHGGFAWIDPAIARIVLAHXXXXXXXXXXXXXRTSLSYGLTERELEVLQLIVDG 175 I H V+ + LT RE ++L+L + Sbjct: 116 IRRRYGYH-----------HSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLN 164 Query: 176 ----CSNADIAEKL-----YITVGTVKTHVRNILNKL 203 S + I EKL I+ G + H+ N+ KL Sbjct: 165 KDRVLSRSSIEEKLSSWDEEISSGALDVHIYNLRQKL 201 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 57.4 bits (137), Expect = 4e-11 Identities = 51/222 (22%), Positives = 99/222 (44%), Gaps = 12/222 (5%) Query: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 RI +I+D+ I + ++ +E + V +A +G G + Q +PD++++D+ LP ++G Sbjct: 3 RILIIDDDPAISDLV--SINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 Query: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQATHG 124 V Q+L++ V++LT Q + + F +GAD Y K E ++ ++A Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 Query: 125 GFAWIDPAIARI-VLAHXXXXXXXXXXXXXRTSLSYGLTERELEVLQLIV----DGCSNA 179 I A +L S LT E E+L ++ S + Sbjct: 121 RTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPS 180 Query: 180 DIAEKLY-----ITVGTVKTHVRNILNKLCANDRTQAAVRAI 216 DI +++ + T++ H+R++ KL N R ++ + Sbjct: 181 DILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTV 222 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 54.3 bits (129), Expect = 3e-10 Identities = 31/116 (26%), Positives = 64/116 (55%), Gaps = 2/116 (1%) Query: 6 IALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGI 65 I ++ED+ I Q +++ L E F + +G GL + Q+ PD++++D+ LP ++G+ Sbjct: 14 ILIVEDDQEIAQLIRETLERE-QFTCI-VTNDGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 Query: 66 DVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 +V ++++ P + +++LT +E + S GAD Y +K L+ ++A Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRA 127 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 54.3 bits (129), Expect = 3e-10 Identities = 34/117 (29%), Positives = 63/117 (53%), Gaps = 3/117 (2%) Query: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 +I ++EDE IR+ + AL + + V EA++ + + +++ P ++++D LP +G Sbjct: 4 KILIVEDECAIREMI--ALFLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSG 60 Query: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 I Q +KK +++LT EE +A +AGAD Y K ++L+ I+A Sbjct: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEA 117 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 53.9 bits (128), Expect = 4e-10 Identities = 34/118 (28%), Positives = 65/118 (55%), Gaps = 4/118 (3%) Query: 6 IALIEDEDLIRQGLQDALTMEPSFEWVGEAANGR--LGLVMMQQTRPDVVIIDIGLPDMN 63 I ++EDE +IR+ + + L++E +++ + EA NG LGL+ + PD++I D+ +P+M+ Sbjct: 4 ILVVEDEAIIRELIGETLSLE-NYK-ILEAENGAVALGLLNSLEVMPDLIICDVMMPEMD 61 Query: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 G + L+K + LT + ++GAD Y +K + E L+ A+ + Sbjct: 62 GHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNS 119 >SYNE-PCC-01-000511 sll0782 Length = 369 Score = 52.8 bits (125), Expect = 9e-10 Identities = 27/61 (44%), Positives = 39/61 (63%) Query: 161 LTERELEVLQLIVDGCSNADIAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGL 220 L+ERE E++ L+ G + DIAE+L+I+ TVK HV L+KL A +R QA +A G Sbjct: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQATVQGF 368 Query: 221 V 221 + Sbjct: 369 I 369 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 52.0 bits (123), Expect = 2e-09 Identities = 35/135 (25%), Positives = 63/135 (46%), Gaps = 8/135 (5%) Query: 1 MEKIRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLP 60 +E I L+ED ++ R+ D LT + V A NG+ L ++ D +++DI +P Sbjct: 715 LEGASILLVEDNEINREFAHDLLTSKGLRVQV--ANNGQEALTLLTSNTYDAILMDIQMP 772 Query: 61 DMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 +NG D T+ +++ + ++ +T N A AG + + K + +LL + + Sbjct: 773 MLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLA 832 Query: 121 ATHGGFAWIDPAIAR 135 WI P AR Sbjct: 833 ------HWIPPNSAR 841 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 51.6 bits (122), Expect = 2e-09 Identities = 27/80 (33%), Positives = 49/80 (61%), Gaps = 1/80 (1%) Query: 37 NGRLGLVMMQQTRPDVVIIDIGLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLA 96 +G L + Q +PD++++D+ +P M+G++V +LK+ P V+ LT +++++ +L Sbjct: 49 SGPEALQRVTQAQPDLILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQ 108 Query: 97 AFSAGADAYCMKD-SRTELL 115 AF+ GA Y K S ELL Sbjct: 109 AFAKGAVDYVTKPFSPPELL 128 Score = 40.0 bits (92), Expect = 6e-06 Identities = 27/114 (23%), Positives = 57/114 (50%), Gaps = 2/114 (1%) Query: 8 LIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGIDV 67 L+ +++LI Q + L + + V NG+ L + + DVV++D+ +P+M+G+ Sbjct: 743 LLAEDNLINQQVAKLLLKKLGYP-VDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 68 TQQLKKGPLNCQCR-VVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 T+ +++ + ++ +T E ++G + Y K R E L +A+Q Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQALQ 855 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 50.4 bits (119), Expect = 5e-09 Identities = 29/92 (31%), Positives = 47/92 (51%), Gaps = 1/92 (1%) Query: 32 VGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQE 91 V EA NG + + + + P V+++D+ +P ++G TQ++K P ++ LT + E Sbjct: 444 VQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFE 503 Query: 92 ETVLAAFSAGADAYCMKDSRTELLIEAIQATH 123 SAG D + K R E LI A+ A H Sbjct: 504 GERAEILSAGCDDFLSKPFRPEELI-ALLAKH 534 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 49.3 bits (116), Expect = 1e-08 Identities = 27/104 (25%), Positives = 60/104 (57%), Gaps = 4/104 (3%) Query: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 R+ ++E+E+ + + ++ L E ++ V A +G G Q+ PD++I++ LP M+G Sbjct: 4 RVLVVEEEEKLARFMELELKYE-GYD-VSVARDGLKGFTQAQEFPPDLIIVNGALPGMSG 61 Query: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMK 108 +++ ++L++ + + ++++T D E + AGAD Y +K Sbjct: 62 LELCRRLRE--MGSRIPIILITAKDDVEERVMGLDAGADDYIVK 103 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 48.1 bits (113), Expect = 2e-08 Identities = 32/125 (25%), Positives = 61/125 (48%), Gaps = 3/125 (2%) Query: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 +I +++D+ + RQ L L P + EA+NG+ + + + P ++ +D+ +P M+G Sbjct: 631 KILVVDDKSVNRQLLIKLLA--PFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDG 688 Query: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQATHG 124 + T+ +K VV LT + EE SAG D + K R + +++ H Sbjct: 689 YEATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTIFDSL-TKHL 747 Query: 125 GFAWI 129 G ++ Sbjct: 748 GVTYV 752 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 47.8 bits (112), Expect = 3e-08 Identities = 35/116 (30%), Positives = 57/116 (49%), Gaps = 2/116 (1%) Query: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 +I +++D+ +R L+ L E V A NG L + +P+VV++D +P M+G Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEG--HRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDG 70 Query: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 Q L K N V+++T D E +V AF AGA Y K +L + ++ Sbjct: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVK 126 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 47.8 bits (112), Expect = 3e-08 Identities = 38/124 (30%), Positives = 62/124 (50%), Gaps = 11/124 (8%) Query: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQ-------QTRPDVVIIDI 57 RI ++EDE IR+ + +L E +E V +GR L ++Q Q D++I+DI Sbjct: 32 RILVVEDEVSIRETIVLSL-QEEGYE-VYAVDDGRDALALLQEFSEDPGQAAVDLIILDI 89 Query: 58 GLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIE 117 LP +NG+DV + L+ G N ++I++ E + GAD Y K + L+ Sbjct: 90 MLPQVNGLDVCRSLRFGGDNTP--ILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVA 147 Query: 118 AIQA 121 +A Sbjct: 148 RCRA 151 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 47.4 bits (111), Expect = 4e-08 Identities = 24/61 (39%), Positives = 38/61 (62%) Query: 161 LTERELEVLQLIVDGCSNADIAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGL 220 L++RELE+L L+ G +N +++E+L I+ TV HV NIL K +R + A++ G Sbjct: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWGK 71 Query: 221 V 221 V Sbjct: 72 V 72 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 47.4 bits (111), Expect = 4e-08 Identities = 32/116 (27%), Positives = 59/116 (50%), Gaps = 4/116 (3%) Query: 6 IALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGI 65 I L++DE+ + + L AL + + A G+ GL M + D++I+D LP ++G+ Sbjct: 4 ILLVDDENALTEPLSKALGHQG--HTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 Query: 66 DVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 ++ +Q++ L V+ LT D + +A AG D Y +K L+ ++A Sbjct: 62 EICRQIR--ILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRA 115 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 47.0 bits (110), Expect = 5e-08 Identities = 33/116 (28%), Positives = 54/116 (46%), Gaps = 4/116 (3%) Query: 6 IALIEDEDLIRQGLQDALTMEPSFEW-VGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 + L+ED R+ + L W V A +G L +Q PD+V++DI +P MNG Sbjct: 30 VLLVEDSSSQREMISGILK---DHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 Query: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 +V +++K P V++ + +E GADAY K + L+ I+ Sbjct: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIK 142 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 45.8 bits (107), Expect = 1e-07 Identities = 32/111 (28%), Positives = 54/111 (48%), Gaps = 2/111 (1%) Query: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 RI L+ED + I Q + L + F V AANG + L + +V++D+ +P+M+G Sbjct: 926 RILLVEDNE-INQEVAAELLRDVGFN-VDVAANGLIALERLNNNAYALVLMDMQMPEMDG 983 Query: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELL 115 I+ T +++ P Q +V +T N + AG + + K E L Sbjct: 984 IEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 Score = 45.1 bits (105), Expect = 2e-07 Identities = 36/127 (28%), Positives = 62/127 (48%), Gaps = 3/127 (2%) Query: 1 MEKIRIALIEDEDLIRQGLQDALT-MEPSFEWV--GEAANGRLGLVMMQQTRPDVVIIDI 57 +E R+ +++D D R ++D L M+ E V G A L + +V ID Sbjct: 768 LEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDW 827 Query: 58 GLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIE 117 +P+M+G++V ++LK LN Q + I+T +EE + A S G D +K +L + Sbjct: 828 QMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFD 887 Query: 118 AIQATHG 124 ++ G Sbjct: 888 SLARVLG 894 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 45.8 bits (107), Expect = 1e-07 Identities = 30/117 (25%), Positives = 57/117 (48%), Gaps = 2/117 (1%) Query: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 ++ L+ED ++ R L L + +E V A +G + M P ++++D+ LP ++G Sbjct: 6 KVLLVEDNEMNRDMLSRRL-IRKGYEVV-IAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 Query: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 T+Q+K P ++ LT + A +AG D Y K + L++ ++A Sbjct: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEA 120 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 45.8 bits (107), Expect = 1e-07 Identities = 29/101 (28%), Positives = 54/101 (53%), Gaps = 5/101 (4%) Query: 8 LIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGIDV 67 +++DE IR+ L+ L+M +E V AA+G + ++ PD+V++D+ +P ++G V Sbjct: 1 MVDDEASIRRILETRLSMI-GYEVV-TAADGEEAIATFHESDPDLVVLDVMMPKLDGYGV 58 Query: 68 TQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMK 108 Q+L+K +++LT + GAD Y +K Sbjct: 59 CQELRK---ESDIPIIMLTALGDVADRITGLELGADDYVVK 96 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 44.7 bits (104), Expect = 3e-07 Identities = 23/89 (25%), Positives = 44/89 (49%) Query: 32 VGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQE 91 V +G++ L +Q RPD++++DI +PDM+G V + +KK ++ ++ Sbjct: 35 VRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISALGDT 94 Query: 92 ETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 + AF G Y K + E ++ I+ Sbjct: 95 FDKVKAFECGGVDYITKPFQIEEVVARIE 123 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 43.5 bits (101), Expect = 6e-07 Identities = 51/223 (22%), Positives = 95/223 (42%), Gaps = 19/223 (8%) Query: 4 IRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMN 63 +RI L+ED+ + + L +AL+ + V A + L + D+VI+D+ LP+++ Sbjct: 1 MRILLVEDDLPLAETLAEALSDQ--LYTVDIATDASLAWDYASRLEYDLVILDVMLPELD 58 Query: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA-T 122 GI + Q+ + + ++++T D + AGAD Y +K L ++A Sbjct: 59 GITLCQKWRSH--SYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALL 116 Query: 123 HGGFAWIDPAIARIVLAHXXXXXXXXXXXXXRTSLSYGLTERELEVLQLIVDG----CSN 178 G A P VL + LT +E +L+L++ S Sbjct: 117 RRGCATCQP-----VLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSR 171 Query: 179 ADIAEKLYITVG-----TVKTHVRNILNKLCANDRTQAAVRAI 216 + I + ++ TVK HVR++ KL + + A+ + Sbjct: 172 SMIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETV 214 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 43.1 bits (100), Expect = 7e-07 Identities = 31/116 (26%), Positives = 58/116 (50%), Gaps = 5/116 (4%) Query: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLP-DMN 63 +I ++EDE L+ Q + L + +E A++G L + + PD+V++DI + +++ Sbjct: 4 KILIVEDERLVAQHIAQLLKSD-GYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 Query: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAI 119 GI+V +++K +V LT ET+ A Y +K R E L+ + Sbjct: 63 GIEVAERIKS---LYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 40.0 bits (92), Expect = 6e-06 Identities = 29/116 (25%), Positives = 56/116 (48%), Gaps = 2/116 (1%) Query: 8 LIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGIDV 67 L+ +++L+ Q + + + V A NG+ + +++ D+V++D+ +P M+GI Sbjct: 1193 LLAEDNLVNQKVAHQMLNNLGYP-VAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITA 1251 Query: 68 TQQLKKG-PLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQAT 122 + +++ PL Q R+V +T N AG D Y K L + +Q T Sbjct: 1252 CRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQDT 1307 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.137 0.391 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 17,798 Number of Sequences: 78 Number of extensions: 656 Number of successful extensions: 57 Number of sequences better than 1.0e-05: 30 Number of HSP's better than 0.0 without gapping: 22 Number of HSP's successfully gapped in prelim test: 8 Number of HSP's that attempted gapping in prelim test: 16 Number of HSP's gapped (non-prelim): 33 length of query: 222 length of database: 48,235 effective HSP length: 60 effective length of query: 162 effective length of database: 43,555 effective search space: 7055910 effective search space used: 7055910 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.9 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000727 sll1120 (1200 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000727 sll1120 1778 0.0 >SYNE-PCC-01-000727 sll1120 Length = 1200 Score = 1778 bits (4604), Expect = 0.0 Identities = 959/1200 (79%), Positives = 959/1200 (79%) Query: 1 MVYVKRIELSHFKSFGGTTAIPFLPGFTVVSGPNGSGKSNILDALLFCLGLATSKGMRAE 60 MVYVKRIELSHFKSFGGTTAIPFLPGFTVVSGPNGSGKSNILDALLFCLGLATSKGMRAE Sbjct: 1 MVYVKRIELSHFKSFGGTTAIPFLPGFTVVSGPNGSGKSNILDALLFCLGLATSKGMRAE 60 Query: 61 RLPDLVNNTFKGNRGSSEASVSVTFELHDGENLSEPXXXXXXXXXXXKISKEWTVTRRLK 120 RLPDLVNNTFKGNRGSSEASVSVTFELHDGENLSEP KISKEWTVTRRLK Sbjct: 61 RLPDLVNNTFKGNRGSSEASVSVTFELHDGENLSEPGANHNGNGNGAKISKEWTVTRRLK 120 Query: 121 VTKGGNYSSNYYINGETATVTELHEQLNELRIYPEGYNIVLQGDVTRIITMNSKERREII 180 VTKGGNYSSNYYINGETATVTELHEQLNELRIYPEGYNIVLQGDVTRIITMNSKERREII Sbjct: 121 VTKGGNYSSNYYINGETATVTELHEQLNELRIYPEGYNIVLQGDVTRIITMNSKERREII 180 Query: 181 DELAGVAEFDRKIVKTKETLTEVQDREERCQIIATELERTLERLAADRQKAEKYQALRQQ 240 DELAGVAEFDRKIVKTKETLTEVQDREERCQIIATELERTLERLAADRQKAEKYQALRQQ Sbjct: 181 DELAGVAEFDRKIVKTKETLTEVQDREERCQIIATELERTLERLAADRQKAEKYQALRQQ 240 Query: 241 VQEKQGWAKVIQYKAVEQQRQKLWGQLERDREQSQQIQQALDQRSQAIQTQQTELEKLNA 300 VQEKQGWAKVIQYKAVEQQRQKLWGQLERDREQSQQIQQALDQRSQAIQTQQTELEKLNA Sbjct: 241 VQEKQGWAKVIQYKAVEQQRQKLWGQLERDREQSQQIQQALDQRSQAIQTQQTELEKLNA 300 Query: 301 QVKXXXXXXXXXXXXXXXXXXXXRDQLQQRYNDGDRQITNHQQQVGXXXXXXXXXXXXXX 360 QVK RDQLQQRYNDGDRQITNHQQQVG Sbjct: 301 QVKALGEEEQLAVAAQLATQKAQRDQLQQRYNDGDRQITNHQQQVGQIQAEISQSQQQFL 360 Query: 361 XXXXEKSFHNTQTLPQLEXXXXXXXXXXXXXXXXXXXIASASEAWVQEQTQLSRTVNQLQ 420 EKSFHNTQTLPQLE IASASEAWVQEQTQLSRTVNQLQ Sbjct: 361 HIQQEKSFHNTQTLPQLEAAVQTSQQQLEQLRHQAQAIASASEAWVQEQTQLSRTVNQLQ 420 Query: 421 DELIPXXXXXXXXXXXXXXXXXXXXXXXXXXXKVSVELEEKQFAQGQFNFQGEALTSQIQ 480 DELIP KVSVELEEKQFAQGQFNFQGEALTSQIQ Sbjct: 421 DELIPQRSQLAQLEERQQQLLTNLAELTPLLTKVSVELEEKQFAQGQFNFQGEALTSQIQ 480 Query: 481 TLASDLAQLEQERSLLQETQTXXXXXXXXXXXXXXXXXAASQAQQEVQGTYATKVILQSD 540 TLASDLAQLEQERSLLQETQT AASQAQQEVQGTYATKVILQSD Sbjct: 481 TLASDLAQLEQERSLLQETQTRLLKEQQEKQRQLDKLEAASQAQQEVQGTYATKVILQSD 540 Query: 541 LPGVCGLVAQLGQVEPQYQLALEIAAGGRLGFLVVEDDGVAAAGIEILKQAKAGRATFLP 600 LPGVCGLVAQLGQVEPQYQLALEIAAGGRLGFLVVEDDGVAAAGIEILKQAKAGRATFLP Sbjct: 541 LPGVCGLVAQLGQVEPQYQLALEIAAGGRLGFLVVEDDGVAAAGIEILKQAKAGRATFLP 600 Query: 601 LNKIRPPKGQNPNLSYAHGYIDLAVNLIDGDRRYADIFAFIFGNTIVFDTLVNARNHLGK 660 LNKIRPPKGQNPNLSYAHGYIDLAVNLIDGDRRYADIFAFIFGNTIVFDTLVNARNHLGK Sbjct: 601 LNKIRPPKGQNPNLSYAHGYIDLAVNLIDGDRRYADIFAFIFGNTIVFDTLVNARNHLGK 660 Query: 661 HRIVTLEGDLLEASGAMSGGSRNQRSGLRFGTMVSEDTAEVKQLRQRLQDIQQVQGRNEE 720 HRIVTLEGDLLEASGAMSGGSRNQRSGLRFGTMVSEDTAEVKQLRQRLQDIQQVQGRNEE Sbjct: 661 HRIVTLEGDLLEASGAMSGGSRNQRSGLRFGTMVSEDTAEVKQLRQRLQDIQQVQGRNEE 720 Query: 721 LLLERTVRSXXXXXXXXXXXXXXXXXXXHGEQTERDIARXXXXXXXXXXXXXXXXXXXXX 780 LLLERTVRS HGEQTERDIAR Sbjct: 721 LLLERTVRSRQLTQQLMEMRQQQREAQLHGEQTERDIARLSQQQTQINQQQINQQQKLAE 780 Query: 781 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXRTVEAEYQRQLQALR 840 RTVEAEYQRQLQALR Sbjct: 781 LQQNLALLQQSLPPLEQQLASAQQQLTALETSQTHQQWQTIQIQIRTVEAEYQRQLQALR 840 Query: 841 QGEDHLKDLQNSSQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEA 900 QGEDHLKDLQNSSQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEA Sbjct: 841 QGEDHLKDLQNSSQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEA 900 Query: 901 QLAKLSEKLGSTKQERDRLXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 960 QLAKLSEKLGSTKQERDRL Sbjct: 901 QLAKLSEKLGSTKQERDRLETQLNQLRSQQQEQQWQWEKLQTNQQEYQENLTQLQTQLEA 960 Query: 961 XXXDLPDPWPEIPLLQDRDEANLDFANILEELERSIRNGQKRLEAMEPVNMLALQEYEKT 1020 DLPDPWPEIPLLQDRDEANLDFANILEELERSIRNGQKRLEAMEPVNMLALQEYEKT Sbjct: 961 LEQDLPDPWPEIPLLQDRDEANLDFANILEELERSIRNGQKRLEAMEPVNMLALQEYEKT 1020 Query: 1021 EARLGELSEKLQTIAGERTELLLRIENFTTLRRRSFQDAFDAVNKNFQIIFAELSDGDGY 1080 EARLGELSEKLQTIAGERTELLLRIENFTTLRRRSFQDAFDAVNKNFQIIFAELSDGDGY Sbjct: 1021 EARLGELSEKLQTIAGERTELLLRIENFTTLRRRSFQDAFDAVNKNFQIIFAELSDGDGY 1080 Query: 1081 LQLDDAEDPFNGGLNLVAHPKGKPVRRLSSMSGGEKSLTALSFIFALQRYRPSPFYGFDE 1140 LQLDDAEDPFNGGLNLVAHPKGKPVRRLSSMSGGEKSLTALSFIFALQRYRPSPFYGFDE Sbjct: 1081 LQLDDAEDPFNGGLNLVAHPKGKPVRRLSSMSGGEKSLTALSFIFALQRYRPSPFYGFDE 1140 Query: 1141 VDMFLDGANVEKLSKMVRKQAQQAQFIVVSLRRPMIEAAERTIGVTQARGAHTQVLGIKL 1200 VDMFLDGANVEKLSKMVRKQAQQAQFIVVSLRRPMIEAAERTIGVTQARGAHTQVLGIKL Sbjct: 1141 VDMFLDGANVEKLSKMVRKQAQQAQFIVVSLRRPMIEAAERTIGVTQARGAHTQVLGIKL 1200 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.315 0.132 0.356 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 90,521 Number of Sequences: 78 Number of extensions: 3878 Number of successful extensions: 106 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 87 Number of HSP's gapped (non-prelim): 12 length of query: 1200 length of database: 48,235 effective HSP length: 73 effective length of query: 1127 effective length of database: 42,541 effective search space: 47943707 effective search space used: 47943707 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (22.0 bits) S2: 98 (42.4 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000800 sll1228 (633 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000800 sll1228 1209 0.0 SYNE-PCC-01-001132 sll1672 332 2e-93 SYNE-PCC-01-002879 slr2104 216 2e-58 SYNE-PCC-01-002873 slr2098 186 2e-49 SYNE-PCC-01-002617 slr1759 167 7e-44 SYNE-PCC-01-000295 sll0474 165 3e-43 SYNE-PCC-01-000891 sll1353 156 2e-40 SYNE-PCC-01-001294 sll1888 152 4e-39 SYNE-PCC-01-001280 sll1871 148 6e-38 SYNE-PCC-01-002778 slr1969 140 2e-35 SYNE-PCC-01-001306 sll1905 133 2e-33 SYNE-PCC-01-001509 slr0210 132 2e-33 SYNE-PCC-01-001517 slr0222 94 1e-21 SYNE-PCC-01-000985 sll1475 94 2e-21 SYNE-PCC-01-001690 slr0473 86 4e-19 SYNE-PCC-01-002788 slr1982 85 6e-19 SYNE-PCC-01-000414 sll0649 70 3e-14 SYNE-PCC-01-002635 slr1783 66 3e-13 SYNE-PCC-01-002731 slr1909 64 1e-12 SYNE-PCC-01-001133 sll1673 64 2e-12 SYNE-PCC-01-001461 slr0115 63 2e-12 SYNE-PCC-01-002033 slr0947 59 3e-11 SYNE-PCC-01-001575 slr0312 55 6e-10 SYNE-PCC-01-002086 slr1042 55 8e-10 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 55 8e-10 SYNE-PCC-01-002489 slr1588 54 1e-09 SYNE-PCC-01-002618 slr1760 54 1e-09 SYNE-PCC-01-001437 slr0081 53 3e-09 SYNE-PCC-01-000518 sll0789 52 7e-09 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 52 7e-09 SYNE-PCC-01-000608 sll0921 51 1e-08 SYNE-PCC-01-002672 slr1837 49 4e-08 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 49 4e-08 SYNE-PCC-01-000523 sll0797 49 5e-08 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 48 1e-07 SYNE-PCC-01-000242 sll0396 47 1e-07 SYNE-PCC-01-001160 sll1708 46 3e-07 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 1209 bits (3127), Expect = 0.0 Identities = 610/633 (96%), Positives = 610/633 (96%) Query: 1 MRFAIEQLGLLFGCQRVHVIYHDPAKDCLHMAEEWCAVGIAPRLSTFQGVPVATYPWLWA 60 MRFAIEQLGLLFGCQRVHVIYHDPAKDCLHMAEEWCAVGIAPRLSTFQGVPVATYPWLWA Sbjct: 1 MRFAIEQLGLLFGCQRVHVIYHDPAKDCLHMAEEWCAVGIAPRLSTFQGVPVATYPWLWA 60 Query: 61 NLQDSEGVLVRDVEQMPPEAEMDKVSLQFDLVKSILVVPMVKDAQVLGYISMVHLHDNYG 120 NLQDSEGVLVRDVEQMPPEAEMDKVSLQFDLVKSILVVPMVKDAQVLGYISMVHLHDNYG Sbjct: 61 NLQDSEGVLVRDVEQMPPEAEMDKVSLQFDLVKSILVVPMVKDAQVLGYISMVHLHDNYG 120 Query: 121 WNPEELNLAKLVGQFLAIAQARHQAETTLTQXXXXXXXXXXXKTEFLASISHELRTPLNA 180 WNPEELNLAKLVGQFLAIAQARHQAETTLTQ KTEFLASISHELRTPLNA Sbjct: 121 WNPEELNLAKLVGQFLAIAQARHQAETTLTQAKEAADAANRAKTEFLASISHELRTPLNA 180 Query: 181 IIGFSQLLHRDPSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHR 240 IIGFSQLLHRDPSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHR Sbjct: 181 IIGFSQLLHRDPSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHR 240 Query: 241 LLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVT 300 LLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVT Sbjct: 241 LLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVT 300 Query: 301 LKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGLKSCQGNGLG 360 LKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGLKSCQGNGLG Sbjct: 301 LKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGLKSCQGNGLG 360 Query: 361 LPISQKFVQLMGGQIQVRSKVDQGSAFFFAIPVQVMAAPKPTPETSAVTLPPLDQYNQKV 420 LPISQKFVQLMGGQIQVRSKVDQGSAFFFAIPVQVMAAPKPTPETSAVTLPPLDQYNQKV Sbjct: 361 LPISQKFVQLMGGQIQVRSKVDQGSAFFFAIPVQVMAAPKPTPETSAVTLPPLDQYNQKV 420 Query: 421 LVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTT 480 LVVDDRPE GFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTT Sbjct: 421 LVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTT 480 Query: 481 QKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALP 540 QKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALP Sbjct: 481 QKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALP 540 Query: 541 SQGQPPASPLRPFPVITAPSLSEQLAKTPQSWRQKMAKMALECNDDDLITLVESLPTLSP 600 SQGQPPASPLRPFPVITAPSLSEQLAKTPQSWRQKMAKMALECNDDDLITLVESLPTLSP Sbjct: 541 SQGQPPASPLRPFPVITAPSLSEQLAKTPQSWRQKMAKMALECNDDDLITLVESLPTLSP 600 Query: 601 SLAHLLATWAREYRFEQIFLVVESSFGAVTLAG 633 SLAHLLATWAREYRFEQIFLVVESSFGAVTLAG Sbjct: 601 SLAHLLATWAREYRFEQIFLVVESSFGAVTLAG 633 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 332 bits (851), Expect = 2e-93 Identities = 194/491 (39%), Positives = 274/491 (55%), Gaps = 16/491 (3%) Query: 144 QAETTLTQXXXXXXXXXXXKTEFLASISHELRTPLNAIIGFSQLLHRDPSLAPHR-PTLD 202 Q + L + K+ F+A++SHELR+PLNAIIGFSQL+ R +L + Sbjct: 346 QKQVDLVRAKEIAESEAKAKSTFVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAG 405 Query: 203 IINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKV 262 II RSGE+LL LIN+IL+ SKIEAG+T LN D + LLD+L+ + L+A + + L Sbjct: 406 IIQRSGEYLLNLINNILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANEGIELIF 465 Query: 263 ERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTA-------PQTDEGQ 315 R ++P ++ D KLRQ+L+NLL+NAIKFT +G V L A P+T Sbjct: 466 IRDHDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEP 525 Query: 316 GASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGLKSCQGNGLGLPISQKFVQLMGGQI 375 WL F + DTG GI+ E+ LF F+QTE+G + +G GLGL I+++F++LMGG I Sbjct: 526 KNKYWLDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDI 585 Query: 376 QVRSKVDQGSAFFFAIPV---QVMAAPKPTPETSAVTLPPLDQYNQKVLVVDDRPEXXXX 432 V S VDQG+ F F+I V ++ + +P + L P Q K+LVVDD+ Sbjct: 586 NVSSVVDQGTTFSFSILVDLGEITLSREPNSAKKVLALTP-GQPVYKILVVDDKSVNRQL 644 Query: 433 XXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQKIKASPQGQHT 492 GF ++EA NG+ AIALWESW P +I MDM+MPV+DG T+ IK +G T Sbjct: 645 LIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEATKYIKGQVKGNAT 704 Query: 493 IIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALPSQGQPPASPLRP 552 ++ALTAS E E+A +LSAGCDDFL KPFR + L KHL V + P + Sbjct: 705 AVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTIFDSLTKHLGVTYVYESAPNKNDNHE 764 Query: 553 FPVITAPSLSEQLAKTPQSWRQKMAKMALECNDDDLITLVESLPTLSPSLAHLLATWARE 612 + E Q W +++ LE + + ++ L+ +P L L R Sbjct: 765 DTALK----PESFLIMSQDWLTQLSHYLLEADTEQVMKLIAEIPASESELEQNLTKLVRR 820 Query: 613 YRFEQIFLVVE 623 + FE+I ++E Sbjct: 821 FEFEKILDLIE 831 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 216 bits (549), Expect = 2e-58 Identities = 148/440 (33%), Positives = 227/440 (51%), Gaps = 20/440 (4%) Query: 124 EELNLAKLVGQFLAIAQARHQAETTLTQXXXXXXXXXXXKTEFLASISHELRTPLNAIIG 183 E LN KL + Q ++ +L + K+EFLA++SHE+RTP+NAIIG Sbjct: 420 EHLN-EKLEQRIQERTQELENSQESLLEAKLVAEGATKAKSEFLANMSHEIRTPMNAIIG 478 Query: 184 FSQLLHRDPSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLD 243 S+L+ + + R L + +GE LL +IN+IL+ SK+EAG+ L +K ++ Sbjct: 479 MSELVLQTDLTSQQRNYLQKVQYAGELLLGIINNILDFSKMEAGKLELEQKPFSVEEVMG 538 Query: 244 NLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKV 303 NL ++ ++A+ K L L P +P + D +L Q+LINL NA+KFT QG +T++ Sbjct: 539 NLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNNAVKFTNQGEITIRG 598 Query: 304 KCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGL-KSCQGNGLGLP 362 + L +T+ Q L F V+DTG G+ + +LF F Q ET + G GLGL Sbjct: 599 QLL---KTENEQTK---LQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLA 652 Query: 363 ISQKFVQLMGGQIQVRSKVDQGSAFFFAIPVQVMAAPKPTPE-----------TSAVTLP 411 IS+ +LMGG I + S V QGS F F + + A+P + +VT Sbjct: 653 ISKSLTELMGGDIWLESVVGQGSTFHFTVCLGT-ASPAVAQDYLVSRVSILEAKPSVTQA 711 Query: 412 PLDQYNQKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQM 471 +L+V+D G VQ A NG+ A+ L S ILMD+QM Sbjct: 712 ITQLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQM 771 Query: 472 PVLDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALL 531 P+L+G T+ I+ ++ IIA+TA+A G++ + L AG +D L+KP +P+ L L Sbjct: 772 PMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 Query: 532 AKHLAVALPSQGQPPASPLR 551 A + + + P+S L+ Sbjct: 832 AHWIPPNSAREKKNPSSNLK 851 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 186 bits (471), Expect = 2e-49 Identities = 130/397 (32%), Positives = 192/397 (48%), Gaps = 18/397 (4%) Query: 145 AETTLTQXXXXXXXXXXXKTEFLASISHELRTPLNAIIGFSQLLHRDPSLAPHRPTLDII 204 AE + + K +FLA++SHE+RTP+NA+IG + L + R L I Sbjct: 509 AEAEMKRAKELAEEASRIKADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQREYLHKI 568 Query: 205 NRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVER 264 SG+HLL +INDIL+ SKIEAG+ + D ++LDN+ L +A K L L + Sbjct: 569 RFSGQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDI 628 Query: 265 SPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFL 324 +P D +L Q+LIN NA+KFT QG +T+ V+ E + + L+ Sbjct: 629 DRNLPRHFIGDPLRLGQILINYANNAVKFTEQGDITIVVR------LQEYRDQDVVLYLA 682 Query: 325 VSDTGPGIAAHEMDELFVPFAQTETG-LKSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQ 383 V DTG GI + LF F Q ++ ++ G GLGL I ++ +LMGG++ V S+ Q Sbjct: 683 VKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQ 742 Query: 384 GSAFFFAIPVQVMAAPKPTPETSAVTLPPLDQYNQKVLVVDDRPEXXXXXXXXXXXXGFV 443 GS F+ + +Q P ++ D ++VLVVDD FV Sbjct: 743 GSTFWAKVCLQ---KSNVIPHRLVLS---KDLEGKRVLVVDDNDHARLVMKDLLEQMKFV 796 Query: 444 VQEAENGEMAI-----ALWESWHPQVILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALT 498 V+ E+G A+ A E+ ++ +D QMP +DG +++KA I +T Sbjct: 797 VETVESGPEALNFLAEADRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVT 856 Query: 499 ASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHL 535 A E + S G DD L KP P L LA+ L Sbjct: 857 AYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARVL 893 Score = 71.6 bits (174), Expect = 7e-15 Identities = 42/122 (34%), Positives = 62/122 (50%) Query: 419 KVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 ++L+V+D GF V A NG +A+ + ++LMDMQMP +DG Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 Query: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVA 538 T I+ +P+ I+A+TA+ +G+R L AG +D L KP PEEL L + V Sbjct: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKLLHWIPVD 1045 Query: 539 LP 540 P Sbjct: 1046 SP 1047 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 167 bits (424), Expect = 7e-44 Identities = 146/488 (29%), Positives = 218/488 (44%), Gaps = 40/488 (8%) Query: 62 LQDSEGVLVRDVEQMPPEAEMDKVSLQFDLVKSILVVPMVKDAQVLGYISMVHLHDNYGW 121 +Q + V D++Q + K Q VKS L V + G I++ W Sbjct: 664 IQGDRAMAVVDLDQ-DLNSTHTKAFYQRFQVKSFLAVRTSYQGKANGIIALHQCDRQRVW 722 Query: 122 NPEELNLAKLVGQFLAIAQARH--------------QAETTLTQXXXXXXXXXXXKTEFL 167 +E+ L + + + + IA A+ Q L + K EFL Sbjct: 723 TADEIELLEAIAEQMGIALAQAALLEKERERRRELAQKNLELEKATWAAEAANRAKGEFL 782 Query: 168 ASISHELRTPLNAIIGFSQLLHRDPSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAG 227 A +SHE+RTP+N +IG ++LL + I +SGE LL +INDIL+ SKIEA Sbjct: 783 AMMSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIEAD 842 Query: 228 RTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLL 287 + L + + L++ + +F A+ K L L P+ P I D +LRQ+L NL+ Sbjct: 843 KLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSNLI 902 Query: 288 ANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLH---------FLVSDTGPGIAAHEMD 338 NA+KFT +G V L VK D + L+ F + DTG GI D Sbjct: 903 GNALKFTEKGEVVLTVK---GEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQD 959 Query: 339 ELFVPFAQTETG-LKSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAIPVQVMA 397 LF F+Q ++ + G GLGL ISQ+ Q+MGG + V S+ GS F F I + Sbjct: 960 RLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCI-LTTAQ 1018 Query: 398 APKPTPETSAVTLPPLDQYNQKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALW 457 AP S + ++VL+VDD G V +GE A+ W Sbjct: 1019 APALAEADSVQQMK-----GKQVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALD-W 1072 Query: 458 ESWHPQV--ILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCD 515 + P + ++D+QMP +DG + ++ QG+ II L++ G A+ LS Sbjct: 1073 FARCPDLDAAILDLQMPNMDGITLAHHLRQFAQGKDLPIILLSSGLVAG--ADELSV-FQ 1129 Query: 516 DFLSKPFR 523 L+KP R Sbjct: 1130 TVLNKPVR 1137 Score = 66.2 bits (160), Expect = 3e-13 Identities = 45/142 (31%), Positives = 70/142 (49%), Gaps = 5/142 (3%) Query: 404 ETSAVTLPPLDQYNQKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQ 463 E +A +L P Q +L+ +D G+ V A NG+ I E Sbjct: 1180 EDNATSLQPALQ----ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYD 1235 Query: 464 VILMDMQMPVLDGRSTTQKIKAS-PQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPF 522 ++LMDMQMPV+DG + + I+ + P + I+A+TA+A G+R E L AG D ++SKP Sbjct: 1236 LVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPI 1295 Query: 523 RPEELIALLAKHLAVALPSQGQ 544 +L +L A+ Q + Sbjct: 1296 SINQLRKVLQDTSALITSPQAR 1317 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 165 bits (418), Expect = 3e-43 Identities = 106/267 (39%), Positives = 147/267 (55%), Gaps = 6/267 (2%) Query: 130 KLVGQFLAIAQARHQAETTLTQXXXXXXXXXXXKTEFLASISHELRTPLNAIIGFSQLLH 189 K++G I + + +AE L K EFLA++SHELRTPLN+I+G + L Sbjct: 386 KIIGTIADITEIK-KAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQ 444 Query: 190 RD---PSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQ 246 P +L+I+ SG HLL LINDIL++SKIEAGR L+ L+++ Sbjct: 445 NQVYGPLNGKQVQSLEIVENSGRHLLSLINDILDLSKIEAGRMDLDLNPTSVSALVNHSL 504 Query: 247 ALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCL 306 Q A +KQ+ L E P +P+ + D +L QVLINLL NAIKFT +GG + L Sbjct: 505 TFVQQFAIQKQINLSSEIIPNLPD-VLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADL 563 Query: 307 TAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGL-KSCQGNGLGLPISQ 365 Q E + L F V DTG GI A ++ +F PF Q ++ L + G GLGL + + Sbjct: 564 IKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVK 623 Query: 366 KFVQLMGGQIQVRSKVDQGSAFFFAIP 392 K V+L GG + V SK+++GS F IP Sbjct: 624 KIVELHGGSVTVTSKLNEGSRFKITIP 650 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 156 bits (394), Expect = 2e-40 Identities = 93/255 (36%), Positives = 149/255 (58%), Gaps = 4/255 (1%) Query: 140 QARHQAETTLTQXXXXXXXXXXXKTEFLASISHELRTPLNAIIGFSQLL-HRDPSLAPHR 198 + R + E L + K+EFLA+ISHE+RTP+NAI+GF LL +D SL+ + Sbjct: 577 EERQRIEIKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCDLLLQKDLSLSQTK 636 Query: 199 PTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQL 258 L+ I S + LL LI+DIL++SKIEAG+ ++ + +D ++ ++ +F +A+ K L Sbjct: 637 KYLNAIGSSSKILLALIDDILDISKIEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSL 696 Query: 259 LLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGAS 318 LL ++ + + I D +LRQ+L NL+ NA+KFT +G V + + + Q QG Sbjct: 697 LLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIG-VEGIQV-RSQGTY 754 Query: 319 IWLHFLVSDTGPGIAAHEMDELFVPFAQTE-TGLKSCQGNGLGLPISQKFVQLMGGQIQV 377 I L V+DTG GIA + ++F F Q++ + G GLGL I+++ L+GG+I + Sbjct: 755 ISLAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYGGTGLGLTITRRLTALLGGEISL 814 Query: 378 RSKVDQGSAFFFAIP 392 S++ +GS F P Sbjct: 815 SSRLGEGSTFILHFP 829 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 152 bits (383), Expect = 4e-39 Identities = 116/376 (30%), Positives = 180/376 (47%), Gaps = 19/376 (5%) Query: 4 AIEQLGLLFGCQRVHVIYHDPAKDCLHMAEEWCAVGIAPRLSTFQGVPVATYPWLWANLQ 63 A++ +G G R ++ D L + E+C P ++ F + V +W L Sbjct: 49 AVDSIGSTLGVSRCLLLTKDFQSRHLQIEAEFCQ----PTVTAFAALIVPEESEIWRQL- 103 Query: 64 DSEGVLVRDVEQMPPEAEMDKVSLQFDLVKSILVVPMVKDAQVLGYISMVHLHDNYG-WN 122 EQ P + V Q + + + + P + Q GY+ + + G W+ Sbjct: 104 ---------FEQHQP-ITLYNVQFQGEDLGGLWIFPTLYQDQANGYLCLQQVGPAPGPWH 153 Query: 123 PEELNLAKLVGQFLAIAQARHQAETTLTQXXXXXXXXXXXKTEFLASISHELRTPLNAII 182 PE L + + + A A LTQ K+EFLAS +HELRTPLN II Sbjct: 154 PETEALLQELAEQTGTAIAHATLYQELTQATKAAEEASRLKSEFLASTTHELRTPLNGII 213 Query: 183 GFSQLLHRD--PSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHR 240 GF +L+ D S A ++ +S LL LINDIL+++KIEAGR + +++D Sbjct: 214 GFLRLILDDMADSEAEKHEFVEEAYQSALLLLNLINDILDLAKIEAGRVGIELEVVDFSE 273 Query: 241 LLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVT 300 +L + +AQ K L + + P + + L QV++N++ NAIKFT +GG+T Sbjct: 274 VLQATENFALPQAQNKGLSFNLTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGIT 333 Query: 301 LKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTE-TGLKSCQGNGL 359 + V+ + EG L V DTG G++ + +LF F Q + + K+ G GL Sbjct: 334 VAVEVMPRTVLWEGVQKPGLLKVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGL 393 Query: 360 GLPISQKFVQLMGGQI 375 GL ISQK V+ MGG++ Sbjct: 394 GLVISQKLVETMGGKV 409 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 148 bits (373), Expect = 6e-38 Identities = 95/234 (40%), Positives = 135/234 (57%), Gaps = 12/234 (5%) Query: 163 KTEFLASISHELRTPLNAIIGFSQLLHRDPSLAPHR---PTLDIINRSGEHLLELINDIL 219 K+ FLA++SHELRTPLNAIIG+S++L + P LD I RSG+ LL LIND+L Sbjct: 438 KSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLL 497 Query: 220 EMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKL 279 ++SKIEAG+ L + + L+ + + L+VE S E E + D KL Sbjct: 498 DISKIEAGKMELYLETFNLKELIAGILDTISPLLKNNNNKLEVEISLESEE-VYGDLIKL 556 Query: 280 RQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDE 339 RQ ++NLL+NA KFT G ++ V+ + D WL F V DTG G+ +M + Sbjct: 557 RQGILNLLSNASKFTKDGIISFIVEEFKVDEKD-------WLSFQVKDTGIGLTEEQMSK 609 Query: 340 LFVPFAQTETG-LKSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAIP 392 LF PF Q ++ + G GLGL I++KF Q+MGG I + S++ GS+F +P Sbjct: 610 LFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKLP 663 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 140 bits (352), Expect = 2e-35 Identities = 133/488 (27%), Positives = 211/488 (43%), Gaps = 42/488 (8%) Query: 68 VLVRDVEQMPPEAEMDKVSLQFDLVKSILVVPMVKDAQVLGYISMVHLHDNYGWNPEELN 127 V V D+E + LQ V++ LV P++ + Q+ G + H W E N Sbjct: 266 VAVSDIENHYSSSYCLVGLLQRYQVRAKLVAPIIVEGQLWGLLIAHQCHHPRQWLDSEKN 325 Query: 128 LAKLVGQFLAIAQARH------------------QAETTLTQXXXXXXXXXXXKTEFLAS 169 +G+ LA+A + + L K++F+ + Sbjct: 326 FLGQIGEHLAVAIVQSLLYSEVQKQKNNFEKRVIERTKELRDTLMAAQAANLLKSQFINN 385 Query: 170 ISHELRTPLNAIIGFSQLLHR----DPSLAPHRPTLDIIN--RSGEHLLELINDILEMSK 223 ISHELRTPL +IIG S L R SL P + ++N +G+ LL+ IN I+++S+ Sbjct: 386 ISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQ 445 Query: 224 IEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEV-PEWIKTDGGKLRQV 282 +E+G+T LN + H L + A ++Q+ L+++ V + D +L Q+ Sbjct: 446 LESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERLDQI 505 Query: 283 LINLLANAIKFT-AQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELF 341 L LL NA+KFT A+G V L++ + Q F V DTG GI ++ LF Sbjct: 506 LTQLLNNALKFTPAEGTVILRI------WKESNQAI-----FQVEDTGIGINEQQLPVLF 554 Query: 342 VPFAQTETGLKS-CQGNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAIPVQVMAAPK 400 F S + G+GL ++++ V+L GG I+V S QG+ F IP Q P Sbjct: 555 EAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIPQQNF--PP 612 Query: 401 PTPETSAVTLPPLDQYNQKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESW 460 T L +N V+V++ E + V + A+ E Sbjct: 613 TTKGQVQDKLDAAMPFNSSVIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELL 672 Query: 461 HPQVILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSK 520 P +I++D +D T+ IK S + + L+ S E + G DD+L K Sbjct: 673 QPGLIIVDGDF--VDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDYLLK 730 Query: 521 PFRPEELI 528 P +PE L+ Sbjct: 731 PLQPELLL 738 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 133 bits (334), Expect = 2e-33 Identities = 98/290 (33%), Positives = 143/290 (49%), Gaps = 27/290 (9%) Query: 124 EELNLAKLVGQFLAIAQARHQAETTLTQXXXXXXXXXXXKTEFLASISHELRTPLNAIIG 183 + L + + + Q LA A TT + K+EFLA++SHE+RTP+NAIIG Sbjct: 288 QSLEMERRMRQQLAEQNQELVAATTAAEAANRS------KSEFLATMSHEIRTPMNAIIG 341 Query: 184 FSQLLHRDPSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLD 243 + LL + I SGE LL LINDIL+ SKIEAG+ L D + L+ Sbjct: 342 MTGLLLDTDLTTQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLE 401 Query: 244 NLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKV 303 + A++K L L +P ++ D +LRQ+L+NLL+NA+KFT G V + V Sbjct: 402 EALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTV 461 Query: 304 KCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGL-KSCQGNGLGLP 362 + + D +G + F V DTG GIA ++ LF F+Q + + + G GLGL Sbjct: 462 EVV---DHDAAKG-EYQICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLA 517 Query: 363 ISQKFVQLMGGQI----------------QVRSKVDQGSAFFFAIPVQVM 396 I + LMGG I Q+ +GS F+F + + V+ Sbjct: 518 ICVRLTALMGGTIWAESNGCVVGNPPELWQIGQPTIEGSTFYFTVNLTVL 567 Score = 69.3 bits (168), Expect = 3e-14 Identities = 50/174 (28%), Positives = 82/174 (47%), Gaps = 4/174 (2%) Query: 374 QIQVRSKVDQGSAFFFAIPVQVMAAPKPTPETSAVTLP--PLDQYNQKVLVVDDRPEXXX 431 Q ++S ++ + V P T A++ P P N +L+ +D Sbjct: 694 QAWIKSPINPDELENTLVDVLGQTEPPTLVSTEAISGPLFPYSSSNLTILLAEDNLINQQ 753 Query: 432 XXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQKIKASP-QGQ 490 G+ V NG+ A++ V+LMD++MP +DG + T+ I+ S + + Sbjct: 754 VAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSE 813 Query: 491 HTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALPSQGQ 544 IIA+TA + EG+R L++G +D++SKP R E L L + A AL S Q Sbjct: 814 RPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQAL-QVAATALQSTSQ 866 Score = 65.5 bits (158), Expect = 5e-13 Identities = 38/128 (29%), Positives = 62/128 (48%), Gaps = 3/128 (2%) Query: 411 PPLDQYNQK---VLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILM 467 PP+ + + +LVVDD E G+ +G A+ P +IL+ Sbjct: 8 PPIATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILL 67 Query: 468 DMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEEL 527 D+ MP +DG ++K PQ + +I LTAS + + + + G D+++KPF P EL Sbjct: 68 DLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPEL 127 Query: 528 IALLAKHL 535 +A + HL Sbjct: 128 LARVKTHL 135 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 132 bits (333), Expect = 2e-33 Identities = 105/302 (34%), Positives = 152/302 (50%), Gaps = 21/302 (6%) Query: 98 VPMVKDAQVLGYISMVHLHDNYGWNPEELNLAKLVGQFLAIAQARHQAETTLTQXXXXXX 157 +P+ + Q +G I +V H W E+ + VG Q ++ET Q Sbjct: 124 LPVFQQNQYVGGICLVWPHSQ--WRLEQYLFLQEVGNVFTY-QYHGESETISPQKSFNGG 180 Query: 158 XXXXXKTEFLASISHELRTPLNAIIGFSQLLHRD--PSLAP--HRPTLDIINRSGEHLLE 213 T L+ I HE RTPL AIIGF+++L + L P H+ +N S EHLL Sbjct: 181 DRHTSMTINLSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLN-SAEHLLS 239 Query: 214 LINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEWIK 273 L+ND L++SKI+A L + + L + ++ Q +A+EKQL L + V ++ Sbjct: 240 LVNDFLDLSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGV-DFCY 298 Query: 274 TDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIA 333 D + +Q+LINLL+N +KFT +G VTL VK TD+ L F V DTG GI Sbjct: 299 VDQRRWKQILINLLSNGVKFTPKGSVTLAVKA-----TDKA------LIFSVIDTGIGID 347 Query: 334 AHEMDELFVPFAQTETGLKSCQ-GNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAIP 392 + +LF PF Q + G GLGL +S++ QL GG IQ+ S GS F +P Sbjct: 348 PEDQRDLFQPFKQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILP 407 Query: 393 VQ 394 ++ Sbjct: 408 LK 409 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 94.4 bits (233), Expect = 1e-21 Identities = 73/236 (30%), Positives = 118/236 (50%), Gaps = 19/236 (8%) Query: 163 KTEFLASISHELRTPLNAIIGFSQLLHR---DPSLAPHRPTLDIINRSGEHLLELINDIL 219 K++F+ +SHE RTPL +IIGF +LL + S + ++ I S + L +LI+D+L Sbjct: 940 KSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKQQYINNIQNSSQRLKQLIDDVL 999 Query: 220 EMSKIEAGRTTLNEKIIDCHRLLDNLQALFQL-RAQEKQLLLKVERSPEVPEWIKTDGGK 278 +S+ +A + + I+ L ++L F E L P+ E D Sbjct: 1000 SISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPD--EHSLVDVRL 1057 Query: 279 LRQVLINLLANAIKFTAQGG-VTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEM 337 LR +L N+L+NAIK++A G +TL + DE L F V D G GI + Sbjct: 1058 LRHILENILSNAIKYSAPGSTITLDI------SKDEEH-----LLFQVRDEGIGIPLQDQ 1106 Query: 338 DELFVPFAQTETGLKSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAIPV 393 ++LF F + + + G GLGL I +++V+ GG I+V S +G+ +P+ Sbjct: 1107 EKLFEAFHRA-SNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLPL 1161 Score = 41.2 bits (95), Expect = 1e-05 Identities = 30/104 (28%), Positives = 49/104 (47%), Gaps = 1/104 (0%) Query: 419 KVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 KVL+VDD+ E + A +G+ AIA + ++++ +M LDG + Sbjct: 8 KVLLVDDQRENLVALSRALDSLPVEIITANSGQEAIATAATTEFALMILAQEMSELDGLN 67 Query: 479 TTQKIKASPQGQHTIIIALT-ASAFEGERAEILSAGCDDFLSKP 521 T + +++ P + T II L AEI G DFL++P Sbjct: 68 TAKILRSFPLAEQTPIIFLARQEIITKAMAEINILGLVDFLAQP 111 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 93.6 bits (231), Expect = 2e-21 Identities = 66/227 (29%), Positives = 120/227 (52%), Gaps = 17/227 (7%) Query: 163 KTEFLASISHELRTPLNAIIGFSQLLHRDPS--LAPHRPTLDI--INRSGEHLLELINDI 218 KT F + SHE RTPL+ + +QLL L P + + ++ I S +++++L++DI Sbjct: 69 KTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLLDDI 128 Query: 219 LEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGK 278 L +++ EAG+ N +D L QL ++ + + + + D Sbjct: 129 LIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKALV--DERL 186 Query: 279 LRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMD 338 +R +L NLL+NAIK++ GG ++K + +++ + F V+D G GI+ + Sbjct: 187 VRSILSNLLSNAIKYSPGGG---QIKIALSLDSEQ-------IIFEVTDQGIGISPEDQK 236 Query: 339 ELFVPFAQTETGLKSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQGS 385 ++F PF + + +++ G GLGL +++K V L G I ++S VDQG+ Sbjct: 237 QIFEPFHRGKN-VRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGT 282 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 85.5 bits (210), Expect = 4e-19 Identities = 74/232 (31%), Positives = 111/232 (47%), Gaps = 19/232 (8%) Query: 165 EFLASISHELRTPLNAIIGFSQLLHRDPSLAPHRPTLDIINRS--GEHLLE-LINDILEM 221 +F SH+L+ PLN + + QLL S A D I+ + G L++ LI+DIL Sbjct: 531 KFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTY 590 Query: 222 SKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQ 281 +K++ L D ++D A + R +E ++V P V D +L Q Sbjct: 591 AKVDTQYAQLT--FTDVQEVVDKALANLKQRIEESGAEIEVGSMPAV----MADQIQLMQ 644 Query: 282 VLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELF 341 V NL+AN IKF G + K+K Q D W+ F V D G GI + +F Sbjct: 645 VFQNLIANGIKFA--GDKSPKIKIWGDRQEDA------WV-FAVQDNGIGIDPQFFERIF 695 Query: 342 VPFAQTETGLKSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAIPV 393 V F + T +G G+GL I +K ++ GQI + S +GS F+F+IP+ Sbjct: 696 VIFQRLHTR-DEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSIPI 746 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 85.1 bits (209), Expect = 6e-19 Identities = 44/110 (40%), Positives = 64/110 (58%) Query: 419 KVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 KVL+V+D G+ V A +GE A+ + S PQ+ILMDM +P++DG + Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 Query: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELI 528 T++IK P G H IIALTA A +R ++AGCDD+ +KP + L+ Sbjct: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLL 115 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 69.7 bits (169), Expect = 3e-14 Identities = 41/126 (32%), Positives = 62/126 (49%), Gaps = 1/126 (0%) Query: 420 VLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRST 479 +L+V+D E F +GE + +++ P +I++D+ +P LDG Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 Query: 480 TQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVAL 539 +I+ P + I+ LTA E +R LS G DD+L KPF P EL+A + L L Sbjct: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRRQL 133 Query: 540 PSQGQP 545 QGQP Sbjct: 134 -RQGQP 138 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 66.2 bits (160), Expect = 3e-13 Identities = 40/118 (33%), Positives = 58/118 (49%), Gaps = 1/118 (0%) Query: 420 VLVVDDRPEXXXXXXXXXXXXG-FVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 +L+VDD P G F V A N A + P +++ D+ MP +DG Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLA 536 QK++ + Q ++ LTA G+R + GCD FLSKPF P+EL A++ LA Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLA 175 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 64.3 bits (155), Expect = 1e-12 Identities = 35/113 (30%), Positives = 58/113 (51%) Query: 417 NQKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDG 476 N +L+VDD P G+ V A NG A+ L + P +I+ D+ MP +DG Sbjct: 7 NYHLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDG 66 Query: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 + ++++ +P ++ L+A R + L+ G D +++KPF PEEL A Sbjct: 67 YAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAA 119 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 63.5 bits (153), Expect = 2e-12 Identities = 33/116 (28%), Positives = 60/116 (51%) Query: 414 DQYNQKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPV 473 D+ +L+VDD P G+ V+ +G+MA+ + P +IL+D++MP Sbjct: 5 DEKKGNILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPD 64 Query: 474 LDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 +DG + IK + Q II ++A ++ + G D+++KPF+ EE++A Sbjct: 65 MDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVA 120 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 63.2 bits (152), Expect = 2e-12 Identities = 31/111 (27%), Positives = 59/111 (53%) Query: 419 KVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 ++L++DD P G+ VQ+A +G AL P +I++D+ +P +DG + Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 Q+++ + ++ LTA ++ + +G DD+L+KPF EE++A Sbjct: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLA 113 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 59.3 bits (142), Expect = 3e-11 Identities = 44/148 (29%), Positives = 67/148 (45%), Gaps = 6/148 (4%) Query: 422 VVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQ 481 +VDD G+ V A +GE AIA + P ++++D+ MP LDG Q Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 482 KIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALPS 541 +++ + II LTA +R L G DD++ KPF P+EL A + L + Sbjct: 61 ELR---KESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLR-RVDK 116 Query: 542 QGQP--PASPLRPFPVITAPSLSEQLAK 567 G P P+S + I + Q+ K Sbjct: 117 NGMPGIPSSGVLQIATIRIDTNKRQVYK 144 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 55.1 bits (131), Expect = 6e-10 Identities = 45/138 (32%), Positives = 67/138 (48%), Gaps = 11/138 (7%) Query: 443 VVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAF 502 V+ +AENGE AIAL+E P V LMD++MP ++G + I A + II LT Sbjct: 34 VIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGVAAISAICAIV--KFARIIVLTTYDS 91 Query: 503 EGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALPSQGQ---PPASPLRPFPVITAP 559 + + L AG +L K P+EL+ A+ +GQ PP + ++ P Sbjct: 92 DEDIYRGLQAGAKGYLLKETEPDELLN------AIRTVHRGQKYIPPDVGAKLVQRLSNP 145 Query: 560 SLSEQLAKTPQSWRQKMA 577 LSE+ + S Q M+ Sbjct: 146 ELSERELEVLGSLAQGMS 163 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 54.7 bits (130), Expect = 8e-10 Identities = 29/116 (25%), Positives = 62/116 (53%) Query: 420 VLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRST 479 VL+V+D G+ V A +G A+ +++ P ++++D+ MP ++G Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 480 TQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHL 535 ++IK+ P+ ++ +I ++ E +R + G D +++KPF+P EL+ + + L Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 54.7 bits (130), Expect = 8e-10 Identities = 40/112 (35%), Positives = 60/112 (53%), Gaps = 6/112 (5%) Query: 419 KVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIA-LWESWHPQVILMDMQMPVLDGR 477 K+L+VDD E GF V+ A NG A+ L ES+ +++L+D+ MP L+G Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESY--KLVLLDVMMPKLNGI 60 Query: 478 STTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 T ++I+ + + ++ LTA + +R L G DD L KPF ELIA Sbjct: 61 ETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIA 109 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 54.3 bits (129), Expect = 1e-09 Identities = 32/111 (28%), Positives = 55/111 (49%), Gaps = 2/111 (1%) Query: 420 VLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWH--PQVILMDMQMPVLDGR 477 +LVV+D + + EAENG +A+ L S P +I+ D+ MP +DG Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 478 STTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELI 528 ++ + + I LTA + + +++G DD+L KPF+ E+L+ Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLL 114 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 53.9 bits (128), Expect = 1e-09 Identities = 32/110 (29%), Positives = 51/110 (46%) Query: 412 PLDQYNQKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQM 471 P++ K+LVVDD G V+ A NGE A+ + P+V+L+D M Sbjct: 6 PIETAAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVM 65 Query: 472 PVLDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKP 521 PV+DG + Q + Q +++ +T E AG D+++KP Sbjct: 66 PVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKP 115 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 52.8 bits (125), Expect = 3e-09 Identities = 35/145 (24%), Positives = 70/145 (48%), Gaps = 15/145 (10%) Query: 392 PVQVMAAPKPTPETSAVTLPPLDQYNQKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGE 451 P+ + AP + + + PP + ++LVV+D G+ V ++G Sbjct: 11 PMATLEAPPHSLQHQEI--PP----SHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGR 64 Query: 452 MAIALWESWHPQ-------VILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFEG 504 A+AL + + +I++D+ +P ++G + ++ G +T I+ ++A E Sbjct: 65 DALALLQEFSEDPGQAAVDLIILDIMLPQVNGLDVCRSLRFG--GDNTPILIVSAKGSEM 122 Query: 505 ERAEILSAGCDDFLSKPFRPEELIA 529 E+ L G DD+++KPF +EL+A Sbjct: 123 EKVTGLEVGADDYITKPFSLKELVA 147 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 51.6 bits (122), Expect = 7e-09 Identities = 36/115 (31%), Positives = 57/115 (49%), Gaps = 4/115 (3%) Query: 419 KVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIA-LWESW-HPQVILMDMQMPVLDG 476 ++L+V+D P+ +VV ++G +A + L + W + + + D +P L G Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALL 531 QK++ Q I+ LTA +R E L AG DD+L KPF EL+A L Sbjct: 62 LELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARL 114 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 51.6 bits (122), Expect = 7e-09 Identities = 35/112 (31%), Positives = 56/112 (50%), Gaps = 1/112 (0%) Query: 418 QKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGR 477 +K+L+V+D + V EA + + AI + +P++IL+D +P G Sbjct: 3 RKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGI 61 Query: 478 STTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 Q IK II LTA + E + L+AG DD+++KPF P+ L+A Sbjct: 62 QFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLA 113 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 50.8 bits (120), Expect = 1e-08 Identities = 36/123 (29%), Positives = 57/123 (46%), Gaps = 15/123 (12%) Query: 444 VQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFE 503 V EA NG + + + + P V+++D+ +P ++G TQ++K P ++ LT + E Sbjct: 32 VGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQE 91 Query: 504 GERAEILSAGCDDFLSKPFRPEELI-ALLAKH--------------LAVALPSQGQPPAS 548 SAG D + K R E LI A+ A H LA A ++ P+S Sbjct: 92 ETVLAAFSAGADAYCMKDSRTELLIEAIQATHGGFAWIDPAIARIVLAHAPGAEPSEPSS 151 Query: 549 PLR 551 P R Sbjct: 152 PSR 154 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 49.3 bits (116), Expect = 4e-08 Identities = 30/110 (27%), Positives = 52/110 (47%), Gaps = 2/110 (1%) Query: 420 VLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRST 479 +L+VDD G + A+ G+ +A+ + ++++D +P + G Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 480 TQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 ++I+ G T ++ LTA +R L AG DD+L KPF EL+A Sbjct: 64 CRQIRIL--GHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLA 111 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 49.3 bits (116), Expect = 4e-08 Identities = 35/124 (28%), Positives = 58/124 (46%), Gaps = 3/124 (2%) Query: 419 KVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 K+LVV+D G+ V EAENG + + + +++MD+ +P +G Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVA 538 ++++ + +I LT E ++ L G DD+L+KPF P EL L A Sbjct: 65 LARELR---EELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRA 121 Query: 539 LPSQ 542 +P Q Sbjct: 122 MPHQ 125 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 48.9 bits (115), Expect = 5e-08 Identities = 35/115 (30%), Positives = 54/115 (46%), Gaps = 4/115 (3%) Query: 419 KVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWES-WHPQVI-LMDMQMPVLDG 476 ++L+V+D + +VV +G A E+ W + ++D +P L G Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALL 531 QK++ QG ++ LTA R E L AG DD+L+KPF EL+A L Sbjct: 62 LELCQKLRT--QGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARL 114 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 47.8 bits (112), Expect = 1e-07 Identities = 32/113 (28%), Positives = 54/113 (47%), Gaps = 2/113 (1%) Query: 419 KVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 ++L+++D GF V +G+ +A S +++D+ +P LDG Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALL 531 Q+ +++ Q +I LTA ER + L +G DD+L KPF E+ A L Sbjct: 62 VLQQWRSNHQDVPVLI--LTARDTLDERVKGLQSGADDYLCKPFALAEVAARL 112 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 47.4 bits (111), Expect = 1e-07 Identities = 30/119 (25%), Positives = 54/119 (45%), Gaps = 2/119 (1%) Query: 417 NQKVLVVDDRPEXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDG 476 + +VLVV++ + G+ V A +G + + P +I+++ +P + G Sbjct: 2 SHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSG 61 Query: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHL 535 ++++ G II +TA ER L AG DD++ KPF +E A + L Sbjct: 62 LELCRRLRE--MGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQL 118 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 46.2 bits (108), Expect = 3e-07 Identities = 33/116 (28%), Positives = 54/116 (46%), Gaps = 4/116 (3%) Query: 419 KVLVVDDRP--EXXXXXXXXXXXXGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDG 476 K+L+V+D P + ++ +NG A+ +P +I+MD+ +P LDG Sbjct: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDG 77 Query: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLA 532 T++IK + H I+ LT+ E LS+G D + K E LI +A Sbjct: 78 IEATKQIKQTSPQIH--IVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIA 131 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.320 0.135 0.401 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 56,190 Number of Sequences: 78 Number of extensions: 2506 Number of successful extensions: 110 Number of sequences better than 1.0e-05: 37 Number of HSP's better than 0.0 without gapping: 22 Number of HSP's successfully gapped in prelim test: 15 Number of HSP's that attempted gapping in prelim test: 24 Number of HSP's gapped (non-prelim): 44 length of query: 633 length of database: 48,235 effective HSP length: 68 effective length of query: 565 effective length of database: 42,931 effective search space: 24256015 effective search space used: 24256015 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 95 (41.2 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000877 sll1330 (250 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000877 sll1330 498 e-143 SYNE-PCC-01-002033 slr0947 125 1e-31 SYNE-PCC-01-000414 sll0649 123 6e-31 SYNE-PCC-01-001461 slr0115 118 2e-29 SYNE-PCC-01-001437 slr0081 112 1e-27 SYNE-PCC-01-000242 sll0396 111 3e-27 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 108 2e-26 SYNE-PCC-01-002486 slr1584 105 2e-25 SYNE-PCC-01-002672 slr1837 99 2e-23 SYNE-PCC-01-000518 sll0789 93 9e-22 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 90 8e-21 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 89 1e-20 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 86 9e-20 SYNE-PCC-01-000523 sll0797 80 5e-18 SYNE-PCC-01-002731 slr1909 57 6e-11 SYNE-PCC-01-001133 sll1673 56 1e-10 SYNE-PCC-01-001306 sll1905 53 1e-09 SYNE-PCC-01-002618 slr1760 52 2e-09 SYNE-PCC-01-002086 slr1042 51 3e-09 SYNE-PCC-01-002635 slr1783 46 1e-07 SYNE-PCC-01-000800 sll1228 45 2e-07 SYNE-PCC-01-002489 slr1588 44 5e-07 SYNE-PCC-01-002873 slr2098 42 1e-06 SYNE-PCC-01-002788 slr1982 42 2e-06 SYNE-PCC-01-001132 sll1672 41 3e-06 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 498 bits (1281), Expect = e-143 Identities = 250/250 (100%), Positives = 250/250 (100%) Query: 1 MNPVYISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDG 60 MNPVYISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDG Sbjct: 1 MNPVYISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDG 60 Query: 61 DGIELCRWLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRR 120 DGIELCRWLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRR Sbjct: 61 DGIELCRWLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRR 120 Query: 121 VRTVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRR 180 VRTVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRR Sbjct: 121 VRTVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRR 180 Query: 181 AWPEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRFNSSILEEKKVVAEKPVT 240 AWPEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRFNSSILEEKKVVAEKPVT Sbjct: 181 AWPEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRFNSSILEEKKVVAEKPVT 240 Query: 241 LSPAGVSVLT 250 LSPAGVSVLT Sbjct: 241 LSPAGVSVLT 250 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 125 bits (314), Expect = 1e-31 Identities = 79/224 (35%), Positives = 116/224 (51%), Gaps = 8/224 (3%) Query: 8 VVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIELCR 67 +V+ +R +L L GY V + +A F+ P L V+D + DG +C+ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 68 WLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVRTVAAP 127 L ++ I +L+A D + GL+ GADDY+ KPF +E ARI ++RRV P Sbjct: 61 ELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMP 120 Query: 128 LLLDYGVLKIDLVQ----RRVEYQGN-FVDLTPQEFSLLYVLTQAEGSALSRTELLRRAW 182 + GVL+I ++ +R Y+G+ + LT EFSLL +L G SR+E+L+ W Sbjct: 121 GIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEVW 180 Query: 183 ---PEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRF 223 PE + R +D H+ LR K+E DP P LI T R GY F Sbjct: 181 GYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLF 224 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 123 bits (308), Expect = 6e-31 Identities = 80/228 (35%), Positives = 121/228 (53%), Gaps = 10/228 (4%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 I +VE + + L+ L++ + + + F Q+P L V+D L DG+E+ Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 Query: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 C + QQ S I +L+AK E D + GL GADDYL KPF +E +AR+ L+RR Sbjct: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRRQL 133 Query: 123 TVAAPLLLDYGV--LKIDLVQRRV-EYQGN---FVDLTPQEFSLLYVLTQAEGSALSRTE 176 P+ Y ++DL Q + YQG+ ++LT EF+LL G +RT+ Sbjct: 134 RQGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRTQ 193 Query: 177 LLRRAW-PEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRF 223 L+ + W + + R +DTH+ LRKKIE DP P+ I+TV +GY+F Sbjct: 194 LIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 118 bits (295), Expect = 2e-29 Identities = 77/226 (34%), Positives = 121/226 (53%), Gaps = 12/226 (5%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 I +++ +P + L+S +L+ +GY VQQ + + P L ++D L DG + Sbjct: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 Query: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 C+ L + ++ + +L+A +D + G +GADDYLTKPF ++E LAR+ L+RR Sbjct: 64 CQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRTD 123 Query: 123 TVAAPL----LLDYGVLKIDLVQRRVE--YQGNFVDLTPQEFSLLYVLTQAEGSALSRTE 176 + +L+ G L LV R E + G + LT EF LL+ L Q G +S ++ Sbjct: 124 RIPQAAKHSEILNQGPL--TLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSD 181 Query: 177 LLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGY 221 +LR W E D+ TI H+ LR K+E +PR+P I+TV GY Sbjct: 182 ILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 112 bits (280), Expect = 1e-27 Identities = 80/231 (34%), Positives = 121/231 (52%), Gaps = 15/231 (6%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQAR---QAFNNQ----LPTLAVIDSDLT 58 I VVE +R + LQ+ GY V A Q F+ L ++D L Sbjct: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 Query: 59 DGDGIELCRWL-YQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECL 117 +G+++CR L + + I I+SAK +E + V GL+ GADDY+TKPF ++E +AR + Sbjct: 93 QVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRAM 152 Query: 118 IRRVRTVAAPLLLDYGVLKIDLV----QRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALS 173 IRR + +A + + + DLV + RV +G V L P+EF LL + S Sbjct: 153 IRR-QGLAGNNIAPFRKFR-DLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVWS 210 Query: 174 RTELLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRF 223 R +L+ W + + + +T+D H+ LR+K+E DP QP + TVR GYRF Sbjct: 211 REQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 111 bits (277), Expect = 3e-27 Identities = 76/222 (34%), Positives = 114/222 (51%), Gaps = 12/222 (5%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQC----SGFHQARQAFNNQLPTLAVIDSDLTDGD 61 + VVE L + L+ GY V GF QA++ P L +++ L Sbjct: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEF----PPDLIIVNGALPGMS 60 Query: 62 GIELCRWLYQQHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRR 120 G+ELCR L + + I +++AKD ++ V GL AGADDY+ KPF EF ARI +RR Sbjct: 61 GLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRR 120 Query: 121 VRTVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRR 180 T + +L + L+ + R ++ +DLT +EF LL L L+R ++L R Sbjct: 121 THTTSDE-VLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILER 179 Query: 181 AWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGY 221 W + + + I+ ++ LR K+E +P LIQTVR VGY Sbjct: 180 VWGYDFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGY 220 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 108 bits (270), Expect = 2e-26 Identities = 78/231 (33%), Positives = 121/231 (52%), Gaps = 9/231 (3%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 I +VE +R +++ L Q Y V + S F A P L ++D L GI+ Sbjct: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQF 63 Query: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 +++ +Q I +L+AK TE+D + L AGADDY+TKPF Q LARIE + RR+ Sbjct: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIY 123 Query: 123 TVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRRAW 182 + + L ID +RV +Q ++L+ EF LL+ + SR +LL R W Sbjct: 124 EQQSQ-FIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNRIW 182 Query: 183 PEAID-NPRTIDTHVLSLRKKIETDPRQ-PSLIQTVRNVGYRFNSSILEEK 231 ++ RT+D+++ LR+ + P Q IQTVR GYRF+S + +++ Sbjct: 183 HNDLEVEYRTVDSYIRRLRRNLA--PFQCEHYIQTVRGSGYRFSSYLRDKQ 231 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 105 bits (261), Expect = 2e-25 Identities = 64/190 (33%), Positives = 103/190 (54%), Gaps = 5/190 (2%) Query: 50 LAVIDSDLTDGDGIELC-RWLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQ 108 L ++D L + DGI LC +W + I +++A+DT D + GL AGADDY+ KP + Sbjct: 47 LVILDVMLPELDGITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLG 106 Query: 109 EFLARIECLIRRVRTVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAE 168 E AR+ L+RR P +L++G +++D V Y + LT +E+S+L +L + Sbjct: 107 ELFARVRALLRRGCATCQP-VLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNG 165 Query: 169 GSALSRTELLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRFNSSI 227 LSR+ ++ W E+ T+ HV SLR+K+++ I+TV +GYR + Sbjct: 166 RRVLSRSMIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLAN-- 223 Query: 228 LEEKKVVAEK 237 L EK + K Sbjct: 224 LTEKSLCQGK 233 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 98.6 bits (244), Expect = 2e-23 Identities = 67/188 (35%), Positives = 97/188 (51%), Gaps = 12/188 (6%) Query: 50 LAVIDSDLTDGDGIELCRWL-YQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQ 108 L ++D L G+E+CR + H + + L+AKDT D V GL AG DDYL KPF ++ Sbjct: 48 LLILDWMLPQVSGLEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELR 107 Query: 109 EFLARIECLIRRV---RTVAAPL------LLDYGVLKIDLVQRRVEYQGNFVDLTPQEFS 159 E LAR+ L+RR T+ L LL + +D+ + QG + L+ +E + Sbjct: 108 ELLARVRALLRRQSHGETITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVA 167 Query: 160 LLYVLTQAEGSALSRTELLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRN 218 LL + QA G LS E+ WP E+ + + V LR+KIE P P LI +V Sbjct: 168 LLTLFLQAPGQILSHEEIYSHLWPGESPPSSNVLAALVRLLRRKIE-QPNAPRLINSVYG 226 Query: 219 VGYRFNSS 226 GY F ++ Sbjct: 227 KGYCFEAN 234 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 92.8 bits (229), Expect = 9e-22 Identities = 79/228 (34%), Positives = 109/228 (47%), Gaps = 21/228 (9%) Query: 8 VVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQA----RQAFNNQLPTLAVIDSDLTDGDGI 63 +VE P L L L++ Y+V + A Q + N TLA+ D + G+ Sbjct: 5 LVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNY--TLAIFDWMVPGLSGL 62 Query: 64 ELCRWLYQQHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 ELC+ L Q S+ I +L+AKD D V GL AGADDYL KPFGM E LAR+ L RR Sbjct: 63 ELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRRSP 122 Query: 123 TVAAPLL------LDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTE 176 + L LDYG + V + + LT +EF LL + LS + Sbjct: 123 ELQPQQLQVGQWWLDYGTFAV------VTPEQARITLTAKEFQLLEYFMKHPQQILSSEQ 176 Query: 177 LLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRF 223 + + W A + V LR+K+E + +LI+TV +GYRF Sbjct: 177 IKNQLWALSAESTSNVVAAQVRLLRRKLE-EYSHGNLIETVYGLGYRF 223 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 89.7 bits (221), Expect = 8e-21 Identities = 68/219 (31%), Positives = 110/219 (50%), Gaps = 10/219 (4%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 I ++E + + + L L + G+ V + A + V+D L DG+E+ Sbjct: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 Query: 66 CRWLYQQHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVRTV 124 + HQ + + IL+A+DT + V GL++GADDYL KPF + E AR++ LIRR Sbjct: 63 LQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYGY 122 Query: 125 AAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRR--AW 182 ++ GV K+D QR V + LT +E+ LL + + LSR+ + + +W Sbjct: 123 HHSVIEQAGV-KLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSSW 181 Query: 183 PEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGY 221 E I + +D H+ +LR+K+ I+TV VGY Sbjct: 182 DEEISS-GALDVHIYNLRQKL-----GKQFIRTVHGVGY 214 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 89.4 bits (220), Expect = 1e-20 Identities = 61/219 (27%), Positives = 113/219 (51%), Gaps = 6/219 (2%) Query: 8 VVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIELCR 67 +V+ + L LLS L+ G+ V+ + +A Q N L ++D + +GIE + Sbjct: 6 LVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESYK-LVLLDVMMPKLNGIETLK 64 Query: 68 WLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRR----VRT 123 + + + +L+A+ + D V GL+ GADD L KPF +E +ARI+ ++RR Sbjct: 65 EIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSASPSNN 124 Query: 124 VAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRRAWP 183 ++ +L + + + Y ++LT EF +L +L +++G+ +SR EL Sbjct: 125 ISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSLEVME 184 Query: 184 EAIDN-PRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGY 221 + + R++D H+ +LR+K+ +PS +T+R GY Sbjct: 185 KPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGY 223 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 86.3 bits (212), Expect = 9e-20 Identities = 66/230 (28%), Positives = 98/230 (42%), Gaps = 8/230 (3%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 I VVE R+ L + GY V + + N L V+D +L +G+ L Sbjct: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLLL 65 Query: 66 CRWLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRV---- 121 R L ++ + L+ +D E D + GL+ GADDYLTKPF +E R L+ R Sbjct: 66 ARELREELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMPHQ 125 Query: 122 --RTVAAPLLLDYGVLKIDLVQRR-VEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELL 178 + K+DL + +G L EF + + G +R ELL Sbjct: 126 EKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREELL 185 Query: 179 RR-AWPEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRFNSSI 227 ++ E RT+D + +RK E P P++I T+ GYRF I Sbjct: 186 KKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRFCGDI 235 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 80.5 bits (197), Expect = 5e-18 Identities = 72/235 (30%), Positives = 108/235 (45%), Gaps = 18/235 (7%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLP--TLAVIDSDLTDGDGI 63 I +VE L + L Y+V + QA NQ TLA++D L G+ Sbjct: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 Query: 64 ELCRWLYQQHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 ELC+ L Q S+ + +L+A ++ V GL AGADDYLTKPF M E LAR+ L RR Sbjct: 63 ELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRR-S 121 Query: 123 TVAAPLLLDYGVLKID--------LVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSR 174 P +L G +D + + + + LT +EF + L Q +S Sbjct: 122 PQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIISG 181 Query: 175 TELLRRAW---PEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRFNSS 226 +++ ++ W E + N + + +R+K+ P I+TV GYRF S Sbjct: 182 SKIRQQLWDLDEEPMSN--VVAAQMRLIRRKL-AQQNCPCPIKTVPGQGYRFTLS 233 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 57.0 bits (136), Expect = 6e-11 Identities = 49/201 (24%), Positives = 90/201 (44%), Gaps = 18/201 (8%) Query: 5 YISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIE 64 ++ +V+ +P+L L+ +L+ GY V +A +P + V D + + DG Sbjct: 9 HLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYA 68 Query: 65 LCRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRV 121 + Q + LSAK + V GL GAD Y+ KPF +E A+++ +R+ Sbjct: 69 FIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQ- 127 Query: 122 RTVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRRA 181 A LL + ++ RV+ + V+LTP E ++ ++ Q + R Sbjct: 128 ----ADRLLQHNNHPLE-DNARVQVARD-VELTPTETKVIQLVAQGLAN--------REI 173 Query: 182 WPEAIDNPRTIDTHVLSLRKK 202 + RT+++HV ++ K Sbjct: 174 ADHLKVSQRTVESHVSNMLNK 194 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 55.8 bits (133), Expect = 1e-10 Identities = 37/114 (32%), Positives = 60/114 (52%), Gaps = 5/114 (4%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 I +V+ P+ LLS L GY V+ + A + + P L ++D + D DG ++ Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 66 CRWLYQQHQ----SMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIE 115 C + ++ + +IFI + DT D V + G DY+TKPF ++E +ARIE Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTF-DKVKAFECGGVDYITKPFQIEEVVARIE 123 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 52.8 bits (125), Expect = 1e-09 Identities = 31/101 (30%), Positives = 52/101 (51%), Gaps = 3/101 (2%) Query: 18 LLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIELCRWLYQQHQSM- 76 ++S L+ GY + +A Q P L ++D + DG+E+C L Q Q+ Sbjct: 32 VISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEVCDRLKQDPQTRD 91 Query: 77 --IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIE 115 + L+A + ++D++ GA DY+TKPF E LAR++ Sbjct: 92 IPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVK 132 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 51.6 bits (122), Expect = 2e-09 Identities = 32/120 (26%), Positives = 59/120 (49%), Gaps = 3/120 (2%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 I VV+ + +R L +LQ+ G+ V+ + +A F P + ++D+ + DG Sbjct: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFAC 73 Query: 66 CRWL---YQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 C+ L YQ ++ +++ D E + +AGA DY+TKP R++ L+ + R Sbjct: 74 CQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQNR 133 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 51.2 bits (121), Expect = 3e-09 Identities = 33/117 (28%), Positives = 58/117 (49%), Gaps = 3/117 (2%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 + +VE + R ++S L+ G+ V +A + N P L V+D + +G E+ Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIR 119 CR + ++ + + S+K E D G++ GAD Y+ KPF E + I+ L+R Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 45.8 bits (107), Expect = 1e-07 Identities = 32/122 (26%), Positives = 59/122 (48%), Gaps = 4/122 (3%) Query: 3 PVYISVVEGNPHLRSLLSWHLQQSG-YLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGD 61 P+ + +V+ P +R + L+ SG + V + +A + LP L + D + D Sbjct: 55 PISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVD 114 Query: 62 GIELCRWLYQ--QHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLI 118 G + + L + + QS+ + L+A+ D + G + G D +L+KPF E A + L+ Sbjct: 115 GYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLL 174 Query: 119 RR 120 R Sbjct: 175 AR 176 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 45.4 bits (106), Expect = 2e-07 Identities = 35/125 (28%), Positives = 58/125 (46%), Gaps = 7/125 (5%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 + VV+ P R LL L G++VQ+ A + + P + ++D + DG Sbjct: 420 VLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRST 479 Query: 66 CRWLY---QQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 + + Q ++I L+A E + L AG DD+L+KPF +E +A L+ + Sbjct: 480 TQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA----LLAKHL 535 Query: 123 TVAAP 127 VA P Sbjct: 536 AVALP 540 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 43.9 bits (102), Expect = 5e-07 Identities = 33/126 (26%), Positives = 57/126 (45%), Gaps = 5/126 (3%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQ--LPTLAVIDSDLTDGDGI 63 I VVE +R L+ L Y + + A N+ +P L + D + + DG Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 64 ELCRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRR 120 L L + ++ L+A T +D G+ +GADDYL KPF ++ L + +++ Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 Query: 121 VRTVAA 126 ++A Sbjct: 124 QAKLSA 129 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 42.4 bits (98), Expect = 1e-06 Identities = 34/120 (28%), Positives = 55/120 (45%), Gaps = 11/120 (9%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAF-----NNQLPTLAVIDSDLTDG 60 + VV+ N H R ++ L+Q ++V+ +A N ++ ID + + Sbjct: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 Query: 61 DGIELCRWLYQQ---HQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFG---MQEFLARI 114 DG+E+ R L HQ IFI++A E+ V G DD L KP + + LAR+ Sbjct: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARV 892 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 41.6 bits (96), Expect = 2e-06 Identities = 34/116 (29%), Positives = 50/116 (43%), Gaps = 3/116 (2%) Query: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 + +VE N R +LS L + GY V QA ++ P L ++D L DG Sbjct: 7 VLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTA 66 Query: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLI 118 + + I L+A D + AG DDY TKP ++ L ++E LI Sbjct: 67 TKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 41.2 bits (95), Expect = 3e-06 Identities = 32/107 (29%), Positives = 52/107 (48%), Gaps = 4/107 (3%) Query: 3 PVY-ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGD 61 PVY I VV+ R LL L G+ +++ S +A + + P L +D + D Sbjct: 628 PVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMD 687 Query: 62 GIELCRWLYQQ---HQSMIFILSAKDTEKDIVHGLKAGADDYLTKPF 105 G E +++ Q + + + L+A E++ L AG DD+L KPF Sbjct: 688 GYEATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.137 0.399 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 23,142 Number of Sequences: 78 Number of extensions: 978 Number of successful extensions: 70 Number of sequences better than 1.0e-05: 25 Number of HSP's better than 0.0 without gapping: 14 Number of HSP's successfully gapped in prelim test: 11 Number of HSP's that attempted gapping in prelim test: 23 Number of HSP's gapped (non-prelim): 28 length of query: 250 length of database: 48,235 effective HSP length: 61 effective length of query: 189 effective length of database: 43,477 effective search space: 8217153 effective search space used: 8217153 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000891 sll1353 (998 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000891 sll1353 1756 0.0 SYNE-PCC-01-002879 slr2104 139 5e-35 SYNE-PCC-01-002873 slr2098 131 9e-33 SYNE-PCC-01-001280 sll1871 126 3e-31 SYNE-PCC-01-002617 slr1759 123 2e-30 SYNE-PCC-01-001306 sll1905 115 7e-28 SYNE-PCC-01-000800 sll1228 109 5e-26 SYNE-PCC-01-001132 sll1672 103 2e-24 SYNE-PCC-01-001294 sll1888 99 8e-23 SYNE-PCC-01-000295 sll0474 94 3e-21 SYNE-PCC-01-001509 slr0210 72 8e-15 SYNE-PCC-01-002778 slr1969 71 2e-14 SYNE-PCC-01-000985 sll1475 66 5e-13 SYNE-PCC-01-001517 slr0222 64 3e-12 SYNE-PCC-01-002220 slr1212 45 1e-06 SYNE-PCC-01-000983 sll1473 42 9e-06 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 1756 bits (4547), Expect = 0.0 Identities = 908/998 (90%), Positives = 908/998 (90%) Query: 1 MGKFLDLLQKYWLLPCLLLAGYGGNYFKLHIFFGVDFLFGSIATLLVLVCYSLPWGLVSA 60 MGKFLDLLQKYWLLPCLLLAGYGGNYFKLHIFFGVDFLFGSIATLLVLVCYSLPWGLVSA Sbjct: 1 MGKFLDLLQKYWLLPCLLLAGYGGNYFKLHIFFGVDFLFGSIATLLVLVCYSLPWGLVSA 60 Query: 61 AIAGSHTLIIWRHGYGILIIILEALVVGLMLRRRQTNLVLINSLFWLLIGIPLVYIFYRW 120 AIAGSHTLIIWRHGYGILIIILEALVVGLMLRRRQTNLVLINSLFWLLIGIPLVYIFYRW Sbjct: 61 AIAGSHTLIIWRHGYGILIIILEALVVGLMLRRRQTNLVLINSLFWLLIGIPLVYIFYRW 120 Query: 121 GLNMTSVTTSLITLKQATNGIFNSLIASFLITGFGLSKQKFSPSTNPAFFPWKKLSFEQT 180 GLNMTSVTTSLITLKQATNGIFNSLIASFLITGFGLSKQKFSPSTNPAFFPWKKLSFEQT Sbjct: 121 GLNMTSVTTSLITLKQATNGIFNSLIASFLITGFGLSKQKFSPSTNPAFFPWKKLSFEQT 180 Query: 181 XXXXXXXXXXXXXXXXXXXNGQEAFVQMEKQTVQELTALSIPIQNSVEDWYQSHLEGAEV 240 NGQEAFVQMEKQTVQELTALSIPIQNSVEDWYQSHLEGAEV Sbjct: 181 LFNLLVAFVFFPLFFITVVNGQEAFVQMEKQTVQELTALSIPIQNSVEDWYQSHLEGAEV 240 Query: 241 FATEILPLVAAINQGNGAQLPALSLMTHTIQTAFTGFSNIYVGDRQGQIIASSPEFNEVG 300 FATEILPLVAAINQGNGAQLPALSLMTHTIQTAFTGFSNIYVGDRQGQIIASSPEFNEVG Sbjct: 241 FATEILPLVAAINQGNGAQLPALSLMTHTIQTAFTGFSNIYVGDRQGQIIASSPEFNEVG 300 Query: 301 ESRLGLIQAEKIAGFSIPSQIQVSPLHRTNVNVDPHVAITIPLVANNSFEGFINASLNLA 360 ESRLGLIQAEKIAGFSIPSQIQVSPLHRTNVNVDPHVAITIPLVANNSFEGFINASLNLA Sbjct: 301 ESRLGLIQAEKIAGFSIPSQIQVSPLHRTNVNVDPHVAITIPLVANNSFEGFINASLNLA 360 Query: 361 KMKDLLYANRVSKELNITLINGQNQVVASTIANVLPLEIYQPFEGGDPRDLGSSNYHWYP 420 KMKDLLYANRVSKELNITLINGQNQVVASTIANVLPLEIYQPFEGGDPRDLGSSNYHWYP Sbjct: 361 KMKDLLYANRVSKELNITLINGQNQVVASTIANVLPLEIYQPFEGGDPRDLGSSNYHWYP 420 Query: 421 DTPANPTIRWRDSYYYHILPLDKINDWQLVLGLPARESIEKLQAXXXXXXXXXXXXXXXX 480 DTPANPTIRWRDSYYYHILPLDKINDWQLVLGLPARESIEKLQA Sbjct: 421 DTPANPTIRWRDSYYYHILPLDKINDWQLVLGLPARESIEKLQAQSVQKLGLLLFLSLVG 480 Query: 481 XXXAIGVSKRVANPLLTLAKITTDIPTKMQYQGLTPIALRSEVSEVITLNENFNEMLITL 540 AIGVSKRVANPLLTLAKITTDIPTKMQYQGLTPIALRSEVSEVITLNENFNEMLITL Sbjct: 481 LVVAIGVSKRVANPLLTLAKITTDIPTKMQYQGLTPIALRSEVSEVITLNENFNEMLITL 540 Query: 541 QNQFKIIKQAKDNLEMRVAERTHTLIVINKQLAGEIEERQRIEIKLREAKESAELANRVK 600 QNQFKIIKQAKDNLEMRVAERTHTLIVINKQLAGEIEERQRIEIKLREAKESAELANRVK Sbjct: 541 QNQFKIIKQAKDNLEMRVAERTHTLIVINKQLAGEIEERQRIEIKLREAKESAELANRVK 600 Query: 601 SEFLANISHEIRTPMNAILGFCXXXXXXXXXXXXXXKYLNAIGXXXXXXXXXXXXXXXXX 660 SEFLANISHEIRTPMNAILGFC KYLNAIG Sbjct: 601 SEFLANISHEIRTPMNAILGFCDLLLQKDLSLSQTKKYLNAIGSSSKILLALIDDILDIS 660 Query: 661 XXEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQI 720 EAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQI Sbjct: 661 KIEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQI 720 Query: 721 LFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIFDVF 780 LFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIFDVF Sbjct: 721 LFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIFDVF 780 Query: 781 TQSQGQSTRKYXXXXXXXXXXXXXXXXXXXEISLSSRLGEGSTFILHFPAVRLVENSLKS 840 TQSQGQSTRKY EISLSSRLGEGSTFILHFPAVRLVENSLKS Sbjct: 781 TQSQGQSTRKYGGTGLGLTITRRLTALLGGEISLSSRLGEGSTFILHFPAVRLVENSLKS 840 Query: 841 DLTNGDGGNLTDRLGSMSSSSANTTEKLLPTRVGNMAPDNNSLGNHNGPSQGFPRAVPLI 900 DLTNGDGGNLTDRLGSMSSSSANTTEKLLPTRVGNMAPDNNSLGNHNGPSQGFPRAVPLI Sbjct: 841 DLTNGDGGNLTDRLGSMSSSSANTTEKLLPTRVGNMAPDNNSLGNHNGPSQGFPRAVPLI 900 Query: 901 DQAQRQQLISLLEQEETNVWNKLRHTLISRQIRNFGDRLSSWGNEYGWEDLHTYGQSIIK 960 DQAQRQQLISLLEQEETNVWNKLRHTLISRQIRNFGDRLSSWGNEYGWEDLHTYGQSIIK Sbjct: 901 DQAQRQQLISLLEQEETNVWNKLRHTLISRQIRNFGDRLSSWGNEYGWEDLHTYGQSIIK 960 Query: 961 ALENFDSRRLEQLMGQFPQYRASLTEVSAGVDGKHASE 998 ALENFDSRRLEQLMGQFPQYRASLTEVSAGVDGKHASE Sbjct: 961 ALENFDSRRLEQLMGQFPQYRASLTEVSAGVDGKHASE 998 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 139 bits (349), Expect = 5e-35 Identities = 92/282 (32%), Positives = 132/282 (46%), Gaps = 21/282 (7%) Query: 547 IKQAKDNLEMRVAERTHTLIVINKQLAGEIEERQRIEIKLREAKESAELANRVKSEFLAN 606 ++ + LE R+ ERT E+E Q L EAK AE A + KSEFLAN Sbjct: 419 LEHLNEKLEQRIQERTQ-----------ELENSQE---SLLEAKLVAEGATKAKSEFLAN 464 Query: 607 ISHEIRTPMNAILGFCXXXXXXXXXXXXXXKYLNAIGXXXXXXXXXXXXXXXXXXXEAGK 666 +SHEIRTPMNAI+G YL + EAGK Sbjct: 465 MSHEIRTPMNAIIGM-SELVLQTDLTSQQRNYLQKVQYAGELLLGIINNILDFSKMEAGK 523 Query: 667 LVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQILFNLVG 726 L + +P + ++ + I +AE+K L L +D + + D +RL QIL NL Sbjct: 524 LELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGN 583 Query: 727 NALKFTEEGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIFDVFTQSQGQ 786 NA+KFT +G+ I + G ++++ L VTDTGIG+ P+ Q+K+F F Q + Sbjct: 584 NAVKFTNQGE----ITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETS 639 Query: 787 STRKYXXXXXXXXXXXXXXXXXXXEISLSSRLGEGSTFILHF 828 ++R+Y +I L S +G+GSTF HF Sbjct: 640 TSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTF--HF 679 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 131 bits (330), Expect = 9e-33 Identities = 82/242 (33%), Positives = 120/242 (49%), Gaps = 5/242 (2%) Query: 583 EIKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCXXXXXXXXXXXXXXKYLNAI 642 E +++ AKE AE A+R+K++FLAN+SHEIRTPMNA++G +YL+ I Sbjct: 510 EAEMKRAKELAEEASRIKADFLANMSHEIRTPMNAVIGM-THLALKTDLTPRQREYLHKI 568 Query: 643 GXXXXXXXXXXXXXXXXXXXEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQI 702 EAGKL + DL ++ + + KA +K L L I Sbjct: 569 RFSGQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDI 628 Query: 703 DETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYISLAIEVT 762 D L + D +RL QIL N NA+KFTE+G + I + ++ + R Q + LA++ Sbjct: 629 DRNLPRHFIGDPLRLGQILINYANNAVKFTEQGDITIVVRLQ--EYRDQDVVLYLAVK-- 684 Query: 763 DTGIGIAPEDQAKIFDVFTQSQGQSTRKYXXXXXXXXXXXXXXXXXXXEISLSSRLGEGS 822 DTGIGI PE A +F+ F Q+ +TR + E+ + S G+GS Sbjct: 685 DTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGS 744 Query: 823 TF 824 TF Sbjct: 745 TF 746 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 126 bits (317), Expect = 3e-31 Identities = 122/507 (24%), Positives = 205/507 (40%), Gaps = 42/507 (8%) Query: 351 GFINASLNLAKMKDLLYANRVSKELNITLINGQNQVVASTIA--------------NVLP 396 G+++ +NL + DL+ + T + G+ S IA N Sbjct: 194 GYLSIDINLNAVDDLIRKRTGLGDTGETFLVGEINNQVSFIASDENKKLTANGSKPNFNS 253 Query: 397 LEIYQPFEGGDPRDLGSSNYHWYPDTPANPTIRWRDSYYYHILPLDKINDWQLVLGLPAR 456 L I G G +Y Y TP +W + Y + L+ + Sbjct: 254 LGINSVMAGNS----GQGSYVNYAGTPVLGVYQWIEKY-----------NLALITEISEV 298 Query: 457 ESIEKLQAXXXXXXXXXXXXXXXXXXXAIGVSKRVANPLLTLAKITTDIPTKMQYQGLTP 516 E++E + +S ++ P+L + K DI + + + P Sbjct: 299 EALELARRFTRMLVLVGLVSTALLLIAVYLLSIKITKPILLITKAAIDISSGDR-EARAP 357 Query: 517 IALRSEVSEVITLNENFNEMLITLQNQFKIIKQAKDNLEMRVAERTHTLIVINKQLAGEI 576 + E+ L ++FN M L+ +++ LE+ + + +++ Sbjct: 358 VLGEDELG---ILAKSFNLMTNELRESNSSLEKKNQELELAQKQLAVANSCLEEKVQQRT 414 Query: 577 EERQRIEIKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCXXXXXXXXXXXXXX 636 EE + L A AE AN KS FLAN+SHE+RTP+NAI+G+ Sbjct: 415 EELENTVKALELASSEAEAANATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEE 474 Query: 637 KY--LNAIGXXXXXXXXXXXXXXXXXXXEAGKLVIHLEPVDLRVIIREIKQIFDYKAESK 694 L+ I EAGK+ ++LE +L+ +I I ++ Sbjct: 475 LVPDLDKILRSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDTISPLLKNN 534 Query: 695 SLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTY 754 + L ++I ++ +Y D ++LRQ + NL+ NA KFT++G I VE +V + Sbjct: 535 NNKLEVEISLE-SEEVYGDLIKLRQGILNLLSNASKFTKDG--IISFIVEEFKVDEKDW- 590 Query: 755 ISLAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYXXXXXXXXXXXXXXXXXXXEISL 814 L+ +V DTGIG+ E +K+F FTQ+ +TRKY +I L Sbjct: 591 --LSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYL 648 Query: 815 SSRLGEGSTFILHFPAVRLVENSLKSD 841 +S +G GS+F + P + NS K+D Sbjct: 649 TSEIGVGSSFTIKLPKYAQL-NSAKND 674 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 123 bits (309), Expect = 2e-30 Identities = 92/286 (32%), Positives = 132/286 (46%), Gaps = 14/286 (4%) Query: 552 DNLEM--RVAERTHTLIVINKQLAGEIEERQRI---EIKLREAKESAELANRVKSEFLAN 606 D +E+ +AE+ + L E E R+ + ++L +A +AE ANR K EFLA Sbjct: 725 DEIELLEAIAEQMGIALAQAALLEKERERRRELAQKNLELEKATWAAEAANRAKGEFLAM 784 Query: 607 ISHEIRTPMNAILGFCXXXXXXXXXXXXXXKYLNAIGXXXXXXXXXXXXXXXXXXXEAGK 666 +SHEIRTPMN ++G Y+ I EA K Sbjct: 785 MSHEIRTPMNGVIGM-TELLIMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIEADK 843 Query: 667 LVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQILFNLVG 726 LV+ + +LR +I + ++F A +K L LT ID I D VRLRQIL NL+G Sbjct: 844 LVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSNLIG 903 Query: 727 NALKFTEEGQVFIYIGVEGIQ-VRSQGTYISL-------AIEVTDTGIGIAPEDQAKIFD 778 NALKFTE+G+V + + E S T ++L + DTGIGI + Q ++F Sbjct: 904 NALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQDRLFK 963 Query: 779 VFTQSQGQSTRKYXXXXXXXXXXXXXXXXXXXEISLSSRLGEGSTF 824 F+Q +TRKY ++++S G GS F Sbjct: 964 SFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNF 1009 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 115 bits (288), Expect = 7e-28 Identities = 81/237 (34%), Positives = 113/237 (47%), Gaps = 6/237 (2%) Query: 558 VAERTHTLIVINKQLAGEIEERQRIEIKLRE---AKESAELANRVKSEFLANISHEIRTP 614 +++R ++ + L E RQ++ + +E A +AE ANR KSEFLA +SHEIRTP Sbjct: 276 ISQRKQVEMIQGQSLEMERRMRQQLAEQNQELVAATTAAEAANRSKSEFLATMSHEIRTP 335 Query: 615 MNAILGFCXXXXXXXXXXXXXXKYLNAIGXXXXXXXXXXXXXXXXXXXEAGKLVIHLEPV 674 MNAI+G + I EAGKL + + P Sbjct: 336 MNAIIGMTGLLLDTDLTTQQKY-FAQTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPF 394 Query: 675 DLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEE 734 DL + E + A KSL L + + + D RLRQIL NL+ NA+KFTE Sbjct: 395 DLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAVKFTEA 454 Query: 735 GQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKY 791 GQV + + V ++G Y + V DTGIGIAP Q +F F+Q TR++ Sbjct: 455 GQVKVTVEVVDHDA-AKGEY-QICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRF 509 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 109 bits (272), Expect = 5e-26 Identities = 75/255 (29%), Positives = 122/255 (47%), Gaps = 4/255 (1%) Query: 577 EERQRIEIKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCXXXXXXXXXXXXXX 636 + R + E L +AKE+A+ ANR K+EFLA+ISHE+RTP+NAI+GF Sbjct: 140 QARHQAETTLTQAKEAADAANRAKTEFLASISHELRTPLNAIIGF-SQLLHRDPSLAPHR 198 Query: 637 KYLNAIGXXXXXXXXXXXXXXXXXXXEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSL 696 L+ I EAG+ ++ + +D ++ ++ +F +A+ K L Sbjct: 199 PTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQL 258 Query: 697 LLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIG-VEGIQV-RSQGTY 754 LL ++ + + I D +LRQ+L NL+ NA+KFT +G V + + + Q QG Sbjct: 259 LLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGAS 318 Query: 755 ISLAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYXXXXXXXXXXXXXXXXXXXEISL 814 I L V+DTG GIA + ++F F Q++ + +I + Sbjct: 319 IWLHFLVSDTGPGIAAHEMDELFVPFAQTE-TGLKSCQGNGLGLPISQKFVQLMGGQIQV 377 Query: 815 SSRLGEGSTFILHFP 829 S++ +GS F P Sbjct: 378 RSKVDQGSAFFFAIP 392 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 103 bits (258), Expect = 2e-24 Identities = 86/325 (26%), Positives = 150/325 (46%), Gaps = 28/325 (8%) Query: 514 LTPIALRSEVSEVITLNENFNEMLIT----LQNQFKIIKQAKDNLEMRVAERTHTLIVIN 569 +T + L + +SE NE L T L Q + +++ E+ A+R LI N Sbjct: 287 MTTLVLNAVLSE----NERSKNQLFTTNQILIEQNQKLQELYQQRELERAQREKILIEYN 342 Query: 570 KQLAGEIEERQRIEIKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCXXXXXXX 629 + L +++ L AKE AE + KS F+AN+SHE+R+P+NAI+GF Sbjct: 343 ESLQKQVD--------LVRAKEIAESEAKAKSTFVANMSHELRSPLNAIIGFSQLMLRTK 394 Query: 630 XXXXXXXKYLNAIGXXXXXXXXXXXXXXXXXXXEAGKLVIHLEPVDLRVIIREIKQIFDY 689 + I EAGK ++ DL +++ +++ + Sbjct: 395 NLPMEQYENAGIIQRSGEYLLNLINNILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHL 454 Query: 690 KAESKSLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFI---YIGVEGI 746 KA ++ + L D L + +Y D ++LRQIL NL+ NA+KFT EG+V + + E Sbjct: 455 KAANEGIELIFIRDHDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQ 514 Query: 747 QVRSQGTYIS------LAIEVTDTGIGIAPEDQAKIFDVFTQSQ-GQSTRKYXXXXXXXX 799 +V + T L + DTG GI+ + + +F+ F+Q++ G++ ++ Sbjct: 515 EVINPETSTEPKNKYWLDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQE--GTGLGLA 572 Query: 800 XXXXXXXXXXXEISLSSRLGEGSTF 824 +I++SS + +G+TF Sbjct: 573 ITRQFIKLMGGDINVSSVVDQGTTF 597 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 98.6 bits (244), Expect = 8e-23 Identities = 63/210 (30%), Positives = 104/210 (49%), Gaps = 3/210 (1%) Query: 585 KLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCXXXXXXXXXXXXXX-KYLNAIG 643 +L +A ++AE A+R+KSEFLA+ +HE+RTP+N I+GF +++ Sbjct: 179 ELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEAY 238 Query: 644 XXXXXXXXXXXXXXXXXXXEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQID 703 EAG++ I LE VD +++ + +A++K L + Sbjct: 239 QSALLLLNLINDILDLAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAP 298 Query: 704 ETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYIS--LAIEV 761 +Y + L Q++ N+VGNA+KFT EG + + + V V +G L + V Sbjct: 299 NQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVSV 358 Query: 762 TDTGIGIAPEDQAKIFDVFTQSQGQSTRKY 791 DTGIG++ E Q+K+F F Q G ++ Y Sbjct: 359 GDTGIGVSLEQQSKLFKKFVQIDGSHSKAY 388 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 93.6 bits (231), Expect = 3e-21 Identities = 72/264 (27%), Positives = 114/264 (43%), Gaps = 11/264 (4%) Query: 575 EIEERQRIEIKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCXXXXXXXXXXXX 634 +I E ++ E +L+ + + A ++K EFLAN+SHE+RTP+N+ILG Sbjct: 393 DITEIKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLN 452 Query: 635 XXKY--LNAIGXXXXXXXXXXXXXXXXXXXEAGKLVIHLEPVDLRVIIREIKQIFDYKAE 692 + L + EAG++ + L P + ++ A Sbjct: 453 GKQVQSLEIVENSGRHLLSLINDILDLSKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAI 512 Query: 693 SKSLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRSQG 752 K + L+ +I L + D RL Q+L NL+ NA+KFT EG + V+ ++ QG Sbjct: 513 QKQINLSSEIIPNLPDVLV-DKRRLCQVLINLLNNAIKFTPEGGKVV---VQADLIKEQG 568 Query: 753 TYIS-----LAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYXXXXXXXXXXXXXXXX 807 S L+ V DTGIGI + IF+ F Q R+Y Sbjct: 569 KENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVEL 628 Query: 808 XXXEISLSSRLGEGSTFILHFPAV 831 ++++S+L EGS F + P V Sbjct: 629 HGGSVTVTSKLNEGSRFKITIPCV 652 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 72.0 bits (175), Expect = 8e-15 Identities = 62/235 (26%), Positives = 92/235 (39%), Gaps = 12/235 (5%) Query: 604 LANISHEIRTPMNAILGFCXXXXXXXXXXXX--XXKYLNAIGXXXXXXXXXXXXXXXXXX 661 L++I HE RTP+ AI+GF +Y+ Sbjct: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 Query: 662 XEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQIL 721 +A + E V + + + + KA+ K L L + ID+ ++ Y D R +QIL Sbjct: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFC-YVDQRRWKQIL 308 Query: 722 FNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIFDVFT 781 NL+ N +KFT +G V + + + T +L V DTGIGI PEDQ +F F Sbjct: 309 INLLSNGVKFTPKGSVTLAV---------KATDKALIFSVIDTGIGIDPEDQRDLFQPFK 359 Query: 782 QSQGQSTRKYXXXXXXXXXXXXXXXXXXXEISLSSRLGEGSTFILHFPAVRLVEN 836 Q + +I L+S G GS F P V+N Sbjct: 360 QISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPLKTSVKN 414 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 70.9 bits (172), Expect = 2e-14 Identities = 71/292 (24%), Positives = 110/292 (37%), Gaps = 41/292 (14%) Query: 547 IKQAKDNLEMRVAERTHTLIVINKQLAGEIEERQRIEIKLREAKESAELANRVKSEFLAN 606 +++ K+N E RV ERT +LR+ +A+ AN +KS+F+ N Sbjct: 347 VQKQKNNFEKRVIERTK---------------------ELRDTLMAAQAANLLKSQFINN 385 Query: 607 ISHEIRTPMNAILGFCXXXXX-----XXXXXXXXXKYLNAIGXXXXXXXXXXXXXXXXXX 661 ISHE+RTP+ +I+G YL I Sbjct: 386 ISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQ 445 Query: 662 XEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLN---QAIYFDAVRLR 718 E+G+ ++ + L + + + I + + +++D +N D RL Sbjct: 446 LESGQTALNCQSFSLHTLAQTV--IHSLLGVAIKQQINLELDYQINVGQDQFCADQERLD 503 Query: 719 QILFNLVGNALKFT-EEGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIF 777 QIL L+ NALKFT EG V + I E Q +V DTGIGI + +F Sbjct: 504 QILTQLLNNALKFTPAEGTVILRIWKESNQA---------IFQVEDTGIGINEQQLPVLF 554 Query: 778 DVFTQSQGQSTRKYXXXXXXXXXXXXXXXXXXXEISLSSRLGEGSTFILHFP 829 + F + T Y I + S G+G+ F P Sbjct: 555 EAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIP 606 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 66.2 bits (160), Expect = 5e-13 Identities = 63/253 (24%), Positives = 106/253 (41%), Gaps = 18/253 (7%) Query: 575 EIEERQRIEIKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCXXXXXXXXXXXX 634 ++ ER+R E ++R A E + +R+K+ F + SHE RTP++ L Sbjct: 45 DVTERRRTE-EVRLALEREKELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLD 103 Query: 635 XXKY---LNAIGXXXXXXXXXXXXXXXXXXXEAGKLVIHLEPVDLRVIIREIKQIFDYKA 691 K L+ I EAGKL + +DL+++ ++ + Sbjct: 104 PDKRSRNLHRIQNSVKNMVQLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSV 163 Query: 692 ESKSLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEG-QVFIYIGVEGIQVRS 750 + I + + D +R IL NL+ NA+K++ G Q+ I + ++ Q+ Sbjct: 164 SDQYYFDFICSAQDTKALV--DERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQI-- 219 Query: 751 QGTYISLAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYXXXXXXXXXXXXXXXXXXX 810 EVTD GIGI+PEDQ +IF+ F +G++ R Sbjct: 220 -------IFEVTDQGIGISPEDQKQIFEPF--HRGKNVRNITGTGLGLMVAKKCVDLHSG 270 Query: 811 EISLSSRLGEGST 823 I L S + +G+T Sbjct: 271 SILLKSAVDQGTT 283 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 63.5 bits (153), Expect = 3e-12 Identities = 57/210 (27%), Positives = 92/210 (43%), Gaps = 15/210 (7%) Query: 575 EIEERQRIEIK-LREAKESAELANRVKSEFLANISHEIRTPMNAILGFCXXXXXXXXXXX 633 +I + +R EI+ LR + EL N KS+F+ +SHE RTP+ +I+GF Sbjct: 915 DITDIKRAEIETLRSLVKEREL-NEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLS 973 Query: 634 XXXK--YLNAIGXXXXXXXXXXXXXXXXXXXEAGKLVIHLEPVDLRVIIREIKQIFDYKA 691 K Y+N I +A K+ I L ++LR + ++ + F Sbjct: 974 TEKKQQYINNIQNSSQRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGL 1033 Query: 692 ESK-SLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRS 750 S+ + L + + + D LR IL N++ NA+K++ G I + Sbjct: 1034 GSEHNFELNYHLKPDEHSLV--DVRLLRHILENILSNAIKYSAPGST--------ITLDI 1083 Query: 751 QGTYISLAIEVTDTGIGIAPEDQAKIFDVF 780 L +V D GIGI +DQ K+F+ F Sbjct: 1084 SKDEEHLLFQVRDEGIGIPLQDQEKLFEAF 1113 >SYNE-PCC-01-002220 slr1212 Length = 844 Score = 45.1 bits (105), Expect = 1e-06 Identities = 32/86 (37%), Positives = 49/86 (56%), Gaps = 1/86 (1%) Query: 524 SEVITLNENFNEMLITLQNQFKIIKQAKDNLEMRVAERTHTLIVINKQLAGEIEERQRIE 583 +E+ TLN N+ + Q +++ +NLE RV +RT L IN+QL EIE++ R + Sbjct: 129 TELATLNLALNQEIKERQTAEIALQELNNNLEKRVEDRTTQLAKINQQLEQEIEDKTRAK 188 Query: 584 IKLREAKES-AELANRVKSEFLANIS 608 L + K+ A+LA V+S A IS Sbjct: 189 EDLEKNKDQLAQLAAIVESSQDAIIS 214 >SYNE-PCC-01-000983 sll1473 Length = 481 Score = 42.0 bits (97), Expect = 9e-06 Identities = 27/92 (29%), Positives = 48/92 (52%), Gaps = 4/92 (4%) Query: 525 EVITLNENFNEMLITLQNQ--FKIIKQAKDNLEMRVAERTHTLIVINKQLAGEIEERQRI 582 EV + + N++ I +Q ++ ++Q +LE RV +RT L N+ L EI ERQ+ Sbjct: 196 EVELMKQLANQVAIAIQQSELYEQLQQLNKDLENRVEKRTQQLAATNQSLRMEISERQKT 255 Query: 583 EIKLREAKESAE--LANRVKSEFLANISHEIR 612 E LR + + +A + F N++ +I+ Sbjct: 256 EAALRHTNHTLQSLIAASPRGIFTLNLADQIQ 287 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.137 0.393 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 82,729 Number of Sequences: 78 Number of extensions: 3528 Number of successful extensions: 77 Number of sequences better than 1.0e-05: 16 Number of HSP's better than 0.0 without gapping: 12 Number of HSP's successfully gapped in prelim test: 4 Number of HSP's that attempted gapping in prelim test: 28 Number of HSP's gapped (non-prelim): 26 length of query: 998 length of database: 48,235 effective HSP length: 72 effective length of query: 926 effective length of database: 42,619 effective search space: 39465194 effective search space used: 39465194 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 97 (42.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000943 sll1424 (491 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000943 sll1424 865 0.0 SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 55 6e-10 SYNE-PCC-01-000727 sll1120 51 7e-09 MGEN-G37-01-000335 MG328 conserved hypothetical protein 49 5e-08 SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 48 6e-08 MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) 48 8e-08 MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil pro... 45 5e-07 SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 43 2e-06 SYNE-PCC-01-001071 sll1583 43 2e-06 >SYNE-PCC-01-000943 sll1424 Length = 491 Score = 865 bits (2234), Expect = 0.0 Identities = 466/491 (94%), Positives = 466/491 (94%) Query: 1 MTSAYXXXXXXXXXXXXXAALGDHLGSKVGKARLRLFKLRPRQTAVLLTVITGTLISAST 60 MTSAY AALGDHLGSKVGKARLRLFKLRPRQTAVLLTVITGTLISAST Sbjct: 1 MTSAYILVLSVLVLGGIIAALGDHLGSKVGKARLRLFKLRPRQTAVLLTVITGTLISAST 60 Query: 61 LGILFTFSKSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERS 120 LGILFTFSKSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERS Sbjct: 61 LGILFTFSKSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERS 120 Query: 121 RELNRNYTKALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRD 180 RELNRNYTKALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKD VKLRD Sbjct: 121 RELNRNYTKALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDSLLAESSELQSQVKLRD 180 Query: 181 QELSKRQERIAQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIA 240 QELSKRQERIAQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIA Sbjct: 181 QELSKRQERIAQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIA 240 Query: 241 AKDNDIQAREEKLQGLETELSFLQREVEELERYYQDYQELRGQQIAILRGQLLAFGGLRV 300 AKDNDIQAREEKLQGLETELSFLQREVEELERYYQDYQELRGQQIAILRGQLLAFGGLRV Sbjct: 241 AKDNDIQAREEKLQGLETELSFLQREVEELERYYQDYQELRGQQIAILRGQLLAFGGLRV 300 Query: 301 VSSEAVTGAVDQLLRQANRTALQLVKTPNMPVPDEPIVRVTTAQVDSITSQLQPGQEYVI 360 VSSEAVTGAVDQLLRQANRTALQLVKTPNMPVPDEPIVRVTTAQVDSITSQLQPGQEYVI Sbjct: 301 VSSEAVTGAVDQLLRQANRTALQLVKTPNMPVPDEPIVRVTTAQVDSITSQLQPGQEYVI 360 Query: 361 RVLSAGNYVQEEREIRVFFDVVPNRQVFREAETIATISLESSDFSEVDVQKRIDYLLAAA 420 RVLSAGNYVQEEREIRVFFDVVPNRQVFREAETIATISLESSDFSEVDVQKRIDYLLAAA Sbjct: 361 RVLSAGNYVQEEREIRVFFDVVPNRQVFREAETIATISLESSDFSEVDVQKRIDYLLAAA 420 Query: 421 QFRARREGILGPIQVEDGRIKTLIDFIEQLRRQADNPPNEVRAIAAEDTSVVGPLKIRII 480 QFRARREGILGPIQVEDGRIKTLIDFIEQLRRQADNPPNEVRAIAAEDTSVVGPLKIRII Sbjct: 421 QFRARREGILGPIQVEDGRIKTLIDFIEQLRRQADNPPNEVRAIAAEDTSVVGPLKIRII 480 Query: 481 ALRGNQIMFEN 491 ALRGNQIMFEN Sbjct: 481 ALRGNQIMFEN 491 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 54.7 bits (130), Expect = 6e-10 Identities = 44/183 (24%), Positives = 91/183 (49%), Gaps = 11/183 (6%) Query: 87 VAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLLRRVSEQSRNLRQ 146 V K++LE + ++ ++E+ + +EE++L+ R +EL + Q ++ SE+ R R Sbjct: 1607 VLKSKLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQK-SEEER--RA 1663 Query: 147 EVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQERIAQQEKVLARQREQVQS 206 EV E++QL+E+ + ++Q + ++ + +K QR++++ Sbjct: 1664 EVRKFQVEKSQLDEK----AMLLETKYNDLVNKEQAWKRDEDTV---KKTTDSQRQEIEK 1716 Query: 207 LEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIAAKDNDIQAREEKLQGLETELSFLQRE 266 L K +L+A+ +L+ E N+ ++ID L + D KL+ L E+S + + Sbjct: 1717 LAKELDNLKAENSKLK-EANEDRSEIDDLMLLVTDLDEKNAKYRSKLKDLGVEISSDEED 1775 Query: 267 VEE 269 EE Sbjct: 1776 DEE 1778 Score = 54.7 bits (130), Expect = 6e-10 Identities = 51/229 (22%), Positives = 103/229 (44%), Gaps = 36/229 (15%) Query: 79 DDILAQLRVAKTELEQASQAKEEIE---SELTAVREEQQL----VQERSRELNRNYTKAL 131 D+ +Q+ + K +LE A+ A +E SELT REE + + EL + Sbjct: 1050 DEYESQISLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLETSE 1109 Query: 132 QLLRRVSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQERIA 191 + L+ V E +L++E L E + +Q + + +L K +E+IA Sbjct: 1110 KALKEVKENEEHLKEEKIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIA 1169 Query: 192 QQEKV----LARQREQVQSLEKRFASLEAQRQQLQAEI-----------NQRDTKIDQLD 236 +E+ +++ +++ S ++ S++ + +L+ E+ N + ++ID L+ Sbjct: 1170 NKERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALN 1229 Query: 237 QAIAA--KDND------------IQAREEKLQGLETELSFLQREVEELE 271 I K N+ +++ K++ L+ E +F ++EV ELE Sbjct: 1230 LQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELE 1278 Score = 50.4 bits (119), Expect = 1e-08 Identities = 65/388 (16%), Positives = 174/388 (44%), Gaps = 40/388 (10%) Query: 79 DDILAQLRVAKTEL----EQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLL 134 +D+ AQL+ + ++ Q ++ ++ E+T+ ++E + +++++ EL ++ + Sbjct: 1155 EDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGE----VKAM 1210 Query: 135 RRVSEQSRNL-RQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQERIAQQ 193 + SE+ NL + E+ L+ + +L ++ + V+ ++ + Q+ + Sbjct: 1211 KSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFK 1270 Query: 194 EKVLARQREQVQSLE---KRFASLEAQRQQLQAEINQRDTKIDQLDQAIAAKDNDIQARE 250 EK ++ +++++ E ++ L+ + ++++ E++ + T++ + I + E Sbjct: 1271 EKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKITNLSKAKEKSE 1330 Query: 251 EKLQGLETELSFLQREVEELERYYQDYQELRGQQIAILRGQLLAFGGLRVVS--SEAVTG 308 +L L+ S ++ EE ++ +++ Q R +LL G + SE + Sbjct: 1331 SELSRLKKTSSEERKNAEEQLEKLKNEIQIKNQAFEKER-KLLNEGSSTITQEYSEKINT 1389 Query: 309 AVDQLLRQANRTALQLVKTPNMPVPDEPIVRVTTAQVDSITSQLQPGQEYVIRVLSAGNY 368 D+L+R N L+ + N R +V +L ++ I+ L Sbjct: 1390 LEDELIRLQNENELKAKEIDN--------TRSELEKVSLSNDELLEEKQNTIKSL----- 1436 Query: 369 VQEEREIRVFFDVVPNRQVFREAETIATISLESSDFSEVDVQKRIDYLLAAAQFRARREG 428 + EI + D ++ R E + +I + ++ D++ + L AA + +A+ E Sbjct: 1437 ---QDEILSYKD-----KITRNDEKLLSIERD----NKRDLESLKEQLRAAQESKAKVEE 1484 Query: 429 ILGPIQVEDGRIKTLIDFIEQLRRQADN 456 L ++ E + K ++ +++ ++ ++ Sbjct: 1485 GLKKLEEESSKEKAELEKSKEMMKKLES 1512 Score = 45.1 bits (105), Expect = 5e-07 Identities = 55/267 (20%), Positives = 113/267 (42%), Gaps = 56/267 (20%) Query: 68 SKSLREGVF----QLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQL-------V 116 +KSL+E + ++ I L K + S+ KE I EL + Q + Sbjct: 901 TKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKL 960 Query: 117 QERSRELNRNYTKALQ-----LLRRVSE-------QSRNLRQEVANLSAERAQLNEQKDX 164 E+ + L NY K +Q L++ V E Q NL+ ++ ++S E+ ++ Sbjct: 961 TEKLKSLANNY-KDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGS 1019 Query: 165 XXXXXXXXXXXV----KLRDQELSKRQERIAQQEKVLARQREQVQSLE-------KRFAS 213 + + +++ +SK + E ++ +E++++ + + Sbjct: 1020 IEKNIEQLKKTISDLEQTKEEIISKSDSSKDEYESQISLLKEKLETATTANDENVNKISE 1079 Query: 214 LEAQRQQLQAEI-------NQRDTKIDQLDQAIA-AKDNDIQAREEKLQ----------- 254 L R++L+AE+ N+ +TK++ ++A+ K+N+ +EEK+Q Sbjct: 1080 LTKTREELEAELAAYKNLKNELETKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQQ 1139 Query: 255 --GLETELSFLQREVEELERYYQDYQE 279 L L L++E E+L + Y+E Sbjct: 1140 LNSLRANLESLEKEHEDLAAQLKKYEE 1166 Score = 44.7 bits (104), Expect = 7e-07 Identities = 43/226 (19%), Positives = 100/226 (44%), Gaps = 21/226 (9%) Query: 69 KSLREGVFQLDDILAQLRVAKTELEQ-ASQAKEEIESELTAVREEQQLVQERSRELNRNY 127 +SL+E + + A++ +LE+ +S+ K E+E +++ + ++ EL + Sbjct: 1466 ESLKEQLRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLESTIESNETELKSSM 1525 Query: 128 TKALQLLRRVSEQSRNLRQEVANLSAERAQL-----NEQKDXXXXXX-----XXXXXXVK 177 + ++ + ++ +++ NL E++ L +KD ++ Sbjct: 1526 ETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELE 1585 Query: 178 LRDQELSKRQERI---AQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQ 234 QEL+ QE+I A++ VL + +++ +E+ +A+ + Q E +++ + Sbjct: 1586 TVKQELNNAQEKIRINAEENTVL---KSKLEDIERELKDKQAEIKSNQEEKELLTSRLKE 1642 Query: 235 LDQAIAAKDNDIQAREE----KLQGLETELSFLQREVEELERYYQD 276 L+Q + + Q EE +++ + E S L + LE Y D Sbjct: 1643 LEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYND 1688 Score = 44.7 bits (104), Expect = 7e-07 Identities = 48/226 (21%), Positives = 102/226 (45%), Gaps = 37/226 (16%) Query: 89 KTELEQASQAKEEI-ESELTAVREEQQLVQERSRELNRNYTKALQL-------LRRVSEQ 140 ++ELE+ S + +E+ E + ++ Q + ++ RN K L + L + EQ Sbjct: 1412 RSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQ 1471 Query: 141 SRNLRQEVANL-----------SAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQER 189 R ++ A + S E+A+L + K+ ++ + EL E Sbjct: 1472 LRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLEST----IESNETELKSSMET 1527 Query: 190 IAQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQA--IAAKDN--- 244 I + ++ L + ++ S E+ +L+ ++ L + IN+ + I++L I AK Sbjct: 1528 IRKSDEKLEQSKK---SAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSEL 1584 Query: 245 -----DIQAREEKLQGLETELSFLQREVEELERYYQDYQ-ELRGQQ 284 ++ +EK++ E + L+ ++E++ER +D Q E++ Q Sbjct: 1585 ETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQ 1630 Score = 44.7 bits (104), Expect = 7e-07 Identities = 41/199 (20%), Positives = 89/199 (44%), Gaps = 6/199 (3%) Query: 77 QLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLLRR 136 +LD +L++ ++ S+AKE+ ESEL+ +++ ++ + E +Q+ + Sbjct: 1304 ELDAKTTELKIQLEKITNLSKAKEKSESELSRLKKTSSEERKNAEEQLEKLKNEIQIKNQ 1363 Query: 137 VSEQSRNLRQEVANLSAER--AQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQERIAQQE 194 E+ R L E ++ + ++N +D K D S+ ++ + Sbjct: 1364 AFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSND 1423 Query: 195 KVLARQREQVQSLEKRFASLEAQ--RQQLQAEINQRDTK--IDQLDQAIAAKDNDIQARE 250 ++L ++ ++SL+ S + + R + +RD K ++ L + + A E Sbjct: 1424 ELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESKAKVE 1483 Query: 251 EKLQGLETELSFLQREVEE 269 E L+ LE E S + E+E+ Sbjct: 1484 EGLKKLEEESSKEKAELEK 1502 >SYNE-PCC-01-000727 sll1120 Length = 1200 Score = 51.2 bits (121), Expect = 7e-09 Identities = 41/202 (20%), Positives = 87/202 (43%), Gaps = 2/202 (0%) Query: 77 QLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLLRR 136 QL ++ Q R A+ EQ + + + T + ++Q Q++ EL +N Q L Sbjct: 735 QLMEMRQQQREAQLHGEQTERDIARLSQQQTQINQQQINQQQKLAELQQNLALLQQSLPP 794 Query: 137 VSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQERIAQQEKV 196 + +Q + +Q++ L E +Q ++Q + + Q L + ++ + + Sbjct: 795 LEQQLASAQQQLTAL--ETSQTHQQWQTIQIQIRTVEAEYQRQLQALRQGEDHLKDLQNS 852 Query: 197 LARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIAAKDNDIQAREEKLQGL 256 R E++ +++ A +AQ L E Q + +++ AI + + EKL Sbjct: 853 SQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEAQLAKLSEKLGST 912 Query: 257 ETELSFLQREVEELERYYQDYQ 278 + E L+ ++ +L Q+ Q Sbjct: 913 KQERDRLETQLNQLRSQQQEQQ 934 Score = 50.4 bits (119), Expect = 1e-08 Identities = 45/231 (19%), Positives = 106/231 (45%), Gaps = 15/231 (6%) Query: 48 LTVITGTLISASTLGILFTFSKSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELT 107 + + G L+ AS G + S++ R G+ + ++++ +L Q Q ++++ Sbjct: 663 IVTLEGDLLEAS--GAMSGGSRNQRSGL-RFGTMVSEDTAEVKQLRQRLQDIQQVQG--- 716 Query: 108 AVREEQQLVQE--RSRELNRNYTKALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDXX 165 R E+ L++ RSR+L + + Q R +++A LS ++ Q+N+Q+ Sbjct: 717 --RNEELLLERTVRSRQLTQQLMEMRQQQREAQLHGEQTERDIARLSQQQTQINQQQINQ 774 Query: 166 XXXXXXXXXXVKLRDQELSKRQERIAQQEKVL-----ARQREQVQSLEKRFASLEAQRQQ 220 + L Q L ++++A ++ L ++ +Q Q+++ + ++EA+ Q+ Sbjct: 775 QQKLAELQQNLALLQQSLPPLEQQLASAQQQLTALETSQTHQQWQTIQIQIRTVEAEYQR 834 Query: 221 LQAEINQRDTKIDQLDQAIAAKDNDIQAREEKLQGLETELSFLQREVEELE 271 + Q + + L + + I +EK+ + + L +E E+L+ Sbjct: 835 QLQALRQGEDHLKDLQNSSQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLK 885 Score = 48.9 bits (115), Expect = 3e-08 Identities = 79/350 (22%), Positives = 139/350 (39%), Gaps = 47/350 (13%) Query: 106 LTAVREEQQLVQERSRELNRNYTKALQLLRRVSEQSRNLRQEVANLSA-----ERAQLNE 160 LT V++ ++ Q + EL R + L R+ +E+ + LRQ+V + + + Sbjct: 200 LTEVQDREERCQIIATELERTLER-LAADRQKAEKYQALRQQVQEKQGWAKVIQYKAVEQ 258 Query: 161 QKDXXXXXXXXXXXXVKLRDQELSKRQERIAQQEKVLARQREQVQSLEK--------RFA 212 Q+ + Q L +R + I Q+ L + QV++L + + A Sbjct: 259 QRQKLWGQLERDREQSQQIQQALDQRSQAIQTQQTELEKLNAQVKALGEEEQLAVAAQLA 318 Query: 213 SLEAQRQQLQAEINQRDTKIDQLDQAIAAKDNDIQAREEKLQGLETELSFLQRE-VEELE 271 + +AQR QLQ N D +I Q + +I +++ ++ E SF + + +LE Sbjct: 319 TQKAQRDQLQQRYNDGDRQITNHQQQVGQIQAEISQSQQQFLHIQQEKSFHNTQTLPQLE 378 Query: 272 RYYQDYQELRGQQIAILRGQLLAFGGLRVVSSEAVTGAVDQLLRQANRTALQLVKTPNMP 331 Q Q QQ+ LR Q A +SEA QL R N+ +L+ Sbjct: 379 AAVQTSQ----QQLEQLRHQAQAIAS----ASEAWVQEQTQLSRTVNQLQDELIPQ---- 426 Query: 332 VPDEPIVRVTTAQVDSITSQLQPGQEYVIRVLSAGNYVQEEREIRV----FFDVVPNRQV 387 R AQ++ QL + +L+ + EE++ F Q+ Sbjct: 427 -------RSQLAQLEERQQQLLTNLAELTPLLTKVSVELEEKQFAQGQFNFQGEALTSQI 479 Query: 388 FREAETIATISLESSDFSEV---------DVQKRIDYLLAAAQFRARREG 428 A +A + E S E + Q+++D L AA+Q + +G Sbjct: 480 QTLASDLAQLEQERSLLQETQTRLLKEQQEKQRQLDKLEAASQAQQEVQG 529 >MGEN-G37-01-000335 MG328 conserved hypothetical protein Length = 756 Score = 48.5 bits (114), Expect = 5e-08 Identities = 53/235 (22%), Positives = 103/235 (43%), Gaps = 23/235 (9%) Query: 79 DDILAQLRVAKTELEQASQA----KEEIESELTAVREEQQLVQERSRELNR---NYTKAL 131 DD+L + R +L+ A +E+ EL +++E+ L+ ++ L N + L Sbjct: 295 DDLLQENRDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQL 354 Query: 132 QLLRRVSEQSRNLRQEV--ANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQER 189 LL ++ Q L+ ++ A + +R L EQ++ D+ K + Sbjct: 355 ALLPVLNNQINELQNQLLTAREANQRLDLVEQENDFLKNELKKLHDNTSNDEN-EKYDDL 413 Query: 190 IAQQEKVLARQREQVQSLEKRFASLEAQRQQ-LQAEINQRDTKIDQLDQAIAAKDNDI-- 246 + Q E + + L+ + +L Q+ + A ++ D +D+++ +KDND Sbjct: 414 LNQYELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWT-RSKDNDFNN 472 Query: 247 ---------QAREEKLQGLETELSFLQREVEELERYYQDYQELRGQQIAILRGQL 292 +A +EKL GL + LQ ++ ELE + ++ L Q+ L+ QL Sbjct: 473 TKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQL 527 >SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 Length = 1928 Score = 48.1 bits (113), Expect = 6e-08 Identities = 39/184 (21%), Positives = 83/184 (45%), Gaps = 14/184 (7%) Query: 84 QLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLLRRVSEQSRN 143 Q+ K +L++ K+ +E + E + Q+ + N K LL RV S Sbjct: 869 QINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSET 928 Query: 144 LRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQERIAQQEKVLARQREQ 203 L+++ +L +E+ +++ +K ++ Q++ QE I ++E L + + Sbjct: 929 LQKQFDDLVSEKDEISREK-------LEVAQNLEEAHQKIQGLQETIREREATLEKLHSK 981 Query: 204 VQSLEKRFASLE---AQRQQLQAEINQRDTKID----QLDQAIAAKDNDIQAREEKLQGL 256 L K+ + L ++ Q Q+ I + K++ +L I +K+ +I++ +KL Sbjct: 982 NNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSS 1041 Query: 257 ETEL 260 E +L Sbjct: 1042 EEDL 1045 Score = 45.1 bits (105), Expect = 5e-07 Identities = 47/212 (22%), Positives = 93/212 (43%), Gaps = 16/212 (7%) Query: 69 KSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYT 128 K + E + +D QL+ EL++ K+ + +L ++E V++RS+ YT Sbjct: 1532 KLIWEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQ-----YT 1586 Query: 129 KALQLLRRVSEQS----RNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELS 184 + L+ S NL++E A L + + + L+ Sbjct: 1587 DEINRLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLN 1646 Query: 185 KRQERIAQQEKVLARQRE----QVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIA 240 ++ I+ EK L ++ E + +SL+ + SL +Q+L++++NQ K D L + A Sbjct: 1647 NEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQ---KTDALQISNA 1703 Query: 241 AKDNDIQAREEKLQGLETELSFLQREVEELER 272 A + Q +E + ++ LQ ++E+ R Sbjct: 1704 ALSSSTQKNKEITEKIKYLEETLQLQMEQNSR 1735 Score = 42.0 bits (97), Expect = 4e-06 Identities = 37/201 (18%), Positives = 91/201 (45%), Gaps = 21/201 (10%) Query: 71 LREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKA 130 ++E +L++ + +L+ + + +EEI+S + ++ + + L +N A Sbjct: 1006 IKESKLKLENEIKRLK------DVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIA 1059 Query: 131 LQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQERI 190 + L+ + ++ +LR + N E+A LN Q +K ++ EL K +E+I Sbjct: 1060 MSRLQSLVTENSDLRSKNENFKKEKAALNNQ--------------LKNKESELLKMKEKI 1105 Query: 191 AQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIAAKDNDIQARE 250 +K LA +Q + A+ ++ + ++ + + ++ + + + + +E Sbjct: 1106 DNHKKELATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQE 1165 Query: 251 EKLQGLETELSFLQREVEELE 271 +K + E S +++ELE Sbjct: 1166 QKKRNSLVE-SLNDSKIKELE 1185 >MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) Length = 1805 Score = 47.8 bits (112), Expect = 8e-08 Identities = 55/231 (23%), Positives = 104/231 (45%), Gaps = 31/231 (13%) Query: 69 KSLREGVFQLDDILAQLRVAKTELE----QASQAKEEIESELTAVREEQQLVQERSRELN 124 K +++ +L +L +L KT+L + S+ +EE E++ + E Q+ +Q ++ N Sbjct: 1354 KEVKKKEGELQKLLVELETRKTKLNNDFAKFSRQREEFENQRLKLLELQKTLQTQTNS-N 1412 Query: 125 RNYTKALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELS 184 TKA+Q E + ++ + L+ ++ + ++ K K+RD+ Sbjct: 1413 NFKTKAIQ------EIENSYKRGMEELNFQKKEFDKNKSRLYEYFR------KMRDEI-- 1458 Query: 185 KRQERIAQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIAAKDN 244 ER Q K++ ++ ++ +L LEAQ +L E N D K +L D Sbjct: 1459 ---ERKESQVKLVLKETQRKANL------LEAQANKLNIEKNTIDFKEKELKAFKDKVDQ 1509 Query: 245 DIQA---REEKLQGLETELSFLQREVEELERYYQDYQELRGQQIAILRGQL 292 DI + + ++L L E LQ+ + E ER L ++I ++ QL Sbjct: 1510 DIDSTNKQRKELNELLNENKLLQQSLIERERAINSKDSLLNKKIETIKRQL 1560 Score = 44.7 bits (104), Expect = 7e-07 Identities = 57/263 (21%), Positives = 109/263 (41%), Gaps = 50/263 (19%) Query: 73 EGVFQLDDILAQLRVAKTEL-------------------EQASQAKEEIESELTAVRE-- 111 E +FQL + +AQ R EL +Q Q + + E+EL A ++ Sbjct: 478 EAIFQLKEKVAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQEL 537 Query: 112 -------EQQLVQERSRELNRNYTKALQLLRRVSEQSRN----------LRQEVANLSAE 154 E+ ++ +E + N TKA Q+ S+ + L+ E NL E Sbjct: 538 FEAKHALERSFIKLEDKEKDLN-TKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQE 596 Query: 155 RAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQERIAQQEKVLARQR--------EQVQS 206 + +L +++ ++ + +EL +++E + Q K ++R E V S Sbjct: 597 KQKLFQERTYFERNAAVLSNRLQQKREELLQQKETLDQLTKSFEQERLINQREHKELVAS 656 Query: 207 LEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIAAKDNDIQAREEKLQGLETELSFLQRE 266 +EK+ L + Q + + + AI K+ +I+A E++L +Q + Sbjct: 657 VEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQAD 716 Query: 267 VEEL-ERYYQDYQELRG--QQIA 286 + +L + Q+ EL+ Q+IA Sbjct: 717 LAQLNQSLNQERSELQNAKQRIA 739 Score = 41.6 bits (96), Expect = 6e-06 Identities = 48/253 (18%), Positives = 106/253 (41%), Gaps = 43/253 (16%) Query: 69 KSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYT 128 K L Q+ + +QL KT+ +++ + +++E +++E+Q + + RN Sbjct: 556 KDLNTKAQQIANEFSQL---KTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERN-- 610 Query: 129 KALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKR-- 186 A L R+ ++ L Q+ L +++ V+ + + L K+ Sbjct: 611 -AAVLSNRLQQKREELLQQKETLDQLTKSFEQERLINQREHKELVASVEKQKEILGKKLQ 669 Query: 187 ---------QERIAQQEKVLARQREQVQSLEKRFAS-------LEAQRQQLQAEINQRDT 230 + +A++E + + +++++ EK+ + ++A QL +NQ + Sbjct: 670 DFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQSLNQERS 729 Query: 231 KIDQLDQAIAAKDND-----------IQAREEKLQGLET--------ELSFLQREVEELE 271 ++ Q IA ND +Q R ++LQ LE ++ + E+++L Sbjct: 730 ELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQAYFEGELDKLN 789 Query: 272 RYYQDYQELRGQQ 284 R Q + LR +Q Sbjct: 790 REKQAFLNLRKKQ 802 >MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] Length = 1033 Score = 45.1 bits (105), Expect = 5e-07 Identities = 49/205 (23%), Positives = 89/205 (43%), Gaps = 45/205 (21%) Query: 77 QLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQ-QLVQERSRELNRNYTKALQ--- 132 QLD L + +LE+ Q + ++ + + V +E+ +L+Q ++ L + + Q Sbjct: 362 QLDKALKHNAALQIQLEE--QLAKPLQYDQSPVLQERIELLQNQNTNLTQELNELQQKLF 419 Query: 133 -------LLRRVSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSK 185 LL R+ E++R L+Q + N E QLN L K Sbjct: 420 KSQNNSLLLARLEEENRTLKQHLQNNLPEANQLN---------------------FVLEK 458 Query: 186 RQERIAQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIAAKDND 245 + E++ Q + L Q EQ + K+ A L++EIN +T++ L Q Sbjct: 459 QLEQLQQDKHSLTLQIEQYKFDSKKHQEQLALIPSLRSEINSLETEVISLKQT------- 511 Query: 246 IQAREEKLQGLETELSFLQREVEEL 270 ++L +E E +FL+ E+++L Sbjct: 512 ----NQRLSLIERENNFLKTEIKQL 532 Score = 42.4 bits (98), Expect = 3e-06 Identities = 58/259 (22%), Positives = 107/259 (41%), Gaps = 26/259 (10%) Query: 77 QLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLLRR 136 Q + +L ++T+L Q+ E LT ++ + +L+QE +L Q + Sbjct: 695 QNQSLTDKLMASETQLNHLQQSDEN----LTQLQTQHELLQESYNKLQDEANHTQQQFHQ 750 Query: 137 VSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQELSKRQERIAQQEKV 196 + Q++A +L + K VK + L+ + Q+K Sbjct: 751 AQNELDAAHQQLALFKQNNEELTD-KCSNIQNELHDLNRVKTNWENLNTEHNLL--QDKY 807 Query: 197 LARQREQVQSLEKRFASLEAQRQQLQAEINQ-----RDTKIDQLDQAIAAKDNDIQAREE 251 A+Q+EQ+Q A ++A+ + LQ N+ + +I L++A A+ D+ + E Sbjct: 808 -AQQKEQMQHEHSNLAQIQAEHELLQESYNKVKAELNEIQITNLNEA-NAQYQDLLSAYE 865 Query: 252 KLQG----LETELSFLQR---EVEELERYYQDYQELRGQQIAILRGQLLAFGGLRVVSSE 304 LQ L+ EL L + E ++L + + + Q A L A+ L + Sbjct: 866 LLQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNL-----Q 920 Query: 305 AVTGAVDQLLRQANRTALQ 323 A D+LL Q N+ L+ Sbjct: 921 ATPPVSDELLEQFNQVQLE 939 >SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 Length = 875 Score = 43.1 bits (100), Expect = 2e-06 Identities = 45/222 (20%), Positives = 98/222 (44%), Gaps = 34/222 (15%) Query: 68 SKSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREE-----QQLVQERSRE 122 S L++ QL+ + K+ E ++ EI L + + QQLV+ + E Sbjct: 563 SNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENE 622 Query: 123 LNRNYTKALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVKLRDQE 182 +++T L+ ++ +EQ + L EV L A +L EQ ++ Sbjct: 623 -QKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQ------------------NRH 663 Query: 183 LSKRQERIAQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIAAK 242 L E+ +E + V++L+++ L++++Q + AE + ++ L++ Sbjct: 664 LKNCLEK---KETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVT--- 717 Query: 243 DNDIQAREEKLQGLETELSFLQREVEELERYYQDYQELRGQQ 284 + ++K+Q + EL +E+EE++ + ++ +G Q Sbjct: 718 ----KNLQQKVQSQKRELEQKIKELEEIKNHKRNEPSKKGTQ 755 Score = 42.7 bits (99), Expect = 2e-06 Identities = 48/272 (17%), Positives = 114/272 (41%), Gaps = 34/272 (12%) Query: 42 RQTAVLLTVITGTLISASTLGILFTFSKSLREGVFQLDDILAQLRVAKTEL-----EQAS 96 R T V L+ T T++ I + + ++ + +L V + L E+ Sbjct: 388 RNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKGLIMGVQEELL 447 Query: 97 QAKEEIESELTA-VREEQQLVQERSRELNRNYTKALQLLRRVSE---QSRNLRQEVANLS 152 + I++ L + + +Q + + + + +NY L++ QS + + +L Sbjct: 448 TSSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLE 507 Query: 153 AERAQLNEQKDXXXXXXXXXXXX-----------------VKLRDQELSKRQERIAQQEK 195 +ER+ L+ QK+ + ++Q L+++ E ++ + K Sbjct: 508 SERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELK 567 Query: 196 VLARQREQVQSLEKRFAS-----LEAQRQQLQAEINQRDTKIDQLDQAIAAKDNDIQARE 250 + Q E++ +L S + +Q + ++A +++ DT ++ Q + K+N+ + Sbjct: 568 KVQDQLEKLNNLNITTKSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHT 627 Query: 251 EKLQGLETELSFLQR---EVEELERYYQDYQE 279 KL+ + LQ+ EV +L+ + + +E Sbjct: 628 TKLEAFQKNNEQLQKLNVEVVQLKAHELELEE 659 >SYNE-PCC-01-001071 sll1583 Length = 562 Score = 42.7 bits (99), Expect = 2e-06 Identities = 50/227 (22%), Positives = 99/227 (43%), Gaps = 27/227 (11%) Query: 62 GILFTFSKSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERS- 120 G L K L+ L++ LA+ + +L + QA+E++ + L +Q Sbjct: 75 GKLRRLEKDLQSVQASLENALAE----RNQLTENYQAQEKMVAALQHQLAHYDDIQSEKF 130 Query: 121 ---RELNRNYTKALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDXXXXXXXXXXXXVK 177 ++LN+ +LL+ + S L+Q V ++ R +L + Sbjct: 131 VGLQKLNQ------ELLQENTNLSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSDQLSY 184 Query: 178 LRDQELSKRQERIAQQEKVLARQREQVQSL--------EKRFASLEAQRQQLQAEIN--- 226 + + ++R+A QEK+ ++ EQ Q+ E++ L A+R Q+Q E+ Sbjct: 185 VEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQELQTAR 244 Query: 227 -QRDTKIDQLDQAIAAKDNDIQAREEKLQGLETELSFLQREVEELER 272 Q + Q + AA D + +EE+ QG ++L+ ++EE ++ Sbjct: 245 QQSQSAQTQAENLQAALDR-LGQQEEQWQGERSQLTAKLNQLEEAQK 290 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.316 0.132 0.339 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 40,502 Number of Sequences: 78 Number of extensions: 1953 Number of successful extensions: 120 Number of sequences better than 1.0e-05: 9 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 8 Number of HSP's that attempted gapping in prelim test: 31 Number of HSP's gapped (non-prelim): 56 length of query: 491 length of database: 48,235 effective HSP length: 66 effective length of query: 425 effective length of database: 43,087 effective search space: 18311975 effective search space used: 18311975 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.6 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000983 sll1473 (481 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000983 sll1473 919 0.0 SYNE-PCC-01-002220 slr1212 128 4e-32 SYNE-PCC-01-000542 sll0821 119 2e-29 SYNE-PCC-01-002778 slr1969 88 7e-20 SYNE-PCC-01-001517 slr0222 62 4e-12 SYNE-PCC-01-002617 slr1759 60 1e-11 SYNE-PCC-01-002873 slr2098 46 2e-07 SYNE-PCC-01-001690 slr0473 43 2e-06 >SYNE-PCC-01-000983 sll1473 Length = 481 Score = 919 bits (2375), Expect = 0.0 Identities = 469/481 (97%), Positives = 469/481 (97%) Query: 1 MGKFLIPIEFVFLAIAMTCYLWHRQNQERRRIEISIKQQTQRERFINQITQHIRQSLNLE 60 MGKFLIPIEFVFLAIAMTCYLWHRQNQERRRIEISIKQQTQRERFINQITQHIRQSLNLE Sbjct: 1 MGKFLIPIEFVFLAIAMTCYLWHRQNQERRRIEISIKQQTQRERFINQITQHIRQSLNLE 60 Query: 61 TVLNTTVAEVKTLLQVDRVLIYRIWQDGTGSAITESVNANYPSILGRTFSDEVFPVEYHQ 120 TVLNTTVAEVKTLLQVDRVLIYRIWQDGTGSAITESVNANYPSILGRTFSDEVFPVEYHQ Sbjct: 61 TVLNTTVAEVKTLLQVDRVLIYRIWQDGTGSAITESVNANYPSILGRTFSDEVFPVEYHQ 120 Query: 121 AYTKGKVRAINDIDQDDIEICLADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGL 180 AYTKGKVRAINDIDQDDIEICLADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGL Sbjct: 121 AYTKGKVRAINDIDQDDIEICLADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGL 180 Query: 181 LITHQCAFTRPWQPWEVELMKQLANQVAIAIXXXXXXXXXXXXNKDLENRVEKRTQQLAA 240 LITHQCAFTRPWQPWEVELMKQLANQVAIAI NKDLENRVEKRTQQLAA Sbjct: 181 LITHQCAFTRPWQPWEVELMKQLANQVAIAIQQSELYEQLQQLNKDLENRVEKRTQQLAA 240 Query: 241 TNQSLRMEISERQKTEAALRHTNHTLQSLIAASPRGIFTLNLADQIQIWNPTAERIFGWT 300 TNQSLRMEISERQKTEAALRHTNHTLQSLIAASPRGIFTLNLADQIQIWNPTAERIFGWT Sbjct: 241 TNQSLRMEISERQKTEAALRHTNHTLQSLIAASPRGIFTLNLADQIQIWNPTAERIFGWT 300 Query: 301 ETEIIAHPELLTSNILLEDYQQFKQKVLSGMVSPSLELKCQKKDGSWIEIVLSAAPLLDS 360 ETEIIAHPELLTSNILLEDYQQFKQKVLSGMVSPSLELKCQKKDGSWIEIVLSAAPLLDS Sbjct: 301 ETEIIAHPELLTSNILLEDYQQFKQKVLSGMVSPSLELKCQKKDGSWIEIVLSAAPLLDS 360 Query: 361 EENIAGLVAVVADITEQKRQAEQIRLLQSVVVNTNDAVVITEAEPIDDPGPRILYVNEAF 420 EENIAGLVAVVADITEQKRQAEQIRLLQSVVVNTNDAVVITEAEPIDDPGPRILYVNEAF Sbjct: 361 EENIAGLVAVVADITEQKRQAEQIRLLQSVVVNTNDAVVITEAEPIDDPGPRILYVNEAF 420 Query: 421 TKITGYTAEEMLGKTPRVLQGPKTSRTELDRVRQAISQWQSVTVEAEVLNDSYKEKKSPL 480 TKITGYTAEEMLGKTPRVLQGPKTSRTELDRVRQAISQWQSVTVEAEVLNDSYKEKKSPL Sbjct: 421 TKITGYTAEEMLGKTPRVLQGPKTSRTELDRVRQAISQWQSVTVEAEVLNDSYKEKKSPL 480 Query: 481 K 481 K Sbjct: 481 K 481 >SYNE-PCC-01-002220 slr1212 Length = 844 Score = 128 bits (321), Expect = 4e-32 Identities = 74/239 (30%), Positives = 122/239 (51%), Gaps = 29/239 (12%) Query: 33 EISIKQQTQRERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQD---GT 89 E + +Q +RE + +ITQ IRQSL+L T+ NT V E++ L+ DRV+I++ D Sbjct: 450 EQRLYEQGRRESLLREITQRIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSV 509 Query: 90 GSAITESVNANYPSILGRTFSDEVFPVEYHQAYTKGKVRAINDIDQDDIEICLADFVKQF 149 G+ + ESV A + I+ + F Y Q Y +G+++ I DI Q + C DF+ + Sbjct: 510 GNIVAESVLAPFKPIINSAIEETCFSNNYAQRYQQGRIQVIEDIHQSHLRQCHIDFLARL 569 Query: 150 GVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPWQPWEVELMKQLANQVAI 209 V++ LV+P++ LWGLL HQC +R W+ E++L+KQ+ NQ I Sbjct: 570 QVRANLVLPLIND------------AILWGLLCIHQCDSSRVWEQTEIDLLKQITNQFEI 617 Query: 210 AIXXXXXXXXXXXXNKDLENRVEKRTQQLAATNQSLRMEISERQKTEAALRHTNHTLQS 268 AI E+ Q+LA+ NQ +E ++ + L+ +H +++ Sbjct: 618 AIQQATL--------------YEQAQQELASKNQLFVQLTNELEQKKVLLKEIHHRVKN 662 Score = 93.6 bits (231), Expect = 1e-21 Identities = 66/215 (30%), Positives = 106/215 (49%), Gaps = 13/215 (6%) Query: 224 NKDLENRVEKRTQQLAATNQSLRMEISERQKTEAALRHTNHTLQSLIA---ASPRGIFTL 280 N +LE RVE RT QLA NQ L EI ++ + + L L L A +S I + Sbjct: 156 NNNLEKRVEDRTTQLAKINQQLEQEIEDKTRAKEDLEKNKDQLAQLAAIVESSQDAIISK 215 Query: 281 NLADQIQIWNPTAERIFGWTETEIIAH--PELLTSNILLEDYQQFKQKVLSGMVSPSLEL 338 L I WN +AER+FG+T E+I +L+ ++LE+ + + G + E Sbjct: 216 TLDGNITSWNESAERLFGYTAEEMIGSHITKLIPEELILEE-DLIAECIRQGQRINTYET 274 Query: 339 KCQKKDGSWIEIVLSAAPLLDSEENIAGLVAVVADITEQKRQAEQIRLLQSVV---VNTN 395 + Q+KDG+ I++ L+ +P+ D +N+ G +V DIT + +R Q + N + Sbjct: 275 QRQRKDGTKIDVALTISPIRDEHKNVVGASKIVRDITARLDVENALRESQYFIEKLANYS 334 Query: 396 DAVVITEAEPIDDPGPRILYVNEAFTKITGYTAEE 430 ++ +D + +YVN +I GYT EE Sbjct: 335 PQILYI----LDPIAWKNIYVNYQSFEILGYTPEE 365 >SYNE-PCC-01-000542 sll0821 Length = 1276 Score = 119 bits (298), Expect = 2e-29 Identities = 63/190 (33%), Positives = 107/190 (56%), Gaps = 12/190 (6%) Query: 22 WHRQNQERRRIEISIKQQTQRERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLI 81 W + + ++ ++Q+ +E+ + +I IR SLN+ +L +TV EV+ L DRV++ Sbjct: 903 WTEKLHDYVLLKERLQQRNVKEKLVLKIANKIRASLNINDILYSTVTEVRQFLNTDRVVL 962 Query: 82 YRIWQDGTGSAITESVNANYPSILGRTFSDEVFPVEYHQAYTKGKVRAINDIDQDDIEIC 141 ++ +G +TES N SI+ D F Y + Y +G+VRA++DI++ D+ C Sbjct: 963 FKFNSQWSGQVVTESHNDFCRSIINDEIDDPCFKGHYLRLYREGRVRAVSDIEKADLADC 1022 Query: 142 LADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPWQPWEVELMK 201 + ++ + VK+ LVVP++ + LWGLLI H+C R WQ +++L+ Sbjct: 1023 HKELLRHYQVKANLVVPVVFNEN------------LWGLLIAHECKTPRYWQEEDLQLLM 1070 Query: 202 QLANQVAIAI 211 +LA QVAIAI Sbjct: 1071 ELATQVAIAI 1080 Score = 61.6 bits (148), Expect = 5e-12 Identities = 49/192 (25%), Positives = 78/192 (40%), Gaps = 36/192 (18%) Query: 43 ERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQDGTGSAITESVN-ANY 101 E F+ + ++L L L V E + L VDRV IY+ DG+G + E+VN A Sbjct: 8 EDFLRNVINKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFASDGSGEVLAEAVNRAAL 67 Query: 102 PSILGRTFSDEVFPVEYHQAYTKGKVRAINDI----------------------DQDDIE 139 PS+LG F E P + + + D+ ++ Sbjct: 68 PSLLGLHFPVEDIPPQAREELGNQRKMIAVDVAHRRKKSHELSGRISPTEHSNGHYTTVD 127 Query: 140 ICLADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPWQPWEVEL 199 C ++ GV S L VP++Q + LWG++ H + R + E E Sbjct: 128 SCHIQYLLAMGVLSSLTVPVMQDQQ------------LWGIMAVHH-SKPRRFTEQEWET 174 Query: 200 MKQLANQVAIAI 211 M L+ +V++AI Sbjct: 175 MALLSKEVSLAI 186 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 87.8 bits (216), Expect = 7e-20 Identities = 63/226 (27%), Positives = 97/226 (42%), Gaps = 35/226 (15%) Query: 39 QTQRERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQDGTGSAITESVN 98 Q + + ++Q+ IRQSL+L +LN V V+ L VDR++IY+ E Sbjct: 155 QASQVKLLSQVIAQIRQSLDLSEILNNAVTAVQKFLFVDRLVIYQFHYSQPSLTPLEENQ 214 Query: 99 ANYP--------------------SILGRTFSDEVFP--VEYHQAYTKGKVRAINDIDQD 136 P ++LG ++ F Y Q Y KG V A++DI+ Sbjct: 215 IPAPRPRQQYGEVTYEARRSPEIDTMLGIMTENDCFSQVFSYEQKYLKGAVVAVSDIENH 274 Query: 137 -DIEICLADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPWQPW 195 CL ++++ V++KLV PI+ + LWGLLI HQC R W Sbjct: 275 YSSSYCLVGLLQRYQVRAKLVAPIIVEGQ------------LWGLLIAHQCHHPRQWLDS 322 Query: 196 EVELMKQLANQVAIAIXXXXXXXXXXXXNKDLENRVEKRTQQLAAT 241 E + Q+ +A+AI + E RV +RT++L T Sbjct: 323 EKNFLGQIGEHLAVAIVQSLLYSEVQKQKNNFEKRVIERTKELRDT 368 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 62.0 bits (149), Expect = 4e-12 Identities = 63/243 (25%), Positives = 117/243 (48%), Gaps = 34/243 (13%) Query: 243 QSLRMEISERQKTEAALRHTNHTLQSLIAASPRGIFTLNLADQIQ-----IWNPTAERIF 297 Q + +I+ ++ +A L+ N+ + L+ G+F +Q +WNP + I Sbjct: 656 QCIVHDITLQKTIQAQLQRENYFRRQLLEKMVEGLFVCYEVEQFPFLQFTVWNPMMKNIT 715 Query: 298 GWTETEI--IAHPELLTSNILLEDYQQFKQKVLS-GMVSPSLELKCQKKDGSWIEIVLSA 354 G+++ EI E L S+ ++ + + K ++ G+ E + ++DG+ + +S Sbjct: 716 GYSQEEINQCGWYETLYSHGQPQEAVRVRMKAVALGVDMVKEEWQIIRRDGALRTVEIST 775 Query: 355 APLLDSEENIAGLVAVVADITEQKRQAEQIRLLQSVVVNTNDAVV--ITEAEPIDDPGPR 412 A L + N ++AV+ DIT+QKRQ + ++ N+A + I E PI G R Sbjct: 776 A--LITSNNQTNILAVIQDITDQKRQLQ--------IIQNNEATLRCIVENLPIFF-GMR 824 Query: 413 IL------YVNEAFTKITGYTAEEMLGKTPRVLQGPKTSRTE----LDRVRQAISQWQSV 462 + Y+N +F +TGYT +EM + P + Q K R E L++ R + +W Sbjct: 825 TINFSNWYYINPSFESLTGYTPDEMY-EDPLLWQ--KIHREEYAENLEQARPNLGEWTIF 881 Query: 463 TVE 465 ++E Sbjct: 882 SME 884 Score = 56.6 bits (135), Expect = 2e-10 Identities = 55/220 (25%), Positives = 101/220 (45%), Gaps = 20/220 (9%) Query: 224 NKDLENRVEKRTQQLAATNQSLRMEISERQKTEAALRHTNHTLQSLIAASPRGIFTLNLA 283 N++LE +E+RT +L ++N L EI E+++ L ++L+ + I + + Sbjct: 511 NENLEVLIEERTSELESSNSQLLQEIIEKEQVSITLTTQEAKYRALVRDAGDAIILITID 570 Query: 284 DQIQIWNPTAERIFGWTETEIIAHPELLTSNILLEDY----QQFKQKVLSGMVSPSLELK 339 + N A + G+ + E+I H LL +L ++ + F + + +S +++ Sbjct: 571 FIVLEVNYRAVELSGYDQEELIGH-SLLDLRLLTPEFYAQQRHFWRTLKREQISQLTDVR 629 Query: 340 CQKKDGSWIEIVLSAAPLLDSEENIAGLVAVVADITEQKRQAEQI--------RLLQSVV 391 KK G I + +SA+ + + EN + + +V DIT QK Q+ +LL+ +V Sbjct: 630 LVKKSGELISVDISASVI--TYENHSIVQCIVHDITLQKTIQAQLQRENYFRRQLLEKMV 687 Query: 392 VNTNDAVVITEAEPIDDPGPRILYVNEAFTKITGYTAEEM 431 V E E P + N ITGY+ EE+ Sbjct: 688 ---EGLFVCYEVEQF--PFLQFTVWNPMMKNITGYSQEEI 722 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 60.5 bits (145), Expect = 1e-11 Identities = 52/223 (23%), Positives = 97/223 (43%), Gaps = 21/223 (9%) Query: 28 ERRRIEISIKQQTQRERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQD 87 +R++ + ++++ + + +I+Q IR+SL + T +V + V R LI+ + Sbjct: 570 DRKQAQDILQKKLNQILLMRKISQEIRRSLQPTLIFQTAARQVGNVFAVSRCLIHNYSEA 629 Query: 88 GTGSA--ITESVNANYPSILGRTFSDEVFPVEYHQAYTKG-KVRAINDIDQDDIEICLAD 144 T + E + + S+L + E Y +G + A+ D+DQD Sbjct: 630 TTLQVPVVAEYLGGQFTSLLAGEIAVEQ---AYDPTIIQGDRAMAVVDLDQDLNSTHTKA 686 Query: 145 FVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPWQPWEVELMKQLA 204 F ++F VKS L V +A+ G++ HQC R W E+EL++ +A Sbjct: 687 FYQRFQVKSFLAVRTSYQGKAN------------GIIALHQCDRQRVWTADEIELLEAIA 734 Query: 205 NQVAIAIXXXXXXXXXXXXNKDLENR---VEKRTQQLAATNQS 244 Q+ IA+ ++L + +EK T A N++ Sbjct: 735 EQMGIALAQAALLEKERERRRELAQKNLELEKATWAAEAANRA 777 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 46.2 bits (108), Expect = 2e-07 Identities = 45/166 (27%), Positives = 77/166 (46%), Gaps = 14/166 (8%) Query: 248 EISERQKTEAALRHTNHTLQSLIAASPRGIFTLNLADQIQIWNPTAERIFGWTETEIIAH 307 EIS + + + L T + +I +P GI L+ I + N + E++FG+++TE+I Sbjct: 254 EISIQNQQQKILVATESWYRQIIEYAPEGIMVLDAQGNIILANTSIEKLFGYSQTELIGQ 313 Query: 308 PELL--TSNILLEDYQQFKQKVLSGMVSP----SLELKCQKKDGSW--IEIVLSAAPLLD 359 L + +L + ++ G P E+ + DGS IE+ L++ P L Sbjct: 314 SIALLGLAELLQQSLHLLQEGEDVGPTCPLDQEEFEILGTRYDGSEFPIEVSLTSLPSLS 373 Query: 360 SEENIAGLVAVVADITEQKRQAEQI----RLLQSVVVNTNDAVVIT 401 E + A V DI+ ++ +QI LQSV+ + V IT Sbjct: 374 QRE--MNIFASVRDISARQEAQQQILRQREHLQSVLDSAPVGVAIT 417 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 42.7 bits (99), Expect = 2e-06 Identities = 32/162 (19%), Positives = 58/162 (35%), Gaps = 36/162 (22%) Query: 47 NQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQDGTGSAITESVNANYPSILG 106 N +RQ NL + V EV+ + DRV++YR ++ G I E + LG Sbjct: 141 NAALNRLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDENNHGDVIAEDKRDDMEPYLG 200 Query: 107 RTFSDEVFPVEYHQAYTKGKVRAINDIDQDDIEI------------------------CL 142 + + P + + +R I D+ + + C Sbjct: 201 LHYPESDIPQPARRLFIHNPIRVIPDVYGVAVPLTPAVNPSTNRAVDLTESILRSAYHCH 260 Query: 143 ADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITH 184 ++K GV + L + +++ +LWGL+ H Sbjct: 261 LTYLKNMGVGASLTISLIKDG------------HLWGLIACH 290 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.132 0.377 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 43,578 Number of Sequences: 78 Number of extensions: 1913 Number of successful extensions: 52 Number of sequences better than 1.0e-05: 8 Number of HSP's better than 0.0 without gapping: 5 Number of HSP's successfully gapped in prelim test: 3 Number of HSP's that attempted gapping in prelim test: 20 Number of HSP's gapped (non-prelim): 20 length of query: 481 length of database: 48,235 effective HSP length: 66 effective length of query: 415 effective length of database: 43,087 effective search space: 17881105 effective search space used: 17881105 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-000985 sll1475 (297 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-000985 sll1475 550 e-159 SYNE-PCC-01-001517 slr0222 167 4e-44 SYNE-PCC-01-000295 sll0474 122 2e-30 SYNE-PCC-01-000891 sll1353 108 3e-26 SYNE-PCC-01-002778 slr1969 102 1e-24 SYNE-PCC-01-001509 slr0210 101 3e-24 SYNE-PCC-01-001280 sll1871 101 3e-24 SYNE-PCC-01-001132 sll1672 99 2e-23 SYNE-PCC-01-002879 slr2104 97 6e-23 SYNE-PCC-01-000800 sll1228 96 2e-22 SYNE-PCC-01-002873 slr2098 95 3e-22 SYNE-PCC-01-001306 sll1905 91 4e-21 SYNE-PCC-01-001294 sll1888 81 4e-18 SYNE-PCC-01-002617 slr1759 80 8e-18 SYNE-PCC-01-001690 slr0473 72 2e-15 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 550 bits (1417), Expect = e-159 Identities = 280/297 (94%), Positives = 280/297 (94%) Query: 1 MRFNDSAVEVINYRKDGSEFWVEFSLVPVANKTGFYTHWIAVQRDXXXXXXXXXXXXXXX 60 MRFNDSAVEVINYRKDGSEFWVEFSLVPVANKTGFYTHWIAVQRD Sbjct: 1 MRFNDSAVEVINYRKDGSEFWVEFSLVPVANKTGFYTHWIAVQRDVTERRRTEEVRLALE 60 Query: 61 XXKELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKN 120 KELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKN Sbjct: 61 REKELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKN 120 Query: 121 MVQLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKA 180 MVQLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKA Sbjct: 121 MVQLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKA 180 Query: 181 LVDERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQIIFEVTDQGIGISPEDQKQIFE 240 LVDERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQIIFEVTDQGIGISPEDQKQIFE Sbjct: 181 LVDERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQIIFEVTDQGIGISPEDQKQIFE 240 Query: 241 PFHRGKNVRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICLKRYNHLPRA 297 PFHRGKNVRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICLKRYNHLPRA Sbjct: 241 PFHRGKNVRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICLKRYNHLPRA 297 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 167 bits (423), Expect = 4e-44 Identities = 91/227 (40%), Positives = 142/227 (62%), Gaps = 2/227 (0%) Query: 63 KELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMV 122 +EL+ K++F + SHEFRTPL++ + +LL + L +K+ + ++ IQNS + + Sbjct: 934 RELNEAKSQFVDIVSHEFRTPLTSIIGFGELL-SKYFDRLSTEKKQQYINNIQNSSQRLK 992 Query: 123 QLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQ-DTKAL 181 QL+DD+L I+R +A K+E ++L+ L IE + ++ F+ + D +L Sbjct: 993 QLIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPDEHSL 1052 Query: 182 VDERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQIIFEVTDQGIGISPEDQKQIFEP 241 VD RL+R IL N+LSNAIKYS G I + +S D E ++F+V D+GIGI +DQ+++FE Sbjct: 1053 VDVRLLRHILENILSNAIKYSAPGSTITLDISKDEEHLLFQVRDEGIGIPLQDQEKLFEA 1112 Query: 242 FHRGKNVRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICL 288 FHR NV +I GTGLGL + K+ V+ G+I + S +GTT+ I L Sbjct: 1113 FHRASNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKL 1159 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 122 bits (305), Expect = 2e-30 Identities = 81/242 (33%), Positives = 136/242 (56%), Gaps = 26/242 (10%) Query: 66 SRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLL 125 ++LK F + SHE RTPL++ L + L+N L+ K+ ++L ++NS ++++ L+ Sbjct: 415 TQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLN-GKQVQSLEIVENSGRHLLSLI 473 Query: 126 DDILIINRAEAGKLEFNPNWLDLKLLF-------QQFIEEIQLSVSDQYYFDFICSAQDT 178 +DIL +++ EAG+++ + N + L QQF + Q+++S + I + D Sbjct: 474 NDILDLSKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSE----IIPNLPDV 529 Query: 179 KALVDERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSE----------QIIFEVTDQGI 228 LVD+R + +L NLL+NAIK++P GG++ + L E Q+ F V D GI Sbjct: 530 --LVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLSFTVFDTGI 587 Query: 229 GISPEDQKQIFEPFHRGKNV--RNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVTI 286 GI + IFEPF + + R GTGLGL + KK V+LH GS+ + S +++G+ I Sbjct: 588 GIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKI 647 Query: 287 CL 288 + Sbjct: 648 TI 649 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 108 bits (269), Expect = 3e-26 Identities = 74/231 (32%), Positives = 123/231 (53%), Gaps = 17/231 (7%) Query: 66 SRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLL 125 +R+K+ F + SHE RTP++ L LL + L + + L+ I +S K ++ L+ Sbjct: 597 NRVKSEFLANISHEIRTPMNAILGFCDLLLQKD---LSLSQTKKYLNAIGSSSKILLALI 653 Query: 126 DDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKALV--D 183 DDIL I++ EAGKL + +DL+++ ++ + + I + + D Sbjct: 654 DDILDISKIEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFD 713 Query: 184 ERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQI---------IFEVTDQGIGISPED 234 +R IL NL+ NA+K++ G Q+ I + ++ Q+ EVTD GIGI+PED Sbjct: 714 AVRLRQILFNLVGNALKFTEEG-QVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPED 772 Query: 235 QKQIFEPF--HRGKNVRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTT 283 Q +IF+ F +G++ R GTGLGL + ++ L G I L S + +G+T Sbjct: 773 QAKIFDVFTQSQGQSTRKYGGTGLGLTITRRLTALLGGEISLSSRLGEGST 823 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 102 bits (255), Expect = 1e-24 Identities = 72/235 (30%), Positives = 123/235 (52%), Gaps = 7/235 (2%) Query: 68 LKTRFFSMASHEFRTPLST--ALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLL 125 LK++F + SHE RTPL++ L+A L A L P K+ L IQ + K ++ + Sbjct: 378 LKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQI 437 Query: 126 DDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQ-LSVSDQYYF--DFICSAQDTKALV 182 + I+ +++ E+G+ N L L Q I + +++ Q D+ + + Sbjct: 438 NSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCA 497 Query: 183 DERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQIIFEVTDQGIGISPEDQKQIFEPF 242 D+ + IL+ LL+NA+K++P G + + + +S Q IF+V D GIGI+ + +FE F Sbjct: 498 DQERLDQILTQLLNNALKFTPAEGTVILRIWKESNQAIFQVEDTGIGINEQQLPVLFEAF 557 Query: 243 H-RGKNVRNITGT-GLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICLKRYNHLP 295 G + + T G+GL + K+ V+LH G I ++S+ QGT T + + N P Sbjct: 558 KVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIPQQNFPP 612 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 101 bits (251), Expect = 3e-24 Identities = 66/214 (30%), Positives = 113/214 (52%), Gaps = 5/214 (2%) Query: 78 HEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLLDDILIINRAEAG 137 HEFRTPL+ + A++L + L+P K+ + + NS ++++ L++D L +++ +A Sbjct: 195 HEFRTPLTAIIGFARMLRDELYGKLNP-KQHQYVQGTLNSAEHLLSLVNDFLDLSKIDAR 253 Query: 138 KLEFNPNWLDLKLLFQQFIEEIQLSVSD-QYYFDFICSAQDTKALVDERLVRSILSNLLS 196 E + ++ L I +Q + Q + VD+R + IL NLLS Sbjct: 254 CEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYVDQRRWKQILINLLS 313 Query: 197 NAIKYSPGGGQIKIALSLDSEQIIFEVTDQGIGISPEDQKQIFEPFHRGKNVRNIT--GT 254 N +K++P G + +A+ + +IF V D GIGI PEDQ+ +F+PF + + + GT Sbjct: 314 NGVKFTPKGS-VTLAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISHPPSFAEKGT 372 Query: 255 GLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICL 288 GLGL ++++ LH G I L S G+ + L Sbjct: 373 GLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAIL 406 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 101 bits (251), Expect = 3e-24 Identities = 73/235 (31%), Positives = 123/235 (52%), Gaps = 7/235 (2%) Query: 69 KTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLLDDI 128 K+ F + SHE RTPL+ + +++L E LD ++ +L +I S K+++ L++D+ Sbjct: 438 KSIFLANMSHELRTPLNAIIGYSEMLIE-EAEDLDSEELVPDLDKILRSGKSLLALINDL 496 Query: 129 LIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQ-LSVSDQYYFDFICSAQDTKALVDERLV 187 L I++ EAGK+E +LK L ++ I L ++ + S + + D + Sbjct: 497 LDISKIEAGKMELYLETFNLKELIAGILDTISPLLKNNNNKLEVEISLESEEVYGDLIKL 556 Query: 188 RSILSNLLSNAIKYSPGG--GQIKIALSLDSEQ-IIFEVTDQGIGISPEDQKQIFEPFHR 244 R + NLLSNA K++ G I +D + + F+V D GIG++ E ++F+PF + Sbjct: 557 RQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGIGLTEEQMSKLFQPFTQ 616 Query: 245 GKN--VRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICLKRYNHLPRA 297 + R GTGLGL + +K + G I L S + G++ TI L +Y L A Sbjct: 617 ADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKLPKYAQLNSA 671 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 98.6 bits (244), Expect = 2e-23 Identities = 73/243 (30%), Positives = 121/243 (49%), Gaps = 23/243 (9%) Query: 66 SRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLL 125 ++ K+ F + SHE R+PL+ + +QL+ ++ P ++ N IQ S + ++ L+ Sbjct: 362 AKAKSTFVANMSHELRSPLNAIIGFSQLMLRTKNL---PMEQYENAGIIQRSGEYLLNLI 418 Query: 126 DDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKALV--D 183 ++IL ++ EAGK N + DL LL + + L +++ D V D Sbjct: 419 NNILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRDHDLPRYVYGD 478 Query: 184 ERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQ-----------------IIFEVTDQ 226 E +R IL NLLSNAIK++ G + + ++EQ + F + D Sbjct: 479 EIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDT 538 Query: 227 GIGISPEDQKQIFEPFHRGKNVRNIT-GTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVT 285 G GIS + +FE F + ++ RN GTGLGL + ++ + L G I + S VDQGTT + Sbjct: 539 GKGISEVELSHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFS 598 Query: 286 ICL 288 + Sbjct: 599 FSI 601 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 97.1 bits (240), Expect = 6e-23 Identities = 71/235 (30%), Positives = 130/235 (55%), Gaps = 18/235 (7%) Query: 66 SRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRN-LHRIQNSVKNMVQL 124 ++ K+ F + SHE RTP++ + ++L+ +++ + RN L ++Q + + ++ + Sbjct: 455 TKAKSEFLANMSHEIRTPMNAIIGMSELVLQTDLT-----SQQRNYLQKVQYAGELLLGI 509 Query: 125 LDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQ-YYFDFICSAQDTKALVD 183 +++IL ++ EAGKLE ++ + + + + +F + LV Sbjct: 510 INNILDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVG 569 Query: 184 ERL-VRSILSNLLSNAIKYSPGGGQIKIA---LSLDSEQ--IIFEVTDQGIGISPEDQKQ 237 +RL + IL NL +NA+K++ G+I I L ++EQ + F VTD GIG++P+ Q + Sbjct: 570 DRLRLSQILINLGNNAVKFT-NQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSK 628 Query: 238 IFEPFHRGK--NVRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTT--VTICL 288 +F+ F++G+ R GTGLGL ++K +L G I L+S V QG+T T+CL Sbjct: 629 LFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCL 683 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 95.5 bits (236), Expect = 2e-22 Identities = 67/230 (29%), Positives = 122/230 (53%), Gaps = 17/230 (7%) Query: 66 SRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLL 125 +R KT F + SHE RTPL+ + +QLL L P + + ++ I S +++++L+ Sbjct: 160 NRAKTEFLASISHELRTPLNAIIGFSQLLHRDPS--LAPHRPTLDI--INRSGEHLLELI 215 Query: 126 DDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKALV--D 183 +DIL +++ EAG+ N +D L QL ++ + + + + D Sbjct: 216 NDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTD 275 Query: 184 ERLVRSILSNLLSNAIKYSPGGG---QIKIALSLDSEQ-------IIFEVTDQGIGISPE 233 +R +L NLL+NAIK++ GG ++K + +++ + F V+D G GI+ Sbjct: 276 GGKLRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAH 335 Query: 234 DQKQIFEPFHRGKN-VRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGT 282 + ++F PF + + +++ G GLGL +++K V L G I ++S VDQG+ Sbjct: 336 EMDELFVPFAQTETGLKSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQGS 385 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 94.7 bits (234), Expect = 3e-22 Identities = 75/245 (30%), Positives = 123/245 (50%), Gaps = 18/245 (7%) Query: 63 KELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMV 122 +E SR+K F + SHE RTP++ + L ++ L P +R LH+I+ S ++++ Sbjct: 521 EEASRIKADFLANMSHEIRTPMNAVIGMTHLALKTD---LTPRQREY-LHKIRFSGQHLL 576 Query: 123 QLLDDILIINRAEAGKLEFNPNWLDLKLLFQQ---FIEEIQLSVSDQYYFDFICSAQDTK 179 +++DIL ++ EAGKL DL + I E + + FD I Sbjct: 577 GVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFD-IDRNLPRH 635 Query: 180 ALVDERLVRSILSNLLSNAIKYSPGGGQIKIALSL----DSEQIIF-EVTDQGIGISPED 234 + D + IL N +NA+K++ G I I + L D + +++ V D GIGI PE Sbjct: 636 FIGDPLRLGQILINYANNAVKFTEQG-DITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEH 694 Query: 235 QKQIFEPFHRGKN--VRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTT--VTICLKR 290 +F F + + RN GTGLGL + K+ +L G + ++S QG+T +CL++ Sbjct: 695 IANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVCLQK 754 Query: 291 YNHLP 295 N +P Sbjct: 755 SNVIP 759 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 90.9 bits (224), Expect = 4e-21 Identities = 65/222 (29%), Positives = 111/222 (50%), Gaps = 16/222 (7%) Query: 66 SRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLL 125 +R K+ F + SHE RTP++ + LL ++++ ++ I+NS + ++ L+ Sbjct: 318 NRSKSEFLATMSHEIRTPMNAIIGMTGLLLDTDLT----TQQKYFAQTIRNSGETLLTLI 373 Query: 126 DDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYY--FDFICSAQDTKALVD 183 +DIL ++ EAGKL+ DL ++ ++ + S + + D Sbjct: 374 NDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGD 433 Query: 184 ERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSE-------QIIFEVTDQGIGISPEDQK 236 +R IL NLLSNA+K++ G Q+K+ + + QI F V D GIGI+P Q+ Sbjct: 434 VTRLRQILVNLLSNAVKFTEAG-QVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQ 492 Query: 237 QIFEPFHRGKN--VRNITGTGLGLMVAKKCVDLHSGSILLKS 276 +F+ F +G + R GTGLGL + + L G+I +S Sbjct: 493 ALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAES 534 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 81.3 bits (199), Expect = 4e-18 Identities = 66/240 (27%), Positives = 124/240 (51%), Gaps = 21/240 (8%) Query: 63 KELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMV 122 +E SRLK+ F + +HE RTPL+ + +L+ + ++A + +K + S ++ Sbjct: 188 EEASRLKSEFLASTTHELRTPLNGIIGFLRLILD-DMADSEAEKH-EFVEEAYQSALLLL 245 Query: 123 QLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKALV 182 L++DIL + + EAG++ +D + Q E L + F +A + L+ Sbjct: 246 NLINDILDLAKIEAGRVGIELEVVDFSEVLQA-TENFALPQAQNKGLSFNLTAPNQGPLL 304 Query: 183 ---DERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQIIFE-----------VTDQGI 228 ++R + ++ N++ NAIK++ GG I +A+ + +++E V D GI Sbjct: 305 VYGNQRWLLQVMLNIVGNAIKFTHEGG-ITVAVEVMPRTVLWEGVQKPGLLKVSVGDTGI 363 Query: 229 GISPEDQKQIFEPFHR--GKNVRNITGTGLGLMVAKKCVDLHSGSILLKSAVD-QGTTVT 285 G+S E Q ++F+ F + G + + GTGLGL++++K V+ G + S + G+TVT Sbjct: 364 GVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGSTVT 423 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 80.1 bits (196), Expect = 8e-18 Identities = 61/243 (25%), Positives = 114/243 (46%), Gaps = 24/243 (9%) Query: 66 SRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLL 125 +R K F +M SHE RTP++ + +LL +++ D + I+ S + ++ ++ Sbjct: 775 NRAKGEFLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLD----YVQTIRQSGETLLTII 830 Query: 126 DDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEI-QLSVSDQYYFDFICSAQ-DTKALVD 183 +DIL ++ EA KL +L+ L + +E ++ + + Q + L D Sbjct: 831 NDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGD 890 Query: 184 ERLVRSILSNLLSNAIKYSPGGGQIK----------------IALSLDSEQIIFEVTDQG 227 + +R ILSNL+ NA+K++ G + + L S +I F + D G Sbjct: 891 QVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTG 950 Query: 228 IGISPEDQKQIFEPFHR--GKNVRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVT 285 IGI + Q ++F+ F + R GTGLGL+++++ + G + + S G+ Sbjct: 951 IGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFR 1010 Query: 286 ICL 288 C+ Sbjct: 1011 FCI 1013 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 72.0 bits (175), Expect = 2e-15 Identities = 58/214 (27%), Positives = 100/214 (46%), Gaps = 6/214 (2%) Query: 71 RFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLLDDILI 130 +F +ASH+ + PL+ QLLE LD D + + V M L+DDIL Sbjct: 531 KFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDEDAKDF-IDFAVTGVSLMQTLIDDILT 589 Query: 131 INRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKALVDERLVRSI 190 + + + + D++ + + + ++ + + + S A D+ + + Sbjct: 590 YAKVDTQYAQLT--FTDVQEVVDKALANLKQRIEESGAEIEVGSMPAVMA--DQIQLMQV 645 Query: 191 LSNLLSNAIKYSPGGG-QIKIALSLDSEQIIFEVTDQGIGISPEDQKQIFEPFHRGKNVR 249 NL++N IK++ +IKI + +F V D GIGI P+ ++IF F R Sbjct: 646 FQNLIANGIKFAGDKSPKIKIWGDRQEDAWVFAVQDNGIGIDPQFFERIFVIFQRLHTRD 705 Query: 250 NITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTT 283 GTG+GL + KK ++ H G I L+S +G+T Sbjct: 706 EYKGTGMGLAICKKIIEGHQGQIWLESNPGEGST 739 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.136 0.393 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 25,267 Number of Sequences: 78 Number of extensions: 1016 Number of successful extensions: 65 Number of sequences better than 1.0e-05: 15 Number of HSP's better than 0.0 without gapping: 5 Number of HSP's successfully gapped in prelim test: 10 Number of HSP's that attempted gapping in prelim test: 14 Number of HSP's gapped (non-prelim): 18 length of query: 297 length of database: 48,235 effective HSP length: 62 effective length of query: 235 effective length of database: 43,399 effective search space: 10198765 effective search space used: 10198765 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 92 (40.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001039 sll1544 (228 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001039 sll1544 442 e-127 SYNE-PCC-01-000608 sll0921 82 1e-18 SYNE-PCC-01-001160 sll1708 77 5e-17 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 70 6e-15 SYNE-PCC-01-001075 sll1592 68 3e-14 SYNE-PCC-01-001575 slr0312 67 6e-14 SYNE-PCC-01-000511 sll0782 49 1e-08 SYNE-PCC-01-002951 ssl0564 42 2e-06 SYNE-PCC-01-002731 slr1909 42 2e-06 SYNE-PCC-01-002635 slr1783 41 4e-06 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 442 bits (1136), Expect = e-127 Identities = 228/228 (100%), Positives = 228/228 (100%) Query: 1 MEFDPDSLVFNARYDLFQLLVNHFNVIACLYPRLFAVSVARISSQRPNKKKVKIFTLQSE 60 MEFDPDSLVFNARYDLFQLLVNHFNVIACLYPRLFAVSVARISSQRPNKKKVKIFTLQSE Sbjct: 1 MEFDPDSLVFNARYDLFQLLVNHFNVIACLYPRLFAVSVARISSQRPNKKKVKIFTLQSE 60 Query: 61 ALTYFEQQPEPLVVVICQRLEDGSGLDLLKQLKAHARSPQCLLLLLNDHAAIVEEAQQYG 120 ALTYFEQQPEPLVVVICQRLEDGSGLDLLKQLKAHARSPQCLLLLLNDHAAIVEEAQQYG Sbjct: 61 ALTYFEQQPEPLVVVICQRLEDGSGLDLLKQLKAHARSPQCLLLLLNDHAAIVEEAQQYG 120 Query: 121 ADAIFLESSLGNGEINLAVECLLQGRTYIDSRLEAIADYRKSQKDELTQREVAILRLVAE 180 ADAIFLESSLGNGEINLAVECLLQGRTYIDSRLEAIADYRKSQKDELTQREVAILRLVAE Sbjct: 121 ADAIFLESSLGNGEINLAVECLLQGRTYIDSRLEAIADYRKSQKDELTQREVAILRLVAE 180 Query: 181 GKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIAGLREGYLT 228 GKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIAGLREGYLT Sbjct: 181 GKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIAGLREGYLT 228 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 82.0 bits (201), Expect = 1e-18 Identities = 58/175 (33%), Positives = 92/175 (52%), Gaps = 17/175 (9%) Query: 67 QQPEPLVVVICQRLEDGSGLDLLKQLKAHARSPQC--LLLLLNDHAAIVEEAQQYGADAI 124 QQ P VV+I L D +G+D+ +QLK + QC ++L LND V A GADA Sbjct: 46 QQTRPDVVIIDIGLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAY 105 Query: 125 FLESSLGNGEINLAVECLLQGRTYIDSRLEAI--------------ADYRKSQKDELTQR 170 ++ S I A++ G +ID + I + R S LT+R Sbjct: 106 CMKDSRTELLIE-AIQATHGGFAWIDPAIARIVLAHAPGAEPSEPSSPSRTSLSYGLTER 164 Query: 171 EVAILRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIAGLREG 225 E+ +L+L+ +G +N++I ++L++ TV+ +V+ I+ KL A DRT AA+ +R G Sbjct: 165 ELEVLQLIVDGCSNADIAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSG 219 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 77.0 bits (188), Expect = 5e-17 Identities = 54/165 (32%), Positives = 89/165 (53%), Gaps = 13/165 (7%) Query: 71 PLVVVICQRLEDGSGLDLLKQLKAHARSPQCLLLLLNDHAAIVE--EAQQYGADAIFLES 128 P ++V+ L G++ KQ+K SPQ +++L H E A GADA ++ Sbjct: 63 PDLIVMDIGLPGLDGIEATKQIKQ--TSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKG 120 Query: 129 SLGNGEINLAVECLLQGRTYIDSRLEAIA------DYRKSQKD--ELTQREVAILRLVAE 180 + I LA+ G TY+D ++ + + Q D L++RE+ +L+L+ E Sbjct: 121 ATLERLI-LAIAAAQDGATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVE 179 Query: 181 GKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIAGLREG 225 GK+N EI Q L+L+++T++ +V+ IM KL+ DR AA+ LR G Sbjct: 180 GKSNQEIAQTLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSG 224 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 70.1 bits (170), Expect = 6e-15 Identities = 47/165 (28%), Positives = 83/165 (50%), Gaps = 24/165 (14%) Query: 68 QPEPLVVVICQRLEDGSGLDLLKQLKAHARSPQCLLLLLNDHAAIVEEAQQYGADAIFLE 127 Q P V+++ ++ SGLD LK L+A + L+L ++D + GAD L+ Sbjct: 48 QTSPDVIILDLNMKGLSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLK 107 Query: 128 SS-----------LGNGEINLA--VECLLQGRTYIDSRLEAIADYRKSQKDELTQREVAI 174 + + GE+ L+ ++ LL RT+ D+ L D LT RE+ + Sbjct: 108 DTEPDTLLEQIKRIAQGEVILSDSIKNLLLERTHEDNPL-----------DSLTDREMGV 156 Query: 175 LRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAI 219 LR +A G +N +I +L ++ TV+ +++ ++RKLN R +A + Sbjct: 157 LRQIATGLSNKQIAAQLFISEETVKVHIRNLLRKLNVHSRVAATV 201 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 67.8 bits (164), Expect = 3e-14 Identities = 62/211 (29%), Positives = 96/211 (45%), Gaps = 31/211 (14%) Query: 34 LFAVSVARISSQRPNKKKVKIFTLQSEALTYFEQQPEPLVVVICQRLEDGSGLDLLKQLK 93 LF + + SQ P A+ Y QQ VV++ L G++ Q+K Sbjct: 18 LFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFD-VVILDVGLPGIGGIEACHQIK 76 Query: 94 AHARSPQCLLLLLNDHAA-------IVEEAQQYGADAIFLESSLGNGEINLAVECLLQGR 146 PQ +L+L H+ I +AQ Y + E+ + LA+ + G Sbjct: 77 KI--HPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLV------LAIRSVAAGA 128 Query: 147 TYIDS----RLEAIADYRKSQ-----------KDELTQREVAILRLVAEGKTNSEIGQEL 191 + D+ ++ + S ++ LT+RE+ IL LVA+GK+N EI EL Sbjct: 129 FWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKSNQEIADEL 188 Query: 192 HLASSTVREYVQTIMRKLNARDRTSAAIAGL 222 ++A TVR +V TI+RKL RDRT AA+ + Sbjct: 189 YIAPGTVRVHVHTILRKLEVRDRTQAALLAI 219 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 66.6 bits (161), Expect = 6e-14 Identities = 48/195 (24%), Positives = 98/195 (50%), Gaps = 3/195 (1%) Query: 34 LFAVSVARISSQRPNKKKVKIFTLQSEALTYFEQQPEPLVVVICQRLEDGSGLDLLKQLK 93 +F +A I ++ P+ + + +A+ FE+ +P V ++ R+ + G+ + + Sbjct: 17 IFRQGLATIINRDPDMQVIAQAENGEQAIALFEEH-QPDVTLMDLRMPEVEGVAAISAIC 75 Query: 94 AHARSPQCLLLLLNDHAAIVEEAQQYGADAIFLESSLGNGEINLAVECLLQGRTYIDSRL 153 A + + ++L D + Q GA L+ + + +N A+ + +G+ YI + Sbjct: 76 AIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLN-AIRTVHRGQKYIPPDV 134 Query: 154 EAIADYRKSQKDELTQREVAILRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARD 213 A R S EL++RE+ +L +A+G +N++I L + TV+ +V I+ KL+ D Sbjct: 135 GAKLVQRLSNP-ELSERELEVLGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGD 193 Query: 214 RTSAAIAGLREGYLT 228 RT A I ++ G ++ Sbjct: 194 RTQAVIVAVKRGIVS 208 >SYNE-PCC-01-000511 sll0782 Length = 369 Score = 49.3 bits (116), Expect = 1e-08 Identities = 24/67 (35%), Positives = 42/67 (62%) Query: 161 KSQKDELTQREVAILRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIA 220 K K L++RE I+ L+A+G + +I +ELH++ STV+ +V + KLNA++R A Sbjct: 303 KLNKHLLSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQ 362 Query: 221 GLREGYL 227 +G++ Sbjct: 363 ATVQGFI 369 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 41.6 bits (96), Expect = 2e-06 Identities = 22/59 (37%), Positives = 32/59 (54%) Query: 167 LTQREVAILRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIAGLREG 225 L+ RE+ IL LVA G TN E+ + L ++ TV +V I+ K N +R L+ G Sbjct: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWG 70 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 41.6 bits (96), Expect = 2e-06 Identities = 31/103 (30%), Positives = 49/103 (47%), Gaps = 5/103 (4%) Query: 120 GADAIFLESSLGNGEINLAVE-CLLQGRTYIDSRLEAIADYRKSQ--KD-ELTQREVAIL 175 GAD I++ E+ V+ CL Q + + D + Q +D ELT E ++ Sbjct: 103 GAD-IYMAKPFEPEELAAQVQSCLRQADRLLQHNNHPLEDNARVQVARDVELTPTETKVI 161 Query: 176 RLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAA 218 +LVA+G N EI L ++ TV +V ++ K +RT A Sbjct: 162 QLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELA 204 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 40.8 bits (94), Expect = 4e-06 Identities = 47/200 (23%), Positives = 77/200 (38%), Gaps = 27/200 (13%) Query: 51 KVKIFTLQSEALTYFEQQPEPLVVVICQRLEDGSGLDLLKQLKAHARSPQCLLLLLNDHA 110 KV + +EA Y Q P +V+ + G L++L+ AR ++ L Sbjct: 82 KVDLAANATEAWDYL-QHHLPALVISDIMMPQVDGYQFLQKLREDARFQSLPVVFLTARG 140 Query: 111 AIVEEAQQY--GADAIFLESSLGNGEINLAVECLLQGRTYID------SRLEAIADYRKS 162 + Q Y G DA FL E+ V LL + ++L+ I ++ Sbjct: 141 MTGDRIQGYQTGCDA-FLSKPFDPDELEAIVRNLLARQQASSDAGSESAKLQEIYQEIRA 199 Query: 163 QKDEL-----------------TQREVAILRLVAEGKTNSEIGQELHLASSTVREYVQTI 205 K+++ T RE ++L LV++G N EI +L + V +YV + Sbjct: 200 LKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVSQGLMNKEIAAQLKTSVRNVEKYVSRL 259 Query: 206 MRKLNARDRTSAAIAGLREG 225 K RT L+ G Sbjct: 260 FTKTGTNSRTELVRFALQHG 279 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.320 0.136 0.372 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 19,618 Number of Sequences: 78 Number of extensions: 775 Number of successful extensions: 20 Number of sequences better than 1.0e-05: 10 Number of HSP's better than 0.0 without gapping: 9 Number of HSP's successfully gapped in prelim test: 1 Number of HSP's that attempted gapping in prelim test: 8 Number of HSP's gapped (non-prelim): 10 length of query: 228 length of database: 48,235 effective HSP length: 60 effective length of query: 168 effective length of database: 43,555 effective search space: 7317240 effective search space used: 7317240 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001071 sll1583 (562 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001071 sll1583 859 0.0 SYNE-PCC-01-000727 sll1120 46 3e-07 MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil pro... 45 8e-07 SYNE-PCC-01-000943 sll1424 43 3e-06 SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 42 4e-06 >SYNE-PCC-01-001071 sll1583 Length = 562 Score = 859 bits (2220), Expect = 0.0 Identities = 462/562 (82%), Positives = 462/562 (82%) Query: 1 MTPLELSYPLSGLVLALGSGIYVWNSRRALEKKLAQSQPSDQPPTLIAGSGTPAVKEVAP 60 MTPLELSYPLSGLVLALGSGIYVWNSRRALEKKLAQSQPSDQPPTLIAGSGTPAVKEVAP Sbjct: 1 MTPLELSYPLSGLVLALGSGIYVWNSRRALEKKLAQSQPSDQPPTLIAGSGTPAVKEVAP 60 Query: 61 ENDGESPEAVIHAKGKLRRLEKDLQSVQASLENALAERNQLTENYQAQEKMVAALQHQLA 120 ENDGESPEAVIHAKGKLRRLEKDLQSVQASLENALAERNQLTENYQAQEKMVAALQHQLA Sbjct: 61 ENDGESPEAVIHAKGKLRRLEKDLQSVQASLENALAERNQLTENYQAQEKMVAALQHQLA 120 Query: 121 HYDDIQSEKFVGXXXXXXXXXXXXXXXSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSD 180 HYDDIQSEKFVG SDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSD Sbjct: 121 HYDDIQSEKFVGLQKLNQELLQENTNLSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSD 180 Query: 181 QLSYVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQEL 240 QLSYVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQEL Sbjct: 181 QLSYVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQEL 240 Query: 241 XXXXXXXXXXXXXXENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELALANAELK 300 ENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELALANAELK Sbjct: 241 QTARQQSQSAQTQAENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELALANAELK 300 Query: 301 VKLETTQAEGDRLKTEKKEQAAALQSAQGQVTXXXXXXXXXXXXXXXXXGEPPSEVPEKT 360 VKLETTQAEGDRLKTEKKEQAAALQSAQGQVT GEPPSEVPEKT Sbjct: 301 VKLETTQAEGDRLKTEKKEQAAALQSAQGQVTQLQQELAALQENLAKAKGEPPSEVPEKT 360 Query: 361 KAVATXXXXXXXXXXXXXXXXXXXKQESPKSVQXXXXXXXXXXXXXXXXXXXXXXXXXXX 420 KAVAT KQESPKSVQ Sbjct: 361 KAVATAPAQEAPVVSPSPPVTVEVKQESPKSVQAEKVEPEPEPTPVPPAAQATKAPASPA 420 Query: 421 XXXXXXXXDEVLDQEEKQVKAVEKTEPPRENKTVAPVATSEDVAPTVETETITDPVATVP 480 DEVLDQEEKQVKAVEKTEPPRENKTVAPVATSEDVAPTVETETITDPVATVP Sbjct: 421 KKSTAKAVDEVLDQEEKQVKAVEKTEPPRENKTVAPVATSEDVAPTVETETITDPVATVP 480 Query: 481 SNEEGAHPLAEKKVVILGTLNAMNREEAKTRLQNVGAECTGTPSGKTDYIVVGKAPGAKL 540 SNEEGAHPLAEKKVVILGTLNAMNREEAKTRLQNVGAECTGTPSGKTDYIVVGKAPGAKL Sbjct: 481 SNEEGAHPLAEKKVVILGTLNAMNREEAKTRLQNVGAECTGTPSGKTDYIVVGKAPGAKL 540 Query: 541 KKAQKLGIAQLSEAQFLELLGD 562 KKAQKLGIAQLSEAQFLELLGD Sbjct: 541 KKAQKLGIAQLSEAQFLELLGD 562 >SYNE-PCC-01-000727 sll1120 Length = 1200 Score = 45.8 bits (107), Expect = 3e-07 Identities = 61/269 (22%), Positives = 109/269 (40%), Gaps = 49/269 (18%) Query: 76 KLRRLEKDLQSVQASLENALAERNQLTENYQAQEKMVAALQHQLAHYDDIQSEKFVGXXX 135 +LR+ +D+Q VQ E L ER + Q+ M Q + A Q+E+ + Sbjct: 703 QLRQRLQDIQQVQGRNEELLLERT-VRSRQLTQQLMEMRQQQREAQLHGEQTERDIARL- 760 Query: 136 XXXXXXXXXXXXSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSDQLSYVEQNQAKAIEQ 195 S + Q + + KL +L + QQ L +EQ A A +Q Sbjct: 761 ------------SQQQTQINQQQINQQQKLAELQQNLALLQQ---SLPPLEQQLASAQQQ 805 Query: 196 RLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQELXXXXXXXXXXXXXXE 255 A + Q+ + Q Q + ++++ Q++ L D ++ Sbjct: 806 LTALETSQTHQQWQTIQIQIRTVEAEYQRQLQALRQGEDHLK------------------ 847 Query: 256 NLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELALANAELKVKLETTQA------- 308 +LQ + RL ++ Q Q + +Q A+ L + Q++L +A AE+ ++TT+A Sbjct: 848 DLQNSSQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEAQLAKLSE 907 Query: 309 -------EGDRLKTEKKEQAAALQSAQGQ 330 E DRL+T+ + + Q Q Q Sbjct: 908 KLGSTKQERDRLETQLNQLRSQQQEQQWQ 936 Score = 44.7 bits (104), Expect = 8e-07 Identities = 66/297 (22%), Positives = 122/297 (41%), Gaps = 49/297 (16%) Query: 65 ESPEAVIHAKGKLRRLEKDLQSVQASLENALAERNQLTENYQAQEKMVAALQH--QLAHY 122 ++ E + + + R + ++ +LE A+R Q E YQA + V Q ++ Y Sbjct: 195 KTKETLTEVQDREERCQIIATELERTLERLAADR-QKAEKYQALRQQVQEKQGWAKVIQY 253 Query: 123 DDIQSEKFVGXXXXXXXXXXXXXXXSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSDQL 182 ++ ++ S +++QA+++ R + +Q T ++L+ Q+ Sbjct: 254 KAVEQQR-----QKLWGQLERDREQSQQIQQALDQ----RSQAIQTQQ--TELEKLNAQV 302 Query: 183 SYVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQE-LX 241 + + + A+ +LA+Q K + + +Q + Q + ++QV Q+ AE Q QQ+ L Sbjct: 303 KALGEEEQLAVAAQLATQ-KAQRDQLQQRYNDGDRQITNHQQQVGQIQAEISQSQQQFLH 361 Query: 242 XXXXXXXXXXXXXENLQAALDRLGQQEEQ--------------WQGERSQLTAKLNQL-- 285 L+AA+ QQ EQ W E++QL+ +NQL Sbjct: 362 IQQEKSFHNTQTLPQLEAAVQTSQQQLEQLRHQAQAIASASEAWVQEQTQLSRTVNQLQD 421 Query: 286 ------------EEAQKELALANAELKVKLETTQAEGDRLKTEKKEQAAALQSAQGQ 330 EE Q++L AEL L E E+K+ A + QG+ Sbjct: 422 ELIPQRSQLAQLEERQQQLLTNLAELTPLLTKVSVE-----LEEKQFAQGQFNFQGE 473 >MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] Length = 1033 Score = 44.7 bits (104), Expect = 8e-07 Identities = 65/299 (21%), Positives = 113/299 (37%), Gaps = 42/299 (14%) Query: 30 LEKKLAQSQPSDQPPTL------IAGSGTPAVKEVAPENDGESPEAVIHAKGK---LRRL 80 LE++LA+ DQ P L + T +E+ E + + ++ L RL Sbjct: 377 LEEQLAKPLQYDQSPVLQERIELLQNQNTNLTQEL-----NELQQKLFKSQNNSLLLARL 431 Query: 81 EKDLQSVQASLENALAERNQLTENYQAQEKMVAALQHQLAHYDDIQSEKFVGXXXXXXXX 140 E++ ++++ L+N L E NQL + Q + + +H L +Q E++ Sbjct: 432 EEENRTLKQHLQNNLPEANQLNFVLEKQLEQLQQDKHSLT----LQIEQYKFDSKKHQEQ 487 Query: 141 XXXXXXXSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSDQLSYVEQ-----------NQ 189 + EV + +L+ + N L ++ + + N Sbjct: 488 LALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDENTKYRNL 547 Query: 190 AKAIE-QRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQELXXXXXXXX 248 K E R S KL + HEQ A + Q EQ+ QL + + +EL Sbjct: 548 LKQYELMRADSDAKLKELEHEQHLAHQHHQ-----EQLAQLQRHNEALVKELDQVKATNF 602 Query: 249 XXXXXXENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELALANAELKVKLETTQ 307 L A QQ+ + + S L A L EE + L + N+EL+ +L + Sbjct: 603 -------ELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLE 654 >SYNE-PCC-01-000943 sll1424 Length = 491 Score = 42.7 bits (99), Expect = 3e-06 Identities = 50/223 (22%), Positives = 99/223 (44%), Gaps = 19/223 (8%) Query: 75 GKLRRLEKDLQSVQASLENALAE----RNQLTENYQAQEKMVAALQHQLAHYDDIQ--SE 128 G L K L+ L++ LA+ + +L + QA+E++ + L +Q S Sbjct: 62 GILFTFSKSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSR 121 Query: 129 KFVGXXXXXXXXXXXXXXXSDRLKQAVNEVAETRPKL-VQLNSLVTRNQQLSDQLSYVEQ 187 + S L+Q V ++ R +L Q +SL+ + +L Q+ +Q Sbjct: 122 ELNRNYTKALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDSLLAESSELQSQVKLRDQ 181 Query: 188 NQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQELXXXXXXX 247 +K ++R+A QEK+ ++ EQ Q+ E++ L A+R Q+Q E+ Sbjct: 182 ELSKR-QERIAQQEKVLARQREQVQSL--------EKRFASLEAQRQQLQAEI---NQRD 229 Query: 248 XXXXXXXENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQK 290 + + A + + +EE+ QG ++L+ ++EE ++ Sbjct: 230 TKIDQLDQAIAAKDNDIQAREEKLQGLETELSFLQREVEELER 272 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 42.4 bits (98), Expect = 4e-06 Identities = 59/318 (18%), Positives = 121/318 (38%), Gaps = 22/318 (6%) Query: 25 NSRRALEKKLAQSQPSDQP---PTLIAGSGTPAVKEVAPENDGESPEAVIHAKGKLRRLE 81 N+ LEK + Q +Q + G+ + + E + +I + + Sbjct: 1346 NAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKA 1405 Query: 82 KDLQSVQASLENALAERNQLTENYQAQEKMVAALQHQLAHYDDI---QSEKFVGXXXXXX 138 K++ + ++ LE ++L E Q + +LQ ++ Y D EK + Sbjct: 1406 KEIDNTRSELEKVSLSNDELLEEKQ---NTIKSLQDEILSYKDKITRNDEKLLSIERDNK 1462 Query: 139 XXXXXXXXXSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSDQL-----SYVEQNQAK-- 191 +++ +V E KL + +S + S ++ S +E N+ + Sbjct: 1463 RDLESLKEQLRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLESTIESNETELK 1522 Query: 192 -AIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQELXXXXXXXXXX 250 ++E S EKL Q + E+ N Q + L + ++ ++++ Sbjct: 1523 SSMETIRKSDEKLEQSKKSAEEDIKNLQ-----HEKSDLISRINESEKDIEELKSKLRIE 1577 Query: 251 XXXXENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELALANAELKVKLETTQAEG 310 L+ L +E+ + + T ++LE+ ++EL AE+K E + Sbjct: 1578 AKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKELLT 1637 Query: 311 DRLKTEKKEQAAALQSAQ 328 RLK ++E + Q AQ Sbjct: 1638 SRLKELEQELDSTQQKAQ 1655 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.305 0.122 0.321 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 44,265 Number of Sequences: 78 Number of extensions: 1935 Number of successful extensions: 75 Number of sequences better than 1.0e-05: 5 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 4 Number of HSP's that attempted gapping in prelim test: 36 Number of HSP's gapped (non-prelim): 18 length of query: 562 length of database: 48,235 effective HSP length: 67 effective length of query: 495 effective length of database: 43,009 effective search space: 21289455 effective search space used: 21289455 T: 11 A: 40 X1: 16 ( 7.0 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 43 (21.9 bits) S2: 95 (41.2 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001075 sll1592 (226 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001075 sll1592 434 e-125 SYNE-PCC-01-001160 sll1708 150 3e-39 SYNE-PCC-01-000608 sll0921 140 3e-36 SYNE-PCC-01-001575 slr0312 128 2e-32 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 102 1e-24 SYNE-PCC-01-001039 sll1544 68 3e-14 SYNE-PCC-01-002731 slr1909 65 2e-13 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 59 1e-11 SYNE-PCC-01-000518 sll0789 57 4e-11 SYNE-PCC-01-002221 slr1213 57 5e-11 SYNE-PCC-01-002033 slr0947 53 7e-10 SYNE-PCC-01-001437 slr0081 52 2e-09 SYNE-PCC-01-002486 slr1584 52 2e-09 SYNE-PCC-01-000511 sll0782 51 4e-09 SYNE-PCC-01-002788 slr1982 50 6e-09 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 49 1e-08 SYNE-PCC-01-000523 sll0797 49 1e-08 SYNE-PCC-01-000242 sll0396 49 2e-08 SYNE-PCC-01-002672 slr1837 48 2e-08 SYNE-PCC-01-000414 sll0649 48 2e-08 SYNE-PCC-01-002618 slr1760 47 4e-08 SYNE-PCC-01-002617 slr1759 47 5e-08 SYNE-PCC-01-002951 ssl0564 46 9e-08 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 45 3e-07 SYNE-PCC-01-001306 sll1905 43 8e-07 SYNE-PCC-01-002635 slr1783 42 2e-06 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 434 bits (1117), Expect = e-125 Identities = 226/226 (100%), Positives = 226/226 (100%) Query: 1 MAISPTSIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILD 60 MAISPTSIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILD Sbjct: 1 MAISPTSIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILD 60 Query: 61 VGLPGIGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLA 120 VGLPGIGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLA Sbjct: 61 VGLPGIGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLA 120 Query: 121 IRSVAAGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKS 180 IRSVAAGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKS Sbjct: 121 IRSVAAGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKS 180 Query: 181 NQEIADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRLVSL 226 NQEIADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRLVSL Sbjct: 181 NQEIADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRLVSL 226 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 150 bits (379), Expect = 3e-39 Identities = 84/217 (38%), Positives = 128/217 (58%), Gaps = 7/217 (3%) Query: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIG 67 ++IL+VEDD L +LGL L ++ G ++G A+ D++++D+GLPG+ Sbjct: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 Query: 68 GIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVAAG 127 GIEA QIK+ PQ+ +++LTSH+ P I + + A YCVKG E L+LAI + G Sbjct: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQDG 136 Query: 128 AFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKSNQEIADE 187 A + D Q A + +P AD + L++RE+++L L+ +GKSNQEIA Sbjct: 137 ATYLDP------QIARVVVENLKPPVPEGQAD-VSSLSEREIDVLKLIVEGKSNQEIAQT 189 Query: 188 LYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRLV 224 LY++ T++ HV I+ KL V DR QAA++A+ LV Sbjct: 190 LYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSGLV 226 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 140 bits (354), Expect = 3e-36 Identities = 87/220 (39%), Positives = 120/220 (54%), Gaps = 3/220 (1%) Query: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIG 67 IRI L+ED++L R GL L+ EP + GEA +G + + Q DVVI+D+GLP + Sbjct: 4 IRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMN 63 Query: 68 GIEACHQIKK--IHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVA 125 GI+ Q+KK ++ Q V+ILT + Q + A A YC+K E L+ AI++ Sbjct: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQATH 123 Query: 126 AGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKSNQEIA 185 G W D A I A + + LT+RELE+L L+ G SN +IA Sbjct: 124 GGFAWIDP-AIARIVLAHAPGAEPSEPSSPSRTSLSYGLTERELEVLQLIVDGCSNADIA 182 Query: 186 DELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRLVS 225 ++LYI GTV+ HV IL KL DRTQAA+ AI LV+ Sbjct: 183 EKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGLVN 222 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 128 bits (321), Expect = 2e-32 Identities = 79/221 (35%), Positives = 127/221 (57%), Gaps = 16/221 (7%) Query: 6 TSIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPG 65 T+IR+L+ +D +FR GL T ++++P + V +AE+GE AIA + DV ++D+ +P Sbjct: 5 TTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPE 64 Query: 66 IGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVA 125 + G+ A I I +++LT++ I R ++A A+GY +K + L+ AIR+V Sbjct: 65 VEGVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVH 124 Query: 126 AGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKSNQEIA 185 G Q V L++ + L++RELE+L +A+G SN +IA Sbjct: 125 RG------------QKYIPPDVGAKLVQRLSNPE----LSERELEVLGSLAQGMSNADIA 168 Query: 186 DELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRLVSL 226 L I GTV+ HV+ IL KL+V DRTQA ++A++R +VSL Sbjct: 169 TALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGIVSL 209 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 102 bits (253), Expect = 1e-24 Identities = 67/217 (30%), Positives = 109/217 (50%), Gaps = 18/217 (8%) Query: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIG 67 +++LL++D L R G+ + + +V + G I+ Q DV+ILD+ + G+ Sbjct: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLS 64 Query: 68 GIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVAAG 127 G++ ++ +LILT I LI+A A GY +K +TL+ I+ +A G Sbjct: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQG 124 Query: 128 AFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENP---LTKRELEILSLVAKGKSNQEI 184 + I S I+ L L +NP LT RE+ +L +A G SN++I Sbjct: 125 ----EVILSDSIKN-----------LLLERTHEDNPLDSLTDREMGVLRQIATGLSNKQI 169 Query: 185 ADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIER 221 A +L+I+ TV+VH+ +LRKL V R A +L E+ Sbjct: 170 AAQLFISEETVKVHIRNLLRKLNVHSRVAATVLFFEQ 206 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 67.8 bits (164), Expect = 3e-14 Identities = 62/211 (29%), Positives = 96/211 (45%), Gaps = 31/211 (14%) Query: 18 LFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFD-VVILDVGLPGIGGIEACHQIK 76 LF + + SQ P A+ Y QQ VV++ L G++ Q+K Sbjct: 34 LFAVSVARISSQRPNKKKVKIFTLQSEALTYFEQQPEPLVVVICQRLEDGSGLDLLKQLK 93 Query: 77 KI--HPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLV------LAIRSVAAGA 128 PQ +L+L H+ I +AQ Y + E+ + LA+ + G Sbjct: 94 AHARSPQCLLLLLNDHAA-------IVEEAQQYGADAIFLESSLGNGEINLAVECLLQGR 146 Query: 129 FWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKSNQEIADEL 188 + D+ ++ + S ++ LT+RE+ IL LVA+GK+N EI EL Sbjct: 147 TYIDS----RLEAIADYRKSQ-----------KDELTQREVAILRLVAEGKTNSEIGQEL 191 Query: 189 YIAPGTVRVHVHTILRKLEVRDRTQAALLAI 219 ++A TVR +V TI+RKL RDRT AA+ + Sbjct: 192 HLASSTVREYVQTIMRKLNARDRTSAAIAGL 222 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 65.1 bits (157), Expect = 2e-13 Identities = 57/226 (25%), Positives = 104/226 (46%), Gaps = 17/226 (7%) Query: 1 MAISPTSIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILD 60 M+ S + +LLV+DD L LV + G V A +G A+ + + D+++ D Sbjct: 1 MSQSKENYHLLLVDDDPNLLL-LVKDYLEYQGYQVT-TAGNGREALDLLTTTVPDMIVCD 58 Query: 61 VGLPGIGGIEACHQIKKIHPQL---PVLILTSHSQPALINRLIEAQAQGYCVKGVAAETL 117 + +P + G Q+++ +P + PV+ L++ Q + + A Y K E L Sbjct: 59 IMMPEMDGYAFIEQVRQ-NPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEEL 117 Query: 118 VLAIRSVAAGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAK 177 ++S ++ QH++ + LT E +++ LVA+ Sbjct: 118 AAQVQSCL-----------RQADRLLQHNNHPLEDNARVQVARDVELTPTETKVIQLVAQ 166 Query: 178 GKSNQEIADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRL 223 G +N+EIAD L ++ TV HV +L K + +RT+ A AI++ + Sbjct: 167 GLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELARWAIQKSI 212 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 58.9 bits (141), Expect = 1e-11 Identities = 55/214 (25%), Positives = 97/214 (45%), Gaps = 28/214 (13%) Query: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEA----EDGETAIAYVNQQLFDVVILDVGL 63 +RILL+EDD L GL + GL G A DG+T +A + +D V+LD+ L Sbjct: 1 MRILLIEDDNLIGNGL------QIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTL 54 Query: 64 PGIGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRS 123 P + G+E Q + H +PVLILT+ + +++ A Y K A + +++ Sbjct: 55 PKLDGLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQA 114 Query: 124 VAAGAFWWDAIASQEIQTAFQHSSSTGAV--LPLADADGENPLTKRELEILSLVAKGK-- 179 + + + ++ + + + P++ LT RE ++L L K Sbjct: 115 LIRRRYGYHHSVIEQAGVKLDQNQRSVWLNNQPIS-------LTSREYKLLELFMLNKDR 167 Query: 180 --SNQEIADEL-----YIAPGTVRVHVHTILRKL 206 S I ++L I+ G + VH++ + +KL Sbjct: 168 VLSRSSIEEKLSSWDEEISSGALDVHIYNLRQKL 201 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 57.4 bits (137), Expect = 4e-11 Identities = 54/211 (25%), Positives = 95/211 (45%), Gaps = 17/211 (8%) Query: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQL--FDVVILDVGLPG 65 +R+LLVED+ + L L +E V +DG A +Y++Q + + I D +PG Sbjct: 1 MRLLLVEDEPDLGMALEKALRRENY--VVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPG 58 Query: 66 IGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVA 125 + G+E C +++ LP+L+LT+ Q A ++A A Y +K L+ +RS+ Sbjct: 59 LSGLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQ 118 Query: 126 AGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGK----SN 181 + + Q++Q Q G + LT +E ++L K S+ Sbjct: 119 RRS---PELQPQQLQVG-QWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSS 174 Query: 182 QEIADELYI-----APGTVRVHVHTILRKLE 207 ++I ++L+ V V + RKLE Sbjct: 175 EQIKNQLWALSAESTSNVVAAQVRLLRRKLE 205 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 57.0 bits (136), Expect = 5e-11 Identities = 35/114 (30%), Positives = 62/114 (54%), Gaps = 3/114 (2%) Query: 9 RILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPG-IG 67 +IL+VED+ L + +L + G ++ A DG TA+ + + D+V+LD+ + G I Sbjct: 4 KILIVEDERLVAQH-IAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 Query: 68 GIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAI 121 GIE +IK ++ +P++ LT+ S + R + QGY +K E L+ + Sbjct: 63 GIEVAERIKSLY-SIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 53.1 bits (126), Expect = 7e-10 Identities = 40/113 (35%), Positives = 61/113 (53%), Gaps = 3/113 (2%) Query: 12 LVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGGIEA 71 +V+D+ R L TRLS G +V A DGE AIA ++ D+V+LDV +P + G Sbjct: 1 MVDDEASIRRILETRLSMI-GYEVV-TAADGEEAIATFHESDPDLVVLDVMMPKLDGYGV 58 Query: 72 CHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSV 124 C +++K +P+++LT+ A +E A Y VK + + L IRSV Sbjct: 59 CQELRK-ESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSV 110 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 52.0 bits (123), Expect = 2e-09 Identities = 38/127 (29%), Positives = 62/127 (48%), Gaps = 9/127 (7%) Query: 5 PTSIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVN-------QQLFDVV 57 P S RIL+VED+ R +V L QE G +V +DG A+A + Q D++ Sbjct: 28 PPSHRILVVEDEVSIRETIVLSL-QEEGYEVYA-VDDGRDALALLQEFSEDPGQAAVDLI 85 Query: 58 ILDVGLPGIGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETL 117 ILD+ LP + G++ C ++ P+LI+++ +E A Y K + + L Sbjct: 86 ILDIMLPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKEL 145 Query: 118 VLAIRSV 124 V R++ Sbjct: 146 VARCRAM 152 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 51.6 bits (122), Expect = 2e-09 Identities = 59/216 (27%), Positives = 91/216 (42%), Gaps = 30/216 (13%) Query: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIG 67 +RILLVEDD L LS + L A D A Y ++ +D+VILDV LP + Sbjct: 1 MRILLVEDDLPLAETLAEALSDQ--LYTVDIATDASLAWDYASRLEYDLVILDVMLPELD 58 Query: 68 GIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSV--- 124 GI C + + +P+L++T+ ++A A Y VK V L +R++ Sbjct: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 Query: 125 ----AAGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKG-- 178 W I + + S VL LT++E IL L+ + Sbjct: 119 GCATCQPVLEWGPI---RLDPSTYEVSYDNEVL---------SLTRKEYSILELLLRNGR 166 Query: 179 --KSNQEIADELYIAPG-----TVRVHVHTILRKLE 207 S I D ++ TV+VHV ++ +KL+ Sbjct: 167 RVLSRSMIIDSIWKLESPPEEDTVKVHVRSLRQKLK 202 >SYNE-PCC-01-000511 sll0782 Length = 369 Score = 50.8 bits (120), Expect = 4e-09 Identities = 47/160 (29%), Positives = 83/160 (51%), Gaps = 28/160 (17%) Query: 76 KKIHPQLPVLILTSHSQPALINRLIEAQAQGYC--VKGVAAETLVLAIRSVAAGAFWWDA 133 KK+ P L L++ + + NRL + YC + G + T+ + + + AF D Sbjct: 207 KKLSPTLAYLLIRTTE---IFNRL----SCNYCRLIYGEISVTIEAIVEASVSEAFNTDG 259 Query: 134 IAS-QEIQTAFQH--------SSSTGAVLPLA---DADG-------ENPLTKRELEILSL 174 + +EI+ H SS ++L ++ DG ++ L++RE EI+SL Sbjct: 260 RSPFKEIEFLAHHVGGEFRSQSSVNQSILQISLQLPYDGFQNIKLNKHLLSEREKEIVSL 319 Query: 175 VAKGKSNQEIADELYIAPGTVRVHVHTILRKLEVRDRTQA 214 +A+G +++IA+EL+I+ TV+ HV+ L KL ++R QA Sbjct: 320 LAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQA 359 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 50.1 bits (118), Expect = 6e-09 Identities = 38/113 (33%), Positives = 61/113 (53%), Gaps = 6/113 (5%) Query: 9 RILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGG 68 ++LLVED+E+ R L RL ++ G +V A DGE A+ + ++++D+ LP I G Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRK-GYEVV-IAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 Query: 69 IEACHQIKKIHP---QLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLV 118 A QIK HP +P++ LT+H+ + R I A Y K + + L+ Sbjct: 64 WTATKQIKG-HPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLL 115 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 49.3 bits (116), Expect = 1e-08 Identities = 61/215 (28%), Positives = 105/215 (48%), Gaps = 26/215 (12%) Query: 11 LLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGGIE 70 LL+ DD++ L++ L + G DV A +G A+ +N+ + +V+LDV +P + GIE Sbjct: 4 LLLVDDDIELTELLSTLLELEGFDVE-TANNGLEALQKLNES-YKLVLLDVMMPKLNGIE 61 Query: 71 ACHQIKKIHPQLPVLILTSHSQPALINRL--IEAQAQGYCVKGVAAETLVLAIRSVAAGA 128 +I+K+ +PV++LT+ + I+R+ +E A K L+ I+++ + Sbjct: 62 TLKEIRKV-SNVPVMMLTARGED--IDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 Query: 129 FWWDAIASQEIQTAFQHSSSTGAVL----PLADADGEN-PLTKRELEILSLVAKGKSN-- 181 A S I + S G L +A + EN LT E +IL L+ K K N Sbjct: 119 ----ASPSNNISNV-EILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVV 173 Query: 182 --QEIADELYIAPGT-----VRVHVHTILRKLEVR 209 +E++ E+ P T + +H+ + RKL R Sbjct: 174 SREELSLEVMEKPLTPFDRSLDMHISNLRRKLPKR 208 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 48.9 bits (115), Expect = 1e-08 Identities = 36/119 (30%), Positives = 58/119 (48%), Gaps = 4/119 (3%) Query: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQL--FDVVILDVGLPG 65 +RILLVED+ + + L E V DG A Y+ Q + + I+D LPG Sbjct: 1 MRILLVEDETDLGMAIKKVLVSEKY--VVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPG 58 Query: 66 IGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSV 124 + G+E C +++ LPVL+LT+ +P ++A A Y K L+ +R++ Sbjct: 59 LSGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRAL 117 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 48.5 bits (114), Expect = 2e-08 Identities = 31/116 (26%), Positives = 60/116 (51%), Gaps = 2/116 (1%) Query: 7 SIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGI 66 S R+L+VE++E + L E G DV+ A DG + D++I++ LPG+ Sbjct: 2 SHRVLVVEEEEKLARFMELELKYE-GYDVS-VARDGLKGFTQAQEFPPDLIIVNGALPGM 59 Query: 67 GGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIR 122 G+E C +++++ ++P++++T+ ++A A Y VK ++ IR Sbjct: 60 SGLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIR 115 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 48.1 bits (113), Expect = 2e-08 Identities = 37/118 (31%), Positives = 61/118 (51%), Gaps = 8/118 (6%) Query: 10 ILLVEDDELFRLGLVTRLS-QEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGG 68 ILLV+D+ L L Q +DVA + G+T +A +D++ILD LP + G Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVA---DQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 Query: 69 IEACHQIKKIHPQLPVLILTSHSQPALINRL--IEAQAQGYCVKGVAAETLVLAIRSV 124 +E C QI+ + PVL LT ++ L +R+ ++A Y +K L+ +R++ Sbjct: 61 LEICRQIRILGHSTPVLFLT--AKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRAL 116 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 48.1 bits (113), Expect = 2e-08 Identities = 34/117 (29%), Positives = 59/117 (50%), Gaps = 4/117 (3%) Query: 10 ILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGGI 69 IL+VEDD+ + L +E + DGET + +Q+ D+++LD+ LP + G+ Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIV--TNDGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 Query: 70 EACHQIKKIHPQLPVLILTSHSQPALINRLI--EAQAQGYCVKGVAAETLVLAIRSV 124 E C +I++ IL ++ I+R+I A Y VK + LV +R++ Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRAL 128 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 47.4 bits (111), Expect = 4e-08 Identities = 34/113 (30%), Positives = 56/113 (49%), Gaps = 6/113 (5%) Query: 3 ISPTSIRILLVEDDELFRLGLVTRLSQEPG-LDVAGEAEDGETAIAYVNQQLFDVVILDV 61 I + +IL+V+DD R+ L L +E +++A E+ T A + + VV+LD Sbjct: 7 IETAAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPE---VVLLDA 63 Query: 62 GLPGIGGIEACHQIKKIH--PQLPVLILTSHSQPALINRLIEAQAQGYCVKGV 112 +P + G C + KI+ P VL++T A ++R EA A Y K + Sbjct: 64 VMPVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPI 116 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 47.0 bits (110), Expect = 5e-08 Identities = 31/123 (25%), Positives = 65/123 (52%), Gaps = 5/123 (4%) Query: 7 SIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGI 66 +++ILL ED+ L + ++ G VA A +G+ I + ++ +D+V++D+ +P + Sbjct: 1189 ALQILLAEDN-LVNQKVAHQMLNNLGYPVA-IANNGQEVIDALEKKFYDLVLMDMQMPVM 1246 Query: 67 GGIEACHQIKKIHP---QLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRS 123 GI AC I++ P Q ++ +T+++ P ++A GY K ++ L ++ Sbjct: 1247 DGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQD 1306 Query: 124 VAA 126 +A Sbjct: 1307 TSA 1309 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 46.2 bits (108), Expect = 9e-08 Identities = 25/57 (43%), Positives = 35/57 (61%) Query: 164 LTKRELEILSLVAKGKSNQEIADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIE 220 L+ RELEIL LVA G +NQE+++ L I+ TV HV IL K +R + A++ Sbjct: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQ 68 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 44.7 bits (104), Expect = 3e-07 Identities = 42/134 (31%), Positives = 66/134 (49%), Gaps = 11/134 (8%) Query: 9 RILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGG 68 +IL+VED+ R + LSQ+ DV EA D +TAI + + +++LD LPG G Sbjct: 4 KILIVEDECAIREMIALFLSQKY-YDVI-EASDFKTAINKIKENP-KLILLDWMLPGRSG 60 Query: 69 IEACHQIKK--IHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVAA 126 I+ IKK + +P+++LT+ S + A A Y K + + L+ I +V Sbjct: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAV-- 118 Query: 127 GAFWWDAIASQEIQ 140 W I Q+ Q Sbjct: 119 ----WRRIYEQQSQ 128 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 43.1 bits (100), Expect = 8e-07 Identities = 29/117 (24%), Positives = 59/117 (50%), Gaps = 5/117 (4%) Query: 10 ILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGGI 69 ++LV DD + +++ L + G G A+ V Q D+++LD+ +PG+ G+ Sbjct: 19 LILVVDDVKENIYVISELLEGEGYSTTF-VTSGPEALQRVTQAQPDLILLDLMMPGMDGL 77 Query: 70 EACHQIKKIHPQ---LPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRS 123 E C ++K+ PQ +PV+ LT+ ++ + + A Y K + L+ +++ Sbjct: 78 EVCDRLKQ-DPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKT 133 Score = 39.7 bits (91), Expect = 8e-06 Identities = 36/156 (23%), Positives = 74/156 (47%), Gaps = 7/156 (4%) Query: 4 SPTSIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGL 63 S +++ ILL ED+ L + L ++ G V +G+ A++ + + +DVV++DV + Sbjct: 736 SSSNLTILLAEDN-LINQQVAKLLLKKLGYPV-DVVNNGQEALSALAKGDYDVVLMDVEM 793 Query: 64 PGIGGIEACHQIKKIHPQLP---VLILTSHSQPALINRLIEAQAQGYCVKGVAAETL--V 118 P + G+ A I++ + ++ +T++S R + + Y K + E L Sbjct: 794 PEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQA 853 Query: 119 LAIRSVAAGAFWWDAIASQEIQTAFQHSSSTGAVLP 154 L + + A + D +A+ +AF+ S + P Sbjct: 854 LQVAATALQSTSQDRMATVSCVSAFEAKPSPSSPCP 889 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 42.0 bits (97), Expect = 2e-06 Identities = 51/228 (22%), Positives = 95/228 (41%), Gaps = 15/228 (6%) Query: 8 IRILLVEDDELFRLGLVTRL--SQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPG 65 I +LLV+D+ R + L S + +D+A A + A Y+ L +VI D+ +P Sbjct: 56 ISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATE---AWDYLQHHLPALVISDIMMPQ 112 Query: 66 IGGIEACHQIKKI--HPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRS 123 + G + ++++ LPV+ LT+ + + + K + L +R+ Sbjct: 113 VDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRN 172 Query: 124 VAAGAFWWDAIASQ--EIQTAFQHSSSTGAVLPLADADGENP------LTKRELEILSLV 175 + A S+ ++Q +Q + + P T RE +L LV Sbjct: 173 LLARQQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLV 232 Query: 176 AKGKSNQEIADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRL 223 ++G N+EIA +L + V +V + K RT+ A++ L Sbjct: 233 SQGLMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHGL 280 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.136 0.378 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 19,395 Number of Sequences: 78 Number of extensions: 778 Number of successful extensions: 46 Number of sequences better than 1.0e-05: 26 Number of HSP's better than 0.0 without gapping: 13 Number of HSP's successfully gapped in prelim test: 13 Number of HSP's that attempted gapping in prelim test: 21 Number of HSP's gapped (non-prelim): 27 length of query: 226 length of database: 48,235 effective HSP length: 60 effective length of query: 166 effective length of database: 43,555 effective search space: 7230130 effective search space used: 7230130 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001132 sll1672 (834 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001132 sll1672 1471 0.0 SYNE-PCC-01-000800 sll1228 306 2e-85 SYNE-PCC-01-002879 slr2104 227 1e-61 SYNE-PCC-01-002873 slr2098 213 2e-57 SYNE-PCC-01-002617 slr1759 185 4e-49 SYNE-PCC-01-001280 sll1871 162 4e-42 SYNE-PCC-01-001306 sll1905 146 3e-37 SYNE-PCC-01-000891 sll1353 140 2e-35 SYNE-PCC-01-000295 sll0474 138 8e-35 SYNE-PCC-01-002778 slr1969 118 8e-29 SYNE-PCC-01-001294 sll1888 117 1e-28 SYNE-PCC-01-001509 slr0210 104 1e-24 SYNE-PCC-01-001517 slr0222 88 9e-20 SYNE-PCC-01-000985 sll1475 83 4e-18 SYNE-PCC-01-002788 slr1982 76 5e-16 SYNE-PCC-01-001690 slr0473 66 4e-13 SYNE-PCC-01-002489 slr1588 57 2e-10 SYNE-PCC-01-001133 sll1673 57 2e-10 SYNE-PCC-01-002033 slr0947 55 7e-10 SYNE-PCC-01-002086 slr1042 55 1e-09 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 52 6e-09 SYNE-PCC-01-001575 slr0312 50 2e-08 SYNE-PCC-01-002618 slr1760 49 5e-08 SYNE-PCC-01-002731 slr1909 49 8e-08 SYNE-PCC-01-000414 sll0649 49 8e-08 SYNE-PCC-01-001461 slr0115 47 2e-07 SYNE-PCC-01-001437 slr0081 47 2e-07 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 47 2e-07 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 47 2e-07 SYNE-PCC-01-002672 slr1837 45 7e-07 SYNE-PCC-01-002635 slr1783 45 9e-07 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 1471 bits (3809), Expect = 0.0 Identities = 761/834 (91%), Positives = 761/834 (91%) Query: 1 MQINNHVFKGLADFRSVSWQRQIIVAIAIYGTIYISQLFITYAGTASSPIWIPTGMAVGF 60 MQINNHVFKGLADFRSVSWQRQIIVAIAIYGTIYISQLFITYAGTASSPIWIPTGMAVGF Sbjct: 1 MQINNHVFKGLADFRSVSWQRQIIVAIAIYGTIYISQLFITYAGTASSPIWIPTGMAVGF 60 Query: 61 LSIWGYQVWPGMVGGLLLGEIMALHGLESAANFILTVAITGVVSLVNLFSVYLSDILTAN 120 LSIWGYQVWPGMVGGLLLGEIMALHGLESAANFILTVAITGVVSLVNLFSVYLSDILTAN Sbjct: 61 LSIWGYQVWPGMVGGLLLGEIMALHGLESAANFILTVAITGVVSLVNLFSVYLSDILTAN 120 Query: 121 NYLFSKIKNIIRFIVFVCFGSRLPAAIICPFLLYLFEKISFGLYSEIAYTWLLSDAFALL 180 NYLFSKIKNIIRFIVFVCFGSRLPAAIICPFLLYLFEKISFGLYSEIAYTWLLSDAFALL Sbjct: 121 NYLFSKIKNIIRFIVFVCFGSRLPAAIICPFLLYLFEKISFGLYSEIAYTWLLSDAFALL 180 Query: 181 IVTPFIIACNHNFKVFIKLLQEQWLEAASXXXXXXXXXXXXANGYPIEYLLIPFLLWSAF 240 IVTPFIIACNHNFKVFIKLLQEQWLEAAS ANGYPIEYLLIPFLLWSAF Sbjct: 181 IVTPFIIACNHNFKVFIKLLQEQWLEAASIIFFILLIVKIIANGYPIEYLLIPFLLWSAF 240 Query: 241 RFTEVGXXXXXXXXXXXXXXXXXXDQEKAAIKDQLLLLQSILACISMTTLVLNAVLSENE 300 RFTEVG DQEKAAIKDQLLLLQSILACISMTTLVLNAVLSENE Sbjct: 241 RFTEVGSSLLTIVVSALLVLILALDQEKAAIKDQLLLLQSILACISMTTLVLNAVLSENE 300 Query: 301 RSKNQLFTTNQILIEQNQKLQELYQQRELERAQREKILIEYNESLQKQVDLVRXXXXXXX 360 RSKNQLFTTNQILIEQNQKLQELYQQRELERAQREKILIEYNESLQKQVDLVR Sbjct: 301 RSKNQLFTTNQILIEQNQKLQELYQQRELERAQREKILIEYNESLQKQVDLVRAKEIAES 360 Query: 361 XXXXXXTFVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQRSGEYLLNLINN 420 TFVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQRSGEYLLNLINN Sbjct: 361 EAKAKSTFVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQRSGEYLLNLINN 420 Query: 421 ILDFSKIEAGKTHLNRHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGDEI 480 ILDFSKIEAGKTHLNRHNF KAANEGIELIFIRDHDLPRYVYGDEI Sbjct: 421 ILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRDHDLPRYVYGDEI 480 Query: 481 KLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGK 540 KLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGK Sbjct: 481 KLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGK 540 Query: 541 GISEVELSHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFS 600 GISEVELSHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFS Sbjct: 541 GISEVELSHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFS 600 Query: 601 ILVDLGEITLSREPNSAKKVLALTPGQPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEAS 660 ILVDLGEITLSREPNSAKKVLALTPGQPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEAS Sbjct: 601 ILVDLGEITLSREPNSAKKVLALTPGQPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEAS 660 Query: 661 NGQEAIALWESWEPHLIFMDMRMPVMDGYEATKYIKGQVKGNXXXXXXXXXXXXXXXKAI 720 NGQEAIALWESWEPHLIFMDMRMPVMDGYEATKYIKGQVKGN KAI Sbjct: 661 NGQEAIALWESWEPHLIFMDMRMPVMDGYEATKYIKGQVKGNATAVVALTASVLEEEKAI 720 Query: 721 VLSAGCDDFLRKPFRENTIFDSLTKHLGVTYVYESAPNKNDNHEDTALKPESFLIMSQDW 780 VLSAGCDDFLRKPFRENTIFDSLTKHLGVTYVYESAPNKNDNHEDTALKPESFLIMSQDW Sbjct: 721 VLSAGCDDFLRKPFRENTIFDSLTKHLGVTYVYESAPNKNDNHEDTALKPESFLIMSQDW 780 Query: 781 LTQLSHYLLEADTEQVMKLIAEIPASESELEQNLTKLVRRFEFEKILDLIEPLS 834 LTQLSHYLLEADTEQVMKLIAEIPASESELEQNLTKLVRRFEFEKILDLIEPLS Sbjct: 781 LTQLSHYLLEADTEQVMKLIAEIPASESELEQNLTKLVRRFEFEKILDLIEPLS 834 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 306 bits (783), Expect = 2e-85 Identities = 184/491 (37%), Positives = 259/491 (52%), Gaps = 16/491 (3%) Query: 346 QKQVDLVRXXXXXXXXXXXXXTFVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAG 405 Q + L + F+A++SHELR+PLNAIIGFSQL+ R +L + Sbjct: 144 QAETTLTQAKEAADAANRAKTEFLASISHELRTPLNAIIGFSQLLHRDPSLAPHR-PTLD 202 Query: 406 IIQRSGEYLLNLINNILDFSKIEAGKTHLNRHNFXXXXXXXXXXXXXXXKAANEGIELIF 465 II RSGE+LL LIN+IL+ SKIEAG+T LN +A + + L Sbjct: 203 IINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKV 262 Query: 466 IRDHDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEP 525 R ++P ++ D KLRQ+L+NLL+NAIKFT +G V L A P+T Sbjct: 263 ERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTA-------PQTDEGQ 315 Query: 526 KNKYWLDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDI 585 WL F + DTG GI+ E+ LF F+QTE+G + +G GLGL I+++F++LMGG I Sbjct: 316 GASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGLKSCQGNGLGLPISQKFVQLMGGQI 375 Query: 586 NVSSVVDQGTTFSFSILVDLGEITLSREPNSAKKVLALTP-GQPVYKILVVDDKSVNRQL 644 V S VDQG+ F F+I V ++ + +P + L P Q K+LVVDD+ +R L Sbjct: 376 QVRSKVDQGSAFFFAIPV---QVMAAPKPTPETSAVTLPPLDQYNQKVLVVDDRPESRLL 432 Query: 645 LIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEATKYIKGQVKGNXX 704 L +LL GF ++EA NG+ AIALWESW P +I MDM+MPV+DG T+ IK +G Sbjct: 433 LRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQKIKASPQGQHT 492 Query: 705 XXXXXXXXXXXXXKAIVLSAGCDDFLRKPFRENTIFDSLTKHLGVTYVYESAPNKNDNHE 764 +A +LSAGCDDFL KPFR + L KHL V + P + Sbjct: 493 IIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALPSQGQPPASPLRP 552 Query: 765 DTALK----PESFLIMSQDWLTQLSHYLLEADTEQVMKLIAEIPASESELEQNLTKLVRR 820 + E Q W +++ LE + + ++ L+ +P L L R Sbjct: 553 FPVITAPSLSEQLAKTPQSWRQKMAKMALECNDDDLITLVESLPTLSPSLAHLLATWARE 612 Query: 821 FEFEKILDLIE 831 + FE+I ++E Sbjct: 613 YRFEQIFLVVE 623 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 227 bits (578), Expect = 1e-61 Identities = 149/454 (32%), Positives = 233/454 (51%), Gaps = 30/454 (6%) Query: 303 KNQLFTTNQILIEQNQKLQELYQQRELERAQREKILIEYNESLQK-QVDLVRXXXXXXXX 361 KN L ++ I+ +LQE E + E+ + E + L+ Q L+ Sbjct: 395 KNNLPLLSRGTIQDVTELQEAQISLEHLNEKLEQRIQERTQELENSQESLLEAKLVAEGA 454 Query: 362 XXXXXTFVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQRSGEYLLNLINNI 421 F+ANMSHE+R+P+NAIIG S+L+L+T +L +Q +Q +GE LL +INNI Sbjct: 455 TKAKSEFLANMSHEIRTPMNAIIGMSELVLQT-DLTSQQRNYLQKVQYAGELLLGIINNI 513 Query: 422 LDFSKIEAGKTHLNRHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGDEIK 481 LDFSK+EAGK L + F +A +G+ L F D +P + GD ++ Sbjct: 514 LDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLR 573 Query: 482 LRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKG 541 L QIL+NL +NA+KFT +GE+ + E ++ L F++ DTG G Sbjct: 574 LSQILINLGNNAVKFTNQGEITIRGQLLKTENEQT-------------KLQFSVTDTGIG 620 Query: 542 ISEVELSHLFEAFSQTESGRNAQ-EGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFS 600 ++ + S LF+ F+Q E+ + Q GTGLGLAI++ +LMGGDI + SVV QG+TF F+ Sbjct: 621 LTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFT 680 Query: 601 ILVD-----------LGEITLSREPNSAKKVLALTPGQPVYKILVVDDKSVNRQLLIKLL 649 + + + +++ S + + G IL+V+D +NR+ LL Sbjct: 681 VCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGA---SILLVEDNEINREFAHDLL 737 Query: 650 APFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEATKYIKGQVKGNXXXXXXX 709 G ++ A+NGQEA+ L S I MD++MP+++GY+AT+ I+ Q Sbjct: 738 TSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAM 797 Query: 710 XXXXXXXXKAIVLSAGCDDFLRKPFRENTIFDSL 743 + L AG +D L KP + + +F +L Sbjct: 798 TANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 213 bits (541), Expect = 2e-57 Identities = 139/410 (33%), Positives = 206/410 (50%), Gaps = 30/410 (7%) Query: 368 FVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQRSGEYLLNLINNILDFSKI 427 F+ANMSHE+R+P+NA+IG + L L+T P Q E I+ SG++LL +IN+ILDFSKI Sbjct: 530 FLANMSHEIRTPMNAVIGMTHLALKTDLTP-RQREYLHKIRFSGQHLLGVINDILDFSKI 588 Query: 428 EAGKTHLNRHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGDEIKLRQILL 487 EAGK + +F KA N+G+EL+F D +LPR+ GD ++L QIL+ Sbjct: 589 EAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRLGQILI 648 Query: 488 NLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISEVEL 547 N +NA+KFT +G++ + + Q+V+ L +KDTG GI + Sbjct: 649 NYANNAVKFTEQGDITIVVRLQEYRDQDVV-------------LYLAVKDTGIGIKPEHI 695 Query: 548 SHLFEAFSQTESGRNAQ-EGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFSILVDLG 606 ++LF +F Q +S GTGLGLAI ++ +LMGG++ V S QG+TF + + Sbjct: 696 ANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVCLQKS 755 Query: 607 EITLSREPNSAKKVLALTPGQPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAI 666 + R L L+ ++LVVDD R ++ LL F +E +G EA+ Sbjct: 756 NVIPHR--------LVLSKDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEAL 807 Query: 667 ALWESWE----PH-LIFMDMRMPVMDGYEATKYIKGQVKGNXXXXXXXXXXXXXXXKAIV 721 + PH ++F+D +MP MDG E + +K + Sbjct: 808 NFLAEADRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKA 867 Query: 722 LSAGCDDFLRKPFRENTIFDSLTKHLG--VTYVYESAPNKNDNHEDTALK 769 S G DD L KP + +FDSL + LG E + ED AL+ Sbjct: 868 KSLGIDDVLVKPISPSVLFDSLARVLGDPTALAQEMRQSSGIGAEDLALE 917 Score = 59.7 bits (143), Expect = 4e-11 Identities = 40/137 (29%), Positives = 65/137 (47%), Gaps = 6/137 (4%) Query: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 +IL+V+D +N+++ +LL GF ++ A+NG A+ + L+ MDM+MP MDG E Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 Query: 691 ATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPFRENTIFDSLTKHLGV- 749 AT I+ + + L AG +D L KP +++ L + V Sbjct: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKLLHWIPVD 1045 Query: 750 -----TYVYESAPNKND 761 + ESA N +D Sbjct: 1046 SPLAPETIEESAINTSD 1062 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 185 bits (470), Expect = 4e-49 Identities = 147/485 (30%), Positives = 238/485 (49%), Gaps = 43/485 (8%) Query: 274 QLLLLQSILACISMTTLVLNAVLSENERSKNQLFTTNQILIEQNQKLQELYQQRELERAQ 333 Q ++S LA + N +++ ++ + +++T ++I + L+ + +Q + AQ Sbjct: 689 QRFQVKSFLAVRTSYQGKANGIIALHQCDRQRVWTADEI-----ELLEAIAEQMGIALAQ 743 Query: 334 R---EKILIEYNESLQKQVDLVRXXXXXXXXXXXXXTFVANMSHELRSPLNAIIGFSQLM 390 EK E QK ++L + F+A MSHE+R+P+N +IG ++L+ Sbjct: 744 AALLEKERERRRELAQKNLELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELL 803 Query: 391 LRTKNLPMEQYENAGIIQRSGEYLLNLINNILDFSKIEAGKTHLNRHNFXXXXXXXXXXX 450 + T +L ++Q + I++SGE LL +IN+ILDFSKIEA K L F Sbjct: 804 IMT-DLNLQQLDYVQTIRQSGETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLE 862 Query: 451 XXXXKAANEGIELIFIRDHDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLT---SN 507 A + +EL + D P + GD+++LRQIL NL+ NA+KFT +GEVVLT Sbjct: 863 MFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEP 922 Query: 508 FRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQ-EG 566 F AE I P + + F ++DTG GI LF++FSQ +S + G Sbjct: 923 FDPAESYHTI----LNLPHPSHRICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGG 978 Query: 567 TGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFSILVDLGEITLSREPNSAKKVLALTPG 626 TGLGL I+++ ++MGG + V+S G+ F F IL L+ E +S +++ Sbjct: 979 TGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCILTTAQAPALA-EADSVQQMKG---- 1033 Query: 627 QPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHL--IFMDMRMP 684 ++L+VDD NR++L +G ++G+ A+ W + P L +D++MP Sbjct: 1034 ---KQVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALD-WFARCPDLDAAILDLQMP 1089 Query: 685 VMDGYEATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDF------LRKPFRENT 738 MDG +++ +G L AG D+ L KP R++ Sbjct: 1090 NMDGITLAHHLRQFAQGKDLPIILLSSG---------LVAGADELSVFQTVLNKPVRQSL 1140 Query: 739 IFDSL 743 IFDSL Sbjct: 1141 IFDSL 1145 Score = 58.2 bits (139), Expect = 1e-10 Identities = 35/114 (30%), Positives = 56/114 (49%), Gaps = 1/114 (0%) Query: 627 QPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVM 686 QP +IL+ +D VN+++ ++L G+ + A+NGQE I E L+ MDM+MPVM Sbjct: 1187 QPALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVM 1246 Query: 687 DGYEATKYIKGQVK-GNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPFRENTI 739 DG A ++I+ + + L AG D ++ KP N + Sbjct: 1247 DGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 162 bits (410), Expect = 4e-42 Identities = 111/304 (36%), Positives = 169/304 (55%), Gaps = 23/304 (7%) Query: 304 NQLFTTNQILIEQNQKLQELYQQRELERAQREKILIEYNESLQKQVDLVRXXXXXXXXXX 363 N+L +N L ++NQ+L+ +Q + + E+ + + E L+ V + Sbjct: 376 NELRESNSSLEKKNQELELAQKQLAVANSCLEEKVQQRTEELENTVKALELASSEAEAAN 435 Query: 364 XXXT-FVANMSHELRSPLNAIIGFSQLMLR-TKNLPMEQY-ENAGIIQRSGEYLLNLINN 420 + F+ANMSHELR+PLNAIIG+S++++ ++L E+ + I RSG+ LL LIN+ Sbjct: 436 ATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALIND 495 Query: 421 ILDFSKIEAGKT--HLNRHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGD 478 +LD SKIEAGK +L N K N +E+ + + VYGD Sbjct: 496 LLDISKIEAGKMELYLETFNLKELIAGILDTISPLLKNNNNKLEVEISLESE---EVYGD 552 Query: 479 EIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDT 538 IKLRQ +LNLLSNA KFT +G + I E + K+ WL F +KDT Sbjct: 553 LIKLRQGILNLLSNASKFTKDGII------------SFIVEEFKVDEKD--WLSFQVKDT 598 Query: 539 GKGISEVELSHLFEAFSQTESGRNAQEG-TGLGLAITRQFIKLMGGDINVSSVVDQGTTF 597 G G++E ++S LF+ F+Q +S + G TGLGLAITR+F ++MGGDI ++S + G++F Sbjct: 599 GIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSF 658 Query: 598 SFSI 601 + + Sbjct: 659 TIKL 662 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 146 bits (368), Expect = 3e-37 Identities = 106/274 (38%), Positives = 149/274 (54%), Gaps = 21/274 (7%) Query: 314 IEQNQKLQELY-QQRELERAQREKILIEYNESLQKQVDLVRXXXXXXXXXXXXXTFVANM 372 I Q ++++ + Q E+ER R++ L E N+ +LV F+A M Sbjct: 276 ISQRKQVEMIQGQSLEMERRMRQQ-LAEQNQ------ELVAATTAAEAANRSKSEFLATM 328 Query: 373 SHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQRSGEYLLNLINNILDFSKIEAGKT 432 SHE+R+P+NAIIG + L+L T +L +Q A I+ SGE LL LIN+ILDFSKIEAGK Sbjct: 329 SHEIRTPMNAIIGMTGLLLDT-DLTTQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKL 387 Query: 433 HLNRHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGDEIKLRQILLNLLSN 492 L + F A + + LI +P + GD +LRQIL+NLLSN Sbjct: 388 DLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSN 447 Query: 493 AIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISEVELSHLFE 552 A+KFT G+V +T EV++ + + K +Y + F ++DTG GI+ + LF+ Sbjct: 448 AVKFTEAGQVKVT--------VEVVDHDAA---KGEYQICFAVQDTGIGIAPNQQQALFQ 496 Query: 553 AFSQTESGRNAQ-EGTGLGLAITRQFIKLMGGDI 585 AFSQ S + GTGLGLAI + LMGG I Sbjct: 497 AFSQGNSSITRRFGGTGLGLAICVRLTALMGGTI 530 Score = 57.8 bits (138), Expect = 1e-10 Identities = 31/113 (27%), Positives = 58/113 (51%), Gaps = 1/113 (0%) Query: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 IL+ +D +N+Q+ LL G+ ++ +NGQEA++ + ++ MD+ MP MDG A Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 692 TKYI-KGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPFRENTIFDSL 743 T++I + Q + + L++G +D++ KP R + +L Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQAL 854 Score = 47.8 bits (112), Expect = 1e-07 Identities = 31/118 (26%), Positives = 49/118 (41%) Query: 630 YKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGY 689 + ILVVDD N ++ +LL G+ ++G EA+ +P LI +D+ MP MDG Sbjct: 18 FLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGL 77 Query: 690 EATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPFRENTIFDSLTKHL 747 E +K + + G D++ KPF + + HL Sbjct: 78 EVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 140 bits (352), Expect = 2e-35 Identities = 108/328 (32%), Positives = 172/328 (52%), Gaps = 34/328 (10%) Query: 287 MTTLVLNAVLSE----NERSKNQLFTTNQILIEQNQKLQELYQQRELERAQREKILIEYN 342 +T + L + +SE NE L T L Q + +++ E+ A+R LI N Sbjct: 514 LTPIALRSEVSEVITLNENFNEMLIT----LQNQFKIIKQAKDNLEMRVAERTHTLIVIN 569 Query: 343 ESLQKQVD--------LVRXXXXXXXXXXXXXTFVANMSHELRSPLNAIIGFSQLMLRTK 394 + L +++ L F+AN+SHE+R+P+NAI+GF L+L+ K Sbjct: 570 KQLAGEIEERQRIEIKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCDLLLQ-K 628 Query: 395 NLPMEQ---YENAGIIQRSGEYLLNLINNILDFSKIEAGKTHLNRHNFXXXXXXXXXXXX 451 +L + Q Y NA I S + LL LI++ILD SKIEAGK ++ Sbjct: 629 DLSLSQTKKYLNA--IGSSSKILLALIDDILDISKIEAGKLVIHLEPVDLRVIIREIKQI 686 Query: 452 XXXKAANEGIELIFIRDHDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNA 511 KA ++ + L D L + +Y D ++LRQIL NL+ NA+KFT EG+V + + Sbjct: 687 FDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFI---YIGV 743 Query: 512 EQQEVINPETSTEPKNKYWLDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQE--GTGL 569 E +V + T L + DTG GI+ + + +F+ F+Q++ G++ ++ GTGL Sbjct: 744 EGIQVRSQGTYIS------LAIEVTDTGIGIAPEDQAKIFDVFTQSQ-GQSTRKYGGTGL 796 Query: 570 GLAITRQFIKLMGGDINVSSVVDQGTTF 597 GL ITR+ L+GG+I++SS + +G+TF Sbjct: 797 GLTITRRLTALLGGEISLSSRLGEGSTF 824 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 138 bits (347), Expect = 8e-35 Identities = 87/237 (36%), Positives = 138/237 (58%), Gaps = 11/237 (4%) Query: 368 FVANMSHELRSPLNAIIGFSQLMLRTKNLPM--EQYENAGIIQRSGEYLLNLINNILDFS 425 F+ANMSHELR+PLN+I+G + + P+ +Q ++ I++ SG +LL+LIN+ILD S Sbjct: 421 FLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRHLLSLINDILDLS 480 Query: 426 KIEAGKTHLNRHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGDEIKLRQI 485 KIEAG+ L+ + A + I L +LP V D+ +L Q+ Sbjct: 481 KIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSEIIPNLPD-VLVDKRRLCQV 539 Query: 486 LLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISEV 545 L+NLL+NAIKFT EG V+ Q ++I + ++ L FT+ DTG GI Sbjct: 540 LINLLNNAIKFTPEGGKVVV-------QADLIKEQGKENSQSPPQLSFTVFDTGIGIEAD 592 Query: 546 ELSHLFEAFSQTESGRNAQ-EGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFSI 601 L+++FE F Q +S N + +GTGLGL++ ++ ++L GG + V+S +++G+ F +I Sbjct: 593 RLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITI 649 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 118 bits (295), Expect = 8e-29 Identities = 112/421 (26%), Positives = 187/421 (44%), Gaps = 38/421 (9%) Query: 323 LYQQRELERAQREKILIEYNESLQKQVDLVRXXXXXXXXXXXXXTFVANMSHELRSPLNA 382 LY + + ++ EK +IE + L+ + F+ N+SHELR+PL + Sbjct: 343 LYSEVQKQKNNFEKRVIERTKELRDTL------MAAQAANLLKSQFINNISHELRTPLTS 396 Query: 383 IIGFSQLMLRTKNLPM------EQYENAGIIQRSGEYLLNLINNILDFSKIEAGKTHLNR 436 IIG S +LR + P +QY I Q +G+ LL+ IN+I+ S++E+G+T LN Sbjct: 397 IIGLSATLLRWFDHPASLPPAKQQYYLLNI-QENGKKLLDQINSIIQLSQLESGQTALNC 455 Query: 437 HNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVY-GDEIKLRQILLNLLSNAIK 495 +F A + I L ++ + + D+ +L QIL LL+NA+K Sbjct: 456 QSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALK 515 Query: 496 FTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISEVELSHLFEAFS 555 FT V+ ++ + Q F ++DTG GI+E +L LFEAF Sbjct: 516 FTPAEGTVILRIWKESNQAI-----------------FQVEDTGIGINEQQLPVLFEAFK 558 Query: 556 QT-ESGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFSILVDLGEITLSREP 614 +S + E G+GLA+T+Q ++L GG I V S QGT F+ ++ + + Sbjct: 559 VAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTI--FTTVIPQQNFPPTTKG 616 Query: 615 NSAKKVLALTPGQPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEP 674 K+ A P ++V++ L+ +LL +++ + A+ E +P Sbjct: 617 QVQDKLDAAMPFNS--SVIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQP 674 Query: 675 HLIFMDMRMPVMDGYEATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF 734 LI +D +D E T+ IK + + + G DD+L KP Sbjct: 675 GLIIVD--GDFVDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDYLLKPL 732 Query: 735 R 735 + Sbjct: 733 Q 733 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 117 bits (294), Expect = 1e-28 Identities = 81/248 (32%), Positives = 128/248 (51%), Gaps = 26/248 (10%) Query: 368 FVANMSHELRSPLNAIIGFSQLMLRTK-NLPMEQYENAGIIQRSGEYLLNLINNILDFSK 426 F+A+ +HELR+PLN IIGF +L+L + E++E +S LLNLIN+ILD +K Sbjct: 197 FLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEAYQSALLLLNLINDILDLAK 256 Query: 427 IEAGKTHLNRHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGDEIKLRQIL 486 IEAG+ + +A N+G+ + P VYG++ L Q++ Sbjct: 257 IEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAPNQGPLLVYGNQRWLLQVM 316 Query: 487 LNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYW--------LDFTIKDT 538 LN++ NAIKFT EG + + P+ W L ++ DT Sbjct: 317 LNIVGNAIKFTHEGGITVA---------------VEVMPRTVLWEGVQKPGLLKVSVGDT 361 Query: 539 GKGISEVELSHLFEAFSQTE-SGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVD-QGTT 596 G G+S + S LF+ F Q + S A GTGLGL I+++ ++ MGG + S+ + G+T Sbjct: 362 GIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGST 421 Query: 597 FSFSILVD 604 +F++L++ Sbjct: 422 VTFTVLLE 429 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 104 bits (260), Expect = 1e-24 Identities = 77/234 (32%), Positives = 118/234 (50%), Gaps = 24/234 (10%) Query: 369 VANMSHELRSPLNAIIGFSQLMLRTK---NLPMEQYENAGIIQRSGEYLLNLINNILDFS 425 ++++ HE R+PL AIIGF++ MLR + L +Q++ S E+LL+L+N+ LD S Sbjct: 190 LSHIHHEFRTPLTAIIGFAR-MLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLS 248 Query: 426 KIEAGKTHLNRHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGDEIKLRQI 485 KI+A L KA + + L D + + Y D+ + +QI Sbjct: 249 KIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVD-FCYVDQRRWKQI 307 Query: 486 LLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISEV 545 L+NLLSN +KFT +G V L + L F++ DTG GI Sbjct: 308 LINLLSNGVKFTPKGSVTLAVKATDKA------------------LIFSVIDTGIGIDPE 349 Query: 546 ELSHLFEAFSQTESGRN-AQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFS 598 + LF+ F Q + A++GTGLGLA++R+ +L GGDI ++S G+ FS Sbjct: 350 DQRDLFQPFKQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFS 403 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 88.2 bits (217), Expect = 9e-20 Identities = 75/254 (29%), Positives = 114/254 (44%), Gaps = 27/254 (10%) Query: 348 QVDLVRXXXXXXXXXXXXXTFVANMSHELRSPLNAIIGFSQLML----RTKNLPMEQYEN 403 +++ +R FV +SHE R+PL +IIGF +L+ R +QY N Sbjct: 923 EIETLRSLVKERELNEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKQQYIN 982 Query: 404 AGIIQRSGEYLLNLINNILDFSKIEAGKTHLNRHNFXXXXXXXXXXXXXXXKAANE-GIE 462 IQ S + L LI+++L S+ +A K + N +E E Sbjct: 983 N--IQNSSQRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFE 1040 Query: 463 LIFIRDHDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETS 522 L + D V D LR IL N+LSNAIK++ G + T Sbjct: 1041 LNYHLKPDEHSLV--DVRLLRHILENILSNAIKYSAPGSTI-----------------TL 1081 Query: 523 TEPKNKYWLDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMG 582 K++ L F ++D G GI + LFEAF + + + GTGLGL+I +++++ G Sbjct: 1082 DISKDEEHLLFQVRDEGIGIPLQDQEKLFEAFHRASNVGDIP-GTGLGLSIVKRYVEFQG 1140 Query: 583 GDINVSSVVDQGTT 596 G I V S+ +GTT Sbjct: 1141 GTIEVISMPGKGTT 1154 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 82.8 bits (203), Expect = 4e-18 Identities = 67/237 (28%), Positives = 110/237 (46%), Gaps = 23/237 (9%) Query: 368 FVANMSHELRSPLNAIIGFSQLMLRTKNL---PMEQYENAGIIQRSGEYLLNLINNILDF 424 F + SHE R+PL+ + +QL+ ++ P ++ N IQ S + ++ L+++IL Sbjct: 72 FFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLLDDILII 131 Query: 425 SKIEAGKTHLNRHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGDEIKLRQ 484 ++ EAGK N + +++ D V DE +R Sbjct: 132 NRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKALV--DERLVRS 189 Query: 485 ILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISE 544 IL NLLSNAIK++ G + + ++EQ + F + D G GIS Sbjct: 190 ILSNLLSNAIKYSPGGGQIKIALSLDSEQ-----------------IIFEVTDQGIGISP 232 Query: 545 VELSHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFSI 601 + +FE F + ++ RN GTGLGL + ++ + L G I + S VDQGTT + + Sbjct: 233 EDQKQIFEPFHRGKNVRNIT-GTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICL 288 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 75.9 bits (185), Expect = 5e-16 Identities = 37/103 (35%), Positives = 58/103 (56%) Query: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 K+L+V+D +NR +L + L G+E+ A +G++A+ + S P LI MDM +P++DG+ Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 Query: 691 ATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKP 733 ATK IKG G + ++AGCDD+ KP Sbjct: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKP 108 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 66.2 bits (160), Expect = 4e-13 Identities = 74/293 (25%), Positives = 123/293 (41%), Gaps = 41/293 (13%) Query: 319 KLQEL-YQQRELERAQREKILIEYNESLQKQVDLVRXXXXXXXXXXXXXTFVANMSHELR 377 +LQ L +Q E++ A K I N L++ +L + F SH+L+ Sbjct: 483 RLQSLPWQSVEIQSALALKKAI-VNLILRQAEELAQLARNLERSNADLKKFAYIASHDLQ 541 Query: 378 SPLNAIIGFSQLM-LRTKNLPMEQYENAGIIQRSGEYLLN-LINNILDFSKIEAGKTHLN 435 PLN + + QL+ +R E ++ +G L+ LI++IL ++K++ L Sbjct: 542 EPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLT 601 Query: 436 RHNFXXXXXXXXXXXXXXXKAANEGIELIFIRDHDLPRYVYGDEIKLRQILLNLLSNAIK 495 + + + IE+ +P V D+I+L Q+ NL++N IK Sbjct: 602 FTDVQEVVDKALANLKQRIEESGAEIEV-----GSMPA-VMADQIQLMQVFQNLIANGIK 655 Query: 496 FTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLD-------FTIKDTGKGISEVELS 548 F + PK K W D F ++D G GI Sbjct: 656 FAGD-----------------------KSPKIKIWGDRQEDAWVFAVQDNGIGIDPQFFE 692 Query: 549 HLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFSI 601 +F F + + R+ +GTG+GLAI ++ I+ G I + S +G+TF FSI Sbjct: 693 RIFVIFQRLHT-RDEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSI 744 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 57.0 bits (136), Expect = 2e-10 Identities = 35/118 (29%), Positives = 60/118 (50%), Gaps = 2/118 (1%) Query: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWE--PHLIFMDMRMPVMDGY 689 ILVV+D+++ R+L+ + L+ ++I EA NG A+ L S E P LI D+ MP MDG+ Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 690 EATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPFRENTIFDSLTKHL 747 ++ K +++G DD+L KPF++ + +++ L Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRL 121 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 57.0 bits (136), Expect = 2e-10 Identities = 32/104 (30%), Positives = 50/104 (48%) Query: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 IL+VDD N QLL LL G+ + ++G+ A+ + P LI +D++MP MDGY+ Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 692 TKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPFR 735 + IK + + K G D++ KPF+ Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQ 114 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 55.5 bits (132), Expect = 7e-10 Identities = 30/101 (29%), Positives = 54/101 (53%), Gaps = 3/101 (2%) Query: 634 VVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEATK 693 +VDD++ R++L L+ G+E+ A++G+EAIA + +P L+ +D+ MP +DGY + Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 694 YIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF 734 ++ K + + L G DD++ KPF Sbjct: 61 ELR---KESDIPIIMLTALGDVADRITGLELGADDYVVKPF 98 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 54.7 bits (130), Expect = 1e-09 Identities = 28/104 (26%), Positives = 53/104 (50%) Query: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 +L+V+D S R+++ +L G+++ A +G EA+ +++ P L+ +D+ MP M+GYE Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 692 TKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPFR 735 + IK K + + G D ++ KPF+ Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQ 133 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 52.4 bits (124), Expect = 6e-09 Identities = 37/110 (33%), Positives = 57/110 (51%), Gaps = 6/110 (5%) Query: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAI-ALWESWEPHLIFMDMRMPVMDGY 689 K+L+VDD +LL LL GF++E A+NG EA+ L ES++ L+ +D+ MP ++G Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESYK--LVLLDVMMPKLNGI 60 Query: 690 EATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPFRENTI 739 E K I+ K + + + L G DD L KPF + + Sbjct: 61 ETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDREL 107 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 50.4 bits (119), Expect = 2e-08 Identities = 36/125 (28%), Positives = 60/125 (48%), Gaps = 5/125 (4%) Query: 631 KILVVDDKSVNRQLLIKLLA--PFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDG 688 ++L+ DD ++ RQ L ++ P I +A NG++AIAL+E +P + MD+RMP ++G Sbjct: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEG 67 Query: 689 YEATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPFRENTIFDSL-TKHL 747 A I VK + L AG +L K + + +++ T H Sbjct: 68 VAAISAICAIVKFARIIVLTTYDSDEDIYRG--LQAGAKGYLLKETEPDELLNAIRTVHR 125 Query: 748 GVTYV 752 G Y+ Sbjct: 126 GQKYI 130 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 49.3 bits (116), Expect = 5e-08 Identities = 25/59 (42%), Positives = 35/59 (59%) Query: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGY 689 KILVVDD R L L G +E A+NG+EA+ + +P ++ +D MPVMDG+ Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 48.5 bits (114), Expect = 8e-08 Identities = 31/106 (29%), Positives = 51/106 (48%), Gaps = 2/106 (1%) Query: 630 YKILVVDDKSVNRQLLIKLLAPF-GFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDG 688 Y +L+VDD N LL+K + G+++ A NG+EA+ L + P +I D+ MP MDG Sbjct: 8 YHLLLVDDDP-NLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDG 66 Query: 689 YEATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF 734 Y + ++ + + L+ G D ++ KPF Sbjct: 67 YAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPF 112 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 48.5 bits (114), Expect = 8e-08 Identities = 29/103 (28%), Positives = 47/103 (45%) Query: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 IL+V+D QL+ + L F ++G+ + +++ P LI +D+ +P +DG E Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 Query: 692 TKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF 734 I+ Q + I LS G DD+L KPF Sbjct: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPF 116 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 47.4 bits (111), Expect = 2e-07 Identities = 26/104 (25%), Positives = 49/104 (47%) Query: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 +IL++DD L+ L G+++++A +G + AL +P LI +D+ +P +DG+ Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 691 ATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF 734 + ++ + K +G DD+L KPF Sbjct: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPF 106 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 47.4 bits (111), Expect = 2e-07 Identities = 28/114 (24%), Positives = 55/114 (48%), Gaps = 9/114 (7%) Query: 628 PVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEP-------HLIFMD 680 P ++ILVV+D+ R+ ++ L G+E+ +G++A+AL + + LI +D Sbjct: 29 PSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILD 88 Query: 681 MRMPVMDGYEATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF 734 + +P ++G + + ++ G+ K L G DD++ KPF Sbjct: 89 IMLPQVNGLDVCRSLR--FGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPF 140 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 47.4 bits (111), Expect = 2e-07 Identities = 30/104 (28%), Positives = 50/104 (48%), Gaps = 1/104 (0%) Query: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 KIL+V+D+ R+++ L+ +++ EAS+ + AI + P LI +D +P G + Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQ 62 Query: 691 ATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF 734 +YIK Q L+AG DD++ KPF Sbjct: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPF 106 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 47.0 bits (110), Expect = 2e-07 Identities = 33/111 (29%), Positives = 53/111 (47%), Gaps = 5/111 (4%) Query: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 KILVV+D+ V R L + G+++ EA NG E + + +L+ MD+ +P +G Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 691 ATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF--RENTI 739 + ++ ++ K + L G DD+L KPF RE TI Sbjct: 65 LARELREEL---SLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTI 112 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 45.4 bits (106), Expect = 7e-07 Identities = 29/103 (28%), Positives = 49/103 (47%), Gaps = 2/103 (1%) Query: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 IL+VDD++ + L K L G I+ A G+ +A+ + + L+ +D +P + G E Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 692 TKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF 734 + I+ + G+ + L AG DD+L KPF Sbjct: 64 CRQIR--ILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF 104 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 45.1 bits (105), Expect = 9e-07 Identities = 27/108 (25%), Positives = 46/108 (42%) Query: 627 QPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVM 686 +P+ +LV D+ V + L F+++ A+N EA + P L+ D+ MP + Sbjct: 54 EPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQV 113 Query: 687 DGYEATKYIKGQVKGNXXXXXXXXXXXXXXXKAIVLSAGCDDFLRKPF 734 DGY+ + ++ + + GCD FL KPF Sbjct: 114 DGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPF 161 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.138 0.395 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 70,952 Number of Sequences: 78 Number of extensions: 2984 Number of successful extensions: 146 Number of sequences better than 1.0e-05: 31 Number of HSP's better than 0.0 without gapping: 16 Number of HSP's successfully gapped in prelim test: 15 Number of HSP's that attempted gapping in prelim test: 57 Number of HSP's gapped (non-prelim): 38 length of query: 834 length of database: 48,235 effective HSP length: 70 effective length of query: 764 effective length of database: 42,775 effective search space: 32680100 effective search space used: 32680100 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.9 bits) S2: 96 (41.6 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001133 sll1673 (452 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001133 sll1673 775 0.0 SYNE-PCC-01-002618 slr1760 172 1e-45 SYNE-PCC-01-000542 sll0821 152 3e-39 SYNE-PCC-01-001306 sll1905 97 1e-22 SYNE-PCC-01-001461 slr0115 88 6e-20 SYNE-PCC-01-002033 slr0947 87 1e-19 SYNE-PCC-01-002731 slr1909 78 6e-17 SYNE-PCC-01-002086 slr1042 76 2e-16 SYNE-PCC-01-000414 sll0649 71 8e-15 SYNE-PCC-01-001437 slr0081 68 7e-14 SYNE-PCC-01-002672 slr1837 62 3e-12 SYNE-PCC-01-002489 slr1588 62 4e-12 SYNE-PCC-01-002635 slr1783 62 5e-12 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 62 5e-12 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 61 8e-12 SYNE-PCC-01-000242 sll0396 59 4e-11 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 58 5e-11 SYNE-PCC-01-002788 slr1982 58 7e-11 SYNE-PCC-01-002879 slr2104 57 1e-10 SYNE-PCC-01-000800 sll1228 55 3e-10 SYNE-PCC-01-002486 slr1584 55 4e-10 SYNE-PCC-01-000523 sll0797 54 8e-10 SYNE-PCC-01-002221 slr1213 51 6e-09 SYNE-PCC-01-000877 sll1330 51 6e-09 SYNE-PCC-01-002617 slr1759 50 1e-08 SYNE-PCC-01-002873 slr2098 50 2e-08 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 49 2e-08 SYNE-PCC-01-001132 sll1672 46 3e-07 SYNE-PCC-01-000518 sll0789 46 3e-07 SYNE-PCC-01-000608 sll0921 45 6e-07 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 775 bits (2001), Expect = 0.0 Identities = 403/452 (89%), Positives = 403/452 (89%) Query: 1 MENTDEKKGNILLVXXXXXXXXXXXXXXXXXGYTVRSVTSGKMALRTLQVKRPDLILLDI 60 MENTDEKKGNILLV GYTVRSVTSGKMALRTLQVKRPDLILLDI Sbjct: 1 MENTDEKKGNILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDI 60 Query: 61 KMPDMDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVA 120 KMPDMDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVA Sbjct: 61 KMPDMDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVA 120 Query: 121 RIEGQFTIQRQRIXXXXXXXXXXXXXXXXYQSRALLSSVLNSALDGIAAMQAVRNPQTGD 180 RIEGQFTIQRQRI YQSRALLSSVLNSALDGIAAMQAVRNPQTGD Sbjct: 121 RIEGQFTIQRQRIALKREVRKRREAEEVLYQSRALLSSVLNSALDGIAAMQAVRNPQTGD 180 Query: 181 IEDFRCLVINPILSKAFNRSREDLIGRVLLKRFLQRLDPQLFDQFVNLVETGTFLTQDIY 240 IEDFRCLVINPILSKAFNRSREDLIGRVLLKRFLQRLDPQLFDQFVNLVETGTFLTQDIY Sbjct: 181 IEDFRCLVINPILSKAFNRSREDLIGRVLLKRFLQRLDPQLFDQFVNLVETGTFLTQDIY 240 Query: 241 FPIANSDWYHFVAVKLGDGFAVTVRDITDRKRMXXXXXXXXXXXXXXXXIDGLTHIANRR 300 FPIANSDWYHFVAVKLGDGFAVTVRDITDRKRM IDGLTHIANRR Sbjct: 241 FPIANSDWYHFVAVKLGDGFAVTVRDITDRKRMELELQAANQQLQLLANIDGLTHIANRR 300 Query: 301 RFDEYLAQEWQRHCREQKPLSLILVDIDYFKAYNDLYGHQKGDDCLQKVANTLVDIAKRI 360 RFDEYLAQEWQRHCREQKPLSLILVDIDYFKAYNDLYGHQKGDDCLQKVANTLVDIAKRI Sbjct: 301 RFDEYLAQEWQRHCREQKPLSLILVDIDYFKAYNDLYGHQKGDDCLQKVANTLVDIAKRI 360 Query: 361 TDLVARYGGEEFVIVLPNTNRQDALAMAENMLQAIAALAIPHEGSSVSKYVTISIGVSSI 420 TDLVARYGGEEFVIVLPNTNRQDALAMAENMLQAIAALAIPHEGSSVSKYVTISIGVSSI Sbjct: 361 TDLVARYGGEEFVIVLPNTNRQDALAMAENMLQAIAALAIPHEGSSVSKYVTISIGVSSI 420 Query: 421 IPMPEDTIERIISEADQALYSAKSQGRNRAIA 452 IPMPEDTIERIISEADQALYSAKSQGRNRAIA Sbjct: 421 IPMPEDTIERIISEADQALYSAKSQGRNRAIA 452 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 172 bits (437), Expect = 1e-45 Identities = 85/163 (52%), Positives = 112/163 (68%) Query: 290 IDGLTHIANRRRFDEYLAQEWQRHCREQKPLSLILVDIDYFKAYNDLYGHQKGDDCLQKV 349 +D LT +ANRR+ + +L EW REQ P S++L DIDYFK YND YGHQ GDDCLQ+V Sbjct: 151 VDQLTQLANRRQLELFLDTEWSEAIREQYPFSILLCDIDYFKNYNDHYGHQGGDDCLQQV 210 Query: 350 ANTLVDIAKRITDLVARYGGEEFVIVLPNTNRQDALAMAENMLQAIAALAIPHEGSSVSK 409 A L + R DL ARYGGEEF+IVLPNT+ Q A+ + E++ I LAIPH S+++ Sbjct: 211 AKALTRVVHRPKDLAARYGGEEFLIVLPNTDLQGAIHIGEDIQAEITRLAIPHVQSAIAD 270 Query: 410 YVTISIGVSSIIPMPEDTIERIISEADQALYSAKSQGRNRAIA 452 +VT+SIG +S IP +++ ADQ LY AK+QGRNR ++ Sbjct: 271 HVTLSIGCASTIPRLGSDWGKLVGAADQYLYEAKAQGRNRLVS 313 Score = 62.4 bits (150), Expect = 3e-12 Identities = 34/103 (33%), Positives = 55/103 (53%), Gaps = 3/103 (2%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 G+ V T+G+ AL +P+++LLD MP MDG+ C+ + K + ++ I+ L Sbjct: 35 GHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFACCQALMKIYQNPSPLVLMITGL 94 Query: 92 GDTFDKVKAFECGGVDYITKPFQ---IEEVVARIEGQFTIQRQ 131 D +AFE G +DY+TKP + + V R+ Q +Q Q Sbjct: 95 DDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQNRLQHQ 137 >SYNE-PCC-01-000542 sll0821 Length = 1276 Score = 152 bits (383), Expect = 3e-39 Identities = 76/163 (46%), Positives = 108/163 (66%), Gaps = 1/163 (0%) Query: 290 IDGLTHIANRRRFDEYLAQEWQRHCREQKPLSLILVDIDYFKAYNDLYGHQKGDDCLQKV 349 +D LT + NR FD L +EWQR R ++PL+L+L D+D+FK +ND YGH GD CL+K+ Sbjct: 1102 LDALTQVGNRYLFDSTLEREWQRLQRIREPLALLLCDVDFFKGFNDNYGHPAGDRCLKKI 1161 Query: 350 ANTLVDIAKRITDLVARYGGEEFVIVLPNTNRQDALAMAENMLQAIAALAIPHEGSSVSK 409 A+ + +AKR TDLVARYGGEEF I+L T+ + A+ + E + +A LAIPH S Sbjct: 1162 ADAMAKVAKRPTDLVARYGGEEFAIILSETSLEGAINVTEALQVEVANLAIPHTVSGTG- 1220 Query: 410 YVTISIGVSSIIPMPEDTIERIISEADQALYSAKSQGRNRAIA 452 +VT+SIG++ P ++ AD ALY AK++GRN+ +A Sbjct: 1221 HVTLSIGIAVYTPERHINPNALVKAADLALYEAKAKGRNQWLA 1263 Score = 63.5 bits (153), Expect = 1e-12 Identities = 47/162 (29%), Positives = 82/162 (50%), Gaps = 8/162 (4%) Query: 291 DGLTHIANRRRFDEYLAQEWQRHCREQKPLSLILVDIDYFKAYNDLYGHQKGDDCLQKVA 350 D LT + N F+ L E K + ++++ +D FK N+ +GH+ GD LQ+VA Sbjct: 434 DPLTQLPNWIIFNRQLTLALLDALYEGKMVGVLVIAMDRFKRINESFGHKTGDGLLQEVA 493 Query: 351 NTL---VDIAKRITDLVARYGGEEFVIVLPN-TNRQDALAMAENMLQAIAALAIPHEGSS 406 + L + + L++R+ G+ F I+L ++ Q+ + + E +L P Sbjct: 494 DRLNQKLSPLAAYSPLLSRWHGDGFTILLTQISDNQEMIPLCERLLSTFQE---PFFLQG 550 Query: 407 VSKYVTISIGVSSIIPMPEDTIERIISEADQALYSAKSQGRN 448 Y+T S+G+S+ P +T E ++ A+ AL AK QG+N Sbjct: 551 QPIYLTASMGIST-APYDGETAESLLKFAEIALTRAKCQGKN 591 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 97.1 bits (240), Expect = 1e-22 Identities = 78/267 (29%), Positives = 124/267 (46%), Gaps = 50/267 (18%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 GY+ VTSG AL+ + +PDLILLD+ MP MDG +VC+ +K++ + +DIP+IF++A Sbjct: 41 GYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTAS 100 Query: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVARIEGQFTIQRQRIXXXXXXXXXXXXXXXXYQ 151 + D ++AF G VDY+TKPF E++AR++ +++ R Q Sbjct: 101 NEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLELKQTR---------DNLHHTLLEQ 151 Query: 152 SRALLSSVLNSALDGIAAMQAVRNPQTGDI---EDFRCLVINPILSKAFNRS-REDLI-- 205 +R + S GI V+N Q G + +V+NP ++ FN DL+ Sbjct: 152 ARTAEALACTSTRLGI----LVQNMQAGVLMTDAQGTIVVVNPEFARLFNLGFPADLLLG 207 Query: 206 ----------------GRVLLKRFLQRLDPQLFDQFVNLVETGTFLTQDIYFPIANSDWY 249 G+ + FL P+ + +E G F +D Sbjct: 208 KNLTAIAPRINGLISHGQGVTHNFLAIESPEPLLKVELALEDGRFFERD----------- 256 Query: 250 HFVAVKLGD---GFAVTVRDITDRKRM 273 +V + LGD G RDI+ RK++ Sbjct: 257 -YVPIMLGDSSQGHFWLYRDISQRKQV 282 Score = 54.3 bits (129), Expect = 8e-10 Identities = 29/86 (33%), Positives = 49/86 (56%), Gaps = 1/86 (1%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIP-IIFISA 90 GY V V +G+ AL L D++L+D++MP+MDG E I++ + + P II ++A Sbjct: 763 GYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSERPWIIAVTA 822 Query: 91 LGDTFDKVKAFECGGVDYITKPFQIE 116 D+ + G DY++KP ++E Sbjct: 823 YSMEGDRERCLASGMNDYVSKPIRLE 848 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 87.8 bits (216), Expect = 6e-20 Identities = 36/91 (39%), Positives = 60/91 (65%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 GY V+ G +PDLI+LD+ +P +DG+ VC+ ++++E DIP++ ++AL Sbjct: 25 GYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTVCQRLRRDERTADIPVLMLTAL 84 Query: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVARI 122 G DK++ F+ G DY+TKPF +EE++AR+ Sbjct: 85 GQIQDKIQGFDSGADDYLTKPFDVEEMLARV 115 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 86.7 bits (213), Expect = 1e-19 Identities = 41/91 (45%), Positives = 58/91 (63%), Gaps = 3/91 (3%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 GY V + G+ A+ T PDL++LD+ MP +DGY VC+ ++KE DIPII ++AL Sbjct: 20 GYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQELRKE---SDIPIIMLTAL 76 Query: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVARI 122 GD D++ E G DY+ KPF +E+ ARI Sbjct: 77 GDVADRITGLELGADDYVVKPFSPKELEARI 107 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 77.8 bits (190), Expect = 6e-17 Identities = 35/92 (38%), Positives = 58/92 (63%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 GY V + +G+ AL L PD+I+ DI MP+MDGY E +++ ++ IP++F+SA Sbjct: 31 GYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAK 90 Query: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 G + ++VK G Y+ KPF+ EE+ A+++ Sbjct: 91 GQSHNRVKGLNVGADIYMAKPFEPEELAAQVQ 122 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 75.9 bits (185), Expect = 2e-16 Identities = 41/113 (36%), Positives = 58/113 (51%) Query: 11 ILLVXXXXXXXXXXXXXXXXXGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 +LLV G+ V G AL LQ PDL++LDI MP M+GY+V Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 C IK + + +++P+I S+ G+ FD+ G YI KPFQ E+V I+ Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIK 142 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 70.9 bits (172), Expect = 8e-15 Identities = 36/113 (31%), Positives = 58/113 (51%) Query: 10 NILLVXXXXXXXXXXXXXXXXXGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQ 69 NIL+V +T G+ LR Q + PDLI+LD+ +P +DG + Sbjct: 13 NILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLE 72 Query: 70 VCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARI 122 VC I+++ +D I+ ++A G+ D++ G DY+ KPF E+VAR+ Sbjct: 73 VCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARV 125 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 67.8 bits (164), Expect = 7e-14 Identities = 42/107 (39%), Positives = 59/107 (55%), Gaps = 11/107 (10%) Query: 32 GYTVRSVTSGKMALRTLQV-------KRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIP 84 GY V +V G+ AL LQ DLI+LDI +P ++G VC ++ + + P Sbjct: 54 GYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLPQVNGLDVCRSLRFGGD--NTP 111 Query: 85 IIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIEGQFTIQRQ 131 I+ +SA G +KV E G DYITKPF ++E+VAR I+RQ Sbjct: 112 ILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRAM--IRRQ 156 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 62.4 bits (150), Expect = 3e-12 Identities = 33/113 (29%), Positives = 55/113 (48%), Gaps = 2/113 (1%) Query: 10 NILLVXXXXXXXXXXXXXXXXXGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQ 69 NILLV G+T+ GK L + DL++LD +P + G + Sbjct: 3 NILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLE 62 Query: 70 VCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARI 122 +C I+ P++F++A D+V + GG DY+ KPF++ E++AR+ Sbjct: 63 ICRQIRILGH--STPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARV 113 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 62.0 bits (149), Expect = 4e-12 Identities = 33/99 (33%), Positives = 53/99 (53%), Gaps = 2/99 (2%) Query: 33 YTVRSVTSGKMALRTLQVKR--PDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISA 90 Y + +G +AL L PDLI+ D+ MP+MDG+ + ++K + IP IF++A Sbjct: 26 YKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGHGLITALQKNAKTAAIPFIFLTA 85 Query: 91 LGDTFDKVKAFECGGVDYITKPFQIEEVVARIEGQFTIQ 129 LG D K G DY+ KPF+ E+++ + + Q Sbjct: 86 LGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQKQ 124 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 61.6 bits (148), Expect = 5e-12 Identities = 26/83 (31%), Positives = 51/83 (61%) Query: 48 LQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVD 107 LQ P L++ DI MP +DGYQ + ++++ Q +P++F++A G T D+++ ++ G Sbjct: 96 LQHHLPALVISDIMMPQVDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDA 155 Query: 108 YITKPFQIEEVVARIEGQFTIQR 130 +++KPF +E+ A + Q+ Sbjct: 156 FLSKPFDPDELEAIVRNLLARQQ 178 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 61.6 bits (148), Expect = 5e-12 Identities = 29/92 (31%), Positives = 51/92 (55%), Gaps = 2/92 (2%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 G+ V T GK + L D ++LD+ +P +DG +V + + QD+P++ ++A Sbjct: 24 GFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEVLQQWRSNH--QDVPVLILTAR 81 Query: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 ++VK + G DY+ KPF + EV AR++ Sbjct: 82 DTLDERVKGLQSGADDYLCKPFALAEVAARLQ 113 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 60.8 bits (146), Expect = 8e-12 Identities = 35/91 (38%), Positives = 49/91 (53%), Gaps = 1/91 (1%) Query: 33 YTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISALG 92 Y V + K A+ ++ + P LILLD +P G Q + IKK+E IPII ++A Sbjct: 27 YDVIEASDFKTAINKIK-ENPKLILLDWMLPGRSGIQFIQYIKKQESYAAIPIIMLTAKS 85 Query: 93 DTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 D + G DYITKPF + ++ARIE Sbjct: 86 TEEDCIACLNAGADDYITKPFSPQILLARIE 116 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 58.5 bits (140), Expect = 4e-11 Identities = 34/94 (36%), Positives = 47/94 (50%), Gaps = 2/94 (2%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 GY V G Q PDLI+++ +P M G ++C ++ E IPII I+A Sbjct: 26 GYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLELCRRLR--EMGSRIPIILITAK 83 Query: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVARIEGQ 125 D ++V + G DYI KPF +E ARI Q Sbjct: 84 DDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQ 117 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 58.2 bits (139), Expect = 5e-11 Identities = 30/92 (32%), Positives = 55/92 (59%), Gaps = 4/92 (4%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 G+ V + +G AL+ L + L+LLD+ MP ++G + + I+K + ++P++ ++A Sbjct: 25 GFDVETANNGLEALQKLN-ESYKLVLLDVMMPKLNGIETLKEIRK---VSNVPVMMLTAR 80 Query: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 G+ D+V E G D + KPF E++ARI+ Sbjct: 81 GEDIDRVLGLELGADDCLPKPFNDRELIARIK 112 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 57.8 bits (138), Expect = 7e-11 Identities = 34/118 (28%), Positives = 55/118 (46%) Query: 6 EKKGNILLVXXXXXXXXXXXXXXXXXGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDM 65 E +LLV GY V G+ A+ + P LIL+D+ +P + Sbjct: 2 ESMAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPII 61 Query: 66 DGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 DG+ + IK + IPII ++A D+ +A G DY TKP +I+ ++ ++E Sbjct: 62 DGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKME 119 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 57.0 bits (136), Expect = 1e-10 Identities = 34/111 (30%), Positives = 56/111 (50%) Query: 4 TDEKKGNILLVXXXXXXXXXXXXXXXXXGYTVRSVTSGKMALRTLQVKRPDLILLDIKMP 63 T + +ILLV G V+ +G+ AL L D IL+DI+MP Sbjct: 713 TQLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMP 772 Query: 64 DMDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQ 114 ++GY I+++E +++PII ++A D+ KA + G D++TKP + Sbjct: 773 MLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIK 823 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 55.5 bits (132), Expect = 3e-10 Identities = 30/116 (25%), Positives = 57/116 (49%) Query: 5 DEKKGNILLVXXXXXXXXXXXXXXXXXGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPD 64 D+ +L+V G+ V+ +G+MA+ + P +IL+D++MP Sbjct: 414 DQYNQKVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPV 473 Query: 65 MDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVA 120 +DG + IK + Q II ++A ++ + G D+++KPF+ EE++A Sbjct: 474 LDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 55.1 bits (131), Expect = 4e-10 Identities = 27/90 (30%), Positives = 47/90 (52%), Gaps = 2/90 (2%) Query: 33 YTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISALG 92 YTV T +A DL++LD+ +P++DG +C+ + L +PI+ ++A Sbjct: 25 YTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITLCQKWRSHSYL--MPILMMTARD 82 Query: 93 DTFDKVKAFECGGVDYITKPFQIEEVVARI 122 DK+ + G DY+ KP + E+ AR+ Sbjct: 83 TINDKITGLDAGADDYVVKPVDLGELFARV 112 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 54.3 bits (129), Expect = 8e-10 Identities = 27/92 (29%), Positives = 55/92 (59%), Gaps = 4/92 (4%) Query: 33 YTVRSVTSGKMALRTLQVKRPD--LILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISA 90 Y V VT G A L+ + + L ++D +P + G ++C+ ++ + +P++ ++A Sbjct: 25 YVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGLELCQKLRTQGN--SLPVLMLTA 82 Query: 91 LGDTFDKVKAFECGGVDYITKPFQIEEVVARI 122 LG+ ++V+ + G DY+TKPF + E++AR+ Sbjct: 83 LGEPENRVEGLDAGADDYLTKPFVMAELLARL 114 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 51.2 bits (121), Expect = 6e-09 Identities = 31/93 (33%), Positives = 54/93 (58%), Gaps = 5/93 (5%) Query: 32 GYTVRSVTS-GKMALRTLQVKRPDLILLDIKMP-DMDGYQVCEMIKKEEELQDIPIIFIS 89 GY + + S G AL+ + PDL+LLDI++ ++DG +V E IK L IPI++++ Sbjct: 26 GYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGIEVAERIKS---LYSIPIVYLT 82 Query: 90 ALGDTFDKVKAFECGGVDYITKPFQIEEVVARI 122 A D +A + Y+ KPF+ E++++ + Sbjct: 83 AFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 51.2 bits (121), Expect = 6e-09 Identities = 30/93 (32%), Positives = 50/93 (53%), Gaps = 5/93 (5%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 GY V+ + A + + P L ++D + D DG ++C + ++ + +IFI + Sbjct: 27 GYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIELCRWLYQQHQ----SMIFILSA 82 Query: 92 GDTF-DKVKAFECGGVDYITKPFQIEEVVARIE 123 DT D V + G DY+TKPF ++E +ARIE Sbjct: 83 KDTEKDIVHGLKAGADDYLTKPFGMQEFLARIE 115 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 50.1 bits (118), Expect = 1e-08 Identities = 28/88 (31%), Positives = 48/88 (54%), Gaps = 1/88 (1%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIP-IIFISA 90 GY V +G+ + L+ K DL+L+D++MP MDG C I++ L+ P I+ ++A Sbjct: 1213 GYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTA 1272 Query: 91 LGDTFDKVKAFECGGVDYITKPFQIEEV 118 D+ + + G YI+KP I ++ Sbjct: 1273 NAMPGDRQECLDAGMDGYISKPISINQL 1300 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 49.7 bits (117), Expect = 2e-08 Identities = 29/108 (26%), Positives = 51/108 (47%) Query: 11 ILLVXXXXXXXXXXXXXXXXXGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 ILLV G+ V +G +AL L L+L+D++MP+MDG + Sbjct: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEA 986 Query: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEV 118 I++ +PI+ ++A D+ + + G D++ KP + EE+ Sbjct: 987 TIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 49.3 bits (116), Expect = 2e-08 Identities = 27/90 (30%), Positives = 45/90 (50%), Gaps = 3/90 (3%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 GY V +G L +L+++DI +P +G + +++E L P+IF++ Sbjct: 27 GYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLLLARELREELSL---PLIFLTGR 83 Query: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVAR 121 + DK+ E G DY+TKPF E+ R Sbjct: 84 DNEVDKILGLEIGADDYLTKPFNPRELTIR 113 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 45.8 bits (107), Expect = 3e-07 Identities = 22/83 (26%), Positives = 44/83 (53%) Query: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 G+ + ++G+ A+ + P LI +D++MP MDGY+ + IK + + ++ ++A Sbjct: 653 GFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEATKYIKGQVKGNATAVVALTAS 712 Query: 92 GDTFDKVKAFECGGVDYITKPFQ 114 +K G D++ KPF+ Sbjct: 713 VLEEEKAIVLSAGCDDFLRKPFR 735 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 45.8 bits (107), Expect = 3e-07 Identities = 19/68 (27%), Positives = 40/68 (58%), Gaps = 2/68 (2%) Query: 55 LILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQ 114 L + D +P + G ++C+ ++ + +PI+ ++A D+V+ + G DY+ KPF Sbjct: 49 LAIFDWMVPGLSGLELCQKLRGQRS--SLPILMLTAKDQIADRVEGLDAGADDYLIKPFG 106 Query: 115 IEEVVARI 122 + E++AR+ Sbjct: 107 MAELLARL 114 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 44.7 bits (104), Expect = 6e-07 Identities = 23/89 (25%), Positives = 44/89 (49%) Query: 35 VRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISALGDT 94 V +G++ L +Q RPD++++DI +PDM+G V + +KK ++ ++ Sbjct: 32 VGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQE 91 Query: 95 FDKVKAFECGGVDYITKPFQIEEVVARIE 123 + AF G Y K + E ++ I+ Sbjct: 92 ETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.322 0.139 0.395 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 36,192 Number of Sequences: 78 Number of extensions: 1468 Number of successful extensions: 63 Number of sequences better than 1.0e-05: 30 Number of HSP's better than 0.0 without gapping: 23 Number of HSP's successfully gapped in prelim test: 7 Number of HSP's that attempted gapping in prelim test: 18 Number of HSP's gapped (non-prelim): 39 length of query: 452 length of database: 48,235 effective HSP length: 66 effective length of query: 386 effective length of database: 43,087 effective search space: 16631582 effective search space used: 16631582 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.9 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001160 sll1708 (226 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001160 sll1708 436 e-125 SYNE-PCC-01-000608 sll0921 172 8e-46 SYNE-PCC-01-001075 sll1592 150 3e-39 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 125 1e-31 SYNE-PCC-01-001575 slr0312 119 6e-30 SYNE-PCC-01-001039 sll1544 77 5e-17 SYNE-PCC-01-002731 slr1909 74 4e-16 SYNE-PCC-01-002486 slr1584 65 1e-13 SYNE-PCC-01-002788 slr1982 63 9e-13 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 55 1e-10 SYNE-PCC-01-000518 sll0789 54 6e-10 SYNE-PCC-01-000414 sll0649 54 6e-10 SYNE-PCC-01-002221 slr1213 53 7e-10 SYNE-PCC-01-000242 sll0396 52 1e-09 SYNE-PCC-01-002951 ssl0564 52 2e-09 SYNE-PCC-01-002617 slr1759 52 2e-09 SYNE-PCC-01-000800 sll1228 52 2e-09 SYNE-PCC-01-002672 slr1837 51 3e-09 SYNE-PCC-01-000511 sll0782 51 4e-09 SYNE-PCC-01-001461 slr0115 50 5e-09 SYNE-PCC-01-002033 slr0947 49 1e-08 SYNE-PCC-01-000523 sll0797 49 1e-08 SYNE-PCC-01-001306 sll1905 48 2e-08 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 47 5e-08 SYNE-PCC-01-001437 slr0081 46 1e-07 SYNE-PCC-01-001132 sll1672 46 1e-07 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 42 2e-06 SYNE-PCC-01-002489 slr1588 42 2e-06 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 41 4e-06 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 436 bits (1120), Expect = e-125 Identities = 226/226 (100%), Positives = 226/226 (100%) Query: 1 MDFTSPHRVKIEPCLPMKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAV 60 MDFTSPHRVKIEPCLPMKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAV Sbjct: 1 MDFTSPHRVKIEPCLPMKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAV 60 Query: 61 LNPDLIVMDIGLPGLDGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKG 120 LNPDLIVMDIGLPGLDGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKG Sbjct: 61 LNPDLIVMDIGLPGLDGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKG 120 Query: 121 ATLERLILAIAAAQDGATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVEG 180 ATLERLILAIAAAQDGATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVEG Sbjct: 121 ATLERLILAIAAAQDGATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVEG 180 Query: 181 KSNQEIAQTLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSGLV 226 KSNQEIAQTLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSGLV Sbjct: 181 KSNQEIAQTLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSGLV 226 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 172 bits (436), Expect = 8e-46 Identities = 93/218 (42%), Positives = 141/218 (64%), Gaps = 8/218 (3%) Query: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 ++I ++ED+ L++ GL+ AL FE +G NG + PD++++DIGLP ++ Sbjct: 4 IRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMN 63 Query: 77 GIEATKQIKQ--TSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQ 134 GI+ T+Q+K+ + Q +V+LT + ++AA S+GADAYC+K + E LI AI A Sbjct: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQATH 123 Query: 135 DGATYLDPQIARVVV------ENLKPPVPEGQADVSSLSEREIDVLKLIVEGKSNQEIAQ 188 G ++DP IAR+V+ E +P P + L+ERE++VL+LIV+G SN +IA+ Sbjct: 124 GGFAWIDPAIARIVLAHAPGAEPSEPSSPSRTSLSYGLTERELEVLQLIVDGCSNADIAE 183 Query: 189 TLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSGLV 226 LY++ T+KTHVR I+NKL +DR QAAV A+RSGLV Sbjct: 184 KLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGLV 221 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 150 bits (379), Expect = 3e-39 Identities = 84/217 (38%), Positives = 128/217 (58%), Gaps = 7/217 (3%) Query: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 ++IL+VEDD L +LGL L ++ G ++G A+ D++++D+GLPG+ Sbjct: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIG 67 Query: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQDG 136 GIEA QIK+ PQ+ +++LTSH+ P I + + A YCVKG E L+LAI + G Sbjct: 68 GIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVAAG 127 Query: 137 ATYLDP------QIARVVVENLKPPVPEGQAD-VSSLSEREIDVLKLIVEGKSNQEIAQT 189 A + D Q A + +P AD + L++RE+++L L+ +GKSNQEIA Sbjct: 128 AFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKSNQEIADE 187 Query: 190 LYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSGLV 226 LY++ T++ HV I+ KL V DR QAA++A+ LV Sbjct: 188 LYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRLV 224 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 125 bits (314), Expect = 1e-31 Identities = 63/203 (31%), Positives = 113/203 (55%), Gaps = 5/203 (2%) Query: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 +K+L+++D PLM+ G++Q + + FE++ V +G + A +PD+I++D+ + GL Sbjct: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLS 64 Query: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQDG 136 G++ K ++ I++LT N+I + +GAD Y +K + L+ I G Sbjct: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQG 124 Query: 137 ATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVEGKSNQEIAQTLYLSTNT 196 L I +++E P + SL++RE+ VL+ I G SN++IA L++S T Sbjct: 125 EVILSDSIKNLLLERTHEDNP-----LDSLTDREMGVLRQIATGLSNKQIAAQLFISEET 179 Query: 197 IKTHVRGIMNKLSVDDRVQAAVI 219 +K H+R ++ KL+V RV A V+ Sbjct: 180 VKVHIRNLLRKLNVHSRVAATVL 202 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 119 bits (299), Expect = 6e-30 Identities = 65/210 (30%), Positives = 110/210 (52%), Gaps = 9/210 (4%) Query: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 +++LI +D + + GL + ++I + +NG A+ PD+ +MD+ +P ++ Sbjct: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 Query: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQDG 136 G+ A I I+VLT++ +I L +GA Y +K + L+ AI G Sbjct: 67 GVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHRG 126 Query: 137 ATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVEGKSNQEIAQTLYLSTNT 196 Y+ P + +V+ L P LSERE++VL + +G SN +IA L + T Sbjct: 127 QKYIPPDVGAKLVQRLSNP---------ELSERELEVLGSLAQGMSNADIATALSIGEGT 177 Query: 197 IKTHVRGIMNKLSVDDRVQAAVIALRSGLV 226 +K+HV I+NKL V DR QA ++A++ G+V Sbjct: 178 VKSHVNRILNKLDVGDRTQAVIVAVKRGIV 207 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 77.0 bits (188), Expect = 5e-17 Identities = 54/165 (32%), Positives = 89/165 (53%), Gaps = 13/165 (7%) Query: 63 PDLIVMDIGLPGLDGIEATKQIKQ--TSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKG 120 P ++V+ L G++ KQ+K SPQ +++L H E A GADA ++ Sbjct: 71 PLVVVICQRLEDGSGLDLLKQLKAHARSPQCLLLLLNDHAAIVE--EAQQYGADAIFLES 128 Query: 121 ATLERLI-LAIAAAQDGATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVE 179 + I LA+ G TY+D ++ + + Q D L++RE+ +L+L+ E Sbjct: 129 SLGNGEINLAVECLLQGRTYIDSRLEAIA------DYRKSQKD--ELTQREVAILRLVAE 180 Query: 180 GKSNQEIAQTLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSG 224 GK+N EI Q L+L+++T++ +V+ IM KL+ DR AA+ LR G Sbjct: 181 GKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIAGLREG 225 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 73.9 bits (180), Expect = 4e-16 Identities = 55/212 (25%), Positives = 105/212 (49%), Gaps = 14/212 (6%) Query: 19 ILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDGI 78 +L+V+DDP + L ++ L ++ +++ NG A+ PD+IV DI +P +DG Sbjct: 10 LLLVDDDPNLLLLVKDYL-EYQGYQVT-TAGNGREALDLLTTTVPDMIVCDIMMPEMDGY 67 Query: 79 EATKQIKQTSP--QIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQDG 136 +Q++Q I ++ L++ + + L+ GAD Y K E L + + Sbjct: 68 AFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLR- 126 Query: 137 ATYLDPQIARVVVENLKPPVPEGQADVS---SLSEREIDVLKLIVEGKSNQEIAQTLYLS 193 Q R++ N P + V+ L+ E V++L+ +G +N+EIA L +S Sbjct: 127 ------QADRLLQHNNHPLEDNARVQVARDVELTPTETKVIQLVAQGLANREIADHLKVS 180 Query: 194 TNTIKTHVRGIMNKLSVDDRVQAAVIALRSGL 225 T+++HV ++NK + +R + A A++ + Sbjct: 181 QRTVESHVSNMLNKTGLHNRTELARWAIQKSI 212 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 65.5 bits (158), Expect = 1e-13 Identities = 56/214 (26%), Positives = 100/214 (46%), Gaps = 35/214 (16%) Query: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 M+IL+VEDD + L +AL ++ + + A A+ L DL+++D+ LP LD Sbjct: 1 MRILLVEDDLPLAETLAEALS--DQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELD 58 Query: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAA---- 132 GI ++ + S + I+++T+ N+ I L +GAD Y VK L L + A Sbjct: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 Query: 133 --------AQDGATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVEGKSNQ 184 + G LDP V +N +V SL+ +E +L+L++ + Sbjct: 119 GCATCQPVLEWGPIRLDPSTYEVSYDN----------EVLSLTRKEYSILELLLR-NGRR 167 Query: 185 EIAQTLYLST----------NTIKTHVRGIMNKL 208 +++++ + + +T+K HVR + KL Sbjct: 168 VLSRSMIIDSIWKLESPPEEDTVKVHVRSLRQKL 201 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 62.8 bits (151), Expect = 9e-13 Identities = 42/117 (35%), Positives = 68/117 (58%), Gaps = 4/117 (3%) Query: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDG 77 K+L+VED+ + + L + L + +E++ VD G AV A +P LI+MD+ LP +DG Sbjct: 6 KVLLVEDNEMNRDMLSRRL-IRKGYEVVIAVD-GEQAVTMAISESPQLILMDMSLPIIDG 63 Query: 78 IEATKQIK--QTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAA 132 ATKQIK I I+ LT+H + ++ A+++G D Y K ++RL+ + A Sbjct: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEA 120 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 55.5 bits (132), Expect = 1e-10 Identities = 52/207 (25%), Positives = 89/207 (42%), Gaps = 21/207 (10%) Query: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 M+IL++EDD L+ GL+ +G + + +G + D +V+D+ LP LD Sbjct: 1 MRILLIEDDNLIGNGLQ--IGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLD 58 Query: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQDG 136 G+E +Q + + +++LT+ +E + L SGAD Y K L +AA Sbjct: 59 GLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAE----VAARLQA 114 Query: 137 ATYLDPQIARVVVENLKPPVPEGQADV------SSLSEREIDVLKLIVEGK----SNQEI 186 V+E + + Q V SL+ RE +L+L + K S I Sbjct: 115 LIRRRYGYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSI 174 Query: 187 AQTL-----YLSTNTIKTHVRGIMNKL 208 + L +S+ + H+ + KL Sbjct: 175 EEKLSSWDEEISSGALDVHIYNLRQKL 201 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 53.5 bits (127), Expect = 6e-10 Identities = 38/134 (28%), Positives = 72/134 (53%), Gaps = 6/134 (4%) Query: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNG---YGAVQQAAVLNPDLIVMDIGLP 73 M++L+VED+P + + LE+AL E + ++ V +G + + Q V N L + D +P Sbjct: 1 MRLLLVEDEPDLGMALEKAL-RRENY-VVDWVQDGNLAWSYLDQGWV-NYTLAIFDWMVP 57 Query: 74 GLDGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAA 133 GL G+E ++++ + I++LT+ + + L +GAD Y +K + L+ + + Sbjct: 58 GLSGLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSL 117 Query: 134 QDGATYLDPQIARV 147 Q + L PQ +V Sbjct: 118 QRRSPELQPQQLQV 131 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 53.5 bits (127), Expect = 6e-10 Identities = 44/117 (37%), Positives = 63/117 (53%), Gaps = 6/117 (5%) Query: 19 ILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGA-VQQAAVLNPDLIVMDIGLPGLDG 77 ILIVEDD + + + L E+F I D G + Q V PDLIV+D+ LP LDG Sbjct: 14 ILIVEDDQEIAQLIRETL-EREQFTCIVTNDGETGLRIFQEQV--PDLIVLDLMLPKLDG 70 Query: 78 IEATKQIKQT--SPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAA 132 +E +I+Q S +I++LT+ + I LS+GAD Y VK + L+ + A Sbjct: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRA 127 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 53.1 bits (126), Expect = 7e-10 Identities = 39/117 (33%), Positives = 64/117 (54%), Gaps = 3/117 (2%) Query: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPG-LD 76 KILIVED+ L+ + Q L + + +EI +G A+++ A PDL+++DI + G +D Sbjct: 4 KILIVEDERLVAQHIAQLLKS-DGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 Query: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAA 133 GIE ++IK I IV LT+ + + A + Y +K E+L+ +A A Sbjct: 63 GIEVAERIKSLY-SIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIA 118 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 52.4 bits (124), Expect = 1e-09 Identities = 30/102 (29%), Positives = 58/102 (56%), Gaps = 2/102 (1%) Query: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDG 77 ++L+VE++ + +E L +E +++ D G QA PDLI+++ LPG+ G Sbjct: 4 RVLVVEEEEKLARFMELEL-KYEGYDVSVARD-GLKGFTQAQEFPPDLIIVNGALPGMSG 61 Query: 78 IEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVK 119 +E +++++ +I I+++T+ E + L +GAD Y VK Sbjct: 62 LELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVK 103 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 52.0 bits (123), Expect = 2e-09 Identities = 27/76 (35%), Positives = 46/76 (60%), Gaps = 8/76 (10%) Query: 151 NLKPPVPEGQADVSSLSEREIDVLKLIVEGKSNQEIAQTLYLSTNTIKTHVRGIMNKLSV 210 N +PP +SLS+RE+++L L+ G +NQE+++ L +S T+ HV I+ K + Sbjct: 5 NYQPP--------ASLSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNT 56 Query: 211 DDRVQAAVIALRSGLV 226 ++RV+ AL+ G V Sbjct: 57 ENRVELVRWALQWGKV 72 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 51.6 bits (122), Expect = 2e-09 Identities = 36/126 (28%), Positives = 63/126 (50%), Gaps = 7/126 (5%) Query: 4 TSPHRVKIEPCLPMKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNP 63 T + ++P L +IL+ ED+ + Q Q L + + +NG + Sbjct: 1179 TEDNATSLQPAL--QILLAEDNLVNQKVAHQML--NNLGYPVAIANNGQEVIDALEKKFY 1234 Query: 64 DLIVMDIGLPGLDGIEATKQIKQTSP---QIHIVVLTSHTLPNEIIAALSSGADAYCVKG 120 DL++MD+ +P +DGI A + I+QT P Q IV +T++ +P + L +G D Y K Sbjct: 1235 DLVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKP 1294 Query: 121 ATLERL 126 ++ +L Sbjct: 1295 ISINQL 1300 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 51.6 bits (122), Expect = 2e-09 Identities = 37/116 (31%), Positives = 59/116 (50%), Gaps = 4/116 (3%) Query: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDG 77 K+L+V+D P +L L Q L + ++ +NG A+ +P +I+MD+ +P LDG Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGF--VVQEAENGEMAIALWESWHPQVILMDMQMPVLDG 476 Query: 78 IEATKQIKQTSPQIH--IVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIA 131 T++IK + H I+ LT+ E LS+G D + K E LI +A Sbjct: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLA 532 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 51.2 bits (121), Expect = 3e-09 Identities = 54/211 (25%), Positives = 94/211 (44%), Gaps = 23/211 (10%) Query: 19 ILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDGI 78 IL+V+D+ + L +ALG + I D G + A DL+++D LP + G+ Sbjct: 4 ILLVDDENALTEPLSKALG--HQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 Query: 79 EATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAA----AQ 134 E +QI+ ++ LT+ ++ +A L +G D Y +K L L+ + A Sbjct: 62 EICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQS 121 Query: 135 DGATYLDPQIA----RVVVENLKPPVPEG----QADVSSLSEREIDVLKLIVEGK----S 182 G T + A + V N+ V Q +LSE+E+ +L L ++ S Sbjct: 122 HGETITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILS 181 Query: 183 NQEIAQTLY-----LSTNTIKTHVRGIMNKL 208 ++EI L+ S+N + VR + K+ Sbjct: 182 HEEIYSHLWPGESPPSSNVLAALVRLLRRKI 212 >SYNE-PCC-01-000511 sll0782 Length = 369 Score = 50.8 bits (120), Expect = 4e-09 Identities = 23/61 (37%), Positives = 41/61 (67%) Query: 166 LSEREIDVLKLIVEGKSNQEIAQTLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSGL 225 LSERE +++ L+ +G +++IA+ L++S +T+K HV G ++KL+ +R QA A G Sbjct: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQATVQGF 368 Query: 226 V 226 + Sbjct: 369 I 369 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 50.4 bits (119), Expect = 5e-09 Identities = 36/121 (29%), Positives = 63/121 (52%), Gaps = 12/121 (9%) Query: 18 KILIVEDDP----LMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLP 73 +ILI++DDP L+ + LE A +++ VD G A L PDLI++D+ LP Sbjct: 3 RILIIDDDPAISDLVSINLEMA-----GYDVQQAVD-GIKGQALAVQLQPDLIMLDLMLP 56 Query: 74 GLDGIEATKQIK--QTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIA 131 +DG ++++ + + I +++LT+ + I SGAD Y K +E ++ + Sbjct: 57 KVDGFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVR 116 Query: 132 A 132 A Sbjct: 117 A 117 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 49.3 bits (116), Expect = 1e-08 Identities = 56/222 (25%), Positives = 102/222 (45%), Gaps = 24/222 (10%) Query: 21 IVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDGIEA 80 +V+D+ ++ LE L +E++ D G A+ +PDL+V+D+ +P LDG Sbjct: 1 MVDDEASIRRILETRLSMIG-YEVVTAAD-GEEAIATFHESDPDLVVLDVMMPKLDGYGV 58 Query: 81 TKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAA-----QD 135 +++++ S I I++LT+ + I L GAD Y VK + + L I + ++ Sbjct: 59 CQELRKES-DIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 Query: 136 GATYLDP----QIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIV----EGKSNQEIA 187 G + QIA + ++ K V +G + L+ E +L+L+V E S EI Sbjct: 118 GMPGIPSSGVLQIATIRIDTNKRQVYKGDERI-RLTGMEFSLLELLVSRSGEPFSRSEIL 176 Query: 188 QTL-------YLSTNTIKTHVRGIMNKLSVDDRVQAAVIALR 222 Q + ++ T + H+ + KL D ++ R Sbjct: 177 QEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTAR 218 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 49.3 bits (116), Expect = 1e-08 Identities = 36/140 (25%), Positives = 70/140 (50%), Gaps = 4/140 (2%) Query: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQ--QAAVLNPDLIVMDIGLPG 74 M+IL+VED+ + + +++ L E++ ++ V +G A + L ++D LPG Sbjct: 1 MRILLVEDETDLGMAIKKVL-VSEKY-VVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPG 58 Query: 75 LDGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQ 134 L G+E ++++ + +++LT+ P + L +GAD Y K + L+ + A Q Sbjct: 59 LSGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQ 118 Query: 135 DGATYLDPQIARVVVENLKP 154 + PQI + +L P Sbjct: 119 RRSPQFQPQILTLGNFSLDP 138 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 48.1 bits (113), Expect = 2e-08 Identities = 26/75 (34%), Positives = 44/75 (58%), Gaps = 4/75 (5%) Query: 48 VDNGYGAVQQAAVLNPDLIVMDIGLPGLDGIEATKQIKQTSPQ---IHIVVLTSHTLPNE 104 V +G A+Q+ PDLI++D+ +PG+DG+E ++KQ PQ I ++ LT+ + Sbjct: 47 VTSGPEALQRVTQAQPDLILLDLMMPGMDGLEVCDRLKQ-DPQTRDIPVIFLTASNEKQD 105 Query: 105 IIAALSSGADAYCVK 119 ++ A + GA Y K Sbjct: 106 LLQAFAKGAVDYVTK 120 Score = 46.2 bits (108), Expect = 9e-08 Identities = 27/89 (30%), Positives = 52/89 (58%), Gaps = 3/89 (3%) Query: 48 VDNGYGAVQQAAVLNPDLIVMDIGLPGLDGIEATKQIKQT---SPQIHIVVLTSHTLPNE 104 V+NG A+ A + D+++MD+ +P +DG+ AT+ I+++ S + I+ +T++++ + Sbjct: 769 VNNGQEALSALAKGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGD 828 Query: 105 IIAALSSGADAYCVKGATLERLILAIAAA 133 L+SG + Y K LE L A+ A Sbjct: 829 RERCLASGMNDYVSKPIRLEALQQALQVA 857 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 47.0 bits (110), Expect = 5e-08 Identities = 37/117 (31%), Positives = 63/117 (53%), Gaps = 5/117 (4%) Query: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDG 77 KILIVED+ ++ + L + + +++I D + NP LI++D LPG G Sbjct: 4 KILIVEDECAIREMIALFL-SQKYYDVIEASD--FKTAINKIKENPKLILLDWMLPGRSG 60 Query: 78 IEATKQIK--QTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAA 132 I+ + IK ++ I I++LT+ + + IA L++GAD Y K + + L+ I A Sbjct: 61 IQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEA 117 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 45.8 bits (107), Expect = 1e-07 Identities = 57/252 (22%), Positives = 112/252 (44%), Gaps = 50/252 (19%) Query: 6 PHRVKIEPCLPM-KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQ-------- 56 PH ++ + P +IL+VED+ ++ + +L E +E+ VD+G A+ Sbjct: 19 PHSLQHQEIPPSHRILVVEDEVSIRETIVLSL-QEEGYEVYA-VDDGRDALALLQEFSED 76 Query: 57 --QAAVLNPDLIVMDIGLPGLDGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGAD 114 QAAV DLI++DI LP ++G++ + ++ I+++++ E + L GAD Sbjct: 77 PGQAAV---DLIILDIMLPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGAD 133 Query: 115 AYCVKGATLERLILAIAA--AQDGAT-------------YLDPQIARVVVENLKPPVPEG 159 Y K +L+ L+ A + G L PQ RV++ Sbjct: 134 DYITKPFSLKELVARCRAMIRRQGLAGNNIAPFRKFRDLVLYPQECRVLM---------- 183 Query: 160 QADVSSLSEREIDVLKLIVEGK----SNQEIAQTLY-----LSTNTIKTHVRGIMNKLSV 210 + + SL+ +E +L+L + S +++ + ++ + T+ H+R + KL Sbjct: 184 RGEEVSLAPKEFRLLELFMSYPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQ 243 Query: 211 DDRVQAAVIALR 222 D ++ +R Sbjct: 244 DPSQPEYLVTVR 255 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 45.8 bits (107), Expect = 1e-07 Identities = 38/111 (34%), Positives = 51/111 (45%), Gaps = 3/111 (2%) Query: 11 IEPCLPMKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDI 70 + P P+ ++V DD + L L A FEI NG A+ P LI MD+ Sbjct: 623 LTPGQPVYKILVVDDKSVNRQLLIKLLAPFGFEI-EEASNGQEAIALWESWEPHLIFMDM 681 Query: 71 GLPGLDGIEATKQIK--QTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVK 119 +P +DG EATK IK +V LT+ L E LS+G D + K Sbjct: 682 RMPVMDGYEATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRK 732 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 42.0 bits (97), Expect = 2e-06 Identities = 31/102 (30%), Positives = 53/102 (51%), Gaps = 3/102 (2%) Query: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDG 77 KIL+VED+ + + L+ A E +++ +NG A N +L+VMDI LPG +G Sbjct: 5 KILVVEDEIVTRNTLKGIFEA-EGYDVF-EAENGVEMHHILANHNINLVVMDINLPGKNG 62 Query: 78 IEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVK 119 + +++++ + ++ LT + I L GAD Y K Sbjct: 63 LLLARELRE-ELSLPLIFLTGRDNEVDKILGLEIGADDYLTK 103 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 41.6 bits (96), Expect = 2e-06 Identities = 35/118 (29%), Positives = 64/118 (54%), Gaps = 10/118 (8%) Query: 19 ILIVEDDPLMQLGLEQALGAHERFEIIGRVDNG---YGAVQQAAVLNPDLIVMDIGLPGL 75 IL+VED+ +++ + + L E ++I+ +NG G + V+ PDLI+ D+ +P + Sbjct: 4 ILVVEDEAIIRELIGETLSL-ENYKIL-EAENGAVALGLLNSLEVM-PDLIICDVMMPEM 60 Query: 76 DG---IEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAI 130 DG I A ++ +T+ I + LT+ + ++SGAD Y +K E L+ A+ Sbjct: 61 DGHGLITALQKNAKTA-AIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAV 117 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 40.8 bits (94), Expect = 4e-06 Identities = 51/209 (24%), Positives = 94/209 (44%), Gaps = 24/209 (11%) Query: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPD--LIVMDIGLPGL 75 K+L+V+DD + L L E F++ +NG A+Q+ LN L+++D+ +P L Sbjct: 3 KLLLVDDD-IELTELLSTLLELEGFDV-ETANNGLEALQK---LNESYKLVLLDVMMPKL 57 Query: 76 DGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQD 135 +GIE K+I++ S + +++LT+ + + L GAD K LI I A Sbjct: 58 NGIETLKEIRKVS-NVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILR 116 Query: 136 GATYLDPQIARVVV---ENLKPPVPEGQADVS----SLSEREIDVLKLIVEGKSNQEIAQ 188 + I+ V + + + G A + +L++ E +L L+++ K N + Sbjct: 117 RSASPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSRE 176 Query: 189 TLYLST---------NTIKTHVRGIMNKL 208 L L ++ H+ + KL Sbjct: 177 ELSLEVMEKPLTPFDRSLDMHISNLRRKL 205 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.136 0.373 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 19,993 Number of Sequences: 78 Number of extensions: 834 Number of successful extensions: 61 Number of sequences better than 1.0e-05: 29 Number of HSP's better than 0.0 without gapping: 15 Number of HSP's successfully gapped in prelim test: 14 Number of HSP's that attempted gapping in prelim test: 27 Number of HSP's gapped (non-prelim): 31 length of query: 226 length of database: 48,235 effective HSP length: 60 effective length of query: 166 effective length of database: 43,555 effective search space: 7230130 effective search space used: 7230130 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001280 sll1871 (674 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001280 sll1871 1191 0.0 SYNE-PCC-01-002879 slr2104 194 9e-52 SYNE-PCC-01-000891 sll1353 177 9e-47 SYNE-PCC-01-002617 slr1759 176 3e-46 SYNE-PCC-01-001132 sll1672 166 3e-43 SYNE-PCC-01-002873 slr2098 158 6e-41 SYNE-PCC-01-001306 sll1905 157 1e-40 SYNE-PCC-01-000295 sll0474 152 3e-39 SYNE-PCC-01-000800 sll1228 139 4e-35 SYNE-PCC-01-001294 sll1888 138 5e-35 SYNE-PCC-01-001509 slr0210 135 5e-34 SYNE-PCC-01-001517 slr0222 121 8e-30 SYNE-PCC-01-002778 slr1969 115 4e-28 SYNE-PCC-01-000985 sll1475 97 2e-22 SYNE-PCC-01-001690 slr0473 73 2e-15 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 1191 bits (3082), Expect = 0.0 Identities = 627/674 (93%), Positives = 627/674 (93%) Query: 1 MVSIIKSVRRSLLLKFVLSYFCLSSVVVASIFLVANYRAVKGIESQTFNRLNISNNLKEY 60 MVSIIKSVRRSLLLKFVLSYFCLSSVVVASIFLVANYRAVKGIESQTFNRLNISNNLKEY Sbjct: 1 MVSIIKSVRRSLLLKFVLSYFCLSSVVVASIFLVANYRAVKGIESQTFNRLNISNNLKEY 60 Query: 61 QLEQWMEGQKDTLFLLSDINSIQANTELLKNTSVSDPQYKIIQKRLIEELREIDLFLPHI 120 QLEQWMEGQKDTLFLLSDINSIQANTELLKNTSVSDPQYKIIQKRLIEELREIDLFLPHI Sbjct: 61 QLEQWMEGQKDTLFLLSDINSIQANTELLKNTSVSDPQYKIIQKRLIEELREIDLFLPHI 120 Query: 121 EAINILNTGGIVVASNNLDEIGVYKGIGNQTTYFANINSNFKTVPNFYFSKVYNRPSMTF 180 EAINILNTGGIVVASNNLDEIGVYKGIGNQTTYFANINSNFKTVPNFYFSKVYNRPSMTF Sbjct: 121 EAINILNTGGIVVASNNLDEIGVYKGIGNQTTYFANINSNFKTVPNFYFSKVYNRPSMTF 180 Query: 181 ATNIKHDITRERLGYLSIDINLNAVDDLIRKRTGLGDTGETFLVGEINNQVSFIASDENK 240 ATNIKHDITRERLGYLSIDINLNAVDDLIRKRTGLGDTGETFLVGEINNQVSFIASDENK Sbjct: 181 ATNIKHDITRERLGYLSIDINLNAVDDLIRKRTGLGDTGETFLVGEINNQVSFIASDENK 240 Query: 241 KLTANGSKPNFNSLGINSVMAGNSGQGSYVNYAGTPVLGVYQWIEKYNLALITEISEVEA 300 KLTANGSKPNFNSLGINSVMAGNSGQGSYVNYAGTPVLGVYQWIEKYNLALITEISEVEA Sbjct: 241 KLTANGSKPNFNSLGINSVMAGNSGQGSYVNYAGTPVLGVYQWIEKYNLALITEISEVEA 300 Query: 301 LELARRFTRMLVLVGLVSTALLLIAVYXXXXXXXXXXXXXXXAAIDISSGDREARAPVLG 360 LELARRFTRMLVLVGLVSTALLLIAVY AAIDISSGDREARAPVLG Sbjct: 301 LELARRFTRMLVLVGLVSTALLLIAVYLLSIKITKPILLITKAAIDISSGDREARAPVLG 360 Query: 361 EDELGILAKSFNLMTNELRESNSSLEKKNQELELAQKQLAVANSCLEEKVQQRTEELENT 420 EDELGILAKSFNLMTNELRESNSSLEKKNQELELAQKQLAVANSCLEEKVQQRTEELENT Sbjct: 361 EDELGILAKSFNLMTNELRESNSSLEKKNQELELAQKQLAVANSCLEEKVQQRTEELENT 420 Query: 421 VKXXXXXXXXXXXXNATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLD 480 VK NATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLD Sbjct: 421 VKALELASSEAEAANATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLD 480 Query: 481 KILRSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDTISPXXXXXXXXXXX 540 KILRSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDTISP Sbjct: 481 KILRSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDTISPLLKNNNNKLEV 540 Query: 541 XXXXXXXXXYGDLIKLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGI 600 YGDLIKLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGI Sbjct: 541 EISLESEEVYGDLIKLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGI 600 Query: 601 GLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTI 660 GLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTI Sbjct: 601 GLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTI 660 Query: 661 KLPKYAQLNSAKND 674 KLPKYAQLNSAKND Sbjct: 661 KLPKYAQLNSAKND 674 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 194 bits (492), Expect = 9e-52 Identities = 114/270 (42%), Positives = 167/270 (61%), Gaps = 5/270 (1%) Query: 391 ELELAQKQLAVANSCLEEKVQQRTEELENTVKXXXXXXXXXXXXNATKSIFLANMSHELR 450 EL+ AQ L N LE+++Q+RT+ELEN+ + KS FLANMSHE+R Sbjct: 411 ELQEAQISLEHLNEKLEQRIQERTQELENSQESLLEAKLVAEGATKAKSEFLANMSHEIR 470 Query: 451 TPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLLDISKIEAGKMELY 510 TP+NAIIG SE++++ DL S++ L K+ +G+ LL +IN++LD SK+EAGK+EL Sbjct: 471 TPMNAIIGMSELVLQT--DLTSQQR-NYLQKVQYAGELLLGIINNILDFSKMEAGKLELE 527 Query: 511 LETFNLKELIAGILDTIS-PXXXXXXXXXXXXXXXXXXXXYGDLIKLRQGILNLLSNASK 569 + F+++E++ + + GD ++L Q ++NL +NA K Sbjct: 528 QKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNNAVK 587 Query: 570 FTKDGIISFIVEEFKVD-EKDWLSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGT 628 FT G I+ + K + E+ L F V DTGIGLT +Q SKLFQ F Q ++ST+R+YGGT Sbjct: 588 FTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGT 647 Query: 629 GLGLAITRKFCQMMGGDIYLTSEIGVGSSF 658 GLGLAI++ ++MGGDI+L S +G GS+F Sbjct: 648 GLGLAISKSLTELMGGDIWLESVVGQGSTF 677 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 177 bits (449), Expect = 9e-47 Identities = 119/323 (36%), Positives = 182/323 (56%), Gaps = 17/323 (5%) Query: 363 ELGILAKSFNLMTNELRESNSSLE--KKNQELELAQKQ--LAVANSCLEEKVQQRTEELE 418 E+ L ++FN M L+ ++ K N E+ +A++ L V N L ++++R + +E Sbjct: 525 EVITLNENFNEMLITLQNQFKIIKQAKDNLEMRVAERTHTLIVINKQLAGEIEER-QRIE 583 Query: 419 NTVKXXXXXXXXXXXXNATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPD 478 ++ N KS FLAN+SHE+RTP+NAI+G+ ++L+++ DL + Sbjct: 584 IKLREAKESAELA---NRVKSEFLANISHEIRTPMNAILGFCDLLLQK--DLSLSQTKKY 638 Query: 479 LDKILRSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDTIS-PXXXXXXXX 537 L+ I S K LLALI+D+LDISKIEAGK+ ++LE +L+ +I I Sbjct: 639 LNAIGSSSKILLALIDDILDISKIEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLL 698 Query: 538 XXXXXXXXXXXXYGDLIKLRQGILNLLSNASKFTKDG--IISFIVEEFKVDEKDW---LS 592 Y D ++LRQ + NL+ NA KFT++G I VE +V + L+ Sbjct: 699 TIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYISLA 758 Query: 593 FQVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEI 652 +V DTGIG+ E +K+F FTQ+ +TRKYGGTGLGL ITR+ ++GG+I L+S + Sbjct: 759 IEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYGGTGLGLTITRRLTALLGGEISLSSRL 818 Query: 653 GVGSSFTIKLPKYAQL-NSAKND 674 G GS+F + P + NS K+D Sbjct: 819 GEGSTFILHFPAVRLVENSLKSD 841 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 176 bits (445), Expect = 3e-46 Identities = 111/297 (37%), Positives = 162/297 (54%), Gaps = 23/297 (7%) Query: 396 QKQLAVANSCLEEKVQQRTEELENTVKXXXXXXXXXXXXNATKSIFLANMSHELRTPLNA 455 Q +A+A + L EK ++R EL N K FLA MSHE+RTP+N Sbjct: 736 QMGIALAQAALLEKERERRRELAQKNLELEKATWAAEAANRAKGEFLAMMSHEIRTPMNG 795 Query: 456 IIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLLDISKIEAGKMELYLETFN 515 +IG +E+LI DL+ ++L + I +SG++LL +IND+LD SKIEA K+ L + F Sbjct: 796 VIGMTELLI--MTDLNLQQL-DYVQTIRQSGETLLTIINDILDFSKIEADKLVLETQAFE 852 Query: 516 LKELIAGILDTISPXXXXXXXXXXXXXXXXX-XXXYGDLIKLRQGILNLLSNASKFTKDG 574 L+ LI +L+ P GD ++LRQ + NL+ NA KFT+ G Sbjct: 853 LRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSNLIGNALKFTEKG 912 Query: 575 IISFIVEEFKVDEKDW-------------LSFQVKDTGIGLTEEQMSKLFQPFTQADSST 621 + V+ D + + F ++DTGIG+ ++ +LF+ F+Q DSST Sbjct: 913 EVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQDRLFKSFSQVDSST 972 Query: 622 TRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSF------TIKLPKYAQLNSAK 672 TRKYGGTGLGL I+++ QMMGG + +TSE GVGS+F T + P A+ +S + Sbjct: 973 TRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCILTTAQAPALAEADSVQ 1029 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 166 bits (419), Expect = 3e-43 Identities = 113/303 (37%), Positives = 168/303 (55%), Gaps = 21/303 (6%) Query: 376 NELRESNSSLEKKNQELELAQKQLAVANSCLEEKVQQRTEELENTVKXXXXXXXXXXXXN 435 N+L +N L ++NQ+L+ +Q + + E+ + + E L+ V Sbjct: 304 NQLFTTNQILIEQNQKLQELYQQRELERAQREKILIEYNESLQKQVDLVRAKEIAESEAK 363 Query: 436 ATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALIND 495 A KS F+ANMSHELR+PLNAIIG+S++++ ++L E+ + I RSG+ LL LIN+ Sbjct: 364 A-KSTFVANMSHELRSPLNAIIGFSQLML-RTKNLPMEQ-YENAGIIQRSGEYLLNLINN 420 Query: 496 LLDISKIEAGKMELYLETFNLKELIAGILDTIS-PXXXXXXXXXXXXXXXXXXXXYGDLI 554 +LD SKIEAGK L F+L L+ + D + YGD I Sbjct: 421 ILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRDHDLPRYVYGDEI 480 Query: 555 KLRQGILNLLSNASKFTKDGIISFIVEEFKVDE---------------KDWLSFQVKDTG 599 KLRQ +LNLLSNA KFT +G + + F+ E K WL F +KDTG Sbjct: 481 KLRQILLNLLSNAIKFTTEGEV-VLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTG 539 Query: 600 IGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFT 659 G++E ++S LF+ F+Q +S + GTGLGLAITR+F ++MGGDI ++S + G++F+ Sbjct: 540 KGISEVELSHLFEAFSQTESGRNAQ-EGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFS 598 Query: 660 IKL 662 + Sbjct: 599 FSI 601 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 158 bits (399), Expect = 6e-41 Identities = 94/228 (41%), Positives = 138/228 (60%), Gaps = 7/228 (3%) Query: 438 KSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLL 497 K+ FLANMSHE+RTP+NA+IG + + ++ E L KI SG+ LL +IND+L Sbjct: 527 KADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQREY---LHKIRFSGQHLLGVINDIL 583 Query: 498 DISKIEAGKMELYLETFNLKELIAGILDTISPXXXXXXXXXXXXXXXXXXXXY-GDLIKL 556 D SKIEAGK+ + F+L +++ + IS + GD ++L Sbjct: 584 DFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRL 643 Query: 557 RQGILNLLSNASKFTKDGIISFIV--EEFKVDEKDWLSFQVKDTGIGLTEEQMSKLFQPF 614 Q ++N +NA KFT+ G I+ +V +E++ D+ L VKDTGIG+ E ++ LF F Sbjct: 644 GQILINYANNAVKFTEQGDITIVVRLQEYR-DQDVVLYLAVKDTGIGIKPEHIANLFNSF 702 Query: 615 TQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKL 662 QADSSTTR +GGTGLGLAI ++ ++MGG++ + SE G GS+F K+ Sbjct: 703 QQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKV 750 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 157 bits (396), Expect = 1e-40 Identities = 99/267 (37%), Positives = 147/267 (55%), Gaps = 14/267 (5%) Query: 388 KNQELELAQKQLAVANSCLEEKVQQRTEELENTVKXXXXXXXXXXXXNATKSIFLANMSH 447 + +++E+ Q Q + +++ ++ +EL N +KS FLA MSH Sbjct: 278 QRKQVEMIQGQSLEMERRMRQQLAEQNQEL-------VAATTAAEAANRSKSEFLATMSH 330 Query: 448 ELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLLDISKIEAGKM 507 E+RTP+NAIIG + +L++ DL +++ I SG++LL LIND+LD SKIEAGK+ Sbjct: 331 EIRTPMNAIIGMTGLLLDT--DLTTQQKY-FAQTIRNSGETLLTLINDILDFSKIEAGKL 387 Query: 508 ELYLETFNLKELIAGILDTISPXXXXXXXXXXXXXXXXXX-XXYGDLIKLRQGILNLLSN 566 +L + F+L + + LD + P GD+ +LRQ ++NLLSN Sbjct: 388 DLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSN 447 Query: 567 ASKFTKDGIISFIVEEFKVDEKDW---LSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTR 623 A KFT+ G + VE D + F V+DTGIG+ Q LFQ F+Q +SS TR Sbjct: 448 AVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQGNSSITR 507 Query: 624 KYGGTGLGLAITRKFCQMMGGDIYLTS 650 ++GGTGLGLAI + +MGG I+ S Sbjct: 508 RFGGTGLGLAICVRLTALMGGTIWAES 534 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 152 bits (384), Expect = 3e-39 Identities = 97/280 (34%), Positives = 149/280 (53%), Gaps = 32/280 (11%) Query: 391 ELELAQKQLAVANSCLEEKVQQRTEELENTVKXXXXXXXXXXXXNATKSIFLANMSHELR 450 E++ A++QL ++N L + Q + E FLANMSHELR Sbjct: 396 EIKKAEEQLKLSNKILAKATQLKDE-------------------------FLANMSHELR 430 Query: 451 TPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLLDISKIEAGKMELY 510 TPLN+I+G E L + + + V L+ + SG+ LL+LIND+LD+SKIEAG+M+L Sbjct: 431 TPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRHLLSLINDILDLSKIEAGRMDLD 490 Query: 511 LETFNLKELIAGILDTISPXXXXXXXXXXXXXXXXXXXXYGDLIKLRQGILNLLSNASKF 570 L ++ L+ L + D +L Q ++NLL+NA KF Sbjct: 491 LNPTSVSALVNHSLTFVQQFAIQKQINLSSEIIPNLPDVLVDKRRLCQVLINLLNNAIKF 550 Query: 571 TKDG-----IISFIVEEFKVDEKD--WLSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTR 623 T +G I E+ K + + LSF V DTGIG+ ++++ +F+PF Q DS+ R Sbjct: 551 TPEGGKVVVQADLIKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNR 610 Query: 624 KYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKLP 663 +Y GTGLGL++ +K ++ GG + +TS++ GS F I +P Sbjct: 611 RYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITIP 650 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 139 bits (349), Expect = 4e-35 Identities = 93/241 (38%), Positives = 129/241 (53%), Gaps = 20/241 (8%) Query: 435 NATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALIN 494 N K+ FLA++SHELRTPLNAIIG+S++L D P LD I RSG+ LL LIN Sbjct: 160 NRAKTEFLASISHELRTPLNAIIGFSQLL---HRDPSLAPHRPTLDIINRSGEHLLELIN 216 Query: 495 DLLDISKIEAGKMELYLETFNLKELIAGILDTISPXXXXXXXXXXXXXXXXXXXXYGDLI 554 D+L++SKIEAG+ L + + L LD + + I Sbjct: 217 DILEMSKIEAGRTTLNEKIIDCHRL----LDNLQALFQLRAQEKQLLLKVERSPEVPEWI 272 Query: 555 -----KLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKD-------WLSFQVKDTGIGL 602 KLRQ ++NLL+NA KFT G ++ V+ + D WL F V DTG G+ Sbjct: 273 KTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGI 332 Query: 603 TEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKL 662 +M +LF PF Q ++ + G GLGL I++KF Q+MGG I + S++ GS+F + Sbjct: 333 AAHEMDELFVPFAQTETG-LKSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAI 391 Query: 663 P 663 P Sbjct: 392 P 392 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 138 bits (348), Expect = 5e-35 Identities = 95/277 (34%), Positives = 150/277 (54%), Gaps = 25/277 (9%) Query: 393 ELAQKQ-LAVANSCLEEKVQQRTEELENTVKXXXXXXXXXXXXNATKSIFLANMSHELRT 451 ELA++ A+A++ L +++ Q T+ E + KS FLA+ +HELRT Sbjct: 162 ELAEQTGTAIAHATLYQELTQATKAAEEASRL--------------KSEFLASTTHELRT 207 Query: 452 PLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLLDISKIEAGKMELYL 511 PLN IIG+ +++++ D ++E+ +++ +S LL LIND+LD++KIEAG++ + L Sbjct: 208 PLNGIIGFLRLILDDMADSEAEKH-EFVEEAYQSALLLLNLINDILDLAKIEAGRVGIEL 266 Query: 512 ETFNLKELIAGILDTISPXXXXXXXXXXXXXXXXX-XXXYGDLIKLRQGILNLLSNASKF 570 E + E++ + P YG+ L Q +LN++ NA KF Sbjct: 267 EVVDFSEVLQATENFALPQAQNKGLSFNLTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKF 326 Query: 571 TKDGIISFIVEEFK-------VDEKDWLSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTR 623 T +G I+ VE V + L V DTGIG++ EQ SKLF+ F Q D S ++ Sbjct: 327 THEGGITVAVEVMPRTVLWEGVQKPGLLKVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSK 386 Query: 624 KYGGTGLGLAITRKFCQMMGGDI-YLTSEIGVGSSFT 659 YGGTGLGL I++K + MGG + + + G+GS+ T Sbjct: 387 AYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGSTVT 423 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 135 bits (339), Expect = 5e-34 Identities = 85/229 (37%), Positives = 123/229 (53%), Gaps = 4/229 (1%) Query: 435 NATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALIN 494 + + +I L+++ HE RTPL AIIG++ ML +E + + + L S + LL+L+N Sbjct: 183 HTSMTINLSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVN 242 Query: 495 DLLDISKIEAGKMELYLETFNLKELIAGILDTISPXXXXXXXXXXXXXXXXXXXXYGDLI 554 D LD+SKI+A EL+ E +++L ++ + Y D Sbjct: 243 DFLDLSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYVDQR 302 Query: 555 KLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGIGLTEEQMSKLFQPF 614 + +Q ++NLLSN KFT G ++ V K +K L F V DTGIG+ E LFQPF Sbjct: 303 RWKQILINLLSNGVKFTPKGSVTLAV---KATDKA-LIFSVIDTGIGIDPEDQRDLFQPF 358 Query: 615 TQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKLP 663 Q + GTGLGLA++R+ Q+ GGDI LTS GVGS F+ LP Sbjct: 359 KQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILP 407 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 121 bits (303), Expect = 8e-30 Identities = 80/229 (34%), Positives = 122/229 (53%), Gaps = 5/229 (2%) Query: 435 NATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALIN 494 N KS F+ +SHE RTPL +IIG+ E+L + + L +E+ ++ I S + L LI+ Sbjct: 937 NEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKQQYINNIQNSSQRLKQLID 996 Query: 495 DLLDISKIEAGKMELYLETFNLKELIAGILDTISPXXXXXXXXXXXXXXXXXXXXYGDLI 554 D+L IS+ +A K+E+ L NL+ L +++ S D+ Sbjct: 997 DVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPDEHSLVDVR 1056 Query: 555 KLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGIGLTEEQMSKLFQPF 614 LR + N+LSNA K++ G S I + DE + L FQV+D GIG+ + KLF+ F Sbjct: 1057 LLRHILENILSNAIKYSAPG--STITLDISKDE-EHLLFQVRDEGIGIPLQDQEKLFEAF 1113 Query: 615 TQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKLP 663 +A S GTGLGL+I +++ + GG I + S G G++ IKLP Sbjct: 1114 HRA--SNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLP 1160 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 115 bits (288), Expect = 4e-28 Identities = 98/321 (30%), Positives = 154/321 (47%), Gaps = 21/321 (6%) Query: 356 APVLGEDELGILAKSFNLMTNELRESNSSLEKKNQELELAQKQLAVA--NSCLEEKVQQR 413 AP++ E +L L L+ ++ L+ + L + LAVA S L +VQ++ Sbjct: 296 APIIVEGQLWGL-----LIAHQCHHPRQWLDSEKNFLGQIGEHLAVAIVQSLLYSEVQKQ 350 Query: 414 TEELENTV----KXXXXXXXXXXXXNATKSIFLANMSHELRTPLNAIIGYSEMLI---EE 466 E V K N KS F+ N+SHELRTPL +IIG S L+ + Sbjct: 351 KNNFEKRVIERTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDH 410 Query: 467 AEDLDSEELVPDLDKILRSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDT 526 L + L I +GK LL IN ++ +S++E+G+ L ++F+L L ++ + Sbjct: 411 PASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHS 470 Query: 527 ISPXXXXXXXXXXXXXXXXXXXXY--GDLIKLRQGILNLLSNASKFTK-DGIISFIVEEF 583 + D +L Q + LL+NA KFT +G + I+ + Sbjct: 471 LLGVAIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGTV--ILRIW 528 Query: 584 KVDEKDWLSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMG 643 K E + FQV+DTGIG+ E+Q+ LF+ F A S T Y G+GLA+T++ ++ G Sbjct: 529 K--ESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHG 586 Query: 644 GDIYLTSEIGVGSSFTIKLPK 664 G I + S G G+ FT +P+ Sbjct: 587 GYIEVESSPGQGTIFTTVIPQ 607 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 96.7 bits (239), Expect = 2e-22 Identities = 70/235 (29%), Positives = 117/235 (49%), Gaps = 7/235 (2%) Query: 438 KSIFLANMSHELRTPLNAIIGYSEMLIE-EAEDLDSEELVPDLDKILRSGKSLLALINDL 496 K+ F + SHE RTPL+ + +++L E LD ++ +L +I S K+++ L++D+ Sbjct: 69 KTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLLDDI 128 Query: 497 LDISKIEAGKMELYLETFNLKELIAGILDTISPXXXXXXXXXXXXXXXXXXXXYGDLIKL 556 L I++ EAGK+E +LK L ++ I + + + Sbjct: 129 LIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQDTKALVDERL-V 187 Query: 557 RQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGIGLTEEQMSKLFQPFTQ 616 R + NLLSNA K++ G I +D + + F+V D GIG++ E ++F+PF + Sbjct: 188 RSILSNLLSNAIKYSPGG--GQIKIALSLDSEQ-IIFEVTDQGIGISPEDQKQIFEPFHR 244 Query: 617 ADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKLPKYAQLNSA 671 + R GTGLGL + +K + G I L S + G++ TI L +Y L A Sbjct: 245 GKN--VRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICLKRYNHLPRA 297 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 73.2 bits (178), Expect = 2e-15 Identities = 81/302 (26%), Positives = 136/302 (45%), Gaps = 36/302 (11%) Query: 369 KSFNLMTNELRESNSSLEKKNQELELAQKQLAVANSCLE--EKVQQRTEELENTVKXXXX 426 +SF+L +R + + + LA K+ A+ N L E++ Q LE + Sbjct: 473 QSFDLWKEIVRLQSLPWQSVEIQSALALKK-AIVNLILRQAEELAQLARNLERS------ 525 Query: 427 XXXXXXXXNATKSIFLANMSHELRTPLNAIIGYSEML---IEEAEDLDSEELVPDLDKIL 483 NA F SH+L+ PLN + Y ++L EA D D+++ + Sbjct: 526 --------NADLKKFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFID----FA 573 Query: 484 RSGKSLL-ALINDLLDISKIEAGKMELYLETF-NLKELIAGILDTISPXXXXXXXXXXXX 541 +G SL+ LI+D+L +K++ +L TF +++E++ L + Sbjct: 574 VTGVSLMQTLIDDILTYAKVDTQYAQL---TFTDVQEVVDKALANLKQRIEESGAEIEVG 630 Query: 542 XXXXXXXXYGDLIKLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGIG 601 D I+L Q NL++N KF D S ++ + ++D F V+D GIG Sbjct: 631 SMPAVMA---DQIQLMQVFQNLIANGIKFAGDK--SPKIKIWGDRQEDAWVFAVQDNGIG 685 Query: 602 LTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIK 661 + + ++F F + T +Y GTG+GLAI +K + G I+L S G GS+F Sbjct: 686 IDPQFFERIFVIFQRLH--TRDEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFS 743 Query: 662 LP 663 +P Sbjct: 744 IP 745 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.316 0.135 0.364 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 60,247 Number of Sequences: 78 Number of extensions: 2950 Number of successful extensions: 112 Number of sequences better than 1.0e-05: 15 Number of HSP's better than 0.0 without gapping: 13 Number of HSP's successfully gapped in prelim test: 2 Number of HSP's that attempted gapping in prelim test: 47 Number of HSP's gapped (non-prelim): 21 length of query: 674 length of database: 48,235 effective HSP length: 69 effective length of query: 605 effective length of database: 42,853 effective search space: 25926065 effective search space used: 25926065 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.6 bits) S2: 96 (41.6 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001294 sll1888 (432 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001294 sll1888 797 0.0 SYNE-PCC-01-002617 slr1759 170 9e-45 SYNE-PCC-01-002879 slr2104 149 2e-38 SYNE-PCC-01-000891 sll1353 143 1e-36 SYNE-PCC-01-000800 sll1228 140 1e-35 SYNE-PCC-01-001306 sll1905 139 1e-35 SYNE-PCC-01-002873 slr2098 138 4e-35 SYNE-PCC-01-001280 sll1871 130 1e-32 SYNE-PCC-01-000295 sll0474 129 2e-32 SYNE-PCC-01-001132 sll1672 114 8e-28 SYNE-PCC-01-001509 slr0210 108 2e-26 SYNE-PCC-01-001517 slr0222 83 1e-18 SYNE-PCC-01-002778 slr1969 78 6e-17 SYNE-PCC-01-000985 sll1475 72 3e-15 SYNE-PCC-01-001690 slr0473 66 2e-13 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 797 bits (2058), Expect = 0.0 Identities = 406/432 (93%), Positives = 406/432 (93%) Query: 1 MGQPSDLTESTLRFSSLDPLHPPVISQLTAIAKRIRRNSLHLPTIWQEAVDSIGSTLGVS 60 MGQPSDLTESTLRFSSLDPLHPPVISQLTAIAKRIRRNSLHLPTIWQEAVDSIGSTLGVS Sbjct: 1 MGQPSDLTESTLRFSSLDPLHPPVISQLTAIAKRIRRNSLHLPTIWQEAVDSIGSTLGVS 60 Query: 61 RCLLLTKDFQSRHLQIEAEFCQPTVTAFAALIVPEESEIWRQLFEQHQPITLYNVQFQGE 120 RCLLLTKDFQSRHLQIEAEFCQPTVTAFAALIVPEESEIWRQLFEQHQPITLYNVQFQGE Sbjct: 61 RCLLLTKDFQSRHLQIEAEFCQPTVTAFAALIVPEESEIWRQLFEQHQPITLYNVQFQGE 120 Query: 121 DLGGLWIFPTLYQDQANGYLCLQQVGPAPGPWHPXXXXXXXXXXXXXGTAIAHATLYQEL 180 DLGGLWIFPTLYQDQANGYLCLQQVGPAPGPWHP GTAIAHATLYQEL Sbjct: 121 DLGGLWIFPTLYQDQANGYLCLQQVGPAPGPWHPETEALLQELAEQTGTAIAHATLYQEL 180 Query: 181 TQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEAYQS 240 TQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEAYQS Sbjct: 181 TQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEAYQS 240 Query: 241 AXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAPNQ 300 A AKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAPNQ Sbjct: 241 ALLLLNLINDILDLAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAPNQ 300 Query: 301 GPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVSVGD 360 GPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVSVGD Sbjct: 301 GPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVSVGD 360 Query: 361 TGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGS 420 TGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGS Sbjct: 361 TGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGS 420 Query: 421 TVTFTVLLEELP 432 TVTFTVLLEELP Sbjct: 421 TVTFTVLLEELP 432 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 170 bits (430), Expect = 9e-45 Identities = 135/463 (29%), Positives = 216/463 (46%), Gaps = 43/463 (9%) Query: 1 MGQPSDLTESTLRFSSLDPLHPPV--ISQLTAIAKRIRRNSLHLPTIWQEAVDSIGSTLG 58 MG + T R + D L + I + I++ IRR SL I+Q A +G+ Sbjct: 559 MGYVGSCLDITDRKQAQDILQKKLNQILLMRKISQEIRR-SLQPTLIFQTAARQVGNVFA 617 Query: 59 VSRCLLLT-KDFQSRHLQIEAEFCQPTVTAFAALIVPEESEIWRQLFEQHQPITLYNVQ- 116 VSRCL+ + + + + AE+ T+ A + E + + + + + ++ Sbjct: 618 VSRCLIHNYSEATTLQVPVVAEYLGGQFTSLLAGEIAVEQAYDPTIIQGDRAMAVVDLDQ 677 Query: 117 ----------FQGEDLGGLWIFPTLYQDQANGYLCLQQVGPAPGPWHPXXXXXXXXXXXX 166 +Q + T YQ +ANG + L Q W Sbjct: 678 DLNSTHTKAFYQRFQVKSFLAVRTSYQGKANGIIALHQCD-RQRVWTADEIELLEAIAEQ 736 Query: 167 XGTAIAHATLYQ--------------ELTQATKAAEEASRLKSEFLASTTHELRTPLNGI 212 G A+A A L + EL +AT AAE A+R K EFLA +HE+RTP+NG+ Sbjct: 737 MGIALAQAALLEKERERRRELAQKNLELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGV 796 Query: 213 IGFLRLILDDMADSEAEKHEFVEEAYQSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFS 272 IG L++ M D ++ ++V+ QS +KIEA ++ +E + + Sbjct: 797 IGMTELLI--MTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIEADKLVLETQAFELR 854 Query: 273 EVLQATENFALPQAQNKGLSFNLTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGI 332 +++ P A+ K L Q P + G+Q L Q++ N++GNA+KFT +G + Sbjct: 855 PLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSNLIGNALKFTEKGEV 914 Query: 333 TVAVEVMP-------RTVLWEGVQKPG-LLKVSVGDTGIGVSLEQQSKLFKKFVQIDGSH 384 + V+ P T+L + P + ++ DTGIG+ L++Q +LFK F Q+D S Sbjct: 915 VLTVKGEPFDPAESYHTIL--NLPHPSHRICFNLRDTGIGIPLDRQDRLFKSFSQVDSST 972 Query: 385 SKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGSTVTFTVL 427 ++ YGGTGLGLVISQ+L + MGG V + G+GS F +L Sbjct: 973 TRKYGGTGLGLVISQRLTQMMGG-VLTVTSEPGVGSNFRFCIL 1014 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 149 bits (376), Expect = 2e-38 Identities = 93/251 (37%), Positives = 145/251 (57%), Gaps = 9/251 (3%) Query: 178 QELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEA 237 + L +A AE A++ KSEFLA+ +HE+RTP+N IIG L+L D +++ ++++ Sbjct: 442 ESLLEAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELVLQ--TDLTSQQRNYLQKV 499 Query: 238 YQSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTA 297 + +K+EAG++ +E + EV+ + QA+ KGL+ N Sbjct: 500 QYAGELLLGIINNILDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHL 559 Query: 298 PNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVS 357 + P ++ G++ L Q+++N+ NA+KFT++G IT+ R L + + L+ S Sbjct: 560 DPRIPPILVGDRLRLSQILINLGNNAVKFTNQGEITI------RGQLLKTENEQTKLQFS 613 Query: 358 VGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEG 417 V DTGIG++ +QQSKLF+ F Q + S S+ YGGTGLGL IS+ L E MGG + S+ G Sbjct: 614 VTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESV-VG 672 Query: 418 LGSTVTFTVLL 428 GST FTV L Sbjct: 673 QGSTFHFTVCL 683 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 143 bits (360), Expect = 1e-36 Identities = 86/241 (35%), Positives = 141/241 (58%), Gaps = 6/241 (2%) Query: 179 ELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILD-DMADSEAEKHEFVEEA 237 +L +A ++AE A+R+KSEFLA+ +HE+RTP+N I+GF L+L D++ S+ +K ++ Sbjct: 585 KLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCDLLLQKDLSLSQTKK--YLNAI 642 Query: 238 YQSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTA 297 S+ +KIEAG++ I LE VD +++ + +A++K L + Sbjct: 643 GSSSKILLALIDDILDISKIEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQI 702 Query: 298 PNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVS 357 +Y + L Q++ N+VGNA+KFT EG + + + V V +G L + Sbjct: 703 DETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYIS--LAIE 760 Query: 358 VGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFS-MGE 416 V DTGIG++ E Q+K+F F Q G ++ YGGTGLGL I+++L +GG+++ S +GE Sbjct: 761 VTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYGGTGLGLTITRRLTALLGGEISLSSRLGE 820 Query: 417 G 417 G Sbjct: 821 G 821 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 140 bits (352), Expect = 1e-35 Identities = 111/376 (29%), Positives = 173/376 (46%), Gaps = 19/376 (5%) Query: 49 AVDSIGSTLGVSRCLLLTKDFQSRHLQIEAEFCQ----PTVTAFAALIVPEESEIWRQL- 103 A++ +G G R ++ D L + E+C P ++ F + V +W L Sbjct: 4 AIEQLGLLFGCQRVHVIYHDPAKDCLHMAEEWCAVGIAPRLSTFQGVPVATYPWLWANLQ 63 Query: 104 ---------FEQHQP-ITLYNVQFQGEDLGGLWIFPTLYQDQANGYLCLQQVGPAPGPWH 153 EQ P + V Q + + + + P + Q GY+ + + G W+ Sbjct: 64 DSEGVLVRDVEQMPPEAEMDKVSLQFDLVKSILVVPMVKDAQVLGYISMVHLHDNYG-WN 122 Query: 154 PXXXXXXXXXXXXXGTAIAHATLYQELTQATKAAEEASRLKSEFLASTTHELRTPLNGII 213 P A A LTQA +AA+ A+R K+EFLAS +HELRTPLN II Sbjct: 123 PEELNLAKLVGQFLAIAQARHQAETTLTQAKEAADAANRAKTEFLASISHELRTPLNAII 182 Query: 214 GFLRLILDDMADSEAEKHEFVEEAYQSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSE 273 GF +L+ D S A ++ +S +KIEAGR + +++D Sbjct: 183 GFSQLLHRD--PSLAPHRPTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHR 240 Query: 274 VLQATENFALPQAQNKGLSFNLTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGIT 333 +L + +AQ K L + + P + + L QV++N++ NAIKFT +GG+T Sbjct: 241 LLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVT 300 Query: 334 VAVEVMPRTVLWEGVQKPGLLKVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGL 393 + V+ + EG L V DTG G++ + +LF F Q + + K+ G GL Sbjct: 301 LKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTE-TGLKSCQGNGL 359 Query: 394 GLVISQKLVETMGGKV 409 GL ISQK V+ MGG++ Sbjct: 360 GLPISQKFVQLMGGQI 375 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 139 bits (351), Expect = 1e-35 Identities = 93/270 (34%), Positives = 139/270 (51%), Gaps = 21/270 (7%) Query: 178 QELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEA 237 QEL AT AAE A+R KSEFLA+ +HE+RTP+N IIG L+LD D ++ F + Sbjct: 305 QELVAATTAAEAANRSKSEFLATMSHEIRTPMNAIIGMTGLLLD--TDLTTQQKYFAQTI 362 Query: 238 YQSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTA 297 S +KIEAG++ +E+ D + L+ + +P A+ K L+ Sbjct: 363 RNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRF 422 Query: 298 PNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVS 357 P + G+ L Q+++N++ NA+KFT G + V VEV+ + + + + Sbjct: 423 LTPIPPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVEVVDH----DAAKGEYQICFA 478 Query: 358 VGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKV-------- 409 V DTGIG++ QQ LF+ F Q + S ++ +GGTGLGL I +L MGG + Sbjct: 479 VQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCV 538 Query: 410 -----AFFSMGEGL--GSTVTFTVLLEELP 432 + +G+ GST FTV L LP Sbjct: 539 VGNPPELWQIGQPTIEGSTFYFTVNLTVLP 568 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 138 bits (347), Expect = 4e-35 Identities = 89/252 (35%), Positives = 132/252 (52%), Gaps = 9/252 (3%) Query: 179 ELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEAY 238 E+ +A + AEEASR+K++FLA+ +HE+RTP+N +IG L L D + E++ + Sbjct: 512 EMKRAKELAEEASRIKADFLANMSHEIRTPMNAVIGMTHLALK--TDLTPRQREYLHKIR 569 Query: 239 QSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAP 298 S +KIEAG++ +E D +VL +A NKGL Sbjct: 570 FSGQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDID 629 Query: 299 NQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVSV 358 P G+ L Q+++N NA+KFT +G IT+ V L E + +L ++V Sbjct: 630 RNLPRHFIGDPLRLGQILINYANNAVKFTEQGDITIVVR------LQEYRDQDVVLYLAV 683 Query: 359 GDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGL 418 DTGIG+ E + LF F Q D S ++ +GGTGLGL I +++ E MGG+V S G Sbjct: 684 KDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVES-EYGQ 742 Query: 419 GSTVTFTVLLEE 430 GST V L++ Sbjct: 743 GSTFWAKVCLQK 754 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 130 bits (326), Expect = 1e-32 Identities = 85/245 (34%), Positives = 133/245 (54%), Gaps = 10/245 (4%) Query: 180 LTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKH-EFVEEAY 238 L A+ AE A+ KS FLA+ +HELRTPLN IIG+ +++++ D ++E+ +++ Sbjct: 424 LELASSEAEAANATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKIL 483 Query: 239 QSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAP 298 +S +KIEAG++ + LE + E++ + P +N + Sbjct: 484 RSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDTISPLLKNNNNKLEVEIS 543 Query: 299 NQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVSV 358 + VYG+ L Q +LN++ NA KFT +G I+ VE V + L V Sbjct: 544 LESEE-VYGDLIKLRQGILNLLSNASKFTKDGIISFIVEEFK-------VDEKDWLSFQV 595 Query: 359 GDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGL 418 DTGIG++ EQ SKLF+ F Q D S ++ YGGTGLGL I++K + MGG + + + G+ Sbjct: 596 KDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDI-YLTSEIGV 654 Query: 419 GSTVT 423 GS+ T Sbjct: 655 GSSFT 659 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 129 bits (323), Expect = 2e-32 Identities = 84/256 (32%), Positives = 138/256 (53%), Gaps = 5/256 (1%) Query: 178 QELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDM-ADSEAEKHEFVEE 236 ++L + K +A++LK EFLA+ +HELRTPLN I+G + + + + ++ + +E Sbjct: 402 EQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEI 461 Query: 237 AYQSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLT 296 S +KIEAGR+ ++L S ++ + F A K ++ + Sbjct: 462 VENSGRHLLSLINDILDLSKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSE 521 Query: 297 A-PNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLK 355 PN +LV ++R L QV++N++ NAIKFT EGG V + + E Q P L Sbjct: 522 IIPNLPDVLV--DKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLS 579 Query: 356 VSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFS-M 414 +V DTGIG+ ++ + +F+ FVQID + ++ Y GTGLGL + +K+VE GG V S + Sbjct: 580 FTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKL 639 Query: 415 GEGLGSTVTFTVLLEE 430 EG +T + ++ Sbjct: 640 NEGSRFKITIPCVFQD 655 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 114 bits (284), Expect = 8e-28 Identities = 81/266 (30%), Positives = 134/266 (50%), Gaps = 26/266 (9%) Query: 179 ELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEAY 238 +L +A + AE ++ KS F+A+ +HELR+PLN IIGF +L+L + E++E Sbjct: 350 DLVRAKEIAESEAKAKSTFVANMSHELRSPLNAIIGFSQLMLRTK-NLPMEQYENAGIIQ 408 Query: 239 QSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAP 298 +S +KIEAG+ + D +L E+ +A N+G+ Sbjct: 409 RSGEYLLNLINNILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRD 468 Query: 299 NQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVA---------------VEVMPRTV 343 + P VYG++ L Q++LN++ NAIKFT EG + + P+ Sbjct: 469 HDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNK 528 Query: 344 LWEGVQKPGLLKVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVE 403 W L ++ DTG G+S + S LF+ F Q + S A GTGLGL I+++ ++ Sbjct: 529 YW--------LDFTIKDTGKGISEVELSHLFEAFSQTE-SGRNAQEGTGLGLAITRQFIK 579 Query: 404 TMGGKVAFFSMGEGLGSTVTFTVLLE 429 MGG + S+ + G+T +F++L++ Sbjct: 580 LMGGDINVSSVVD-QGTTFSFSILVD 604 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 108 bits (271), Expect = 2e-26 Identities = 73/224 (32%), Positives = 116/224 (51%), Gaps = 14/224 (6%) Query: 198 LASTTHELRTPLNGIIGFLRLILDDMADS-EAEKHEFVEEAYQSAXXXXXXXXXXXXXAK 256 L+ HE RTPL IIGF R++ D++ ++H++V+ SA +K Sbjct: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 Query: 257 IEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAPNQGPLLVYGNQRWLLQVM 316 I+A + E V ++ A + +A+ K L+ NLT + G Y +QR Q++ Sbjct: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTI-DDGVDFCYVDQRRWKQIL 308 Query: 317 LNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVSVGDTGIGVSLEQQSKLFKK 376 +N++ N +KFT +G +T+AV+ + +++ SV DTGIG+ E Q LF+ Sbjct: 309 INLLSNGVKFTPKGSVTLAVKATDKALIF-----------SVIDTGIGIDPEDQRDLFQP 357 Query: 377 FVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGS 420 F QI S A GTGLGL +S++L + GG + S G+GS Sbjct: 358 FKQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTST-PGVGS 400 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 83.2 bits (204), Expect = 1e-18 Identities = 74/250 (29%), Positives = 122/250 (48%), Gaps = 25/250 (10%) Query: 189 EASRLKSEFLASTTHELRTPLNGIIGFLRLILD--DMADSEAEKHEFVEEAYQSAXXXXX 246 E + KS+F+ +HE RTPL IIGF L+ D +E +K +++ S+ Sbjct: 935 ELNEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTE-KKQQYINNIQNSSQRLKQ 993 Query: 247 XXXXXXXXAKIEAGRVGIELEVVDFSEVL-QATENFA--LPQAQNKGLSFNLTAPNQGPL 303 ++ +A ++ IEL ++ + ENF+ L N L+++L P++ L Sbjct: 994 LIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHL-KPDEHSL 1052 Query: 304 LVYGNQRWLLQVMLNIVGNAIKFTHEGG-ITVAVEVMPRTVLWEGVQKPGLLKVSVGDTG 362 + + R L ++ NI+ NAIK++ G IT+ + +L++ V D G Sbjct: 1053 V---DVRLLRHILENILSNAIKYSAPGSTITLDISKDEEHLLFQ-----------VRDEG 1098 Query: 363 IGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGSTV 422 IG+ L+ Q KLF+ F + S+ GTGLGL I ++ VE GG + SM G G+T+ Sbjct: 1099 IGIPLQDQEKLFEAFHR--ASNVGDIPGTGLGLSIVKRYVEFQGGTIEVISM-PGKGTTM 1155 Query: 423 TFTVLLEELP 432 + L P Sbjct: 1156 VIKLPLNPAP 1165 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 77.8 bits (190), Expect = 6e-17 Identities = 68/263 (25%), Positives = 118/263 (44%), Gaps = 22/263 (8%) Query: 178 QELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLIL---DDMAD-SEAEKHEF 233 +EL AA+ A+ LKS+F+ + +HELRTPL IIG +L D A A++ + Sbjct: 363 KELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYY 422 Query: 234 VEEAYQSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDF----SEVLQATENFALPQAQNK 289 + ++ +++E+G+ + + V+ + A+ Q N Sbjct: 423 LLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINL 482 Query: 290 GLSFNLTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQ 349 L + + N G +Q L Q++ ++ NA+KFT G TV+ + Sbjct: 483 ELDYQI---NVGQDQFCADQERLDQILTQLLNNALKFTPAEG----------TVILRIWK 529 Query: 350 KPGLLKVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKV 409 + V DTGIG++ +Q LF+ F S++ Y G+GL ++++LVE GG + Sbjct: 530 ESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYI 589 Query: 410 AFFSMGEGLGSTVTFTVLLEELP 432 S G G+ T + + P Sbjct: 590 EVES-SPGQGTIFTTVIPQQNFP 611 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 72.0 bits (175), Expect = 3e-15 Identities = 64/250 (25%), Positives = 120/250 (48%), Gaps = 21/250 (8%) Query: 178 QELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILD-DMADSEAEKH-EFVE 235 +E+ A + +E SRLK+ F + +HE RTPL+ + +L+ + ++A + +K + Sbjct: 53 EEVRLALEREKELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLH 112 Query: 236 EAYQSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQA-TENFALPQAQNKGLSFN 294 S + EAG++ +D + Q E L + F Sbjct: 113 RIQNSVKNMVQLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFI 172 Query: 295 LTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGG-ITVAVEVMPRTVLWEGVQKPGL 353 +A + L+ ++R + ++ N++ NAIK++ GG I +A+ + +++E Sbjct: 173 CSAQDTKALV---DERLVRSILSNLLSNAIKYSPGGGQIKIALSLDSEQIIFE------- 222 Query: 354 LKVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFS 413 V D GIG+S E Q ++F+ F + G + + GTGLGL++++K V+ G + S Sbjct: 223 ----VTDQGIGISPEDQKQIFEPFHR--GKNVRNITGTGLGLMVAKKCVDLHSGSILLKS 276 Query: 414 MGEGLGSTVT 423 + G+TVT Sbjct: 277 AVD-QGTTVT 285 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 65.9 bits (159), Expect = 2e-13 Identities = 61/253 (24%), Positives = 114/253 (45%), Gaps = 25/253 (9%) Query: 178 QELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEA---EKHEFV 234 +EL Q + E ++ +F +H+L+ PLN + +++L+ +M SEA + +F+ Sbjct: 513 EELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQLL--EMRYSEALDEDAKDFI 570 Query: 235 EEAYQSAXXXXXXXXXXXXXAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFN 294 + A AK++ +L D EV+ + + G Sbjct: 571 DFAVTGVSLMQTLIDDILTYAKVDTQYA--QLTFTDVQEVVDKALANLKQRIEESGAEIE 628 Query: 295 LTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLL 354 + + V +Q L+QV N++ N IKF A + P+ +W G ++ Sbjct: 629 VGSMP----AVMADQIQLMQVFQNLIANGIKF--------AGDKSPKIKIW-GDRQEDAW 675 Query: 355 KVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSK-AYGGTGLGLVISQKLVETMGGKVAFFS 413 +V D GIG+ + ++F F ++ H++ Y GTG+GL I +K++E G++ + Sbjct: 676 VFAVQDNGIGIDPQFFERIFVIFQRL---HTRDEYKGTGMGLAICKKIIEGHQGQI-WLE 731 Query: 414 MGEGLGSTVTFTV 426 G GST F++ Sbjct: 732 SNPGEGSTFYFSI 744 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.135 0.393 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 36,256 Number of Sequences: 78 Number of extensions: 1446 Number of successful extensions: 55 Number of sequences better than 1.0e-05: 15 Number of HSP's better than 0.0 without gapping: 12 Number of HSP's successfully gapped in prelim test: 3 Number of HSP's that attempted gapping in prelim test: 6 Number of HSP's gapped (non-prelim): 16 length of query: 432 length of database: 48,235 effective HSP length: 65 effective length of query: 367 effective length of database: 43,165 effective search space: 15841555 effective search space used: 15841555 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001306 sll1905 (1014 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001306 sll1905 1887 0.0 SYNE-PCC-01-002617 slr1759 368 e-104 SYNE-PCC-01-002873 slr2098 289 3e-80 SYNE-PCC-01-002879 slr2104 223 2e-60 SYNE-PCC-01-000891 sll1353 169 5e-44 SYNE-PCC-01-001280 sll1871 154 2e-39 SYNE-PCC-01-001132 sll1672 152 4e-39 SYNE-PCC-01-000295 sll0474 150 2e-38 SYNE-PCC-01-001294 sll1888 141 1e-35 SYNE-PCC-01-000800 sll1228 136 4e-34 SYNE-PCC-01-002778 slr1969 108 8e-26 SYNE-PCC-01-001509 slr0210 107 2e-25 SYNE-PCC-01-001517 slr0222 104 2e-24 SYNE-PCC-01-001133 sll1673 92 1e-20 SYNE-PCC-01-000985 sll1475 87 3e-19 SYNE-PCC-01-001690 slr0473 86 7e-19 SYNE-PCC-01-002788 slr1982 76 4e-16 SYNE-PCC-01-001461 slr0115 72 1e-14 SYNE-PCC-01-002086 slr1042 69 5e-14 SYNE-PCC-01-000414 sll0649 67 2e-13 SYNE-PCC-01-002618 slr1760 63 4e-12 SYNE-PCC-01-002731 slr1909 63 5e-12 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 60 3e-11 SYNE-PCC-01-002033 slr0947 56 5e-10 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 55 8e-10 SYNE-PCC-01-002486 slr1584 54 2e-09 SYNE-PCC-01-000523 sll0797 53 5e-09 SYNE-PCC-01-001437 slr0081 50 3e-08 SYNE-PCC-01-000242 sll0396 49 6e-08 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 49 6e-08 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 49 1e-07 SYNE-PCC-01-002672 slr1837 48 1e-07 SYNE-PCC-01-000518 sll0789 48 2e-07 SYNE-PCC-01-002489 slr1588 47 3e-07 SYNE-PCC-01-002635 slr1783 47 4e-07 SYNE-PCC-01-002221 slr1213 45 8e-07 SYNE-PCC-01-001575 slr0312 43 5e-06 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 1887 bits (4889), Expect = 0.0 Identities = 962/1014 (94%), Positives = 962/1014 (94%) Query: 1 MSPSQPHPPIATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQA 60 MSPSQPHPPIATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQA Sbjct: 1 MSPSQPHPPIATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQA 60 Query: 61 QXXXXXXXXXXXXXXXXEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTK 120 Q EVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTK Sbjct: 61 QPDLILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTK 120 Query: 121 PFSPPELLARVKTHLELKQTRDNLHHTLLEQARTAEALACTSTRLGILVQNMQAGVLMTD 180 PFSPPELLARVKTHLELKQTRDNLHHTLLEQARTAEALACTSTRLGILVQNMQAGVLMTD Sbjct: 121 PFSPPELLARVKTHLELKQTRDNLHHTLLEQARTAEALACTSTRLGILVQNMQAGVLMTD 180 Query: 181 AQGTIVVVNPEFARLFNLGFPADLLLGKNLTAIAPRINGLISHGQGVTHNFLAIESPEPL 240 AQGTIVVVNPEFARLFNLGFPADLLLGKNLTAIAPRINGLISHGQGVTHNFLAIESPEPL Sbjct: 181 AQGTIVVVNPEFARLFNLGFPADLLLGKNLTAIAPRINGLISHGQGVTHNFLAIESPEPL 240 Query: 241 LKVELALEDGRFFERDYVPIMLGDSSQGHFWLYRDISQRKQVEMIQGQSLEMERRMRQQL 300 LKVELALEDGRFFERDYVPIMLGDSSQGHFWLYRDISQRKQVEMIQGQSLEMERRMRQQL Sbjct: 241 LKVELALEDGRFFERDYVPIMLGDSSQGHFWLYRDISQRKQVEMIQGQSLEMERRMRQQL 300 Query: 301 AEQNQELVXXXXXXXXXNRSKSEFLATMSHEIRTPMNAIIGMXXXXXXXXXXXQQKYFAQ 360 AEQNQELV NRSKSEFLATMSHEIRTPMNAIIGM QQKYFAQ Sbjct: 301 AEQNQELVAATTAAEAANRSKSEFLATMSHEIRTPMNAIIGMTGLLLDTDLTTQQKYFAQ 360 Query: 361 TIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIR 420 TIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIR Sbjct: 361 TIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIR 420 Query: 421 RFLTPIPPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQ 480 RFLTPIPPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQ Sbjct: 421 RFLTPIPPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQ 480 Query: 481 DTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCVVG 540 DTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCVVG Sbjct: 481 DTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCVVG 540 Query: 541 NPPELWQIGQPTIEGSTFYFTVNLTVLPSCAYSVHNLRHSLFIGRSVLVADYDEGRGTRM 600 NPPELWQIGQPTIEGSTFYFTVNLTVLPSCAYSVHNLRHSLFIGRSVLVADYDEGRGTRM Sbjct: 541 NPPELWQIGQPTIEGSTFYFTVNLTVLPSCAYSVHNLRHSLFIGRSVLVADYDEGRGTRM 600 Query: 601 RNLLASWRLQAEQITFSSPAKLGEDLKSRLTQKNYGALILHCPYPEGRGKQFTDFDLGKI 660 RNLLASWRLQAEQITFSSPAKLGEDLKSRLTQKNYGALILHCPYPEGRGKQFTDFDLGKI Sbjct: 601 RNLLASWRLQAEQITFSSPAKLGEDLKSRLTQKNYGALILHCPYPEGRGKQFTDFDLGKI 660 Query: 661 TTWAPTEQDIPVLVATDIYLSPGERYSGDKPPVQAWIKSPINPDELENTLVDVLGQTEPP 720 TTWAPTEQDIPVLVATDIYLSPGERYSGDKPPVQAWIKSPINPDELENTLVDVLGQTEPP Sbjct: 661 TTWAPTEQDIPVLVATDIYLSPGERYSGDKPPVQAWIKSPINPDELENTLVDVLGQTEPP 720 Query: 721 TLVSTEAISGPLFPYSSSNLTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALA 780 TLVSTEAISGPLFPYSSSNLTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALA Sbjct: 721 TLVSTEAISGPLFPYSSSNLTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALA 780 Query: 781 KGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDY 840 KGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDY Sbjct: 781 KGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDY 840 Query: 841 VSKPIRXXXXXXXXXXXXXXXXSTSQDRMATVSCVSAFEAKPSPSSPCPEDPAGTTLPPI 900 VSKPIR STSQDRMATVSCVSAFEAKPSPSSPCPEDPAGTTLPPI Sbjct: 841 VSKPIRLEALQQALQVAATALQSTSQDRMATVSCVSAFEAKPSPSSPCPEDPAGTTLPPI 900 Query: 901 DQDIICSLRDLDRENGQLILREIIDIYCQTAPELLQRIKLAIANQDWGNLSSAAHTLGSS 960 DQDIICSLRDLDRENGQLILREIIDIYCQTAPELLQRIKLAIANQDWGNLSSAAHTLGSS Sbjct: 901 DQDIICSLRDLDRENGQLILREIIDIYCQTAPELLQRIKLAIANQDWGNLSSAAHTLGSS 960 Query: 961 SANLGAVLLAQQAKTLENLTRQRDSRAMDPGHFPTLAASYERVQGELKTMLDRL 1014 SANLGAVLLAQQAKTLENLTRQRDSRAMDPGHFPTLAASYERVQGELKTMLDRL Sbjct: 961 SANLGAVLLAQQAKTLENLTRQRDSRAMDPGHFPTLAASYERVQGELKTMLDRL 1014 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 368 bits (945), Expect = e-104 Identities = 262/736 (35%), Positives = 368/736 (50%), Gaps = 71/736 (9%) Query: 272 LYRDISQRKQVEMIQGQSLEMERRMRQQLAEQNQELVXXXXXXXXXNRSKSEFLATMSHE 331 L I+++ + + Q LE ER R++LA++N EL NR+K EFLA MSHE Sbjct: 729 LLEAIAEQMGIALAQAALLEKERERRRELAQKNLELEKATWAAEAANRAKGEFLAMMSHE 788 Query: 332 IRTPMNAIIGMXXXXXXXXXXXQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKLDLEV 391 IRTPMN +IGM QQ + QTIR SGETLLT+INDILDFSKIEA KL LE Sbjct: 789 IRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIEADKLVLET 848 Query: 392 YPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAVKF 451 F+L +E L++ P AR K L L P + GD RLRQIL NL+ NA+KF Sbjct: 849 QAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSNLIGNALKF 908 Query: 452 TEAGQVKVTVEVVDHDAAKG----------EYQICFAVQDTGIGIAPNQQQALFQAFSQG 501 TE G+V +TV+ D A+ ++ICF ++DTGIGI ++Q LF++FSQ Sbjct: 909 TEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQDRLFKSFSQV 968 Query: 502 NSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCVVGNPPELWQIGQPTIEGSTFYFT 561 +SS TR++GGTGLGL I RLT +MGG + S V GS F F Sbjct: 969 DSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGV----------------GSNFRFC 1012 Query: 562 VNLTVLPSCAYSVHNLRHSLFIGRSVLVADYDEGRGTRMRNLLASWRLQAEQITFSSPAK 621 + T +++ G+ VL+ D +E +++ +W L T A Sbjct: 1013 ILTTAQAPALAEADSVQQ--MKGKQVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESAL 1070 Query: 622 LGEDLKSRLTQKNYGALILHCPYPEG--RGKQFTDFDLGKITTWAPTEQDIPVLVATDIY 679 D +R + L L P +G F GK D+P+++ + Sbjct: 1071 ---DWFARCPDLDAAILDLQMPNMDGITLAHHLRQFAQGK---------DLPIILLSSGL 1118 Query: 680 LSPGERYSGDKPPVQAWIKSPINPDELENTLVDVLG---------QTEPPTLV------S 724 ++ + S + + ++ + D L N +G Q + P V Sbjct: 1119 VAGADELSVFQTVLNKPVRQSLIFDSLVNIFQGSIGLADYAPQFDQLDLPEFVPDGDGLP 1178 Query: 725 TEAISGPLFPYSSSNLTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDY 784 TE + L P L ILLAEDNL+NQ+VA +L LGYPV + NNGQE + AL K Y Sbjct: 1179 TEDNATSLQP----ALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFY 1234 Query: 785 DVVLMDVEMPEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 D+VLMD++MP MDG+TA HIR++ +P I+A+TA +M GDR+ CL +GM+ Y+SKP Sbjct: 1235 DLVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKP 1294 Query: 845 IRXXXXXXXXXXXXXXXXS--TSQDRMATVSCVSAFEAKPSPSSPCPEDPAGTTLPPIDQ 902 I S +D + ++ E + P T P+D Sbjct: 1295 ISINQLRKVLQDTSALITSPQAREDIVTLGDKITVVEEQTMVK------PTDVTESPLDP 1348 Query: 903 DIICSLRDLDRENGQLIL-REIIDIYCQTAPELLQRIKLAIANQDWGNLSSAAHTLGSSS 961 I LRD D G L L E++ YCQ + +L++ + + D+ + AH+L SSS Sbjct: 1349 TAIAFLRD-DLCGGDLTLFGEMVACYCQESQKLIEELVQGLEVDDFAVIRRTAHSLKSSS 1407 Query: 962 ANLGAVLLAQQAKTLE 977 A+LGA L+ + LE Sbjct: 1408 ASLGAQQLSTFCQQLE 1423 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 289 bits (739), Expect = 3e-80 Identities = 230/718 (32%), Positives = 336/718 (46%), Gaps = 94/718 (13%) Query: 288 QSLEMERRMRQQLAEQNQELVXXXXXXXXXNRSKSEFLATMSHEIRTPMNAIIGMXXXXX 347 ++ E E + ++LAE+ +R K++FLA MSHEIRTPMNA+IGM Sbjct: 507 KAAEAEMKRAKELAEE-------------ASRIKADFLANMSHEIRTPMNAVIGMTHLAL 553 Query: 348 XXXXXXQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVV 407 +Q+ + IR SG+ LL +INDILDFSKIEAGKL +E FDL + L+ ++ Sbjct: 554 KTDLTPRQREYLHKIRFSGQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATLI 613 Query: 408 VPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHD 467 A K L L+ +P + GD RL QIL+N +NAVKFTE G + + V + ++ Sbjct: 614 SEKATNKGLELLFDIDRNLPRHFIGDPLRLGQILINYANNAVKFTEQGDITIVVRLQEY- 672 Query: 468 AAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMG 527 + + AV+DTGIGI P LF +F Q +SS TR FGGTGLGLAIC R+ LMG Sbjct: 673 -RDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMG 731 Query: 528 GTIWAESNGCVVGNPPELWQIGQPTIEGSTFYFTVNLTVLPSCAYSVHNLRHSLFI---- 583 G + ES + GQ GSTF+ V C + + H L + Sbjct: 732 GEVGVES------------EYGQ----GSTFWAKV-------CLQKSNVIPHRLVLSKDL 768 Query: 584 -GRSVLVADYDEGRGTRMRNLLASWRLQAEQITFSSPAKLGEDLKSRLTQKNYGALILHC 642 G+ VLV D ++ M++LL + E + S P L ++ + + + Sbjct: 769 EGKRVLVVDDNDHARLVMKDLLEQMKFVVETVE-SGPEALNFLAEADRENHPHSIVFIDW 827 Query: 643 PYPEGRGKQFTDFDLGKITTWAPTEQDIPVLVATDIYLSPGERYSGDKPPVQAWIKSPIN 702 P G + ++ Q P + Y + + PI+ Sbjct: 828 QMPNMDGLEVA----RRLKAMGLNHQ--PSIFIVTAYGREELFVKAKSLGIDDVLVKPIS 881 Query: 703 PDELENTLVDVLGQTEPPTLVSTEAISGPLFPYSSSNL---------TILLAEDNLINQQ 753 P L ++L VLG PT ++ E L ILL EDN INQ+ Sbjct: 882 PSVLFDSLARVLGD---PTALAQEMRQSSGIGAEDLALEKLRRIRGARILLVEDNEINQE 938 Query: 754 VAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSE 813 VA LL+ +G+ VDV NG AL L Y +VLMD++MPEMDG+ AT IR++ ++ Sbjct: 939 VAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEATIAIRQNPRYAQ 998 Query: 814 RPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRXXXXXXXXXXXXXXXXSTSQDRMATVS 873 P I+A+TA M+GDRERCL +GMND++ KPI Sbjct: 999 LP-IVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWN--------------------- 1036 Query: 874 CVSAFEAKPSPSSPCPEDPAGTTLPPIDQDI-ICSLRDLDRENG-------QLILREIID 925 P S PE + + D +I I + L+ ++G + + +++ Sbjct: 1037 --KLLHWIPVDSPLAPETIEESAINTSDPEISIPHIPGLNSDDGLRRVLGKKSLYLKMLH 1094 Query: 926 IYCQTAPELLQRIKLAIANQDWGNLSSAAHTLGSSSANLGAVLLAQQAKTLENLTRQR 983 + + L I A+ +D+G AHTL + N+GA L Q+A LE +++ Sbjct: 1095 KFVASQSSFLPEITQALGEKDYGFAERLAHTLKGVAGNIGAQELQQEAAELEKAIKEQ 1152 Score = 45.8 bits (107), Expect = 6e-07 Identities = 28/108 (25%), Positives = 50/108 (46%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 IL+V+D + N V +ELL G++ +G AL+R+ E Sbjct: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEA 986 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPEL 127 ++Q+P+ +P++ +TA+ + D + G D++ KP P EL Sbjct: 987 TIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 Score = 42.7 bits (99), Expect = 5e-06 Identities = 39/134 (29%), Positives = 56/134 (41%), Gaps = 8/134 (5%) Query: 6 PHPPIATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXX 65 PH + + + E +LVVDD V+ +LLE + V SGPEAL + +A Sbjct: 759 PHRLVLSKDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENH 818 Query: 66 XXXXXXX-----XXXXXEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTK 120 EV RLK + +TA ++ ++A + G D + K Sbjct: 819 PHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVK 878 Query: 121 PFSPPEL---LARV 131 P SP L LARV Sbjct: 879 PISPSVLFDSLARV 892 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 223 bits (568), Expect = 2e-60 Identities = 173/522 (33%), Positives = 268/522 (51%), Gaps = 68/522 (13%) Query: 253 FERDYVPIMLGDSSQGHFWLYRDISQRKQVEM-IQGQSLEMERRMR---QQLAEQNQELV 308 F+++ +P++ + Q D+++ ++ ++ ++ + ++E+R++ Q+L + L+ Sbjct: 393 FDKNNLPLLSRGTIQ-------DVTELQEAQISLEHLNEKLEQRIQERTQELENSQESLL 445 Query: 309 XXXXXXXXXNRSKSEFLATMSHEIRTPMNAIIGMXXXXXXXXXXXQQKYFAQTIRNSGET 368 ++KSEFLA MSHEIRTPMNAIIGM QQ+ + Q ++ +GE Sbjct: 446 EAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELVLQTDLTSQQRNYLQKVQYAGEL 505 Query: 369 LLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPP 428 LL +IN+ILDFSK+EAGKL+LE PF + + + ++ A K LTL IPP Sbjct: 506 LLGIINNILDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPP 565 Query: 429 NLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAP 488 L GD RL QIL+NL +NAVKFT G++ + +++ + + + Q F+V DTGIG+ P Sbjct: 566 ILVGDRLRLSQILINLGNNAVKFTNQGEITIRGQLLKTENEQTKLQ--FSVTDTGIGLTP 623 Query: 489 NQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCVVGNPPELWQI 548 +QQ LFQ F+QG +S +R++GGTGLGLAI LT LMGG IW ES VVG Sbjct: 624 DQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLES---VVG-------- 672 Query: 549 GQPTIEGSTFYFTVNL-TVLPSCAYSVHNLRHSL-------------FIGRSVLVADYDE 594 +GSTF+FTV L T P+ A R S+ G S+L+ + +E Sbjct: 673 -----QGSTFHFTVCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNE 727 Query: 595 GRGTRMRNLLASWRLQAEQITFSSPAKLGEDLKSRLTQKNYGALILHCPYPEGRGKQFTD 654 +LL S L+ + A G++ + LT Y A+++ P G Sbjct: 728 INREFAHDLLTSKGLRVQ------VANNGQEALTLLTSNTYDAILMDIQMPMLNG----- 776 Query: 655 FDLGKITTWAPTEQDIPVLVATDIYLSPGERYSGDKPPVQAWIKSPINPDELENTLVDVL 714 +D + +++P++ T ++ G++ + + PI PD L TL + Sbjct: 777 YDATRAIRQQEYHRNLPIIAMTANAMA-GDQEKALDAGMNDHLTKPIKPDLLFQTLAHWI 835 Query: 715 GQTEPPTLVSTEAISGPLFPYSSSNLTILLAEDNL--INQQV 754 PP S P SSNL L+ ++ INQQ+ Sbjct: 836 ----PPN--SAREKKNP-----SSNLKADLSFSSMTGINQQI 866 Score = 103 bits (257), Expect = 3e-24 Identities = 79/252 (31%), Positives = 125/252 (49%), Gaps = 21/252 (8%) Query: 741 TILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLT 800 +ILL EDN IN++ A LL G V V NNGQEAL+ L YD +LMD++MP ++G Sbjct: 719 SILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYD 778 Query: 801 ATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRXXXXXXXXXXXXXX 860 AT IR+ + P IIA+TA +M GD+E+ L +GMND+++KPI+ Sbjct: 779 ATRAIRQQEYHRNLP-IIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLF--------- 828 Query: 861 XXSTSQDRMATVSCVSAFEAKPSPSSPCPEDPAGTTLPPIDQDIICSLRDLDRENGQLIL 920 +A ++ K +PSS D + +++ I+Q I EN +L Sbjct: 829 ------QTLAHWIPPNSAREKKNPSSNLKADLSFSSMTGINQQIGMQY----IENVELYH 878 Query: 921 REIIDIYCQTAPELLQRIKLAIANQDWGNLSSAAHTLGSSSANLGAVLLAQQAKTLENLT 980 R ++ + + + A+ D + AH++ ++A LG + A+ LE+ Sbjct: 879 RLLVK-FGDRYSNFADQFRTEQASDDPTAATRYAHSIKGAAALLGIENVHHTAQQLEDSC 937 Query: 981 RQRDSRAMDPGH 992 R+ +S M H Sbjct: 938 REHESPEMIDRH 949 Score = 43.5 bits (101), Expect = 3e-06 Identities = 33/131 (25%), Positives = 56/131 (42%), Gaps = 1/131 (0%) Query: 4 SQPHPPIATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXX 63 ++P A + E IL+V+D + N +LL +G +G EAL +T Sbjct: 704 AKPSVTQAITQLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYD 763 Query: 64 XXXXXXXXXXXXXXEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFS 123 + ++Q R++P+I +TA+ D +A G D++TKP Sbjct: 764 AILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIK 823 Query: 124 PPELLARVKTH 134 P+LL + H Sbjct: 824 -PDLLFQTLAH 833 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 169 bits (427), Expect = 5e-44 Identities = 120/328 (36%), Positives = 173/328 (52%), Gaps = 32/328 (9%) Query: 208 KNLTAIAPR--INGLISHGQGVTHNFLAIESPEPLLKVELALEDGRFFERDYVPIMLGDS 265 + LT IA R ++ +I+ + + +++ ++K + R ER + I++ Sbjct: 512 QGLTPIALRSEVSEVITLNENFNEMLITLQNQFKIIKQAKDNLEMRVAERTHTLIVINKQ 571 Query: 266 SQGHFWLYRDISQRKQVEMIQGQSLEMERRMRQQLAEQNQELVXXXXXXXXXNRSKSEFL 325 G +I +R+++E+ ++R+ A+++ EL NR KSEFL Sbjct: 572 LAG------EIEERQRIEI----------KLRE--AKESAELA---------NRVKSEFL 604 Query: 326 ATMSHEIRTPMNAIIGM-XXXXXXXXXXXQQKYFAQTIRNSGETLLTLINDILDFSKIEA 384 A +SHEIRTPMNAI+G Q K + I +S + LL LI+DILD SKIEA Sbjct: 605 ANISHEIRTPMNAILGFCDLLLQKDLSLSQTKKYLNAIGSSSKILLALIDDILDISKIEA 664 Query: 385 GKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNL 444 GKL + + P DL + E + A KSL L + + + D RLRQIL NL Sbjct: 665 GKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQILFNL 724 Query: 445 LSNAVKFTEAGQVKVTVEVVDHDA-AKGEY-QICFAVQDTGIGIAPNQQQALFQAFSQGN 502 + NA+KFTE GQV + + V ++G Y + V DTGIGIAP Q +F F+Q Sbjct: 725 VGNALKFTEEGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIFDVFTQSQ 784 Query: 503 SSITRRFGGTGLGLAICVRLTALMGGTI 530 TR++GGTGLGL I RLTAL+GG I Sbjct: 785 GQSTRKYGGTGLGLTITRRLTALLGGEI 812 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 154 bits (388), Expect = 2e-39 Identities = 97/259 (37%), Positives = 140/259 (54%), Gaps = 7/259 (2%) Query: 279 RKQVEMIQGQSLEMERRMRQQLAEQNQELVXXXXXXXXXNRSKSEFLATMSHEIRTPMNA 338 +KQ+ + E ++ ++L + L N +KS FLA MSHE+RTP+NA Sbjct: 396 QKQLAVANSCLEEKVQQRTEELENTVKALELASSEAEAANATKSIFLANMSHELRTPLNA 455 Query: 339 IIGMXXXXXXXXXXXQQKYFA---QTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFD 395 IIG + I SG++LL LIND+LD SKIEAGK++L + F+ Sbjct: 456 IIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLLDISKIEAGKMELYLETFN 515 Query: 396 LGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAVKFTEAG 455 L + + LD + P + + L ++ + GD+ +LRQ ++NLLSNA KFT+ G Sbjct: 516 LKELIAGILDTISPLLKNNNNKLEVE-ISLESEEVYGDLIKLRQGILNLLSNASKFTKDG 574 Query: 456 QVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLG 515 + VE D + F V+DTGIG+ Q LFQ F+Q +SS TR++GGTGLG Sbjct: 575 IISFIVEEFKVDEKDW---LSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLG 631 Query: 516 LAICVRLTALMGGTIWAES 534 LAI + +MGG I+ S Sbjct: 632 LAITRKFCQMMGGDIYLTS 650 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 152 bits (385), Expect = 4e-39 Identities = 108/274 (39%), Positives = 155/274 (56%), Gaps = 21/274 (7%) Query: 276 ISQRKQVEMIQGQSLEMERRMRQQ-LAEQNQ------ELVXXXXXXXXXNRSKSEFLATM 328 I Q ++++ + Q E+ER R++ L E N+ +LV ++KS F+A M Sbjct: 314 IEQNQKLQELY-QQRELERAQREKILIEYNESLQKQVDLVRAKEIAESEAKAKSTFVANM 372 Query: 329 SHEIRTPMNAIIGMXXXXXXXXXXXQQKYF-AQTIRNSGETLLTLINDILDFSKIEAGKL 387 SHE+R+P+NAIIG ++Y A I+ SGE LL LIN+ILDFSKIEAGK Sbjct: 373 SHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQRSGEYLLNLINNILDFSKIEAGKT 432 Query: 388 DLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSN 447 L + FDL L++ D++ A + + LI +P + GD +LRQIL+NLLSN Sbjct: 433 HLNRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRDHDLPRYVYGDEIKLRQILLNLLSN 492 Query: 448 AVKFTEAGQVKVT--------VEVVDHDAA---KGEYQICFAVQDTGIGIAPNQQQALFQ 496 A+KFT G+V +T EV++ + + K +Y + F ++DTG GI+ + LF+ Sbjct: 493 AIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISEVELSHLFE 552 Query: 497 AFSQGNSSITRRFGGTGLGLAICVRLTALMGGTI 530 AFSQ S + GTGLGLAI + LMGG I Sbjct: 553 AFSQTESGRNAQ-EGTGLGLAITRQFIKLMGGDI 585 Score = 69.3 bits (168), Expect = 5e-14 Identities = 34/105 (32%), Positives = 64/105 (60%), Gaps = 1/105 (0%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 IL+ +D +N+Q+ LL G+ ++ +NGQEA++ + ++ MD+ MP MDG A Sbjct: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIR 846 T++I + Q + ++A+TA +E ++ L++G +D++ KP R Sbjct: 692 TKYI-KGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFR 735 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 150 bits (379), Expect = 2e-38 Identities = 89/243 (36%), Positives = 138/243 (56%), Gaps = 8/243 (3%) Query: 299 QLAEQNQELVXXXXXXXXXNRSKSEFLATMSHEIRTPMNAIIGMXXXXXXXXXX---XQQ 355 ++ + ++L + K EFLA MSHE+RTP+N+I+GM +Q Sbjct: 396 EIKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQ 455 Query: 356 KYFAQTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKS 415 + + NSG LL+LINDILD SKIEAG++DL++ P + + +L V A QK Sbjct: 456 VQSLEIVENSGRHLLSLINDILDLSKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQ 515 Query: 416 LTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAVKFT-EAGQVKVTVEVVDHDAAKGEY- 473 + L + P P++ D RL Q+L+NLL+NA+KFT E G+V V +++ + Sbjct: 516 INLSSEII-PNLPDVLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQS 574 Query: 474 --QICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIW 531 Q+ F V DTGIGI ++ +F+ F Q +S++ RR+ GTGLGL++ ++ L GG++ Sbjct: 575 PPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVT 634 Query: 532 AES 534 S Sbjct: 635 VTS 637 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 141 bits (355), Expect = 1e-35 Identities = 105/326 (32%), Positives = 154/326 (47%), Gaps = 38/326 (11%) Query: 259 PIMLGDSSQGHFWLYRDISQRKQVEMIQGQSLEMERRMRQQLAEQN----------QELV 308 P + D + G+ L +QV G + Q+LAEQ QEL Sbjct: 129 PTLYQDQANGYLCL-------QQVGPAPGPWHPETEALLQELAEQTGTAIAHATLYQELT 181 Query: 309 XXXXXXXXXNRSKSEFLATMSHEIRTPMNAIIGMXXXXXX--XXXXXQQKYFAQTIRNSG 366 +R KSEFLA+ +HE+RTP+N IIG ++ F + S Sbjct: 182 QATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEAYQSA 241 Query: 367 ETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPI 426 LL LINDILD +KIEAG++ +E+ D + L+ + +P A+ K L+ Sbjct: 242 LLLLNLINDILDLAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAPNQG 301 Query: 427 PPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQ----ICFAVQDT 482 P + G+ L Q+++N++ NA+KFT G + V VEV+ Q + +V DT Sbjct: 302 PLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVSVGDT 361 Query: 483 GIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCVVGNP 542 GIG++ QQ LF+ F Q + S ++ +GGTGLGL I +L MGG + Sbjct: 362 GIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKV------------ 409 Query: 543 PELWQIGQPTIEGSTFYFTVNLTVLP 568 + +G+ GST FTV L LP Sbjct: 410 -AFFSMGEGL--GSTVTFTVLLEELP 432 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 136 bits (342), Expect = 4e-34 Identities = 133/460 (28%), Positives = 207/460 (45%), Gaps = 54/460 (11%) Query: 318 NRSKSEFLATMSHEIRTPMNAIIGMXXXXXXXXXXXQQKYFAQTIRNSGETLLTLINDIL 377 NR+K+EFLA++SHE+RTP+NAIIG + I SGE LL LINDIL Sbjct: 160 NRAKTEFLASISHELRTPLNAIIGFSQLLHRDPSLAPHRPTLDIINRSGEHLLELINDIL 219 Query: 378 DFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRL 437 + SKIEAG+ L D + L+ + A++K L L +P ++ D +L Sbjct: 220 EMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKL 279 Query: 438 RQILVNLLSNAVKFTEAGQVKVTVEVV---DHDAAKG-EYQICFAVQDTGIGIAPNQQQA 493 RQ+L+NLL+NA+KFT G V + V+ + D +G + F V DTG GIA ++ Sbjct: 280 RQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDE 339 Query: 494 LFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCVVGNPPELWQIGQPTI 553 LF F+Q + + + G GLGL I + LMGG I Q+ Sbjct: 340 LFVPFAQTETGL-KSCQGNGLGLPISQKFVQLMGGQI----------------QVRSKVD 382 Query: 554 EGSTFYFTVNLTVL----PSCAYSVHNLRHSLFIGRSVLVADYDEGRGTRMRNLLASWRL 609 +GS F+F + + V+ P+ S L + VLV D +R LL S Sbjct: 383 QGSAFFFAIPVQVMAAPKPTPETSAVTLPPLDQYNQKVLVVDDRPESRLLLRQLLTSLGF 442 Query: 610 QAEQITFSSPAKLGEDLKSRLTQKNYGALILHCPYPEGRGKQFTDFDLGKITTWAPTEQD 669 ++ A+ GE + + +++ P G+ T KI A + Sbjct: 443 VVQE------AENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQ----KIK--ASPQGQ 490 Query: 670 IPVLVATDIYLSPGERYSGDKPPVQAWIKSPINPDEL-----ENTLVDVLGQTEPPTLVS 724 +++A GER ++ P P+EL ++ V + Q +PP Sbjct: 491 HTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALPSQGQPP---- 546 Query: 725 TEAISGPLFPY---SSSNLTILLAE-DNLINQQVAKLLLK 760 + PL P+ ++ +L+ LA+ Q++AK+ L+ Sbjct: 547 ----ASPLRPFPVITAPSLSEQLAKTPQSWRQKMAKMALE 582 Score = 74.7 bits (182), Expect = 1e-15 Identities = 45/153 (29%), Positives = 80/153 (52%), Gaps = 3/153 (1%) Query: 694 QAWIKSPINPDELENTLVDVLGQTEPPTLVSTEAISGPLFPYSSSNLTILLAEDNLINQQ 753 Q ++S ++ + V P T A++ P P N +L+ +D ++ Sbjct: 374 QIQVRSKVDQGSAFFFAIPVQVMAAPKPTPETSAVTLP--PLDQYNQKVLVVDDRPESRL 431 Query: 754 VAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSE 813 + + LL LG+ V NG+ A++ V+LMD++MP +DG + T+ I+ S + + Sbjct: 432 LLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQKIKASP-QGQ 490 Query: 814 RPWIIAVTAYSMEGDRERCLASGMNDYVSKPIR 846 IIA+TA + EG+R L++G +D++SKP R Sbjct: 491 HTIIIALTASAFEGERAEILSAGCDDFLSKPFR 523 Score = 46.6 bits (109), Expect = 4e-07 Identities = 32/128 (25%), Positives = 56/128 (43%), Gaps = 3/128 (2%) Query: 8 PPIATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXX 67 PP+ + + +LVVDD E+ ++ +LL G+ +G A+ Sbjct: 411 PPLDQYNQK---VLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILM 467 Query: 68 XXXXXXXXXXEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPEL 127 ++K PQ + +I LTAS + + + + G D+++KPF P EL Sbjct: 468 DMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEEL 527 Query: 128 LARVKTHL 135 +A + HL Sbjct: 528 IALLAKHL 535 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 108 bits (270), Expect = 8e-26 Identities = 81/259 (31%), Positives = 125/259 (48%), Gaps = 19/259 (7%) Query: 285 IQGQSLEMERRMRQQLAEQNQELVXXXXXXXXXNRSKSEFLATMSHEIRTPMNAIIGMXX 344 +Q Q E+R+ E+ +EL N KS+F+ +SHE+RTP+ +IIG+ Sbjct: 347 VQKQKNNFEKRV----IERTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSA 402 Query: 345 XXX------XXXXXXQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQ 398 +Q+Y+ I+ +G+ LL IN I+ S++E+G+ L F L Sbjct: 403 TLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHT 462 Query: 399 CLEEALDVVVPSARQKSLTLIRRFLTPIPPN-LQGDVTRLRQILVNLLSNAVKFTEA-GQ 456 + + ++ A ++ + L + + + D RL QIL LL+NA+KFT A G Sbjct: 463 LAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGT 522 Query: 457 VKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGL 516 V + + K Q F V+DTGIGI Q LF+AF S T + G+GL Sbjct: 523 VILRIW-------KESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGL 575 Query: 517 AICVRLTALMGGTIWAESN 535 A+ +L L GG I ES+ Sbjct: 576 ALTKQLVELHGGYIEVESS 594 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 107 bits (267), Expect = 2e-25 Identities = 79/209 (37%), Positives = 104/209 (49%), Gaps = 11/209 (5%) Query: 325 LATMSHEIRTPMNAIIG---MXXXXXXXXXXXQQKYFAQTIRNSGETLLTLINDILDFSK 381 L+ + HE RTP+ AIIG M +Q + Q NS E LL+L+ND LD SK Sbjct: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 Query: 382 IEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQIL 441 I+A +L + + +V A++K L L + D R +QIL Sbjct: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVD-FCYVDQRRWKQIL 308 Query: 442 VNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQG 501 +NLLSN VKFT G V + V+ D + F+V DTGIGI P Q+ LFQ F Q Sbjct: 309 INLLSNGVKFTPKGSVTLAVKATDK-------ALIFSVIDTGIGIDPEDQRDLFQPFKQI 361 Query: 502 NSSITRRFGGTGLGLAICVRLTALMGGTI 530 + + GTGLGLA+ RL L GG I Sbjct: 362 SHPPSFAEKGTGLGLALSRRLAQLHGGDI 390 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 104 bits (259), Expect = 2e-24 Identities = 70/216 (32%), Positives = 111/216 (51%), Gaps = 12/216 (5%) Query: 318 NRSKSEFLATMSHEIRTPMNAIIG---MXXXXXXXXXXXQQKYFAQTIRNSGETLLTLIN 374 N +KS+F+ +SHE RTP+ +IIG + +++ + I+NS + L LI+ Sbjct: 937 NEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKQQYINNIQNSSQRLKQLID 996 Query: 375 DILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDV 434 D+L S+ +A K+++E+ +L + ++ + + L P +L DV Sbjct: 997 DVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPDEHSLV-DV 1055 Query: 435 TRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQAL 494 LR IL N+LSNA+K++ G + D +K E + F V+D GIGI Q+ L Sbjct: 1056 RLLRHILENILSNAIKYSAPGST------ITLDISKDEEHLLFQVRDEGIGIPLQDQEKL 1109 Query: 495 FQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTI 530 F+AF + +S GTGLGL+I R GGTI Sbjct: 1110 FEAFHR--ASNVGDIPGTGLGLSIVKRYVEFQGGTI 1143 Score = 43.5 bits (101), Expect = 3e-06 Identities = 41/187 (21%), Positives = 76/187 (40%), Gaps = 13/187 (6%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 +L+VDD +EN+ +S L+ SG EA+ + Sbjct: 9 VLLVDDQRENLVALSRALDSLPVEIITANSGQEAIATAATTEFALMILAQEMSELDGLNT 68 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAK----GAVDYVTKPFSPPELLARVKTHL 135 L+ P P+IFL ++ + +A A+ G VD++ +P + L + K +L Sbjct: 69 AKILRSFPLAEQTPIIFLA---RQEIITKAMAEINILGLVDFLAQPPNQNFLQVKAKLYL 125 Query: 136 ELKQTRDNL--HHTLLEQARTA---EALACTSTRLG-ILVQNMQAGVLMTDAQGTIVVVN 189 +L Q + L ++ LE + + + S +L I++ N+ V +TD G + Sbjct: 126 QLFQQKQTLQYYNNYLESSVKSVHFDVKNNHSEQLSEIILANISDTVFVTDLSGKFTFIC 185 Query: 190 PEFARLF 196 +F Sbjct: 186 SNIDNIF 192 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 91.7 bits (226), Expect = 1e-20 Identities = 75/287 (26%), Positives = 131/287 (45%), Gaps = 44/287 (15%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 IL+VDD+ N+ ++S+LL GY+ VTSG AL+ + + +V Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLELKQ 139 C+ +K++ + +DIP+IF++A + D ++AF G VDY+TKPF E++AR++ +++ Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIEGQFTIQR 130 Query: 140 TRDNLHHTLLEQARTAEALACTSTRLGILVQNMQAGVLMTDA-----QGTI-----VVVN 189 R L + ++ E L + L ++ + G+ A G I +V+N Sbjct: 131 QRIALKREVRKRREAEEVLYQSRALLSSVLNSALDGIAAMQAVRNPQTGDIEDFRCLVIN 190 Query: 190 PEFARLFNLGFPADLLLGKNLTAIAPRINGLISHGQGVTHNFLAIESPEPLLKVELALED 249 P ++ FN DL+ G+ + FL P+ + +E Sbjct: 191 PILSKAFNRS-REDLI------------------GRVLLKRFLQRLDPQLFDQFVNLVET 231 Query: 250 GRFFERD------------YVPIMLGDSSQGHFWLYRDISQRKQVEM 284 G F +D +V + LGD G RDI+ RK++E+ Sbjct: 232 GTFLTQDIYFPIANSDWYHFVAVKLGD---GFAVTVRDITDRKRMEL 275 Score = 61.2 bits (147), Expect = 1e-11 Identities = 37/105 (35%), Positives = 58/105 (55%), Gaps = 1/105 (0%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 ILL +D N Q+ LL LGY V V +G+ AL L D++L+D++MP+MDG Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIR 846 E I++ + + P II ++A D+ + G DY++KP + Sbjct: 71 CEMIKKEEELQDIP-IIFISALGDTFDKVKAFECGGVDYITKPFQ 114 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 86.7 bits (213), Expect = 3e-19 Identities = 70/266 (26%), Positives = 122/266 (45%), Gaps = 38/266 (14%) Query: 274 RDISQRKQVEMIQGQSLEMERRMRQQLAEQNQELVXXXXXXXXXNRSKSEFLATMSHEIR 333 RD+++R++ E ++ +LE E+ + +R K+ F + SHE R Sbjct: 44 RDVTERRRTEEVR-LALEREKEL---------------------SRLKTRFFSMASHEFR 81 Query: 334 TPMNAIIGMXXXXXXXXXX----XQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKLDL 389 TP++ + ++ I+NS + ++ L++DIL ++ EAGKL+ Sbjct: 82 TPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLLDDILIINRAEAGKLEF 141 Query: 390 EVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAV 449 DL ++ ++ + S + + D +R IL NLLSNA+ Sbjct: 142 NPNWLDLKLLFQQFIEEIQLSVSDQYY--FDFICSAQDTKALVDERLVRSILSNLLSNAI 199 Query: 450 KFTEAG-QVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRR 508 K++ G Q+K+ + + QI F V D GIGI+P Q+ +F+ F +G + R Sbjct: 200 KYSPGGGQIKIALSLDSE-------QIIFEVTDQGIGISPEDQKQIFEPFHRGKN--VRN 250 Query: 509 FGGTGLGLAICVRLTALMGGTIWAES 534 GTGLGL + + L G+I +S Sbjct: 251 ITGTGLGLMVAKKCVDLHSGSILLKS 276 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 85.5 bits (210), Expect = 7e-19 Identities = 81/340 (23%), Positives = 141/340 (41%), Gaps = 35/340 (10%) Query: 229 HNFLAIESPEPLLKVELALEDGRFFERDYVPIMLGDSSQGHFWLYRDISQRKQV--EMIQ 286 HNFL PE L V + +E + + F L+++I + + + + ++ Sbjct: 434 HNFLLWFRPEVLQTVNWGGDPNHAYEATQEDGKIELHPRQSFDLWKEIVRLQSLPWQSVE 493 Query: 287 GQS-LEMERRMRQQLAEQNQELVXXXXXXXXXNRSKSEFLATMSHEIRTPMNAI---IGM 342 QS L +++ + + Q +EL N +F SH+++ P+N + + + Sbjct: 494 IQSALALKKAIVNLILRQAEELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQL 553 Query: 343 XXXXXXXXXXXQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEE 402 K F + TLI+DIL ++K++ L ++E Sbjct: 554 LEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLTFTD------VQE 607 Query: 403 ALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVE 462 +D + + +Q+ P + D +L Q+ NL++N +KF K+ + Sbjct: 608 VVDKALANLKQRIEESGAEIEVGSMPAVMADQIQLMQVFQNLIANGIKFAGDKSPKIKIW 667 Query: 463 VVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRL 522 + E FAVQD GIGI P + +F F + ++ + GTG+GLAIC ++ Sbjct: 668 -----GDRQEDAWVFAVQDNGIGIDPQFFERIFVIFQRLHTR--DEYKGTGMGLAICKKI 720 Query: 523 TALMGGTIWAESNGCVVGNPPELWQIGQPTIEGSTFYFTV 562 G IW ESN EGSTFYF++ Sbjct: 721 IEGHQGQIWLESN----------------PGEGSTFYFSI 744 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 76.3 bits (186), Expect = 4e-16 Identities = 40/104 (38%), Positives = 66/104 (63%), Gaps = 1/104 (0%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 +LL EDN +N+ + L + GY V + +G++A++ ++LMD+ +P +DG TA Sbjct: 7 VLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTA 66 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPI 845 T+ I+ + P IIA+TA++M DRER +A+G +DY +KPI Sbjct: 67 TKQIKGHPDGAHIP-IIALTAHAMASDRERAIAAGCDDYDTKPI 109 Score = 42.4 bits (98), Expect = 7e-06 Identities = 29/113 (25%), Positives = 45/113 (39%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 +L+V+D + N ++S L +GY G +A+ Sbjct: 7 VLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTA 66 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVK 132 ++K P IP+I LTA D +A A G DY TKP LL +++ Sbjct: 67 TKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKME 119 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 71.6 bits (174), Expect = 1e-14 Identities = 43/116 (37%), Positives = 57/116 (49%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 IL++DD ++S LE GY G + Q Q V Sbjct: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 C RL++D +T DIPV+ LTA + QD +Q F GA DY+TKPF E+LARV+ L Sbjct: 64 CQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALL 119 Score = 51.2 bits (121), Expect = 2e-08 Identities = 26/103 (25%), Positives = 57/103 (55%), Gaps = 1/103 (0%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 IL+ +D+ + + L+ GY V +G + + + D++++D+ +P++DG T Sbjct: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 + +RR + ++ P ++ +TA D+ + SG +DY++KP Sbjct: 64 CQRLRRDERTADIP-VLMLTALGQIQDKIQGFDSGADDYLTKP 105 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 69.3 bits (168), Expect = 5e-14 Identities = 35/113 (30%), Positives = 57/113 (50%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 +L+V+D +IS +L+ G+ T G EAL+++ EV Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVK 132 C R+K DP+T+++PVI ++ E+ D +GA Y+ KPF P EL+ +K Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIK 142 Score = 51.2 bits (121), Expect = 2e-08 Identities = 30/105 (28%), Positives = 56/105 (53%), Gaps = 1/105 (0%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 +LL ED+ +++ +LK G+ V + +G EAL L D+V++D+ MP M+G Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIR 846 I +S +++ +I ++ E DR + G + Y++KP + Sbjct: 90 CRRI-KSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQ 133 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 67.4 bits (163), Expect = 2e-13 Identities = 44/117 (37%), Positives = 63/117 (53%), Gaps = 2/117 (1%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXX-XXXXXE 78 IL+V+D +E +I E LE E + T VT+ E R+ Q Q E Sbjct: 14 ILIVEDDQEIAQLIRETLEREQF-TCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLE 72 Query: 79 VCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 VC R++Q P ++D ++ LTA E+ D + + GA DY+ KPFSP EL+ARV+ L Sbjct: 73 VCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALL 129 Score = 57.0 bits (136), Expect = 3e-10 Identities = 33/103 (32%), Positives = 60/103 (58%), Gaps = 1/103 (0%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 IL+ ED+ Q+ + L++ + V N+G+ L + D++++D+ +P++DGL Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 IR+ G S+ P+I+ +TA E DR L++G +DY+ KP Sbjct: 74 CTRIRQQPG-SKDPYILMLTAKGEEIDRIIGLSTGADDYLVKP 115 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 63.2 bits (152), Expect = 4e-12 Identities = 34/112 (30%), Positives = 62/112 (55%), Gaps = 1/112 (0%) Query: 734 PYSSSNLTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEM 793 P ++ IL+ +D+ + ++ L+K G+ V++ NG+EAL+ A+ +VVL+D M Sbjct: 6 PIETAAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVM 65 Query: 794 PEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPI 845 P MDG + + + ++ P ++ +T E +R +G DYV+KPI Sbjct: 66 PVMDGFACCQALMKIY-QNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPI 116 Score = 48.1 bits (113), Expect = 1e-07 Identities = 40/140 (28%), Positives = 59/140 (42%), Gaps = 4/140 (2%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 ILVVDD + L+ EG+ T+G EAL + + + Sbjct: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFAC 73 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLELKQ 139 C L + Q V+ +T +++ + +AF GA+DYVTKP L RVK L Sbjct: 74 CQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL---- 129 Query: 140 TRDNLHHTLLEQARTAEALA 159 ++ L H L + E LA Sbjct: 130 YQNRLQHQLESVNQMLERLA 149 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 62.8 bits (151), Expect = 5e-12 Identities = 40/143 (27%), Positives = 71/143 (49%), Gaps = 1/143 (0%) Query: 16 ESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXX 75 E++ +L+VDD + ++ + LE +GY T +G EAL +T Sbjct: 6 ENYHLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMD 65 Query: 76 XXEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 ++++Q+P IPV+FL+A + + ++ GA Y+ KPF P EL A+V++ L Sbjct: 66 GYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCL 125 Query: 136 -ELKQTRDNLHHTLLEQARTAEA 157 + + + +H L + AR A Sbjct: 126 RQADRLLQHNNHPLEDNARVQVA 148 Score = 55.1 bits (131), Expect = 1e-09 Identities = 35/109 (32%), Positives = 57/109 (52%), Gaps = 1/109 (0%) Query: 736 SSSNLTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPE 795 S N +LL +D+ + K L+ GY V NG+EAL L D+++ D+ MPE Sbjct: 4 SKENYHLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPE 63 Query: 796 MDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 MDG E +R++ S P ++ ++A +R + L G + Y++KP Sbjct: 64 MDGYAFIEQVRQNPDISWIP-VMFLSAKGQSHNRVKGLNVGADIYMAKP 111 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 60.1 bits (144), Expect = 3e-11 Identities = 33/103 (32%), Positives = 62/103 (60%), Gaps = 4/103 (3%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 +L+ +DNLI + ++ L KLG+ VD +G+ ++AL YD V++D+ +P++DGL Sbjct: 4 LLIEDDNLIGNGL-QIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGL-- 60 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 E +++ + + ++ +TA +R + L SG +DY+ KP Sbjct: 61 -EVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKP 102 Score = 50.1 bits (118), Expect = 3e-08 Identities = 31/112 (27%), Positives = 54/112 (48%), Gaps = 5/112 (4%) Query: 41 GYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEVCDRLKQDPQTRDIPVIFLTAS 100 G++ + T G + +T A EV + + + Q D+PV+ LTA Sbjct: 24 GFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEVLQQWRSNHQ--DVPVLILTAR 81 Query: 101 NEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLELKQTRDNLHHTLLEQA 152 + + ++ GA DY+ KPF+ E+ AR++ L + R HH+++EQA Sbjct: 82 DTLDERVKGLQSGADDYLCKPFALAEVAARLQA---LIRRRYGYHHSVIEQA 130 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 56.2 bits (134), Expect = 5e-10 Identities = 33/101 (32%), Positives = 56/101 (55%), Gaps = 4/101 (3%) Query: 744 LAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTATE 803 + +D +++ + L +GY V +G+EA++ + D D+V++DV MP++DG + Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 804 HIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 +R+ S+ P II +TA DR L G +DYV KP Sbjct: 61 ELRK---ESDIP-IIMLTALGDVADRITGLELGADDYVVKP 97 Score = 53.9 bits (128), Expect = 2e-09 Identities = 35/114 (30%), Positives = 50/114 (43%), Gaps = 3/114 (2%) Query: 22 VVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEVCD 81 +VDD ++ L GY G EA+ ++ VC Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 82 RLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 L+++ DIP+I LTA + D + GA DYV KPFSP EL AR+++ L Sbjct: 61 ELRKES---DIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVL 111 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 55.5 bits (132), Expect = 8e-10 Identities = 38/124 (30%), Positives = 60/124 (48%), Gaps = 4/124 (3%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 +L+VDD E ++S LLE EG+ +G EALQ++ ++ Sbjct: 4 LLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESYKLVLLDVMMPKLNGI--- 60 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLELKQ 139 + LK+ + ++PV+ LTA E D + GA D + KPF+ EL+AR+K L Sbjct: 61 -ETLKEIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSA 119 Query: 140 TRDN 143 + N Sbjct: 120 SPSN 123 Score = 52.8 bits (125), Expect = 5e-09 Identities = 35/103 (33%), Positives = 59/103 (57%), Gaps = 5/103 (4%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 +LL +D++ ++ LL+ G+ V+ NNG EAL L + Y +VL+DV MP+++G+ Sbjct: 4 LLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNE-SYKLVLLDVMMPKLNGIET 62 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 + IR+ S P ++ +TA + DR L G +D + KP Sbjct: 63 LKEIRKV---SNVP-VMMLTARGEDIDRVLGLELGADDCLPKP 101 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 54.3 bits (129), Expect = 2e-09 Identities = 36/107 (33%), Positives = 61/107 (57%), Gaps = 5/107 (4%) Query: 740 LTILLAEDNL-INQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDG 798 + ILL ED+L + + +A+ L +L Y VD+ + A ++ +YD+V++DV +PE+DG Sbjct: 1 MRILLVEDDLPLAETLAEALSDQL-YTVDIATDASLAWDYASRLEYDLVILDVMLPELDG 59 Query: 799 LTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPI 845 +T + R S I+ +TA D+ L +G +DYV KP+ Sbjct: 60 ITLCQKWR---SHSYLMPILMMTARDTINDKITGLDAGADDYVVKPV 103 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 52.8 bits (125), Expect = 5e-09 Identities = 35/115 (30%), Positives = 56/115 (48%), Gaps = 4/115 (3%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQ--AQXXXXXXXXXXXXXXXX 77 IL+V+D + I ++L E Y +VT G +A + + Sbjct: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 Query: 78 EVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVK 132 E+C +L+ Q +PV+ LTA E ++ ++ GA DY+TKPF ELLAR++ Sbjct: 63 ELCQKLRT--QGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLR 115 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 50.1 bits (118), Expect = 3e-08 Identities = 32/110 (29%), Positives = 61/110 (55%), Gaps = 10/110 (9%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSAL-------AKGDYDVVLMDVEMP 794 IL+ ED + ++ L L++ GY V V++G++AL+ L + D++++D+ +P Sbjct: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 Query: 795 EMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 +++GL +R G P I+ V+A E ++ L G +DY++KP Sbjct: 93 QVNGLDVCRSLR--FGGDNTP-ILIVSAKGSEMEKVTGLEVGADDYITKP 139 Score = 43.9 bits (102), Expect = 2e-06 Identities = 36/125 (28%), Positives = 53/125 (42%), Gaps = 9/125 (7%) Query: 15 PESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVT-------QAQXXXXXX 67 P S ILVV+D I L+ EGY V G +AL + QA Sbjct: 28 PPSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIIL 87 Query: 68 XXXXXXXXXXEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPEL 127 +VC L+ + P++ ++A + + + GA DY+TKPFS EL Sbjct: 88 DIMLPQVNGLDVCRSLRFGGD--NTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKEL 145 Query: 128 LARVK 132 +AR + Sbjct: 146 VARCR 150 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 49.3 bits (116), Expect = 6e-08 Identities = 30/124 (24%), Positives = 55/124 (44%), Gaps = 2/124 (1%) Query: 17 SFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXX 76 S +LVV++ ++ + L+ EGY + G + + + Sbjct: 2 SHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSG 61 Query: 77 XEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLE 136 E+C RL++ IP+I +TA ++ ++ + GA DY+ KPF+ E AR++ L Sbjct: 62 LELCRRLRE--MGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLR 119 Query: 137 LKQT 140 T Sbjct: 120 RTHT 123 Score = 42.0 bits (97), Expect = 9e-06 Identities = 30/103 (29%), Positives = 51/103 (49%), Gaps = 3/103 (2%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 +L+ E+ + +L LK GY V V +G + + + D+++++ +P M GL Sbjct: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGL-- 62 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 E RR + R II +TA +R L +G +DY+ KP Sbjct: 63 -ELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKP 104 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 49.3 bits (116), Expect = 6e-08 Identities = 30/103 (29%), Positives = 50/103 (48%), Gaps = 4/103 (3%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 IL+ ED ++ + K + + GY V NG E LA + ++V+MD+ +P +GL Sbjct: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLLL 65 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 +R +I +T E D+ L G +DY++KP Sbjct: 66 ARELREELSLP----LIFLTGRDNEVDKILGLEIGADDYLTKP 104 Score = 42.7 bits (99), Expect = 5e-06 Identities = 31/116 (26%), Positives = 48/116 (41%), Gaps = 3/116 (2%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 ILVV+D + + E EGY +G E + + Sbjct: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLLL 65 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 L+++ +P+IFLT + + D + GA DY+TKPF+P EL R + L Sbjct: 66 ARELREE---LSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLL 118 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 48.5 bits (114), Expect = 1e-07 Identities = 30/103 (29%), Positives = 58/103 (56%), Gaps = 2/103 (1%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 IL+ ED +++ L L + Y V ++ + A++ + K + ++L+D +P G+ Sbjct: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKI-KENPKLILLDWMLPGRSGIQF 63 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 ++I++ + + P II +TA S E D CL +G +DY++KP Sbjct: 64 IQYIKKQESYAAIP-IIMLTAKSTEEDCIACLNAGADDYITKP 105 Score = 48.1 bits (113), Expect = 1e-07 Identities = 22/50 (44%), Positives = 32/50 (64%) Query: 83 LKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVK 132 +K+ IP+I LTA + ++D + GA DY+TKPFSP LLAR++ Sbjct: 67 IKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIE 116 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 48.1 bits (113), Expect = 1e-07 Identities = 30/103 (29%), Positives = 57/103 (55%), Gaps = 4/103 (3%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 +L+ ++N + + ++K L + G+ +DV + G+ L+ G YD++++D +P++ GL Sbjct: 5 LLVDDENALTEPLSKALGHQ-GHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 I R G S ++ +TA DR L +G +DY+ KP Sbjct: 64 CRQI-RILGHSTP--VLFLTAKDTLDDRVAGLDAGGDDYLIKP 103 Score = 48.1 bits (113), Expect = 1e-07 Identities = 35/129 (27%), Positives = 53/129 (41%), Gaps = 2/129 (1%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQXXXXXXXXXXXXXXXXEV 79 IL+VDD +S+ L +G++ G L Q E+ Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLELKQ 139 C +++ PV+FLTA + D + G DY+ KPF ELLARV+ L + Sbjct: 64 CRQIRI--LGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQS 121 Query: 140 TRDNLHHTL 148 + + TL Sbjct: 122 HGETITETL 130 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 47.8 bits (112), Expect = 2e-07 Identities = 46/178 (25%), Positives = 72/178 (40%), Gaps = 31/178 (17%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQA--QXXXXXXXXXXXXXXXX 77 +L+V+D + + + L E Y +V G A + Q Sbjct: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 Query: 78 EVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLEL 137 E+C +L+ Q +P++ LTA ++ D ++ GA DY+ KPF ELLAR+++ Sbjct: 63 ELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRS---- 116 Query: 138 KQTRDNLHHTLLEQARTAEALACTSTRLGILVQNMQAGVLMTDAQGTIVVVNPEFARL 195 Q R+ E + Q +Q G D GT VV PE AR+ Sbjct: 117 ------------LQRRSPE----------LQPQQLQVGQWWLD-YGTFAVVTPEQARI 151 Score = 44.3 bits (103), Expect = 2e-06 Identities = 34/107 (31%), Positives = 53/107 (49%), Gaps = 5/107 (4%) Query: 740 LTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKG--DYDVVLMDVEMPEMD 797 + +LL ED + L++ Y VD V +G A S L +G +Y + + D +P + Sbjct: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 Query: 798 GLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 GL + +R RS P I+ +TA DR L +G +DY+ KP Sbjct: 61 GLELCQKLRGQ--RSSLP-ILMLTAKDQIADRVEGLDAGADDYLIKP 104 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 47.0 bits (110), Expect = 3e-07 Identities = 33/108 (30%), Positives = 54/108 (50%), Gaps = 3/108 (2%) Query: 741 TILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDY--DVVLMDVEMPEMDG 798 TIL+ ED I +++ L Y + NG AL L + D+++ DV MPEMDG Sbjct: 3 TILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDG 62 Query: 799 LTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIR 846 ++++ + P+I +TA D + + SG +DY+ KP + Sbjct: 63 HGLITALQKNAKTAAIPFIF-LTALGTMQDFRKGMNSGADDYLIKPFK 109 Score = 43.1 bits (100), Expect = 4e-06 Identities = 22/54 (40%), Positives = 31/54 (57%) Query: 83 LKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLE 136 L+++ +T IP IFLTA QD + GA DY+ KPF +LL V + L+ Sbjct: 69 LQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQ 122 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 46.6 bits (109), Expect = 4e-07 Identities = 36/129 (27%), Positives = 62/129 (48%), Gaps = 7/129 (5%) Query: 717 TEPPTLVSTEAISGPLFPYSSSNLTILLAEDNLINQQVAKLLLKKLG-YPVDVVNNGQEA 775 T+PP L + I+ P S +LL +D ++ + L+ G + VD+ N EA Sbjct: 38 TKPPYLPLHDCITAMAEPIS-----LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEA 92 Query: 776 LSALAKGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLAS 835 L +V+ D+ MP++DG + +R P ++ +TA M GDR + + Sbjct: 93 WDYLQHHLPALVISDIMMPQVDGYQFLQKLREDARFQSLP-VVFLTARGMTGDRIQGYQT 151 Query: 836 GMNDYVSKP 844 G + ++SKP Sbjct: 152 GCDAFLSKP 160 Score = 45.4 bits (106), Expect = 8e-07 Identities = 34/138 (24%), Positives = 55/138 (39%), Gaps = 1/138 (0%) Query: 3 PSQPHPPIATFEPESFLILVVDDVKENIYVISELLEGEG-YSTTFVTSGPEALQRVTQAQ 61 P P T E +L+VDD + LE G + + EA + Sbjct: 41 PYLPLHDCITAMAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHL 100 Query: 62 XXXXXXXXXXXXXXXXEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKP 121 + +L++D + + +PV+FLTA D +Q + G +++KP Sbjct: 101 PALVISDIMMPQVDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKP 160 Query: 122 FSPPELLARVKTHLELKQ 139 F P EL A V+ L +Q Sbjct: 161 FDPDELEAIVRNLLARQQ 178 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 45.4 bits (106), Expect = 8e-07 Identities = 35/107 (32%), Positives = 54/107 (50%), Gaps = 6/107 (5%) Query: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVV-NNGQEALSALAKGDYDVVLMDVEMP-EMDGL 799 IL+ ED + Q LLK GY + V+ ++G AL +A+ D+VL+D+ + E+DG+ Sbjct: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 Query: 800 TATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIR 846 E I+ I+ +TA+S ER + YV KP R Sbjct: 65 EVAERIKSLYSIP----IVYLTAFSDGETLERAQKTNPQGYVIKPFR 107 Score = 45.1 bits (105), Expect = 1e-06 Identities = 45/186 (24%), Positives = 78/186 (41%), Gaps = 22/186 (11%) Query: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTS-GPEALQRVTQAQ-XXXXXXXXXXXXXXXX 77 IL+V+D + I++LL+ +GY + S G AL+++ + Sbjct: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 Query: 78 EVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLEL 137 EV +R+K IP+++LTA ++ + L +A YV KPF +LL+ V + Sbjct: 65 EVAERIKS---LYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIAN 121 Query: 138 KQTRDNLHHTLLEQARTAEALACTST-------RLGILVQNMQAGVLMTDAQGTIVVVNP 190 Q +Q + E TST L + +++ G+ + G I + Sbjct: 122 HQ----------QQRKPEEDTLSTSTGHYRLQPTLDYIEEHLDQGITVEFLAGAIGMSTA 171 Query: 191 EFARLF 196 F R F Sbjct: 172 YFCRFF 177 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 42.7 bits (99), Expect = 5e-06 Identities = 29/109 (26%), Positives = 55/109 (50%), Gaps = 5/109 (4%) Query: 737 SSNLTILLAEDNLINQQVAKLLLKKLG--YPVDVVNNGQEALSALAKGDYDVVLMDVEMP 794 ++ + +L+A+D+ I +Q ++ + + NG++A++ + DV LMD+ MP Sbjct: 4 ATTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMP 63 Query: 795 EMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSK 843 E++G+ A I + II +T Y + D R L +G Y+ K Sbjct: 64 EVEGVAAISAICAIVKFAR---IIVLTTYDSDEDIYRGLQAGAKGYLLK 109 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.135 0.388 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 89,255 Number of Sequences: 78 Number of extensions: 3889 Number of successful extensions: 192 Number of sequences better than 1.0e-05: 37 Number of HSP's better than 0.0 without gapping: 25 Number of HSP's successfully gapped in prelim test: 12 Number of HSP's that attempted gapping in prelim test: 28 Number of HSP's gapped (non-prelim): 84 length of query: 1014 length of database: 48,235 effective HSP length: 72 effective length of query: 942 effective length of database: 42,619 effective search space: 40147098 effective search space used: 40147098 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 97 (42.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001437 slr0081 (262 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001437 slr0081 526 e-152 SYNE-PCC-01-000414 sll0649 186 5e-50 SYNE-PCC-01-000242 sll0396 174 3e-46 SYNE-PCC-01-002033 slr0947 161 2e-42 SYNE-PCC-01-002486 slr1584 144 2e-37 SYNE-PCC-01-002672 slr1837 144 4e-37 SYNE-PCC-01-001461 slr0115 140 5e-36 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 137 4e-35 SYNE-PCC-01-000518 sll0789 131 2e-33 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 130 3e-33 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 130 6e-33 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 122 9e-31 SYNE-PCC-01-000523 sll0797 120 3e-30 SYNE-PCC-01-000877 sll1330 112 1e-27 SYNE-PCC-01-002086 slr1042 90 8e-21 SYNE-PCC-01-002731 slr1909 79 2e-17 SYNE-PCC-01-001133 sll1673 73 8e-16 SYNE-PCC-01-002489 slr1588 73 1e-15 SYNE-PCC-01-001306 sll1905 70 9e-15 SYNE-PCC-01-002635 slr1783 63 8e-13 SYNE-PCC-01-002788 slr1982 62 2e-12 SYNE-PCC-01-001132 sll1672 57 5e-11 SYNE-PCC-01-002879 slr2104 56 1e-10 SYNE-PCC-01-002618 slr1760 55 2e-10 SYNE-PCC-01-000800 sll1228 54 4e-10 SYNE-PCC-01-002873 slr2098 54 7e-10 SYNE-PCC-01-001075 sll1592 52 2e-09 SYNE-PCC-01-002617 slr1759 50 6e-09 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 49 2e-08 SYNE-PCC-01-000608 sll0921 48 4e-08 SYNE-PCC-01-002221 slr1213 47 8e-08 SYNE-PCC-01-001160 sll1708 46 1e-07 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 526 bits (1355), Expect = e-152 Identities = 262/262 (100%), Positives = 262/262 (100%) Query: 1 MLVKYHLVGFPMATLEAPPHSLQHQEIPPSHRILVVEDEVSIRETIVLSLQEEGYEVYAV 60 MLVKYHLVGFPMATLEAPPHSLQHQEIPPSHRILVVEDEVSIRETIVLSLQEEGYEVYAV Sbjct: 1 MLVKYHLVGFPMATLEAPPHSLQHQEIPPSHRILVVEDEVSIRETIVLSLQEEGYEVYAV 60 Query: 61 DDGRDALALLQEFSEDPGQAAVDLIILDIMLPQVNGLDVCRSLRFGGDNTPILIVSAKGS 120 DDGRDALALLQEFSEDPGQAAVDLIILDIMLPQVNGLDVCRSLRFGGDNTPILIVSAKGS Sbjct: 61 DDGRDALALLQEFSEDPGQAAVDLIILDIMLPQVNGLDVCRSLRFGGDNTPILIVSAKGS 120 Query: 121 EMEKVTGLEVGADDYITKPFSLKELVARCRAMIRRQGLAGNNIAPFRKFRDLVLYPQECR 180 EMEKVTGLEVGADDYITKPFSLKELVARCRAMIRRQGLAGNNIAPFRKFRDLVLYPQECR Sbjct: 121 EMEKVTGLEVGADDYITKPFSLKELVARCRAMIRRQGLAGNNIAPFRKFRDLVLYPQECR 180 Query: 181 VLMRGEEVSLAPKEFRLLELFMSYPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREK 240 VLMRGEEVSLAPKEFRLLELFMSYPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREK Sbjct: 181 VLMRGEEVSLAPKEFRLLELFMSYPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREK 240 Query: 241 LEQDPSQPEYLVTVRGFGYRFG 262 LEQDPSQPEYLVTVRGFGYRFG Sbjct: 241 LEQDPSQPEYLVTVRGFGYRFG 262 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 186 bits (473), Expect = 5e-50 Identities = 103/235 (43%), Positives = 143/235 (60%), Gaps = 13/235 (5%) Query: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 IL+VED+ I + I +L+ E + +DG L + QE DLI+LD+MLP Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQE-------QVPDLIVLDLMLP 66 Query: 93 QVNGLDVCRSLRF--GGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCR 150 +++GL+VC +R G + IL+++AKG E++++ GL GADDY+ KPFS +ELVAR R Sbjct: 67 KLDGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVR 126 Query: 151 AMIRRQGLAGNNIAPFRKFR----DLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPR 206 A++RRQ G + + DL + R EE+ L EF LL FMSYP Sbjct: 127 ALLRRQLRQGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPG 186 Query: 207 RVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 RVW+R QLIE +WG DF GD + VD HIR LR+K+E DP+ P ++ TV G GY+F Sbjct: 187 RVWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKF 241 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 174 bits (441), Expect = 3e-46 Identities = 96/231 (41%), Positives = 137/231 (59%), Gaps = 13/231 (5%) Query: 30 SHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDI 89 SHR+LVVE+E + + L L+ EGY+V DG QEF D LII++ Sbjct: 2 SHRVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPD-------LIIVNG 54 Query: 90 MLPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 LP ++GL++CR LR G PI++++AK E+V GL+ GADDYI KPF+ E AR Sbjct: 55 ALPGMSGLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARI 114 Query: 150 RAMIRRQGLAGNNIAPFRKFRDLVLYPQECRVLMRGEE-VSLAPKEFRLLELFMSYPRRV 208 R +RR + + F R + + R + RG+ + L KEF LL+ +S+ R+V Sbjct: 115 RVQLRRTHTTSDEVLQFADLR----FNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQV 170 Query: 209 WSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGY 259 +REQ++E +WG DFMGDS ++V+IR+LR KLE +P + TVRG GY Sbjct: 171 LTREQILERVWGYDFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGY 220 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 161 bits (408), Expect = 2e-42 Identities = 93/232 (40%), Positives = 139/232 (59%), Gaps = 13/232 (5%) Query: 35 VVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLPQV 94 +V+DE SIR + L GYEV DG +A+A E DP DL++LD+M+P++ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHE--SDP-----DLVVLDVMMPKL 53 Query: 95 NGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRAMIR 154 +G VC+ LR D PI++++A G +++TGLE+GADDY+ KPFS KEL AR R+++R Sbjct: 54 DGYGVCQELRKESD-IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLR 112 Query: 155 R---QGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVWSR 211 R G+ G + + + + + +V E + L EF LLEL +S +SR Sbjct: 113 RVDKNGMPGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSR 172 Query: 212 EQLIEHIWGI--DFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 ++++ +WG + D++ VDVHI LR KLE+DPS PE ++T RG GY F Sbjct: 173 SEILQEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLF 224 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 144 bits (364), Expect = 2e-37 Identities = 87/229 (37%), Positives = 137/229 (59%), Gaps = 10/229 (4%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 RIL+VED++ + ET+ +L ++ +Y VD DA +L +++ + DL+ILD+ML Sbjct: 2 RILLVEDDLPLAETLAEALSDQ---LYTVDIATDA-SLAWDYAS---RLEYDLVILDVML 54 Query: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 P+++G+ +C+ R PIL+++A+ + +K+TGL+ GADDY+ KP L EL AR RA Sbjct: 55 PELDGITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRA 114 Query: 152 MIRRQGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVWSR 211 ++RR G A P ++ + L P V E +SL KE+ +LEL + RRV SR Sbjct: 115 LLRR-GCA--TCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSR 171 Query: 212 EQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYR 260 +I+ IW ++ + TV VH+R LR+KL+ + + TV G GYR Sbjct: 172 SMIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 144 bits (362), Expect = 4e-37 Identities = 87/240 (36%), Positives = 136/240 (56%), Gaps = 23/240 (9%) Query: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 IL+V+DE ++ E + +L +G+ + D G+ LA+ GQ DL+ILD MLP Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIA-----GQ--YDLLILDWMLP 56 Query: 93 QVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRAM 152 QV+GL++CR +R G +TP+L ++AK + ++V GL+ G DDY+ KPF L+EL+AR RA+ Sbjct: 57 QVSGLEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRAL 116 Query: 153 IRRQ----------GLAGNNIAPFRKFR-DLVLYPQECRVLMRGEEVSLAPKEFRLLELF 201 +RRQ G NN+ D+ C +G+ ++L+ KE LL LF Sbjct: 117 LRRQSHGETITETLGAVKNNLLSVNNVSLDVANQVAYC----QGQRIALSEKEVALLTLF 172 Query: 202 MSYPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 + P ++ S E++ H+W + S + +R LR K+EQ P+ P + +V G GY F Sbjct: 173 LQAPGQILSHEEIYSHLWPGESPPSSNVLAALVRLLRRKIEQ-PNAPRLINSVYGKGYCF 231 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 140 bits (352), Expect = 5e-36 Identities = 81/236 (34%), Positives = 130/236 (55%), Gaps = 19/236 (8%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 RIL+++D+ +I + + ++L+ GY+V DG AL + D LI+LD+ML Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPD-------LIMLDLML 55 Query: 92 PQVNGLDVCRSLRFGGDNT--PILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 P+V+G VC+ LR P+L+++A G +K+ G + GADDY+TKPF ++E++AR Sbjct: 56 PKVDGFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARV 115 Query: 150 RAMIRRQGLAGNNIAPFRKFRD------LVLYPQECRVLMRGEEVSLAPKEFRLLELFMS 203 RA++RR + I K + L L P+ + G+ + L EF LL + Sbjct: 116 RALLRRT----DRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQ 171 Query: 204 YPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGY 259 + S ++ +WG + D +T+ VHIR LR KLE +P +P ++ TV G GY Sbjct: 172 RHGQTVSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 137 bits (345), Expect = 4e-35 Identities = 91/235 (38%), Positives = 136/235 (57%), Gaps = 16/235 (6%) Query: 30 SHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDI 89 + +IL+VEDE +IRE I L L ++ Y+V D + A+ + E+P LI+LD Sbjct: 2 TRKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAI---NKIKENP-----KLILLDW 53 Query: 90 MLPQVNGLDVCRSLRFGGDNT--PILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVA 147 MLP +G+ + ++ PI++++AK +E + + L GADDYITKPFS + L+A Sbjct: 54 MLPGRSGIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLA 113 Query: 148 RCRAMIRRQGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRR 207 R A+ RR + F + +L + RV + +E++L+ EF+LL FM +P + Sbjct: 114 RIEAVWRR---IYEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEK 170 Query: 208 VWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPE-YLVTVRGFGYRF 261 V+SREQL+ IW D + +TVD +IR LR L P Q E Y+ TVRG GYRF Sbjct: 171 VYSREQLLNRIWHNDLEVEYRTVDSYIRRLRRNLA--PFQCEHYIQTVRGSGYRF 223 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 131 bits (330), Expect = 2e-33 Identities = 86/237 (36%), Positives = 128/237 (54%), Gaps = 22/237 (9%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 R+L+VEDE + + +L+ E Y V V DG A + L D G L I D M+ Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYL-----DQGWVNYTLAIFDWMV 56 Query: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 P ++GL++C+ LR + PIL+++AK ++V GL+ GADDY+ KPF + EL+AR R+ Sbjct: 57 PGLSGLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRS 116 Query: 152 MIRR-------QGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSY 204 + RR Q G + F V+ P++ R ++L KEF+LLE FM + Sbjct: 117 LQRRSPELQPQQLQVGQWWLDYGTF--AVVTPEQAR-------ITLTAKEFQLLEYFMKH 167 Query: 205 PRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 P+++ S EQ+ +W + S V +R LR KLE + S + TV G GYRF Sbjct: 168 PQQILSSEQIKNQLWALSAESTSNVVAAQVRLLRRKLE-EYSHGNLIETVYGLGYRF 223 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 130 bits (328), Expect = 3e-33 Identities = 78/238 (32%), Positives = 132/238 (55%), Gaps = 19/238 (7%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 +ILVVEDE+ R T+ + EGY+V+ ++G + +L + ++L+++DI L Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHN-------INLVVMDINL 57 Query: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 P NGL + R LR + P++ ++ + +E++K+ GLE+GADDY+TKPF+ +EL R R Sbjct: 58 PGKNGLLLARELR-EELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARN 116 Query: 152 MIRR-------QGLAGNNIAPFRKFR-DLVLYPQECRVLMRGEEVSLAPKEFRLLELFMS 203 ++ R + G F ++ DL + G+E L EFR + F Sbjct: 117 LLHRAMPHQEKENTFGREFYRFNGWKLDL---NSHSLITPEGQEFKLPRSEFRAMLHFCE 173 Query: 204 YPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 P ++ +RE+L++ + G + +TVDV IR +R+ E P+ P ++T+ G GYRF Sbjct: 174 NPGKLQTREELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 130 bits (326), Expect = 6e-33 Identities = 72/230 (31%), Positives = 134/230 (58%), Gaps = 11/230 (4%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 ++L+V+D++ + E + L+ EG++V ++G +AL L E + L++LD+M+ Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNE--------SYKLVLLDVMM 54 Query: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 P++NG++ + +R N P+++++A+G ++++V GLE+GADD + KPF+ +EL+AR +A Sbjct: 55 PKLNGIETLKEIR-KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKA 113 Query: 152 MIRRQGLAGNNIA--PFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVW 209 ++RR NNI+ F + L+ E ++L EF++L L + V Sbjct: 114 ILRRSASPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVV 173 Query: 210 SREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGY 259 SRE+L + +++D+HI LR KL + ++P + T+RG GY Sbjct: 174 SREELSLEVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGY 223 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 122 bits (307), Expect = 9e-31 Identities = 79/231 (34%), Positives = 130/231 (56%), Gaps = 15/231 (6%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 RIL++ED+ I + + L + G+ V DG+ +A L A D ++LD+ L Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTS-------APYDAVVLDLTL 54 Query: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 P+++GL+V + R + P+LI++A+ + E+V GL+ GADDY+ KPF+L E+ AR +A Sbjct: 55 PKLDGLEVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQA 114 Query: 152 MIRRQGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVWSR 211 +IRR+ +++ + + L + V + + +SL +E++LLELFM RV SR Sbjct: 115 LIRRRYGYHHSVI---EQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSR 171 Query: 212 EQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRFG 262 + E + D S +DVHI LR+KL + +++ TV G GY G Sbjct: 172 SSIEEKLSSWDEEISSGALDVHIYNLRQKLGK-----QFIRTVHGVGYALG 217 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 120 bits (302), Expect = 3e-30 Identities = 81/236 (34%), Positives = 127/236 (53%), Gaps = 13/236 (5%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQ-EFSEDPGQAAVDLIILDIM 90 RIL+VEDE + I L E Y V V DG A L+ +++E L I+D + Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTE------YTLAIVDWL 55 Query: 91 LPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCR 150 LP ++GL++C+ LR G++ P+L+++A G +V GL+ GADDY+TKPF + EL+AR R Sbjct: 56 LPGLSGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLR 115 Query: 151 AMIRRQGLAGNNIAPFRKF-----RDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYP 205 A+ RR I F +L+ + + +E++L +EF++ + M P Sbjct: 116 ALQRRSPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNP 175 Query: 206 RRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 R+ S ++ + +W +D S V +R +R KL Q + P + TV G GYRF Sbjct: 176 ERIISGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQ-NCPCPIKTVPGQGYRF 230 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 112 bits (280), Expect = 1e-27 Identities = 80/231 (34%), Positives = 121/231 (52%), Gaps = 15/231 (6%) Query: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 I VVE +R + LQ+ GY V A Q F+ L ++D L Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQAR---QAFNNQ----LPTLAVIDSDLT 58 Query: 93 QVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRAM 152 +G+++CR L + + I I+SAK +E + V GL+ GADDY+TKPF ++E +AR + Sbjct: 59 DGDGIELCRWL-YQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECL 117 Query: 153 IRR-QGLAGNNIAPFRKFR-DLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVWS 210 IRR + +A + + + DLV + RV +G V L P+EF LL + S Sbjct: 118 IRRVRTVAAPLLLDYGVLKIDLV----QRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALS 173 Query: 211 REQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 R +L+ W + + + +T+D H+ LR+K+E DP QP + TVR GYRF Sbjct: 174 RTELLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRF 223 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 89.7 bits (221), Expect = 8e-21 Identities = 49/124 (39%), Positives = 75/124 (60%), Gaps = 9/124 (7%) Query: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 +L+VED S RE I L++ G++V DG +AL LQ FS D L++LDI++P Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPD-------LVVLDIVMP 82 Query: 93 QVNGLDVCRSLRFGGD--NTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCR 150 ++NG +VCR ++ N P+++ S+KG E ++ G+ GAD YI KPF ELV + Sbjct: 83 RMNGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIK 142 Query: 151 AMIR 154 ++R Sbjct: 143 QLLR 146 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 78.6 bits (192), Expect = 2e-17 Identities = 52/162 (32%), Positives = 89/162 (54%), Gaps = 16/162 (9%) Query: 30 SHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDI 89 ++ +L+V+D+ ++ + L+ +GY+V +GR+AL LL D+I+ DI Sbjct: 7 NYHLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTT-------TVPDMIVCDI 59 Query: 90 MLPQVNGLDVCRSLRFGGDNT--PILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVA 147 M+P+++G +R D + P++ +SAKG +V GL VGAD Y+ KPF +EL A Sbjct: 60 MMPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAA 119 Query: 148 RCRAMIRRQG--LAGNN-----IAPFRKFRDLVLYPQECRVL 182 + ++ +R+ L NN A + RD+ L P E +V+ Sbjct: 120 QVQSCLRQADRLLQHNNHPLEDNARVQVARDVELTPTETKVI 161 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 73.2 bits (178), Expect = 8e-16 Identities = 52/147 (35%), Positives = 77/147 (52%), Gaps = 11/147 (7%) Query: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 IL+V+D + + + L GY V +V G+ AL LQ DLI+LDI +P Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQV-------KRPDLILLDIKMP 63 Query: 93 QVNGLDVCRSLRFGGD--NTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCR 150 ++G VC ++ + + PI+ +SA G +KV E G DYITKPF ++E+VAR Sbjct: 64 DMDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 Query: 151 AM--IRRQGLAGNNIAPFRKFRDLVLY 175 I+RQ +A R+ + VLY Sbjct: 124 GQFTIQRQRIALKREVRKRREAEEVLY 150 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 72.8 bits (177), Expect = 1e-15 Identities = 43/126 (34%), Positives = 70/126 (55%), Gaps = 7/126 (5%) Query: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 ILVVEDE IRE I +L E Y++ ++G AL LL P DLII D+M+P Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMP-----DLIICDVMMP 58 Query: 93 QVNGLDVCRSLRFGGDNT--PILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCR 150 +++G + +L+ P + ++A G+ + G+ GADDY+ KPF ++L+ Sbjct: 59 EMDGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVN 118 Query: 151 AMIRRQ 156 + +++Q Sbjct: 119 SRLQKQ 124 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 69.7 bits (169), Expect = 9e-15 Identities = 45/125 (36%), Positives = 67/125 (53%), Gaps = 9/125 (7%) Query: 28 PPSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIIL 87 P S ILVV+D I L+ EGY V G +AL + QA DLI+L Sbjct: 15 PESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVT-------QAQPDLILL 67 Query: 88 DIMLPQVNGLDVCRSLRFGGD--NTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKEL 145 D+M+P ++GL+VC L+ + P++ ++A + + + GA DY+TKPFS EL Sbjct: 68 DLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPEL 127 Query: 146 VARCR 150 +AR + Sbjct: 128 LARVK 132 Score = 52.8 bits (125), Expect = 1e-09 Identities = 34/116 (29%), Positives = 64/116 (55%), Gaps = 10/116 (8%) Query: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 IL+ ED + ++ L L++ GY V V++G++AL+ L + D++++D+ +P Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSAL-------AKGDYDVVLMDVEMP 794 Query: 93 QVNGLDVCRSLR--FGGDNTP-ILIVSAKGSEMEKVTGLEVGADDYITKPFSLKEL 145 +++GL +R G P I+ V+A E ++ L G +DY++KP L+ L Sbjct: 795 EMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEAL 850 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 63.2 bits (152), Expect = 8e-13 Identities = 43/153 (28%), Positives = 80/153 (52%), Gaps = 13/153 (8%) Query: 33 ILVVEDEVSIRETIVLSLQEEG-YEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 +L+V+DE +RE++ L++ G ++V + +A LQ L+I DIM+ Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPA-------LVISDIMM 110 Query: 92 PQVNGLDVCRSLRFGG--DNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 PQV+G + LR + P++ ++A+G +++ G + G D +++KPF EL A Sbjct: 111 PQVDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIV 170 Query: 150 RAMIRRQGLAGNNIAPFRKFRDLVLYPQECRVL 182 R ++ RQ + + + K +++ QE R L Sbjct: 171 RNLLARQQASSDAGSESAKLQEIY---QEIRAL 200 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 61.6 bits (148), Expect = 2e-12 Identities = 37/124 (29%), Positives = 64/124 (51%), Gaps = 9/124 (7%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 ++L+VED R+ + L +GYEV DG A+ + SE P LI++D+ L Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMA--ISESP-----QLILMDMSL 58 Query: 92 PQVNGLDVCRSLRF--GGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 P ++G + ++ G + PI+ ++A ++ + G DDY TKP +K L+ + Sbjct: 59 PIIDGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKM 118 Query: 150 RAMI 153 A+I Sbjct: 119 EALI 122 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 57.4 bits (137), Expect = 5e-11 Identities = 32/114 (28%), Positives = 63/114 (55%), Gaps = 9/114 (7%) Query: 29 PSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILD 88 P ++ILVV+D+ R+ ++ L G+E+ +G++A+AL + + LI +D Sbjct: 628 PVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEP-------HLIFMD 680 Query: 89 IMLPQVNGLDVCRSLR--FGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPF 140 + +P ++G + + ++ G+ T ++ ++A E EK L G DD++ KPF Sbjct: 681 MRMPVMDGYEATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 56.2 bits (134), Expect = 1e-10 Identities = 40/130 (30%), Positives = 64/130 (49%), Gaps = 9/130 (6%) Query: 12 MATLEAPPHSLQHQEIPPSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQ 71 ++ LEA P Q IL+VED RE L +G V ++G++AL LL Sbjct: 699 VSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLT 758 Query: 72 EFSEDPGQAAVDLIILDIMLPQVNGLDVCRSLRFG--GDNTPILIVSAKGSEMEKVTGLE 129 + D I++DI +P +NG D R++R N PI+ ++A ++ L+ Sbjct: 759 SNT-------YDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALD 811 Query: 130 VGADDYITKP 139 G +D++TKP Sbjct: 812 AGMNDHLTKP 821 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 55.1 bits (131), Expect = 2e-10 Identities = 34/129 (26%), Positives = 65/129 (50%), Gaps = 9/129 (6%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 +ILVV+D+ +R + + LQ+EG+ V +G +AL E ++++LD ++ Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKP-------EVVLLDAVM 65 Query: 92 PQVNGLDVCRSLR--FGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 P ++G C++L + + +L+++ E E GA DY+TKP L R Sbjct: 66 PVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRV 125 Query: 150 RAMIRRQGL 158 + ++ + L Sbjct: 126 KRLLYQNRL 134 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 54.3 bits (129), Expect = 4e-10 Identities = 37/145 (25%), Positives = 73/145 (50%), Gaps = 15/145 (10%) Query: 11 PMATLEAPPHSLQHQEI--PP----SHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGR 64 P+ + AP + + + PP + ++LVV+D R + L G+ V ++G Sbjct: 392 PVQVMAAPKPTPETSAVTLPPLDQYNQKVLVVDDRPESRLLLRQLLTSLGFVVQEAENGE 451 Query: 65 DALALLQEFSEDPGQAAVDLIILDIMLPQVNGLDVCRSLRFG--GDNTPILIVSAKGSEM 122 A+AL + + +I++D+ +P ++G + ++ G +T I+ ++A E Sbjct: 452 MAIALWESWHPQ-------VILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFEG 504 Query: 123 EKVTGLEVGADDYITKPFSLKELVA 147 E+ L G DD+++KPF +EL+A Sbjct: 505 ERAEILSAGCDDFLSKPFRPEELIA 529 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 53.5 bits (127), Expect = 7e-10 Identities = 40/125 (32%), Positives = 60/125 (48%), Gaps = 4/125 (3%) Query: 19 PHSLQHQEIPPSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPG 78 PH L + R+LVV+D R + L++ + V V+ G +AL L E D Sbjct: 759 PHRLVLSKDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAE--ADRE 816 Query: 79 QAAVDLIILDIMLPQVNGLDVCRSLRFGGDN--TPILIVSAKGSEMEKVTGLEVGADDYI 136 ++ +D +P ++GL+V R L+ G N I IV+A G E V +G DD + Sbjct: 817 NHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVL 876 Query: 137 TKPFS 141 KP S Sbjct: 877 VKPIS 881 Score = 43.1 bits (100), Expect = 9e-07 Identities = 30/116 (25%), Positives = 59/116 (50%), Gaps = 9/116 (7%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 RIL+VED +E L++ G+ V +G AL L A L+++D+ + Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNN-------NAYALVLMDMQM 978 Query: 92 PQVNGLDVCRSLRFGGD--NTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKEL 145 P+++G++ ++R PI+ ++A + ++ L+ G +D++ KP +EL Sbjct: 979 PEMDGIEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 52.0 bits (123), Expect = 2e-09 Identities = 38/127 (29%), Positives = 62/127 (48%), Gaps = 9/127 (7%) Query: 28 PPSHRILVVEDEVSIRETIVLSL-QEEGYEVYA-VDDGRDALALLQEFSEDPGQAAVDLI 85 P S RIL+VED+ R +V L QE G +V +DG A+A + Q D++ Sbjct: 5 PTSIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVN-------QQLFDVV 57 Query: 86 ILDIMLPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKEL 145 ILD+ LP + G++ C ++ P+LI+++ +E A Y K + + L Sbjct: 58 ILDVGLPGIGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETL 117 Query: 146 VARCRAM 152 V R++ Sbjct: 118 VLAIRSV 124 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 50.4 bits (119), Expect = 6e-09 Identities = 31/122 (25%), Positives = 64/122 (52%), Gaps = 10/122 (8%) Query: 27 IPPSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLII 86 + P+ +IL+ ED + ++ L GY V ++G++ + L++ DL++ Sbjct: 1186 LQPALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEK-------KFYDLVL 1238 Query: 87 LDIMLPQVNGLDVCRSLR--FGGDNTP-ILIVSAKGSEMEKVTGLEVGADDYITKPFSLK 143 +D+ +P ++G+ CR +R + P I+ ++A ++ L+ G D YI+KP S+ Sbjct: 1239 MDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISIN 1298 Query: 144 EL 145 +L Sbjct: 1299 QL 1300 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 48.5 bits (114), Expect = 2e-08 Identities = 34/122 (27%), Positives = 68/122 (55%), Gaps = 12/122 (9%) Query: 32 RILVVEDEVSIRETIVLSLQ-EEGYEVYA-VDDGRDALALLQEFSEDPGQAAVDLIILDI 89 ++L+++D +R I ++ ++ +EV A V G + +++ Q + D+IILD+ Sbjct: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVAL-------QTSPDVIILDL 58 Query: 90 MLPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYI---TKPFSLKELV 146 + ++GLD + LR G + ILI++ ++ + T ++ GAD Y+ T+P +L E + Sbjct: 59 NMKGLSGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQI 118 Query: 147 AR 148 R Sbjct: 119 KR 120 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 47.8 bits (112), Expect = 4e-08 Identities = 38/124 (30%), Positives = 62/124 (50%), Gaps = 11/124 (8%) Query: 32 RILVVEDEVSIRETIVLSL-QEEGYE-VYAVDDGRDALALLQEFSEDPGQAAVDLIILDI 89 RI ++EDE IR+ + +L E +E V +GR L ++Q Q D++I+DI Sbjct: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQ-------QTRPDVVIIDI 57 Query: 90 MLPQVNGLDVCRSLRFGGDNTP--ILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVA 147 LP +NG+DV + L+ G N ++I++ E + GAD Y K + L+ Sbjct: 58 GLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIE 117 Query: 148 RCRA 151 +A Sbjct: 118 AIQA 121 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 46.6 bits (109), Expect = 8e-08 Identities = 34/120 (28%), Positives = 65/120 (54%), Gaps = 14/120 (11%) Query: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAV-DDGRDALALLQEFSEDPGQAAVDLIILDIM 90 +IL+VEDE + + I L+ +GYE+ + DG AL + EF DL++LDI Sbjct: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYP-------DLVLLDIR 56 Query: 91 LP-QVNGLDVCRSLRFGGDNTPILIVSA--KGSEMEKVTGLEVGADDYITKPFSLKELVA 147 + +++G++V ++ + PI+ ++A G +E+ + Y+ KPF ++L++ Sbjct: 57 IKGEIDGIEVAERIK-SLYSIPIVYLTAFSDGETLERAQ--KTNPQGYVIKPFRREQLLS 113 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 45.8 bits (107), Expect = 1e-07 Identities = 57/252 (22%), Positives = 112/252 (44%), Gaps = 50/252 (19%) Query: 19 PHSLQHQEIPPSHRILVVEDEVSIRETIVLSL-QEEGYEVYA-VDDGRDALALLQEFSED 76 PH ++ + P +IL+VED+ ++ + +L E +E+ VD+G A+ Sbjct: 6 PHRVKIEPCLPM-KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQ-------- 56 Query: 77 PGQAAV---DLIILDIMLPQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGAD 133 QAAV DLI++DI LP ++G++ + ++ I+++++ E + L GAD Sbjct: 57 --QAAVLNPDLIVMDIGLPGLDGIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGAD 114 Query: 134 DYITKPFSLKELVARCRAMIRRQGLAGNNIAPFRKFRDLVLYPQECRVLM---------- 183 Y K +L+ L+ A + G L PQ RV++ Sbjct: 115 AYCVKGATLERLILAIAA--AQDGAT-------------YLDPQIARVVVENLKPPVPEG 159 Query: 184 RGEEVSLAPKEFRLLELFMSYPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQ 243 + + SL+ +E +L+L + S +++ + ++ + T+ H+R + KL Sbjct: 160 QADVSSLSEREIDVLKLIVEGK----SNQEIAQTLY-----LSTNTIKTHVRGIMNKLSV 210 Query: 244 DPSQPEYLVTVR 255 D ++ +R Sbjct: 211 DDRVQAAVIALR 222 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.323 0.142 0.420 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 24,824 Number of Sequences: 78 Number of extensions: 990 Number of successful extensions: 99 Number of sequences better than 1.0e-05: 32 Number of HSP's better than 0.0 without gapping: 18 Number of HSP's successfully gapped in prelim test: 14 Number of HSP's that attempted gapping in prelim test: 19 Number of HSP's gapped (non-prelim): 37 length of query: 262 length of database: 48,235 effective HSP length: 61 effective length of query: 201 effective length of database: 43,477 effective search space: 8738877 effective search space used: 8738877 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.9 bits) S2: 92 (40.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001461 slr0115 (241 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001461 slr0115 484 e-140 SYNE-PCC-01-002033 slr0947 180 3e-48 SYNE-PCC-01-000414 sll0649 160 3e-42 SYNE-PCC-01-002486 slr1584 153 4e-40 SYNE-PCC-01-000242 sll0396 151 2e-39 SYNE-PCC-01-002672 slr1837 142 8e-37 SYNE-PCC-01-001437 slr0081 140 5e-36 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 133 5e-34 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 128 1e-32 SYNE-PCC-01-000877 sll1330 118 2e-29 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 118 2e-29 SYNE-PCC-01-000518 sll0789 115 1e-28 SYNE-PCC-01-000523 sll0797 109 9e-27 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 105 1e-25 SYNE-PCC-01-001306 sll1905 102 1e-24 SYNE-PCC-01-002731 slr1909 101 3e-24 SYNE-PCC-01-001133 sll1673 96 8e-23 SYNE-PCC-01-002489 slr1588 96 1e-22 SYNE-PCC-01-002635 slr1783 93 7e-22 SYNE-PCC-01-002086 slr1042 91 4e-21 SYNE-PCC-01-002788 slr1982 86 8e-20 SYNE-PCC-01-002618 slr1760 73 1e-15 SYNE-PCC-01-000800 sll1228 64 6e-13 SYNE-PCC-01-000608 sll0921 60 5e-12 SYNE-PCC-01-002879 slr2104 56 9e-11 SYNE-PCC-01-002873 slr2098 55 2e-10 SYNE-PCC-01-001132 sll1672 55 2e-10 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 55 2e-10 SYNE-PCC-01-001575 slr0312 52 2e-09 SYNE-PCC-01-002221 slr1213 50 5e-09 SYNE-PCC-01-001160 sll1708 50 5e-09 SYNE-PCC-01-002617 slr1759 49 1e-08 SYNE-PCC-01-002778 slr1969 46 1e-07 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 484 bits (1247), Expect = e-140 Identities = 241/241 (100%), Positives = 241/241 (100%) Query: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG Sbjct: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 Query: 121 RTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPS 180 RTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPS Sbjct: 121 RTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPS 180 Query: 181 DILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLELSTEEGGGSP 240 DILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLELSTEEGGGSP Sbjct: 181 DILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLELSTEEGGGSP 240 Query: 241 T 241 T Sbjct: 241 T 241 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 180 bits (457), Expect = 3e-48 Identities = 96/235 (40%), Positives = 145/235 (61%), Gaps = 8/235 (3%) Query: 6 IIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTVCQ 65 ++DD+ +I ++ L M GY+V A DG + A + PDL++LD+M+PK+DG+ VCQ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 66 RLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRTDR- 124 LR++ +DIP++MLTALG + D+I G + GADDY+ KPF +E+ AR+R++LRR D+ Sbjct: 61 ELRKE---SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 Query: 125 -IPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSDIL 183 +P S +L + + + + + I+LT +EF LL L+ R G+ S S+IL Sbjct: 118 GMP-GIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEIL 176 Query: 184 REVWGYEPDDDIET--IRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLELSTEEG 236 +EVWGY P+ ++T + VHI LR KLE +P P I T G GY + E G Sbjct: 177 QEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRILEPG 231 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 160 bits (406), Expect = 3e-42 Identities = 93/234 (39%), Positives = 134/234 (57%), Gaps = 6/234 (2%) Query: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 MP ILI++DD I+ L+ LE + DG G + + PDLI+LDLMLPK+DG Sbjct: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDG 70 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 VC R+R+ + D +LMLTA G+ D+I G +GADDYL KPF E++ARVRALLR Sbjct: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLR 130 Query: 121 RTDRIPQAAKHSEILNQGPLTLVPERFEAIWF----GKSIKLTHLEFELLHCLLQRHGQT 176 R ++ Q +I + ++ +A + + ++LT LEF LL + G+ Sbjct: 131 R--QLRQGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRV 188 Query: 177 VSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLE 230 + + ++ ++WG + D + HIR LR K+EP+P P FIKTV G GY E Sbjct: 189 WNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFE 242 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 153 bits (387), Expect = 4e-40 Identities = 89/233 (38%), Positives = 135/233 (57%), Gaps = 7/233 (3%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 RIL+++DD +++ ++ L Y V A D A +L+ DL++LD+MLP++DG T Sbjct: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 Query: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 +CQ+ R +P+LM+TA I DKI G D+GADDY+ KP D+ E+ ARVRALLRR Sbjct: 62 LCQKWRSHSYL--MPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRG 119 Query: 123 DRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSDI 182 A +L GP+ L P +E + + + LT E+ +L LL+ + +S S I Sbjct: 120 -----CATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMI 174 Query: 183 LREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLELSTEE 235 + +W E + +T++VH+R LR KL+ I+TV+G GY L TE+ Sbjct: 175 IDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLANLTEK 227 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 151 bits (382), Expect = 2e-39 Identities = 87/227 (38%), Positives = 129/227 (56%), Gaps = 8/227 (3%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 R+L+++++ ++ + + L+ GYDV A DG+KG A + PDLI+++ LP + G Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 +C+RLR E + IP++++TA +++++ G D+GADDY+ KPF+ +E AR+R LRRT Sbjct: 64 LCRRLR--EMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 Query: 123 DRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSDI 182 E+L L E + I LT EFELL LL Q ++ I Sbjct: 122 H-----TTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQI 176 Query: 183 LREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCL 229 L VWGY+ D I V+IR+LR KLE PR I+TV G GY L Sbjct: 177 LERVWGYDFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGYVL 222 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 142 bits (359), Expect = 8e-37 Identities = 89/235 (37%), Positives = 129/235 (54%), Gaps = 8/235 (3%) Query: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 M IL++DD+ A+++ +S L G+ + A G G A+A+ Q DL++LD MLP+V G Sbjct: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 +C+++R + PVL LTA + D++ G D+G DDYL KPF++ E+LARVRALLR Sbjct: 61 LEICRQIRILGHST--PVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLR 118 Query: 121 R-----TDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQ 175 R T A + +L+ ++L A G+ I L+ E LL LQ GQ Sbjct: 119 RQSHGETITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQ 178 Query: 176 TVSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLE 230 +S +I +W E + +R LR K+E P PR I +VYG GYC E Sbjct: 179 ILSHEEIYSHLWPGESPPSSNVLAALVRLLRRKIE-QPNAPRLINSVYGKGYCFE 232 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 140 bits (352), Expect = 5e-36 Identities = 81/236 (34%), Positives = 130/236 (55%), Gaps = 19/236 (8%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPD-------LIMLDLML 55 RIL+++D+ +I + + ++L+ GY+V DG AL + D LI+LD+ML Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 56 PKVDGFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARV 115 P+V+G VC+ LR P+L+++A G +K+ G + GADDY+TKPF ++E++AR Sbjct: 92 PQVNGLDVCRSLRFGGDNT--PILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 Query: 116 RALLRRT----DRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQ 171 RA++RR + I K + L L P+ + G+ + L EF LL + Sbjct: 150 RAMIRRQGLAGNNIAPFRKFRD------LVLYPQECRVLMRGEEVSLAPKEFRLLELFMS 203 Query: 172 RHGQTVSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 + S ++ +WG + D +T+ VHIR LR KLE +P +P ++ TV G GY Sbjct: 204 YPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGY 259 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 133 bits (335), Expect = 5e-34 Identities = 79/230 (34%), Positives = 137/230 (59%), Gaps = 6/230 (2%) Query: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKG-QALAVQLQPDLIMLDLMLPKVD 59 M ++L++DDD +++L+S LE+ G+DV+ A +G++ Q L + L++LD+M+PK++ Sbjct: 1 MSKLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESYK--LVLLDVMMPKLN 58 Query: 60 GFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALL 119 G + +R+ +++PV+MLTA G+ D++ G + GADD L KPF+ E++AR++A+L Sbjct: 59 GIETLKEIRK---VSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAIL 115 Query: 120 RRTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSP 179 RR+ + EIL+ +TL A + +++ LT EF++L LL+ G VS Sbjct: 116 RRSASPSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSR 175 Query: 180 SDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCL 229 ++ EV ++ +HI +LR KL +P + KT+ G GY L Sbjct: 176 EELSLEVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGYAL 225 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 128 bits (322), Expect = 1e-32 Identities = 80/228 (35%), Positives = 126/228 (55%), Gaps = 14/228 (6%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 RIL+I+DD I + + I L G+ V DG G A D ++LDL LPK+DG Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 V Q+ R + + D+PVL+LTA + ++++G SGADDYL KPF + E+ AR++AL+RR Sbjct: 62 VLQQWRSNHQ--DVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRR- 118 Query: 123 DRIPQAAKHSEILNQGPLTLVPERFEAIWF-GKSIKLTHLEFELLHCLLQRHGQTVSPSD 181 + H ++ Q + L + ++W + I LT E++LL + + +S S Sbjct: 119 ----RYGYHHSVIEQAGVKL-DQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSS 173 Query: 182 ILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCL 229 I ++ ++ + + VHI +LR KL +FI+TV+G GY L Sbjct: 174 IEEKLSSWDEEISSGALDVHIYNLRQKL-----GKQFIRTVHGVGYAL 216 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 118 bits (295), Expect = 2e-29 Identities = 77/226 (34%), Positives = 121/226 (53%), Gaps = 12/226 (5%) Query: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 I +++ +P + L+S +L+ +GY VQQ + + P L ++D L DG + Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 Query: 64 CQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRTD 123 C+ L + ++ + +L+A +D + G +GADDYLTKPF ++E LAR+ L+RR Sbjct: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 Query: 124 RIPQAAKHSEILNQGPL--TLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSD 181 + +L+ G L LV R E + G + LT EF LL+ L Q G +S ++ Sbjct: 123 TVAAPL----LLDYGVLKIDLVQRRVE--YQGNFVDLTPQEFSLLYVLTQAEGSALSRTE 176 Query: 182 ILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 +LR W E D+ TI H+ LR K+E +PR+P I+TV GY Sbjct: 177 LLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGY 221 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 118 bits (295), Expect = 2e-29 Identities = 73/225 (32%), Positives = 122/225 (54%), Gaps = 7/225 (3%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 +ILI++D+ AI +++++ L YDV +A D K ++ P LI+LD MLP G Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASD-FKTAINKIKENPKLILLDWMLPGRSGIQ 62 Query: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 Q +++ E A IP++MLTA +D I ++GADDY+TKPF + +LAR+ A+ RR Sbjct: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 Query: 123 DRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSDI 182 + S+ + L++ + + I L+ EF+LLH ++ + S + Sbjct: 123 -----YEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQL 177 Query: 183 LREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 L +W + + + T+ +IR LR L P + +I+TV G+GY Sbjct: 178 LNRIWHNDLEVEYRTVDSYIRRLRRNLAPF-QCEHYIQTVRGSGY 221 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 115 bits (288), Expect = 1e-28 Identities = 78/230 (33%), Positives = 120/230 (52%), Gaps = 15/230 (6%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQ--LQPDLIMLDLMLPKVDG 60 R+L+++D+P + + L Y V DG + Q + L + D M+P + G Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 +CQ+LR + +P+LMLTA QI D+++G D+GADDYL KPF + E+LAR+R+L R Sbjct: 62 LELCQKLRGQR--SSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQR 119 Query: 121 RTDRI-PQAAKHSE-ILNQGPLTLV-PERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTV 177 R+ + PQ + + L+ G +V PE+ I LT EF+LL ++ Q + Sbjct: 120 RSPELQPQQLQVGQWWLDYGTFAVVTPEQ-------ARITLTAKEFQLLEYFMKHPQQIL 172 Query: 178 SPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 S I ++W + + +R LR KLE I+TVYG GY Sbjct: 173 SSEQIKNQLWALSAESTSNVVAAQVRLLRRKLE-EYSHGNLIETVYGLGY 221 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 109 bits (272), Expect = 9e-27 Identities = 78/240 (32%), Positives = 124/240 (51%), Gaps = 18/240 (7%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPD--LIMLDLMLPKVDG 60 RIL+++D+ + + L Y V DG + + L ++D +LP + G Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 +CQ+LR + +PVLMLTALG+ +++++G D+GADDYLTKPF + E+LAR+RAL R Sbjct: 62 LELCQKLRTQGNS--LPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQR 119 Query: 121 RTDRIPQAAKHSEILNQGPLTLVP-ERFEAIWFG-------KSIKLTHLEFELLHCLLQR 172 R+ + +IL G +L P ++ + I LT EF++ L+Q Sbjct: 120 RSPQF-----QPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQN 174 Query: 173 HGQTVSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLELS 232 + +S S I +++W + + + +R +R KL P IKTV G GY LS Sbjct: 175 PERIISGSKIRQQLWDLDEEPMSNVVAAQMRLIRRKL-AQQNCPCPIKTVPGQGYRFTLS 233 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 105 bits (263), Expect = 1e-25 Identities = 70/239 (29%), Positives = 115/239 (48%), Gaps = 26/239 (10%) Query: 2 PRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGF 61 P+IL+++D+ + + E GYDV +A +G++ + +L+++D+ LP +G Sbjct: 4 PKILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGL 63 Query: 62 TVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRR 121 + + LR + +P++ LT DKI G + GADDYLTKPF+ E+ R R LL R Sbjct: 64 LLARELREE---LSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 Query: 122 TDRIPQAAKHSEI-------------LNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHC 168 +P K + LN L + PE G+ KL EF + Sbjct: 121 A--MPHQEKENTFGREFYRFNGWKLDLNSHSL-ITPE-------GQEFKLPRSEFRAMLH 170 Query: 169 LLQRHGQTVSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGY 227 + G+ + ++L+++ G E T+ V IR +R E +P P I T++G GY Sbjct: 171 FCENPGKLQTREELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGY 229 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 102 bits (254), Expect = 1e-24 Identities = 54/116 (46%), Positives = 71/116 (61%) Query: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 IL++DD ++S LE GY G + Q QPDLI+LDLM+P +DG V Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 64 CQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALL 119 C RL++D +T DIPV+ LTA + QD +Q F GA DY+TKPF E+LARV+ L Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 Score = 53.1 bits (126), Expect = 8e-10 Identities = 27/109 (24%), Positives = 60/109 (55%), Gaps = 1/109 (0%) Query: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 IL+ +D+ + + L+ GY V +G + + + D++++D+ +P++DG T Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 64 CQRLRRDERTADIP-VLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEM 111 + +RR + ++ P ++ +TA D+ + SG +DY++KP +E + Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEAL 850 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 101 bits (251), Expect = 3e-24 Identities = 49/128 (38%), Positives = 83/128 (64%) Query: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 +L++DDDP + LV LE GY V A +G + L PD+I+ D+M+P++DG+ Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 64 CQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRTD 123 +++R++ + IPV+ L+A GQ ++++G + GAD Y+ KPF+ EE+ A+V++ LR+ D Sbjct: 70 IEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQAD 129 Query: 124 RIPQAAKH 131 R+ Q H Sbjct: 130 RLLQHNNH 137 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 96.3 bits (238), Expect = 8e-23 Identities = 44/112 (39%), Positives = 71/112 (63%) Query: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 IL++DD P L+S L GY V+ G +PDLI+LD+ +P +DG+ V Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 64 CQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARV 115 C+ ++++E DIP++ ++ALG DK++ F+ G DY+TKPF +EE++AR+ Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARI 122 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 95.5 bits (236), Expect = 1e-22 Identities = 56/163 (34%), Positives = 95/163 (58%), Gaps = 13/163 (7%) Query: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQAL--AVQLQPDLIMLDLMLPKV 58 M IL+++D+ I +L+ L + Y + +A +G L ++++ PDLI+ D+M+P++ Sbjct: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 Query: 59 DGFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRAL 118 DG + L+++ +TA IP + LTALG +QD +G +SGADDYL KPF E++L V + Sbjct: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 Query: 119 LRRTDRIP---QAAKHSEILNQ-------GPLTLVPERFEAIW 151 L++ ++ Q + S + + G TL P+ E IW Sbjct: 121 LQKQAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAE-IW 162 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 93.2 bits (230), Expect = 7e-22 Identities = 50/135 (37%), Positives = 77/135 (57%), Gaps = 1/135 (0%) Query: 4 ILIIDDDPAISDLVSINLEMAG-YDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 +L++DD+P + + V LE +G + V A + + P L++ D+M+P+VDG+ Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 Q+LR D R +PV+ LTA G D+IQG+ +G D +L+KPFD +E+ A VR LL R Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 Query: 123 DRIPQAAKHSEILNQ 137 A S L + Sbjct: 178 QASSDAGSESAKLQE 192 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 90.5 bits (223), Expect = 4e-21 Identities = 39/120 (32%), Positives = 76/120 (63%) Query: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 M +L+++D + +++S L+ G+ V A DG++ PDL++LD+++P+++G Sbjct: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 + VC+R++ D +T ++PV+M ++ G+ D+ G GAD Y+ KPF E++ ++ LLR Sbjct: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 86.3 bits (212), Expect = 8e-20 Identities = 40/119 (33%), Positives = 73/119 (61%) Query: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 M ++L+++D+ D++S L GY+V AVDG + +A+ P LI++D+ LP +DG Sbjct: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALL 119 +T ++++ A IP++ LTA D+ + +G DDY TKP +++ +L ++ AL+ Sbjct: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 72.8 bits (177), Expect = 1e-15 Identities = 37/117 (31%), Positives = 67/117 (57%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 +IL++DDD + + + L+ G+ V+ A +G + +++P++++LD ++P +DGF Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 Query: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALL 119 CQ L + + VLM+T L + F++GA DY+TKP + RV+ LL Sbjct: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 63.5 bits (153), Expect = 6e-13 Identities = 33/111 (29%), Positives = 62/111 (55%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 ++L++DD P L+ L G+ VQ+A +G AL P +I++D+ +P +DG + Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 Query: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLA 113 Q+++ + ++ LTA ++ + +G DD+L+KPF EE++A Sbjct: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIA 529 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 60.5 bits (145), Expect = 5e-12 Identities = 53/222 (23%), Positives = 101/222 (45%), Gaps = 12/222 (5%) Query: 3 RILIIDDDPAISDLV--SINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 RI +I+D+ I + ++ +E + V +A +G G + Q +PD++++D+ LP ++G Sbjct: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 V Q+L++ V++LT Q + + F +GAD Y K E ++ ++A Sbjct: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQATHG 124 Query: 121 RTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPS 180 I A +L P E S LT E E+L ++ S + Sbjct: 125 GFAWIDPAIARI-VLAHAPGAEPSEPSSPSRTSLSYGLTERELEVLQLIV----DGCSNA 179 Query: 181 DILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTV 222 DI +++ + T++ H+R++ KL N R ++ + Sbjct: 180 DIAEKLY-----ITVGTVKTHVRNILNKLCANDRTQAAVRAI 216 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 56.2 bits (134), Expect = 9e-11 Identities = 28/102 (27%), Positives = 55/102 (53%) Query: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 IL+++D+ + L G VQ A +G + L D I++D+ +P ++G+ Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 Query: 64 CQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKP 105 + +R+ E ++P++ +TA D+ + D+G +D+LTKP Sbjct: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKP 821 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 55.5 bits (132), Expect = 2e-10 Identities = 28/109 (25%), Positives = 60/109 (55%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 RIL+++D+ ++ + L G++V A +G+ L+++D+ +P++DG Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 Query: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEM 111 +R++ R A +P++ +TA D+ + +G +D+L KP + EE+ Sbjct: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 Score = 40.0 bits (92), Expect = 7e-06 Identities = 29/145 (20%), Positives = 60/145 (41%), Gaps = 5/145 (3%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPD-----LIMLDLMLPK 57 R+L++DD+ ++ LE + V+ G + + + ++ +D +P Sbjct: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 Query: 58 VDGFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRA 117 +DG V +RL+ + ++TA G+ + ++ G DD L KP + + Sbjct: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLAR 891 Query: 118 LLRRTDRIPQAAKHSEILNQGPLTL 142 +L + Q + S + L L Sbjct: 892 VLGDPTALAQEMRQSSGIGAEDLAL 916 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 55.5 bits (132), Expect = 2e-10 Identities = 30/104 (28%), Positives = 56/104 (53%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 +IL++DD L+ L G+++++A +G + AL +P LI +D+ +P +DG+ Sbjct: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 Query: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPF 106 + ++ + V+ LTA ++K +G DD+L KPF Sbjct: 691 ATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 55.5 bits (132), Expect = 2e-10 Identities = 61/218 (27%), Positives = 99/218 (45%), Gaps = 33/218 (15%) Query: 3 RILIIDDDP----AISDLVSI--NLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLP 56 ++L+IDD P I LV + N E+ DV +GI ++A+Q PD+I+LDL + Sbjct: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVA-DVSSGTEGI---SVALQTSPDVIILDLNMK 61 Query: 57 KVDGFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVR 116 + G + LR + D +L+LT D D+GAD YL K + + +L +++ Sbjct: 62 GLSGLDTLKGLRAEG--VDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIK 119 Query: 117 ALLRRTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQT 176 + A+ IL+ L+ ER LT E +L + Sbjct: 120 RI----------AQGEVILSDSIKNLLLERTHED--NPLDSLTDREMGVLRQI----ATG 163 Query: 177 VSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPR 214 +S I +++ E ET++VHIR+L KL + R Sbjct: 164 LSNKQIAAQLFISE-----ETVKVHIRNLLRKLNVHSR 196 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 51.6 bits (122), Expect = 2e-09 Identities = 37/126 (29%), Positives = 63/126 (50%), Gaps = 4/126 (3%) Query: 3 RILIIDDDPAISDLVS--INLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 R+LI DD ++ IN + + QA +G + AL + QPD+ ++DL +P+V+G Sbjct: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEG 67 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 + + A I ++LT +D +G +GA YL K + +E+L +R + R Sbjct: 68 VAAISAICAIVKFARI--IVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHR 125 Query: 121 RTDRIP 126 IP Sbjct: 126 GQKYIP 131 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 50.4 bits (119), Expect = 5e-09 Identities = 31/115 (26%), Positives = 61/115 (53%), Gaps = 5/115 (4%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQ-AVDGIKGQALAVQLQPDLIMLDLMLP-KVDG 60 +ILI++D+ ++ ++ L+ GY++ A DG + PDL++LD+ + ++DG Sbjct: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDG 63 Query: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARV 115 V +R++ IP++ LTA + + + Y+ KPF E++L+ V Sbjct: 64 IEVAERIKS---LYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 50.4 bits (119), Expect = 5e-09 Identities = 36/121 (29%), Positives = 63/121 (52%), Gaps = 12/121 (9%) Query: 3 RILIIDDDPAISDLVSINLEMA-----GYDVQQAVD-GIKGQALAVQLQPDLIMLDLMLP 56 +ILI++DDP L+ + LE A +++ VD G A L PDLI++D+ LP Sbjct: 18 KILIVEDDP----LMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLP 73 Query: 57 KVDGFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVR 116 +DG ++++ + + I +++LT+ + I SGAD Y K +E ++ + Sbjct: 74 GLDGIEATKQIK--QTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIA 131 Query: 117 A 117 A Sbjct: 132 A 132 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 49.3 bits (116), Expect = 1e-08 Identities = 38/148 (25%), Positives = 73/148 (49%), Gaps = 9/148 (6%) Query: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 +IL+ +D+ + L GY V A +G + + DL+++D+ +P +DG T Sbjct: 1191 QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGIT 1250 Query: 63 VCQRLRRDERTADIP-VLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRR 121 C+ +R+ P ++ +TA D+ + D+G D Y++KP + ++ R +L+ Sbjct: 1251 ACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL----RKVLQD 1306 Query: 122 TDRI---PQAAKHSEILNQGPLTLVPER 146 T + PQA + L +T+V E+ Sbjct: 1307 TSALITSPQAREDIVTLGD-KITVVEEQ 1333 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 46.2 bits (108), Expect = 1e-07 Identities = 32/115 (27%), Positives = 55/115 (47%), Gaps = 2/115 (1%) Query: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 +++I+ D I+ L+ L +A Y V +D LQP LI++D VD V Sbjct: 632 VIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQPGLIIVDGDF--VDVTEV 689 Query: 64 CQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRAL 118 + +++ R + + V +L+ + G DDYL KP E +L RV+++ Sbjct: 690 TRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDYLLKPLQPELLLQRVQSI 744 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.322 0.142 0.418 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 22,954 Number of Sequences: 78 Number of extensions: 1021 Number of successful extensions: 84 Number of sequences better than 1.0e-05: 33 Number of HSP's better than 0.0 without gapping: 27 Number of HSP's successfully gapped in prelim test: 6 Number of HSP's that attempted gapping in prelim test: 9 Number of HSP's gapped (non-prelim): 39 length of query: 241 length of database: 48,235 effective HSP length: 60 effective length of query: 181 effective length of database: 43,555 effective search space: 7883455 effective search space used: 7883455 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.9 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001509 slr0210 (417 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001509 slr0210 817 0.0 SYNE-PCC-01-000295 sll0474 156 1e-40 SYNE-PCC-01-001280 sll1871 140 7e-36 SYNE-PCC-01-002879 slr2104 135 2e-34 SYNE-PCC-01-000800 sll1228 132 2e-33 SYNE-PCC-01-000891 sll1353 130 8e-33 SYNE-PCC-01-002873 slr2098 130 1e-32 SYNE-PCC-01-001294 sll1888 129 2e-32 SYNE-PCC-01-002617 slr1759 127 5e-32 SYNE-PCC-01-002778 slr1969 121 5e-30 SYNE-PCC-01-001517 slr0222 120 1e-29 SYNE-PCC-01-001306 sll1905 113 1e-27 SYNE-PCC-01-001132 sll1672 106 1e-25 SYNE-PCC-01-000985 sll1475 101 5e-24 SYNE-PCC-01-001690 slr0473 86 2e-19 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 817 bits (2110), Expect = 0.0 Identities = 405/417 (97%), Positives = 405/417 (97%) Query: 1 MGSNFPNRKSLQTAGDGFEQSIARLIASMIPVQEIYYWRLGASXXXXXXXXXXXXLSMAF 60 MGSNFPNRKSLQTAGDGFEQSIARLIASMIPVQEIYYWRLGAS LSMAF Sbjct: 1 MGSNFPNRKSLQTAGDGFEQSIARLIASMIPVQEIYYWRLGASPETPEIIEIIPTLSMAF 60 Query: 61 QTGHSPWPMAEKCLKFIGDRQGDLQRGKSLLTDLKQHWQEITSASFDSGAVQANTNDDLP 120 QTGHSPWPMAEKCLKFIGDRQGDLQRGKSLLTDLKQHWQEITSASFDSGAVQANTNDDLP Sbjct: 61 QTGHSPWPMAEKCLKFIGDRQGDLQRGKSLLTDLKQHWQEITSASFDSGAVQANTNDDLP 120 Query: 121 YFFLPVFQQNQYVGGICLVWPHSQWRLEQYLFLQEVGNVFTYQYHGESETISPQKSFNGG 180 YFFLPVFQQNQYVGGICLVWPHSQWRLEQYLFLQEVGNVFTYQYHGESETISPQKSFNGG Sbjct: 121 YFFLPVFQQNQYVGGICLVWPHSQWRLEQYLFLQEVGNVFTYQYHGESETISPQKSFNGG 180 Query: 181 DRHTSMTINLSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSL 240 DRHTSMTINLSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSL Sbjct: 181 DRHTSMTINLSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSL 240 Query: 241 VNDFLDLSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYVD 300 VNDFLDLSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYVD Sbjct: 241 VNDFLDLSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYVD 300 Query: 301 QRRWKQILINLLSNGVKFTPKGSVTLAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQ 360 QRRWKQILINLLSNGVKFTPKGSVTLAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQ Sbjct: 301 QRRWKQILINLLSNGVKFTPKGSVTLAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQ 360 Query: 361 ISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPLKTSVKNYQT 417 ISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPLKTSVKNYQT Sbjct: 361 ISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPLKTSVKNYQT 417 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 156 bits (395), Expect = 1e-40 Identities = 92/229 (40%), Positives = 135/229 (58%), Gaps = 11/229 (4%) Query: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 L+++ HE RTPL +I+G L++++YG LN KQ Q ++ NS HLLSL+ND LDLSK Sbjct: 422 LANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRHLLSLINDILDLSK 481 Query: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYVDQRRWKQILI 309 I+A +L +V L ++ VQ A +KQ+ L+ I + VD+RR Q+LI Sbjct: 482 IEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSEIIPNLPDVLVDKRRLCQVLI 541 Query: 310 NLLSNGVKFTPKGSVTLA----VKATDK-------ALIFSVIDTGIGIDPEDQRDLFQPF 358 NLL+N +KFTP+G + +K K L F+V DTGIGI+ + ++F+PF Sbjct: 542 NLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPF 601 Query: 359 KQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILP 407 QI + GTGLGL+L +++ +LHGG + +TS GS F +P Sbjct: 602 VQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITIP 650 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 140 bits (353), Expect = 7e-36 Identities = 88/229 (38%), Positives = 128/229 (55%), Gaps = 4/229 (1%) Query: 183 HTSMTINLSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVN 242 + + +I L+++ HE RTPL AIIG++ ML +E + + + L S + LL+L+N Sbjct: 435 NATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALIN 494 Query: 243 DFLDLSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYVDQR 302 D LD+SKI+A EL+ E +++L ++ + K L + I + Y D Sbjct: 495 DLLDISKIEAGKMELYLETFNLKELIAGILDTISPLLKNNNNKLEVEISLESEEVYGDLI 554 Query: 303 RWKQILINLLSNGVKFTPKGSVTLAV---KATDKA-LIFSVIDTGIGIDPEDQRDLFQPF 358 + +Q ++NLLSN KFT G ++ V K +K L F V DTGIG+ E LFQPF Sbjct: 555 KLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGIGLTEEQMSKLFQPF 614 Query: 359 KQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILP 407 Q + GTGLGLA++R+ Q+ GGDI LTS GVGS F+ LP Sbjct: 615 TQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKLP 663 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 135 bits (341), Expect = 2e-34 Identities = 91/228 (39%), Positives = 129/228 (56%), Gaps = 9/228 (3%) Query: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 L+++ HE RTP+ AIIG + ++ L L +Q Y+Q + E LL ++N+ LD SK Sbjct: 462 LANMSHEIRTPMNAIIGMSELV---LQTDLTSQQRNYLQKVQYAGELLLGIINNILDFSK 518 Query: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYV-DQRRWKQIL 308 ++A EL + +VE++ + S++ +A+ K L LN +D + V D+ R QIL Sbjct: 519 MEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQIL 578 Query: 309 INLLSNGVKFTPKGSVT-----LAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISH 363 INL +N VKFT +G +T L + L FSV DTGIG+ P+ Q LFQ F Q Sbjct: 579 INLGNNAVKFTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGET 638 Query: 364 PPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPLKTS 411 S GTGLGLA+S+ L +L GGDI L S G GS F + L T+ Sbjct: 639 STSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCLGTA 686 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 132 bits (332), Expect = 2e-33 Identities = 105/302 (34%), Positives = 154/302 (50%), Gaps = 21/302 (6%) Query: 124 LPVFQQNQYVGGICLVWPHSQ--WRLEQYLFLQEVGNVFTY-QYHGESETISPQKSFNGG 180 +P+ + Q +G I +V H W E+ + VG Q ++ET Q Sbjct: 98 VPMVKDAQVLGYISMVHLHDNYGWNPEELNLAKLVGQFLAIAQARHQAETTLTQAKEAAD 157 Query: 181 DRHTSMTINLSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLN-SAEHLLS 239 + + T L+ I HE RTPL AIIGF+++L + L P H+ +N S EHLL Sbjct: 158 AANRAKTEFLASISHELRTPLNAIIGFSQLLHRD--PSLAP--HRPTLDIINRSGEHLLE 213 Query: 240 LVNDFLDLSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGV-DFCY 298 L+ND L++SKI+A L + + L + ++ Q +A+EKQL L + V ++ Sbjct: 214 LINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEWIK 273 Query: 299 VDQRRWKQILINLLSNGVKFTPKGSVTLAVKA-----TDKA------LIFSVIDTGIGID 347 D + +Q+LINLL+N +KFT +G VTL VK TD+ L F V DTG GI Sbjct: 274 TDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIA 333 Query: 348 PEDQRDLFQPFKQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILP 407 + +LF PF Q + G GLGL +S++ QL GG IQ+ S GS F +P Sbjct: 334 AHEMDELFVPFAQTETGLKSCQ-GNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAIP 392 Query: 408 LK 409 ++ Sbjct: 393 VQ 394 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 130 bits (327), Expect = 8e-33 Identities = 86/235 (36%), Positives = 127/235 (54%), Gaps = 12/235 (5%) Query: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 L++I HE RTP+ AI+GF +L + K+ Y+ +S++ LL+L++D LD+SK Sbjct: 604 LANISHEIRTPMNAILGFCDLLLQKDLSLSQTKK--YLNAIGSSSKILLALIDDILDISK 661 Query: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFC-YVDQRRWKQIL 308 I+A + E V + + + + KA+ K L L + ID+ ++ Y D R +QIL Sbjct: 662 IEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQIL 721 Query: 309 INLLSNGVKFTPKGSVTLAV---------KATDKALIFSVIDTGIGIDPEDQRDLFQPFK 359 NL+ N +KFT +G V + + + T +L V DTGIGI PEDQ +F F Sbjct: 722 FNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIFDVFT 781 Query: 360 QISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPLKTSVKN 414 Q + GTGLGL ++RRL L GG+I L+S G GS F P V+N Sbjct: 782 QSQGQSTRKYGGTGLGLTITRRLTALLGGEISLSSRLGEGSTFILHFPAVRLVEN 836 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 130 bits (326), Expect = 1e-32 Identities = 84/228 (36%), Positives = 125/228 (54%), Gaps = 9/228 (3%) Query: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 L+++ HE RTP+ A+IG + L L P+Q +Y+ S +HLL ++ND LD SK Sbjct: 531 LANMSHEIRTPMNAVIGMTHLA---LKTDLTPRQREYLHKIRFSGQHLLGVINDILDFSK 587 Query: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYV-DQRRWKQIL 308 I+A + ++ + V +++ KA K L L ID + ++ D R QIL Sbjct: 588 IEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRLGQIL 647 Query: 309 INLLSNGVKFTPKGSVTLAVKAT-----DKALIFSVIDTGIGIDPEDQRDLFQPFKQISH 363 IN +N VKFT +G +T+ V+ D L +V DTGIGI PE +LF F+Q Sbjct: 648 INYANNAVKFTEQGDITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADS 707 Query: 364 PPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPLKTS 411 + GTGLGLA+ +R+A+L GG++ + S G GS F A + L+ S Sbjct: 708 STTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVCLQKS 755 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 129 bits (324), Expect = 2e-32 Identities = 96/305 (31%), Positives = 153/305 (50%), Gaps = 35/305 (11%) Query: 129 QNQYVGGICLVWPHSQWRLEQYLFLQEVGNVFTYQYHGESETISPQKSFNGGDRHTSMTI 188 Q + +GG+ + Q + YL LQ+VG +H E+E + + + G T+ Sbjct: 118 QGEDLGGLWIFPTLYQDQANGYLCLQQVGPA-PGPWHPETEALLQELAEQTGTAIAHATL 176 Query: 189 N--------------------LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQ 228 L+ HE RTPL IIGF R++ D++ ++H++V+ Sbjct: 177 YQELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADS-EAEKHEFVE 235 Query: 229 GTLNSAEHLLSLVNDFLDLSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNL 288 SA LL+L+ND LDL+KI+A + E V ++ A + +A+ K L+ NL Sbjct: 236 EAYQSALLLLNLINDILDLAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNL 295 Query: 289 TI-DDGVDFCYVDQRRWKQILINLLSNGVKFTPKGSVTLAVKATDKALIF---------- 337 T + G Y +QR Q+++N++ N +KFT +G +T+AV+ + +++ Sbjct: 296 TAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLK 355 Query: 338 -SVIDTGIGIDPEDQRDLFQPFKQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTST- 395 SV DTGIG+ E Q LF+ F QI S A GTGLGL +S++L + GG + S Sbjct: 356 VSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMG 415 Query: 396 PGVGS 400 G+GS Sbjct: 416 EGLGS 420 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 127 bits (320), Expect = 5e-32 Identities = 87/231 (37%), Positives = 118/231 (51%), Gaps = 21/231 (9%) Query: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 L+ + HE RTP+ +IG +L + LN +Q YVQ S E LL+++ND LD SK Sbjct: 782 LAMMSHEIRTPMNGVIGMTELL---IMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSK 838 Query: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYV-DQRRWKQIL 308 I+A L + + L V+ M A+ K L L ID + DQ R +QIL Sbjct: 839 IEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQIL 898 Query: 309 INLLSNGVKFTPKGSVTLAVKAT-----------------DKALIFSVIDTGIGIDPEDQ 351 NL+ N +KFT KG V L VK + F++ DTGIGI + Q Sbjct: 899 SNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQ 958 Query: 352 RDLFQPFKQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCF 402 LF+ F Q+ + GTGLGL +S+RL Q+ GG + +TS PGVGS F Sbjct: 959 DRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNF 1009 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 121 bits (303), Expect = 5e-30 Identities = 84/225 (37%), Positives = 126/225 (56%), Gaps = 8/225 (3%) Query: 190 LSHIHHEFRTPLTAIIGF-ARMLR--DELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLD 246 +++I HE RTPLT+IIG A +LR D KQ Y+ + + LL +N + Sbjct: 383 INNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQ 442 Query: 247 LSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLT--IDDGVDFCYVDQRRW 304 LS++++ L + ++ L VI + A ++Q+ L L I+ G D DQ R Sbjct: 443 LSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERL 502 Query: 305 KQILINLLSNGVKFTP-KGSVTLAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISH 363 QIL LL+N +KFTP +G+V L + IF V DTGIGI+ + LF+ FK Sbjct: 503 DQILTQLLNNALKFTPAEGTVILRIWKESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGD 562 Query: 364 P-PSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILP 407 SF E G G+GLAL+++L +LHGG I++ S+PG G+ F+ ++P Sbjct: 563 SYTSFYETG-GVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIP 606 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 120 bits (300), Expect = 1e-29 Identities = 76/218 (34%), Positives = 115/218 (52%), Gaps = 5/218 (2%) Query: 193 IHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSKIDA 252 + HEFRTPLT+IIGF +L K+ QY+ NS++ L L++D L +S+ DA Sbjct: 947 VSHEFRTPLTSIIGFGELLSKYFDRLSTEKKQQYINNIQNSSQRLKQLIDDVLSISRYDA 1006 Query: 253 RCEELFYEQVAVEDLCLAVISMVQT-KAKEKQLALNLTIDDGVDFCYVDQRRWKQILINL 311 E+ + + +L +I E LN + + VD R + IL N+ Sbjct: 1007 NKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPD-EHSLVDVRLLRHILENI 1065 Query: 312 LSNGVKFTPKGS-VTLAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISHPPSFAEK 370 LSN +K++ GS +TL + ++ L+F V D GIGI +DQ LF+ F + S+ Sbjct: 1066 LSNAIKYSAPGSTITLDISKDEEHLLFQVRDEGIGIPLQDQEKLFEAFHRASNVGDI--P 1123 Query: 371 GTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPL 408 GTGLGL++ +R + GG I++ S PG G+ LPL Sbjct: 1124 GTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLPL 1161 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 113 bits (283), Expect = 1e-27 Identities = 81/209 (38%), Positives = 107/209 (51%), Gaps = 11/209 (5%) Query: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 L+ + HE RTP+ AIIG +L D L +Q + Q NS E LL+L+ND LD SK Sbjct: 325 LATMSHEIRTPMNAIIGMTGLLLDT---DLTTQQKYFAQTIRNSGETLLTLINDILDFSK 381 Query: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVD-FCYVDQRRWKQIL 308 I+A +L + + +V A++K L L + D R +QIL Sbjct: 382 IEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQIL 441 Query: 309 INLLSNGVKFTPKGSVTLAVKATDK-------ALIFSVIDTGIGIDPEDQRDLFQPFKQI 361 +NLLSN VKFT G V + V+ D + F+V DTGIGI P Q+ LFQ F Q Sbjct: 442 VNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQG 501 Query: 362 SHPPSFAEKGTGLGLALSRRLAQLHGGDI 390 + + GTGLGLA+ RL L GG I Sbjct: 502 NSSITRRFGGTGLGLAICVRLTALMGGTI 530 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 106 bits (265), Expect = 1e-25 Identities = 79/234 (33%), Positives = 123/234 (52%), Gaps = 24/234 (10%) Query: 190 LSHIHHEFRTPLTAIIGFAR-MLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLS 248 ++++ HE R+PL AIIGF++ MLR + L +Q++ S E+LL+L+N+ LD S Sbjct: 369 VANMSHELRSPLNAIIGFSQLMLRTK---NLPMEQYENAGIIQRSGEYLLNLINNILDFS 425 Query: 249 KIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVD-FCYVDQRRWKQI 307 KI+A L + L + M+ KA + + L D + + Y D+ + +QI Sbjct: 426 KIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRDHDLPRYVYGDEIKLRQI 485 Query: 308 LINLLSNGVKFTPKGSVTLAVKATDKA------------------LIFSVIDTGIGIDPE 349 L+NLLSN +KFT +G V L + L F++ DTG GI Sbjct: 486 LLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISEV 545 Query: 350 DQRDLFQPFKQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFS 403 + LF+ F Q + A++GTGLGLA++R+ +L GGDI ++S G+ FS Sbjct: 546 ELSHLFEAFSQTESGRN-AQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFS 598 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 101 bits (251), Expect = 5e-24 Identities = 66/214 (30%), Positives = 113/214 (52%), Gaps = 5/214 (2%) Query: 195 HEFRTPLTAIIGFARMLRDELYGKLNP-KQHQYVQGTLNSAEHLLSLVNDFLDLSKIDAR 253 HEFRTPL+ + A++L + L+P K+ + + NS ++++ L++D L +++ +A Sbjct: 78 HEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLLDDILIINRAEAG 137 Query: 254 CEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYVDQRRWKQILINLLS 313 E + ++ L I +Q + Q + VD+R + IL NLLS Sbjct: 138 KLEFNPNWLDLKLLFQQFIEEIQLSVSD-QYYFDFICSAQDTKALVDERLVRSILSNLLS 196 Query: 314 NGVKFTPKGS-VTLAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISHPPSFAEKGT 372 N +K++P G + +A+ + +IF V D GIGI PEDQ+ +F+PF + + + GT Sbjct: 197 NAIKYSPGGGQIKIALSLDSEQIIFEVTDQGIGISPEDQKQIFEPFHRGKNVRNIT--GT 254 Query: 373 GLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAIL 406 GLGL ++++ LH G I L S G+ + L Sbjct: 255 GLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICL 288 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 85.9 bits (211), Expect = 2e-19 Identities = 56/217 (25%), Positives = 104/217 (47%), Gaps = 11/217 (5%) Query: 195 HEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSKIDARC 254 H+ + PL + + ++L L+ ++ + + +L++D L +K+D + Sbjct: 538 HDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQY 597 Query: 255 EELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDG-VDFCYVDQRRWKQILINLLS 313 +L + V V+ K++ I+ G + DQ + Q+ NL++ Sbjct: 598 AQLTFTDVQ------EVVDKALANLKQRIEESGAEIEVGSMPAVMADQIQLMQVFQNLIA 651 Query: 314 NGVKFTPKGSVTLAV--KATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISHPPSFAEKG 371 NG+KF S + + + A +F+V D GIGIDP+ +F F+++ + KG Sbjct: 652 NGIKFAGDKSPKIKIWGDRQEDAWVFAVQDNGIGIDPQFFERIFVIFQRLHTRDEY--KG 709 Query: 372 TGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPL 408 TG+GLA+ +++ + H G I L S PG GS F +P+ Sbjct: 710 TGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSIPI 746 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.320 0.137 0.410 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 37,164 Number of Sequences: 78 Number of extensions: 1546 Number of successful extensions: 58 Number of sequences better than 1.0e-05: 15 Number of HSP's better than 0.0 without gapping: 12 Number of HSP's successfully gapped in prelim test: 3 Number of HSP's that attempted gapping in prelim test: 4 Number of HSP's gapped (non-prelim): 15 length of query: 417 length of database: 48,235 effective HSP length: 65 effective length of query: 352 effective length of database: 43,165 effective search space: 15194080 effective search space used: 15194080 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001517 slr0222 (1178 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001517 slr0222 2247 0.0 SYNE-PCC-01-000985 sll1475 170 2e-44 SYNE-PCC-01-002873 slr2098 138 9e-35 SYNE-PCC-01-002617 slr1759 127 3e-31 SYNE-PCC-01-001280 sll1871 122 8e-30 SYNE-PCC-01-002778 slr1969 121 1e-29 SYNE-PCC-01-000295 sll0474 112 7e-27 SYNE-PCC-01-000891 sll1353 108 1e-25 SYNE-PCC-01-001509 slr0210 107 3e-25 SYNE-PCC-01-001306 sll1905 99 1e-22 SYNE-PCC-01-002879 slr2104 97 4e-22 SYNE-PCC-01-001132 sll1672 93 4e-21 SYNE-PCC-01-000800 sll1228 92 7e-21 SYNE-PCC-01-002220 slr1212 92 1e-20 SYNE-PCC-01-001294 sll1888 91 3e-20 SYNE-PCC-01-001690 slr0473 87 3e-19 SYNE-PCC-01-000983 sll1473 62 1e-11 SYNE-PCC-01-001133 sll1673 51 2e-08 SYNE-PCC-01-002672 slr1837 47 4e-07 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 43 6e-06 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 2247 bits (5822), Expect = 0.0 Identities = 1147/1178 (97%), Positives = 1147/1178 (97%) Query: 1 MPIIPSPKVLLVDDQRENLVALSRALDSLPVEIITANSGQEAIXXXXXXEFALMILAQEM 60 MPIIPSPKVLLVDDQRENLVALSRALDSLPVEIITANSGQEAI EFALMILAQEM Sbjct: 1 MPIIPSPKVLLVDDQRENLVALSRALDSLPVEIITANSGQEAIATAATTEFALMILAQEM 60 Query: 61 SELDGLNTAKILRSFPLAEQTPIIFLARQEIITKAMAEINILGLVDFLAQPPNQNFLQVK 120 SELDGLNTAKILRSFPLAEQTPIIFLARQEIITKAMAEINILGLVDFLAQPPNQNFLQVK Sbjct: 61 SELDGLNTAKILRSFPLAEQTPIIFLARQEIITKAMAEINILGLVDFLAQPPNQNFLQVK 120 Query: 121 AKLYLQLFQQKQTLQYYNNYLESSVKSVHFDVKNNHSEQLSEIILANISDTVFVTDLSGK 180 AKLYLQLFQQKQTLQYYNNYLESSVKSVHFDVKNNHSEQLSEIILANISDTVFVTDLSGK Sbjct: 121 AKLYLQLFQQKQTLQYYNNYLESSVKSVHFDVKNNHSEQLSEIILANISDTVFVTDLSGK 180 Query: 181 FTFICSNIDNIFGYSLAEVNAMGTVETLLGDFRFNEYELKEKGELKNLRHDVQDKQGKIH 240 FTFICSNIDNIFGYSLAEVNAMGTVETLLGDFRFNEYELKEKGELKNLRHDVQDKQGKIH Sbjct: 181 FTFICSNIDNIFGYSLAEVNAMGTVETLLGDFRFNEYELKEKGELKNLRHDVQDKQGKIH 240 Query: 241 YLLINLKKVAINGGIYLYSCRDISEWARKEQAIRNSEANFRDIFASIKDGLLVLDEDNYI 300 YLLINLKKVAINGGIYLYSCRDISEWARKEQAIRNSEANFRDIFASIKDGLLVLDEDNYI Sbjct: 241 YLLINLKKVAINGGIYLYSCRDISEWARKEQAIRNSEANFRDIFASIKDGLLVLDEDNYI 300 Query: 301 CYANAQAVKLLNCTLEELVGTIGSPLEDTEFSLLVDDGTIYTVDVSVTEITWYGQTAKLV 360 CYANAQAVKLLNCTLEELVGTIGSPLEDTEFSLLVDDGTIYTVDVSVTEITWYGQTAKLV Sbjct: 301 CYANAQAVKLLNCTLEELVGTIGSPLEDTEFSLLVDDGTIYTVDVSVTEITWYGQTAKLV 360 Query: 361 SLRDISDRKRMENQLRENQNKYYRLLENLDNGVIVHNANAEIVYANPKAESFLGLTDLEG 420 SLRDISDRKRMENQLRENQNKYYRLLENLDNGVIVHNANAEIVYANPKAESFLGLTDLEG Sbjct: 361 SLRDISDRKRMENQLRENQNKYYRLLENLDNGVIVHNANAEIVYANPKAESFLGLTDLEG 420 Query: 421 RDIDDEYWMFFDKEGEKLEKEEFPVAQVLANQSSLKNFEMGIYRPDTDQLLWAYINAYPE 480 RDIDDEYWMFFDKEGEKLEKEEFPVAQVLANQSSLKNFEMGIYRPDTDQLLWAYINAYPE Sbjct: 421 RDIDDEYWMFFDKEGEKLEKEEFPVAQVLANQSSLKNFEMGIYRPDTDQLLWAYINAYPE 480 Query: 481 FYNEDTIQEIIVTFSDITERKLAEIQLKTINENLEVLIEERTXXXXXXXXXXXXXIIEKE 540 FYNEDTIQEIIVTFSDITERKLAEIQLKTINENLEVLIEERT IIEKE Sbjct: 481 FYNEDTIQEIIVTFSDITERKLAEIQLKTINENLEVLIEERTSELESSNSQLLQEIIEKE 540 Query: 541 QVSITLTTQEAKYRALVRDAGDAIILITIDFIVLEVNYRAVELSGYDQEELIGHSLLDLR 600 QVSITLTTQEAKYRALVRDAGDAIILITIDFIVLEVNYRAVELSGYDQEELIGHSLLDLR Sbjct: 541 QVSITLTTQEAKYRALVRDAGDAIILITIDFIVLEVNYRAVELSGYDQEELIGHSLLDLR 600 Query: 601 LLTPEFYAQQRHFWRTLKREQISQLTDVRLVKKSGELISVDISASVITYENHSIVQCIVH 660 LLTPEFYAQQRHFWRTLKREQISQLTDVRLVKKSGELISVDISASVITYENHSIVQCIVH Sbjct: 601 LLTPEFYAQQRHFWRTLKREQISQLTDVRLVKKSGELISVDISASVITYENHSIVQCIVH 660 Query: 661 DITLQKTIQAQLQRENYFRRQLLEKMVEGLFVCYEVEQFPFLQFTVWNPMMKNITGYSQE 720 DITLQKTIQAQLQRENYFRRQLLEKMVEGLFVCYEVEQFPFLQFTVWNPMMKNITGYSQE Sbjct: 661 DITLQKTIQAQLQRENYFRRQLLEKMVEGLFVCYEVEQFPFLQFTVWNPMMKNITGYSQE 720 Query: 721 EINQCGWYETLYSHGQPQEAVRVRMKAVALGVDMVKEEWQIIRRDGALRTVEISTALITS 780 EINQCGWYETLYSHGQPQEAVRVRMKAVALGVDMVKEEWQIIRRDGALRTVEISTALITS Sbjct: 721 EINQCGWYETLYSHGQPQEAVRVRMKAVALGVDMVKEEWQIIRRDGALRTVEISTALITS 780 Query: 781 NNQTNILAVIQDITDQKRQLQIIQNNEATLRCIVENLPIFFGMRTINFSNWYYINPSFES 840 NNQTNILAVIQDITDQKRQLQIIQNNEATLRCIVENLPIFFGMRTINFSNWYYINPSFES Sbjct: 781 NNQTNILAVIQDITDQKRQLQIIQNNEATLRCIVENLPIFFGMRTINFSNWYYINPSFES 840 Query: 841 LTGYTPDEMYEDPLLWQKIHREEYAENLEQARPNLGEWTIFSMEKKDGTQIWAQTVEFLV 900 LTGYTPDEMYEDPLLWQKIHREEYAENLEQARPNLGEWTIFSMEKKDGTQIWAQTVEFLV Sbjct: 841 LTGYTPDEMYEDPLLWQKIHREEYAENLEQARPNLGEWTIFSMEKKDGTQIWAQTVEFLV 900 Query: 901 DDLSDTARVVVFGQDITDIKRAEIETLRSLVKERELNEAKSQFVDIVSHEFRTPLTSIIG 960 DDLSDTARVVVFGQDITDIKRAEIETLRSLVKERELNEAKSQFVDIVSHEFRTPLTSIIG Sbjct: 901 DDLSDTARVVVFGQDITDIKRAEIETLRSLVKERELNEAKSQFVDIVSHEFRTPLTSIIG 960 Query: 961 FGELLSKYFDRLSTEKKXXXXXXXXXXXXRLKQLIDDVLSISRYDANKIEIELGNINLRN 1020 FGELLSKYFDRLSTEKK RLKQLIDDVLSISRYDANKIEIELGNINLRN Sbjct: 961 FGELLSKYFDRLSTEKKQQYINNIQNSSQRLKQLIDDVLSISRYDANKIEIELGNINLRN 1020 Query: 1021 LANDLIENFSCGLGSEHNFELNYHLKPDEHSLVDVRLLRHILENILSNAIKYSAPGSTIT 1080 LANDLIENFSCGLGSEHNFELNYHLKPDEHSLVDVRLLRHILENILSNAIKYSAPGSTIT Sbjct: 1021 LANDLIENFSCGLGSEHNFELNYHLKPDEHSLVDVRLLRHILENILSNAIKYSAPGSTIT 1080 Query: 1081 LDISKDEEHLLFQVRDEGIGIPLQDQEKLFEAFHRASNVGDIPGTGLGLSIVKRYVEFQG 1140 LDISKDEEHLLFQVRDEGIGIPLQDQEKLFEAFHRASNVGDIPGTGLGLSIVKRYVEFQG Sbjct: 1081 LDISKDEEHLLFQVRDEGIGIPLQDQEKLFEAFHRASNVGDIPGTGLGLSIVKRYVEFQG 1140 Query: 1141 GTIEVISMPGKGTTMVIKLPLNPAPIIQIAQGETDRLS 1178 GTIEVISMPGKGTTMVIKLPLNPAPIIQIAQGETDRLS Sbjct: 1141 GTIEVISMPGKGTTMVIKLPLNPAPIIQIAQGETDRLS 1178 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 170 bits (431), Expect = 2e-44 Identities = 101/280 (36%), Positives = 162/280 (57%), Gaps = 10/280 (3%) Query: 885 KKDGTQIWAQTVEFLVDDLSDTARV----VVFGQDITDIKRAEIETLRSLVKERELNEAK 940 +KDG++ W VEF + +++ + +D+T+ +R E E +L +E+EL+ K Sbjct: 14 RKDGSEFW---VEFSLVPVANKTGFYTHWIAVQRDVTERRRTE-EVRLALEREKELSRLK 69 Query: 941 SQFVDIVSHEFRTPLTSIIGFGELL-SKYFDRLSTEKKXXXXXXXXXXXXRLKQLIDDVL 999 ++F + SHEFRTPL++ + +LL + L +K+ + QL+DD+L Sbjct: 70 TRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLLDDIL 129 Query: 1000 SISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPDEHSLVDVRLLR 1059 I+R +A K+E ++L+ L IE + ++ F+ + D +LVD RL+R Sbjct: 130 IINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYYFDFICSAQ-DTKALVDERLVR 188 Query: 1060 HILENILSNAIKYSAPGSTITLDISKDEEHLLFQVRDEGIGIPLQDQEKLFEAFHRASNV 1119 IL N+LSNAIKYS G I + +S D E ++F+V D+GIGI +DQ+++FE FHR NV Sbjct: 189 SILSNLLSNAIKYSPGGGQIKIALSLDSEQIIFEVTDQGIGISPEDQKQIFEPFHRGKNV 248 Query: 1120 GDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKL 1159 +I GTGLGL + K+ V+ G+I + S +GTT+ I L Sbjct: 249 RNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTTVTICL 288 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 138 bits (348), Expect = 9e-35 Identities = 159/631 (25%), Positives = 283/631 (44%), Gaps = 61/631 (9%) Query: 564 IILITIDFIVLEVNYRAVELSGYDQEELIGHSLLDLRLLTPEFY---AQQRHFWRTLKRE 620 +I + + F+ L + + ++ +G S L + L T + HF E Sbjct: 162 VIAVMLAFVALLFRFHSAKIFHTTHGPALGSSALVMGLSTSGMHYTAMTATHFICRPWGE 221 Query: 621 QISQLTDVRLVKKSGELISVDISASVITYENHSIVQCIVHDITLQKTIQAQLQRENYFRR 680 Q D++ V I+V IS +++T ++ ++ +I++Q Q L + R Sbjct: 222 FFIQGIDIQEVA-----IAVTISITLLT---GGVMLFVLREISIQNQQQKILVATESWYR 273 Query: 681 QLLEKMVEGLFVCYEVEQFPFLQFTVWNPMMKNITGYSQEE-----INQCGWYETLYSHG 735 Q++E EG+ V + N ++ + GYSQ E I G E L Sbjct: 274 QIIEYAPEGIMVLDAQGNI-----ILANTSIEKLFGYSQTELIGQSIALLGLAELL---- 324 Query: 736 QPQEAVRVRMKAVALG--VDMVKEEWQII--RRDGALRTVEISTALITSNNQT--NILAV 789 Q+++ + + +G + +EE++I+ R DG+ +E+S + S +Q NI A Sbjct: 325 --QQSLHLLQEGEDVGPTCPLDQEEFEILGTRYDGSEFPIEVSLTSLPSLSQREMNIFAS 382 Query: 790 IQDITDQKRQLQIIQNNEATLRCIVENLPIFFGMRTINFSNWYYINPSFESLT----GYT 845 ++DI+ ++ Q I L+ ++++ P+ + + + NP L G + Sbjct: 383 VRDISARQEAQQQILRQREHLQSVLDSAPVGVAITVNGITQ--FANPHIGELVDLKVGDS 440 Query: 846 PDEMYEDPLLWQKIHREEYAENLEQARPNLGEWTIFSMEKKDGTQIWAQTVEFLVDDLSD 905 P ++Y D R++ E L Q + ++ M G +I FL D Sbjct: 441 PQKIYVD-----LGDRQQMLEELTQF--GRSQSRVYKMYNPRG-EIRDILATFLATDYEG 492 Query: 906 TARVVVFGQDITDIKRAEIETLRSLVKERELNEAKSQFVDIVSHEFRTPLTSIIGFGELL 965 ++ + DIT IK AE E R+ E + K+ F+ +SHE RTP+ ++IG L Sbjct: 493 QKGILGWLADITPIKAAEAEMKRAKELAEEASRIKADFLANMSHEIRTPMNAVIGMTHLA 552 Query: 966 SKYFDRLSTEKKXXXXXXXXXXXXRLKQLIDDVLSISRYDANKIEIELGNINLRNLAND- 1024 K T ++ L +I+D+L S+ +A K+ +E + +L + ++ Sbjct: 553 LK---TDLTPRQREYLHKIRFSGQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNV 609 Query: 1025 --LIENFSCGLGSEHNFELNYHLKPDEHSLVDVRLLRHILENILSNAIKYSAPGS---TI 1079 LI + G E F+++ +L H + D L IL N +NA+K++ G + Sbjct: 610 ATLISEKATNKGLELLFDIDRNL--PRHFIGDPLRLGQILINYANNAVKFTEQGDITIVV 667 Query: 1080 TLDISKDEEHLLF-QVRDEGIGIPLQDQEKLFEAFHRA--SNVGDIPGTGLGLSIVKRYV 1136 L +D++ +L+ V+D GIGI + LF +F +A S + GTGLGL+I KR Sbjct: 668 RLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIA 727 Query: 1137 EFQGGTIEVISMPGKGTTMVIKLPLNPAPII 1167 E GG + V S G+G+T K+ L + +I Sbjct: 728 ELMGGEVGVESEYGQGSTFWAKVCLQKSNVI 758 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 127 bits (318), Expect = 3e-31 Identities = 162/701 (23%), Positives = 290/701 (41%), Gaps = 96/701 (13%) Query: 538 EKEQVSITLTTQEAKYRALVRDAGDAIILITIDFIVLEVNYRAVELSGYDQEELIG--HS 595 +K + + T QE + D + + + ++ VN + VE+SGY +EELIG H Sbjct: 318 QKVEEFLKSTLQELAVQKTALDEAAIVAITDTEGVITYVNDKFVEVSGYSREELIGNTHR 377 Query: 596 LLDLRLLTPEFYAQQRHFWRTLKREQISQLTDVRLVKKSGELISVDISASVITYENHSIV 655 L+ +PEF+ Q FW+T++ ++ + K+G VD + +N + Sbjct: 378 LVSSGYHSPEFFQQ---FWQTIRAGKVWH-GQINNRAKAGNTYWVDSTVVPFLDDNGNPY 433 Query: 656 Q--CIVHDITLQKTIQAQLQRENYFRRQLLEKMVEGLFVCYEVEQFPF-----LQFTVWN 708 Q I +IT K + L+ R + + L+V + ++ F L+F Sbjct: 434 QYLAIRFEITSSKQAEKSLRESEARFRMMADTSPIMLWVADQDKKMTFVNQSWLEFRGAT 493 Query: 709 PMMKNITGYSQE-EINQCGWYETLYSHG---QPQEAVRVRMKAVA--------LGVDMVK 756 ++ GY + + G Y +YS + + + R + V +GV Sbjct: 494 LAEESGNGYLEGIHPDDKGHYLGVYSQAFGDRRRFELEYRYRRVDQQYRWIVNVGVPRYL 553 Query: 757 EEWQIIRRDGA-LRTVEISTALITSNNQTNILAVIQDITDQ-KRQLQI----------IQ 804 E+ + + G+ L + A + N + +++ I+ + +R LQ + Sbjct: 554 EDGKFMGYVGSCLDITDRKQAQDILQKKLNQILLMRKISQEIRRSLQPTLIFQTAARQVG 613 Query: 805 NNEATLRCIVENLPIFFGMRTINFSNWYYINPSFESL-TGYTPDEMYEDPLLWQ------ 857 N A RC++ N ++ + Y+ F SL G E DP + Q Sbjct: 614 NVFAVSRCLIHNYSEATTLQVPVVAE--YLGGQFTSLLAGEIAVEQAYDPTIIQGDRAMA 671 Query: 858 ---------KIHREEYAENLEQARPNLGEWT--------IFSMEKKDGTQIWAQTVEFLV 900 H + + + Q + L T I ++ + D ++W L+ Sbjct: 672 VVDLDQDLNSTHTKAFYQRF-QVKSFLAVRTSYQGKANGIIALHQCDRQRVWTADEIELL 730 Query: 901 DDLSDTARVVVFGQDITDIKRAEIETLRSLVKERE--------LNEAKSQFVDIVSHEFR 952 + +++ + + + + +R L E E N AK +F+ ++SHE R Sbjct: 731 EAIAEQMGIALAQAALLEKERERRRELAQKNLELEKATWAAEAANRAKGEFLAMMSHEIR 790 Query: 953 TPLTSIIGFGELLSKYFDRLSTEKKXXXXXXXXXXXXRLKQLIDDVLSISRYDANKIEIE 1012 TP+ +IG ELL L ++ L +I+D+L S+ +A+K+ +E Sbjct: 791 TPMNGVIGMTELLIMTDLNL---QQLDYVQTIRQSGETLLTIINDILDFSKIEADKLVLE 847 Query: 1013 LGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPDEHSLV--DVRLLRHILENILSNAI 1070 LR L ++E F ++H EL Y + P + + D LR IL N++ NA+ Sbjct: 848 TQAFELRPLIETVLEMFGPIARAKH-LELTYGIDPQTPARILGDQVRLRQILSNLIGNAL 906 Query: 1071 KYSAPGSTIT----------------LDISKDEEHLLFQVRDEGIGIPLQDQEKLFEAFH 1114 K++ G + L++ + F +RD GIGIPL Q++LF++F Sbjct: 907 KFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQDRLFKSFS 966 Query: 1115 R--ASNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGT 1153 + +S GTGLGL I +R + GG + V S PG G+ Sbjct: 967 QVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGS 1007 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 122 bits (305), Expect = 8e-30 Identities = 89/250 (35%), Positives = 134/250 (53%), Gaps = 15/250 (6%) Query: 925 ETLRSLVKEREL--------NEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTEK 976 E L + VK EL N KS F+ +SHE RTPL +IIG+ E+L + + L +E+ Sbjct: 415 EELENTVKALELASSEAEAANATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEE 474 Query: 977 KXXXXXXXXXXXXRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSE 1036 L LI+D+L IS+ +A K+E+ L NL+ L +++ S L + Sbjct: 475 LVPDLDKILRSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDTISPLLKNN 534 Query: 1037 HN-FELNYHLKPDEHSLVDVRLLRHILENILSNAIKYSAPG--STITLDISKDE-EHLLF 1092 +N E+ L+ +E D+ LR + N+LSNA K++ G S I + DE + L F Sbjct: 535 NNKLEVEISLESEE-VYGDLIKLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSF 593 Query: 1093 QVRDEGIGIPLQDQEKLFEAFHRA--SNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPG 1150 QV+D GIG+ + KLF+ F +A S GTGLGL+I +++ + GG I + S G Sbjct: 594 QVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIG 653 Query: 1151 KGTTMVIKLP 1160 G++ IKLP Sbjct: 654 VGSSFTIKLP 663 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 121 bits (303), Expect = 1e-29 Identities = 80/244 (32%), Positives = 122/244 (50%), Gaps = 7/244 (2%) Query: 929 SLVKERELNEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDR---LSTEKKXXXXXXXX 985 +L+ + N KSQF++ +SHE RTPLTSIIG L ++FD L K+ Sbjct: 368 TLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQ 427 Query: 986 XXXXRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIENF-SCGLGSEHNFELNYH 1044 +L I+ ++ +S+ ++ + + + +L LA +I + + + N EL+Y Sbjct: 428 ENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQ 487 Query: 1045 LKPDEHSL-VDVRLLRHILENILSNAIKYSAPGSTITLDISKDEEHLLFQVRDEGIGIPL 1103 + + D L IL +L+NA+K++ T+ L I K+ +FQV D GIGI Sbjct: 488 INVGQDQFCADQERLDQILTQLLNNALKFTPAEGTVILRIWKESNQAIFQVEDTGIGINE 547 Query: 1104 QDQEKLFEAFHRA--SNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLPL 1161 Q LFEAF A S G+GL++ K+ VE GG IEV S PG+GT +P Sbjct: 548 QQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIPQ 607 Query: 1162 NPAP 1165 P Sbjct: 608 QNFP 611 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 112 bits (280), Expect = 7e-27 Identities = 98/349 (28%), Positives = 159/349 (45%), Gaps = 24/349 (6%) Query: 827 NFSNWYYINPSFESLTGYTPDEMYEDPLLWQKIHREEYAENLEQARPNLGEWTIFSMEKK 886 N W E G + + P+ WQ I ++LE P + T +E Sbjct: 311 NLITWLGFEQPLEPADGDFFIHLGDRPMFWQAIE-----QSLED--PTMELSTELRLEAA 363 Query: 887 DGTQIWAQTVEFLVDDLSDTARVVVFGQ--DITDIKRAEIETLRSLVKERELNEAKSQFV 944 +G +I+ + + A V + G DIT+IK+AE + S + + K +F+ Sbjct: 364 NG-EIYHCLLRGQIHQEQGEAFVKIIGTIADITEIKKAEEQLKLSNKILAKATQLKDEFL 422 Query: 945 DIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKXXXXXXXXXXXXRLKQLIDDVLSISRY 1004 +SHE RTPL SI+G E L K+ L LI+D+L +S+ Sbjct: 423 ANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRHLLSLINDILDLSKI 482 Query: 1005 DANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPD-EHSLVDVRLLRHILE 1063 +A +++++L ++ L N + F + L+ + P+ LVD R L +L Sbjct: 483 EAGRMDLDLNPTSVSALVNHSL-TFVQQFAIQKQINLSSEIIPNLPDVLVDKRRLCQVLI 541 Query: 1064 NILSNAIKYSAPGSTITL--DISKDE--------EHLLFQVRDEGIGIPLQDQEKLFEAF 1113 N+L+NAIK++ G + + D+ K++ L F V D GIGI +FE F Sbjct: 542 NLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPF 601 Query: 1114 HRASNVGD--IPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLP 1160 + + + GTGLGLS+VK+ VE GG++ V S +G+ I +P Sbjct: 602 VQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEGSRFKITIP 650 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 108 bits (269), Expect = 1e-25 Identities = 83/259 (32%), Positives = 130/259 (50%), Gaps = 17/259 (6%) Query: 915 DITDIKRAEIETLRSLVKEREL-NEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLS 973 +I + +R EI+ LR + EL N KS+F+ +SHE RTP+ +I+GF +LL + LS Sbjct: 575 EIEERQRIEIK-LREAKESAELANRVKSEFLANISHEIRTPMNAILGFCDLLLQKDLSLS 633 Query: 974 TEKKXXXXXXXXXXXXRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGL 1033 KK L LIDD+L IS+ +A K+ I L ++LR + ++ + F Sbjct: 634 QTKKYLNAIGSSSKI--LLALIDDILDISKIEAGKLVIHLEPVDLRVIIREIKQIFDYKA 691 Query: 1034 GSEHNFELNYHLKPDEHSLV--DVRLLRHILENILSNAIKYSAPGST--------ITLDI 1083 S+ + L + + + D LR IL N++ NA+K++ G I + Sbjct: 692 ESK-SLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRS 750 Query: 1084 SKDEEHLLFQVRDEGIGIPLQDQEKLFEAF--HRASNVGDIPGTGLGLSIVKRYVEFQGG 1141 L +V D GIGI +DQ K+F+ F + + GTGLGL+I +R GG Sbjct: 751 QGTYISLAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYGGTGLGLTITRRLTALLGG 810 Query: 1142 TIEVISMPGKGTTMVIKLP 1160 I + S G+G+T ++ P Sbjct: 811 EISLSSRLGEGSTFILHFP 829 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 107 bits (266), Expect = 3e-25 Identities = 72/218 (33%), Positives = 108/218 (49%), Gaps = 5/218 (2%) Query: 947 VSHEFRTPLTSIIGFGELLSKYFDRLSTEKKXXXXXXXXXXXXRLKQLIDDVLSISRYDA 1006 + HEFRTPLT+IIGF +L K+ L L++D L +S+ DA Sbjct: 193 IHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSKIDA 252 Query: 1007 NKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPD-EHSLVDVRLLRHILENI 1065 E+ + + +L +I E LN + + VD R + IL N+ Sbjct: 253 RCEELFYEQVAVEDLCLAVISMVQTK-AKEKQLALNLTIDDGVDFCYVDQRRWKQILINL 311 Query: 1066 LSNAIKYSAPGSTITLDISKDEEHLLFQVRDEGIGIPLQDQEKLFEAFHRASNVGDI--P 1123 LSN +K++ GS +TL + ++ L+F V D GIGI +DQ LF+ F + S+ Sbjct: 312 LSNGVKFTPKGS-VTLAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISHPPSFAEK 370 Query: 1124 GTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLPL 1161 GTGLGL++ +R + GG I++ S PG G+ LPL Sbjct: 371 GTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPL 408 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 98.6 bits (244), Expect = 1e-22 Identities = 71/216 (32%), Positives = 107/216 (49%), Gaps = 12/216 (5%) Query: 937 NEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKXXXXXXXXXXXXRLKQLID 996 N +KS+F+ +SHE RTP+ +IIG LL D T ++ L LI+ Sbjct: 318 NRSKSEFLATMSHEIRTPMNAIIGMTGLL---LDTDLTTQQKYFAQTIRNSGETLLTLIN 374 Query: 997 DVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPDEHSLV-DV 1055 D+L S+ +A K+++E+ +L + ++ + + L P +L DV Sbjct: 375 DILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDV 434 Query: 1056 RLLRHILENILSNAIKYSAPG------STITLDISKDEEHLLFQVRDEGIGIPLQDQEKL 1109 LR IL N+LSNA+K++ G + D +K E + F V+D GIGI Q+ L Sbjct: 435 TRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQAL 494 Query: 1110 FEAFHR--ASNVGDIPGTGLGLSIVKRYVEFQGGTI 1143 F+AF + +S GTGLGL+I R GGTI Sbjct: 495 FQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTI 530 Score = 55.5 bits (132), Expect = 1e-09 Identities = 47/187 (25%), Positives = 85/187 (45%), Gaps = 13/187 (6%) Query: 9 VLLVDDQRENLVALSRALDSLPVEIITANSGQEAIXXXXXXEFALMILAQEMSELDGLNT 68 +L+VDD +EN+ +S L+ SG EA+ + L++L M +DGL Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 69 AKILRSFPLAEQTPIIFLA---RQEIITKAMAEINILGLVDFLAQPPNQNFLQVKAKLYL 125 L+ P P+IFL ++ + +A A+ G VD++ +P + L + K +L Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAK----GAVDYVTKPFSPPELLARVKTHL 135 Query: 126 QLFQQKQTLQYYNNYLESSVKSVHFDVKNNHSEQLSEIILANISDTVFVTDLSGKFTFIC 185 +L Q + L ++ LE + + + S +L I++ N+ V +TD G + Sbjct: 136 ELKQTRDNL--HHTLLEQARTA---EALACTSTRLG-ILVQNMQAGVLMTDAQGTIVVVN 189 Query: 186 SNIDNIF 192 +F Sbjct: 190 PEFARLF 196 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 96.7 bits (239), Expect = 4e-22 Identities = 88/285 (30%), Positives = 136/285 (47%), Gaps = 39/285 (13%) Query: 914 QDITDIKRAEI------ETLRSLVKERE-------------------LNEAKSQFVDIVS 948 QD+T+++ A+I E L ++ER +AKS+F+ +S Sbjct: 407 QDVTELQEAQISLEHLNEKLEQRIQERTQELENSQESLLEAKLVAEGATKAKSEFLANMS 466 Query: 949 HEFRTPLTSIIGFGELLSKYFDRLSTEKKXXXXXXXXXXXXRLKQLIDDVLSISRYDANK 1008 HE RTP+ +IIG EL+ T ++ L +I+++L S+ +A K Sbjct: 467 HEIRTPMNAIIGMSELV---LQTDLTSQQRNYLQKVQYAGELLLGIINNILDFSKMEAGK 523 Query: 1009 IEIELGNINLRNLANDLIENFSCGLGSE-HNFELNYHLKPD-EHSLVDVRL-LRHILENI 1065 +E+E ++ + +L + G+ +E LN+HL P LV RL L IL N+ Sbjct: 524 LELEQKPFSVEEVMGNL--HSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINL 581 Query: 1066 LSNAIKYSAPGS-TITLDISKDEEH---LLFQVRDEGIGIPLQDQEKLFEAFHR--ASNV 1119 +NA+K++ G TI + K E L F V D GIG+ Q KLF+ F++ S Sbjct: 582 GNNAVKFTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTS 641 Query: 1120 GDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLPLNPA 1164 GTGLGL+I K E GG I + S+ G+G+T + L A Sbjct: 642 RQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCLGTA 686 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 93.2 bits (230), Expect = 4e-21 Identities = 78/249 (31%), Positives = 121/249 (48%), Gaps = 27/249 (10%) Query: 930 LVKERELNE----AKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKXXXXXXXX 985 LV+ +E+ E AKS FV +SHE R+PL +IIGF +L+ + + ++ Sbjct: 351 LVRAKEIAESEAKAKSTFVANMSHELRSPLNAIIGFSQLMLR--TKNLPMEQYENAGIIQ 408 Query: 986 XXXXRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHL 1045 L LI+++L S+ +A K + N +L L +DL + +E EL + Sbjct: 409 RSGEYLLNLINNILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANE-GIELIFIR 467 Query: 1046 KPDEHSLV--DVRLLRHILENILSNAIKYSAPGSTI-----------------TLDISKD 1086 D V D LR IL N+LSNAIK++ G + T K+ Sbjct: 468 DHDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKN 527 Query: 1087 EEHLLFQVRDEGIGIPLQDQEKLFEAFHRASNVGDIP-GTGLGLSIVKRYVEFQGGTIEV 1145 + L F ++D G GI + LFEAF + + + GTGLGL+I +++++ GG I V Sbjct: 528 KYWLDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDINV 587 Query: 1146 ISMPGKGTT 1154 S+ +GTT Sbjct: 588 SSVVDQGTT 596 Score = 46.2 bits (108), Expect = 6e-07 Identities = 32/111 (28%), Positives = 51/111 (45%), Gaps = 1/111 (0%) Query: 5 PSPKVLLVDDQRENLVALSRALDSLPVEIITANSGQEAIXXXXXXEFALMILAQEMSELD 64 P K+L+VDD+ N L + L EI A++GQEAI E L+ + M +D Sbjct: 628 PVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMD 687 Query: 65 GLNTAKILRSFPLAEQTPIIFLARQEIITKAMAEINILGLVDFLAQPPNQN 115 G K ++ T ++ L ++ + A + G DFL +P +N Sbjct: 688 GYEATKYIKGQVKGNATAVVALT-ASVLEEEKAIVLSAGCDDFLRKPFREN 737 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 92.4 bits (228), Expect = 7e-21 Identities = 78/257 (30%), Positives = 121/257 (47%), Gaps = 21/257 (8%) Query: 921 RAEIETLRSLVKERE--LNEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKX 978 R + ET + KE N AK++F+ +SHE RTPL +IIGF +LL + S Sbjct: 142 RHQAETTLTQAKEAADAANRAKTEFLASISHELRTPLNAIIGFSQLLHR---DPSLAPHR 198 Query: 979 XXXXXXXXXXXRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHN 1038 L +LI+D+L +S+ +A + + I+ L ++L F E Sbjct: 199 PTLDIINRSGEHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQL-RAQEKQ 257 Query: 1039 FELNYHLKPD--EHSLVDVRLLRHILENILSNAIKYSAPGSTITLDI------SKDEEH- 1089 L P+ E D LR +L N+L+NAIK++A G +TL + DE Sbjct: 258 LLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGG-VTLKVKCLTAPQTDEGQG 316 Query: 1090 ----LLFQVRDEGIGIPLQDQEKLFEAFHRA-SNVGDIPGTGLGLSIVKRYVEFQGGTIE 1144 L F V D G GI + ++LF F + + + G GLGL I +++V+ GG I+ Sbjct: 317 ASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGLKSCQGNGLGLPISQKFVQLMGGQIQ 376 Query: 1145 VISMPGKGTTMVIKLPL 1161 V S +G+ +P+ Sbjct: 377 VRSKVDQGSAFFFAIPV 393 Score = 47.8 bits (112), Expect = 2e-07 Identities = 33/104 (31%), Positives = 54/104 (51%), Gaps = 1/104 (0%) Query: 8 KVLLVDDQRENLVALSRALDSLPVEIITANSGQEAIXXXXXXEFALMILAQEMSELDGLN 67 KVL+VDD+ E+ + L + L SL + A +G+ AI ++++ +M LDG + Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 Query: 68 TAKILRSFPLAEQTPIIFLARQEIITKAMAEINILGLVDFLAQP 111 T + +++ P + T II L AEI G DFL++P Sbjct: 479 TTQKIKASPQGQHTIIIALT-ASAFEGERAEILSAGCDDFLSKP 521 >SYNE-PCC-01-002220 slr1212 Length = 844 Score = 91.7 bits (226), Expect = 1e-20 Identities = 151/689 (21%), Positives = 270/689 (39%), Gaps = 112/689 (16%) Query: 496 DITERKLAEIQLKTINENLEVLIEERTXXXXXXXXXXXXXIIEKEQVSITLTT---QEAK 552 +I ER+ AEI L+ +N NLE +E+RT I +K + L Q A+ Sbjct: 141 EIKERQTAEIALQELNNNLEKRVEDRTTQLAKINQQLEQEIEDKTRAKEDLEKNKDQLAQ 200 Query: 553 YRALVRDAGDAIILITIDFIVLEVNYRAVELSGYDQEELIGHSLLDLRLLTPEFYAQQRH 612 A+V + DAII T+D + N A L GY EE+IG + +L+ E ++ Sbjct: 201 LAAIVESSQDAIISKTLDGNITSWNESAERLFGYTAEEMIGSHI--TKLIPEELILEEDL 258 Query: 613 FWRTLKREQISQLTDVRLVKKSGELISVDISASVITYENHSIVQC--IVHDITLQKTIQA 670 +++ Q + + +K G I V ++ S I E+ ++V IV DIT + ++ Sbjct: 259 IAECIRQGQRINTYETQRQRKDGTKIDVALTISPIRDEHKNVVGASKIVRDITARLDVEN 318 Query: 671 QLQRENYFRRQLLEKMVEGLFVCYEVEQFPFLQFTVWNPMMKN-----ITGYSQEEINQC 725 L+ YF +EK+ Y + L W + N I GY+ EE Sbjct: 319 ALRESQYF----IEKLAN-----YSPQILYILDPIAWKNIYVNYQSFEILGYTPEEFKN- 368 Query: 726 GWYETLYSHGQPQEAVRV----RMKAVALGVDMVKEEWQIIRRDGA---LRTVEISTALI 778 G E L + P + + + ++ E+++ ++G+ LR+ E+ A Sbjct: 369 GGTELLLNIVHPDDIPTLYENKNFWQKSQEGQVLTTEYRMRHKNGSWRWLRSREVVFARD 428 Query: 779 TSNNQTNILAVIQDITDQKRQLQIIQ---NNEATLRCIVENLPIFFGMRTINFSNWYYIN 835 T +L QDI+D K Q Q + E+ LR I + + + TI + I Sbjct: 429 DYGQVTKVLGTAQDISDSKEQEQRLYEQGRRESLLREITQRIRQSLDLPTIFNTVVQEIR 488 Query: 836 PSFES----LTGYTPDEMYE-------------DPLLWQKIHR----EEYAENLEQARPN 874 E+ + ++PD + P++ I YA+ +Q R Sbjct: 489 QFLEADRVVIFQFSPDSDFSVGNIVAESVLAPFKPIINSAIEETCFSNNYAQRYQQGRIQ 548 Query: 875 LGE----------------------------------WTIFSMEKKDGTQIWAQTVEFLV 900 + E W + + + D +++W QT L+ Sbjct: 549 VIEDIHQSHLRQCHIDFLARLQVRANLVLPLINDAILWGLLCIHQCDSSRVWEQTEIDLL 608 Query: 901 DDLSDTARVVVFGQDITDIKRAEIETLRSL-VKERELNEAKSQFVDIVSHEFRTPLTSII 959 +++ + + + + + E+ + L V+ E K + + H + L + Sbjct: 609 KQITNQFEIAIQQATLYEQAQQELASKNQLFVQLTNELEQKKVLLKEIHHRVKNNLQIM- 667 Query: 960 GFGELLSKYFDRLSTEKKXXXXXXXXXXXXRLKQLIDDVLSISRYDANKIEIELGNIN-- 1017 LL F + S + LI + L S +L NI+ Sbjct: 668 --SSLLYLQFSKAS--PAIQQLSEEYQNRIQSMALIHEQLYRSE--------DLANIDFS 715 Query: 1018 --LRNLANDLIENFSCGLGSEHNFELNYHLK-PDEHSLVDVRLLRHILENILSNAIKYSA 1074 L+NL +++ +++ C S L +K P E S+ L I++ ++SNA+K++ Sbjct: 716 QYLKNLTHNICQSYGCNTDSIKIKLLVEQVKVPLEQSIP----LGLIIQELVSNALKHAF 771 Query: 1075 PGS--TITLDISKDEEHLLFQVRDEGIGI 1101 P + I++ + H QV D G+GI Sbjct: 772 PTTEGEISIKFTSMNSHYSLQVWDNGVGI 800 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 90.5 bits (223), Expect = 3e-20 Identities = 87/295 (29%), Positives = 141/295 (47%), Gaps = 35/295 (11%) Query: 892 WAQTVEFLVDDLSDTARVVVFGQDITDIKRAEI--ETLRSLVKERELNEAKSQFVDIVSH 949 W E L+ +L++ Q T I A + E ++ E + KS+F+ +H Sbjct: 152 WHPETEALLQELAE--------QTGTAIAHATLYQELTQATKAAEEASRLKSEFLASTTH 203 Query: 950 EFRTPLTSIIGFGELLSKYFDRLSTE-KKXXXXXXXXXXXXRLKQLIDDVLSISRYDANK 1008 E RTPL IIGF L+ D +E +K L LI+D+L +++ +A + Sbjct: 204 ELRTPLNGIIGFLRLILD--DMADSEAEKHEFVEEAYQSALLLLNLINDILDLAKIEAGR 261 Query: 1009 IEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHL-KPDEHSLV---DVRLLRHILEN 1064 + IEL ++ + ENF+ L N L+++L P++ L+ + R L ++ N Sbjct: 262 VGIELEVVDFSEVL-QATENFA--LPQAQNKGLSFNLTAPNQGPLLVYGNQRWLLQVMLN 318 Query: 1065 ILSNAIKYSAPGSTITLDISKDEEHLLFQ-----------VRDEGIGIPLQDQEKLFEAF 1113 I+ NAIK++ G IT+ + +L++ V D GIG+ L+ Q KLF+ F Sbjct: 319 IVGNAIKFTHEGG-ITVAVEVMPRTVLWEGVQKPGLLKVSVGDTGIGVSLEQQSKLFKKF 377 Query: 1114 HR--ASNVGDIPGTGLGLSIVKRYVEFQGGTIEVISM-PGKGTTMVIKLPLNPAP 1165 + S+ GTGLGL I ++ VE GG + SM G G+T+ + L P Sbjct: 378 VQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGSTVTFTVLLEELP 432 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 87.0 bits (214), Expect = 3e-19 Identities = 62/248 (25%), Positives = 115/248 (46%), Gaps = 7/248 (2%) Query: 916 ITDIKRAEIETLRSLVKERELNEAK-SQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLST 974 I ++ + E L L + E + A +F I SH+ + PL + + +LL + Sbjct: 504 IVNLILRQAEELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQLLEMRYSEALD 563 Query: 975 EKKXXXXXXXXXXXXRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLG 1034 E ++ LIDD+L+ ++ D ++ ++ + + + + N + Sbjct: 564 EDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLTFTDV--QEVVDKALANLKQRI- 620 Query: 1035 SEHNFELNYHLKPDEHSLVDVRLLRHILENILSNAIKYSAPGST-ITLDISKDEEHLLFQ 1093 E E+ P + D L + +N+++N IK++ S I + + E+ +F Sbjct: 621 EESGAEIEVGSMPAV--MADQIQLMQVFQNLIANGIKFAGDKSPKIKIWGDRQEDAWVFA 678 Query: 1094 VRDEGIGIPLQDQEKLFEAFHRASNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGT 1153 V+D GIGI Q E++F F R + GTG+GL+I K+ +E G I + S PG+G+ Sbjct: 679 VQDNGIGIDPQFFERIFVIFQRLHTRDEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGS 738 Query: 1154 TMVIKLPL 1161 T +P+ Sbjct: 739 TFYFSIPI 746 >SYNE-PCC-01-000983 sll1473 Length = 481 Score = 62.0 bits (149), Expect = 1e-11 Identities = 63/243 (25%), Positives = 117/243 (48%), Gaps = 34/243 (13%) Query: 656 QCIVHDITLQKTIQAQLQRENYFRRQLLEKMVEGLFVCYEVEQFPFLQFTVWNPMMKNIT 715 Q + +I+ ++ +A L+ N+ + L+ G+F +Q +WNP + I Sbjct: 243 QSLRMEISERQKTEAALRHTNHTLQSLIAASPRGIFTLNLADQIQ-----IWNPTAERIF 297 Query: 716 GYSQEEINQCGWYETLYSHGQPQEAVRVRMKAVALGVDMVKEEWQIIRRDGALRTVEIST 775 G+++ EI E L S+ ++ + + K ++ G+ E + ++DG+ + +S Sbjct: 298 GWTETEI--IAHPELLTSNILLEDYQQFKQKVLS-GMVSPSLELKCQKKDGSWIEIVLSA 354 Query: 776 A--LITSNNQTNILAVIQDITDQKRQLQ--------IIQNNEATLRCIVENLPIFF-GMR 824 A L + N ++AV+ DIT+QKRQ + ++ N+A + I E PI G R Sbjct: 355 APLLDSEENIAGLVAVVADITEQKRQAEQIRLLQSVVVNTNDAVV--ITEAEPIDDPGPR 412 Query: 825 TINFSNWYYINPSFESLTGYTPDEMY-EDPLLWQ--KIHREEYAENLEQARPNLGEWTIF 881 + Y+N +F +TGYT +EM + P + Q K R E L++ R + +W Sbjct: 413 IL------YVNEAFTKITGYTAEEMLGKTPRVLQGPKTSRTE----LDRVRQAISQWQSV 462 Query: 882 SME 884 ++E Sbjct: 463 TVE 465 Score = 49.7 bits (117), Expect = 5e-08 Identities = 53/225 (23%), Positives = 98/225 (43%), Gaps = 20/225 (8%) Query: 506 QLKTINENLEVLIEERTXXXXXXXXXXXXXIIEKEQVSITLTTQEAKYRALVRDAGDAII 565 QL+ +N++LE +E+RT I E+++ L ++L+ + I Sbjct: 219 QLQQLNKDLENRVEKRTQQLAATNQSLRMEISERQKTEAALRHTNHTLQSLIAASPRGIF 278 Query: 566 LITIDFIVLEVNYRAVELSGYDQEELIGH-SLLDLRLLTPEFYAQQRHFWRTLKREQISQ 624 + + + N A + G+ + E+I H LL +L ++ + F + + +S Sbjct: 279 TLNLADQIQIWNPTAERIFGWTETEIIAHPELLTSNILLEDY----QQFKQKVLSGMVSP 334 Query: 625 LTDVRLVKKSGELISVDISASVI--TYENHSIVQCIVHDITLQKTIQAQLQRENYFRRQL 682 +++ KK G I + +SA+ + + EN + + +V DIT QK Q+ +L Sbjct: 335 SLELKCQKKDGSWIEIVLSAAPLLDSEENIAGLVAVVADITEQKRQAEQI--------RL 386 Query: 683 LEKMV---EGLFVCYEVEQF--PFLQFTVWNPMMKNITGYSQEEI 722 L+ +V V E E P + N ITGY+ EE+ Sbjct: 387 LQSVVVNTNDAVVITEAEPIDDPGPRILYVNEAFTKITGYTAEEM 431 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 51.2 bits (121), Expect = 2e-08 Identities = 65/266 (24%), Positives = 108/266 (40%), Gaps = 69/266 (25%) Query: 261 RDISEWARKEQAIRNSEANFRDIFASIKDGLLVL---------DEDNYICYA-NAQAVKL 310 R++ + E+ + S A + S DG+ + D +++ C N K Sbjct: 137 REVRKRREAEEVLYQSRALLSSVLNSALDGIAAMQAVRNPQTGDIEDFRCLVINPILSKA 196 Query: 311 LNCTLEELVGTIG--------SPLEDTEFSLLVDDGTIYTVDV--SVTEITWYGQTA-KL 359 N + E+L+G + P +F LV+ GT T D+ + WY A KL Sbjct: 197 FNRSREDLIGRVLLKRFLQRLDPQLFDQFVNLVETGTFLTQDIYFPIANSDWYHFVAVKL 256 Query: 360 -----VSLRDISDRKRMENQLRENQNKYYRLLENLDNGVIVHNANAEIVYANPKAESFLG 414 V++RDI+DRKRME +L + N+ +LL N+D G Sbjct: 257 GDGFAVTVRDITDRKRMELEL-QAANQQLQLLANID-----------------------G 292 Query: 415 LTDLEGRDIDDEYWMFFDKEGEKLEKEEFPVAQVLANQSSLKNFEMGIYRPDTDQLLWAY 474 LT + R DEY +E ++ +E+ P++ +L + K AY Sbjct: 293 LTHIANRRRFDEY---LAQEWQRHCREQKPLSLILVDIDYFK----------------AY 333 Query: 475 INAYPEFYNEDTIQEIIVTFSDITER 500 + Y +D +Q++ T DI +R Sbjct: 334 NDLYGHQKGDDCLQKVANTLVDIAKR 359 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 46.6 bits (109), Expect = 4e-07 Identities = 40/151 (26%), Positives = 70/151 (46%), Gaps = 10/151 (6%) Query: 9 VLLVDDQRENLVALSRALDSLPVEIITANSGQEAIXXXXXXEFALMILAQEMSELDGLNT 68 +LLVDD+ LS+AL I A+ G+ + ++ L+IL + ++ GL Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 69 AKILRSFPLAEQTPIIFLARQEIITKAMAEINILGLVDFLAQPPNQNFLQVKAKLYLQLF 128 + +R L TP++FL ++ + +A ++ G D+L +P L + + L+ Sbjct: 64 CRQIRI--LGHSTPVLFLTAKDTLDDRVAGLD-AGGDDYLIKPFELRELLARVRALLRRQ 120 Query: 129 QQKQTL-----QYYNNYLESSVKSVHFDVKN 154 +T+ NN L SV +V DV N Sbjct: 121 SHGETITETLGAVKNNLL--SVNNVSLDVAN 149 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 42.7 bits (99), Expect = 6e-06 Identities = 39/120 (32%), Positives = 59/120 (49%), Gaps = 7/120 (5%) Query: 8 KVLLVDDQRENLVALSRALDSLPVEIITANSGQEAIXXXXXXEFALMILAQEMSELDGLN 67 K+LLVDD E LS L+ ++ TAN+G EA+ + L++L M +L+G+ Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEAL-QKLNESYKLVLLDVMMPKLNGIE 61 Query: 68 TAKILRSFPLAEQTPIIFL-ARQEIITKAMAEINILGLVDFLAQPPNQNFLQVKAKLYLQ 126 T K +R P++ L AR E I + + LG D L +P N L + K L+ Sbjct: 62 TLKEIRK---VSNVPVMMLTARGEDIDRVLG--LELGADDCLPKPFNDRELIARIKAILR 116 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.137 0.385 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 112,081 Number of Sequences: 78 Number of extensions: 5429 Number of successful extensions: 149 Number of sequences better than 1.0e-05: 20 Number of HSP's better than 0.0 without gapping: 7 Number of HSP's successfully gapped in prelim test: 13 Number of HSP's that attempted gapping in prelim test: 46 Number of HSP's gapped (non-prelim): 55 length of query: 1178 length of database: 48,235 effective HSP length: 73 effective length of query: 1105 effective length of database: 42,541 effective search space: 47007805 effective search space used: 47007805 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 98 (42.4 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001575 slr0312 (209 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001575 slr0312 400 e-114 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 137 3e-35 SYNE-PCC-01-000608 sll0921 130 2e-33 SYNE-PCC-01-001075 sll1592 128 2e-32 SYNE-PCC-01-001160 sll1708 119 6e-30 SYNE-PCC-01-002731 slr1909 82 2e-18 SYNE-PCC-01-002635 slr1783 72 2e-15 SYNE-PCC-01-002489 slr1588 67 3e-14 SYNE-PCC-01-001039 sll1544 67 6e-14 SYNE-PCC-01-000511 sll0782 58 2e-11 SYNE-PCC-01-001132 sll1672 57 3e-11 SYNE-PCC-01-002033 slr0947 55 1e-10 SYNE-PCC-01-000800 sll1228 55 1e-10 SYNE-PCC-01-002873 slr2098 55 2e-10 SYNE-PCC-01-002618 slr1760 55 2e-10 SYNE-PCC-01-000414 sll0649 53 9e-10 SYNE-PCC-01-002221 slr1213 52 2e-09 SYNE-PCC-01-001461 slr0115 52 2e-09 SYNE-PCC-01-002672 slr1837 51 2e-09 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 49 1e-08 SYNE-PCC-01-002951 ssl0564 47 4e-08 SYNE-PCC-01-002617 slr1759 46 1e-07 SYNE-PCC-01-001306 sll1905 45 1e-07 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 45 1e-07 SYNE-PCC-01-002086 slr1042 45 2e-07 SYNE-PCC-01-002879 slr2104 43 7e-07 SYNE-PCC-01-002788 slr1982 43 9e-07 SYNE-PCC-01-002486 slr1584 42 2e-06 SYNE-PCC-01-000242 sll0396 40 4e-06 SYNE-PCC-01-000518 sll0789 40 8e-06 SYNE-PCC-01-000877 sll1330 39 1e-05 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 400 bits (1029), Expect = e-114 Identities = 209/209 (100%), Positives = 209/209 (100%) Query: 1 MSQATTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDL 60 MSQATTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDL Sbjct: 1 MSQATTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDL 60 Query: 61 RMPEVEGVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAI 120 RMPEVEGVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAI Sbjct: 61 RMPEVEGVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAI 120 Query: 121 RTVHRGQKYIPPDVGAKLVQRLSNPELSERELEVLGSLAQGMSNADIATALSIGEGTVKS 180 RTVHRGQKYIPPDVGAKLVQRLSNPELSERELEVLGSLAQGMSNADIATALSIGEGTVKS Sbjct: 121 RTVHRGQKYIPPDVGAKLVQRLSNPELSERELEVLGSLAQGMSNADIATALSIGEGTVKS 180 Query: 181 HVNRILNKLDVGDRTQAVIVAVKRGIVSL 209 HVNRILNKLDVGDRTQAVIVAVKRGIVSL Sbjct: 181 HVNRILNKLDVGDRTQAVIVAVKRGIVSL 209 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 137 bits (345), Expect = 3e-35 Identities = 73/198 (36%), Positives = 118/198 (59%), Gaps = 4/198 (2%) Query: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 ++VL+ DDH + R+G+ ++ D + +V+A +G + I++ + PDV ++DL M + Sbjct: 5 LKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLS 64 Query: 67 GVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHRG 126 G+ + + A ARI++LT D+ DIY + AGA GYLLK+TEPD LL I+ + +G Sbjct: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQG 124 Query: 127 QKYIPPDVGAKLVQRL--SNP--ELSERELEVLGSLAQGMSNADIATALSIGEGTVKSHV 182 + + + L++R NP L++RE+ VL +A G+SN IA L I E TVK H+ Sbjct: 125 EVILSDSIKNLLLERTHEDNPLDSLTDREMGVLRQIATGLSNKQIAAQLFISEETVKVHI 184 Query: 183 NRILNKLDVGDRTQAVIV 200 +L KL+V R A ++ Sbjct: 185 RNLLRKLNVHSRVAATVL 202 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 130 bits (328), Expect = 2e-33 Identities = 71/219 (32%), Positives = 117/219 (53%), Gaps = 17/219 (7%) Query: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 IR+ + +D + RQGL + +P + + +A NG + + ++ +PDV ++D+ +P++ Sbjct: 4 IRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMN 63 Query: 67 GVAAISAICA--IVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVH 124 G+ + + R+++LT D +E + AGA Y +K++ + L+ AI+ H Sbjct: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQATH 123 Query: 125 RGQKYIPPDVGAKLVQRLSNPE---------------LSERELEVLGSLAQGMSNADIAT 169 G +I P + ++ E L+ERELEVL + G SNADIA Sbjct: 124 GGFAWIDPAIARIVLAHAPGAEPSEPSSPSRTSLSYGLTERELEVLQLIVDGCSNADIAE 183 Query: 170 ALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGIVS 208 L I GTVK+HV ILNKL DRTQA + A++ G+V+ Sbjct: 184 KLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGLVN 222 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 128 bits (321), Expect = 2e-32 Identities = 79/221 (35%), Positives = 127/221 (57%), Gaps = 16/221 (7%) Query: 5 TTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPE 64 T+IR+L+ +D +FR GL T ++++P + V +AE+GE AIA + DV ++D+ +P Sbjct: 6 TSIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPG 65 Query: 65 VEGVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVH 124 + G+ A I I +++LT++ I R ++A A+GY +K + L+ AIR+V Sbjct: 66 IGGIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSVA 125 Query: 125 RG------------QKYIPPDVGAKLVQRLSNPE----LSERELEVLGSLAQGMSNADIA 168 G Q V L++ + L++RELE+L +A+G SN +IA Sbjct: 126 AGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKGKSNQEIA 185 Query: 169 TALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGIVSL 209 L I GTV+ HV+ IL KL+V DRTQA ++A++R +VSL Sbjct: 186 DELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRLVSL 226 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 119 bits (299), Expect = 6e-30 Identities = 65/210 (30%), Positives = 110/210 (52%), Gaps = 9/210 (4%) Query: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 +++LI +D + + GL + ++I + +NG A+ PD+ +MD+ +P ++ Sbjct: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 Query: 67 GVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHRG 126 G+ A I I+VLT++ +I L +GA Y +K + L+ AI G Sbjct: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAAQDG 136 Query: 127 QKYIPPDVGAKLVQRLSNP---------ELSERELEVLGSLAQGMSNADIATALSIGEGT 177 Y+ P + +V+ L P LSERE++VL + +G SN +IA L + T Sbjct: 137 ATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVEGKSNQEIAQTLYLSTNT 196 Query: 178 VKSHVNRILNKLDVGDRTQAVIVAVKRGIV 207 +K+HV I+NKL V DR QA ++A++ G+V Sbjct: 197 IKTHVRGIMNKLSVDDRVQAAVIALRSGLV 226 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 81.6 bits (200), Expect = 2e-18 Identities = 53/180 (29%), Positives = 96/180 (53%), Gaps = 9/180 (5%) Query: 35 IAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGVAAISAICAI--VKFARIIVLTTYDSD 92 + A NG +A+ L PD+ + D+ MPE++G A I + + + ++ L+ Sbjct: 34 VTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQS 93 Query: 93 EDIYRGLQAGAKGYLLKETEPDELLNAIRTVHRGQKYI------PPDVGAKLVQRLSNPE 146 + +GL GA Y+ K EP+EL +++ R + P + A+ VQ + E Sbjct: 94 HNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQHNNHPLEDNAR-VQVARDVE 152 Query: 147 LSERELEVLGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGI 206 L+ E +V+ +AQG++N +IA L + + TV+SHV+ +LNK + +RT+ A+++ I Sbjct: 153 LTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELARWAIQKSI 212 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 71.6 bits (174), Expect = 2e-15 Identities = 56/232 (24%), Positives = 100/232 (43%), Gaps = 29/232 (12%) Query: 2 SQATTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLR 61 + A I +L+ DD R+ + + D +V A N +A + H P + + D+ Sbjct: 51 AMAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAA-NATEAWDYLQHHLPALVISDIM 109 Query: 62 MPEVEGVAAISAICAIVKFAR--IIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNA 119 MP+V+G + + +F ++ LT D +G Q G +L K +PDEL Sbjct: 110 MPQVDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAI 169 Query: 120 IRTVHRGQKYIPPDVGAK-------------LVQRLSNP------------ELSERELEV 154 +R + Q+ D G++ L +++ P + + RE V Sbjct: 170 VRNLLARQQ-ASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSV 228 Query: 155 LGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGI 206 L ++QG+ N +IA L V+ +V+R+ K RT+ V A++ G+ Sbjct: 229 LDLVSQGLMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHGL 280 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 67.4 bits (163), Expect = 3e-14 Identities = 48/173 (27%), Positives = 87/173 (50%), Gaps = 16/173 (9%) Query: 9 VLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFE--EHQPDVTLMDLRMPEVE 66 +L+ +D AI R+ + ++ + I +AENG A+ L E PD+ + D+ MPE++ Sbjct: 4 ILVVEDEAIIRELIGETLSLEN--YKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMD 61 Query: 67 GVAAISAICAIVKFARI--IVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVH 124 G I+A+ K A I I LT + +D +G+ +GA YL+K + ++LLNA+ + Sbjct: 62 GHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRL 121 Query: 125 RGQ----KYIPPDVGAKLVQR------LSNPELSERELEVLGSLAQGMSNADI 167 + Q + + + L +R + P L+ E E+ L G++ + Sbjct: 122 QKQAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAEIWRDLEVGLNTGQV 174 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 66.6 bits (161), Expect = 6e-14 Identities = 48/195 (24%), Positives = 98/195 (50%), Gaps = 3/195 (1%) Query: 17 IFRQGLATIINRDPDMQVIAQAENGEQAIALFEEH-QPDVTLMDLRMPEVEGVAAISAIC 75 +F +A I ++ P+ + + +A+ FE+ +P V ++ R+ + G+ + + Sbjct: 34 LFAVSVARISSQRPNKKKVKIFTLQSEALTYFEQQPEPLVVVICQRLEDGSGLDLLKQLK 93 Query: 76 AIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLN-AIRTVHRGQKYIPPDV 134 A + + ++L D + Q GA L+ + + +N A+ + +G+ YI + Sbjct: 94 AHARSPQCLLLLLNDHAAIVEEAQQYGADAIFLESSLGNGEINLAVECLLQGRTYIDSRL 153 Query: 135 GAKLVQRLSNP-ELSERELEVLGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGD 193 A R S EL++RE+ +L +A+G +N++I L + TV+ +V I+ KL+ D Sbjct: 154 EAIADYRKSQKDELTQREVAILRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARD 213 Query: 194 RTQAVIVAVKRGIVS 208 RT A I ++ G ++ Sbjct: 214 RTSAAIAGLREGYLT 228 >SYNE-PCC-01-000511 sll0782 Length = 369 Score = 58.2 bits (139), Expect = 2e-11 Identities = 31/67 (46%), Positives = 43/67 (64%) Query: 141 RLSNPELSERELEVLGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGDRTQAVIV 200 +L+ LSERE E++ LAQG+ + DIA L I E TVK HVN L+KL+ +R QA+ Sbjct: 303 KLNKHLLSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQ 362 Query: 201 AVKRGIV 207 A +G + Sbjct: 363 ATVQGFI 369 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 57.4 bits (137), Expect = 3e-11 Identities = 39/125 (31%), Positives = 66/125 (52%), Gaps = 5/125 (4%) Query: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEG 67 ++L+ DD ++ RQ L ++ P I +A NG++AIAL+E +P + MD+RMP ++G Sbjct: 631 KILVVDDKSVNRQLLIKLLA--PFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDG 688 Query: 68 VAAISAICAIVK--FARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHR 125 A I VK ++ LT +E+ L AG +L K + + +++ T H Sbjct: 689 YEATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTIFDSL-TKHL 747 Query: 126 GQKYI 130 G Y+ Sbjct: 748 GVTYV 752 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 55.5 bits (132), Expect = 1e-10 Identities = 38/115 (33%), Positives = 58/115 (50%), Gaps = 3/115 (2%) Query: 11 IADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGVAA 70 + DD A R+ L T ++ + A +GE+AIA F E PD+ ++D+ MP+++G Sbjct: 1 MVDDEASIRRILETRLSMIG--YEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGV 58 Query: 71 ISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHR 125 + II+LT D GL+ GA Y++K P EL IR+V R Sbjct: 59 CQELRKESDIP-IIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLR 112 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 55.5 bits (132), Expect = 1e-10 Identities = 51/164 (31%), Positives = 77/164 (46%), Gaps = 13/164 (7%) Query: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEG 67 +VL+ DD R L ++ V+ +AENGE AIAL+E P V LMD++MP ++G Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGF--VVQEAENGEMAIALWESWHPQVILMDMQMPVLDG 476 Query: 68 VAAISAICAIV--KFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLN------A 119 + I A + II LT + + L AG +L K P+EL+ A Sbjct: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLA 536 Query: 120 IRTVHRGQKYIPPDVGAKLVQRLSNPELSERELEVLGSLAQGMS 163 + +GQ PP + ++ P LSE+ + S Q M+ Sbjct: 537 VALPSQGQ---PPASPLRPFPVITAPSLSEQLAKTPQSWRQKMA 577 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 55.1 bits (131), Expect = 2e-10 Identities = 46/152 (30%), Positives = 74/152 (48%), Gaps = 4/152 (2%) Query: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEG 67 R+L+ +D+ I Q +A + RD V A NG A+ + + LMD++MPE++G Sbjct: 926 RILLVEDNEI-NQEVAAELLRDVGFNVDVAA-NGLIALERLNNNAYALVLMDMQMPEMDG 983 Query: 68 VAAISAICAIVKFAR--IIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHR 125 + A AI ++A+ I+ +T D R LQAG +L K EP+EL N + Sbjct: 984 IEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKLLHWIP 1043 Query: 126 GQKYIPPDVGAKLVQRLSNPELSERELEVLGS 157 + P+ + S+PE+S + L S Sbjct: 1044 VDSPLAPETIEESAINTSDPEISIPHIPGLNS 1075 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 54.7 bits (130), Expect = 2e-10 Identities = 30/109 (27%), Positives = 55/109 (50%), Gaps = 4/109 (3%) Query: 3 QATTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRM 62 + ++L+ DD R L + ++ + A NGE+A+ F E +P+V L+D M Sbjct: 8 ETAAAKILVVDDDGFMRMQLRVYLQKEGHR--VELATNGEEALTKFAEIKPEVVLLDAVM 65 Query: 63 PEVEGVAAISAICAIVK--FARIIVLTTYDSDEDIYRGLQAGAKGYLLK 109 P ++G A A+ I + ++++T D + + R +AGA Y+ K Sbjct: 66 PVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTK 114 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 52.8 bits (125), Expect = 9e-10 Identities = 34/121 (28%), Positives = 61/121 (50%), Gaps = 4/121 (3%) Query: 9 VLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGV 68 +LI +D Q + + R+ ++ +GE + +F+E PD+ ++DL +P+++G+ Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTN--DGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 Query: 69 AAISAICAI--VKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHRG 126 + I K I++LT + D GL GA YL+K P EL+ +R + R Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRR 131 Query: 127 Q 127 Q Sbjct: 132 Q 132 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 51.6 bits (122), Expect = 2e-09 Identities = 28/114 (24%), Positives = 59/114 (51%), Gaps = 3/114 (2%) Query: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMP-EVE 66 ++LI +D + Q +A ++ D ++ A +G A+ E PD+ L+D+R+ E++ Sbjct: 4 KILIVEDERLVAQHIAQLLKSD-GYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 Query: 67 GVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAI 120 G+ I ++ I+ LT + E + R + +GY++K ++LL+ + Sbjct: 63 GIEVAERIKSLYSIP-IVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 51.6 bits (122), Expect = 2e-09 Identities = 37/126 (29%), Positives = 63/126 (50%), Gaps = 4/126 (3%) Query: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEG 67 R+LI DD ++ IN + + QA +G + AL + QPD+ ++DL +P+V+G Sbjct: 3 RILIIDDDPAISDLVS--INLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 Query: 68 VAAISAICAIVKFARI--IVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHR 125 + + A I ++LT +D +G +GA YL K + +E+L +R + R Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 Query: 126 GQKYIP 131 IP Sbjct: 121 RTDRIP 126 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 51.2 bits (121), Expect = 2e-09 Identities = 33/121 (27%), Positives = 57/121 (47%), Gaps = 2/121 (1%) Query: 9 VLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGV 68 +L+ DD + L+ + I A+ G+ +A+ Q D+ ++D +P+V G+ Sbjct: 4 ILLVDDENALTEPLSKALGHQG--HTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 Query: 69 AAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHRGQK 128 I + ++ LT D+ +D GL AG YL+K E ELL +R + R Q Sbjct: 62 EICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQS 121 Query: 129 Y 129 + Sbjct: 122 H 122 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 48.9 bits (115), Expect = 1e-08 Identities = 34/126 (26%), Positives = 60/126 (47%), Gaps = 4/126 (3%) Query: 5 TTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPE 64 TT ++L+ +D + R L I + + + +AENG + + H ++ +MD+ +P Sbjct: 2 TTPKILVVEDEIVTRNTLKGIF--EAEGYDVFEAENGVEMHHILANHNINLVVMDINLPG 59 Query: 65 VEGVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDEL-LNAIRTV 123 G+ + + +I LT D++ D GL+ GA YL K P EL + A + Sbjct: 60 KNGLLLARELREELSLP-LIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLL 118 Query: 124 HRGQKY 129 HR + Sbjct: 119 HRAMPH 124 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 47.4 bits (111), Expect = 4e-08 Identities = 25/63 (39%), Positives = 41/63 (65%) Query: 147 LSERELEVLGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGI 206 LS+RELE+L +A G++N +++ L I + TV +HV+ IL K + +R + V A++ G Sbjct: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWGK 71 Query: 207 VSL 209 V L Sbjct: 72 VCL 74 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 45.8 bits (107), Expect = 1e-07 Identities = 30/118 (25%), Positives = 60/118 (50%), Gaps = 5/118 (4%) Query: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 +++L+A+D+ + ++ ++N +A A NG++ I E+ D+ LMD++MP ++ Sbjct: 1190 LQILLAEDNLVNQKVAHQMLNNLG--YPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMD 1247 Query: 67 GVAA---ISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIR 121 G+ A I + + RI+ +T D L AG GY+ K ++L ++ Sbjct: 1248 GITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQ 1305 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 45.4 bits (106), Expect = 1e-07 Identities = 34/132 (25%), Positives = 59/132 (44%), Gaps = 3/132 (2%) Query: 40 NGEQAIALFEEHQPDVTLMDLRMPEVEGVAAISAI--CAIVKFARIIVLTTYDSDEDIYR 97 +G +A+ + QPD+ L+DL MP ++G+ + + +I LT + +D+ + Sbjct: 49 SGPEALQRVTQAQPDLILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQ 108 Query: 98 GLQAGAKGYLLKETEPDELLNAIRTVHRGQKYIPPDVGAKLVQRLSNPELSERELEVLGS 157 GA Y+ K P ELL ++T H K ++ L+++ E LG Sbjct: 109 AFAKGAVDYVTKPFSPPELLARVKT-HLELKQTRDNLHHTLLEQARTAEALACTSTRLGI 167 Query: 158 LAQGMSNADIAT 169 L Q M + T Sbjct: 168 LVQNMQAGVLMT 179 Score = 44.7 bits (104), Expect = 2e-07 Identities = 31/121 (25%), Positives = 60/121 (49%), Gaps = 5/121 (4%) Query: 4 ATTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMP 63 ++ + +L+A+D+ I +Q ++ + + NG++A++ + DV LMD+ MP Sbjct: 737 SSNLTILLAEDNLINQQVAKLLLKKLG--YPVDVVNNGQEALSALAKGDYDVVLMDVEMP 794 Query: 64 EVEGVAAISAICAIVKFAR---IIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAI 120 E++G+ A I + II +T Y + D R L +G Y+ K + L A+ Sbjct: 795 EMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQAL 854 Query: 121 R 121 + Sbjct: 855 Q 855 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 45.4 bits (106), Expect = 1e-07 Identities = 36/122 (29%), Positives = 59/122 (48%), Gaps = 5/122 (4%) Query: 6 TIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEV 65 T ++LI +D R+ +A +++ + +A + + AI +E+ P + L+D +P Sbjct: 2 TRKILIVEDECAIREMIALFLSQK--YYDVIEASDFKTAINKIKEN-PKLILLDWMLPGR 58 Query: 66 EGVAAISAICAIVKFARI--IVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTV 123 G+ I I +A I I+LT ++ED L AGA Y+ K P LL I V Sbjct: 59 SGIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAV 118 Query: 124 HR 125 R Sbjct: 119 WR 120 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 45.1 bits (105), Expect = 2e-07 Identities = 31/119 (26%), Positives = 59/119 (49%), Gaps = 4/119 (3%) Query: 9 VLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGV 68 VL+ +D + R+ ++ I+ +D QV + G +A+ + PD+ ++D+ MP + G Sbjct: 30 VLLVEDSSSQREMISGIL-KDHGWQVTIACD-GVEALEKLQNFSPDLVVLDIVMPRMNGY 87 Query: 69 AAISAICAIVKFARIIVLTTYDSDEDIYR--GLQAGAKGYLLKETEPDELLNAIRTVHR 125 I + K + V+ E+ R G++ GA Y+ K +P EL+ I+ + R Sbjct: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 43.1 bits (100), Expect = 7e-07 Identities = 37/136 (27%), Positives = 64/136 (47%), Gaps = 12/136 (8%) Query: 1 MSQATTIRVLIADDHAIFRQGLATII-NRDPDMQVIAQAENGEQAIALFEEHQPDVTLMD 59 ++Q +L+ +D+ I R+ ++ ++ +QV A NG++A+ L + D LMD Sbjct: 712 ITQLEGASILLVEDNEINREFAHDLLTSKGLRVQV---ANNGQEALTLLTSNTYDAILMD 768 Query: 60 LRMPEVEGVAAISAI--CAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELL 117 ++MP + G A AI + II +T D + L AG +L K +PD L Sbjct: 769 IQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLF 828 Query: 118 NAIRTVHRGQKYIPPD 133 + +IPP+ Sbjct: 829 QTL------AHWIPPN 838 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 42.7 bits (99), Expect = 9e-07 Identities = 35/118 (29%), Positives = 54/118 (45%), Gaps = 4/118 (3%) Query: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEG 67 +VL+ +D+ + R L+ + R VIA +GEQA+ + P + LMD+ +P ++G Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAV--DGEQAVTMAISESPQLILMDMSLPIIDG 63 Query: 68 VAAISAICAIVKFAR--IIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTV 123 A I A II LT + D R + AG Y K E LL + + Sbjct: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 42.0 bits (97), Expect = 2e-06 Identities = 27/119 (22%), Positives = 56/119 (47%), Gaps = 2/119 (1%) Query: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 +R+L+ +D + LA ++ + + A + A + D+ ++D+ +PE++ Sbjct: 1 MRILLVEDDLPLAETLAEALS--DQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELD 58 Query: 67 GVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHR 125 G+ + I+++T D+ D GL AGA Y++K + EL +R + R Sbjct: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLR 117 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 40.4 bits (93), Expect = 4e-06 Identities = 23/87 (26%), Positives = 42/87 (48%) Query: 35 IAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGVAAISAICAIVKFARIIVLTTYDSDED 94 ++ A +G + +E PD+ +++ +P + G+ + + II++T D E+ Sbjct: 29 VSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLELCRRLREMGSRIPIILITAKDDVEE 88 Query: 95 IYRGLQAGAKGYLLKETEPDELLNAIR 121 GL AGA Y++K DE IR Sbjct: 89 RVMGLDAGADDYIVKPFNSDEFFARIR 115 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 39.7 bits (91), Expect = 8e-06 Identities = 32/128 (25%), Positives = 56/128 (43%), Gaps = 4/128 (3%) Query: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTL--MDLRMPE 64 +R+L+ +D L + R+ V+ ++G A + ++ + TL D +P Sbjct: 1 MRLLLVEDEPDLGMALEKALRREN--YVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPG 58 Query: 65 VEGVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVH 124 + G+ + I++LT D D GL AGA YL+K ELL +R++ Sbjct: 59 LSGLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQ 118 Query: 125 RGQKYIPP 132 R + P Sbjct: 119 RRSPELQP 126 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 39.3 bits (90), Expect = 1e-05 Identities = 45/190 (23%), Positives = 80/190 (42%), Gaps = 21/190 (11%) Query: 34 VIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGVAAISAICAIVKFARIIVLTTYDSDE 93 ++ Q QA F P + ++D + + +G+ + + + I +L+ D+++ Sbjct: 29 LVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIELCRWLYQQHQ-SMIFILSAKDTEK 87 Query: 94 DIYRGLQAGAKGYLLKETEPDELLNAIRTVHRGQKYIPP----DVGA---KLVQRL---- 142 DI GL+AGA YL K E L I + R + + D G LVQR Sbjct: 88 DIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVRTVAAPLLLDYGVLKIDLVQRRVEYQ 147 Query: 143 -SNPELSERELEVLGSLAQGMSNADIATAL--------SIGEGTVKSHVNRILNKLDVGD 193 + +L+ +E +L L Q +A T L T+ +HV + K++ Sbjct: 148 GNFVDLTPQEFSLLYVLTQAEGSALSRTELLRRAWPEAIDNPRTIDTHVLSLRKKIETDP 207 Query: 194 RTQAVIVAVK 203 R ++I V+ Sbjct: 208 RQPSLIQTVR 217 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.135 0.365 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 17,567 Number of Sequences: 78 Number of extensions: 695 Number of successful extensions: 53 Number of sequences better than 1.0e-05: 31 Number of HSP's better than 0.0 without gapping: 13 Number of HSP's successfully gapped in prelim test: 18 Number of HSP's that attempted gapping in prelim test: 23 Number of HSP's gapped (non-prelim): 34 length of query: 209 length of database: 48,235 effective HSP length: 59 effective length of query: 150 effective length of database: 43,633 effective search space: 6544950 effective search space used: 6544950 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 90 (39.3 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001690 slr0473 (748 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001690 slr0473 1496 0.0 SYNE-PCC-01-000295 sll0474 92 7e-21 SYNE-PCC-01-001517 slr0222 91 1e-20 SYNE-PCC-01-001306 sll1905 91 2e-20 SYNE-PCC-01-000800 sll1228 89 5e-20 SYNE-PCC-01-002879 slr2104 89 6e-20 SYNE-PCC-01-002873 slr2098 89 6e-20 SYNE-PCC-01-000542 sll0821 87 2e-19 SYNE-PCC-01-001509 slr0210 86 4e-19 SYNE-PCC-01-001280 sll1871 86 4e-19 SYNE-PCC-01-000891 sll1353 82 4e-18 SYNE-PCC-01-002617 slr1759 81 1e-17 SYNE-PCC-01-001294 sll1888 79 6e-17 SYNE-PCC-01-000985 sll1475 76 3e-16 SYNE-PCC-01-002778 slr1969 74 1e-15 SYNE-PCC-01-001132 sll1672 71 1e-14 SYNE-PCC-01-002220 slr1212 57 2e-10 SYNE-PCC-01-000983 sll1473 43 4e-06 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 1496 bits (3873), Expect = 0.0 Identities = 748/748 (100%), Positives = 748/748 (100%) Query: 1 MATTVQLSDQSLRQLETLAIHTAHLIQPHGLVVVLQEPDLTISQISANCTGILGRSPEDL 60 MATTVQLSDQSLRQLETLAIHTAHLIQPHGLVVVLQEPDLTISQISANCTGILGRSPEDL Sbjct: 1 MATTVQLSDQSLRQLETLAIHTAHLIQPHGLVVVLQEPDLTISQISANCTGILGRSPEDL 60 Query: 61 LGRTLGEVFDSFQIDPIQSRLTAGQISSLNPSKLWARVMGDDFVIFDGVFHRNSDGLLVC 120 LGRTLGEVFDSFQIDPIQSRLTAGQISSLNPSKLWARVMGDDFVIFDGVFHRNSDGLLVC Sbjct: 61 LGRTLGEVFDSFQIDPIQSRLTAGQISSLNPSKLWARVMGDDFVIFDGVFHRNSDGLLVC 120 Query: 121 ELEPAYTSDNLPFLGFYHMANAALNRLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDE 180 ELEPAYTSDNLPFLGFYHMANAALNRLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDE Sbjct: 121 ELEPAYTSDNLPFLGFYHMANAALNRLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDE 180 Query: 181 NNHGDVIAEDKRDDMEPYLGLHYPESDIPQPARRLFIHNPIRVIPDVYGVAVPLTPAVNP 240 NNHGDVIAEDKRDDMEPYLGLHYPESDIPQPARRLFIHNPIRVIPDVYGVAVPLTPAVNP Sbjct: 181 NNHGDVIAEDKRDDMEPYLGLHYPESDIPQPARRLFIHNPIRVIPDVYGVAVPLTPAVNP 240 Query: 241 STNRAVDLTESILRSAYHCHLTYLKNMGVGASLTISLIKDGHLWGLIACHHQTPKVIPFE 300 STNRAVDLTESILRSAYHCHLTYLKNMGVGASLTISLIKDGHLWGLIACHHQTPKVIPFE Sbjct: 241 STNRAVDLTESILRSAYHCHLTYLKNMGVGASLTISLIKDGHLWGLIACHHQTPKVIPFE 300 Query: 301 LRKACEFFGRVVFSNISAQEDTETFDYRVQLAEHEAVLLDKMTTAADFVEGLTNHPDRLL 360 LRKACEFFGRVVFSNISAQEDTETFDYRVQLAEHEAVLLDKMTTAADFVEGLTNHPDRLL Sbjct: 301 LRKACEFFGRVVFSNISAQEDTETFDYRVQLAEHEAVLLDKMTTAADFVEGLTNHPDRLL 360 Query: 361 GLTGSQGAAICFGEKLILVGETPDEKAVQYLLQWLENREVQDVFFTSSLSQIYPDAVNFK 420 GLTGSQGAAICFGEKLILVGETPDEKAVQYLLQWLENREVQDVFFTSSLSQIYPDAVNFK Sbjct: 361 GLTGSQGAAICFGEKLILVGETPDEKAVQYLLQWLENREVQDVFFTSSLSQIYPDAVNFK 420 Query: 421 SVASGLLAIPIARHNFLLWFRPEVLQTVNWGGDPNHAYEATQEDGKIELHPRQSFDLWKE 480 SVASGLLAIPIARHNFLLWFRPEVLQTVNWGGDPNHAYEATQEDGKIELHPRQSFDLWKE Sbjct: 421 SVASGLLAIPIARHNFLLWFRPEVLQTVNWGGDPNHAYEATQEDGKIELHPRQSFDLWKE 480 Query: 481 IVRLQSLPWQSVEIQSALALKKAIVNLILRQAEELAQLARNLERSNADLKKFAYIASHDL 540 IVRLQSLPWQSVEIQSALALKKAIVNLILRQAEELAQLARNLERSNADLKKFAYIASHDL Sbjct: 481 IVRLQSLPWQSVEIQSALALKKAIVNLILRQAEELAQLARNLERSNADLKKFAYIASHDL 540 Query: 541 QEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQL 600 QEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQL Sbjct: 541 QEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQL 600 Query: 601 TFTDVQEVVDKALANLKQRIEESGAEIEVGSMPAVMADQIQLMQVFQNLIANGIKFAGDK 660 TFTDVQEVVDKALANLKQRIEESGAEIEVGSMPAVMADQIQLMQVFQNLIANGIKFAGDK Sbjct: 601 TFTDVQEVVDKALANLKQRIEESGAEIEVGSMPAVMADQIQLMQVFQNLIANGIKFAGDK 660 Query: 661 SPKIKIWGDRQEDAWVFAVQDNGIGIDPQFFERIFVIFQRLHTRDEYKGTGMGLAICKKI 720 SPKIKIWGDRQEDAWVFAVQDNGIGIDPQFFERIFVIFQRLHTRDEYKGTGMGLAICKKI Sbjct: 661 SPKIKIWGDRQEDAWVFAVQDNGIGIDPQFFERIFVIFQRLHTRDEYKGTGMGLAICKKI 720 Query: 721 IEGHQGQIWLESNPGEGSTFYFSIPIGN 748 IEGHQGQIWLESNPGEGSTFYFSIPIGN Sbjct: 721 IEGHQGQIWLESNPGEGSTFYFSIPIGN 748 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 91.7 bits (226), Expect = 7e-21 Identities = 71/254 (27%), Positives = 123/254 (48%), Gaps = 17/254 (6%) Query: 509 LRQAEELAQLARNLERSNADLK-KFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDEDAK 567 +++AEE +L+ + LK +F SH+L+ PLN + ++ L+ + L+ Sbjct: 397 IKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQV 456 Query: 568 DFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLTF--TDVQEVVDKALANLKQRIEESGA 625 ++ + +LI+DIL +K++ L T V +V+ +L ++Q + Sbjct: 457 QSLEIVENSGRHLLSLINDILDLSKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQI 516 Query: 626 EIE---VGSMPAVMADQIQLMQVFQNLIANGIKFAGD------KSPKIKIWGDRQEDA-- 674 + + ++P V+ D+ +L QV NL+ N IKF + ++ IK G + Sbjct: 517 NLSSEIIPNLPDVLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPP 576 Query: 675 -WVFAVQDNGIGIDPQFFERIFVIFQRLHT--RDEYKGTGMGLAICKKIIEGHQGQIWLE 731 F V D GIGI+ IF F ++ + Y GTG+GL++ KKI+E H G + + Sbjct: 577 QLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVT 636 Query: 732 SNPGEGSTFYFSIP 745 S EGS F +IP Sbjct: 637 SKLNEGSRFKITIP 650 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 90.9 bits (224), Expect = 1e-20 Identities = 63/248 (25%), Positives = 119/248 (47%), Gaps = 7/248 (2%) Query: 504 IVNLILRQAEELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQLLEMRYSEALD 563 I ++ + E L L + E + A +F I SH+ + PL + + +LL + Sbjct: 916 ITDIKRAEIETLRSLVKERELNEAK-SQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLST 974 Query: 564 EDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLTFTDV--QEVVDKALANLKQRI- 620 E + +I+ ++ LIDD+L+ ++ D ++ ++ + + + + N + Sbjct: 975 EKKQQYINNIQNSSQRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLG 1034 Query: 621 EESGAEIEVGSMPAV--MADQIQLMQVFQNLIANGIKFAGDKSPKIKIWGDRQEDAWVFA 678 E E+ P + D L + +N+++N IK++ S I + + E+ +F Sbjct: 1035 SEHNFELNYHLKPDEHSLVDVRLLRHILENILSNAIKYSAPGST-ITLDISKDEEHLLFQ 1093 Query: 679 VQDNGIGIDPQFFERIFVIFQRLHTRDEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGS 738 V+D GIGI Q E++F F R + GTG+GL+I K+ +E G I + S PG+G+ Sbjct: 1094 VRDEGIGIPLQDQEKLFEAFHRASNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGT 1153 Query: 739 TFYFSIPI 746 T +P+ Sbjct: 1154 TMVIKLPL 1161 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 90.5 bits (223), Expect = 2e-20 Identities = 85/340 (25%), Positives = 144/340 (42%), Gaps = 35/340 (10%) Query: 434 HNFLLWFRPEVLQTVNWGGDPNHAYEATQEDGKIELHPRQSFDLWKEIVRLQSLPWQSVE 493 HNFL PE L V + +E + + F L+++I + + + + ++ Sbjct: 229 HNFLAIESPEPLLKVELALEDGRFFERDYVPIMLGDSSQGHFWLYRDISQRKQV--EMIQ 286 Query: 494 IQSALALKKAIVNLILRQAEELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQL 553 QS L +++ + + Q +EL E +N +F SH+++ P+N + L Sbjct: 287 GQS-LEMERRMRQQLAEQNQELVAATTAAEAANRSKSEFLATMSHEIRTPMNAIIGMTGL 345 Query: 554 LEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLTFTD------VQE 607 L L K F + TLI+DIL ++K++ L ++E Sbjct: 346 L---LDTDLTTQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEE 402 Query: 608 VVDKALANLKQRIEESGAEIEVGSMPAVMADQIQLMQVFQNLIANGIKFAGDKSPKIKIW 667 +D + + +Q+ P + D +L Q+ NL++N +KF K+ + Sbjct: 403 ALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVE 462 Query: 668 -----GDRQEDAWVFAVQDNGIGIDPQFFERIFVIFQRLHTR--DEYKGTGMGLAICKKI 720 + E FAVQD GIGI P + +F F + ++ + GTG+GLAIC ++ Sbjct: 463 VVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRL 522 Query: 721 IEGHQGQIWLESN----------------PGEGSTFYFSI 744 G IW ESN EGSTFYF++ Sbjct: 523 TALMGGTIWAESNGCVVGNPPELWQIGQPTIEGSTFYFTV 562 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 89.0 bits (219), Expect = 5e-20 Identities = 83/266 (31%), Positives = 123/266 (46%), Gaps = 25/266 (9%) Query: 497 ALALKKAIVNLILRQAEELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQLLEM 556 A+A + L QA+E A A N +F SH+L+ PLN + + QLL Sbjct: 137 AIAQARHQAETTLTQAKEAADAA------NRAKTEFLASISHELRTPLNAIIGFSQLLHR 190 Query: 557 RYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLT--FTDVQEVVDKALA 614 S A D I+ + G L++ LI+DIL +K++ L D ++D A Sbjct: 191 DPSLAPHRPTLDIINRS--GEHLLE-LINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQA 247 Query: 615 NLKQRIEESGAEIEVGSMPAV----MADQIQLMQVFQNLIANGIKFA--GDKSPKIKIWG 668 + R +E ++V P V D +L QV NL+AN IKF G + K+K Sbjct: 248 LFQLRAQEKQLLLKVERSPEVPEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLT 307 Query: 669 DRQEDA------WV-FAVQDNGIGIDPQFFERIFVIFQRLHTR-DEYKGTGMGLAICKKI 720 Q D W+ F V D G GI + +FV F + T +G G+GL I +K Sbjct: 308 APQTDEGQGASIWLHFLVSDTGPGIAAHEMDELFVPFAQTETGLKSCQGNGLGLPISQKF 367 Query: 721 IEGHQGQIWLESNPGEGSTFYFSIPI 746 ++ GQI + S +GS F+F+IP+ Sbjct: 368 VQLMGGQIQVRSKVDQGSAFFFAIPV 393 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 88.6 bits (218), Expect = 6e-20 Identities = 66/243 (27%), Positives = 120/243 (49%), Gaps = 16/243 (6%) Query: 518 LARNLERSNADLKKFAYIA--SHDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVT 575 L L A K ++A SH+++ P+N + + + E+ L ++++ Sbjct: 445 LEAKLVAEGATKAKSEFLANMSHEIRTPMNAI---IGMSELVLQTDLTSQQRNYLQKVQY 501 Query: 576 GVSLMQTLIDDILTYAKVDTQYAQLTFT--DVQEVVDKALANLKQRIEESGA----EIEV 629 L+ +I++IL ++K++ +L V+EV+ + L + E G ++ Sbjct: 502 AGELLLGIINNILDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDP 561 Query: 630 GSMPAVMADQIQLMQVFQNLIANGIKFAGDKSPKIK---IWGDRQEDAWVFAVQDNGIGI 686 P ++ D+++L Q+ NL N +KF I+ + + ++ F+V D GIG+ Sbjct: 562 RIPPILVGDRLRLSQILINLGNNAVKFTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGL 621 Query: 687 DPQFFERIFVIFQR--LHTRDEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSI 744 P ++F F + T +Y GTG+GLAI K + E G IWLES G+GSTF+F++ Sbjct: 622 TPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTV 681 Query: 745 PIG 747 +G Sbjct: 682 CLG 684 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 88.6 bits (218), Expect = 6e-20 Identities = 70/249 (28%), Positives = 124/249 (49%), Gaps = 24/249 (9%) Query: 509 LRQAEELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDEDAKD 568 +++A+ELA+ A R AD F SH+++ P+N V + + + L ++ Sbjct: 513 MKRAKELAEEA---SRIKAD---FLANMSHEIRTPMNAV---IGMTHLALKTDLTPRQRE 563 Query: 569 FIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLTFTDVQEVVDKALANLKQRIEESGA--- 625 ++ + +I+DIL ++K++ +L + +DK L N+ I E Sbjct: 564 YLHKIRFSGQHLLGVINDILDFSKIEA--GKLPMESIDFDLDKVLDNVATLISEKATNKG 621 Query: 626 -----EIEVGSMPAVMADQIQLMQVFQNLIANGIKFA--GDKSPKIKIWGDRQEDAWVF- 677 +I+ + D ++L Q+ N N +KF GD + +++ R +D ++ Sbjct: 622 LELLFDIDRNLPRHFIGDPLRLGQILINYANNAVKFTEQGDITIVVRLQEYRDQDVVLYL 681 Query: 678 AVQDNGIGIDPQFFERIFVIFQRLH--TRDEYKGTGMGLAICKKIIEGHQGQIWLESNPG 735 AV+D GIGI P+ +F FQ+ T + GTG+GLAICK+I E G++ +ES G Sbjct: 682 AVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYG 741 Query: 736 EGSTFYFSI 744 +GSTF+ + Sbjct: 742 QGSTFWAKV 750 >SYNE-PCC-01-000542 sll0821 Length = 1276 Score = 87.0 bits (214), Expect = 2e-19 Identities = 53/156 (33%), Positives = 82/156 (52%), Gaps = 9/156 (5%) Query: 144 LNRLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDENNHGDVIAED-KRDDMEPYLGLH 202 +N+ + LR+ VIVEE R G DRV +Y+F + G+V+AE R + LGLH Sbjct: 15 INKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFASDGSGEVLAEAVNRAALPSLLGLH 74 Query: 203 YPESDIPQPARRLFIHNPIRVIPDVYG---VAVPLTPAVNPSTNRAVDLTESILRSAYHC 259 +P DIP AR + + DV + L+ ++P+ + T + C Sbjct: 75 FPVEDIPPQAREELGNQRKMIAVDVAHRRKKSHELSGRISPTEHSNGHYT-----TVDSC 129 Query: 260 HLTYLKNMGVGASLTISLIKDGHLWGLIACHHQTPK 295 H+ YL MGV +SLT+ +++D LWG++A HH P+ Sbjct: 130 HIQYLLAMGVLSSLTVPVMQDQQLWGIMAVHHSKPR 165 Score = 52.0 bits (123), Expect = 6e-09 Identities = 36/152 (23%), Positives = 63/152 (41%), Gaps = 25/152 (16%) Query: 145 NRLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDENNHGDVIAEDKRDDMEPYLGLHYP 204 N++R N+ D V EVR+ DRV+L++F+ G V+ E D + Sbjct: 932 NKIRASLNINDILYSTVTEVRQFLNTDRVVLFKFNSQWSGQVVTESHNDFCRSIINDEID 991 Query: 205 ESDIPQPARRLFIHNPIRVIPDVYGVAVPLTPAVNPSTNRAVDLTESILRSAYHCHLTYL 264 + RL+ +R + D+ DL + CH L Sbjct: 992 DPCFKGHYLRLYREGRVRAVSDI----------------EKADLAD--------CHKELL 1027 Query: 265 KNMGVGASLTISLIKDGHLWGLIACHH-QTPK 295 ++ V A+L + ++ + +LWGL+ H +TP+ Sbjct: 1028 RHYQVKANLVVPVVFNENLWGLLIAHECKTPR 1059 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 85.9 bits (211), Expect = 4e-19 Identities = 56/217 (25%), Positives = 104/217 (47%), Gaps = 11/217 (5%) Query: 538 HDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQY 597 H+ + PL + + ++L L+ ++ + + +L++D L +K+D + Sbjct: 195 HEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSKIDARC 254 Query: 598 AQLTFTDVQ------EVVDKALANLKQRIEESGAEIEVGSMPAVMADQIQLMQVFQNLIA 651 +L + V V+ K++ I+ G + DQ + Q+ NL++ Sbjct: 255 EELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDG-VDFCYVDQRRWKQILINLLS 313 Query: 652 NGIKFAGDKSPKIKIWGDRQEDAWVFAVQDNGIGIDPQFFERIFVIFQRLHTRDEY--KG 709 NG+KF S + + + A +F+V D GIGIDP+ +F F+++ + KG Sbjct: 314 NGVKFTPKGSVTLAV--KATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISHPPSFAEKG 371 Query: 710 TGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSIPI 746 TG+GLA+ +++ + H G I L S PG GS F +P+ Sbjct: 372 TGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPL 408 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 85.9 bits (211), Expect = 4e-19 Identities = 84/300 (28%), Positives = 150/300 (50%), Gaps = 32/300 (10%) Query: 473 QSFDLWKEIVRLQSLPWQSVEIQSALALKK-AIVNLILRQ-----AEELAQLARNLERSN 526 +SF+L +R + + + LA K+ A+ N L + EEL + LE ++ Sbjct: 369 KSFNLMTNELRESNSSLEKKNQELELAQKQLAVANSCLEEKVQQRTEELENTVKALELAS 428 Query: 527 ADLK-----KFAYIA--SHDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFID----FAVT 575 ++ + K ++A SH+L+ PLN + Y ++L EA D D+++ + + Sbjct: 429 SEAEAANATKSIFLANMSHELRTPLNAIIGYSEML---IEEAEDLDSEELVPDLDKILRS 485 Query: 576 GVSLMQTLIDDILTYAKVDTQYAQL---TFTDVQEVVDKALANLKQRIEESGAEIEVG-- 630 G SL+ LI+D+L +K++ +L TF +++E++ L + ++ + ++EV Sbjct: 486 GKSLL-ALINDLLDISKIEAGKMELYLETF-NLKELIAGILDTISPLLKNNNNKLEVEIS 543 Query: 631 -SMPAVMADQIQLMQVFQNLIANGIKFAGDK--SPKIKIWGDRQEDAWVFAVQDNGIGID 687 V D I+L Q NL++N KF D S ++ + ++D F V+D GIG+ Sbjct: 544 LESEEVYGDLIKLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDWLSFQVKDTGIGLT 603 Query: 688 PQFFERIFVIFQRLH--TRDEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSIP 745 + ++F F + T +Y GTG+GLAI +K + G I+L S G GS+F +P Sbjct: 604 EEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKLP 663 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 82.4 bits (202), Expect = 4e-18 Identities = 67/256 (26%), Positives = 122/256 (47%), Gaps = 23/256 (8%) Query: 505 VNLILRQAEELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDE 564 + + LR+A+E A+LA ++ +F SH+++ P+N + + LL + + Sbjct: 582 IEIKLREAKESAELANRVK------SEFLANISHEIRTPMNAILGFCDLLLQK--DLSLS 633 Query: 565 DAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQLTFTDVQ-EVVDKALANLKQRIEES 623 K +++ + ++ LIDDIL +K++ + V V+ + + + ES Sbjct: 634 QTKKYLNAIGSSSKILLALIDDILDISKIEAGKLVIHLEPVDLRVIIREIKQIFDYKAES 693 Query: 624 GA-----EIEVGSMPAVMADQIQLMQVFQNLIANGIKFAGDKSPKIKIWGD----RQEDA 674 + +I+ A+ D ++L Q+ NL+ N +KF + I I + R + Sbjct: 694 KSLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGT 753 Query: 675 WV---FAVQDNGIGIDPQFFERIFVIFQRLHTRD--EYKGTGMGLAICKKIIEGHQGQIW 729 ++ V D GIGI P+ +IF +F + + +Y GTG+GL I +++ G+I Sbjct: 754 YISLAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYGGTGLGLTITRRLTALLGGEIS 813 Query: 730 LESNPGEGSTFYFSIP 745 L S GEGSTF P Sbjct: 814 LSSRLGEGSTFILHFP 829 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 80.9 bits (198), Expect = 1e-17 Identities = 79/314 (25%), Positives = 138/314 (43%), Gaps = 41/314 (13%) Query: 464 DGKIELHPRQSFDLWK--EIVRLQSLPWQ-SVEIQSALALKKAIVNLILRQAEELAQLAR 520 +G I LH +W EI L+++ Q + + A L+K + ELAQ Sbjct: 708 NGIIALHQCDRQRVWTADEIELLEAIAEQMGIALAQAALLEKE-----RERRRELAQKNL 762 Query: 521 NLERS-------NADLKKFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFA 573 LE++ N +F + SH+++ P+N V +LL M L+ D++ Sbjct: 763 ELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLIMT---DLNLQQLDYVQTI 819 Query: 574 VTGVSLMQTLIDDILTYAKVDTQYAQLTFT--DVQEVVDKALANLKQRIEESGAEIEVGS 631 + T+I+DIL ++K++ L +++ +++ L E+ G Sbjct: 820 RQSGETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGI 879 Query: 632 MPA----VMADQIQLMQVFQNLIANGIKFAGDKSPKIKIWGDRQEDAW------------ 675 P ++ DQ++L Q+ NLI N +KF + + G+ + A Sbjct: 880 DPQTPARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPS 939 Query: 676 ---VFAVQDNGIGIDPQFFERIFVIFQRLH--TRDEYKGTGMGLAICKKIIEGHQGQIWL 730 F ++D GIGI +R+F F ++ T +Y GTG+GL I +++ + G + + Sbjct: 940 HRICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTV 999 Query: 731 ESNPGEGSTFYFSI 744 S PG GS F F I Sbjct: 1000 TSEPGVGSNFRFCI 1013 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 78.6 bits (192), Expect = 6e-17 Identities = 67/253 (26%), Positives = 122/253 (48%), Gaps = 25/253 (9%) Query: 513 EELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQLL--EMRYSEALDEDAKDFI 570 +EL Q + E ++ +F +H+L+ PLN + +++L+ +M SEA + +F+ Sbjct: 178 QELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEA---EKHEFV 234 Query: 571 DFAVTGVSLMQTLIDDILTYAKVDTQYA--QLTFTDVQEVVDKALANLKQRIEESGAEIE 628 + A L+ LI+DIL AK++ +L D EV+ + + G Sbjct: 235 EEAYQSALLLLNLINDILDLAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFN 294 Query: 629 VGSMP----AVMADQIQLMQVFQNLIANGIKF--------AGDKSPKIKIW-GDRQEDAW 675 + + V +Q L+QV N++ N IKF A + P+ +W G ++ Sbjct: 295 LTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLL 354 Query: 676 VFAVQDNGIGIDPQFFERIFVIFQRL---HTRDEYKGTGMGLAICKKIIEGHQGQI-WLE 731 +V D GIG+ + ++F F ++ H++ Y GTG+GL I +K++E G++ + Sbjct: 355 KVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSK-AYGGTGLGLVISQKLVETMGGKVAFFS 413 Query: 732 SNPGEGSTFYFSI 744 G GST F++ Sbjct: 414 MGEGLGSTVTFTV 426 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 76.3 bits (186), Expect = 3e-16 Identities = 65/236 (27%), Positives = 111/236 (47%), Gaps = 7/236 (2%) Query: 510 RQAEELAQLARNLERSNADLK-KFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDEDAKD 568 R+ E +LA E+ + LK +F +ASH+ + PL+ QLLE LD D + Sbjct: 49 RRRTEEVRLALEREKELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRS 108 Query: 569 F-IDFAVTGVSLMQTLIDDILTYAKVDTQYAQLT--FTDVQEVVDKALANLKQRIEESGA 625 + V M L+DDIL + + + + D++ + + + ++ + + Sbjct: 109 RNLHRIQNSVKNMVQLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQYY 168 Query: 626 EIEVGSMPAVMA--DQIQLMQVFQNLIANGIKFAGDKSPKIKIWGDRQEDAWVFAVQDNG 683 + S A D+ + + NL++N IK++ +IKI + +F V D G Sbjct: 169 FDFICSAQDTKALVDERLVRSILSNLLSNAIKYSPGGG-QIKIALSLDSEQIIFEVTDQG 227 Query: 684 IGIDPQFFERIFVIFQRLHTRDEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGST 739 IGI P+ ++IF F R GTG+GL + KK ++ H G I L+S +G+T Sbjct: 228 IGISPEDQKQIFEPFHRGKNVRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTT 283 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 74.3 bits (181), Expect = 1e-15 Identities = 83/304 (27%), Positives = 135/304 (44%), Gaps = 34/304 (11%) Query: 470 HPRQSFDLWKE----------IVRLQSLPWQSVEIQSALALKKAIVNLILRQAEELAQLA 519 HPRQ D K + +QSL + V+ Q K ++ + +EL Sbjct: 315 HPRQWLDSEKNFLGQIGEHLAVAIVQSLLYSEVQKQ-----KNNFEKRVIERTKELRDTL 369 Query: 520 RNLERSNADLKKFAYIASHDLQEPLNQVSNY-VQLLEMRYSEALDEDAKD---FIDFAVT 575 + +N +F SH+L+ PL + LL A AK ++ Sbjct: 370 MAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQEN 429 Query: 576 GVSLMQTLIDDILTYAKVDTQYAQLT------FTDVQEVVDKALA-NLKQRIE-ESGAEI 627 G L+ I+ I+ +++++ L T Q V+ L +KQ+I E +I Sbjct: 430 GKKLLDQ-INSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQI 488 Query: 628 EVGSMPAVMADQIQLMQVFQNLIANGIKFAGDKSPKI-KIWGDRQEDAWVFAVQDNGIGI 686 VG ADQ +L Q+ L+ N +KF + I +IW ++ + +F V+D GIGI Sbjct: 489 NVGQ-DQFCADQERLDQILTQLLNNALKFTPAEGTVILRIW--KESNQAIFQVEDTGIGI 545 Query: 687 DPQFFERIFVIFQRLHTR--DEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSI 744 + Q +F F+ Y+ G+GLA+ K+++E H G I +ES+PG+G+ F I Sbjct: 546 NEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVI 605 Query: 745 PIGN 748 P N Sbjct: 606 PQQN 609 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 71.2 bits (173), Expect = 1e-14 Identities = 82/294 (27%), Positives = 133/294 (45%), Gaps = 43/294 (14%) Query: 483 RLQSLPWQSVEIQSALALKKAI-VNLILRQAEELAQLARNLERSNADLKK-FAYIASHDL 540 +LQ L +Q E++ A K I N L++ +L + A+ + S A K F SH+L Sbjct: 319 KLQEL-YQQRELERAQREKILIEYNESLQKQVDLVR-AKEIAESEAKAKSTFVANMSHEL 376 Query: 541 QEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQYAQL 600 + PLN + + QL+ +R E ++ +G L+ LI++IL ++K++ L Sbjct: 377 RSPLNAIIGFSQLM-LRTKNLPMEQYENAGIIQRSGEYLLN-LINNILDFSKIEAGKTHL 434 Query: 601 TFT--DVQEVVDKALANLKQRIEESGAE---IEVGSMPA-VMADQIQLMQVFQNLIANGI 654 D+ ++D L + G E I +P V D+I+L Q+ NL++N I Sbjct: 435 NRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRDHDLPRYVYGDEIKLRQILLNLLSNAI 494 Query: 655 KFAGD-----------------------KSPKIKIWGDRQEDAWVFAVQDNGIGIDPQFF 691 KF + PK K W D F ++D G GI Sbjct: 495 KFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLD-------FTIKDTGKGISEVEL 547 Query: 692 ERIFVIFQRLHT-RDEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSI 744 +F F + + R+ +GTG+GLAI ++ I+ G I + S +G+TF FSI Sbjct: 548 SHLFEAFSQTESGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFSI 601 >SYNE-PCC-01-002220 slr1212 Length = 844 Score = 57.0 bits (136), Expect = 2e-10 Identities = 37/148 (25%), Positives = 69/148 (46%), Gaps = 27/148 (18%) Query: 146 RLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDENNH---GDVIAEDKRDDMEPYLGLH 202 R+RQ +L ++ +V+E+R+ DRV++++F ++ G+++AE +P + Sbjct: 469 RIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSVGNIVAESVLAPFKPIINSA 528 Query: 203 YPESDIPQPARRLFIHNPIRVIPDVYGVAVPLTPAVNPSTNRAVDLTESILRSAYHCHLT 262 E+ + + I+VI D++ +S LR CH+ Sbjct: 529 IEETCFSNNYAQRYQQGRIQVIEDIH---------------------QSHLRQ---CHID 564 Query: 263 YLKNMGVGASLTISLIKDGHLWGLIACH 290 +L + V A+L + LI D LWGL+ H Sbjct: 565 FLARLQVRANLVLPLINDAILWGLLCIH 592 >SYNE-PCC-01-000983 sll1473 Length = 481 Score = 42.7 bits (99), Expect = 4e-06 Identities = 32/162 (19%), Positives = 58/162 (35%), Gaps = 36/162 (22%) Query: 141 NAALNRLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDENNHGDVIAEDKRDDMEPYLG 200 N +RQ NL + V EV+ + DRV++YR ++ G I E + LG Sbjct: 47 NQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQDGTGSAITESVNANYPSILG 106 Query: 201 LHYPESDIPQPARRLFIHNPIRVIPDVYGVAVPLTPAVNPSTNRAVDLTESILRSAYHCH 260 + + P + + +R I D+ + + C Sbjct: 107 RTFSDEVFPVEYHQAYTKGKVRAINDIDQDDIEI------------------------CL 142 Query: 261 LTYLKNMGVGASLTISLIKDG------------HLWGLIACH 290 ++K GV + L + +++ +LWGL+ H Sbjct: 143 ADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITH 184 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.138 0.406 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 70,571 Number of Sequences: 78 Number of extensions: 3128 Number of successful extensions: 76 Number of sequences better than 1.0e-05: 18 Number of HSP's better than 0.0 without gapping: 8 Number of HSP's successfully gapped in prelim test: 10 Number of HSP's that attempted gapping in prelim test: 21 Number of HSP's gapped (non-prelim): 25 length of query: 748 length of database: 48,235 effective HSP length: 70 effective length of query: 678 effective length of database: 42,775 effective search space: 29001450 effective search space used: 29001450 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 96 (41.6 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-001777 slr0599 (535 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-001777 slr0599 807 0.0 SCER-S28-01-000850 ORFP:YDL101C DUN1, Chr IV from 280306-281847... 52 3e-09 >SYNE-PCC-01-001777 slr0599 Length = 535 Score = 807 bits (2085), Expect = 0.0 Identities = 420/535 (78%), Positives = 420/535 (78%) Query: 1 MVTPLKLLNNRYRIIETLGRGGFGETFLAQDTHMPSARKCVIKHLKPVLENPEIPSWLRE 60 MVTPLKLLNNRYRIIETLGRGGFGETFLAQDTHMPSARKCVIKHLKPVLENPEIPSWLRE Sbjct: 1 MVTPLKLLNNRYRIIETLGRGGFGETFLAQDTHMPSARKCVIKHLKPVLENPEIPSWLRE 60 Query: 61 RFHREAATLEELGENHPQIPQLYAYFSEGEDFYLVQEWIPGLTLTQAHAQKGNFSSTAVE 120 RFHREAATLEELGENHPQIPQLYAYFSEGEDFYLVQEWIPGLTLTQAHAQKGNFSSTAVE Sbjct: 61 RFHREAATLEELGENHPQIPQLYAYFSEGEDFYLVQEWIPGLTLTQAHAQKGNFSSTAVE 120 Query: 121 ELLLGILPVLEFIHQRRIIHRDIKPDNIILREADGKPILIDFGIIKETMGTLVNPDGRSA 180 ELLLGILPVLEFIHQRRIIHRDIKPDNIILREADGKPILIDFGIIKETMGTLVNPDGRSA Sbjct: 121 ELLLGILPVLEFIHQRRIIHRDIKPDNIILREADGKPILIDFGIIKETMGTLVNPDGRSA 180 Query: 181 YSVALGTPGYMASEQAAGRPVFSSDLYSLGLTAIFLLTGKTPQYLTSDSRTGEILWRQGA 240 YSVALGTPGYMASEQAAGRPVFSSDLYSLGLTAIFLLTGKTPQYLTSDSRTGEILWRQGA Sbjct: 181 YSVALGTPGYMASEQAAGRPVFSSDLYSLGLTAIFLLTGKTPQYLTSDSRTGEILWRQGA 240 Query: 241 PQVSPTLAKVIDQAVRYHPRERFNSATAMAQTLQGNFSNVPMTKGDRPGNTVANGKTKSN 300 PQVSPTLAKVIDQAVRYHPRERFNSATAMAQTLQGNFSNVPMTKGDRPGNTVANGKTKSN Sbjct: 241 PQVSPTLAKVIDQAVRYHPRERFNSATAMAQTLQGNFSNVPMTKGDRPGNTVANGKTKSN 300 Query: 301 HQPTAPTLVVGTPYNANDTQATKVYTQEFTGYTETQEGSPLMKWVVMPLVVLLVIGGGMA 360 HQPTAPTLVVGTPYNANDTQATKVYTQEFTGYTETQEGSPLMKWVVMPLVVLLVIGGGMA Sbjct: 301 HQPTAPTLVVGTPYNANDTQATKVYTQEFTGYTETQEGSPLMKWVVMPLVVLLVIGGGMA 360 Query: 361 AGFWVTSQRRNNXXXXXXXXXXXXXXXXXXXXXRPNLFXXXXXXXXXXXXXXXXXXXXXX 420 AGFWVTSQRRNN RPNLF Sbjct: 361 AGFWVTSQRRNNPPPAVEEPTEETPIPLPSLEPRPNLFETPSPIPTPATPSPEPTPSPSP 420 Query: 421 XXXXXXXXXXXXXXXMEPEPSLDXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 480 MEPEPSLD Sbjct: 421 SPETTSSPTEDTITPMEPEPSLDEPAPIPEPKPSPSPTISPQPSPTISIPVTPAPVPKPS 480 Query: 481 XXXXXXXXXXXXXXXXXXXXNTVPVIPPPENPSAETEPNLPAPPVGEKPIDPEQN 535 NTVPVIPPPENPSAETEPNLPAPPVGEKPIDPEQN Sbjct: 481 PSPTPKPTVPPQISPTPQPSNTVPVIPPPENPSAETEPNLPAPPVGEKPIDPEQN 535 >SCER-S28-01-000850 ORFP:YDL101C DUN1, Chr IV from 280306-281847, reverse complement Length = 513 Score = 52.4 bits (124), Expect = 3e-09 Identities = 62/227 (27%), Positives = 93/227 (40%), Gaps = 41/227 (18%) Query: 76 HPQIPQLYAYFSEGEDF-----YLVQEWIPGLTLTQAHAQKGNFSSTAVEELLLGILPVL 130 HP I L F E YLV E I L + +K + L +L L Sbjct: 257 HPNIVNLLDSFVEPISKSQIQKYLVLEKIDDGELFERIVRKTCLRQDESKALFKQLLTGL 316 Query: 131 EFIHQRRIIHRDIKPDNIILR------------------EADGKPILIDFGIIKETMGTL 172 +++H++ IIHRDIKP+NI+L E D + + DFG+ K T Sbjct: 317 KYLHEQNIIHRDIKPENILLNITRRENPSQVQLGPWDEDEIDIQVKIADFGLAKFT---- 372 Query: 173 VNPDGRSAYSVAL-GTPGYMASEQAAGRPVFSS-DLYSLGLTAIFLLTGKTP--QYLTSD 228 G ++ L GTP Y+A E + S DL+S G+ L G P L Sbjct: 373 ----GEMQFTNTLCGTPSYVAPEVLTKKGYTSKVDLWSAGVILYVCLCGFPPFSDQLGPP 428 Query: 229 SRTGEILWRQGA------PQVSPTLAKVIDQAVRYHPRERFNSATAM 269 S +IL + A ++ ++ +I + +P ER+N A+ Sbjct: 429 SLKEQILQAKYAFYSPYWDKIDDSVLHLISNLLVLNPDERYNIDEAL 475 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.316 0.135 0.402 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 42,543 Number of Sequences: 78 Number of extensions: 1741 Number of successful extensions: 9 Number of sequences better than 1.0e-05: 2 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 1 Number of HSP's that attempted gapping in prelim test: 5 Number of HSP's gapped (non-prelim): 4 length of query: 535 length of database: 48,235 effective HSP length: 67 effective length of query: 468 effective length of database: 43,009 effective search space: 20128212 effective search space used: 20128212 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.6 bits) S2: 95 (41.2 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002033 slr0947 (234 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002033 slr0947 459 e-132 SYNE-PCC-01-001461 slr0115 180 3e-48 SYNE-PCC-01-000414 sll0649 177 3e-47 SYNE-PCC-01-001437 slr0081 161 2e-42 SYNE-PCC-01-000242 sll0396 159 6e-42 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 145 1e-37 SYNE-PCC-01-002486 slr1584 133 4e-34 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 126 5e-32 SYNE-PCC-01-000877 sll1330 125 1e-31 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 124 2e-31 SYNE-PCC-01-002672 slr1837 117 3e-29 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 114 2e-28 SYNE-PCC-01-000518 sll0789 114 4e-28 SYNE-PCC-01-002731 slr1909 103 4e-25 SYNE-PCC-01-002086 slr1042 96 1e-22 SYNE-PCC-01-000523 sll0797 94 4e-22 SYNE-PCC-01-001133 sll1673 93 9e-22 SYNE-PCC-01-002489 slr1588 89 2e-20 SYNE-PCC-01-002635 slr1783 87 4e-20 SYNE-PCC-01-001306 sll1905 84 4e-19 SYNE-PCC-01-002618 slr1760 78 3e-17 SYNE-PCC-01-002788 slr1982 75 2e-16 SYNE-PCC-01-000800 sll1228 67 5e-14 SYNE-PCC-01-001132 sll1672 62 2e-12 SYNE-PCC-01-002617 slr1759 59 1e-11 SYNE-PCC-01-002879 slr2104 59 2e-11 SYNE-PCC-01-002221 slr1213 58 3e-11 SYNE-PCC-01-001575 slr0312 55 2e-10 SYNE-PCC-01-001075 sll1592 53 8e-10 SYNE-PCC-01-002873 slr2098 53 1e-09 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 51 3e-09 SYNE-PCC-01-001160 sll1708 49 1e-08 SYNE-PCC-01-000608 sll0921 46 1e-07 SYNE-PCC-01-001517 slr0222 43 8e-07 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 459 bits (1180), Expect = e-132 Identities = 234/234 (100%), Positives = 234/234 (100%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 61 ELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMP 120 ELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMP Sbjct: 61 ELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMP 120 Query: 121 GIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEVW 180 GIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEVW Sbjct: 121 GIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEVW 180 Query: 181 GYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRILEPGEEP 234 GYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRILEPGEEP Sbjct: 181 GYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRILEPGEEP 234 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 180 bits (457), Expect = 3e-48 Identities = 95/234 (40%), Positives = 143/234 (61%), Gaps = 6/234 (2%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 ++DD+ +I ++ L M GY+V A DG + A + PDL++LD+M+PK+DG+ VCQ Sbjct: 6 IIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTVCQ 65 Query: 61 ELRKE---SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 LR++ +DIP++MLTALG + D+I G + GADDY+ KPF +E+ AR+R++LRR D+ Sbjct: 66 RLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRTDRI 125 Query: 118 GMPGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQ 177 S +L + + + + + I+LT +EF LL L+ R G+ S S+IL+ Sbjct: 126 PQ-AAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSDILR 184 Query: 178 EVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRILEPG 231 EVWGY P+ ++T + VHI LR KLE +P P I T G GY + E G Sbjct: 185 EVWGYEPDDDIET--IRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLELSTEEG 236 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 177 bits (449), Expect = 3e-47 Identities = 97/232 (41%), Positives = 144/232 (62%), Gaps = 12/232 (5%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V+D+ I +++ L + + DGE + F E PDL+VLD+M+PKLDG VC Sbjct: 16 IVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEVCT 75 Query: 61 ELRKE---SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 +R++ D I+MLTA G+ DRI GL GADDY+VKPFSP+EL AR+R++LRR + Sbjct: 76 RIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRRQLRQ 135 Query: 118 GMPGIPSSGVLQIATIRIDTNKRQV--YKGD--ERIRLTGMEFSLLELLVSRSGEPFSRS 173 G P + + ++D ++ Q Y+GD E + LTG+EF+LL +S G ++R+ Sbjct: 136 GQ---PVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRT 192 Query: 174 EILQEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQ 225 ++++++WG + D RVVD HI RLR K+E DP+NP I T G GY F+ Sbjct: 193 QLIEKLWG--NDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFE 242 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 161 bits (408), Expect = 2e-42 Identities = 93/232 (40%), Positives = 139/232 (59%), Gaps = 13/232 (5%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHE--SDP-----DLVVLDVMMPKL 53 +V+DE SIR + L GYEV DG +A+A E DP DL++LD+M+P++ Sbjct: 35 VVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLPQV 94 Query: 54 DGYGVCQELRKESD-IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLR 112 +G VC+ LR D PI++++A G +++TGLE+GADDY+ KPFS KEL AR R+++R Sbjct: 95 NGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRAMIR 154 Query: 113 RVDKNGMPGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSR 172 R G+ G + + + + + +V E + L EF LLEL +S +SR Sbjct: 155 R---QGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVWSR 211 Query: 173 SEILQEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLF 224 ++++ +WG + D++ VDVHI LR KLE+DPS PE ++T RG GY F Sbjct: 212 EQLIEHIWGI--DFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 159 bits (403), Expect = 6e-42 Identities = 90/226 (39%), Positives = 134/226 (59%), Gaps = 10/226 (4%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V++E + R +E L GY+V A DG + E PDL++++ +P + G +C+ Sbjct: 7 VVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLELCR 66 Query: 61 ELRKE-SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGM 119 LR+ S IPII++TA DV +R+ GL+ GADDY+VKPF+ E ARIR LRR Sbjct: 67 RLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTHTT-- 124 Query: 120 PGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEV 179 S VLQ A +R + + R++ +GD I LT EF LL+ L+S + + +R +IL+ V Sbjct: 125 ----SDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERV 180 Query: 180 WGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQ 225 WGY + D+ +++V+I LR KLE P LI T RG GY+ + Sbjct: 181 WGY--DFMGDSNIIEVYIRYLRLKLEA-AGEPRLIQTVRGVGYVLR 223 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 145 bits (366), Expect = 1e-37 Identities = 91/222 (40%), Positives = 131/222 (59%), Gaps = 4/222 (1%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +VDD+ + +L T L + G++V TA +G EA+ +ES LV+LDVMMPKL+G + Sbjct: 6 LVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESYK-LVLLDVMMPKLNGIETLK 64 Query: 61 ELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMP 120 E+RK S++P++MLTA G+ DR+ GLELGADD + KPF+ +EL ARI+++LRR + Sbjct: 65 EIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRR-SASPSN 123 Query: 121 GIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEVW 180 I + +L I + + +E + LT EF +L LL+ G SR E+ EV Sbjct: 124 NISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSLEVM 183 Query: 181 GYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGY 222 P D R +D+HIS LR KL + + P T RG GY Sbjct: 184 -EKPLTPFD-RSLDMHISNLRRKLPKRKNKPSWFKTLRGKGY 223 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 133 bits (335), Expect = 4e-34 Identities = 88/230 (38%), Positives = 123/230 (53%), Gaps = 9/230 (3%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V+D+ + L LS Y V A D A + DLV+LDVM+P+LDG +CQ Sbjct: 5 LVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITLCQ 64 Query: 61 ELRKESDI-PIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGM 119 + R S + PI+M+TA + D+ITGL+ GADDYVVKP EL AR+R++LRR Sbjct: 65 KWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCATCQ 124 Query: 120 PGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEV 179 P VL+ IR+D + +V +E + LT E+S+LELL+ SRS I+ + Sbjct: 125 P------VLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSI 178 Query: 180 WGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRILE 229 W DT V VH+ LR KL+ + + I T G GY + E Sbjct: 179 WKLESPPEEDT--VKVHVRSLRQKLKSAGLSADAIETVHGIGYRLANLTE 226 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 126 bits (317), Expect = 5e-32 Identities = 86/231 (37%), Positives = 123/231 (53%), Gaps = 13/231 (5%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V+DE +IR ++ LS Y+V+ A+D + AI E+ P L++LD M+P G Q Sbjct: 7 IVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQFIQ 65 Query: 61 ELRKESD---IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 ++K+ IPIIMLTA D I L GADDY+ KPFSP+ L ARI +V RR+ + Sbjct: 66 YIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIYEQ 125 Query: 118 GMPGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQ 177 S +QI + ID N ++V+ + I L+ EF LL + + +SR ++L Sbjct: 126 ------QSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLN 179 Query: 178 EVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRIL 228 +W E V+ R VD +I RLR L I T RG+GY F L Sbjct: 180 RIWHNDLE--VEYRTVDSYIRRLRRNLAPFQCE-HYIQTVRGSGYRFSSYL 227 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 125 bits (314), Expect = 1e-31 Identities = 79/224 (35%), Positives = 116/224 (51%), Gaps = 8/224 (3%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V+ +R +L L GY V + +A F+ P L V+D + DG +C+ Sbjct: 8 VVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIELCR 67 Query: 61 ELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMP 120 L ++ I +L+A D + GL+ GADDY+ KPF +E ARI ++RRV P Sbjct: 68 WLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVRTVAAP 127 Query: 121 GIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEVW 180 + GVL+I ++ +R Y+G+ + LT EFSLL +L G SR+E+L+ W Sbjct: 128 LLLDYGVLKIDLVQ----RRVEYQGN-FVDLTPQEFSLLYVLTQAEGSALSRTELLRRAW 182 Query: 181 GYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLF 224 PE + R +D H+ LR K+E DP P LI T R GY F Sbjct: 183 ---PEAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRF 223 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 124 bits (312), Expect = 2e-31 Identities = 76/228 (33%), Positives = 128/228 (56%), Gaps = 14/228 (6%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +++D+ I L+ L+ +G+ V DG+ +A + D VVLD+ +PKLDG V Q Sbjct: 5 LIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEVLQ 64 Query: 61 ELRKE-SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGM 119 + R D+P+++LTA + +R+ GL+ GADDY+ KPF+ E+ AR+++++RR + G Sbjct: 65 QWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRR--RYGY 122 Query: 120 PGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEV 179 V++ A +++D N+R V+ ++ I LT E+ LLEL + SRS I +++ Sbjct: 123 ----HHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKL 178 Query: 180 WGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRI 227 + E + + +DVHI LR KL + I T G GY ++ Sbjct: 179 SSWDEE--ISSGALDVHIYNLRQKL-----GKQFIRTVHGVGYALGQV 219 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 117 bits (294), Expect = 3e-29 Identities = 73/231 (31%), Positives = 121/231 (52%), Gaps = 10/231 (4%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +VDDE ++ L L G+ + A G+ +A DL++LD M+P++ G +C+ Sbjct: 6 LVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEICR 65 Query: 61 ELR-KESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDK--- 116 ++R P++ LTA + DR+ GL+ G DDY++KPF +EL AR+R++LRR Sbjct: 66 QIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQSHGET 125 Query: 117 -NGMPGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEI 175 G + +L + + +D + Y +RI L+ E +LL L + G+ S EI Sbjct: 126 ITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSHEEI 185 Query: 176 LQEVW-GYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQ 225 +W G +P + V+ + LR K+E+ P+ P LI + G GY F+ Sbjct: 186 YSHLWPGESPP---SSNVLAALVRLLRRKIEQ-PNAPRLINSVYGKGYCFE 232 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 114 bits (286), Expect = 2e-28 Identities = 74/230 (32%), Positives = 117/230 (50%), Gaps = 12/230 (5%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V+DE R L+ GY+V A +G E + +LVV+D+ +P +G + + Sbjct: 8 VVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLLLAR 67 Query: 61 ELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMP 120 ELR+E +P+I LT + D+I GLE+GADDY+ KPF+P+EL R R++L R MP Sbjct: 68 ELREELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR----AMP 123 Query: 121 GIPSSGVL-----QIATIRIDTNKRQVYKGD-ERIRLTGMEFSLLELLVSRSGEPFSRSE 174 + ++D N + + + +L EF + G+ +R E Sbjct: 124 HQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREE 183 Query: 175 ILQEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLF 224 +L+++ G E R VDV I R+R E+ P+ P +I+T G GY F Sbjct: 184 LLKKMTG--RELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 114 bits (284), Expect = 4e-28 Identities = 84/229 (36%), Positives = 118/229 (51%), Gaps = 13/229 (5%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHES--DPDLVVLDVMMPKLDGYGV 58 +V+DE + LE L Y V DG A + + + L + D M+P L G + Sbjct: 5 LVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGLEL 64 Query: 59 CQELR-KESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 CQ+LR + S +PI+MLTA +ADR+ GL+ GADDY++KPF EL AR+RS+ RR Sbjct: 65 CQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRR---- 120 Query: 118 GMPGIPSSGVLQIATIRIDTNKRQVYKGDE-RIRLTGMEFSLLELLVSRSGEPFSRSEIL 176 P + LQ+ +D V ++ RI LT EF LLE + + S +I Sbjct: 121 -SPELQPQ-QLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIK 178 Query: 177 QEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQ 225 ++W + E + VV + LR KLEE S+ LI T G GY FQ Sbjct: 179 NQLWALSAES--TSNVVAAQVRLLRRKLEE-YSHGNLIETVYGLGYRFQ 224 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 103 bits (258), Expect = 4e-25 Identities = 64/206 (31%), Positives = 111/206 (53%), Gaps = 26/206 (12%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +VDD+ ++ +++ L GY+V TA +G EA+ + PD++V D+MMP++DGY + Sbjct: 12 LVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIE 71 Query: 61 ELRKESD---IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 ++R+ D IP++ L+A G +R+ GL +GAD Y+ KPF P+EL A+++S LR+ D+ Sbjct: 72 QVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADR- 130 Query: 118 GMPGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQ 177 +LQ ++ N R D + LT E +++L+ + + EI Sbjct: 131 ---------LLQHNNHPLEDNARVQVARD--VELTPTETKVIQLV----AQGLANREIAD 175 Query: 178 EVWGYTPERHVDTRVVDVHISRLRAK 203 + V R V+ H+S + K Sbjct: 176 HL-------KVSQRTVESHVSNMLNK 194 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 95.9 bits (237), Expect = 1e-22 Identities = 46/115 (40%), Positives = 72/115 (62%), Gaps = 3/115 (2%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V+D +S R ++ L G++V A DG EA+ PDLVVLD++MP+++GY VC+ Sbjct: 32 LVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEVCR 91 Query: 61 ELR---KESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLR 112 ++ K ++P+IM ++ G+ DR G+ GAD Y+ KPF P EL I+ +LR Sbjct: 92 RIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 94.0 bits (232), Expect = 4e-22 Identities = 75/236 (31%), Positives = 118/236 (50%), Gaps = 22/236 (9%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHE--SDPDLVVLDVMMPKLDGYGV 58 +V+DE + ++ L Y V DG +A ++ L ++D ++P L G + Sbjct: 5 LVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGLEL 64 Query: 59 CQELRKESD-IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 CQ+LR + + +P++MLTALG+ +R+ GL+ GADDY+ KPF EL AR+R++ RR Sbjct: 65 CQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRR-SPQ 123 Query: 118 GMPGI---------PSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGE 168 P I PS+ +L + TI N + + I LT EF + + L+ Sbjct: 124 FQPQILTLGNFSLDPSNNLLSV-TISEPLNLER-----QEIALTVREFQIFQYLMQNPER 177 Query: 169 PFSRSEILQEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLF 224 S S+I Q++W E + VV + +R KL + + P I T G GY F Sbjct: 178 IISGSKIRQQLWDLDEEPM--SNVVAAQMRLIRRKLAQQ-NCPCPIKTVPGQGYRF 230 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 92.8 bits (229), Expect = 9e-22 Identities = 46/110 (41%), Positives = 68/110 (61%), Gaps = 3/110 (2%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +VDD + ++L L +GY V + G+ A+ T PDL++LD+ MP +DGY VC+ Sbjct: 13 LVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCE 72 Query: 61 ELRKE---SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARI 107 ++KE DIPII ++ALGD D++ E G DY+ KPF +E+ ARI Sbjct: 73 MIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARI 122 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 88.6 bits (218), Expect = 2e-20 Identities = 47/121 (38%), Positives = 76/121 (62%), Gaps = 5/121 (4%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESD--PDLVVLDVMMPKLDGYGV 58 +V+DEA IR ++ LS+ Y+++ A +G A+ + + PDL++ DVMMP++DG+G+ Sbjct: 6 VVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGHGL 65 Query: 59 CQELRKESD---IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVD 115 L+K + IP I LTALG + D G+ GADDY++KPF ++L + S L++ Sbjct: 66 ITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQKQA 125 Query: 116 K 116 K Sbjct: 126 K 126 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 87.4 bits (215), Expect = 4e-20 Identities = 50/134 (37%), Positives = 78/134 (58%), Gaps = 4/134 (2%) Query: 1 MVDDEASIRRILETRLSMIG-YEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVC 59 +VDDE +R ++ L G ++V AA+ EA P LV+ D+MMP++DGY Sbjct: 60 LVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQFL 119 Query: 60 QELRKES---DIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDK 116 Q+LR+++ +P++ LTA G DRI G + G D ++ KPF P ELEA +R++L R Sbjct: 120 QKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQQA 179 Query: 117 NGMPGIPSSGVLQI 130 + G S+ + +I Sbjct: 180 SSDAGSESAKLQEI 193 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 84.0 bits (206), Expect = 4e-19 Identities = 45/114 (39%), Positives = 64/114 (56%), Gaps = 3/114 (2%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +VDD ++ L GY G EA+ ++ PDL++LD+MMP +DG VC Sbjct: 22 VVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEVCD 81 Query: 61 ELRKE---SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVL 111 L+++ DIP+I LTA + D + GA DYV KPFSP EL AR+++ L Sbjct: 82 RLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 Score = 57.4 bits (137), Expect = 4e-11 Identities = 34/112 (30%), Positives = 61/112 (54%), Gaps = 4/112 (3%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 + +D +++ + L +GY V +G+EA++ + D D+V++DV MP++DG + Sbjct: 744 LAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTATE 803 Query: 61 ELRK---ESDIP-IIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIR 108 +R+ S+ P II +TA DR L G +DYV KP + L+ ++ Sbjct: 804 HIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQALQ 855 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 77.8 bits (190), Expect = 3e-17 Identities = 44/114 (38%), Positives = 62/114 (54%), Gaps = 3/114 (2%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +VDD+ +R L L G+ V A +GEEA+ F E P++V+LD +MP +DG+ CQ Sbjct: 16 VVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFACCQ 75 Query: 61 ELRKESDIP---IIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVL 111 L K P ++M+T L D A E GA DYV KP L R++ +L Sbjct: 76 ALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 74.7 bits (182), Expect = 2e-16 Identities = 40/114 (35%), Positives = 63/114 (55%), Gaps = 3/114 (2%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V+D R +L RL GYEVV A DGE+A+ P L+++D+ +P +DG+ + Sbjct: 9 LVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTATK 68 Query: 61 ELRKESD---IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVL 111 +++ D IPII LTA +DR + G DDY KP K L ++ +++ Sbjct: 69 QIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 67.0 bits (162), Expect = 5e-14 Identities = 47/148 (31%), Positives = 73/148 (49%), Gaps = 6/148 (4%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +VDD R +L L+ +G+ V A +GE AIA + P ++++D+ MP LDG Q Sbjct: 422 VVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQ 481 Query: 61 ELR---KESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLR-RVDK 116 +++ + II LTA +R L G DD++ KPF P+EL A + L + Sbjct: 482 KIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALPS 541 Query: 117 NGMPGIPSSGVLQIATIRIDTNKRQVYK 144 G P P+S + I + Q+ K Sbjct: 542 QGQP--PASPLRPFPVITAPSLSEQLAK 567 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 62.0 bits (149), Expect = 2e-12 Identities = 33/101 (32%), Positives = 60/101 (59%), Gaps = 3/101 (2%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +VDD++ R++L L+ G+E+ A++G+EAIA + +P L+ +D+ MP +DGY + Sbjct: 634 VVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEATK 693 Query: 61 ELR---KESDIPIIMLTALGDVADRITGLELGADDYVVKPF 98 ++ K + ++ LTA ++ L G DD++ KPF Sbjct: 694 YIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 59.3 bits (142), Expect = 1e-11 Identities = 33/107 (30%), Positives = 55/107 (51%), Gaps = 4/107 (3%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 + +D +++ L+ +GY V A +G+E I + DLV++D+ MP +DG C+ Sbjct: 1194 LAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACR 1253 Query: 61 ELRK----ESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKEL 103 +R+ E I+ +TA DR L+ G D Y+ KP S +L Sbjct: 1254 HIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 Score = 45.4 bits (106), Expect = 2e-07 Identities = 33/99 (33%), Positives = 48/99 (48%), Gaps = 13/99 (13%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHES-DPDLVVLDVMMPKLDGYGVC 59 +VDD + RRIL+ + G GE A+ F D D +LD+ MP +DG + Sbjct: 1038 IVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFARCPDLDAAILDLQMPNMDGITLA 1097 Query: 60 QELR---KESDIPIIMLTALGDVADRITGLELGADDYVV 95 LR + D+PII+L+ +GL GAD+ V Sbjct: 1098 HHLRQFAQGKDLPIILLS---------SGLVAGADELSV 1127 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 58.5 bits (140), Expect = 2e-11 Identities = 30/103 (29%), Positives = 54/103 (52%), Gaps = 3/103 (2%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V+D R L+ G V A +G+EA+ + D +++D+ MP L+GY + Sbjct: 722 LVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDATR 781 Query: 61 ELRKES---DIPIIMLTALGDVADRITGLELGADDYVVKPFSP 100 +R++ ++PII +TA D+ L+ G +D++ KP P Sbjct: 782 AIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKP 824 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 57.8 bits (138), Expect = 3e-11 Identities = 35/105 (33%), Positives = 56/105 (53%), Gaps = 2/105 (1%) Query: 1 MVDDEASIRRILETRLSMIGYEV-VTAADGEEAIATFHESDPDLVVLDVMMP-KLDGYGV 58 +V+DE + + + L GYE+ V A+DG A+ E PDLV+LD+ + ++DG V Sbjct: 7 IVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGIEV 66 Query: 59 CQELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKEL 103 + ++ IPI+ LTA D + YV+KPF ++L Sbjct: 67 AERIKSLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQL 111 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 55.5 bits (132), Expect = 2e-10 Identities = 39/118 (33%), Positives = 61/118 (51%), Gaps = 9/118 (7%) Query: 1 MVDDEASIRRILETRLSMIG--YEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGY-- 56 + DD A R+ L T ++ + A +GE+AIA F E PD+ ++D+ MP+++G Sbjct: 11 IADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGVAA 70 Query: 57 --GVCQELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLR 112 +C ++ II+LT D GL+ GA Y++K P EL IR+V R Sbjct: 71 ISAICAIVKFAR---IIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHR 125 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 53.1 bits (126), Expect = 8e-10 Identities = 40/113 (35%), Positives = 61/113 (53%), Gaps = 3/113 (2%) Query: 1 MVDDEASIRRILETRLSMI-GYEVV-TAADGEEAIATFHESDPDLVVLDVMMPKLDGYGV 58 +V+D+ R L TRLS G +V A DGE AIA ++ D+V+LDV +P + G Sbjct: 12 LVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGGIEA 71 Query: 59 CQELRK-ESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSV 110 C +++K +P+++LT+ A +E A Y VK + + L IRSV Sbjct: 72 CHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSV 124 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 52.8 bits (125), Expect = 1e-09 Identities = 31/106 (29%), Positives = 57/106 (53%), Gaps = 3/106 (2%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +V+D + + L +G+ V AA+G A+ + + LV++D+ MP++DG Sbjct: 929 LVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEATI 988 Query: 61 ELRKE---SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKEL 103 +R+ + +PI+ +TA DR L+ G +D++ KP P+EL Sbjct: 989 AIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 Score = 50.4 bits (119), Expect = 5e-09 Identities = 36/119 (30%), Positives = 55/119 (46%), Gaps = 8/119 (6%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPD-----LVVLDVMMPKLDG 55 +VDD R +++ L + + V T G EA+ E+D + +V +D MP +DG Sbjct: 775 VVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNMDG 834 Query: 56 YGVCQELRK---ESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVL 111 V + L+ I ++TA G + LG DD +VKP SP L + VL Sbjct: 835 LEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARVL 893 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 51.2 bits (121), Expect = 3e-09 Identities = 34/113 (30%), Positives = 60/113 (53%), Gaps = 3/113 (2%) Query: 1 MVDDEASIRRILETRLSMI-GYEVVT-AADGEEAIATFHESDPDLVVLDVMMPKLDGYGV 58 ++DD +RR ++ + + +EVV + G E I+ ++ PD+++LD+ M L G Sbjct: 9 LIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGLDT 68 Query: 59 CQELRKES-DIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSV 110 + LR E D I++LT D T ++ GAD Y++K P L +I+ + Sbjct: 69 LKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRI 121 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 49.3 bits (116), Expect = 1e-08 Identities = 56/222 (25%), Positives = 102/222 (45%), Gaps = 24/222 (10%) Query: 1 MVDDEASIRRILETRLSMIG-YEVVTAAD-GEEAIATFHESDPDLVVLDVMMPKLDGYGV 58 +V+D+ ++ LE L +E++ D G A+ +PDL+V+D+ +P LDG Sbjct: 21 IVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDGIEA 80 Query: 59 CQELRKES-DIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKN 117 +++++ S I I++LT+ + I L GAD Y VK + + L I + ++ Sbjct: 81 TKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAA-----QD 135 Query: 118 GMPGIPSSGVLQIATIRIDTNKRQVYKGDERI-RLTGMEFSLLELLVSRSGEPFSRSEIL 176 G + QIA + ++ K V +G + L+ E +L+L+V E S EI Sbjct: 136 GATYLDP----QIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIV----EGKSNQEIA 187 Query: 177 QEVWGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTAR 218 Q + ++ T + H+ + KL D ++ R Sbjct: 188 QTL-------YLSTNTIKTHVRGIMNKLSVDDRVQAAVIALR 222 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 45.8 bits (107), Expect = 1e-07 Identities = 29/101 (28%), Positives = 54/101 (53%), Gaps = 5/101 (4%) Query: 1 MVDDEASIRRILETRLSMI-GYEVV-TAADGEEAIATFHESDPDLVVLDVMMPKLDGYGV 58 +++DE IR+ L+ L+M +E V AA+G + ++ PD+V++D+ +P ++G V Sbjct: 8 LIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGIDV 67 Query: 59 CQELRK---ESDIPIIMLTALGDVADRITGLELGADDYVVK 96 Q+L+K +++LT + GAD Y +K Sbjct: 68 TQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMK 108 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 43.1 bits (100), Expect = 8e-07 Identities = 32/116 (27%), Positives = 55/116 (47%), Gaps = 4/116 (3%) Query: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 +VDD+ L L + E++TA G+EAIAT ++ L++L M +LDG + Sbjct: 11 LVDDQRENLVALSRALDSLPVEIITANSGQEAIATAATTEFALMILAQEMSELDGLNTAK 70 Query: 61 ELRK---ESDIPIIMLTALGDVADRITGLE-LGADDYVVKPFSPKELEARIRSVLR 112 LR PII L + + + LG D++ +P + L+ + + L+ Sbjct: 71 ILRSFPLAEQTPIIFLARQEIITKAMAEINILGLVDFLAQPPNQNFLQVKAKLYLQ 126 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.139 0.389 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 22,410 Number of Sequences: 78 Number of extensions: 1007 Number of successful extensions: 95 Number of sequences better than 1.0e-05: 34 Number of HSP's better than 0.0 without gapping: 25 Number of HSP's successfully gapped in prelim test: 9 Number of HSP's that attempted gapping in prelim test: 12 Number of HSP's gapped (non-prelim): 38 length of query: 234 length of database: 48,235 effective HSP length: 60 effective length of query: 174 effective length of database: 43,555 effective search space: 7578570 effective search space used: 7578570 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002086 slr1042 (147 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002086 slr1042 300 1e-84 SYNE-PCC-01-000414 sll0649 100 4e-24 SYNE-PCC-01-001306 sll1905 97 2e-23 SYNE-PCC-01-002033 slr0947 96 5e-23 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 96 5e-23 SYNE-PCC-01-002731 slr1909 96 7e-23 SYNE-PCC-01-002635 slr1783 91 2e-21 SYNE-PCC-01-001461 slr0115 91 2e-21 SYNE-PCC-01-001437 slr0081 90 4e-21 SYNE-PCC-01-001133 sll1673 86 4e-20 SYNE-PCC-01-000242 sll0396 79 7e-18 SYNE-PCC-01-002873 slr2098 74 2e-16 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 73 5e-16 SYNE-PCC-01-002489 slr1588 72 6e-16 SYNE-PCC-01-002788 slr1982 71 1e-15 SYNE-PCC-01-002879 slr2104 69 7e-15 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 69 7e-15 SYNE-PCC-01-002672 slr1837 68 2e-14 SYNE-PCC-01-002486 slr1584 67 3e-14 SYNE-PCC-01-002221 slr1213 67 4e-14 SYNE-PCC-01-000523 sll0797 65 1e-13 SYNE-PCC-01-001132 sll1672 61 1e-12 SYNE-PCC-01-000800 sll1228 61 2e-12 SYNE-PCC-01-002618 slr1760 60 3e-12 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 60 4e-12 SYNE-PCC-01-002617 slr1759 57 4e-11 SYNE-PCC-01-000518 sll0789 55 1e-10 SYNE-PCC-01-000877 sll1330 51 2e-09 SYNE-PCC-01-000608 sll0921 47 3e-08 SYNE-PCC-01-001575 slr0312 45 1e-07 SYNE-PCC-01-002778 slr1969 43 5e-07 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 43 5e-07 SYNE-PCC-01-001160 sll1708 39 8e-06 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 300 bits (769), Expect = 1e-84 Identities = 147/147 (100%), Positives = 147/147 (100%) Query: 1 MMENKPGRIRQFASDPGLQCQAERTFMNAVLLVEDSSSQREMISGILKDHGWQVTIACDG 60 MMENKPGRIRQFASDPGLQCQAERTFMNAVLLVEDSSSQREMISGILKDHGWQVTIACDG Sbjct: 1 MMENKPGRIRQFASDPGLQCQAERTFMNAVLLVEDSSSQREMISGILKDHGWQVTIACDG 60 Query: 61 VEALEKLQNFSPDLVVLDIVMPRMNGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGM 120 VEALEKLQNFSPDLVVLDIVMPRMNGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGM Sbjct: 61 VEALEKLQNFSPDLVVLDIVMPRMNGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGM 120 Query: 121 RQGADAYIAKPFQPMELVGTIKQLLRN 147 RQGADAYIAKPFQPMELVGTIKQLLRN Sbjct: 121 RQGADAYIAKPFQPMELVGTIKQLLRN 147 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 99.8 bits (247), Expect = 4e-24 Identities = 48/120 (40%), Positives = 73/120 (60%) Query: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 M +L+VED ++I L+ + + DG L Q PDL+VLD+++P+++G Sbjct: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDG 70 Query: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 EVC RI+ P +K+ ++M ++KGEE DR G+ GAD Y+ KPF P ELV ++ LLR Sbjct: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLR 130 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 97.4 bits (241), Expect = 2e-23 Identities = 44/113 (38%), Positives = 71/113 (62%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +L+V+D +IS +L+ G+ T G EAL+++ PDL++LD++MP M+G EV Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIK 142 C R+K DP+T+++PVI ++ E+ D +GA Y+ KPF P EL+ +K Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVK 132 Score = 51.2 bits (121), Expect = 2e-09 Identities = 30/105 (28%), Positives = 56/105 (53%), Gaps = 1/105 (0%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +LL ED+ +++ +LK G+ V + +G EAL L D+V++D+ MP M+G Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 90 CRRI-KSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQ 133 I +S +++ +I ++ E DR + G + Y++KP + Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIR 846 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 95.9 bits (237), Expect = 5e-23 Identities = 46/115 (40%), Positives = 72/115 (62%), Gaps = 3/115 (2%) Query: 32 LVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEVCR 91 +V+D +S R ++ L G++V A DG EA+ PDLVVLD++MP+++GY VC+ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 92 RIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 ++ K ++P+IM ++ G+ DR G+ GAD Y+ KPF P EL I+ +LR Sbjct: 61 ELR---KESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLR 112 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 95.9 bits (237), Expect = 5e-23 Identities = 52/120 (43%), Positives = 79/120 (65%), Gaps = 4/120 (3%) Query: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 M+ +LLV+D E++S +L+ G+ V A +G+EAL+KL N S LV+LD++MP++NG Sbjct: 1 MSKLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKL-NESYKLVLLDVMMPKLNG 59 Query: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 E + I+ K NVPV+M +++GE+ DR G+ GAD + KPF EL+ IK +LR Sbjct: 60 IETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILR 116 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 95.5 bits (236), Expect = 7e-23 Identities = 46/117 (39%), Positives = 73/117 (62%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +LLV+D + ++ L+ G+QVT A +G EAL+ L PD++V DI+MP M+GY Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 +++ +P +PV+ S+KG+ +R G+ GAD Y+AKPF+P EL ++ LR Sbjct: 70 IEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLR 126 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 90.5 bits (223), Expect = 2e-21 Identities = 42/118 (35%), Positives = 77/118 (65%), Gaps = 1/118 (0%) Query: 29 AVLLVEDSSSQREMISGILKDHG-WQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGY 87 ++LLV+D RE + L+D G ++V +A + EA + LQ+ P LV+ DI+MP+++GY Sbjct: 57 SLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGY 116 Query: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 + ++++ D + +++PV+ +++G DR G + G DA+++KPF P EL ++ LL Sbjct: 117 QFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLL 174 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 90.5 bits (223), Expect = 2e-21 Identities = 39/120 (32%), Positives = 76/120 (63%) Query: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 M +L+++D + +++S L+ G+ V A DG++ PDL++LD+++P+++G Sbjct: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 Query: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 + VC+R++ D +T ++PV+M ++ G+ D+ G GAD Y+ KPF E++ ++ LLR Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLR 120 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 89.7 bits (221), Expect = 4e-21 Identities = 49/124 (39%), Positives = 75/124 (60%), Gaps = 9/124 (7%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPD-------LVVLDIVMP 82 +L+VED S RE I L++ G++V DG +AL LQ FS D L++LDI++P Sbjct: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 Query: 83 RMNGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIK 142 ++NG +VCR ++ N P+++ S+KG E ++ G+ GAD YI KPF ELV + Sbjct: 93 QVNGLDVCRSLRFGGD--NTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCR 150 Query: 143 QLLR 146 ++R Sbjct: 151 AMIR 154 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 86.3 bits (212), Expect = 4e-20 Identities = 44/113 (38%), Positives = 68/113 (60%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +LLV+D + +++S +L + G+ V G AL LQ PDL++LDI MP M+GY+V Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIK 142 C IK + + +++P+I S+ G+ FD+ G YI KPFQ E+V I+ Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 79.0 bits (193), Expect = 7e-18 Identities = 40/117 (34%), Positives = 67/117 (57%), Gaps = 2/117 (1%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 VL+VE+ + LK G+ V++A DG++ + Q F PDL++++ +P M+G E+ Sbjct: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLEL 64 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 CRR++ +P+I+ ++K + +R G+ GAD YI KPF E I+ LR Sbjct: 65 CRRLRE--MGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLR 119 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 74.3 bits (181), Expect = 2e-16 Identities = 36/108 (33%), Positives = 68/108 (62%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +LLVED+ +E+ + +L+D G+ V +A +G+ ALE+L N + LV++D+ MP M+G E Sbjct: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEA 986 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMEL 137 I+ +P+ +P++ ++ + DR ++ G + ++ KP +P EL Sbjct: 987 TIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 Score = 46.2 bits (108), Expect = 5e-08 Identities = 33/121 (27%), Positives = 56/121 (46%), Gaps = 5/121 (4%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKL-----QNFSPDLVVLDIVMPRM 84 VL+V+D+ R ++ +L+ + V G EAL L +N +V +D MP M Sbjct: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 Query: 85 NGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQL 144 +G EV RR+K+ + + ++ G E G D + KP P L ++ ++ Sbjct: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARV 892 Query: 145 L 145 L Sbjct: 893 L 893 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 72.8 bits (177), Expect = 5e-16 Identities = 41/116 (35%), Positives = 64/116 (55%), Gaps = 3/116 (2%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +L+VED R + GI + G+ V A +GVE L N + +LVV+DI +P NG + Sbjct: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLLL 65 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 R ++ + ++P+I + + E D+ G+ GAD Y+ KPF P EL + LL Sbjct: 66 ARELREE---LSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLL 118 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 72.4 bits (176), Expect = 6e-16 Identities = 39/122 (31%), Positives = 68/122 (55%), Gaps = 2/122 (1%) Query: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFS--PDLVVLDIVMPRM 84 M+ +L+VED + RE+I L +++ A +G AL L + PDL++ D++MP M Sbjct: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 Query: 85 NGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQL 144 +G+ + ++ + KT +P I ++ G D GM GAD Y+ KPF+ +L+ + Sbjct: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 Query: 145 LR 146 L+ Sbjct: 121 LQ 122 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 71.2 bits (173), Expect = 1e-15 Identities = 38/119 (31%), Positives = 67/119 (56%) Query: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 M VLLVED+ R+M+S L G++V IA DG +A+ + SP L+++D+ +P ++G Sbjct: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 Query: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 + ++IK P ++P+I ++ DR + G D Y KP + L+ ++ L+ Sbjct: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 68.9 bits (167), Expect = 7e-15 Identities = 36/113 (31%), Positives = 63/113 (55%) Query: 29 AVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYE 88 ++LLVED+ RE +L G +V +A +G EAL L + + D +++DI MP +NGY+ Sbjct: 719 SILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYD 778 Query: 89 VCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTI 141 R I+ +N+P+I ++ D+ + G + ++ KP +P L T+ Sbjct: 779 ATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 68.9 bits (167), Expect = 7e-15 Identities = 40/117 (34%), Positives = 64/117 (54%), Gaps = 1/117 (0%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +L+VED + REMI+ L + V A D A+ K++ +P L++LD ++P +G + Sbjct: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQF 63 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 + IK +P+IM ++K E D + GAD YI KPF P L+ I+ + R Sbjct: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWR 120 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 67.8 bits (164), Expect = 2e-14 Identities = 39/120 (32%), Positives = 66/120 (55%), Gaps = 2/120 (1%) Query: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 M +LLV+D ++ E +S L G + +A G L DL++LD ++P+++G Sbjct: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 Query: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 E+CR+I+ + PV+ ++K DR G+ G D Y+ KPF+ EL+ ++ LLR Sbjct: 61 LEICRQIRI--LGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLR 118 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 67.0 bits (162), Expect = 3e-14 Identities = 37/117 (31%), Positives = 64/117 (54%), Gaps = 2/117 (1%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +LLVED E ++ L D + V IA D A + DLV+LD+++P ++G + Sbjct: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 C++ +S + +P++M +++ D+ G+ GAD Y+ KP EL ++ LLR Sbjct: 63 CQKWRS--HSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLR 117 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 66.6 bits (161), Expect = 4e-14 Identities = 42/122 (34%), Positives = 69/122 (56%), Gaps = 9/122 (7%) Query: 30 VLLVEDSSSQREMISGILKDHGWQV-TIACDGVEALEKLQNFSPDLVVLDI-VMPRMNGY 87 +L+VED + I+ +LK G+++ IA DG AL+K+ F PDLV+LDI + ++G Sbjct: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 Query: 88 EVCRRIKSDPKTKNVPVIMCS--SKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 EV RIKS ++P++ + S GE +R + Y+ KPF+ +L+ T+ + Sbjct: 65 EVAERIKS---LYSIPIVYLTAFSDGETLER--AQKTNPQGYVIKPFRREQLLSTVAIAI 119 Query: 146 RN 147 N Sbjct: 120 AN 121 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 64.7 bits (156), Expect = 1e-13 Identities = 37/119 (31%), Positives = 69/119 (57%), Gaps = 4/119 (3%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPD--LVVLDIVMPRMNGY 87 +LLVED + I +L + V DG +A + L+N + L ++D ++P ++G Sbjct: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 Query: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 E+C+++++ + ++PV+M ++ GE +R G+ GAD Y+ KPF EL+ ++ L R Sbjct: 63 ELCQKLRT--QGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQR 119 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 61.2 bits (147), Expect = 1e-12 Identities = 30/104 (28%), Positives = 59/104 (56%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +L+V+D S R+++ +L G+++ A +G EA+ +++ P L+ +D+ MP M+GYE Sbjct: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQ 133 + IK K V+ ++ E ++ + G D ++ KPF+ Sbjct: 692 TKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFR 735 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 60.8 bits (146), Expect = 2e-12 Identities = 31/116 (26%), Positives = 67/116 (57%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 VL+V+D R ++ +L G+ V A +G A+ +++ P ++++D+ MP ++G Sbjct: 420 VLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRST 479 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 ++IK+ P+ ++ +I ++ E +R + G D +++KPF+P EL+ + + L Sbjct: 480 TQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHL 535 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 60.1 bits (144), Expect = 3e-12 Identities = 35/116 (30%), Positives = 58/116 (50%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +L+V+D R + L+ G +V +A +G EAL K P++V+LD VMP M+G+ Sbjct: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFAC 73 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 C+ + + + V+M + +E GA Y+ KP L +K+LL Sbjct: 74 CQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 59.7 bits (143), Expect = 4e-12 Identities = 35/117 (29%), Positives = 66/117 (56%), Gaps = 2/117 (1%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +LL+ED + + L G+ V DG + L + D VVLD+ +P+++G EV Sbjct: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 ++ +S+ + +VPV++ +++ +R G++ GAD Y+ KPF E+ ++ L+R Sbjct: 63 LQQWRSNHQ--DVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIR 117 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 56.6 bits (135), Expect = 4e-11 Identities = 33/109 (30%), Positives = 58/109 (53%), Gaps = 1/109 (0%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 +LL ED+ +++ +L + G+ V IA +G E ++ L+ DLV++D+ MP M+G Sbjct: 1192 ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITA 1251 Query: 90 CRRIKSD-PKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMEL 137 CR I+ P + ++ ++ DR + G D YI+KP +L Sbjct: 1252 CRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 55.1 bits (131), Expect = 1e-10 Identities = 34/119 (28%), Positives = 62/119 (52%), Gaps = 4/119 (3%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQN--FSPDLVVLDIVMPRMNGY 87 +LLVED + L+ + V DG A L + L + D ++P ++G Sbjct: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 Query: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 E+C++++ + ++P++M ++K + DR G+ GAD Y+ KPF EL+ ++ L R Sbjct: 63 ELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQR 119 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 51.2 bits (121), Expect = 2e-09 Identities = 33/117 (28%), Positives = 58/117 (49%), Gaps = 3/117 (2%) Query: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 + +VE + R ++S L+ G+ V +A + N P L V+D + +G E+ Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 Query: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 CR + ++ + + S+K E D G++ GAD Y+ KPF E + I+ L+R Sbjct: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIR 119 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 47.0 bits (110), Expect = 3e-08 Identities = 33/116 (28%), Positives = 54/116 (46%), Gaps = 4/116 (3%) Query: 30 VLLVEDSSSQREMISGILK---DHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 + L+ED R+ + L W V A +G L +Q PD+V++DI +P MNG Sbjct: 6 IALIEDEDLIRQGLQDALTMEPSFEW-VGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 Query: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIK 142 +V +++K P V++ + +E GADAY K + L+ I+ Sbjct: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 45.1 bits (105), Expect = 1e-07 Identities = 31/119 (26%), Positives = 59/119 (49%), Gaps = 4/119 (3%) Query: 30 VLLVEDSSSQREMISGIL-KDHGWQVTIACD-GVEALEKLQNFSPDLVVLDIVMPRMNGY 87 VL+ +D + R+ ++ I+ +D QV + G +A+ + PD+ ++D+ MP + G Sbjct: 9 VLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGV 68 Query: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 I + K + V+ E+ R G++ GA Y+ K +P EL+ I+ + R Sbjct: 69 AAISAICAIVKFARIIVLTTYDSDEDIYR--GLQAGAKGYLLKETEPDELLNAIRTVHR 125 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 42.7 bits (99), Expect = 5e-07 Identities = 30/123 (24%), Positives = 56/123 (45%), Gaps = 2/123 (1%) Query: 22 AERTFMNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVM 81 A F ++V+++E +I +L +QV D AL++++ P L+++D Sbjct: 624 AAMPFNSSVIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQPGLIIVDGDF 683 Query: 82 PRMNGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTI 141 + EV R IK + V V + S + ++G D Y+ KP QP L+ + Sbjct: 684 VDVT--EVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDYLLKPLQPELLLQRV 741 Query: 142 KQL 144 + + Sbjct: 742 QSI 744 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 42.7 bits (99), Expect = 5e-07 Identities = 29/117 (24%), Positives = 57/117 (48%), Gaps = 4/117 (3%) Query: 30 VLLVEDSSSQREMISGI--LKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGY 87 VLL++D R I + L D+ V G E + SPD+++LD+ M ++G Sbjct: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 Query: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQL 144 + + ++++ + ++ S + D + + GAD Y+ K +P L+ IK++ Sbjct: 67 DTLKGLRAEGVDARILILTVSD--AKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRI 121 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 38.9 bits (89), Expect = 8e-06 Identities = 27/103 (26%), Positives = 53/103 (51%), Gaps = 4/103 (3%) Query: 30 VLLVEDSSSQREMISGILKDHG-WQVTIACD-GVEALEKLQNFSPDLVVLDIVMPRMNGY 87 +L+VED + + L H +++ D G A+++ +PDL+V+DI +P ++G Sbjct: 19 ILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDGI 78 Query: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAK 130 E ++IK + + +++ +S + + GADAY K Sbjct: 79 EATKQIKQ--TSPQIHIVVLTSHTLPNEIIAALSSGADAYCVK 119 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.137 0.409 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 13,520 Number of Sequences: 78 Number of extensions: 539 Number of successful extensions: 58 Number of sequences better than 1.0e-05: 33 Number of HSP's better than 0.0 without gapping: 24 Number of HSP's successfully gapped in prelim test: 9 Number of HSP's that attempted gapping in prelim test: 13 Number of HSP's gapped (non-prelim): 36 length of query: 147 length of database: 48,235 effective HSP length: 56 effective length of query: 91 effective length of database: 43,867 effective search space: 3991897 effective search space used: 3991897 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.9 bits) S2: 89 (38.9 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002220 slr1212 (844 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002220 slr1212 1624 0.0 SYNE-PCC-01-000542 sll0821 143 2e-36 SYNE-PCC-01-000983 sll1473 141 7e-36 SYNE-PCC-01-002617 slr1759 140 2e-35 SYNE-PCC-01-002778 slr1969 126 3e-31 SYNE-PCC-01-001517 slr0222 104 1e-24 SYNE-PCC-01-001690 slr0473 57 2e-10 SYNE-PCC-01-002879 slr2104 45 7e-07 SYNE-PCC-01-002873 slr2098 45 7e-07 SYNE-PCC-01-000891 sll1353 45 9e-07 >SYNE-PCC-01-002220 slr1212 Length = 844 Score = 1624 bits (4205), Expect = 0.0 Identities = 824/844 (97%), Positives = 824/844 (97%) Query: 1 MAITAFTLGDFFQANSYIPHGHCYLWQTPLVWLHVSADFFTAIAYYSIPLTLLYFLRKRQ 60 MAITAFTLGDFFQANSYIPHGHCYLWQTPLVWLHVSADFFTAIAYYSIPLTLLYFLRKRQ Sbjct: 1 MAITAFTLGDFFQANSYIPHGHCYLWQTPLVWLHVSADFFTAIAYYSIPLTLLYFLRKRQ 60 Query: 61 DIPFPNIIFLFSTFILCCGTSHFFDIITLWYPIYWISGTVKASMAIVSIITVFELIQIVP 120 DIPFPNIIFLFSTFILCCGTSHFFDIITLWYPIYWISGTVKASMAIVSIITVFELIQIVP Sbjct: 61 DIPFPNIIFLFSTFILCCGTSHFFDIITLWYPIYWISGTVKASMAIVSIITVFELIQIVP 120 Query: 121 NALNLKSPTELATLNLALNQEIKERQTAEIALQELNNNLEKRVEDRTTQLAKINQQLEQE 180 NALNLKSPTELATLNLALNQEIKERQTAEIALQELNNNLEKRVEDRTTQLAKINQQLEQE Sbjct: 121 NALNLKSPTELATLNLALNQEIKERQTAEIALQELNNNLEKRVEDRTTQLAKINQQLEQE 180 Query: 181 IEDKTRAKEDLEKNKDQLAQLAAIVESSQDAIISKTLDGNITSWNESAERLFGYTAEEMI 240 IEDKTRAKEDLEKNKDQLAQLAAIVESSQDAIISKTLDGNITSWNESAERLFGYTAEEMI Sbjct: 181 IEDKTRAKEDLEKNKDQLAQLAAIVESSQDAIISKTLDGNITSWNESAERLFGYTAEEMI 240 Query: 241 GSHXXXXXXXXXXXXXXXXXXXXRQGQRINTYETQRQRKDGTKIDVALTISPIRDEHKNV 300 GSH RQGQRINTYETQRQRKDGTKIDVALTISPIRDEHKNV Sbjct: 241 GSHITKLIPEELILEEDLIAECIRQGQRINTYETQRQRKDGTKIDVALTISPIRDEHKNV 300 Query: 301 VGASKIVRDITARLDVENALRESQYFIEKLANYSPQILYILDPIAWKNIYVNYQSFEILG 360 VGASKIVRDITARLDVENALRESQYFIEKLANYSPQILYILDPIAWKNIYVNYQSFEILG Sbjct: 301 VGASKIVRDITARLDVENALRESQYFIEKLANYSPQILYILDPIAWKNIYVNYQSFEILG 360 Query: 361 YTPEEFKNGGTELLLNIVHPDDIPTLYENKNFWQKSQEGQVLTTEYRMRHKNGSWRWLRS 420 YTPEEFKNGGTELLLNIVHPDDIPTLYENKNFWQKSQEGQVLTTEYRMRHKNGSWRWLRS Sbjct: 361 YTPEEFKNGGTELLLNIVHPDDIPTLYENKNFWQKSQEGQVLTTEYRMRHKNGSWRWLRS 420 Query: 421 REVVFARDDYGQVTKVLGTAQDISDSKEQEQRLYEQGRRESLLREITQRIRQSLDLPTIF 480 REVVFARDDYGQVTKVLGTAQDISDSKEQEQRLYEQGRRESLLREITQRIRQSLDLPTIF Sbjct: 421 REVVFARDDYGQVTKVLGTAQDISDSKEQEQRLYEQGRRESLLREITQRIRQSLDLPTIF 480 Query: 481 NTVVQEIRQFLEADRVVIFQFSPDSDFSVGNIVAESVLAPFKPIINSAIEETCFSNNYAQ 540 NTVVQEIRQFLEADRVVIFQFSPDSDFSVGNIVAESVLAPFKPIINSAIEETCFSNNYAQ Sbjct: 481 NTVVQEIRQFLEADRVVIFQFSPDSDFSVGNIVAESVLAPFKPIINSAIEETCFSNNYAQ 540 Query: 541 RYQQGRIQVIEDIHQSHLRQCHIDFLARLQVRANLVLPLINDAILWGLLCIHQCDSSRVW 600 RYQQGRIQVIEDIHQSHLRQCHIDFLARLQVRANLVLPLINDAILWGLLCIHQCDSSRVW Sbjct: 541 RYQQGRIQVIEDIHQSHLRQCHIDFLARLQVRANLVLPLINDAILWGLLCIHQCDSSRVW 600 Query: 601 EQTEIDLLKQITNQFEIAIQQATLYEQAQQELASKNQLFVQLTNELEQKKVLLKEIHHRV 660 EQTEIDLLKQITNQFEIAIQQATLYEQAQQELASKNQLFVQLTNELEQKKVLLKEIHHRV Sbjct: 601 EQTEIDLLKQITNQFEIAIQQATLYEQAQQELASKNQLFVQLTNELEQKKVLLKEIHHRV 660 Query: 661 KNNLQIMSSLLYLQFSKASPAIQQLSEEYQNRIQSMALIHEQLYRSEDLANIDFSQYLKN 720 KNNLQIMSSLLYLQFSKASPAIQQLSEEYQNRIQSMALIHEQLYRSEDLANIDFSQYLKN Sbjct: 661 KNNLQIMSSLLYLQFSKASPAIQQLSEEYQNRIQSMALIHEQLYRSEDLANIDFSQYLKN 720 Query: 721 LTHNICQSYGCNTDSIKIKLLVEQVKVPLEQSIPLGLIIQELVSNALKHAFPTTEGEISI 780 LTHNICQSYGCNTDSIKIKLLVEQVKVPLEQSIPLGLIIQELVSNALKHAFPTTEGEISI Sbjct: 721 LTHNICQSYGCNTDSIKIKLLVEQVKVPLEQSIPLGLIIQELVSNALKHAFPTTEGEISI 780 Query: 781 KFTSMNSHYSLQVWDNGVGISRDIDLENTDSLGMQLIYSLTEQLQGELHYEYVGGAQFGL 840 KFTSMNSHYSLQVWDNGVGISRDIDLENTDSLGMQLIYSLTEQLQGELHYEYVGGAQFGL Sbjct: 781 KFTSMNSHYSLQVWDNGVGISRDIDLENTDSLGMQLIYSLTEQLQGELHYEYVGGAQFGL 840 Query: 841 EFSL 844 EFSL Sbjct: 841 EFSL 844 >SYNE-PCC-01-000542 sll0821 Length = 1276 Score = 143 bits (361), Expect = 2e-36 Identities = 71/180 (39%), Positives = 115/180 (63%), Gaps = 3/180 (1%) Query: 450 EQRLYEQGRRESLLREITQRIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSV 509 ++RL ++ +E L+ +I +IR SL++ I + V E+RQFL DRVV+F+F+ S +S Sbjct: 914 KERLQQRNVKEKLVLKIANKIRASLNINDILYSTVTEVRQFLNTDRVVLFKFN--SQWS- 970 Query: 510 GNIVAESVLAPFKPIINSAIEETCFSNNYAQRYQQGRIQVIEDIHQSHLRQCHIDFLARL 569 G +V ES + IIN I++ CF +Y + Y++GR++ + DI ++ L CH + L Sbjct: 971 GQVVTESHNDFCRSIINDEIDDPCFKGHYLRLYREGRVRAVSDIEKADLADCHKELLRHY 1030 Query: 570 QVRANLVLPLINDAILWGLLCIHQCDSSRVWEQTEIDLLKQITNQFEIAIQQATLYEQAQ 629 QV+ANLV+P++ + LWGLL H+C + R W++ ++ LL ++ Q IAI Q LYEQ + Sbjct: 1031 QVKANLVVPVVFNENLWGLLIAHECKTPRYWQEEDLQLLMELATQVAIAIHQGELYEQLE 1090 Score = 70.1 bits (170), Expect = 3e-14 Identities = 54/195 (27%), Positives = 91/195 (46%), Gaps = 27/195 (13%) Query: 460 ESLLREITQRIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSVGNIVAESVLA 519 E LR + + ++L L +V+E R FL DRV I++F+ D G ++AE+V Sbjct: 8 EDFLRNVINKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFASDGS---GEVLAEAVNR 64 Query: 520 -----------PFKPIINSAIEET-----CFSNNYAQRYQQ-----GRIQVIEDI--HQS 556 P + I A EE + + A R ++ GRI E H + Sbjct: 65 AALPSLLGLHFPVEDIPPQAREELGNQRKMIAVDVAHRRKKSHELSGRISPTEHSNGHYT 124 Query: 557 HLRQCHIDFLARLQVRANLVLPLINDAILWGLLCIHQCDSSRVWEQTEIDLLKQITNQFE 616 + CHI +L + V ++L +P++ D LWG++ +H R EQ E + + ++ + Sbjct: 125 TVDSCHIQYLLAMGVLSSLTVPVMQDQQLWGIMAVHHSKPRRFTEQ-EWETMALLSKEVS 183 Query: 617 IAIQQATLYEQAQQE 631 +AI Q+ L Q Q+ Sbjct: 184 LAITQSQLSRQVHQQ 198 >SYNE-PCC-01-000983 sll1473 Length = 481 Score = 141 bits (356), Expect = 7e-36 Identities = 80/239 (33%), Positives = 128/239 (53%), Gaps = 29/239 (12%) Query: 450 EQRLYEQGRRESLLREITQRIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSV 509 E + +Q +RE + +ITQ IRQSL+L T+ NT V E++ L+ DRV+I++ D Sbjct: 33 EISIKQQTQRERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQDG---T 89 Query: 510 GNIVAESVLAPFKPIINSAIEETCFSNNYAQRYQQGRIQVIEDIHQSHLRQCHIDFLARL 569 G+ + ESV A + I+ + F Y Q Y +G+++ I DI Q + C DF+ + Sbjct: 90 GSAITESVNANYPSILGRTFSDEVFPVEYHQAYTKGKVRAINDIDQDDIEICLADFVKQF 149 Query: 570 QVRANLVLPLIND------------AILWGLLCIHQCDSSRVWEQTEIDLLKQITNQFEI 617 V++ LV+P++ LWGLL HQC +R W+ E++L+KQ+ NQ I Sbjct: 150 GVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPWQPWEVELMKQLANQVAI 209 Query: 618 AIQQATLYEQAQ--------------QELASKNQLFVQLTNELEQKKVLLKEIHHRVKN 662 AIQQ+ LYEQ Q Q+LA+ NQ +E ++ + L+ +H +++ Sbjct: 210 AIQQSELYEQLQQLNKDLENRVEKRTQQLAATNQSLRMEISERQKTEAALRHTNHTLQS 268 Score = 95.9 bits (237), Expect = 4e-22 Identities = 73/244 (29%), Positives = 112/244 (45%), Gaps = 13/244 (5%) Query: 128 PTELATLNLALNQEIKERQTAEI--ALQELNNNLEKRVEDRTTQLAKINQQLEQEIEDKT 185 P E+ + NQ Q +E+ LQ+LN +LE RVE RT QLA NQ L EI ++ Sbjct: 194 PWEVELMKQLANQVAIAIQQSELYEQLQQLNKDLENRVEKRTQQLAATNQSLRMEISERQ 253 Query: 186 RAKEDLEKNKDQLAQLAAIVESSQDAIISKTLDGNITSWNESAERLFGYTAEEMIGSHXX 245 + + L L L A +S I + L I WN +AER+FG+T E+I +H Sbjct: 254 KTEAALRHTNHTLQSLIA---ASPRGIFTLNLADQIQIWNPTAERIFGWTETEII-AHPE 309 Query: 246 XXXXXXXXXXXXXXXXXXRQGQRINTYETQRQRKDGTKIDVALTISPIRDEHKNVVGASK 305 G + E + Q+KDG+ I++ L+ +P+ D +N+ G Sbjct: 310 LLTSNILLEDYQQFKQKVLSGMVSPSLELKCQKKDGSWIEIVLSAAPLLDSEENIAGLVA 369 Query: 306 IVRDITARLDVENALRESQYFIEKLANYSPQILYI----LDPIAWKNIYVNYQSFEILGY 361 +V DIT + +R Q + N + ++ +D + +YVN +I GY Sbjct: 370 VVADITEQKRQAEQIRLLQSVV---VNTNDAVVITEAEPIDDPGPRILYVNEAFTKITGY 426 Query: 362 TPEE 365 T EE Sbjct: 427 TAEE 430 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 140 bits (352), Expect = 2e-35 Identities = 127/471 (26%), Positives = 212/471 (45%), Gaps = 18/471 (3%) Query: 171 AKINQQLEQEIEDKTRAKEDLEKNKDQLAQLAAIVESSQDAIISKTLDGNITSWNESAER 230 +K ++QL + I+ + + +E L+ +LA ++ + I+ T +G IT N+ Sbjct: 304 SKHSEQLSESIKQQQKVEEFLKSTLQELAVQKTALDEAAIVAITDT-EGVITYVNDKFVE 362 Query: 231 LFGYTAEEMIGSHXXXXXXXXXXXXXXXXXXXXRQGQRINTYETQRQRKDGTKIDVALTI 290 + GY+ EE+IG+ + ++ + + K G V T+ Sbjct: 363 VSGYSREELIGNTHRLVSSGYHSPEFFQQFWQTIRAGKVWHGQINNRAKAGNTYWVDSTV 422 Query: 291 SPIRDEHKNVVGASKIVRDITARLDVENALRESQYFIEKLANYSPQILYILDPIAWKNIY 350 P D++ N I +IT+ E +LRES+ +A+ SP +L++ D K + Sbjct: 423 VPFLDDNGNPYQYLAIRFEITSSKQAEKSLRESEARFRMMADTSPIMLWVADQDK-KMTF 481 Query: 351 VNYQSFEILGYTPEEFKNGGTELLLNIVHPDDIPTLYENKNFWQKSQEGQVLTTEYRMRH 410 VN E G T E G L +HPDD + + Q + + EYR R Sbjct: 482 VNQSWLEFRGATLAEESGNG---YLEGIHPDDKG--HYLGVYSQAFGDRRRFELEYRYRR 536 Query: 411 KNGSWRWLRSREVVFARDDYGQVTKVLGTAQDISDSKEQEQRLYEQGRRESLLREITQRI 470 + +RW+ + V +D G+ +G+ DI+D K+ + L ++ + L+R+I+Q I Sbjct: 537 VDQQYRWIVNVGVPRYLED-GKFMGYVGSCLDITDRKQAQDILQKKLNQILLMRKISQEI 595 Query: 471 RQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSVGNIVAESVLAPFKPIINSAIE 530 R+SL IF T +++ R +I +S + V +VAE + F ++ Sbjct: 596 RRSLQPTLIFQTAARQVGNVFAVSRCLIHNYSEATTLQVP-VVAEYLGGQFTSLLAG--- 651 Query: 531 ETCFSNNYAQRYQQG-RIQVIEDIHQSHLRQCHID-FLARLQVRANLVLPLINDAILWGL 588 E Y QG R + D+ Q L H F R QV++ L + G+ Sbjct: 652 EIAVEQAYDPTIIQGDRAMAVVDLDQD-LNSTHTKAFYQRFQVKSFLAVRTSYQGKANGI 710 Query: 589 LCIHQCDSSRVWEQTEIDLLKQITNQFEIAIQQATLYE---QAQQELASKN 636 + +HQCD RVW EI+LL+ I Q IA+ QA L E + ++ELA KN Sbjct: 711 IALHQCDRQRVWTADEIELLEAIAEQMGIALAQAALLEKERERRRELAQKN 761 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 126 bits (316), Expect = 3e-31 Identities = 109/399 (27%), Positives = 175/399 (43%), Gaps = 60/399 (15%) Query: 456 QGRRESLLREITQRIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQF-------------- 501 Q + LL ++ +IRQSLDL I N V +++FL DR+VI+QF Sbjct: 155 QASQVKLLSQVIAQIRQSLDLSEILNNAVTAVQKFLFVDRLVIYQFHYSQPSLTPLEENQ 214 Query: 502 --SPDSDFSVGNIVAESVLAP-FKPIINSAIEETCFSN--NYAQRYQQGRIQVIEDIHQS 556 +P G + E+ +P ++ E CFS +Y Q+Y +G + + DI Sbjct: 215 IPAPRPRQQYGEVTYEARRSPEIDTMLGIMTENDCFSQVFSYEQKYLKGAVVAVSDIENH 274 Query: 557 HLRQ-CHIDFLARLQVRANLVLPLINDAILWGLLCIHQCDSSRVWEQTEIDLLKQITNQF 615 + C + L R QVRA LV P+I + LWGLL HQC R W +E + L QI Sbjct: 275 YSSSYCLVGLLQRYQVRAKLVAPIIVEGQLWGLLIAHQCHHPRQWLDSEKNFLGQIGEHL 334 Query: 616 EIAIQQATLYEQAQQELASKNQLFVQLTNELEQ-----------KKVLLKEIHHRVKNNL 664 +AI Q+ LY + Q++ + + ++ T EL K + I H ++ L Sbjct: 335 AVAIVQSLLYSEVQKQKNNFEKRVIERTKELRDTLMAAQAANLLKSQFINNISHELRTPL 394 Query: 665 Q--IMSSLLYLQFSKASPAIQQLSEEYQNRIQSMALIHEQLYRSEDLAN--IDFSQYLKN 720 I S L++ ++ ++Y + I E + D N I SQ Sbjct: 395 TSIIGLSATLLRWFDHPASLPPAKQQYY-----LLNIQENGKKLLDQINSIIQLSQLESG 449 Query: 721 LTHNICQSYGCNT------DSIKIKLLVEQVKVPLEQSIPLG------------LIIQEL 762 T CQS+ +T S+ + +Q+ + L+ I +G I+ +L Sbjct: 450 QTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERLDQILTQL 509 Query: 763 VSNALKHAFPTTEGEISIKFTSMNSHYSLQVWDNGVGIS 801 ++NALK F EG + ++ ++ QV D G+GI+ Sbjct: 510 LNNALK--FTPAEGTVILRIWKESNQAIFQVEDTGIGIN 546 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 104 bits (260), Expect = 1e-24 Identities = 159/692 (22%), Positives = 278/692 (40%), Gaps = 118/692 (17%) Query: 141 EIKERQTAEIALQELNNNLEKRVEDRTTQLAKINQQLEQEIEDKTRAKEDLEKNKDQLAQ 200 +I ER+ AEI L+ +N NLE +E+RT++L N QL QEI +K + L Q A+ Sbjct: 496 DITERKLAEIQLKTINENLEVLIEERTSELESSNSQLLQEIIEKEQVSITL---TTQEAK 552 Query: 201 LAAIVESSQDAIISKTLDGNITSWNESAERLFGYTAEEMIGSHXXXXXXXX--XXXXXXX 258 A+V + DAII T+D + N A L GY EE+IG Sbjct: 553 YRALVRDAGDAIILITIDFIVLEVNYRAVELSGYDQEELIGHSLLDLRLLTPEFYAQQRH 612 Query: 259 XXXXXRQGQRINTYETQRQRKDGTKIDVALTISPIRDEHKNVVGASKIVRDITARLDVEN 318 ++ Q + + +K G I V ++ S I E+ ++V IV DIT + ++ Sbjct: 613 FWRTLKREQISQLTDVRLVKKSGELISVDISASVITYENHSIVQC--IVHDITLQKTIQA 670 Query: 319 ALRESQYF----IEKLAN-----YSPQILYILDPIAWKNIYVNYQSFEILGYTPEEFKN- 368 L+ YF +EK+ Y + L W + N I GY+ EE Sbjct: 671 QLQRENYFRRQLLEKMVEGLFVCYEVEQFPFLQFTVWNPMMKN-----ITGYSQEEINQC 725 Query: 369 GGTELLLNIVHPDDIPTLYENKNFWQKSQEGQVLTTEYRMRHKNGSWRWLRSREVVFARD 428 G E L + P + + + ++ E+++ ++G+ LR+ E+ A Sbjct: 726 GWYETLYSHGQPQEAVRV----RMKAVALGVDMVKEEWQIIRRDGA---LRTVEISTALI 778 Query: 429 DYGQVTKVLGTAQDISDSKEQEQRLYEQGRRESLLREITQRIRQSLDLPTIFNTVVQEIR 488 T +L QDI+D K Q Q + E+ LR I + + + TI + I Sbjct: 779 TSNNQTNILAVIQDITDQKRQLQIIQ---NNEATLRCIVENLPIFFGMRTINFSNWYYIN 835 Query: 489 QFLEADRVVIFQFSPDSDFSVGNIVAESVLAPFKPIINSAIEETCFSNNYAQRYQQGRIQ 548 E+ + ++PD + P++ I YA+ +Q R Sbjct: 836 PSFES----LTGYTPDEMYE-------------DPLLWQKIHR----EEYAENLEQARPN 874 Query: 549 VIEDIHQSHLRQCHIDFLARLQVRANLVLPLINDAILWGLLCIHQCDSSRVWEQTEIDLL 608 + E W + + + D +++W QT L+ Sbjct: 875 LGE----------------------------------WTIFSMEKKDGTQIWAQTVEFLV 900 Query: 609 KQITNQFEIAIQQATLYEQAQQELASKNQLFVQLTNELEQKKVLLKEIHHRVKNNLQIM- 667 +++ + + + + + E+ + L V+ E K + + H + L + Sbjct: 901 DDLSDTARVVVFGQDITDIKRAEIETLRSL-VKERELNEAKSQFVDIVSHEFRTPLTSII 959 Query: 668 --SSLLYLQFSKASPAIQQLSEEYQNRIQSMA-----LIHEQLYRSE--------DLANI 712 LL F + S + ++Y N IQ+ + LI + L S +L NI Sbjct: 960 GFGELLSKYFDRLS---TEKKQQYINNIQNSSQRLKQLIDDVLSISRYDANKIEIELGNI 1016 Query: 713 DFSQYLKNLTHNICQSYGCNTDSIKIKLLVEQVKVPLEQSIP----LGLIIQELVSNALK 768 + L+NL +++ +++ C S L +K P E S+ L I++ ++SNA+K Sbjct: 1017 N----LRNLANDLIENFSCGLGSEHNFELNYHLK-PDEHSLVDVRLLRHILENILSNAIK 1071 Query: 769 HAFPTTEGEISIKFTSMNSHYSLQVWDNGVGI 800 ++ P + I++ + H QV D G+GI Sbjct: 1072 YSAPGS--TITLDISKDEEHLLFQVRDEGIGI 1101 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 57.0 bits (136), Expect = 2e-10 Identities = 37/148 (25%), Positives = 69/148 (46%), Gaps = 27/148 (18%) Query: 469 RIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSVGNIVAESVLAPFKPIINSA 528 R+RQ +L ++ +V+E+R+ DRV++++F ++ G+++AE +P + Sbjct: 146 RLRQQANLRDFYDVIVEEVRRMTGFDRVMLYRFDENNH---GDVIAEDKRDDMEPYLGLH 202 Query: 529 IEETCFSNNYAQRYQQGRIQVIEDIH---------------------QSHLRQ---CHID 564 E+ + + I+VI D++ +S LR CH+ Sbjct: 203 YPESDIPQPARRLFIHNPIRVIPDVYGVAVPLTPAVNPSTNRAVDLTESILRSAYHCHLT 262 Query: 565 FLARLQVRANLVLPLINDAILWGLLCIH 592 +L + V A+L + LI D LWGL+ H Sbjct: 263 YLKNMGVGASLTISLIKDGHLWGLIACH 290 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 45.4 bits (106), Expect = 7e-07 Identities = 31/114 (27%), Positives = 59/114 (51%), Gaps = 6/114 (5%) Query: 131 LATLNLALNQEIKERQTAEIALQELNNNLEKRVEDRTTQLAKINQQLEQEIEDKTRAKED 190 L L+ Q++ E Q A+I+L+ LN LE+R+++RT +L + L +E K A+ Sbjct: 398 LPLLSRGTIQDVTELQEAQISLEHLNEKLEQRIQERTQELENSQESL---LEAKLVAEGA 454 Query: 191 LEKNKDQLAQLAAIVESSQDAIISKT---LDGNITSWNESAERLFGYTAEEMIG 241 + + LA ++ + + +AII + L ++TS + + Y E ++G Sbjct: 455 TKAKSEFLANMSHEIRTPMNAIIGMSELVLQTDLTSQQRNYLQKVQYAGELLLG 508 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 45.4 bits (106), Expect = 7e-07 Identities = 70/312 (22%), Positives = 123/312 (39%), Gaps = 51/312 (16%) Query: 204 IVESSQDAIISKTLDGNITSWNESAERLFGYTAEEMIGSHXXXXXXXXXXXXXXXXXXXX 263 I+E + + I+ GNI N S E+LFGY+ E+IG Sbjct: 275 IIEYAPEGIMVLDAQGNIILANTSIEKLFGYSQTELIGQ---SIALLGLAELLQQSLHLL 331 Query: 264 RQGQRI--------NTYETQRQRKDGTK--IDVALTISPIRDEHKNVVGASKIVRDITAR 313 ++G+ + +E R DG++ I+V+LT P + + + AS VRDI+AR Sbjct: 332 QEGEDVGPTCPLDQEEFEILGTRYDGSEFPIEVSLTSLPSLSQREMNIFAS--VRDISAR 389 Query: 314 LDVENALRESQYFIEKLANYSPQILYILDPIAWKNIYVNYQSFEILGYTPEEFKNGGTEL 373 + + + + ++ + + +P + I + G T +F N Sbjct: 390 QEAQQQILRQREHLQSVLDSAPVGVAI----------------TVNGIT--QFANPHIGE 431 Query: 374 LLNIVHPDDIPTLYENKNFWQK-----SQEGQVLTTEYRMRHKNGSWRWLRSREVVFARD 428 L+++ D +Y + Q+ +Q G+ + Y+M + G +R F Sbjct: 432 LVDLKVGDSPQKIYVDLGDRQQMLEELTQFGRSQSRVYKMYNPRGE---IRDILATFLAT 488 Query: 429 DYGQVTKVLGTAQDISDSKEQEQRLYEQGRRESLLREITQRIR------QSLDLPTIFNT 482 DY +LG DI+ K E + +R L E RI+ S ++ T N Sbjct: 489 DYEGQKGILGWLADITPIKAAEAEM----KRAKELAEEASRIKADFLANMSHEIRTPMNA 544 Query: 483 VVQEIRQFLEAD 494 V+ L+ D Sbjct: 545 VIGMTHLALKTD 556 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 45.1 bits (105), Expect = 9e-07 Identities = 32/86 (37%), Positives = 49/86 (56%), Gaps = 1/86 (1%) Query: 129 TELATLNLALNQEIKERQTAEIALQELNNNLEKRVEDRTTQLAKINQQLEQEIEDKTRAK 188 +E+ TLN N+ + Q +++ +NLE RV +RT L IN+QL EIE++ R + Sbjct: 524 SEVITLNENFNEMLITLQNQFKIIKQAKDNLEMRVAERTHTLIVINKQLAGEIEERQRIE 583 Query: 189 EDLEKNKDQLAQLAAIVESSQDAIIS 214 L + K+ A+LA V+S A IS Sbjct: 584 IKLREAKES-AELANRVKSEFLANIS 608 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.320 0.135 0.387 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 80,457 Number of Sequences: 78 Number of extensions: 3882 Number of successful extensions: 129 Number of sequences better than 1.0e-05: 10 Number of HSP's better than 0.0 without gapping: 7 Number of HSP's successfully gapped in prelim test: 3 Number of HSP's that attempted gapping in prelim test: 80 Number of HSP's gapped (non-prelim): 25 length of query: 844 length of database: 48,235 effective HSP length: 70 effective length of query: 774 effective length of database: 42,775 effective search space: 33107850 effective search space used: 33107850 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 97 (42.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002221 slr1213 (241 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002221 slr1213 474 e-136 SYNE-PCC-01-001306 sll1905 73 1e-15 SYNE-PCC-01-002086 slr1042 67 7e-14 SYNE-PCC-01-000414 sll0649 66 9e-14 SYNE-PCC-01-000242 sll0396 64 3e-13 SYNE-PCC-01-002489 slr1588 63 1e-12 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 61 3e-12 SYNE-PCC-01-001133 sll1673 60 8e-12 SYNE-PCC-01-002033 slr0947 58 3e-11 SYNE-PCC-01-001075 sll1592 57 5e-11 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 56 1e-10 SYNE-PCC-01-002618 slr1760 54 4e-10 SYNE-PCC-01-001160 sll1708 53 8e-10 SYNE-PCC-01-002672 slr1837 52 2e-09 SYNE-PCC-01-001575 slr0312 52 2e-09 SYNE-PCC-01-002788 slr1982 50 5e-09 SYNE-PCC-01-001461 slr0115 50 5e-09 SYNE-PCC-01-000523 sll0797 49 1e-08 SYNE-PCC-01-002731 slr1909 49 1e-08 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 47 6e-08 SYNE-PCC-01-001437 slr0081 47 7e-08 SYNE-PCC-01-000608 sll0921 43 8e-07 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 43 1e-06 SYNE-PCC-01-000800 sll1228 42 2e-06 SYNE-PCC-01-002879 slr2104 41 3e-06 SYNE-PCC-01-001132 sll1672 40 5e-06 SYNE-PCC-01-002617 slr1759 40 9e-06 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 474 bits (1220), Expect = e-136 Identities = 241/241 (100%), Positives = 241/241 (100%) Query: 1 MVTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGE 60 MVTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGE Sbjct: 1 MVTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGE 60 Query: 61 IDGIEVAERIKSLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIA 120 IDGIEVAERIKSLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIA Sbjct: 61 IDGIEVAERIKSLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIA 120 Query: 121 NHQQQRKPEEDTLSTSTGHYRLQPTLDYIEEHLDQGITVEFLAGAIGMSTAYFCRFFQKE 180 NHQQQRKPEEDTLSTSTGHYRLQPTLDYIEEHLDQGITVEFLAGAIGMSTAYFCRFFQKE Sbjct: 121 NHQQQRKPEEDTLSTSTGHYRLQPTLDYIEEHLDQGITVEFLAGAIGMSTAYFCRFFQKE 180 Query: 181 MGCSPYQFIIQQRVERAKAILLERELSISEVALRCGFSSHSQLNHHFRNLLGITPKEYRS 240 MGCSPYQFIIQQRVERAKAILLERELSISEVALRCGFSSHSQLNHHFRNLLGITPKEYRS Sbjct: 181 MGCSPYQFIIQQRVERAKAILLERELSISEVALRCGFSSHSQLNHHFRNLLGITPKEYRS 240 Query: 241 R 241 R Sbjct: 241 R 241 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 72.8 bits (177), Expect = 1e-15 Identities = 54/186 (29%), Positives = 92/186 (49%), Gaps = 22/186 (11%) Query: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 IL+V+D + I++LL+ +GY + S G AL+++ + PDL+LLD+ + G +DG+ Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTS-GPEALQRVTQAQPDLILLDLMMPG-MDGL 77 Query: 65 EVAERIKS---LYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIAN 121 EV +R+K IP+++LTA ++ + L +A YV KPF +LL+ V + Sbjct: 78 EVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLEL 137 Query: 122 HQ----------QQRKPEEDTLSTSTGHYRLQPTLDYIEEHLDQGITVEFLAGAIGMSTA 171 Q +Q + E TST L + +++ G+ + G I + Sbjct: 138 KQTRDNLHHTLLEQARTAEALACTST-------RLGILVQNMQAGVLMTDAQGTIVVVNP 190 Query: 172 YFCRFF 177 F R F Sbjct: 191 EFARLF 196 Score = 50.8 bits (120), Expect = 4e-09 Identities = 42/129 (32%), Positives = 63/129 (48%), Gaps = 9/129 (6%) Query: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 IL+ ED + Q LLK GY + V+ ++G AL +A+ D+VL+D+ + E+DG+ Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVV-NNGQEALSALAKGDYDVVLMDVEMP-EMDGL 799 Query: 65 EVAERIKSLYSIP----IVYLTAFSDGETLERAQKTNPQGYVIKPFRRE---QLLSTVAI 117 E I+ I+ +TA+S ER + YV KP R E Q L A Sbjct: 800 TATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQALQVAAT 859 Query: 118 AIANHQQQR 126 A+ + Q R Sbjct: 860 ALQSTSQDR 868 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 66.6 bits (161), Expect = 7e-14 Identities = 42/122 (34%), Positives = 69/122 (56%), Gaps = 9/122 (7%) Query: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 +L+VED + I+ +LK G+++ IA DG AL+K+ F PDLV+LDI + ++G Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQV-TIACDGVEALEKLQNFSPDLVVLDI-VMPRMNGY 87 Query: 65 EVAERIKS---LYSIPIVYLTAFSDGETLER--AQKTNPQGYVIKPFRREQLLSTVAIAI 119 EV RIKS ++P++ + S GE +R + Y+ KPF+ +L+ T+ + Sbjct: 88 EVCRRIKSDPKTKNVPVIMCS--SKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 Query: 120 AN 121 N Sbjct: 146 RN 147 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 66.2 bits (160), Expect = 9e-14 Identities = 41/127 (32%), Positives = 71/127 (55%), Gaps = 5/127 (3%) Query: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 ILIVED++ +AQ I + L+ + + C++ +DG T L+ E PDL++LD+ + ++DG+ Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFT-CIVTNDGETGLRIFQEQVPDLIVLDLMLP-KLDGL 71 Query: 65 EVAERIKSLYSIPIVY-LTAFSDGETLER--AQKTNPQGYVIKPFRREQLLSTVAIAIAN 121 EV RI+ Y L + GE ++R T Y++KPF +L++ V + Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRR 131 Query: 122 HQQQRKP 128 +Q +P Sbjct: 132 QLRQGQP 138 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 64.3 bits (155), Expect = 3e-13 Identities = 35/120 (29%), Positives = 67/120 (55%), Gaps = 3/120 (2%) Query: 1 MVTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGE 60 M ++L+VE+E +A+ + LK +GY++ V A DG + EF PDL++++ + G Sbjct: 1 MSHRVLVVEEEEKLARFMELELKYEGYDVSV-ARDGLKGFTQAQEFPPDLIIVNGALPG- 58 Query: 61 IDGIEVAERIKSLYS-IPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAI 119 + G+E+ R++ + S IPI+ +TA D E Y++KPF ++ + + + + Sbjct: 59 MSGLELCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQL 118 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 62.8 bits (151), Expect = 1e-12 Identities = 38/119 (31%), Positives = 67/119 (56%), Gaps = 7/119 (5%) Query: 2 VTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKI--AEFYPDLVLLDIRIKG 59 ++ IL+VEDE ++ + I + L + Y+I + A +GA AL + E PDL++ D+ + Sbjct: 1 MSTILVVEDEAIIRELIGETLSLENYKI-LEAENGAVALGLLNSLEVMPDLIICDVMMP- 58 Query: 60 EIDG---IEVAERIKSLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 E+DG I ++ +IP ++LTA + + + Y+IKPF++E LL+ V Sbjct: 59 EMDGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAV 117 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 61.2 bits (147), Expect = 3e-12 Identities = 46/118 (38%), Positives = 62/118 (52%), Gaps = 6/118 (5%) Query: 1 MVTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGE 60 M KILIVEDE + + IA L Y++ + ASD TA+ KI E P L+LLD + G Sbjct: 1 MTRKILIVEDECAIREMIALFLSQKYYDV-IEASDFKTAINKIKE-NPKLILLDWMLPGR 58 Query: 61 IDGIEVAERIK---SLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 GI+ + IK S +IPI+ LTA S E Y+ KPF + LL+ + Sbjct: 59 -SGIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARI 115 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 59.7 bits (143), Expect = 8e-12 Identities = 44/144 (30%), Positives = 77/144 (53%), Gaps = 14/144 (9%) Query: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 IL+V+D Q ++ LL + GY + + S G AL+ + PDL+LLDI++ ++DG Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTS-GKMALRTLQVKRPDLILLDIKMP-DMDGY 68 Query: 65 EVAERIKS---LYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV------ 115 +V E IK L IPI++++A D +A + Y+ KPF+ E++++ + Sbjct: 69 QVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIEGQFTI 128 Query: 116 ---AIAIANHQQQRKPEEDTLSTS 136 IA+ ++R+ E+ L S Sbjct: 129 QRQRIALKREVRKRREAEEVLYQS 152 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 57.8 bits (138), Expect = 3e-11 Identities = 35/105 (33%), Positives = 56/105 (53%), Gaps = 2/105 (1%) Query: 7 IVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGIEV 66 +V+DE + + + L GYE+ V A+DG A+ E PDLV+LD+ + ++DG V Sbjct: 1 MVDDEASIRRILETRLSMIGYEV-VTAADGEEAIATFHESDPDLVVLDVMMP-KLDGYGV 58 Query: 67 AERIKSLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQL 111 + ++ IPI+ LTA D + YV+KPF ++L Sbjct: 59 CQELRKESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKEL 103 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 57.0 bits (136), Expect = 5e-11 Identities = 35/114 (30%), Positives = 62/114 (54%), Gaps = 3/114 (2%) Query: 4 KILIVEDERLVAQH-IAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 +IL+VED+ L + +L + G ++ A DG TA+ + + D+V+LD+ + G I Sbjct: 9 RILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPG-IG 67 Query: 63 GIEVAERIKSLY-SIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 GIE +IK ++ +P++ LT+ S + R + QGY +K E L+ + Sbjct: 68 GIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAI 121 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 55.8 bits (133), Expect = 1e-10 Identities = 55/237 (23%), Positives = 114/237 (48%), Gaps = 32/237 (13%) Query: 2 VTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEI 61 ++K+L+V+D+ + + ++ LL+ +G+++ A++G AL+K+ E Y LVLLD+ + ++ Sbjct: 1 MSKLLLVDDDIELTELLSTLLELEGFDV-ETANNGLEALQKLNESYK-LVLLDVMMP-KL 57 Query: 62 DGIEVAERIKSLYSIPIVYLTAFSDGETLER--AQKTNPQGYVIKPFRREQLLSTVAIAI 119 +GIE + I+ + ++P++ LTA GE ++R + + KPF +L++ + + Sbjct: 58 NGIETLKEIRKVSNVPVMMLTA--RGEDIDRVLGLELGADDCLPKPFNDRELIARIKAIL 115 Query: 120 ANHQQQRKPEEDTLSTSTGHYRLQPTLDYIEEHLDQGITVEFLAGAIGMSTAYFCRFFQK 179 ++ P + + +E GIT+ F G + ++ Sbjct: 116 ---RRSASPSNN--------------ISNVEILSFDGITLHFSHG--------IATYNEE 150 Query: 180 EMGCSPYQFIIQQRVERAKAILLERELSISEVALRCGFSSHSQLNHHFRNLLGITPK 236 + + Y+F I + ++K ++ RE EV + L+ H NL PK Sbjct: 151 NLNLTDYEFKILCLLLKSKGNVVSREELSLEVMEKPLTPFDRSLDMHISNLRRKLPK 207 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 54.3 bits (129), Expect = 4e-10 Identities = 35/129 (27%), Positives = 65/129 (50%), Gaps = 5/129 (3%) Query: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDG 63 KIL+V+D+ + + L+ +G+ + +A++G AL K AE P++VLLD + +DG Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRV-ELATNGEEALTKFAEIKPEVVLLD-AVMPVMDG 70 Query: 64 IEVAERIKSLYSIP---IVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIA 120 + + +Y P ++ +T D +++RA + YV KP L V + Sbjct: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLY 130 Query: 121 NHQQQRKPE 129 ++ Q + E Sbjct: 131 QNRLQHQLE 139 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 53.1 bits (126), Expect = 8e-10 Identities = 39/117 (33%), Positives = 64/117 (54%), Gaps = 3/117 (2%) Query: 4 KILIVEDERLVAQHIAQLLKS-DGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 KILIVED+ L+ + Q L + + +EI +G A+++ A PDL+++DI + G +D Sbjct: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPG-LD 76 Query: 63 GIEVAERIKSLY-SIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIA 118 GIE ++IK I IV LT+ + + A + Y +K E+L+ +A A Sbjct: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAAA 133 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 51.6 bits (122), Expect = 2e-09 Identities = 38/133 (28%), Positives = 67/133 (50%), Gaps = 4/133 (3%) Query: 2 VTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEI 61 + IL+V+DE + + +++ L G+ I V A G T L DL++LD + ++ Sbjct: 1 MANILLVDDENALTEPLSKALGHQGHTIDV-ADQGKTGLAMAIAGQYDLLILDWMLP-QV 58 Query: 62 DGIEVAERIKSL-YSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIA 120 G+E+ +I+ L +S P+++LTA + Y+IKPF +LL+ V A+ Sbjct: 59 SGLEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVR-ALL 117 Query: 121 NHQQQRKPEEDTL 133 Q + +TL Sbjct: 118 RRQSHGETITETL 130 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 51.6 bits (122), Expect = 2e-09 Identities = 28/114 (24%), Positives = 59/114 (51%), Gaps = 3/114 (2%) Query: 4 KILIVEDERLVAQHIAQLLKSD-GYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 ++LI +D + Q +A ++ D ++ A +G A+ E PD+ L+D+R+ E++ Sbjct: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMP-EVE 66 Query: 63 GIEVAERIKSLYSIP-IVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 G+ I ++ I+ LT + E + R + +GY++K ++LL+ + Sbjct: 67 GVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAI 120 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 50.4 bits (119), Expect = 5e-09 Identities = 39/121 (32%), Positives = 59/121 (48%), Gaps = 5/121 (4%) Query: 2 VTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEI 61 + K+L+VED + +++ L GYE+ VIA DG A+ P L+L+D+ + I Sbjct: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEV-VIAVDGEQAVTMAISESPQLILMDMSLP-II 61 Query: 62 DGIEVAERIKSLYS---IPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIA 118 DG ++IK IPI+ LTA + ERA Y KP ++LL + Sbjct: 62 DGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 Query: 119 I 119 I Sbjct: 122 I 122 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 50.4 bits (119), Expect = 5e-09 Identities = 31/115 (26%), Positives = 61/115 (53%), Gaps = 5/115 (4%) Query: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDG 63 +ILI++D+ ++ ++ L+ GY++ A DG + PDL++LD+ + ++DG Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQ-AVDGIKGQALAVQLQPDLIMLDLMLP-KVDG 60 Query: 64 IEVAERIKS---LYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 V +R++ IP++ LTA + + + Y+ KPF E++L+ V Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARV 115 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 49.3 bits (116), Expect = 1e-08 Identities = 37/160 (23%), Positives = 81/160 (50%), Gaps = 10/160 (6%) Query: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPD--LVLLDIRIKGEI 61 +IL+VEDE + I ++L S+ Y + + +DG+ A + + + L ++D + G + Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWV-TDGSQAWDYLENQWTEYTLAIVDWLLPG-L 59 Query: 62 DGIEVAERIKSL-YSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIA 120 G+E+ +++++ S+P++ LTA + E Y+ KPF +LL+ + Sbjct: 60 SGLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRAL-- 117 Query: 121 NHQQQRKPEEDTLSTSTGHYRLQPTLDYIEEHLDQGITVE 160 Q+R P+ + G++ L P+ + + + + + +E Sbjct: 118 ---QRRSPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLE 154 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 48.9 bits (115), Expect = 1e-08 Identities = 40/173 (23%), Positives = 76/173 (43%), Gaps = 10/173 (5%) Query: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 +L+V+D+ + + L+ GY++ A +G AL + PD+++ DI + E+DG Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTT-AGNGREALDLLTTTVPDMIVCDIMMP-EMDGY 67 Query: 65 EVAERIKS---LYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIAN 121 E+++ + IP+++L+A + Y+ KPF E+L + V + Sbjct: 68 AFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQ 127 Query: 122 H----QQQRKPEEDTLSTSTGH-YRLQPTLDYIEEHLDQGITVEFLAGAIGMS 169 Q P ED L PT + + + QG+ +A + +S Sbjct: 128 ADRLLQHNNHPLEDNARVQVARDVELTPTETKVIQLVAQGLANREIADHLKVS 180 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 47.0 bits (110), Expect = 6e-08 Identities = 28/108 (25%), Positives = 57/108 (52%), Gaps = 2/108 (1%) Query: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDG 63 KIL+VEDE + + + +++GY++ A +G +A +LV++DI + G+ +G Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDV-FEAENGVEMHHILANHNINLVVMDINLPGK-NG 62 Query: 64 IEVAERIKSLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQL 111 + +A ++ S+P+++LT + + Y+ KPF +L Sbjct: 63 LLLARELREELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPREL 110 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 46.6 bits (109), Expect = 7e-08 Identities = 34/120 (28%), Positives = 65/120 (54%), Gaps = 14/120 (11%) Query: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYP-------DLVLLDIR 56 +IL+VEDE + + I L+ +GYE+ + DG AL + EF DL++LDI Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAV-DDGRDALALLQEFSEDPGQAAVDLIILDIM 90 Query: 57 IKGEIDGIEVAERIK-SLYSIPIVYLTAFSDGETLERAQ--KTNPQGYVIKPFRREQLLS 113 + +++G++V ++ + PI+ ++A G +E+ + Y+ KPF ++L++ Sbjct: 91 LP-QVNGLDVCRSLRFGGDNTPILIVSA--KGSEMEKVTGLEVGADDYITKPFSLKELVA 147 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 43.1 bits (100), Expect = 8e-07 Identities = 31/116 (26%), Positives = 58/116 (50%), Gaps = 5/116 (4%) Query: 4 KILIVEDERLVAQHIAQLLKSD-GYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 +I ++EDE L+ Q + L + +E A++G L + + PD+V++DI + +++ Sbjct: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLP-DMN 63 Query: 63 GIEVAERIKS---LYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 GI+V +++K +V LT ET+ A Y +K R E L+ + Sbjct: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAI 119 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 42.7 bits (99), Expect = 1e-06 Identities = 26/114 (22%), Positives = 56/114 (49%), Gaps = 3/114 (2%) Query: 4 KILIVEDERLVAQHIAQLLK-SDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 K+L+++D L+ + I QL++ D +E+ S G + + PD+++LD+ +KG + Sbjct: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKG-LS 64 Query: 63 GIEVAERIKSL-YSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 G++ + +++ I+ LT + GY++K + LL + Sbjct: 65 GLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQI 118 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 42.0 bits (97), Expect = 2e-06 Identities = 35/131 (26%), Positives = 68/131 (51%), Gaps = 9/131 (6%) Query: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDG 63 K+L+V+D + QLL S G+ + A +G A+ ++P ++L+D+++ +DG Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGF-VVQEAENGEMAIALWESWHPQVILMDMQMP-VLDG 476 Query: 64 IEVAERIKSL----YSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVA--I 117 ++IK+ ++I I + +GE E ++ KPFR E+L++ +A + Sbjct: 477 RSTTQKIKASPQGQHTIIIALTASAFEGERAE-ILSAGCDDFLSKPFRPEELIALLAKHL 535 Query: 118 AIANHQQQRKP 128 A+A Q + P Sbjct: 536 AVALPSQGQPP 546 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 41.2 bits (95), Expect = 3e-06 Identities = 33/126 (26%), Positives = 61/126 (48%), Gaps = 5/126 (3%) Query: 5 ILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGI 64 IL+VED + + LL S G + V A++G AL + D +L+DI++ ++G Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQV-ANNGQEALTLLTSNTYDAILMDIQMP-MLNGY 777 Query: 65 EVAERIKSLY---SIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIAN 121 + I+ ++PI+ +TA + E+A ++ KP + + L T+A I Sbjct: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWIPP 837 Query: 122 HQQQRK 127 + + K Sbjct: 838 NSAREK 843 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 40.4 bits (93), Expect = 5e-06 Identities = 34/117 (29%), Positives = 57/117 (48%), Gaps = 5/117 (4%) Query: 2 VTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEI 61 V KIL+V+D+ + Q + +LL G+EI AS+G A+ + P L+ +D+R+ + Sbjct: 629 VYKILVVDDKSVNRQLLIKLLAPFGFEI-EEASNGQEAIALWESWEPHLIFMDMRMP-VM 686 Query: 62 DGIEVAERIKSLY---SIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 DG E + IK + +V LTA E ++ KPFR + ++ Sbjct: 687 DGYEATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTIFDSL 743 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 39.7 bits (91), Expect = 9e-06 Identities = 34/113 (30%), Positives = 57/113 (50%), Gaps = 8/113 (7%) Query: 4 KILIVEDERLVAQHIA-QLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEID 62 +IL+ ED LV Q +A Q+L + GY + IA++G + + + + DLVL+D+++ +D Sbjct: 1191 QILLAEDN-LVNQKVAHQMLNNLGYPVA-IANNGQEVIDALEKKFYDLVLMDMQMP-VMD 1247 Query: 63 GIEVAERIKSLYSIP----IVYLTAFSDGETLERAQKTNPQGYVIKPFRREQL 111 GI I+ + IV +TA + + GY+ KP QL Sbjct: 1248 GITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.322 0.138 0.387 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 22,040 Number of Sequences: 78 Number of extensions: 952 Number of successful extensions: 57 Number of sequences better than 1.0e-05: 27 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 26 Number of HSP's that attempted gapping in prelim test: 30 Number of HSP's gapped (non-prelim): 28 length of query: 241 length of database: 48,235 effective HSP length: 60 effective length of query: 181 effective length of database: 43,555 effective search space: 7883455 effective search space used: 7883455 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.9 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002486 slr1584 (234 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002486 slr1584 463 e-133 SYNE-PCC-01-000518 sll0789 162 7e-43 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 162 7e-43 SYNE-PCC-01-000242 sll0396 159 8e-42 SYNE-PCC-01-000523 sll0797 156 6e-41 SYNE-PCC-01-001461 slr0115 153 4e-40 SYNE-PCC-01-002672 slr1837 146 5e-38 SYNE-PCC-01-001437 slr0081 144 2e-37 SYNE-PCC-01-002033 slr0947 133 4e-34 SYNE-PCC-01-000414 sll0649 125 1e-31 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 113 5e-28 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 108 2e-26 SYNE-PCC-01-000877 sll1330 105 2e-25 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 91 3e-21 SYNE-PCC-01-002635 slr1783 77 4e-17 SYNE-PCC-01-002489 slr1588 71 4e-15 SYNE-PCC-01-002731 slr1909 69 1e-14 SYNE-PCC-01-002873 slr2098 67 4e-14 SYNE-PCC-01-002086 slr1042 67 5e-14 SYNE-PCC-01-001160 sll1708 65 1e-13 SYNE-PCC-01-002617 slr1759 64 4e-13 SYNE-PCC-01-001306 sll1905 62 1e-12 SYNE-PCC-01-002788 slr1982 62 2e-12 SYNE-PCC-01-001133 sll1673 61 3e-12 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 60 8e-12 SYNE-PCC-01-002618 slr1760 56 1e-10 SYNE-PCC-01-002879 slr2104 55 2e-10 SYNE-PCC-01-001075 sll1592 52 2e-09 SYNE-PCC-01-000608 sll0921 47 7e-08 SYNE-PCC-01-001575 slr0312 42 2e-06 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 463 bits (1191), Expect = e-133 Identities = 234/234 (100%), Positives = 234/234 (100%) Query: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGI 60 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGI Sbjct: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGI 60 Query: 61 TLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGC 120 TLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGC Sbjct: 61 TLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGC 120 Query: 121 ATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIWK 180 ATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIWK Sbjct: 121 ATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIWK 180 Query: 181 LESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLANLTEKSLCQGKN 234 LESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLANLTEKSLCQGKN Sbjct: 181 LESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLANLTEKSLCQGKN 234 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 162 bits (411), Expect = 7e-43 Identities = 92/223 (41%), Positives = 133/223 (59%), Gaps = 4/223 (1%) Query: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASR--LEYDLVILDVMLPELD 58 MR+LLVED+ L L +AL + Y VD D +LAW Y + + Y L I D M+P L Sbjct: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 Query: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 G+ LCQK R +PILM+TA+D I D++ GLDAGADDY++KP + EL AR+R+L RR Sbjct: 61 GLELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRR 120 Query: 119 GCATCQPVLEWGPIRLDPSTYEVSYDNEV-LSLTRKEYSILELLLRNGRRVLSRSMIIDS 177 L+ G LD T+ V + ++LT KE+ +LE +++ +++LS I + Sbjct: 121 SPELQPQQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKHPQQILSSEQIKNQ 180 Query: 178 IWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 +W L + + V VR LR+KL+ + IETV+G+GYR Sbjct: 181 LWALSAESTSNVVAAQVRLLRRKLEEYS-HGNLIETVYGLGYR 222 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 162 bits (411), Expect = 7e-43 Identities = 89/224 (39%), Positives = 134/224 (59%), Gaps = 5/224 (2%) Query: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGI 60 MRILL+EDD + L L+ + VD TD + YD V+LD+ LP+LDG+ Sbjct: 1 MRILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGL 60 Query: 61 TLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGC 120 + Q+WRS+ +P+L++TARDT+++++ GL +GADDY+ KP L E+ AR++AL+RR Sbjct: 61 EVLQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRY 120 Query: 121 ATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIWK 180 V+E ++LD + V +N+ +SLT +EY +LEL + N RVLSRS I + + Sbjct: 121 GYHHSVIEQAGVKLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSS 180 Query: 181 LESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLANL 224 + + VH+ +LRQK L I TVHG+GY L + Sbjct: 181 WDEEISSGALDVHIYNLRQK-----LGKQFIRTVHGVGYALGQV 219 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 159 bits (402), Expect = 8e-42 Identities = 81/220 (36%), Positives = 136/220 (61%), Gaps = 1/220 (0%) Query: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 R+L+VE++ LA + L + Y V +A D + A DL+I++ LP + G+ Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 62 LCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCA 121 LC++ R +PI+++TA+D + +++ GLDAGADDY+VKP + E FAR+R LRR Sbjct: 64 LCRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTHT 123 Query: 122 TCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIWKL 181 T VL++ +R + ST E+ + ++ LT KE+ +L+ LL + R+VL+R I++ +W Sbjct: 124 TSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERVWGY 183 Query: 182 ESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRL 221 + + + ++V++R LR KL++AG I+TV G+GY L Sbjct: 184 DFMGDSNIIEVYIRYLRLKLEAAG-EPRLIQTVRGVGYVL 222 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 156 bits (394), Expect = 6e-41 Identities = 90/230 (39%), Positives = 129/230 (56%), Gaps = 11/230 (4%) Query: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASR--LEYDLVILDVMLPELD 58 MRILLVED+ L + + L + Y VD TD S AWDY EY L I+D +LP L Sbjct: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 Query: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 G+ LCQK R+ +P+LM+TA +++ GLDAGADDY+ KP + EL AR+RAL RR Sbjct: 61 GLELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRR 120 Query: 119 GCATCQPVLEWGPIRLDPS--------TYEVSYDNEVLSLTRKEYSILELLLRNGRRVLS 170 +L G LDPS + ++ + + ++LT +E+ I + L++N R++S Sbjct: 121 SPQFQPQILTLGNFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS 180 Query: 171 RSMIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 S I +W L+ P + V +R +R+KL I+TV G GYR Sbjct: 181 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPC-PIKTVPGQGYR 229 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 153 bits (387), Expect = 4e-40 Identities = 89/233 (38%), Positives = 135/233 (57%), Gaps = 7/233 (3%) Query: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 RIL+++DD +++ ++ L Y V A D A +L+ DL++LD+MLP++DG T Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 62 LCQKWRSHSYL--MPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRG 119 +CQ+ R +P+LM+TA I DKI G D+GADDY+ KP D+ E+ ARVRALLRR Sbjct: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 Query: 120 -----CATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMI 174 A +L GP+ L P +E + + + LT E+ +L LL+ + +S S I Sbjct: 123 DRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTHLEFELLHCLLQRHGQTVSPSDI 182 Query: 175 IDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLANLTEK 227 + +W E + +T++VH+R LR KL+ I+TV+G GY L TE+ Sbjct: 183 LREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIKTVYGAGYCLELSTEE 235 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 146 bits (369), Expect = 5e-38 Identities = 84/227 (37%), Positives = 131/227 (57%), Gaps = 11/227 (4%) Query: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 ILLV+D+ L E L++AL Q +T+D+A A +YDL+ILD MLP++ G+ + Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 63 CQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGC-- 120 C++ R + P+L +TA+DT++D++ GLDAG DDY++KP +L EL ARVRALLRR Sbjct: 64 CRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQSHG 123 Query: 121 --------ATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRS 172 A +L + LD + + ++L+ KE ++L L L+ ++LS Sbjct: 124 ETITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSHE 183 Query: 173 MIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGY 219 I +W ESPP + + VR LR+K++ + I +V+G GY Sbjct: 184 EIYSHLWPGESPPSSNVLAALVRLLRRKIEQPN-APRLINSVYGKGY 229 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 144 bits (364), Expect = 2e-37 Identities = 87/229 (37%), Positives = 137/229 (59%), Gaps = 10/229 (4%) Query: 2 RILLVEDDLPLAETLAEALSDQ---LYTVDIATDA-SLAWDYAS---RLEYDLVILDVML 54 RIL+VED++ + ET+ +L ++ +Y VD DA +L +++ + DL+ILD+ML Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 55 PELDGITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRA 114 P+++G+ +C+ R PIL+++A+ + +K+TGL+ GADDY+ KP L EL AR RA Sbjct: 92 PQVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRA 151 Query: 115 LLRR-GCA--TCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSR 171 ++RR G A P ++ + L P V E +SL KE+ +LEL + RRV SR Sbjct: 152 MIRRQGLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELFMSYPRRVWSR 211 Query: 172 SMIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 +I+ IW ++ + TV VH+R LR+KL+ + + TV G GYR Sbjct: 212 EQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYR 260 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 133 bits (335), Expect = 4e-34 Identities = 88/230 (38%), Positives = 123/230 (53%), Gaps = 9/230 (3%) Query: 5 LVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITLCQ 64 +V+D+ + L LS Y V A D A + DLV+LDVM+P+LDG +CQ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 65 KWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCATCQ 124 + R S + PI+M+TA + D+ITGL+ GADDYVVKP EL AR+R++LRR Sbjct: 61 ELRKESDI-PIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGM 119 Query: 125 P------VLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSI 178 P VL+ IR+D + +V +E + LT E+S+LELL+ SRS I+ + Sbjct: 120 PGIPSSGVLQIATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEV 179 Query: 179 WKLESPPEEDT--VKVHVRSLRQKLKSAGLSADAIETVHGIGYRLANLTE 226 W DT V VH+ LR KL+ + + I T G GY + E Sbjct: 180 WGYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQRILE 229 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 125 bits (314), Expect = 1e-31 Identities = 81/227 (35%), Positives = 122/227 (53%), Gaps = 9/227 (3%) Query: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 IL+VEDD +A+ + E L + +T + D DL++LD+MLP+LDG+ + Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 Query: 63 CQKWRSH--SYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGC 120 C + R S ILM+TA+ D+I GL GADDY+VKP EL ARVRALLRR Sbjct: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRRQL 133 Query: 121 ATCQPV---LEWGPIRLDPSTYEVSY----DNEVLSLTRKEYSILELLLRNGRRVLSRSM 173 QPV ++D ++ S E L LT E+++L + RV +R+ Sbjct: 134 RQGQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRTQ 193 Query: 174 IIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 +I+ +W + +E V H+R LR+K++ + I+TV G+GY+ Sbjct: 194 LIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYK 240 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 113 bits (283), Expect = 5e-28 Identities = 76/225 (33%), Positives = 126/225 (56%), Gaps = 7/225 (3%) Query: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 ++LLV+DD+ L E L+ L + + V+ A + A + Y LV+LDVM+P+L+GI Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNE-SYKLVLLDVMMPKLNGIE 61 Query: 62 LCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCA 121 ++ R S + P++M+TAR D++ GL+ GADD + KP + EL AR++A+LRR + Sbjct: 62 TLKEIRKVSNV-PVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSAS 120 Query: 122 TCQ-----PVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIID 176 +L + I L S +Y+ E L+LT E+ IL LLL++ V+SR + Sbjct: 121 PSNNISNVEILSFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSL 180 Query: 177 SIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRL 221 + + P + ++ +H+ +LR+KL +T+ G GY L Sbjct: 181 EVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGYAL 225 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 108 bits (270), Expect = 2e-26 Identities = 72/224 (32%), Positives = 117/224 (52%), Gaps = 4/224 (1%) Query: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 +IL+VED+ + E +A LS + Y V A+D A + L++LD MLP GI Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQ 62 Query: 62 LCQ--KWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRG 119 Q K + +PI+M+TA+ T D I L+AGADDY+ KP L AR+ A+ RR Sbjct: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 Query: 120 CATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIW 179 ++ + +D + V + + ++L+ E+ +L +R+ +V SR +++ IW Sbjct: 123 YEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNRIW 182 Query: 180 KLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLAN 223 + E TV ++R LR+ L + I+TV G GYR ++ Sbjct: 183 HNDLEVEYRTVDSYIRRLRRNL-APFQCEHYIQTVRGSGYRFSS 225 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 105 bits (261), Expect = 2e-25 Identities = 64/190 (33%), Positives = 103/190 (54%), Gaps = 5/190 (2%) Query: 47 LVILDVMLPELDGITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLG 106 L ++D L + DGI LC +W + I +++A+DT D + GL AGADDY+ KP + Sbjct: 50 LAVIDSDLTDGDGIELC-RWLYQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQ 108 Query: 107 ELFARVRALLRRGCATCQP-VLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNG 165 E AR+ L+RR P +L++G +++D V Y + LT +E+S+L +L + Sbjct: 109 EFLARIECLIRRVRTVAAPLLLDYGVLKIDLVQRRVEYQGNFVDLTPQEFSLLYVLTQAE 168 Query: 166 RRVLSRSMIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYRLAN-- 223 LSR+ ++ W E+ T+ HV SLR+K+++ I+TV +GYR + Sbjct: 169 GSALSRTELLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVRNVGYRFNSSI 227 Query: 224 LTEKSLCQGK 233 L EK + K Sbjct: 228 LEEKKVVAEK 237 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 90.9 bits (224), Expect = 3e-21 Identities = 64/227 (28%), Positives = 112/227 (49%), Gaps = 9/227 (3%) Query: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 +IL+VED++ TL + Y V A + + +LV++D+ LP +G+ Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 62 LCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCA 121 L ++ R L P++ +T RD DKI GL+ GADDY+ KP + EL R R LL R Sbjct: 65 LARELREELSL-PLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMP 123 Query: 122 TCQPVLEWG-------PIRLDPSTYE-VSYDNEVLSLTRKEYSILELLLRNGRRVLSRSM 173 + +G +LD +++ ++ + + L R E+ + N ++ +R Sbjct: 124 HQEKENTFGREFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTREE 183 Query: 174 IIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGYR 220 ++ + E P++ TV V +R +R+ + + + I T+HG GYR Sbjct: 184 LLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYR 230 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 77.4 bits (189), Expect = 4e-17 Identities = 46/119 (38%), Positives = 68/119 (57%), Gaps = 3/119 (2%) Query: 3 ILLVEDDLPLAETLAEALSDQL-YTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 +LLV+D+ + E++ L D + VD+A +A+ AWDY LVI D+M+P++DG Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 62 LCQKWRSHSYL--MPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 QK R + +P++ +TAR D+I G G D ++ KP D EL A VR LL R Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLAR 176 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 70.9 bits (172), Expect = 4e-15 Identities = 44/121 (36%), Positives = 72/121 (59%), Gaps = 6/121 (4%) Query: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEY--DLVILDVMLPELDG- 59 IL+VED+ + E + E LS + Y + A + ++A + LE DL+I DVM+PE+DG Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 60 --ITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLR 117 IT QK + + +P + +TA T+ D G+++GADDY++KP +L V + L+ Sbjct: 64 GLITALQK-NAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQ 122 Query: 118 R 118 + Sbjct: 123 K 123 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 68.9 bits (167), Expect = 1e-14 Identities = 55/200 (27%), Positives = 103/200 (51%), Gaps = 17/200 (8%) Query: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 +LLV+DD L + + L Q Y V A + A D + D+++ D+M+PE+DG Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 63 CQKWRSHSYL--MPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGC 120 ++ R + + +P++ ++A+ ++++ GL+ GAD Y+ KP + EL A+V++ LR+ Sbjct: 70 IEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQAD 129 Query: 121 ATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIWK 180 Q P+ D + +V+ D E LT E +++L+ + L+ I D + Sbjct: 130 RLLQH--NNHPLE-DNARVQVARDVE---LTPTETKVIQLVAQG----LANREIADHL-- 177 Query: 181 LESPPEEDTVKVHVRSLRQK 200 + TV+ HV ++ K Sbjct: 178 ---KVSQRTVESHVSNMLNK 194 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 67.4 bits (163), Expect = 4e-14 Identities = 49/148 (33%), Positives = 75/148 (50%), Gaps = 18/148 (12%) Query: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGI- 60 RILLVED+ E AE L D + VD+A + +A + + Y LV++D+ +PE+DGI Sbjct: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 Query: 61 -TLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRG 119 T+ + +PI+ MTA D+ L AG +D++ KP++ EL+ + Sbjct: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNK-------- 1037 Query: 120 CATCQPVLEWGPI--RLDPSTYEVSYDN 145 +L W P+ L P T E S N Sbjct: 1038 ------LLHWIPVDSPLAPETIEESAIN 1059 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 67.0 bits (162), Expect = 5e-14 Identities = 37/117 (31%), Positives = 64/117 (54%), Gaps = 2/117 (1%) Query: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 +LLVED E ++ L D + V IA D A + DLV+LD+++P ++G + Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 63 CQKWRS--HSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLR 117 C++ +S + +P++M +++ D+ G+ GAD Y+ KP EL ++ LLR Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 65.5 bits (158), Expect = 1e-13 Identities = 56/214 (26%), Positives = 100/214 (46%), Gaps = 35/214 (16%) Query: 1 MRILLVEDDLPLAETLAEALS--DQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELD 58 M+IL+VEDD + L +AL ++ + + A A+ L DL+++D+ LP LD Sbjct: 17 MKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLD 76 Query: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 GI ++ + S + I+++T+ N+ I L +GAD Y VK L L + A Sbjct: 77 GIEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAA---- 132 Query: 119 GCATCQPVLEWGPIRLDPSTYEVSYDN----------EVLSLTRKEYSILELLLR-NGRR 167 + G LDP V +N +V SL+ +E +L+L++ + Sbjct: 133 --------AQDGATYLDPQIARVVVENLKPPVPEGQADVSSLSEREIDVLKLIVEGKSNQ 184 Query: 168 VLSRSMIIDSIWKLESPPEEDTVKVHVRSLRQKL 201 +++++ + + +T+K HVR + KL Sbjct: 185 EIAQTLYLST----------NTIKTHVRGIMNKL 208 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 63.9 bits (154), Expect = 4e-13 Identities = 39/111 (35%), Positives = 60/111 (54%), Gaps = 3/111 (2%) Query: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGI 60 ++ILL ED+L + + L++ Y V IA + D + YDLV++D+ +P +DGI Sbjct: 1190 LQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGI 1249 Query: 61 TLCQKWRSHSYL---MPILMMTARDTINDKITGLDAGADDYVVKPVDLGEL 108 T C+ R L I+ MTA D+ LDAG D Y+ KP+ + +L Sbjct: 1250 TACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 62.4 bits (150), Expect = 1e-12 Identities = 35/116 (30%), Positives = 60/116 (51%), Gaps = 2/116 (1%) Query: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 IL+V+D ++E L + Y+ T A ++ + DL++LD+M+P +DG+ + Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 63 CQKWRSHSYL--MPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALL 116 C + + +P++ +TA + D + GA DYV KP EL ARV+ L Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL 135 Score = 55.5 bits (132), Expect = 2e-10 Identities = 38/112 (33%), Positives = 63/112 (56%), Gaps = 5/112 (4%) Query: 1 MRILLVEDDLPLAETLAEALSDQL-YTVDIATDASLAWDYASRLEYDLVILDVMLPELDG 59 + ILL ED+L + + +A+ L +L Y VD+ + A ++ +YD+V++DV +PE+DG Sbjct: 740 LTILLAEDNL-INQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDG 798 Query: 60 ITLCQKWR---SHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGEL 108 +T + R S I+ +TA D+ L +G +DYV KP+ L L Sbjct: 799 LTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEAL 850 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 62.0 bits (149), Expect = 2e-12 Identities = 37/117 (31%), Positives = 63/117 (53%), Gaps = 2/117 (1%) Query: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 ++LLVED+ + L+ L + Y V IA D A A L+++D+ LP +DG T Sbjct: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 Query: 62 LCQKWRSH--SYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALL 116 ++ + H +PI+ +TA +D+ + AG DDY KP+++ L ++ AL+ Sbjct: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 61.2 bits (147), Expect = 3e-12 Identities = 34/112 (30%), Positives = 60/112 (53%), Gaps = 3/112 (2%) Query: 4 LLVEDDLPL-AETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 +L+ DDLP + L++ L + YTV T +A DL++LD+ +P++DG + Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 63 CQKWRSHSYL--MPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARV 112 C+ + L +PI+ ++A DK+ + G DY+ KP + E+ AR+ Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARI 122 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 59.7 bits (143), Expect = 8e-12 Identities = 55/204 (26%), Positives = 95/204 (46%), Gaps = 20/204 (9%) Query: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWD---YASRLEYDLVILDVMLPEL 57 +++LL+ DD PL + L + ++ D S + A + D++ILD+ + L Sbjct: 5 LKVLLI-DDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGL 63 Query: 58 DGITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLR 117 G+ + R+ IL++T D ND T +DAGAD Y++K + L +++ + + Sbjct: 64 SGLDTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQ 123 Query: 118 RGCATCQPVLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDS 177 + L T+E DN + SLT +E +L + LS I Sbjct: 124 GEVILSDSIKN----LLLERTHE---DNPLDSLTDREMGVLRQIATG----LSNKQIAAQ 172 Query: 178 IWKLESPPEEDTVKVHVRSLRQKL 201 ++ E+TVKVH+R+L +KL Sbjct: 173 LF-----ISEETVKVHIRNLLRKL 191 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 55.8 bits (133), Expect = 1e-10 Identities = 38/119 (31%), Positives = 64/119 (53%), Gaps = 6/119 (5%) Query: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 +IL+V+DD + L L + + V++AT+ A + ++ ++V+LD ++P +DG Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 Query: 62 LCQK----WRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALL 116 CQ +++ S L +LM+T D +AGA DYV KP+ L RV+ LL Sbjct: 73 CCQALMKIYQNPSPL--VLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 55.1 bits (131), Expect = 2e-10 Identities = 34/109 (31%), Positives = 55/109 (50%), Gaps = 2/109 (1%) Query: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 ILLVED+ E + L+ + V +A + A + YD +++D+ +P L+G Sbjct: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 Query: 63 CQKWRSHSY--LMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELF 109 + R Y +PI+ MTA D+ LDAG +D++ KP+ LF Sbjct: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLF 828 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 51.6 bits (122), Expect = 2e-09 Identities = 59/216 (27%), Positives = 91/216 (42%), Gaps = 30/216 (13%) Query: 1 MRILLVEDDLPLAETLAEALSDQ--LYTVDIATDASLAWDYASRLEYDLVILDVMLPELD 58 +RILLVEDD L LS + L A D A Y ++ +D+VILDV LP + Sbjct: 8 IRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIG 67 Query: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 GI C + + +P+L++T+ ++A A Y VK V L +R++ Sbjct: 68 GIEACHQIKKIHPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRSV--- 124 Query: 119 GCATCQPVLEWGPI---RLDPSTYEVSYDNEVL---------SLTRKEYSILELLLRNGR 166 W I + + S VL LT++E IL L+ + Sbjct: 125 ----AAGAFWWDAIASQEIQTAFQHSSSTGAVLPLADADGENPLTKRELEILSLVAKG-- 178 Query: 167 RVLSRSMIIDSIWKLESPPEEDTVKVHVRSLRQKLK 202 S I D ++ TV+VHV ++ +KL+ Sbjct: 179 --KSNQEIADELYIAPG-----TVRVHVHTILRKLE 207 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 46.6 bits (109), Expect = 7e-08 Identities = 53/223 (23%), Positives = 97/223 (43%), Gaps = 19/223 (8%) Query: 1 MRILLVEDDLPLAETLAEALSDQ--LYTVDIATDASLAWDYASRLEYDLVILDVMLPELD 58 +RI L+ED+ + + L +AL+ + V A + L + D+VI+D+ LP+++ Sbjct: 4 IRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMN 63 Query: 59 GITLCQKWRSH--SYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALL 116 GI + Q+ + + ++++T D + AGAD Y +K L ++A Sbjct: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA-T 122 Query: 117 RRGCATCQP-----VLEWGPIRLDPSTYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSR 171 G A P VL P S + LT +E +L+L++ S Sbjct: 123 HGGFAWIDPAIARIVLAHAPGAEPSEPSSPSRTSLSYGLTERELEVLQLIVDG----CSN 178 Query: 172 SMIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETV 214 + I + ++ TVK HVR++ KL + + A+ + Sbjct: 179 ADIAEKLYITVG-----TVKTHVRNILNKLCANDRTQAAVRAI 216 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 42.0 bits (97), Expect = 2e-06 Identities = 27/119 (22%), Positives = 56/119 (47%), Gaps = 2/119 (1%) Query: 1 MRILLVEDDLPLAETLAEALS--DQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELD 58 +R+L+ +D + LA ++ + + A + A + D+ ++D+ +PE++ Sbjct: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 Query: 59 GITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLR 117 G+ + I+++T D+ D GL AGA Y++K + EL +R + R Sbjct: 67 GVAAISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHR 125 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.320 0.137 0.397 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 20,671 Number of Sequences: 78 Number of extensions: 811 Number of successful extensions: 81 Number of sequences better than 1.0e-05: 30 Number of HSP's better than 0.0 without gapping: 22 Number of HSP's successfully gapped in prelim test: 8 Number of HSP's that attempted gapping in prelim test: 14 Number of HSP's gapped (non-prelim): 33 length of query: 234 length of database: 48,235 effective HSP length: 60 effective length of query: 174 effective length of database: 43,555 effective search space: 7578570 effective search space used: 7578570 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002489 slr1588 (421 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002489 slr1588 816 0.0 SYNE-PCC-01-000542 sll0821 176 1e-46 SYNE-PCC-01-002731 slr1909 96 3e-22 SYNE-PCC-01-001461 slr0115 96 3e-22 SYNE-PCC-01-002033 slr0947 89 3e-20 SYNE-PCC-01-000414 sll0649 82 2e-18 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 82 4e-18 SYNE-PCC-01-002635 slr1783 74 1e-15 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 73 1e-15 SYNE-PCC-01-001437 slr0081 73 2e-15 SYNE-PCC-01-001306 sll1905 73 2e-15 SYNE-PCC-01-002086 slr1042 72 2e-15 SYNE-PCC-01-002672 slr1837 71 7e-15 SYNE-PCC-01-002486 slr1584 71 7e-15 SYNE-PCC-01-001575 slr0312 67 8e-14 SYNE-PCC-01-001133 sll1673 67 8e-14 SYNE-PCC-01-002873 slr2098 66 2e-13 SYNE-PCC-01-001132 sll1672 66 2e-13 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 64 7e-13 SYNE-PCC-01-000518 sll0789 64 9e-13 SYNE-PCC-01-002221 slr1213 63 2e-12 SYNE-PCC-01-000242 sll0396 63 2e-12 SYNE-PCC-01-002879 slr2104 62 3e-12 SYNE-PCC-01-000800 sll1228 60 1e-11 SYNE-PCC-01-000523 sll0797 59 2e-11 SYNE-PCC-01-002788 slr1982 59 4e-11 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 57 1e-10 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 56 2e-10 SYNE-PCC-01-002618 slr1760 55 3e-10 SYNE-PCC-01-000608 sll0921 54 9e-10 SYNE-PCC-01-002778 slr1969 46 2e-07 SYNE-PCC-01-000877 sll1330 44 9e-07 SYNE-PCC-01-002617 slr1759 42 5e-06 SYNE-PCC-01-001160 sll1708 42 5e-06 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 816 bits (2107), Expect = 0.0 Identities = 410/421 (97%), Positives = 410/421 (97%) Query: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM Sbjct: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 Query: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR Sbjct: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 Query: 121 LQKQAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAEIWRDLEVGLNTGQVFLFYQP 180 LQKQAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAEIWRDLEVGLNTGQVFLFYQP Sbjct: 121 LQKQAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAEIWRDLEVGLNTGQVFLFYQP 180 Query: 181 KVSIHNHCLAGCEALIRWHHPRKGFVSPGLFIPIAEKTGFISVVGEWVIETVLRQCQQWQ 240 KVSIHNHCLAGCEALIRWHHPRKGFVSPGLFIPIAEKTGFISVVGEWVIETVLRQCQQWQ Sbjct: 181 KVSIHNHCLAGCEALIRWHHPRKGFVSPGLFIPIAEKTGFISVVGEWVIETVLRQCQQWQ 240 Query: 241 YQGLDPIQVAINISARQFHGEDLICILRLGTHKYDVSPQQXXXXXXXXXXXKNVQDSIKQ 300 YQGLDPIQVAINISARQFHGEDLICILRLGTHKYDVSPQQ KNVQDSIKQ Sbjct: 241 YQGLDPIQVAINISARQFHGEDLICILRLGTHKYDVSPQQLEVELTETLLVKNVQDSIKQ 300 Query: 301 LNELRAEGFSVAIDDFGTGYSSLSYLQQFPFDVLKIDQSFVRHIDKNAKNKTITASIINL 360 LNELRAEGFSVAIDDFGTGYSSLSYLQQFPFDVLKIDQSFVRHIDKNAKNKTITASIINL Sbjct: 301 LNELRAEGFSVAIDDFGTGYSSLSYLQQFPFDVLKIDQSFVRHIDKNAKNKTITASIINL 360 Query: 361 AHELELRVTAEGVETWAEYDTIAHMGCDELQGYLFSRPLPVADFTELLSRGTDVPILPLR 420 AHELELRVTAEGVETWAEYDTIAHMGCDELQGYLFSRPLPVADFTELLSRGTDVPILPLR Sbjct: 361 AHELELRVTAEGVETWAEYDTIAHMGCDELQGYLFSRPLPVADFTELLSRGTDVPILPLR 420 Query: 421 R 421 R Sbjct: 421 R 421 >SYNE-PCC-01-000542 sll0821 Length = 1276 Score = 176 bits (446), Expect = 1e-46 Identities = 98/249 (39%), Positives = 142/249 (57%), Gaps = 10/249 (4%) Query: 157 DEAEIWRDLEVGLNTGQVFLFYQPKVSIHNHCLAGCEALIRWHHPRKGFVSPGLFIPIAE 216 D + DL L + L++QP+V++ L G EAL+RW HPR G V+P +FIP+AE Sbjct: 606 DRLTLESDLRQALTNQEFVLYFQPQVALDTGKLLGVEALVRWQHPRLGQVAPDVFIPLAE 665 Query: 217 KTGFISVVGEWVIETVLRQCQQWQYQGLDPIQVAINISARQFHGED-----LICILRLGT 271 + G I+ +G+WV+ET Q + + +++A+NISARQF E L C+ R G Sbjct: 666 ELGLINHLGQWVLETACATHQHFFRETGRRLRMAVNISARQFQDEKWLNSVLECLKRTG- 724 Query: 272 HKYDVSPQQXXXXXXXXXXXKNVQDSIKQLNELRAEGFSVAIDDFGTGYSSLSYLQQFPF 331 + P+ ++++ ++ L+ LR EG VAIDDFGTGYSSLS L+Q P Sbjct: 725 ----MPPEDLELEITESLMMEDIKGTVVLLHRLREEGVQVAIDDFGTGYSSLSILKQLPI 780 Query: 332 DVLKIDQSFVRHIDKNAKNKTITASIINLAHELELRVTAEGVETWAEYDTIAHMGCDELQ 391 LKID+SFV + + I +I+LA+ L L AEG+E+ A+ + MGC Q Sbjct: 781 HRLKIDKSFVNDLLNEGADTAIIQYVIDLANGLNLETVAEGIESEAQLQRLQKMGCHLGQ 840 Query: 392 GYLFSRPLP 400 GY +RPLP Sbjct: 841 GYFLTRPLP 849 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 95.5 bits (236), Expect = 3e-22 Identities = 56/171 (32%), Positives = 95/171 (55%), Gaps = 7/171 (4%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 +L+V+D+ + L+ + L + Y++ A NG AL LL + +PD+I+CD+MMPEMDG+ Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTT--TVPDMIVCDIMMPEMDGY 67 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 I +++N + IP +FL+A G + KG+N GAD Y+ KPF+ E+L V S L++ Sbjct: 68 AFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQ 127 Query: 124 QAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAEIWRDLEVGLNTGQV 174 +L + + + R LTP E ++ + + GL ++ Sbjct: 128 ADRLLQHNNHPLEDNARVQVARD-----VELTPTETKVIQLVAQGLANREI 173 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 95.5 bits (236), Expect = 3e-22 Identities = 56/163 (34%), Positives = 95/163 (58%), Gaps = 13/163 (7%) Query: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 M IL+++D+ I +L+ L + Y + +A +G L ++++ PDLI+ D+M+P++ Sbjct: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQAL--AVQLQPDLIMLDLMLPKV 58 Query: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 DG + L+++ +TA IP + LTALG +QD +G +SGADDYL KPF E++L V + Sbjct: 59 DGFTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRAL 118 Query: 121 LQKQAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAE-IW 162 L++ ++ Q + S + + G TL P+ E IW Sbjct: 119 LRRTDRIP---QAAKHSEILNQ-------GPLTLVPERFEAIW 151 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 88.6 bits (218), Expect = 3e-20 Identities = 47/121 (38%), Positives = 76/121 (62%), Gaps = 5/121 (4%) Query: 6 VVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGHGL 65 +V+DEA IR ++ LS+ Y+++ A +G A+ + + PDL++ DVMMP++DG+G+ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESD--PDLVVLDVMMPKLDGYGV 58 Query: 66 ITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQKQA 125 L+K + IP I LTALG + D G+ GADDY++KPF ++L + S L++ Sbjct: 59 CQELRKESD---IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVD 115 Query: 126 K 126 K Sbjct: 116 K 116 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 82.4 bits (202), Expect = 2e-18 Identities = 45/126 (35%), Positives = 74/126 (58%), Gaps = 2/126 (1%) Query: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 M IL+VED+ I +LI ETL E + + +G L + E +PDLI+ D+M+P++ Sbjct: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQ--EQVPDLIVLDLMLPKL 68 Query: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 DG + T +++ + + LTA G D G+++GADDYL+KPF +L+ V + Sbjct: 69 DGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRAL 128 Query: 121 LQKQAK 126 L++Q + Sbjct: 129 LRRQLR 134 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 81.6 bits (200), Expect = 4e-18 Identities = 47/116 (40%), Positives = 67/116 (57%), Gaps = 3/116 (2%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 IL+VEDE IRE+I LS + Y ++EA + A+ N ++ P LI+ D M+P G Sbjct: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAI---NKIKENPKLILLDWMLPGRSGI 61 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNS 119 I ++K AAIP I LTA T +D +N+GADDY+ KPF + LL + + Sbjct: 62 QFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEA 117 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 73.6 bits (179), Expect = 1e-15 Identities = 60/200 (30%), Positives = 99/200 (49%), Gaps = 21/200 (10%) Query: 3 TILVVEDEAIIRELIGETLSLE-NYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMD 61 ++L+V+DE +RE + L ++K+ A N A L +P L+I D+MMP++D Sbjct: 57 SLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQ--HHLPALVISDIMMPQVD 114 Query: 62 GHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRL 121 G+ + L+++A+ ++P +FLTA G D +G +G D +L KPF ++L V + L Sbjct: 115 GYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLL 174 Query: 122 QKQ----------AKLSAFYQGSISSSLTERPRRSGTIGTPT-----LTPDEAEIWRDLE 166 +Q AKL YQ I + + + SG TP+ TP E + + Sbjct: 175 ARQQASSDAGSESAKLQEIYQ-EIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVS 233 Query: 167 VGLNTGQVFLFYQPKVSIHN 186 GL ++ Q K S+ N Sbjct: 234 QGLMNKEIAA--QLKTSVRN 251 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 73.2 bits (178), Expect = 1e-15 Identities = 46/128 (35%), Positives = 71/128 (55%), Gaps = 6/128 (4%) Query: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 MS +L+V+D+ + EL+ L LE + + A NG AL LN L++ DVMMP++ Sbjct: 1 MSKLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNESY---KLVLLDVMMPKL 57 Query: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 +G I L++ K + +P + LTA G D G+ GADD L KPF +L+ + + Sbjct: 58 NG---IETLKEIRKVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAI 114 Query: 121 LQKQAKLS 128 L++ A S Sbjct: 115 LRRSASPS 122 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 72.8 bits (177), Expect = 2e-15 Identities = 43/126 (34%), Positives = 70/126 (55%), Gaps = 7/126 (5%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMP-----DLIICDVMMP 58 ILVVEDE IRE I +L E Y++ ++G AL LL P DLII D+M+P Sbjct: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 Query: 59 EMDGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVN 118 +++G + +L+ P + ++A G+ + G+ GADDY+ KPF ++L+ Sbjct: 93 QVNGLDVCRSLRFGGDNT--PILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCR 150 Query: 119 SRLQKQ 124 + +++Q Sbjct: 151 AMIRRQ 156 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 72.8 bits (177), Expect = 2e-15 Identities = 46/119 (38%), Positives = 63/119 (52%), Gaps = 2/119 (1%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 ILVV+D +I E L E Y +G AL + + PDLI+ D+MMP MDG Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVT--QAQPDLILLDLMMPGMDGL 77 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQ 122 + L+++ +T IP IFLTA QD + GA DY+ KPF +LL V + L+ Sbjct: 78 EVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLE 136 Score = 50.1 bits (118), Expect = 1e-08 Identities = 36/116 (31%), Positives = 58/116 (50%), Gaps = 3/116 (2%) Query: 3 TILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDG 62 TIL+ ED I +++ L Y + NG AL L + D+++ DV MPEMDG Sbjct: 741 TILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDY--DVVLMDVEMPEMDG 798 Query: 63 HGLITALQKNAKTAAIPFIF-LTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAV 117 ++++ + P+I +TA D + + SG +DY+ KP + E L A+ Sbjct: 799 LTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQAL 854 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 72.4 bits (176), Expect = 2e-15 Identities = 39/122 (31%), Positives = 68/122 (55%), Gaps = 2/122 (1%) Query: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 M+ +L+VED + RE+I L +++ A +G AL L + PDL++ D++MP M Sbjct: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFS--PDLVVLDIVMPRM 84 Query: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 +G+ + ++ + KT +P I ++ G D GM GAD Y+ KPF+ +L+ + Sbjct: 85 NGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQL 144 Query: 121 LQ 122 L+ Sbjct: 145 LR 146 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 70.9 bits (172), Expect = 7e-15 Identities = 44/125 (35%), Positives = 71/125 (56%), Gaps = 4/125 (3%) Query: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 M+ IL+V+DE + E + + L + + I A+ G GL ++ DL+I D M+P++ Sbjct: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKT--GLAMAIAGQYDLLILDWMLPQV 58 Query: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSR 120 G L Q + P +FLTA T+ D G+++G DDYLIKPF+ +LL V + Sbjct: 59 SG--LEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRAL 116 Query: 121 LQKQA 125 L++Q+ Sbjct: 117 LRRQS 121 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 70.9 bits (172), Expect = 7e-15 Identities = 44/121 (36%), Positives = 72/121 (59%), Gaps = 6/121 (4%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 IL+VED+ + E + E LS + Y + A + ++A + LE DL+I DVM+PE+DG Sbjct: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEY--DLVILDVMLPELDG- 59 Query: 64 GLITALQK-NAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQ 122 IT QK + + +P + +TA T+ D G+++GADDY++KP +L V + L+ Sbjct: 60 --ITLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLR 117 Query: 123 K 123 + Sbjct: 118 R 118 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 67.4 bits (163), Expect = 8e-14 Identities = 48/173 (27%), Positives = 87/173 (50%), Gaps = 16/173 (9%) Query: 4 ILVVEDEAIIRELIGETLSLEN--YKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMD 61 +L+ +D AI R+ + ++ + I +AENG A+ L E PD+ + D+ MPE++ Sbjct: 9 VLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFE--EHQPDVTLMDLRMPEVE 66 Query: 62 GHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRL 121 G I+A+ K A I I LT + +D +G+ +GA YL+K + ++LLNA+ + Sbjct: 67 GVAAISAICAIVKFARI--IVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVH 124 Query: 122 QKQAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAEIWRDLEVGLNTGQV 174 + Q + + + L +R + P L+ E E+ L G++ + Sbjct: 125 RGQ----KYIPPDVGAKLVQR------LSNPELSERELEVLGSLAQGMSNADI 167 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 67.4 bits (163), Expect = 8e-14 Identities = 39/121 (32%), Positives = 64/121 (52%), Gaps = 2/121 (1%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 IL+V+D +L+ + L Y + +G +AL L PDLI+ D+ MP+MDG+ Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKR--PDLILLDIKMPDMDGY 68 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 + ++K + IP IF++ALG D K G DY+ KPF+ E+++ + + Sbjct: 69 QVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIEGQFTI 128 Query: 124 Q 124 Q Sbjct: 129 Q 129 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 65.9 bits (159), Expect = 2e-13 Identities = 39/112 (34%), Positives = 63/112 (56%), Gaps = 2/112 (1%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 IL+VED I +E+ E L + + A NG +AL LN+ L++ D+ MPEMDG Sbjct: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYA--LVLMDMQMPEMDGI 984 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLN 115 A+++N + A +P + +TA D + + +G +D+L KP + E+L N Sbjct: 985 EATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWN 1036 Score = 41.6 bits (96), Expect = 5e-06 Identities = 32/117 (27%), Positives = 51/117 (43%), Gaps = 3/117 (2%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSL--EVMP-DLIICDVMMPEM 60 +LVV+D R ++ + L + + E+G AL L E P ++ D MP M Sbjct: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 Query: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAV 117 DG + L+ +TA G + F K + G DD L+KP L +++ Sbjct: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSL 889 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 65.9 bits (159), Expect = 2e-13 Identities = 39/118 (33%), Positives = 67/118 (56%), Gaps = 2/118 (1%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 ILVV+D+++ R+L+ + L+ ++I EA NG A+ L S E P LI D+ MP MDG+ Sbjct: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWE--PHLIFMDMRMPVMDGY 689 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRL 121 ++ K A + LTA ++ +++G DD+L KPF++ + +++ L Sbjct: 690 EATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTIFDSLTKHL 747 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 64.3 bits (155), Expect = 7e-13 Identities = 43/131 (32%), Positives = 65/131 (49%), Gaps = 9/131 (6%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 ILVVEDE + R + E Y + EAENG +L + + +L++ D+ +P +G Sbjct: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNI--NLVVMDINLPGKNGL 63 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLL----NAVNS 119 L L++ ++P IFLT D G+ GADDYL KPF +L N ++ Sbjct: 64 LLARELREEL---SLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 Query: 120 RLQKQAKLSAF 130 + Q K + F Sbjct: 121 AMPHQEKENTF 131 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 63.9 bits (154), Expect = 9e-13 Identities = 41/124 (33%), Positives = 69/124 (55%), Gaps = 2/124 (1%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 +L+VEDE + + + L ENY + ++G +A L+ V L I D M+P + G Sbjct: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 L L+ + +++P + LTA + D +G+++GADDYLIKPF +LL + S ++ Sbjct: 63 ELCQKLR--GQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRR 120 Query: 124 QAKL 127 +L Sbjct: 121 SPEL 124 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 62.8 bits (151), Expect = 2e-12 Identities = 38/119 (31%), Positives = 67/119 (56%), Gaps = 7/119 (5%) Query: 1 MSTILVVEDEAIIRELIGETLSLENYKI-LEAENGAVALGLLNSLEVMPDLIICDVMMP- 58 ++ IL+VEDE ++ + I + L + Y+I + A +GA AL + E PDL++ D+ + Sbjct: 2 VTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKI--AEFYPDLVLLDIRIKG 59 Query: 59 EMDGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAV 117 E+DG I ++ +IP ++LTA + + + Y+IKPF++E LL+ V Sbjct: 60 EIDG---IEVAERIKSLYSIPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTV 115 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 62.8 bits (151), Expect = 2e-12 Identities = 37/120 (30%), Positives = 64/120 (53%), Gaps = 4/120 (3%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 +LVVE+E + + L E Y + A +G G + E PDLII + +P M G Sbjct: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLK--GFTQAQEFPPDLIIVNGALPGMSGL 62 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 L L++ + IP I +TA +++ G+++GADDY++KPF ++ + +L++ Sbjct: 63 ELCRRLREMG--SRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRR 120 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 62.4 bits (150), Expect = 3e-12 Identities = 37/116 (31%), Positives = 62/116 (53%), Gaps = 2/116 (1%) Query: 2 STILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMD 61 ++IL+VED I RE + L+ + ++ A NG AL LL S D I+ D+ MP ++ Sbjct: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTY--DAILMDIQMPMLN 775 Query: 62 GHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAV 117 G+ A+++ +P I +TA D K +++G +D+L KP K + L + Sbjct: 776 GYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 60.1 bits (144), Expect = 1e-11 Identities = 35/111 (31%), Positives = 61/111 (54%), Gaps = 2/111 (1%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 +LVV+D R L+ + L+ + + EAENG +A+ L S P +I+ D+ MP +DG Sbjct: 420 VLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWH--PQVILMDMQMPVLDGR 477 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLL 114 ++ + + I LTA + + +++G DD+L KPF+ E+L+ Sbjct: 478 STTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELI 528 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 59.3 bits (142), Expect = 2e-11 Identities = 43/132 (32%), Positives = 68/132 (51%), Gaps = 6/132 (4%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 IL+VEDE + I + L E Y + +G+ A L + L I D ++P + G Sbjct: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 L L+ + +P + LTALG ++ +G+++GADDYL KPF +LL +RL+ Sbjct: 63 ELCQKLRTQGNS--LPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELL----ARLRA 116 Query: 124 QAKLSAFYQGSI 135 + S +Q I Sbjct: 117 LQRRSPQFQPQI 128 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 58.5 bits (140), Expect = 4e-11 Identities = 34/119 (28%), Positives = 64/119 (53%), Gaps = 2/119 (1%) Query: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 M+ +L+VED + R+++ L + Y+++ A +G A+ + ++ P LI+ D+ +P + Sbjct: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTM--AISESPQLILMDMSLPII 61 Query: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNS 119 DG ++ + A IP I LTA D + + +G DDY KP + + LL + + Sbjct: 62 DGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEA 120 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 57.0 bits (136), Expect = 1e-10 Identities = 44/171 (25%), Positives = 81/171 (47%), Gaps = 8/171 (4%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 +L+++D ++R I + + L++ + A+ + G+ +L+ PD+II D+ M + G Sbjct: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 + L+ A I + LT D +++GAD YL+K + + LL + Q Sbjct: 67 DTLKGLRAEGVDARI--LILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIAQG 124 Query: 124 QAKLSAFYQGSISSSLTERPRRSGTIGTPTLTPDEAEIWRDLEVGLNTGQV 174 + LS SI + L ER + +LT E + R + GL+ Q+ Sbjct: 125 EVILS----DSIKNLLLERTHEDNPL--DSLTDREMGVLRQIATGLSNKQI 169 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 55.8 bits (133), Expect = 2e-10 Identities = 39/132 (29%), Positives = 67/132 (50%), Gaps = 8/132 (6%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 IL++ED+ +I + L+ + + +G + L S D ++ D+ +P++DG Sbjct: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPY--DAVVLDLTLPKLDGL 60 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 ++ + N + +P + LTA T+ + KG+ SGADDYL KPF L V +RLQ Sbjct: 61 EVLQQWRSNHQD--VPVLILTARDTLDERVKGLQSGADDYLCKPF----ALAEVAARLQA 114 Query: 124 QAKLSAFYQGSI 135 + Y S+ Sbjct: 115 LIRRRYGYHHSV 126 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 55.5 bits (132), Expect = 3e-10 Identities = 39/145 (26%), Positives = 65/145 (44%), Gaps = 18/145 (12%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 ILVV+D+ +R + L E +++ A NG AL E+ P++++ D +MP MDG Sbjct: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEAL--TKFAEIKPEVVLLDAVMPVMDGF 71 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPF--------------- 108 AL K + + + +T L + +GA DY+ KP Sbjct: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQ 131 Query: 109 -KQEDLLNAVNSRLQKQAKLSAFYQ 132 + + L +VN L++ AK+ Q Sbjct: 132 NRLQHQLESVNQMLERLAKVDQLTQ 156 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 53.9 bits (128), Expect = 9e-10 Identities = 34/118 (28%), Positives = 65/118 (55%), Gaps = 4/118 (3%) Query: 4 ILVVEDEAIIRELIGETLSLE-NYK-ILEAENGAVALGLLNSLEVMPDLIICDVMMPEMD 61 I ++EDE +IR+ + + L++E +++ + EA NG LGL+ + PD++I D+ +P+M+ Sbjct: 6 IALIEDEDLIRQGLQDALTMEPSFEWVGEAANGR--LGLVMMQQTRPDVVIIDIGLPDMN 63 Query: 62 GHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNS 119 G + L+K + LT + ++GAD Y +K + E L+ A+ + Sbjct: 64 GIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 45.8 bits (107), Expect = 2e-07 Identities = 34/122 (27%), Positives = 63/122 (51%), Gaps = 4/122 (3%) Query: 2 STILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMD 61 S+++V+E + I LI E L++ NY+++ + AL + L+ P LII D +D Sbjct: 630 SSVIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQ--PGLIIVDGDF--VD 685 Query: 62 GHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRL 121 + ++K+ + + + L+ + +++ G DDYL+KP + E LL V S Sbjct: 686 VTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDYLLKPLQPELLLQRVQSIQ 745 Query: 122 QK 123 Q+ Sbjct: 746 QE 747 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 43.9 bits (102), Expect = 9e-07 Identities = 33/126 (26%), Positives = 57/126 (45%), Gaps = 5/126 (3%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 I VVE +R L+ L Y + + A N+ +P L + D + + DG Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQ--LPTLAVIDSDLTDGDGI 63 Query: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQK 123 L L + ++ L+A T +D G+ +GADDYL KPF ++ L + +++ Sbjct: 64 ELCRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRR 120 Query: 124 QAKLSA 129 ++A Sbjct: 121 VRTVAA 126 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 41.6 bits (96), Expect = 5e-06 Identities = 31/114 (27%), Positives = 55/114 (48%), Gaps = 9/114 (7%) Query: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 IL+ ED + +++ + L+ Y + A NG + L + DL++ D+ MP MDG Sbjct: 1192 ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALE--KKFYDLVLMDMQMPVMDG- 1248 Query: 64 GLITALQKNAKTAAIP----FIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDL 113 ITA + +T + + +TA D ++ +++G D Y+ KP L Sbjct: 1249 --ITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 41.6 bits (96), Expect = 5e-06 Identities = 35/118 (29%), Positives = 64/118 (54%), Gaps = 10/118 (8%) Query: 4 ILVVEDEAIIRELIGETLSL-ENYKIL-EAENGAVALGLLNSLEVM-PDLIICDVMMPEM 60 IL+VED+ +++ + + L E ++I+ +NG G + V+ PDLI+ D+ +P + Sbjct: 19 ILIVEDDPLMQLGLEQALGAHERFEIIGRVDNG---YGAVQQAAVLNPDLIVMDIGLPGL 75 Query: 61 DGHGLITALQKNAKTA-AIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAV 117 DG I A ++ +T+ I + LT+ + ++SGAD Y +K E L+ A+ Sbjct: 76 DG---IEATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAI 130 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.138 0.405 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 38,144 Number of Sequences: 78 Number of extensions: 1591 Number of successful extensions: 78 Number of sequences better than 1.0e-05: 34 Number of HSP's better than 0.0 without gapping: 21 Number of HSP's successfully gapped in prelim test: 13 Number of HSP's that attempted gapping in prelim test: 19 Number of HSP's gapped (non-prelim): 39 length of query: 421 length of database: 48,235 effective HSP length: 65 effective length of query: 356 effective length of database: 43,165 effective search space: 15366740 effective search space used: 15366740 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002617 slr1759 (1462 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002617 slr1759 2740 0.0 SYNE-PCC-01-001306 sll1905 371 e-104 SYNE-PCC-01-002873 slr2098 352 5e-99 SYNE-PCC-01-002879 slr2104 274 2e-75 SYNE-PCC-01-001132 sll1672 200 2e-53 SYNE-PCC-01-000891 sll1353 197 3e-52 SYNE-PCC-01-001280 sll1871 184 2e-48 SYNE-PCC-01-001294 sll1888 182 5e-48 SYNE-PCC-01-000800 sll1228 180 3e-47 SYNE-PCC-01-000295 sll0474 155 8e-40 SYNE-PCC-01-002778 slr1969 146 4e-37 SYNE-PCC-01-001509 slr0210 127 2e-31 SYNE-PCC-01-001517 slr0222 121 2e-29 SYNE-PCC-01-002220 slr1212 105 8e-25 SYNE-PCC-01-000985 sll1475 80 3e-17 SYNE-PCC-01-002788 slr1982 79 8e-17 SYNE-PCC-01-001690 slr0473 79 1e-16 SYNE-PCC-01-002635 slr1783 64 3e-12 SYNE-PCC-01-002486 slr1584 64 3e-12 SYNE-PCC-01-001133 sll1673 61 3e-11 SYNE-PCC-01-000414 sll0649 60 4e-11 SYNE-PCC-01-002033 slr0947 59 8e-11 SYNE-PCC-01-000523 sll0797 57 3e-10 SYNE-PCC-01-002086 slr1042 57 5e-10 SYNE-PCC-01-002731 slr1909 56 9e-10 SYNE-PCC-01-002672 slr1837 55 1e-09 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 53 8e-09 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 52 1e-08 SYNE-PCC-01-001160 sll1708 52 2e-08 SYNE-PCC-01-001437 slr0081 50 4e-08 SYNE-PCC-01-001461 slr0115 49 9e-08 SYNE-PCC-01-002618 slr1760 49 1e-07 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 48 2e-07 SYNE-PCC-01-001075 sll1592 47 4e-07 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 47 4e-07 SYNE-PCC-01-001575 slr0312 46 9e-07 SYNE-PCC-01-000242 sll0396 46 9e-07 SYNE-PCC-01-000518 sll0789 45 2e-06 SYNE-PCC-01-000983 sll1473 44 4e-06 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 2740 bits (7103), Expect = 0.0 Identities = 1388/1462 (94%), Positives = 1388/1462 (94%) Query: 1 MVISATVISMKXXXXXXXXXXXXXXXXGAGLSVMTVHTWLFLYNQVQERLKQVLTNRLTN 60 MVISATVISMK GAGLSVMTVHTWLFLYNQVQERLKQVLTNRLTN Sbjct: 1 MVISATVISMKSPLRRLLLSPVLPILIGAGLSVMTVHTWLFLYNQVQERLKQVLTNRLTN 60 Query: 61 IHEQIENQLNIHVRQLEQMAGRWERSPTGTEQTDWRLDARAQAEGFDGYQTIQWVDPKFV 120 IHEQIENQLNIHVRQLEQMAGRWERSPTGTEQTDWRLDARAQAEGFDGYQTIQWVDPKFV Sbjct: 61 IHEQIENQLNIHVRQLEQMAGRWERSPTGTEQTDWRLDARAQAEGFDGYQTIQWVDPKFV 120 Query: 121 VRWVEPLPDDEHDIDYANQYPHQIQSLELAARQKNTILSGVVDLDQGEKGFLVYVPLFIG 180 VRWVEPLPDDEHDIDYANQYPHQIQSLELAARQKNTILSGVVDLDQGEKGFLVYVPLFIG Sbjct: 121 VRWVEPLPDDEHDIDYANQYPHQIQSLELAARQKNTILSGVVDLDQGEKGFLVYVPLFIG 180 Query: 181 DRFDGFVVGVFQLDQFIGSVRPLSGNKPDQDSGLRSFGLRIFEGNQLIYNDVPDDWEQDI 240 DRFDGFVVGVFQLDQFIGSVRPLSGNKPDQDSGLRSFGLRIFEGNQLIYNDVPDDWEQDI Sbjct: 181 DRFDGFVVGVFQLDQFIGSVRPLSGNKPDQDSGLRSFGLRIFEGNQLIYNDVPDDWEQDI 240 Query: 241 VVTQELAWANSLPQAEAMTSRWQLQLVPGPILLDQYGSSQWILFSGLLMAWAVAIAVYYL 300 VVTQELAWANSLPQAEAMTSRWQLQLVPGPILLDQYGSSQWILFSGLLMAWAVAIAVYYL Sbjct: 241 VVTQELAWANSLPQAEAMTSRWQLQLVPGPILLDQYGSSQWILFSGLLMAWAVAIAVYYL 300 Query: 301 QKSSKHSEQLSESIKQQQKVEEFLKSTLQELAVQKTALDEAAIVAITDTEGVITYVNDKF 360 QKSSKHSEQLSESIKQQQKVEEFLKSTLQELAVQKTALDEAAIVAITDTEGVITYVNDKF Sbjct: 301 QKSSKHSEQLSESIKQQQKVEEFLKSTLQELAVQKTALDEAAIVAITDTEGVITYVNDKF 360 Query: 361 VEVSGYSREELIGNTHRLVSSGYHSPEFFQQFWQTIRAGKVWHGQINNRAKAGNTYWVDS 420 VEVSGYSREELIGNTHRLVSSGYHSPEFFQQFWQTIRAGKVWHGQINNRAKAGNTYWVDS Sbjct: 361 VEVSGYSREELIGNTHRLVSSGYHSPEFFQQFWQTIRAGKVWHGQINNRAKAGNTYWVDS 420 Query: 421 TVVPFLDDNGNPYQYLAIRFEITSSKQAEKSLRESEARFRMMADTSPIMLWVADQDKKMT 480 TVVPFLDDNGNPYQYLAIRFEITSSKQAEKSLRESEARFRMMADTSPIMLWVADQDKKMT Sbjct: 421 TVVPFLDDNGNPYQYLAIRFEITSSKQAEKSLRESEARFRMMADTSPIMLWVADQDKKMT 480 Query: 481 FVNQSWLEFRGATLAEESGNGYLEGIHPDDKGHYLGVYSQAFGDXXXXXXXXXXXXVDQQ 540 FVNQSWLEFRGATLAEESGNGYLEGIHPDDKGHYLGVYSQAFGD VDQQ Sbjct: 481 FVNQSWLEFRGATLAEESGNGYLEGIHPDDKGHYLGVYSQAFGDRRRFELEYRYRRVDQQ 540 Query: 541 YRWIVNVGVPRYLEDGKFMGYVGSCLDITDRKQAQDILQKKLNQILLMRKISQEIRRSLQ 600 YRWIVNVGVPRYLEDGKFMGYVGSCLDITDRKQAQDILQKKLNQILLMRKISQEIRRSLQ Sbjct: 541 YRWIVNVGVPRYLEDGKFMGYVGSCLDITDRKQAQDILQKKLNQILLMRKISQEIRRSLQ 600 Query: 601 PTLIFQTAARQVGNVFAVSRCLIHNYSEATTLQVPVVAEYLGGQFTSLLAGEIAVEQAYD 660 PTLIFQTAARQVGNVFAVSRCLIHNYSEATTLQVPVVAEYLGGQFTSLLAGEIAVEQAYD Sbjct: 601 PTLIFQTAARQVGNVFAVSRCLIHNYSEATTLQVPVVAEYLGGQFTSLLAGEIAVEQAYD 660 Query: 661 PTIIQGDRAMAVVDLDQDLNSTHTKAFYQRFQVKSFLAVRTSYQGKANGIIALHQCDRQR 720 PTIIQGDRAMAVVDLDQDLNSTHTKAFYQRFQVKSFLAVRTSYQGKANGIIALHQCDRQR Sbjct: 661 PTIIQGDRAMAVVDLDQDLNSTHTKAFYQRFQVKSFLAVRTSYQGKANGIIALHQCDRQR 720 Query: 721 VWTADXXXXXXXXXXQMGIXXXXXXXXXXXXXXXXXXXXXNLELEKATWAAEAANRAKGE 780 VWTAD QMGI NLELEKATWAAEAANRAKGE Sbjct: 721 VWTADEIELLEAIAEQMGIALAQAALLEKERERRRELAQKNLELEKATWAAEAANRAKGE 780 Query: 781 FLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIE 840 FLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIE Sbjct: 781 FLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIE 840 Query: 841 ADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSN 900 ADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSN Sbjct: 841 ADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSN 900 Query: 901 LIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQDR 960 LIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQDR Sbjct: 901 LIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQDR 960 Query: 961 LFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCILTTAQAP 1020 LFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCILTTAQAP Sbjct: 961 LFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCILTTAQAP 1020 Query: 1021 ALAEADSVQQMKGKQVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFARCPDLD 1080 ALAEADSVQQMKGKQVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFARCPDLD Sbjct: 1021 ALAEADSVQQMKGKQVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFARCPDLD 1080 Query: 1081 AAILDLQMPNMDGITLAHHLRQFAQGKDLPIILLSSGLVAGADELSVFQTVLNKPVRQSL 1140 AAILDLQMPNMDGITLAHHLRQFAQGKDLPIILLSSGLVAGADELSVFQTVLNKPVRQSL Sbjct: 1081 AAILDLQMPNMDGITLAHHLRQFAQGKDLPIILLSSGLVAGADELSVFQTVLNKPVRQSL 1140 Query: 1141 IFDSLVNIFQGSIGLADYAPQFDQLDLPEFVPDGDGLPTEDNATSLQPALQILLAEDNLV 1200 IFDSLVNIFQGSIGLADYAPQFDQLDLPEFVPDGDGLPTEDNATSLQPALQILLAEDNLV Sbjct: 1141 IFDSLVNIFQGSIGLADYAPQFDQLDLPEFVPDGDGLPTEDNATSLQPALQILLAEDNLV 1200 Query: 1201 NQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACRHIRQTLP 1260 NQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACRHIRQTLP Sbjct: 1201 NQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACRHIRQTLP 1260 Query: 1261 LERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQDTSALITSPQAREDI 1320 LERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQDTSALITSPQAREDI Sbjct: 1261 LERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQDTSALITSPQAREDI 1320 Query: 1321 VTLGDKITVVEEQTMVKPTDVTESPLDPTAIAFLRDDLCGGDLTLFGEMVACYCQESQKL 1380 VTLGDKITVVEEQTMVKPTDVTESPLDPTAIAFLRDDLCGGDLTLFGEMVACYCQESQKL Sbjct: 1321 VTLGDKITVVEEQTMVKPTDVTESPLDPTAIAFLRDDLCGGDLTLFGEMVACYCQESQKL 1380 Query: 1381 IEELVQGLEVDDFAVIRRTAHXXXXXXXXXXXXXXXTFCQQLEKNAGSGNLGLGSPPQLV 1440 IEELVQGLEVDDFAVIRRTAH TFCQQLEKNAGSGNLGLGSPPQLV Sbjct: 1381 IEELVQGLEVDDFAVIRRTAHSLKSSSASLGAQQLSTFCQQLEKNAGSGNLGLGSPPQLV 1440 Query: 1441 DRCRQLHIAVVEALAPFTIPSP 1462 DRCRQLHIAVVEALAPFTIPSP Sbjct: 1441 DRCRQLHIAVVEALAPFTIPSP 1462 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 371 bits (952), Expect = e-104 Identities = 260/680 (38%), Positives = 357/680 (52%), Gaps = 67/680 (9%) Query: 761 NLELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIR 820 N EL AT AAEAANR+K EFLA MSHEIRTPMN +IGMT LL+ TDL QQ + QTIR Sbjct: 304 NQELVAATTAAEAANRSKSEFLATMSHEIRTPMNAIIGMTGLLLDTDLTTQQKYFAQTIR 363 Query: 821 QSGETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGID 880 SGETLLT+INDILDFSKIEA KL LE F+L +E L++ P AR K L L Sbjct: 364 NSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFL 423 Query: 881 PQTPARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSH 940 P + GD RLRQIL NL+ NA+KFTE G+V +TV+ D A+ + Sbjct: 424 TPIPPNLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKG----------EY 473 Query: 941 RICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVT 1000 +ICF ++DTGIGI ++Q LF++FSQ +SS TR++GGTGLGL I RLT +MGG + Sbjct: 474 QICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAE 533 Query: 1001 SEPGV----------------GSNFRFCILTTAQAPALAEADSVQQ--MKGKQVLIVDDN 1042 S V GS F F + T +++ G+ VL+ D + Sbjct: 534 SNGCVVGNPPELWQIGQPTIEGSTFYFTVNLTVLPSCAYSVHNLRHSLFIGRSVLVADYD 593 Query: 1043 ETNRRILQDQCQAWGLVCHCFTSGESAL---DWFARCPDLDAAILDLQMPNMDGITLAHH 1099 E +++ +W L T A D +R + L L P +G Sbjct: 594 EGRGTRMRNLLASWRLQAEQITFSSPAKLGEDLKSRLTQKNYGALILHCPYPEG--RGKQ 651 Query: 1100 LRQFAQGK---------DLPIILLSSGLVAGADELSVFQTVLNKPVRQSLIFDSLVNIFQ 1150 F GK D+P+++ + ++ + S + + ++ + D L N Sbjct: 652 FTDFDLGKITTWAPTEQDIPVLVATDIYLSPGERYSGDKPPVQAWIKSPINPDELENTLV 711 Query: 1151 GSIGLADYAPQFDQLDLPEFVPDGDGLPTEDNATSLQP----ALQILLAEDNLVNQKVAH 1206 +G Q + P V TE + L P L ILLAEDNL+NQ+VA Sbjct: 712 DVLG---------QTEPPTLV------STEAISGPLFPYSSSNLTILLAEDNLINQQVAK 756 Query: 1207 QMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACRHIRQTLPLERQPR 1266 +L LGYPV + NNGQE + AL K YD+VLMD++MP MDG+TA HIR++ +P Sbjct: 757 LLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSERPW 816 Query: 1267 IVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQ-DTSALITSPQAREDIVTLGD 1325 I+A+TA +M GDR+ CL +GM+ Y+SKPI + L++ LQ +AL ++ Q R V+ Sbjct: 817 IIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQALQVAATALQSTSQDRMATVSCVS 876 Query: 1326 KITVVEEQTMVKPTD---VTESPLDPTAIAFLRD-DLCGGDLTLFGEMVACYCQESQKLI 1381 + P D T P+D I LRD D G L L E++ YCQ + +L+ Sbjct: 877 AFEAKPSPSSPCPEDPAGTTLPPIDQDIICSLRDLDRENGQLIL-REIIDIYCQTAPELL 935 Query: 1382 EELVQGLEVDDFAVIRRTAH 1401 + + + D+ + AH Sbjct: 936 QRIKLAIANQDWGNLSSAAH 955 Score = 57.4 bits (137), Expect = 3e-10 Identities = 34/118 (28%), Positives = 57/118 (48%), Gaps = 1/118 (0%) Query: 1183 ATSLQPALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQ 1242 AT + IL+ +D N V ++L GY +G E + + + DL+L+D+ Sbjct: 11 ATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLM 70 Query: 1243 MPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 MP MDG+ C ++Q P R ++ +TA+ D + G Y++KP S +L Sbjct: 71 MPGMDGLEVCDRLKQD-PQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPEL 127 Score = 50.8 bits (120), Expect = 3e-08 Identities = 29/82 (35%), Positives = 46/82 (56%), Gaps = 3/82 (3%) Query: 1036 VLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFARC-PDLDAAILDLQMPNMDGI 1094 +L+VDD + N ++ + + G TSG AL + PDL +LDL MP MDG+ Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDL--ILLDLMMPGMDGL 77 Query: 1095 TLAHHLRQFAQGKDLPIILLSS 1116 + L+Q Q +D+P+I L++ Sbjct: 78 EVCDRLKQDPQTRDIPVIFLTA 99 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 352 bits (903), Expect = 5e-99 Identities = 246/658 (37%), Positives = 345/658 (52%), Gaps = 64/658 (9%) Query: 763 ELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQS 822 E+++A AE A+R K +FLA MSHEIRTPMN VIGMT L + TDL +Q +Y+ IR S Sbjct: 512 EMKRAKELAEEASRIKADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQREYLHKIRFS 571 Query: 823 GETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQ 882 G+ LL +INDILDFSKIEA KL +E+ F+L +++ V + A K LEL + ID Sbjct: 572 GQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRN 631 Query: 883 TPARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRI 942 P +GD +RL QIL N NA+KFTE+G++ + V+ + + +L L Sbjct: 632 LPRHFIGDPLRLGQILINYANNAVKFTEQGDITIVVRLQEY---RDQDVVLYLA------ 682 Query: 943 CFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSE 1002 ++DTGIGI + LF SF Q DSSTTR +GGTGLGL I +R+ ++MGG + V SE Sbjct: 683 ---VKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESE 739 Query: 1003 PGVGSNF--RFCILTTAQAPALAEADSVQQMKGKQVLIVDDNETNRRILQDQCQAWGLVC 1060 G GS F + C+ + P + ++GK+VL+VDDN+ R +++D + V Sbjct: 740 YGQGSTFWAKVCLQKSNVIPHRLVLS--KDLEGKRVLVVDDNDHARLVMKDLLEQMKFVV 797 Query: 1061 HCFTSGESALDWFARCP----DLDAAILDLQMPNMDGITLAHHLRQFAQGKDLPIILLSS 1116 SG AL++ A +D QMPNMDG+ +A L+ I ++++ Sbjct: 798 ETVESGPEALNFLAEADRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTA 857 Query: 1117 GLVAGADELSV------FQTVLNKPVRQSLIFDSLVNIFQGSIGLADYAPQFDQLDLPEF 1170 G +EL V VL KP+ S++FDSL + LA Q Sbjct: 858 ---YGREELFVKAKSLGIDDVLVKPISPSVLFDSLARVLGDPTALAQEMRQ--------- 905 Query: 1171 VPDGDGLPTEDNATSLQPAL---QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVID 1227 G+ ED A + +ILL EDN +NQ+VA ++L ++G+ V +A NG ++ Sbjct: 906 ---SSGIGAEDLALEKLRRIRGARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALE 962 Query: 1228 ALEKKFYDLVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGM 1287 L Y LVLMDMQMP MDGI A IRQ P Q IVAMTAN M GDR+ CL AGM Sbjct: 963 RLNNNAYALVLMDMQMPEMDGIEATIAIRQN-PRYAQLPIVAMTANVMQGDRERCLQAGM 1021 Query: 1288 DGYISKPISINQL-RKVLQDTSALITSPQAREDIVTLGDKITVVEEQTMVKPTDVTESPL 1346 + ++ KPI +L K+L + SP A E I E++ + +D S Sbjct: 1022 NDHLGKPIEPEELWNKLLHWIP--VDSPLAPETI-----------EESAINTSDPEIS-- 1066 Query: 1347 DPTAIAFLRDD---LCGGDLTLFGEMVACYCQESQKLIEELVQGLEVDDFAVIRRTAH 1401 P DD G +L+ +M+ + + E+ Q L D+ R AH Sbjct: 1067 IPHIPGLNSDDGLRRVLGKKSLYLKMLHKFVASQSSFLPEITQALGEKDYGFAERLAH 1124 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 274 bits (700), Expect = 2e-75 Identities = 157/403 (38%), Positives = 242/403 (60%), Gaps = 32/403 (7%) Query: 764 LEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQSG 823 L +A AE A +AK EFLA MSHEIRTPMN +IGM+EL++ TDL QQ +Y+Q ++ +G Sbjct: 444 LLEAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELVLQTDLTSQQRNYLQKVQYAG 503 Query: 824 ETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQT 883 E LL IIN+ILDFSK+EA KL LE + F + ++ + + G A AK L L + +DP+ Sbjct: 504 ELLLGIINNILDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRI 563 Query: 884 PARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRIC 943 P ++GD++RL QIL NL NA+KFT +GE+ T++G+ +L + ++ Sbjct: 564 PPILVGDRLRLSQILINLGNNAVKFTNQGEI--TIRGQ----------LLKTENEQTKLQ 611 Query: 944 FNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEP 1003 F++ DTGIG+ D+Q +LF+ F+Q ++ST+R+YGGTGLGL IS+ LT++MGG + + S Sbjct: 612 FSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVV 671 Query: 1004 GVGSNFRFCILTTAQAPALAE----------------ADSVQQMKGKQVLIVDDNETNRR 1047 G GS F F + +PA+A+ ++ Q++G +L+V+DNE NR Sbjct: 672 GQGSTFHFTVCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNEINRE 731 Query: 1048 ILQDQCQAWGLVCHCFTSGESALDWFARCPDLDAAILDLQMPNMDGITLAHHLRQFAQGK 1107 D + GL +G+ AL DA ++D+QMP ++G +RQ + Sbjct: 732 FAHDLLTSKGLRVQVANNGQEALT-LLTSNTYDAILMDIQMPMLNGYDATRAIRQQEYHR 790 Query: 1108 DLPIILLSSGLVAGADELSV---FQTVLNKPVRQSLIFDSLVN 1147 +LPII +++ +AG E ++ L KP++ L+F +L + Sbjct: 791 NLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAH 833 Score = 106 bits (264), Expect = 6e-25 Identities = 62/156 (39%), Positives = 90/156 (57%), Gaps = 1/156 (0%) Query: 1149 FQGSIGLADYAPQFDQLDLPEFVPDGDGLPTEDNATSLQPALQILLAEDNLVNQKVAHQM 1208 F ++ L +P Q L V + P+ A + ILL EDN +N++ AH + Sbjct: 677 FHFTVCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDL 736 Query: 1209 LNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACRHIRQTLPLERQPRIV 1268 L + G V +ANNGQE + L YD +LMD+QMP+++G A R IRQ R I+ Sbjct: 737 LTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDATRAIRQQ-EYHRNLPII 795 Query: 1269 AMTANAMPGDRQECLDAGMDGYISKPISINQLRKVL 1304 AMTANAM GD+++ LDAGM+ +++KPI + L + L Sbjct: 796 AMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 200 bits (509), Expect = 2e-53 Identities = 140/407 (34%), Positives = 223/407 (54%), Gaps = 35/407 (8%) Query: 762 LELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLIMT-DLNLQQLDYVQTIR 820 ++L +A AE+ +AK F+A MSHE+R+P+N +IG ++L++ T +L ++Q + I+ Sbjct: 349 VDLVRAKEIAESEAKAKSTFVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQ 408 Query: 821 QSGETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGID 880 +SGE LL +IN+ILDFSKIEA K L F+L L++ + +M A + +EL + D Sbjct: 409 RSGEYLLNLINNILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRD 468 Query: 881 PQTPARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTI----LNLP 936 P + GD+++LRQIL NL+ NA+KFT +GEVVLT F AE I P Sbjct: 469 HDLPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLT---SNFRNAEQQEVINPETSTEP 525 Query: 937 HPSHRICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGV 996 + + F ++DTG GI LF++FSQ +S + GTGLGL I+++ ++MGG Sbjct: 526 KNKYWLDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQ-EGTGLGLAITRQFIKLMGGD 584 Query: 997 LTVTSEPGVGSNFRFCILTTAQAPALA-EADSVQQMKG-------KQVLIVDDNETNRRI 1048 + V+S G+ F F IL L+ E +S +++ ++L+VDD NR++ Sbjct: 585 INVSSVVDQGTTFSFSILVDLGEITLSREPNSAKKVLALTPGQPVYKILVVDDKSVNRQL 644 Query: 1049 LQDQCQAWGLVCHCFTSGESALD-WFARCPDLDAAILDLQMPNMDGITLAHHLRQFAQGK 1107 L +G ++G+ A+ W + P L +D++MP MDG +++ +G Sbjct: 645 LIKLLAPFGFEIEEASNGQEAIALWESWEPHL--IFMDMRMPVMDGYEATKYIKGQVKGN 702 Query: 1108 DLPIILLSSG---------LVAGADELSVFQTVLNKPVRQSLIFDSL 1145 ++ L++ L AG D+ L KP R++ IFDSL Sbjct: 703 ATAVVALTASVLEEEKAIVLSAGCDDF------LRKPFRENTIFDSL 743 Score = 71.2 bits (173), Expect = 2e-14 Identities = 39/114 (34%), Positives = 65/114 (57%), Gaps = 1/114 (0%) Query: 1187 QPALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVM 1246 QP +IL+ +D VN+++ ++L G+ + A+NGQE I E L+ MDM+MPVM Sbjct: 627 QPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVM 686 Query: 1247 DGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 DG A ++I+ + +VA+TA+ + ++ L AG D ++ KP N + Sbjct: 687 DGYEATKYIKGQVK-GNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTI 739 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 197 bits (500), Expect = 3e-52 Identities = 114/249 (45%), Positives = 157/249 (63%), Gaps = 9/249 (3%) Query: 762 LELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLD-YVQTIR 820 ++L +A +AE ANR K EFLA +SHEIRTPMN ++G +LL+ DL+L Q Y+ I Sbjct: 584 IKLREAKESAELANRVKSEFLANISHEIRTPMNAILGFCDLLLQKDLSLSQTKKYLNAIG 643 Query: 821 QSGETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGID 880 S + LL +I+DILD SKIEA KLV+ + +LR +I + ++F A +K L LT ID Sbjct: 644 SSSKILLALIDDILDISKIEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQID 703 Query: 881 PQTPARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSH 940 I D VRLRQIL NL+GNALKFTE+G+V + + E S T ++L Sbjct: 704 ETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGVEGIQ-VRSQGTYISL----- 757 Query: 941 RICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVT 1000 + DTGIGI + Q ++F F+Q +TRKYGGTGLGL I++RLT ++GG ++++ Sbjct: 758 --AIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYGGTGLGLTITRRLTALLGGEISLS 815 Query: 1001 SEPGVGSNF 1009 S G GS F Sbjct: 816 SRLGEGSTF 824 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 184 bits (467), Expect = 2e-48 Identities = 111/269 (41%), Positives = 165/269 (61%), Gaps = 23/269 (8%) Query: 764 LEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLI--MTDLNLQQL-DYVQTIR 820 LE A+ AEAAN K FLA MSHE+RTP+N +IG +E+LI DL+ ++L + I Sbjct: 424 LELASSEAEAANATKSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKIL 483 Query: 821 QSGETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGID 880 +SG++LL +IND+LD SKIEA K+ L + F L+ LI +L+ P+ + + +L I Sbjct: 484 RSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGILDTISPLLKNNNNKLEVEIS 543 Query: 881 PQTPARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSH 940 ++ + GD ++LRQ + NL+ NA KFT+ G + V+ D + Sbjct: 544 LESE-EVYGDLIKLRQGILNLLSNASKFTKDGIISFIVEEFKVDEKDW------------ 590 Query: 941 RICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVT 1000 + F ++DTGIG+ ++ +LF+ F+Q DSSTTRKYGGTGLGL I+++ QMMGG + +T Sbjct: 591 -LSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLT 649 Query: 1001 SEPGVGSNFRFCILTTAQAPALAEADSVQ 1029 SE GVGS+F T + P A+ +S + Sbjct: 650 SEIGVGSSF------TIKLPKYAQLNSAK 672 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 182 bits (463), Expect = 5e-48 Identities = 140/463 (30%), Positives = 221/463 (47%), Gaps = 43/463 (9%) Query: 559 MGYVGSCLDITDRKQAQDILQKKLNQILLMRKISQEIRR-SLQPTLIFQTAARQVGNVFA 617 MG + T R + D L + I + I++ IRR SL I+Q A +G+ Sbjct: 1 MGQPSDLTESTLRFSSLDPLHPPV--ISQLTAIAKRIRRNSLHLPTIWQEAVDSIGSTLG 58 Query: 618 VSRCLIHNYSEATTLQVPVVAEYLGGQFTSLLAGEIAVEQAYDPTIIQGDRAMAVVDLDQ 677 VSRCL+ + + + + AE+ T+ A + E + + + + + ++ Sbjct: 59 VSRCLLLT-KDFQSRHLQIEAEFCQPTVTAFAALIVPEESEIWRQLFEQHQPITLYNVQ- 116 Query: 678 DLNSTHTKAFYQRFQVKSFLAVRTSYQGKANGIIALHQCD-RQRVWTADXXXXXXXXXXQ 736 +Q + T YQ +ANG + L Q W + Q Sbjct: 117 ----------FQGEDLGGLWIFPTLYQDQANGYLCLQQVGPAPGPWHPETEALLQELAEQ 166 Query: 737 MGIXXXXXXXXXXXXXXXXXXXXXNLELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGV 796 G EL +AT AAE A+R K EFLA +HE+RTP+NG+ Sbjct: 167 TGTAIAHATLYQ--------------ELTQATKAAEEASRLKSEFLASTTHELRTPLNGI 212 Query: 797 IGMTELLI--MTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIEADKLVLETQAFELR 854 IG L++ M D ++ ++V+ QS LL +INDILD +KIEA ++ +E + + Sbjct: 213 IGFLRLILDDMADSEAEKHEFVEEAYQSALLLLNLINDILDLAKIEAGRVGIELEVVDFS 272 Query: 855 PLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSNLIGNALKFTEKGEV 914 +++ P A+ K L Q P + G+Q L Q++ N++GNA+KFT +G + Sbjct: 273 EVLQATENFALPQAQNKGLSFNLTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGI 332 Query: 915 VLTVKGEPFDPAESYHTIL--NLPHPSHRICFNLRDTGIGIPLDRQDRLFKSFSQVDSST 972 + V+ P T+L + P + ++ DTGIG+ L++Q +LFK F Q+D S Sbjct: 333 TVAVEVMP-------RTVLWEGVQKPG-LLKVSVGDTGIGVSLEQQSKLFKKFVQIDGSH 384 Query: 973 TRKYGGTGLGLVISQRLTQMMGG-VLTVTSEPGVGSNFRFCIL 1014 ++ YGGTGLGLVISQ+L + MGG V + G+GS F +L Sbjct: 385 SKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGSTVTFTVL 427 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 180 bits (456), Expect = 3e-47 Identities = 136/387 (35%), Positives = 198/387 (51%), Gaps = 25/387 (6%) Query: 764 LEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQSG 823 L +A AA+AANRAK EFLA +SHE+RTP+N +IG ++LL + I +SG Sbjct: 149 LTQAKEAADAANRAKTEFLASISHELRTPLNAIIGFSQLLHRDPSLAPHRPTLDIINRSG 208 Query: 824 ETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQT 883 E LL +INDIL+ SKIEA + L + + L++ + +F A+ K L L P+ Sbjct: 209 EHLLELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEV 268 Query: 884 PARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVK---GEPFDPAESYHTILNLPHPSH 940 P I D +LRQ+L NL+ NA+KFT +G V L VK D + L+ Sbjct: 269 PEWIKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLH------ 322 Query: 941 RICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVT 1000 F + DTG GI D LF F+Q ++ + G GLGL ISQ+ Q+MGG + V Sbjct: 323 ---FLVSDTGPGIAAHEMDELFVPFAQTETG-LKSCQGNGLGLPISQKFVQLMGGQIQVR 378 Query: 1001 SEPGVGSNFRFCI-LTTAQAPALAEADSVQQMK-----GKQVLIVDDNETNRRILQDQCQ 1054 S+ GS F F I + AP S + ++VL+VDD +R +L+ Sbjct: 379 SKVDQGSAFFFAIPVQVMAAPKPTPETSAVTLPPLDQYNQKVLVVDDRPESRLLLRQLLT 438 Query: 1055 AWGLVCHCFTSGESALD-WFARCPDLDAAILDLQMPNMDGITLAHHLRQFAQGKDLPIIL 1113 + G V +GE A+ W + P + ++D+QMP +DG + ++ QG+ II Sbjct: 439 SLGFVVQEAENGEMAIALWESWHPQV--ILMDMQMPVLDGRSTTQKIKASPQGQHTIIIA 496 Query: 1114 LSSGLVAG--ADELSV-FQTVLNKPVR 1137 L++ G A+ LS L+KP R Sbjct: 497 LTASAFEGERAEILSAGCDDFLSKPFR 523 Score = 76.6 bits (187), Expect = 5e-16 Identities = 48/142 (33%), Positives = 78/142 (54%), Gaps = 5/142 (3%) Query: 1180 EDNATSLQPALQ----ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYD 1235 E +A +L P Q +L+ +D ++ + Q+L +LG+ V A NG+ I E Sbjct: 404 ETSAVTLPPLDQYNQKVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQ 463 Query: 1236 LVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPI 1295 ++LMDMQMPV+DG + + I+ + P + I+A+TA+A G+R E L AG D ++SKP Sbjct: 464 VILMDMQMPVLDGRSTTQKIKAS-PQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPF 522 Query: 1296 SINQLRKVLQDTSALITSPQAR 1317 +L +L A+ Q + Sbjct: 523 RPEELIALLAKHLAVALPSQGQ 544 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 155 bits (392), Expect = 8e-40 Identities = 94/247 (38%), Positives = 144/247 (58%), Gaps = 18/247 (7%) Query: 774 ANRAKGEFLAMMSHEIRTPMNGVIGMTELL---IMTDLNLQQLDYVQTIRQSGETLLTII 830 A + K EFLA MSHE+RTP+N ++GM E L + LN +Q+ ++ + SG LL++I Sbjct: 414 ATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIVENSGRHLLSLI 473 Query: 831 NDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGD 890 NDILD SKIEA ++ L+ + L+ L A K + L+ I P P +L D Sbjct: 474 NDILDLSKIEAGRMDLDLNPTSVSALVNHSLTFVQQFAIQKQINLSSEIIPNLPD-VLVD 532 Query: 891 QVRLRQILSNLIGNALKFTEKGEVVLT----VKGEPFDPAESYHTILNLPHPSHRICFNL 946 + RL Q+L NL+ NA+KFT +G V+ +K + + ++S ++ F + Sbjct: 533 KRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQS----------PPQLSFTV 582 Query: 947 RDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVG 1006 DTGIGI DR + +F+ F Q+DS+ R+Y GTGLGL + +++ ++ GG +TVTS+ G Sbjct: 583 FDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKLNEG 642 Query: 1007 SNFRFCI 1013 S F+ I Sbjct: 643 SRFKITI 649 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 146 bits (369), Expect = 4e-37 Identities = 132/510 (25%), Positives = 218/510 (42%), Gaps = 61/510 (11%) Query: 575 QDILQKKLNQILLMRKISQEIRRSLQPTLIFQTAARQVGNVFAVSRCLIHNYSEATTLQV 634 QD LQ +Q+ L+ ++ +IR+SL + I A V V R +I+ + + Sbjct: 151 QDSLQA--SQVKLLSQVIAQIRQSLDLSEILNNAVTAVQKFLFVDRLVIYQFHYSQPSLT 208 Query: 635 PVVAEYLGGQFTSLLAGEIAVEQAYDPTI-----------------------IQGDRAMA 671 P+ + GE+ E P I ++G +A Sbjct: 209 PLEENQIPAPRPRQQYGEVTYEARRSPEIDTMLGIMTENDCFSQVFSYEQKYLKG-AVVA 267 Query: 672 VVDLDQDLNSTHTKA-FYQRFQVKSFLAVRTSYQGKANGIIALHQCDRQRVWTADXXXXX 730 V D++ +S++ QR+QV++ L +G+ G++ HQC R W Sbjct: 268 VSDIENHYSSSYCLVGLLQRYQVRAKLVAPIIVEGQLWGLLIAHQCHHPRQWLDSEKNFL 327 Query: 731 XXXXXQMGIXXXXXXXXXXXXXXXXXXXXXNL----ELEKATWAAEAANRAKGEFLAMMS 786 + + + EL AA+AAN K +F+ +S Sbjct: 328 GQIGEHLAVAIVQSLLYSEVQKQKNNFEKRVIERTKELRDTLMAAQAANLLKSQFINNIS 387 Query: 787 HEIRTPMNGVIGMTELLI------MTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIE 840 HE+RTP+ +IG++ L+ + +Q Y+ I+++G+ LL IN I+ S++E Sbjct: 388 HELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLE 447 Query: 841 ADKLVLETQAFELRPLIETVLEMFGPIA--RAKHLELTYGIDPQTPARILGDQVRLRQIL 898 + + L Q+F L L +TV+ +A + +LEL Y I+ + DQ RL QIL Sbjct: 448 SGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQD-QFCADQERLDQIL 506 Query: 899 SNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQ 958 + L+ NALKFT PAE IL + S++ F + DTGIGI + Sbjct: 507 TQLLNNALKFT---------------PAEG-TVILRIWKESNQAIFQVEDTGIGINEQQL 550 Query: 959 DRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCI----- 1013 LF++F S T Y G+GL ++++L ++ GG + V S PG G+ F I Sbjct: 551 PVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIPQQNF 610 Query: 1014 LTTAQAPALAEADSVQQMKGKQVLIVDDNE 1043 T + + D+ ++I D E Sbjct: 611 PPTTKGQVQDKLDAAMPFNSSVIVIEQDEE 640 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 127 bits (320), Expect = 2e-31 Identities = 87/231 (37%), Positives = 118/231 (51%), Gaps = 21/231 (9%) Query: 782 LAMMSHEIRTPMNGVIGMTELL---IMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSK 838 L+ + HE RTP+ +IG +L + LN +Q YVQ S E LL+++ND LD SK Sbjct: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 Query: 839 IEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQIL 898 I+A L + + L V+ M A+ K L L ID + DQ R +QIL Sbjct: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYV-DQRRWKQIL 308 Query: 899 SNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQ 958 NL+ N +KFT KG V L VK + F++ DTGIGI + Q Sbjct: 309 INLLSNGVKFTPKGSVTLAVKAT-----------------DKALIFSVIDTGIGIDPEDQ 351 Query: 959 DRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNF 1009 LF+ F Q+ + GTGLGL +S+RL Q+ GG + +TS PGVGS F Sbjct: 352 RDLFQPFKQISHPPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCF 402 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 121 bits (303), Expect = 2e-29 Identities = 77/237 (32%), Positives = 123/237 (51%), Gaps = 24/237 (10%) Query: 775 NRAKGEFLAMMSHEIRTPMNGVIGMTELLIMTDLNL---QQLDYVQTIRQSGETLLTIIN 831 N AK +F+ ++SHE RTP+ +IG ELL L ++ Y+ I+ S + L +I+ Sbjct: 937 NEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDRLSTEKKQQYINNIQNSSQRLKQLID 996 Query: 832 DILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKH-LELTYGIDPQTPARILGD 890 D+L S+ +A+K+ +E LR L ++E F ++H EL Y + P + + D Sbjct: 997 DVLSISRYDANKIEIELGNINLRNLANDLIENFSCGLGSEHNFELNYHLKPDEHSLV--D 1054 Query: 891 QVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTG 950 LR IL N++ NA+K++ G + L++ + F +RD G Sbjct: 1055 VRLLRHILENILSNAIKYSAPGSTIT----------------LDISKDEEHLLFQVRDEG 1098 Query: 951 IGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGS 1007 IGIPL Q++LF++F + +S GTGLGL I +R + GG + V S PG G+ Sbjct: 1099 IGIPLQDQEKLFEAFHR--ASNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGT 1153 Score = 49.3 bits (116), Expect = 9e-08 Identities = 46/183 (25%), Positives = 84/183 (45%), Gaps = 11/183 (6%) Query: 304 SKHSEQLSESIKQQQKVEEFLKSTLQELAVQKTALDEAAIVAITDTEGVITYVNDKFVEV 363 S +S+ L E I+++Q + T QE + D + + + ++ VN + VE+ Sbjct: 527 SSNSQLLQEIIEKEQVS---ITLTTQEAKYRALVRDAGDAIILITIDFIVLEVNYRAVEL 583 Query: 364 SGYSREELIGNTHRLVSSGYHSPEFFQQ---FWQTIRAGKVWH-GQINNRAKAGNTYWVD 419 SGY +EELIG H L+ +PEF+ Q FW+T++ ++ + K+G VD Sbjct: 584 SGYDQEELIG--HSLLDLRLLTPEFYAQQRHFWRTLKREQISQLTDVRLVKKSGELISVD 641 Query: 420 STVVPFLDDNGNPYQYLAIRFEITSSKQAEKSLRESEARFRMMADTSPIMLWVADQDKKM 479 + +N + Q I +IT K + L+ R + + L+V + ++ Sbjct: 642 ISASVITYENHSIVQ--CIVHDITLQKTIQAQLQRENYFRRQLLEKMVEGLFVCYEVEQF 699 Query: 480 TFV 482 F+ Sbjct: 700 PFL 702 >SYNE-PCC-01-002220 slr1212 Length = 844 Score = 105 bits (263), Expect = 8e-25 Identities = 111/434 (25%), Positives = 191/434 (44%), Gaps = 19/434 (4%) Query: 304 SKHSEQLSESIKQQQKVEEFLKSTLQELAVQKTALDEAAIVAITDT-EGVITYVNDKFVE 362 +K ++QL + I+ + + +E L+ +LA ++ + I+ T +G IT N+ Sbjct: 171 AKINQQLEQEIEDKTRAKEDLEKNKDQLAQLAAIVESSQDAIISKTLDGNITSWNESAER 230 Query: 363 VSGYSREELIGN-THRLVSSGYHSPEFFQQFWQTIRAG-KVWHGQINNRAKAGNTYWVDS 420 + GY+ EE+IG+ +L+ E + IR G ++ + + K G V Sbjct: 231 LFGYTAEEMIGSHITKLIPEELILEE--DLIAECIRQGQRINTYETQRQRKDGTKIDVAL 288 Query: 421 TVVPFLDDNGNPYQYLAIRFEITSSKQAEKSLRESEARFRMMADTSPIMLWVADQDK-KM 479 T+ P D++ N I +IT+ E +LRES+ +A+ SP +L++ D K Sbjct: 289 TISPIRDEHKNVVGASKIVRDITARLDVENALRESQYFIEKLANYSPQILYILDPIAWKN 348 Query: 480 TFVNQSWLEFRGATLAEESGNG---YLEGIHPDDKG--HYLGVYSQAFGDXXXXXXXXXX 534 +VN E G T E G L +HPDD + + Q + Sbjct: 349 IYVNYQSFEILGYTPEEFKNGGTELLLNIVHPDDIPTLYENKNFWQKSQEGQVLTTEYRM 408 Query: 535 XXVDQQYRWIVNVGVPRYLED-GKFMGYVGSCLDITDRKQAQDILQKKLNQILLMRKISQ 593 + +RW+ + V +D G+ +G+ DI+D K+ + L ++ + L+R+I+Q Sbjct: 409 RHKNGSWRWLRSREVVFARDDYGQVTKVLGTAQDISDSKEQEQRLYEQGRRESLLREITQ 468 Query: 594 EIRRSLQPTLIFQTAARQVGNVFAVSRCLIHNYSEATTLQV-PVVAEYLGGQFTSLLAG- 651 IR+SL IF T +++ R +I +S + V +VAE + F ++ Sbjct: 469 RIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQFSPDSDFSVGNIVAESVLAPFKPIINSA 528 Query: 652 --EIAVEQAYDPTIIQGDRAMAVVDLDQD-LNSTHTKAFYQRFQVKSFLAVRTSYQGKAN 708 E Y QG R + D+ Q L H F R QV++ L + Sbjct: 529 IEETCFSNNYAQRYQQG-RIQVIEDIHQSHLRQCHID-FLARLQVRANLVLPLINDAILW 586 Query: 709 GIIALHQCDRQRVW 722 G++ +HQCD RVW Sbjct: 587 GLLCIHQCDSSRVW 600 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 80.5 bits (197), Expect = 3e-17 Identities = 63/255 (24%), Positives = 118/255 (46%), Gaps = 24/255 (9%) Query: 763 ELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLD----YVQT 818 E+ A + +R K F +M SHE RTP++ + +LL +++ D + Sbjct: 54 EVRLALEREKELSRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHR 113 Query: 819 IRQSGETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYG 878 I+ S + ++ +++DIL ++ EA KL +L+ L + +E ++ + + Sbjct: 114 IQNSVKNMVQLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEI-QLSVSDQYYFDFI 172 Query: 879 IDPQTPARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHP 938 Q + L D+ +R ILSNL+ NA+K++ G + + L Sbjct: 173 CSAQ-DTKALVDERLVRSILSNLLSNAIKYSPGGGQIK----------------IALSLD 215 Query: 939 SHRICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLT 998 S +I F + D GIGI + Q ++F+ F + R GTGLGL+++++ + G + Sbjct: 216 SEQIIFEVTDQGIGISPEDQKQIFEPFHR--GKNVRNITGTGLGLMVAKKCVDLHSGSIL 273 Query: 999 VTSEPGVGSNFRFCI 1013 + S G+ C+ Sbjct: 274 LKSAVDQGTTVTICL 288 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 79.3 bits (194), Expect = 8e-17 Identities = 45/126 (35%), Positives = 75/126 (59%), Gaps = 4/126 (3%) Query: 1186 LQPALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPV 1245 ++ ++LL EDN +N+ + + L GY V IA +G++ + + L+LMDM +P+ Sbjct: 1 MESMAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPI 60 Query: 1246 MDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQ 1305 +DG TA + I+ P I+A+TA+AM DR+ + AG D Y +KPI +++++LQ Sbjct: 61 IDGWTATKQIKGH-PDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPI---EIKRLLQ 116 Query: 1306 DTSALI 1311 ALI Sbjct: 117 KMEALI 122 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 79.0 bits (193), Expect = 1e-16 Identities = 64/254 (25%), Positives = 114/254 (44%), Gaps = 26/254 (10%) Query: 763 ELEKATWAAEAANRAKGEFLAMMSHEIRTPMNGVIGMTELLIMT---DLNLQQLDYVQTI 819 EL + E +N +F + SH+++ P+N V +LL M L+ D++ Sbjct: 514 ELAQLARNLERSNADLKKFAYIASHDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFA 573 Query: 820 RQSGETLLTIINDILDFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGI 879 + T+I+DIL ++K++ L +++ +++ L E+ G Sbjct: 574 VTGVSLMQTLIDDILTYAKVDTQYAQLTFT--DVQEVVDKALANLKQRIEESGAEIEVGS 631 Query: 880 DPQTPARILGDQVRLRQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPS 939 P ++ DQ++L Q+ NLI N +KF + + G+ + A Sbjct: 632 MPA----VMADQIQLMQVFQNLIANGIKFAGDKSPKIKIWGDRQEDAW------------ 675 Query: 940 HRICFNLRDTGIGIPLDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTV 999 F ++D GIGI +R+F F ++ T +Y GTG+GL I +++ + G + + Sbjct: 676 ---VFAVQDNGIGIDPQFFERIFVIFQRLH--TRDEYKGTGMGLAICKKIIEGHQGQIWL 730 Query: 1000 TSEPGVGSNFRFCI 1013 S PG GS F F I Sbjct: 731 ESNPGEGSTFYFSI 744 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 64.3 bits (155), Expect = 3e-12 Identities = 56/223 (25%), Positives = 104/223 (46%), Gaps = 17/223 (7%) Query: 1177 LPTEDNATSLQPALQILLAEDNLVNQKVAHQMLNNLG-YPVAIANNGQEVIDALEKKFYD 1235 LP D T++ + +LL +D ++ L + G + V +A N E D L+ Sbjct: 43 LPLHDCITAMAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPA 102 Query: 1236 LVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPI 1295 LV+ D+ MP +DG + +R+ + P +V +TA M GDR + G D ++SKP Sbjct: 103 LVISDIMMPQVDGYQFLQKLREDARFQSLP-VVFLTARGMTGDRIQGYQTGCDAFLSKPF 161 Query: 1296 SINQLRKVLQDTSALITSPQARED-------IVTLGDKITVVEEQTMVKPTDVTESPLDP 1348 ++L ++++ L+ QA D + + +I ++EQ + +P+ + +P P Sbjct: 162 DPDELEAIVRN---LLARQQASSDAGSESAKLQEIYQEIRALKEQ-IGQPSGIHTTP-SP 216 Query: 1349 TAIAFLRDDLCGGDLT---LFGEMVACYCQESQKLIEELVQGL 1388 + F + DL L + +A + S + +E+ V L Sbjct: 217 IKLDFTPREQSVLDLVSQGLMNKEIAAQLKTSVRNVEKYVSRL 259 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 63.9 bits (154), Expect = 3e-12 Identities = 39/111 (35%), Positives = 60/111 (54%), Gaps = 3/111 (2%) Query: 1190 LQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGI 1249 ++ILL ED+L + + L++ Y V IA + D + YDLV++D+ +P +DGI Sbjct: 1 MRILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGI 60 Query: 1250 TACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 T C+ R L I+ MTA D+ LDAG D Y+ KP+ + +L Sbjct: 61 TLCQKWRSHSYL---MPILMMTARDTINDKITGLDAGADDYVVKPVDLGEL 108 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 60.8 bits (146), Expect = 3e-11 Identities = 36/109 (33%), Positives = 60/109 (55%), Gaps = 1/109 (0%) Query: 1192 ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITA 1251 ILL +D N ++ +L NLGY V +G+ + L+ K DL+L+D++MP MDG Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 1252 CRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 C I++ L+ P I+ ++A D+ + + G YI+KP I ++ Sbjct: 71 CEMIKKEEELQDIP-IIFISALGDTFDKVKAFECGGVDYITKPFQIEEV 118 Score = 48.5 bits (114), Expect = 1e-07 Identities = 30/92 (32%), Positives = 52/92 (56%), Gaps = 4/92 (4%) Query: 1026 DSVQQMKGKQVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWF-ARCPDLDAAIL 1084 ++ + KG +L+VDD N ++L D G TSG+ AL + PDL +L Sbjct: 2 ENTDEKKGN-ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDL--ILL 58 Query: 1085 DLQMPNMDGITLAHHLRQFAQGKDLPIILLSS 1116 D++MP+MDG + +++ + +D+PII +S+ Sbjct: 59 DIKMPDMDGYQVCEMIKKEEELQDIPIIFISA 90 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 60.5 bits (145), Expect = 4e-11 Identities = 34/119 (28%), Positives = 59/119 (49%), Gaps = 1/119 (0%) Query: 1182 NATSLQPALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDM 1241 N T IL+ ED+ ++ + L + + N+G+ + +++ DL+++D+ Sbjct: 4 NRTEFIAMPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDL 63 Query: 1242 QMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 +P +DG+ C IRQ P + P I+ +TA DR L G D Y+ KP S +L Sbjct: 64 MLPKLDGLEVCTRIRQQ-PGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREL 121 Score = 45.1 bits (105), Expect = 2e-06 Identities = 30/102 (29%), Positives = 53/102 (51%), Gaps = 12/102 (11%) Query: 1036 VLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFA-RCPDLDAAILDLQMPNMDGI 1094 +LIV+D++ +++++ + C GE+ L F + PDL +LDL +P +DG+ Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDL--IVLDLMLPKLDGL 71 Query: 1095 TLAHHLRQFAQGKDLPIILLSS---------GLVAGADELSV 1127 + +RQ KD I++L++ GL GAD+ V Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLV 113 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 59.3 bits (142), Expect = 8e-11 Identities = 33/107 (30%), Positives = 55/107 (51%), Gaps = 4/107 (3%) Query: 1194 LAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACR 1253 + +D +++ L+ +GY V A +G+E I + DLV++D+ MP +DG C+ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 1254 HIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 +R+ E I+ +TA DR L+ G D Y+ KP S +L Sbjct: 61 ELRK----ESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKEL 103 Score = 45.4 bits (106), Expect = 1e-06 Identities = 33/99 (33%), Positives = 48/99 (48%), Gaps = 13/99 (13%) Query: 1038 IVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFARCPDLDAAILDLQMPNMDGITLA 1097 +VDD + RRIL+ + G GE A+ F D D +LD+ MP +DG + Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHES-DPDLVVLDVMMPKLDGYGVC 59 Query: 1098 HHLRQFAQGKDLPIILLS---------SGLVAGADELSV 1127 LR + D+PII+L+ +GL GAD+ V Sbjct: 60 QELR---KESDIPIIMLTALGDVADRITGLELGADDYVV 95 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 57.4 bits (137), Expect = 3e-10 Identities = 43/141 (30%), Positives = 72/141 (51%), Gaps = 13/141 (9%) Query: 1190 LQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKF--YDLVLMDMQMPVMD 1247 ++ILL ED ++L + Y V +G + D LE ++ Y L ++D +P + Sbjct: 1 MRILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLS 60 Query: 1248 GITACRHIR---QTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVL 1304 G+ C+ +R +LP ++ +TA P +R E LDAG D Y++KP + +L L Sbjct: 61 GLELCQKLRTQGNSLP------VLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARL 114 Query: 1305 QDTSALITSPQAREDIVTLGD 1325 + SPQ + I+TLG+ Sbjct: 115 RALQR--RSPQFQPQILTLGN 133 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 56.6 bits (135), Expect = 5e-10 Identities = 33/109 (30%), Positives = 58/109 (53%), Gaps = 1/109 (0%) Query: 1192 ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITA 1251 +LL ED+ +++ +L + G+ V IA +G E ++ L+ DLV++D+ MP M+G Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 1252 CRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 CR I+ P + ++ ++ DR + G D YI+KP +L Sbjct: 90 CRRIKSD-PKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMEL 137 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 55.8 bits (133), Expect = 9e-10 Identities = 33/114 (28%), Positives = 56/114 (49%), Gaps = 1/114 (0%) Query: 1192 ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITA 1251 +LL +D+ + L GY V A NG+E +D L D+++ D+ MP MDG Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 1252 CRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQ 1305 +RQ + P ++ ++A +R + L+ G D Y++KP +L +Q Sbjct: 70 IEQVRQNPDISWIP-VMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQ 122 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 55.5 bits (132), Expect = 1e-09 Identities = 41/134 (30%), Positives = 65/134 (48%), Gaps = 7/134 (5%) Query: 1192 ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITA 1251 ILL +D + + L + G+ + +A+ G+ + YDL+++D +P + G+ Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 Query: 1252 CRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQDTSALI 1311 CR IR L ++ +TA DR LDAG D Y+ KP +LR++L AL+ Sbjct: 64 CRQIR---ILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF---ELRELLARVRALL 117 Query: 1312 TSPQAREDIV-TLG 1324 E I TLG Sbjct: 118 RRQSHGETITETLG 131 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 52.8 bits (125), Expect = 8e-09 Identities = 33/110 (30%), Positives = 58/110 (52%), Gaps = 5/110 (4%) Query: 1191 QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGIT 1250 ++LL +D++ ++ +L G+ V ANNG E + L + Y LVL+D+ MP ++GI Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNES-YKLVLLDVMMPKLNGIE 61 Query: 1251 ACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 + IR+ + ++ +TA DR L+ G D + KP + +L Sbjct: 62 TLKEIRKVSNVP----VMMLTARGEDIDRVLGLELGADDCLPKPFNDREL 107 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 52.4 bits (124), Expect = 1e-08 Identities = 32/110 (29%), Positives = 55/110 (50%), Gaps = 4/110 (3%) Query: 1191 QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGIT 1250 +IL+ ED +V + + GY V A NG E+ L +LV+MD+ +P +G+ Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 1251 ACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 R +R+ L L ++ +T D+ L+ G D Y++KP + +L Sbjct: 65 LARELREELSLP----LIFLTGRDNEVDKILGLEIGADDYLTKPFNPREL 110 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 51.6 bits (122), Expect = 2e-08 Identities = 36/126 (28%), Positives = 63/126 (50%), Gaps = 7/126 (5%) Query: 1179 TEDNATSLQPAL--QILLAEDNLVNQKVAHQML--NNLGYPVAIANNGQEVIDALEKKFY 1234 T + ++P L +IL+ ED+ + Q Q L + + +NG + Sbjct: 4 TSPHRVKIEPCLPMKILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNP 63 Query: 1235 DLVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKP 1294 DL++MD+ +P +DGI A + I+QT P Q IV +T++ +P + L +G D Y K Sbjct: 64 DLIVMDIGLPGLDGIEATKQIKQTSP---QIHIVVLTSHTLPNEIIAALSSGADAYCVKG 120 Query: 1295 ISINQL 1300 ++ +L Sbjct: 121 ATLERL 126 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 50.4 bits (119), Expect = 4e-08 Identities = 31/122 (25%), Positives = 64/122 (52%), Gaps = 10/122 (8%) Query: 1186 LQPALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEK-------KFYDLVL 1238 + P+ +IL+ ED + ++ L GY V ++G++ + L++ DL++ Sbjct: 27 IPPSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLII 86 Query: 1239 MDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISIN 1298 +D+ +P ++G+ CR +R + P I+ ++A ++ L+ G D YI+KP S+ Sbjct: 87 LDIMLPQVNGLDVCRSLR--FGGDNTP-ILIVSAKGSEMEKVTGLEVGADDYITKPFSLK 143 Query: 1299 QL 1300 +L Sbjct: 144 EL 145 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 49.3 bits (116), Expect = 9e-08 Identities = 39/149 (26%), Positives = 75/149 (50%), Gaps = 11/149 (7%) Query: 1191 QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGIT 1250 +IL+ +D+ + L GY V A +G + + DL+++D+ +P +DG T Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 1251 ACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL----RKVLQD 1306 C+ +R+ P ++ +TA D+ + D+G D Y++KP + ++ R +L+ Sbjct: 63 VCQRLRRDERTADIP-VLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRR 121 Query: 1307 TSALITSPQA--REDIVTLGDKITVVEEQ 1333 T + PQA +I+ G +T+V E+ Sbjct: 122 TDRI---PQAAKHSEILNQG-PLTLVPER 146 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 48.9 bits (115), Expect = 1e-07 Identities = 31/114 (27%), Positives = 55/114 (48%), Gaps = 1/114 (0%) Query: 1189 ALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDG 1248 A +IL+ +D+ + L G+ V +A NG+E + + ++VL+D MPVMDG Sbjct: 11 AAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDG 70 Query: 1249 ITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRK 1302 C+ + + + P ++ +T +AG Y++KPI LR+ Sbjct: 71 FACCQALMK-IYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQ 123 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 48.1 bits (113), Expect = 2e-07 Identities = 30/114 (26%), Positives = 58/114 (50%), Gaps = 4/114 (3%) Query: 1192 ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITA 1251 +L+ +DNL+ + L LG+ V +G+ + AL YD V++D+ +P +DG+ Sbjct: 4 LLIEDDNLIGNGLQIG-LTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 Query: 1252 CRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQ 1305 + R + ++ +TA +R + L +G D Y+ KP ++ ++ LQ Sbjct: 63 LQQWRSN---HQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQ 113 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 47.0 bits (110), Expect = 4e-07 Identities = 31/123 (25%), Positives = 65/123 (52%), Gaps = 5/123 (4%) Query: 1189 ALQILLAEDN-LVNQKVAHQMLNNLGYPVA-IANNGQEVIDALEKKFYDLVLMDMQMPVM 1246 +++ILL ED+ L + ++ G VA A +G+ I + ++ +D+V++D+ +P + Sbjct: 7 SIRILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGI 66 Query: 1247 DGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQD 1306 GI AC I++ P Q ++ +T+++ P ++A GY K ++ L ++ Sbjct: 67 GGIEACHQIKKIHP---QLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRS 123 Query: 1307 TSA 1309 +A Sbjct: 124 VAA 126 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 47.0 bits (110), Expect = 4e-07 Identities = 32/106 (30%), Positives = 56/106 (52%), Gaps = 2/106 (1%) Query: 1191 QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGIT 1250 +IL+ ED +++ L+ Y V A++ + I+ + K+ L+L+D +P GI Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKI-KENPKLILLDWMLPGRSGIQ 62 Query: 1251 ACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPIS 1296 ++I++ P I+ +TA + D CL+AG D YI+KP S Sbjct: 63 FIQYIKKQESYAAIP-IIMLTAKSTEEDCIACLNAGADDYITKPFS 107 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 45.8 bits (107), Expect = 9e-07 Identities = 30/118 (25%), Positives = 60/118 (50%), Gaps = 5/118 (4%) Query: 1190 LQILLAEDNLVNQKVAHQMLNNLG--YPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMD 1247 +++L+A+D+ + ++ ++N +A A NG++ I E+ D+ LMD++MP ++ Sbjct: 7 IRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVE 66 Query: 1248 GITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQ 1305 G+ A I + + RI+ +T D L AG GY+ K ++L ++ Sbjct: 67 GVAA---ISAICAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIR 121 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 45.8 bits (107), Expect = 9e-07 Identities = 29/109 (26%), Positives = 56/109 (51%), Gaps = 3/109 (2%) Query: 1191 QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGIT 1250 ++L+ E+ + L GY V++A +G + ++ DL++++ +P M G+ Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 1251 ACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQ 1299 CR +R+ + + I+ +TA +R LDAG D YI KP + ++ Sbjct: 64 LCRRLRE---MGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDE 109 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 44.7 bits (104), Expect = 2e-06 Identities = 33/116 (28%), Positives = 53/116 (45%), Gaps = 11/116 (9%) Query: 1190 LQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKF--YDLVLMDMQMPVMD 1247 +++LL ED + L Y V +G L++ + Y L + D +P + Sbjct: 1 MRLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLS 60 Query: 1248 GITACRHIR---QTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQL 1300 G+ C+ +R +LP I+ +TA DR E LDAG D Y+ KP + +L Sbjct: 61 GLELCQKLRGQRSSLP------ILMLTAKDQIADRVEGLDAGADDYLIKPFGMAEL 110 >SYNE-PCC-01-000983 sll1473 Length = 481 Score = 43.9 bits (102), Expect = 4e-06 Identities = 39/168 (23%), Positives = 72/168 (42%), Gaps = 18/168 (10%) Query: 570 DRKQAQDILQKKLNQILLMRKISQEIRRSLQPTLIFQTAARQVGNVFAVSRCLIHNYSEA 629 +R++ + ++++ + + +I+Q IR+SL + T +V + V R LI+ + Sbjct: 28 ERRRIEISIKQQTQRERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQD 87 Query: 630 TTLQVPVVAEYLGGQFTSLLAGEIAVEQ---AYDPTIIQGDRAMAVVDLDQDLNSTHTKA 686 T + E + + S+L + E Y +G + A+ D+DQD Sbjct: 88 GTGSA--ITESVNANYPSILGRTFSDEVFPVEYHQAYTKG-KVRAINDIDQDDIEICLAD 144 Query: 687 FYQRFQVKSFLAVRTSYQGKAN------------GIIALHQCDRQRVW 722 F ++F VKS L V +A+ G++ HQC R W Sbjct: 145 FVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPW 192 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.320 0.136 0.399 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 129,545 Number of Sequences: 78 Number of extensions: 5738 Number of successful extensions: 214 Number of sequences better than 1.0e-05: 39 Number of HSP's better than 0.0 without gapping: 19 Number of HSP's successfully gapped in prelim test: 20 Number of HSP's that attempted gapping in prelim test: 56 Number of HSP's gapped (non-prelim): 87 length of query: 1462 length of database: 48,235 effective HSP length: 75 effective length of query: 1387 effective length of database: 42,385 effective search space: 58787995 effective search space used: 58787995 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 99 (42.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002618 slr1760 (315 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002618 slr1760 630 0.0 SYNE-PCC-01-001133 sll1673 188 2e-50 SYNE-PCC-01-000542 sll0821 177 5e-47 SYNE-PCC-01-002033 slr0947 78 4e-17 SYNE-PCC-01-001306 sll1905 75 3e-16 SYNE-PCC-01-001461 slr0115 73 1e-15 SYNE-PCC-01-000414 sll0649 65 2e-13 SYNE-PCC-01-002788 slr1982 63 1e-12 SYNE-PCC-01-000800 sll1228 62 2e-12 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 62 3e-12 SYNE-PCC-01-002879 slr2104 61 4e-12 SYNE-PCC-01-002086 slr1042 60 9e-12 SYNE-PCC-01-002731 slr1909 60 1e-11 SYNE-PCC-01-000242 sll0396 59 3e-11 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 57 8e-11 SYNE-PCC-01-001132 sll1672 57 1e-10 SYNE-PCC-01-002486 slr1584 56 2e-10 SYNE-PCC-01-002489 slr1588 55 2e-10 SYNE-PCC-01-002873 slr2098 55 3e-10 SYNE-PCC-01-002672 slr1837 55 3e-10 SYNE-PCC-01-001437 slr0081 55 3e-10 SYNE-PCC-01-001575 slr0312 55 4e-10 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 55 4e-10 SYNE-PCC-01-002221 slr1213 54 5e-10 SYNE-PCC-01-000523 sll0797 53 1e-09 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 53 1e-09 SYNE-PCC-01-000877 sll1330 52 3e-09 SYNE-PCC-01-000518 sll0789 50 1e-08 SYNE-PCC-01-002635 slr1783 49 2e-08 SYNE-PCC-01-002617 slr1759 49 2e-08 SYNE-PCC-01-000608 sll0921 48 5e-08 SYNE-PCC-01-001075 sll1592 47 6e-08 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 44 7e-07 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 630 bits (1624), Expect = 0.0 Identities = 315/315 (100%), Positives = 315/315 (100%) Query: 1 MNLPQPIETAAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVL 60 MNLPQPIETAAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVL Sbjct: 1 MNLPQPIETAAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVL 60 Query: 61 LDAVMPVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAV 120 LDAVMPVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAV Sbjct: 61 LDAVMPVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAV 120 Query: 121 LRQRVKRLLYQNRLQHQLESVNQMLERLAKVDQLTQLANRRQLELFLDTEWSEAIREQYP 180 LRQRVKRLLYQNRLQHQLESVNQMLERLAKVDQLTQLANRRQLELFLDTEWSEAIREQYP Sbjct: 121 LRQRVKRLLYQNRLQHQLESVNQMLERLAKVDQLTQLANRRQLELFLDTEWSEAIREQYP 180 Query: 181 FSILLCDIDYFKNYNDHYGHQGGDDCLQQVAKALTRVVHRPKDLAARYGGEEFLIVLPNT 240 FSILLCDIDYFKNYNDHYGHQGGDDCLQQVAKALTRVVHRPKDLAARYGGEEFLIVLPNT Sbjct: 181 FSILLCDIDYFKNYNDHYGHQGGDDCLQQVAKALTRVVHRPKDLAARYGGEEFLIVLPNT 240 Query: 241 DLQGAIHIGEDIQAEITRLAIPHVQSAIADHVTLSIGCASTIPRLGSDWGKLVGAADQYL 300 DLQGAIHIGEDIQAEITRLAIPHVQSAIADHVTLSIGCASTIPRLGSDWGKLVGAADQYL Sbjct: 241 DLQGAIHIGEDIQAEITRLAIPHVQSAIADHVTLSIGCASTIPRLGSDWGKLVGAADQYL 300 Query: 301 YEAKAQGRNRLVSGR 315 YEAKAQGRNRLVSGR Sbjct: 301 YEAKAQGRNRLVSGR 315 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 188 bits (478), Expect = 2e-50 Identities = 93/189 (49%), Positives = 129/189 (68%) Query: 125 VKRLLYQNRLQHQLESVNQMLERLAKVDQLTQLANRRQLELFLDTEWSEAIREQYPFSIL 184 V+ + + R++ +L++ NQ L+ LA +D LT +ANRR+ + +L EW REQ P S++ Sbjct: 264 VRDITDRKRMELELQAANQQLQLLANIDGLTHIANRRRFDEYLAQEWQRHCREQKPLSLI 323 Query: 185 LCDIDYFKNYNDHYGHQGGDDCLQQVAKALTRVVHRPKDLAARYGGEEFLIVLPNTDLQG 244 L DIDYFK YND YGHQ GDDCLQ+VA L + R DL ARYGGEEF+IVLPNT+ Q Sbjct: 324 LVDIDYFKAYNDLYGHQKGDDCLQKVANTLVDIAKRITDLVARYGGEEFVIVLPNTNRQD 383 Query: 245 AIHIGEDIQAEITRLAIPHVQSAIADHVTLSIGCASTIPRLGSDWGKLVGAADQYLYEAK 304 A+ + E++ I LAIPH S+++ +VT+SIG +S IP +++ ADQ LY AK Sbjct: 384 ALAMAENMLQAIAALAIPHEGSSVSKYVTISIGVSSIIPMPEDTIERIISEADQALYSAK 443 Query: 305 AQGRNRLVS 313 +QGRNR ++ Sbjct: 444 SQGRNRAIA 452 Score = 65.9 bits (159), Expect = 2e-13 Identities = 41/141 (29%), Positives = 72/141 (51%), Gaps = 3/141 (2%) Query: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFAC 73 IL+VDD L L G+ V T+G+ AL +P+++LLD MP MDG+ Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 74 CQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQNR 133 C+ + K + ++ I+ L D +AFE G +DY+TKP + + V R+ Q Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQ---IEEVVARIEGQFT 127 Query: 134 LQHQLESVNQMLERLAKVDQL 154 +Q Q ++ + + + + +++ Sbjct: 128 IQRQRIALKREVRKRREAEEV 148 >SYNE-PCC-01-000542 sll0821 Length = 1276 Score = 177 bits (448), Expect = 5e-47 Identities = 90/190 (47%), Positives = 123/190 (64%), Gaps = 1/190 (0%) Query: 121 LRQRVKRLLYQNRLQHQLESVNQMLERLAKVDQLTQLANRRQLELFLDTEWSEAIREQYP 180 L +V ++Q L QLE+ N L++++ +D LTQ+ NR + L+ EW R + P Sbjct: 1072 LATQVAIAIHQGELYEQLETANIRLQQISSLDALTQVGNRYLFDSTLEREWQRLQRIREP 1131 Query: 181 FSILLCDIDYFKNYNDHYGHQGGDDCLQQVAKALTRVVHRPKDLAARYGGEEFLIVLPNT 240 ++LLCD+D+FK +ND+YGH GD CL+++A A+ +V RP DL ARYGGEEF I+L T Sbjct: 1132 LALLLCDVDFFKGFNDNYGHPAGDRCLKKIADAMAKVAKRPTDLVARYGGEEFAIILSET 1191 Query: 241 DLQGAIHIGEDIQAEITRLAIPHVQSAIADHVTLSIGCASTIPRLGSDWGKLVGAADQYL 300 L+GAI++ E +Q E+ LAIPH S HVTLSIG A P + LV AAD L Sbjct: 1192 SLEGAINVTEALQVEVANLAIPHTVSG-TGHVTLSIGIAVYTPERHINPNALVKAADLAL 1250 Query: 301 YEAKAQGRNR 310 YEAKA+GRN+ Sbjct: 1251 YEAKAKGRNQ 1260 Score = 55.5 bits (132), Expect = 2e-10 Identities = 54/177 (30%), Positives = 84/177 (47%), Gaps = 16/177 (9%) Query: 141 VNQMLERLAKVDQLTQLAN----RRQLELFLDTEWSEAIREQYPFSILLCDIDYFKNYND 196 V +++ + D LTQL N RQL L L +A+ E +L+ +D FK N+ Sbjct: 423 VTRLITQQTAYDPLTQLPNWIIFNRQLTLAL----LDALYEGKMVGVLVIAMDRFKRINE 478 Query: 197 HYGHQGGDDCLQQVAKALTRVVH---RPKDLAARYGGEEFLIVLPN-TDLQGAIHIGEDI 252 +GH+ GD LQ+VA L + + L +R+ G+ F I+L +D Q I + E + Sbjct: 479 SFGHKTGDGLLQEVADRLNQKLSPLAAYSPLLSRWHGDGFTILLTQISDNQEMIPLCERL 538 Query: 253 QAEITRLAIPHVQSAIADHVTLSIGCASTIPRLGSDWGKLVGAADQYLYEAKAQGRN 309 ++ P ++T S+G ST P G L+ A+ L AK QG+N Sbjct: 539 ---LSTFQEPFFLQGQPIYLTASMG-ISTAPYDGETAESLLKFAEIALTRAKCQGKN 591 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 77.8 bits (190), Expect = 4e-17 Identities = 44/114 (38%), Positives = 62/114 (54%), Gaps = 3/114 (2%) Query: 16 VVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFACCQ 75 +VDD+ +R L L G+ V A +GEEA+ F E P++V+LD +MP +DG+ CQ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 76 ALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 L K P ++M+T L D A E GA DYV KP L R++ +L Sbjct: 61 ELRKESDIP---IIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVL 111 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 75.1 bits (183), Expect = 3e-16 Identities = 49/140 (35%), Positives = 72/140 (51%), Gaps = 4/140 (2%) Query: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFAC 73 ILVVDD + L+ EG+ T+G EAL + + +P+++LLD +MP MDG Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 74 CQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL---- 129 C L + Q V+ +T +++ + +AF GA+DYVTKP L RVK L Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHLELKQ 139 Query: 130 YQNRLQHQLESVNQMLERLA 149 ++ L H L + E LA Sbjct: 140 TRDNLHHTLLEQARTAEALA 159 Score = 66.6 bits (161), Expect = 1e-13 Identities = 40/140 (28%), Positives = 75/140 (53%), Gaps = 3/140 (2%) Query: 6 PIETAAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVM 65 P ++ IL+ +D+ + ++ L+K G+ V++ NG+EAL+ A+ +VVL+D M Sbjct: 734 PYSSSNLTILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEM 793 Query: 66 PVMDGFACCQALMKIY-QNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQ- 123 P MDG + + + ++ P ++ +T E +R +G DYV+KPI L+Q Sbjct: 794 PEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQA 853 Query: 124 -RVKRLLYQNRLQHQLESVN 142 +V Q+ Q ++ +V+ Sbjct: 854 LQVAATALQSTSQDRMATVS 873 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 72.8 bits (177), Expect = 1e-15 Identities = 37/117 (31%), Positives = 67/117 (57%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 +IL++DDD + + + L+ G+ V+ A +G + +++P++++LD ++P +DGF Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 CQ L + + VLM+T L + F++GA DY+TKP + RV+ LL Sbjct: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALL 119 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 65.5 bits (158), Expect = 2e-13 Identities = 39/128 (30%), Positives = 63/128 (49%) Query: 10 AAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMD 69 A IL+V+DD + +R L++E + +GE L F E P++++LD ++P +D Sbjct: 10 AMPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLD 69 Query: 70 GFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 G C + + + P +LM+T +E GA DY+ KP L RV+ LL Sbjct: 70 GLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALL 129 Query: 130 YQNRLQHQ 137 + Q Q Sbjct: 130 RRQLRQGQ 137 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 63.2 bits (152), Expect = 1e-12 Identities = 35/118 (29%), Positives = 65/118 (55%) Query: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 AK+L+V+D+ R L L ++G+ V +A +GE+A+T P+++L+D +P++DG+ Sbjct: 5 AKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGW 64 Query: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 + + ++ +T + +RA AG DY TKPI L Q+++ L+ Sbjct: 65 TATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 62.4 bits (150), Expect = 2e-12 Identities = 36/110 (32%), Positives = 56/110 (50%) Query: 6 PIETAAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVM 65 P++ K+LVVDD R+ LR L G V+ A NGE A+ + P+V+L+D M Sbjct: 412 PLDQYNQKVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQM 471 Query: 66 PVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKP 115 PV+DG + Q + Q +++ +T E AG D+++KP Sbjct: 472 PVLDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKP 521 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 61.6 bits (148), Expect = 3e-12 Identities = 42/118 (35%), Positives = 63/118 (53%), Gaps = 4/118 (3%) Query: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 +K+L+VDDD + L L+ EG VE A NG EAL K E ++VLLD +MP ++G Sbjct: 2 SKLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKLNE-SYKLVLLDVMMPKLNGI 60 Query: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 + + K+ P V+M+T ++ E GA D + KP + L R+K +L Sbjct: 61 ETLKEIRKVSNVP---VMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAIL 115 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 61.2 bits (147), Expect = 4e-12 Identities = 53/221 (23%), Positives = 101/221 (45%), Gaps = 15/221 (6%) Query: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 A IL+V+D+ R L +G RV++A NG+EALT + +L+D MP+++G+ Sbjct: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGY 777 Query: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQ 131 +A+ + + + ++ +T ++A +AG D++TKPI +L Q + + Sbjct: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWIPP 837 Query: 132 NRLQHQLESVNQMLERLAKVDQLTQLANRRQLELFLDTEWSEAIREQYPFSILLCDIDYF 191 N + + ++ + L+ +T + + ++ + E + ++ D + Sbjct: 838 NSAREK-KNPSSNLKADLSFSSMTGINQQIGMQYIENVELYHRLLVKFG--------DRY 888 Query: 192 KNYNDHY-GHQGGDDCLQQVAKALTRVVHRPKDLAARYGGE 231 N+ D + Q DD A TR H K AA G E Sbjct: 889 SNFADQFRTEQASDD-----PTAATRYAHSIKGAAALLGIE 924 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 60.1 bits (144), Expect = 9e-12 Identities = 35/116 (30%), Positives = 58/116 (50%) Query: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFAC 73 +L+V+D R + L+ G +V +A +G EAL K P++V+LD VMP M+G+ Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 74 CQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 C+ + + + V+M + +E GA Y+ KP L +K+LL Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 59.7 bits (143), Expect = 1e-11 Identities = 44/143 (30%), Positives = 72/143 (50%), Gaps = 12/143 (8%) Query: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFAC 73 +L+VDDD + + ++ YL+ +G++V A NG EAL P++++ D +MP MDG+A Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 74 CQALMKIYQNPSPL---VLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLY 130 + ++ QNP V+ ++ + + GA Y+ KP L +V+ L Sbjct: 70 IE---QVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLR 126 Query: 131 Q--NRLQHQLESVNQMLERLAKV 151 Q LQH N LE A+V Sbjct: 127 QADRLLQHN----NHPLEDNARV 145 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 58.5 bits (140), Expect = 3e-11 Identities = 43/180 (23%), Positives = 91/180 (50%), Gaps = 23/180 (12%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 ++LVV+++ + + + L+ EG+ V +A +G + T+ E P++++++ +P M G Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIH----WAVLRQRVKRL 128 C+ L ++ +++IT DD +AGA DY+ KP + +A +R +++R Sbjct: 64 LCRRLREMGSRIP--IILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 Query: 129 ------------LYQNRLQHQLESVNQMLERLAKVDQLTQ--LANRRQL---ELFLDTEW 171 L NR +++ +++++ AK +L L++ RQ+ E L+ W Sbjct: 122 HTTSDEVLQFADLRFNRSTREIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILERVW 181 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 57.0 bits (136), Expect = 8e-11 Identities = 36/126 (28%), Positives = 67/126 (53%), Gaps = 4/126 (3%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 KIL+V+D+ +R + ++L ++ + V A++ + A+ K E P+++LLD ++P G Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKE-NPKLILLDWMLPGRSGIQ 62 Query: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVK---RLL 129 Q + K + ++M+T E AGA DY+TKP +L R++ R + Sbjct: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 Query: 130 YQNRLQ 135 Y+ + Q Sbjct: 123 YEQQSQ 128 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 56.6 bits (135), Expect = 1e-10 Identities = 34/105 (32%), Positives = 56/105 (53%), Gaps = 4/105 (3%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 KILVVDD R L L G +E A+NG+EA+ + +P ++ +D MPVMDG+ Sbjct: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 Query: 73 CCQALMKIYQNPSPLVLMITG--LDDEASVDRAFEAGAIDYVTKP 115 + + + + V+ +T L++E ++ AG D++ KP Sbjct: 691 ATKYIKGQVKGNATAVVALTASVLEEEKAI--VLSAGCDDFLRKP 733 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 55.8 bits (133), Expect = 2e-10 Identities = 38/118 (32%), Positives = 61/118 (51%), Gaps = 4/118 (3%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 +IL+V+DD + L L + + V++AT+ A + ++ ++V+LD ++P +DG Sbjct: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 Query: 73 CCQALMK-IYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 CQ Y P +LM+T D +AGA DYV KP+ L RV+ LL Sbjct: 62 LCQKWRSHSYLMP---ILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALL 116 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 55.5 bits (132), Expect = 2e-10 Identities = 39/145 (26%), Positives = 65/145 (44%), Gaps = 18/145 (12%) Query: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEAL--TKFAEIKPEVVLLDAVMPVMDGF 71 ILVV+D+ +R + L E +++ A NG AL E+ P++++ D +MP MDG Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQ 131 AL K + + + +T L + +GA DY+ KP Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPF--------------- 108 Query: 132 NRLQHQLESVNQMLERLAKVDQLTQ 156 + + L +VN L++ AK+ Q Sbjct: 109 -KQEDLLNAVNSRLQKQAKLSAFYQ 132 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 55.1 bits (131), Expect = 3e-10 Identities = 38/122 (31%), Positives = 59/122 (48%), Gaps = 5/122 (4%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPE-----VVLLDAVMPV 67 ++LVVDD+ R+ ++ L++ VE +G EAL AE E +V +D MP Sbjct: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 Query: 68 MDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKR 127 MDG + L + N P + ++T E +A G D + KPI +VL + R Sbjct: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLAR 891 Query: 128 LL 129 +L Sbjct: 892 VL 893 Score = 48.5 bits (114), Expect = 3e-08 Identities = 36/109 (33%), Positives = 56/109 (51%), Gaps = 8/109 (7%) Query: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 A+IL+V+D+ + L+ G V++A NG AL + +VL+D MP MDG Sbjct: 925 ARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGI 984 Query: 72 ACCQALMKIYQNPS----PLVLMITGLDDEASVDRAFEAGAIDYVTKPI 116 +A + I QNP P+V M + + +R +AG D++ KPI Sbjct: 985 ---EATIAIRQNPRYAQLPIVAMTANV-MQGDRERCLQAGMNDHLGKPI 1029 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 55.1 bits (131), Expect = 3e-10 Identities = 39/134 (29%), Positives = 67/134 (50%), Gaps = 5/134 (3%) Query: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 A IL+VDD+ + L L +GH +++A G+ L + ++++LD ++P + G Sbjct: 2 ANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 Query: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQ 131 C+ + +I + +P VL +T D +AG DY+ KP L RV+ LL Sbjct: 62 EICRQI-RILGHSTP-VLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALL-- 117 Query: 132 NRLQHQLESVNQML 145 R Q E++ + L Sbjct: 118 -RRQSHGETITETL 130 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 55.1 bits (131), Expect = 3e-10 Identities = 34/129 (26%), Positives = 65/129 (50%), Gaps = 9/129 (6%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKP-------EVVLLDAVM 65 +ILVV+D+ +R + + LQ+EG+ V +G +AL E ++++LD ++ Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 66 PVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRV 125 P ++G C++L + + +L+++ E E GA DY+TKP L R Sbjct: 92 PQVNGLDVCRSLR--FGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 Query: 126 KRLLYQNRL 134 + ++ + L Sbjct: 150 RAMIRRQGL 158 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 54.7 bits (130), Expect = 4e-10 Identities = 30/109 (27%), Positives = 55/109 (50%), Gaps = 4/109 (3%) Query: 8 ETAAAKILVVDDDGFMRMQLRVYLQKEGHR--VELATNGEEALTKFAEIKPEVVLLDAVM 65 + ++L+ DD R L + ++ + A NGE+A+ F E +P+V L+D M Sbjct: 3 QATTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRM 62 Query: 66 PVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTK 114 P ++G A A+ I + ++++T D + + R +AGA Y+ K Sbjct: 63 PEVEGVAAISAICAIVK--FARIIVLTTYDSDEDIYRGLQAGAKGYLLK 109 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 54.7 bits (130), Expect = 4e-10 Identities = 40/125 (32%), Positives = 62/125 (49%), Gaps = 4/125 (3%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 KILVV+D+ R L+ + EG+ V A NG E A +V++D +P +G Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQN 132 + L + P ++ +TG D+E E GA DY+TKP + L R + LL++ Sbjct: 65 LARELREELSLP---LIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR- 120 Query: 133 RLQHQ 137 + HQ Sbjct: 121 AMPHQ 125 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 54.3 bits (129), Expect = 5e-10 Identities = 35/129 (27%), Positives = 65/129 (50%), Gaps = 5/129 (3%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRV-ELATNGEEALTKFAEIKPEVVLLD-AVMPVMDG 70 KIL+V+D+ + + L+ +G+ + +A++G AL K AE P++VLLD + +DG Sbjct: 4 KILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDG 63 Query: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLY 130 + + +Y P ++ +T D +++RA + YV KP L V + Sbjct: 64 IEVAERIKSLYSIP---IVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIA 120 Query: 131 QNRLQHQLE 139 ++ Q + E Sbjct: 121 NHQQQRKPE 129 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 52.8 bits (125), Expect = 1e-09 Identities = 38/118 (32%), Positives = 60/118 (50%), Gaps = 4/118 (3%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVL--LDAVMPVMDG 70 +IL+V+D+ + M ++ L E + V+ T+G +A E L +D ++P + G Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRL 128 CQ L Q S VLM+T L + + +AGA DY+TKP A L R++ L Sbjct: 62 LELCQKLRT--QGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRAL 117 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 52.8 bits (125), Expect = 1e-09 Identities = 32/117 (27%), Positives = 59/117 (50%), Gaps = 2/117 (1%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 +IL+++DD + L++ L K G V+ T+G+ + + V+LD +P +DG Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 Q +Q+ VL++T D + ++GA DY+ KP A + R++ L+ Sbjct: 62 VLQQWRSNHQDVP--VLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALI 116 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 51.6 bits (122), Expect = 3e-09 Identities = 32/120 (26%), Positives = 59/120 (49%), Gaps = 3/120 (2%) Query: 14 ILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFAC 73 I VV+ + +R L +LQ+ G+ V+ + +A F P + ++D+ + DG Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 Query: 74 CQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQNR 133 C+ L YQ ++ +++ D E + +AGA DY+TKP R++ L+ + R Sbjct: 66 CRWL---YQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVR 122 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 49.7 bits (117), Expect = 1e-08 Identities = 39/134 (29%), Positives = 66/134 (49%), Gaps = 5/134 (3%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAE--IKPEVVLLDAVMPVMDG 70 ++L+V+D+ + M L L++E + V+ +G A + + + + + D ++P + G Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLY 130 CQ L Q S +LM+T D A +AGA DY+ KP A L R++ L Sbjct: 62 LELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQR 119 Query: 131 QN-RLQHQLESVNQ 143 ++ LQ Q V Q Sbjct: 120 RSPELQPQQLQVGQ 133 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 48.9 bits (115), Expect = 2e-08 Identities = 34/136 (25%), Positives = 65/136 (47%), Gaps = 1/136 (0%) Query: 14 ILVVDDDGFMRMQLRVYLQKEGH-RVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 +L+VDD+ +R ++ +L+ G +V+LA N EA P +V+ D +MP +DG+ Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQN 132 Q L + + S V+ +T + ++ G +++KP L V+ LL + Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 Query: 133 RLQHQLESVNQMLERL 148 + S + L+ + Sbjct: 178 QASSDAGSESAKLQEI 193 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 48.9 bits (115), Expect = 2e-08 Identities = 31/114 (27%), Positives = 55/114 (48%), Gaps = 1/114 (0%) Query: 11 AAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDG 70 A +IL+ +D+ + L G+ V +A NG+E + + ++VL+D MPVMDG Sbjct: 1189 ALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDG 1248 Query: 71 FACCQALMK-IYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQ 123 C+ + + + P ++ +T +AG Y++KPI LR+ Sbjct: 1249 ITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRK 1302 Score = 40.4 bits (93), Expect = 7e-06 Identities = 32/93 (34%), Positives = 45/93 (48%), Gaps = 5/93 (5%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKP-EVVLLDAVMPVMDGF 71 ++L+VDD+ R L+ Q G T+GE AL FA + +LD MP MDG Sbjct: 1035 QVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDWFARCPDLDAAILDLQMPNMDGI 1094 Query: 72 ACCQALMKIYQNPS-PLVLMITGL---DDEASV 100 L + Q P++L+ +GL DE SV Sbjct: 1095 TLAHHLRQFAQGKDLPIILLSSGLVAGADELSV 1127 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 47.8 bits (112), Expect = 5e-08 Identities = 35/116 (30%), Positives = 57/116 (49%), Gaps = 2/116 (1%) Query: 13 KILVVDDDGFMRMQLRVYLQKEG--HRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDG 70 +I +++D+ +R L+ L E V A NG L + +P+VV++D +P M+G Sbjct: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 Query: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVK 126 Q L K N V+++T D E +V AF AGA Y K +L + ++ Sbjct: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 47.4 bits (111), Expect = 6e-08 Identities = 34/113 (30%), Positives = 56/113 (49%), Gaps = 6/113 (5%) Query: 7 IETAAAKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPE---VVLLDA 63 I + +IL+V+DD R+ L L +E +++A E+ T A + + VV+LD Sbjct: 3 ISPTSIRILLVEDDELFRLGLVTRLSQEPG-LDVAGEAEDGETAIAYVNQQLFDVVILDV 61 Query: 64 VMPVMDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPI 116 +P + G C + KI+ P VL++T A ++R EA A Y K + Sbjct: 62 GLPGIGGIEACHQIKKIH--PQLPVLILTSHSQPALINRLIEAQAQGYCVKGV 112 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 43.9 bits (102), Expect = 7e-07 Identities = 35/150 (23%), Positives = 72/150 (48%), Gaps = 5/150 (3%) Query: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELA--TNGEEALTKFAEIKPEVVLLDAVMPVMDG 70 K+L++DD MR ++ ++ + + +A ++G E ++ + P+V++LD M + G Sbjct: 6 KVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSG 65 Query: 71 FACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLY 130 + L + +L++T D + + +AGA Y+ K L +++KR+ Sbjct: 66 LDTLKGLRA--EGVDARILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQIKRIA- 122 Query: 131 QNRLQHQLESVNQMLERLAKVDQLTQLANR 160 Q + N +LER + + L L +R Sbjct: 123 QGEVILSDSIKNLLLERTHEDNPLDSLTDR 152 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.322 0.138 0.403 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 28,246 Number of Sequences: 78 Number of extensions: 1170 Number of successful extensions: 65 Number of sequences better than 1.0e-05: 33 Number of HSP's better than 0.0 without gapping: 19 Number of HSP's successfully gapped in prelim test: 14 Number of HSP's that attempted gapping in prelim test: 20 Number of HSP's gapped (non-prelim): 38 length of query: 315 length of database: 48,235 effective HSP length: 63 effective length of query: 252 effective length of database: 43,321 effective search space: 10916892 effective search space used: 10916892 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.9 bits) S2: 92 (40.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002635 slr1783 (282 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002635 slr1783 556 e-161 SYNE-PCC-01-002731 slr1909 147 4e-38 SYNE-PCC-01-001461 slr0115 93 8e-22 SYNE-PCC-01-002086 slr1042 91 5e-21 SYNE-PCC-01-002033 slr0947 87 5e-20 SYNE-PCC-01-002873 slr2098 77 5e-17 SYNE-PCC-01-002486 slr1584 77 5e-17 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 74 4e-16 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 74 4e-16 SYNE-PCC-01-002489 slr1588 74 7e-16 SYNE-PCC-01-000414 sll0649 72 2e-15 SYNE-PCC-01-001575 slr0312 72 3e-15 SYNE-PCC-01-000523 sll0797 71 4e-15 SYNE-PCC-01-000518 sll0789 70 6e-15 SYNE-PCC-01-001306 sll1905 70 1e-14 SYNE-PCC-01-001133 sll1673 70 1e-14 SYNE-PCC-01-000800 sll1228 70 1e-14 SYNE-PCC-01-002879 slr2104 68 4e-14 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 67 5e-14 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 65 3e-13 SYNE-PCC-01-002617 slr1759 64 4e-13 SYNE-PCC-01-002672 slr1837 63 9e-13 SYNE-PCC-01-001437 slr0081 63 9e-13 SYNE-PCC-01-002951 ssl0564 60 1e-11 SYNE-PCC-01-000242 sll0396 60 1e-11 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 60 1e-11 SYNE-PCC-01-001132 sll1672 55 2e-10 SYNE-PCC-01-002788 slr1982 52 2e-09 SYNE-PCC-01-002618 slr1760 49 2e-08 SYNE-PCC-01-000877 sll1330 46 2e-07 SYNE-PCC-01-001075 sll1592 42 2e-06 SYNE-PCC-01-001039 sll1544 41 5e-06 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 556 bits (1433), Expect = e-161 Identities = 282/282 (100%), Positives = 282/282 (100%) Query: 1 MGLSLLRPRLVFLEFIPRDRLMGGGISQSGNLLRSPPTKPPYLPLHDCITAMAEPISLLL 60 MGLSLLRPRLVFLEFIPRDRLMGGGISQSGNLLRSPPTKPPYLPLHDCITAMAEPISLLL Sbjct: 1 MGLSLLRPRLVFLEFIPRDRLMGGGISQSGNLLRSPPTKPPYLPLHDCITAMAEPISLLL 60 Query: 61 VDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQFLQ 120 VDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQFLQ Sbjct: 61 VDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQFLQ 120 Query: 121 KLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQQAS 180 KLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQQAS Sbjct: 121 KLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQQAS 180 Query: 181 SDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVSQGLMNKE 240 SDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVSQGLMNKE Sbjct: 181 SDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVSQGLMNKE 240 Query: 241 IAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHGLTE 282 IAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHGLTE Sbjct: 241 IAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHGLTE 282 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 147 bits (371), Expect = 4e-38 Identities = 84/227 (37%), Positives = 136/227 (59%), Gaps = 20/227 (8%) Query: 54 EPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQV 113 E LLLVDD+P + V+ +LE G ++V A N EA D L +P +++ DIMMP++ Sbjct: 6 ENYHLLLVDDDPNLLLLVKDYLEYQG-YQVTTAGNGREALDLLTTTVPDMIVCDIMMPEM 64 Query: 114 DGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNL 173 DGY F++++R++ +PV+FL+A+G + +R++G G D +++KPF+P+EL A V++ Sbjct: 65 DGYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSC 124 Query: 174 LARQQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVS 233 L +QA + L++ + Q+ + ++ TP E V+ LV+ Sbjct: 125 L--RQADRLLQHNNHPLED------NARVQVAR-----------DVELTPTETKVIQLVA 165 Query: 234 QGLMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHGL 280 QGL N+EIA LK S R VE +VS + KTG ++RTEL R+A+Q + Sbjct: 166 QGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELARWAIQKSI 212 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 93.2 bits (230), Expect = 8e-22 Identities = 50/135 (37%), Positives = 77/135 (57%), Gaps = 1/135 (0%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 +L++DD+P + + V LE +G + V A + + P L++ D+M+P+VDG+ Sbjct: 4 ILIIDDDPAISDLVSINLEMAG-YDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 Q+LR D R +PV+ LTA G D+IQG+ +G D +L+KPFD +E+ A VR LL R Sbjct: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRT 122 Query: 178 QASSDAGSESAKLQE 192 A S L + Sbjct: 123 DRIPQAAKHSEILNQ 137 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 90.5 bits (223), Expect = 5e-21 Identities = 42/118 (35%), Positives = 77/118 (65%), Gaps = 1/118 (0%) Query: 57 SLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGY 116 ++LLV+D RE + L+D G ++V +A + EA + LQ+ P LV+ DI+MP+++GY Sbjct: 29 AVLLVEDSSSQREMISGILKDHG-WQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGY 87 Query: 117 QFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLL 174 + ++++ D + +++PV+ +++G DR G + G DA+++KPF P EL ++ LL Sbjct: 88 EVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 87.4 bits (215), Expect = 5e-20 Identities = 50/134 (37%), Positives = 78/134 (58%), Gaps = 4/134 (2%) Query: 60 LVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQFL 119 +VDDE +R ++ L G ++V AA+ EA P LV+ D+MMP++DGY Sbjct: 1 MVDDEASIRRILETRLSMIG-YEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVC 59 Query: 120 QKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQQA 179 Q+LR+++ +P++ LTA G DRI G + G D ++ KPF P ELEA +R++L R Sbjct: 60 QELRKES---DIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDK 116 Query: 180 SSDAGSESAKLQEI 193 + G S+ + +I Sbjct: 117 NGMPGIPSSGVLQI 130 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 77.4 bits (189), Expect = 5e-17 Identities = 43/109 (39%), Positives = 65/109 (59%), Gaps = 1/109 (0%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 +LLV+D +E L D G F VD+AAN A + L ++ ALV+ D+ MP++DG + Sbjct: 927 ILLVEDNEINQEVAAELLRDVG-FNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDEL 166 +R++ R+ LP+V +TA M GDR + Q G + L KP +P+EL Sbjct: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 Score = 44.3 bits (103), Expect = 4e-07 Identities = 48/197 (24%), Positives = 85/197 (43%), Gaps = 27/197 (13%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYL-----QHHLPALVISDIMMPQ 112 +L+VDD R ++ LE F V+ + EA ++L ++H ++V D MP Sbjct: 773 VLVVDDNDHARLVMKDLLEQM-KFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 Query: 113 VDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRN 172 +DG + ++L+ + +TA G ++ G D L KP P +++ + Sbjct: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISP----SVLFD 887 Query: 173 LLARQQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLV 232 LAR + + AL +++ Q SGI ++ R +L LV Sbjct: 888 SLAR----------------VLGDPTALAQEMRQSSGIGAEDLALEKLRRIRGARIL-LV 930 Query: 233 SQGLMNKEIAAQLKTSV 249 +N+E+AA+L V Sbjct: 931 EDNEINQEVAAELLRDV 947 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 77.4 bits (189), Expect = 5e-17 Identities = 46/119 (38%), Positives = 68/119 (57%), Gaps = 3/119 (2%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 +LLV+D+ + E++ L D + VD+A +A+ AWDY LVI D+M+P++DG Sbjct: 3 ILLVEDDLPLAETLAEALSDQL-YTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLAR 176 QK R + +P++ +TAR D+I G G D ++ KP D EL A VR LL R Sbjct: 62 LCQKWRSHSYL--MPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRR 118 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 74.3 bits (181), Expect = 4e-16 Identities = 46/119 (38%), Positives = 67/119 (56%), Gaps = 4/119 (3%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 +L+V+DE R +++ E G + V A N E L +H LV+ DI +P +G Sbjct: 6 ILVVEDEIVTRNTLKGIFEAEG-YDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLAR 176 ++LRE+ SLP++FLT R D+I G + G D +L+KPF+P EL RNLL R Sbjct: 65 LARELREEL---SLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHR 120 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 74.3 bits (181), Expect = 4e-16 Identities = 48/125 (38%), Positives = 73/125 (58%), Gaps = 5/125 (4%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 LLLVDD+ + E + LE G F V+ A N EA L LV+ D+MMP+++G + Sbjct: 4 LLLVDDDIELTELLSTLLELEG-FDVETANNGLEALQKLNESYK-LVLLDVMMPKLNGIE 61 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 L+++R + ++PV+ LTARG DR+ G + G D L KPF+ EL A ++ +L R Sbjct: 62 TLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 Query: 178 QASSD 182 + S+ Sbjct: 119 ASPSN 123 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 73.6 bits (179), Expect = 7e-16 Identities = 60/200 (30%), Positives = 99/200 (49%), Gaps = 21/200 (10%) Query: 57 SLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQ--HHLPALVISDIMMPQVD 114 ++L+V+DE +RE + L ++K+ A N A L +P L+I D+MMP++D Sbjct: 3 TILVVEDEAIIRELIGETLSLE-NYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMD 61 Query: 115 GYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLL 174 G+ + L+++A+ ++P +FLTA G D +G +G D +L KPF ++L V + L Sbjct: 62 GHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRL 121 Query: 175 ARQQASSDAGSESAKLQEIYQ-EIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVS 233 +Q AKL YQ I + + + SG TP+ TP E + + Sbjct: 122 QKQ----------AKLSAFYQGSISSSLTERPRRSGTIGTPT-----LTPDEAEIWRDLE 166 Query: 234 QGLMNKEIAA--QLKTSVRN 251 GL ++ Q K S+ N Sbjct: 167 VGLNTGQVFLFYQPKVSIHN 186 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 72.4 bits (176), Expect = 2e-15 Identities = 40/121 (33%), Positives = 67/121 (55%), Gaps = 1/121 (0%) Query: 57 SLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGY 116 ++L+V+D+ + + ++ LE F + + Q +P L++ D+M+P++DG Sbjct: 13 NILIVEDDQEIAQLIRETLERE-QFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGL 71 Query: 117 QFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLAR 176 + ++R+ + ++ LTA+G DRI G TG D +L KPF P EL A VR LL R Sbjct: 72 EVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRR 131 Query: 177 Q 177 Q Sbjct: 132 Q 132 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 71.6 bits (174), Expect = 3e-15 Identities = 56/232 (24%), Positives = 100/232 (43%), Gaps = 29/232 (12%) Query: 51 AMAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAA-NATEAWDYLQHHLPALVISDIM 109 + A I +L+ DD R+ + + D +V A N +A + H P + + D+ Sbjct: 2 SQATTIRVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLR 61 Query: 110 MPQVDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAI 169 MP+V+G + + +F ++ LT D +G Q G +L K +PDEL Sbjct: 62 MPEVEGVAAISAICAIVKFAR--IIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNA 119 Query: 170 VRNLLARQQ-ASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSV 228 +R + Q+ D G++ L +++ P + + RE V Sbjct: 120 IRTVHRGQKYIPPDVGAK-------------LVQRLSNP------------ELSERELEV 154 Query: 229 LDLVSQGLMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHGL 280 L ++QG+ N +IA L V+ +V+R+ K RT+ V A++ G+ Sbjct: 155 LGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGI 206 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 70.9 bits (172), Expect = 4e-15 Identities = 45/121 (37%), Positives = 68/121 (56%), Gaps = 5/121 (4%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLP--ALVISDIMMPQVDG 115 +LLV+DE + +++ L S + VD + ++AWDYL++ L I D ++P + G Sbjct: 3 ILLVEDETDLGMAIKKVLV-SEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 116 YQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLA 175 + QKLR SLPV+ LTA G +R++G G D +L+KPF EL A +R L Sbjct: 62 LELCQKLRTQGN--SLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQR 119 Query: 176 R 176 R Sbjct: 120 R 120 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 70.5 bits (171), Expect = 6e-15 Identities = 63/220 (28%), Positives = 103/220 (46%), Gaps = 37/220 (16%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLP--ALVISDIMMPQVDG 115 LLLV+DEP + +++ L ++ VD + AW YL L I D M+P + G Sbjct: 3 LLLVEDEPDLGMALEKALRRE-NYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 116 YQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLA 175 + QKLR + SLP++ LTA+ DR++G G D +L KPF EL A +R+L Sbjct: 62 LELCQKLR--GQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQR 119 Query: 176 RQQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLD----- 230 R S +LQ Q+++ + + + TP ++ T +E +L+ Sbjct: 120 R----------SPELQP--QQLQVGQWWLDYGTFAVVTPEQARITLTAKEFQLLEYFMKH 167 Query: 231 ----LVSQGLMNK-----------EIAAQLKTSVRNVEKY 255 L S+ + N+ +AAQ++ R +E+Y Sbjct: 168 PQQILSSEQIKNQLWALSAESTSNVVAAQVRLLRRKLEEY 207 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 69.7 bits (169), Expect = 1e-14 Identities = 42/138 (30%), Positives = 67/138 (48%), Gaps = 1/138 (0%) Query: 41 PYLPLHDCITAMAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHL 100 P P T E +L+VDD + LE G + + EA + Sbjct: 3 PSQPHPPIATFEPESFLILVVDDVKENIYVISELLEGEG-YSTTFVTSGPEALQRVTQAQ 61 Query: 101 PALVISDIMMPQVDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKP 160 P L++ D+MMP +DG + +L++D + + +PV+FLTA D +Q + G +++KP Sbjct: 62 PDLILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKP 121 Query: 161 FDPDELEAIVRNLLARQQ 178 F P EL A V+ L +Q Sbjct: 122 FSPPELLARVKTHLELKQ 139 Score = 48.5 bits (114), Expect = 2e-08 Identities = 39/150 (26%), Positives = 71/150 (47%), Gaps = 7/150 (4%) Query: 38 TKPPYLPLHDCITAMAEPIS-----LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEA 92 T+PP L + I+ P S +LL +D ++ + L+ G + VD+ N EA Sbjct: 717 TEPPTLVSTEAISGPLFPYSSSNLTILLAEDNLINQQVAKLLLKKLG-YPVDVVNNGQEA 775 Query: 93 WDYLQHHLPALVISDIMMPQVDGYQFLQKLREDARFQSLP-VVFLTARGMTGDRIQGYQT 151 L +V+ D+ MP++DG + +R P ++ +TA M GDR + + Sbjct: 776 LSALAKGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLAS 835 Query: 152 GCDAFLSKPFDPDELEAIVRNLLARQQASS 181 G + ++SKP + L+ ++ Q++S Sbjct: 836 GMNDYVSKPIRLEALQQALQVAATALQSTS 865 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 69.7 bits (169), Expect = 1e-14 Identities = 42/151 (27%), Positives = 78/151 (51%), Gaps = 4/151 (2%) Query: 57 SLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGY 116 ++LLVDD P + + L + G + V + A LQ P L++ DI MP +DGY Sbjct: 10 NILLVDDLPNNLQLLSDLLINLG-YTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGY 68 Query: 117 QFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLAR 176 Q + ++++ Q +P++F++A G T D+++ ++ G +++KPF +E+ A + Sbjct: 69 QVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIEGQFTI 128 Query: 177 QQASSDAGSESAK---LQEIYQEIRALKEQI 204 Q+ E K +E+ + RAL + Sbjct: 129 QRQRIALKREVRKRREAEEVLYQSRALLSSV 159 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 69.7 bits (169), Expect = 1e-14 Identities = 42/118 (35%), Positives = 62/118 (52%), Gaps = 1/118 (0%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 +L+VDD P R ++ L G F V A N A + P +++ D+ MP +DG Sbjct: 420 VLVVDDRPESRLLLRQLLTSLG-FVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLA 175 QK++ + Q ++ LTA G+R + GCD FLSKPF P+EL A++ LA Sbjct: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLA 536 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 67.8 bits (164), Expect = 4e-14 Identities = 43/153 (28%), Positives = 72/153 (47%), Gaps = 2/153 (1%) Query: 54 EPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQV 113 E S+LLV+D RE L G +V +A N EA L + ++ DI MP + Sbjct: 716 EGASILLVEDNEINREFAHDLLTSKG-LRVQVANNGQEALTLLTSNTYDAILMDIQMPML 774 Query: 114 DGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNL 173 +GY + +R+ ++LP++ +TA M GD+ + G + L+KP PD L + + Sbjct: 775 NGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHW 834 Query: 174 LARQQASSDAG-SESAKLQEIYQEIRALKEQIG 205 + A S + K + + + +QIG Sbjct: 835 IPPNSAREKKNPSSNLKADLSFSSMTGINQQIG 867 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 67.4 bits (163), Expect = 5e-14 Identities = 55/223 (24%), Positives = 103/223 (46%), Gaps = 18/223 (8%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 +L+V+DE +RE + FL + V A++ A + ++ + P L++ D M+P G Q Sbjct: 5 ILIVEDECAIREMIALFLSQKY-YDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQ 62 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLAR- 176 F+Q +++ + ++P++ LTA+ D I G D +++KPF P L A + + R Sbjct: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 Query: 177 -QQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVSQG 235 +Q S + + E Q + +++I + +T + F + V + Sbjct: 123 YEQQSQFIQIDELSIDENAQRVFFQQQEI----NLSSTEFKLLHFFMRHPEKVYS--REQ 176 Query: 236 LMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQH 278 L+N+ L+ R V+ Y+ RL R L F +H Sbjct: 177 LLNRIWHNDLEVEYRTVDSYIRRL--------RRNLAPFQCEH 211 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 64.7 bits (156), Expect = 3e-13 Identities = 57/221 (25%), Positives = 98/221 (44%), Gaps = 29/221 (13%) Query: 52 MAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDL-AANATEAWDYLQHHLPALVISDIMM 110 M + + +LL+DD P +R ++ +E +F+V ++ TE P ++I D+ M Sbjct: 1 MQDKLKVLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNM 60 Query: 111 PQVDGYQFLQKLRE---DARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELE 167 + G L+ LR DAR ++ LT D G D +L K +PD L Sbjct: 61 KGLSGLDTLKGLRAEGVDAR-----ILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLL 115 Query: 168 AIVRNLLARQQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQS 227 ++ + + SD+ ++ L+ +++ +P+ T RE Sbjct: 116 EQIKRIAQGEVILSDS-IKNLLLERTHED------------------NPLD-SLTDREMG 155 Query: 228 VLDLVSQGLMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSR 268 VL ++ GL NK+IAAQL S V+ ++ L K +SR Sbjct: 156 VLRQIATGLSNKQIAAQLFISEETVKVHIRNLLRKLNVHSR 196 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 64.3 bits (155), Expect = 4e-13 Identities = 56/223 (25%), Positives = 104/223 (46%), Gaps = 17/223 (7%) Query: 43 LPLHDCITAMAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPA 102 LP D T++ + +LL +D ++ L + G + V +A N E D L+ Sbjct: 1177 LPTEDNATSLQPALQILLAEDNLVNQKVAHQMLNNLG-YPVAIANNGQEVIDALEKKFYD 1235 Query: 103 LVISDIMMPQVDGYQFLQKLREDARFQSLP-VVFLTARGMTGDRIQGYQTGCDAFLSKPF 161 LV+ D+ MP +DG + +R+ + P +V +TA M GDR + G D ++SKP Sbjct: 1236 LVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPI 1295 Query: 162 DPDELEAIVRN---LLARQQASSDAGSESAKLQEIYQEIRALKEQ-IGQPSGIHTTP-SP 216 ++L ++++ L+ QA D + + +I ++EQ + +P+ + +P P Sbjct: 1296 SINQLRKVLQDTSALITSPQARED-------IVTLGDKITVVEEQTMVKPTDVTESPLDP 1348 Query: 217 IKLDFTPREQSVLDLVSQGLMNKEIAAQLKTSVRNVEKYVSRL 259 + F + DL L + +A + S + +E+ V L Sbjct: 1349 TAIAFLRDDLCGGDLT---LFGEMVACYCQESQKLIEELVQGL 1388 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 63.2 bits (152), Expect = 9e-13 Identities = 45/121 (37%), Positives = 62/121 (51%), Gaps = 3/121 (2%) Query: 57 SLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGY 116 ++LLVDDE + E + L G +D+A L+I D M+PQV G Sbjct: 3 NILLVDDENALTEPLSKALGHQGH-TIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 Query: 117 QFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLAR 176 + +++R S PV+FLTA+ DR+ G G D +L KPF+ EL A VR LL R Sbjct: 62 EICRQIR--ILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRR 119 Query: 177 Q 177 Q Sbjct: 120 Q 120 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 63.2 bits (152), Expect = 9e-13 Identities = 43/153 (28%), Positives = 80/153 (52%), Gaps = 13/153 (8%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPA-------LVISDIMM 110 +L+V+DE +RE++ L++ G ++V + +A LQ L+I DIM+ Sbjct: 33 ILVVEDEVSIRETIVLSLQEEG-YEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 111 PQVDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIV 170 PQV+G + LR + P++ ++A+G +++ G + G D +++KPF EL A Sbjct: 92 PQVNGLDVCRSLRFGG--DNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 Query: 171 RNLLARQQASSDAGSESAKLQEIY---QEIRAL 200 R ++ RQ + + + K +++ QE R L Sbjct: 150 RAMIRRQGLAGNNIAPFRKFRDLVLYPQECRVL 182 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 59.7 bits (143), Expect = 1e-11 Identities = 29/56 (51%), Positives = 41/56 (73%) Query: 224 REQSVLDLVSQGLMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHG 279 RE +LDLV+ GL N+E++ +L+ S R V+ +VS + TKT T +R ELVR+ALQ G Sbjct: 15 RELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWG 70 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 59.7 bits (143), Expect = 1e-11 Identities = 36/134 (26%), Positives = 70/134 (52%), Gaps = 3/134 (2%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 +L+V++E + ++ L+ G + V +A + + + Q P L+I + +P + G + Sbjct: 5 VLVVEEEEKLARFMELELKYEG-YDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 ++LRE +P++ +TA+ +R+ G G D ++ KPF+ DE A +R L R Sbjct: 64 LCRRLREMG--SRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRT 121 Query: 178 QASSDAGSESAKLQ 191 +SD + A L+ Sbjct: 122 HTTSDEVLQFADLR 135 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 59.7 bits (143), Expect = 1e-11 Identities = 38/120 (31%), Positives = 65/120 (54%), Gaps = 3/120 (2%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 +LL++D+ + +Q L G F VD + L V+ D+ +P++DG + Sbjct: 3 ILLIEDDNLIGNGLQIGLTKLG-FAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 LQ+ R + Q +PV+ LTAR +R++G Q+G D +L KPF E+ A ++ L+ R+ Sbjct: 62 VLQQWRSN--HQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRR 119 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 55.5 bits (132), Expect = 2e-10 Identities = 32/108 (29%), Positives = 54/108 (50%) Query: 54 EPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQV 113 +P+ +LV D+ V + L F+++ A+N EA + P L+ D+ MP + Sbjct: 627 QPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVM 686 Query: 114 DGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPF 161 DGY+ + ++ + + VV LTA + ++ GCD FL KPF Sbjct: 687 DGYEATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 52.0 bits (123), Expect = 2e-09 Identities = 32/128 (25%), Positives = 62/128 (48%), Gaps = 8/128 (6%) Query: 52 MAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMP 111 M +LLV+D R+ + L G ++V +A + +A P L++ D+ +P Sbjct: 1 MESMAKVLLVEDNEMNRDMLSRRLIRKG-YEVVIAVDGEQAVTMAISESPQLILMDMSLP 59 Query: 112 QVDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVR 171 +DG+ ++++ +P++ LTA M DR + GCD + +KP + ++ Sbjct: 60 IIDGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIE-------IK 112 Query: 172 NLLARQQA 179 LL + +A Sbjct: 113 RLLQKMEA 120 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 48.9 bits (115), Expect = 2e-08 Identities = 34/136 (25%), Positives = 65/136 (47%), Gaps = 1/136 (0%) Query: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 +L+VDD+ +R ++ +L+ G +V+LA N EA P +V+ D +MP +DG+ Sbjct: 14 ILVVDDDGFMRMQLRVYLQKEGH-RVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFA 72 Query: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQ 177 Q L + + S V+ +T + ++ G +++KP L V+ LL + Sbjct: 73 CCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQN 132 Query: 178 QASSDAGSESAKLQEI 193 + S + L+ + Sbjct: 133 RLQHQLESVNQMLERL 148 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 45.8 bits (107), Expect = 2e-07 Identities = 32/122 (26%), Positives = 59/122 (48%), Gaps = 4/122 (3%) Query: 55 PISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVD 114 P+ + +V+ P +R + L+ SG + V + +A + LP L + D + D Sbjct: 3 PVYISVVEGNPHLRSLLSWHLQQSG-YLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGD 61 Query: 115 GYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLL 174 G + + L + + QS+ + L+A+ D + G + G D +L+KPF E A + L+ Sbjct: 62 GIELCRWLYQ--QHQSM-IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLI 118 Query: 175 AR 176 R Sbjct: 119 RR 120 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 42.0 bits (97), Expect = 2e-06 Identities = 51/228 (22%), Positives = 95/228 (41%), Gaps = 15/228 (6%) Query: 56 ISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATE---AWDYLQHHLPALVISDIMMPQ 112 I +LLV+D+ R + L S + +D+A A + A Y+ L +VI D+ +P Sbjct: 8 IRILLVEDDELFRLGLVTRL--SQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPG 65 Query: 113 VDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRN 172 + G + ++++ LPV+ LT+ + + + K + L +R+ Sbjct: 66 IGGIEACHQIKKI--HPQLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLVLAIRS 123 Query: 173 LLARQQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLV 232 + A S+ ++Q +Q + + P T RE +L LV Sbjct: 124 VAAGAFWWDAIASQ--EIQTAFQHSSSTGAVLPLADADGENP------LTKRELEILSLV 175 Query: 233 SQGLMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHGL 280 ++G N+EIA +L + V +V + K RT+ A++ L Sbjct: 176 AKGKSNQEIADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIERRL 223 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 40.8 bits (94), Expect = 5e-06 Identities = 47/200 (23%), Positives = 77/200 (38%), Gaps = 27/200 (13%) Query: 82 KVDLAANATEAWDYL-QHHLPALVISDIMMPQVDGYQFLQKLREDARFQSLPVVFLTARG 140 KV + +EA Y Q P +V+ + G L++L+ AR ++ L Sbjct: 51 KVKIFTLQSEALTYFEQQPEPLVVVICQRLEDGSGLDLLKQLKAHARSPQCLLLLLNDHA 110 Query: 141 MTGDRIQGYQTGCDA-FLSKPFDPDELEAIVRNLLARQQASSDAGSESAKLQEIYQEIRA 199 + Q Y G DA FL E+ V LL + ++L+ I ++ Sbjct: 111 AIVEEAQQY--GADAIFLESSLGNGEINLAVECLLQGRTYID------SRLEAIADYRKS 162 Query: 200 LKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVSQGLMNKEIAAQLKTSVRNVEKYVSRL 259 K+++ T RE ++L LV++G N EI +L + V +YV + Sbjct: 163 QKDEL-----------------TQREVAILRLVAEGKTNSEIGQELHLASSTVREYVQTI 205 Query: 260 FTKTGTNSRTELVRFALQHG 279 K RT L+ G Sbjct: 206 MRKLNARDRTSAAIAGLREG 225 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.136 0.387 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 25,533 Number of Sequences: 78 Number of extensions: 1125 Number of successful extensions: 63 Number of sequences better than 1.0e-05: 32 Number of HSP's better than 0.0 without gapping: 24 Number of HSP's successfully gapped in prelim test: 8 Number of HSP's that attempted gapping in prelim test: 12 Number of HSP's gapped (non-prelim): 38 length of query: 282 length of database: 48,235 effective HSP length: 62 effective length of query: 220 effective length of database: 43,399 effective search space: 9547780 effective search space used: 9547780 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 92 (40.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002672 slr1837 (234 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002672 slr1837 385 e-110 SYNE-PCC-01-000518 sll0789 124 2e-31 SYNE-PCC-01-000523 sll0797 112 1e-27 SYNE-PCC-01-000242 sll0396 110 5e-27 SYNE-PCC-01-001437 slr0081 107 3e-26 SYNE-PCC-01-002486 slr1584 107 3e-26 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 104 2e-25 SYNE-PCC-01-001461 slr0115 104 3e-25 SYNE-PCC-01-000414 sll0649 98 3e-23 SYNE-PCC-01-002033 slr0947 86 1e-19 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 83 9e-19 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 82 2e-18 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 74 4e-16 SYNE-PCC-01-000877 sll1330 67 4e-14 SYNE-PCC-01-002731 slr1909 63 1e-12 SYNE-PCC-01-002489 slr1588 62 1e-12 SYNE-PCC-01-002788 slr1982 61 4e-12 SYNE-PCC-01-001133 sll1673 61 4e-12 SYNE-PCC-01-001306 sll1905 59 1e-11 SYNE-PCC-01-002879 slr2104 59 2e-11 SYNE-PCC-01-002086 slr1042 59 2e-11 SYNE-PCC-01-001132 sll1672 57 7e-11 SYNE-PCC-01-002635 slr1783 52 1e-09 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 52 1e-09 SYNE-PCC-01-002617 slr1759 50 5e-09 SYNE-PCC-01-002873 slr2098 50 6e-09 SYNE-PCC-01-002618 slr1760 49 2e-08 SYNE-PCC-01-001160 sll1708 47 7e-08 SYNE-PCC-01-000800 sll1228 46 1e-07 SYNE-PCC-01-001075 sll1592 45 2e-07 SYNE-PCC-01-000608 sll0921 45 2e-07 SYNE-PCC-01-001517 slr0222 45 2e-07 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 385 bits (990), Expect = e-110 Identities = 197/234 (84%), Positives = 197/234 (84%) Query: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG Sbjct: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 Query: 61 LEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXXXQ 120 LEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF Q Sbjct: 61 LEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQ 120 Query: 121 SHGETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQIL 180 SHGETITETLGAVK DVANQVAYCQGQRIALSEKEVALLTLFLQAPGQIL Sbjct: 121 SHGETITETLGAVKNNLLSVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQIL 180 Query: 181 SHEEIYSHLWPGESPPSSNXXXXXXXXXXXKIEQPNAPRLINSVYGKGYCFEAN 234 SHEEIYSHLWPGESPPSSN KIEQPNAPRLINSVYGKGYCFEAN Sbjct: 181 SHEEIYSHLWPGESPPSSNVLAALVRLLRRKIEQPNAPRLINSVYGKGYCFEAN 234 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 124 bits (312), Expect = 2e-31 Identities = 81/231 (35%), Positives = 110/231 (47%), Gaps = 11/231 (4%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAG--QYDLLILDWMLPQVSGL 61 +LLV+DE L L KAL + + +D G + G Y L I DWM+P +SGL Sbjct: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 Query: 62 EICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXXXQS 121 E+C+++R S P+L LTAKD + DRV GLDAG DDYLIKPF Sbjct: 63 ELCQKLRGQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSLQRRSP 122 Query: 122 HGETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILS 181 + +G + A RI L+ KE LL F++ P QILS Sbjct: 123 ELQPQQLQVGQWWLDYGTFAVVTPEQA---------RITLTAKEFQLLEYFMKHPQQILS 173 Query: 182 HEEIYSHLWPGESPPSSNXXXXXXXXXXXKIEQPNAPRLINSVYGKGYCFE 232 E+I + LW + +SN K+E+ + LI +VYG GY F+ Sbjct: 174 SEQIKNQLWALSAESTSNVVAAQVRLLRRKLEEYSHGNLIETVYGLGYRFQ 224 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 112 bits (279), Expect = 1e-27 Identities = 74/230 (32%), Positives = 105/230 (45%), Gaps = 4/230 (1%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAG--QYDLLILDWMLPQVSGL 61 ILLV+DE L + K L + + +D G +Y L I+DW+LP +SGL Sbjct: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 Query: 62 EICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXXXQS 121 E+C+++R G+S PVL LTA ++RV GLDAG DDYL KPF Sbjct: 63 ELCQKLRTQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRRSP 122 Query: 122 HGETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILS 181 + TLG ++ + Q IAL+ +E + +Q P +I+S Sbjct: 123 QFQPQILTLG--NFSLDPSNNLLSVTISEPLNLERQEIALTVREFQIFQYLMQNPERIIS 180 Query: 182 HEEIYSHLWPGESPPSSNXXXXXXXXXXXKIEQPNAPRLINSVYGKGYCF 231 +I LW + P SN K+ Q N P I +V G+GY F Sbjct: 181 GSKIRQQLWDLDEEPMSNVVAAQMRLIRRKLAQQNCPCPIKTVPGQGYRF 230 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 110 bits (274), Expect = 5e-27 Identities = 70/227 (30%), Positives = 109/227 (48%), Gaps = 12/227 (5%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 +L+V++E L + L ++G+ + VA G G A DL+I++ LP +SGLE+ Sbjct: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLEL 64 Query: 64 CRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXXXQSHG 123 CR++R +G P++ +TAKD +++RV GLDAG DDY++KPF Sbjct: 65 CRRLREMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLR----- 119 Query: 124 ETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQR-IALSEKEVALLTLFLQAPGQILSH 182 T T + ++ ++ +G R I L+ KE LL L Q+L+ Sbjct: 120 RTHTTSDEVLQFADLRFNRSTREIQ------RGDRLIDLTAKEFELLDYLLSHARQVLTR 173 Query: 183 EEIYSHLWPGESPPSSNXXXXXXXXXXXKIEQPNAPRLINSVYGKGY 229 E+I +W + SN K+E PRLI +V G GY Sbjct: 174 EQILERVWGYDFMGDSNIIEVYIRYLRLKLEAAGEPRLIQTVRGVGY 220 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 107 bits (268), Expect = 3e-26 Identities = 72/240 (30%), Positives = 115/240 (47%), Gaps = 23/240 (9%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIA-----GQ--YDLLILDWMLP 56 IL+V+DE ++ E + +L +G+ + D G+ LA+ GQ DL+ILD MLP Sbjct: 33 ILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLP 92 Query: 57 QVSGLEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXX 116 QV+GL++CR +R G +TP+L ++AK + ++V GL+ G DDY+ KPF Sbjct: 93 QVNGLDVCRSLRFGGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRAM 152 Query: 117 XXXQSHGETITETLGAVKXXXXXXXXXXXDVANQVAYC----QGQRIALSEKEVALLTLF 172 Q + D+ C +G+ ++L+ KE LL LF Sbjct: 153 IRRQ-----------GLAGNNIAPFRKFRDLVLYPQECRVLMRGEEVSLAPKEFRLLELF 201 Query: 173 LQAPGQILSHEEIYSHLWPGESPPSSNXXXXXXXXXXXKIEQ-PNAPRLINSVYGKGYCF 231 + P ++ S E++ H+W + S K+EQ P+ P + +V G GY F Sbjct: 202 MSYPRRVWSREQLIEHIWGIDFMGDSKTVDVHIRWLREKLEQDPSQPEYLVTVRGFGYRF 261 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 107 bits (267), Expect = 3e-26 Identities = 67/227 (29%), Positives = 112/227 (49%), Gaps = 11/227 (4%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 ILLV+D+ L E L++AL Q +T+D+A A +YDL+ILD MLP++ G+ + Sbjct: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 Query: 64 CRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXXXQSHG 123 C++ R + P+L +TA+DT++D++ GLDAG DDY++KP Sbjct: 63 CQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCAT 122 Query: 124 ETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSHE 183 G ++ +V+Y + ++L+ KE ++L L L+ ++LS Sbjct: 123 CQPVLEWGPIRLDPSTY---------EVSY-DNEVLSLTRKEYSILELLLRNGRRVLSRS 172 Query: 184 EIYSHLWPGESPPSSNXXXXXXXXXXXKIEQPN-APRLINSVYGKGY 229 I +W ESPP + K++ + I +V+G GY Sbjct: 173 MIIDSIWKLESPPEEDTVKVHVRSLRQKLKSAGLSADAIETVHGIGY 219 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 104 bits (260), Expect = 2e-25 Identities = 70/227 (30%), Positives = 103/227 (45%), Gaps = 16/227 (7%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 ILL++D+N + L L G +D GKTG+A + YD ++LD LP++ GLE+ Sbjct: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 Query: 64 CRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXXXQ-SH 122 +Q R PVL LTA+DTLD+RV GL +G DDYL KPF + + Sbjct: 63 LQQWRSNHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYGY 122 Query: 123 GETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSH 182 ++ E G D + + Q I+L+ +E LL LF+ ++LS Sbjct: 123 HHSVIEQAGV-----------KLDQNQRSVWLNNQPISLTSREYKLLELFMLNKDRVLSR 171 Query: 183 EEIYSHLWPGESPPSSNXXXXXXXXXXXKIEQPNAPRLINSVYGKGY 229 I L + SS + Q + I +V+G GY Sbjct: 172 SSIEEKLSSWDEEISSG----ALDVHIYNLRQKLGKQFIRTVHGVGY 214 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 104 bits (259), Expect = 3e-25 Identities = 76/250 (30%), Positives = 110/250 (44%), Gaps = 38/250 (15%) Query: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 M IL++DD+ A+++ +S L G+ + A G G A+A+ Q DL++LD MLP+V G Sbjct: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 Query: 61 LEICRQIRILGHST--PVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXX 118 +C+++R + PVL LTA + D++ G D+G DDYL KPF Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPF-------------- 106 Query: 119 XQSHGETITETLGAVKXXXXXX-----XXXXXDVANQ----------VAYCQGQRIALSE 163 + E L V+ ++ NQ A G+ I L+ Sbjct: 107 ------DVEEMLARVRALLRRTDRIPQAAKHSEILNQGPLTLVPERFEAIWFGKSIKLTH 160 Query: 164 KEVALLTLFLQAPGQILSHEEIYSHLWPGESPPSSNXXXXXXXXXXXKIE-QPNAPRLIN 222 E LL LQ GQ +S +I +W E K+E P PR I Sbjct: 161 LEFELLHCLLQRHGQTVSPSDILREVWGYEPDDDIETIRVHIRHLRTKLEPNPRRPRFIK 220 Query: 223 SVYGKGYCFE 232 +VYG GYC E Sbjct: 221 TVYGAGYCLE 230 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 97.8 bits (242), Expect = 3e-23 Identities = 69/235 (29%), Positives = 106/235 (45%), Gaps = 6/235 (2%) Query: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 M NIL+V+D+ + + + + L + T V + G+TGL + DL++LD MLP++ G Sbjct: 11 MPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDG 70 Query: 61 LEICRQIRIL-GHSTP-VLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXX 118 LE+C +IR G P +L LTAK DR+ GL G DDYL+KPF Sbjct: 71 LEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLR 130 Query: 119 XQSHGETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQ 178 Q + +G + A++ + + + L+ E LL F+ PG+ Sbjct: 131 RQLRQ---GQPVGQIYRTNHFQVDLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGR 187 Query: 179 ILSHEEIYSHLWPGESPPSSNXXXXXXXXXXXKIE-QPNAPRLINSVYGKGYCFE 232 + + ++ LW + KIE P P I +V G GY FE Sbjct: 188 VWNRTQLIEKLWGNDFFGDERVVDTHIRRLRKKIEPDPANPTFIKTVIGLGYKFE 242 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 85.5 bits (210), Expect = 1e-19 Identities = 62/232 (26%), Positives = 103/232 (44%), Gaps = 12/232 (5%) Query: 6 LVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEICR 65 +VDDE ++ L L G+ + A G+ +A DL++LD M+P++ G +C+ Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 66 QIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFX-XXXXXXXXXXXXXXQSHGE 124 ++R P++ LTA + DR+ GL+ G DDY++KPF +G Sbjct: 61 ELR-KESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGM 119 Query: 125 TITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSHEE 184 + G ++ D + Y +RI L+ E +LL L + G+ S E Sbjct: 120 PGIPSSGVLQ-----IATIRIDTNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSE 174 Query: 185 IYSHLWPGESPP---SSNXXXXXXXXXXXKIEQ-PNAPRLINSVYGKGYCFE 232 I +W G +P + K+E+ P+ P LI + G GY F+ Sbjct: 175 ILQEVW-GYTPERHVDTRVVDVHISRLRAKLEEDPSNPELILTARGTGYLFQ 225 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 82.8 bits (203), Expect = 9e-19 Identities = 64/233 (27%), Positives = 107/233 (45%), Gaps = 14/233 (6%) Query: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 M+ +LLVDD+ LTE LS L +G ++ A+ G L + Y L++LD M+P+++G Sbjct: 1 MSKLLLVDDDIELTELLSTLLELEGFDVETANNGLEAL-QKLNESYKLVLLDVMMPKLNG 59 Query: 61 LEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF---XXXXXXXXXXXXX 117 +E ++IR + + PV+ LTA+ DRV GL+ G DD L KPF Sbjct: 60 IETLKEIRKVSN-VPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRS 118 Query: 118 XXQSHGETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPG 177 S+ + E L ++ +A + + L++ E +L L L++ G Sbjct: 119 ASPSNNISNVEIL--------SFDGITLHFSHGIATYNEENLNLTDYEFKILCLLLKSKG 170 Query: 178 QILSHEEIYSHLWPGESPPSSNXXXXXXXXXXXKI-EQPNAPRLINSVYGKGY 229 ++S EE+ + P K+ ++ N P ++ GKGY Sbjct: 171 NVVSREELSLEVMEKPLTPFDRSLDMHISNLRRKLPKRKNKPSWFKTLRGKGY 223 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 82.0 bits (201), Expect = 2e-18 Identities = 61/232 (26%), Positives = 99/232 (42%), Gaps = 13/232 (5%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 IL+V+DE A+ E ++ L + + + A KT + I L++LDWMLP SG++ Sbjct: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINK-IKENPKLILLDWMLPGRSGIQF 63 Query: 64 CRQIRILGH--STPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXXXQS 121 + I+ + P++ LTAK T +D +A L+AG DDY+ KPF Sbjct: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARI-------- 115 Query: 122 HGETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILS 181 E + + + D Q + Q Q I LS E LL F++ P ++ S Sbjct: 116 --EAVWRRIYEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYS 173 Query: 182 HEEIYSHLWPGESPPSSNXXXXXXXXXXXKIEQPNAPRLINSVYGKGYCFEA 233 E++ + +W + + I +V G GY F + Sbjct: 174 REQLLNRIWHNDLEVEYRTVDSYIRRLRRNLAPFQCEHYIQTVRGSGYRFSS 225 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 73.9 bits (180), Expect = 4e-16 Identities = 56/229 (24%), Positives = 95/229 (41%), Gaps = 4/229 (1%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 IL+V+DE L +G+ + A+ G + +L+++D LP +GL + Sbjct: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLLL 65 Query: 64 CRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXXXXXXXXXXXXXXQSHG 123 R++R S P++FLT +D D++ GL+ G DDYL KPF Sbjct: 66 ARELRE-ELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAMPH 124 Query: 124 ETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSHE 183 + T G + ++ + +GQ L E + F + PG++ + E Sbjct: 125 QEKENTFG--REFYRFNGWKLDLNSHSLITPEGQEFKLPRSEFRAMLHFCENPGKLQTRE 182 Query: 184 EIYSHLWPGESPPSSNXXXXXXXXXXXKIE-QPNAPRLINSVYGKGYCF 231 E+ + E P E PN P +I +++G+GY F Sbjct: 183 ELLKKMTGRELKPQDRTVDVTIRRIRKHFEDHPNTPNIIMTIHGEGYRF 231 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 67.4 bits (163), Expect = 4e-14 Identities = 55/189 (29%), Positives = 80/189 (42%), Gaps = 14/189 (7%) Query: 48 LLILDWMLPQVSGLEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFXXX 107 L ++D L G+E+CR + H + + L+AKDT D V GL AG DDYL KPF Sbjct: 50 LAVIDSDLTDGDGIELCRWL-YQQHQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFGMQ 108 Query: 108 XXXXXXX-XXXXXQSHGETITETLGAVKXXXXXXXXXXXDVANQVAYCQGQRIALSEKEV 166 ++ + G +K D+ + QG + L+ +E Sbjct: 109 EFLARIECLIRRVRTVAAPLLLDYGVLK----------IDLVQRRVEYQGNFVDLTPQEF 158 Query: 167 ALLTLFLQAPGQILSHEEIYSHLWPGESPPSSNXXXXXXXXXXXKIE-QPNAPRLINSVY 225 +LL + QA G LS E+ WP E+ + KIE P P LI +V Sbjct: 159 SLLYVLTQAEGSALSRTELLRRAWP-EAIDNPRTIDTHVLSLRKKIETDPRQPSLIQTVR 217 Query: 226 GKGYCFEAN 234 GY F ++ Sbjct: 218 NVGYRFNSS 226 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 62.8 bits (151), Expect = 1e-12 Identities = 35/104 (33%), Positives = 57/104 (54%), Gaps = 2/104 (1%) Query: 3 NILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLE 62 ++LLVDD+ L + L +QG+ + A G+ L + D+++ D M+P++ G Sbjct: 9 HLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYA 68 Query: 63 ICRQIRILGHST--PVLFLTAKDTLDDRVAGLDAGGDDYLIKPF 104 Q+R + PV+FL+AK +RV GL+ G D Y+ KPF Sbjct: 69 FIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPF 112 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 62.4 bits (150), Expect = 1e-12 Identities = 39/108 (36%), Positives = 60/108 (55%), Gaps = 4/108 (3%) Query: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKT--GLAMAIAGQYDLLILDWMLPQV 58 M+ IL+V+DE + E + + L + + I A+ G GL ++ DL+I D M+P++ Sbjct: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 Query: 59 SG--LEICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF 104 G L Q + P +FLTA T+ D G+++G DDYLIKPF Sbjct: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPF 108 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 60.8 bits (146), Expect = 4e-12 Identities = 37/107 (34%), Positives = 57/107 (53%), Gaps = 6/107 (5%) Query: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 MA +LLV+D + LS+ L +G+ + +A G+ + MAI+ L+++D LP + G Sbjct: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 Query: 61 LEICRQIRILGH----STPVLFLTAKDTLDDRVAGLDAGGDDYLIKP 103 +QI+ GH P++ LTA DR + AG DDY KP Sbjct: 64 WTATKQIK--GHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKP 108 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 60.8 bits (146), Expect = 4e-12 Identities = 35/104 (33%), Positives = 54/104 (51%), Gaps = 2/104 (1%) Query: 3 NILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLE 62 NILLVDD + LS L + G+T+ GK L + DL++LD +P + G + Sbjct: 10 NILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQ 69 Query: 63 ICRQIRILG--HSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF 104 +C I+ P++F++A D+V + GG DY+ KPF Sbjct: 70 VCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPF 113 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 59.3 bits (142), Expect = 1e-11 Identities = 34/103 (33%), Positives = 52/103 (50%), Gaps = 2/103 (1%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 IL+VDD +S+ L +G++ G L Q DL++LD M+P + GLE+ Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 64 CRQIR--ILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF 104 C +++ PV+FLTA + D + G DY+ KPF Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPF 122 Score = 48.1 bits (113), Expect = 2e-08 Identities = 30/103 (29%), Positives = 57/103 (55%), Gaps = 4/103 (3%) Query: 5 LLVDDENALTEPLSKALGHQ-GHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 +L+ ++N + + ++K L + G+ +DV + G+ L+ G YD++++D +P++ GL Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 64 CRQI-RILGHSTP--VLFLTAKDTLDDRVAGLDAGGDDYLIKP 103 I R G S ++ +TA DR L +G +DY+ KP Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKP 844 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 58.5 bits (140), Expect = 2e-11 Identities = 33/104 (31%), Positives = 56/104 (53%), Gaps = 2/104 (1%) Query: 2 ANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 A+ILLV+D E L +G + VA+ G+ L + + YD +++D +P ++G Sbjct: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGY 777 Query: 62 EICRQIRILGH--STPVLFLTAKDTLDDRVAGLDAGGDDYLIKP 103 + R IR + + P++ +TA D+ LDAG +D+L KP Sbjct: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKP 821 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 58.5 bits (140), Expect = 2e-11 Identities = 34/106 (32%), Positives = 57/106 (53%), Gaps = 2/106 (1%) Query: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 M +LLV+D ++ E +S L G + +A G L DL++LD ++P+++G Sbjct: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 Query: 61 LEICRQIRI--LGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF 104 E+CR+I+ + PV+ ++K DR G+ G D Y+ KPF Sbjct: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPF 132 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 56.6 bits (135), Expect = 7e-11 Identities = 34/103 (33%), Positives = 58/103 (56%), Gaps = 2/103 (1%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 IL+VDD++ + L K L G I+ A G+ +A+ + + L+ +D +P + G E Sbjct: 632 ILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEA 691 Query: 64 CRQIR--ILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF 104 + I+ + G++T V+ LTA +++ L AG DD+L KPF Sbjct: 692 TKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPF 734 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 52.4 bits (124), Expect = 1e-09 Identities = 36/105 (34%), Positives = 52/105 (49%), Gaps = 3/105 (2%) Query: 3 NILLVDDENALTEPLSKALGHQGH-TIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 ++LLVDDE + E + L G +D+A L+I D M+PQV G Sbjct: 57 SLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGY 116 Query: 62 EICRQIR--ILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF 104 + +++R S PV+FLTA+ DR+ G G D +L KPF Sbjct: 117 QFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPF 161 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 52.4 bits (124), Expect = 1e-09 Identities = 31/101 (30%), Positives = 53/101 (52%), Gaps = 2/101 (1%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVAD--QGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 +LL+DD + + + + + VAD G G+++A+ D++ILD + +SGL Sbjct: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 Query: 62 EICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIK 102 + + +R G +L LT D +D +DAG D YL+K Sbjct: 67 DTLKGLRAEGVDARILILTVSDAKNDIYTLIDAGADGYLLK 107 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 50.4 bits (119), Expect = 5e-09 Identities = 31/103 (30%), Positives = 51/103 (49%), Gaps = 3/103 (2%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 ILL +D + + L + G+ + +A+ G+ + YDL+++D +P + G+ Sbjct: 1192 ILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITA 1251 Query: 64 CRQIR---ILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKP 103 CR IR L ++ +TA DR LDAG D Y+ KP Sbjct: 1252 CRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKP 1294 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 50.1 bits (118), Expect = 6e-09 Identities = 34/104 (32%), Positives = 50/104 (48%), Gaps = 2/104 (1%) Query: 2 ANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 A ILLV+D E ++ L G +DVA G L Y L+++D +P++ G+ Sbjct: 925 ARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGI 984 Query: 62 EICRQIRILGH--STPVLFLTAKDTLDDRVAGLDAGGDDYLIKP 103 E IR P++ +TA DR L AG +D+L KP Sbjct: 985 EATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKP 1028 Score = 44.7 bits (104), Expect = 3e-07 Identities = 25/107 (23%), Positives = 47/107 (43%), Gaps = 7/107 (6%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQ-----YDLLILDWMLPQV 58 +L+VDD + + L ++ + G L + ++ +DW +P + Sbjct: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 Query: 59 SGLEICRQIRILG--HSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKP 103 GLE+ R+++ +G H + +TA + V G DD L+KP Sbjct: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKP 879 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 48.5 bits (114), Expect = 2e-08 Identities = 30/104 (28%), Positives = 54/104 (51%), Gaps = 2/104 (1%) Query: 2 ANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 A IL+VDD+ + L L +GH +++A G+ L + ++++LD ++P + G Sbjct: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 Query: 62 EICRQI-RILGHSTP-VLFLTAKDTLDDRVAGLDAGGDDYLIKP 103 C+ + +I + +P VL +T D +AG DY+ KP Sbjct: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKP 115 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 46.6 bits (109), Expect = 7e-08 Identities = 29/101 (28%), Positives = 51/101 (50%), Gaps = 2/101 (1%) Query: 4 ILLVDDENALTEPLSKALG--HQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 IL+V+D+ + L +ALG + I D G + A DL+++D LP + G+ Sbjct: 19 ILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDGI 78 Query: 62 EICRQIRILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIK 102 E +QI+ ++ LT+ ++ +A L +G D Y +K Sbjct: 79 EATKQIKQTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVK 119 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 45.8 bits (107), Expect = 1e-07 Identities = 29/103 (28%), Positives = 51/103 (49%), Gaps = 2/103 (1%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 +L+VDD L + L G + A+ G+ +A+ + ++++D +P + G Sbjct: 420 VLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRST 479 Query: 64 CRQIRIL--GHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPF 104 ++I+ G T ++ LTA +R L AG DD+L KPF Sbjct: 480 TQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPF 522 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 45.4 bits (106), Expect = 2e-07 Identities = 35/104 (33%), Positives = 55/104 (52%), Gaps = 8/104 (7%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVA---DQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 ILLV+D+ L L Q +DVA + G+T +A +D++ILD LP + G Sbjct: 10 ILLVEDDELFRLGLVTRLS-QEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGG 68 Query: 61 LEICRQIRILGHSTPVLFLT--AKDTLDDRVAGLDAGGDDYLIK 102 +E C QI+ + PVL LT ++ L +R+ ++A Y +K Sbjct: 69 IEACHQIKKIHPQLPVLILTSHSQPALINRL--IEAQAQGYCVK 110 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 45.4 bits (106), Expect = 2e-07 Identities = 30/103 (29%), Positives = 54/103 (52%), Gaps = 4/103 (3%) Query: 4 ILLVDDENALTEPLSKALGHQG--HTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 I L++DE+ + + L AL + + A G+ GL M + D++I+D LP ++G+ Sbjct: 6 IALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGI 65 Query: 62 EICRQIR--ILGHSTPVLFLTAKDTLDDRVAGLDAGGDDYLIK 102 ++ +Q++ L V+ LT D + +A AG D Y +K Sbjct: 66 DVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMK 108 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 45.1 bits (105), Expect = 2e-07 Identities = 30/103 (29%), Positives = 54/103 (52%), Gaps = 3/103 (2%) Query: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEI 63 +LLVDD+ LS+AL I A+ G+ +A A ++ L+IL + ++ GL Sbjct: 9 VLLVDDQRENLVALSRALDSLPVEIITANSGQEAIATAATTEFALMILAQEMSELDGLNT 68 Query: 64 CRQIRI--LGHSTPVLFLTAKDTLDDRVAGLD-AGGDDYLIKP 103 + +R L TP++FL ++ + +A ++ G D+L +P Sbjct: 69 AKILRSFPLAEQTPIIFLARQEIITKAMAEINILGLVDFLAQP 111 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.317 0.137 0.401 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 18,087 Number of Sequences: 78 Number of extensions: 674 Number of successful extensions: 69 Number of sequences better than 1.0e-05: 32 Number of HSP's better than 0.0 without gapping: 22 Number of HSP's successfully gapped in prelim test: 10 Number of HSP's that attempted gapping in prelim test: 10 Number of HSP's gapped (non-prelim): 42 length of query: 234 length of database: 48,235 effective HSP length: 60 effective length of query: 174 effective length of database: 43,555 effective search space: 7578570 effective search space used: 7578570 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.6 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002731 slr1909 (213 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002731 slr1909 389 e-111 SYNE-PCC-01-002635 slr1783 134 3e-34 SYNE-PCC-01-002033 slr0947 97 5e-23 SYNE-PCC-01-002086 slr1042 89 1e-20 SYNE-PCC-01-001461 slr0115 89 1e-20 SYNE-PCC-01-002489 slr1588 88 2e-20 SYNE-PCC-01-000608 sll0921 84 5e-19 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 83 8e-19 SYNE-PCC-01-001575 slr0312 82 2e-18 SYNE-PCC-01-001306 sll1905 82 2e-18 SYNE-PCC-01-000414 sll0649 81 3e-18 SYNE-PCC-01-001133 sll1673 78 3e-17 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 74 4e-16 SYNE-PCC-01-001437 slr0081 73 6e-16 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 72 1e-15 SYNE-PCC-01-002672 slr1837 71 2e-15 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 69 1e-14 SYNE-PCC-01-001160 sll1708 68 3e-14 SYNE-PCC-01-002951 ssl0564 67 3e-14 SYNE-PCC-01-000242 sll0396 65 1e-13 SYNE-PCC-01-002873 slr2098 64 4e-13 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 63 9e-13 SYNE-PCC-01-002788 slr1982 62 1e-12 SYNE-PCC-01-002879 slr2104 62 2e-12 SYNE-PCC-01-002486 slr1584 60 4e-12 SYNE-PCC-01-001075 sll1592 59 1e-11 SYNE-PCC-01-000800 sll1228 57 5e-11 SYNE-PCC-01-000523 sll0797 55 2e-10 SYNE-PCC-01-002617 slr1759 54 4e-10 SYNE-PCC-01-000518 sll0789 52 1e-09 SYNE-PCC-01-002618 slr1760 50 4e-09 SYNE-PCC-01-000877 sll1330 50 6e-09 SYNE-PCC-01-001132 sll1672 48 2e-08 SYNE-PCC-01-000511 sll0782 45 2e-07 SYNE-PCC-01-002221 slr1213 44 4e-07 SYNE-PCC-01-001039 sll1544 42 2e-06 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 389 bits (1000), Expect = e-111 Identities = 197/213 (92%), Positives = 197/213 (92%) Query: 1 MSQSKENYHXXXXXXXXXXXXXXXXYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIM 60 MSQSKENYH YLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIM Sbjct: 1 MSQSKENYHLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIM 60 Query: 61 MPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQ 120 MPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQ Sbjct: 61 MPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQ 120 Query: 121 VQSCLRQADRLLQHNNHPLEDNARVQVARDVELTPTETKVIQLVAQGLANREIADHLKVS 180 VQSCLRQADRLLQHNNHPLEDNARVQVARDVELTPTETKVIQLVAQGLANREIADHLKVS Sbjct: 121 VQSCLRQADRLLQHNNHPLEDNARVQVARDVELTPTETKVIQLVAQGLANREIADHLKVS 180 Query: 181 QRTVESHVSNMLNKTGLHNRTELARWAIQKSIA 213 QRTVESHVSNMLNKTGLHNRTELARWAIQKSIA Sbjct: 181 QRTVESHVSNMLNKTGLHNRTELARWAIQKSIA 213 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 134 bits (336), Expect = 3e-34 Identities = 75/207 (36%), Positives = 124/207 (59%), Gaps = 20/207 (9%) Query: 26 YLEYQG-YQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPV 84 +LE G ++V A N EA D L +P +++ DIMMP++DGY F++++R++ +PV Sbjct: 74 FLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQFLQKLREDARFQSLPV 133 Query: 85 MFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCL--RQADRLLQHNNHPLED- 141 +FL+A+G + +R++G G D +++KPF+P+EL A V++ L +QA + L++ Sbjct: 134 VFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNLLARQQASSDAGSESAKLQEI 193 Query: 142 -----NARVQVAR-----------DVELTPTETKVIQLVAQGLANREIADHLKVSQRTVE 185 + Q+ + ++ TP E V+ LV+QGL N+EIA LK S R VE Sbjct: 194 YQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLVSQGLMNKEIAAQLKTSVRNVE 253 Query: 186 SHVSNMLNKTGLHNRTELARWAIQKSI 212 +VS + KTG ++RTEL R+A+Q + Sbjct: 254 KYVSRLFTKTGTNSRTELVRFALQHGL 280 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 96.7 bits (239), Expect = 5e-23 Identities = 60/187 (32%), Positives = 100/187 (53%), Gaps = 26/187 (13%) Query: 31 GYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAK 90 GY+V TA +G EA+ + PD++V D+MMP++DGY +++R+ DI P++ L+A Sbjct: 20 GYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQELRKESDI---PIIMLTAL 76 Query: 91 GQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADR----------LLQHNNHPLE 140 G +R+ GL +GAD Y+ KPF P+EL A+++S LR+ D+ +LQ ++ Sbjct: 77 GDVADRITGLELGADDYVVKPFSPKELEARIRSVLRRVDKNGMPGIPSSGVLQIATIRID 136 Query: 141 DNARVQVARD--VELTPTETKVIQLV----AQGLANREIADHL-------KVSQRTVESH 187 N R D + LT E +++L+ + + EI + V R V+ H Sbjct: 137 TNKRQVYKGDERIRLTGMEFSLLELLVSRSGEPFSRSEILQEVWGYTPERHVDTRVVDVH 196 Query: 188 VSNMLNK 194 +S + K Sbjct: 197 ISRLRAK 203 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 89.0 bits (219), Expect = 1e-20 Identities = 42/100 (42%), Positives = 64/100 (64%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMF 86 L+ G+QVT A +G EAL+ L PD++V DI+MP M+GY +++ +P +PV+ Sbjct: 47 LKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEVCRRIKSDPKTKNVPVIM 106 Query: 87 LSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLR 126 S+KG+ +R G+ GAD Y+AKPF+P EL ++ LR Sbjct: 107 CSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLLR 146 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 88.6 bits (218), Expect = 1e-20 Identities = 42/111 (37%), Positives = 72/111 (64%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMF 86 LE GY V A +G + L PD+I+ D+M+P++DG+ +++R++ + IPV+ Sbjct: 21 LEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTVCQRLRRDERTADIPVLM 80 Query: 87 LSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQHNNH 137 L+A GQ ++++G + GAD Y+ KPF+ EE+ A+V++ LR+ DR+ Q H Sbjct: 81 LTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALLRRTDRIPQAAKH 131 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 88.2 bits (217), Expect = 2e-20 Identities = 52/154 (33%), Positives = 84/154 (54%), Gaps = 7/154 (4%) Query: 27 LEYQGYQVTTAGNGREALDLLTT--TVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPV 84 L + Y++ A NG AL LL + +PD+I+CD+MMPEMDG+ I +++N + IP Sbjct: 21 LSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGHGLITALQKNAKTAAIPF 80 Query: 85 MFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQHNNHPLEDNAR 144 +FL+A G + KG+N GAD Y+ KPF+ E+L V S L++ +L + + Sbjct: 81 IFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNSRLQKQAKLSAFYQGSISSSLT 140 Query: 145 VQVARD-----VELTPTETKVIQLVAQGLANREI 173 + R LTP E ++ + + GL ++ Sbjct: 141 ERPRRSGTIGTPTLTPDEAEIWRDLEVGLNTGQV 174 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 83.6 bits (205), Expect = 5e-19 Identities = 56/189 (29%), Positives = 95/189 (50%), Gaps = 10/189 (5%) Query: 34 VTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQS 93 V A NGR L ++ T PD+++ DI +P+M+G +Q+++ P V+ L+ Q Sbjct: 32 VGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQE 91 Query: 94 HNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQ--------ADRLLQH--NNHPLEDNA 143 + + GAD Y K E L +Q+ A +L H P E ++ Sbjct: 92 ETVLAAFSAGADAYCMKDSRTELLIEAIQATHGGFAWIDPAIARIVLAHAPGAEPSEPSS 151 Query: 144 RVQVARDVELTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTEL 203 + + LT E +V+QL+ G +N +IA+ L ++ TV++HV N+LNK ++RT+ Sbjct: 152 PSRTSLSYGLTERELEVLQLIVDGCSNADIAEKLYITVGTVKTHVRNILNKLCANDRTQA 211 Query: 204 ARWAIQKSI 212 A AI+ + Sbjct: 212 AVRAIRSGL 220 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 82.8 bits (203), Expect = 8e-19 Identities = 55/192 (28%), Positives = 100/192 (52%), Gaps = 32/192 (16%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMF 86 LE +G+ V TA NG EAL L + +++ D+MMP+++G ++++R+ +S +PVM Sbjct: 21 LELEGFDVETANNGLEALQKLNESYK-LVLLDVMMPKLNGIETLKEIRK---VSNVPVMM 76 Query: 87 LSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQA---------------DRL 131 L+A+G+ +RV GL +GAD + KPF EL A++++ LR++ D + Sbjct: 77 LTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAILRRSASPSNNISNVEILSFDGI 136 Query: 132 LQHNNHPLEDNARVQVARDVELTPTETKVIQLVAQGLANREIADHLKVS---------QR 182 H +H + ++ LT E K++ L+ + N + L + R Sbjct: 137 TLHFSHGI----ATYNEENLNLTDYEFKILCLLLKSKGNVVSREELSLEVMEKPLTPFDR 192 Query: 183 TVESHVSNMLNK 194 +++ H+SN+ K Sbjct: 193 SLDMHISNLRRK 204 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 81.6 bits (200), Expect = 2e-18 Identities = 53/180 (29%), Positives = 96/180 (53%), Gaps = 9/180 (5%) Query: 34 VTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQS 93 + A NG +A+ L PD+ + D+ MPE++G A I + + + ++ L+ Sbjct: 35 IAQAENGEQAIALFEEHQPDVTLMDLRMPEVEGVAAISAICAI--VKFARIIVLTTYDSD 92 Query: 94 HNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQHNNHPLEDNAR-VQVARDVE 152 + +GL GA Y+ K EP+EL +++ R + P + A+ VQ + E Sbjct: 93 EDIYRGLQAGAKGYLLKETEPDELLNAIRTVHRGQKYI------PPDVGAKLVQRLSNPE 146 Query: 153 LTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELARWAIQKSI 212 L+ E +V+ +AQG++N +IA L + + TV+SHV+ +LNK + +RT+ A+++ I Sbjct: 147 LSERELEVLGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGI 206 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 81.6 bits (200), Expect = 2e-18 Identities = 45/122 (36%), Positives = 71/122 (58%), Gaps = 1/122 (0%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMF 86 LE +GY T +G EAL +T PD+I+ D+MMP MDG ++++Q+P IPV+F Sbjct: 37 LEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIF 96 Query: 87 LSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQHNNHPLEDNARVQ 146 L+A + + ++ GA Y+ KPF P EL A+V++ L + + + +H L + AR Sbjct: 97 LTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVKTHL-ELKQTRDNLHHTLLEQARTA 155 Query: 147 VA 148 A Sbjct: 156 EA 157 Score = 52.8 bits (125), Expect = 9e-10 Identities = 32/97 (32%), Positives = 51/97 (52%), Gaps = 1/97 (1%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIP-VM 85 L+ GY V NG+EAL L D+++ D+ MPEMDG E +R++ S P ++ Sbjct: 759 LKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTATEHIRRSQGRSERPWII 818 Query: 86 FLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQ 122 ++A +R + L G + Y++KP E L +Q Sbjct: 819 AVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQALQ 855 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 80.9 bits (198), Expect = 3e-18 Identities = 56/195 (28%), Positives = 93/195 (47%), Gaps = 32/195 (16%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMF 86 LE + + +G L + VPD+IV D+M+P++DG ++RQ P ++ Sbjct: 31 LEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEVCTRIRQQPGSKDPYILM 90 Query: 87 LSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADR------LLQHNNHPLE 140 L+AKG+ +R+ GL+ GAD Y+ KPF P EL A+V++ LR+ R + NH Sbjct: 91 LTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALLRRQLRQGQPVGQIYRTNHFQV 150 Query: 141 DNARVQVAR-------DVELTPTETKVI--------------QLVAQGLANREIADHLKV 179 D + Q +R ++ELT E ++ QL+ + N D Sbjct: 151 DLDQHQASRYQGDRQEELELTGLEFNLLATFMSYPGRVWNRTQLIEKLWGNDFFGD---- 206 Query: 180 SQRTVESHVSNMLNK 194 +R V++H+ + K Sbjct: 207 -ERVVDTHIRRLRKK 220 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 77.8 bits (190), Expect = 3e-17 Identities = 35/92 (38%), Positives = 58/92 (63%) Query: 31 GYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAK 90 GY V + +G+ AL L PD+I+ DI MP+MDGY E +++ ++ IP++F+SA Sbjct: 32 GYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQVCEMIKKEEELQDIPIIFISAL 91 Query: 91 GQSHNRVKGLNVGADIYMAKPFEPEELAAQVQ 122 G + ++VK G Y+ KPF+ EE+ A+++ Sbjct: 92 GDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 73.9 bits (180), Expect = 4e-16 Identities = 48/181 (26%), Positives = 94/181 (51%), Gaps = 16/181 (8%) Query: 26 YLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVM 85 +L + Y V A + + A++ + P +I+ D M+P G FI+ +++ + IP++ Sbjct: 21 FLSQKYYDVIEASDFKTAINKIKEN-PKLILLDWMLPGRSGIQFIQYIKKQESYAAIPII 79 Query: 86 FLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLR----QADRLLQHNNHPLED 141 L+AK + + LN GAD Y+ KPF P+ L A++++ R Q + +Q + +++ Sbjct: 80 MLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRIYEQQSQFIQIDELSIDE 139 Query: 142 NAR--VQVARDVELTPTETKVIQLV---------AQGLANREIADHLKVSQRTVESHVSN 190 NA+ +++ L+ TE K++ + L NR + L+V RTV+S++ Sbjct: 140 NAQRVFFQQQEINLSSTEFKLLHFFMRHPEKVYSREQLLNRIWHNDLEVEYRTVDSYIRR 199 Query: 191 M 191 + Sbjct: 200 L 200 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 73.2 bits (178), Expect = 6e-16 Identities = 49/142 (34%), Positives = 77/142 (54%), Gaps = 16/142 (11%) Query: 27 LEYQGYQVTTAGNGREALDLLTT-------TVPDMIVCDIMMPEMDGYAFIEQVRQNPDI 79 L+ +GY+V +GR+AL LL D+I+ DIM+P+++G +R D Sbjct: 50 LQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIMLPQVNGLDVCRSLRFGGDN 109 Query: 80 SWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQHNNHPL 139 + P++ +SAKG +V GL VGAD Y+ KPF +EL A+ ++ +R+ L NN Sbjct: 110 T--PILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARCRAMIRRQG--LAGNN--- 162 Query: 140 EDNARVQVARDVELTPTETKVI 161 A + RD+ L P E +V+ Sbjct: 163 --IAPFRKFRDLVLYPQECRVL 182 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 72.4 bits (176), Expect = 1e-15 Identities = 51/181 (28%), Positives = 92/181 (50%), Gaps = 17/181 (9%) Query: 31 GYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAK 90 G+ V +G+ + LT+ D +V D+ +P++DG ++Q R N +PV+ L+A+ Sbjct: 24 GFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEVLQQWRSNHQD--VPVLILTAR 81 Query: 91 GQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQA----DRLLQHNNHPLEDNARVQ 146 RVKGL GAD Y+ KPF E+AA++Q+ +R+ +++ L+ N R Sbjct: 82 DTLDERVKGLQSGADDYLCKPFALAEVAARLQALIRRRYGYHHSVIEQAGVKLDQNQRSV 141 Query: 147 VARD--VELTPTETKVIQLVA----QGLANREIADHL-----KVSQRTVESHVSNMLNKT 195 + + LT E K+++L + L+ I + L ++S ++ H+ N+ K Sbjct: 142 WLNNQPISLTSREYKLLELFMLNKDRVLSRSSIEEKLSSWDEEISSGALDVHIYNLRQKL 201 Query: 196 G 196 G Sbjct: 202 G 202 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 71.2 bits (173), Expect = 2e-15 Identities = 53/182 (29%), Positives = 87/182 (47%), Gaps = 22/182 (12%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMF 86 L +QG+ + A G+ L + D+++ D M+P++ G Q+R + PV+F Sbjct: 21 LGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGLEICRQIRILGHST--PVLF 78 Query: 87 LSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQ--------------ADRLL 132 L+AK +RV GL+ G D Y+ KPFE EL A+V++ LR+ + LL Sbjct: 79 LTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRALLRRQSHGETITETLGAVKNNLL 138 Query: 133 QHNNHPLEDNARVQVARDVELTPTETKV------IQLVAQGLANREIADHLKVSQRTVES 186 NN L+ +V + + +E +V +Q Q L++ EI HL + S Sbjct: 139 SVNNVSLDVANQVAYCQGQRIALSEKEVALLTLFLQAPGQILSHEEIYSHLWPGESPPSS 198 Query: 187 HV 188 +V Sbjct: 199 NV 200 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 68.9 bits (167), Expect = 1e-14 Identities = 49/179 (27%), Positives = 89/179 (49%), Gaps = 27/179 (15%) Query: 34 VTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLS-AKGQ 92 V +G E + + T PD+I+ D+ M + G ++ +R + I ++ +S AK Sbjct: 33 VADVSSGTEGISVALQTSPDVIILDLNMKGLSGLDTLKGLRAEGVDARILILTVSDAKND 92 Query: 93 SHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQ-----------HNNHPLED 141 + + + GAD Y+ K EP+ L Q++ + Q + +L H ++PL+ Sbjct: 93 IYTLI---DAGADGYLLKDTEPDTLLEQIKR-IAQGEVILSDSIKNLLLERTHEDNPLDS 148 Query: 142 NARVQVARDVELTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNR 200 LT E V++ +A GL+N++IA L +S+ TV+ H+ N+L K +H+R Sbjct: 149 -----------LTDREMGVLRQIATGLSNKQIAAQLFISEETVKVHIRNLLRKLNVHSR 196 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 67.8 bits (164), Expect = 3e-14 Identities = 48/181 (26%), Positives = 87/181 (48%), Gaps = 12/181 (6%) Query: 39 NGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVK 98 NG A+ PD+IV DI +P +DG +Q++Q I ++ L++ + + Sbjct: 50 NGYGAVQQAAVLNPDLIVMDIGLPGLDGIEATKQIKQTSP--QIHIVVLTSHTLPNEIIA 107 Query: 99 GLNVGADIYMAKPFEPEELAAQVQSCLR-------QADRLLQHNNHPLEDNARVQVARDV 151 L+ GAD Y K E L + + Q R++ N P + V+ Sbjct: 108 ALSSGADAYCVKGATLERLILAIAAAQDGATYLDPQIARVVVENLKPPVPEGQADVS--- 164 Query: 152 ELTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELARWAIQKS 211 L+ E V++L+ +G +N+EIA L +S T+++HV ++NK + +R + A A++ Sbjct: 165 SLSEREIDVLKLIVEGKSNQEIAQTLYLSTNTIKTHVRGIMNKLSVDDRVQAAVIALRSG 224 Query: 212 I 212 + Sbjct: 225 L 225 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 67.4 bits (163), Expect = 3e-14 Identities = 29/57 (50%), Positives = 44/57 (77%) Query: 153 LTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELARWAIQ 209 L+ E +++ LVA GL N+E+++ L++S+RTV++HVSN+L KT NR EL RWA+Q Sbjct: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQ 68 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 65.5 bits (158), Expect = 1e-13 Identities = 45/161 (27%), Positives = 83/161 (51%), Gaps = 8/161 (4%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMF 86 L+Y+GY V+ A +G + PD+I+ + +P M G ++R+ S IP++ Sbjct: 22 LKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLELCRRLREMG--SRIPIIL 79 Query: 87 LSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQ----ADRLLQHNNHPLEDN 142 ++AK RV GL+ GAD Y+ KPF +E A+++ LR+ +D +LQ + + Sbjct: 80 ITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARIRVQLRRTHTTSDEVLQFADLRFNRS 139 Query: 143 ARVQVARDVELTPTETKVIQLVAQGLAN-REIADHLKVSQR 182 R ++ R L K +L+ L++ R++ ++ +R Sbjct: 140 TR-EIQRGDRLIDLTAKEFELLDYLLSHARQVLTREQILER 179 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 63.9 bits (154), Expect = 4e-13 Identities = 31/87 (35%), Positives = 49/87 (56%) Query: 31 GYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAK 90 G+ V A NG AL+ L +++ D+ MPEMDG +RQNP + +P++ ++A Sbjct: 948 GFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEATIAIRQNPRYAQLPIVAMTAN 1007 Query: 91 GQSHNRVKGLNVGADIYMAKPFEPEEL 117 +R + L G + ++ KP EPEEL Sbjct: 1008 VMQGDRERCLQAGMNDHLGKPIEPEEL 1034 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 62.8 bits (151), Expect = 9e-13 Identities = 32/101 (31%), Positives = 56/101 (55%), Gaps = 3/101 (2%) Query: 28 EYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFL 87 E +GY V A NG E +L +++V DI +P +G ++R+ + P++FL Sbjct: 24 EAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLLLARELREELSL---PLIFL 80 Query: 88 SAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQA 128 + + +++ GL +GAD Y+ KPF P EL + ++ L +A Sbjct: 81 TGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRA 121 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 62.0 bits (149), Expect = 1e-12 Identities = 27/96 (28%), Positives = 58/96 (60%) Query: 30 QGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSA 89 +GY+V A +G +A+ + + P +I+ D+ +P +DG+ +Q++ +PD + IP++ L+A Sbjct: 27 KGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTATKQIKGHPDGAHIPIIALTA 86 Query: 90 KGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCL 125 + +R + + G D Y KP E + L ++++ + Sbjct: 87 HAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 61.6 bits (148), Expect = 2e-12 Identities = 31/91 (34%), Positives = 53/91 (58%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMF 86 L +G +V A NG+EAL LLT+ D I+ DI MP ++GY +RQ +P++ Sbjct: 737 LTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIA 796 Query: 87 LSAKGQSHNRVKGLNVGADIYMAKPFEPEEL 117 ++A + ++ K L+ G + ++ KP +P+ L Sbjct: 797 MTANAMAGDQEKALDAGMNDHLTKPIKPDLL 827 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 60.5 bits (145), Expect = 4e-12 Identities = 49/183 (26%), Positives = 93/183 (50%), Gaps = 17/183 (9%) Query: 27 LEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMF 86 L Q Y V A + A D + D+++ D+M+PE+DG ++ R + + +P++ Sbjct: 20 LSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITLCQKWRSHSYL--MPILM 77 Query: 87 LSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQH--NNHPLE-DNA 143 ++A+ ++++ GL+ GAD Y+ KP + EL A+V++ LR+ Q P+ D + Sbjct: 78 MTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRGCATCQPVLEWGPIRLDPS 137 Query: 144 RVQVARDVE---LTPTETKVIQLVAQG----LANREIADHL-----KVSQRTVESHVSNM 191 +V+ D E LT E +++L+ + L+ I D + + TV+ HV ++ Sbjct: 138 TYEVSYDNEVLSLTRKEYSILELLLRNGRRVLSRSMIIDSIWKLESPPEEDTVKVHVRSL 197 Query: 192 LNK 194 K Sbjct: 198 RQK 200 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 58.9 bits (141), Expect = 1e-11 Identities = 45/188 (23%), Positives = 87/188 (46%), Gaps = 15/188 (7%) Query: 37 AGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQ-NPDISWIPVMFLSAKGQSHN 95 A +G A+ + + D+++ D+ +P + G Q+++ +P + PV+ L++ Q Sbjct: 39 AEDGETAIAYVNQQLFDVVILDVGLPGIGGIEACHQIKKIHPQL---PVLILTSHSQPAL 95 Query: 96 RVKGLNVGADIYMAKPFEPEELAAQVQSCL-----------RQADRLLQHNNHPLEDNAR 144 + + A Y K E L ++S ++ QH++ Sbjct: 96 INRLIEAQAQGYCVKGVAAETLVLAIRSVAAGAFWWDAIASQEIQTAFQHSSSTGAVLPL 155 Query: 145 VQVARDVELTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELA 204 + LT E +++ LVA+G +N+EIAD L ++ TV HV +L K + +RT+ A Sbjct: 156 ADADGENPLTKRELEILSLVAKGKSNQEIADELYIAPGTVRVHVHTILRKLEVRDRTQAA 215 Query: 205 RWAIQKSI 212 AI++ + Sbjct: 216 LLAIERRL 223 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 57.0 bits (136), Expect = 5e-11 Identities = 29/89 (32%), Positives = 50/89 (56%) Query: 31 GYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAK 90 G+ V A NG A+ L + P +I+ D+ MP +DG + ++++ +P ++ L+A Sbjct: 441 GFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTAS 500 Query: 91 GQSHNRVKGLNVGADIYMAKPFEPEELAA 119 R + L+ G D +++KPF PEEL A Sbjct: 501 AFEGERAEILSAGCDDFLSKPFRPEELIA 529 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 55.1 bits (131), Expect = 2e-10 Identities = 32/99 (32%), Positives = 56/99 (56%), Gaps = 4/99 (4%) Query: 32 YQVTTAGNGREALDLLTT--TVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSA 89 Y V +G +A D L T + + D ++P + G +++R + +PV+ L+A Sbjct: 25 YVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGLELCQKLRTQGNS--LPVLMLTA 82 Query: 90 KGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQA 128 G+ NRV+GL+ GAD Y+ KPF EL A++++ R++ Sbjct: 83 LGEPENRVEGLDAGADDYLTKPFVMAELLARLRALQRRS 121 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 53.9 bits (128), Expect = 4e-10 Identities = 29/93 (31%), Positives = 48/93 (51%), Gaps = 1/93 (1%) Query: 31 GYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIP-VMFLSA 89 GY V A NG+E +D L D+++ D+ MP MDG +RQ + P ++ ++A Sbjct: 1213 GYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACRHIRQTLPLERQPRIVAMTA 1272 Query: 90 KGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQ 122 +R + L+ G D Y++KP +L +Q Sbjct: 1273 NAMPGDRQECLDAGMDGYISKPISINQLRKVLQ 1305 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 52.4 bits (124), Expect = 1e-09 Identities = 28/78 (35%), Positives = 48/78 (61%), Gaps = 2/78 (2%) Query: 54 MIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFE 113 + + D M+P + G +++R S +P++ L+AK Q +RV+GL+ GAD Y+ KPF Sbjct: 49 LAIFDWMVPGLSGLELCQKLRGQR--SSLPILMLTAKDQIADRVEGLDAGADDYLIKPFG 106 Query: 114 PEELAAQVQSCLRQADRL 131 EL A+++S R++ L Sbjct: 107 MAELLARLRSLQRRSPEL 124 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 50.4 bits (119), Expect = 4e-09 Identities = 39/127 (30%), Positives = 61/127 (48%), Gaps = 12/127 (9%) Query: 26 YLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIE---QVRQNPDISWI 82 YL+ +G++V A NG EAL P++++ D +MP MDG+A + ++ QNP Sbjct: 30 YLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGFACCQALMKIYQNPSPL-- 87 Query: 83 PVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQHN----NHP 138 V+ ++ + + GA Y+ KP L +V+ L Q LQH N Sbjct: 88 -VLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQ--NRLQHQLESVNQM 144 Query: 139 LEDNARV 145 LE A+V Sbjct: 145 LERLAKV 151 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 50.1 bits (118), Expect = 6e-09 Identities = 45/184 (24%), Positives = 79/184 (42%), Gaps = 18/184 (9%) Query: 26 YLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVM 85 +L+ GY V +A +P + V D + + DG + Q + Sbjct: 22 HLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIELCRWLYQQHQSM---IF 78 Query: 86 FLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQ-----ADRLLQHNNHPLE 140 LSAK + V GL GAD Y+ KPF +E A+++ +R+ A LL + ++ Sbjct: 79 ILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLIRRVRTVAAPLLLDYGVLKID 138 Query: 141 -DNARVQVARD-VELTPTETKVIQLVAQGLAN--------REIADHLKVSQRTVESHVSN 190 RV+ + V+LTP E ++ ++ Q + R + RT+++HV + Sbjct: 139 LVQRRVEYQGNFVDLTPQEFSLLYVLTQAEGSALSRTELLRRAWPEAIDNPRTIDTHVLS 198 Query: 191 MLNK 194 + K Sbjct: 199 LRKK 202 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 48.1 bits (113), Expect = 2e-08 Identities = 25/82 (30%), Positives = 43/82 (52%) Query: 31 GYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAK 90 G+++ A NG+EA+ L + P +I D+ MP MDGY + ++ + V+ L+A Sbjct: 653 GFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEATKYIKGQVKGNATAVVALTAS 712 Query: 91 GQSHNRVKGLNVGADIYMAKPF 112 + L+ G D ++ KPF Sbjct: 713 VLEEEKAIVLSAGCDDFLRKPF 734 >SYNE-PCC-01-000511 sll0782 Length = 369 Score = 44.7 bits (104), Expect = 2e-07 Identities = 20/48 (41%), Positives = 33/48 (68%) Query: 153 LTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNR 200 L+ E +++ L+AQGL +R+IA+ L +S+ TV+ HV+ L+K NR Sbjct: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNR 356 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 43.9 bits (102), Expect = 4e-07 Identities = 37/156 (23%), Positives = 67/156 (42%), Gaps = 10/156 (6%) Query: 27 LEYQGYQVTT-AGNGREALDLLTTTVPDMIVCDIMMP-EMDGYAFIEQVRQNPDISWIPV 84 L+ GY++ A +G AL + PD+++ DI + E+DG E+++ + IP+ Sbjct: 22 LKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEIDGIEVAERIKS---LYSIPI 78 Query: 85 MFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCLRQADRLLQHNNHPLEDNAR 144 ++L+A + Y+ KPF E+L + V + Q P ED Sbjct: 79 VYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIAIANH----QQQRKPEEDTLS 134 Query: 145 VQVARDVELTPTETKVIQLVAQGLANREIADHLKVS 180 L PT + + + QG+ +A + +S Sbjct: 135 TSTGH-YRLQPTLDYIEEHLDQGITVEFLAGAIGMS 169 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 41.6 bits (96), Expect = 2e-06 Identities = 31/103 (30%), Positives = 49/103 (47%), Gaps = 5/103 (4%) Query: 103 GAD-IYMAKPFEPEELAAQVQSCLRQADRLLQHNNHPLEDNARVQVARDVELTPTETKVI 161 GAD I++ E+ V+ CL Q + + D + Q +D ELT E ++ Sbjct: 120 GADAIFLESSLGNGEINLAVE-CLLQGRTYIDSRLEAIADYRKSQ--KD-ELTQREVAIL 175 Query: 162 QLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELA 204 +LVA+G N EI L ++ TV +V ++ K +RT A Sbjct: 176 RLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAA 218 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.317 0.131 0.374 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 18,166 Number of Sequences: 78 Number of extensions: 728 Number of successful extensions: 64 Number of sequences better than 1.0e-05: 36 Number of HSP's better than 0.0 without gapping: 34 Number of HSP's successfully gapped in prelim test: 2 Number of HSP's that attempted gapping in prelim test: 8 Number of HSP's gapped (non-prelim): 39 length of query: 213 length of database: 48,235 effective HSP length: 59 effective length of query: 154 effective length of database: 43,633 effective search space: 6719482 effective search space used: 6719482 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002778 slr1969 (750 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002778 slr1969 1407 0.0 SYNE-PCC-01-002617 slr1759 171 1e-44 SYNE-PCC-01-000295 sll0474 152 3e-39 SYNE-PCC-01-000800 sll1228 147 1e-37 SYNE-PCC-01-001517 slr0222 136 3e-34 SYNE-PCC-01-001280 sll1871 135 4e-34 SYNE-PCC-01-002879 slr2104 134 1e-33 SYNE-PCC-01-001132 sll1672 130 1e-32 SYNE-PCC-01-002873 slr2098 129 3e-32 SYNE-PCC-01-002220 slr1212 126 3e-31 SYNE-PCC-01-001509 slr0210 121 9e-30 SYNE-PCC-01-001306 sll1905 118 7e-29 SYNE-PCC-01-000891 sll1353 115 6e-28 SYNE-PCC-01-000985 sll1475 109 3e-26 SYNE-PCC-01-000983 sll1473 100 2e-23 SYNE-PCC-01-000542 sll0821 99 5e-23 SYNE-PCC-01-001294 sll1888 96 3e-22 SYNE-PCC-01-001690 slr0473 74 1e-15 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 1407 bits (3642), Expect = 0.0 Identities = 724/750 (96%), Positives = 724/750 (96%) Query: 1 MLPAFSPIFRRLLPAVTFERLLRFWRTLAQQTGDGVQCFVGDXXXXXXXXXXXXXXEAEV 60 MLPAFSPIFRRLLPAVTFERLLRFWRTLAQQTGDGVQCFVGD EAEV Sbjct: 1 MLPAFSPIFRRLLPAVTFERLLRFWRTLAQQTGDGVQCFVGDLPSSLKPPPGPSVLEAEV 60 Query: 61 DHRFALLVSPGQWALLEGEQISPHHYAVSITFAQGIIEDFIQKQNLPVVAEAMPHRPETP 120 DHRFALLVSPGQWALLEGEQISPHHYAVSITFAQGIIEDFIQKQNLPVVAEAMPHRPETP Sbjct: 61 DHRFALLVSPGQWALLEGEQISPHHYAVSITFAQGIIEDFIQKQNLPVVAEAMPHRPETP 120 Query: 121 SGPTIAEQLTLGLLEILNSDSTSFSPEPSLQDSLQASQVKLLSQVIAQIRQSLDLSEILN 180 SGPTIAEQLTLGLLEILNSDSTSFSPEPSLQDSLQASQVKLLSQVIAQIRQSLDLSEILN Sbjct: 121 SGPTIAEQLTLGLLEILNSDSTSFSPEPSLQDSLQASQVKLLSQVIAQIRQSLDLSEILN 180 Query: 181 NAVTAVQKFLFVDRLVIYQFHYSQPSLTPLEENQIPAPRPRQQYGEVTYEARRSPEIDTM 240 NAVTAVQKFLFVDRLVIYQFHYSQPSLTPLEENQIPAPRPRQQYGEVTYEARRSPEIDTM Sbjct: 181 NAVTAVQKFLFVDRLVIYQFHYSQPSLTPLEENQIPAPRPRQQYGEVTYEARRSPEIDTM 240 Query: 241 LGIMTENDCFSQVFSYEQKYLKGAVVAVSDIENHYSSSYCLVGLLQRYQVRAKLVAPIIV 300 LGIMTENDCFSQVFSYEQKYLKGAVVAVSDIENHYSSSYCLVGLLQRYQVRAKLVAPIIV Sbjct: 241 LGIMTENDCFSQVFSYEQKYLKGAVVAVSDIENHYSSSYCLVGLLQRYQVRAKLVAPIIV 300 Query: 301 EGQLWGLLIAHQCHHPRQWLDSEKNFLGQIGEHLAVAIVQSLLYSEVQKQKNNFEKRVIE 360 EGQLWGLLIAHQCHHPRQWLDSEKNFLGQIGEHLAVAIVQSLLYSEVQKQKNNFEKRVIE Sbjct: 301 EGQLWGLLIAHQCHHPRQWLDSEKNFLGQIGEHLAVAIVQSLLYSEVQKQKNNFEKRVIE 360 Query: 361 RTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQ 420 RTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQ Sbjct: 361 RTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQ 420 Query: 421 YYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQI 480 YYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQI Sbjct: 421 YYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQI 480 Query: 481 NLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGTVILRIWKESNQAIFQVED 540 NLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGTVILRIWKESNQAIFQVED Sbjct: 481 NLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGTVILRIWKESNQAIFQVED 540 Query: 541 TGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTI 600 TGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTI Sbjct: 541 TGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTI 600 Query: 601 FTTVIPQQNFPPTTKGQVQDKLDAAMPFNSSVIVIEQDEEIATLICELLTVANYQVIWLI 660 FTTVIPQQNFPPTTKGQVQDKLDAAMPFNSSVIVIEQDEEIATLICELLTVANYQVIWLI Sbjct: 601 FTTVIPQQNFPPTTKGQVQDKLDAAMPFNSSVIVIEQDEEIATLICELLTVANYQVIWLI 660 Query: 661 DTTNALQQVELLQPGLIIVDGDFVDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALS 720 DTTNALQQVELLQPGLIIVDGDFVDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALS Sbjct: 661 DTTNALQQVELLQPGLIIVDGDFVDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALS 720 Query: 721 QKGIDDYXXXXXXXXXXXXRVQSIQQEPLR 750 QKGIDDY RVQSIQQEPLR Sbjct: 721 QKGIDDYLLKPLQPELLLQRVQSIQQEPLR 750 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 171 bits (432), Expect = 1e-44 Identities = 139/510 (27%), Positives = 235/510 (46%), Gaps = 61/510 (11%) Query: 151 QDSLQA--SQVKLLSQVIAQIRQSLDLSEILNNAVTAVQKFLFVDRLVIYQFHYSQPSLT 208 QD LQ +Q+ L+ ++ +IR+SL + I A V V R +I+ + + Sbjct: 575 QDILQKKLNQILLMRKISQEIRRSLQPTLIFQTAARQVGNVFAVSRCLIHNYSEATTLQV 634 Query: 209 PLEENQIPAPRPRQQYGEVTYEARRSPEIDTMLGIMTENDCFSQVFSYEQKYLKG-AVVA 267 P+ + GE+ E P I ++G +A Sbjct: 635 PVVAEYLGGQFTSLLAGEIAVEQAYDPTI-----------------------IQGDRAMA 671 Query: 268 VSDIENHYSSSYCLVGLLQRYQVRAKLVAPIIVEGQLWGLLIAHQCHHPRQWLDSEKNFL 327 V D++ +S++ QR+QV++ L +G+ G++ HQC R W E L Sbjct: 672 VVDLDQDLNSTHTKA-FYQRFQVKSFLAVRTSYQGKANGIIALHQCDRQRVWTADEIELL 730 Query: 328 GQIGEHLAVAIVQSLLYSEVQKQKNNFEKRVIERTKELRDTLMAAQAANLLKSQFINNIS 387 I E + +A+ Q+ L + ++++ + + ++ EL AA+AAN K +F+ +S Sbjct: 731 EAIAEQMGIALAQAALLEKERERR----RELAQKNLELEKATWAAEAANRAKGEFLAMMS 786 Query: 388 HELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLE 447 HE+RTP+ +IG++ L+ + +Q Y+ I+++G+ LL IN I+ S++E Sbjct: 787 HEIRTPMNGVIGMTELLIMTDLN------LQQLDYVQTIRQSGETLLTIINDILDFSKIE 840 Query: 448 SGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQD-QFCADQERLDQIL 506 + + L Q+F L L +TV+ +A + +LEL Y I+ + DQ RL QIL Sbjct: 841 ADKLVLETQAFELRPLIETVLEMFGPIARAK--HLELTYGIDPQTPARILGDQVRLRQIL 898 Query: 507 TQLLNNALKFT---------------PAEGT-VILRIWKESNQAIFQVEDTGIGINEQQL 550 + L+ NALKFT PAE IL + S++ F + DTGIGI + Sbjct: 899 SNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQ 958 Query: 551 PVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIPQQNF 610 LF++F S T Y G+GL ++++L ++ GG + V S PG G+ F I Sbjct: 959 DRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCI----- 1013 Query: 611 PPTTKGQVQDKLDAAMPFNSSVIVIEQDEE 640 T + + D+ ++I D E Sbjct: 1014 LTTAQAPALAEADSVQQMKGKQVLIVDDNE 1043 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 152 bits (385), Expect = 3e-39 Identities = 107/318 (33%), Positives = 165/318 (51%), Gaps = 20/318 (6%) Query: 355 EKRVIERTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASL 414 E + E +L + ++A A LK +F+ N+SHELRTPL SI+G+ TL P + Sbjct: 396 EIKKAEEQLKLSNKILAK--ATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLN- 452 Query: 415 PPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGV 474 KQ L ++ +G+ LL IN I+ LS++E+G+ L+ S+ L + + Sbjct: 453 --GKQVQSLEIVENSGRHLLSLINDILDLSKIEAGRMDLDLNPTSVSALVNHSLTFVQQF 510 Query: 475 AIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGTVILRI------W 528 AI++QINL + N+ D+ RL Q+L LLNNA+KFTP G V+++ Sbjct: 511 AIQKQINLSSEIIPNL--PDVLVDKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQG 568 Query: 529 KESNQA----IFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVEL 584 KE++Q+ F V DTGIGI +L +FE F + Y+ G+GL+L K++VEL Sbjct: 569 KENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVEL 628 Query: 585 HGGYIEVESSPGQGTIFTTVIP---QQNFPPTTKGQVQDKLDAAMPFNSSVIVIEQDEEI 641 HGG + V S +G+ F IP Q P +GQ+ + + P + +I ++ Sbjct: 629 HGGSVTVTSKLNEGSRFKITIPCVFQDKDGPRHRGQLVEVTNHGSPTPIIITLISKNSAY 688 Query: 642 ATLICELLTVANYQVIWL 659 AT + YQ+ WL Sbjct: 689 ATTLSSYFRAKGYQMQWL 706 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 147 bits (371), Expect = 1e-37 Identities = 138/477 (28%), Positives = 218/477 (45%), Gaps = 42/477 (8%) Query: 266 VAVSDIENHYSSSYCLVGLLQRYQVRAKLVAPIIVEGQLWGLLIAHQCHHPRQWLDSEKN 325 V V D+E + LQ V++ LV P++ + Q+ G + H W E N Sbjct: 68 VLVRDVEQMPPEAEMDKVSLQFDLVKSILVVPMVKDAQVLGYISMVHLHDNYGWNPEELN 127 Query: 326 FLGQIGEHLAVAIVQSLLYSEVQKQKNNFEKRVIERTKELRDTLMAAQAANLLKSQFINN 385 +G+ LA+A Q + + + + KE AA AAN K++F+ + Sbjct: 128 LAKLVGQFLAIA------------QARHQAETTLTQAKE------AADAANRAKTEFLAS 169 Query: 386 ISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQ 445 ISHELRTPL +IIG S L R SL P + ++N +G+ LL+ IN I+++S+ Sbjct: 170 ISHELRTPLNAIIGFSQLLHR----DPSLAPHRPTLDIIN--RSGEHLLELINDILEMSK 223 Query: 446 LESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERLDQI 505 +E+G+T LN + H L + A ++Q+ L+++ V + D +L Q+ Sbjct: 224 IEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEV-PEWIKTDGGKLRQV 282 Query: 506 LTQLLNNALKFTPAEGTVILRI------WKESNQAI-----FQVEDTGIGINEQQLPVLF 554 L LL NA+KFT A+G V L++ + Q F V DTG GI ++ LF Sbjct: 283 LINLLANAIKFT-AQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDELF 341 Query: 555 EAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIPQQNF--PP 612 F S + G+GL ++++ V+L GG I+V S QG+ F IP Q P Sbjct: 342 VPFAQTETGLKS-CQGNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAIPVQVMAAPK 400 Query: 613 TTKGQVQDKLDAAMPFNSSVIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELL 672 T L +N V+V++ E L+ +LLT + V + A+ E Sbjct: 401 PTPETSAVTLPPLDQYNQKVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESW 460 Query: 673 QPGLIIVDGDF--VDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDY 727 P +I++D +D T+ IK S + + L+ S E + G DD+ Sbjct: 461 HPQVILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDF 517 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 136 bits (342), Expect = 3e-34 Identities = 85/244 (34%), Positives = 130/244 (53%), Gaps = 7/244 (2%) Query: 368 TLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQ 427 +L+ + N KSQF++ +SHE RTPLTSIIG L ++FD L K+Q Y+ NIQ Sbjct: 929 SLVKERELNEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDR---LSTEKKQQYINNIQ 985 Query: 428 ENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQ 487 + ++L I+ ++ +S+ ++ + + + +L LA +I + + + N EL+Y Sbjct: 986 NSSQRLKQLIDDVLSISRYDANKIEIELGNINLRNLANDLIEN-FSCGLGSEHNFELNYH 1044 Query: 488 INVGQDQFCADQERLDQILTQLLNNALKFTPAEGTVILRIWKESNQAIFQVEDTGIGINE 547 + + D L IL +L+NA+K++ T+ L I K+ +FQV D GIGI Sbjct: 1045 LKPDEHSL-VDVRLLRHILENILSNAIKYSAPGSTITLDISKDEEHLLFQVRDEGIGIPL 1103 Query: 548 QQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIPQ 607 Q LFEAF A S G+GL++ K+ VE GG IEV S PG+GT +P Sbjct: 1104 QDQEKLFEAFHRA--SNVGDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLPL 1161 Query: 608 QNFP 611 P Sbjct: 1162 NPAP 1165 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 135 bits (340), Expect = 4e-34 Identities = 93/264 (35%), Positives = 153/264 (57%), Gaps = 17/264 (6%) Query: 355 EKRVIERTKELRDTLMA-------AQAANLLKSQFINNISHELRTPLTSIIGLSATLLRW 407 E++V +RT+EL +T+ A A+AAN KS F+ N+SHELRTPL +IIG S L+ Sbjct: 407 EEKVQQRTEELENTVKALELASSEAEAANATKSIFLANMSHELRTPLNAIIGYSEMLI-- 464 Query: 408 FDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTV 467 + L + L I +GK LL IN ++ +S++E+G+ L ++F+L L + Sbjct: 465 -EEAEDLDSEELVPDLDKILRSGKSLLALINDLLDISKIEAGKMELYLETFNLKELIAGI 523 Query: 468 IHSLLGVAIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGTV--IL 525 + ++ + + N +L+ +I++ ++ D +L Q + LL+NA KFT +G + I+ Sbjct: 524 LDTIS--PLLKNNNNKLEVEISLESEEVYGDLIKLRQGILNLLSNASKFTK-DGIISFIV 580 Query: 526 RIWK--ESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVE 583 +K E + FQV+DTGIG+ E+Q+ LF+ F A S T Y G+GLA+T++ + Sbjct: 581 EEFKVDEKDWLSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGTGLGLAITRKFCQ 640 Query: 584 LHGGYIEVESSPGQGTIFTTVIPQ 607 + GG I + S G G+ FT +P+ Sbjct: 641 MMGGDIYLTSEIGVGSSFTIKLPK 664 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 134 bits (336), Expect = 1e-33 Identities = 95/261 (36%), Positives = 147/261 (56%), Gaps = 24/261 (9%) Query: 355 EKRVIERTKELRDTL-------MAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRW 407 E+R+ ERT+EL ++ + A+ A KS+F+ N+SHE+RTP+ +IIG+S +L+ Sbjct: 427 EQRIQERTQELENSQESLLEAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELVLQ- 485 Query: 408 FDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTV 467 + ++Q+ YL +Q G+ LL IN+I+ S++E+G+ L + FS+ + Sbjct: 486 -----TDLTSQQRNYLQKVQYAGELLLGIINNILDFSKMEAGKLELEQKPFSVEEVMGN- 539 Query: 468 IHSLLGVAIKQQ---INLELDYQINVGQDQFCADQERLDQILTQLLNNALKFT-PAEGTV 523 +HS+LG+ + + +N LD +I D+ RL QIL L NNA+KFT E T+ Sbjct: 540 LHSILGIQAEAKGLTLNFHLDPRI---PPILVGDRLRLSQILINLGNNAVKFTNQGEITI 596 Query: 524 ---ILRIWKESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQ 580 +L+ E + F V DTGIG+ Q LF+ F S + Y G+GLA++K Sbjct: 597 RGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKS 656 Query: 581 LVELHGGYIEVESSPGQGTIF 601 L EL GG I +ES GQG+ F Sbjct: 657 LTELMGGDIWLESVVGQGSTF 677 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 130 bits (327), Expect = 1e-32 Identities = 119/415 (28%), Positives = 199/415 (47%), Gaps = 38/415 (9%) Query: 343 LYSEVQKQKNNFEKRVIERTKELRDTLMAAQAANLL------KSQFINNISHELRTPLTS 396 LY + + ++ EK +IE + L+ + +A + KS F+ N+SHELR+PL + Sbjct: 323 LYQQRELERAQREKILIEYNESLQKQVDLVRAKEIAESEAKAKSTFVANMSHELRSPLNA 382 Query: 397 IIGLSATLLRWFDHPASLPPAKQQYYLLN-IQENGKKLLDQINSIIQLSQLESGQTALNC 455 IIG S +LR + P +QY IQ +G+ LL+ IN+I+ S++E+G+T LN Sbjct: 383 IIGFSQLMLRTKNLP------MEQYENAGIIQRSGEYLLNLINNILDFSKIEAGKTHLNR 436 Query: 456 QSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALK 515 +F L+ L + L A + I L ++ + + D+ +L QIL LL+NA+K Sbjct: 437 HNFDLYLLLDDLEDMLHLKAANEGIELIFIRDHDLPRYVY-GDEIKLRQILLNLLSNAIK 495 Query: 516 FTPAEGTVILRIWKESNQ-----------------AIFQVEDTGIGINEQQLPVLFEAFK 558 FT V+ ++ + Q F ++DTG GI+E +L LFEAF Sbjct: 496 FTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKGISEVELSHLFEAFS 555 Query: 559 VAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTI--FTTVIPQQNFPPTTKG 616 +S + E G+GLA+T+Q ++L GG I V S QGT F+ ++ + + Sbjct: 556 QT-ESGRNAQEGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFSILVDLGEITLSREP 614 Query: 617 QVQDKLDAAMPFNS--SVIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQP 674 K+ A P ++V++ L+ +LL +++ + A+ E +P Sbjct: 615 NSAKKVLALTPGQPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEP 674 Query: 675 GLIIVD--GDFVDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDY 727 LI +D +D E T+ IK + + V L+ S+ E + G DD+ Sbjct: 675 HLIFMDMRMPVMDGYEATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDF 729 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 129 bits (324), Expect = 3e-32 Identities = 107/380 (28%), Positives = 185/380 (48%), Gaps = 30/380 (7%) Query: 359 IERTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAK 418 ++R KEL A+ A+ +K+ F+ N+SHE+RTP+ ++IG++ L+ L P + Sbjct: 513 MKRAKEL------AEEASRIKADFLANMSHEIRTPMNAVIGMTHLALK-----TDLTP-R 560 Query: 419 QQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQ 478 Q+ YL I+ +G+ LL IN I+ S++E+G+ + F L + V + A + Sbjct: 561 QREYLHKIRFSGQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNK 620 Query: 479 QINLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTP-AEGTVILRIWKESNQAI-- 535 + L D N+ + F D RL QIL NNA+KFT + T+++R+ + +Q + Sbjct: 621 GLELLFDIDRNLPR-HFIGDPLRLGQILINYANNAVKFTEQGDITIVVRLQEYRDQDVVL 679 Query: 536 -FQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESS 594 V+DTGIGI + + LF +F+ A S T + G+GLA+ K++ EL GG + VES Sbjct: 680 YLAVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESE 739 Query: 595 PGQGTIFTTVIPQQNFPPTTKGQVQDKLDAAMPFNSSVIVIEQDEEIATLIC-ELLTVAN 653 GQG+ F + Q + +L + +++ D + A L+ +LL Sbjct: 740 YGQGSTFWAKVCLQK-----SNVIPHRLVLSKDLEGKRVLVVDDNDHARLVMKDLLEQMK 794 Query: 654 YQVIWLIDTTNALQQV-----ELLQPGLIIVDGDF--VDVTEVTRGIKKSRRISKVTVFL 706 + V + AL + E ++ +D +D EV R +K + ++F+ Sbjct: 795 FVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFI 854 Query: 707 LSESLSSAEWQALSQKGIDD 726 ++ + GIDD Sbjct: 855 VTAYGREELFVKAKSLGIDD 874 >SYNE-PCC-01-002220 slr1212 Length = 844 Score = 126 bits (316), Expect = 3e-31 Identities = 109/399 (27%), Positives = 175/399 (43%), Gaps = 60/399 (15%) Query: 155 QASQVKLLSQVIAQIRQSLDLSEILNNAVTAVQKFLFVDRLVIYQFHYSQPSLTPLEENQ 214 Q + LL ++ +IRQSLDL I N V +++FL DR+VI+QF Sbjct: 456 QGRRESLLREITQRIRQSLDLPTIFNTVVQEIRQFLEADRVVIFQF-------------- 501 Query: 215 IPAPRPRQQYGEVTYEARRSPEIDTMLGIMTENDCFSQVFSYEQKYLKGAVVAVSDIENH 274 +P G + E+ +P ++ E CFS +Y Q+Y +G + + DI Sbjct: 502 --SPDSDFSVGNIVAESVLAP-FKPIINSAIEETCFSN--NYAQRYQQGRIQVIEDIHQS 556 Query: 275 YSSSYCLVGLLQRYQVRAKLVAPIIVEGQLWGLLIAHQCHHPRQWLDSEKNFLGQIGEHL 334 + C + L R QVRA LV P+I + LWGLL HQC R W +E + L QI Sbjct: 557 HLRQ-CHIDFLARLQVRANLVLPLINDAILWGLLCIHQCDSSRVWEQTEIDLLKQITNQF 615 Query: 335 AVAIVQSLLYSEVQKQKNNFEKRVIERTKELRDTLMAAQAANLLKSQFINNISHELRTPL 394 +AI Q+ LY + Q++ + + ++ T EL K + I H ++ L Sbjct: 616 EIAIQQATLYEQAQQELASKNQLFVQLTNELEQ-----------KKVLLKEIHHRVKNNL 664 Query: 395 TSIIGLSATLLRWFDHPASLPPAKQQYY-----LLNIQENGKKLLDQINSIIQLSQLESG 449 I S L++ ++ ++Y + I E + D N I SQ Sbjct: 665 Q--IMSSLLYLQFSKASPAIQQLSEEYQNRIQSMALIHEQLYRSEDLAN--IDFSQYLKN 720 Query: 450 QTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERLDQILTQL 509 T CQS+ +T S+ + +Q+ + L+ I +G I+ +L Sbjct: 721 LTHNICQSYGCNT------DSIKIKLLVEQVKVPLEQSIPLG------------LIIQEL 762 Query: 510 LNNALK--FTPAEGTVILRIWKESNQAIFQVEDTGIGIN 546 ++NALK F EG + ++ ++ QV D G+GI+ Sbjct: 763 VSNALKHAFPTTEGEISIKFTSMNSHYSLQVWDNGVGIS 801 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 121 bits (303), Expect = 9e-30 Identities = 84/225 (37%), Positives = 126/225 (56%), Gaps = 8/225 (3%) Query: 383 INNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQ 442 +++I HE RTPLT+IIG A +LR D KQ Y+ + + LL +N + Sbjct: 190 LSHIHHEFRTPLTAIIGF-ARMLR--DELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLD 246 Query: 443 LSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERL 502 LS++++ L + ++ L VI + A ++Q+ L L I+ G D DQ R Sbjct: 247 LSKIDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLT--IDDGVDFCYVDQRRW 304 Query: 503 DQILTQLLNNALKFTPAEGTVILRIWKESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGD 562 QIL LL+N +KFTP +G+V L + IF V DTGIGI+ + LF+ FK Sbjct: 305 KQILINLLSNGVKFTP-KGSVTLAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISH 363 Query: 563 SYTSFYETG-GVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIP 606 SF E G G+GLAL+++L +LHGG I++ S+PG G+ F+ ++P Sbjct: 364 P-PSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILP 407 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 118 bits (295), Expect = 7e-29 Identities = 88/259 (33%), Positives = 134/259 (51%), Gaps = 19/259 (7%) Query: 347 VQKQKNNFEKRV----IERTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSA 402 +Q Q E+R+ E+ +EL AA+AAN KS+F+ +SHE+RTP+ +IIG++ Sbjct: 285 IQGQSLEMERRMRQQLAEQNQELVAATTAAEAANRSKSEFLATMSHEIRTPMNAIIGMTG 344 Query: 403 TLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHT 462 LL D + +Q+Y+ I+ +G+ LL IN I+ S++E+G+ L F L Sbjct: 345 LLL---DTDLT---TQQKYFAQTIRNSGETLLTLINDILDFSKIEAGKLDLEVYPFDLGQ 398 Query: 463 LAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGT 522 + + ++ A ++ + L + + D RL QIL LL+NA+KFT A G Sbjct: 399 CLEEALDVVVPSARQKSLTLIRRFLTPI-PPNLQGDVTRLRQILVNLLSNAVKFTEA-GQ 456 Query: 523 VILRI-------WKESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGL 575 V + + K Q F V+DTGIGI Q LF+AF S T + G+GL Sbjct: 457 VKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQAFSQGNSSITRRFGGTGLGL 516 Query: 576 ALTKQLVELHGGYIEVESS 594 A+ +L L GG I ES+ Sbjct: 517 AICVRLTALMGGTIWAESN 535 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 115 bits (287), Expect = 6e-28 Identities = 88/292 (30%), Positives = 141/292 (48%), Gaps = 41/292 (14%) Query: 347 VQKQKNNFEKRVIERTK---------------------ELRDTLMAAQAANLLKSQFINN 385 +++ K+N E RV ERT +LR+ +A+ AN +KS+F+ N Sbjct: 547 IKQAKDNLEMRVAERTHTLIVINKQLAGEIEERQRIEIKLREAKESAELANRVKSEFLAN 606 Query: 386 ISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQ 445 ISHE+RTP+ +I+G LL+ L ++ + YL I + K LL I+ I+ +S+ Sbjct: 607 ISHEIRTPMNAILGFCDLLLQ-----KDLSLSQTKKYLNAIGSSSKILLALIDDILDISK 661 Query: 446 LESGQTALNCQSFSLHTLAQTV--IHSLLGVAIKQQINLELDYQINVGQDQFCADQERLD 503 +E+G+ ++ + L + + + I + + +++D +N D RL Sbjct: 662 IEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLN---QAIYFDAVRLR 718 Query: 504 QILTQLLNNALKFTPAEGTVILRIWKESNQA---------IFQVEDTGIGINEQQLPVLF 554 QIL L+ NALKFT EG V + I E Q +V DTGIGI + +F Sbjct: 719 QILFNLVGNALKFTE-EGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIF 777 Query: 555 EAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIP 606 + F + T Y G+GL +T++L L GG I + S G+G+ F P Sbjct: 778 DVFTQSQGQSTRKYGGTGLGLTITRRLTALLGGEISLSSRLGEGSTFILHFP 829 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 109 bits (272), Expect = 3e-26 Identities = 80/263 (30%), Positives = 138/263 (52%), Gaps = 10/263 (3%) Query: 350 QKNNFEKRVIERTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFD 409 Q++ E+R RT+E+R L + + LK++F + SHE RTPL++ L+A L Sbjct: 43 QRDVTERR---RTEEVRLALEREKELSRLKTRFFSMASHEFRTPLST--ALAAAQLLENS 97 Query: 410 HPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIH 469 A L P K+ L IQ + K ++ ++ I+ +++ E+G+ N L L Q I Sbjct: 98 EVAWLDPDKRSRNLHRIQNSVKNMVQLLDDILIINRAEAGKLEFNPNWLDLKLLFQQFIE 157 Query: 470 SLLGVAIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEGTVILRIWK 529 + +++ Q D+ + + D+ + IL+ LL+NA+K++P G + + + Sbjct: 158 EIQ-LSVSDQYYF--DFICSAQDTKALVDERLVRSILSNLLSNAIKYSPGGGQIKIALSL 214 Query: 530 ESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYI 589 +S Q IF+V D GIGI+ + +FE F G + + T G+GL + K+ V+LH G I Sbjct: 215 DSEQIIFEVTDQGIGISPEDQKQIFEPFH-RGKNVRNITGT-GLGLMVAKKCVDLHSGSI 272 Query: 590 EVESSPGQGTIFTTVIPQQNFPP 612 ++S+ QGT T + + N P Sbjct: 273 LLKSAVDQGTTVTICLKRYNHLP 295 >SYNE-PCC-01-000983 sll1473 Length = 481 Score = 100 bits (248), Expect = 2e-23 Identities = 68/226 (30%), Positives = 105/226 (46%), Gaps = 35/226 (15%) Query: 155 QASQVKLLSQVIAQIRQSLDLSEILNNAVTAVQKFLFVDRLVIYQFHYSQPSLTPLEENQ 214 Q + + ++Q+ IRQSL+L +LN V V+ L VDR++IY+ E Sbjct: 39 QTQRERFINQITQHIRQSLNLETVLNTTVAEVKTLLQVDRVLIYRIWQDGTGSAITESVN 98 Query: 215 IPAPRPRQQYGEVTYEARRSPEIDTMLGIMTENDCFSQVFSYEQKYLKGAVVAVSDIENH 274 P ++LG ++ F Y Q Y KG V A++DI+ Sbjct: 99 ANYP--------------------SILGRTFSDEVFP--VEYHQAYTKGKVRAINDIDQD 136 Query: 275 YSSSYCLVGLLQRYQVRAKLVAPIIVEGQ------------LWGLLIAHQCHHPRQWLDS 322 CL ++++ V++KLV PI+ + LWGLLI HQC R W Sbjct: 137 -DIEICLADFVKQFGVKSKLVVPILQHNRASSLDNESEFPYLWGLLITHQCAFTRPWQPW 195 Query: 323 EKNFLGQIGEHLAVAIVQSLLYSEVQKQKNNFEKRVIERTKELRDT 368 E + Q+ +A+AI QS LY ++Q+ + E RV +RT++L T Sbjct: 196 EVELMKQLANQVAIAIQQSELYEQLQQLNKDLENRVEKRTQQLAAT 241 >SYNE-PCC-01-000542 sll0821 Length = 1276 Score = 99.0 bits (245), Expect = 5e-23 Identities = 66/201 (32%), Positives = 108/201 (53%), Gaps = 25/201 (12%) Query: 150 LQDSLQASQVK--LLSQVIAQIRQSLDLSEILNNAVTAVQKFLFVDRLVIYQFHYSQPSL 207 L++ LQ VK L+ ++ +IR SL++++IL + VT V++FL DR+V+++F+ Sbjct: 913 LKERLQQRNVKEKLVLKIANKIRASLNINDILYSTVTEVRQFLNTDRVVLFKFN------ 966 Query: 208 TPLEENQIPAPRPRQQYGEVTYEARRSPEIDTMLGIMTENDCFSQVFSYEQKYLKGAVVA 267 Q G+V E+ +++ ++ CF Y + Y +G V A Sbjct: 967 -------------SQWSGQVVTESHND-FCRSIINDEIDDPCFKG--HYLRLYREGRVRA 1010 Query: 268 VSDIENHYSSSYCLVGLLQRYQVRAKLVAPIIVEGQLWGLLIAHQCHHPRQWLDSEKNFL 327 VSDIE + C LL+ YQV+A LV P++ LWGLLIAH+C PR W + + L Sbjct: 1011 VSDIEKADLAD-CHKELLRHYQVKANLVVPVVFNENLWGLLIAHECKTPRYWQEEDLQLL 1069 Query: 328 GQIGEHLAVAIVQSLLYSEVQ 348 ++ +A+AI Q LY +++ Sbjct: 1070 MELATQVAIAIHQGELYEQLE 1090 Score = 52.8 bits (125), Expect = 4e-09 Identities = 55/213 (25%), Positives = 95/213 (44%), Gaps = 21/213 (9%) Query: 145 SPEPSLQDSLQASQVKLLSQVIAQIRQSLDLSEILNNAVTAVQKFLFVDRLVIYQFHYSQ 204 +P SL+D L+ VI + ++L L E L V + FL VDR+ IY+F S Sbjct: 2 NPNRSLEDFLR--------NVINKFHRALTLRETLQVIVEEARIFLGVDRVKIYKFA-SD 52 Query: 205 PSLTPLEENQIPAPRPRQ-----QYGEVTYEARRSPEIDTMLGIMTENDCFSQVFSYEQK 259 S L E A P ++ +AR E+ ++ + + S+E Sbjct: 53 GSGEVLAEAVNRAALPSLLGLHFPVEDIPPQARE--ELGNQRKMIAVDVAHRRKKSHE-- 108 Query: 260 YLKGAVVAVSDIENHYSS-SYCLVGLLQRYQVRAKLVAPIIVEGQLWGLLIAHQCHHPRQ 318 L G + HY++ C + L V + L P++ + QLWG++ H PR+ Sbjct: 109 -LSGRISPTEHSNGHYTTVDSCHIQYLLAMGVLSSLTVPVMQDQQLWGIMAVHH-SKPRR 166 Query: 319 WLDSEKNFLGQIGEHLAVAIVQSLLYSEVQKQK 351 + + E + + + +++AI QS L +V +Q+ Sbjct: 167 FTEQEWETMALLSKEVSLAITQSQLSRQVHQQQ 199 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 96.3 bits (238), Expect = 3e-22 Identities = 86/329 (26%), Positives = 145/329 (44%), Gaps = 35/329 (10%) Query: 295 VAPIIVEGQLWGLLIAHQCHH-PRQWLDSEKNFLGQIGEHLAVAIVQSLLYSEVQKQKNN 353 + P + + Q G L Q P W + L ++ E AI + LY Sbjct: 127 IFPTLYQDQANGYLCLQQVGPAPGPWHPETEALLQELAEQTGTAIAHATLY--------- 177 Query: 354 FEKRVIERTKELRDTLMAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPAS 413 +EL AA+ A+ LKS+F+ + +HELRTPL IIG +L D A Sbjct: 178 ---------QELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFLRLIL---DDMAD 225 Query: 414 LPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLG 473 A++ ++ ++ LL+ IN I+ L+++E+G+ + + + Q + L Sbjct: 226 -SEAEKHEFVEEAYQSALLLLNLINDILDLAKIEAGRVGIELEVVDFSEVLQATENFALP 284 Query: 474 VAIKQQINLELDYQINVGQDQFCADQERLDQILTQLLNNALKFTPAEG----------TV 523 A + ++ L N G +Q L Q++ ++ NA+KFT G TV Sbjct: 285 QAQNKGLSFNLTAP-NQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTV 343 Query: 524 ILRIWKESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVE 583 + ++ V DTGIG++ +Q LF+ F S++ Y G+GL ++++LVE Sbjct: 344 LWEGVQKPGLLKVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVE 403 Query: 584 LHGGYIEVES-SPGQGTIFTTVIPQQNFP 611 GG + S G G+ T + + P Sbjct: 404 TMGGKVAFFSMGEGLGSTVTFTVLLEELP 432 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 74.3 bits (181), Expect = 1e-15 Identities = 83/304 (27%), Positives = 135/304 (44%), Gaps = 34/304 (11%) Query: 315 HPRQWLDSEKNFLGQIGEHLAVAIVQSLLYSEVQKQ-----KNNFEKRVIERTKELRDTL 369 HPRQ D K + +QSL + V+ Q K ++ + +EL Sbjct: 470 HPRQSFDLWKE----------IVRLQSLPWQSVEIQSALALKKAIVNLILRQAEELAQLA 519 Query: 370 MAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQEN 429 + +N +F SH+L+ PL + LL A AK ++ Sbjct: 520 RNLERSNADLKKFAYIASHDLQEPLNQVSNY-VQLLEMRYSEALDEDAKD---FIDFAVT 575 Query: 430 GKKLLDQ-INSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQI 488 G L+ I+ I+ +++++ L T Q V+ L +KQ+I E +I Sbjct: 576 GVSLMQTLIDDILTYAKVDTQYAQLT------FTDVQEVVDKALA-NLKQRIE-ESGAEI 627 Query: 489 NVGQ-DQFCADQERLDQILTQLLNNALKFTPAEGTVILRIW--KESNQAIFQVEDTGIGI 545 VG ADQ +L Q+ L+ N +KF + I +IW ++ + +F V+D GIGI Sbjct: 628 EVGSMPAVMADQIQLMQVFQNLIANGIKFAGDKSPKI-KIWGDRQEDAWVFAVQDNGIGI 686 Query: 546 NEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVI 605 + Q +F F+ Y+ G+GLA+ K+++E H G I +ES+PG+G+ F I Sbjct: 687 DPQFFERIFVIFQRLHTR--DEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSI 744 Query: 606 PQQN 609 P N Sbjct: 745 PIGN 748 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.135 0.384 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 69,606 Number of Sequences: 78 Number of extensions: 3121 Number of successful extensions: 94 Number of sequences better than 1.0e-05: 18 Number of HSP's better than 0.0 without gapping: 15 Number of HSP's successfully gapped in prelim test: 3 Number of HSP's that attempted gapping in prelim test: 20 Number of HSP's gapped (non-prelim): 28 length of query: 750 length of database: 48,235 effective HSP length: 70 effective length of query: 680 effective length of database: 42,775 effective search space: 29087000 effective search space used: 29087000 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 96 (41.6 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002788 slr1982 (123 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002788 slr1982 241 5e-67 SYNE-PCC-01-002879 slr2104 97 1e-23 SYNE-PCC-01-000800 sll1228 92 8e-22 SYNE-PCC-01-002873 slr2098 89 4e-21 SYNE-PCC-01-001132 sll1672 88 1e-20 SYNE-PCC-01-001461 slr0115 86 3e-20 SYNE-PCC-01-001306 sll1905 81 1e-18 SYNE-PCC-01-002617 slr1759 79 4e-18 SYNE-PCC-01-002033 slr0947 75 1e-16 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 73 3e-16 SYNE-PCC-01-002672 slr1837 72 6e-16 SYNE-PCC-01-002086 slr1042 71 1e-15 SYNE-PCC-01-001133 sll1673 71 1e-15 SYNE-PCC-01-000414 sll0649 67 2e-14 SYNE-PCC-01-002731 slr1909 65 8e-14 SYNE-PCC-01-002618 slr1760 63 3e-13 SYNE-PCC-01-001160 sll1708 63 4e-13 SYNE-PCC-01-002486 slr1584 62 7e-13 SYNE-PCC-01-001437 slr0081 62 9e-13 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 61 1e-12 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 60 3e-12 SYNE-PCC-01-002489 slr1588 59 7e-12 SYNE-PCC-01-000242 sll0396 59 7e-12 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 52 5e-10 SYNE-PCC-01-002635 slr1783 52 7e-10 SYNE-PCC-01-000523 sll0797 51 1e-09 SYNE-PCC-01-002221 slr1213 50 2e-09 SYNE-PCC-01-001075 sll1592 50 3e-09 SYNE-PCC-01-000518 sll0789 47 2e-08 SYNE-PCC-01-000608 sll0921 46 5e-08 SYNE-PCC-01-001575 slr0312 43 4e-07 SYNE-PCC-01-001517 slr0222 43 4e-07 SYNE-PCC-01-000877 sll1330 42 9e-07 SYNE-PCC-01-002778 slr1969 41 1e-06 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 241 bits (616), Expect = 5e-67 Identities = 123/123 (100%), Positives = 123/123 (100%) Query: 1 MESMAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPI 60 MESMAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPI Sbjct: 1 MESMAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPI 60 Query: 61 IDGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEA 120 IDGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEA Sbjct: 61 IDGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEA 120 Query: 121 LIN 123 LIN Sbjct: 121 LIN 123 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 97.4 bits (241), Expect = 1e-23 Identities = 49/114 (42%), Positives = 78/114 (68%) Query: 5 AKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGW 64 A +LLVEDNE+NR+ L KG V +A +G++A+T+ S + ILMD+ +P+++G+ Sbjct: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGY 777 Query: 65 TATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKM 118 AT+ I+ ++PIIA+TA+AMA D+E+A+ AG +D+ TKPI+ L Q + Sbjct: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 91.7 bits (226), Expect = 8e-22 Identities = 47/110 (42%), Positives = 70/110 (63%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 KVL+V+D +R +L + L G+ V A +GE A+ + S PQ+ILMDM +P++DG + Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 Query: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLL 115 T++IK P G H IIALTA A +R ++AGCDD+ +KP + L+ Sbjct: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELI 528 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 89.4 bits (220), Expect = 4e-21 Identities = 47/114 (41%), Positives = 74/114 (64%) Query: 5 AKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGW 64 A++LLVEDNE+N+++ + L G+ V +A +G A+ + + L+LMDM +P +DG Sbjct: 925 ARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGI 984 Query: 65 TATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKM 118 AT I+ +P A +PI+A+TA+ M DRER + AG +D+ KPIE + L K+ Sbjct: 985 EATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKL 1038 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 87.8 bits (216), Expect = 1e-20 Identities = 41/103 (39%), Positives = 66/103 (64%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 K+L+V+D +NR +L + L G+E+ A +G++A+ + S P LI MDM +P++DG+ Sbjct: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 Query: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKP 108 ATK IKG G ++ALTA + ++ ++AGCDD+ KP Sbjct: 691 ATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKP 733 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 86.3 bits (212), Expect = 3e-20 Identities = 40/119 (33%), Positives = 73/119 (61%) Query: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 M ++L+++D+ D++S L GY+V AVDG + +A+ P LI++D+ LP +DG Sbjct: 1 MPRILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDG 60 Query: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 +T ++++ A IP++ LTA D+ + +G DDY TKP +++ +L ++ AL+ Sbjct: 61 FTVCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEMLARVRALL 119 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 80.9 bits (198), Expect = 1e-18 Identities = 42/114 (36%), Positives = 72/114 (63%), Gaps = 1/114 (0%) Query: 7 VLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTA 66 +LL EDN +N+ + L + GY V + +G++A++ ++LMD+ +P +DG TA Sbjct: 742 ILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLTA 801 Query: 67 TKQIKGHPDGAHIP-IIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKME 119 T+ I+ + P IIA+TA++M DRER +A+G +DY +KPI ++ L Q ++ Sbjct: 802 TEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQALQ 855 Score = 66.2 bits (160), Expect = 3e-14 Identities = 37/113 (32%), Positives = 57/113 (50%) Query: 7 VLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTA 66 +L+V+D + N ++S L +GY G +A+ P LIL+D+ +P +DG Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 67 TKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKME 119 ++K P IP+I LTA D +A A G DY TKP LL +++ Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPELLARVK 132 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 79.3 bits (194), Expect = 4e-18 Identities = 45/126 (35%), Positives = 75/126 (59%), Gaps = 4/126 (3%) Query: 1 MESMAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPI 60 ++ ++LL EDN +N+ + + L GY V IA +G++ + + L+LMDM +P+ Sbjct: 1186 LQPALQILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPV 1245 Query: 61 IDGWTATKQIKGH-PDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPI---EIKRLLQ 116 +DG TA + I+ P I+A+TA+AM DR+ + AG D Y +KPI +++++LQ Sbjct: 1246 MDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQ 1305 Query: 117 KMEALI 122 ALI Sbjct: 1306 DTSALI 1311 Score = 41.2 bits (95), Expect = 1e-06 Identities = 27/94 (28%), Positives = 47/94 (50%), Gaps = 3/94 (3%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQL--ILMDMSLPIIDG 63 +VL+V+DNE NR +L + G GE A+ + P L ++D+ +P +DG Sbjct: 1035 QVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDW-FARCPDLDAAILDLQMPNMDG 1093 Query: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAI 97 T ++ G +PII L++ +A E ++ Sbjct: 1094 ITLAHHLRQFAQGKDLPIILLSSGLVAGADELSV 1127 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 74.7 bits (182), Expect = 1e-16 Identities = 40/114 (35%), Positives = 63/114 (55%), Gaps = 3/114 (2%) Query: 9 LVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTATK 68 +V+D R +L RL GYEVV A DGE+A+ P L+++D+ +P +DG+ + Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 69 QIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 +++ D IPII LTA +DR + G DDY KP K L ++ +++ Sbjct: 61 ELRKESD---IPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVL 111 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 73.2 bits (178), Expect = 3e-16 Identities = 47/116 (40%), Positives = 67/116 (57%), Gaps = 1/116 (0%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 K+L+VED R+M++ L +K Y+V+ A D + A+ I E+P+LIL+D LP G Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINK-IKENPKLILLDWMLPGRSGIQ 62 Query: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 + IK A IPII LTA + D + AG DDY TKP + LL ++EA+ Sbjct: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAV 118 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 72.0 bits (175), Expect = 6e-16 Identities = 42/121 (34%), Positives = 67/121 (55%), Gaps = 6/121 (4%) Query: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 MA +LLV+D + LS+ L +G+ + +A G+ + MAI+ L+++D LP + G Sbjct: 1 MANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSG 60 Query: 64 WTATKQIK--GHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 +QI+ GH P++ LTA DR + AG DDY KP E++ LL ++ AL Sbjct: 61 LEICRQIRILGH----STPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELRELLARVRAL 116 Query: 122 I 122 + Sbjct: 117 L 117 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 71.2 bits (173), Expect = 1e-15 Identities = 38/119 (31%), Positives = 67/119 (56%) Query: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 M VLLVED+ R+M+S L G++V IA DG +A+ + SP L+++D+ +P ++G Sbjct: 27 MNAVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNG 86 Query: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 + ++IK P ++P+I ++ DR + G D Y KP + L+ ++ L+ Sbjct: 87 YEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQLL 145 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 70.9 bits (172), Expect = 1e-15 Identities = 40/118 (33%), Positives = 63/118 (53%) Query: 2 ESMAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPII 61 E +LLV+D N +LS LI GY V G+ A+ + P LIL+D+ +P + Sbjct: 6 EKKGNILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDM 65 Query: 62 DGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKME 119 DG+ + IK + IPII ++A D+ +A G DY TKP +I+ ++ ++E Sbjct: 66 DGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEVVARIE 123 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 67.4 bits (163), Expect = 2e-14 Identities = 35/120 (29%), Positives = 63/120 (52%) Query: 3 SMAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIID 62 +M +L+VED++ ++ L R+ + ++ DGE + + + P LI++D+ LP +D Sbjct: 10 AMPNILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLD 69 Query: 63 GWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 G +I+ P I+ LTA DR ++ G DDY KP + L+ ++ AL+ Sbjct: 70 GLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPRELVARVRALL 129 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 65.1 bits (157), Expect = 8e-14 Identities = 32/116 (27%), Positives = 68/116 (58%) Query: 7 VLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTA 66 +LLV+D+ ++ L +GY+V A +G +A+ + + P +I+ D+ +P +DG+ Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 67 TKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 +Q++ +PD + IP++ L+A + +R + + G D Y KP E + L ++++ + Sbjct: 70 IEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEELAAQVQSCL 125 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 63.2 bits (152), Expect = 3e-13 Identities = 35/118 (29%), Positives = 65/118 (55%) Query: 5 AKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGW 64 AK+L+V+D+ R L L ++G+ V +A +GE+A+T P+++L+D +P++DG+ Sbjct: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 Query: 65 TATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 + + ++ +T + +RA AG DY TKPI L Q+++ L+ Sbjct: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLL 129 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 62.8 bits (151), Expect = 4e-13 Identities = 42/117 (35%), Positives = 68/117 (58%), Gaps = 4/117 (3%) Query: 6 KVLLVEDNEMNRDMLSRRL-IRKGYEVVIAVD-GEQAVTMAISESPQLILMDMSLPIIDG 63 K+L+VED+ + + L + L + +E++ VD G AV A +P LI+MD+ LP +DG Sbjct: 18 KILIVEDDPLMQLGLEQALGAHERFEIIGRVDNGYGAVQQAAVLNPDLIVMDIGLPGLDG 77 Query: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEA 120 ATKQIK I I+ LT+H + ++ A+++G D Y K ++RL+ + A Sbjct: 78 IEATKQIK--QTSPQIHIVVLTSHTLPNEIIAALSSGADAYCVKGATLERLILAIAA 132 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 62.0 bits (149), Expect = 7e-13 Identities = 37/117 (31%), Positives = 63/117 (53%), Gaps = 2/117 (1%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 ++LLVED+ + L+ L + Y V IA D A A L+++D+ LP +DG T Sbjct: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGIT 61 Query: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 ++ + H +PI+ +TA +D+ + AG DDY KP+++ L ++ AL+ Sbjct: 62 LCQKWRSH--SYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALL 116 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 61.6 bits (148), Expect = 9e-13 Identities = 37/124 (29%), Positives = 64/124 (51%), Gaps = 9/124 (7%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMA--ISESP-----QLILMDMSL 58 ++L+VED R+ + L +GYEV DG A+ + SE P LI++D+ L Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 59 PIIDGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKM 118 P ++G + ++ G + PI+ ++A ++ + G DDY TKP +K L+ + Sbjct: 92 PQVNGLDVCRSLRF--GGDNTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKELVARC 149 Query: 119 EALI 122 A+I Sbjct: 150 RAMI 153 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 60.8 bits (146), Expect = 1e-12 Identities = 36/119 (30%), Positives = 72/119 (60%), Gaps = 4/119 (3%) Query: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 M+K+LLV+D+ ++LS L +G++V A +G +A+ ++ES +L+L+D+ +P ++G Sbjct: 1 MSKLLLVDDDIELTELLSTLLELEGFDVETANNGLEAL-QKLNESYKLVLLDVMMPKLNG 59 Query: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 K+I+ +++P++ LTA DR + G DD KP + L+ +++A++ Sbjct: 60 IETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAIL 115 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 59.7 bits (143), Expect = 3e-12 Identities = 33/118 (27%), Positives = 63/118 (53%), Gaps = 4/118 (3%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 ++LL+ED+ + + L L + G+ V DG+ + S +++D++LP +DG Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 66 ATKQIKG-HPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 +Q + H D +P++ LTA +R + + +G DDY KP + + +++ALI Sbjct: 62 VLQQWRSNHQD---VPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARLQALI 116 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 58.5 bits (140), Expect = 7e-12 Identities = 34/119 (28%), Positives = 64/119 (53%), Gaps = 2/119 (1%) Query: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTM--AISESPQLILMDMSLPII 61 M+ +L+VED + R+++ L + Y+++ A +G A+ + ++ P LI+ D+ +P + Sbjct: 1 MSTILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEM 60 Query: 62 DGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEA 120 DG ++ + A IP I LTA D + + +G DDY KP + + LL + + Sbjct: 61 DGHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAVNS 119 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 58.5 bits (140), Expect = 7e-12 Identities = 35/103 (33%), Positives = 56/103 (54%), Gaps = 2/103 (1%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 +VL+VE+ E + L +GY+V +A DG + T A P LI+++ +LP + G Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKP 108 ++++ G+ IPII +TA +R + AG DDY KP Sbjct: 64 LCRRLR--EMGSRIPIILITAKDDVEERVMGLDAGADDYIVKP 104 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 52.4 bits (124), Expect = 5e-10 Identities = 32/118 (27%), Positives = 61/118 (51%), Gaps = 3/118 (2%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 K+L+VED + R+ L +GY+V A +G + + + + L++MD++LP +G Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 66 ATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALIN 123 ++++ + +P+I LT D+ + G DDY TKP + L + L++ Sbjct: 65 LARELR---EELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLH 119 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 52.0 bits (123), Expect = 7e-10 Identities = 32/128 (25%), Positives = 62/128 (48%), Gaps = 8/128 (6%) Query: 1 MESMAKVLLVEDNEMNRDMLSRRLIRKG-YEVVIAVDGEQAVTMAISESPQLILMDMSLP 59 M +LLV+D R+ + L G ++V +A + +A P L++ D+ +P Sbjct: 52 MAEPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMP 111 Query: 60 IIDGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIE-------IK 112 +DG+ ++++ +P++ LTA M DR + GCD + +KP + ++ Sbjct: 112 QVDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVR 171 Query: 113 RLLQKMEA 120 LL + +A Sbjct: 172 NLLARQQA 179 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 51.2 bits (121), Expect = 1e-09 Identities = 35/118 (29%), Positives = 59/118 (50%), Gaps = 4/118 (3%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQ--LILMDMSLPIIDG 63 ++LLVED + + L+ + Y V DG QA ++ + L ++D LP + G Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 ++++ G +P++ LTA +R + AG DDY TKP + LL ++ AL Sbjct: 62 LELCQKLR--TQGNSLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARLRAL 117 >SYNE-PCC-01-002221 slr1213 Length = 241 Score = 50.4 bits (119), Expect = 2e-09 Identities = 39/121 (32%), Positives = 59/121 (48%), Gaps = 5/121 (4%) Query: 4 MAKVLLVEDNEMNRDMLSRRLIRKGYEV-VIAVDGEQAVTMAISESPQLILMDMSLP-II 61 + K+L+VED + +++ L GYE+ VIA DG A+ P L+L+D+ + I Sbjct: 2 VTKILIVEDERLVAQHIAQLLKSDGYEICVIASDGATALKKIAEFYPDLVLLDIRIKGEI 61 Query: 62 DGWTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 DG ++IK IPI+ LTA + ERA Y KP ++LL + Sbjct: 62 DGIEVAERIKSLYS---IPIVYLTAFSDGETLERAQKTNPQGYVIKPFRREQLLSTVAIA 118 Query: 122 I 122 I Sbjct: 119 I 119 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 50.1 bits (118), Expect = 3e-09 Identities = 38/113 (33%), Positives = 61/113 (53%), Gaps = 6/113 (5%) Query: 6 KVLLVEDNEMNRDMLSRRLIRK-GYEVV-IAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 ++LLVED+E+ R L RL ++ G +V A DGE A+ + ++++D+ LP I G Sbjct: 9 RILLVEDDELFRLGLVTRLSQEPGLDVAGEAEDGETAIAYVNQQLFDVVILDVGLPGIGG 68 Query: 64 WTATKQIKG-HPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLL 115 A QIK HP +P++ LT+H+ + R I A Y K + + L+ Sbjct: 69 IEACHQIKKIHP---QLPVLILTSHSQPALINRLIEAQAQGYCVKGVAAETLV 118 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 47.4 bits (111), Expect = 2e-08 Identities = 35/118 (29%), Positives = 56/118 (47%), Gaps = 4/118 (3%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISE--SPQLILMDMSLPIIDG 63 ++LLVED L + L R+ Y V DG A + + L + D +P + G Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 ++++G +PI+ LTA +DR + AG DDY KP + LL ++ +L Sbjct: 62 LELCQKLRGQRSS--LPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARLRSL 117 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 45.8 bits (107), Expect = 5e-08 Identities = 30/117 (25%), Positives = 57/117 (48%), Gaps = 2/117 (1%) Query: 6 KVLLVEDNEMNRDMLSRRL-IRKGYEVV-IAVDGEQAVTMAISESPQLILMDMSLPIIDG 63 ++ L+ED ++ R L L + +E V A +G + M P ++++D+ LP ++G Sbjct: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 Query: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEA 120 T+Q+K P ++ LT + A +AG D Y K + L++ ++A Sbjct: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQA 121 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 42.7 bits (99), Expect = 4e-07 Identities = 35/118 (29%), Positives = 54/118 (45%), Gaps = 4/118 (3%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAV--DGEQAVTMAISESPQLILMDMSLPIIDG 63 +VL+ +D+ + R L+ + R VIA +GEQA+ + P + LMD+ +P ++G Sbjct: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEG 67 Query: 64 WTATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 A I A II LT + D R + AG Y K E LL + + Sbjct: 68 VAAISAICAIVKFAR--IIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTV 123 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 42.7 bits (99), Expect = 4e-07 Identities = 25/79 (31%), Positives = 39/79 (49%) Query: 6 KVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWT 65 KVLLV+D N LSR L E++ A G++A+ A + L+++ + +DG Sbjct: 8 KVLLVDDQRENLVALSRALDSLPVEIITANSGQEAIATAATTEFALMILAQEMSELDGLN 67 Query: 66 ATKQIKGHPDGAHIPIIAL 84 K ++ P PII L Sbjct: 68 TAKILRSFPLAEQTPIIFL 86 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 41.6 bits (96), Expect = 9e-07 Identities = 34/116 (29%), Positives = 50/116 (43%), Gaps = 3/116 (2%) Query: 7 VLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGWTA 66 + +VE N R +LS L + GY V QA ++ P L ++D L DG Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAFNNQLPTLAVIDSDLTDGDGIEL 65 Query: 67 TKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEALI 122 + + I L+A D + AG DDY TKP ++ L ++E LI Sbjct: 66 CRWLYQQHQSM---IFILSAKDTEKDIVHGLKAGADDYLTKPFGMQEFLARIECLI 118 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 41.2 bits (95), Expect = 1e-06 Identities = 26/117 (22%), Positives = 57/117 (48%), Gaps = 2/117 (1%) Query: 5 AKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGW 64 + V+++E +E ++ L Y+V+ +D A+ P LI++D +D Sbjct: 630 SSVIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQPGLIIVDGDF--VDVT 687 Query: 65 TATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKMEAL 121 T+ IK + + + L+ +++ + G DDY KP++ + LLQ+++++ Sbjct: 688 EVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDYLLKPLQPELLLQRVQSI 744 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.134 0.373 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 10,626 Number of Sequences: 78 Number of extensions: 400 Number of successful extensions: 60 Number of sequences better than 1.0e-05: 34 Number of HSP's better than 0.0 without gapping: 21 Number of HSP's successfully gapped in prelim test: 13 Number of HSP's that attempted gapping in prelim test: 15 Number of HSP's gapped (non-prelim): 37 length of query: 123 length of database: 48,235 effective HSP length: 54 effective length of query: 69 effective length of database: 44,023 effective search space: 3037587 effective search space used: 3037587 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 88 (38.5 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002873 slr2098 (1261 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002873 slr2098 2350 0.0 SYNE-PCC-01-002617 slr1759 351 9e-99 SYNE-PCC-01-001306 sll1905 298 5e-83 SYNE-PCC-01-002879 slr2104 296 2e-82 SYNE-PCC-01-001132 sll1672 235 7e-64 SYNE-PCC-01-000800 sll1228 200 3e-53 SYNE-PCC-01-000891 sll1353 187 1e-49 SYNE-PCC-01-000295 sll0474 169 6e-44 SYNE-PCC-01-001280 sll1871 164 1e-42 SYNE-PCC-01-001294 sll1888 145 8e-37 SYNE-PCC-01-002778 slr1969 138 9e-35 SYNE-PCC-01-001517 slr0222 137 2e-34 SYNE-PCC-01-001509 slr0210 130 3e-32 SYNE-PCC-01-000985 sll1475 93 6e-21 SYNE-PCC-01-002788 slr1982 89 6e-20 SYNE-PCC-01-001690 slr0473 85 2e-18 SYNE-PCC-01-002635 slr1783 77 3e-16 SYNE-PCC-01-002086 slr1042 74 2e-15 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 70 3e-14 SYNE-PCC-01-002731 slr1909 68 2e-13 SYNE-PCC-01-002486 slr1584 67 3e-13 SYNE-PCC-01-002489 slr1588 66 8e-13 SYNE-PCC-01-000523 sll0797 64 3e-12 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 63 5e-12 SYNE-PCC-01-000414 sll0649 62 8e-12 SYNE-PCC-01-001133 sll1673 62 1e-11 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 58 2e-10 SYNE-PCC-01-001461 slr0115 55 1e-09 SYNE-PCC-01-002618 slr1760 55 1e-09 SYNE-PCC-01-001575 slr0312 55 1e-09 SYNE-PCC-01-002672 slr1837 54 2e-09 SYNE-PCC-01-001437 slr0081 54 4e-09 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 53 5e-09 SYNE-PCC-01-002033 slr0947 53 7e-09 SYNE-PCC-01-000518 sll0789 50 4e-08 SYNE-PCC-01-000242 sll0396 47 3e-07 SYNE-PCC-01-000608 sll0921 47 5e-07 SYNE-PCC-01-000877 sll1330 42 9e-06 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 2350 bits (6090), Expect = 0.0 Identities = 1204/1261 (95%), Positives = 1204/1261 (95%) Query: 1 MFWQPVSPLNADQLNYQGSYDPKLVLLSVAIAIFTAYMAFLMASSALSLPGRWSRKIALA 60 MFWQPVSPLNADQLNYQGSYDPKLVLLSVAIAIFTAYMAFLMASSALSLPGRWSRKIALA Sbjct: 1 MFWQPVSPLNADQLNYQGSYDPKLVLLSVAIAIFTAYMAFLMASSALSLPGRWSRKIALA 60 Query: 61 LSGTVMGLGIWAMHFIGMLGFELPCPISYDPLITFISVIPAIAASIYALNFLSFQAPTAK 120 LSGTVMGLGIWAMHFIGMLGFELPCPISYDPLITFISVIPAIAASIYALNFLSFQAPTAK Sbjct: 61 LSGTVMGLGIWAMHFIGMLGFELPCPISYDPLITFISVIPAIAASIYALNFLSFQAPTAK 120 Query: 121 NLMVGAIWFGLGIGTMHYSGMAALELHGNIYYELPLFVLSLVIAVMLAFVALLFRFHSAK 180 NLMVGAIWFGLGIGTMHYSGMAALELHGNIYYELPLFVLSLVIAVMLAFVALLFRFHSAK Sbjct: 121 NLMVGAIWFGLGIGTMHYSGMAALELHGNIYYELPLFVLSLVIAVMLAFVALLFRFHSAK 180 Query: 181 IFHTTHGPALGSSALVMGLSTSGMHYTAMTATHFICRPWGEFFIQGIDIQEVAIAVTISI 240 IFHTTHGPALGSSALVMGLSTSGMHYTAMTATHFICRPWGEFFIQGIDIQEVAIAVTISI Sbjct: 181 IFHTTHGPALGSSALVMGLSTSGMHYTAMTATHFICRPWGEFFIQGIDIQEVAIAVTISI 240 Query: 241 TLLTGGVMLFVLREISIQNQQQKILVATESWYRQIIEYAPEGIMVLDAQGNIILANTSIE 300 TLLTGGVMLFVLREISIQNQQQKILVATESWYRQIIEYAPEGIMVLDAQGNIILANTSIE Sbjct: 241 TLLTGGVMLFVLREISIQNQQQKILVATESWYRQIIEYAPEGIMVLDAQGNIILANTSIE 300 Query: 301 KLFGYSQTELIGXXXXXXXXXXXXXXXXXXXXXXEDVGPTCPLDQEEFEILGTRYDGSEF 360 KLFGYSQTELIG EDVGPTCPLDQEEFEILGTRYDGSEF Sbjct: 301 KLFGYSQTELIGQSIALLGLAELLQQSLHLLQEGEDVGPTCPLDQEEFEILGTRYDGSEF 360 Query: 361 PIEVSLTSLPSLSQREMNIFASVRDISARQEAQQQILRQREHLQSVLDSAPVGVAITVNG 420 PIEVSLTSLPSLSQREMNIFASVRDISARQEAQQQILRQREHLQSVLDSAPVGVAITVNG Sbjct: 361 PIEVSLTSLPSLSQREMNIFASVRDISARQEAQQQILRQREHLQSVLDSAPVGVAITVNG 420 Query: 421 ITQFANPHIGELVDLKVGDSPQKIYVDLGDRQQMLEELTQFGRSQSRVYKMYNPRGEIRD 480 ITQFANPHIGELVDLKVGDSPQKIYVDLGDRQQMLEELTQFGRSQSRVYKMYNPRGEIRD Sbjct: 421 ITQFANPHIGELVDLKVGDSPQKIYVDLGDRQQMLEELTQFGRSQSRVYKMYNPRGEIRD 480 Query: 481 ILATFLATDYEGQKGILGWLADITPIXXXXXXXXXXXXXXXXXSRIKADFLANMSHEIRT 540 ILATFLATDYEGQKGILGWLADITPI SRIKADFLANMSHEIRT Sbjct: 481 ILATFLATDYEGQKGILGWLADITPIKAAEAEMKRAKELAEEASRIKADFLANMSHEIRT 540 Query: 541 PMNAVIGMTHLALKTDLTPRQREYLHKIRFSGQHLLGVINDILDFSKIEAGKLPMESIDF 600 PMNAVIGMTHLALKTDLTPRQREYLHKIRFSGQHLLGVINDILDFSKIEAGKLPMESIDF Sbjct: 541 PMNAVIGMTHLALKTDLTPRQREYLHKIRFSGQHLLGVINDILDFSKIEAGKLPMESIDF 600 Query: 601 DLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRLGQILINYANNAVKFTEQ 660 DLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRLGQILINYANNAVKFTEQ Sbjct: 601 DLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRLGQILINYANNAVKFTEQ 660 Query: 661 GDITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGL 720 GDITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGL Sbjct: 661 GDITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGL 720 Query: 721 AICKRIAELMGGEVGVESEYGQGSTFWAKVCLQKSNVIPHRLVLSKDLEGKRVLVVDDND 780 AICKRIAELMGGEVGVESEYGQGSTFWAKVCLQKSNVIPHRLVLSKDLEGKRVLVVDDND Sbjct: 721 AICKRIAELMGGEVGVESEYGQGSTFWAKVCLQKSNVIPHRLVLSKDLEGKRVLVVDDND 780 Query: 781 HARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNMDGLEVARR 840 HARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNMDGLEVARR Sbjct: 781 HARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNMDGLEVARR 840 Query: 841 LKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARVLGDPTALA 900 LKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARVLGDPTALA Sbjct: 841 LKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARVLGDPTALA 900 Query: 901 QEMRQSSGIGAEDLALEKLRRIRGARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIA 960 QEMRQSSGIGAEDLALEKLRRIRGARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIA Sbjct: 901 QEMRQSSGIGAEDLALEKLRRIRGARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIA 960 Query: 961 LERLNNNAYALVLMDMQMPEMDGIEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAG 1020 LERLNNNAYALVLMDMQMPEMDGIEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAG Sbjct: 961 LERLNNNAYALVLMDMQMPEMDGIEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAG 1020 Query: 1021 MNDHLGKPIEPEELWNKLLHWIPVDSPLAPETIEESAINTSDPEISIPHIPGLNSDDGLR 1080 MNDHLGKPIEPEELWNKLLHWIPVDSPLAPETIEESAINTSDPEISIPHIPGLNSDDGLR Sbjct: 1021 MNDHLGKPIEPEELWNKLLHWIPVDSPLAPETIEESAINTSDPEISIPHIPGLNSDDGLR 1080 Query: 1081 RVLGKKSLYLKMLHKFVASQSSFLPEITQALGEKDYGFAERLAHTLKGVAGNIGXXXXXX 1140 RVLGKKSLYLKMLHKFVASQSSFLPEITQALGEKDYGFAERLAHTLKGVAGNIG Sbjct: 1081 RVLGKKSLYLKMLHKFVASQSSFLPEITQALGEKDYGFAERLAHTLKGVAGNIGAQELQQ 1140 Query: 1141 XXXXXXXXXXXXWPQPEVENLLTNLGDRLDNLIAQLTSNLPPEPATVAITLDQGQLEEIC 1200 WPQPEVENLLTNLGDRLDNLIAQLTSNLPPEPATVAITLDQGQLEEIC Sbjct: 1141 EAAELEKAIKEQWPQPEVENLLTNLGDRLDNLIAQLTSNLPPEPATVAITLDQGQLEEIC 1200 Query: 1201 DHLAQLLGEDDAEAADLLQNHGDLLRQAFPDHYSAIAAGINNFDFEAALAALTTARQFSQ 1260 DHLAQLLGEDDAEAADLLQNHGDLLRQAFPDHYSAIAAGINNFDFEAALAALTTARQFSQ Sbjct: 1201 DHLAQLLGEDDAEAADLLQNHGDLLRQAFPDHYSAIAAGINNFDFEAALAALTTARQFSQ 1260 Query: 1261 P 1261 P Sbjct: 1261 P 1261 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 351 bits (900), Expect = 9e-99 Identities = 244/656 (37%), Positives = 344/656 (52%), Gaps = 64/656 (9%) Query: 524 SRIKADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQREYLHKIRFSGQHLLGVINDIL 583 +R K +FLA MSHEIRTPMN VIGMT L + TDL +Q +Y+ IR SG+ LL +INDIL Sbjct: 775 NRAKGEFLAMMSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQSGETLLTIINDIL 834 Query: 584 DFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRL 643 DFSKIEA KL +E+ F+L +++ V + A K LEL + ID P +GD +RL Sbjct: 835 DFSKIEADKLVLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRL 894 Query: 644 GQILINYANNAVKFTEQGDITIVVRLQEY---RDQDVVLYLA---------VKDTGIGIK 691 QIL N NA+KFTE+G++ + V+ + + +L L ++DTGIGI Sbjct: 895 RQILSNLIGNALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIP 954 Query: 692 PEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVC 751 + LF SF Q DSSTTR +GGTGLGL I +R+ ++MGG + V SE G GS F + C Sbjct: 955 LDRQDRLFKSFSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNF--RFC 1012 Query: 752 LQKSNVIPHRLVLS--KDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNF 809 + + P + ++GK+VL+VDDN+ R +++D + V SG AL++ Sbjct: 1013 ILTTAQAPALAEADSVQQMKGKQVLIVDDNETNRRILQDQCQAWGLVCHCFTSGESALDW 1072 Query: 810 LAEADRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTA---YGREELFVK 866 A +D QMPNMDG+ +A L+ I ++++ G +EL V Sbjct: 1073 FARCP----DLDAAILDLQMPNMDGITLAHHLRQFAQGKDLPIILLSSGLVAGADELSV- 1127 Query: 867 AKSLGIDDVLVKPISPSVLFDSLARVLGDPTALAQEMRQ------------SSGIGAEDL 914 VL KP+ S++FDSL + LA Q G+ ED Sbjct: 1128 -----FQTVLNKPVRQSLIFDSLVNIFQGSIGLADYAPQFDQLDLPEFVPDGDGLPTEDN 1182 Query: 915 ALEKLRRIRGARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLM 974 A + +ILL EDN +NQ+VA ++L ++G+ V +A NG ++ L Y LVLM Sbjct: 1183 ATSLQPAL---QILLAEDNLVNQKVAHQMLNNLGYPVAIANNGQEVIDALEKKFYDLVLM 1239 Query: 975 DMQMPEMDGIEATIAIRQN-PRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEE 1033 DMQMP MDGI A IRQ P Q IVAMTAN M GDR+ CL AGM+ ++ KPI + Sbjct: 1240 DMQMPVMDGITACRHIRQTLPLERQPRIVAMTANAMPGDRQECLDAGMDGYISKPISINQ 1299 Query: 1034 LWNKLLHWIP--VDSPLAPETI-----------EESAINTSDPEIS--IPHIPGLNSDDG 1078 L K+L + SP A E I E++ + +D S P DD Sbjct: 1300 L-RKVLQDTSALITSPQAREDIVTLGDKITVVEEQTMVKPTDVTESPLDPTAIAFLRDD- 1357 Query: 1079 LRRVLGKKSLYLKMLHKFVASQSSFLPEITQALGEKDYGFAERLAHTLKGVAGNIG 1134 G +L+ +M+ + + E+ Q L D+ R AH+LK + ++G Sbjct: 1358 --LCGGDLTLFGEMVACYCQESQKLIEELVQGLEVDDFAVIRRTAHSLKSSSASLG 1411 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 298 bits (764), Expect = 5e-83 Identities = 229/670 (34%), Positives = 325/670 (48%), Gaps = 81/670 (12%) Query: 524 SRIKADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQREYLHKIRFSGQHLLGVINDIL 583 +R K++FLA MSHEIRTPMNA+IGMT L L TDLT +Q+ + IR SG+ LL +INDIL Sbjct: 318 NRSKSEFLATMSHEIRTPMNAIIGMTGLLLDTDLTTQQKYFAQTIRNSGETLLTLINDIL 377 Query: 584 DFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRL 643 DFSKIEAGKL +E FDL + L+ ++ A K L L+ +P + GD RL Sbjct: 378 DFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPPNLQGDVTRL 437 Query: 644 GQILINYANNAVKFTEQGDITIVVRLQEY--RDQDVVLYLAVKDTGIGIKPEHIANLFNS 701 QIL+N +NAVKFTE G + + V + ++ + + AV+DTGIGI P LF + Sbjct: 438 RQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAPNQQQALFQA 497 Query: 702 FQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVES------------EYGQ----GST 745 F Q +SS TR FGGTGLGLAIC R+ LMGG + ES + GQ GST Sbjct: 498 FSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCVVGNPPELWQIGQPTIEGST 557 Query: 746 FWAKV-------CLQKSNVIPHRLVLSKDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVE 798 F+ V C + + H L + G+ VLV D ++ M++LL + E Sbjct: 558 FYFTVNLTVLPSCAYSVHNLRHSLFI-----GRSVLVADYDEGRGTRMRNLLASWRLQAE 612 Query: 799 TVE-SGPEALNFLAEADRENHPHSIVFIDWQMPNMDGLEVA----RRLKAMGLNHQ--PS 851 + S P L ++ + + + P G + ++ Q P Sbjct: 613 QITFSSPAKLGEDLKSRLTQKNYGALILHCPYPEGRGKQFTDFDLGKITTWAPTEQDIPV 672 Query: 852 IFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARVLGD---PTALAQEMRQSSG 908 + Y + + PI+P L ++L VLG PT ++ E Sbjct: 673 LVATDIYLSPGERYSGDKPPVQAWIKSPINPDELENTLVDVLGQTEPPTLVSTEAISGPL 732 Query: 909 IGAEDLALEKLRRIRGARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNA 968 L ILL EDN INQ+VA LL+ +G+ VDV NG AL L Sbjct: 733 FPYSSSNL---------TILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGD 783 Query: 969 YALVLMDMQMPEMDGIEATIAIRQNPRYAQLP-IVAMTANVMQGDRERCLQAGMNDHLGK 1027 Y +VLMD++MPEMDG+ AT IR++ ++ P I+A+TA M+GDRERCL +GMND++ K Sbjct: 784 YDVVLMDVEMPEMDGLTATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSK 843 Query: 1028 PIEPEELWNKL-----------------------LHWIPVDSPLAPETIEESAINTSDPE 1064 PI E L L P S PE + + D + Sbjct: 844 PIRLEALQQALQVAATALQSTSQDRMATVSCVSAFEAKPSPSSPCPEDPAGTTLPPIDQD 903 Query: 1065 ISIPHIPGLNSDDGLRRVLGKKSLYLKMLHKFVASQSSFLPEITQALGEKDYGFAERLAH 1124 I I + L+ ++G + + +++ + + L I A+ +D+G AH Sbjct: 904 I-ICSLRDLDRENG-------QLILREIIDIYCQTAPELLQRIKLAIANQDWGNLSSAAH 955 Query: 1125 TLKGVAGNIG 1134 TL + N+G Sbjct: 956 TLGSSSANLG 965 Score = 69.3 bits (168), Expect = 7e-14 Identities = 36/108 (33%), Positives = 62/108 (57%) Query: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEA 986 IL+V+D + N V +ELL G++ +G AL+R+ L+L+D+ MP MDG+E Sbjct: 20 ILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPDLILLDLMMPGMDGLEV 79 Query: 987 TIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 ++Q+P+ +P++ +TA+ + D + G D++ KP P EL Sbjct: 80 CDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFSPPEL 127 Score = 65.9 bits (159), Expect = 8e-13 Identities = 46/134 (34%), Positives = 67/134 (50%), Gaps = 8/134 (5%) Query: 759 PHRLVLSKDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENH 818 PH + + + E +LVVDD V+ +LLE + V SGPEAL + +A + Sbjct: 6 PHPPIATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPD-- 63 Query: 819 PHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVK 878 ++ +D MP MDGLEV RLK + +TA ++ ++A + G D + K Sbjct: 64 ---LILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTK 120 Query: 879 PISPSVLFDSLARV 892 P SP L LARV Sbjct: 121 PFSPPEL---LARV 131 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 296 bits (759), Expect = 2e-82 Identities = 168/405 (41%), Positives = 246/405 (60%), Gaps = 22/405 (5%) Query: 524 SRIKADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQREYLHKIRFSGQHLLGVINDIL 583 ++ K++FLANMSHEIRTPMNA+IGM+ L L+TDLT +QR YL K++++G+ LLG+IN+IL Sbjct: 455 TKAKSEFLANMSHEIRTPMNAIIGMSELVLQTDLTSQQRNYLQKVQYAGELLLGIINNIL 514 Query: 584 DFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRL 643 DFSK+EAGKL +E F +++V+ N+ +++ +A KGL L F +D +P +GD LRL Sbjct: 515 DFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRL 574 Query: 644 GQILINYANNAVKFTEQGDITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQ 703 QILIN NNAVKFT QG+ITI +L + ++ L +V DTGIG+ P+ + LF F Sbjct: 575 SQILINLGNNAVKFTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFN 634 Query: 704 QADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVCL-QKSNVIPHRL 762 Q ++ST+R +GGTGLGLAI K + ELMGG++ +ES GQGSTF VCL S + Sbjct: 635 QGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCLGTASPAVAQDY 694 Query: 763 VLSK---------------DLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEAL 807 ++S+ LEG +L+V+DN+ R DLL V+ +G EAL Sbjct: 695 LVSRVSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEAL 754 Query: 808 NFLAEADRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKA 867 L ++ + + +D QMP ++G + R ++ + I +TA KA Sbjct: 755 TLLT-----SNTYDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKA 809 Query: 868 KSLGIDDVLVKPISPSVLFDSLARVLGDPTALAQEMRQSSGIGAE 912 G++D L KPI P +LF +LA + P + ++ SS + A+ Sbjct: 810 LDAGMNDHLTKPIKPDLLFQTLAHWI-PPNSAREKKNPSSNLKAD 853 Score = 162 bits (411), Expect = 5e-42 Identities = 101/239 (42%), Positives = 140/239 (58%), Gaps = 7/239 (2%) Query: 898 ALAQEMRQS--SGIGAEDLALEKLRRIRGARILLVEDNEINQEVAAELLRDVGFNVDVAA 955 A+AQ+ S S + A+ + + ++ GA ILLVEDNEIN+E A +LL G V VA Sbjct: 689 AVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDLLTSKGLRVQVAN 748 Query: 956 NGLIALERLNNNAYALVLMDMQMPEMDGIEATIAIRQNPRYAQLPIVAMTANVMQGDRER 1015 NG AL L +N Y +LMD+QMP ++G +AT AIRQ + LPI+AMTAN M GD+E+ Sbjct: 749 NGQEALTLLTSNTYDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEK 808 Query: 1016 CLQAGMNDHLGKPIEPEELWNKLLHWIPVDSPLAPETIEESAINTSDPEISIPHIPGLNS 1075 L AGMNDHL KPI+P+ L+ L HWIP +S A E S+ +D +S + G+N Sbjct: 809 ALDAGMNDHLTKPIKPDLLFQTLAHWIPPNS--AREKKNPSSNLKAD--LSFSSMTGINQ 864 Query: 1076 DDGLRRVLGKKSLYLKMLHKFVASQSSFLPEITQALGEKDYGFAERLAHTLKGVAGNIG 1134 G+ + + LY ++L KF S+F + D A R AH++KG A +G Sbjct: 865 QIGM-QYIENVELYHRLLVKFGDRYSNFADQFRTEQASDDPTAATRYAHSIKGAAALLG 922 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 235 bits (599), Expect = 7e-64 Identities = 148/416 (35%), Positives = 226/416 (54%), Gaps = 30/416 (7%) Query: 524 SRIKADFLANMSHEIRTPMNAVIGMTHLALKTDLTP-RQREYLHKIRFSGQHLLGVINDI 582 ++ K+ F+ANMSHE+R+P+NA+IG + L L+T P Q E I+ SG++LL +IN+I Sbjct: 362 AKAKSTFVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQRSGEYLLNLINNI 421 Query: 583 LDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLR 642 LDFSKIEAGK + +FDL +LD++ ++ KA N+G+EL+F D +LPR+ GD ++ Sbjct: 422 LDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRDHDLPRYVYGDEIK 481 Query: 643 LGQILINYANNAVKFTEQGDITIVVRLQEYRDQDVV-------------LYLAVKDTGIG 689 L QIL+N +NA+KFT +G++ + + Q+V+ L +KDTG G Sbjct: 482 LRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYWLDFTIKDTGKG 541 Query: 690 IKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAK 749 I +++LF +F Q +S GTGLGLAI ++ +LMGG++ V S QG+TF Sbjct: 542 ISEVELSHLFEAFSQTESGRNAQ-EGTGLGLAITRQFIKLMGGDINVSSVVDQGTTFSFS 600 Query: 750 VCLQKSNVIPHR--------LVLSKDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVE 801 + + + R L L+ ++LVVDD R ++ LL F +E Sbjct: 601 ILVDLGEITLSREPNSAKKVLALTPGQPVYKILVVDDKSVNRQLLIKLLAPFGFEIEEAS 660 Query: 802 SGPEALNFLAEADRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGRE 861 +G EA+ + PH ++F+D +MP MDG E + +K + ++ +TA E Sbjct: 661 NGQEAIALWESWE----PH-LIFMDMRMPVMDGYEATKYIKGQVKGNATAVVALTASVLE 715 Query: 862 ELFVKAKSLGIDDVLVKPISPSVLFDSLARVLGDPTALAQEMRQSSGIGAEDLALE 917 E S G DD L KP + +FDSL + LG E + ED AL+ Sbjct: 716 EEKAIVLSAGCDDFLRKPFRENTIFDSLTKHLG--VTYVYESAPNKNDNHEDTALK 769 Score = 75.5 bits (184), Expect = 1e-15 Identities = 45/137 (32%), Positives = 76/137 (55%), Gaps = 6/137 (4%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 +IL+V+D +N+++ +LL GF ++ A+NG A+ + L+ MDM+MP MDG E Sbjct: 631 KILVVDDKSVNRQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYE 690 Query: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKLLHWIPVD 1045 AT I+ + +VA+TA+V++ ++ L AG +D L KP +++ L + V Sbjct: 691 ATKYIKGQVKGNATAVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTIFDSLTKHLGV- 749 Query: 1046 SPLAPETIEESAINTSD 1062 + ESA N +D Sbjct: 750 -----TYVYESAPNKND 761 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 200 bits (508), Expect = 3e-53 Identities = 133/382 (34%), Positives = 199/382 (52%), Gaps = 18/382 (4%) Query: 524 SRIKADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQREYLHKIRFSGQHLLGVINDIL 583 +R K +FLA++SHE+RTP+NA+IG + L + R L I SG+HLL +INDIL Sbjct: 160 NRAKTEFLASISHELRTPLNAIIGFSQLLHRDPSLAPHRPTLDIINRSGEHLLELINDIL 219 Query: 584 DFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRL 643 + SKIEAG+ + D ++LDN+ L +A K L L + +P D +L Sbjct: 220 EMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEWIKTDGGKL 279 Query: 644 GQILINYANNAVKFTEQGDITIVVR------LQEYRDQDVVLYLAVKDTGIGIKPEHIAN 697 Q+LIN NA+KFT QG +T+ V+ E + + L+ V DTG GI + Sbjct: 280 RQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPGIAAHEMDE 339 Query: 698 LFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVCLQ---K 754 LF F Q ++ ++ G GLGL I ++ +LMGG++ V S+ QGS F+ + +Q Sbjct: 340 LFVPFAQTETG-LKSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFAIPVQVMAA 398 Query: 755 SNVIPHRLVLS---KDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLA 811 P ++ D ++VLVVDD +RL+++ LL + FVV+ E+G A+ Sbjct: 399 PKPTPETSAVTLPPLDQYNQKVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAI---- 454 Query: 812 EADRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLG 871 A E+ ++ +D QMP +DG +++KA I +TA E + S G Sbjct: 455 -ALWESWHPQVILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTASAFEGERAEILSAG 513 Query: 872 IDDVLVKPISPSVLFDSLARVL 893 DD L KP P L LA+ L Sbjct: 514 CDDFLSKPFRPEELIALLAKHL 535 Score = 78.6 bits (192), Expect = 1e-16 Identities = 44/122 (36%), Positives = 69/122 (56%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 ++L+V+D ++ + +LL +GF V A NG +A+ + ++LMDMQMP +DG Sbjct: 419 KVLVVDDRPESRLLLRQLLTSLGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRS 478 Query: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKLLHWIPVD 1045 T I+ +P+ I+A+TA+ +G+R L AG +D L KP PEEL L + V Sbjct: 479 TTQKIKASPQGQHTIIIALTASAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVA 538 Query: 1046 SP 1047 P Sbjct: 539 LP 540 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 187 bits (476), Expect = 1e-49 Identities = 103/228 (45%), Positives = 147/228 (64%), Gaps = 5/228 (2%) Query: 524 SRIKADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQ-REYLHKIRFSGQHLLGVINDI 582 +R+K++FLAN+SHEIRTPMNA++G L L+ DL+ Q ++YL+ I S + LL +I+DI Sbjct: 597 NRVKSEFLANISHEIRTPMNAILGFCDLLLQKDLSLSQTKKYLNAIGSSSKILLALIDDI 656 Query: 583 LDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLR 642 LD SKIEAGKL + DL ++ + + KA +K L L ID L + D +R Sbjct: 657 LDISKIEAGKLVIHLEPVDLRVIIREIKQIFDYKAESKSLLLTIQIDETLNQAIYFDAVR 716 Query: 643 LGQILINYANNAVKFTEQGDITIVVRLQ--EYRDQDVVLYLAVK--DTGIGIKPEHIANL 698 L QIL N NA+KFTE+G + I + ++ + R Q + LA++ DTGIGI PE A + Sbjct: 717 LRQILFNLVGNALKFTEEGQVFIYIGVEGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKI 776 Query: 699 FNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTF 746 F+ F Q+ +TR +GGTGLGL I +R+ L+GGE+ + S G+GSTF Sbjct: 777 FDVFTQSQGQSTRKYGGTGLGLTITRRLTALLGGEISLSSRLGEGSTF 824 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 169 bits (427), Expect = 6e-44 Identities = 113/320 (35%), Positives = 168/320 (52%), Gaps = 22/320 (6%) Query: 445 YVDLGDR-------QQMLEELTQFGRSQSRVYKMYNPRGEIRDILATFLATDYEGQK--G 495 ++ LGDR +Q LE+ T S ++ GEI L +G+ Sbjct: 330 FIHLGDRPMFWQAIEQSLEDPTM---ELSTELRLEAANGEIYHCLLRGQIHQEQGEAFVK 386 Query: 496 ILGWLADITPIXXXXXXXXXXXXXXXXXSRIKADFLANMSHEIRTPMNAVIGMTHLALKT 555 I+G +ADIT I +++K +FLANMSHE+RTP+N+++GM Sbjct: 387 IIGTIADITEIKKAEEQLKLSNKILAKATQLKDEFLANMSHELRTPLNSILGMIETLQNQ 446 Query: 556 DLTP---RQREYLHKIRFSGQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATL 612 P +Q + L + SG+HLL +INDILD SKIEAG++ ++ + ++++ T Sbjct: 447 VYGPLNGKQVQSLEIVENSGRHLLSLINDILDLSKIEAGRMDLDLNPTSVSALVNHSLTF 506 Query: 613 ISEKATNKGLELLFDIDRNLPRHFIGDPLRLGQILINYANNAVKFTEQGDITIVV----- 667 + + A K + L +I NLP + D RL Q+LIN NNA+KFT +G +V Sbjct: 507 VQQFAIQKQINLSSEIIPNLPDVLV-DKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIK 565 Query: 668 -RLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRI 726 + +E L V DTGIGI+ + + N+F F Q DS+ R + GTGLGL++ K+I Sbjct: 566 EQGKENSQSPPQLSFTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKI 625 Query: 727 AELMGGEVGVESEYGQGSTF 746 EL GG V V S+ +GS F Sbjct: 626 VELHGGSVTVTSKLNEGSRF 645 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 164 bits (416), Expect = 1e-42 Identities = 97/228 (42%), Positives = 143/228 (62%), Gaps = 7/228 (3%) Query: 527 KADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQREY---LHKIRFSGQHLLGVINDIL 583 K+ FLANMSHE+RTP+NA+IG + + ++ E L KI SG+ LL +IND+L Sbjct: 438 KSIFLANMSHELRTPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLL 497 Query: 584 DFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRL 643 D SKIEAGK+ + F+L +++ + IS N +L +I + GD ++L Sbjct: 498 DISKIEAGKMELYLETFNLKELIAGILDTISPLLKNNNNKLEVEISLESEEVY-GDLIKL 556 Query: 644 GQILINYANNAVKFTEQGDITIVVRLQEYR-DQDVVLYLAVKDTGIGIKPEHIANLFNSF 702 Q ++N +NA KFT+ G I+ +V +E++ D+ L VKDTGIG+ E ++ LF F Sbjct: 557 RQGILNLLSNASKFTKDGIISFIV--EEFKVDEKDWLSFQVKDTGIGLTEEQMSKLFQPF 614 Query: 703 QQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKV 750 QADSSTTR +GGTGLGLAI ++ ++MGG++ + SE G GS+F K+ Sbjct: 615 TQADSSTTRKYGGTGLGLAITRKFCQMMGGDIYLTSEIGVGSSFTIKL 662 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 145 bits (366), Expect = 8e-37 Identities = 91/240 (37%), Positives = 132/240 (55%), Gaps = 9/240 (3%) Query: 524 SRIKADFLANMSHEIRTPMNAVIGMTHLALK--TDLTPRQREYLHKIRFSGQHLLGVIND 581 SR+K++FLA+ +HE+RTP+N +IG L L D + E++ + S LL +IND Sbjct: 191 SRLKSEFLASTTHELRTPLNGIIGFLRLILDDMADSEAEKHEFVEEAYQSALLLLNLIND 250 Query: 582 ILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPL 641 ILD +KIEAG++ +E D +VL +A NKGL P G+ Sbjct: 251 ILDLAKIEAGRVGIELEVVDFSEVLQATENFALPQAQNKGLSFNLTAPNQGPLLVYGNQR 310 Query: 642 RLGQILINYANNAVKFTEQGDITIVVR------LQEYRDQDVVLYLAVKDTGIGIKPEHI 695 L Q+++N NA+KFT +G IT+ V L E + +L ++V DTGIG+ E Sbjct: 311 WLLQVMLNIVGNAIKFTHEGGITVAVEVMPRTVLWEGVQKPGLLKVSVGDTGIGVSLEQQ 370 Query: 696 ANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVES-EYGQGSTFWAKVCLQK 754 + LF F Q D S ++ +GGTGLGL I +++ E MGG+V S G GST V L++ Sbjct: 371 SKLFKKFVQIDGSHSKAYGGTGLGLVISQKLVETMGGKVAFFSMGEGLGSTVTFTVLLEE 430 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 138 bits (348), Expect = 9e-35 Identities = 107/383 (27%), Positives = 187/383 (48%), Gaps = 24/383 (6%) Query: 526 IKADFLANMSHEIRTPMNAVIGMTHLALK-----TDLTP-RQREYLHKIRFSGQHLLGVI 579 +K+ F+ N+SHE+RTP+ ++IG++ L+ L P +Q+ YL I+ +G+ LL I Sbjct: 378 LKSQFINNISHELRTPLTSIIGLSATLLRWFDHPASLPPAKQQYYLLNIQENGKKLLDQI 437 Query: 580 NDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPR-HFIG 638 N I+ S++E+G+ + F L + V + A + + L D N+ + F Sbjct: 438 NSIIQLSQLESGQTALNCQSFSLHTLAQTVIHSLLGVAIKQQINLELDYQINVGQDQFCA 497 Query: 639 DPLRLGQILINYANNAVKFTEQGDITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHIANL 698 D RL QIL NNA+KFT + T+++R+ + +Q + V+DTGIGI + + L Sbjct: 498 DQERLDQILTQLLNNALKFTP-AEGTVILRIWKESNQAI---FQVEDTGIGINEQQLPVL 553 Query: 699 FNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVCLQK---- 754 F +F+ A S T + G+GLA+ K++ EL GG + VES GQG+ F + Q Sbjct: 554 FEAFKVAGDSYTSFYETGGVGLALTKQLVELHGGYIEVESSPGQGTIFTTVIPQQNFPPT 613 Query: 755 -SNVIPHRLVLSKDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEA 813 + +L + +++ D + A L+ +LL + V + AL + Sbjct: 614 TKGQVQDKLDAAMPFNSSVIVIEQDEEIATLIC-ELLTVANYQVIWLIDTTNALQQV--- 669 Query: 814 DRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGID 873 E ++ +D +D EV R +K + ++F+++ + GID Sbjct: 670 --ELLQPGLIIVDGDF--VDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGID 725 Query: 874 DVLVKPISPSVLFDSLARVLGDP 896 D L+KP+ P +L + + +P Sbjct: 726 DYLLKPLQPELLLQRVQSIQQEP 748 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 137 bits (345), Expect = 2e-34 Identities = 153/625 (24%), Positives = 276/625 (44%), Gaps = 49/625 (7%) Query: 162 VIAVMLAFVALLFRFHSAKIFHTTHGPALGSSALVMGLSTSGMHYTAMTATHFICRPWGE 221 +I + + F+ L + + ++ +G S L + L T + HF E Sbjct: 564 IILITIDFIVLEVNYRAVELSGYDQEELIGHSLLDLRLLTPEFY---AQQRHFWRTLKRE 620 Query: 222 FFIQGIDIQEVA-----IAVTISITLLT---GGVMLFVLREISIQNQQQKILVATESWYR 273 Q D++ V I+V IS +++T ++ ++ +I++Q Q L + R Sbjct: 621 QISQLTDVRLVKKSGELISVDISASVITYENHSIVQCIVHDITLQKTIQAQLQRENYFRR 680 Query: 274 QIIEYAPEGIMVLDAQGNI-----ILANTSIEKLFGYSQTELIGXXXXXXXXXXXXXXXX 328 Q++E EG+ V + N ++ + GYSQ E I Sbjct: 681 QLLEKMVEGLFVCYEVEQFPFLQFTVWNPMMKNITGYSQEE-INQCGWYETLYSHGQPQE 739 Query: 329 XXXXXXEDVGPTCPLDQEEFEILGTRYDGSEFPIEVSLTSLPSLSQREMNIFASVRDISA 388 + V + +EE++I+ R DG+ +E+S + S +Q NI A ++DI+ Sbjct: 740 AVRVRMKAVALGVDMVKEEWQII--RRDGALRTVEISTALITSNNQT--NILAVIQDITD 795 Query: 389 RQEAQQQILRQREHLQSVLDSAPVGVAITVNGITQ--FANPHIGELVDLKVGDSPQKIYV 446 ++ Q I L+ ++++ P+ + + + NP L G +P ++Y Sbjct: 796 QKRQLQIIQNNEATLRCIVENLPIFFGMRTINFSNWYYINPSFESLT----GYTPDEMYE 851 Query: 447 D-----LGDRQQMLEELTQF--GRSQSRVYKMYNPRG-EIRDILATFLATDYEGQKGILG 498 D R++ E L Q + ++ M G +I FL D ++ Sbjct: 852 DPLLWQKIHREEYAENLEQARPNLGEWTIFSMEKKDGTQIWAQTVEFLVDDLSDTARVVV 911 Query: 499 WLADITPIXXXXXXXXXXXXXXXXXSRIKADFLANMSHEIRTPMNAVIGMTHLALKTD-- 556 + DIT I + K+ F+ +SHE RTP+ ++IG L K Sbjct: 912 FGQDITDIKRAEIETLRSLVKERELNEAKSQFVDIVSHEFRTPLTSIIGFGELLSKYFDR 971 Query: 557 -LTPRQREYLHKIRFSGQHLLGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISE 615 T ++++Y++ I+ S Q L +I+D+L S+ +A K+ +E + +L + ++ LI Sbjct: 972 LSTEKKQQYINNIQNSSQRLKQLIDDVLSISRYDANKIEIELGNINLRNLAND---LIEN 1028 Query: 616 KATNKGLELLFDIDRNLP--RHFIGDPLRLGQILINYANNAVKFTEQGDITIVVRLQEYR 673 + G E F+++ +L H + D L IL N +NA+K++ G + L + Sbjct: 1029 FSCGLGSEHNFELNYHLKPDEHSLVDVRLLRHILENILSNAIKYSAPGS---TITLDISK 1085 Query: 674 DQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGE 733 D++ +L+ V+D GIGI + LF +F +A S + GTGLGL+I KR E GG Sbjct: 1086 DEEHLLF-QVRDEGIGIPLQDQEKLFEAFHRA--SNVGDIPGTGLGLSIVKRYVEFQGGT 1142 Query: 734 VGVESEYGQGSTFWAKVCLQKSNVI 758 + V S G+G+T K+ L + +I Sbjct: 1143 IEVISMPGKGTTMVIKLPLNPAPII 1167 Score = 59.7 bits (143), Expect = 5e-11 Identities = 52/228 (22%), Positives = 96/228 (42%), Gaps = 33/228 (14%) Query: 234 IAVTISITLLTGGVMLFVLREISIQNQQQKILVATESWYRQIIEYAPEGIMVLDAQGNII 293 + + + + GG+ L+ R+IS ++++ + +E+ +R I +G++VLD I Sbjct: 242 LLINLKKVAINGGIYLYSCRDISEWARKEQAIRNSEANFRDIFASIKDGLLVLDEDNYIC 301 Query: 294 LANTSIEKLFGYSQTELIGXXXXXXXXXXXXXXXXXXXXXXEDVGPTCPLDQEEFEILGT 353 AN KL + EL+G PL+ EF +L Sbjct: 302 YANAQAVKLLNCTLEELVGTIGS-------------------------PLEDTEFSLLVD 336 Query: 354 RYDGSEFPIEVSLTSLPSLSQREMNIFASVRDISARQEAQQQILRQREHLQSVLDSAPVG 413 DG+ + ++VS+T + Q S+RDIS R+ + Q+ + +L++ G Sbjct: 337 --DGTIYTVDVSVTEITWYGQTAK--LVSLRDISDRKRMENQLRENQNKYYRLLENLDNG 392 Query: 414 VAI-TVNGITQFANPHIGE---LVDLKVGDSPQKIYVDLGDRQQMLEE 457 V + N +ANP L DL+ D + ++ + LE+ Sbjct: 393 VIVHNANAEIVYANPKAESFLGLTDLEGRDIDDEYWMFFDKEGEKLEK 440 Score = 42.7 bits (99), Expect = 7e-06 Identities = 33/119 (27%), Positives = 59/119 (49%), Gaps = 14/119 (11%) Query: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 +VL+VDD + + L+ + + T SG EA+ A + +++ + +M Sbjct: 8 KVLLVDDQRENLVALSRALDSLPVEIITANSGQEAIATAATTE-----FALMILAQEMSE 62 Query: 832 MDGLEVARRLKAMGLNHQ-PSIFIVTAYGREELFVKAKS----LGIDDVLVKPISPSVL 885 +DGL A+ L++ L Q P IF+ R+E+ KA + LG+ D L +P + + L Sbjct: 63 LDGLNTAKILRSFPLAEQTPIIFL----ARQEIITKAMAEINILGLVDFLAQPPNQNFL 117 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 130 bits (326), Expect = 3e-32 Identities = 84/228 (36%), Positives = 125/228 (54%), Gaps = 9/228 (3%) Query: 531 LANMSHEIRTPMNAVIGMTHLA---LKTDLTPRQREYLHKIRFSGQHLLGVINDILDFSK 587 L+++ HE RTP+ A+IG + L L P+Q +Y+ S +HLL ++ND LD SK Sbjct: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 Query: 588 IEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRLGQIL 647 I+A + ++ + V +++ KA K L L ID + ++ D R QIL Sbjct: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYV-DQRRWKQIL 308 Query: 648 INYANNAVKFTEQGDITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADS 707 IN +N VKFT +G +T+ V+ D L +V DTGIGI PE +LF F+Q Sbjct: 309 INLLSNGVKFTPKGSVTLAVKAT-----DKALIFSVIDTGIGIDPEDQRDLFQPFKQISH 363 Query: 708 STTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVCLQKS 755 + GTGLGLA+ +R+A+L GG++ + S G GS F A + L+ S Sbjct: 364 PPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPLKTS 411 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 92.8 bits (229), Expect = 6e-21 Identities = 74/242 (30%), Positives = 121/242 (50%), Gaps = 18/242 (7%) Query: 524 SRIKADFLANMSHEIRTPMNAVIGMTHLALKTD---LTPRQREY-LHKIRFSGQHLLGVI 579 SR+K F + SHE RTP++ + L ++ L P +R LH+I+ S ++++ ++ Sbjct: 66 SRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRNLHRIQNSVKNMVQLL 125 Query: 580 NDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFD-IDRNLPRHFIG 638 +DIL ++ EAGKL DL + I E + + FD I + Sbjct: 126 DDILIINRAEAGKLEFNPNWLDLKLLFQQ---FIEEIQLSVSDQYYFDFICSAQDTKALV 182 Query: 639 DPLRLGQILINYANNAVKFTEQG-DITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHIAN 697 D + IL N +NA+K++ G I I + L D + +++ V D GIGI PE Sbjct: 183 DERLVRSILSNLLSNAIKYSPGGGQIKIALSL----DSEQIIF-EVTDQGIGISPEDQKQ 237 Query: 698 LFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVCLQKSNV 757 +F F + + RN GTGLGL + K+ +L G + ++S QG+T +CL++ N Sbjct: 238 IFEPFHRGKN--VRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTT--VTICLKRYNH 293 Query: 758 IP 759 +P Sbjct: 294 LP 295 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 89.4 bits (220), Expect = 6e-20 Identities = 47/114 (41%), Positives = 74/114 (64%) Query: 925 ARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGI 984 A++LLVEDNE+N+++ + L G+ V +A +G A+ + + L+LMDM +P +DG Sbjct: 5 AKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGW 64 Query: 985 EATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKL 1038 AT I+ +P A +PI+A+TA+ M DRER + AG +D+ KPIE + L K+ Sbjct: 65 TATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKM 118 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 84.7 bits (208), Expect = 2e-18 Identities = 61/221 (27%), Positives = 110/221 (49%), Gaps = 18/221 (8%) Query: 535 SHEIRTPMNAV---IGMTHLALKTDLTPRQREYLHKIRFSGQHLLGVINDILDFSKIEA- 590 SH+++ P+N V + + + L ++++ + +I+DIL ++K++ Sbjct: 537 SHDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQ 596 Query: 591 -GKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRHFIGDPLRLGQILIN 649 +L + +DK L N+ I E +I+ + D ++L Q+ N Sbjct: 597 YAQLTFTDVQEVVDKALANLKQRIEESGA--------EIEVGSMPAVMADQIQLMQVFQN 648 Query: 650 YANNAVKFTEQGDITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHIANLFNSFQQADSST 709 N +KF GD + +++ R +D ++ AV+D GIGI P+ +F FQ+ T Sbjct: 649 LIANGIKFA--GDKSPKIKIWGDRQEDAWVF-AVQDNGIGIDPQFFERIFVIFQRLH--T 703 Query: 710 TRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKV 750 + GTG+GLAICK+I E G++ +ES G+GSTF+ + Sbjct: 704 RDEYKGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSI 744 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 77.4 bits (189), Expect = 3e-16 Identities = 43/109 (39%), Positives = 65/109 (59%), Gaps = 1/109 (0%) Query: 927 ILLVEDNEINQEVAAELLRDVG-FNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 +LLV+D +E L D G F VD+AAN A + L ++ ALV+ D+ MP++DG + Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQVDGYQ 117 Query: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 +R++ R+ LP+V +TA M GDR + Q G + L KP +P+EL Sbjct: 118 FLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDEL 166 Score = 44.3 bits (103), Expect = 2e-06 Identities = 48/197 (24%), Positives = 85/197 (43%), Gaps = 27/197 (13%) Query: 773 VLVVDDNDHARLVMKDLLEQM-KFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 +L+VDD R ++ LE F V+ + EA ++L ++H ++V D MP Sbjct: 58 LLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYL-----QHHLPALVISDIMMPQ 112 Query: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISP----SVLFD 887 +DG + ++L+ + +TA G ++ G D L KP P +++ + Sbjct: 113 VDGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRN 172 Query: 888 SLAR----------------VLGDPTALAQEMRQSSGIGAEDLALEKLRRIRGARIL-LV 930 LAR + + AL +++ Q SGI ++ R +L LV Sbjct: 173 LLARQQASSDAGSESAKLQEIYQEIRALKEQIGQPSGIHTTPSPIKLDFTPREQSVLDLV 232 Query: 931 EDNEINQEVAAELLRDV 947 +N+E+AA+L V Sbjct: 233 SQGLMNKEIAAQLKTSV 249 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 74.3 bits (181), Expect = 2e-15 Identities = 36/108 (33%), Positives = 68/108 (62%) Query: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEA 986 +LLVED+ +E+ + +L+D G+ V +A +G+ ALE+L N + LV++D+ MP M+G E Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYEV 89 Query: 987 TIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 I+ +P+ +P++ ++ + DR ++ G + ++ KP +P EL Sbjct: 90 CRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMEL 137 Score = 46.2 bits (108), Expect = 6e-07 Identities = 33/121 (27%), Positives = 56/121 (46%), Gaps = 5/121 (4%) Query: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 VL+V+D+ R ++ +L+ + V G EAL L +N +V +D MP M Sbjct: 30 VLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKL-----QNFSPDLVVLDIVMPRM 84 Query: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARV 892 +G EV RR+K+ + + ++ G E G D + KP P L ++ ++ Sbjct: 85 NGYEVCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTIKQL 144 Query: 893 L 893 L Sbjct: 145 L 145 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 70.5 bits (171), Expect = 3e-14 Identities = 43/110 (39%), Positives = 68/110 (61%), Gaps = 4/110 (3%) Query: 925 ARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGI 984 +++LLV+D+ E+ + LL GF+V+ A NGL AL++L N +Y LVL+D+ MP+++GI Sbjct: 2 SKLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKL-NESYKLVLLDVMMPKLNGI 60 Query: 985 EATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 E IR + + +P++ +TA DR L+ G +D L KP EL Sbjct: 61 ETLKEIR---KVSNVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDREL 107 Score = 53.5 bits (127), Expect = 4e-09 Identities = 36/122 (29%), Positives = 60/122 (49%), Gaps = 9/122 (7%) Query: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 ++L+VDD+ ++ LLE F VET +G EAL L N + +V +D MP Sbjct: 3 KLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKL------NESYKLVLLDVMMPK 56 Query: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLAR 891 ++G+E + ++ + + ++TA G + V LG DD L KP + L + Sbjct: 57 LNGIETLKEIRKVS---NVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKA 113 Query: 892 VL 893 +L Sbjct: 114 IL 115 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 68.2 bits (165), Expect = 2e-13 Identities = 36/108 (33%), Positives = 59/108 (54%) Query: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEA 986 +LLV+D+ + + L G+ V A NG AL+ L +++ D+ MPEMDG Sbjct: 10 LLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMDGYAF 69 Query: 987 TIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 +RQNP + +P++ ++A +R + L G + ++ KP EPEEL Sbjct: 70 IEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEEL 117 Score = 52.0 bits (123), Expect = 1e-08 Identities = 37/138 (26%), Positives = 62/138 (44%), Gaps = 5/138 (3%) Query: 764 LSKDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIV 823 +S+ E +L+VDD+ + L++KD LE + V T +G EAL+ L + ++ Sbjct: 1 MSQSKENYHLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPD-----MI 55 Query: 824 FIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPS 883 D MP MDG +++ + ++A G+ VK ++G D + KP P Sbjct: 56 VCDIMMPEMDGYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPE 115 Query: 884 VLFDSLARVLGDPTALAQ 901 L + L L Q Sbjct: 116 ELAAQVQSCLRQADRLLQ 133 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 67.4 bits (163), Expect = 3e-13 Identities = 49/148 (33%), Positives = 75/148 (50%), Gaps = 18/148 (12%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 RILLVED+ E AE L D + VD+A + +A + + Y LV++D+ +PE+DGI Sbjct: 2 RILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGI- 60 Query: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNK-------- 1037 T+ + +PI+ MTA D+ L AG +D++ KP++ EL+ + Sbjct: 61 -TLCQKWRSHSYLMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELFARVRALLRRG 119 Query: 1038 ------LLHWIPVDSPLAPETIEESAIN 1059 +L W P+ L P T E S N Sbjct: 120 CATCQPVLEWGPI--RLDPSTYEVSYDN 145 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 65.9 bits (159), Expect = 8e-13 Identities = 39/112 (34%), Positives = 63/112 (56%), Gaps = 2/112 (1%) Query: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYA--LVLMDMQMPEMDGI 984 IL+VED I +E+ E L + + A NG +AL LN+ L++ D+ MPEMDG Sbjct: 4 ILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMDGH 63 Query: 985 EATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWN 1036 A+++N + A +P + +TA D + + +G +D+L KP + E+L N Sbjct: 64 GLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLN 115 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 63.9 bits (154), Expect = 3e-12 Identities = 39/121 (32%), Positives = 67/121 (55%), Gaps = 8/121 (6%) Query: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 R+L+V+D + +K +L K+VV+ V G +A ++L E +++ +DW +P Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTE---YTLAIVDWLLPG 58 Query: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLAR 891 + GLE+ ++L+ G N P + ++TA G E V+ G DD L KP V+ + LAR Sbjct: 59 LSGLELCQKLRTQG-NSLP-VLMLTALGEPENRVEGLDAGADDYLTKPF---VMAELLAR 113 Query: 892 V 892 + Sbjct: 114 L 114 Score = 45.4 bits (106), Expect = 1e-06 Identities = 36/115 (31%), Positives = 54/115 (46%), Gaps = 4/115 (3%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNN--AYALVLMDMQMPEMDG 983 RILLVED ++L + VD +G A + L N Y L ++D +P + G Sbjct: 2 RILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSG 61 Query: 984 IEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKL 1038 +E +R LP++ +TA +R L AG +D+L KP EL +L Sbjct: 62 LELCQKLRTQGN--SLPVLMLTALGEPENRVEGLDAGADDYLTKPFVMAELLARL 114 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 63.2 bits (152), Expect = 5e-12 Identities = 44/160 (27%), Positives = 76/160 (47%), Gaps = 17/160 (10%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 +IL+VED +E+ A L ++V A++ A+ ++ N L+L+D +P GI+ Sbjct: 4 KILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENP-KLILLDWMLPGRSGIQ 62 Query: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEP-------EELWNKL 1038 I++ YA +PI+ +TA + D CL AG +D++ KP P E +W ++ Sbjct: 63 FIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQILLARIEAVWRRI 122 Query: 1039 L----HWIPVDSPLAPET-----IEESAINTSDPEISIPH 1069 +I +D E ++ IN S E + H Sbjct: 123 YEQQSQFIQIDELSIDENAQRVFFQQQEINLSSTEFKLLH 162 Score = 50.1 bits (118), Expect = 4e-08 Identities = 39/166 (23%), Positives = 77/166 (46%), Gaps = 16/166 (9%) Query: 771 KRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMP 830 +++L+V+D R ++ L Q + V A+N + E + ++ +DW +P Sbjct: 3 RKILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENPK------LILLDWMLP 56 Query: 831 NMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLA 890 G++ + +K I ++TA EE + + G DD + KP SP +L LA Sbjct: 57 GRSGIQFIQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQIL---LA 113 Query: 891 RVLGDPTALAQEMRQSSGIGAEDLALEKLRRIRGARILLVEDNEIN 936 R+ + ++ QS I ++L++++ A+ + + EIN Sbjct: 114 RIEAVWRRIYEQ--QSQFIQIDELSIDE-----NAQRVFFQQQEIN 152 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 62.4 bits (150), Expect = 8e-12 Identities = 41/138 (29%), Positives = 68/138 (49%), Gaps = 11/138 (7%) Query: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 +L+V+D+ ++++ LE+ +F G L E + ++ +D +P + Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPD-----LIVLDLMLPKL 68 Query: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARV 892 DGLEV R++ + P I ++TA G E + S G DD LVKP SP L +ARV Sbjct: 69 DGLEVCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREL---VARV 125 Query: 893 LGDPTALAQEMRQSSGIG 910 L +++RQ +G Sbjct: 126 ---RALLRRQLRQGQPVG 140 Score = 58.5 bits (140), Expect = 1e-10 Identities = 35/108 (32%), Positives = 54/108 (50%) Query: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEA 986 IL+VED++ ++ E L F V +G L L+++D+ +P++DG+E Sbjct: 14 ILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLEV 73 Query: 987 TIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 IRQ P I+ +TA + DR L G +D+L KP P EL Sbjct: 74 CTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSPREL 121 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 62.0 bits (149), Expect = 1e-11 Identities = 33/108 (30%), Positives = 62/108 (57%) Query: 927 ILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEA 986 ILLV+D N ++ ++LL ++G+ V +G +AL L L+L+D++MP+MDG + Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMPDMDGYQV 70 Query: 987 TIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 I++ +PI+ ++A D+ + + G D++ KP + EE+ Sbjct: 71 CEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQIEEV 118 Score = 46.6 bits (109), Expect = 5e-07 Identities = 41/139 (29%), Positives = 67/139 (48%), Gaps = 14/139 (10%) Query: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 +L+VDD + ++ DLL + + V +V SG AL L + P ++ +D +MP+M Sbjct: 11 ILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTL----QVKRP-DLILLDIKMPDM 65 Query: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARV 892 DG +V +K I ++A G VKA G D + KP + + +AR+ Sbjct: 66 DGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQ---IEEVVARI 122 Query: 893 LGDPT------ALAQEMRQ 905 G T AL +E+R+ Sbjct: 123 EGQFTIQRQRIALKREVRK 141 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 58.2 bits (139), Expect = 2e-10 Identities = 35/113 (30%), Positives = 61/113 (53%), Gaps = 2/113 (1%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 RILL+ED+ + L +GF VD +G + L + Y V++D+ +P++DG+E Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLE 61 Query: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKL 1038 R N + +P++ +TA +R + LQ+G +D+L KP E+ +L Sbjct: 62 VLQQWRSN--HQDVPVLILTARDTLDERVKGLQSGADDYLCKPFALAEVAARL 112 Score = 44.7 bits (104), Expect = 2e-06 Identities = 32/111 (28%), Positives = 56/111 (50%), Gaps = 9/111 (8%) Query: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 R+L+++D++ ++ L ++ F V+ G + L A P+ V +D +P Sbjct: 2 RILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSA-----PYDAVVLDLTLPK 56 Query: 832 MDGLEVARRLKAMGLNHQP-SIFIVTAYGREELFVKAKSLGIDDVLVKPIS 881 +DGLEV ++ ++ NHQ + I+TA + VK G DD L KP + Sbjct: 57 LDGLEVLQQWRS---NHQDVPVLILTARDTLDERVKGLQSGADDYLCKPFA 104 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 55.5 bits (132), Expect = 1e-09 Identities = 28/109 (25%), Positives = 60/109 (55%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 RIL+++D+ ++ + L G++V A +G+ L+++D+ +P++DG Sbjct: 3 RILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFT 62 Query: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 +R++ R A +P++ +TA D+ + +G +D+L KP + EE+ Sbjct: 63 VCQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKPFDVEEM 111 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 55.1 bits (131), Expect = 1e-09 Identities = 38/122 (31%), Positives = 59/122 (48%), Gaps = 5/122 (4%) Query: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 ++LVVDD+ R+ ++ L++ VE +G EAL AE E +V +D MP Sbjct: 13 KILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPE-----VVLLDAVMPV 67 Query: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLAR 891 MDG + L + N P + ++T E +A G D + KPI +VL + R Sbjct: 68 MDGFACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKR 127 Query: 892 VL 893 +L Sbjct: 128 LL 129 Score = 48.5 bits (114), Expect = 1e-07 Identities = 36/109 (33%), Positives = 56/109 (51%), Gaps = 8/109 (7%) Query: 925 ARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGI 984 A+IL+V+D+ + L+ G V++A NG AL + +VL+D MP MDG Sbjct: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 Query: 985 ---EATIAIRQNPRYAQLPIVAMTANV-MQGDRERCLQAGMNDHLGKPI 1029 +A + I QNP P+V M + + +R +AG D++ KPI Sbjct: 72 ACCQALMKIYQNPS----PLVLMITGLDDEASVDRAFEAGAIDYVTKPI 116 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 55.1 bits (131), Expect = 1e-09 Identities = 46/152 (30%), Positives = 74/152 (48%), Gaps = 4/152 (2%) Query: 926 RILLVEDNEI-NQEVAAELLRDVGFNVDVAA-NGLIALERLNNNAYALVLMDMQMPEMDG 983 R+L+ +D+ I Q +A + RD V A NG A+ + + LMD++MPE++G Sbjct: 8 RVLIADDHAIFRQGLATIINRDPDMQVIAQAENGEQAIALFEEHQPDVTLMDLRMPEVEG 67 Query: 984 IEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKLLHWIP 1043 + A AI ++A+ I+ +T D R LQAG +L K EP+EL N + Sbjct: 68 VAAISAICAIVKFAR--IIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELLNAIRTVHR 125 Query: 1044 VDSPLAPETIEESAINTSDPEISIPHIPGLNS 1075 + P+ + S+PE+S + L S Sbjct: 126 GQKYIPPDVGAKLVQRLSNPELSERELEVLGS 157 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 54.3 bits (129), Expect = 2e-09 Identities = 37/110 (33%), Positives = 53/110 (48%), Gaps = 2/110 (1%) Query: 925 ARILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGI 984 A ILLV+D E ++ L G +DVA G L Y L+++D +P++ G+ Sbjct: 2 ANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 Query: 985 EATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 E IR P++ +TA DR L AG +D+L KP E EL Sbjct: 62 EICRQIRILGH--STPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFELREL 109 Score = 46.2 bits (108), Expect = 6e-07 Identities = 30/120 (25%), Positives = 53/120 (44%), Gaps = 10/120 (8%) Query: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 +L+VDD + + L ++ + G L + ++ +DW +P + Sbjct: 4 ILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQ-----YDLLILDWMLPQV 58 Query: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARV 892 GLE+ R+++ +G H + +TA + V G DD L+KP L + LARV Sbjct: 59 SGLEICRQIRILG--HSTPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFE---LRELLARV 113 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 53.5 bits (127), Expect = 4e-09 Identities = 40/125 (32%), Positives = 60/125 (48%), Gaps = 4/125 (3%) Query: 759 PHRLVLSKDLEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAE--ADRE 816 PH L + R+LVV+D R + L++ + V V+ G +AL L E D Sbjct: 19 PHSLQHQEIPPSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPG 78 Query: 817 NHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVL 876 ++ +D +P ++GL+V R L+ G N I IV+A G E V +G DD + Sbjct: 79 QAAVDLIILDIMLPQVNGLDVCRSLRFGGDN--TPILIVSAKGSEMEKVTGLEVGADDYI 136 Query: 877 VKPIS 881 KP S Sbjct: 137 TKPFS 141 Score = 43.1 bits (100), Expect = 5e-06 Identities = 30/116 (25%), Positives = 59/116 (50%), Gaps = 9/116 (7%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNN-------NAYALVLMDMQM 978 RIL+VED +E L++ G+ V +G AL L A L+++D+ + Sbjct: 32 RILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQEFSEDPGQAAVDLIILDIML 91 Query: 979 PEMDGIEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 P+++G++ ++R PI+ ++A + ++ L+ G +D++ KP +EL Sbjct: 92 PQVNGLDVCRSLRFGGD--NTPILIVSAKGSEMEKVTGLEVGADDYITKPFSLKEL 145 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 53.1 bits (126), Expect = 5e-09 Identities = 32/109 (29%), Positives = 56/109 (51%), Gaps = 3/109 (2%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 +IL+VED + + + G++V A NG+ L N+ LV+MD+ +P +G+ Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLL 64 Query: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 +R+ LP++ +T + D+ L+ G +D+L KP P EL Sbjct: 65 LARELREE---LSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPREL 110 Score = 46.6 bits (109), Expect = 5e-07 Identities = 36/116 (31%), Positives = 57/116 (49%), Gaps = 12/116 (10%) Query: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 ++LVV+D R +K + E + V E+G E + LA NH ++V +D +P Sbjct: 5 KILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILA-----NHNINLVVMDINLPG 59 Query: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSL--GIDDVLVKPISPSVL 885 +GL +AR L+ + S+ ++ GR+ K L G DD L KP +P L Sbjct: 60 KNGLLLARELR-----EELSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPREL 110 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 52.8 bits (125), Expect = 7e-09 Identities = 31/106 (29%), Positives = 57/106 (53%), Gaps = 3/106 (2%) Query: 929 LVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIEATI 988 +V+D + + L +G+ V AA+G A+ + + LV++D+ MP++DG Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 989 AIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 +R+ + +PI+ +TA DR L+ G +D++ KP P+EL Sbjct: 61 ELRKE---SDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKEL 103 Score = 50.4 bits (119), Expect = 3e-08 Identities = 36/119 (30%), Positives = 55/119 (46%), Gaps = 8/119 (6%) Query: 775 VVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNMDG 834 +VDD R +++ L + + V T G EA+ E+D + +V +D MP +DG Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPD-----LVVLDVMMPKLDG 55 Query: 835 LEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARVL 893 V + L+ I ++TA G + LG DD +VKP SP L + VL Sbjct: 56 YGVCQELRK---ESDIPIIMLTALGDVADRITGLELGADDYVVKPFSPKELEARIRSVL 111 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 50.1 bits (118), Expect = 4e-08 Identities = 32/118 (27%), Positives = 60/118 (50%), Gaps = 5/118 (4%) Query: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 R+L+V+D + ++ L + +VV+ V+ G A ++L D+ +++ DW +P Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYL---DQGWVNYTLAIFDWMVPG 58 Query: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSL 889 + GLE+ ++L+ G I ++TA + V+ G DD L+KP + L L Sbjct: 59 LSGLELCQKLR--GQRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARL 114 Score = 48.9 bits (115), Expect = 1e-07 Identities = 37/115 (32%), Positives = 55/115 (47%), Gaps = 4/115 (3%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNN--AYALVLMDMQMPEMDG 983 R+LLVED + LR + VD +G +A L+ Y L + D +P + G Sbjct: 2 RLLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSG 61 Query: 984 IEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKL 1038 +E +R + + LPI+ +TA DR L AG +D+L KP EL +L Sbjct: 62 LELCQKLRG--QRSSLPILMLTAKDQIADRVEGLDAGADDYLIKPFGMAELLARL 114 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 47.4 bits (111), Expect = 3e-07 Identities = 30/113 (26%), Positives = 59/113 (52%), Gaps = 2/113 (1%) Query: 926 RILLVEDNEINQEVAAELLRDVGFNVDVAANGLIALERLNNNAYALVLMDMQMPEMDGIE 985 R+L+VE+ E L+ G++V VA +GL + L++++ +P M G+E Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLE 63 Query: 986 ATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEELWNKL 1038 +R+ +++PI+ +TA +R L AG +D++ KP +E + ++ Sbjct: 64 LCRRLREMG--SRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFFARI 114 Score = 47.0 bits (110), Expect = 4e-07 Identities = 32/115 (27%), Positives = 52/115 (45%), Gaps = 7/115 (6%) Query: 772 RVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPN 831 RVLVV++ + M+ L+ + V G + + P ++ ++ +P Sbjct: 4 RVLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFT-----QAQEFPPDLIIVNGALPG 58 Query: 832 MDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLF 886 M GLE+ RRL+ MG + I ++TA E V G DD +VKP + F Sbjct: 59 MSGLELCRRLREMG--SRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFF 111 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 46.6 bits (109), Expect = 5e-07 Identities = 51/201 (25%), Positives = 88/201 (43%), Gaps = 31/201 (15%) Query: 768 LEGKRVLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDW 827 +E R+ +++D D R ++D L M+ E V G A L + +V ID Sbjct: 1 MEKIRIALIEDEDLIRQGLQDALT-MEPSFEWV--GEAANGRLGLVMMQQTRPDVVIIDI 57 Query: 828 QMPNMDGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFD 887 +P+M+G++V ++LK LN Q + I+T +EE + A S G D +K +L + Sbjct: 58 GLPDMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIE 117 Query: 888 --------------SLARVL------GDPTALAQEMRQSSGIGAEDLALEKLRRIRGARI 927 ++AR++ +P+ + R S G + LE L+ Sbjct: 118 AIQATHGGFAWIDPAIARIVLAHAPGAEPSEPSSPSRTSLSYGLTERELEVLQ------- 170 Query: 928 LLVEDNEINQEVAAELLRDVG 948 L+ D N ++A +L VG Sbjct: 171 -LIVDGCSNADIAEKLYITVG 190 Score = 45.8 bits (107), Expect = 8e-07 Identities = 32/111 (28%), Positives = 54/111 (48%), Gaps = 2/111 (1%) Query: 926 RILLVEDNE-INQEVAAELLRDVGFN-VDVAANGLIALERLNNNAYALVLMDMQMPEMDG 983 RI L+ED + I Q + L + F V AANG + L + +V++D+ +P+M+G Sbjct: 5 RIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLPDMNG 64 Query: 984 IEATIAIRQNPRYAQLPIVAMTANVMQGDRERCLQAGMNDHLGKPIEPEEL 1034 I+ T +++ P Q +V +T N + AG + + K E L Sbjct: 65 IDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELL 115 >SYNE-PCC-01-000877 sll1330 Length = 250 Score = 42.4 bits (98), Expect = 9e-06 Identities = 34/120 (28%), Positives = 55/120 (45%), Gaps = 11/120 (9%) Query: 773 VLVVDDNDHARLVMKDLLEQMKFVVETVESGPEALNFLAEADRENHPHSIVFIDWQMPNM 832 + VV+ N H R ++ L+Q ++V+ +A N ++ ID + + Sbjct: 6 ISVVEGNPHLRSLLSWHLQQSGYLVQQCSGFHQARQAF-----NNQLPTLAVIDSDLTDG 60 Query: 833 DGLEVARRLKAMGLNHQPSIFIVTAYGREELFVKAKSLGIDDVLVKPISPSVLFDSLARV 892 DG+E+ R L HQ IFI++A E+ V G DD L KP + + LAR+ Sbjct: 61 DGIELCRWLYQQ---HQSMIFILSAKDTEKDIVHGLKAGADDYLTKPFG---MQEFLARI 114 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.321 0.138 0.398 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 109,695 Number of Sequences: 78 Number of extensions: 4710 Number of successful extensions: 196 Number of sequences better than 1.0e-05: 38 Number of HSP's better than 0.0 without gapping: 24 Number of HSP's successfully gapped in prelim test: 14 Number of HSP's that attempted gapping in prelim test: 35 Number of HSP's gapped (non-prelim): 84 length of query: 1261 length of database: 48,235 effective HSP length: 73 effective length of query: 1188 effective length of database: 42,541 effective search space: 50538708 effective search space used: 50538708 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 98 (42.4 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002879 slr2104 (950 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002879 slr2104 1822 0.0 SYNE-PCC-01-002873 slr2098 287 1e-79 SYNE-PCC-01-002617 slr1759 262 4e-72 SYNE-PCC-01-001132 sll1672 240 1e-65 SYNE-PCC-01-001306 sll1905 224 9e-61 SYNE-PCC-01-000800 sll1228 219 4e-59 SYNE-PCC-01-000891 sll1353 190 2e-50 SYNE-PCC-01-001280 sll1871 181 9e-48 SYNE-PCC-01-000295 sll0474 172 4e-45 SYNE-PCC-01-001294 sll1888 149 3e-38 SYNE-PCC-01-002778 slr1969 132 5e-33 SYNE-PCC-01-001509 slr0210 124 1e-30 SYNE-PCC-01-001517 slr0222 99 5e-23 SYNE-PCC-01-002788 slr1982 97 2e-22 SYNE-PCC-01-000985 sll1475 89 8e-20 SYNE-PCC-01-001690 slr0473 79 6e-17 SYNE-PCC-01-002086 slr1042 69 7e-14 SYNE-PCC-01-001133 sll1673 69 7e-14 SYNE-PCC-01-002731 slr1909 68 1e-13 SYNE-PCC-01-002635 slr1783 68 1e-13 HINF-KW2-01-000816 HI0837 response regulator (cpxR) 66 6e-13 SYNE-PCC-01-002489 slr1588 62 6e-12 HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (y... 62 1e-11 SYNE-PCC-01-002618 slr1760 61 1e-11 HINF-KW2-01-000863 HI0884 aerobic respiration control protein A... 60 2e-11 SYNE-PCC-01-002672 slr1837 59 7e-11 SYNE-PCC-01-002033 slr0947 59 9e-11 SYNE-PCC-01-000414 sll0649 58 2e-10 SYNE-PCC-01-000608 sll0921 57 3e-10 SYNE-PCC-01-001461 slr0115 56 4e-10 SYNE-PCC-01-001437 slr0081 56 4e-10 HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional reg... 56 6e-10 SYNE-PCC-01-002486 slr1584 55 1e-09 SYNE-PCC-01-000242 sll0396 52 1e-08 SYNE-PCC-01-000523 sll0797 45 1e-06 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 44 2e-06 SYNE-PCC-01-001575 slr0312 43 4e-06 SYNE-PCC-01-000518 sll0789 43 5e-06 >SYNE-PCC-01-002879 slr2104 Length = 950 Score = 1822 bits (4719), Expect = 0.0 Identities = 928/950 (97%), Positives = 928/950 (97%) Query: 1 MKSFFLNTFSPLRSTARFWVLVALLTSMELSASQLRDTEQAVAIEESKCTDCVEGRGTGI 60 MKSFFLNTFSPLRSTARFWVLVALLTSMELSASQLRDTEQAVAIEESKCTDCVEGRGTGI Sbjct: 1 MKSFFLNTFSPLRSTARFWVLVALLTSMELSASQLRDTEQAVAIEESKCTDCVEGRGTGI 60 Query: 61 VRGESFAQVETVPTEAKVEQIKPMIERISPHLGLVGFGLAFIGVLWLTYLLKKDRQTKAQ 120 VRGESFAQVETVPTEAKVEQIKPMIERISPHLGLVGFGLAFIGVLWLTYLLKKDRQTKAQ Sbjct: 61 VRGESFAQVETVPTEAKVEQIKPMIERISPHLGLVGFGLAFIGVLWLTYLLKKDRQTKAQ 120 Query: 121 LAFQARRSDVLLELPQYADRLSEVEFLQRGQEFAEELTKSKIAFIHFVNDDEQTIELVAW 180 LAFQARRSDVLLELPQYADRLSEVEFLQRGQEFAEELTKSKIAFIHFVNDDEQTIELVAW Sbjct: 121 LAFQARRSDVLLELPQYADRLSEVEFLQRGQEFAEELTKSKIAFIHFVNDDEQTIELVAW 180 Query: 181 SRATLANYCRVVAASHYPVEEAGIWADALRLRRPVLINDYATHQGKKGLPEGHAYLARLI 240 SRATLANYCRVVAASHYPVEEAGIWADALRLRRPVLINDYATHQGKKGLPEGHAYLARLI Sbjct: 181 SRATLANYCRVVAASHYPVEEAGIWADALRLRRPVLINDYATHQGKKGLPEGHAYLARLI 240 Query: 241 SVPVIDDGKVVMLTGVGNKDVFYTDQDVETVQLISNEIWRIARSRRLVKKLTESENRYRL 300 SVPVIDDGKVVMLTGVGNKDVFYTDQDVETVQLISNEIWRIARSRRLVKKLTESENRYRL Sbjct: 241 SVPVIDDGKVVMLTGVGNKDVFYTDQDVETVQLISNEIWRIARSRRLVKKLTESENRYRL 300 Query: 301 AQAIAKIGNWELDYATNVLFWSPEVFNLFEIAPQDFAGTYEAFLNLIHPGDRELVDEAYQ 360 AQAIAKIGNWELDYATNVLFWSPEVFNLFEIAPQDFAGTYEAFLNLIHPGDRELVDEAYQ Sbjct: 301 AQAIAKIGNWELDYATNVLFWSPEVFNLFEIAPQDFAGTYEAFLNLIHPGDRELVDEAYQ 360 Query: 361 CHLQKYQPYDIVHRLLMPDGRIKYVQEQCNTVFDKNNLPLLSRGTIQDVTELQEAQISLE 420 CHLQKYQPYDIVHRLLMPDGRIKYVQEQCNTVFDKNNLPLLSRGTIQDVTELQEAQISLE Sbjct: 361 CHLQKYQPYDIVHRLLMPDGRIKYVQEQCNTVFDKNNLPLLSRGTIQDVTELQEAQISLE 420 Query: 421 HLNEKLEQRIQERTXXXXXXXXXXXXAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMS 480 HLNEKLEQRIQERT AKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMS Sbjct: 421 HLNEKLEQRIQERTQELENSQESLLEAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMS 480 Query: 481 ELVLQTDLTSQQRNYLQKVQYAGEXXXXXXXXXXDFSKMEAGKLELEQKPFSVEEVMGNL 540 ELVLQTDLTSQQRNYLQKVQYAGE DFSKMEAGKLELEQKPFSVEEVMGNL Sbjct: 481 ELVLQTDLTSQQRNYLQKVQYAGELLLGIINNILDFSKMEAGKLELEQKPFSVEEVMGNL 540 Query: 541 HSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNNAVKFTNQGEITIRGQL 600 HSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNNAVKFTNQGEITIRGQL Sbjct: 541 HSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNNAVKFTNQGEITIRGQL 600 Query: 601 LKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTEL 660 LKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTEL Sbjct: 601 LKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTEL 660 Query: 661 MGGDIWLESVVGQGSTFHFTVCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASI 720 MGGDIWLESVVGQGSTFHFTVCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASI Sbjct: 661 MGGDIWLESVVGQGSTFHFTVCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASI 720 Query: 721 LLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDAT 780 LLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDAT Sbjct: 721 LLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDAT 780 Query: 781 RAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWIPPNSA 840 RAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWIPPNSA Sbjct: 781 RAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWIPPNSA 840 Query: 841 REKKNPSSNLKADLSFSSMTGINQQIGMQYIENVELYHRLLVKFGDRYSNFADQFRTEQA 900 REKKNPSSNLKADLSFSSMTGINQQIGMQYIENVELYHRLLVKFGDRYSNFADQFRTEQA Sbjct: 841 REKKNPSSNLKADLSFSSMTGINQQIGMQYIENVELYHRLLVKFGDRYSNFADQFRTEQA 900 Query: 901 SDDPTAATRYAHSIKGAAALLGIENVHHTAQQLEDSCREHESPEMIDRHL 950 SDDPTAATRYAHSIKGAAALLGIENVHHTAQQLEDSCREHESPEMIDRHL Sbjct: 901 SDDPTAATRYAHSIKGAAALLGIENVHHTAQQLEDSCREHESPEMIDRHL 950 >SYNE-PCC-01-002873 slr2098 Length = 1261 Score = 287 bits (734), Expect = 1e-79 Identities = 166/413 (40%), Positives = 243/413 (58%), Gaps = 22/413 (5%) Query: 447 AKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELVLQTDLTSQQRNYLQKVQYAGEXX 506 AK +AE A++ K++FLANMSHEIRTPMNA+IGM+ L L+TDLT +QR YL K++++G+ Sbjct: 516 AKELAEEASRIKADFLANMSHEIRTPMNAVIGMTHLALKTDLTPRQREYLHKIRFSGQHL 575 Query: 507 XXXXXXXXDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPI 566 DFSK+EAGKL +E F +++V+ N+ +++ +A KGL L F +D +P Sbjct: 576 LGVINDILDFSKIEAGKLPMESIDFDLDKVLDNVATLISEKATNKGLELLFDIDRNLPRH 635 Query: 567 LVGDRLRLSQILINLGNNAVKFTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQ 626 +GD LRL QILIN NNAVKFT QG+ITI +L + ++ L +V DTGIG+ P+ Sbjct: 636 FIGDPLRLGQILINYANNAVKFTEQGDITIVVRLQEYRDQDVVLYLAVKDTGIGIKPEHI 695 Query: 627 SKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCLGTA 686 + LF F Q ++ST+R +GGTGLGLAI K + ELMGG++ +ES GQGSTF VCL Sbjct: 696 ANLFNSFQQADSSTTRNFGGTGLGLAICKRIAELMGGEVGVESEYGQGSTFWAKVCL-QK 754 Query: 687 SPAVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDLLTSKGLRVQV 746 S + ++S+ LEG +L+V+DN+ R DLL V+ Sbjct: 755 SNVIPHRLVLSK---------------DLEGKRVLVVDDNDHARLVMKDLLEQMKFVVET 799 Query: 747 ANNGQEALTLLT-----SNTYDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTANA 801 +G EAL L ++ + + +D QMP ++G + R ++ + I +TA Sbjct: 800 VESGPEALNFLAEADRENHPHSIVFIDWQMPNMDGLEVARRLKAMGLNHQPSIFIVTAYG 859 Query: 802 MAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWI-PPNSAREKKNPSSNLKAD 853 KA G++D L KPI P +LF +LA + P + ++ SS + A+ Sbjct: 860 REELFVKAKSLGIDDVLVKPISPSVLFDSLARVLGDPTALAQEMRQSSGIGAE 912 Score = 171 bits (432), Expect = 1e-44 Identities = 105/256 (41%), Positives = 149/256 (58%), Gaps = 7/256 (2%) Query: 689 AVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDLLTSKGLRVQVAN 748 A+AQ+ S S + A+ + + ++ GA ILLVEDNEIN+E A +LL G V VA Sbjct: 898 ALAQEMRQS--SGIGAEDLALEKLRRIRGARILLVEDNEINQEVAAELLRDVGFNVDVAA 955 Query: 749 NGQEALTLLTSNTYDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEK 808 NG AL L +N Y +LMD+QMP ++G +AT AIRQ + LPI+AMTAN M GD+E+ Sbjct: 956 NGLIALERLNNNAYALVLMDMQMPEMDGIEATIAIRQNPRYAQLPIVAMTANVMQGDRER 1015 Query: 809 ALDAGMNDHLTKPIKPDLLFQTLAHWIPPNS--AREKKNPSSNLKAD--LSFSSMTGINQ 864 L AGMNDHL KPI+P+ L+ L HWIP +S A E S+ +D +S + G+N Sbjct: 1016 CLQAGMNDHLGKPIEPEELWNKLLHWIPVDSPLAPETIEESAINTSDPEISIPHIPGLNS 1075 Query: 865 QIGM-QYIENVELYHRLLVKFGDRYSNFADQFRTEQASDDPTAATRYAHSIKGAAALLGI 923 G+ + + LY ++L KF S+F + D A R AH++KG A +G Sbjct: 1076 DDGLRRVLGKKSLYLKMLHKFVASQSSFLPEITQALGEKDYGFAERLAHTLKGVAGNIGA 1135 Query: 924 ENVHHTAQQLEDSCRE 939 + + A +LE + +E Sbjct: 1136 QELQQEAAELEKAIKE 1151 >SYNE-PCC-01-002617 slr1759 Length = 1462 Score = 262 bits (669), Expect = 4e-72 Identities = 158/442 (35%), Positives = 246/442 (55%), Gaps = 35/442 (7%) Query: 408 DVTELQEA---QISLEHLNEKLEQRIQERTXXXXXXXXXXXXAKLVAEGATKAKSEFLAN 464 D EL EA Q+ + L ++ +ER A AE A +AK EFLA Sbjct: 725 DEIELLEAIAEQMGIALAQAALLEKERERRRELAQKNLELEKATWAAEAANRAKGEFLAM 784 Query: 465 MSHEIRTPMNAIIGMSELVLQTDLTSQQRNYLQKVQYAGEXXXXXXXXXXDFSKMEAGKL 524 MSHEIRTPMN +IGM+EL++ TDL QQ +Y+Q ++ +GE DFSK+EA KL Sbjct: 785 MSHEIRTPMNGVIGMTELLIMTDLNLQQLDYVQTIRQSGETLLTIINDILDFSKIEADKL 844 Query: 525 ELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNN 584 LE + F + ++ + + G A AK L L + +DP+ P ++GD++RL QIL NL N Sbjct: 845 VLETQAFELRPLIETVLEMFGPIARAKHLELTYGIDPQTPARILGDQVRLRQILSNLIGN 904 Query: 585 AVKFTNQGEI--TIRGQ----------LLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQW 632 A+KFT +GE+ T++G+ +L + ++ F++ DTGIG+ D+Q +LF+ Sbjct: 905 ALKFTEKGEVVLTVKGEPFDPAESYHTILNLPHPSHRICFNLRDTGIGIPLDRQDRLFKS 964 Query: 633 FNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCLGTASPAVAQ 692 F+Q ++ST+R+YGGTGLGL IS+ LT++MGG + + S G GS F F + +PA+A+ Sbjct: 965 FSQVDSSTTRKYGGTGLGLVISQRLTQMMGGVLTVTSEPGVGSNFRFCILTTAQAPALAE 1024 Query: 693 DYLVSRVSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQE 752 ++ Q++G +L+V+DNE NR D + GL +G+ Sbjct: 1025 ----------------ADSVQQMKGKQVLIVDDNETNRRILQDQCQAWGLVCHCFTSGES 1068 Query: 753 ALT-LLTSNTYDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALD 811 AL DA ++D+QMP ++G +RQ ++LPII +++ +AG E ++ Sbjct: 1069 ALDWFARCPDLDAAILDLQMPNMDGITLAHHLRQFAQGKDLPIILLSSGLVAGADELSV- 1127 Query: 812 AGMNDHLTKPIKPDLLFQTLAH 833 L KP++ L+F +L + Sbjct: 1128 --FQTVLNKPVRQSLIFDSLVN 1147 Score = 112 bits (281), Expect = 4e-27 Identities = 86/297 (28%), Positives = 139/297 (46%), Gaps = 28/297 (9%) Query: 677 FHFTVCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDL 736 F ++ L +P Q L V + P+ A + ILL EDN +N++ AH + Sbjct: 1149 FQGSIGLADYAPQFDQLDLPEFVPDGDGLPTEDNATSLQPALQILLAEDNLVNQKVAHQM 1208 Query: 737 LTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDATRAIRQQ-EYHRNLPII 795 L + G V +ANNGQE + L YD +LMD+QMP+++G A R IRQ R I+ Sbjct: 1209 LNNLGYPVAIANNGQEVIDALEKKFYDLVLMDMQMPVMDGITACRHIRQTLPLERQPRIV 1268 Query: 796 AMTANAMAGDQEKALDAGMNDHLTKPIKPDLL---FQTLAHWIPPNSARE---------- 842 AMTANAM GD+++ LDAGM+ +++KPI + L Q + I ARE Sbjct: 1269 AMTANAMPGDRQECLDAGMDGYISKPISINQLRKVLQDTSALITSPQAREDIVTLGDKIT 1328 Query: 843 ------KKNPSSNLKADLSFSSMTGINQQIGMQYIENVELYHRLLVKFGDRYSNFADQFR 896 P+ ++ L +++ + + ++ L+ ++ + ++ Sbjct: 1329 VVEEQTMVKPTDVTESPLDPTAIAFLRDDL---CGGDLTLFGEMVACYCQESQKLIEELV 1385 Query: 897 TEQASDDPTAATRYAHSIKGAAALLGIENVHHTAQQLEDSCRE-----HESPEMIDR 948 DD R AHS+K ++A LG + + QQLE + P+++DR Sbjct: 1386 QGLEVDDFAVIRRTAHSLKSSSASLGAQQLSTFCQQLEKNAGSGNLGLGSPPQLVDR 1442 >SYNE-PCC-01-001132 sll1672 Length = 834 Score = 240 bits (613), Expect = 1e-65 Identities = 156/462 (33%), Positives = 258/462 (55%), Gaps = 42/462 (9%) Query: 390 NTVFDKNNLPLLSRGTIQDV---TELQEAQ---ISLEHLNEKLEQRIQERTXXXXXXXXX 443 N +F N + + +Q++ EL+ AQ I +E+ NE L++++ Sbjct: 304 NQLFTTNQILIEQNQKLQELYQQRELERAQREKILIEY-NESLQKQVD------------ 350 Query: 444 XXXAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELVLQT-DLTSQQRNYLQKVQYA 502 AK +AE KAKS F+ANMSHE+R+P+NAIIG S+L+L+T +L +Q +Q + Sbjct: 351 LVRAKEIAESEAKAKSTFVANMSHELRSPLNAIIGFSQLMLRTKNLPMEQYENAGIIQRS 410 Query: 503 GEXXXXXXXXXXDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPR 562 GE DFSK+EAGK L + F + ++ +L +L ++A +G+ L F D Sbjct: 411 GEYLLNLINNILDFSKIEAGKTHLNRHNFDLYLLLDDLEDMLHLKAANEGIELIFIRDHD 470 Query: 563 IPPILVGDRLRLSQILINLGNNAVKFTNQGEITIRGQLLKTENEQTK------------- 609 +P + GD ++L QIL+NL +NA+KFT +GE+ + E ++ Sbjct: 471 LPRYVYGDEIKLRQILLNLLSNAIKFTTEGEVVLTSNFRNAEQQEVINPETSTEPKNKYW 530 Query: 610 LQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLES 669 L F++ DTG G++ + S LF+ F+Q E+ + Q G TGLGLAI++ +LMGGDI + S Sbjct: 531 LDFTIKDTGKGISEVELSHLFEAFSQTESGRNAQEG-TGLGLAITRQFIKLMGGDINVSS 589 Query: 670 VVGQGSTFHFTVCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNEIN 729 VV QG+TF F++ + ++++ ++ +L P Q + + IL+V+D +N Sbjct: 590 VVDQGTTFSFSILVDLGEITLSREPNSAK-KVLALTPG--QPVYK-----ILVVDDKSVN 641 Query: 730 REFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDATRAIRQQEYH 789 R+ LL G ++ A+NGQEA+ L S I MD++MP+++GY+AT+ I+ Q Sbjct: 642 RQLLIKLLAPFGFEIEEASNGQEAIALWESWEPHLIFMDMRMPVMDGYEATKYIKGQVKG 701 Query: 790 RNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 ++A+TA+ + ++ L AG +D L KP + + +F +L Sbjct: 702 NATAVVALTASVLEEEKAIVLSAGCDDFLRKPFRENTIFDSL 743 >SYNE-PCC-01-001306 sll1905 Length = 1014 Score = 224 bits (571), Expect = 9e-61 Identities = 174/522 (33%), Positives = 269/522 (51%), Gaps = 68/522 (13%) Query: 393 FDKNNLPLLSRGTIQ-------DVTELQEAQISLEHLNEKLEQRIQERTXXXXXXXXXXX 445 F+++ +P++ + Q D+++ ++ ++ ++ + ++E+R++++ Sbjct: 253 FERDYVPIMLGDSSQGHFWLYRDISQRKQVEM-IQGQSLEMERRMRQQLAEQNQELVAAT 311 Query: 446 XAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELVLQTDLTSQQRNYLQKVQYAGEX 505 A AE A ++KSEFLA MSHEIRTPMNAIIGM+ L+L TDLT+QQ+ + Q ++ +GE Sbjct: 312 TA---AEAANRSKSEFLATMSHEIRTPMNAIIGMTGLLLDTDLTTQQKYFAQTIRNSGET 368 Query: 506 XXXXXXXXXDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPP 565 DFSK+EAGKL+LE PF + + + ++ A K LTL IPP Sbjct: 369 LLTLINDILDFSKIEAGKLDLEVYPFDLGQCLEEALDVVVPSARQKSLTLIRRFLTPIPP 428 Query: 566 ILVGDRLRLSQILINLGNNAVKFTNQGEITIRGQLLKTENEQTKLQ--FSVTDTGIGLTP 623 L GD RL QIL+NL +NAVKFT G++ + +++ + + + Q F+V DTGIG+ P Sbjct: 429 NLQGDVTRLRQILVNLLSNAVKFTEAGQVKVTVEVVDHDAAKGEYQICFAVQDTGIGIAP 488 Query: 624 DQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLES---VVG-------- 672 +QQ LFQ F+QG +S +R++GGTGLGLAI LT LMGG IW ES VVG Sbjct: 489 NQQQALFQAFSQGNSSITRRFGGTGLGLAICVRLTALMGGTIWAESNGCVVGNPPELWQI 548 Query: 673 -----QGSTFHFTVCLGTASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNE 727 +GSTF+FTV L T P+ A R S+ G S+L+ + +E Sbjct: 549 GQPTIEGSTFYFTVNL-TVLPSCAYSVHNLRHSL-------------FIGRSVLVADYDE 594 Query: 728 INREFAHDLLTSKGLRVQ------VANNGQEALTLLTSNTYDAILMDIQMPMLNG----- 776 +LL S L+ + A G++ + LT Y A+++ P G Sbjct: 595 GRGTRMRNLLASWRLQAEQITFSSPAKLGEDLKSRLTQKNYGALILHCPYPEGRGKQFTD 654 Query: 777 YDATRAIRQQEYHRNLPIIAMTANAMA-GDQEKALDAGMNDHLTKPIKPDLLFQTLAHWI 835 +D + +++P++ T ++ G++ + + PI PD L TL + Sbjct: 655 FDLGKITTWAPTEQDIPVLVATDIYLSPGERYSGDKPPVQAWIKSPINPDELENTLVDVL 714 Query: 836 ----PPN--SAREKKNP-----SSNLKADLSFSSMTGINQQI 866 PP S P SSNL L+ ++ INQQ+ Sbjct: 715 GQTEPPTLVSTEAISGPLFPYSSSNLTILLAEDNL--INQQV 754 Score = 108 bits (270), Expect = 8e-26 Identities = 82/252 (32%), Positives = 128/252 (50%), Gaps = 21/252 (8%) Query: 719 SILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYD 778 +ILL EDN IN++ A LL G V V NNGQEAL+ L YD +LMD++MP ++G Sbjct: 741 TILLAEDNLINQQVAKLLLKKLGYPVDVVNNGQEALSALAKGDYDVVLMDVEMPEMDGLT 800 Query: 779 ATRAIRQQEYHRNLP-IIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL------ 831 AT IR+ + P IIA+TA +M GD+E+ L +GMND+++KPI+ + L Q L Sbjct: 801 ATEHIRRSQGRSERPWIIAVTAYSMEGDRERCLASGMNDYVSKPIRLEALQQALQVAATA 860 Query: 832 ---------AHWIPPNSAREKKNPSSNLKADLSFSSMTGINQQIGMQY----IENVELYH 878 A ++ K +PSS D + +++ I+Q I EN +L Sbjct: 861 LQSTSQDRMATVSCVSAFEAKPSPSSPCPEDPAGTTLPPIDQDIICSLRDLDRENGQLIL 920 Query: 879 RLLVK-FGDRYSNFADQFRTEQASDDPTAATRYAHSIKGAAALLGIENVHHTAQQLEDSC 937 R ++ + + + A+ D + AH++ ++A LG + A+ LE+ Sbjct: 921 REIIDIYCQTAPELLQRIKLAIANQDWGNLSSAAHTLGSSSANLGAVLLAQQAKTLENLT 980 Query: 938 REHESPEMIDRH 949 R+ +S M H Sbjct: 981 RQRDSRAMDPGH 992 Score = 63.9 bits (154), Expect = 2e-12 Identities = 40/131 (30%), Positives = 67/131 (51%), Gaps = 1/131 (0%) Query: 704 AKPSVTQAITQLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYD 763 ++P A + E IL+V+D + N +LL +G +G EAL +T D Sbjct: 4 SQPHPPIATFEPESFLILVVDDVKENIYVISELLEGEGYSTTFVTSGPEALQRVTQAQPD 63 Query: 764 AILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIK 823 IL+D+ MP ++G + ++Q R++P+I +TA+ D +A G D++TKP Sbjct: 64 LILLDLMMPGMDGLEVCDRLKQDPQTRDIPVIFLTASNEKQDLLQAFAKGAVDYVTKPFS 123 Query: 824 -PDLLFQTLAH 833 P+LL + H Sbjct: 124 PPELLARVKTH 134 >SYNE-PCC-01-000800 sll1228 Length = 633 Score = 219 bits (557), Expect = 4e-59 Identities = 145/412 (35%), Positives = 220/412 (53%), Gaps = 19/412 (4%) Query: 447 AKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELVLQTDLTSQQRNYLQKVQYAGEXX 506 AK A+ A +AK+EFLA++SHE+RTP+NAIIG S+L+ + + R L + +GE Sbjct: 152 AKEAADAANRAKTEFLASISHELRTPLNAIIGFSQLLHRDPSLAPHRPTLDIINRSGEHL 211 Query: 507 XXXXXXXXDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPI 566 + SK+EAG+ L +K ++ NL ++ ++A+ K L L P +P Sbjct: 212 LELINDILEMSKIEAGRTTLNEKIIDCHRLLDNLQALFQLRAQEKQLLLKVERSPEVPEW 271 Query: 567 LVGDRLRLSQILINLGNNAVKFTNQGEITIRGQLL---KTENEQTK---LQFSVTDTGIG 620 + D +L Q+LINL NA+KFT QG +T++ + L +T+ Q L F V+DTG G Sbjct: 272 IKTDGGKLRQVLINLLANAIKFTAQGGVTLKVKCLTAPQTDEGQGASIWLHFLVSDTGPG 331 Query: 621 LTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFT 680 + + +LF F Q ET + G GLGL IS+ +LMGG I + S V QGS F F Sbjct: 332 IAAHEMDELFVPFAQTETGL-KSCQGNGLGLPISQKFVQLMGGQIQVRSKVDQGSAFFFA 390 Query: 681 VCLGT-ASPAVAQDYLVSRVSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDLLTS 739 + + A+P + +VT +L+V+D +R LLTS Sbjct: 391 IPVQVMAAPKPTPE-----------TSAVTLPPLDQYNQKVLVVDDRPESRLLLRQLLTS 439 Query: 740 KGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTA 799 G VQ A NG+ A+ L S ILMD+QMP+L+G T+ I+ ++ IIA+TA Sbjct: 440 LGFVVQEAENGEMAIALWESWHPQVILMDMQMPVLDGRSTTQKIKASPQGQHTIIIALTA 499 Query: 800 NAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWIPPNSAREKKNPSSNLK 851 +A G++ + L AG +D L+KP +P+ L LA + + + P+S L+ Sbjct: 500 SAFEGERAEILSAGCDDFLSKPFRPEELIALLAKHLAVALPSQGQPPASPLR 551 >SYNE-PCC-01-000891 sll1353 Length = 998 Score = 190 bits (482), Expect = 2e-50 Identities = 109/265 (41%), Positives = 158/265 (59%), Gaps = 11/265 (4%) Query: 422 LNEKLEQRIQERTXXXXXXXXXXXXAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSE 481 +N++L I+ER AK AE A + KSEFLAN+SHEIRTPMNAI+G + Sbjct: 568 INKQLAGEIEERQRIEIKLRE----AKESAELANRVKSEFLANISHEIRTPMNAILGFCD 623 Query: 482 LVLQTDLT-SQQRNYLQKVQYAGEXXXXXXXXXXDFSKMEAGKLELEQKPFSVEEVMGNL 540 L+LQ DL+ SQ + YL + + + D SK+EAGKL + +P + ++ + Sbjct: 624 LLLQKDLSLSQTKKYLNAIGSSSKILLALIDDILDISKIEAGKLVIHLEPVDLRVIIREI 683 Query: 541 HSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNNAVKFTNQGEITI---- 596 I +AE+K L L +D + + D +RL QIL NL NA+KFT +G++ I Sbjct: 684 KQIFDYKAESKSLLLTIQIDETLNQAIYFDAVRLRQILFNLVGNALKFTEEGQVFIYIGV 743 Query: 597 RGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKS 656 G ++++ L VTDTGIG+ P+ Q+K+F F Q + ++R+YGGTGLGL I++ Sbjct: 744 EGIQVRSQGTYISLAIEVTDTGIGIAPEDQAKIFDVFTQSQGQSTRKYGGTGLGLTITRR 803 Query: 657 LTELMGGDIWLESVVGQGSTF--HF 679 LT L+GG+I L S +G+GSTF HF Sbjct: 804 LTALLGGEISLSSRLGEGSTFILHF 828 >SYNE-PCC-01-001280 sll1871 Length = 674 Score = 181 bits (459), Expect = 9e-48 Identities = 110/270 (40%), Positives = 160/270 (59%), Gaps = 5/270 (1%) Query: 411 ELQEAQISLEHLNEKLEQRIQERTXXXXXXXXXXXXAKLVAEGATKAKSEFLANMSHEIR 470 EL+ AQ L N LE+++Q+RT A AE A KS FLANMSHE+R Sbjct: 391 ELELAQKQLAVANSCLEEKVQQRTEELENTVKALELASSEAEAANATKSIFLANMSHELR 450 Query: 471 TPMNAIIGMSELVLQT--DLTSQQR-NYLQKVQYAGEXXXXXXXXXXDFSKMEAGKLELE 527 TP+NAIIG SE++++ DL S++ L K+ +G+ D SK+EAGK+EL Sbjct: 451 TPLNAIIGYSEMLIEEAEDLDSEELVPDLDKILRSGKSLLALINDLLDISKIEAGKMELY 510 Query: 528 QKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNNAVK 587 + F+++E++ + + + L + + GD ++L Q ++NL +NA K Sbjct: 511 LETFNLKELIAGILDTISPLLKNNNNKLEVEISLESEEVY-GDLIKLRQGILNLLSNASK 569 Query: 588 FTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGT 647 FT G I+ + K + E+ L F V DTGIGLT +Q SKLFQ F Q ++ST+R+YGGT Sbjct: 570 FTKDGIISFIVEEFKVD-EKDWLSFQVKDTGIGLTEEQMSKLFQPFTQADSSTTRKYGGT 628 Query: 648 GLGLAISKSLTELMGGDIWLESVVGQGSTF 677 GLGLAI++ ++MGGDI+L S +G GS+F Sbjct: 629 GLGLAITRKFCQMMGGDIYLTSEIGVGSSF 658 >SYNE-PCC-01-000295 sll0474 Length = 806 Score = 172 bits (436), Expect = 4e-45 Identities = 137/442 (30%), Positives = 219/442 (49%), Gaps = 58/442 (13%) Query: 266 QDVETVQLISNEIWRIARSRRLVKKLTESENRYRLAQAIAKIGNWELDYATNVLFWSPEV 325 Q +Q+ E IA +K E RY LA ++ WE + P + Sbjct: 258 QTFNQLQIYQREALEIAE-----RKYVEIAQRYELASQATRVWVWECQPKIHYFEVDPNL 312 Query: 326 FNL--FEIAPQDFAGTYEAFLNLIHPGDRELVDEAYQCHLQK-YQPYDIVHRLLMPDGRI 382 FE + G + IH GDR + +A + L+ RL +G I Sbjct: 313 ITWLGFEQPLEPADGDF-----FIHLGDRPMFWQAIEQSLEDPTMELSTELRLEAANGEI 367 Query: 383 KYVQEQCNTVFDKNNLPLLSRGTIQDVTELQEAQISLEHLNEKLEQRIQERTXXXXXXXX 442 + + ++ + GTI D+TE+++A+ L+ N+ L + Sbjct: 368 YHCLLRGQIHQEQGEAFVKIIGTIADITEIKKAEEQLKLSNKILAK-------------- 413 Query: 443 XXXXAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELV---LQTDLTSQQRNYLQKV 499 AT+ K EFLANMSHE+RTP+N+I+GM E + + L +Q L+ V Sbjct: 414 -----------ATQLKDEFLANMSHELRTPLNSILGMIETLQNQVYGPLNGKQVQSLEIV 462 Query: 500 QYAGEXXXXXXXXXXDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEA--KGLTLNF 557 + +G D SK+EAG+++L+ P SV ++ HS+ +Q A K + L+ Sbjct: 463 ENSGRHLLSLINDILDLSKIEAGRMDLDLNPTSVSALVN--HSLTFVQQFAIQKQINLSS 520 Query: 558 HLDPRIPPILVGDRLRLSQILINLGNNAVKFTNQG-EITIRGQLLKT---ENEQT--KLQ 611 + P +P +LV D+ RL Q+LINL NNA+KFT +G ++ ++ L+K EN Q+ +L Sbjct: 521 EIIPNLPDVLV-DKRRLCQVLINLLNNAIKFTPEGGKVVVQADLIKEQGKENSQSPPQLS 579 Query: 612 FSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVV 671 F+V DTGIG+ D+ + +F+ F Q +++ +R+Y GTGLGL++ K + EL GG + + S + Sbjct: 580 FTVFDTGIGIEADRLNNIFEPFVQIDSALNRRYDGTGLGLSLVKKIVELHGGSVTVTSKL 639 Query: 672 GQGSTFHFTVCLGTASPAVAQD 693 +GS F T+ P V QD Sbjct: 640 NEGSRFKITI------PCVFQD 655 >SYNE-PCC-01-001294 sll1888 Length = 432 Score = 149 bits (377), Expect = 3e-38 Identities = 98/272 (36%), Positives = 150/272 (55%), Gaps = 12/272 (4%) Query: 424 EKLEQRIQERTXXXXXXXXXX---XXAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMS 480 E L Q + E+T A AE A++ KSEFLA+ +HE+RTP+N IIG Sbjct: 157 EALLQELAEQTGTAIAHATLYQELTQATKAAEEASRLKSEFLASTTHELRTPLNGIIGFL 216 Query: 481 ELVLQ--TDLTSQQRNYLQKVQYAGEXXXXXXXXXXDFSKMEAGKLELEQKPFSVEEVMG 538 L+L D +++ ++++ + D +K+EAG++ +E + EV+ Sbjct: 217 RLILDDMADSEAEKHEFVEEAYQSALLLLNLINDILDLAKIEAGRVGIELEVVDFSEVLQ 276 Query: 539 NLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNNAVKFTNQGEITI-- 596 + QA+ KGL+ N + P ++ G++ L Q+++N+ NA+KFT++G IT+ Sbjct: 277 ATENFALPQAQNKGLSFNLTAPNQGPLLVYGNQRWLLQVMLNIVGNAIKFTHEGGITVAV 336 Query: 597 ----RGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLA 652 R L + + L+ SV DTGIG++ +QQSKLF+ F Q + S S+ YGGTGLGL Sbjct: 337 EVMPRTVLWEGVQKPGLLKVSVGDTGIGVSLEQQSKLFKKFVQIDGSHSKAYGGTGLGLV 396 Query: 653 ISKSLTELMGGDIWLESV-VGQGSTFHFTVCL 683 IS+ L E MGG + S+ G GST FTV L Sbjct: 397 ISQKLVETMGGKVAFFSMGEGLGSTVTFTVLL 428 >SYNE-PCC-01-002778 slr1969 Length = 750 Score = 132 bits (332), Expect = 5e-33 Identities = 115/416 (27%), Positives = 196/416 (47%), Gaps = 44/416 (10%) Query: 427 EQRIQERTXXXXXXXXXXXXAKLVAEGATKAKSEFLANMSHEIRTPMNAIIGMSELVLQ- 485 E+R+ ERT + A+ A KS+F+ N+SHE+RTP+ +IIG+S +L+ Sbjct: 355 EKRVIERTKELRDTL-------MAAQAANLLKSQFINNISHELRTPLTSIIGLSATLLRW 407 Query: 486 -----TDLTSQQRNYLQKVQYAGEXXXXXXXXXXDFSKMEAGKLELEQKPFSVEEVMGN- 539 + ++Q+ YL +Q G+ S++E+G+ L + FS+ + Sbjct: 408 FDHPASLPPAKQQYYLLNIQENGKKLLDQINSIIQLSQLESGQTALNCQSFSLHTLAQTV 467 Query: 540 LHSILGIQAEAKGLTLNFHLDPRI---PPILVGDRLRLSQILINLGNNAVKFTNQGEITI 596 +HS+LG+ + + +N LD +I D+ RL QIL L NNA+KFT E T+ Sbjct: 468 IHSLLGVAIKQQ---INLELDYQINVGQDQFCADQERLDQILTQLLNNALKFT-PAEGTV 523 Query: 597 RGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQYGGTGLGLAISKS 656 +L+ E + F V DTGIG+ Q LF+ F S + Y G+GLA++K Sbjct: 524 ---ILRIWKESNQAIFQVEDTGIGINEQQLPVLFEAFKVAGDSYTSFYETGGVGLALTKQ 580 Query: 657 LTELMGGDIWLESVVGQGSTFHFTVCLGTASPAV---AQDYLVSRVSILEAKPSVTQAIT 713 L EL GG I +ES GQG+ F + P QD L + + Sbjct: 581 LVELHGGYIEVESSPGQGTIFTTVIPQQNFPPTTKGQVQDKLDAAMPF------------ 628 Query: 714 QLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPM 773 +S++++E +E +LLT +V + AL + I++D Sbjct: 629 ---NSSVIVIEQDEEIATLICELLTVANYQVIWLIDTTNALQQVELLQPGLIIVD--GDF 683 Query: 774 LNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQ 829 ++ + TR I++ + + ++ + + + + G++D+L KP++P+LL Q Sbjct: 684 VDVTEVTRGIKKSRRISKVTVFLLSESLSSAEWQALSQKGIDDYLLKPLQPELLLQ 739 >SYNE-PCC-01-001509 slr0210 Length = 417 Score = 124 bits (311), Expect = 1e-30 Identities = 87/228 (38%), Positives = 122/228 (53%), Gaps = 9/228 (3%) Query: 462 LANMSHEIRTPMNAIIGMSELV---LQTDLTSQQRNYLQKVQYAGEXXXXXXXXXXDFSK 518 L+++ HE RTP+ AIIG + ++ L L +Q Y+Q + E D SK Sbjct: 190 LSHIHHEFRTPLTAIIGFARMLRDELYGKLNPKQHQYVQGTLNSAEHLLSLVNDFLDLSK 249 Query: 519 MEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQIL 578 ++A EL + +VE++ + S++ +A+ K L LN +D + V D+ R QIL Sbjct: 250 IDARCEELFYEQVAVEDLCLAVISMVQTKAKEKQLALNLTIDDGVDFCYV-DQRRWKQIL 308 Query: 579 INLGNNAVKFTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGET 638 INL +N VKFT +G +T L + L FSV DTGIG+ P+ Q LFQ F Q Sbjct: 309 INLLSNGVKFTPKGSVT-----LAVKATDKALIFSVIDTGIGIDPEDQRDLFQPFKQISH 363 Query: 639 STSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCLGTA 686 S GTGLGLA+S+ L +L GGDI L S G GS F + L T+ Sbjct: 364 PPSFAEKGTGLGLALSRRLAQLHGGDIQLTSTPGVGSCFSAILPLKTS 411 >SYNE-PCC-01-001517 slr0222 Length = 1178 Score = 99.4 bits (246), Expect = 5e-23 Identities = 87/285 (30%), Positives = 136/285 (47%), Gaps = 39/285 (13%) Query: 407 QDVTELQEAQISLEHLNEKLEQRIQERTXXXXXXXXXXXXAKLVAEGATKAKSEFLANMS 466 QD+T+++ A+I E L ++ER +AKS+F+ +S Sbjct: 914 QDITDIKRAEI------ETLRSLVKEREL-------------------NEAKSQFVDIVS 948 Query: 467 HEIRTPMNAIIGMSELV---LQTDLTSQQRNYLQKVQYAGEXXXXXXXXXXDFSKMEAGK 523 HE RTP+ +IIG EL+ T +++ Y+ +Q + + S+ +A K Sbjct: 949 HEFRTPLTSIIGFGELLSKYFDRLSTEKKQQYINNIQNSSQRLKQLIDDVLSISRYDANK 1008 Query: 524 LELEQKPFSVEEVMGNL--HSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINL 581 +E+E ++ + +L + G+ +E LN+HL P LV RL L IL N+ Sbjct: 1009 IEIELGNINLRNLANDLIENFSCGLGSE-HNFELNYHLKPD-EHSLVDVRL-LRHILENI 1065 Query: 582 GNNAVKFTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTS 641 +NA+K++ G TI + K E L F V D GIG+ Q KLF+ F++ S Sbjct: 1066 LSNAIKYSAPGS-TITLDISKDEEH---LLFQVRDEGIGIPLQDQEKLFEAFHR--ASNV 1119 Query: 642 RQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCLGTA 686 GTGLGL+I K E GG I + S+ G+G+T + L A Sbjct: 1120 GDIPGTGLGLSIVKRYVEFQGGTIEVISMPGKGTTMVIKLPLNPA 1164 >SYNE-PCC-01-002788 slr1982 Length = 123 Score = 97.4 bits (241), Expect = 2e-22 Identities = 49/114 (42%), Positives = 78/114 (68%) Query: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGY 777 A +LLVEDNE+NR+ L KG V +A +G++A+T+ S + ILMD+ +P+++G+ Sbjct: 5 AKVLLVEDNEMNRDMLSRRLIRKGYEVVIAVDGEQAVTMAISESPQLILMDMSLPIIDGW 64 Query: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 AT+ I+ ++PIIA+TA+AMA D+E+A+ AG +D+ TKPI+ L Q + Sbjct: 65 TATKQIKGHPDGAHIPIIALTAHAMASDRERAIAAGCDDYDTKPIEIKRLLQKM 118 >SYNE-PCC-01-000985 sll1475 Length = 297 Score = 88.6 bits (218), Expect = 8e-20 Identities = 69/235 (29%), Positives = 122/235 (51%), Gaps = 18/235 (7%) Query: 455 TKAKSEFLANMSHEIRTPMNAIIGMSELVLQTDLT-----SQQRNYLQKVQYAGEXXXXX 509 ++ K+ F + SHE RTP++ + ++L+ +++ + RN L ++Q + + Sbjct: 66 SRLKTRFFSMASHEFRTPLSTALAAAQLLENSEVAWLDPDKRSRN-LHRIQNSVKNMVQL 124 Query: 510 XXXXXDFSKMEAGKLELEQKPFSVEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVG 569 ++ EAGKLE ++ + + + + +F + LV Sbjct: 125 LDDILIINRAEAGKLEFNPNWLDLKLLFQQFIEEIQLSVSDQ-YYFDFICSAQDTKALVD 183 Query: 570 DRLRLSQILINLGNNAVKFT-NQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSK 628 +RL + IL NL +NA+K++ G+I I L ++EQ + F VTD GIG++P+ Q + Sbjct: 184 ERL-VRSILSNLLSNAIKYSPGGGQIKIA---LSLDSEQ--IIFEVTDQGIGISPEDQKQ 237 Query: 629 LFQWFNQGETSTSRQYGGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCL 683 +F+ F++G+ R GTGLGL ++K +L G I L+S V QG+T T+CL Sbjct: 238 IFEPFHRGK--NVRNITGTGLGLMVAKKCVDLHSGSILLKSAVDQGTT--VTICL 288 >SYNE-PCC-01-001690 slr0473 Length = 748 Score = 79.0 bits (193), Expect = 6e-17 Identities = 58/220 (26%), Positives = 102/220 (46%), Gaps = 10/220 (4%) Query: 466 SHEIRTPMNAIIGMSELVLQTDLTSQQRNYLQKVQYAGEXXXXXXXXXXDFSKMEAGKLE 525 SH+++ P+N + +L+ + + + +A D + Sbjct: 537 SHDLQEPLNQVSNYVQLLEMRYSEALDEDAKDFIDFAVTGVSLMQTLIDDILTYAKVDTQ 596 Query: 526 LEQKPFS-VEEVMGNLHSILGIQAEAKGLTLNFHLDPRIPPILVGDRLRLSQILINLGNN 584 Q F+ V+EV+ + L + E G ++ P ++ D+++L Q+ NL N Sbjct: 597 YAQLTFTDVQEVVDKALANLKQRIEESGA----EIEVGSMPAVMADQIQLMQVFQNLIAN 652 Query: 585 AVKFTNQGEITIRGQLLKTENEQTKLQFSVTDTGIGLTPDQQSKLFQWFNQGETSTSRQY 644 +KF I+ + + ++ F+V D GIG+ P ++F F + T +Y Sbjct: 653 GIKFAGDKSPKIK---IWGDRQEDAWVFAVQDNGIGIDPQFFERIFVIFQR--LHTRDEY 707 Query: 645 GGTGLGLAISKSLTELMGGDIWLESVVGQGSTFHFTVCLG 684 GTG+GLAI K + E G IWLES G+GSTF+F++ +G Sbjct: 708 KGTGMGLAICKKIIEGHQGQIWLESNPGEGSTFYFSIPIG 747 >SYNE-PCC-01-002086 slr1042 Length = 147 Score = 68.9 bits (167), Expect = 7e-14 Identities = 36/113 (31%), Positives = 63/113 (55%) Query: 719 SILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYD 778 ++LLVED+ RE +L G +V +A +G EAL L + + D +++DI MP +NGY+ Sbjct: 29 AVLLVEDSSSQREMISGILKDHGWQVTIACDGVEALEKLQNFSPDLVVLDIVMPRMNGYE 88 Query: 779 ATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 R I+ +N+P+I ++ D+ + G + ++ KP +P L T+ Sbjct: 89 VCRRIKSDPKTKNVPVIMCSSKGEEFDRFWGMRQGADAYIAKPFQPMELVGTI 141 >SYNE-PCC-01-001133 sll1673 Length = 452 Score = 68.9 bits (167), Expect = 7e-14 Identities = 39/111 (35%), Positives = 64/111 (57%) Query: 713 TQLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMP 772 T + +ILLV+D N + DLL + G V+ +G+ AL L D IL+DI+MP Sbjct: 4 TDEKKGNILLVDDLPNNLQLLSDLLINLGYTVRSVTSGKMALRTLQVKRPDLILLDIKMP 63 Query: 773 MLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIK 823 ++GY I+++E +++PII ++A D+ KA + G D++TKP + Sbjct: 64 DMDGYQVCEMIKKEEELQDIPIIFISALGDTFDKVKAFECGGVDYITKPFQ 114 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 68.2 bits (165), Expect = 1e-13 Identities = 37/112 (33%), Positives = 62/112 (55%) Query: 716 EGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLN 775 E +LLV+D+ D L +G +V A NG+EAL LLT+ D I+ DI MP ++ Sbjct: 6 ENYHLLLVDDDPNLLLLVKDYLEYQGYQVTTAGNGREALDLLTTTVPDMIVCDIMMPEMD 65 Query: 776 GYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLL 827 GY +RQ +P++ ++A + ++ K L+ G + ++ KP +P+ L Sbjct: 66 GYAFIEQVRQNPDISWIPVMFLSAKGQSHNRVKGLNVGADIYMAKPFEPEEL 117 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 67.8 bits (164), Expect = 1e-13 Identities = 43/153 (28%), Positives = 72/153 (47%), Gaps = 2/153 (1%) Query: 716 EGASILLVEDNEINREFAHDLLTSKG-LRVQVANNGQEALTLLTSNTYDAILMDIQMPML 774 E S+LLV+D RE L G +V +A N EA L + ++ DI MP + Sbjct: 54 EPISLLLVDDEPGVRESVQAFLEDSGDFKVDLAANATEAWDYLQHHLPALVISDIMMPQV 113 Query: 775 NGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHW 834 +GY + +R+ ++LP++ +TA M GD+ + G + L+KP PD L + + Sbjct: 114 DGYQFLQKLREDARFQSLPVVFLTARGMTGDRIQGYQTGCDAFLSKPFDPDELEAIVRNL 173 Query: 835 IPPNSAREKKNPSSNLKADLSFSSMTGINQQIG 867 + A S + K + + + +QIG Sbjct: 174 LARQQASSDAG-SESAKLQEIYQEIRALKEQIG 205 >HINF-KW2-01-000816 HI0837 response regulator (cpxR) Length = 227 Score = 65.9 bits (159), Expect = 6e-13 Identities = 47/145 (32%), Positives = 74/145 (51%), Gaps = 11/145 (7%) Query: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGY 777 + +LLV+D+ E LL +G V+ ANNG EAL L + +Y +L+D+ MP LNG Sbjct: 2 SKLLLVDDDIELTELLSTLLELEGFDVETANNGLEALQKL-NESYKLVLLDVMMPKLNGI 60 Query: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWIPP 837 + + IR+ N+P++ +TA D+ L+ G +D L KP L + + Sbjct: 61 ETLKEIRKVS---NVPVMMLTARGEDIDRVLGLELGADDCLPKPFNDRELIARIKAIL-- 115 Query: 838 NSAREKKNPSSNLK--ADLSFSSMT 860 R +PS+N+ LSF +T Sbjct: 116 ---RRSASPSNNISNVEILSFDGIT 137 >SYNE-PCC-01-002489 slr1588 Length = 421 Score = 62.4 bits (150), Expect = 6e-12 Identities = 37/116 (31%), Positives = 62/116 (53%), Gaps = 2/116 (1%) Query: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTY--DAILMDIQMPMLN 775 ++IL+VED I RE + L+ + ++ A NG AL LL S D I+ D+ MP ++ Sbjct: 2 STILVVEDEAIIRELIGETLSLENYKILEAENGAVALGLLNSLEVMPDLIICDVMMPEMD 61 Query: 776 GYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 G+ A+++ +P I +TA D K +++G +D+L KP K + L + Sbjct: 62 GHGLITALQKNAKTAAIPFIFLTALGTMQDFRKGMNSGADDYLIKPFKQEDLLNAV 117 >HINF-KW2-01-001671 HI1708 transcriptional regulatory protein (ygiX) Length = 221 Score = 61.6 bits (148), Expect = 1e-11 Identities = 32/102 (31%), Positives = 57/102 (55%), Gaps = 2/102 (1%) Query: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 ILL+ED+ + LT G V +G+ + LTS YDA+++D+ +P L+G + Sbjct: 3 ILLIEDDNLIGNGLQIGLTKLGFAVDWFTDGKTGMAALTSAPYDAVVLDLTLPKLDGLEV 62 Query: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKP 821 + R H+++P++ +TA ++ K L +G +D+L KP Sbjct: 63 LQQWRSN--HQDVPVLILTARDTLDERVKGLQSGADDYLCKP 102 >SYNE-PCC-01-002618 slr1760 Length = 315 Score = 61.2 bits (147), Expect = 1e-11 Identities = 53/221 (23%), Positives = 101/221 (45%), Gaps = 15/221 (6%) Query: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGY 777 A IL+V+D+ R L +G RV++A NG+EALT + +L+D MP+++G+ Sbjct: 12 AKILVVDDDGFMRMQLRVYLQKEGHRVELATNGEEALTKFAEIKPEVVLLDAVMPVMDGF 71 Query: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLAHWIPP 837 +A+ + + + ++ +T ++A +AG D++TKPI +L Q + + Sbjct: 72 ACCQALMKIYQNPSPLVLMITGLDDEASVDRAFEAGAIDYVTKPIHWAVLRQRVKRLLYQ 131 Query: 838 NSAREK-KNPSSNLKADLSFSSMTGINQQIGMQYIENVELYHRLLVKFG--------DRY 888 N + + ++ + L+ +T + + ++ + E + ++ D + Sbjct: 132 NRLQHQLESVNQMLERLAKVDQLTQLANRRQLELFLDTEWSEAIREQYPFSILLCDIDYF 191 Query: 889 SNFADQFRTEQASDD-----PTAATRYAHSIKGAAALLGIE 924 N+ D + Q DD A TR H K AA G E Sbjct: 192 KNYNDHY-GHQGGDDCLQQVAKALTRVVHRPKDLAARYGGE 231 >HINF-KW2-01-000863 HI0884 aerobic respiration control protein ARCA (arcA) Length = 236 Score = 60.5 bits (145), Expect = 2e-11 Identities = 42/148 (28%), Positives = 72/148 (48%), Gaps = 11/148 (7%) Query: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 IL+VED + R + ++G V A NG E +L ++ + ++MDI +P NG Sbjct: 6 ILVVEDEIVTRNTLKGIFEAEGYDVFEAENGVEMHHILANHNINLVVMDINLPGKNGLLL 65 Query: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKP--------DLLFQTL 831 R +R++ +LP+I +T D+ L+ G +D+LTKP P +LL + + Sbjct: 66 ARELREE---LSLPLIFLTGRDNEVDKILGLEIGADDYLTKPFNPRELTIRARNLLHRAM 122 Query: 832 AHWIPPNSAREKKNPSSNLKADLSFSSM 859 H N+ + + K DL+ S+ Sbjct: 123 PHQEKENTFGREFYRFNGWKLDLNSHSL 150 >SYNE-PCC-01-002672 slr1837 Length = 234 Score = 58.9 bits (141), Expect = 7e-11 Identities = 33/106 (31%), Positives = 57/106 (53%), Gaps = 2/106 (1%) Query: 718 ASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGY 777 A+ILLV+D E L +G + VA+ G+ L + + YD +++D +P ++G Sbjct: 2 ANILLVDDENALTEPLSKALGHQGHTIDVADQGKTGLAMAIAGQYDLLILDWMLPQVSGL 61 Query: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIK 823 + R IR + + P++ +TA D+ LDAG +D+L KP + Sbjct: 62 EICRQIRILGH--STPVLFLTAKDTLDDRVAGLDAGGDDYLIKPFE 105 >SYNE-PCC-01-002033 slr0947 Length = 234 Score = 58.5 bits (140), Expect = 9e-11 Identities = 30/103 (29%), Positives = 54/103 (52%), Gaps = 3/103 (2%) Query: 722 LVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDATR 781 +V+D R L+ G V A +G+EA+ + D +++D+ MP L+GY + Sbjct: 1 MVDDEASIRRILETRLSMIGYEVVTAADGEEAIATFHESDPDLVVLDVMMPKLDGYGVCQ 60 Query: 782 AIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKP 824 +R++ ++PII +TA D+ L+ G +D++ KP P Sbjct: 61 ELRKES---DIPIIMLTALGDVADRITGLELGADDYVVKPFSP 100 >SYNE-PCC-01-000414 sll0649 Length = 245 Score = 57.8 bits (138), Expect = 2e-10 Identities = 31/106 (29%), Positives = 54/106 (50%) Query: 719 SILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYD 778 +IL+VED++ + + L + V N+G+ L + D I++D+ +P L+G + Sbjct: 13 NILIVEDDQEIAQLIRETLEREQFTCIVTNDGETGLRIFQEQVPDLIVLDLMLPKLDGLE 72 Query: 779 ATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKP 824 IRQQ ++ I+ +TA D+ L G +D+L KP P Sbjct: 73 VCTRIRQQPGSKDPYILMLTAKGEEIDRIIGLSTGADDYLVKPFSP 118 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 56.6 bits (135), Expect = 3e-10 Identities = 52/222 (23%), Positives = 94/222 (42%), Gaps = 27/222 (12%) Query: 715 LEGASILLVEDNEINREFAHDLLTSKGLRVQV--ANNGQEALTLLTSNTYDAILMDIQMP 772 +E I L+ED ++ R+ D LT + V A NG+ L ++ D +++DI +P Sbjct: 1 MEKIRIALIEDEDLIRQGLQDALTMEPSFEWVGEAANGRLGLVMMQQTRPDVVIIDIGLP 60 Query: 773 MLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTLA 832 +NG D T+ +++ + ++ +T N A AG + + K + +LL + + Sbjct: 61 DMNGIDVTQQLKKGPLNCQCRVVILTLNDQEETVLAAFSAGADAYCMKDSRTELLIEAIQ 120 Query: 833 ------HWIPPNSAR---------EKKNPSSNLKADLSFSSMTGINQ------QIGMQYI 871 WI P AR E PSS + LS+ G+ + Q+ + Sbjct: 121 ATHGGFAWIDPAIARIVLAHAPGAEPSEPSSPSRTSLSY----GLTERELEVLQLIVDGC 176 Query: 872 ENVELYHRLLVKFGDRYSNFADQFRTEQASDDPTAATRYAHS 913 N ++ +L + G ++ + A+D AA R S Sbjct: 177 SNADIAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRS 218 >SYNE-PCC-01-001461 slr0115 Length = 241 Score = 56.2 bits (134), Expect = 4e-10 Identities = 28/102 (27%), Positives = 55/102 (53%) Query: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 IL+++D+ + L G VQ A +G + L D I++D+ +P ++G+ Sbjct: 4 ILIIDDDPAISDLVSINLEMAGYDVQQAVDGIKGQALAVQLQPDLIMLDLMLPKVDGFTV 63 Query: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKP 821 + +R+ E ++P++ +TA D+ + D+G +D+LTKP Sbjct: 64 CQRLRRDERTADIPVLMLTALGQIQDKIQGFDSGADDYLTKP 105 >SYNE-PCC-01-001437 slr0081 Length = 262 Score = 56.2 bits (134), Expect = 4e-10 Identities = 40/130 (30%), Positives = 64/130 (49%), Gaps = 9/130 (6%) Query: 699 VSILEAKPSVTQAITQLEGASILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLT 758 ++ LEA P Q IL+VED RE L +G V ++G++AL LL Sbjct: 12 MATLEAPPHSLQHQEIPPSHRILVVEDEVSIRETIVLSLQEEGYEVYAVDDGRDALALLQ 71 Query: 759 SNT-------YDAILMDIQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALD 811 + D I++DI +P +NG D R++R N PI+ ++A ++ L+ Sbjct: 72 EFSEDPGQAAVDLIILDIMLPQVNGLDVCRSLRFG--GDNTPILIVSAKGSEMEKVTGLE 129 Query: 812 AGMNDHLTKP 821 G +D++TKP Sbjct: 130 VGADDYITKP 139 >HINF-KW2-01-001345 HI1379 phosphate regulon transcriptional regulatory protein (phoB) Length = 231 Score = 55.8 bits (133), Expect = 6e-10 Identities = 36/108 (33%), Positives = 58/108 (53%), Gaps = 1/108 (0%) Query: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 IL+VED RE L+ K V A++ + A+ + N IL+D +P +G Sbjct: 5 ILIVEDECAIREMIALFLSQKYYDVIEASDFKTAINKIKENP-KLILLDWMLPGRSGIQF 63 Query: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLL 827 + I++QE + +PII +TA + D L+AG +D++TKP P +L Sbjct: 64 IQYIKKQESYAAIPIIMLTAKSTEEDCIACLNAGADDYITKPFSPQIL 111 >SYNE-PCC-01-002486 slr1584 Length = 234 Score = 55.1 bits (131), Expect = 1e-09 Identities = 34/109 (31%), Positives = 55/109 (50%), Gaps = 2/109 (1%) Query: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 ILLVED+ E + L+ + V +A + A + YD +++D+ +P L+G Sbjct: 3 ILLVEDDLPLAETLAEALSDQLYTVDIATDASLAWDYASRLEYDLVILDVMLPELDGITL 62 Query: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLF 828 + R Y +PI+ MTA D+ LDAG +D++ KP+ LF Sbjct: 63 CQKWRSHSY--LMPILMMTARDTINDKITGLDAGADDYVVKPVDLGELF 109 >SYNE-PCC-01-000242 sll0396 Length = 224 Score = 51.6 bits (122), Expect = 1e-08 Identities = 33/109 (30%), Positives = 54/109 (49%), Gaps = 2/109 (1%) Query: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSNTYDAILMDIQMPMLNGYDA 779 +L+VE+ E F L +G V VA +G + T D I+++ +P ++G + Sbjct: 5 VLVVEEEEKLARFMELELKYEGYDVSVARDGLKGFTQAQEFPPDLIIVNGALPGMSGLEL 64 Query: 780 TRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLF 828 R +R E +PII +TA ++ LDAG +D++ KP D F Sbjct: 65 CRRLR--EMGSRIPIILITAKDDVEERVMGLDAGADDYIVKPFNSDEFF 111 >SYNE-PCC-01-000523 sll0797 Length = 234 Score = 44.7 bits (104), Expect = 1e-06 Identities = 32/104 (30%), Positives = 53/104 (50%), Gaps = 4/104 (3%) Query: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSN--TYDAILMDIQMPMLNGY 777 ILLVED +L S+ V +G +A L + Y ++D +P L+G Sbjct: 3 ILLVEDETDLGMAIKKVLVSEKYVVDWVTDGSQAWDYLENQWTEYTLAIVDWLLPGLSGL 62 Query: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKP 821 + + +R Q +LP++ +TA ++ + LDAG +D+LTKP Sbjct: 63 ELCQKLRTQG--NSLPVLMLTALGEPENRVEGLDAGADDYLTKP 104 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 43.9 bits (102), Expect = 2e-06 Identities = 28/114 (24%), Positives = 56/114 (49%), Gaps = 4/114 (3%) Query: 720 ILLVEDNEINREFAHDLLTSKGLRVQVAN--NGQEALTLLTSNTYDAILMDIQMPMLNGY 777 +LL++D+ + R L+ VA+ +G E +++ + D I++D+ M L+G Sbjct: 7 VLLIDDHPLMRRGIKQLVELDDNFEVVADVSSGTEGISVALQTSPDVIILDLNMKGLSGL 66 Query: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLFQTL 831 D + +R + I+ +T + D +DAG + +L K +PD L + + Sbjct: 67 DTLKGLRAEGVDAR--ILILTVSDAKNDIYTLIDAGADGYLLKDTEPDTLLEQI 118 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 43.1 bits (100), Expect = 4e-06 Identities = 37/136 (27%), Positives = 64/136 (47%), Gaps = 12/136 (8%) Query: 712 ITQLEGASILLVEDNEINREFAHDLLTSKGLRVQV---ANNGQEALTLLTSNTYDAILMD 768 ++Q +L+ +D+ I R+ ++ ++ +QV A NG++A+ L + D LMD Sbjct: 1 MSQATTIRVLIADDHAIFRQGLATII-NRDPDMQVIAQAENGEQAIALFEEHQPDVTLMD 59 Query: 769 IQMPMLNGYDATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKPIKPDLLF 828 ++MP + G A AI + II +T D + L AG +L K +PD L Sbjct: 60 LRMPEVEGVAAISAI--CAIVKFARIIVLTTYDSDEDIYRGLQAGAKGYLLKETEPDELL 117 Query: 829 QTL------AHWIPPN 838 + +IPP+ Sbjct: 118 NAIRTVHRGQKYIPPD 133 >SYNE-PCC-01-000518 sll0789 Length = 232 Score = 42.7 bits (99), Expect = 5e-06 Identities = 31/104 (29%), Positives = 48/104 (46%), Gaps = 4/104 (3%) Query: 720 ILLVEDNEINREFAHDLLTSKGLRVQVANNGQEALTLLTSN--TYDAILMDIQMPMLNGY 777 +LLVED L + V +G A + L Y + D +P L+G Sbjct: 3 LLLVEDEPDLGMALEKALRRENYVVDWVQDGNLAWSYLDQGWVNYTLAIFDWMVPGLSGL 62 Query: 778 DATRAIRQQEYHRNLPIIAMTANAMAGDQEKALDAGMNDHLTKP 821 + + +R Q +LPI+ +TA D+ + LDAG +D+L KP Sbjct: 63 ELCQKLRGQR--SSLPILMLTAKDQIADRVEGLDAGADDYLIKP 104 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.134 0.380 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 87,590 Number of Sequences: 78 Number of extensions: 3765 Number of successful extensions: 121 Number of sequences better than 1.0e-05: 38 Number of HSP's better than 0.0 without gapping: 24 Number of HSP's successfully gapped in prelim test: 14 Number of HSP's that attempted gapping in prelim test: 30 Number of HSP's gapped (non-prelim): 55 length of query: 950 length of database: 48,235 effective HSP length: 71 effective length of query: 879 effective length of database: 42,697 effective search space: 37530663 effective search space used: 37530663 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 97 (42.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SYNE-PCC-01-002951 ssl0564 (89 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SYNE-PCC-01-002951 ssl0564 182 2e-49 SYNE-PCC-01-002731 slr1909 67 9e-15 SYNE-PCC-01-002635 slr1783 60 2e-12 SYNE-PCC-01-001160 sll1708 52 4e-10 HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator pr... 49 3e-09 SYNE-PCC-01-000511 sll0782 48 6e-09 SYNE-PCC-01-001575 slr0312 47 1e-08 SYNE-PCC-01-000608 sll0921 47 1e-08 SYNE-PCC-01-001075 sll1592 46 2e-08 SYNE-PCC-01-001039 sll1544 42 5e-07 >SYNE-PCC-01-002951 ssl0564 Length = 89 Score = 182 bits (462), Expect = 2e-49 Identities = 89/89 (100%), Positives = 89/89 (100%) Query: 1 MLAGNYQPPASLSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRV 60 MLAGNYQPPASLSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRV Sbjct: 1 MLAGNYQPPASLSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRV 60 Query: 61 ELVRWALQWGKVCLNDVNCCILPGQGSGS 89 ELVRWALQWGKVCLNDVNCCILPGQGSGS Sbjct: 61 ELVRWALQWGKVCLNDVNCCILPGQGSGS 89 >SYNE-PCC-01-002731 slr1909 Length = 213 Score = 67.4 bits (163), Expect = 9e-15 Identities = 29/57 (50%), Positives = 44/57 (77%) Query: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQ 68 L+ E +++ LVA GL N+E+++ L++S+RTV++HVSN+L KT NR EL RWA+Q Sbjct: 153 LTPTETKVIQLVAQGLANREIADHLKVSQRTVESHVSNMLNKTGLHNRTELARWAIQ 209 >SYNE-PCC-01-002635 slr1783 Length = 282 Score = 59.7 bits (143), Expect = 2e-12 Identities = 29/56 (51%), Positives = 41/56 (73%) Query: 15 RELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWG 70 RE +LDLV+ GL N+E++ +L+ S R V+ +VS + TKT T +R ELVR+ALQ G Sbjct: 224 REQSVLDLVSQGLMNKEIAAQLKTSVRNVEKYVSRLFTKTGTNSRTELVRFALQHG 279 >SYNE-PCC-01-001160 sll1708 Length = 226 Score = 52.0 bits (123), Expect = 4e-10 Identities = 27/76 (35%), Positives = 46/76 (60%), Gaps = 8/76 (10%) Query: 5 NYQPP--------ASLSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNT 56 N +PP +SLS+RE+++L L+ G +NQE+++ L +S T+ HV I+ K + Sbjct: 151 NLKPPVPEGQADVSSLSEREIDVLKLIVEGKSNQEIAQTLYLSTNTIKTHVRGIMNKLSV 210 Query: 57 ENRVELVRWALQWGKV 72 ++RV+ AL+ G V Sbjct: 211 DDRVQAAVIALRSGLV 226 >HINF-KW2-01-000704 HI0726 nitrate/nitrite response regulator protein (narP) Length = 208 Score = 49.3 bits (116), Expect = 3e-09 Identities = 23/53 (43%), Positives = 37/53 (69%) Query: 8 PPASLSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRV 60 P SL+DRE+ +L +A GL+N++++ +L IS+ TV H+ N+L K N +RV Sbjct: 145 PLDSLTDREMGVLRQIATGLSNKQIAAQLFISEETVKVHIRNLLRKLNVHSRV 197 >SYNE-PCC-01-000511 sll0782 Length = 369 Score = 48.1 bits (113), Expect = 6e-09 Identities = 25/59 (42%), Positives = 38/59 (64%) Query: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWG 70 LS+RE EI+ L+A GL +++++E L IS+ TV HV+ L K N +NR + + A G Sbjct: 309 LSEREKEIVSLLAQGLRDRDIAEELHISESTVKFHVNGTLHKLNAKNRYQAIYQATVQG 367 >SYNE-PCC-01-001575 slr0312 Length = 209 Score = 47.4 bits (111), Expect = 1e-08 Identities = 25/63 (39%), Positives = 41/63 (65%) Query: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWGK 71 LS+RELE+L +A G++N +++ L I + TV +HV+ IL K + +R + V A++ G Sbjct: 147 LSERELEVLGSLAQGMSNADIATALSIGEGTVKSHVNRILNKLDVGDRTQAVIVAVKRGI 206 Query: 72 VCL 74 V L Sbjct: 207 VSL 209 >SYNE-PCC-01-000608 sll0921 Length = 222 Score = 47.4 bits (111), Expect = 1e-08 Identities = 24/61 (39%), Positives = 38/61 (62%) Query: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWGK 71 L++RELE+L L+ G +N +++E+L I+ TV HV NIL K +R + A++ G Sbjct: 161 LTERELEVLQLIVDGCSNADIAEKLYITVGTVKTHVRNILNKLCANDRTQAAVRAIRSGL 220 Query: 72 V 72 V Sbjct: 221 V 221 >SYNE-PCC-01-001075 sll1592 Length = 226 Score = 46.2 bits (108), Expect = 2e-08 Identities = 25/57 (43%), Positives = 35/57 (61%) Query: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQ 68 L+ RELEIL LVA G +NQE+++ L I+ TV HV IL K +R + A++ Sbjct: 164 LTKRELEILSLVAKGKSNQEIADELYIAPGTVRVHVHTILRKLEVRDRTQAALLAIE 220 >SYNE-PCC-01-001039 sll1544 Length = 228 Score = 41.6 bits (96), Expect = 5e-07 Identities = 22/59 (37%), Positives = 32/59 (54%) Query: 12 LSDRELEILDLVAIGLTNQEVSERLEISKRTVDNHVSNILTKTNTENRVELVRWALQWG 70 L+ RE+ IL LVA G TN E+ + L ++ TV +V I+ K N +R L+ G Sbjct: 167 LTQREVAILRLVAEGKTNSEIGQELHLASSTVREYVQTIMRKLNARDRTSAAIAGLREG 225 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.315 0.133 0.392 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 8808 Number of Sequences: 78 Number of extensions: 344 Number of successful extensions: 14 Number of sequences better than 1.0e-05: 10 Number of HSP's better than 0.0 without gapping: 10 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 4 Number of HSP's gapped (non-prelim): 10 length of query: 89 length of database: 48,235 effective HSP length: 49 effective length of query: 40 effective length of database: 44,413 effective search space: 1776520 effective search space used: 1776520 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (22.0 bits) S2: 86 (37.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= MJAN-DSM-01-000260 MJ0255 conserved hypothetical protein {Xanthobacter sp.} (251 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value MJAN-DSM-01-000260 MJ0255 conserved hypothetical protein {Xanth... 503 e-145 >MJAN-DSM-01-000260 MJ0255 conserved hypothetical protein {Xanthobacter sp.} Length = 251 Score = 503 bits (1294), Expect = e-145 Identities = 251/251 (100%), Positives = 251/251 (100%) Query: 1 MKAFEFLYEDFQRGLTVVLDKGLPPKFVEDYLKVCGDYIDFVKFGWGTSAVIDRDVVKEK 60 MKAFEFLYEDFQRGLTVVLDKGLPPKFVEDYLKVCGDYIDFVKFGWGTSAVIDRDVVKEK Sbjct: 1 MKAFEFLYEDFQRGLTVVLDKGLPPKFVEDYLKVCGDYIDFVKFGWGTSAVIDRDVVKEK 60 Query: 61 INYYKDWGIKVYPGGTLFEYAYSKGKFDEFLNECEKLGFEAVEISDGSSDISLEERKNAI 120 INYYKDWGIKVYPGGTLFEYAYSKGKFDEFLNECEKLGFEAVEISDGSSDISLEERKNAI Sbjct: 61 INYYKDWGIKVYPGGTLFEYAYSKGKFDEFLNECEKLGFEAVEISDGSSDISLEERKNAI 120 Query: 121 KRAKDNGFMVLTEVGKKMPDKDKQLTIDDRIKLINFDLDAGADYVIIEGRESGKGIGLFD 180 KRAKDNGFMVLTEVGKKMPDKDKQLTIDDRIKLINFDLDAGADYVIIEGRESGKGIGLFD Sbjct: 121 KRAKDNGFMVLTEVGKKMPDKDKQLTIDDRIKLINFDLDAGADYVIIEGRESGKGIGLFD 180 Query: 181 KEGKVKENELDVLAKNVDINKVIFEAPQKSQQVAFILKFGSSVNLANIAFDEVISLETLR 240 KEGKVKENELDVLAKNVDINKVIFEAPQKSQQVAFILKFGSSVNLANIAFDEVISLETLR Sbjct: 181 KEGKVKENELDVLAKNVDINKVIFEAPQKSQQVAFILKFGSSVNLANIAFDEVISLETLR 240 Query: 241 RGLRGDTFGKV 251 RGLRGDTFGKV Sbjct: 241 RGLRGDTFGKV 251 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.142 0.406 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 24,157 Number of Sequences: 78 Number of extensions: 1113 Number of successful extensions: 10 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 9 Number of HSP's gapped (non-prelim): 1 length of query: 251 length of database: 48,235 effective HSP length: 61 effective length of query: 190 effective length of database: 43,477 effective search space: 8260630 effective search space used: 8260630 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 91 (39.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= MJAN-DSM-01-001076 MJ1053 hypothetical protein (163 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value MJAN-DSM-01-001076 MJ1053 hypothetical protein 225 5e-62 >MJAN-DSM-01-001076 MJ1053 hypothetical protein Length = 163 Score = 225 bits (574), Expect = 5e-62 Identities = 116/116 (100%), Positives = 116/116 (100%) Query: 1 MIPLVPTSKTEIDKLEHVLILGTLFRPEILELIKDPIEKVTWVDSLAIAAGALAREKAGY 60 MIPLVPTSKTEIDKLEHVLILGTLFRPEILELIKDPIEKVTWVDSLAIAAGALAREKAGY Sbjct: 1 MIPLVPTSKTEIDKLEHVLILGTLFRPEILELIKDPIEKVTWVDSLAIAAGALAREKAGY 60 Query: 61 TIREIADELGRTEQTIRKHLKGETKAGKLVRETYEMMKRGELNIEEVEKFLEAVVR 116 TIREIADELGRTEQTIRKHLKGETKAGKLVRETYEMMKRGELNIEEVEKFLEAVVR Sbjct: 61 TIREIADELGRTEQTIRKHLKGETKAGKLVRETYEMMKRGELNIEEVEKFLEAVVR 116 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.317 0.137 0.369 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 10,022 Number of Sequences: 78 Number of extensions: 396 Number of successful extensions: 10 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 9 Number of HSP's gapped (non-prelim): 1 length of query: 163 length of database: 48,235 effective HSP length: 57 effective length of query: 106 effective length of database: 43,789 effective search space: 4641634 effective search space used: 4641634 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.6 bits) S2: 89 (38.9 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= MJAN-DSM-01-001277 MJ1254 hypothetical protein (469 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value MJAN-DSM-01-001277 MJ1254 hypothetical protein 682 0.0 >MJAN-DSM-01-001277 MJ1254 hypothetical protein Length = 469 Score = 682 bits (1759), Expect = 0.0 Identities = 358/444 (80%), Positives = 358/444 (80%) Query: 1 MIAFLFYKCFAKNYKINFLYKNSSYINTNTLWLKVIYIKTKDVIIXXXXXXVAFNVSSAY 60 MIAFLFYKCFAKNYKINFLYKNSSYINTNTLWLKVIYIKTKDVII VAFNVSSAY Sbjct: 1 MIAFLFYKCFAKNYKINFLYKNSSYINTNTLWLKVIYIKTKDVIIFLLLFFVAFNVSSAY 60 Query: 61 VIKNLNIDCIVTPDDTINETISFVIYNNEDKNLSHISYTIPQTIRNFTINASAGVKGYSA 120 VIKNLNIDCIVTPDDTINETISFVIYNNEDKNLSHISYTIPQTIRNFTINASAGVKGYSA Sbjct: 61 VIKNLNIDCIVTPDDTINETISFVIYNNEDKNLSHISYTIPQTIRNFTINASAGVKGYSA 120 Query: 121 LYNEGVTEIAIEFEKPIPKGGYTNITINCFVNDAIWTKNGIKQLILSFPITSKNATIKIV 180 LYNEGVTEIAIEFEKPIPKGGYTNITINCFVNDAIWTKNGIKQLILSFPITSKNATIKIV Sbjct: 121 LYNEGVTEIAIEFEKPIPKGGYTNITINCFVNDAIWTKNGIKQLILSFPITSKNATIKIV 180 Query: 181 LPPGAVILSPQGTLLVTPSGYKITTDGKHQIIVWDLSLNKEITFTITVKYTFISYPGQNI 240 LPPGAVILSPQGTLLVTPSGYKITTDGKHQIIVWDLSLNKEITFTITVKYTFISYPGQNI Sbjct: 181 LPPGAVILSPQGTLLVTPSGYKITTDGKHQIIVWDLSLNKEITFTITVKYTFISYPGQNI 240 Query: 241 IEQPAINNNLKYXXXXXXXXXXXXXXXXVXXXXXXXXXXXXXXNIXXXXXXXXXXXXXXX 300 IEQPAINNNLKY V NI Sbjct: 241 IEQPAINNNLKYLLIIAIFGTAIFGGLFVKEKISKRKIIERTKNIKNELTSLKNKLKEKE 300 Query: 301 XXXXXXXXXXXDLEDXXXXXXXXXXXXDEIISVLNERISEYESQIQKLLDENIIYKEKIE 360 DLED DEIISVLNERISEYESQIQKLLDENIIYKEKIE Sbjct: 301 EEIKNLAIKIKDLEDKLSKANKNLLNKDEIISVLNERISEYESQIQKLLDENIIYKEKIE 360 Query: 361 SLNKYIETLKKENDKLKDKVRELSDIAKKYMEEKRGVLWSFLTXXXXXXXXXXXXHGHIT 420 SLNKYIETLKKENDKLKDKVRELSDIAKKYMEEKRGVLWSFLT HGHIT Sbjct: 361 SLNKYIETLKKENDKLKDKVRELSDIAKKYMEEKRGVLWSFLTEDEKIIIDLIKKHGHIT 420 Query: 421 QKEIVEITGMSKPKVSRIISELED 444 QKEIVEITGMSKPKVSRIISELED Sbjct: 421 QKEIVEITGMSKPKVSRIISELED 444 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.317 0.136 0.385 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 35,869 Number of Sequences: 78 Number of extensions: 1537 Number of successful extensions: 42 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 37 Number of HSP's gapped (non-prelim): 2 length of query: 469 length of database: 48,235 effective HSP length: 66 effective length of query: 403 effective length of database: 43,087 effective search space: 17364061 effective search space used: 17364061 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.6 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] (1033 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil pro... 1669 0.0 MGEN-G37-01-000335 MG328 conserved hypothetical protein 178 6e-47 MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) 71 2e-14 SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 69 9e-14 SYNE-PCC-01-000727 sll1120 53 4e-09 SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 52 7e-09 SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 49 1e-07 SYNE-PCC-01-001071 sll1583 46 7e-07 >MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] Length = 1033 Score = 1669 bits (4321), Expect = 0.0 Identities = 889/1033 (86%), Positives = 889/1033 (86%) Query: 1 MEFLEQEGQEVLTKEIKAGFCEITPSSITEQTTKPQLDETQLVDEYVHTKELETTPIPIS 60 MEFLEQEGQEVLTKEIKAGFCEITPSSITEQTTKPQLDETQLVDEYVHTKELETTPIPIS Sbjct: 1 MEFLEQEGQEVLTKEIKAGFCEITPSSITEQTTKPQLDETQLVDEYVHTKELETTPIPIS 60 Query: 61 FATKEVLFEEVFNTPSTQQVDESVLVNEYIELTQQIKNASEQVSSNHTHKFSVATEPAAT 120 FATKEVLFEEVFNTPSTQQVDESVLVNEYIELTQQIKNASEQVSSNHTHKFSVATEPAAT Sbjct: 61 FATKEVLFEEVFNTPSTQQVDESVLVNEYIELTQQIKNASEQVSSNHTHKFSVATEPAAT 120 Query: 121 KAVSETMLLDDYVEMVEQDVQAQTALPQAALDPTVSLTFSSPIDSNAILVYPEMKVPHVF 180 KAVSETMLLDDYVEMVEQDVQAQTALPQAALDPTVSLTFSSPIDSNAILVYPEMKVPHVF Sbjct: 121 KAVSETMLLDDYVEMVEQDVQAQTALPQAALDPTVSLTFSSPIDSNAILVYPEMKVPHVF 180 Query: 181 DTVAPTTTTVPLDQTQLLDELVEVPVLTHTVTPAPLQPKAAPTNFALDQTQLVDELVTVP 240 DTVAPTTTTVPLDQTQLLDELVEVPVLTHTVTPAPLQPKAAPTNFALDQTQLVDELVTVP Sbjct: 181 DTVAPTTTTVPLDQTQLLDELVEVPVLTHTVTPAPLQPKAAPTNFALDQTQLVDELVTVP 240 Query: 241 LTHTLVNEXXXXXXXXXXXXXXEHSFSITTVDKANLTNALSQTVVIKPAEDSAHQSAVLD 300 LTHTLVNE EHSFSITTVDKANLTNALSQTVVIKPAEDSAHQSAVLD Sbjct: 241 LTHTLVNESAPVTPVVVTSPAAEHSFSITTVDKANLTNALSQTVVIKPAEDSAHQSAVLD 300 Query: 301 KEIATKXXXXXXXXXXXXXXXXXXETPPVTYMGVEEYKLLXXXXXXXXXXXXSFEMTLLQ 360 KEIATK ETPPVTYMGVEEYKLL SFEMTLLQ Sbjct: 301 KEIATKQAQLQQLQAQIELRQAQLETPPVTYMGVEEYKLLPVQDVVPVQPTVSFEMTLLQ 360 Query: 361 EQLDKALKHNAALQIQLEEQLAKPLQYDQSPVLQERIXXXXXXXXXXXXXXXXXXXKLFK 420 EQLDKALKHNAALQIQLEEQLAKPLQYDQSPVLQERI KLFK Sbjct: 361 EQLDKALKHNAALQIQLEEQLAKPLQYDQSPVLQERIELLQNQNTNLTQELNELQQKLFK 420 Query: 421 SQNNSLLLARLEEENRTLKQHLQNNLPEANQLNFVXXXXXXXXXXDKHSLTLQIEQYKFD 480 SQNNSLLLARLEEENRTLKQHLQNNLPEANQLNFV DKHSLTLQIEQYKFD Sbjct: 421 SQNNSLLLARLEEENRTLKQHLQNNLPEANQLNFVLEKQLEQLQQDKHSLTLQIEQYKFD 480 Query: 481 SKKHQEQLALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDE 540 SKKHQEQLALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDE Sbjct: 481 SKKHQEQLALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDE 540 Query: 541 NTKYRNLLKQYELMRADSDXXXXXXXXXXXXXXXXXXXXXXXXXRHNEALVKELDQVKAT 600 NTKYRNLLKQYELMRADSD RHNEALVKELDQVKAT Sbjct: 541 NTKYRNLLKQYELMRADSDAKLKELEHEQHLAHQHHQEQLAQLQRHNEALVKELDQVKAT 600 Query: 601 NFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLEFTHKEK 660 NFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLEFTHKEK Sbjct: 601 NFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLEFTHKEK 660 Query: 661 TAFDSXXXXXXXXXXXXXXFDLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENX 720 TAFDS FDLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDEN Sbjct: 661 TAFDSKTLTLTKQQLEQTQFDLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENL 720 Query: 721 XXXXXXXXXXXXSYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQ 780 SYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQ Sbjct: 721 TQLQTQHELLQESYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQ 780 Query: 781 NELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKA 840 NELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKA Sbjct: 781 NELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKA 840 Query: 841 ELNEIQITNLNEANAQYQDLLSAYELLQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQ 900 ELNEIQITNLNEANAQYQDLLSAYELLQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQ Sbjct: 841 ELNEIQITNLNEANAQYQDLLSAYELLQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQ 900 Query: 901 SLSQTHAELTQLQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQNLALVHELQYFNEL 960 SLSQTHAELTQLQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQNLALVHELQYFNEL Sbjct: 901 SLSQTHAELTQLQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQNLALVHELQYFNEL 960 Query: 961 NSSQTHEIKTKQDETXXXXXXXXXXXXXXXXXXXRLKKRDIVIENKEDALGKLSKKERIQ 1020 NSSQTHEIKTKQDET RLKKRDIVIENKEDALGKLSKKERIQ Sbjct: 961 NSSQTHEIKTKQDETVKEVIIVEKEIPVPPEKKPRLKKRDIVIENKEDALGKLSKKERIQ 1020 Query: 1021 AYAERLAKINGKQ 1033 AYAERLAKINGKQ Sbjct: 1021 AYAERLAKINGKQ 1033 >MGEN-G37-01-000335 MG328 conserved hypothetical protein Length = 756 Score = 178 bits (452), Expect = 6e-47 Identities = 140/467 (29%), Positives = 216/467 (46%), Gaps = 67/467 (14%) Query: 603 ELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNS---ELQNQLNV------- 652 E+ + +Q+K +L + +L ++ + L + N+ ELQNQL Sbjct: 321 EVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVLNNQINELQNQLLTAREANQR 380 Query: 653 LEFTHKEKTAFDSXXXXXXXXXXXXXXFDLSLTQEQLATFKQQNQSLTDKLMASETQLNH 712 L+ +E + Q +N++ DKL + LN Sbjct: 381 LDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELLFDENETKFDKLQVKQQALNL 440 Query: 713 LQQSDENXXXXXXXXXXXXXSYNKLQD-EANHTQQQFHQAQNELDAAHQQLALFKQNNEE 771 Q + + + +D + N+T+ F + + LD L + N++ Sbjct: 441 DYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQKKALDEKLNGLTI---QNQQ 497 Query: 772 LTDKCSNIQNELHDLNRVKTNW-----ENLNTEHNLL---QDKYAQ-------------- 809 L DK + ++ + + + TN + L NL QDK A Sbjct: 498 LQDKIAELEEWNEEKSNLNTNQLVNLQQQLKDSQNLFNVAQDKLATLEEVNLALNEKIND 557 Query: 810 -QKEQMQHEHSN--LAQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQDLLSAYEL 866 + E E+SN LA++QA+HE+LQESY K+K + +++ LN+AN QYQDLLSA+E Sbjct: 558 LEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEE 617 Query: 867 LQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQATPPVS 926 S K KQ L + E QL Q++++ L+ A LQ TP S Sbjct: 618 TNSELEKAKQSLSASDS---ENNQLKQQINS--------------LENAKKELQFTPVTS 660 Query: 927 DELLEQFNQVQLEKQRLLQQNLALVHELQYFNELNSSQTHEIKTKQDETXXXXXXXXXXX 986 DE L++ +++EK++L +N AL ++LQYFN+++++QT EIK DE Sbjct: 661 DEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEASDE-----------D 709 Query: 987 XXXXXXXXRLKKRDIVIENKEDALGKLSKKERIQAYAERLAKINGKQ 1033 R+KKRD VI+NK+D L KLSKKERIQAYAERLAKIN + Sbjct: 710 KPVEIKKPRIKKRDFVIQNKDDKLAKLSKKERIQAYAERLAKINANE 756 Score = 144 bits (364), Expect = 1e-36 Identities = 110/463 (23%), Positives = 205/463 (44%), Gaps = 43/463 (9%) Query: 431 LEEENRTLKQHLQNNLPEANQLNFVXXXXXXXXXXDKHSLTLQIEQYKFDSKKHQEQLAL 490 L +ENR L + LQN N L+ +K L+ Q++ K S Q+QLAL Sbjct: 297 LLQENRDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLAL 356 Query: 491 IPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDENTKYRNLLKQ 550 +P L ++IN L+ ++++ ++ NQRL L+E+EN+FLK E+K+L + NDEN KY +LL Q Sbjct: 357 LPVLNNQINELQNQLLTAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQ 416 Query: 551 YELMRADSDXXXXXXXXXXXXXXXXXXXXXXXXXRHNEALVKELDQVKATNFELGLAAQG 610 YEL+ +++ N+ L+ E++ ++ + + Sbjct: 417 YELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNS 476 Query: 611 FEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLEFTHKEKTAFDSXXXXX 670 FE+QK +A +E + L I N +LQ+++ LE ++EK+ ++ Sbjct: 477 FEEQK--------------KALDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVN 522 Query: 671 XXXXXXXXXFDLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENXXXXXXXXXXX 730 ++ Q++LAT ++ N +L +K+ E +L+ + S+ Sbjct: 523 LQQQLKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEIL 582 Query: 731 XXSYNKLQ-----------DEANHTQQQ----FHQAQNELDAAHQQLALFKQNNEELTDK 775 SY KL+ ++AN Q F + +EL+ A Q L+ N +L + Sbjct: 583 QESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQ 642 Query: 776 CSNIQN--------------ELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNL 821 ++++N L +L +K E L E+ LQ++ + ++ + Sbjct: 643 INSLENAKKELQFTPVTSDEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEI 702 Query: 822 AQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQDLLSAY 864 + E + ++ ++K IQ + A ++ + AY Sbjct: 703 KEASDEDKPVEIKKPRIKKRDFVIQNKDDKLAKLSKKERIQAY 745 Score = 50.1 bits (118), Expect = 3e-08 Identities = 34/101 (33%), Positives = 49/101 (48%), Gaps = 22/101 (21%) Query: 1 MEFLEQEGQEVLTKEIKAGFCEITPSSITEQTTKPQLDETQLVDEYVHTKELETTPIPIS 60 M F E + Q VLTKEIK GF E+ PS IT + K ++ Sbjct: 109 MAFQEVDDQSVLTKEIKTGFQELKPSVITAEDDKDEIKPE-------------------- 148 Query: 61 FATKEVLFEEVFNTPSTQQVDESVLVNEYIELTQQIKNASE 101 ATK+V FEE+FN PS ++++E+ I T ++K + Sbjct: 149 -ATKQVSFEELFNQPS-EEINETKKPEVQIFSTDKVKEPEQ 187 >MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) Length = 1805 Score = 70.9 bits (172), Expect = 2e-14 Identities = 141/620 (22%), Positives = 252/620 (40%), Gaps = 108/620 (17%) Query: 419 FKSQNNSLL-LARLEEENRTLKQHLQNNLPEANQLNFVXXXXXXXXXXDKHSLTLQIEQY 477 F + ++L+ + +L++EN +HL++ + N+ + +L +I ++ Sbjct: 339 FNLRQSALIDINKLQQENELFAKHLEH---QQNEFEQKQSDSLLKLETEYKALQHKINEF 395 Query: 478 KFDSKKHQEQLAL----IPSLRSEINSLETEVISLKQTNQRLS--LIERENNFLKTEIKQ 531 K +S E+L + R EI++L T+ SL+ +QR S L++ + N +K + Sbjct: 396 KNESATKSEELLNQERELFEKRREIDTLLTQA-SLEYEHQRESSQLLKDKQNEVKQHFQN 454 Query: 532 LRETKLNDENTKYRNLLKQYELMRADS--DXXXXXXXXXXXXXXXXXXXXXXXXXRHNEA 589 L K E K RNLL Q + + +++ + NE Sbjct: 455 LEYAK--KELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELYLVKKQKQDQKENEL 512 Query: 590 LV--KELDQVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQ 647 L K+L Q +A +FE L A+ Q+ + E K++ L S E+ + L ++ Sbjct: 513 LFFEKQLKQHQA-DFENELEAK----QQELFEAKHA-LERSFIKLEDKEKDLNTKAQQIA 566 Query: 648 NQLNVLEFTHKEKTAFDSXXXXXXXXXXXXXXFDLSLTQEQLATFKQQNQSLTDKLMASE 707 N+ + L+ T K K+A F+L L Q + +Q+ Q L + E Sbjct: 567 NEFSQLK-TDKSKSA----------------DFELML-QNEYENLQQEKQKLFQERTYFE 608 Query: 708 TQL----NHLQQSDENXXXXXXXXXXXXXSYN--KLQDEANHTQ---------------- 745 N LQQ E S+ +L ++ H + Sbjct: 609 RNAAVLSNRLQQKREELLQQKETLDQLTKSFEQERLINQREHKELVASVEKQKEILGKKL 668 Query: 746 QQFHQAQNEL--DAAHQQLAL-FKQNNEELTDKCSNIQNELHDLNRVKTNWENLNTEHNL 802 Q F Q + A +++A+ FK+ E T+K + N++++ ++ + LN N Sbjct: 669 QDFSQTSLNASKNLAEREMAIKFKEKEIEATEK--QLLNDVNNAEVIQADLAQLNQSLNQ 726 Query: 803 LQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQDLLS 862 + + K+++ H++ + E+EL ++ L E+Q N+ YQ+ Sbjct: 727 ERSELQNAKQRIADFHNDSLKKLNEYEL------SLQKRLQELQTLEANQKQHSYQN--Q 778 Query: 863 AYELLQSNHNKLKQELQVLNQVNLEKQQ------LAQKLHNTHQSLSQTHAELTQLQAAY 916 AY + +KL +E Q +NL K+Q + Q+L + HQ+L+ AEL + Sbjct: 779 AY--FEGELDKLNREKQAF--LNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHEL 834 Query: 917 NN-----------LQ---ATPPVSDELLEQFNQVQLEKQRLLQQNLA--------LVHEL 954 NN LQ AT + +L++ LEKQR +N+A +L Sbjct: 835 NNAFLNHDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQL 894 Query: 955 QYFNELNSSQTHEIKTKQDE 974 Q EL Q E K+ E Sbjct: 895 QKIYELTKKQESEQTQKETE 914 Score = 53.9 bits (128), Expect = 2e-09 Identities = 116/556 (20%), Positives = 214/556 (38%), Gaps = 93/556 (16%) Query: 472 LQIEQYKFDSKKHQEQLALIPSLRSEINSLETEVISLK----------QTNQRLSLIERE 521 LQ E K SK +++ L EI SLE E+ +LK + +++++ +E + Sbjct: 23 LQSEYEKNRSKTDVDKIE--NQLLKEIKSLEDELKNLKGLKNQAEDNPELDKKINHLEVD 80 Query: 522 NNFLKTEIK--QLRETKLNDENTKYRNLLKQY--ELMRADSDXXXXXXXXXXXXXXXXXX 577 N L E K Q ++ + D+ ++ NL + Y EL R + Sbjct: 81 LNRLVNEYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQAN 140 Query: 578 XXXXXXXRHNEALVKELDQ-VKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENV 636 H L++ +Q + N ++ Q V L Q + + + Sbjct: 141 YHNKLNDFHR--LIENQNQTINRLNQKIN-GNQNLIDNNVALLQNPNITVEKKNYLLNVI 197 Query: 637 QALGITNSELQNQLNVL----EFTHKEKTAFDSXXXXXXXXXXXXXXFDLSLTQEQLATF 692 L +L+NQ +L E T++E + D+ ++ Q Q+ F Sbjct: 198 DQLYNELDQLENQKRLLSIEYENTYRELVSADNELQNVYE----------NIDQNQIQ-F 246 Query: 693 KQQNQSLTDKLMASETQLNHLQQSDENXXXXXXXXXXXXXSYNKLQDEANHTQQQFHQAQ 752 K Q Q+ D+L E ++ +Q + L+ + + + Sbjct: 247 KHQYQTYRDELSQLERKIQLTKQE-------------LVDKESALRVKIDDADFYINARL 293 Query: 753 NELDAAHQQLA----LFKQNNEELTDKCSNIQNELHDLNRVKTNWENLNT---------- 798 ELD +QL+ + KQN + + DK + E LN K + NL Sbjct: 294 AELDDVAKQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQ 353 Query: 799 EHNLLQDKYA--QQKEQMQHEHSNLAQIQAEHELLQESYNKVKAE--------LNEIQI- 847 + N L K+ QQ E Q + +L +++ E++ LQ N+ K E LN+ + Sbjct: 354 QENELFAKHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQEREL 413 Query: 848 --------TNLNEANAQYQDLLSAYELLQSNHNKLKQELQVL----NQVNLEKQQLAQKL 895 T L +A+ +Y+ + +LL+ N++KQ Q L +++ E+ L Q+ Sbjct: 414 FEKRREIDTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQK 473 Query: 896 HNTHQSLSQTHAELTQLQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQNLALVHELQ 955 +++ Q ++ Q + L L+++ Q Q E + L + H+ Sbjct: 474 KVDSEAIFQLKEKVAQERKELEELY--------LVKKQKQDQKENELLFFEKQLKQHQAD 525 Query: 956 YFNELNSSQTHEIKTK 971 + NEL + Q + K Sbjct: 526 FENELEAKQQELFEAK 541 Score = 48.9 bits (115), Expect = 8e-08 Identities = 115/625 (18%), Positives = 229/625 (36%), Gaps = 63/625 (10%) Query: 360 QEQLDKALKHNAALQIQLEEQLAKPLQYDQSPVLQERIXXXXXXXXXXXXXXXXXXXKLF 419 Q +LDK + N ++++L+ + + LQ + +Q ++ F Sbjct: 944 QRELDKLAEKNNQVKLELDNRF-QALQNQKQDTVQAQLELEREQHQLNLEQTA------F 996 Query: 420 KSQNNSLLLARLEEENRTLKQHLQNNLPEANQLNFVXXXXXXXXXXDKHSLTLQIEQYKF 479 N SLL R + + H + L + NQ + D+ +I ++F Sbjct: 997 NQANESLLKQREQLTKKIQAFHYE--LKKRNQFLALKGKRLFAKEQDQQRKDQEIN-WRF 1053 Query: 480 DSKKHQEQLALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLND 539 + +E + + E+ LE SL Q+N L ER+ L T+ L + + N Sbjct: 1054 -KQFEKEYTDFDEAKKRELEELEKIRRSLSQSNVEL---ERKREKLATDFTNLNKVQHNT 1109 Query: 540 E--NTKYRNLLKQYELMRADSDXXXXXXXXXXXXXXXXXXXXXXXXXRHNEALV------ 591 + + + ++Q+ L R + EAL Sbjct: 1110 QINRDQLNSQIRQFLLERKNFQRFSNEANAKKAFLIKRLRSFASNLKLQKEALAIQKLEF 1169 Query: 592 --------KELDQVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAE--ENVQALGI 641 KEL Q L L FE+Q +E++ + Q + + +AL Sbjct: 1170 DKRDEQQKKELQQAT-----LQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDEKKALNQ 1224 Query: 642 TNSELQNQLNVLEFTHKEKTAFDSXXXXXXXXXXXXXXFDLSLTQEQLATFKQQNQSLTD 701 EL+N L+ +K K + +L T++QL ++++S+ Sbjct: 1225 KLVELKN-LSQTYLANKNKAEYSQQQLQQKYTNLLDLKENLERTKDQL---DKKHRSIFA 1280 Query: 702 KLMASETQLNHLQQSDENXXXXXXXXXXXXXSYNKLQDEANHTQQQFHQAQNELD----A 757 +L L ++ N+L E ++ H NE + Sbjct: 1281 RLTKFANDLRFEKKQ-------LLKAQRIVDDKNRLLKE---NERNLHFLSNETERKRAV 1330 Query: 758 AHQQLALFKQNNEELTDKC----SNIQNELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQ 813 Q++ F++ ++ TD ++ + +L ++ E T+ N K+++Q+E+ Sbjct: 1331 LEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNNDFAKFSRQREE 1390 Query: 814 MQHEHSNLAQIQAEHELLQESYN-KVKA--ELNEIQITNLNEANAQYQDLLSAYELLQSN 870 +++ L ++Q + S N K KA E+ + E N Q ++ L Sbjct: 1391 FENQRLKLLELQKTLQTQTNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDKNKSRLYEY 1450 Query: 871 HNKLKQELQ-VLNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQATPPVSDEL 929 K++ E++ +QV L ++ +K + ++ + E + L+A D+ Sbjct: 1451 FRKMRDEIERKESQVKLVLKETQRKANLLEAQANKLNIEKNTIDFKEKELKAFKDKVDQD 1510 Query: 930 LEQFNQVQLEKQRLLQQNLALVHEL 954 ++ N+ + E LL +N L L Sbjct: 1511 IDSTNKQRKELNELLNENKLLQQSL 1535 Score = 47.0 bits (110), Expect = 3e-07 Identities = 116/578 (20%), Positives = 214/578 (37%), Gaps = 109/578 (18%) Query: 422 QNNSLLLARLEEENRTLKQHLQNNLPEANQLNFVXXXXXXXXXXDKHSLTLQIEQYKFDS 481 QN + L++ NR + L + +++ + DKH L ++Q + D Sbjct: 776 QNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLS-----DKHQ-ALNMQQAELDR 829 Query: 482 KKHQEQLALIPSLRSEINSLETEVISLKQTN-----QRLSLIERENNFLKTEIKQLRE-T 535 K H+ A + + ++ SL+ ++ ++K+T +R +L+E++ F + R + Sbjct: 830 KTHELNNAFL-NHDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWS 888 Query: 536 KLNDENTKYRNLLKQYELMRADSDXXXXXXXXXXXXXXXXXXXXXXXXXRHNEALVKELD 595 + K L K+ E + + R EA +ELD Sbjct: 889 NKTSQLQKIYELTKKQESEQTQKETELKIAFSDLQKDYQVFELQKDQEFRQIEAKQRELD 948 Query: 596 QVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLEF 655 ++ N ++ L Q + QK ++ A L+ E Q+QLN+ Sbjct: 949 KLAEKNNQVKLELDNRFQ--ALQNQKQDTVQAQLELERE------------QHQLNL--- 991 Query: 656 THKEKTAFDSXXXXXXXXXXXXXXFDLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQ 715 E+TAF+ Q + KQ+ Q LT K+ A +L ++ Sbjct: 992 ---EQTAFN---------------------QANESLLKQREQ-LTKKIQAFHYEL---KK 1023 Query: 716 SDENXXXXXXXXXXXXXSYNKLQDEANHTQQQFHQAQNELDAAHQQ--------LALFKQ 767 ++ + E N +QF + + D A ++ Q Sbjct: 1024 RNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDEAKKRELEELEKIRRSLSQ 1083 Query: 768 NNEELTDKCSNIQNELHDLNRVKTNWE------NLNTEHNLLQDKYAQQKEQMQHEH--- 818 +N EL K + + +LN+V+ N + N LL+ K Q+ + Sbjct: 1084 SNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSNEANAKKAF 1143 Query: 819 --SNLAQIQAEHELLQESYNKVKAEL---NEIQITNLNEANAQYQ---------DLLSAY 864 L + +L +E+ K E +E Q L +A Q + D+ Sbjct: 1144 LIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQR 1203 Query: 865 EL--LQSNHNKLKQELQVLNQVNLEKQQLAQ-------KLHNTHQSLSQTHAELTQLQAA 915 +L +++ KL E + LNQ +E + L+Q K + Q L Q + L L+ Sbjct: 1204 QLVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTNLLDLK-- 1261 Query: 916 YNNLQATPPVSDE--------LLEQFNQVQLEKQRLLQ 945 NL+ T D+ L + N ++ EK++LL+ Sbjct: 1262 -ENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLK 1298 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 68.6 bits (166), Expect = 9e-14 Identities = 112/575 (19%), Positives = 214/575 (37%), Gaps = 55/575 (9%) Query: 419 FKSQNNSLLLARLEEENRTLKQ------HLQNNLPEANQLNFVXXXXXXXXXXDKHSLTL 472 +K+ N L +LE + LK+ HL+ + + + SL Sbjct: 1094 YKNLKNELE-TKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQQLNSLRANLESLEK 1152 Query: 473 QIEQYKFDSKKHQEQLALIP-SLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQ 531 + E KK++EQ+A EI+ L E+ S +Q N+ I+++N+ L+ E+K Sbjct: 1153 EHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENES---IKKKNDELEGEVKA 1209 Query: 532 LRETKLNDENTKYRNLLKQYELMRADSDXXXXXXXXXXXXXXXXXXXXXXXXXRHNEALV 591 ++ T N LK+ E+ D+ + Sbjct: 1210 MKSTSEEQSN------LKKSEI---DALNLQIKELKKKNETNEASLLESIKSVESETVKI 1260 Query: 592 KELDQVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLN 651 KEL NF+ ++ E + E KNS L + +E+ + L +EL+ QL Sbjct: 1261 KELQD--ECNFKEKEVSE-LEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLE 1317 Query: 652 VLEFTHKEKTAFDSXXXXXXXXXXXXXXFDLSLTQEQLATFKQQNQSLTDKLMASETQLN 711 + K K +S + +EQL K + Q LN Sbjct: 1318 KITNLSKAKEKSESELSRLKKTSSE----ERKNAEEQLEKLKNEIQIKNQAFEKERKLLN 1373 Query: 712 HLQQSDENXXXXXXXXXXXXXSYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEE 771 N L+DE Q + E+D +L +N+E Sbjct: 1374 E---------GSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDE 1424 Query: 772 LTDKCSNIQNELHD-----LNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLAQIQA 826 L ++ N L D +++ N E L + + KEQ++ + A+++ Sbjct: 1425 LLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESKAKVEE 1484 Query: 827 EHELLQESYNKVKAEL---NEIQITNLNEANAQYQDLLSAYELLQSNHNKLKQEL----Q 879 + L+E +K KAEL E+ + + +L S+ E ++ + KL+Q + Sbjct: 1485 GLKKLEEESSKEKAELEKSKEMMKKLESTIESNETELKSSMETIRKSDEKLEQSKKSAEE 1544 Query: 880 VLNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQATPPVSDELLEQFNQVQLE 939 + + EK L +++ + + + + ++L + + L+ + ++ N Q + Sbjct: 1545 DIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELET-------VKQELNNAQEK 1597 Query: 940 KQRLLQQNLALVHELQYFNELNSSQTHEIKTKQDE 974 + ++N L +L+ + EIK+ Q+E Sbjct: 1598 IRINAEENTVLKSKLEDIERELKDKQAEIKSNQEE 1632 Score = 55.8 bits (133), Expect = 6e-10 Identities = 121/616 (19%), Positives = 237/616 (38%), Gaps = 73/616 (11%) Query: 431 LEEENRTLKQHLQN---NLPEANQLNFVXXXXXXXXXXDKHSLTLQIEQYKFDSKKHQEQ 487 L+E L+ L+N +L E QL V DK + T +E YK K ++ Sbjct: 788 LKENFSILETELKNVRDSLDEMTQLRDVLETK------DKENQTALLE-YKSTIHKQED- 839 Query: 488 LALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDENTKYR-N 546 S+++ LET + K+ ++ + ++ L E++ + E N + K + N Sbjct: 840 -----SIKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSN 894 Query: 547 LLKQYELMRADSDXXXXXXXXXXXXXXXXXXXXX-XXXXRHNEALVKELDQVKAT-NFEL 604 + Q E D + E + KEL + K+ Sbjct: 895 VNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHD 954 Query: 605 GLAAQGFEQQKVV------LEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLEFTHK 658 L A+ E+ K + ++ +N SL+ +A EE+ I S LQN+++ + K Sbjct: 955 NLVAKLTEKLKSLANNYKDMQAENESLI---KAVEESKNESSIQLSNLQNKIDSMS-QEK 1010 Query: 659 EKTAFDSXXXXXXXXXXXXXXFDLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDE 718 E + DL T+E++ + ++ S D+ E+Q++ L++ E Sbjct: 1011 ENFQIERGSIEKNIEQLKKTISDLEQTKEEIIS---KSDSSKDEY---ESQISLLKEKLE 1064 Query: 719 NXXXXXXXXXXXXXSYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSN 778 DE + + + + EL+A +LA +K EL K Sbjct: 1065 TATTA--------------NDENVNKISELTKTREELEA---ELAAYKNLKNELETKLET 1107 Query: 779 IQNELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKV 838 + L + VK N E+L E L+ + + K+Q+ +NL ++ EHE L K Sbjct: 1108 SEKALKE---VKENEEHLKEEKIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKY 1164 Query: 839 KAELNEIQITNLNEANAQYQDLLSAYELLQSNHNKLKQELQVLNQVNLEKQQLAQKLHNT 898 + ++ + NE +Q D +++ + Q N + K+ ++ +V K ++ + Sbjct: 1165 EEQIANKE-RQYNEEISQLNDEITSTQ--QENESIKKKNDELEGEVKAMKSTSEEQSNLK 1221 Query: 899 HQSLSQTHAELTQLQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQNLALVHELQYFN 958 + + ++ +L+ +A+ LLE V+ E + + ELQ Sbjct: 1222 KSEIDALNLQIKELKKKNETNEAS------LLESIKSVESETVK--------IKELQDEC 1267 Query: 959 ELNSSQTHEIKTKQDETXXXXXXXXXXXXXXXXXXXRLKKRDIVIENKEDALGKLSK-KE 1017 + E++ K + L + ++ + + + LSK KE Sbjct: 1268 NFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKITNLSKAKE 1327 Query: 1018 RIQAYAERLAKINGKQ 1033 + ++ RL K + ++ Sbjct: 1328 KSESELSRLKKTSSEE 1343 Score = 53.9 bits (128), Expect = 2e-09 Identities = 103/558 (18%), Positives = 208/558 (37%), Gaps = 89/558 (15%) Query: 432 EEENRTLKQHLQNNLPEANQLNFVXXXXXXXXXXDKHSLTLQIEQYKFDSKKHQEQLALI 491 ++EN ++K+ E + + +L LQI++ K KK++ A Sbjct: 1190 QQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELK---KKNETNEA-- 1244 Query: 492 PSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLN---DENTKYRNLL 548 SL I S+E+E + +K+ ++ E NF + E+ +L E KL D+N+KY L Sbjct: 1245 -SLLESIKSVESETVKIKE-------LQDECNFKEKEVSEL-EDKLKASEDKNSKYLELQ 1295 Query: 549 KQYELMRADSDXXXXXXXXXXXXXXXXXXXXXXXXXR-------HNEALVKELDQVKATN 601 K+ E ++ + D +E +Q++ Sbjct: 1296 KESEKIKEELDAKTTELKIQLEKITNLSKAKEKSESELSRLKKTSSEERKNAEEQLEKLK 1355 Query: 602 FELGLAAQGFEQQKVVLEQKNSSL--------------LASLQAAEE-----------NV 636 E+ + Q FE+++ +L + +S++ L LQ E + Sbjct: 1356 NEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSEL 1415 Query: 637 QALGITNSEL----QNQLNVLE---FTHKEKTAFDSXXXXXXXXXXXXXXFDLSLTQEQL 689 + + ++N EL QN + L+ ++K+K + DL +EQL Sbjct: 1416 EKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIERDNKR---DLESLKEQL 1472 Query: 690 ATFKQQNQSLTDKLMASETQLN----HLQQSDE-----------NXXXXXXXXXXXXXSY 734 ++ + + L E + + L++S E N S Sbjct: 1473 RAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLESTIESNETELKSSMETIRKSD 1532 Query: 735 NKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNELHDLNRVKTNWE 794 KL+ ++ Q+E ++ +++ EEL K +L VK Sbjct: 1533 EKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQELN 1592 Query: 795 N------LNTEHN-LLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKAELNEIQI 847 N +N E N +L+ K + +++ + + + Q E ELL +++ EL+ Q Sbjct: 1593 NAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQ- 1651 Query: 848 TNLNEANAQYQDLLSAYELLQSNHNKLKQELQVL----NQVNLEKQQLAQKLHNTHQSLS 903 +A ++ + Q ++L ++ +L N + ++Q + ++ Sbjct: 1652 ---QKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTVKKTTD 1708 Query: 904 QTHAELTQLQAAYNNLQA 921 E+ +L +NL+A Sbjct: 1709 SQRQEIEKLAKELDNLKA 1726 >SYNE-PCC-01-000727 sll1120 Length = 1200 Score = 53.1 bits (126), Expect = 4e-09 Identities = 59/268 (22%), Positives = 112/268 (41%), Gaps = 26/268 (9%) Query: 686 QEQLATFKQQNQSLTDKLMASETQLNHLQQSDENXXXXXXXXXXXXXSYNKLQDEANHTQ 745 +E L +++ LT +LM Q Q E Q + Q Sbjct: 719 EELLLERTVRSRQLTQQLMEMRQQQREAQLHGEQTERDIARLS---------QQQTQINQ 769 Query: 746 QQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNELHDLNRVKTN--WENLNTEHNLL 803 QQ +Q Q +L Q LAL +Q+ L + ++ Q +L L +T+ W+ + + + Sbjct: 770 QQINQ-QQKLAELQQNLALLQQSLPPLEQQLASAQQQLTALETSQTHQQWQTIQIQIRTV 828 Query: 804 QDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQDLLSA 863 + +Y +Q + ++ +L +Q + L+E + + ++ + Q +L A Q Q ++ Sbjct: 829 EAEYQRQLQALRQGEDHLKDLQNSSQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLKIAL 888 Query: 864 YEL---LQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQ 920 E+ +Q+ +L + + L E+ +L L+Q ++ + Q + LQ Sbjct: 889 AEMNGAIQTTEAQLAKLSEKLGSTKQERDRL-------ETQLNQLRSQQQEQQWQWEKLQ 941 Query: 921 ATPPVSDELLEQFNQVQLEKQRLLQQNL 948 E L Q Q QLE L+Q+L Sbjct: 942 TNQQEYQENLTQL-QTQLE---ALEQDL 965 Score = 52.0 bits (123), Expect = 9e-09 Identities = 71/360 (19%), Positives = 135/360 (37%), Gaps = 52/360 (14%) Query: 591 VKELDQVKATNFELGLA----AQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSEL 646 ++++ QV+ N EL L ++ QQ + + Q+ + E ++ L S+ Sbjct: 708 LQDIQQVQGRNEELLLERTVRSRQLTQQLMEMRQQQREAQLHGEQTERDIARL----SQQ 763 Query: 647 QNQLNVLEFTHKEKTAFDSXXXXXXXXXXXXXXFDLSLTQEQLATFKQQNQSLTDKLMAS 706 Q Q+N + ++K A +L+L Q+ L +QQ S +L A Sbjct: 764 QTQINQQQINQQQKLA--------------ELQQNLALLQQSLPPLEQQLASAQQQLTAL 809 Query: 707 ETQLNHLQQS---------DENXXXXXXXXXXXXXSYNKLQDEANHTQQQFHQAQNELDA 757 ET H Q + LQ+ + +++ QAQ ++ Sbjct: 810 ETSQTHQQWQTIQIQIRTVEAEYQRQLQALRQGEDHLKDLQNSSQRLEEKIAQAQEKIAQ 869 Query: 758 AHQQLALFKQNNEELTDKCSNIQNEL-----------HDLNRVKTNWENLNTEHNLLQDK 806 Q Q E+L + + + L K + L T+ N L+ + Sbjct: 870 HQAQDLTLAQEQEQLKIALAEMNGAIQTTEAQLAKLSEKLGSTKQERDRLETQLNQLRSQ 929 Query: 807 YAQQKEQ-------MQHEHSNLAQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQD 859 +Q+ Q Q NL Q+Q + E L++ E+ +Q + +EAN + + Sbjct: 930 QQEQQWQWEKLQTNQQEYQENLTQLQTQLEALEQDLPDPWPEIPLLQ--DRDEANLDFAN 987 Query: 860 LLSAYELLQSNHNKLKQELQVLNQVNLEKQQLAQ-KLHNTHQSLSQTHAELTQLQAAYNN 918 +L E N K + ++ +N + L++ + + +L + L E T+L N Sbjct: 988 ILEELERSIRNGQKRLEAMEPVNMLALQEYEKTEARLGELSEKLQTIAGERTELLLRIEN 1047 >SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 Length = 1928 Score = 52.4 bits (124), Expect = 7e-09 Identities = 88/460 (19%), Positives = 191/460 (41%), Gaps = 55/460 (11%) Query: 481 SKKHQEQLALIPSLRSEINSLETEVISLKQTNQR-LSLIERENNFLKTEIKQLR--ETKL 537 +KK EQ I L++++ +E++ L++ NQ+ ++ +E + L E + LR E+ L Sbjct: 863 TKKFNEQ---INKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLL 919 Query: 538 NDENTKYRNLLKQYELMRADSDXXXXXXXXXXXXXXXXXXXXXXX--XXRHNEALVKELD 595 N T L KQ++ + ++ D R EA +++L Sbjct: 920 NRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLH 979 Query: 596 --------QVKATNFELGLAAQG---FEQQKVVLEQKNSSLLASLQAAEENVQALGITNS 644 Q+ N ++ ++ K+ LE + L + + EE +++ S Sbjct: 980 SKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLS 1039 Query: 645 ELQNQLNVLEFTHKEKTAFDSXXXXXXXXXXXXXXFDLSLTQEQLATFKQQNQSLTDKLM 704 + L++ T ++ + DL E FK++ +L ++L Sbjct: 1040 SSEEDLDIKLVTLEK----NCNIAMSRLQSLVTENSDLRSKNEN---FKKEKAALNNQLK 1092 Query: 705 ASETQLNHLQQSDENXXXXXXXXXXXXXSYNKLQDEANHTQQQFHQAQNELDAAHQQLAL 764 E++L +++ +N +++K +D+A + + EL QL Sbjct: 1093 NKESELLKMKEKIDNHKKELA-------TFSKQRDDA---VSEHGKITAELKETRIQLTE 1142 Query: 765 FKQNNEELTDKCSNIQNELHDLNRVKTN--WENLN-TEHNLLQDKYAQQKEQMQHEHSNL 821 +K N +++ ++ SN Q E + + K N E+LN ++ L+ + +Q+ Q+ + + Sbjct: 1143 YKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNKRI 1202 Query: 822 AQIQAEHELLQESYNKVKAELNEI-QITNLNEANAQYQDLLSAYELLQSNHNKLKQELQV 880 S N V+ ++ + T+ ++ +D++ Y LQ ++ + L+ Sbjct: 1203 ------------SGNSVETNISSTRRSTSYSDDPLDKEDIIKKYYDLQLAFTEITRNLE- 1249 Query: 881 LNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQ 920 N++ EK+ L +L T L+ + E +++A L+ Sbjct: 1250 -NEIE-EKKNLISRLRFTETRLASSSFEDQKIKAQMKKLK 1287 Score = 47.0 bits (110), Expect = 3e-07 Identities = 57/252 (22%), Positives = 107/252 (42%), Gaps = 32/252 (12%) Query: 746 QQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNELHD-----------LNRVKTNWE 794 +Q ++ +N+L + ++ N++ ++ N Q+ L+ LNRVKT+ E Sbjct: 868 EQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSE 927 Query: 795 NLNTEHNLLQDKYAQQKEQMQHEHSNLAQ-IQAEHEL---LQESYNKVKAELNEIQITNL 850 L + D +K+++ E +AQ ++ H+ LQE+ + +A L ++ N Sbjct: 928 TLQKQF----DDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSKN- 982 Query: 851 NEANAQYQDL-------LSAYELLQSNHNKLKQELQ----VLNQVNLEKQQLAQKLHNTH 899 NE Q DL S+ L++ + KL+ E++ V+N E + KL ++ Sbjct: 983 NELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSE 1042 Query: 900 QSLSQTHAELTQ-LQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQNLALVHELQYFN 958 + L L + A + LQ+ + +L + + EK L Q EL Sbjct: 1043 EDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMK 1102 Query: 959 ELNSSQTHEIKT 970 E + E+ T Sbjct: 1103 EKIDNHKKELAT 1114 >SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 Length = 875 Score = 48.5 bits (114), Expect = 1e-07 Identities = 116/592 (19%), Positives = 225/592 (38%), Gaps = 97/592 (16%) Query: 421 SQNNSLLLARLEEENRTLKQHLQNNLPEANQLNFVXXXXXXXXXXDKHSLTLQIEQYKFD 480 + +N +LL R + +L+ L + Q N + + ++ +YK Sbjct: 174 TSSNDVLLEAFTNTQR-ICSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSC 232 Query: 481 SKKHQEQLALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLND- 539 + QE++A +L S N+ ET++ L+Q +Q L +R + KT I+ L +T +ND Sbjct: 233 LETLQERIA---TLTSHKNNQETKLKDLRQNHQ---LYQRRISGFKTSIENLNKT-INDL 285 Query: 540 -ENTKYRNLL-----KQYELMRADSDXXXXXXXXXXXXXXXXXXXXXXXXXRHNEALVKE 593 +N K + K+ E ++ + D ++ E ++K Sbjct: 286 GKNKKEADAELMKKGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMG----KNREEMIKS 341 Query: 594 LDQVKATN------------------FELGLAAQ----------GFEQQKVVLEQKNSSL 625 ++ + + FE L G V L ++ Sbjct: 342 IENFFSEDKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETM 401 Query: 626 LAS-LQAAEENV-QALGITNSELQNQLNVLEFTHKEKT-AFDSXXXXXXXXXXXXXXFDL 682 L + +EN+ Q + + E+ +N L T K ++ Sbjct: 402 LKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEM 461 Query: 683 SLTQEQLATFKQQNQ----SLTDKLMASETQLNHLQQSDENXXXXXXXXXXXXXSYNKLQ 738 + T+++L Q SL + + A + ++ + +E N++ Sbjct: 462 NNTRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQII 521 Query: 739 DEANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNE----------LHDLN- 787 + Q+ +L+A + +++ + LT+K N+ NE L++LN Sbjct: 522 SSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNI 581 Query: 788 RVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLAQI----QAEHELLQESYNKVKAELN 843 K+N+EN + N + + + ++ L +I Q +H E++ K N Sbjct: 582 TTKSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQK-----N 636 Query: 844 EIQITNLNEANAQYQDLLSAYEL-LQSNHNKLKQEL--------QVLNQVNLEKQQLAQK 894 Q+ LN Q L A+EL L+ + LK L + L+ V KQQ+ Sbjct: 637 NEQLQKLNVEVVQ----LKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVI-V 691 Query: 895 LHNTHQSLSQTHAELTQLQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQ 946 L + Q ++ AE +LQ +NL++ V+ L + +VQ +K+ L Q+ Sbjct: 692 LKSEKQDIT---AEKLELQ---DNLESLEEVTKNLQQ---KVQSQKRELEQK 734 >SYNE-PCC-01-001071 sll1583 Length = 562 Score = 45.8 bits (107), Expect = 7e-07 Identities = 45/196 (22%), Positives = 77/196 (39%), Gaps = 17/196 (8%) Query: 688 QLATFKQQNQSLTDKLMASETQLNHLQQSDENXXXXXXXXXXXXXSYNKLQDEA------ 741 QL + +NQ L+D QL++++Q+ Q++A Sbjct: 167 QLNSLVTRNQQLSD-------QLSYVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQA 219 Query: 742 NHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNELHDLNRVKTNWENLNTEHN 801 + ++Q Q E D Q+L +Q ++ + N+Q L L + + W+ E + Sbjct: 220 SQWEEQVRQLTAERDQVQQELQTARQQSQSAQTQAENLQAALDRLGQQEEQWQG---ERS 276 Query: 802 LLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQDLL 861 L K Q +E + A+++ + E Q +++K E E Q L A Q L Sbjct: 277 QLTAKLNQLEEAQKELALANAELKVKLETTQAEGDRLKTEKKE-QAAALQSAQGQVTQLQ 335 Query: 862 SAYELLQSNHNKLKQE 877 LQ N K K E Sbjct: 336 QELAALQENLAKAKGE 351 Score = 45.1 bits (105), Expect = 1e-06 Identities = 54/276 (19%), Positives = 102/276 (36%), Gaps = 37/276 (13%) Query: 681 DLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENXXXXXXXXXXXXXSYNK-LQD 739 DL Q L + LT+ A E + LQ + N+ L Sbjct: 83 DLQSVQASLENALAERNQLTENYQAQEKMVAALQHQLAHYDDIQSEKFVGLQKLNQELLQ 142 Query: 740 EANHTQQQFHQAQNELDAAHQQLALFKQ---NNEELTDKCSNIQNELHDLNRVKTNWENL 796 E + + QA NE+ +L N++L+D+ S ++ N+ K + L Sbjct: 143 ENTNLSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSDQLSYVEQ-----NQAKAIEQRL 197 Query: 797 NTEHNLLQDKYAQQKEQMQHEHSN----LAQIQAEHELLQESYN---------KVKAELN 843 ++ L Q ++ Q++ Q + S + Q+ AE + +Q+ + +AE Sbjct: 198 ASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQELQTARQQSQSAQTQAENL 257 Query: 844 EIQITNLNEANAQYQDLLSAYELLQSNHNKLKQELQVLN---------------QVNLEK 888 + + L + Q+Q S + + ++EL + N ++ EK Sbjct: 258 QAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELALANAELKVKLETTQAEGDRLKTEK 317 Query: 889 QQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQATPP 924 ++ A L + ++Q EL LQ + PP Sbjct: 318 KEQAAALQSAQGQVTQLQQELAALQENLAKAKGEPP 353 Score = 44.3 bits (103), Expect = 2e-06 Identities = 64/272 (23%), Positives = 105/272 (38%), Gaps = 24/272 (8%) Query: 702 KLMASETQLNHLQQSDENXXXXXXXXXXXXXSYNKLQDEANHTQQQFHQAQNELDAAHQQ 761 KL E L +Q S EN + K+ H + Q+E Q+ Sbjct: 76 KLRRLEKDLQSVQASLENALAERNQLTENYQAQEKMVAALQHQLAHYDDIQSEKFVGLQK 135 Query: 762 LAL-FKQNNEELTDKCSNIQNELHDLNRVKTNWENLNTEHNLLQDK--YAQQKEQMQHEH 818 L Q N L+D+ NE+ + +L T + L D+ Y +Q + E Sbjct: 136 LNQELLQENTNLSDRLKQAVNEVAETRPKLVQLNSLVTRNQQLSDQLSYVEQNQAKAIEQ 195 Query: 819 SNLAQI---QAEHELLQESYN-----------KVKAELNEIQITNLNEANAQYQDLLSAY 864 +Q Q HE Q +N ++ AE +++Q L A Q Q + Sbjct: 196 RLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQ-QELQTARQQSQSAQTQA 254 Query: 865 ELLQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQAT-P 923 E LQ+ ++L Q+ + Q E+ QL KL+ ++ + +L+ QA Sbjct: 255 ENLQAALDRLGQQEE---QWQGERSQLTAKLNQLEEAQKELALANAELKVKLETTQAEGD 311 Query: 924 PVSDELLEQFNQVQLEKQRL--LQQNLALVHE 953 + E EQ +Q + ++ LQQ LA + E Sbjct: 312 RLKTEKKEQAAALQSAQGQVTQLQQELAALQE 343 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.309 0.125 0.324 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 94,107 Number of Sequences: 78 Number of extensions: 4717 Number of successful extensions: 188 Number of sequences better than 1.0e-05: 8 Number of HSP's better than 0.0 without gapping: 2 Number of HSP's successfully gapped in prelim test: 6 Number of HSP's that attempted gapping in prelim test: 40 Number of HSP's gapped (non-prelim): 42 length of query: 1033 length of database: 48,235 effective HSP length: 72 effective length of query: 961 effective length of database: 42,619 effective search space: 40956859 effective search space used: 40956859 T: 11 A: 40 X1: 16 ( 7.1 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.7 bits) S2: 97 (42.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-000190 ORFP:YBL051C YBL051C, Chr II from 122715-124721, reverse complement (668 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-000190 ORFP:YBL051C YBL051C, Chr II from 122715-124... 904 0.0 >SCER-S28-01-000190 ORFP:YBL051C YBL051C, Chr II from 122715-124721, reverse complement Length = 668 Score = 904 bits (2335), Expect = 0.0 Identities = 481/668 (72%), Positives = 481/668 (72%) Query: 1 METSSFEXXXXXXXXXXXXXXXXTETNDQETNQQSIETRDAIDKENGVQTETGENSAKNA 60 METSSFE TETNDQETNQQSIETRDAIDKENGVQTETGENSAKNA Sbjct: 1 METSSFENAPPAAINDAQDNNINTETNDQETNQQSIETRDAIDKENGVQTETGENSAKNA 60 Query: 61 EQNVSSTNLNNAPTNGALDDDVIPNAIVIKNIPFAIKKEQLLDIIEEMDLPLPYAFNYHF 120 EQNVSSTNLNNAPTNGALDDDVIPNAIVIKNIPFAIKKEQLLDIIEEMDLPLPYAFNYHF Sbjct: 61 EQNVSSTNLNNAPTNGALDDDVIPNAIVIKNIPFAIKKEQLLDIIEEMDLPLPYAFNYHF 120 Query: 121 DNGIFRGLAFANFTTPEETTQVITSLNGKEISGRKLKVEYKKMLPQAXXXXXXXXXXXXX 180 DNGIFRGLAFANFTTPEETTQVITSLNGKEISGRKLKVEYKKMLPQA Sbjct: 121 DNGIFRGLAFANFTTPEETTQVITSLNGKEISGRKLKVEYKKMLPQAERERIEREKREKR 180 Query: 181 GQLEEQHRXXXXXXXXXXXXXXXXXXXXXXXXQLFSTLMNGXXXXXXXXXXXXXXXXXXX 240 GQLEEQHR QLFSTLMNG Sbjct: 181 GQLEEQHRSSSNLSLDSLSKMSGSGNNNTSNNQLFSTLMNGINANSMMNSPMNNTINNNS 240 Query: 241 XXXXXXXXXXXXQPSLSAQHTSSSLYQTNVNNQAQMSTERFYAXXXXXXXXXXXXXXXDF 300 QPSLSAQHTSSSLYQTNVNNQAQMSTERFYA DF Sbjct: 241 SNNNNSGNIILNQPSLSAQHTSSSLYQTNVNNQAQMSTERFYAPLPSTSTLPLPPQQLDF 300 Query: 301 NDPDTLEIYSQLLLFKDREKYYYELAYPMGISASHKRIINVLCSYLGLVEVYDPRFIIIR 360 NDPDTLEIYSQLLLFKDREKYYYELAYPMGISASHKRIINVLCSYLGLVEVYDPRFIIIR Sbjct: 301 NDPDTLEIYSQLLLFKDREKYYYELAYPMGISASHKRIINVLCSYLGLVEVYDPRFIIIR 360 Query: 361 RKILDHANLQSHLQQQGQMTSAHPLQPNSTGGSMNRSQSYTSLLQAHXXXXXXXXXXXXX 420 RKILDHANLQSHLQQQGQMTSAHPLQPNSTGGSMNRSQSYTSLLQAH Sbjct: 361 RKILDHANLQSHLQQQGQMTSAHPLQPNSTGGSMNRSQSYTSLLQAHAAAAANSISNQAV 420 Query: 421 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXPKISSQGQFSMQPTLTSPKMNIHHSSQYNXX 480 PKISSQGQFSMQPTLTSPKMNIHHSSQYN Sbjct: 421 NNSSNSNTINSNNGNGNNVIINNNSASSTPKISSQGQFSMQPTLTSPKMNIHHSSQYNSA 480 Query: 481 XXXXXXXXXXXXXXXXXXXXXXXXXXXXATLTPSSRIPSGYSANHYQINSVNPLLRNSQI 540 ATLTPSSRIPSGYSANHYQINSVNPLLRNSQI Sbjct: 481 DQPQQPQPQTQQNVQSAAQQQQSFLRQQATLTPSSRIPSGYSANHYQINSVNPLLRNSQI 540 Query: 541 SPPNSQIPINSXXXXXXXXXXXXXXXXRVPVAYQNASLSSQQLYNLNGPSSANSQSQLLP 600 SPPNSQIPINS RVPVAYQNASLSSQQLYNLNGPSSANSQSQLLP Sbjct: 541 SPPNSQIPINSQTLSQAQPPAQSQTQQRVPVAYQNASLSSQQLYNLNGPSSANSQSQLLP 600 Query: 601 QHTNGSVHSNFSYQSYHDESMLSAHNLNSADLIYKSLSHSGLDDGLEQGLNRSLSGLDLQ 660 QHTNGSVHSNFSYQSYHDESMLSAHNLNSADLIYKSLSHSGLDDGLEQGLNRSLSGLDLQ Sbjct: 601 QHTNGSVHSNFSYQSYHDESMLSAHNLNSADLIYKSLSHSGLDDGLEQGLNRSLSGLDLQ 660 Query: 661 NQNKKNLW 668 NQNKKNLW Sbjct: 661 NQNKKNLW 668 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.311 0.127 0.350 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 49,221 Number of Sequences: 78 Number of extensions: 1844 Number of successful extensions: 21 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 14 Number of HSP's gapped (non-prelim): 1 length of query: 668 length of database: 48,235 effective HSP length: 69 effective length of query: 599 effective length of database: 42,853 effective search space: 25668947 effective search space used: 25668947 T: 11 A: 40 X1: 16 ( 7.2 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.8 bits) S2: 96 (41.6 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-000222 ORFP:YBL081W YBL081W, Chr II from 71860-72966 (368 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-000222 ORFP:YBL081W YBL081W, Chr II from 71860-72966 464 e-133 >SCER-S28-01-000222 ORFP:YBL081W YBL081W, Chr II from 71860-72966 Length = 368 Score = 464 bits (1193), Expect = e-133 Identities = 235/368 (63%), Positives = 235/368 (63%) Query: 1 MPGQIISIPFLSQNEDMDKYLLEYRSLKLLHQSSNSFQSHNAPSHQSNYHPHYNHMKXXX 60 MPGQIISIPFLSQNEDMDKYLLEYRSLKLLHQSSNSFQSHNAPSHQSNYHPHYNHMK Sbjct: 1 MPGQIISIPFLSQNEDMDKYLLEYRSLKLLHQSSNSFQSHNAPSHQSNYHPHYNHMKYNN 60 Query: 61 XXXXXXXXXXXXXXXXPHNQAGLQSINRSIPSAPYGAYNQNRANDVPYMNTQKKHHRFSA 120 PHNQAGLQSINRSIPSAPYGAYNQNRANDVPYMNTQKKHHRFSA Sbjct: 61 TGSYYYYNNNNNSSVNPHNQAGLQSINRSIPSAPYGAYNQNRANDVPYMNTQKKHHRFSA 120 Query: 121 XXXXXXXXXXXXXXXTSNPMVTAHLKQTYPQLYYXXXXXXXXXXXXXXXXXXXXXXXXXX 180 TSNPMVTAHLKQTYPQLYY Sbjct: 121 NNNLNQQKYKQYPQYTSNPMVTAHLKQTYPQLYYNSNVNAHNNNNNSNNNNNNNNNSNNN 180 Query: 181 XXLYNQTQFSTRYFXXXXXXXXXXXXXXXXXXXXXXXFEYILPXXXXXXXXXXXXXXXXX 240 LYNQTQFSTRYF FEYILP Sbjct: 181 NNLYNQTQFSTRYFNSNSSPSLTSSTSNSSSPYNQSTFEYILPSTSAASTNLSSSSSNNS 240 Query: 241 MHTNPTTATSTSADLINDLPVGPTSSSLISDLHSPPTVSFLPASQTLLMXXXXXXXIGTN 300 MHTNPTTATSTSADLINDLPVGPTSSSLISDLHSPPTVSFLPASQTLLM IGTN Sbjct: 241 MHTNPTTATSTSADLINDLPVGPTSSSLISDLHSPPTVSFLPASQTLLMSSTTSSSIGTN 300 Query: 301 INPPQHSPSPSQREDFSTAPVXXXXXXXXXXXXXXXGWGSNHMNVXXXXXXXXXRPFGIW 360 INPPQHSPSPSQREDFSTAPV GWGSNHMNV RPFGIW Sbjct: 301 INPPQHSPSPSQREDFSTAPVNMSSSASLLMNDSSLGWGSNHMNVSSSSQPASSRPFGIW 360 Query: 361 NTDMSVWS 368 NTDMSVWS Sbjct: 361 NTDMSVWS 368 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.315 0.128 0.393 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 23,445 Number of Sequences: 78 Number of extensions: 722 Number of successful extensions: 5 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 2 Number of HSP's gapped (non-prelim): 1 length of query: 368 length of database: 48,235 effective HSP length: 64 effective length of query: 304 effective length of database: 43,243 effective search space: 13145872 effective search space used: 13145872 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.6 bits) S2: 93 (40.4 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-000320 ORFP:YBR059C AKL1, Chr II from 356820-360146, reverse complement (1108 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-000320 ORFP:YBR059C AKL1, Chr II from 356820-360146... 1778 0.0 SCER-S28-01-000850 ORFP:YDL101C DUN1, Chr IV from 280306-281847... 52 1e-08 >SCER-S28-01-000320 ORFP:YBR059C AKL1, Chr II from 356820-360146, reverse complement Length = 1108 Score = 1778 bits (4605), Expect = 0.0 Identities = 917/1108 (82%), Positives = 917/1108 (82%) Query: 1 MSITNGTSRSVSAMGHPAVERYTPGHIVCVGTHKVEVVNYLAEGGFAQIYVVKFLEYLNE 60 MSITNGTSRSVSAMGHPAVERYTPGHIVCVGTHKVEVVNYLAEGGFAQIYVVKFLEYLNE Sbjct: 1 MSITNGTSRSVSAMGHPAVERYTPGHIVCVGTHKVEVVNYLAEGGFAQIYVVKFLEYLNE 60 Query: 61 FDNTASVPLKIGDVACLKRVLVQDENGLNEMRNEVEVMKKLKGAPNIVQYFDSNASRRRD 120 FDNTASVPLKIGDVACLKRVLVQDENGLNEMRNEVEVMKKLKGAPNIVQYFDSNASRRRD Sbjct: 61 FDNTASVPLKIGDVACLKRVLVQDENGLNEMRNEVEVMKKLKGAPNIVQYFDSNASRRRD 120 Query: 121 GVQGFEVLLLMELCPNKSLLDYMNQRLSTKLTEAEIVKIMYDVALSISQMHYLPVSLIHR 180 GVQGFEVLLLMELCPNKSLLDYMNQRLSTKLTEAEIVKIMYDVALSISQMHYLPVSLIHR Sbjct: 121 GVQGFEVLLLMELCPNKSLLDYMNQRLSTKLTEAEIVKIMYDVALSISQMHYLPVSLIHR 180 Query: 181 DIKIENVLVDAKNNFKLADFGSTSTCFPIVTTHQDIALLTQNIYVHTTPQYRSPEMIDLY 240 DIKIENVLVDAKNNFKLADFGSTSTCFPIVTTHQDIALLTQNIYVHTTPQYRSPEMIDLY Sbjct: 181 DIKIENVLVDAKNNFKLADFGSTSTCFPIVTTHQDIALLTQNIYVHTTPQYRSPEMIDLY 240 Query: 241 RCLPINEKSDIWALGVFLYKLLFFTTPFEMTGQFAILHSKYEFPVNKYSSKLINLIIIML 300 RCLPINEKSDIWALGVFLYKLLFFTTPFEMTGQFAILHSKYEFPVNKYSSKLINLIIIML Sbjct: 241 RCLPINEKSDIWALGVFLYKLLFFTTPFEMTGQFAILHSKYEFPVNKYSSKLINLIIIML 300 Query: 301 AENPNLRPNIYQVLYHLCEILNVEVPIEDKYAEGAYNFSKYTQFQNKXXXXXXXXXXXXX 360 AENPNLRPNIYQVLYHLCEILNVEVPIEDKYAEGAYNFSKYTQFQNK Sbjct: 301 AENPNLRPNIYQVLYHLCEILNVEVPIEDKYAEGAYNFSKYTQFQNKLQNVQLQMYQLQQ 360 Query: 361 KKIMQNNKLSDSEENLLNDMFLSSFEISSKLPMNASDGHAAVSRIPSQNVGQELEEEKES 420 KKIMQNNKLSDSEENLLNDMFLSSFEISSKLPMNASDGHAAVSRIPSQNVGQELEEEKES Sbjct: 361 KKIMQNNKLSDSEENLLNDMFLSSFEISSKLPMNASDGHAAVSRIPSQNVGQELEEEKES 420 Query: 421 QSDQRKSTLSEDKXXXXXXXXXXXXXXXXPQEINTIQSPGIEDKSIFENKTPGELYYPSV 480 QSDQRKSTLSEDK PQEINTIQSPGIEDKSIFENKTPGELYYPSV Sbjct: 421 QSDQRKSTLSEDKSSRTTSNANSSGTANNPQEINTIQSPGIEDKSIFENKTPGELYYPSV 480 Query: 481 SELDTYLDKELVKQSSDPTISEQSPRLNTQSLPXXXXXXXXXXXXXXXXXXXXXGAATIG 540 SELDTYLDKELVKQSSDPTISEQSPRLNTQSLP GAATIG Sbjct: 481 SELDTYLDKELVKQSSDPTISEQSPRLNTQSLPQRQKSTSSYSSGGRSMKSTSYGAATIG 540 Query: 541 SDEALANEKTAGINKMKQHKSNNPFPKMNVAYHSTNELSNDASNFFLEEXXXXXXXXXXX 600 SDEALANEKTAGINKMKQHKSNNPFPKMNVAYHSTNELSNDASNFFLEE Sbjct: 541 SDEALANEKTAGINKMKQHKSNNPFPKMNVAYHSTNELSNDASNFFLEEQQQGQRYQQAQ 600 Query: 601 XXXXXXXXXFPDESXXXXXXXXXXXXXXXPKGPANYSQRNFYTGRDRSNKPMQLGGTIAG 660 FPDES PKGPANYSQRNFYTGRDRSNKPMQLGGTIAG Sbjct: 601 NQTGTQGNTFPDESQYQSRVEQQQQQQDQPKGPANYSQRNFYTGRDRSNKPMQLGGTIAG 660 Query: 661 DSGNRRVNFQNISQNYATNSQSGYLPSQNSPAIPMVRPVISXXXXXXXXXXXXXXXXXXX 720 DSGNRRVNFQNISQNYATNSQSGYLPSQNSPAIPMVRPVIS Sbjct: 661 DSGNRRVNFQNISQNYATNSQSGYLPSQNSPAIPMVRPVISMNQQQAQQIQAQQLQAQQM 720 Query: 721 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXGTYVSDRTNHTTEDMRNAQGGEPPILAG 780 GTYVSDRTNHTTEDMRNAQGGEPPILAG Sbjct: 721 QAKQQMQAKQQMQVQQQLQVQQQMQIQNANNNGTYVSDRTNHTTEDMRNAQGGEPPILAG 780 Query: 781 NSANEPMHSSSKNEALLIELSPLKEDAGKQSFQDTNEPQTGGIEDAGGSGTIKGSNNNRN 840 NSANEPMHSSSKNEALLIELSPLKEDAGKQSFQDTNEPQTGGIEDAGGSGTIKGSNNNRN Sbjct: 781 NSANEPMHSSSKNEALLIELSPLKEDAGKQSFQDTNEPQTGGIEDAGGSGTIKGSNNNRN 840 Query: 841 GVLNLSLNEMDLSRDDTGXXXXXXXXXXXXXXIQQAKLSGRKGSSKRNNYSTDELGDSMV 900 GVLNLSLNEMDLSRDDTG IQQAKLSGRKGSSKRNNYSTDELGDSMV Sbjct: 841 GVLNLSLNEMDLSRDDTGAAVSSFSSSSSSASIQQAKLSGRKGSSKRNNYSTDELGDSMV 900 Query: 901 SSESIDIDLDDARRGKTAERRPLHNERGHKDQARSSDASKSNQFKSKDFSSVSTRQPRQS 960 SSESIDIDLDDARRGKTAERRPLHNERGHKDQARSSDASKSNQFKSKDFSSVSTRQPRQS Sbjct: 901 SSESIDIDLDDARRGKTAERRPLHNERGHKDQARSSDASKSNQFKSKDFSSVSTRQPRQS 960 Query: 961 LDLNFQEVNLSSPTLTQEHRNKNDSPAPNSHHSYRVSPHASTAITENKRHSTGHELSTRS 1020 LDLNFQEVNLSSPTLTQEHRNKNDSPAPNSHHSYRVSPHASTAITENKRHSTGHELSTRS Sbjct: 961 LDLNFQEVNLSSPTLTQEHRNKNDSPAPNSHHSYRVSPHASTAITENKRHSTGHELSTRS 1020 Query: 1021 NGKHETHRTGSKQRHDLERYRHXXXXXXXXXXXXXXXXXXEMRKSFARARQSLDLEXXXX 1080 NGKHETHRTGSKQRHDLERYRH EMRKSFARARQSLDLE Sbjct: 1021 NGKHETHRTGSKQRHDLERYRHSKDKDSNSSITISTSTPSEMRKSFARARQSLDLERVRR 1080 Query: 1081 XXXXXXXXXXXXXXXXXXXFFSVFRSEK 1108 FFSVFRSEK Sbjct: 1081 EAMASSASSSGGSNGKRRSFFSVFRSEK 1108 >SCER-S28-01-000850 ORFP:YDL101C DUN1, Chr IV from 280306-281847, reverse complement Length = 513 Score = 51.6 bits (122), Expect = 1e-08 Identities = 62/251 (24%), Positives = 112/251 (44%), Gaps = 29/251 (11%) Query: 84 DENGLNEMRNEVEVMKKLKGAPNIVQYFDSNASR-RRDGVQGFEVLLLMELCPNKSLLDY 142 D+ + R E ++ +++ PNIV DS + +Q + L++E + L + Sbjct: 238 DQKKNKQFREETNILMRVQH-PNIVNLLDSFVEPISKSQIQKY---LVLEKIDDGELFER 293 Query: 143 MNQRLSTKLTEAEIVKIMYDVALSISQMHYLPVSLIHRDIKIENVLV-----DAKNNFKL 197 + ++ T L + E + + + +H ++IHRDIK EN+L+ + + +L Sbjct: 294 IVRK--TCLRQDESKALFKQLLTGLKYLH--EQNIIHRDIKPENILLNITRRENPSQVQL 349 Query: 198 ADFGSTSTCFPIVTTHQDIALLTQNI-YVHT---TPQYRSPEMIDLYRCLPINEKSDIWA 253 + + +A T + + +T TP Y +PE++ K D+W+ Sbjct: 350 GPWDEDEIDIQVKIADFGLAKFTGEMQFTNTLCGTPSYVAPEVLTK---KGYTSKVDLWS 406 Query: 254 LGVFLYKLLFFTTPF-EMTG----QFAILHSKYEFPV---NKYSSKLINLIIIMLAENPN 305 GV LY L PF + G + IL +KY F +K +++LI +L NP+ Sbjct: 407 AGVILYVCLCGFPPFSDQLGPPSLKEQILQAKYAFYSPYWDKIDDSVLHLISNLLVLNPD 466 Query: 306 LRPNIYQVLYH 316 R NI + L H Sbjct: 467 ERYNIDEALNH 477 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.312 0.129 0.359 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 90,865 Number of Sequences: 78 Number of extensions: 3781 Number of successful extensions: 23 Number of sequences better than 1.0e-05: 2 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 1 Number of HSP's that attempted gapping in prelim test: 19 Number of HSP's gapped (non-prelim): 3 length of query: 1108 length of database: 48,235 effective HSP length: 73 effective length of query: 1035 effective length of database: 42,541 effective search space: 44029935 effective search space used: 44029935 T: 11 A: 40 X1: 16 ( 7.2 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.8 bits) S2: 98 (42.4 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-000752 ORFP:YDL005C MED2, Chr IV from 441010-442305, reverse complement (431 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-000752 ORFP:YDL005C MED2, Chr IV from 441010-442305... 356 e-101 >SCER-S28-01-000752 ORFP:YDL005C MED2, Chr IV from 441010-442305, reverse complement Length = 431 Score = 356 bits (913), Expect = e-101 Identities = 192/261 (73%), Positives = 192/261 (73%) Query: 1 MVVQNSPVSSVHTANFSERGSNTRTMTYKNKLTVCFDDILKVGAEMMMQQQLKNVQLDSY 60 MVVQNSPVSSVHTANFSERGSNTRTMTYKNKLTVCFDDILKVGAEMMMQQQLKNVQLDSY Sbjct: 1 MVVQNSPVSSVHTANFSERGSNTRTMTYKNKLTVCFDDILKVGAEMMMQQQLKNVQLDSY 60 Query: 61 LVNGFSQSQQKLLKEKVKLFHGILDDLETSLSQSSSYLETLTALGXXXXXXXXXXXXXXX 120 LVNGFSQSQQKLLKEKVKLFHGILDDLETSLSQSSSYLETLTALG Sbjct: 61 LVNGFSQSQQKLLKEKVKLFHGILDDLETSLSQSSSYLETLTALGKEKEKEREEAEKKRA 120 Query: 121 XQENMRKVXXXXXXXXXXXXXXXXXXXXXXXXXXXXXGLGLNFSTTAPANTTDANGSKEN 180 QENMRKV GLGLNFSTTAPANTTDANGSKEN Sbjct: 121 EQENMRKVREQEELKKRQELEEASQQQQLQQNSKEKNGLGLNFSTTAPANTTDANGSKEN 180 Query: 181 YXXXXXXXXXXXXXXEXXXXXXXXXXFSPLTTTRIQSQQAQPSDVMFNDLNSMDISMFSG 240 Y E FSPLTTTRIQSQQAQPSDVMFNDLNSMDISMFSG Sbjct: 181 YQELGSLQSSSQTQLENANAANNGAAFSPLTTTRIQSQQAQPSDVMFNDLNSMDISMFSG 240 Query: 241 LDSTGFDSTAFNATVDETKGF 261 LDSTGFDSTAFNATVDETKGF Sbjct: 241 LDSTGFDSTAFNATVDETKGF 261 Score = 108 bits (271), Expect = 2e-26 Identities = 54/66 (81%), Positives = 54/66 (81%) Query: 366 SITTGNDNENIVNNDLPTTVVSXXXXXXXXXXXXEEYLTLNDFNDLNIDWSTTGDNGELD 425 SITTGNDNENIVNNDLPTTVVS EEYLTLNDFNDLNIDWSTTGDNGELD Sbjct: 366 SITTGNDNENIVNNDLPTTVVSNPGDNPPPADNGEEYLTLNDFNDLNIDWSTTGDNGELD 425 Query: 426 LSGFNI 431 LSGFNI Sbjct: 426 LSGFNI 431 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.310 0.127 0.345 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 25,354 Number of Sequences: 78 Number of extensions: 913 Number of successful extensions: 6 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 2 Number of HSP's gapped (non-prelim): 3 length of query: 431 length of database: 48,235 effective HSP length: 65 effective length of query: 366 effective length of database: 43,165 effective search space: 15798390 effective search space used: 15798390 T: 11 A: 40 X1: 16 ( 7.2 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.8 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-000782 ORFP:YDL035C GPR1, Chr IV from 389168-392053, reverse complement (961 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-000782 ORFP:YDL035C GPR1, Chr IV from 389168-392053... 1689 0.0 >SCER-S28-01-000782 ORFP:YDL035C GPR1, Chr IV from 389168-392053, reverse complement Length = 961 Score = 1689 bits (4373), Expect = 0.0 Identities = 840/961 (87%), Positives = 840/961 (87%) Query: 1 MITEGFPPNLNALKGSSLLEKRVDSLRQLNTTTVNQLLGLPGMTSTFTAPQLLQLRIIAI 60 MITEGFPPNLNALKGSSLLEKRVDSLRQLNTTTVNQLLGLPGMTSTFTAPQLLQLRIIAI Sbjct: 1 MITEGFPPNLNALKGSSLLEKRVDSLRQLNTTTVNQLLGLPGMTSTFTAPQLLQLRIIAI 60 Query: 61 TASAVSLIAGCLGMFFLSKMDKRRKVFRHDLIAFLIICDFLKAFILMIYPMIILINNSVY 120 TASAVSLIAGCLGMFFLSKMDKRRKVFRHDLIAFLIICDFLKAFILMIYPMIILINNSVY Sbjct: 61 TASAVSLIAGCLGMFFLSKMDKRRKVFRHDLIAFLIICDFLKAFILMIYPMIILINNSVY 120 Query: 121 ATPAFFNTLGWFTAFAIEGADMXXXXXXXXXXXXXXKPNWKWRNKRSGNMEGGLYKKRSY 180 ATPAFFNTLGWFTAFAIEGADM KPNWKWRNKRSGNMEGGLYKKRSY Sbjct: 121 ATPAFFNTLGWFTAFAIEGADMAIMIFAIHFAILIFKPNWKWRNKRSGNMEGGLYKKRSY 180 Query: 181 IWPITALVPAILASLAFINYNKLNDDSDTTIILDNNNYNFPDSPRQGGYKPWSAWCYLPP 240 IWPITALVPAILASLAFINYNKLNDDSDTTIILDNNNYNFPDSPRQGGYKPWSAWCYLPP Sbjct: 181 IWPITALVPAILASLAFINYNKLNDDSDTTIILDNNNYNFPDSPRQGGYKPWSAWCYLPP 240 Query: 241 KPYWYKIVLSWGPRYFIIIFIFAVYLSIYIFITSESKRIKAQIGDFNHNVLXXXXXXXXL 300 KPYWYKIVLSWGPRYFIIIFIFAVYLSIYIFITSESKRIKAQIGDFNHNVL L Sbjct: 241 KPYWYKIVLSWGPRYFIIIFIFAVYLSIYIFITSESKRIKAQIGDFNHNVLEEEKEKKKL 300 Query: 301 FGLGHWGKAKWYFRSYFKXXXXXXXXXXKNFFTISFIDPNEETDDSGSSNGTFNFGESSN 360 FGLGHWGKAKWYFRSYFK KNFFTISFIDPNEETDDSGSSNGTFNFGESSN Sbjct: 301 FGLGHWGKAKWYFRSYFKLPLLHLLRNLKNFFTISFIDPNEETDDSGSSNGTFNFGESSN 360 Query: 361 EIPTLFRKTNTGSDENVSASGGVRLLDYNSAKPLDMSKYAMSEQPDLERNNPFDCENDIT 420 EIPTLFRKTNTGSDENVSASGGVRLLDYNSAKPLDMSKYAMSEQPDLERNNPFDCENDIT Sbjct: 361 EIPTLFRKTNTGSDENVSASGGVRLLDYNSAKPLDMSKYAMSEQPDLERNNPFDCENDIT 420 Query: 421 LNPSELVSKQKEHKVTFSVENEGLDTRKSSMLGHQTFSCQNSLESPLAMYDNKNDNSDIT 480 LNPSELVSKQKEHKVTFSVENEGLDTRKSSMLGHQTFSCQNSLESPLAMYDNKNDNSDIT Sbjct: 421 LNPSELVSKQKEHKVTFSVENEGLDTRKSSMLGHQTFSCQNSLESPLAMYDNKNDNSDIT 480 Query: 481 SNIKEKGGIIXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 540 SNIKEKGGII Sbjct: 481 SNIKEKGGIINNNSNNDDDDNNNNNDNDNDNNNSNNNNNNNNNNNNNNNNNNNNNNNNNN 540 Query: 541 XXXXXXXXXXXXXXXXXXPADNIPTLSNEAFTPSQQFSQERVNNNADRCENSSFTNVQQH 600 PADNIPTLSNEAFTPSQQFSQERVNNNADRCENSSFTNVQQH Sbjct: 541 NNNNSNNIKNNVDNNNTNPADNIPTLSNEAFTPSQQFSQERVNNNADRCENSSFTNVQQH 600 Query: 601 FQAQTYKQMKKRRAQIQKNLRAIFIYPLSYIGIWLFPIIADALQYNHEIKHGPTMWVTYI 660 FQAQTYKQMKKRRAQIQKNLRAIFIYPLSYIGIWLFPIIADALQYNHEIKHGPTMWVTYI Sbjct: 601 FQAQTYKQMKKRRAQIQKNLRAIFIYPLSYIGIWLFPIIADALQYNHEIKHGPTMWVTYI 660 Query: 661 DTCVRPLSCLVDVIVYLFKEKPWNYSWAKTESKYLIEKYILKGELGEKEILKFCHSNWGK 720 DTCVRPLSCLVDVIVYLFKEKPWNYSWAKTESKYLIEKYILKGELGEKEILKFCHSNWGK Sbjct: 661 DTCVRPLSCLVDVIVYLFKEKPWNYSWAKTESKYLIEKYILKGELGEKEILKFCHSNWGK 720 Query: 721 RGWYYRGKWKKRKCWKYSTNPLKRILWFVERFFKQLFELKLHFSFYDNCDDFEYWENYYS 780 RGWYYRGKWKKRKCWKYSTNPLKRILWFVERFFKQLFELKLHFSFYDNCDDFEYWENYYS Sbjct: 721 RGWYYRGKWKKRKCWKYSTNPLKRILWFVERFFKQLFELKLHFSFYDNCDDFEYWENYYS 780 Query: 781 AKDSNDNKRTESDETKTNSSDRSLPSNSLELQAMLNNITAEEVEVPLFWRIIHHIPMLGG 840 AKDSNDNKRTESDETKTNSSDRSLPSNSLELQAMLNNITAEEVEVPLFWRIIHHIPMLGG Sbjct: 781 AKDSNDNKRTESDETKTNSSDRSLPSNSLELQAMLNNITAEEVEVPLFWRIIHHIPMLGG 840 Query: 841 IDLDELNRLLKIRYNNDHFSLPGLKFALNQNKSHDKHQDVSTNSMVKSSFFSSNIVTNDD 900 IDLDELNRLLKIRYNNDHFSLPGLKFALNQNKSHDKHQDVSTNSMVKSSFFSSNIVTNDD Sbjct: 841 IDLDELNRLLKIRYNNDHFSLPGLKFALNQNKSHDKHQDVSTNSMVKSSFFSSNIVTNDD 900 Query: 901 ENSIEEDKNLRYSDASASENYLVKXXXXXXXXXXXXEAQXXXXXXXXXGIDLIAFLRNGP 960 ENSIEEDKNLRYSDASASENYLVK EAQ GIDLIAFLRNGP Sbjct: 901 ENSIEEDKNLRYSDASASENYLVKPTIPGTTPDPIIEAQNDNDSSDSSGIDLIAFLRNGP 960 Query: 961 L 961 L Sbjct: 961 L 961 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.319 0.136 0.417 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 84,980 Number of Sequences: 78 Number of extensions: 3854 Number of successful extensions: 32 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 21 Number of HSP's gapped (non-prelim): 10 length of query: 961 length of database: 48,235 effective HSP length: 71 effective length of query: 890 effective length of database: 42,697 effective search space: 38000330 effective search space used: 38000330 T: 11 A: 40 X1: 16 ( 7.4 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.8 bits) S2: 97 (42.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 (1790 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 3117 0.0 SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 132 9e-33 MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) 131 2e-32 SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 124 3e-30 MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil pro... 95 2e-21 MGEN-G37-01-000335 MG328 conserved hypothetical protein 84 3e-18 SYNE-PCC-01-000727 sll1120 67 4e-13 SYNE-PCC-01-000943 sll1424 50 5e-08 MJAN-DSM-01-001277 MJ1254 hypothetical protein 49 2e-07 SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817,... 47 4e-07 SYNE-PCC-01-001071 sll1583 47 7e-07 MGEN-G37-01-000317 MG312 cytadherence accessory protein (hmw1) 45 3e-06 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 3117 bits (8082), Expect = 0.0 Identities = 1651/1790 (92%), Positives = 1651/1790 (92%) Query: 1 MDIIQGLIQQPKIQSVDETIPTLCDRVENSTLISDRRSAVLGLKAFSRQYRESVIASGLK 60 MDIIQGLIQQPKIQSVDETIPTLCDRVENSTLISDRRSAVLGLKAFSRQYRESVIASGLK Sbjct: 1 MDIIQGLIQQPKIQSVDETIPTLCDRVENSTLISDRRSAVLGLKAFSRQYRESVIASGLK 60 Query: 61 PLLNTLKRDYMDEDSVKAILETILILFIRGDGHDDLTRGWISQQSRLQNGKYPSPLVMKQ 120 PLLNTLKRDYMDEDSVKAILETILILFIRGDGHDDLTRGWISQQSRLQNGKYPSPLVMKQ Sbjct: 61 PLLNTLKRDYMDEDSVKAILETILILFIRGDGHDDLTRGWISQQSRLQNGKYPSPLVMKQ 120 Query: 121 EKEQVDQFSLWIADALTQSEDLIHLLVEFWEIDNFHIRLYTIQLLEAVMATRPLKARSAL 180 EKEQVDQFSLWIADALTQSEDLIHLLVEFWEIDNFHIRLYTIQLLEAVMATRPLKARSAL Sbjct: 121 EKEQVDQFSLWIADALTQSEDLIHLLVEFWEIDNFHIRLYTIQLLEAVMATRPLKARSAL 180 Query: 181 ISLPTSISTMVSLLDDMHEPIRDEAILLLMAVVNDSPHVQKLVAFENIFERLFSIIEEEG 240 ISLPTSISTMVSLLDDMHEPIRDEAILLLMAVVNDSPHVQKLVAFENIFERLFSIIEEEG Sbjct: 181 ISLPTSISTMVSLLDDMHEPIRDEAILLLMAVVNDSPHVQKLVAFENIFERLFSIIEEEG 240 Query: 241 GLRGSLVVNDCLSLINNILKYNTSNQTLFLETGNLPKLAHLLSEPISQDEVFFWNDQRIV 300 GLRGSLVVNDCLSLINNILKYNTSNQTLFLETGNLPKLAHLLSEPISQDEVFFWNDQRIV Sbjct: 241 GLRGSLVVNDCLSLINNILKYNTSNQTLFLETGNLPKLAHLLSEPISQDEVFFWNDQRIV 300 Query: 301 NINTALDIVSLTVEPGNTVTTKHQNALLDSSVLMVVLRLAFFHNIPKKVRPVALLTAANM 360 NINTALDIVSLTVEPGNTVTTKHQNALLDSSVLMVVLRLAFFHNIPKKVRPVALLTAANM Sbjct: 301 NINTALDIVSLTVEPGNTVTTKHQNALLDSSVLMVVLRLAFFHNIPKKVRPVALLTAANM 360 Query: 361 VRSNEHAQLEFSKIDVPYFDPSLPVNSTANGGPIKLIPVVSILINWMLYANSVHTFDTRV 420 VRSNEHAQLEFSKIDVPYFDPSLPVNSTANGGPIKLIPVVSILINWMLYANSVHTFDTRV Sbjct: 361 VRSNEHAQLEFSKIDVPYFDPSLPVNSTANGGPIKLIPVVSILINWMLYANSVHTFDTRV 420 Query: 421 ACSRLLKAYFMDNFDLQRDFLLKQVQLCNNSTNNVGDNAKENXXXXXXXXXXXXXXXXXX 480 ACSRLLKAYFMDNFDLQRDFLLKQVQLCNNSTNNVGDNAKEN Sbjct: 421 ACSRLLKAYFMDNFDLQRDFLLKQVQLCNNSTNNVGDNAKENGGSNKSDKESDSDKDTDG 480 Query: 481 XXXXXYEGSFKANLFEVLLNYDAELNLNPXXXXXXXXXXXXXXQQDHKYSEELREITRNV 540 YEGSFKANLFEVLLNYDAELNLNP QQDHKYSEELREITRNV Sbjct: 481 KDGTEYEGSFKANLFEVLLNYDAELNLNPFKLFFTTDIFMFFFQQDHKYSEELREITRNV 540 Query: 541 TTGNDLEDEEPLKAIQTISELLTTSLTAADIRIPISYLTFLIYWLFGDFKATNDFLSDKS 600 TTGNDLEDEEPLKAIQTISELLTTSLTAADIRIPISYLTFLIYWLFGDFKATNDFLSDKS Sbjct: 541 TTGNDLEDEEPLKAIQTISELLTTSLTAADIRIPISYLTFLIYWLFGDFKATNDFLSDKS 600 Query: 601 VIKSLLSFSYQIQDEDVTIKCLVTMLLGVAYEFSSKESPFPRKEYFEFITKTLGKDNYAS 660 VIKSLLSFSYQIQDEDVTIKCLVTMLLGVAYEFSSKESPFPRKEYFEFITKTLGKDNYAS Sbjct: 601 VIKSLLSFSYQIQDEDVTIKCLVTMLLGVAYEFSSKESPFPRKEYFEFITKTLGKDNYAS 660 Query: 661 RIKQFKKDSYFSKVDMNEDSILTPELDETGLPKVYFSTYFIQLFNENIYRIRTALSHDPD 720 RIKQFKKDSYFSKVDMNEDSILTPELDETGLPKVYFSTYFIQLFNENIYRIRTALSHDPD Sbjct: 661 RIKQFKKDSYFSKVDMNEDSILTPELDETGLPKVYFSTYFIQLFNENIYRIRTALSHDPD 720 Query: 721 EEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQI 780 EEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQI Sbjct: 721 EEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQI 780 Query: 781 LNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKSTIHKQEDS 840 LNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKSTIHKQEDS Sbjct: 781 LNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKSTIHKQEDS 840 Query: 841 IKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKE 900 IKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKE Sbjct: 841 IKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKE 900 Query: 901 TKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKL 960 TKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKL Sbjct: 901 TKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKL 960 Query: 961 TEKLKSLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSI 1020 TEKLKSLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSI Sbjct: 961 TEKLKSLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSI 1020 Query: 1021 EKNIEQLKKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISEL 1080 EKNIEQLKKTISDLEQT QISLLKEKLETATTANDENVNKISEL Sbjct: 1021 EKNIEQLKKTISDLEQTKEEIISKSDSSKDEYESQISLLKEKLETATTANDENVNKISEL 1080 Query: 1081 TKTREELEAELAAYKNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQQL 1140 TKTREELEAELAAYKNLKNELETKLETSEKAL IQLEKEATETKQQL Sbjct: 1081 TKTREELEAELAAYKNLKNELETKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQQL 1140 Query: 1141 NSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKN 1200 NSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKN Sbjct: 1141 NSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKN 1200 Query: 1201 DELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKI 1260 DELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKI Sbjct: 1201 DELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKI 1260 Query: 1261 KELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKIT 1320 KELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKIT Sbjct: 1261 KELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKIT 1320 Query: 1321 NXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTIT 1380 N RKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTIT Sbjct: 1321 NLSKAKEKSESELSRLKKTSSEERKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTIT 1380 Query: 1381 QEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEI 1440 QEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEI Sbjct: 1381 QEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEI 1440 Query: 1441 LSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESXXXXXXXXXXXXXXXXXXXXXX 1500 LSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQES Sbjct: 1441 LSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESKAKVEEGLKKLEEESSKEKAEL 1500 Query: 1501 XXXXXXXXXXXXTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRI 1560 TIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRI Sbjct: 1501 EKSKEMMKKLESTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRI 1560 Query: 1561 NESEKDIEELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELK 1620 NESEKDIEELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELK Sbjct: 1561 NESEKDIEELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELK 1620 Query: 1621 DKQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAM 1680 DKQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAM Sbjct: 1621 DKQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAM 1680 Query: 1681 LLETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSE 1740 LLETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSE Sbjct: 1681 LLETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSE 1740 Query: 1741 IDDLMLLVTDLDEKNAKYRSKLKDLGVEISSXXXXXXXXXXXXXXXGQVA 1790 IDDLMLLVTDLDEKNAKYRSKLKDLGVEISS GQVA Sbjct: 1741 IDDLMLLVTDLDEKNAKYRSKLKDLGVEISSDEEDDEEDDEEDEEEGQVA 1790 >SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 Length = 1928 Score = 132 bits (332), Expect = 9e-33 Identities = 217/1100 (19%), Positives = 421/1100 (38%), Gaps = 156/1100 (14%) Query: 636 KESPFPRKEYFEFITKTLGKDNYASRIKQFKKDSYFSKVDMNEDSILTPELDETGLPKVY 695 KE P+ F I L N +R K+F + K D+ E L+E V Sbjct: 839 KEDPW--FNLFIRIKPLLTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVN 896 Query: 696 FSTYFIQLFNENIYRIRTALSHDPDEEPINKISFEEVEKLQRQCTKLKGEITSLQTETES 755 L N+ +R +E +N++ E LQ+Q L E + E Sbjct: 897 ELENTQDLLNQEKENLRK------NESLLNRVKTSS-ETLQKQFDDLVSEKDEISREKLE 949 Query: 756 THENLTE---KLIALTNEHKELDEKYQILNSSHSSLKENFSILETELKNVRDSL------ 806 +NL E K+ L +E + + L+S ++ L + S L ++ + S Sbjct: 950 VAQNLEEAHQKIQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKES 1009 Query: 807 -----DEMTQLRDVLETKDKENQTALLEYKSTIHKQEDSIKTLEKGLETILSQKKKAEDG 861 +E+ +L+DV+ +K++E ++ + S+ + + TLEK +S+ + Sbjct: 1010 KLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTE 1069 Query: 862 INKMGKDLFALSREMQAVEENCKNLQKE--KDKSNV-NHQKETKSLKEDIAAKITEIKAI 918 + + +E A+ KN + E K K + NH+KE + + ++E I Sbjct: 1070 NSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKI 1129 Query: 919 NENLEEMKIQC----NNLSKEKEHISKELVEYKSRFQSHDN-------------LVAKLT 961 L+E +IQ +N K KE S E K + Q N L A+L+ Sbjct: 1130 TAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLS 1189 Query: 962 EKL-------KSLANN--------------YKDMQAENESLIKAVEESKNESSIQLSNLQ 1000 +++ K ++ N Y D + E +IK + + + NL+ Sbjct: 1190 QEISLNQYLNKRISGNSVETNISSTRRSTSYSDDPLDKEDIIKKYYDLQLAFTEITRNLE 1249 Query: 1001 NKIDSMSQEKENF--------------QIERGSIEKNIEQLKKTISDLEQTXXXXXXXXX 1046 N+I+ EK+N E I+ +++LKK I D++ + Sbjct: 1250 NEIE----EKKNLISRLRFTETRLASSSFEDQKIKAQMKKLKKLIQDMDPSIPLDSILNE 1305 Query: 1047 ---------XXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREELEAELA----- 1092 ++ LK +L+ T A+ + N IS L +++ E + Sbjct: 1306 PLDNCPDKESDINKLMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSD 1365 Query: 1093 -------AYKNLKNELETKLET----------------SEKALXXXXXXXXXXXXXXIQL 1129 A + LE KL+T + ++ +L Sbjct: 1366 IYKLKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKL 1425 Query: 1130 EKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITST 1189 ++ E+ +L+ L +L + + L+ QL + ++ + + ERQ S + + Sbjct: 1426 QEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQF 1485 Query: 1190 QQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLES 1249 + + ++ L + A+K E+ N+ S I+ L Q K+ +K E +S Sbjct: 1486 ENCMDDLQGNELRLREHIHALKQAEEDVKNMA-SIIEKLKTQNKQKEKLIWEREMERNDS 1544 Query: 1250 IKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKT 1309 ++ +++K +QD +++ L+++L A ED++ E+ + E++ L A+T Sbjct: 1545 DMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEINRLKEELNCSLKAET 1604 Query: 1310 ------TELKIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQ 1363 LK +LE TN N ++ + + E+ K + Sbjct: 1605 NLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYE 1664 Query: 1364 AFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSND 1423 A E + L ++T+ E + L + LQ N + + EK+ + Sbjct: 1665 ALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEE 1724 Query: 1424 EL-LEEKQNT-----IKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQE 1477 L L+ +QN+ +K+LQ YKDK +K + + +N + L+ L L+ + Sbjct: 1725 TLQLQMEQNSRNGELVKTLQASCNGYKDKFDDEKQKNIDLYEEN-QTLQKLNTDLQLQLK 1783 Query: 1478 SXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXTIESNETELKSSMETIRKSDE-KLE 1536 + + +E E S+ET K +E K Sbjct: 1784 NLHERLSDTTEKNAWLS--------------------KIHELENMVSLETDLKYEEMKKN 1823 Query: 1537 QSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQELNNAQE 1596 +S + A E+++ +++D+I N++ + EE + L+ EA+ + + Q+ ++ Sbjct: 1824 KSLERAVEELQTKNSQQTDVIELANKNRSEFEE--ATLKYEAQISDLEKYISQQELEMKK 1881 Query: 1597 KIRINAEENTVLKSKLEDIE 1616 IR N+ ++ ++IE Sbjct: 1882 SIRDNSSYRDKVQEMAQEIE 1901 Score = 129 bits (323), Expect = 1e-31 Identities = 187/984 (19%), Positives = 409/984 (41%), Gaps = 123/984 (12%) Query: 852 LSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSL----KED 907 +++ KK + INK+ DL +EM E+ K +EK++ VN + T+ L KE+ Sbjct: 860 MTRTKKFNEQINKLKNDL----QEM----ESKKKFLEEKNQKTVNELENTQDLLNQEKEN 911 Query: 908 IAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSL 967 + + + + + E ++ Q ++L EK+ IS+E +E + + L E ++ Sbjct: 912 LRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIRER 971 Query: 968 ANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQL 1027 + + ++N LIK Q+S+L I + + + +E I++L Sbjct: 972 EATLEKLHSKNNELIK-----------QISDLNCDISKEQSSQSLIKESKLKLENEIKRL 1020 Query: 1028 KKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREEL 1087 K I+ E+ ++ L++ A + V + S+L E Sbjct: 1021 KDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENF 1080 Query: 1088 EAELAAYKN-LKNE------LETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQQL 1140 + E AA N LKN+ ++ K++ +K L ++ E ET+ QL Sbjct: 1081 KKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQL 1140 Query: 1141 NSLRANLESLEKEHEDLAAQLKKYEEQIANK------ERQYNEEISQLNDEITSTQQENE 1194 ++N + +++E+ + + K+ E++ N + + E ++L+ EI+ Q N+ Sbjct: 1141 TEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNK 1200 Query: 1195 SIKKKNDELEGEVKAMKSTSEEQSNLKKSEID-------------ALNLQIKELKKKN-- 1239 I + E +STS L K +I NL+ + +KKN Sbjct: 1201 RISGNSVETNIS-STRRSTSYSDDPLDKEDIIKKYYDLQLAFTEITRNLENEIEEKKNLI 1259 Query: 1240 ------ETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYLE 1293 ET AS + ++++ K+K+L + + S L + L DK S + Sbjct: 1260 SRLRFTETRLASSSFEDQKIKAQMKKLKKLIQDMDPSIPLDSILNEPLDNCPDKESDINK 1319 Query: 1294 LQKESEKIKEELDAKTTELKIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNA-EEQLE 1352 L E + +K +LD +T I+ + A EE+++ Sbjct: 1320 LMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVK 1379 Query: 1353 KLKNEIQ---------------IKNQ----AFEKE---RKLLNEGSSTITQEYSEKINTL 1390 L+++++ IKN+ +E+E KL N I E + K++ L Sbjct: 1380 SLEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKLQEILNESNGKLSQL 1439 Query: 1391 EDELIRLQNENELKAKEIDNTRSELEKVSLSNDEL---LEEKQNTIKSLQDEILSYKDKI 1447 +L + +++ L ++++D + +LE + L +++++ ++ D++ + ++ Sbjct: 1440 TLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFENCMDDLQGNELRL 1499 Query: 1448 TRNDEKLLSIERDNKRDLESLKEQLRAAQESXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 1507 + L E D K ++ S+ E+L+ + Sbjct: 1500 REHIHALKQAEEDVK-NMASIIEKLKTQNKQKEKLIWERE-------------------- 1538 Query: 1508 XXXXXTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDI 1567 +E N+++++ ET+ + ++++ KK +D+ +L+ S + R ++ +I Sbjct: 1539 ------MERNDSDMQLQ-ETLLEL-KRVQDVKKILSDDLAHLKERLSAVEDRSQYTD-EI 1589 Query: 1568 EELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIK 1627 LK +L K+ + L K+E + K+ + ++ ++K+ D+ ++L ++ Sbjct: 1590 NRLKEELNCSLKAETNL---KKEFATLKYKLETSTNDS---EAKISDLLKQLDHYTKVVE 1643 Query: 1628 SNQEEKELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYN 1687 EK+ ++ KEL Q+ ++ + + + + + + Q +S L++K L+ Sbjct: 1644 MLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNA 1703 Query: 1688 DLVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSEIDDLMLL 1747 L + Q K + +K ++ + ++E+ ++ + +K + N + + DD Sbjct: 1704 ALSSSTQKNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQA---SCNGYKDKFDDEKQK 1760 Query: 1748 VTDLDEKNAKYRSKLKDLGVEISS 1771 DL E+N + DL +++ + Sbjct: 1761 NIDLYEENQTLQKLNTDLQLQLKN 1784 Score = 80.5 bits (197), Expect = 4e-17 Identities = 129/599 (21%), Positives = 255/599 (42%), Gaps = 60/599 (10%) Query: 659 ASRIKQFKKDSYFSKVDMNEDSILT-PELDETGLPKVYFSTYFIQLFNENIYRIRTALSH 717 +S I + K ++ +V ED + T P D T LP +I + R ++S Sbjct: 1363 SSDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPV------------GDIIKNRDSISK 1410 Query: 718 DPDEEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEK 777 +E K+ +++++ + ++T +++S L+E+L L + + + + Sbjct: 1411 YEEEIRYYKLENYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQ 1470 Query: 778 YQILNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKSTIHKQ 837 ++L+S+ K+ F +L+ L E E +D +N +++E T +KQ Sbjct: 1471 KELLSSTIKQQKQQFENCMDDLQGNELRLREHIHALKQAE-EDVKNMASIIEKLKTQNKQ 1529 Query: 838 EDSI---KTLEKG-----LETILSQKKKAEDGINKMGKDLFALSREMQAVEENCK---NL 886 ++ + + +E+ L+ L + K+ +D + DL L + AVE+ + + Sbjct: 1530 KEKLIWEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEI 1589 Query: 887 QKEKDKSNVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEY 946 + K++ N + + ET KE K + N++ E KI ++L K+ +H +K +VE Sbjct: 1590 NRLKEELNCSLKAETNLKKEFATLKYKLETSTNDS--EAKI--SDLLKQLDHYTK-VVEM 1644 Query: 947 KSRFQSHDNLVAK-LTEKLKSLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDS 1005 + + +L K L +K ++L + ++ + SL K +E +++ + + LQ + Sbjct: 1645 LNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNAA 1704 Query: 1006 MSQEKENFQIERGSIEKNIEQLKKTIS-DLEQTXXXXXXXXXXXXXXXXXQISLLKEKLE 1064 +S + + I + I+ L++T+ +EQ K+K + Sbjct: 1705 LSSSTQ----KNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQASCNGY-----KDKFD 1755 Query: 1065 TATTANDENVNKISELTKTREELEAELAAYKNL---------KNELETKLETSEKALXXX 1115 N + + L K +L+ +L KNL KN +K+ E + Sbjct: 1756 DEKQKNIDLYEENQTLQKLNTDLQLQL---KNLHERLSDTTEKNAWLSKIHELENMVSLE 1812 Query: 1116 XXXXXXXXXXXIQLEKEATETKQQLNSLRAN-LESLEKEHEDLAAQLKKYEEQIANKERQ 1174 LE+ A E Q NS + + +E K + KYE QI++ E+ Sbjct: 1813 TDLKYEEMKKNKSLER-AVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQISDLEKY 1871 Query: 1175 YNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIK 1233 ISQ E+ + ++N S + K E+ E++ KS E + + ID+ N Q K Sbjct: 1872 ----ISQQELEMKKSIRDNSSYRDKVQEMAQEIEFWKS-RYESTMIGSKNIDSNNAQSK 1925 Score = 73.2 bits (178), Expect = 7e-15 Identities = 77/375 (20%), Positives = 163/375 (43%), Gaps = 25/375 (6%) Query: 1371 LLNEGSSTITQEYSEKINTLEDELIR-------LQNENELKAKEIDNTRSEL--EKVSL- 1420 L + T T++++E+IN L+++L L+ +N+ E++NT+ L EK +L Sbjct: 854 LTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLR 913 Query: 1421 SNDELLEEKQNTIKSLQ---DEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQE 1477 N+ LL + + ++LQ D+++S KD+I+R ++ + + ++ L+E +R + Sbjct: 914 KNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREA 973 Query: 1478 SXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXTIESNETELK-------SSMETIRK 1530 + + E E+K S E I+ Sbjct: 974 TLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKS 1033 Query: 1531 SDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSK----LRIEAKSGSELET 1586 ++KL S++ + + L+ + +SR+ + +L+SK + +A ++L+ Sbjct: 1034 FNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKN 1093 Query: 1587 VKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQE 1646 + EL +EKI + +E + +D E AE+K + + S +++++E Sbjct: 1094 KESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEE 1153 Query: 1647 LDSTQQKAQKSEEERR-AEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTVKK 1705 + Q++ ++ E+++R + V K + E + E N +NK + E + Sbjct: 1154 YSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNKRISGNSVETNISS 1213 Query: 1706 TTDSQRQEIEKLAKE 1720 T S + L KE Sbjct: 1214 TRRSTSYSDDPLDKE 1228 >MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) Length = 1805 Score = 131 bits (330), Expect = 2e-32 Identities = 198/1149 (17%), Positives = 464/1149 (40%), Gaps = 96/1149 (8%) Query: 660 SRIKQFKKDSYFSKVDMNEDSILTPELDETGLPKVYFSTYFIQLFNENIYRIRTALSHDP 719 + +KQ ++ ++K +++++ L + + ++ + + + + Sbjct: 446 NEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELYLVKKQKQ 505 Query: 720 DEEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQ 779 D++ + FE+ +L++ + E+ + Q E L I L ++ K+L+ K Q Sbjct: 506 DQKENELLFFEK--QLKQHQADFENELEAKQQELFEAKHALERSFIKLEDKEKDLNTKAQ 563 Query: 780 ILNSSHSSLKENFS-------ILETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKS 832 + + S LK + S +L+ E +N++ ++ Q R E L + + Sbjct: 564 QIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNRLQQKRE 623 Query: 833 TIHKQEDSIKTLEKGLETI-LSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQK--- 888 + +Q++++ L K E L +++ ++ + + K L +++Q + N K Sbjct: 624 ELLQQKETLDQLTKSFEQERLINQREHKELVASVEKQKEILGKKLQDFSQTSLNASKNLA 683 Query: 889 EKDKSNVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKS 948 E++ + +KE ++ ++ + + + I +L ++ N E ++ + + ++ Sbjct: 684 EREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQSLNQERSELQNAKQRIADF-- 741 Query: 949 RFQSHDNLVAKLTEKLKSLANNYKDMQAENESLIKAVEESKNESSIQ-LSNLQNKIDSMS 1007 H++ + KL E SL +++Q +E ++ + S Q + + ++D ++ Sbjct: 742 ----HNDSLKKLNEYELSLQKRLQELQT--------LEANQKQHSYQNQAYFEGELDKLN 789 Query: 1008 QEKENFQIERGSIEKNIEQLKKTISDLEQTXXXXXXXXXXXXXXXXXQI-------SLLK 1060 +EK+ F R ++ +K+ +SD Q L+ Sbjct: 790 REKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFLNHDADQKSLQ 849 Query: 1061 EKLETATTANDENVNKISELTKTREELEAELAAYK----NLKNELETKLETSEKALXXXX 1116 ++L T + S L + + E +A +K N ++L+ E ++K Sbjct: 850 DQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYELTKKQESEQT 909 Query: 1117 XXXXXXXXXXIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANK----- 1171 L+K+ + Q + +E+ ++E + LA + + + ++ N+ Sbjct: 910 QKETELKIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQALQ 969 Query: 1172 ---------ERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKK 1222 + + E QLN E T+ Q NES+ K+ ++L +++A ++++ Sbjct: 970 NQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHYELKKRNQF-- 1027 Query: 1223 SEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDE-CNFKEKEVSELEDKL 1281 L L+ K L K + + + + + K+ + E +F E + ELE+ Sbjct: 1028 -----LALKGKRLFAKEQDQQ-------RKDQEINWRFKQFEKEYTDFDEAKKRELEELE 1075 Query: 1282 KASEDKNSKYLELQKESEKIKEE---LDAKTTELKIQLEKITNXXXXXXXXXXXXXXXXX 1338 K + +EL+++ EK+ + L+ +I +++ + Sbjct: 1076 KIRRSLSQSNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSN 1135 Query: 1339 XXXXXRKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQ 1398 + ++L + ++++ +A ++ ++ +E + LE Q Sbjct: 1136 EANAKKAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQ 1195 Query: 1399 NENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIE 1458 N + K +++ +++ EK+S + L +K +K+L L+ K+K + ++L Sbjct: 1196 NFDIEKQRQLVAIKTQCEKLS-DEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKY 1254 Query: 1459 R---DNKRDLESLKEQLRAAQESXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXTIE 1515 D K +LE K+QL S ++ Sbjct: 1255 TNLLDLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRI----------VD 1304 Query: 1516 SNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLR 1575 LK + + + E+ + E+ I + ++ I S K++++ + +L+ Sbjct: 1305 DKNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQ 1364 Query: 1576 IEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKEL 1635 K ELET K +LNN K EE + KL ++++ L+ + + + Sbjct: 1365 ---KLLVELETRKTKLNNDFAKFSRQREEFENQRLKLLELQKTLQTQTNSNNFKTKAIQE 1421 Query: 1636 LTSRLKELEQELDSTQQKAQKSEEERRAEVRKF--QVEKSQLDEKAMLLETKYNDLVNKE 1693 + + K +EL+ +++ K++ RK ++E+ + K +L ET+ + + Sbjct: 1422 IENSYKRGMEELNFQKKEFDKNKSRLYEYFRKMRDEIERKESQVKLVLKETQRKANLLEA 1481 Query: 1694 QAWKRDEDTVKKTTDSQRQEIEKLAKELD-NLKAENSKLKEANEDRSEIDDLMLLVTDLD 1752 QA K + + K T D + +E++ ++D ++ + N + KE NE +++ LL L Sbjct: 1482 QANKLNIE--KNTIDFKEKELKAFKDKVDQDIDSTNKQRKELNE---LLNENKLLQQSLI 1536 Query: 1753 EKNAKYRSK 1761 E+ SK Sbjct: 1537 ERERAINSK 1545 Score = 129 bits (324), Expect = 8e-32 Identities = 233/1255 (18%), Positives = 499/1255 (39%), Gaps = 175/1255 (13%) Query: 620 KCLVTMLLGVAYEFSSKESPFPRKEYFEFITKTLGKDNYASRIKQFKKDSYFSKVDMNED 679 K L T +A EFS ++ + FE + + ++ + K F++ +YF + Sbjct: 556 KDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLS 615 Query: 680 SILTPELDETGLPKVYFSTYFIQLFNENIYRIRTALSHDPDEEPINKISFEE-VEKLQRQ 738 + L + +E K E + ++ + E IN+ +E V +++Q Sbjct: 616 NRLQQKREELLQQK------------ETLDQLTKSFE---QERLINQREHKELVASVEKQ 660 Query: 739 CTKLKGEITSLQTETESTHENLTEKLIALTNEHKELD-EKYQILNSSHSSLKENFSILET 797 L ++ + + +NL E+ +A+ + KE++ + Q+LN + N +++ Sbjct: 661 KEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVN-----NAEVIQA 715 Query: 798 ELKNVRDSLD----EMTQLRDVLETKDKENQTALLEYKSTIHKQEDSIKTLEKGLETILS 853 +L + SL+ E+ + + ++ L EY+ ++ K+ ++TLE + Sbjct: 716 DLAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSY 775 Query: 854 QKKKAEDG-INKMG--KDLFALSREMQAVE-----------ENCKNLQK--------EKD 891 Q + +G ++K+ K F R+ Q +E N+Q+ E + Sbjct: 776 QNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELN 835 Query: 892 KSNVNHQKETKSLKEDIAAKITEIKAINEN----LEEMKIQCNNLSKEKEHISKELVEYK 947 + +NH + KSL++ +A K I+ LE+ + N++ K H S + + + Sbjct: 836 NAFLNHDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQ 895 Query: 948 SRFQSHDNLVAKLTEKLKSLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMS 1007 ++ ++ T+K L + D+Q + + E K++ Q+ Q ++D ++ Sbjct: 896 KIYELTKKQESEQTQKETELKIAFSDLQKD----YQVFELQKDQEFRQIEAKQRELDKLA 951 Query: 1008 QEKENFQIERGSIEKNIEQLKKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLE--- 1064 ++ ++E ++ + L+ D Q Q+ L +E+ + Sbjct: 952 EKNNQVKLE---LDNRFQALQNQKQDTVQ-----------------AQLELEREQHQLNL 991 Query: 1065 TATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLETSEKALXXXXXXXXXXXX 1124 T N N L K RE+L ++ A+ + L K L Sbjct: 992 EQTAFNQAN----ESLLKQREQLTKKIQAFHYELKKRNQFLALKGKRLFAKEQDQQRKDQ 1047 Query: 1125 ----XXIQLEKEATE----TKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKER-QY 1175 Q EKE T+ K++L L SL + + +L + +K N + Q+ Sbjct: 1048 EINWRFKQFEKEYTDFDEAKKRELEELEKIRRSLSQSNVELERKREKLATDFTNLNKVQH 1107 Query: 1176 NEEIS--QLNDEITSTQQENESIKKKNDELEGE----VKAMKSTS--------------- 1214 N +I+ QLN +I E ++ ++ ++E + +K ++S + Sbjct: 1108 NTQINRDQLNSQIRQFLLERKNFQRFSNEANAKKAFLIKRLRSFASNLKLQKEALAIQKL 1167 Query: 1215 --EEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEK 1272 +++ +K E+ LQ+++ K + + + + +++++ K+ + + N K Sbjct: 1168 EFDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDEKKALNQKLV 1227 Query: 1273 EVSELEDKLKASEDK--------NSKY---LELQKESEKIKEELDAKTTELKIQLEKITN 1321 E+ L A+++K KY L+L++ E+ K++LD K + +L K N Sbjct: 1228 ELKNLSQTYLANKNKAEYSQQQLQQKYTNLLDLKENLERTKDQLDKKHRSIFARLTKFAN 1287 Query: 1322 XXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQA-------FEKERKLLNE 1374 K E L L NE + K FEK+RK + Sbjct: 1288 DLRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATD 1347 Query: 1375 GSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIK 1434 +E +K E EL +L E E + +++N + K S +E E ++ + Sbjct: 1348 AILASHKEVKKK----EGELQKLLVELETRKTKLNN---DFAKFSRQREE-FENQRLKLL 1399 Query: 1435 SLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESXXXXXXXXXXXXXXXX 1494 LQ + + + + + IE KR +E L Q + ++ Sbjct: 1400 ELQKTLQTQTNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDKNKSRLYEYFRKMRDEIE 1459 Query: 1495 XXXXXXXXXXXXXXXXXXTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKS 1554 +E+ +L TI +++L+ K ++DI + ++ Sbjct: 1460 RKESQVKLVLKETQRKANLLEAQANKLNIEKNTIDFKEKELKAFKDKVDQDIDSTNKQRK 1519 Query: 1555 DLISRINESEKDIEELKSKLR-IEAKS---GSELETVKQELNNAQEKI------------ 1598 +L +NE++ + L + R I +K ++ET+K++L++ + ++ Sbjct: 1520 ELNELLNENKLLQQSLIERERAINSKDSLLNKKIETIKRQLHDKEMRVLRLVDRMKLAEQ 1579 Query: 1599 RINAEENTVLKSKLEDIERELKD---KQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQ 1655 + E N + + ++++K+ +I N L L +++ D+T Q Q Sbjct: 1580 KYQTEINRLRTQTFDSEKQDIKNFFPPLFKINGNDMAFPYLYPWLYPQQKQDDNTLQIRQ 1639 Query: 1656 KSEEERRAEVRKFQVEKSQLDEKAMLLETKY------NDLVNKEQAWKRDEDTVKKTTDS 1709 E++ + ++++ E ++L + LLE K + L NK+ + + E ++K + Sbjct: 1640 LFEQQLQFMQQRYENELNELRRQRNLLEKKLDQIQLESQLNNKQSEFSKVESMMEKLLEK 1699 Query: 1710 QR-------QEIEKLAKELD--NLKAENSKLKEANEDRSEIDDLMLLVTDLDEKN 1755 Q+I L K+++ N +S + S+ L+ + +L+++N Sbjct: 1700 TESRLNDFDQKINYLTKKVNQHNTYQPSSYQPTPSYQDSDKQQLLFRIQELEKQN 1754 Score = 118 bits (295), Expect = 2e-28 Identities = 231/1115 (20%), Positives = 451/1115 (40%), Gaps = 135/1115 (12%) Query: 753 TESTHENLTEKLIALTNEHKELD-EKYQILNSSHSSLKE-NFSILETEL--KNVRDSLDE 808 T+ +++ +KL+AL E L+ +K N S+L + N E EL K++ +E Sbjct: 310 TKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNE 369 Query: 809 MTQLRD----VLETKDKENQTALLEYKSTIHKQEDSIKTLEKGL-------ETILSQKKK 857 Q + LET+ K Q + E+K+ + + + E+ L +T+L+Q Sbjct: 370 FEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASL 429 Query: 858 AEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSN--VNHQKETKS-----LKEDIAA 910 + + + L E++ +N + +KE DK ++ QK+ S LKE +A Sbjct: 430 EYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQ 489 Query: 911 KITEIKAI------------NENL---EEMKIQCNNLSKEKEHISKELVEYKSRFQSHDN 955 + E++ + NE L +++K + E E +EL E K + + Sbjct: 490 ERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAK---HALER 546 Query: 956 LVAKLTEKLKSLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQI 1015 KL +K K L N K Q NE ++ K++S+ LQN+ +++ QEK+ Sbjct: 547 SFIKLEDKEKDL--NTKAQQIANE--FSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQ 602 Query: 1016 ERGSIEKNIEQLKKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVN 1075 ER E+N L + ++ Q L+ ++ A+ E Sbjct: 603 ERTYFERNAAVLSNRLQQ-KREELLQQKETLDQLTKSFEQERLINQREHKELVASVEKQK 661 Query: 1076 KISELTKTREELEAELAAYKNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATE 1135 +I K ++ + L A KNL E E ++ EK + ++ + + Sbjct: 662 EILG-KKLQDFSQTSLNASKNLA-EREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQ 719 Query: 1136 TKQQLNSLRANLESLEKE----HEDLAAQLKKYEEQI-----------ANKERQYNEEIS 1180 Q LN R+ L++ ++ H D +L +YE + AN+++ + + Sbjct: 720 LNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQA 779 Query: 1181 QLNDEITSTQQENE---SIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKK 1237 E+ +E + +++KK +K S + N++++E+D ++ Sbjct: 780 YFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFL 839 Query: 1238 KNETNEASLLESIKSVESETVKIKELQDECNF-KEKEVSELEDKLKAS-EDKNSKYLELQ 1295 ++ ++ SL + + +V+ ET K+ +L+ K++E +E K +K S+ ++ Sbjct: 840 NHDADQKSLQDQLATVK-ETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIY 898 Query: 1296 KESEKIKEELDAKTTELKIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLK 1355 + ++K + E K TELKI + E+ ++K Sbjct: 899 ELTKKQESEQTQKETELKIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVK 958 Query: 1356 NEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELK-----AKEIDN 1410 E+ + QA + +++ + + +E + LE NE+ LK K+I Sbjct: 959 LELDNRFQALQNQKQDTVQAQLELEREQHQL--NLEQTAFNQANESLLKQREQLTKKIQA 1016 Query: 1411 TRSELEK----VSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLE 1466 EL+K ++L L ++Q+ + +D+ ++++ K + +++ + KR+LE Sbjct: 1017 FHYELKKRNQFLALKGKRLFAKEQD--QQRKDQEINWRFK--QFEKEYTDFDEAKKRELE 1072 Query: 1467 SLKEQLRAAQESXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXTIESNETELKSSME 1526 L++ R+ +S I E K+ Sbjct: 1073 ELEKIRRSLSQSNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNFQR 1132 Query: 1527 TIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELET 1586 +++ K K NL+ +K L + E +K E+ K +L+ ++ +LE Sbjct: 1133 FSNEANAKKAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQ---QATLQLEQ 1189 Query: 1587 VKQELNNAQ-EKIRINAEENTVLKSKLEDIERELKDKQAEIKS--------------NQE 1631 K E N EK R T + KL D ++ L K E+K+ +Q+ Sbjct: 1190 FKFEKQNFDIEKQRQLVAIKTQCE-KLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQ 1248 Query: 1632 EKELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKF----QVEKSQL-------DEKAM 1680 + + + L +L++ L+ T+ + K A + KF + EK QL D+K Sbjct: 1249 QLQQKYTNLLDLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNR 1308 Query: 1681 LLETKYNDL--VNKEQAWKRD--EDTV-------KKTTDS----------QRQEIEKLAK 1719 LL+ +L ++ E KR ED + K+ TD+ + E++KL Sbjct: 1309 LLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLV 1368 Query: 1720 ELDNLKAE-NSKLKEANEDRSEIDDLMLLVTDLDE 1753 EL+ K + N+ + + R E ++ L + +L + Sbjct: 1369 ELETRKTKLNNDFAKFSRQREEFENQRLKLLELQK 1403 Score = 105 bits (262), Expect = 1e-24 Identities = 219/1111 (19%), Positives = 450/1111 (40%), Gaps = 157/1111 (14%) Query: 731 EVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQILNSSHSSLKE 790 +V+K++ Q K EI SL+ E ++ + L ++ ELD+K L + L Sbjct: 35 DVDKIENQLLK---EIKSLEDELKNL-----KGLKNQAEDNPELDKKINHLEVDLNRLVN 86 Query: 791 NFSILETELKNVRDSLDEMTQL----RDVLETKDKENQTAL-LEYKSTIHKQEDSIKTLE 845 + + + ++ D + E+ L ++ L +EN L +Y + + Q + L Sbjct: 87 EYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQANYHNKLN 146 Query: 846 KGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSLK 905 I +Q + IN++ + + + ++ N LQ N N E K+ Sbjct: 147 DFHRLIENQNQT----INRLNQKI---NGNQNLIDNNVALLQ------NPNITVEKKNYL 193 Query: 906 EDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLK 965 ++ I + L++++ Q LS E E+ +ELV + Q N+ + + Sbjct: 194 LNV------IDQLYNELDQLENQKRLLSIEYENTYRELVSADNELQ---NVYENIDQNQI 244 Query: 966 SLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIE 1025 + Y+ + E L + ++ +K E + S L+ KID +F I E ++ Sbjct: 245 QFKHQYQTYRDELSQLERKIQLTKQELVDKESALRVKIDD-----ADFYINARLAE--LD 297 Query: 1026 QLKKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTRE 1085 + K +S + + L + E + I++L + E Sbjct: 298 DVAKQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENE 357 Query: 1086 ----ELEAELAAYKNLKNELETKLETSEKAL----XXXXXXXXXXXXXXIQLEKEATETK 1137 LE + ++ +++ KLET KAL + E+E E + Sbjct: 358 LFAKHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKR 417 Query: 1138 QQLNSLRANLESLEKEHEDLAAQLKK--------------YEEQIANKERQYNEEISQLN 1183 +++++L SLE EH+ ++QL K Y ++ +KER ++ +++ Sbjct: 418 REIDTLLTQ-ASLEYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVD 476 Query: 1184 DEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIK----ELKKKN 1239 E + Q E + ++ ELE E+ +K ++Q K++E+ Q+K + + + Sbjct: 477 SE--AIFQLKEKVAQERKELE-ELYLVKKQKQDQ---KENELLFFEKQLKQHQADFENEL 530 Query: 1240 ETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKN--------SKY 1291 E + L E+ ++E +K+++ + + N K ++++ +LK + K+ ++Y Sbjct: 531 EAKQQELFEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEY 590 Query: 1292 LELQKESEKIKEE--------------LDAKTTEL---KIQLEKITNXXXXXXXXXXXXX 1334 LQ+E +K+ +E L K EL K L+++T Sbjct: 591 ENLQQEKQKLFQERTYFERNAAVLSNRLQQKREELLQQKETLDQLTKSFEQERLINQREH 650 Query: 1335 XXXXXXXXXRK---------------NAEEQLEKLKNEIQIKNQAFE-KERKLLNE--GS 1376 +K NA + L + + I+ K + E E++LLN+ + Sbjct: 651 KELVASVEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNA 710 Query: 1377 STITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIKSL 1436 I + ++ +L E LQN + A +++ +L + LS + L+E Q T+++ Sbjct: 711 EVIQADLAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQ-TLEAN 769 Query: 1437 QDEILSYK---------DKITRNDEKLLSIERDNKRDLESLKEQLRAAQESXXXXXXXXX 1487 Q + SY+ DK+ R + L++ + +++++K++L ++ Sbjct: 770 QKQ-HSYQNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELD 828 Query: 1488 XXXXXXXXXXXXXXXXXXXXXXXXXTIESNETELKSSMETIRKSDEKLEQSKKSAEE--D 1545 T++ ET+ +E LE+ ++ AE Sbjct: 829 RKTHELNNAFLNHDADQKSLQDQLATVK--ETQKLIDLE----RSALLEKQREFAENVAG 882 Query: 1546 IKNLQHEKSDLISRINESEKDIEELKSKLRIEAK-SGSELETVKQ--ELNNAQEKIRINA 1602 K K+ + +I E K E +++ E K + S+L+ Q EL QE +I A Sbjct: 883 FKRHWSNKTSQLQKIYELTKKQESEQTQKETELKIAFSDLQKDYQVFELQKDQEFRQIEA 942 Query: 1603 EENTV--LKSKLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQKSEE- 1659 ++ + L K ++ EL ++ +++ +++ L+ + +L+ Q ++ E Sbjct: 943 KQRELDKLAEKNNQVKLELDNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANES 1002 Query: 1660 ---ERRAEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTV--------KKTTD 1708 +R +K Q +L ++ L K L KEQ +R + + K+ TD Sbjct: 1003 LLKQREQLTKKIQAFHYELKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTD 1062 Query: 1709 ---SQRQEIEKLAKELDNLKAENSKLKEANE 1736 ++++E+E+L K +L N +L+ E Sbjct: 1063 FDEAKKRELEELEKIRRSLSQSNVELERKRE 1093 Score = 104 bits (259), Expect = 3e-24 Identities = 191/997 (19%), Positives = 399/997 (40%), Gaps = 167/997 (16%) Query: 841 IKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKE 900 IK+LE L+ + K +AED ++ K + L ++ + KN Q +K+ V+ E Sbjct: 47 IKSLEDELKNLKGLKNQAEDN-PELDKKINHLEVDLNRLVNEYKNFQFQKNHM-VDKVSE 104 Query: 901 TKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKL 960 +L ++T ++ EN + + + NL+ + + +L ++ ++ + + +L Sbjct: 105 LDNLTRFYKNELTRLQ--QENADFLNSKYANLANFQANYHNKLNDFHRLIENQNQTINRL 162 Query: 961 TEKLKS----LANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIE 1016 +K+ + NN +Q N ++ E KN + L N++D + +K IE Sbjct: 163 NQKINGNQNLIDNNVALLQNPNITV-----EKKNYLLNVIDQLYNELDQLENQKRLLSIE 217 Query: 1017 RGSIEKNIEQLKKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNK 1076 + + + + ++ + ++S L+ K++ E V+K Sbjct: 218 YENTYRELVSADNELQNVYENIDQNQIQFKHQYQTYRDELSQLERKIQLT---KQELVDK 274 Query: 1077 ISELTKTREELEAELAAYKNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATET 1136 S L ++ + + N +L+ K QL + T Sbjct: 275 ESALRVKIDDADFYI-------NARLAELDDVAK-----------------QLSFQDGIT 310 Query: 1137 KQQLNSLRANLESLEKEHEDLAAQLKKYEE--QIA----NKERQYNEEISQLNDEITSTQ 1190 KQ + L +L KE + L Q + + Q A NK +Q NE ++ + Sbjct: 311 KQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLEH----- 365 Query: 1191 QENESIKKKND---ELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLL 1247 Q+NE +K++D +LE E KA++ E N ++ + L Q +EL +K + L Sbjct: 366 QQNEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLT 425 Query: 1248 ESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQK--ESEKIKEEL 1305 ++ E + + L+D+ N ++ LE K DK L+ QK +SE I +L Sbjct: 426 QASLEYEHQRESSQLLKDKQNEVKQHFQNLE-YAKKELDKERNLLDQQKKVDSEAI-FQL 483 Query: 1306 DAKTTELKIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQAF 1365 K + + +LE++ +K +++ E L E Q+K Sbjct: 484 KEKVAQERKELEEL-------------------YLVKKQKQDQKENELLFFEKQLKQHQA 524 Query: 1366 EKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENE---LKAKEIDNTRSELE------ 1416 + E +L QE E + LE I+L+++ + KA++I N S+L+ Sbjct: 525 DFENEL-----EAKQQELFEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKS 579 Query: 1417 ---KVSLSN--DELLEEKQ-----------------NTIKSLQDEILSYKDKITRNDEKL 1454 ++ L N + L +EKQ N ++ ++E+L K+ + D+ Sbjct: 580 ADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNRLQQKREELLQQKETL---DQLT 636 Query: 1455 LSIERDNKRDLESLKEQLRAAQESXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXTI 1514 S E++ + KE + + ++ I Sbjct: 637 KSFEQERLINQREHKELVASVEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEI 696 Query: 1515 ESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEK-------SDLISRINESE--- 1564 E+ E +L + + L Q +S ++ LQ+ K +D + ++NE E Sbjct: 697 EATEKQLLNDVNNAEVIQADLAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSL 756 Query: 1565 -KDIEELKSK-----------------------------LRIEAKSGSELETVKQELNNA 1594 K ++EL++ L + K E++ +KQ L++ Sbjct: 757 QKRLQELQTLEANQKQHSYQNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDK 816 Query: 1595 QEKIRINAEENTVLKSKLEDI-------ERELKDKQAEIKSNQEEKELLTSRLKELEQEL 1647 + + + E +L + ++ L+D+ A +K Q+ +L S L E ++E Sbjct: 817 HQALNMQQAELDRKTHELNNAFLNHDADQKSLQDQLATVKETQKLIDLERSALLEKQREF 876 Query: 1648 DSTQQKAQKSEEERRAEVRKF----QVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTV 1703 ++ + ++++K + ++S+ +K L+ ++DL Q ++ +D Sbjct: 877 AENVAGFKRHWSNKTSQLQKIYELTKKQESEQTQKETELKIAFSDLQKDYQVFELQKDQE 936 Query: 1704 KKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSE 1740 + +++++E++KLA++ + +K E +A +++ + Sbjct: 937 FRQIEAKQRELDKLAEKNNQVKLELDNRFQALQNQKQ 973 >SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 Length = 875 Score = 124 bits (310), Expect = 3e-30 Identities = 151/724 (20%), Positives = 289/724 (39%), Gaps = 73/724 (10%) Query: 742 LKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQILNSSHSSLKENFSILETELKN 801 LK ++ +++ +T+ E +TE KE E + N S ++LK++ + E + N Sbjct: 103 LKNDVAAIENDTDEDFE-ITEVREVSEGVAKETKESHGDPNDSETTLKDS-KMHEYTMTN 160 Query: 802 VRDSL-----DEMTQLRDVLETKDKENQTALLEYKSTIHKQEDSIKTLEKGLETILSQKK 856 + L + T DVL Q K + KQ+ L+ L++ S Sbjct: 161 GKAPLHTSINNSSTSSNDVLLEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNSD 220 Query: 857 KAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSLKEDIAAKITEIK 916 K + + K L + ++E L K+ N + + K L+++ I Sbjct: 221 KINEKVGKYKSCL-------ETLQERIATLTSHKN----NQETKLKDLRQNHQLYQRRIS 269 Query: 917 AINENLEEMKIQCNNLSKEKEHISKEL------VEYKSRFQSHDNLVAKLTEKLKSLANN 970 ++E + N+L K K+ EL +EY R D+ +L+E+ ++ Sbjct: 270 GFKTSIENLNKTINDLGKNKKEADAELMKKGKEIEYLKR--ELDDCSGQLSEEKIKNSSL 327 Query: 971 YKDMQAENESLIKAVE----ESKNESSIQLSNLQNKIDSMSQEK--ENFQIERGSIEKNI 1024 ++M E +IK++E E K +Q + + ++ + ++K ++F + + ++ + Sbjct: 328 IQEMGKNREEMIKSIENFFSEDKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGL 387 Query: 1025 EQLKKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLE-TATTANDENVNKISELTKT 1083 +S +T Q +KE LE +++ DE I+EL+ T Sbjct: 388 RNTTVELSSNTET-------------MLKQQYEDIKENLEQKMSSSKDEMAKTINELSVT 434 Query: 1084 REEL-----EAELAAYKNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQ 1138 ++ L E L + N++ L +++ + + L L K Sbjct: 435 QKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVKAYKAEIV 494 Query: 1139 QLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQL---NDEITSTQQENES 1195 Q N ++ LE E L++Q + + KE QY + + +L N EI+ + +S Sbjct: 495 QSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQS 554 Query: 1196 IKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVES 1255 + +KN+ L E+K ++ E+ +NL + K E +S E +K++ S Sbjct: 555 LTEKNENLSNELKKVQDQLEKLNNLNIT-----------TKSNYENKISSQNEIVKALVS 603 Query: 1256 ETVKIKE-LQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKE---ELDAKTTE 1311 E +K+ +Q KE E + KL+A + N + +L E ++K EL+ + Sbjct: 604 ENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQNRH 663 Query: 1312 LKIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQAFEKERKL 1371 LK LEK K+ ++ + K E+Q ++ E+ K Sbjct: 664 LKNCLEK----KETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKN 719 Query: 1372 LNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQN 1431 L + + +E +KI LE+ +NE K + S+ K + + L Sbjct: 720 LQQKVQSQKRELEQKIKELEEIKNHKRNEPSKKGTQNFTKPSDSPKKNATTSNLFPNNSA 779 Query: 1432 TIKS 1435 I S Sbjct: 780 AIHS 783 Score = 79.7 bits (195), Expect = 7e-17 Identities = 139/723 (19%), Positives = 293/723 (40%), Gaps = 90/723 (12%) Query: 1062 KLETATTANDENVN-KISELTKTREELEAELAAYKNLKNELETKLETSE---------KA 1111 K + A ND + + +I+E+ + E + E N+ ET L+ S+ KA Sbjct: 104 KNDVAAIENDTDEDFEITEVREVSEGVAKETKESHGDPNDSETTLKDSKMHEYTMTNGKA 163 Query: 1112 LXXXXXXXXXXXXXXIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANK 1171 + LE T T++ ++L+ L+ ++++ L +L+ Y A+ Sbjct: 164 PLHTSINNSSTSSNDVLLEA-FTNTQRICSNLKQELQKQQQDNAKLKVRLQSY----ASN 218 Query: 1172 ERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSE---EQSNLKKSEIDAL 1228 + NE++ + + + Q+ ++ + E ++K ++ + + + K+ I+ L Sbjct: 219 SDKINEKVGKYKSCLETLQERIATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENL 278 Query: 1229 NLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKE--------VSEL--- 1277 N I +L K + +A L++ K +E +K D+C+ + E + E+ Sbjct: 279 NKTINDLGKNKKEADAELMKKGKEIEY----LKRELDDCSGQLSEEKIKNSSLIQEMGKN 334 Query: 1278 -EDKLKA-----SEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKITNXXXXXXXXXX 1331 E+ +K+ SEDK L+ K E++ +L K + + K T Sbjct: 335 REEMIKSIENFFSEDKAHHLLQFNKFEERV-HDLFEKKLQKHFDVAKDT-------LNVG 386 Query: 1332 XXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQAFEKER-KLLNEGSSTITQEYSEKINTL 1390 ++Q E +K ++ K + + E K +NE S +TQ+ I + Sbjct: 387 LRNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELS--VTQK--GLIMGV 442 Query: 1391 EDELIRLQ-NENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIK---SLQDEILSYKDK 1446 ++EL+ N E++NTR EL L++ T K SL++ + +YK + Sbjct: 443 QEELLTSSGNIQTALVSEMNNTRQEL----------LDDASQTAKNYASLENLVKAYKAE 492 Query: 1447 ITRNDEKLLSIERDNKRDLESLKEQLRAAQESXXXXXXXXXXXXXXXXXXXXXXXXXXXX 1506 I +++E + + LES + L + + Sbjct: 493 IVQSNEY-----EERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQ 547 Query: 1507 XXXXXXTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKD 1566 ++ L + ++ ++ EKL + + + +N +++++ + SE D Sbjct: 548 ISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKAL-VSEND 606 Query: 1567 IEELKSKLRIEAKSGSELE-TVKQEL---NNAQ-EKIRINAEENTVLKSKLEDIERELK- 1620 + + + +E K + + T K E NN Q +K+ + + + +LE+ R LK Sbjct: 607 TLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQNRHLKN 666 Query: 1621 ----------DKQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQV 1670 + +++K+ +++ +L S +++ E Q + EE + +K Q Sbjct: 667 CLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQS 726 Query: 1671 EKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSK 1730 +K +L++K LE N N+ K+ K +DS ++ +N A +S Sbjct: 727 QKRELEQKIKELEEIKNHKRNEPS--KKGTQNFTKPSDSPKKNATTSNLFPNNSAAIHSP 784 Query: 1731 LKE 1733 +K+ Sbjct: 785 MKK 787 Score = 70.9 bits (172), Expect = 3e-14 Identities = 122/617 (19%), Positives = 246/617 (39%), Gaps = 80/617 (12%) Query: 710 RIRTALSHDPDEEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTN 769 RI T SH ++E K + + QR+ + K I +L +N E L Sbjct: 239 RIATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMK 298 Query: 770 EHKELDEKYQILNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDKENQTALLE 829 + KE++ + L+ L E + ++ + + +EM + + ++DK + LL+ Sbjct: 299 KGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHH--LLQ 356 Query: 830 YKSTIHKQEDSI-KTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQK 888 + + D K L+K + A+D +N L + E+ + E Q Sbjct: 357 FNKFEERVHDLFEKKLQKHFDV-------AKDTLNV---GLRNTTVELSSNTETMLKQQY 406 Query: 889 EKDKSNVNHQKETKSLKEDIAAKITEIKAINENL-----EEMKIQCNNLS----KEKEHI 939 E K N+ +++ S K+++A I E+ + L EE+ N+ E + Sbjct: 407 EDIKENL--EQKMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNT 464 Query: 940 SKELVEYKSR----FQSHDNLVA----------KLTEKLKSLANNYKDMQAENESLIKAV 985 +EL++ S+ + S +NLV + E++K L + + ++ +I ++ Sbjct: 465 RQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSL 524 Query: 986 --EESKNES--------SIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKK----TI 1031 +E++ E +I++S + K S++++ EN E ++ +E+L T Sbjct: 525 GTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTK 584 Query: 1032 SDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREELE--- 1088 S+ E +++ +E ++ K+ K E+L+ Sbjct: 585 SNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLN 644 Query: 1089 AELAAYKNLKNELETK-------LETSEKALXXXXXXXXXXXXXXIQLEKEATETKQQLN 1141 E+ K + ELE + LE E + I L+ E + + Sbjct: 645 VEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKL 704 Query: 1142 SLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKND 1201 L+ NLESLE+ ++L ++++ +++R+ ++I +L E + NE KK Sbjct: 705 ELQDNLESLEEVTKNL-------QQKVQSQKRELEQKIKEL--EEIKNHKRNEPSKKGTQ 755 Query: 1202 ELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIK 1261 + K + SNL + A++ +K+ K + +++ + S ET K Sbjct: 756 NFTKPSDSPKKNA-TTSNLFPNNSAAIHSPMKKCPKVDHISKSRINSS-----KETSK-- 807 Query: 1262 ELQDECNFKEKEVSELE 1278 DE + +LE Sbjct: 808 -FNDEFDLSSSSNDDLE 823 Score = 68.2 bits (165), Expect = 2e-13 Identities = 116/614 (18%), Positives = 238/614 (38%), Gaps = 134/614 (21%) Query: 1185 EITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEA 1244 EIT ++ +E + K+ E G+ ++ ++ LK S++ + +A Sbjct: 119 EITEVREVSEGVAKETKESHGD------PNDSETTLKDSKMHEYTMT---------NGKA 163 Query: 1245 SLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKY-LELQK---ESEK 1300 L SI + S T L + ++ S L+ +L+ + N+K + LQ S+K Sbjct: 164 PLHTSINN--SSTSSNDVLLEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNSDK 221 Query: 1301 IKEELDAKTTELKIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQI 1360 I E++ + L+ E+I + N E +L+ L+ Q+ Sbjct: 222 INEKVGKYKSCLETLQERIATLTSH------------------KNNQETKLKDLRQNHQL 263 Query: 1361 KNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSL 1420 + + + + TI K + EL++ E E +E+D+ +L + + Sbjct: 264 YQRRISGFKTSIENLNKTINDLGKNK-KEADAELMKKGKEIEYLKRELDDCSGQLSEEKI 322 Query: 1421 SNDELLEE----KQNTIKSLQDEILSYKD----KITRNDEKLLSI-ERDNKRDLESLKEQ 1471 N L++E ++ IKS+++ K + + +E++ + E+ ++ + K+ Sbjct: 323 KNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDT 382 Query: 1472 LRAAQESXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXTIESNETELKSSMETIRKS 1531 L + + ET LK E I+++ Sbjct: 383 LNVGLRNTTVELSS------------------------------NTETMLKQQYEDIKEN 412 Query: 1532 -DEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQE 1590 ++K+ SK + I L + LI + E E L S I+ SE+ +QE Sbjct: 413 LEQKMSSSKDEMAKTINELSVTQKGLIMGVQE-----ELLTSSGNIQTALVSEMNNTRQE 467 Query: 1591 L----------------------------NNAQEKIR--------INAEENTVLKS---- 1610 L N +E+I+ +++++N ++ S Sbjct: 468 LLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTK 527 Query: 1611 --KLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKF 1668 + ED+ ++L+ K EI +++ LT + + L EL Q + +K + Sbjct: 528 EAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNY 587 Query: 1669 QVEKSQLDE--KAML-----LETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKEL 1721 + + S +E KA++ L+ + LV ++ ++D T + ++++KL E+ Sbjct: 588 ENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEV 647 Query: 1722 DNLKAENSKLKEAN 1735 LKA +L+E N Sbjct: 648 VQLKAHELELEEQN 661 >MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] Length = 1033 Score = 94.7 bits (234), Expect = 2e-21 Identities = 143/648 (22%), Positives = 273/648 (42%), Gaps = 110/648 (16%) Query: 1152 KEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELEG-----E 1206 K ED A Q +++IA K+ Q + +Q+ E+ Q E + E + Sbjct: 287 KPAEDSAHQSAVLDKEIATKQAQLQQLQAQI--ELRQAQLETPPVTYMGVEEYKLLPVQD 344 Query: 1207 VKAMKSTSEEQSNLKKSEID-------ALNLQIKE-LKKKNETNEASLLESIKSVESETV 1258 V ++ T + L + ++D AL +Q++E L K + +++ +L+ Sbjct: 345 VVPVQPTVSFEMTLLQEQLDKALKHNAALQIQLEEQLAKPLQYDQSPVLQE--------- 395 Query: 1259 KIKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEELD---AKTTELKIQ 1315 +I+ LQ++ +E++EL+ KL S++ + L++E+ +K+ L + +L Sbjct: 396 RIELLQNQNTNLTQELNELQQKLFKSQNNSLLLARLEEENRTLKQHLQNNLPEANQLNFV 455 Query: 1316 LEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQAFEKERKLLNEG 1375 LEK EQL++ K+ + ++ + ++ + K E Sbjct: 456 LEKQL----------------------------EQLQQDKHSLTLQIEQYKFDSKKHQEQ 487 Query: 1376 SSTITQEYSEKINTLEDELIRLQNENE-LKAKEIDNTRSELEKVSLSNDELLEEKQNTIK 1434 + I SE IN+LE E+I L+ N+ L E +N + E L +L +E Sbjct: 488 LALIPSLRSE-INSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDENTKYRN 546 Query: 1435 SLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESXXXXXXXXXXXXXXXX 1494 L+ L D +D KL +E + + +EQL Q Sbjct: 547 LLKQYELMRAD----SDAKLKELEHEQHLAHQHHQEQLAQLQRHNEALVKELDQ------ 596 Query: 1495 XXXXXXXXXXXXXXXXXXTIESNETELKSSMETIRKSDEKLEQSKKS-------AEEDIK 1547 +++ EL + + + LEQ S AEE+++ Sbjct: 597 -------------------VKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQ 637 Query: 1548 NLQHEKSDLISRINESE---KDIEELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEE 1604 L S+L +++N E K+ SK K +LE + +L+ QE++ ++ Sbjct: 638 ALGITNSELQNQLNVLEFTHKEKTAFDSKTLTLTKQ--QLEQTQFDLSLTQEQLATFKQQ 695 Query: 1605 NTVLKSKLEDIERELKDKQAE---IKSNQEEKELLTSRLKELEQELDSTQQKAQKSEEER 1661 N L KL E +L Q + Q + ELL +L+ E + TQQ+ +++ E Sbjct: 696 NQSLTDKLMASETQLNHLQQSDENLTQLQTQHELLQESYNKLQDEANHTQQQFHQAQNEL 755 Query: 1662 RA---EVRKFQVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIEKLA 1718 A ++ F+ +L +K ++ + +DL + W+ D Q+ E++ Sbjct: 756 DAAHQQLALFKQNNEELTDKCSNIQNELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQ 815 Query: 1719 KELDNL---KAENSKLKEA-NEDRSEIDDLMLLVTDLDEKNAKYRSKL 1762 E NL +AE+ L+E+ N+ ++E++++ +T+L+E NA+Y+ L Sbjct: 816 HEHSNLAQIQAEHELLQESYNKVKAELNEIQ--ITNLNEANAQYQDLL 861 Score = 79.7 bits (195), Expect = 7e-17 Identities = 176/921 (19%), Positives = 368/921 (39%), Gaps = 160/921 (17%) Query: 760 LTEKLIALTNEHKELDEKYQI--LNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLE 817 L ++L+ + H ++E + + + + + +FSI + N+ ++L + ++ Sbjct: 232 LVDELVTVPLTHTLVNESAPVTPVVVTSPAAEHSFSITTVDKANLTNALSQTVVIKPA-- 289 Query: 818 TKDKENQTALLEYKSTIHKQEDSIKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQ 877 +D +Q+A+L+ + I ++ ++ L+ +E L Q + + MG + + L Sbjct: 290 -EDSAHQSAVLDKE--IATKQAQLQQLQAQIE--LRQAQLETPPVTYMGVEEYKLLPVQD 344 Query: 878 AVEEN------CKNLQKEKDKSNVNHQKETKSLKEDIAAKIT--EIKAINENLEEMKIQC 929 V LQ++ DK+ ++ L+E +A + + + E +E ++ Q Sbjct: 345 VVPVQPTVSFEMTLLQEQLDKALKHNAALQIQLEEQLAKPLQYDQSPVLQERIELLQNQN 404 Query: 930 NNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSLA----NNYKDMQAENESLIKAV 985 NL++E + ++L +KS Q++ L+A+L E+ ++L NN + N L K + Sbjct: 405 TNLTQELNELQQKL--FKS--QNNSLLLARLEEENRTLKQHLQNNLPEANQLNFVLEKQL 460 Query: 986 EE-SKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTXXXXXXX 1044 E+ +++ S+ L Q K DS +++ I S+ I L+ + L+QT Sbjct: 461 EQLQQDKHSLTLQIEQYKFDSKKHQEQLALIP--SLRSEINSLETEVISLKQT------- 511 Query: 1045 XXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKNELETK 1104 ++L N+ +I +L +T+ L E Y+NL + E Sbjct: 512 ---------------NQRLSLIERENNFLKTEIKQLRETK--LNDENTKYRNLLKQYELM 554 Query: 1105 LETSEKALXXXXXXXXXXXXXXIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKY 1164 S+ L +LE E Q H++ AQL+++ Sbjct: 555 RADSDAKLK--------------ELEHEQHLAHQH--------------HQEQLAQLQRH 586 Query: 1165 EEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSE 1224 E + + Q +L +Q+ +++KN L ++A + + Sbjct: 587 NEALVKELDQVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSEL 646 Query: 1225 IDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKAS 1284 + LN+ K+K + +L + + +E + Q++ +++ L DKL AS Sbjct: 647 QNQLNVLEFTHKEKTAFDSKTLTLTKQQLEQTQFDLSLTQEQLATFKQQNQSLTDKLMAS 706 Query: 1285 E-------DKNSKYLELQKESEKIKEELDAKTTELKIQLEKITNXXXXXXXXXXXXXXXX 1337 E + +LQ + E ++E + K+Q ++ + Sbjct: 707 ETQLNHLQQSDENLTQLQTQHELLQESYN------KLQ-DEANHTQQQFHQAQNELDAAH 759 Query: 1338 XXXXXXRKNAEEQLEKLKNEIQIKNQAFEKER-----KLLNEGSSTITQEYSEKINTLED 1392 ++N EE +K N I+N+ + R + LN + + +Y+++ ++ Sbjct: 760 QQLALFKQNNEELTDKCSN---IQNELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQH 816 Query: 1393 E---LIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITR 1449 E L ++Q E+EL + + ++EL ++ ++N N + ++LS + + Sbjct: 817 EHSNLAQIQAEHELLQESYNKVKAELNEIQITN-------LNEANAQYQDLLSAYELLQS 869 Query: 1450 NDEKL---LSIERDNKRDLESLKEQLRAAQESXXXXXXXXXXXXXXXXXXXXXXXXXXXX 1506 N KL L + + + L ++L +S Sbjct: 870 NHNKLKQELQVLNQVNLEKQQLAQKLHNTHQSLSQT------------------------ 905 Query: 1507 XXXXXXTIESNETELKSSMETIRK----SDEKLEQSKKSAEEDIKNLQHEKSDLISRINE 1562 + T+L+++ ++ SDE LEQ + E + LQ ++ ++E Sbjct: 906 --------HAELTQLQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQN----LALVHE 953 Query: 1563 SEKDIEELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDK 1622 + EL S E K+ + ETVK E+ +++I + E+ LK + DI E K+ Sbjct: 954 LQY-FNELNSSQTHEIKTKQD-ETVK-EVIIVEKEIPVPPEKKPRLKKR--DIVIENKED 1008 Query: 1623 QAEIKSNQEEKELLTSRLKEL 1643 S +E + RL ++ Sbjct: 1009 ALGKLSKKERIQAYAERLAKI 1029 Score = 70.9 bits (172), Expect = 3e-14 Identities = 114/606 (18%), Positives = 245/606 (40%), Gaps = 82/606 (13%) Query: 720 DEEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQ 779 D+ P+ + E +E LQ Q T L E+ LQ + + N + L L E++ L + Q Sbjct: 388 DQSPVLQ---ERIELLQNQNTNLTQELNELQQKLFKSQNN-SLLLARLEEENRTLKQHLQ 443 Query: 780 ILNSSHSSLKENFSILETELKNVRDSLDEMT-QLRDV-LETKDKENQTALL-EYKSTIHK 836 N+ + + NF +LE +L+ ++ +T Q+ ++K + Q AL+ +S I+ Sbjct: 444 --NNLPEANQLNF-VLEKQLEQLQQDKHSLTLQIEQYKFDSKKHQEQLALIPSLRSEINS 500 Query: 837 QEDSIKTLEKG-------------LETILSQKKKAE-DGINKMGKDLFALSREMQAVEE- 881 E + +L++ L+T + Q ++ + + N ++L M+A + Sbjct: 501 LETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKLNDENTKYRNLLKQYELMRADSDA 560 Query: 882 NCKNLQKEKDKSNVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISK 941 K L+ E+ ++ +HQ++ L+ A + E+ + E+ + ++K + + Sbjct: 561 KLKELEHEQHLAHQHHQEQLAQLQRHNEALVKELDQVKATNFELGLAAQGFEQQKVVLEQ 620 Query: 942 ELVEYKSRFQSHDNLV-------AKLTEKLKSLANNYKDMQAENESLIKAVEESKNESSI 994 + + Q+ + V ++L +L L +K+ A + + ++ ++ Sbjct: 621 KNSSLLASLQAAEENVQALGITNSELQNQLNVLEFTHKEKTAFDSKTLTLTKQQLEQTQF 680 Query: 995 QLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTXXXX------------- 1041 LS Q ++ + Q+ ++ + + E + L+++ +L Q Sbjct: 681 DLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENLTQLQTQHELLQESYNKLQDE 740 Query: 1042 XXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKNE- 1100 ++ ++L N+E +K S + +L ++NL E Sbjct: 741 ANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNELHDLNRVKTNWENLNTEH 800 Query: 1101 --LETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQQLNSLR-ANLESLEKEHEDL 1157 L+ K ++ + L++ + K +LN ++ NL +++DL Sbjct: 801 NLLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQDL 860 Query: 1158 AA--------------------QLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIK 1197 + Q+ ++Q+A K ++ +SQ + E+T Q +++ Sbjct: 861 LSAYELLQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQ 920 Query: 1198 KK---NDELEGEVKAMKSTSEEQSNLKKSEIDALNLQ-IKELKKKNETNEASLLESIKSV 1253 +DEL + Q L+K + NL + EL+ NE N +S IK+ Sbjct: 921 ATPPVSDELLEQF--------NQVQLEKQRLLQQNLALVHELQYFNELN-SSQTHEIKTK 971 Query: 1254 ESETVK 1259 + ETVK Sbjct: 972 QDETVK 977 Score = 52.4 bits (124), Expect = 1e-08 Identities = 53/201 (26%), Positives = 92/201 (45%), Gaps = 25/201 (12%) Query: 1586 TVKQELNNAQEKIRINAEENTVLKSKLED-IERELKDKQAEIKSNQEEKELLTSRLKELE 1644 TV E+ QE++ + N L+ +LE+ + + L+ Q+ + QE ELL ++ L Sbjct: 351 TVSFEMTLLQEQLDKALKHNAALQIQLEEQLAKPLQYDQSPVL--QERIELLQNQNTNLT 408 Query: 1645 QELDSTQQKAQKS----------EEERRAEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQ 1694 QEL+ QQK KS EEE R + Q + ++ +LE + L + Sbjct: 409 QELNELQQKLFKSQNNSLLLARLEEENRTLKQHLQNNLPEANQLNFVLEKQLEQLQQDKH 468 Query: 1695 AWKRDEDTVKKTTDSQRQE---IEKLAKELDNLKAENSKLKEANEDRSEIDD-------- 1743 + + K + +++ I L E+++L+ E LK+ N+ S I+ Sbjct: 469 SLTLQIEQYKFDSKKHQEQLALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTE 528 Query: 1744 -LMLLVTDLDEKNAKYRSKLK 1763 L T L+++N KYR+ LK Sbjct: 529 IKQLRETKLNDENTKYRNLLK 549 >MGEN-G37-01-000335 MG328 conserved hypothetical protein Length = 756 Score = 84.3 bits (207), Expect = 3e-18 Identities = 140/731 (19%), Positives = 307/731 (41%), Gaps = 129/731 (17%) Query: 769 NEHKELDEKYQILNSSHSSLK-ENFSILETELKNVRDSLDEMTQLRDVLETKDKENQTAL 827 N+ K +E+ Q ++ + + + ++ S+L E+K L + + + K T Sbjct: 93 NQLKTREEEQQTVDQTMAFQEVDDQSVLTKEIKTGFQELKPSVITAEDDKDEIKPEATKQ 152 Query: 828 LEYKSTIHKQEDSIKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQ 887 + ++ ++ + I +K I S K E + D +++ +A+ K +Q Sbjct: 153 VSFEELFNQPSEEINETKKPEVQIFSTDKVKEP---EQFDDFYSIENLTKAINPVHKTIQ 209 Query: 888 KEKDKSNVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKE----KEHISKEL 943 +++ K + LKE K + + + N +E+ ++ +L K+ KE+ + ++ Sbjct: 210 YDQNDDQPFVVK--RILKEQHPTKKVD-ELDDYNNKELLLENADLKKQIDDLKENNNDQI 266 Query: 944 VEYKSRFQSHDNLVAKLTEKLKSLANNYK---DMQAENESLIKAVEESKNESSIQLSNLQ 1000 + + Q D+L +L+E+ + K D+ EN L + ++ + ++ L Sbjct: 267 FDLE---QEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKP----VAINPLS 319 Query: 1001 NKIDSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTXXXXXXXXXXXXXXXXXQISLLK 1060 D +++E EN + E+ + ++ LK S+++Q QI+ L+ Sbjct: 320 ---DEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVLNN--------QINELQ 368 Query: 1061 EKLETATTAND-------ENVNKISELTKTREELEA-ELAAYKNLKNELETKLETSEKAL 1112 +L TA AN EN +EL K + E Y +L N+ E + +E Sbjct: 369 NQLLTAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELLFDENETKF 428 Query: 1113 XXXXXXXXXXXXXXIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKE 1172 +Q++++A Q + +L+ E++ L ++ E +K+ Sbjct: 429 DK------------LQVKQQALNLDYQ-----KTISALKHENDVLLDEI----EWTRSKD 467 Query: 1173 RQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQI 1232 +N + ++ + ++ + +N +L+ ++ ++ +EE+SNL +++ L Q+ Sbjct: 468 NDFNNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQL 527 Query: 1233 KELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYL 1292 K+ +N N A + + ++E + + E ++++LED+L SE+ N+ Sbjct: 528 KD--SQNLFNVAQ--DKLATLEEVNLALNE----------KINDLEDELSGSENSNNLLA 573 Query: 1293 ELQKESEKIKEELDAKTTELKIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLE 1352 +LQ + E ++E +LK EK+ +A EQ + Sbjct: 574 KLQADHEILQESYG----KLKTDFEKLKKNKL--------------------NDANEQYQ 609 Query: 1353 KLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTR 1412 L + + N EK ++ L+ S Q ++IN+LE N + Sbjct: 610 DLLSAFEETNSELEKAKQSLSASDSENNQ-LKQQINSLE------------------NAK 650 Query: 1413 SELEKVSLSNDELLEEKQNTIKSLQDEI----------LSYKDKITRNDEKLLSIERDNK 1462 EL+ +++DE L+E + T+K ++++ L Y + I+ N + + D Sbjct: 651 KELQFTPVTSDEHLDELE-TLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEASDED 709 Query: 1463 RDLESLKEQLR 1473 + +E K +++ Sbjct: 710 KPVEIKKPRIK 720 Score = 82.4 bits (202), Expect = 1e-17 Identities = 154/713 (21%), Positives = 296/713 (41%), Gaps = 133/713 (18%) Query: 656 DNYASRIK-----QFKKDSYFSKVDMNEDSILTPELDETGLPKVYFSTYFIQLFNENIYR 710 ++YA+++K Q D + ++++ S+LT E+ +TG F E Sbjct: 89 NHYANQLKTREEEQQTVDQTMAFQEVDDQSVLTKEI-KTG-------------FQELKPS 134 Query: 711 IRTALSHDPDE---EPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIAL 767 + TA D DE E ++SFEE L Q ++ E + + ST + Sbjct: 135 VITA-EDDKDEIKPEATKQVSFEE---LFNQPSEEINETKKPEVQIFSTDK--------- 181 Query: 768 TNEHKELDEKYQI------LNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDK 821 E ++ D+ Y I +N H +++ + + + + V+ L E + V E D Sbjct: 182 VKEPEQFDDFYSIENLTKAINPVHKTIQYDQN--DDQPFVVKRILKEQHPTKKVDELDDY 239 Query: 822 ENQTALLEYKSTIHKQEDSIKT--------LEKGLETI---LSQKK-------KAEDGIN 863 N+ LLE + + KQ D +K LE+ ++ + LS++K K +D + Sbjct: 240 NNKELLLE-NADLKKQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLL 298 Query: 864 KMGKDLF--------ALSREMQAVEENCKNLQKEKDKSNVNHQKETKSLKEDIAAKITEI 915 + +DL+ A++ V E +NL++EK + + K+ ++ ++ + Sbjct: 299 QENRDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLS-DQLDALKNKSSNVQQQLALL 357 Query: 916 KAINENLEEMKIQCNNLSKEKEHISKELVEYKSRF------QSHDNLVAKLTEKLKSLAN 969 +N + E++ Q + + + +LVE ++ F + HDN EK L N Sbjct: 358 PVLNNQINELQNQLLTAREANQRL--DLVEQENDFLKNELKKLHDNTSNDENEKYDDLLN 415 Query: 970 NYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKK 1029 Y+ + ENE+ ++ + ++ + Q I ++ E + E IE + Sbjct: 416 QYELLFDENETKFDKLQVKQQALNL---DYQKTISALKHENDVLLDE-------IEWTRS 465 Query: 1030 TISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREE--- 1086 +D T Q L EKL T N + +KI+EL + EE Sbjct: 466 KDNDFNNTKNSFEE-----------QKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSN 514 Query: 1087 --------LEAELAAYKNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQ 1138 L+ +L +NL N + KL T E+ LE E + ++ Sbjct: 515 LNTNQLVNLQQQLKDSQNLFNVAQDKLATLEEVNLALNEKIN-------DLEDELSGSEN 567 Query: 1139 QLN---SLRANLESLEKEHEDLAA---QLKKYEEQIANKERQ--------YNEEISQLND 1184 N L+A+ E L++ + L +LKK + AN++ Q N E+ + Sbjct: 568 SNNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELEKAKQ 627 Query: 1185 EITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEA 1244 ++++ EN +K++ + LE K ++ T S+ E++ L ++ ++L +N+ + Sbjct: 628 SLSASDSENNQLKQQINSLENAKKELQFTPVT-SDEHLDELETLKIEKEQLFLENQALQN 686 Query: 1245 SLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKE 1297 L ++T +IKE DE E + ++ + ++K+ K +L K+ Sbjct: 687 QLQYFNDISANQTEEIKEASDEDKPVEIKKPRIKKRDFVIQNKDDKLAKLSKK 739 Score = 75.5 bits (184), Expect = 1e-15 Identities = 123/638 (19%), Positives = 254/638 (39%), Gaps = 79/638 (12%) Query: 1137 KQQLNSLRANLESLEKEHE--DLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENE 1194 K LN L++ E+E + D ++ ++Q ++ +L + + + + + Sbjct: 85 KNVLNHYANQLKTREEEQQTVDQTMAFQEVDDQSV-LTKEIKTGFQELKPSVITAEDDKD 143 Query: 1195 SIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNL-QIKELKKKNETNEASLLESIKSV 1253 IK + + + SEE + KK E+ + ++KE ++ ++ L + Sbjct: 144 EIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTDKVKEPEQFDDFYSIENLTKAINP 203 Query: 1254 ESETVKIKELQDECNFKEKEVSELEDKLKASE--DKNSKYL-----ELQKESEKIKEELD 1306 +T++ + D+ ++ + E K E D N+K L +L+K+ + +KE + Sbjct: 204 VHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLENADLKKQIDDLKENNN 263 Query: 1307 AKTTELKIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEK-------LKNEIQ 1359 + +L+ +++ + ++ EQL+ L +E+ Sbjct: 264 DQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKPVAINPLSDEVN 323 Query: 1360 IKNQAFEKERKLLNE------GSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRS 1413 + + ++E+ LL++ S+ Q+ + L +++ LQN+ L A+E + Sbjct: 324 EELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVLNNQINELQNQL-LTAREANQ--- 379 Query: 1414 ELEKVSLSNDELLEE-KQNTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQL 1472 L+ V ND L E K+ + DE Y D + N +LL E + K D +K+Q Sbjct: 380 RLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLL--NQYELLFDENETKFDKLQVKQQ- 436 Query: 1473 RAAQESXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXTIESNETELKSSMETIRKSD 1532 ++ L +E R D Sbjct: 437 -----------------------------ALNLDYQKTISALKHENDVLLDEIEWTRSKD 467 Query: 1533 EKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAK-SGSELETVKQEL 1591 +K S EE K L + + L + + + I EL+ ++ + ++L ++Q+L Sbjct: 468 NDFNNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQL 527 Query: 1592 -------NNAQEKIRINAEENTVLKSKLEDIERELKDKQAE---IKSNQEEKELLTSRLK 1641 N AQ+K+ E N L K+ D+E EL + + Q + E+L Sbjct: 528 KDSQNLFNVAQDKLATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYG 587 Query: 1642 ELEQELDSTQQ-KAQKSEEERRAEVRKFQVEKSQLDEKAMLL---ETKYNDL---VNKEQ 1694 +L+ + + ++ K + E+ + + F+ S+L++ L +++ N L +N + Sbjct: 588 KLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLE 647 Query: 1695 AWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLK 1732 K++ T+D E+E L E + L EN L+ Sbjct: 648 NAKKELQFTPVTSDEHLDELETLKIEKEQLFLENQALQ 685 Score = 73.6 bits (179), Expect = 5e-15 Identities = 155/821 (18%), Positives = 315/821 (38%), Gaps = 120/821 (14%) Query: 796 ETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKSTIHKQEDSIKTLEKGLETILSQK 855 E E+ + + LDE T L+++++ + N K T E ++ LEK + + Sbjct: 6 ELEISDFDNELDEKTLLKELVQ---RTNNILFSPSKITAIPFERNL--LEKTFFGTVDEA 60 Query: 856 KKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSLKEDIAAKITEI 915 +K + ++ + + K L K+ DK+ +NH +E+ + + Sbjct: 61 EKEKSIVSFFNWMI------------DLKVLDKKWDKNVLNHYANQLKTREEEQQTVDQT 108 Query: 916 KAINE-------------NLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTE 962 A E +E+K +K+ I E + S + L + +E Sbjct: 109 MAFQEVDDQSVLTKEIKTGFQELKPSVITAEDDKDEIKPEATKQVS----FEELFNQPSE 164 Query: 963 KLKSLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIE-RGSIE 1021 ++ N K + + S K E + + + NL I+ + + + Q + + + Sbjct: 165 EI----NETKKPEVQIFSTDKVKEPEQFDDFYSIENLTKAINPVHKTIQYDQNDDQPFVV 220 Query: 1022 KNIEQLKKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELT 1081 K I + + +++ QI LKE ND+ + E+ Sbjct: 221 KRILKEQHPTKKVDELDDYNNKELLLENADLKKQIDDLKEN------NNDQIFDLEQEID 274 Query: 1082 KTREELEAELAAYKNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQQLN 1141 + L E + + + K + L+ + QL+ + + Sbjct: 275 DLKRRLSEEKSKHLHTKKLQDDLLQENRDLYE--------------QLQNKPVAINPLSD 320 Query: 1142 SLRANLESLEKEHEDLAAQLKKYEEQIANKERQY------NEEISQLNDEITSTQQENES 1195 + LE+L++E L+ QL + + +N ++Q N +I++L +++ + ++ N+ Sbjct: 321 EVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVLNNQINELQNQLLTAREANQR 380 Query: 1196 ---IKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKS 1252 ++++ND L+ E+K + + N K D LN Q + L +NET L Sbjct: 381 LDLVEQENDFLKNELKKLHDNTSNDENEKYD--DLLN-QYELLFDENETKFDKL-----Q 432 Query: 1253 VESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTEL 1312 V+ + + + + Q + + E L D+++ + K++ + + E+ K+ LD K L Sbjct: 433 VKQQALNL-DYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQKKALDEKLNGL 491 Query: 1313 KIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQAFEKERKLL 1372 IQ +++ + + + + L N Q K E+ L Sbjct: 492 TIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQLKDSQNLFNVAQDKLATLEEVNLAL 551 Query: 1373 NEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQNT 1432 NE KIN LEDEL +N N L AK ++ E+L+E Sbjct: 552 NE-----------KINDLEDELSGSENSNNLLAK------------LQADHEILQESYGK 588 Query: 1433 IKSLQDEILSYKDKITRNDEK---LLSIERDNKRDLESLKEQLRAAQESXXXXXXXXXXX 1489 +K+ +++ K+K+ +E+ LLS + +LE K+ L +A +S Sbjct: 589 LKTDFEKL--KKNKLNDANEQYQDLLSAFEETNSELEKAKQSL-SASDSENNQLKQQINS 645 Query: 1490 XXXXXXXXXXXXXXXXXXXXXXXTIESNETELKSSMETIRK--------SDEKLEQSKKS 1541 T++ + +L + ++ S + E+ K++ Sbjct: 646 LENAKKELQFTPVTSDEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEA 705 Query: 1542 AEED----IKNLQHEKSDLISRINESEKDIEELKSKLRIEA 1578 ++ED IK + +K D + I + + +L K RI+A Sbjct: 706 SDEDKPVEIKKPRIKKRDFV--IQNKDDKLAKLSKKERIQA 744 Score = 72.0 bits (175), Expect = 2e-14 Identities = 113/603 (18%), Positives = 238/603 (39%), Gaps = 54/603 (8%) Query: 663 KQFKKDSYFSKVDMNEDSILTPEL-----DETGLPKVYFSTYFIQLFNENIYRIRTALSH 717 KQ + F++ + PE+ D+ P+ + Y I+ + I + + + Sbjct: 151 KQVSFEELFNQPSEEINETKKPEVQIFSTDKVKEPEQFDDFYSIENLTKAINPVHKTIQY 210 Query: 718 DP-DEEP--INKISFEE-----VEKLQRQCTK-LKGEITSLQTETESTHENLTEKLIALT 768 D D++P + +I E+ V++L K L E L+ + + EN +++ L Sbjct: 211 DQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLENADLKKQIDDLKENNNDQIFDLE 270 Query: 769 NEHKELDEKYQILNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDKENQTALL 828 E +L + S H K+ L E +++ + L + L + E L Sbjct: 271 QEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKPVAINPLSDEVNEELENLK 330 Query: 829 EYKSTIHKQEDSIKTLEKGLETILSQKKKAEDGINKMGKDLFAL---SREMQAVEENCKN 885 + K+ + Q D++K ++ L+ + IN++ L ++ + VE+ Sbjct: 331 QEKALLSDQLDALKNKSSNVQQQLALLPVLNNQINELQNQLLTAREANQRLDLVEQENDF 390 Query: 886 LQKEKDKSNVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVE 945 L+ E K + N + +D+ + + +E + + + L +++ ++ + + Sbjct: 391 LKNELKKLHDNTSNDENEKYDDLLNQYELL------FDENETKFDKLQVKQQALNLDYQK 444 Query: 946 YKSRFQSHDNLVAKLTEKLKSLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKI-- 1003 S + ++++ E +S N++ + + E KA++E N +IQ LQ+KI Sbjct: 445 TISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAE 504 Query: 1004 -DSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEK 1062 + ++EK N + N++Q K +L +I+ L+++ Sbjct: 505 LEEWNEEKSNLNTNQ---LVNLQQQLKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDE 561 Query: 1063 LETATTANDENVNKISELTKTREELEAELAAYKN-----LKNELETKLETSEKALXXXXX 1117 L + +N N +++L E L+ K KN+L E + L Sbjct: 562 LSGSENSN----NLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEE 617 Query: 1118 XXXXXXXXXIQL---EKEATETKQQLNSLRANLESLE------KEHEDLAAQLKKYEEQI 1168 L + E + KQQ+NSL + L+ EH D LK +EQ+ Sbjct: 618 TNSELEKAKQSLSASDSENNQLKQQINSLENAKKELQFTPVTSDEHLDELETLKIEKEQL 677 Query: 1169 ANKERQYNEEISQLND-------EITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLK 1221 + + ++ ND EI E++ ++ K ++ +++ ++ + L Sbjct: 678 FLENQALQNQLQYFNDISANQTEEIKEASDEDKPVEIKKPRIKKRDFVIQNKDDKLAKLS 737 Query: 1222 KSE 1224 K E Sbjct: 738 KKE 740 Score = 53.5 bits (127), Expect = 6e-09 Identities = 117/649 (18%), Positives = 249/649 (38%), Gaps = 149/649 (22%) Query: 1178 EISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSE------------EQSNLKKSEI 1225 EIS ++E+ E +++ N+ L K E +++ +KS + Sbjct: 8 EISDFDNELDEKTLLKELVQRTNNILFSPSKITAIPFERNLLEKTFFGTVDEAEKEKSIV 67 Query: 1226 DALN--LQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKA 1283 N + +K L KK + N + + + +K +E + + + E++D+ Sbjct: 68 SFFNWMIDLKVLDKKWDKN-------VLNHYANQLKTREEEQQTVDQTMAFQEVDDQSVL 120 Query: 1284 SEDKNSKYLELQKE---SEKIKEELDAKTTELKIQLEKITNXXXXXXXXXXXXXXXXXXX 1340 +++ + + EL+ +E K+E+ + T+ ++ E++ N Sbjct: 121 TKEIKTGFQELKPSVITAEDDKDEIKPEATK-QVSFEELFN------------------- 160 Query: 1341 XXXRKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNE 1400 + +EE E K E+QI + KE + ++ S + ++ IN + + QN+ Sbjct: 161 ----QPSEEINETKKPEVQIFSTDKVKEPEQFDDFYSI--ENLTKAINPVHKTIQYDQND 214 Query: 1401 NELKA-----KEIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLL 1455 ++ KE T+ E +N ELL E + K + D + D+I ++++ Sbjct: 215 DQPFVVKRILKEQHPTKKVDELDDYNNKELLLENADLKKQIDDLKENNNDQIFDLEQEID 274 Query: 1456 SIER----DNKRDLESLKEQLRAAQESXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 1511 ++R + + L + K Q QE+ Sbjct: 275 DLKRRLSEEKSKHLHTKKLQDDLLQEN--------------------------------- 301 Query: 1512 XTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEK---SDLISRINESEKDIE 1568 + E ++ + E+++NL+ EK SD + + +++ Sbjct: 302 ----------RDLYEQLQNKPVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQ 351 Query: 1569 ELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKS 1628 + + L + +EL+ A +++ + +EN LK++L K+ + Sbjct: 352 QQLALLPVLNNQINELQNQLLTAREANQRLDLVEQENDFLKNEL---------KKLHDNT 402 Query: 1629 NQEEKELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYND 1688 + +E E L + E D + K K + +++A +Q S L + ND Sbjct: 403 SNDENEKYDDLLNQYELLFDENETKFDKLQVKQQALNLDYQKTISALKHE--------ND 454 Query: 1689 LVNKEQAWKRDEDT-VKKTTDSQRQEIEKLAKELDNLKAEN-------SKLKEANEDRSE 1740 ++ E W R +D T +S ++ + L ++L+ L +N ++L+E NE++S Sbjct: 455 VLLDEIEWTRSKDNDFNNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSN 514 Query: 1741 IDDLMLL-------------------VTDLDEKNAKYRSKLKDLGVEIS 1770 ++ L+ + L+E N K+ DL E+S Sbjct: 515 LNTNQLVNLQQQLKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDELS 563 >SYNE-PCC-01-000727 sll1120 Length = 1200 Score = 67.4 bits (163), Expect = 4e-13 Identities = 157/977 (16%), Positives = 374/977 (38%), Gaps = 138/977 (14%) Query: 742 LKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQILNSSHSSLKENFSILETELKN 801 L+G++T + T + ++L + +++ + + L +E I+ TEL+ Sbjct: 161 LQGDVTRIITMNSKERREIIDELAGVAEFDRKIVKTKETLTEVQDR-EERCQIIATELER 219 Query: 802 V-------RDSLDEMTQLRDVLETKDKENQTALLEYKSTIHKQEDSIKTLEKGLETILSQ 854 R ++ LR + ++K+ +++YK+ +++ LE+ E Q Sbjct: 220 TLERLAADRQKAEKYQALRQ--QVQEKQGWAKVIQYKAVEQQRQKLWGQLERDRE----Q 273 Query: 855 KKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSLKEDIAAKITE 914 ++ + AL + QA++ Q E +K N + K+L E+ E Sbjct: 274 SQQIQQ----------ALDQRSQAIQTQ----QTELEKLNA----QVKALGEE------E 309 Query: 915 IKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSLANNYKDM 974 A+ L K Q + L + +++ ++ Q + A++++ + + ++ Sbjct: 310 QLAVAAQLATQKAQRDQLQQRYNDGDRQITNHQ---QQVGQIQAEISQSQQQFLHIQQEK 366 Query: 975 QAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDL 1034 N + +E + S QL L+++ +++ E + E+ + + + QL+ + Sbjct: 367 SFHNTQTLPQLEAAVQTSQQQLEQLRHQAQAIASASEAWVQEQTQLSRTVNQLQDEL--- 423 Query: 1035 EQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREELEAELAAY 1094 Q++ L+E+ + T E +++++ EE + + Sbjct: 424 ---------------IPQRSQLAQLEERQQQLLTNLAELTPLLTKVSVELEEKQFAQGQF 468 Query: 1095 KNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQQLNSLRANLESLEKEH 1154 L ++++T L +L KE E ++QL+ L A ++ ++ Sbjct: 469 NFQGEALTSQIQTLASDLAQLEQERSLLQETQTRLLKEQQEKQRQLDKLEAASQAQQEVQ 528 Query: 1155 EDLAAQLKKYEE---------QIANKERQYNEEISQLNDEITSTQQ------ENESIKKK 1199 A ++ + Q+ E QY QL EI + + E++ + Sbjct: 529 GTYATKVILQSDLPGVCGLVAQLGQVEPQY-----QLALEIAAGGRLGFLVVEDDGVAAA 583 Query: 1200 NDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIK----ELKKKNETNEASLLESIKSVES 1255 E+ + KA ++T + ++ + NL +L + + + Sbjct: 584 GIEILKQAKAGRATFLPLNKIRPPKGQNPNLSYAHGYIDLAVNLIDGDRRYADIFAFIFG 643 Query: 1256 ETVKIKELQDECNFKEK-EVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKI 1314 T+ L + N K + LE L + S Q+ + + T E+K Sbjct: 644 NTIVFDTLVNARNHLGKHRIVTLEGDLLEASGAMSGGSRNQRSGLRFGTMVSEDTAEVKQ 703 Query: 1315 QLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQAFEKERKLLNE 1374 +++ + + E + + + E Q+ + E++ L++ Sbjct: 704 LRQRLQDIQQVQGRNEELLLERTVRSRQLTQQLME-MRQQQREAQLHGEQTERDIARLSQ 762 Query: 1375 GSSTITQE---YSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLS-NDELLEEKQ 1430 + I Q+ +K+ L+ L LQ +++ + + +L + S + + Q Sbjct: 763 QQTQINQQQINQQQKLAELQQNLALLQQSLPPLEQQLASAQQQLTALETSQTHQQWQTIQ 822 Query: 1431 NTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESXXXXXXXXXXXX 1490 I++++ E + + ++ L ++ ++R L+E++ AQE Sbjct: 823 IQIRTVEAEYQRQLQALRQGEDHLKDLQNSSQR----LEEKIAQAQEK------------ 866 Query: 1491 XXXXXXXXXXXXXXXXXXXXXXTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQ 1550 T+ + +LK ++ + + + E E + + + Sbjct: 867 -------------IAQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEAQLAKLSEKLGSTK 913 Query: 1551 HEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKS 1610 E+ L +++N +L+S+ + + +L+T +QE E T L++ Sbjct: 914 QERDRLETQLN-------QLRSQQQEQQWQWEKLQTNQQEYQ----------ENLTQLQT 956 Query: 1611 KLEDIERELKDKQAEIKSNQEEKEL---LTSRLKELEQELDSTQQKAQKSEEERRAEVRK 1667 +LE +E++L D EI Q+ E + L+ELE+ + + Q++ + E +++ Sbjct: 957 QLEALEQDLPDPWPEIPLLQDRDEANLDFANILEELERSIRNGQKRLEAMEPVNMLALQE 1016 Query: 1668 FQVEKSQLDEKAMLLET 1684 ++ +++L E + L+T Sbjct: 1017 YEKTEARLGELSEKLQT 1033 Score = 58.9 bits (141), Expect = 1e-10 Identities = 67/342 (19%), Positives = 143/342 (41%), Gaps = 40/342 (11%) Query: 875 EMQAVEENCK----NLQKEKDKSNVNHQKETK--SLKEDIA-----AKITEIKAINENLE 923 E+Q EE C+ L++ ++ + QK K +L++ + AK+ + KA+ + + Sbjct: 202 EVQDREERCQIIATELERTLERLAADRQKAEKYQALRQQVQEKQGWAKVIQYKAVEQQRQ 261 Query: 924 EMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSLANNYKDMQAENESLIK 983 ++ Q ++ + I + L + Q+ + KL ++K+L E E L Sbjct: 262 KLWGQLERDREQSQQIQQALDQRSQAIQTQQTELEKLNAQVKAL--------GEEEQLAV 313 Query: 984 AVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTXXXXXX 1043 A + + ++ Q LQ + + ++ N Q + G I+ I Q ++ ++Q Sbjct: 314 AAQLATQKA--QRDQLQQRYNDGDRQITNHQQQVGQIQAEISQSQQQFLHIQQEKSFHNT 371 Query: 1044 XX----XXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKN 1099 Q+ L+ + + +A++ V + ++L++T +L+ EL ++ Sbjct: 372 QTLPQLEAAVQTSQQQLEQLRHQAQAIASASEAWVQEQTQLSRTVNQLQDELIPQRSQLA 431 Query: 1100 ELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQ----------QLNSLRANLES 1149 +LE E ++ L ++LE++ Q Q+ +L ++L Sbjct: 432 QLE---ERQQQLLTNLAELTPLLTKVSVELEEKQFAQGQFNFQGEALTSQIQTLASDLAQ 488 Query: 1150 LEKEHEDLAAQLKKYEEQIANKERQYN--EEISQLNDEITST 1189 LE+E L + ++ K+RQ + E SQ E+ T Sbjct: 489 LEQERSLLQETQTRLLKEQQEKQRQLDKLEAASQAQQEVQGT 530 Score = 54.3 bits (129), Expect = 3e-09 Identities = 58/313 (18%), Positives = 134/313 (42%), Gaps = 40/313 (12%) Query: 1128 QLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEIT 1187 QL ++ E +QQ + + E E++ A+L + + QI ++ +++++L + Sbjct: 731 QLTQQLMEMRQQQREAQLHGEQTERD----IARLSQQQTQINQQQINQQQKLAELQQNLA 786 Query: 1188 STQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLL 1247 QQ ++++ + ++ A++++ Q + + +QI+ T EA Sbjct: 787 LLQQSLPPLEQQLASAQQQLTALETSQTHQ------QWQTIQIQIR-------TVEAEYQ 833 Query: 1248 ESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDA 1307 ++++ +K+LQ+ E+++++ ++K+ + ++ L L +E E Sbjct: 834 RQLQALRQGEDHLKDLQNSSQRLEEKIAQAQEKIAQHQAQD---LTLAQEQE-------- 882 Query: 1308 KTTELKIQLEKITNXXXXXXXXXXXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQAFEK 1367 +LKI L ++ R E QL +L+++ Q + +EK Sbjct: 883 ---QLKIALAEMNGAIQTTEAQLAKLSEKLGSTKQERDRLETQLNQLRSQQQEQQWQWEK 939 Query: 1368 ERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLE 1427 T QEY E + L+ +L L+ + EI + ++ +L +LE Sbjct: 940 --------LQTNQQEYQENLTQLQTQLEALEQDLPDPWPEIP-LLQDRDEANLDFANILE 990 Query: 1428 EKQNTIKSLQDEI 1440 E + +I++ Q + Sbjct: 991 ELERSIRNGQKRL 1003 Score = 51.2 bits (121), Expect = 3e-08 Identities = 124/683 (18%), Positives = 259/683 (37%), Gaps = 143/683 (20%) Query: 732 VEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKY------------- 778 V +LQ + + ++ L+ + NL E LT EL+EK Sbjct: 416 VNQLQDELIPQRSQLAQLEERQQQLLTNLAELTPLLTKVSVELEEKQFAQGQFNFQGEAL 475 Query: 779 ----QILNSSHSSLKENFSIL-ETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKST 833 Q L S + L++ S+L ET+ + +++ ++ QL D LE + Q Y + Sbjct: 476 TSQIQTLASDLAQLEQERSLLQETQTRLLKEQQEKQRQL-DKLEAASQAQQEVQGTYATK 534 Query: 834 IHKQED--SIKTLEKGLETILSQKKKA---------------EDGINKMGKDLFALSREM 876 + Q D + L L + Q + A +DG+ G ++ ++ Sbjct: 535 VILQSDLPGVCGLVAQLGQVEPQYQLALEIAAGGRLGFLVVEDDGVAAAGIEILKQAKAG 594 Query: 877 QAVEENCKNLQKEKDKS-NVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKE 935 +A ++ K ++ N+++ L ++ I + I + L Sbjct: 595 RATFLPLNKIRPPKGQNPNLSYAHGYIDLAVNLIDGDRRYADIFAFIFGNTIVFDTLVNA 654 Query: 936 KEHISK--------ELVEYKSRFQSHDN----------LVAKLTEKLKSLANNYKDMQ-- 975 + H+ K +L+E +V++ T ++K L +D+Q Sbjct: 655 RNHLGKHRIVTLEGDLLEASGAMSGGSRNQRSGLRFGTMVSEDTAEVKQLRQRLQDIQQV 714 Query: 976 -AENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDL 1034 NE L+ E +++ L ++ M Q++ Q+ E++I +L Sbjct: 715 QGRNEELLL-------ERTVRSRQLTQQLMEMRQQQREAQLHGEQTERDIARLS------ 761 Query: 1035 EQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREELEAELAAY 1094 + T N + +N+ +L EL+ LA Sbjct: 762 -----------------------------QQQTQINQQQINQQQKLA----ELQQNLALL 788 Query: 1095 KNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETK--QQLNSLRA---NLES 1149 + LE +L ++++ L IQ++ E + +QL +LR +L+ Sbjct: 789 QQSLPPLEQQLASAQQQLTALETSQTHQQWQTIQIQIRTVEAEYQRQLQALRQGEDHLKD 848 Query: 1150 LEKEHEDLAAQLKKYEEQIAN----------KERQYNEEISQLNDEITSTQ-------QE 1192 L+ + L ++ + +E+IA ++ Q ++++N I +T+ ++ Sbjct: 849 LQNSSQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLKIALAEMNGAIQTTEAQLAKLSEK 908 Query: 1193 NESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKS 1252 S K++ D LE ++ ++S +EQ + ++ + +E + +T +L + + Sbjct: 909 LGSTKQERDRLETQLNQLRSQQQEQ-QWQWEKLQTNQQEYQENLTQLQTQLEALEQDLPD 967 Query: 1253 VESETVKIKELQDECNFK--------EKEVSELEDKLKASEDKNSKYLELQKESEKIKEE 1304 E + + + +DE N E+ + + +L+A E N L+ +++E E Sbjct: 968 PWPE-IPLLQDRDEANLDFANILEELERSIRNGQKRLEAMEPVNMLALQEYEKTEARLGE 1026 Query: 1305 LDAK-------TTELKIQLEKIT 1320 L K TEL +++E T Sbjct: 1027 LSEKLQTIAGERTELLLRIENFT 1049 Score = 44.3 bits (103), Expect = 3e-06 Identities = 51/249 (20%), Positives = 114/249 (45%), Gaps = 39/249 (15%) Query: 1520 ELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLR-IEA 1578 EL+ ++ +++S LEQ SA++ + L+ +++ + + ++ ++R +EA Sbjct: 780 ELQQNLALLQQSLPPLEQQLASAQQQLTALE---------TSQTHQQWQTIQIQIRTVEA 830 Query: 1579 KSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKELLTS 1638 + +L+ ++Q ++ ++ + L+ K+ + ++ QA+ + +E+E L Sbjct: 831 EYQRQLQALRQ----GEDHLKDLQNSSQRLEEKIAQAQEKIAQHQAQDLTLAQEQEQLKI 886 Query: 1639 RLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYNDL--VNKEQAW 1696 L E+ + +T+ + K E K K + D LET+ N L +EQ W Sbjct: 887 ALAEMNGAIQTTEAQLAKLSE-------KLGSTKQERDR----LETQLNQLRSQQQEQQW 935 Query: 1697 KRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSEIDDLMLLVTDLDEKNA 1756 + + K T+ Q + +NL ++L+ +D + + L+ D DE N Sbjct: 936 QWE----KLQTNQQEYQ--------ENLTQLQTQLEALEQDLPDPWPEIPLLQDRDEANL 983 Query: 1757 KYRSKLKDL 1765 + + L++L Sbjct: 984 DFANILEEL 992 >SYNE-PCC-01-000943 sll1424 Length = 491 Score = 50.4 bits (119), Expect = 5e-08 Identities = 37/178 (20%), Positives = 83/178 (46%), Gaps = 10/178 (5%) Query: 1128 QLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEIT 1187 ++E E T +++ ++ L + + L++ EQ R +E++ L+ E Sbjct: 101 EIESELTAVREEQQLVQERSRELNRNYTKALQLLRRVSEQ----SRNLRQEVANLSAERA 156 Query: 1188 STQQENESIKKKNDELEGEVKAM-KSTSEEQSNLKKSE--IDALNLQIKELKKKNETNEA 1244 ++ +S+ ++ EL+ +VK + S+ Q + + E + Q++ L+K+ + EA Sbjct: 157 QLNEQKDSLLAESSELQSQVKLRDQELSKRQERIAQQEKVLARQREQVQSLEKRFASLEA 216 Query: 1245 SLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIK 1302 + + KI +L K+ ++ E+KL+ E + S LQ+E E+++ Sbjct: 217 QRQQLQAEINQRDTKIDQLDQAIAAKDNDIQAREEKLQGLETELS---FLQREVEELE 271 Score = 48.5 bits (114), Expect = 2e-07 Identities = 47/270 (17%), Positives = 119/270 (44%), Gaps = 33/270 (12%) Query: 1155 EDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGE----VKAM 1210 +D+ AQL+ + ++ Q ++ ++ E+T+ ++E + +++++ EL ++ + Sbjct: 79 DDILAQLRVAKTEL----EQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLL 134 Query: 1211 KSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFK 1270 + SE+ NL++ E+ L+ + +L NE ++ L ES ELQ + + Sbjct: 135 RRVSEQSRNLRQ-EVANLSAERAQL---NEQKDSLLAES-----------SELQSQVKLR 179 Query: 1271 EKEVSELEDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKIQLEKITNXXXXXXXXX 1330 ++E+S+ ++++ E ++ E + EK L+A+ +L+ ++ + Sbjct: 180 DQELSKRQERIAQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAI 239 Query: 1331 XXXXXXXXXXXXXRKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEY------- 1383 + E +L L+ E++ + ++ ++L + + + + Sbjct: 240 AAKDNDIQAREEKLQGLETELSFLQREVEELERYYQDYQELRGQQIAILRGQLLAFGGLR 299 Query: 1384 ---SEKINTLEDELIRLQNENELKAKEIDN 1410 SE + D+L+R N L+ + N Sbjct: 300 VVSSEAVTGAVDQLLRQANRTALQLVKTPN 329 Score = 47.8 bits (112), Expect = 3e-07 Identities = 38/212 (17%), Positives = 105/212 (49%), Gaps = 12/212 (5%) Query: 1520 ELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAK 1579 ++ + + + E+ Q+K+ E ++ ++ E+ + R E ++ + LR + Sbjct: 80 DILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLLR---R 136 Query: 1580 SGSELETVKQELNN-AQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQE---EKEL 1635 + ++QE+ N + E+ ++N +++++L ++ +++ ++K + E+ QE ++E Sbjct: 137 VSEQSRNLRQEVANLSAERAQLNEQKDSLL-AESSELQSQVKLRDQELSKRQERIAQQEK 195 Query: 1636 LTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQA 1695 + +R +E Q L+ + ++ +AE+ + + QLD+ + K ND+ +E+ Sbjct: 196 VLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQ---AIAAKDNDIQAREEK 252 Query: 1696 WKRDEDTVKKTTDSQRQEIEKLAKELDNLKAE 1727 + E T + +E+E+ ++ L+ + Sbjct: 253 LQGLE-TELSFLQREVEELERYYQDYQELRGQ 283 Score = 46.2 bits (108), Expect = 9e-07 Identities = 46/230 (20%), Positives = 104/230 (45%), Gaps = 45/230 (19%) Query: 726 KISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQILNSSH 785 +++ E+E+ + +++ E+T+++ E + E E N K L ++ S Sbjct: 86 RVAKTELEQASQAKEEIESELTAVREEQQLVQERSRE---LNRNYTKALQLLRRVSEQSR 142 Query: 786 SSLKE--NFSILETELKNVRDSL-DEMTQLRDVLETKDKE---NQTALLEYKSTIHKQED 839 + +E N S +L +DSL E ++L+ ++ +D+E Q + + + + +Q + Sbjct: 143 NLRQEVANLSAERAQLNEQKDSLLAESSELQSQVKLRDQELSKRQERIAQQEKVLARQRE 202 Query: 840 SIKTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQK 899 +++LEK ++ +Q+++ + IN Q+ Sbjct: 203 QVQSLEKRFASLEAQRQQLQAEIN----------------------------------QR 228 Query: 900 ETK--SLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYK 947 +TK L + IAAK +I+A E L+ ++ + + L +E E + + +Y+ Sbjct: 229 DTKIDQLDQAIAAKDNDIQAREEKLQGLETELSFLQREVEELERYYQDYQ 278 Score = 46.2 bits (108), Expect = 9e-07 Identities = 43/224 (19%), Positives = 102/224 (45%), Gaps = 36/224 (16%) Query: 1055 QISLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLETSEKALXX 1114 Q+ + K +LE A+ A +E SELT REE + + L L+ + Sbjct: 84 QLRVAKTELEQASQAKEEIE---SELTAVREEQQLVQERSRELNRNYTKALQLLRR---- 136 Query: 1115 XXXXXXXXXXXXIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQ 1174 + +++ +Q++ +L A L ++ + L A+ + + Q+ ++ Sbjct: 137 --------------VSEQSRNLRQEVANLSAERAQLNEQKDSLLAESSELQSQVKLRD-- 180 Query: 1175 YNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNLQIKE 1234 +E+S+ + I Q+ + + ++ ++++ K S ++ L ++EI+ + +I + Sbjct: 181 --QELSKRQERIA---QQEKVLARQREQVQSLEKRFASLEAQRQQL-QAEINQRDTKIDQ 234 Query: 1235 LKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELE 1278 L + ++ +++ K++ L+ E +F ++EV ELE Sbjct: 235 L-------DQAIAAKDNDIQAREEKLQGLETELSFLQREVEELE 271 >MJAN-DSM-01-001277 MJ1254 hypothetical protein Length = 469 Score = 48.5 bits (114), Expect = 2e-07 Identities = 44/196 (22%), Positives = 93/196 (47%), Gaps = 31/196 (15%) Query: 1538 SKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQELNNAQEK 1597 SK+ E KN+++E + L +++ E E++I+ L K++ ++ +L+ A + Sbjct: 274 SKRKIIERTKNIKNELTSLKNKLKEKEEEIKNLAIKIK----------DLEDKLSKANKN 323 Query: 1598 IRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQQK---- 1653 + E +VL ++ + E +++ E +E+ E L ++ L++E D + K Sbjct: 324 LLNKDEIISVLNERISEYESQIQKLLDENIIYKEKIESLNKYIETLKKENDKLKDKVREL 383 Query: 1654 ---AQKSEEERRAEVRKFQVEKSQLDEKAML-LETKYNDLVNKEQAWKRDEDTVKKTTDS 1709 A+K EE+R + F E DEK ++ L K+ + KE + + T Sbjct: 384 SDIAKKYMEEKRGVLWSFLTE----DEKIIIDLIKKHGHITQKE---------IVEITGM 430 Query: 1710 QRQEIEKLAKELDNLK 1725 + ++ ++ EL++ K Sbjct: 431 SKPKVSRIISELEDRK 446 Score = 43.5 bits (101), Expect = 6e-06 Identities = 32/119 (26%), Positives = 58/119 (48%), Gaps = 17/119 (14%) Query: 1633 KELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYNDLVNK 1692 K + R K ++ EL S + K ++ EEE ++ ++ L++K L +L+NK Sbjct: 275 KRKIIERTKNIKNELTSLKNKLKEKEEE----IKNLAIKIKDLEDK---LSKANKNLLNK 327 Query: 1693 EQAWK-------RDEDTVKKTTDSQ---RQEIEKLAKELDNLKAENSKLKEANEDRSEI 1741 ++ E ++K D +++IE L K ++ LK EN KLK+ + S+I Sbjct: 328 DEIISVLNERISEYESQIQKLLDENIIYKEKIESLNKYIETLKKENDKLKDKVRELSDI 386 >SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817, reverse complement Length = 1336 Score = 47.4 bits (111), Expect = 4e-07 Identities = 64/247 (25%), Positives = 105/247 (42%), Gaps = 32/247 (12%) Query: 1515 ESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKL 1574 + E EL+ E R +K E K EE+ + Q E+ + ++ + + EE K ++ Sbjct: 336 QQEEAELRRLEEQKRLQLQK-ENEMKRLEEERRIKQEERKRQMELEHQRQLEEEERKRQM 394 Query: 1575 RIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKE 1634 +EAK EL+ +Q EE LK EREL EI+ Q E+E Sbjct: 395 ELEAKKQMELKRQRQ------------FEEEQRLKK-----EREL----LEIQRKQREQE 433 Query: 1635 LLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQ 1694 RLK+ EQE + +++ +KS+ + Q ++D LLE L + + Sbjct: 434 -TAERLKKEEQEALAKKEEEEKSKRNKVDNESYTQEINGKVDN---LLEDLNAVLAEETE 489 Query: 1695 AWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSEIDDLMLLVT----- 1749 ++ S + ++L K L+ K E+ + N+ S D++ L T Sbjct: 490 TTPTMQNGTYVPERSTARAHDQLKKPLNIAKVESLGGSDLNDSISLSDEIAGLNTSNLSG 549 Query: 1750 -DLDEKN 1755 D DEKN Sbjct: 550 EDQDEKN 556 >SYNE-PCC-01-001071 sll1583 Length = 562 Score = 46.6 bits (109), Expect = 7e-07 Identities = 81/428 (18%), Positives = 175/428 (40%), Gaps = 72/428 (16%) Query: 914 EIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSLANNYKD 973 +++ + ++L+ ++ N E+ +++ +Q+ + +VA L +L +Y D Sbjct: 76 KLRRLEKDLQSVQASLENALAERNQLTEN-------YQAQEKMVAALQHQLA----HYDD 124 Query: 974 MQAEN-ESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTIS 1032 +Q+E L K +E E++ L+ ++ +++ + ++ S+ +QL +S Sbjct: 125 IQSEKFVGLQKLNQELLQENTNLSDRLKQAVNEVAETRPKL-VQLNSLVTRNQQLSDQLS 183 Query: 1033 DLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREELEAELA 1092 +EQ Q ++ + + E ++ +LT R++++ EL Sbjct: 184 YVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWE--EQVRQLTAERDQVQQELQ 241 Query: 1093 AYKNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQQLNSLRANLESLEK 1152 + +T+ E + AL +L ++ + + + + L A L LE+ Sbjct: 242 TARQQSQSAQTQAENLQAALD--------------RLGQQEEQWQGERSQLTAKLNQLEE 287 Query: 1153 EHEDLA---AQLK-KYEEQIANKERQYNEE------ISQLNDEITSTQQE----NESIKK 1198 ++LA A+LK K E A +R E+ + ++T QQE E++ K Sbjct: 288 AQKELALANAELKVKLETTQAEGDRLKTEKKEQAAALQSAQGQVTQLQQELAALQENLAK 347 Query: 1199 KNDELEGEV----KAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVE 1254 E EV KA+ +T+ Q S + +++K+ ES KSV+ Sbjct: 348 AKGEPPSEVPEKTKAV-ATAPAQEAPVVSPSPPVTVEVKQ-------------ESPKSVQ 393 Query: 1255 SETVK-----------IKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKE 1303 +E V+ + + + +K ++ D++ E+K K +E + + K Sbjct: 394 AEKVEPEPEPTPVPPAAQATKAPASPAKKSTAKAVDEVLDQEEKQVKAVEKTEPPRENKT 453 Query: 1304 ELDAKTTE 1311 T+E Sbjct: 454 VAPVATSE 461 Score = 45.4 bits (106), Expect = 2e-06 Identities = 52/261 (19%), Positives = 112/261 (42%), Gaps = 37/261 (14%) Query: 1514 IESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSK 1573 +E + +++S+E +L ++ ++ E+ + LQH +L Sbjct: 80 LEKDLQSVQASLENALAERNQLTENYQAQEKMVAALQH-----------------QLAHY 122 Query: 1574 LRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEK 1633 I+++ L+ + QEL +ENT L +L+ E+ AE + + Sbjct: 123 DDIQSEKFVGLQKLNQEL----------LQENTNLSDRLKQAVNEV----AETRPKLVQL 168 Query: 1634 ELLTSRLKELEQELDSTQQKAQKSEEERRAEVRKF-----QVEKSQLDEKAMLLETKYND 1688 L +R ++L +L +Q K+ E+R A K + E++Q + +A E + Sbjct: 169 NSLVTRNQQLSDQLSYVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQ 228 Query: 1689 LVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLK-EANEDRSEIDDLMLL 1747 L + +++ T ++ + S + + E L LD L + + + E ++ ++++ L Sbjct: 229 LTAERDQVQQELQTARQQSQSAQTQAENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEA 288 Query: 1748 VTDLDEKNAKYRSKLKDLGVE 1768 +L NA+ + KL+ E Sbjct: 289 QKELALANAELKVKLETTQAE 309 >MGEN-G37-01-000317 MG312 cytadherence accessory protein (hmw1) Length = 1139 Score = 44.7 bits (104), Expect = 3e-06 Identities = 107/569 (18%), Positives = 219/569 (38%), Gaps = 66/569 (11%) Query: 750 QTETESTHENLTEKLIALTNEHKELDEKYQILNSSHSSLK---ENFSILETELKNVRDSL 806 Q E+ + + L T + LD+ Q H LK E + + V+ +L Sbjct: 544 QPESTTDSYSFDSDLPQPTLDQPSLDDHVQYNFDHHEELKPVAEEQNNYQVGFDQVQANL 603 Query: 807 DEMTQLRDVLE---TKDKENQTALL--EYKSTIHKQEDSIKTLEKGLETILSQKKKAEDG 861 D +++ E T D E++ A + Y+ I + T ET + D Sbjct: 604 DNNEEIQPTAEKEVTTDFESKQAQVVDSYQLPIDTDQQDQTTFSSSFET--QPTVEQFDQ 661 Query: 862 INKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSLKEDIAAKITEIKA---- 917 +N D F + V E+ N Q + SN + + ++ D IT K+ Sbjct: 662 VNSEVNDQFKPEITKEPVLESSFNKQDVVETSNYTNNLQKFDIQSDNKITITTKKSSPQI 721 Query: 918 --------INENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSL-- 967 ++ +E ++ L+ + + +E + S + L L+ +L+ + Sbjct: 722 PTTLPISFVSNRIEYKPVE--TLALDNKESQQEQITINSITEDSKTLAKTLSVQLQQINS 779 Query: 968 ANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQL 1027 NN + +E+ L K ++ +++ + Q KI+ + KE + E +I Q Sbjct: 780 LNNQSIVTSESVRLDKK-DDQLTINTVNSEDQQPKIEVFVKAKEPVE------EHSITQN 832 Query: 1028 KKTISDLEQTXXXXXXXXXXXXXXXXXQISLLKEKLETATTANDENVNKISELTKTREEL 1087 K+++ D + IS LK E T N + + ++++ + ++ Sbjct: 833 KQSVEDKSELDNFNKKSDLYKI------ISELKRG-ELNPTINFDAIFQMNDYQMSVKQS 885 Query: 1088 EAELAAY-KNLKNELETKLETSEKALXXXXXXXXXXXXXXIQLEKEATETKQQLNSLRAN 1146 L + N KN++ + +K L +L + Q N+ + N Sbjct: 886 FIHLNDFVTNYKNQISERYLIIKKELQSELS----------RLIDQNENLNVQFNNAK-N 934 Query: 1147 LESLEKEH--EDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELE 1204 L +L+KE LA+ IA K E++ + + + Q+ +KK + ++ Sbjct: 935 LTTLQKEEMIRSLASDFA-----IAYKPSNSYEQLQKSGEIMRHVQRAITENEKKIESIQ 989 Query: 1205 GEVKAMKSTSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQ 1264 G +K +K+ + I+ L+ ++ KK+ + S +S+ ++ V+ +L Sbjct: 990 GSLKQLKTVYNSCCETIMNNINKLDNTLRFAKKEKDPLLLSNFDSV--TDNGLVEPNQLM 1047 Query: 1265 DEC-----NFKEKEVSELEDKLKASEDKN 1288 D+ F +L+D + + D+N Sbjct: 1048 DDLIDFSNTFDNISNEQLDDFIYENMDRN 1076 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.308 0.127 0.326 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 172,584 Number of Sequences: 78 Number of extensions: 9622 Number of successful extensions: 809 Number of sequences better than 1.0e-05: 12 Number of HSP's better than 0.0 without gapping: 3 Number of HSP's successfully gapped in prelim test: 10 Number of HSP's that attempted gapping in prelim test: 99 Number of HSP's gapped (non-prelim): 122 length of query: 1790 length of database: 48,235 effective HSP length: 76 effective length of query: 1714 effective length of database: 42,307 effective search space: 72514198 effective search space used: 72514198 T: 11 A: 40 X1: 16 ( 7.1 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.6 bits) S2: 99 (42.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-000850 ORFP:YDL101C DUN1, Chr IV from 280306-281847, reverse complement (513 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-000850 ORFP:YDL101C DUN1, Chr IV from 280306-281847... 977 0.0 SYNE-PCC-01-001777 slr0599 52 3e-09 SCER-S28-01-000320 ORFP:YBR059C AKL1, Chr II from 356820-360146... 50 2e-08 >SCER-S28-01-000850 ORFP:YDL101C DUN1, Chr IV from 280306-281847, reverse complement Length = 513 Score = 977 bits (2526), Expect = 0.0 Identities = 489/513 (95%), Positives = 489/513 (95%) Query: 1 MSLSTKREHSGDVTDSSFKRQQRSNKPSSEYTCLGHLVNLIPGKEQKVEITNRNVTTIGR 60 MSLSTKREHSGDVTDSSFKRQQRSNKPSSEYTCLGHLVNLIPGKEQKVEITNRNVTTIGR Sbjct: 1 MSLSTKREHSGDVTDSSFKRQQRSNKPSSEYTCLGHLVNLIPGKEQKVEITNRNVTTIGR 60 Query: 61 SRSCDVILSEPDISTFHAEFHLLQMDVDNFQRNLINVIDKSRNGTFINGNRLVKKDYILK 120 SRSCDVILSEPDISTFHAEFHLLQMDVDNFQRNLINVIDKSRNGTFINGNRLVKKDYILK Sbjct: 61 SRSCDVILSEPDISTFHAEFHLLQMDVDNFQRNLINVIDKSRNGTFINGNRLVKKDYILK 120 Query: 121 NGDRIVFGKSCSFLFKYASSSSTDIENDDEKVSSESRSYKNDDEVFKKPQIXXXXXXXXX 180 NGDRIVFGKSCSFLFKYASSSSTDIENDDEKVSSESRSYKNDDEVFKKPQI Sbjct: 121 NGDRIVFGKSCSFLFKYASSSSTDIENDDEKVSSESRSYKNDDEVFKKPQISATSSQNAT 180 Query: 181 XXXXIRKLNKTRPVSFFDKYLLGKELGAGHYALVKEAKNKKTGQQVAVKIFHAXXXXXXX 240 IRKLNKTRPVSFFDKYLLGKELGAGHYALVKEAKNKKTGQQVAVKIFHA Sbjct: 181 TSAAIRKLNKTRPVSFFDKYLLGKELGAGHYALVKEAKNKKTGQQVAVKIFHAQQNDDQK 240 Query: 241 XXXXFREETNILMRVQHPNIVNLLDSFVEPISKSQIQKYLVLEKIDDGELFERIVRKTCL 300 FREETNILMRVQHPNIVNLLDSFVEPISKSQIQKYLVLEKIDDGELFERIVRKTCL Sbjct: 241 KNKQFREETNILMRVQHPNIVNLLDSFVEPISKSQIQKYLVLEKIDDGELFERIVRKTCL 300 Query: 301 RQDESKALFKQLLTGLKYLHEQNIIHRDIKPENILLNITRRENPSQVQLGPWDEDEIDIQ 360 RQDESKALFKQLLTGLKYLHEQNIIHRDIKPENILLNITRRENPSQVQLGPWDEDEIDIQ Sbjct: 301 RQDESKALFKQLLTGLKYLHEQNIIHRDIKPENILLNITRRENPSQVQLGPWDEDEIDIQ 360 Query: 361 VKIADFGLAKFTGEMQFTNTLCGTPSYVAPEVLTKKGYTSKVDLWSAGVILYVCLCGFPP 420 VKIADFGLAKFTGEMQFTNTLCGTPSYVAPEVLTKKGYTSKVDLWSAGVILYVCLCGFPP Sbjct: 361 VKIADFGLAKFTGEMQFTNTLCGTPSYVAPEVLTKKGYTSKVDLWSAGVILYVCLCGFPP 420 Query: 421 FSDQLGPPSLKEQILQAKYAFYSPYWDKIDDSVLHLISNLLVLNPDERYNIDEALNHPWF 480 FSDQLGPPSLKEQILQAKYAFYSPYWDKIDDSVLHLISNLLVLNPDERYNIDEALNHPWF Sbjct: 421 FSDQLGPPSLKEQILQAKYAFYSPYWDKIDDSVLHLISNLLVLNPDERYNIDEALNHPWF 480 Query: 481 NDIQQQSSVSLELQRLQITDNKIPKTYSELSCL 513 NDIQQQSSVSLELQRLQITDNKIPKTYSELSCL Sbjct: 481 NDIQQQSSVSLELQRLQITDNKIPKTYSELSCL 513 >SYNE-PCC-01-001777 slr0599 Length = 535 Score = 52.4 bits (124), Expect = 3e-09 Identities = 62/227 (27%), Positives = 93/227 (40%), Gaps = 41/227 (18%) Query: 257 HPNIVNLLDSFVEPISKSQIQKYLVLEKIDDGELFERIVRKTCLRQDESKALFKQLLTGL 316 HP I L F E YLV E I L + +K + L +L L Sbjct: 76 HPQIPQLYAYFSEGEDF-----YLVQEWIPGLTLTQAHAQKGNFSSTAVEELLLGILPVL 130 Query: 317 KYLHEQNIIHRDIKPENILLNITRRENPSQVQLGPWDEDEIDIQVKIADFGLAKFT---- 372 +++H++ IIHRDIKP+NI+L E D + + DFG+ K T Sbjct: 131 EFIHQRRIIHRDIKPDNIILR------------------EADGKPILIDFGIIKETMGTL 172 Query: 373 ----GEMQFTNTLCGTPSYVAPEVLTKKGYTSKVDLWSAGVILYVCLCGFPPFSDQLGPP 428 G ++ L GTP Y+A E + S DL+S G+ L G P L Sbjct: 173 VNPDGRSAYSVAL-GTPGYMASEQAAGRPVFSS-DLYSLGLTAIFLLTGKTP--QYLTSD 228 Query: 429 SLKEQILQAKYAFYSPYWDKIDDSVLHLISNLLVLNPDERYNIDEAL 475 S +IL + A ++ ++ +I + +P ER+N A+ Sbjct: 229 SRTGEILWRQGA------PQVSPTLAKVIDQAVRYHPRERFNSATAM 269 >SCER-S28-01-000320 ORFP:YBR059C AKL1, Chr II from 356820-360146, reverse complement Length = 1108 Score = 49.7 bits (117), Expect = 2e-08 Identities = 61/243 (25%), Positives = 109/243 (44%), Gaps = 29/243 (11%) Query: 246 REETNILMRVQH-PNIVNLLDSFVEPISKSQIQKY---LVLEKIDDGELFERIVRK--TC 299 R E ++ +++ PNIV DS + +Q + L++E + L + + ++ T Sbjct: 92 RNEVEVMKKLKGAPNIVQYFDSNASR-RRDGVQGFEVLLLMELCPNKSLLDYMNQRLSTK 150 Query: 300 LRQDESKALFKQLLTGLKYLH--EQNIIHRDIKPENILLNITRRENPSQVQLGPWDEDEI 357 L + E + + + +H ++IHRDIK EN+L+ + + +L + Sbjct: 151 LTEAEIVKIMYDVALSISQMHYLPVSLIHRDIKIENVLV-----DAKNNFKLADFGSTST 205 Query: 358 DIQVKIADFGLAKFTGEMQFTNTLCGTPSYVAPEVLTK---KGYTSKVDLWSAGVILYVC 414 + +A T + + +T TP Y +PE++ K D+W+ GV LY Sbjct: 206 CFPIVTTHQDIALLTQNI-YVHT---TPQYRSPEMIDLYRCLPINEKSDIWALGVFLYKL 261 Query: 415 LCGFPPFSDQLGPPSLKEQILQAKYAFYSPYWDKIDDSVLHLISNLLVLNPDERYNIDEA 474 L PF + G + IL +KY F +K +++LI +L NP+ R NI + Sbjct: 262 LFFTTPF-EMTG----QFAILHSKYEFPV---NKYSSKLINLIIIMLAENPNLRPNIYQV 313 Query: 475 LNH 477 L H Sbjct: 314 LYH 316 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.318 0.136 0.391 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 47,870 Number of Sequences: 78 Number of extensions: 2050 Number of successful extensions: 13 Number of sequences better than 1.0e-05: 3 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 2 Number of HSP's that attempted gapping in prelim test: 11 Number of HSP's gapped (non-prelim): 3 length of query: 513 length of database: 48,235 effective HSP length: 67 effective length of query: 446 effective length of database: 43,009 effective search space: 19182014 effective search space used: 19182014 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.7 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-001230 ORFP:YDR213W UPC2, Chr IV from 889743-892484 (913 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-001230 ORFP:YDR213W UPC2, Chr IV from 889743-892484 1067 0.0 >SCER-S28-01-001230 ORFP:YDR213W UPC2, Chr IV from 889743-892484 Length = 913 Score = 1067 bits (2760), Expect = 0.0 Identities = 545/560 (97%), Positives = 545/560 (97%) Query: 354 PNDEEGGVQEENSKKVKEGPLQSQTSETTLNSDAATLQADAXXXXXXXXXXXXXXXTFPT 413 PNDEEGGVQEENSKKVKEGPLQSQTSETTLNSDAATLQADA TFPT Sbjct: 354 PNDEEGGVQEENSKKVKEGPLQSQTSETTLNSDAATLQADALSQLSKMGLSLKSLSTFPT 413 Query: 414 AGIGGVSYDFQELLGIKFPINNGNSRATKASNAEEALANMQEHHERAAASVKENDGQLSD 473 AGIGGVSYDFQELLGIKFPINNGNSRATKASNAEEALANMQEHHERAAASVKENDGQLSD Sbjct: 414 AGIGGVSYDFQELLGIKFPINNGNSRATKASNAEEALANMQEHHERAAASVKENDGQLSD 473 Query: 474 TKSPAPSNNAQGGSASIMEPQAADAVSTMAPISMIERNMNRNSNISPSTPSAVLNDRQEM 533 TKSPAPSNNAQGGSASIMEPQAADAVSTMAPISMIERNMNRNSNISPSTPSAVLNDRQEM Sbjct: 474 TKSPAPSNNAQGGSASIMEPQAADAVSTMAPISMIERNMNRNSNISPSTPSAVLNDRQEM 533 Query: 534 QDSISSLGNLTKAALENNEPTISLQTSQTENEDDASRQDMTSKINNEADRSSVSAGTSNI 593 QDSISSLGNLTKAALENNEPTISLQTSQTENEDDASRQDMTSKINNEADRSSVSAGTSNI Sbjct: 534 QDSISSLGNLTKAALENNEPTISLQTSQTENEDDASRQDMTSKINNEADRSSVSAGTSNI 593 Query: 594 AKLLDLSTKGNLNLIDMKLFHHYCTKVWPTITAAKVSGPEIWRDYIPELAFDYPFLMHAL 653 AKLLDLSTKGNLNLIDMKLFHHYCTKVWPTITAAKVSGPEIWRDYIPELAFDYPFLMHAL Sbjct: 594 AKLLDLSTKGNLNLIDMKLFHHYCTKVWPTITAAKVSGPEIWRDYIPELAFDYPFLMHAL 653 Query: 654 LAFSATHLSRTETGLEQYVSSHRLDALRLLREAVLEISENNTDALVASALILIMDSLANA 713 LAFSATHLSRTETGLEQYVSSHRLDALRLLREAVLEISENNTDALVASALILIMDSLANA Sbjct: 654 LAFSATHLSRTETGLEQYVSSHRLDALRLLREAVLEISENNTDALVASALILIMDSLANA 713 Query: 714 SGNGTVGNQSLNSMSPSAWIFHVKGAATILTAVWPLSERSKFHNIISVDLSDLGDVINPD 773 SGNGTVGNQSLNSMSPSAWIFHVKGAATILTAVWPLSERSKFHNIISVDLSDLGDVINPD Sbjct: 714 SGNGTVGNQSLNSMSPSAWIFHVKGAATILTAVWPLSERSKFHNIISVDLSDLGDVINPD 773 Query: 774 VGTITELVCFDESIADLYPVGLDSPYLITLAYLDKLHREKNQGDFILRVFTFPALLDKTF 833 VGTITELVCFDESIADLYPVGLDSPYLITLAYLDKLHREKNQGDFILRVFTFPALLDKTF Sbjct: 774 VGTITELVCFDESIADLYPVGLDSPYLITLAYLDKLHREKNQGDFILRVFTFPALLDKTF 833 Query: 834 LALLMTGDLGAMRIMRSYYKLLRGFATEVKDKVWFLEGVTQVLPQDVDEYSGGGGMHMML 893 LALLMTGDLGAMRIMRSYYKLLRGFATEVKDKVWFLEGVTQVLPQDVDEYSGGGGMHMML Sbjct: 834 LALLMTGDLGAMRIMRSYYKLLRGFATEVKDKVWFLEGVTQVLPQDVDEYSGGGGMHMML 893 Query: 894 DFLGGGLPSMTTTNFSDFSL 913 DFLGGGLPSMTTTNFSDFSL Sbjct: 894 DFLGGGLPSMTTTNFSDFSL 913 Score = 478 bits (1231), Expect = e-137 Identities = 239/288 (82%), Positives = 239/288 (82%) Query: 1 MSEVGIQNHKKAVTKPRRREKVIELIEVDGKKVSTTSTGKRKFHNKSKNGCDNCKRRRVK 60 MSEVGIQNHKKAVTKPRRREKVIELIEVDGKKVSTTSTGKRKFHNKSKNGCDNCKRRRVK Sbjct: 1 MSEVGIQNHKKAVTKPRRREKVIELIEVDGKKVSTTSTGKRKFHNKSKNGCDNCKRRRVK 60 Query: 61 CDEGKPACRKCTNMKLECQYTPIHLRKGRGATVVKYVTRKADGSVESDSSVDLPPTIKKE 120 CDEGKPACRKCTNMKLECQYTPIHLRKGRGATVVKYVTRKADGSVESDSSVDLPPTIKKE Sbjct: 61 CDEGKPACRKCTNMKLECQYTPIHLRKGRGATVVKYVTRKADGSVESDSSVDLPPTIKKE 120 Query: 121 QTPFNDIQSAVKASGSSNDSFPXXXXXXXXXXXXXXXXPIEDKNNMTPLSMGLQGTINKK 180 QTPFNDIQSAVKASGSSNDSFP PIEDKNNMTPLSMGLQGTINKK Sbjct: 121 QTPFNDIQSAVKASGSSNDSFPSSASTTKSESEEKSSAPIEDKNNMTPLSMGLQGTINKK 180 Query: 181 DMMNNFFSQNGTIGFGSPERLNSGIDGLLLPPLPSGNMGAFXXXXXXXXXXXXXXXXXXX 240 DMMNNFFSQNGTIGFGSPERLNSGIDGLLLPPLPSGNMGAF Sbjct: 181 DMMNNFFSQNGTIGFGSPERLNSGIDGLLLPPLPSGNMGAFQLQQQQQVQQQSQPQTQAQ 240 Query: 241 XASGTPNERYGSFDLAGSPALQSTXXXXXXXXXXXXXCNRIPSGQNYT 288 ASGTPNERYGSFDLAGSPALQST CNRIPSGQNYT Sbjct: 241 QASGTPNERYGSFDLAGSPALQSTGMSLSNSLSGMLLCNRIPSGQNYT 288 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.313 0.130 0.368 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 75,010 Number of Sequences: 78 Number of extensions: 3122 Number of successful extensions: 19 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 16 Number of HSP's gapped (non-prelim): 2 length of query: 913 length of database: 48,235 effective HSP length: 71 effective length of query: 842 effective length of database: 42,697 effective search space: 35950874 effective search space used: 35950874 T: 11 A: 40 X1: 16 ( 7.2 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.9 bits) S2: 97 (42.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 (875 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 1602 0.0 SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 122 5e-30 MGEN-G37-01-000335 MG328 conserved hypothetical protein 87 2e-19 MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) 86 5e-19 SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 79 4e-17 MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil pro... 75 6e-16 SYNE-PCC-01-001071 sll1583 53 5e-09 SYNE-PCC-01-000943 sll1424 51 2e-08 MGEN-G37-01-000317 MG312 cytadherence accessory protein (hmw1) 48 1e-07 SYNE-PCC-01-000727 sll1120 46 4e-07 MJAN-DSM-01-001277 MJ1254 hypothetical protein 45 7e-07 >SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 Length = 875 Score = 1602 bits (4148), Expect = 0.0 Identities = 832/875 (95%), Positives = 832/875 (95%) Query: 1 MSNFFRDSSMGFKPRPNIFAKLRVRDVDSDSSANTVVENSSNCLDVGSSIEGDDTFKKPH 60 MSNFFRDSSMGFKPRPNIFAKLRVRDVDSDSSANTVVENSSNCLDVGSSIEGDDTFKKPH Sbjct: 1 MSNFFRDSSMGFKPRPNIFAKLRVRDVDSDSSANTVVENSSNCLDVGSSIEGDDTFKKPH 60 Query: 61 KTSTEQELITSMSLSQRNHGYSDDMEIGSPKKTTSTDQYNRILKNDVAAIENDTDEDFEI 120 KTSTEQELITSMSLSQRNHGYSDDMEIGSPKKTTSTDQYNRILKNDVAAIENDTDEDFEI Sbjct: 61 KTSTEQELITSMSLSQRNHGYSDDMEIGSPKKTTSTDQYNRILKNDVAAIENDTDEDFEI 120 Query: 121 TEVREVSEGVAKETKESHGDPNDSETTLKDSKMHEYTMTNGKAPLHXXXXXXXXXXXDVL 180 TEVREVSEGVAKETKESHGDPNDSETTLKDSKMHEYTMTNGKAPLH DVL Sbjct: 121 TEVREVSEGVAKETKESHGDPNDSETTLKDSKMHEYTMTNGKAPLHTSINNSSTSSNDVL 180 Query: 181 LEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQERI 240 LEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQERI Sbjct: 181 LEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQERI 240 Query: 241 ATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKKG 300 ATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKKG Sbjct: 241 ATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKKG 300 Query: 301 KEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQFNKF 360 KEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQFNKF Sbjct: 301 KEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQFNKF 360 Query: 361 EERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSS 420 EERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSS Sbjct: 361 EERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSS 420 Query: 421 KDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYA 480 KDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYA Sbjct: 421 KDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYA 480 Query: 481 SLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEA 540 SLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEA Sbjct: 481 SLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEA 540 Query: 541 KNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKA 600 KNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKA Sbjct: 541 KNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKA 600 Query: 601 LVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQ 660 LVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQ Sbjct: 601 LVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQ 660 Query: 661 NRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKNL 720 NRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKNL Sbjct: 661 NRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKNL 720 Query: 721 QQKVQSXXXXXXXXXXXXXXXXNHKRNEPSKKGTQNFTKPSDSPKKNATTSNLFPNNSAA 780 QQKVQS NHKRNEPSKKGTQNFTKPSDSPKKNATTSNLFPNNSAA Sbjct: 721 QQKVQSQKRELEQKIKELEEIKNHKRNEPSKKGTQNFTKPSDSPKKNATTSNLFPNNSAA 780 Query: 781 IHSPMKKCPKVDHISKSRINSSKETSKXXXXXXXXXXXXXXXXLTNPSPIQIKPVRGKIK 840 IHSPMKKCPKVDHISKSRINSSKETSK LTNPSPIQIKPVRGKIK Sbjct: 781 IHSPMKKCPKVDHISKSRINSSKETSKFNDEFDLSSSSNDDLELTNPSPIQIKPVRGKIK 840 Query: 841 KGSNCMKPPISSRKKLLLVEDEDQSLKISKKRRRK 875 KGSNCMKPPISSRKKLLLVEDEDQSLKISKKRRRK Sbjct: 841 KGSNCMKPPISSRKKLLLVEDEDQSLKISKKRRRK 875 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 122 bits (306), Expect = 5e-30 Identities = 145/660 (21%), Positives = 288/660 (43%), Gaps = 73/660 (11%) Query: 103 LKNDVAAIENDTDEDFE-ITEVREVSEGVAKETKESHGDPNDSETTLKDS-KMHEYTMTN 160 LK ++ +++ +T+ E +TE KE E + N S ++LK++ + E + N Sbjct: 742 LKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQILNSSHSSLKENFSILETELKN 801 Query: 161 GKAPLHXXXXXXXXXXXDVLLEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNSD 220 + L DVL Q K + KQ+ L+ L++ S Sbjct: 802 VRDSLDEMTQLR-----DVLETKDKENQTALLEYKSTIHKQEDSIKTLEKGLETILSQKK 856 Query: 221 KINEKVGKYKSCL-------ETLQERIATLTSHKN----NQETKLKDLRQNHQLYQRRIS 269 K + + K L + ++E L K+ N + + K L+++ I Sbjct: 857 KAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSLKEDIAAKITEIK 916 Query: 270 GFKTSIENLNKTINDLGKNKKEADAELMKKGKEIEYLKR--ELDDCSGQLSEEKIKNSSL 327 ++E + N+L K K+ EL +EY R D+ +L+E+ ++ Sbjct: 917 AINENLEEMKIQCNNLSKEKEHISKEL------VEYKSRFQSHDNLVAKLTEKLKSLANN 970 Query: 328 IQEMGKNREEMIKSIENFFSEDKAHHLLQFNKFEERVHDLFEKK---------LQKHFDV 378 ++M E +IK++E E K +Q + + ++ + ++K ++K+ + Sbjct: 971 YKDMQAENESLIKAVE----ESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQ 1026 Query: 379 AKDTLNVGLRNTTVELSSNTETMLKQQYED----IKENLEQKMSSSKDEMAKTINELSVT 434 K T++ L T E+ S +++ K +YE +KE LE +++ DE I+EL+ T Sbjct: 1027 LKKTIS-DLEQTKEEIISKSDSS-KDEYESQISLLKEKLE-TATTANDENVNKISELTKT 1083 Query: 435 QKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVKAYKAEIV 494 ++ L E L + N++ L +++ + + L + L K Sbjct: 1084 REEL-----EAELAAYKNLKNELETKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQ 1138 Query: 495 QSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQS 554 Q N ++ LE E L++Q + + KE QY + + +L N EI+ + +S Sbjct: 1139 QLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQL---NDEITSTQQENES 1195 Query: 555 LTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKALVSENDTLKQRIQQ 614 + +KN+ L E+K ++ E+ +NL +++I + N +K L +N+T + + + Sbjct: 1196 IKKKNDELEGEVKAMKSTSEEQSNLK-------KSEIDALNLQIKELKKKNETNEASLLE 1248 Query: 615 LVEIKENEQKDHTTKLEAFQKN-NEQLQKLNVEVVQLKAHE------LELEEQNRHLKNC 667 ++ E+E T K++ Q N + ++++ +LKA E LEL++++ +K Sbjct: 1249 SIKSVESE----TVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYLELQKESEKIKEE 1304 Query: 668 LEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNL-ESLEEVTKNLQQKVQS 726 L+ K T ++ L + L + +SE + E + N E LE++ +Q K Q+ Sbjct: 1305 LDAKTTELKIQLEKITNLSKAKEKSESELSRLKKTSSEERKNAEEQLEKLKNEIQIKNQA 1364 Score = 111 bits (278), Expect = 8e-27 Identities = 151/659 (22%), Positives = 281/659 (42%), Gaps = 82/659 (12%) Query: 191 CSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKV----GKYKSCLETLQERIATLTSH 246 C+NL +E + ++ + K R QS+ + K+ EK+ YK + I + Sbjct: 929 CNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSLANNYKDMQAENESLIKAVEES 988 Query: 247 KN-------NQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKE----ADAE 295 KN N + K+ + Q + +Q + +IE L KTI+DL + K+E +D+ Sbjct: 989 KNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTKEEIISKSDSS 1048 Query: 296 LMKKGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEM------IKSIENFFSED 349 + +I LK +L+ + E N + I E+ K REE+ K+++N Sbjct: 1049 KDEYESQISLLKEKLETATTANDE----NVNKISELTKTREELEAELAAYKNLKNELETK 1104 Query: 350 KAHHLLQFNKFEERVHDLFEKKLQ--KHFDVAKDTLNVGLRNTTVELSSNTETMLKQ--Q 405 + +E L E+K+Q K K LN LR L E + Q + Sbjct: 1105 LETSEKALKEVKENEEHLKEEKIQLEKEATETKQQLN-SLRANLESLEKEHEDLAAQLKK 1163 Query: 406 YEDIKENLE----QKMSSSKDEMAKTINEL-SVTQKGLIMGVQEELLTSSGNIQTALV-S 459 YE+ N E +++S DE+ T E S+ +K + + + + S+ Q+ L S Sbjct: 1164 YEEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKS 1223 Query: 460 EMNNTRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQ 519 E++ ++ + + N ASL +K+ ++E V+ E ++ E E S L Sbjct: 1224 EIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSEL------ 1277 Query: 520 IISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNL 579 ED +K E KN + ++ + + + E+ + + ELK QLEK+ NL Sbjct: 1278 ------------EDKLKASEDKNSKYLELQKESEKIKEELDAKTTELKI---QLEKITNL 1322 Query: 580 NITTKSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQ 639 + + K S++E+ + + ++ K +QL ++K Q K +AF+K + Sbjct: 1323 S-------KAKEKSESELSRLKKTSSEERKNAEEQLEKLKNEIQ----IKNQAFEKERKL 1371 Query: 640 LQKLNVEVVQLKAHELE-LEEQNRHLKNCLEKKETGVEE--------SLSDVKTLKQQVI 690 L + + + Q + ++ LE++ L+N E K ++ SLS+ + L+++ Sbjct: 1372 LNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEEKQN 1431 Query: 691 VLKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQSXXXXXXXXXXXXXXXXN--HKRNE 748 +KS + +I + K ++ N E L + ++ ++ ++S K E Sbjct: 1432 TIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESKAKVEEGLKKLEE 1491 Query: 749 PSKKGTQNFTKPSDSPKKNATTSNLFPNNSAAIHSPMKKCPKVDHISKSRINSSKETSK 807 S K K + KK +T +N + S M+ K D + S++E K Sbjct: 1492 ESSKEKAELEKSKEMMKKLEST---IESNETELKSSMETIRKSDEKLEQSKKSAEEDIK 1547 Score = 103 bits (257), Expect = 2e-24 Identities = 162/694 (23%), Positives = 304/694 (43%), Gaps = 141/694 (20%) Query: 91 KKTTSTDQYNR---ILKNDVAAIENDTDEDF----EITEVREVSEGVAKETK----ESHG 139 K +S D+Y +LK + DE+ E+T+ RE E K E Sbjct: 1044 KSDSSKDEYESQISLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKNELET 1103 Query: 140 DPNDSETTLKDSKMHEYTMTNGKAPLHXXXXXXXXXXXDVLLEAFTNTQRICSNLKQELQ 199 SE LK+ K +E + K L T T++ ++L+ L+ Sbjct: 1104 KLETSEKALKEVKENEEHLKEEKIQLEKEA---------------TETKQQLNSLRANLE 1148 Query: 200 KQQQDNAKLKVRLQSY----ASNSDKINEKVGKYKSCLETLQERIATLTSHKNNQETKLK 255 ++++ L +L+ Y A+ + NE++ + + + Q+ ++ + E ++K Sbjct: 1149 SLEKEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVK 1208 Query: 256 DLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKKGKEIEY----LKRELD 311 ++ + + + K+ I+ LN I +L K + +A L++ K +E +K D Sbjct: 1209 AMKSTSE---EQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQD 1265 Query: 312 DCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQFNKFEERVHDLFEKK 371 +C+ + E + E+ E+ +K+ SEDK L+ K E K Sbjct: 1266 ECNFKEKE--------VSEL----EDKLKA-----SEDKNSKYLELQKESE--------K 1300 Query: 372 LQKHFDVAKDTLNVGLRNTT-----VELSSNTETMLKQQYEDIKENLEQKMSSSKDEMA- 425 +++ D L + L T E S + + LK+ + ++N E+++ K+E+ Sbjct: 1301 IKEELDAKTTELKIQLEKITNLSKAKEKSESELSRLKKTSSEERKNAEEQLEKLKNEIQI 1360 Query: 426 ---------KTINELS--VTQK--GLIMGVQEELLTSSGNIQTALVSEMNNTRQEL---- 468 K +NE S +TQ+ I +++EL+ N E++NTR EL Sbjct: 1361 KNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQ-NENELKAKEIDNTRSELEKVS 1419 Query: 469 ------LDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLESERST---LSSQKNQ 519 L++ T K SL++ + +YK +I +++E K L ER L S K Q Sbjct: 1420 LSNDELLEEKQNTIK---SLQDEILSYKDKITRNDE-----KLLSIERDNKRDLESLKEQ 1471 Query: 520 IISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNL 579 + ++ +K A+ E+ +KKLE + S KE++ EL+K ++ ++KL + Sbjct: 1472 LRAAQESK-AKVEEGLKKLEEE-------SSKEKA----------ELEKSKEMMKKLES- 1512 Query: 580 NITTKSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQ 639 T +SN E ++ S E ++ + + K+ ++ ++ ++E+ D +++ +K+ E+ Sbjct: 1513 --TIESN-ETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEE 1569 Query: 640 LQ-KLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVEES------LSDV-KTLKQQVIV 691 L+ KL +E ELE + L N EK EE+ L D+ + LK + Sbjct: 1570 LKSKLRIEAKSGS----ELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAE 1625 Query: 692 LKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQ 725 +KS ++ EK L L+ LE+ + QQK Q Sbjct: 1626 IKSNQE----EKELLTSRLKELEQELDSTQQKAQ 1655 Score = 89.4 bits (220), Expect = 4e-20 Identities = 143/733 (19%), Positives = 297/733 (40%), Gaps = 80/733 (10%) Query: 17 NIFAKLRVRDVDSDSSANTVVENSSNCLDVGSSIEGDDTFKKPHKTSTEQELITSMSLSQ 76 N+ +L + S+ + V EN + + +E + T K S L SL + Sbjct: 1096 NLKNELETKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQQLNSLRANL---ESLEK 1152 Query: 77 RNHGYSDDMEIGSPKKTTSTDQYNRILKNDVAAIENDTDEDFEITEVREVSEG---VAKE 133 + + ++ + QYN + I + E+ I + + EG K Sbjct: 1153 EHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKS 1212 Query: 134 TKESHGDPNDSET---TLKDSKMHEYTMTNGKAPLHXXXXXXXXXXXDVLLEAFTN-TQR 189 T E + SE L+ ++ + TN + L L+ N ++ Sbjct: 1213 TSEEQSNLKKSEIDALNLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEK 1272 Query: 190 ICSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQERIATLTSHKNN 249 S L+ +L+ + N+K + LQ S+KI E++ + L+ E+I L+ K Sbjct: 1273 EVSELEDKLKASEDKNSKY-LELQK---ESEKIKEELDAKTTELKIQLEKITNLSKAKEK 1328 Query: 250 QETKLKDLR----QNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADA----------- 294 E++L L+ + + + ++ K I+ N+ K E + Sbjct: 1329 SESELSRLKKTSSEERKNAEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKIN 1388 Query: 295 ----ELMKKGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDK 350 EL++ E E +E+D+ +L + + N L++E ++ IKS+++ Sbjct: 1389 TLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLEE----KQNTIKSLQD------ 1438 Query: 351 AHHLLQFNKFEERVHDLFEKKLQKHFDVAKD--TLNVGLRNTTVELSSNTETMLKQQYED 408 + +++++ EK L D +D +L LR + E + K + E Sbjct: 1439 -----EILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESKAKVEEGLKKLEEES 1493 Query: 409 IKENLEQKMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVS---EMNNTR 465 KE E + S EM K + + + + E + S ++ + S ++ N + Sbjct: 1494 SKEKAELEKSK---EMMKKLESTIESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQ 1550 Query: 466 QELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLES--ERSTLSSQKNQIISS 523 E D S+ ++ +E L + E +E E + L + E+ +++++N ++ S Sbjct: 1551 HEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEENTVLKS 1610 Query: 524 LGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITT 583 + ED+ ++L+ K EI +++ LT + + L EL Q + +K Sbjct: 1611 ------KLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQQKAQKSEEERRAE 1664 Query: 584 KSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKL 643 ++ + S +E KA++ L+ + LV ++ ++D T + ++++KL Sbjct: 1665 VRKFQVEKSQLDE--KAML-----LETKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIEKL 1717 Query: 644 NVEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAE- 702 E+ LKA +L+E N + + +++ + V L ++ +S+ +D+ E Sbjct: 1718 AKELDNLKAENSKLKEAN--------EDRSEIDDLMLLVTDLDEKNAKYRSKLKDLGVEI 1769 Query: 703 KLELQDNLESLEE 715 + +D+ E EE Sbjct: 1770 SSDEEDDEEDDEE 1782 Score = 84.7 bits (208), Expect = 1e-18 Identities = 111/539 (20%), Positives = 226/539 (41%), Gaps = 53/539 (9%) Query: 239 RIATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMK 298 RI T SH ++E K + + QR+ + K I +L +N E L Sbjct: 710 RIRTALSHDPDEEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTN 769 Query: 299 KGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHH--LLQ 356 + KE++ + L+ L E + ++ + + +EM + + ++DK + LL+ Sbjct: 770 EHKELDEKYQILNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDKENQTALLE 829 Query: 357 FNKFEERVHDLFEKKLQKHFDV-------AKDTLN---VGLRNTTVELSSNTETMLKQQY 406 + + D K L+K + A+D +N L + E+ + E Q Sbjct: 830 YKSTIHKQEDSI-KTLEKGLETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQK 888 Query: 407 EDIKENL--EQKMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNT 464 E K N+ +++ S K+++A I E+ + L EE+ N L E + Sbjct: 889 EKDKSNVNHQKETKSLKEDIAAKITEIKAINENL-----EEMKIQCNN----LSKEKEHI 939 Query: 465 RQELLDDASQTAKNYASLENLVKAYKAEIVQ-SNEYEERIKHLESERSTLSSQKNQIISS 523 +EL++ S+ + S +NLV ++ +N Y++ ES + KN+ Sbjct: 940 SKELVEYKSR----FQSHDNLVAKLTEKLKSLANNYKDMQAENESLIKAVEESKNE---- 991 Query: 524 LGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITT 583 Q +L K+++ + E + S+ + E L + ++ E++ + + ++ Sbjct: 992 ---SSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKKTISDLEQTKEEIISKSDSS 1048 Query: 584 KSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKE----------NEQKDHTTKLE-- 631 K YE++IS E ++ + ND +I +L + +E N + + TKLE Sbjct: 1049 KDEYESQISLLKEKLETATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLETS 1108 Query: 632 --AFQKNNEQLQKLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQV 689 A ++ E + L E +QL+ E ++Q L+ LE E E+ + +K ++Q+ Sbjct: 1109 EKALKEVKENEEHLKEEKIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQI 1168 Query: 690 IVLKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQSXXXXXXXXXXXXXXXXNHKRNE 748 ++++ E +L D + S ++ +++++K N K++E Sbjct: 1169 ---ANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSE 1224 >MGEN-G37-01-000335 MG328 conserved hypothetical protein Length = 756 Score = 87.0 bits (214), Expect = 2e-19 Identities = 112/504 (22%), Positives = 217/504 (43%), Gaps = 84/504 (16%) Query: 247 KNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKK------- 299 K N ++ DL Q +RR+S K+ + K +DL + ++ +L K Sbjct: 259 KENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKPVAINPL 318 Query: 300 ----GKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLL 355 +E+E LK+E S QL K K+S++ Q++ ++ + N +E + LL Sbjct: 319 SDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLA-----LLPVLNNQINE-LQNQLL 372 Query: 356 QFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQ 415 + +R+ DL E++ N L+N +L NT ++Y+D+ E Sbjct: 373 TAREANQRL-DLVEQE------------NDFLKNELKKLHDNTSNDENEKYDDLLNQYEL 419 Query: 416 KMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQT 475 DE ++L V Q+ L + Q+ +S + + LLD+ T Sbjct: 420 LF----DENETKFDKLQVKQQALNLDYQK------------TISALKHENDVLLDEIEWT 463 Query: 476 AKNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLV 535 N N +EE+ K L+ + + L+ Q Q+ + E E Sbjct: 464 RSKDNDFNN----------TKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNE--- 510 Query: 536 KKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTK---SNYENKIS 592 E N+ +Q+ +Q L + ++NL N QD+L L +N+ ++ E+++S Sbjct: 511 ---EKSNLNTNQLVNLQQQLKD-SQNLFN---VAQDKLATLEEVNLALNEKINDLEDELS 563 Query: 593 ---SQNEIVKALVSENDTLKQRIQQL----VEIKENEQKD----HTTKLEAFQKNNEQLQ 641 + N ++ L ++++ L++ +L ++K+N+ D + L AF++ N +L+ Sbjct: 564 GSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELE 623 Query: 642 KLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITA 701 K + + +L++Q L+N KKE SD ++ LK EK+ + Sbjct: 624 KAKQSLSASDSENNQLKQQINSLENA--KKELQFTPVTSDEHL--DELETLKIEKEQLFL 679 Query: 702 EKLELQDNLESLEEVTKNLQQKVQ 725 E LQ+ L+ +++ N ++++ Sbjct: 680 ENQALQNQLQYFNDISANQTEEIK 703 >MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) Length = 1805 Score = 85.9 bits (211), Expect = 5e-19 Identities = 123/596 (20%), Positives = 260/596 (43%), Gaps = 88/596 (14%) Query: 186 NTQRICS-NLKQ----ELQKQQQDNAKLKVRLQSYASNSD-KINEKVGKYKSCLETLQER 239 NTQ+ NL+Q ++ K QQ+N L+ + + K ++ + K ++ + LQ + Sbjct: 332 NTQKEAFFNLRQSALIDINKLQQENELFAKHLEHQQNEFEQKQSDSLLKLETEYKALQHK 391 Query: 240 IATLTSHKNNQETKLKDL-RQNHQLYQRR--ISGFKTSIENLNKTINDLGKNKKEADAEL 296 I KN TK ++L Q +L+++R I T + + + K+ E+ Sbjct: 392 I---NEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEYEHQRESSQLLKDKQNEV 448 Query: 297 MKKGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQ 356 + + +EY K+ELD L ++K +S I ++ + + K +E + L++ Sbjct: 449 KQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELY-------LVK 501 Query: 357 FNKFEERVHDL--FEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLE 414 K +++ ++L FEK+L++H ++ L + + + +K E+ E Sbjct: 502 KQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAKHALERSFIKL------EDKE 555 Query: 415 QKMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQE---LLDD 471 + +++ ++A ++L + + S + + L +E N +QE L + Sbjct: 556 KDLNTKAQQIANEFSQLKTDK------------SKSADFELMLQNEYENLQQEKQKLFQE 603 Query: 472 ASQTAKNYASLENLVKAYKAEIVQSNEYEERI-KHLESERSTLSSQKNQIISSLGTKEAQ 530 + +N A L N ++ + E++Q E +++ K E ER + ++++S+ E Q Sbjct: 604 RTYFERNAAVLSNRLQQKREELLQQKETLDQLTKSFEQERLINQREHKELVASV---EKQ 660 Query: 531 YEDLVKKLE---------AKNIEISQ--ISGKEQSLTEKNENLSNELKK---VQDQLEKL 576 E L KKL+ +KN+ + I KE+ + + L N++ +Q L +L Sbjct: 661 KEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQL 720 Query: 577 N---NLNITTKSNYENKISS-QNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEA 632 N N + N + +I+ N+ +K L +L++R+Q+L ++ N QK H+ + +A Sbjct: 721 NQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEAN-QKQHSYQNQA 779 Query: 633 F------QKNNEQLQKLNVEVVQ-----------------LKAHELELEEQNRHLKNCLE 669 + + N E+ LN+ Q L + EL+ + L N Sbjct: 780 YFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFL 839 Query: 670 KKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQ 725 + + + T+K+ ++ E+ + ++ E +N+ + N ++Q Sbjct: 840 NHDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQ 895 Score = 75.5 bits (184), Expect = 6e-16 Identities = 137/717 (19%), Positives = 289/717 (40%), Gaps = 83/717 (11%) Query: 64 TEQELITSMSLSQRNHGYS-DDMEIGSPKKTTSTDQYN-RILKNDVAAIENDTDEDFEIT 121 ++ L S +L++R + EI + +K D N +++ D+A + ++ E + Sbjct: 672 SQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQSLNQ--ERS 729 Query: 122 EVREVSEGVAKETKESHGDPNDSETTLKDSKMHEYTMTNGKAPLHXXXXXXXXXXXDVL- 180 E++ + +A +S N+ E +L+ T+ + D L Sbjct: 730 ELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQAYFEGELDKLN 789 Query: 181 --LEAFTNTQRI----CSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLE 234 +AF N ++ +KQ L + Q L ++ + ++N + + + Sbjct: 790 REKQAFLNLRKKQTMEVDAIKQRLSDKHQ---ALNMQQAELDRKTHELNNAFLNHDADQK 846 Query: 235 TLQERIATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADA 294 +LQ+++AT+ + + + L + + + ++GFK N + + + K+ ++ Sbjct: 847 SLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYELTKKQES 906 Query: 295 ELMKKGKE-------------------------IEYLKRELDDCSGQLSEEKIKNSSLIQ 329 E +K E IE +RELD + + ++ K++ + Q Sbjct: 907 EQTQKETELKIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQ 966 Query: 330 EMGKNREEMIKSIENFFSEDKAHHLLQ--FNKFEE---RVHDLFEKKLQK-HFDVAKDTL 383 + +++ +++ E +L Q FN+ E + + KK+Q H+++ K Sbjct: 967 ALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHYELKKRNQ 1026 Query: 384 NVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKGL----- 438 + L+ + + Q+ + E++ + + + + EL ++ L Sbjct: 1027 FLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDEAKKRELEELEKIRRSLSQSNV 1086 Query: 439 -IMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQ---TAKNYASLENLVKAYKAEIV 494 + +E+L T N+ + N R +L Q KN+ N A KA + Sbjct: 1087 ELERKREKLATDFTNLNKVQHNTQIN-RDQLNSQIRQFLLERKNFQRFSNEANAKKAFL- 1144 Query: 495 QSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQ- 553 IK L S S L QK + + + E K+L+ +++ Q ++Q Sbjct: 1145 --------IKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQN 1196 Query: 554 ----------SLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKALVS 603 ++ + E LS+E K + +L +L NL+ T +N SQ ++ + + Sbjct: 1197 FDIEKQRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTN 1256 Query: 604 ENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKN----NEQLQKLNVEVVQLKAHELELEE 659 D LK+ +++ + + + + +L F + +QL K +V K L+ E Sbjct: 1257 LLD-LKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQ-RIVDDKNRLLKENE 1314 Query: 660 QNRH-LKNCLEKKETGVEESLSDV-KTLKQQVIVLKSEKQDITAEKLELQDNLESLE 714 +N H L N E+K +E+ +S K KQ + + +++ ++ ELQ L LE Sbjct: 1315 RNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELE 1371 Score = 70.9 bits (172), Expect = 2e-14 Identities = 129/597 (21%), Positives = 248/597 (41%), Gaps = 89/597 (14%) Query: 180 LLEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQER 239 LL+ + + NLK L+ Q +DN +L ++ + +++ + ++ + ++ Sbjct: 43 LLKEIKSLEDELKNLKG-LKNQAEDNPELDKKINHLEVDLNRLVNEYKNFQFQKNHMVDK 101 Query: 240 IA---TLTSHKNNQETKLK------------DLRQNHQLYQRRISGFKTSIENLNKTIND 284 ++ LT N+ T+L+ +L Y +++ F IEN N+TIN Sbjct: 102 VSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQANYHNKLNDFHRLIENQNQTINR 161 Query: 285 L------GKNKKEADAELMKKG-----------KEIEYLKRELDDCSGQLSEEKIKNSSL 327 L +N + + L++ I+ L ELD Q I+ + Sbjct: 162 LNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNELDQLENQKRLLSIEYENT 221 Query: 328 IQEMGKNREEMIKSIENFFSEDKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGL 387 +E+ E+ EN +++ Q+ + + + L E+K+Q Sbjct: 222 YRELVSADNELQNVYEN-IDQNQIQFKHQYQTYRDELSQL-ERKIQ-------------- 265 Query: 388 RNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKGLIMGVQEELL 447 T + + E+ L+ + +D + ++ + D++AK ++ K V+++L+ Sbjct: 266 --LTKQELVDKESALRVKIDDADFYINARL-AELDDVAKQLSFQDGITKQNAQHVEDKLV 322 Query: 448 TSSGNIQTALVSEMNNTRQELLDDASQTAK---NYASLENLVKAYKAEIVQSNEYEER-- 502 + + NT++E + Q+A N EN + A E Q NE+E++ Sbjct: 323 ALNKE------KDRLNTQKEAFFNLRQSALIDINKLQQENELFAKHLE-HQQNEFEQKQS 375 Query: 503 --IKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNE 560 + LE+E L + N+ + TK + + ++L K EI + + E Sbjct: 376 DSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEYEHQR 435 Query: 561 NLSNELKKVQDQLEK-LNNLNITTK--SNYENKISSQNEIVKALVSENDTLKQRIQQLVE 617 S LK Q+++++ NL K N + Q ++ + + LK+++ Q E Sbjct: 436 ESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQ---LKEKVAQ--E 490 Query: 618 IKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAH----ELELEEQNRHL---KNCLEK 670 KE E+ K + QK NE L QLK H E ELE + + L K+ LE+ Sbjct: 491 RKELEELYLVKKQKQDQKENELL----FFEKQLKQHQADFENELEAKQQELFEAKHALER 546 Query: 671 KETGVEESLSDVKTLKQQVI----VLKSEKQDITAEKLELQDNLESLEEVTKNLQQK 723 +E+ D+ T QQ+ LK++K +L LQ+ E+L++ + L Q+ Sbjct: 547 SFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQE 603 Score = 65.1 bits (157), Expect = 9e-13 Identities = 136/675 (20%), Positives = 265/675 (39%), Gaps = 124/675 (18%) Query: 134 TKESHGDPNDSETTLK---DSKMHEYTMTNGKAPLHXXXXXXXXXXXDVLLEAFTNTQRI 190 TK+ + ET LK +Y + + D L E + Sbjct: 901 TKKQESEQTQKETELKIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLE 960 Query: 191 CSNLKQELQKQQQDNAKLKVRLQ------------------SYASNSDKINEKVGKYKSC 232 N Q LQ Q+QD + ++ L+ S +++ +K+ + Sbjct: 961 LDNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHYE 1020 Query: 233 LETLQERIAT----LTSHKNNQETKLKDLRQNHQLYQRRISGF----KTSIENLNKTIND 284 L+ + +A L + + +Q+ K +++ + +++ + F K +E L K Sbjct: 1021 LKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDEAKKRELEELEKIRRS 1080 Query: 285 LGKNKKEADAELMKKGKEIEYLKR-------ELDDCSGQLSE---EKIKNSSLIQEMGKN 334 L ++ E + + K + L + D + Q+ + E+ E Sbjct: 1081 LSQSNVELERKREKLATDFTNLNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSNEANAK 1140 Query: 335 REEMIKSIENFFSEDK------AHHLLQFNKFEERVH-DLFEKKLQ--------KHFDVA 379 + +IK + +F S K A L+F+K +E+ +L + LQ ++FD+ Sbjct: 1141 KAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIE 1200 Query: 380 KDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKGLI 439 K V ++ T E S+ + L Q+ ++K NL Q ++K++ + +L L+ Sbjct: 1201 KQRQLVAIK-TQCEKLSDEKKALNQKLVELK-NLSQTYLANKNKAEYSQQQLQQKYTNLL 1258 Query: 440 ------MGVQEELLTSSGNIQTALVSEMNNTR---------QELLDDASQTAK-NYASLE 483 +++L +I L N+ R Q ++DD ++ K N +L Sbjct: 1259 DLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLH 1318 Query: 484 NLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSL-------GTKEAQYEDLVK 536 L SNE E + LE + S Q+ Q ++ KE + + L+ Sbjct: 1319 FL----------SNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLV 1368 Query: 537 KLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNE 596 +LE + +++ K E+ EN +L ++Q L+ N N N Sbjct: 1369 ELETRKTKLNNDFAKFSRQREEFENQRLKLLELQKTLQTQTNSN--------------NF 1414 Query: 597 IVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQ------KLNVEVVQL 650 KA+ ++ K+ +++L K+ K+ + E F+K ++++ KL ++ Q Sbjct: 1415 KTKAIQEIENSYKRGMEELNFQKKEFDKNKSRLYEYFRKMRDEIERKESQVKLVLKETQR 1474 Query: 651 KAHELELEEQNRHL-KNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDN 709 KA+ LE + ++ KN ++ KE ++K K +V QDI + + ++ Sbjct: 1475 KANLLEAQANKLNIEKNTIDFKE-------KELKAFKDKV------DQDIDSTNKQRKEL 1521 Query: 710 LESLEEVTKNLQQKV 724 E L E K LQQ + Sbjct: 1522 NELLNE-NKLLQQSL 1535 Score = 63.2 bits (152), Expect = 3e-12 Identities = 106/535 (19%), Positives = 219/535 (40%), Gaps = 87/535 (16%) Query: 243 LTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKKGKE 302 L S N + +++ QN ++ + ++ + L + I + + ++ L K + Sbjct: 225 LVSADNELQNVYENIDQNQIQFKHQYQTYRDELSQLERKIQLTKQELVDKESALRVKIDD 284 Query: 303 IEYLKR----ELDDCSGQLSEEK---IKNSSLIQE----MGKNREEMIKSIENFFSEDKA 351 ++ ELDD + QLS + +N+ +++ + K ++ + E FF+ ++ Sbjct: 285 ADFYINARLAELDDVAKQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQS 344 Query: 352 HHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKE 411 L+ NK ++ ++LF K L+ +N + S++ L+ +Y+ Sbjct: 345 A-LIDINKLQQE-NELFAKHLEHQ------------QNEFEQKQSDSLLKLETEYKA--- 387 Query: 412 NLEQKMSSSKDEMAKTINELSVTQKGLIMGVQE--ELLTSSGNIQTALVSEMNNTRQELL 469 L+ K++ K+E A EL ++ L +E LLT Q +L E +LL Sbjct: 388 -LQHKINEFKNESATKSEELLNQERELFEKRREIDTLLT-----QASLEYEHQRESSQLL 441 Query: 470 DDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLESE-------------------- 509 D K + +NL A K E+ + ++ K ++SE Sbjct: 442 KDKQNEVKQH--FQNLEYA-KKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELY 498 Query: 510 ---RSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQ-----------ISGKEQSL 555 + ++N+++ + D +LEAK E+ + + KE+ L Sbjct: 499 LVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAKHALERSFIKLEDKEKDL 558 Query: 556 TEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKA---LVSENDTLKQRI 612 K + ++NE +++ K + + ++ YEN + ++ + L R+ Sbjct: 559 NTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNRL 618 Query: 613 QQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQNRHLKNCLEKK- 671 QQ K E L+ K+ EQ + +N + EL K L KK Sbjct: 619 QQ----KREELLQQKETLDQLTKSFEQERLIN------QREHKELVASVEKQKEILGKKL 668 Query: 672 ETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQS 726 + + SL+ K L ++ + +K ++++I A + +L +++ + E + +L Q QS Sbjct: 669 QDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQS 723 Score = 61.2 bits (147), Expect = 1e-11 Identities = 99/487 (20%), Positives = 193/487 (39%), Gaps = 65/487 (13%) Query: 188 QRICSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQERIATLTSHK 247 Q++ + + E QK++ A L++ + + I ++ + ++T E+++ Sbjct: 1165 QKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQ--RQLVAIKTQCEKLSDEKKAL 1222 Query: 248 NNQETKLKDLRQNH-----------QLYQRRISGFKTSIENLNKTINDLGKNKKEADAEL 296 N + +LK+L Q + Q Q++ + ENL +T + L K + A L Sbjct: 1223 NQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTNLLDLKENLERTKDQLDKKHRSIFARL 1282 Query: 297 MKKGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQ 356 K ++ + K++L L ++I + + K E + + N +A Q Sbjct: 1283 TKFANDLRFEKKQL------LKAQRIVDDK--NRLLKENERNLHFLSNETERKRAVLEDQ 1334 Query: 357 FNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQK 416 + FE++ + L H +V K L+ VEL + +T L + K Sbjct: 1335 ISYFEKQRKQATDAILASHKEVKKKEGE--LQKLLVELETR-KTKLNNDFA--------K 1383 Query: 417 MSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTA 476 S ++E +L QK L + T+S N +T + E+ N+ + +++ + Sbjct: 1384 FSRQREEFENQRLKLLELQKTL------QTQTNSNNFKTKAIQEIENSYKRGMEELNFQK 1437 Query: 477 KNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVK 536 K + +N + Y E + + E SQ ++ K E Sbjct: 1438 KEFD--KNKSRLY-----------EYFRKMRDEIERKESQVKLVLKETQRKANLLEAQAN 1484 Query: 537 KLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQN- 595 KL NIE + I KE+ L + + ++ Q ++LN L ENK+ Q+ Sbjct: 1485 KL---NIEKNTIDFKEKELKAFKDKVDQDIDSTNKQRKELNEL------LNENKLLQQSL 1535 Query: 596 -EIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHE 654 E +A+ S++ L ++I+ IK L + QK E+ +L+ Sbjct: 1536 IERERAINSKDSLLNKKIE---TIKRQLHDKEMRVLRLVDRMKLAEQKYQTEINRLRTQT 1592 Query: 655 LELEEQN 661 + E+Q+ Sbjct: 1593 FDSEKQD 1599 Score = 50.1 bits (118), Expect = 3e-08 Identities = 90/519 (17%), Positives = 212/519 (40%), Gaps = 75/519 (14%) Query: 180 LLEAFTNTQRICSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQER 239 L + +TN + NL++ + + + + RL +A++ +++ K + ++ ++ Sbjct: 1250 LQQKYTNLLDLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVD---DK 1306 Query: 240 IATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKK 299 L ++ N + + + + +IS F+ + I K K+ + EL K Sbjct: 1307 NRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKL 1366 Query: 300 GKEIEYLKRELDDCSGQLSE--EKIKNSSL-IQEMGKN----------REEMIKSIENFF 346 E+E K +L++ + S E+ +N L + E+ K + + I+ IEN + Sbjct: 1367 LVELETRKTKLNNDFAKFSRQREEFENQRLKLLELQKTLQTQTNSNNFKTKAIQEIENSY 1426 Query: 347 S---EDKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRNTT------------ 391 E+ +F+K + R+++ F +K++ + + + + L+ T Sbjct: 1427 KRGMEELNFQKKEFDKNKSRLYEYF-RKMRDEIERKESQVKLVLKETQRKANLLEAQANK 1485 Query: 392 VELSSNTETMLKQQYEDIKENLEQKMSSS---KDEMAKTINELSVTQKGLIMGVQEELLT 448 + + NT +++ + K+ ++Q + S+ + E+ + +NE + Q+ LI +E + Sbjct: 1486 LNIEKNTIDFKEKELKAFKDKVDQDIDSTNKQRKELNELLNENKLLQQSLIE--RERAIN 1543 Query: 449 SSGNIQTALV-----------------------------SEMNNTRQELLDDASQTAKNY 479 S ++ + +E+N R + D Q KN+ Sbjct: 1544 SKDSLLNKKIETIKRQLHDKEMRVLRLVDRMKLAEQKYQTEINRLRTQTFDSEKQDIKNF 1603 Query: 480 ASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISS-LGTKEAQYEDLVKKL 538 L K ++ Y + + +TL Q Q+ L + +YE+ + +L Sbjct: 1604 --FPPLFKINGNDMAFPYLYPWLYPQQKQDDNTL--QIRQLFEQQLQFMQQRYENELNEL 1659 Query: 539 EAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIV 598 + + + + Q ++ N N +E KV+ +EKL + ++++ KI N + Sbjct: 1660 RRQRNLLEKKLDQIQLESQLN-NKQSEFSKVESMMEKLLEKTESRLNDFDQKI---NYLT 1715 Query: 599 KALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNN 637 K + N Q ++++++ +++ +K N Sbjct: 1716 KKVNQHNTYQPSSYQPTPSYQDSDKQQLLFRIQELEKQN 1754 >SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 Length = 1928 Score = 79.3 bits (194), Expect = 4e-17 Identities = 157/708 (22%), Positives = 294/708 (41%), Gaps = 82/708 (11%) Query: 53 DDTFKKPHKTSTEQELITSMSLSQRNHGYSDDMEIGSPKKTTSTDQYNRILKNDVAAIEN 112 +D+ K + QE+ + L++R G S + I S +++TS + + K D+ I+ Sbjct: 1177 NDSKIKELEARLSQEISLNQYLNKRISGNSVETNISSTRRSTSYSD-DPLDKEDI--IKK 1233 Query: 113 DTDEDFEITEVREVSEGVAKETKESHGDPNDSETTLKDSKMHEYTMTNGKAPLHXXXXXX 172 D TE+ E +E K +ET L S + + KA + Sbjct: 1234 YYDLQLAFTEITRNLENEIEEKKNLISRLRFTETRLASSSFEDQKI---KAQMKKLKKLI 1290 Query: 173 XXXXXDVLLEAFTNTQRI-CSNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKS 231 + L++ N C + + ++ K + LK +L + S Sbjct: 1291 QDMDPSIPLDSILNEPLDNCPDKESDINKLMLEVDYLKRQLDIETRAHYDAENAI----S 1346 Query: 232 CLETLQERIATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENL------NKTINDL 285 L + +I +S ++ KLK + + R+ + ++ + N + D+ Sbjct: 1347 ALHSKFRKIQGESSLSSSDIYKLK-----FEASEERVKSLEDKLKTMPLRDRTNLPVGDI 1401 Query: 286 GKNKKEADAELMKKGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENF 345 KN+ + K +EI Y K E L+E K S L ++ ++ KS E Sbjct: 1402 IKNRDS----ISKYEEEIRYYKLENYKLQEILNESNGKLSQLTLDLRQS-----KSKEAL 1452 Query: 346 FSE--DKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLK 403 SE D+ L+ + ++ + K+ ++ F+ D L + + L + LK Sbjct: 1453 LSEQLDRLQKDLESTERQKELLSSTIKQQKQQFENCMDDL----QGNELRLREHIHA-LK 1507 Query: 404 QQYEDIKE--NLEQKMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSG--NIQTALVS 459 Q ED+K ++ +K+ + + K I E + + M +QE LL +++ L Sbjct: 1508 QAEEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSDMQLQETLLELKRVQDVKKILSD 1567 Query: 460 EMNNTRQEL--LDDASQTAKNYASL-ENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQ 516 ++ + ++ L ++D SQ L E L + KAE E+ LE+ + ++ Sbjct: 1568 DLAHLKERLSAVEDRSQYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAK 1627 Query: 517 KNQIISSLG--TKEAQY------------EDLVKKLEAKNIEISQISGKEQSLTEKNENL 562 + ++ L TK + ++L +K EA N E + GK SLT+ + L Sbjct: 1628 ISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQEL 1687 Query: 563 SNELKKVQDQLEKLN-NLNITTKSNYE--NKISSQNEIVKALV---SENDTLKQRIQQLV 616 ++L + D L+ N L+ +T+ N E KI E ++ + S N L + +Q Sbjct: 1688 ESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQASC 1747 Query: 617 EIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVE 676 +++ D K + N+ LQKLN ++ +L+L+ + L + EK Sbjct: 1748 NGYKDKFDDEKQKNIDLYEENQTLQKLNTDL------QLQLKNLHERLSDTTEKNAW--- 1798 Query: 677 ESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLE-SLEEV-TKNLQQ 722 LS + L+ V S + D+ E+++ +LE ++EE+ TKN QQ Sbjct: 1799 --LSKIHELENMV----SLETDLKYEEMKKNKSLERAVEELQTKNSQQ 1840 Score = 73.6 bits (179), Expect = 2e-15 Identities = 113/519 (21%), Positives = 208/519 (40%), Gaps = 93/519 (17%) Query: 192 SNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQERIATLTSHKNNQE 251 SN +K + KLK LQ S + EK K + LE Q+ + NQE Sbjct: 857 SNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLL--------NQE 908 Query: 252 TKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKKGKEIEYLKRELD 311 + +LR+N L R KTS E L K +DL K E E ++ + +E +++ Sbjct: 909 KE--NLRKNESLLNR----VKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQ 962 Query: 312 DCSGQLSEEKIKNSSLIQEMGKNREEMIKSIE----NFFSEDKAHHLLQFNKFEERVHDL 367 L E + + ++++ E+IK I + E + L++ +K Sbjct: 963 G----LQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKL------- 1011 Query: 368 FEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKT 427 KL+ KD +N + E+IK + K+SSS+++ Sbjct: 1012 ---KLENEIKRLKDVIN-------------------SKEEEIK-SFNDKLSSSEED---- 1044 Query: 428 INELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVK 487 + ++ L + NI + + + +L K A+L N +K Sbjct: 1045 ------------LDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLK 1092 Query: 488 AYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQ 547 ++E++ + +E+I + + E +T S Q++ +S G + +L+ I++++ Sbjct: 1093 NKESELL---KMKEKIDNHKKELATFSKQRDDAVSEHG-------KITAELKETRIQLTE 1142 Query: 548 ISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKALVSENDT 607 Q + E+ N E K+ Q+Q ++ N +S ++KI + +S N Sbjct: 1143 YKSNYQKIKEEYSNFQRETKE-QEQKKR----NSLVESLNDSKIKELEARLSQEISLNQY 1197 Query: 608 LKQRIQ-QLVEI------KENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQ 660 L +RI VE + D E K LQ E+ + +E+ E+ Sbjct: 1198 LNKRISGNSVETNISSTRRSTSYSDDPLDKEDIIKKYYDLQLAFTEITRNLENEI---EE 1254 Query: 661 NRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDI 699 ++L + L ET + S + + +K Q+ LK QD+ Sbjct: 1255 KKNLISRLRFTETRLASSSFEDQKIKAQMKKLKKLIQDM 1293 Score = 65.5 bits (158), Expect = 7e-13 Identities = 121/610 (19%), Positives = 239/610 (39%), Gaps = 86/610 (14%) Query: 186 NTQRICSNLKQELQKQQQ-------DNAKLKVRLQSYASNSDKIN-----------EKVG 227 NTQ + + K+ L+K + + L+ + S D+I+ E Sbjct: 900 NTQDLLNQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQ 959 Query: 228 KYKSCLETLQERIATLTS--HKNNQETK-LKDLR---QNHQLYQRRISGFKTSIENLNKT 281 K + ET++ER ATL KNN+ K + DL Q Q I K +EN K Sbjct: 960 KIQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKR 1019 Query: 282 INDLGKNKKEADAELMKKGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKS 341 + D+ +K+E E+ ++ + +LD L + S +Q + ++ Sbjct: 1020 LKDVINSKEE---EIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSK 1076 Query: 342 IENFFSEDKAHHLLQFNKFEERVHDLFEKKLQKH------FDVAKDT-------LNVGLR 388 ENF E A + NK E + ++K+ H F +D + L+ Sbjct: 1077 NENFKKEKAALNNQLKNKESELLK--MKEKIDNHKKELATFSKQRDDAVSEHGKITAELK 1134 Query: 389 NTTVELSS--NTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKGLIMGVQEEL 446 T ++L+ + +K++Y + + +++ ++ + +++N+ + K L + +E+ Sbjct: 1135 ETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKI--KELEARLSQEI 1192 Query: 447 LTS-------SGNIQTALVSEMNNTRQELLD--DASQTAKNYASLE----NLVKAYKAEI 493 + SGN +S + D D K Y L+ + + + EI Sbjct: 1193 SLNQYLNKRISGNSVETNISSTRRSTSYSDDPLDKEDIIKKYYDLQLAFTEITRNLENEI 1252 Query: 494 VQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKN--IEISQISGK 551 + R++ E+ ++ S + +I +AQ + L K ++ + I + I + Sbjct: 1253 EEKKNLISRLRFTETRLASSSFEDQKI-------KAQMKKLKKLIQDMDPSIPLDSILNE 1305 Query: 552 EQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNY--ENKISSQNEIVKALVSENDTLK 609 E+ N+L D L++ L+I T+++Y EN IS+ + + + E+ Sbjct: 1306 PLDNCPDKESDINKLMLEVDYLKR--QLDIETRAHYDAENAISALHSKFRKIQGESSLSS 1363 Query: 610 QRIQQL-VEIKENEQKDHTTKLEAFQ-------------KNNEQLQKLNVEVVQLKAHEL 655 I +L E E K KL+ KN + + K E+ K Sbjct: 1364 SDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENY 1423 Query: 656 ELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEE 715 +L+E L + + +S S L +Q+ L+ + + +K L ++ ++ Sbjct: 1424 KLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQ 1483 Query: 716 VTKNLQQKVQ 725 +N +Q Sbjct: 1484 QFENCMDDLQ 1493 Score = 55.5 bits (132), Expect = 7e-10 Identities = 48/202 (23%), Positives = 97/202 (48%), Gaps = 30/202 (14%) Query: 526 TKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKS 585 T+ ++ + + KL KN ++ ++ K++ L EKN+ NEL+ QD L Sbjct: 861 TRTKKFNEQINKL--KN-DLQEMESKKKFLEEKNQKTVNELENTQDLL------------ 905 Query: 586 NYENKISSQNE-IVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLN 644 N E + +NE ++ + + ++TL+++ LV K+ ++ KLE Q E QK+ Sbjct: 906 NQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEISRE---KLEVAQNLEEAHQKIQ 962 Query: 645 VEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKL 704 L+E R + LEK + E + + L + +S + I KL Sbjct: 963 -----------GLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKL 1011 Query: 705 ELQDNLESLEEVTKNLQQKVQS 726 +L++ ++ L++V + +++++S Sbjct: 1012 KLENEIKRLKDVINSKEEEIKS 1033 >MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] Length = 1033 Score = 75.5 bits (184), Expect = 6e-16 Identities = 129/573 (22%), Positives = 240/573 (41%), Gaps = 94/573 (16%) Query: 178 DVLLEAFTNTQRICSNLKQELQKQQ----------QDNAKLKVRLQSYASNSDKINEKVG 227 ++L TN + + L+Q+L K Q ++N LK LQ+ ++++N + Sbjct: 398 ELLQNQNTNLTQELNELQQKLFKSQNNSLLLARLEEENRTLKQHLQNNLPEANQLNFVLE 457 Query: 228 KYKSCLETLQERIATLTSHKNNQETKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGK 287 K LE LQ+ +LT Q + K + HQ I ++ I +L + L Sbjct: 458 KQ---LEQLQQDKHSLTL----QIEQYKFDSKKHQEQLALIPSLRSEINSLETEVISL-- 508 Query: 288 NKKEADAELMKKGKEIEYLKRELDDC-SGQLSEEKIKNSSLIQE---MGKNREEMIKSIE 343 K+ + L +E +LK E+ +L++E K +L+++ M + + +K +E Sbjct: 509 --KQTNQRLSLIERENNFLKTEIKQLRETKLNDENTKYRNLLKQYELMRADSDAKLKELE 566 Query: 344 NFFSEDKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLK 403 + HH Q +LQ+H + L+ ++ T EL + Sbjct: 567 HEQHLAHQHHQEQL------------AQLQRHNEALVKELDQ-VKATNFELG-----LAA 608 Query: 404 QQYEDIKENLEQKMSS---SKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSE 460 Q +E K LEQK SS S + + L +T L Q +L + +TA S+ Sbjct: 609 QGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQN--QLNVLEFTHKEKTAFDSK 666 Query: 461 -MNNTRQELLD---DASQTAKNYA-------SLENLVKAYKAEIVQSNEYEERIKHLESE 509 + T+Q+L D S T + A SL + + A + ++ + +E + L+++ Sbjct: 667 TLTLTKQQLEQTQFDLSLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENLTQLQTQ 726 Query: 510 RSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKV 569 L N++ + Q+ +L+A + +++ + LT+K N+ NE Sbjct: 727 HELLQESYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNE---- 782 Query: 570 QDQLEKLNNLNITTKSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTK 629 L++LN K+N+EN L +E++ L+ + Q KE Q +H + Sbjct: 783 ------LHDLN-RVKTNWEN-----------LNTEHNLLQDKYAQQ---KEQMQHEH-SN 820 Query: 630 LEAFQKNNEQLQKLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQV 689 L Q +E LQ+ + V+ + +E+++ L + ++ LS + L+ Sbjct: 821 LAQIQAEHELLQE-SYNKVKAELNEIQITN--------LNEANAQYQDLLSAYELLQSNH 871 Query: 690 IVLKSEKQDITAEKLELQDNLESLEEVTKNLQQ 722 LK E Q + LE Q + L ++L Q Sbjct: 872 NKLKQELQVLNQVNLEKQQLAQKLHNTHQSLSQ 904 Score = 55.8 bits (133), Expect = 5e-10 Identities = 88/388 (22%), Positives = 169/388 (43%), Gaps = 59/388 (15%) Query: 390 TTVELSSNT----ETMLKQQYEDIKEN---LEQKMSSSKDEMAKTINELSVTQKGL---- 438 TTV+ ++ T +T++ + ED L++++++ + ++ + ++ + Q L Sbjct: 269 TTVDKANLTNALSQTVVIKPAEDSAHQSAVLDKEIATKQAQLQQLQAQIELRQAQLETPP 328 Query: 439 --IMGVQEELLTSSGNI---QTALVSEMNNTRQELLDDASQTAKNYASLENLVKAYKAEI 493 MGV+E L ++ Q + EM +++L A LE + A + Sbjct: 329 VTYMGVEEYKLLPVQDVVPVQPTVSFEMTLLQEQLDKALKHNAALQIQLEEQL-AKPLQY 387 Query: 494 VQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNI---------- 543 QS +ERI+ L+++ + L+ + N++ L K L+ +LE +N Sbjct: 388 DQSPVLQERIELLQNQNTNLTQELNELQQKL-FKSQNNSLLLARLEEENRTLKQHLQNNL 446 Query: 544 ------------EISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKI 591 ++ Q+ + SLT + E + KK Q+QL + +L S I Sbjct: 447 PEANQLNFVLEKQLEQLQQDKHSLTLQIEQYKFDSKKHQEQLALIPSLRSEINSLETEVI 506 Query: 592 SSQ--NEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNE--------QLQ 641 S + N+ + + EN+ LK I+QL E K N D TK K E +L+ Sbjct: 507 SLKQTNQRLSLIERENNFLKTEIKQLRETKLN---DENTKYRNLLKQYELMRADSDAKLK 563 Query: 642 KLNVEV-VQLKAHELELEEQNRH----LKNCLEKKETGVEESLSDVKTLKQQVIVLKSEK 696 +L E + + H+ +L + RH +K + K T E L+ + +QQ +VL+ + Sbjct: 564 ELEHEQHLAHQHHQEQLAQLQRHNEALVKELDQVKATNFELGLA-AQGFEQQKVVLEQKN 622 Query: 697 QDITAEKLELQDNLESLEEVTKNLQQKV 724 + A ++N+++L LQ ++ Sbjct: 623 SSLLASLQAAEENVQALGITNSELQNQL 650 >SYNE-PCC-01-001071 sll1583 Length = 562 Score = 52.8 bits (125), Expect = 5e-09 Identities = 55/292 (18%), Positives = 128/292 (43%), Gaps = 22/292 (7%) Query: 430 ELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVKAY 489 E + KG + ++++L + +++ AL + +Q +NY + E +V A Sbjct: 68 EAVIHAKGKLRRLEKDLQSVQASLENALA------------ERNQLTENYQAQEKMVAAL 115 Query: 490 KAEIVQSNEYE-ERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQI 548 + ++ ++ + E+ L+ L + + L K+A E V + K ++++ + Sbjct: 116 QHQLAHYDDIQSEKFVGLQKLNQELLQENTNLSDRL--KQAVNE--VAETRPKLVQLNSL 171 Query: 549 SGKEQSLTEKNENLS-NELKKVQDQLEKLNNL----NITTKSNYENKISSQNEIVKALVS 603 + Q L+++ + N+ K ++ +L L + ++ + ++ S E V+ L + Sbjct: 172 VTRNQQLSDQLSYVEQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTA 231 Query: 604 ENDTLKQRIQQLVEIKENEQKDHTTKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQNRH 663 E D ++Q +Q + ++ Q A + +Q ++ E QL A +LEE + Sbjct: 232 ERDQVQQELQTARQQSQSAQTQAENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKE 291 Query: 664 LKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEE 715 L + + +E + ++ LK + + Q + +LQ L +L+E Sbjct: 292 LALANAELKVKLETTQAEGDRLKTEKKEQAAALQSAQGQVTQLQQELAALQE 343 Score = 45.4 bits (106), Expect = 7e-07 Identities = 67/347 (19%), Positives = 139/347 (40%), Gaps = 39/347 (11%) Query: 306 LKRELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENFFSEDKAHHLLQFNKFEERVH 365 +K + G+ E I ++ + K+ + + S+EN +E + L + + +E++ Sbjct: 55 VKEVAPENDGESPEAVIHAKGKLRRLEKDLQSVQASLENALAE--RNQLTENYQAQEKMV 112 Query: 366 DLFEKKLQKHFDVAKDTLNVGLRNTTVEL---SSNTETMLKQQYEDIKEN---------- 412 + +L H+D + VGL+ EL ++N LKQ ++ E Sbjct: 113 AALQHQLA-HYDDIQSEKFVGLQKLNQELLQENTNLSDRLKQAVNEVAETRPKLVQLNSL 171 Query: 413 ------LEQKMSSSKDEMAKTINELSVTQKGLIMGVQEELLTSSGNIQTA--------LV 458 L ++S + AK I + +Q+ L E+ + N Q + L Sbjct: 172 VTRNQQLSDQLSYVEQNQAKAIEQRLASQEKLWQQRHEQE-QAQWNSQASQWEEQVRQLT 230 Query: 459 SEMNNTRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQKN 518 +E + +QEL Q+ ENL +A + + + EE+ + ERS L+++ N Sbjct: 231 AERDQVQQELQTARQQSQSAQTQAENL----QAALDRLGQQEEQ---WQGERSQLTAKLN 283 Query: 519 QIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNN 578 Q+ + +L KLE E ++ +++ ++ ++ ++Q +L L Sbjct: 284 QLEEAQKELALANAELKVKLETTQAEGDRLKTEKKEQAAALQSAQGQVTQLQQELAALQE 343 Query: 579 LNITTKSNYENKISSQNE-IVKALVSENDTLKQRIQQLVEIKENEQK 624 K +++ + + + A E + VE+K+ K Sbjct: 344 NLAKAKGEPPSEVPEKTKAVATAPAQEAPVVSPSPPVTVEVKQESPK 390 >SYNE-PCC-01-000943 sll1424 Length = 491 Score = 50.8 bits (120), Expect = 2e-08 Identities = 52/272 (19%), Positives = 122/272 (44%), Gaps = 34/272 (12%) Query: 388 RNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKGLIMGVQEELL 447 R T V L+ T T++ I + + ++ + +L V + L E+ Sbjct: 42 RQTAVLLTVITGTLISASTLGILFTFSKSLREGVFQLDDILAQLRVAKTEL-----EQAS 96 Query: 448 TSSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLE 507 + I++ L + + +Q + + + + +NY L++ QS + + +L Sbjct: 97 QAKEEIESELTA-VREEQQLVQERSRELNRNYTKALQLLRRVSE---QSRNLRQEVANLS 152 Query: 508 SERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELK 567 +ER+ L+ QK+ +++ + E Q SQ+ ++Q L+++ E ++ + K Sbjct: 153 AERAQLNEQKDSLLAE--SSELQ---------------SQVKLRDQELSKRQERIAQQEK 195 Query: 568 KVQDQLEKLNNLNITTKSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHT 627 + Q E++ +L S + +Q + ++A +++ DT ++ Q + K+N+ + Sbjct: 196 VLARQREQVQSLEKRFAS-----LEAQRQQLQAEINQRDTKIDQLDQAIAAKDNDIQARE 250 Query: 628 TKLEAFQKNNEQLQKLNVEVVQLKAHELELEE 659 KL+ + LQ+ EV +L+ + + +E Sbjct: 251 EKLQGLETELSFLQR---EVEELERYYQDYQE 279 >MGEN-G37-01-000317 MG312 cytadherence accessory protein (hmw1) Length = 1139 Score = 48.1 bits (113), Expect = 1e-07 Identities = 104/572 (18%), Positives = 219/572 (38%), Gaps = 74/572 (12%) Query: 192 SNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQERIATLTSHKNNQE 251 SNL E K +N L SNS+ ++ V Y+S E + + ++N Sbjct: 395 SNLYSENNKDATNNDSLNSEFIQLNSNSETASDDV-HYESKSEPIHDYKFGSDLSQSNSN 453 Query: 252 TKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKKGKEIEYLKRELD 311 L+ + F++ E +++ D+ +N+ E L + + + K+ D Sbjct: 454 NSLESEPVKFNSETAPDAHFESQSEPVDQVQYDIYQNE-ELKPTLDQPSSDDYFAKQPTD 512 Query: 312 DCSGQLSE--EKIKNSSLIQEMGKNREEMIKSIENF-----FSEDKAHHLLQFNKFEERV 364 + G ++ ++K + + + + K E+ F D L ++ V Sbjct: 513 ENYGFDNDLPPEVKQPESVVDQPSSDDHFAKQPESTTDSYSFDSDLPQPTLDQPSLDDHV 572 Query: 365 HDLFEKKLQ-KHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDE 423 F+ + K ++ VG L +N E + E + + E K + D Sbjct: 573 QYNFDHHEELKPVAEEQNNYQVGFDQVQANLDNNEEIQPTAEKE-VTTDFESKQAQVVDS 631 Query: 424 MAKTINELSVTQKGLIMGVQEELLTSSGNIQTA-LVSEMNNTRQELLDDASQTAKNYASL 482 I+ Q++ T S + +T V + + E+ D L Sbjct: 632 YQLPIDT-----------DQQDQTTFSSSFETQPTVEQFDQVNSEVNDQFKPEITKEPVL 680 Query: 483 ENLVKAYKAEIVQSNEYEERIKHLESE---RSTLSSQKN--QIISSLGTKEAQYEDLVKK 537 E+ K ++V+++ Y ++ + + + T++++K+ QI ++L + Sbjct: 681 ESSFN--KQDVVETSNYTNNLQKFDIQSDNKITITTKKSSPQIPTTLPISFVS-----NR 733 Query: 538 LEAKNIEISQISGKEQ--------SLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYE- 588 +E K +E + KE S+TE ++ L+ L Q+ LNN +I T + Sbjct: 734 IEYKPVETLALDNKESQQEQITINSITEDSKTLAKTLSVQLQQINSLNNQSIVTSESVRL 793 Query: 589 ---------NKISSQNE------IVKAL--VSENDTL--KQRIQQLVEIKENEQKDHTTK 629 N ++S+++ VKA V E+ KQ ++ E+ +K K Sbjct: 794 DKKDDQLTINTVNSEDQQPKIEVFVKAKEPVEEHSITQNKQSVEDKSELDNFNKKSDLYK 853 Query: 630 LEAFQKNNEQLQKLNVEVV-QLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQ 688 + + K E +N + + Q+ +++ +++ HL + + + + E + Sbjct: 854 IISELKRGELNPTINFDAIFQMNDYQMSVKQSFIHLNDFVTNYKNQISE----------R 903 Query: 689 VIVLKSEKQDITAEKLELQDNLESLEEVTKNL 720 +++K E Q + ++ +NL KNL Sbjct: 904 YLIIKKELQSELSRLIDQNENLNVQFNNAKNL 935 >SYNE-PCC-01-000727 sll1120 Length = 1200 Score = 46.2 bits (108), Expect = 4e-07 Identities = 51/253 (20%), Positives = 108/253 (42%), Gaps = 19/253 (7%) Query: 194 LKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQERIATLTSHKNNQETK 253 L QE ++ + A++ +Q+ + K++EK+G K + L+ ++ L S + Q+ + Sbjct: 877 LAQEQEQLKIALAEMNGAIQTTEAQLAKLSEKLGSTKQERDRLETQLNQLRSQQQEQQWQ 936 Query: 254 LKDLRQNHQLYQRRISGFKTSIENLNKTIND------LGKNKKEADAELMKKGKEIEYLK 307 + L+ N Q YQ ++ +T +E L + + D L +++ EA+ + +E L+ Sbjct: 937 WEKLQTNQQEYQENLTQLQTQLEALEQDLPDPWPEIPLLQDRDEANLDF---ANILEELE 993 Query: 308 RELDDCSGQLSEEKIKNSSLIQEMGKNREEMIKSIENF--FSEDKAHHLLQFNKFEERVH 365 R + + +L + N +QE K + + E + ++ LL+ Sbjct: 994 RSIRNGQKRLEAMEPVNMLALQEYEKTEARLGELSEKLQTIAGERTELLLRIEN------ 1047 Query: 366 DLFEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMA 425 F ++ F A D +N + ELS + ED ++ K + Sbjct: 1048 --FTTLRRRSFQDAFDAVNKNFQIIFAELSDGDGYLQLDDAEDPFNGGLNLVAHPKGKPV 1105 Query: 426 KTINELSVTQKGL 438 + ++ +S +K L Sbjct: 1106 RRLSSMSGGEKSL 1118 >MJAN-DSM-01-001277 MJ1254 hypothetical protein Length = 469 Score = 45.4 bits (106), Expect = 7e-07 Identities = 43/193 (22%), Positives = 89/193 (46%), Gaps = 34/193 (17%) Query: 541 KNI--EISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSN------------ 586 KNI E++ + K + E+ +NL+ ++K ++D+L K N N+ K Sbjct: 283 KNIKNELTSLKNKLKEKEEEIKNLAIKIKDLEDKLSKANK-NLLNKDEIISVLNERISEY 341 Query: 587 -------------YENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAF 633 Y+ KI S N+ ++ L END LK ++++L +I + ++ L +F Sbjct: 342 ESQIQKLLDENIIYKEKIESLNKYIETLKKENDKLKDKVRELSDIAKKYMEEKRGVLWSF 401 Query: 634 QKNNEQLQKLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIVLK 693 +E K+ ++++ K H +++ + + K + + L D K ++++ I + Sbjct: 402 LTEDE---KIIIDLI--KKHGHITQKEIVEITGMSKPKVSRIISELEDRKIIRKEKIG-R 455 Query: 694 SEKQDITAEKLEL 706 K +T E +L Sbjct: 456 INKLTLTEESKKL 468 Score = 43.5 bits (101), Expect = 3e-06 Identities = 40/165 (24%), Positives = 83/165 (50%), Gaps = 21/165 (12%) Query: 464 TRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLESERSTLSSQ---KNQI 520 +++++++ SL+N +K + EI +IK LE + S + K++I Sbjct: 274 SKRKIIERTKNIKNELTSLKNKLKEKEEEI---KNLAIKIKDLEDKLSKANKNLLNKDEI 330 Query: 521 ISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLN 580 IS L + ++YE ++KL +NI + K +SL + E L E K++D++ +L+++ Sbjct: 331 ISVLNERISEYESQIQKLLDENIIYKE---KIESLNKYIETLKKENDKLKDKVRELSDI- 386 Query: 581 ITTKSNYENK-------ISSQNEIVKALVSENDTLKQRIQQLVEI 618 K E K ++ +I+ L+ ++ + Q+ ++VEI Sbjct: 387 --AKKYMEEKRGVLWSFLTEDEKIIIDLIKKHGHITQK--EIVEI 427 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.305 0.123 0.316 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 88,508 Number of Sequences: 78 Number of extensions: 4717 Number of successful extensions: 235 Number of sequences better than 1.0e-05: 11 Number of HSP's better than 0.0 without gapping: 2 Number of HSP's successfully gapped in prelim test: 9 Number of HSP's that attempted gapping in prelim test: 42 Number of HSP's gapped (non-prelim): 51 length of query: 875 length of database: 48,235 effective HSP length: 71 effective length of query: 804 effective length of database: 42,697 effective search space: 34328388 effective search space used: 34328388 T: 11 A: 40 X1: 16 ( 7.0 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 43 (21.9 bits) S2: 97 (42.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-001450 ORFP:YDR420W HKR1, Chr IV from 1306256-1311664 (1802 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-001450 ORFP:YDR420W HKR1, Chr IV from 1306256-1311664 1398 0.0 >SCER-S28-01-001450 ORFP:YDR420W HKR1, Chr IV from 1306256-1311664 Length = 1802 Score = 1398 bits (3619), Expect = 0.0 Identities = 739/1014 (72%), Positives = 739/1014 (72%) Query: 789 YDIVYSPSTFAAISSGYTPXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXIATYEXXXXX 848 YDIVYSPSTFAAISSGYTP IATYE Sbjct: 789 YDIVYSPSTFAAISSGYTPSPSASVAMSSTSSSSPYDIVYSLSSSASRSSIATYEFSPSP 848 Query: 849 XXXXXXXXXXXXXXXXXXXXXXXXRYSTTSTIAPTQIHSTLSRITDFLLQTSMAXXXXXX 908 RYSTTSTIAPTQIHSTLSRITDFLLQTSMA Sbjct: 849 STSLPTSSTYTYFSSAYAFEFSSERYSTTSTIAPTQIHSTLSRITDFLLQTSMAIQSIVS 908 Query: 909 XXXXXXXXLNDEIHSSALSVFNPSASNLVETSLIISSTQASITSPKNSAKIXXXXXXXXX 968 LNDEIHSSALSVFNPSASNLVETSLIISSTQASITSPKNSAKI Sbjct: 909 QQISTSSTLNDEIHSSALSVFNPSASNLVETSLIISSTQASITSPKNSAKISSLQSQLSS 968 Query: 969 XTKNPYDTANKNTETSGRSTVVSNFLYTSSAAKPDNEKFXXXXXXXXXXXXXXXXXXXXX 1028 TKNPYDTANKNTETSGRSTVVSNFLYTSSAAKPDNEKF Sbjct: 969 STKNPYDTANKNTETSGRSTVVSNFLYTSSAAKPDNEKFSATPTEITTISSSSHAYSLSI 1028 Query: 1029 XXXHNSVTGLSHNFVDXXXXXXXXXXXXXXXXXXXXXXETIPASKSVSNTQERITSFTST 1088 HNSVTGLSHNFVD ETIPASKSVSNTQERITSFTST Sbjct: 1029 PSSHNSVTGLSHNFVDSSKSATSFGYSSSSISSIKLSKETIPASKSVSNTQERITSFTST 1088 Query: 1089 LRANSQSEKSEGRNSVGSLQSSHISSNPSLSTNTKVDSKSLSRKVSKXXXXXXXXXXXXX 1148 LRANSQSEKSEGRNSVGSLQSSHISSNPSLSTNTKVDSKSLSRKVSK Sbjct: 1089 LRANSQSEKSEGRNSVGSLQSSHISSNPSLSTNTKVDSKSLSRKVSKTMGENGEETGLTT 1148 Query: 1149 XXXQYKXXXXXXXXXXXXFTKISIGPATTAVQTQASTNSVFXXXXXXXXXXXXXXXXXXX 1208 QYK FTKISIGPATTAVQTQASTNSVF Sbjct: 1149 TKTQYKSSSETSGSYSRSFTKISIGPATTAVQTQASTNSVFTAPALSTYPTTPYPSPNSY 1208 Query: 1209 XWLPTAIIVESSETGPTTASFNPSITGSLPNAIEPAVAVSEPINHTLITIGFTAALNYVF 1268 WLPTAIIVESSETGPTTASFNPSITGSLPNAIEPAVAVSEPINHTLITIGFTAALNYVF Sbjct: 1209 AWLPTAIIVESSETGPTTASFNPSITGSLPNAIEPAVAVSEPINHTLITIGFTAALNYVF 1268 Query: 1269 LVQNPLSSAQIFNFLPLVLKYPFSNTSSELDNSIGELSTFILSYRSGXXXXXXXXXXXXX 1328 LVQNPLSSAQIFNFLPLVLKYPFSNTSSELDNSIGELSTFILSYRSG Sbjct: 1269 LVQNPLSSAQIFNFLPLVLKYPFSNTSSELDNSIGELSTFILSYRSGSSTTTLSPKSISS 1328 Query: 1329 XXXXXXXXXXXXXXXXXXXEDLHPPQVDTSSIAVKKIVPMVDSSKAYIVSVAEVYFPTEA 1388 EDLHPPQVDTSSIAVKKIVPMVDSSKAYIVSVAEVYFPTEA Sbjct: 1329 LSVVKKKKNQQKKNATKSTEDLHPPQVDTSSIAVKKIVPMVDSSKAYIVSVAEVYFPTEA 1388 Query: 1389 VTYLQQLILDENSTLYSNPQTPLRSLAGLIDSGIPXXXXXXXXXXXXXYVPXXXXXXXXX 1448 VTYLQQLILDENSTLYSNPQTPLRSLAGLIDSGIP YVP Sbjct: 1389 VTYLQQLILDENSTLYSNPQTPLRSLAGLIDSGIPLGGLTLYGSGDGGYVPSLTSSSVLD 1448 Query: 1449 XXKGNSQNIDGTYKYGALDDFINSFTDSASAGKYAVKIIIFLIVLTIGXXXXXXXXXXXX 1508 KGNSQNIDGTYKYGALDDFINSFTDSASAGKYAVKIIIFLIVLTIG Sbjct: 1449 SSKGNSQNIDGTYKYGALDDFINSFTDSASAGKYAVKIIIFLIVLTIGVLLWLFVAFFAF 1508 Query: 1509 RHRNILLKRHPRNCIGKXXXXXXXXXXXXXXXXXXGNQVYNEKPPESENESVYSAVDDHY 1568 RHRNILLKRHPRNCIGK GNQVYNEKPPESENESVYSAVDDHY Sbjct: 1509 RHRNILLKRHPRNCIGKSLNNERELESTELSRSSSGNQVYNEKPPESENESVYSAVDDHY 1568 Query: 1569 IVTGENTVYNTIHRLHYTINDDGDLLYRDAIPLDFDQTNGDDGSGIDSIVRDCVYDKNQD 1628 IVTGENTVYNTIHRLHYTINDDGDLLYRDAIPLDFDQTNGDDGSGIDSIVRDCVYDKNQD Sbjct: 1569 IVTGENTVYNTIHRLHYTINDDGDLLYRDAIPLDFDQTNGDDGSGIDSIVRDCVYDKNQD 1628 Query: 1629 ATEAFLNDEESISGILDVDENGDIRLYDSYSDNEESNSFHLPDEVIENYNKNHLCETKLH 1688 ATEAFLNDEESISGILDVDENGDIRLYDSYSDNEESNSFHLPDEVIENYNKNHLCETKLH Sbjct: 1629 ATEAFLNDEESISGILDVDENGDIRLYDSYSDNEESNSFHLPDEVIENYNKNHLCETKLH 1688 Query: 1689 GLGTESCTTDDPDTGNQITNEFSTGSQTCLPSTAYTTPLHTNSIKLHTLRYTESSLPKPN 1748 GLGTESCTTDDPDTGNQITNEFSTGSQTCLPSTAYTTPLHTNSIKLHTLRYTESSLPKPN Sbjct: 1689 GLGTESCTTDDPDTGNQITNEFSTGSQTCLPSTAYTTPLHTNSIKLHTLRYTESSLPKPN 1748 Query: 1749 QTLFSNXXXXXXXXXXXNGSVSDVHIEELDALDEELYKRMSKVIKQQNHQTTKI 1802 QTLFSN NGSVSDVHIEELDALDEELYKRMSKVIKQQNHQTTKI Sbjct: 1749 QTLFSNLEDLEIEDIDDNGSVSDVHIEELDALDEELYKRMSKVIKQQNHQTTKI 1802 Score = 461 bits (1185), Expect = e-131 Identities = 252/435 (57%), Positives = 252/435 (57%) Query: 17 NAIEAYSNDTIYSTSYNNGIEXXXXXXXXXXXXXXXXNKENAITSSSETTTMAGQYGESG 76 NAIEAYSNDTIYSTSYNNGIE NKENAITSSSETTTMAGQYGESG Sbjct: 17 NAIEAYSNDTIYSTSYNNGIESTPSYSTSAISSTGSSNKENAITSSSETTTMAGQYGESG 76 Query: 77 STTIMDEQETGXXXXXXXXXXXXXXXXXXXXVKKSTEIATPSSSIVPTPLQSYSDESQIS 136 STTIMDEQETG VKKSTEIATPSSSIVPTPLQSYSDESQIS Sbjct: 77 STTIMDEQETGTSSQYISVTTTTQTSDTMSSVKKSTEIATPSSSIVPTPLQSYSDESQIS 136 Query: 137 QTLSHNPKXXXXXXXXXXXXXXXXXXXXXXXXXXXXPREISPIITTDSQISKEEGTLAQT 196 QTLSHNPK PREISPIITTDSQISKEEGTLAQT Sbjct: 137 QTLSHNPKSVAESDSDTTSSESSSSVIISTSDSSAVPREISPIITTDSQISKEEGTLAQT 196 Query: 197 SSISETTRIAQMVTRVSQXXXXXXXXXXDGFSSESTQTDFSNTVSFENSVEEEYAMXXXX 256 SSISETTRIAQMVTRVSQ DGFSSESTQTDFSNTVSFENSVEEEYAM Sbjct: 197 SSISETTRIAQMVTRVSQISSITAASTIDGFSSESTQTDFSNTVSFENSVEEEYAMSKSQ 256 Query: 257 XXXXXXXXXXXXXXXXXXADKXXXXXXXXXXXXXXXXXXXXXXXXXRVAVGVSRPSSITQ 316 ADK RVAVGVSRPSSITQ Sbjct: 257 LSESYSSSSTVYSGGESTADKTSSSPITSFSSSYSQTTSTETSESSRVAVGVSRPSSITQ 316 Query: 317 TTSIDSFSMSEVELSTYYDLSAGNYPDQELIVDRPXXXXXXXXXXXXXQGVSRESNTFAV 376 TTSIDSFSMSEVELSTYYDLSAGNYPDQELIVDRP QGVSRESNTFAV Sbjct: 317 TTSIDSFSMSEVELSTYYDLSAGNYPDQELIVDRPATSSTAETSSEASQGVSRESNTFAV 376 Query: 377 SSISTTNFIXXXXXXXXXXXXXXXXXXXXXXHSTFXXXXXXXXXXXXXXXXXXXXXXXXX 436 SSISTTNFI HSTF Sbjct: 377 SSISTTNFIVSSASDTVVSTSSTNTVPYSSVHSTFVHATSSSTYISSSLYSSPSLSASVS 436 Query: 437 XXFGVAPFPSAYISF 451 FGVAPFPSAYISF Sbjct: 437 SHFGVAPFPSAYISF 451 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.308 0.125 0.339 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 93,857 Number of Sequences: 78 Number of extensions: 3219 Number of successful extensions: 13 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 7 Number of HSP's gapped (non-prelim): 2 length of query: 1802 length of database: 48,235 effective HSP length: 76 effective length of query: 1726 effective length of database: 42,307 effective search space: 73021882 effective search space used: 73021882 T: 11 A: 40 X1: 16 ( 7.1 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.7 bits) S2: 99 (42.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817, reverse complement (1336 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817,... 2375 0.0 >SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817, reverse complement Length = 1336 Score = 2375 bits (6154), Expect = 0.0 Identities = 1221/1336 (91%), Positives = 1221/1336 (91%) Query: 1 MRSSKSPFKRKSHSRETSHDENTSFFHKRTISGSSAHHSRNVSQGAVPSSAPPVSGGNYS 60 MRSSKSPFKRKSHSRETSHDENTSFFHKRTISGSSAHHSRNVSQGAVPSSAPPVSGGNYS Sbjct: 1 MRSSKSPFKRKSHSRETSHDENTSFFHKRTISGSSAHHSRNVSQGAVPSSAPPVSGGNYS 60 Query: 61 HKRNVSRASNSSQTSNFLAEQYERDRKAIINCCFSRPDHKTGEPPNNYITHVRIIEDSKF 120 HKRNVSRASNSSQTSNFLAEQYERDRKAIINCCFSRPDHKTGEPPNNYITHVRIIEDSKF Sbjct: 61 HKRNVSRASNSSQTSNFLAEQYERDRKAIINCCFSRPDHKTGEPPNNYITHVRIIEDSKF 120 Query: 121 PSSRPPPDSKLENKKKRLLILSAKPNNAKLIQIHKARENSDGSFQIGRTWQLTELVRVEK 180 PSSRPPPDSKLENKKKRLLILSAKPNNAKLIQIHKARENSDGSFQIGRTWQLTELVRVEK Sbjct: 121 PSSRPPPDSKLENKKKRLLILSAKPNNAKLIQIHKARENSDGSFQIGRTWQLTELVRVEK 180 Query: 181 DLEISEGFILTMSKKYYWETNSAKERTVFIKSLITLYIQTFEGHVPELVNWDLSLFYLDE 240 DLEISEGFILTMSKKYYWETNSAKERTVFIKSLITLYIQTFEGHVPELVNWDLSLFYLDE Sbjct: 181 DLEISEGFILTMSKKYYWETNSAKERTVFIKSLITLYIQTFEGHVPELVNWDLSLFYLDE 240 Query: 241 RSYQRAVITNRPGSVSPIKSPTSNFTTNTTQSVGSVPFSAPTERTRRSETESVNPVSTPA 300 RSYQRAVITNRPGSVSPIKSPTSNFTTNTTQSVGSVPFSAPTERTRRSETESVNPVSTPA Sbjct: 241 RSYQRAVITNRPGSVSPIKSPTSNFTTNTTQSVGSVPFSAPTERTRRSETESVNPVSTPA 300 Query: 301 SVEYHAGMKSLNKAPYSSNSTLNEVNKRYXXXXXXXXXXXXXXXXXXXXXXXXXXXNEMX 360 SVEYHAGMKSLNKAPYSSNSTLNEVNKRY NEM Sbjct: 301 SVEYHAGMKSLNKAPYSSNSTLNEVNKRYELEQQQQQEEAELRRLEEQKRLQLQKENEMK 360 Query: 361 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXAKKQMXXXXXXXXXXXXXXXXXX 420 AKKQM Sbjct: 361 RLEEERRIKQEERKRQMELEHQRQLEEEERKRQMELEAKKQMELKRQRQFEEEQRLKKER 420 Query: 421 XXXXXXXXQREQETAXXXXXXXXXXXXXXXXXXXXXXXXVDNESYTQEINGKVDNLLEDL 480 QREQETA VDNESYTQEINGKVDNLLEDL Sbjct: 421 ELLEIQRKQREQETAERLKKEEQEALAKKEEEEKSKRNKVDNESYTQEINGKVDNLLEDL 480 Query: 481 NAVLAEETETTPTMQNGTYVPERSTARAHDQLKKPLNIAKVESLGGSDLNDSISLSDEIA 540 NAVLAEETETTPTMQNGTYVPERSTARAHDQLKKPLNIAKVESLGGSDLNDSISLSDEIA Sbjct: 481 NAVLAEETETTPTMQNGTYVPERSTARAHDQLKKPLNIAKVESLGGSDLNDSISLSDEIA 540 Query: 541 GLNTSNLSGEDQDEKNDLSFEKGDEVRYSNNFEGEAPHVYHEVSIIQEEAPAVSQKLILP 600 GLNTSNLSGEDQDEKNDLSFEKGDEVRYSNNFEGEAPHVYHEVSIIQEEAPAVSQKLILP Sbjct: 541 GLNTSNLSGEDQDEKNDLSFEKGDEVRYSNNFEGEAPHVYHEVSIIQEEAPAVSQKLILP 600 Query: 601 EENNESEALIESKEEIKTMENIDDEVLLEILTDINWSIEDDADSMIERIDLRLAETEYLF 660 EENNESEALIESKEEIKTMENIDDEVLLEILTDINWSIEDDADSMIERIDLRLAETEYLF Sbjct: 601 EENNESEALIESKEEIKTMENIDDEVLLEILTDINWSIEDDADSMIERIDLRLAETEYLF 660 Query: 661 NQNLLSLQKIGPNIRPYEDKVNDECHRIIPTLSLFLMEMSNFSNDIENVESQDNGLQVES 720 NQNLLSLQKIGPNIRPYEDKVNDECHRIIPTLSLFLMEMSNFSNDIENVESQDNGLQVES Sbjct: 661 NQNLLSLQKIGPNIRPYEDKVNDECHRIIPTLSLFLMEMSNFSNDIENVESQDNGLQVES 720 Query: 721 ANKKLLWNTLDELLKTVSLDEISLNQLLECPIREKNLPWMENQLNLLLKAFQAIGSDGNE 780 ANKKLLWNTLDELLKTVSLDEISLNQLLECPIREKNLPWMENQLNLLLKAFQAIGSDGNE Sbjct: 721 ANKKLLWNTLDELLKTVSLDEISLNQLLECPIREKNLPWMENQLNLLLKAFQAIGSDGNE 780 Query: 781 VEYNLREISGLKQRLQFYEKVTKIFLNRIVEEMQKKFSNIRGQDISHDQMIRILTTLLIF 840 VEYNLREISGLKQRLQFYEKVTKIFLNRIVEEMQKKFSNIRGQDISHDQMIRILTTLLIF Sbjct: 781 VEYNLREISGLKQRLQFYEKVTKIFLNRIVEEMQKKFSNIRGQDISHDQMIRILTTLLIF 840 Query: 841 SPLILFCKEISQKSYQAIVENWNVSIQPVYMELWTKKISQLQGIDTNDEKMNELSLSQLL 900 SPLILFCKEISQKSYQAIVENWNVSIQPVYMELWTKKISQLQGIDTNDEKMNELSLSQLL Sbjct: 841 SPLILFCKEISQKSYQAIVENWNVSIQPVYMELWTKKISQLQGIDTNDEKMNELSLSQLL 900 Query: 901 NEWDTFRKERKTNDINPVFKNSFSLLTECLQTMRQECIVYQNFVEVFFHISSKHNFEEYI 960 NEWDTFRKERKTNDINPVFKNSFSLLTECLQTMRQECIVYQNFVEVFFHISSKHNFEEYI Sbjct: 901 NEWDTFRKERKTNDINPVFKNSFSLLTECLQTMRQECIVYQNFVEVFFHISSKHNFEEYI 960 Query: 961 KHFNDPDAPPILLDTVKVMQSDREAAVIETQLVSRIFQPIVTRLSSYFVELVKAEPTVAP 1020 KHFNDPDAPPILLDTVKVMQSDREAAVIETQLVSRIFQPIVTRLSSYFVELVKAEPTVAP Sbjct: 961 KHFNDPDAPPILLDTVKVMQSDREAAVIETQLVSRIFQPIVTRLSSYFVELVKAEPTVAP 1020 Query: 1021 ALTFYLENEIKSLESSNHEFLLSAVTRMYTQIKQVWSDNVEEQVLHFERISNATTNGEIL 1080 ALTFYLENEIKSLESSNHEFLLSAVTRMYTQIKQVWSDNVEEQVLHFERISNATTNGEIL Sbjct: 1021 ALTFYLENEIKSLESSNHEFLLSAVTRMYTQIKQVWSDNVEEQVLHFERISNATTNGEIL 1080 Query: 1081 PGILDLPVGLKNSEDLFQFAKRSMDIKDTDEGYESIELMNSSFRKLSIAATRSITHKEVN 1140 PGILDLPVGLKNSEDLFQFAKRSMDIKDTDEGYESIELMNSSFRKLSIAATRSITHKEVN Sbjct: 1081 PGILDLPVGLKNSEDLFQFAKRSMDIKDTDEGYESIELMNSSFRKLSIAATRSITHKEVN 1140 Query: 1141 SSINPNLSDTAALNNDYMETISLLVNSNWLTEMLSMLNFNKDGIFDTSLQNVKKVFDVEK 1200 SSINPNLSDTAALNNDYMETISLLVNSNWLTEMLSMLNFNKDGIFDTSLQNVKKVFDVEK Sbjct: 1141 SSINPNLSDTAALNNDYMETISLLVNSNWLTEMLSMLNFNKDGIFDTSLQNVKKVFDVEK 1200 Query: 1201 ESYASFLLRDTMPKLTAFVYGVSNIIENTNNVNMTNPSRWAAYSRQNLENILLAYTSHEI 1260 ESYASFLLRDTMPKLTAFVYGVSNIIENTNNVNMTNPSRWAAYSRQNLENILLAYTSHEI Sbjct: 1201 ESYASFLLRDTMPKLTAFVYGVSNIIENTNNVNMTNPSRWAAYSRQNLENILLAYTSHEI 1260 Query: 1261 ETLVKRLHTHMVNDFGYHQENAINNVLCDKLWSCIQGQTVSLYLKLYTVIDKHYRGTNIR 1320 ETLVKRLHTHMVNDFGYHQENAINNVLCDKLWSCIQGQTVSLYLKLYTVIDKHYRGTNIR Sbjct: 1261 ETLVKRLHTHMVNDFGYHQENAINNVLCDKLWSCIQGQTVSLYLKLYTVIDKHYRGTNIR 1320 Query: 1321 FTKNDIISAFEEYKNA 1336 FTKNDIISAFEEYKNA Sbjct: 1321 FTKNDIISAFEEYKNA 1336 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.313 0.130 0.362 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 123,763 Number of Sequences: 78 Number of extensions: 6076 Number of successful extensions: 34 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 30 Number of HSP's gapped (non-prelim): 2 length of query: 1336 length of database: 48,235 effective HSP length: 74 effective length of query: 1262 effective length of database: 42,463 effective search space: 53588306 effective search space used: 53588306 T: 11 A: 40 X1: 16 ( 7.2 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.9 bits) S2: 98 (42.4 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-002073 ORFP:YGL073W HSF1, Chr VII from 368751-371252 (833 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-002073 ORFP:YGL073W HSF1, Chr VII from 368751-371252 1333 0.0 SCER-S28-01-002525 ORFP:YGR249W MGA1, Chr VII from 988045-989415 52 7e-09 >SCER-S28-01-002073 ORFP:YGL073W HSF1, Chr VII from 368751-371252 Length = 833 Score = 1333 bits (3451), Expect = 0.0 Identities = 674/833 (80%), Positives = 674/833 (80%) Query: 1 MNNAANTGTTNESNVSDAPRIEPLPSLNDDDIEKILQPNDIFXXXXXXXXXXXXXXXXXX 60 MNNAANTGTTNESNVSDAPRIEPLPSLNDDDIEKILQPNDIF Sbjct: 1 MNNAANTGTTNESNVSDAPRIEPLPSLNDDDIEKILQPNDIFTTDRTDASTTSSTAIEDI 60 Query: 61 XNPSLDPQXXXXXXXXXXXXHDSRKPSTSTHLVRRGTPLGIYQTNLYGHNSRENTNPNST 120 NPSLDPQ HDSRKPSTSTHLVRRGTPLGIYQTNLYGHNSRENTNPNST Sbjct: 61 INPSLDPQSAASPVPSSSFFHDSRKPSTSTHLVRRGTPLGIYQTNLYGHNSRENTNPNST 120 Query: 121 LLSSKLLAHPPVPYGQNPDLLQHAVYRAQPSSGTTNAQPRQTTRRYQSHKSRPAFVNKLW 180 LLSSKLLAHPPVPYGQNPDLLQHAVYRAQPSSGTTNAQPRQTTRRYQSHKSRPAFVNKLW Sbjct: 121 LLSSKLLAHPPVPYGQNPDLLQHAVYRAQPSSGTTNAQPRQTTRRYQSHKSRPAFVNKLW 180 Query: 181 SMLNDDSNTKLIQWAEDGKSFIVTNREEFVHQILPKYFKHSNFASFVRQLNMYGWHKVQD 240 SMLNDDSNTKLIQWAEDGKSFIVTNREEFVHQILPKYFKHSNFASFVRQLNMYGWHKVQD Sbjct: 181 SMLNDDSNTKLIQWAEDGKSFIVTNREEFVHQILPKYFKHSNFASFVRQLNMYGWHKVQD 240 Query: 241 VKSGSIQSSSDDKWQFENENFIRGREDLLEKIIRQKXXXXXXXXXXXXXXXXXXXXIPLD 300 VKSGSIQSSSDDKWQFENENFIRGREDLLEKIIRQK IPLD Sbjct: 241 VKSGSIQSSSDDKWQFENENFIRGREDLLEKIIRQKGSSNNHNSPSGNGNPANGSNIPLD 300 Query: 301 NAAGXXXXXXXXXXXXXXXXXGHLLQGKTLRLMNEANLGDKNDVTAILGELEQIKYNQIA 360 NAAG GHLLQGKTLRLMNEANLGDKNDVTAILGELEQIKYNQIA Sbjct: 301 NAAGSNNSNNNISSSNSFFNNGHLLQGKTLRLMNEANLGDKNDVTAILGELEQIKYNQIA 360 Query: 361 ISKDLLRINKDNELLWQENMMARERHRTQQQALEKMFRFLTSIVPHLDPKMIMDGLGDPK 420 ISKDLLRINKDNELLWQENMMARERHRTQQQALEKMFRFLTSIVPHLDPKMIMDGLGDPK Sbjct: 361 ISKDLLRINKDNELLWQENMMARERHRTQQQALEKMFRFLTSIVPHLDPKMIMDGLGDPK 420 Query: 421 VNNEKLNSANNIGLNRDNTGTIDELKSNDSFINDDRNSFTNATTNARNNMSPNNDDNSID 480 VNNEKLNSANNIGLNRDNTGTIDELKSNDSFINDDRNSFTNATTNARNNMSPNNDDNSID Sbjct: 421 VNNEKLNSANNIGLNRDNTGTIDELKSNDSFINDDRNSFTNATTNARNNMSPNNDDNSID 480 Query: 481 TASTNTTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXGSPIRPYKQRYLLK 540 TASTNTT GSPIRPYKQRYLLK Sbjct: 481 TASTNTTNRKKNIDENIKNNNDIINDIIFNTNLANNLSNYNSNNNAGSPIRPYKQRYLLK 540 Query: 541 NRANSSTSSENPSLTPFDIESNNDRKISEIPFXXXXXXXTDFRPFTSRDPNNQTSENTFD 600 NRANSSTSSENPSLTPFDIESNNDRKISEIPF TDFRPFTSRDPNNQTSENTFD Sbjct: 541 NRANSSTSSENPSLTPFDIESNNDRKISEIPFDDEEEEETDFRPFTSRDPNNQTSENTFD 600 Query: 601 PNRFTMLSDDDLKKDSHTNDNKHNESDLFWDNVHRNIDEQDARLQNLENMVHILSPGYPX 660 PNRFTMLSDDDLKKDSHTNDNKHNESDLFWDNVHRNIDEQDARLQNLENMVHILSPGYP Sbjct: 601 PNRFTMLSDDDLKKDSHTNDNKHNESDLFWDNVHRNIDEQDARLQNLENMVHILSPGYPN 660 Query: 661 XXXXXXXXXXXXXXXMESAVNVNSPGFNLQDYLTGEXXXXXXXXXXXXXXXXXTPLPMPN 720 MESAVNVNSPGFNLQDYLTGE TPLPMPN Sbjct: 661 KSFNNKTSSTNTNSNMESAVNVNSPGFNLQDYLTGESNSPNSVHSVPSNGSGSTPLPMPN 720 Query: 721 DNDTEHASTSVNQGENGSGLTPFLTVDDHTLNDNNTSEGSTRVSPDIKFSATENTKVSDN 780 DNDTEHASTSVNQGENGSGLTPFLTVDDHTLNDNNTSEGSTRVSPDIKFSATENTKVSDN Sbjct: 721 DNDTEHASTSVNQGENGSGLTPFLTVDDHTLNDNNTSEGSTRVSPDIKFSATENTKVSDN 780 Query: 781 LPSFNDHSYSTQADTAPENAKKRFXXXXXXXXXXXXQDPTEYNDHRLPKRAKK 833 LPSFNDHSYSTQADTAPENAKKRF QDPTEYNDHRLPKRAKK Sbjct: 781 LPSFNDHSYSTQADTAPENAKKRFVEEIPEPAIVEIQDPTEYNDHRLPKRAKK 833 >SCER-S28-01-002525 ORFP:YGR249W MGA1, Chr VII from 988045-989415 Length = 456 Score = 52.0 bits (123), Expect = 7e-09 Identities = 36/113 (31%), Positives = 58/113 (51%), Gaps = 14/113 (12%) Query: 175 FVNKLWSMLNDDSNTKLIQWAEDGKS--FIVTNREEFVHQILPKYFKHSNFASFVRQLNM 232 FV++L ++L + K I W+ + F+ F +L +YFKH N SFVRQL+M Sbjct: 6 FVHQLHAILLEPEVNKWIYWSPTDNTVFFLKPYDPNFSTHVLKRYFKHGNVNSFVRQLHM 65 Query: 233 YGWHKVQDVKSGSIQSSSDD-------KWQFENEN---FIRGREDLLEKIIRQ 275 YG+HK+ QSS+++ +W+F + + F +L KI R+ Sbjct: 66 YGFHKLSHPSPD--QSSANNGNVKELVEWKFTHPSGFFFKEANAGILNKIQRK 116 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.310 0.129 0.369 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 76,595 Number of Sequences: 78 Number of extensions: 3704 Number of successful extensions: 109 Number of sequences better than 1.0e-05: 2 Number of HSP's better than 0.0 without gapping: 2 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 102 Number of HSP's gapped (non-prelim): 2 length of query: 833 length of database: 48,235 effective HSP length: 70 effective length of query: 763 effective length of database: 42,775 effective search space: 32637325 effective search space used: 32637325 T: 11 A: 40 X1: 16 ( 7.2 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.8 bits) S2: 96 (41.6 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-002137 ORFP:YGL137W SEC27, Chr VII from 249872-249889,250090-252741 (889 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-002137 ORFP:YGL137W SEC27, Chr VII from 249872-2498... 1731 0.0 >SCER-S28-01-002137 ORFP:YGL137W SEC27, Chr VII from 249872-249889,250090-252741 Length = 889 Score = 1731 bits (4483), Expect = 0.0 Identities = 858/889 (96%), Positives = 858/889 (96%) Query: 1 MKLDIKKTFSNRSDRVKGIDFHPTEPWVLTTLYSGRVELWNYETQVEVRSIQVTETPVRA 60 MKLDIKKTFSNRSDRVKGIDFHPTEPWVLTTLYSGRVELWNYETQVEVRSIQVTETPVRA Sbjct: 1 MKLDIKKTFSNRSDRVKGIDFHPTEPWVLTTLYSGRVELWNYETQVEVRSIQVTETPVRA 60 Query: 61 GKFIARKNWIIVGSDDFRIRVFNYNTGEKVVDFEAHPDYIRSIAVHPTKPYVLSGSDDLT 120 GKFIARKNWIIVGSDDFRIRVFNYNTGEKVVDFEAHPDYIRSIAVHPTKPYVLSGSDDLT Sbjct: 61 GKFIARKNWIIVGSDDFRIRVFNYNTGEKVVDFEAHPDYIRSIAVHPTKPYVLSGSDDLT 120 Query: 121 VKLWNWENNWALEQTFEGHEHFVMCVAFNPKDPSTFASGCLDRTVKVWSLGQSTPNFTLT 180 VKLWNWENNWALEQTFEGHEHFVMCVAFNPKDPSTFASGCLDRTVKVWSLGQSTPNFTLT Sbjct: 121 VKLWNWENNWALEQTFEGHEHFVMCVAFNPKDPSTFASGCLDRTVKVWSLGQSTPNFTLT 180 Query: 181 TGQERGVNYVDYYPLPDKPYMITASDDLTIKIWDYQTKSCVATLEGHMSNVSFAVFHPTL 240 TGQERGVNYVDYYPLPDKPYMITASDDLTIKIWDYQTKSCVATLEGHMSNVSFAVFHPTL Sbjct: 181 TGQERGVNYVDYYPLPDKPYMITASDDLTIKIWDYQTKSCVATLEGHMSNVSFAVFHPTL 240 Query: 241 PIIISGSEDGTLKIWNSSTYKVEKTLNVGLERSWCIATHPTGRKNYIASGFDNGFTVLSL 300 PIIISGSEDGTLKIWNSSTYKVEKTLNVGLERSWCIATHPTGRKNYIASGFDNGFTVLSL Sbjct: 241 PIIISGSEDGTLKIWNSSTYKVEKTLNVGLERSWCIATHPTGRKNYIASGFDNGFTVLSL 300 Query: 301 GNDEPTLSLDPVGKLVWSGGKNAAASDIFTAVIRGNEEVEQDEPLSLQTKELGSVDVFPQ 360 GNDEPTLSLDPVGKLVWSGGKNAAASDIFTAVIRGNEEVEQDEPLSLQTKELGSVDVFPQ Sbjct: 301 GNDEPTLSLDPVGKLVWSGGKNAAASDIFTAVIRGNEEVEQDEPLSLQTKELGSVDVFPQ 360 Query: 361 SLAHSPNGRFVTVVGDGEYVIYTALAWRNKAFGKCQDFVWGPDSNSYALIDETGQIKYYK 420 SLAHSPNGRFVTVVGDGEYVIYTALAWRNKAFGKCQDFVWGPDSNSYALIDETGQIKYYK Sbjct: 361 SLAHSPNGRFVTVVGDGEYVIYTALAWRNKAFGKCQDFVWGPDSNSYALIDETGQIKYYK 420 Query: 421 NFKEVTSWSVPMHSAIDRLFSGALLGVKSDGFVYFFDWDNGTLVRRIDVNAKDVIWSDNG 480 NFKEVTSWSVPMHSAIDRLFSGALLGVKSDGFVYFFDWDNGTLVRRIDVNAKDVIWSDNG Sbjct: 421 NFKEVTSWSVPMHSAIDRLFSGALLGVKSDGFVYFFDWDNGTLVRRIDVNAKDVIWSDNG 480 Query: 481 ELVMIVNTNSNGDEASGYTLLFNKDAYLEAANNGNIDDSEGVDEAFDVLYELSESITSGK 540 ELVMIVNTNSNGDEASGYTLLFNKDAYLEAANNGNIDDSEGVDEAFDVLYELSESITSGK Sbjct: 481 ELVMIVNTNSNGDEASGYTLLFNKDAYLEAANNGNIDDSEGVDEAFDVLYELSESITSGK 540 Query: 541 WVGDVFIFTTATNRLNYFVGGKTYNLAHYTKEMYLLGYLARDNKVYLADREVHVYGYEIS 600 WVGDVFIFTTATNRLNYFVGGKTYNLAHYTKEMYLLGYLARDNKVYLADREVHVYGYEIS Sbjct: 541 WVGDVFIFTTATNRLNYFVGGKTYNLAHYTKEMYLLGYLARDNKVYLADREVHVYGYEIS 600 Query: 601 LEVLEFQTLTLRGEIEEAIENVLPNVEGKDSLTKIARFLEGQEYYEEALNISPDQDQKFE 660 LEVLEFQTLTLRGEIEEAIENVLPNVEGKDSLTKIARFLEGQEYYEEALNISPDQDQKFE Sbjct: 601 LEVLEFQTLTLRGEIEEAIENVLPNVEGKDSLTKIARFLEGQEYYEEALNISPDQDQKFE 660 Query: 661 LALKVGQLTLARDLLTDESAEMKWRALGDASLQRFNFKLAVEAFTNAHDLESLFLLHSSF 720 LALKVGQLTLARDLLTDESAEMKWRALGDASLQRFNFKLAVEAFTNAHDLESLFLLHSSF Sbjct: 661 LALKVGQLTLARDLLTDESAEMKWRALGDASLQRFNFKLAVEAFTNAHDLESLFLLHSSF 720 Query: 721 NNKEGLVTLAKDAERAGKFNLAFNAYWIAGDIQGAKDLLIKSQRFSEAAFLGSTYGLGDD 780 NNKEGLVTLAKDAERAGKFNLAFNAYWIAGDIQGAKDLLIKSQRFSEAAFLGSTYGLGDD Sbjct: 721 NNKEGLVTLAKDAERAGKFNLAFNAYWIAGDIQGAKDLLIKSQRFSEAAFLGSTYGLGDD 780 Query: 781 AVNDIVTKWKENLILNGKNTVSERVCGAEGLPGSSSSGDAQPLIDLDSTPAPEQADENKE 840 AVNDIVTKWKENLILNGKNTVSERVCGAEGLPGSSSSGDAQPLIDLDSTPAPEQADENKE Sbjct: 781 AVNDIVTKWKENLILNGKNTVSERVCGAEGLPGSSSSGDAQPLIDLDSTPAPEQADENKE 840 Query: 841 AEVEDSEFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXAVPEPVEEES 889 AEVEDSEF AVPEPVEEES Sbjct: 841 AEVEDSEFKESNSEAVEAEKKEEEAPQQQQSEQQPEQGEAVPEPVEEES 889 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.316 0.134 0.400 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 85,470 Number of Sequences: 78 Number of extensions: 3899 Number of successful extensions: 37 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 17 Number of HSP's gapped (non-prelim): 1 length of query: 889 length of database: 48,235 effective HSP length: 71 effective length of query: 818 effective length of database: 42,697 effective search space: 34926146 effective search space used: 34926146 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 41 (21.6 bits) S2: 97 (42.0 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-002414 ORFP:YGR142W BTN2, Chr VII from 772449-773681 (410 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-002414 ORFP:YGR142W BTN2, Chr VII from 772449-773681 627 0.0 >SCER-S28-01-002414 ORFP:YGR142W BTN2, Chr VII from 772449-773681 Length = 410 Score = 627 bits (1617), Expect = 0.0 Identities = 325/410 (79%), Positives = 325/410 (79%) Query: 1 MFSIFNSPCVFEQLPSFSQPLHSRYFDCSSPVSYYPECKRRKAIKANLRAPKKSDANCSE 60 MFSIFNSPCVFEQLPSFSQPLHSRYFDCSSPVSYYPECKRRKAIKANLRAPKKSDANCSE Sbjct: 1 MFSIFNSPCVFEQLPSFSQPLHSRYFDCSSPVSYYPECKRRKAIKANLRAPKKSDANCSE 60 Query: 61 PLRYALAETPNGYTLSLSKRIPYELFSKYVNEKLGELKENHYRPTYHVVQDFFGNQYYVE 120 PLRYALAETPNGYTLSLSKRIPYELFSKYVNEKLGELKENHYRPTYHVVQDFFGNQYYVE Sbjct: 61 PLRYALAETPNGYTLSLSKRIPYELFSKYVNEKLGELKENHYRPTYHVVQDFFGNQYYVE 120 Query: 121 DEADEDALLRSALKDLDFRAIGKKIAKDLFQDYEIELNHRGDELSILSKKDKIFKEFSLD 180 DEADEDALLRSALKDLDFRAIGKKIAKDLFQDYEIELNHRGDELSILSKKDKIFKEFSLD Sbjct: 121 DEADEDALLRSALKDLDFRAIGKKIAKDLFQDYEIELNHRGDELSILSKKDKIFKEFSLD 180 Query: 181 QVFEDVFVIGCGVENIDDGSREKYALLKIGLVKHEEEISEGGINEPKMPIIESKIDESHD 240 QVFEDVFVIGCGVENIDDGSREKYALLKIGLVKHEEEISEGGINEPKMPIIESKIDESHD Sbjct: 181 QVFEDVFVIGCGVENIDDGSREKYALLKIGLVKHEEEISEGGINEPKMPIIESKIDESHD 240 Query: 241 DVNMXXXXXXXXXXXXXXXXXXXDQIKKWIEEERLMQEESRXXXXXXXXXXXXXXXXXXX 300 DVNM DQIKKWIEEERLMQEESR Sbjct: 241 DVNMSESLKEEEAEKAKEPLTKEDQIKKWIEEERLMQEESRKSEQEKAAKEDEERQKKEK 300 Query: 301 XXXXXXXXXSLINKQKTKRSQQKKLQNSKSLPIXXXXXXXXXXXXXXXXXXXXXXXXXXX 360 SLINKQKTKRSQQKKLQNSKSLPI Sbjct: 301 EARLKARKESLINKQKTKRSQQKKLQNSKSLPISEIEASNKNNNSNSGSAESDNESINSD 360 Query: 361 XXTTLDFSVSGNTLKKHASPLLXXXXXXXXXRYNESLSRSPKGNSIIEEI 410 TTLDFSVSGNTLKKHASPLL RYNESLSRSPKGNSIIEEI Sbjct: 361 SDTTLDFSVSGNTLKKHASPLLEDVEDEEVDRYNESLSRSPKGNSIIEEI 410 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.314 0.134 0.377 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 32,898 Number of Sequences: 78 Number of extensions: 1393 Number of successful extensions: 6 Number of sequences better than 1.0e-05: 1 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 3 Number of HSP's gapped (non-prelim): 1 length of query: 410 length of database: 48,235 effective HSP length: 65 effective length of query: 345 effective length of database: 43,165 effective search space: 14891925 effective search space used: 14891925 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (22.0 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-002525 ORFP:YGR249W MGA1, Chr VII from 988045-989415 (456 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-002525 ORFP:YGR249W MGA1, Chr VII from 988045-989415 676 0.0 SCER-S28-01-002073 ORFP:YGL073W HSF1, Chr VII from 368751-371252 52 4e-09 >SCER-S28-01-002525 ORFP:YGR249W MGA1, Chr VII from 988045-989415 Length = 456 Score = 676 bits (1743), Expect = 0.0 Identities = 347/456 (76%), Positives = 347/456 (76%) Query: 1 MQPKTFVHQLHAILLEPEVNKWIYWSPTDNTVFFLKPYDPNFSTHVLKRYFKHGNVNSFV 60 MQPKTFVHQLHAILLEPEVNKWIYWSPTDNTVFFLKPYDPNFSTHVLKRYFKHGNVNSFV Sbjct: 1 MQPKTFVHQLHAILLEPEVNKWIYWSPTDNTVFFLKPYDPNFSTHVLKRYFKHGNVNSFV 60 Query: 61 RQLHMYGFHKLSHPSPDQSSANNGNVKELVEWKFTHPSGFFFKEANAGILNKIQRKSTGV 120 RQLHMYGFHKLSHPSPDQSSANNGNVKELVEWKFTHPSGFFFKEANAGILNKIQRKSTGV Sbjct: 61 RQLHMYGFHKLSHPSPDQSSANNGNVKELVEWKFTHPSGFFFKEANAGILNKIQRKSTGV 120 Query: 121 GKDGKRKNILSPISVSYVDASRLNVLSQQSGPVSAREPSNMFMGSPVHYSTXXXXXXXXX 180 GKDGKRKNILSPISVSYVDASRLNVLSQQSGPVSAREPSNMFMGSPVHYST Sbjct: 121 GKDGKRKNILSPISVSYVDASRLNVLSQQSGPVSAREPSNMFMGSPVHYSTSQSPPHISI 180 Query: 181 XXXXXXXGPYLISSLPPQQPTVNMMRRQSISARMMNSYDYPNQFSTQDSIXXXXXXXXXX 240 GPYLISSLPPQQPTVNMMRRQSISARMMNSYDYPNQFSTQDSI Sbjct: 181 PQQQQSSGPYLISSLPPQQPTVNMMRRQSISARMMNSYDYPNQFSTQDSIVQPQQPQQVL 240 Query: 241 XXXXXXGPPMKKXXXXXXXXXXXXXXXPIVNYPMPYHPGAFAXXXXXXXXXXXXXXXXXX 300 GPPMKK PIVNYPMPYHPGAFA Sbjct: 241 SPQALSGPPMKKSGTLSSTDDLKTTSLPIVNYPMPYHPGAFAQQQQQQQQPLPTVPPYSS 300 Query: 301 XXXXXXXXXXXXXXXXXXXXXXGVCNNNVTLPKKSNISERQALDNHIQTLKNSLSTITDL 360 GVCNNNVTLPKKSNISERQALDNHIQTLKNSLSTITDL Sbjct: 301 YSTPFPSMMNSLSNSASNSPALGVCNNNVTLPKKSNISERQALDNHIQTLKNSLSTITDL 360 Query: 361 IEKHINSASQDENKTLTNDAMNKDLRTSLSLLQNSKEEIIQLESKWMSMQSVKTTALPLQ 420 IEKHINSASQDENKTLTNDAMNKDLRTSLSLLQNSKEEIIQLESKWMSMQSVKTTALPLQ Sbjct: 361 IEKHINSASQDENKTLTNDAMNKDLRTSLSLLQNSKEEIIQLESKWMSMQSVKTTALPLQ 420 Query: 421 ETTNXXXXXXXXXXXXXXXXXXXXXXGEVATKPASY 456 ETTN GEVATKPASY Sbjct: 421 ETTNTSSTLTSLTSSIIPKSIPIITKGEVATKPASY 456 >SCER-S28-01-002073 ORFP:YGL073W HSF1, Chr VII from 368751-371252 Length = 833 Score = 52.0 bits (123), Expect = 4e-09 Identities = 36/113 (31%), Positives = 58/113 (51%), Gaps = 14/113 (12%) Query: 6 FVHQLHAILLEPEVNKWIYWSPTDNTVFFLKPYDPNFSTHVLKRYFKHGNVNSFVRQLHM 65 FV++L ++L + K I W+ + F+ F +L +YFKH N SFVRQL+M Sbjct: 175 FVNKLWSMLNDDSNTKLIQWAEDGKS--FIVTNREEFVHQILPKYFKHSNFASFVRQLNM 232 Query: 66 YGFHKLSHPSPD--QSSANNGNVKELVEWKFTHPSGFFFKEANAGILNKIQRK 116 YG+HK+ QSS+++ +W+F + + F +L KI R+ Sbjct: 233 YGWHKVQDVKSGSIQSSSDD-------KWQFENEN---FIRGREDLLEKIIRQ 275 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.314 0.129 0.376 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 34,430 Number of Sequences: 78 Number of extensions: 1397 Number of successful extensions: 16 Number of sequences better than 1.0e-05: 2 Number of HSP's better than 0.0 without gapping: 2 Number of HSP's successfully gapped in prelim test: 0 Number of HSP's that attempted gapping in prelim test: 11 Number of HSP's gapped (non-prelim): 3 length of query: 456 length of database: 48,235 effective HSP length: 66 effective length of query: 390 effective length of database: 43,087 effective search space: 16803930 effective search space used: 16803930 T: 11 A: 40 X1: 16 ( 7.2 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (22.0 bits) S2: 94 (40.8 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-002584 ORFP:YHL009W-B YHL009W-B, Chr VIII from 85904-86989,86991-91313 (1802 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-002584 ORFP:YHL009W-B YHL009W-B, Chr VIII from 8590... 3508 0.0 SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 57 4e-10 SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 49 1e-07 >SCER-S28-01-002584 ORFP:YHL009W-B YHL009W-B, Chr VIII from 85904-86989,86991-91313 Length = 1802 Score = 3508 bits (9097), Expect = 0.0 Identities = 1750/1802 (97%), Positives = 1750/1802 (97%) Query: 1 MATPVRDETRNVIDDNISARIQSKVKTNDTVRQTPSSLRKVSIKDEQVKQYQRNLNRFKT 60 MATPVRDETRNVIDDNISARIQSKVKTNDTVRQTPSSLRKVSIKDEQVKQYQRNLNRFKT Sbjct: 1 MATPVRDETRNVIDDNISARIQSKVKTNDTVRQTPSSLRKVSIKDEQVKQYQRNLNRFKT 60 Query: 61 ILNGLKAEEEKLSETDDIQMLAEKLLKLGETIDKVENRIVDLVEKIQLLETNENNNILHE 120 ILNGLKAEEEKLSETDDIQMLAEKLLKLGETIDKVENRIVDLVEKIQLLETNENNNILHE Sbjct: 61 ILNGLKAEEEKLSETDDIQMLAEKLLKLGETIDKVENRIVDLVEKIQLLETNENNNILHE 120 Query: 121 HIDATGTYYLFDTLTSTNKRFYPKDCVFDYRTNNVENIPILLNNFKKFIKKYQFDDVFEN 180 HIDATGTYYLFDTLTSTNKRFYPKDCVFDYRTNNVENIPILLNNFKKFIKKYQFDDVFEN Sbjct: 121 HIDATGTYYLFDTLTSTNKRFYPKDCVFDYRTNNVENIPILLNNFKKFIKKYQFDDVFEN 180 Query: 181 DIIEIDPRENEILCKIIKEGLGESLDIMNTNTTDIFRIIDGLKNKYRSLHGRDVRIRAWE 240 DIIEIDPRENEILCKIIKEGLGESLDIMNTNTTDIFRIIDGLKNKYRSLHGRDVRIRAWE Sbjct: 181 DIIEIDPRENEILCKIIKEGLGESLDIMNTNTTDIFRIIDGLKNKYRSLHGRDVRIRAWE 240 Query: 241 KVLVDTTCRNSALLMNKLQKLVLMEKWIFSKCCQDCPNLKDYLQEAIMGTLHESLRNSVK 300 KVLVDTTCRNSALLMNKLQKLVLMEKWIFSKCCQDCPNLKDYLQEAIMGTLHESLRNSVK Sbjct: 241 KVLVDTTCRNSALLMNKLQKLVLMEKWIFSKCCQDCPNLKDYLQEAIMGTLHESLRNSVK 300 Query: 301 QRLYNIPHNVGINHEEFLINTVIETVIDLSPIADDQIENSCMYCKSVFHCSINCKKKPNR 360 QRLYNIPHNVGINHEEFLINTVIETVIDLSPIADDQIENSCMYCKSVFHCSINCKKKPNR Sbjct: 301 QRLYNIPHNVGINHEEFLINTVIETVIDLSPIADDQIENSCMYCKSVFHCSINCKKKPNR 360 Query: 361 ELGLTRPISQKPIIYKVHRDNNNLSPVQNEQKSWNKTQKKSNKVYNSKKLVIIDTGSGVN 420 ELGLTRPISQKPIIYKVHRDNNNLSPVQNEQKSWNKTQKKSNKVYNSKKLVIIDTGSGVN Sbjct: 361 ELGLTRPISQKPIIYKVHRDNNNLSPVQNEQKSWNKTQKKSNKVYNSKKLVIIDTGSGVN 420 Query: 421 ITNDKTLLHNYEDSNRSTRFFGIGKNSSVSVKGYGYIKIKNGHNNTDNKCLLTYYVPEEE 480 ITNDKTLLHNYEDSNRSTRFFGIGKNSSVSVKGYGYIKIKNGHNNTDNKCLLTYYVPEEE Sbjct: 421 ITNDKTLLHNYEDSNRSTRFFGIGKNSSVSVKGYGYIKIKNGHNNTDNKCLLTYYVPEEE 480 Query: 481 STIISCYDLAKKTKMVLSRKYTRLGNXXXXXXXXXVNGVIHVKMNELIERPSDDSKINAI 540 STIISCYDLAKKTKMVLSRKYTRLGN VNGVIHVKMNELIERPSDDSKINAI Sbjct: 481 STIISCYDLAKKTKMVLSRKYTRLGNKIIKIKTKIVNGVIHVKMNELIERPSDDSKINAI 540 Query: 541 KPTSSPGFKLNKRSITLEDAHKRMGHTGIQQIENSIKHNHYEESLDLIKEPNEFWCQTCK 600 KPTSSPGFKLNKRSITLEDAHKRMGHTGIQQIENSIKHNHYEESLDLIKEPNEFWCQTCK Sbjct: 541 KPTSSPGFKLNKRSITLEDAHKRMGHTGIQQIENSIKHNHYEESLDLIKEPNEFWCQTCK 600 Query: 601 ISKATKRNHYTGSMNNHSTDHEPGSSWCMDIFGPVSSSNADTKRYMLIMVDNNTRYCMTS 660 ISKATKRNHYTGSMNNHSTDHEPGSSWCMDIFGPVSSSNADTKRYMLIMVDNNTRYCMTS Sbjct: 601 ISKATKRNHYTGSMNNHSTDHEPGSSWCMDIFGPVSSSNADTKRYMLIMVDNNTRYCMTS 660 Query: 661 THFNKNAETILAQIRKNIQYVETQFDRKVREINSDRGTEFTNDQIEEYFISKGIHHILTS 720 THFNKNAETILAQIRKNIQYVETQFDRKVREINSDRGTEFTNDQIEEYFISKGIHHILTS Sbjct: 661 THFNKNAETILAQIRKNIQYVETQFDRKVREINSDRGTEFTNDQIEEYFISKGIHHILTS 720 Query: 721 TQDHAANGRAERYIRTIVTDATTLLRQSNLRVKFWEYAVTSATNIRNCLEHKSTGKLPLK 780 TQDHAANGRAERYIRTIVTDATTLLRQSNLRVKFWEYAVTSATNIRNCLEHKSTGKLPLK Sbjct: 721 TQDHAANGRAERYIRTIVTDATTLLRQSNLRVKFWEYAVTSATNIRNCLEHKSTGKLPLK 780 Query: 781 AISRQPVTVRLMSFLPFGEKGIIWNHNHKKLKPSGLPSIILCKDPNSYGYKFFIPSKNKI 840 AISRQPVTVRLMSFLPFGEKGIIWNHNHKKLKPSGLPSIILCKDPNSYGYKFFIPSKNKI Sbjct: 781 AISRQPVTVRLMSFLPFGEKGIIWNHNHKKLKPSGLPSIILCKDPNSYGYKFFIPSKNKI 840 Query: 841 VTSDNYTIPNYTMDGRVRNTQNIYKSHQFSSHNDNEEDQIETVTNLCEALENYEDDNKPI 900 VTSDNYTIPNYTMDGRVRNTQNIYKSHQFSSHNDNEEDQIETVTNLCEALENYEDDNKPI Sbjct: 841 VTSDNYTIPNYTMDGRVRNTQNIYKSHQFSSHNDNEEDQIETVTNLCEALENYEDDNKPI 900 Query: 901 TRLEDLFTEEELSQIDSNAKYPSPSNNLEGDLDYVFSDVEESGDYDVESELSTTNTSIST 960 TRLEDLFTEEELSQIDSNAKYPSPSNNLEGDLDYVFSDVEESGDYDVESELSTTNTSIST Sbjct: 901 TRLEDLFTEEELSQIDSNAKYPSPSNNLEGDLDYVFSDVEESGDYDVESELSTTNTSIST 960 Query: 961 DKNKILSNKDFNSELASTEISISEIDKKGLINTSHIDEDKYDEKVHRIPSIIQEKLVGSK 1020 DKNKILSNKDFNSELASTEISISEIDKKGLINTSHIDEDKYDEKVHRIPSIIQEKLVGSK Sbjct: 961 DKNKILSNKDFNSELASTEISISEIDKKGLINTSHIDEDKYDEKVHRIPSIIQEKLVGSK 1020 Query: 1021 NTIKINDENRISDRIRSKNIGSILNTGLSRCVDITDESITNKDESMHNAKPELIQEQFNK 1080 NTIKINDENRISDRIRSKNIGSILNTGLSRCVDITDESITNKDESMHNAKPELIQEQFNK Sbjct: 1021 NTIKINDENRISDRIRSKNIGSILNTGLSRCVDITDESITNKDESMHNAKPELIQEQFNK 1080 Query: 1081 TNHETSFPKEGSIGTNVKFRNTDNEISLKTGDTSLPIKTLESINNHHSNDYSTNKVEKFE 1140 TNHETSFPKEGSIGTNVKFRNTDNEISLKTGDTSLPIKTLESINNHHSNDYSTNKVEKFE Sbjct: 1081 TNHETSFPKEGSIGTNVKFRNTDNEISLKTGDTSLPIKTLESINNHHSNDYSTNKVEKFE 1140 Query: 1141 KENHHPPPIEDIVDMSDQTDMESNCQDGNNLKELKVTDKNVPTDNGTNVSPRLEQNIEAS 1200 KENHHPPPIEDIVDMSDQTDMESNCQDGNNLKELKVTDKNVPTDNGTNVSPRLEQNIEAS Sbjct: 1141 KENHHPPPIEDIVDMSDQTDMESNCQDGNNLKELKVTDKNVPTDNGTNVSPRLEQNIEAS 1200 Query: 1201 GSPVQTVNKSAFLNKEFSSLNMKRKRKRHDKNNSLTSYELERDKKRSKRNRVKLIPDNME 1260 GSPVQTVNKSAFLNKEFSSLNMKRKRKRHDKNNSLTSYELERDKKRSKRNRVKLIPDNME Sbjct: 1201 GSPVQTVNKSAFLNKEFSSLNMKRKRKRHDKNNSLTSYELERDKKRSKRNRVKLIPDNME 1260 Query: 1261 TVSAQKIRAIYYNEAISKNPDLKEKHEYKQAYHKELQNLKDMKVFDVDVKYSRSEIPDNL 1320 TVSAQKIRAIYYNEAISKNPDLKEKHEYKQAYHKELQNLKDMKVFDVDVKYSRSEIPDNL Sbjct: 1261 TVSAQKIRAIYYNEAISKNPDLKEKHEYKQAYHKELQNLKDMKVFDVDVKYSRSEIPDNL 1320 Query: 1321 IVPTNTIFTKKRNGIYKARIVCRGDTQSPDTYSVITTESLNHNHIKIFLMIANNRNMFMK 1380 IVPTNTIFTKKRNGIYKARIVCRGDTQSPDTYSVITTESLNHNHIKIFLMIANNRNMFMK Sbjct: 1321 IVPTNTIFTKKRNGIYKARIVCRGDTQSPDTYSVITTESLNHNHIKIFLMIANNRNMFMK 1380 Query: 1381 TLDINHAFLYAKLEEEIYIPHPHDRRCVVKLNKALYGLKQSPKEWNDHLRQYLNGIGLKD 1440 TLDINHAFLYAKLEEEIYIPHPHDRRCVVKLNKALYGLKQSPKEWNDHLRQYLNGIGLKD Sbjct: 1381 TLDINHAFLYAKLEEEIYIPHPHDRRCVVKLNKALYGLKQSPKEWNDHLRQYLNGIGLKD 1440 Query: 1441 NSYTPGLYQTEDKNLMIAVYVDDCVIAASNEQRLDEFINKLKSNFELKXXXXXXXXXXXX 1500 NSYTPGLYQTEDKNLMIAVYVDDCVIAASNEQRLDEFINKLKSNFELK Sbjct: 1441 NSYTPGLYQTEDKNLMIAVYVDDCVIAASNEQRLDEFINKLKSNFELKITGTLIDDVLDT 1500 Query: 1501 XXXXMDLVYNKRLGTIDLTLKSFINRMDKKYNEELKKIRKSSIPHMSTYKIDPKKDVLQM 1560 MDLVYNKRLGTIDLTLKSFINRMDKKYNEELKKIRKSSIPHMSTYKIDPKKDVLQM Sbjct: 1501 DILGMDLVYNKRLGTIDLTLKSFINRMDKKYNEELKKIRKSSIPHMSTYKIDPKKDVLQM 1560 Query: 1561 SEEEFRQGVLKLQQLLGELNYVRHKCRYDINFAVKKVARLVNYPHERVFYMIYKIIQYLV 1620 SEEEFRQGVLKLQQLLGELNYVRHKCRYDINFAVKKVARLVNYPHERVFYMIYKIIQYLV Sbjct: 1561 SEEEFRQGVLKLQQLLGELNYVRHKCRYDINFAVKKVARLVNYPHERVFYMIYKIIQYLV 1620 Query: 1621 RYKDIGIHYDRDCNKDKKVIAITDASVGSEYDAQSRIGVILWYGMNIFNVYSNKSTNRCV 1680 RYKDIGIHYDRDCNKDKKVIAITDASVGSEYDAQSRIGVILWYGMNIFNVYSNKSTNRCV Sbjct: 1621 RYKDIGIHYDRDCNKDKKVIAITDASVGSEYDAQSRIGVILWYGMNIFNVYSNKSTNRCV 1680 Query: 1681 SSTEAELHAIYEGYADSETLKVTLKELGEGDNNDIVMITDSKPAIQGLNRSYQQPXXXXX 1740 SSTEAELHAIYEGYADSETLKVTLKELGEGDNNDIVMITDSKPAIQGLNRSYQQP Sbjct: 1681 SSTEAELHAIYEGYADSETLKVTLKELGEGDNNDIVMITDSKPAIQGLNRSYQQPKEKFT 1740 Query: 1741 XXXXXXXXXXXXXXXXXXXXXXGKGNIADLLTKPVSASDFKRFIQVLKNKITSQDILAST 1800 GKGNIADLLTKPVSASDFKRFIQVLKNKITSQDILAST Sbjct: 1741 WIKTEIIKEKIKEKSIKLLKITGKGNIADLLTKPVSASDFKRFIQVLKNKITSQDILAST 1800 Query: 1801 DY 1802 DY Sbjct: 1801 DY 1802 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 57.4 bits (137), Expect = 4e-10 Identities = 226/1168 (19%), Positives = 434/1168 (37%), Gaps = 199/1168 (17%) Query: 255 MNKLQKLVLMEKWIFSKCCQDCPNLKDYLQEAIMGTLHESLRNSVKQRLYNIPHNVGINH 314 + KLQ+ K + + + + L E ++ +E K ++ N H+ + Sbjct: 732 VEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEKYQILNSSHS-SLKE 790 Query: 315 EEFLINTVIETVID----------LSPIADDQIENSCMYCKSVFHCSINCKKKPNRELGL 364 ++ T ++ V D + D + + + + KS H + K E GL Sbjct: 791 NFSILETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKSTIHKQEDSIK--TLEKGL 848 Query: 365 TRPISQKPI----IYKVHRD----NNNLSPVQNEQKSWNKTQKKSNKVYNSKKLVIIDTG 416 +SQK I K+ +D + + V+ K+ K + KSN V + K+ + Sbjct: 849 ETILSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSN-VNHQKETKSLKED 907 Query: 417 SGVNITNDKTLLHNYEDSNRSTRFFGIGKNSSVSVKGYGYIKIKNGHNN-----TDNKCL 471 IT K + N E+ K +S + Y H+N T+ Sbjct: 908 IAAKITEIKAINENLEEMKIQCNNLSKEKEH-ISKELVEYKSRFQSHDNLVAKLTEKLKS 966 Query: 472 LTYYVPEEESTIISCYDLAKKTKMVLSRKYTRLGNXXXXXXXXXVNGVIHVKMNELIERP 531 L + ++ S +++K S + + L N ++ + K N IER Sbjct: 967 LANNYKDMQAENESLIKAVEESKNESSIQLSNLQNK--------IDSMSQEKENFQIERG 1018 Query: 532 SDDSKINAIKPTSSPGFKLNKRSITLEDAHKRMGHTGIQQIENSIKHNHYEESLDLIKEP 591 S + I +K T S + + I+ D+ K + YE + L+KE Sbjct: 1019 SIEKNIEQLKKTISDLEQTKEEIISKSDSSK----------------DEYESQISLLKEK 1062 Query: 592 NEFWC-----QTCKISKATKRNH--------YTGSMNNHSTDHEPGSSWCMDIFGPVSSS 638 E KIS+ TK Y N T E ++ + Sbjct: 1063 LETATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLETSEKALKEV--KENEE 1120 Query: 639 NADTKRYMLIMVDNNTRYCMTSTHFN-----KNAETILAQIRKNIQYV---ETQFDRKVR 690 + ++ L T+ + S N K E + AQ++K + + E Q++ ++ Sbjct: 1121 HLKEEKIQLEKEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEIS 1180 Query: 691 EINSDRGTEFTNDQIEEYFISKGIHHILTSTQDHAANGRAERYIRTIVTDATTLLRQSNL 750 ++N E T+ Q E I K + + + + ++ DA NL Sbjct: 1181 QLND----EITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDAL------NL 1230 Query: 751 RVKFWEYAVTSATNIRNCLEHKSTGKLPLKAISRQPVTVR-LMSFLPFGEKGIIWNHNHK 809 ++K E + TN + LE +K++ + V ++ L F EK + + Sbjct: 1231 QIK--ELKKKNETNEASLLES-------IKSVESETVKIKELQDECNFKEKEV--SELED 1279 Query: 810 KLKPSGLPSIILCKDPNSYGYKFFIPSKNKIVTSDNYTIPNYTMDGRVRNTQNIYKSHQF 869 KLK S +D NS Y KI + Sbjct: 1280 KLKAS--------EDKNSK-YLELQKESEKI-------------------------KEEL 1305 Query: 870 SSHNDNEEDQIETVTNLCEALENYEDDNKPITRLEDLFTEEELSQIDSNAKYPSPSNNLE 929 + + Q+E +TNL +A E E + ++RL+ +EE N E Sbjct: 1306 DAKTTELKIQLEKITNLSKAKEKSESE---LSRLKKTSSEER--------------KNAE 1348 Query: 930 GDLDYVFSDVE-ESGDYDVESELSTTNTSISTDK--NKILSNKDFNSELAS-TEISISEI 985 L+ + ++++ ++ ++ E +L +S T + KI + +D L + E+ EI Sbjct: 1349 EQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEI 1408 Query: 986 D--KKGLINTSHIDEDKYDEKVHRIPSIIQEKLVGSKNTIKINDENRISDRIRSKNIGSI 1043 D + L S +++ +EK + I S+ Q++++ K+ I NDE +S +K Sbjct: 1409 DNTRSELEKVSLSNDELLEEKQNTIKSL-QDEILSYKDKITRNDEKLLSIERDNKRDLES 1467 Query: 1044 LNTGLSRCVDI---TDESITNKDESMHNAKPELIQ-EQFNKTNHETSFPKEGSIGTNVK- 1098 L L + +E + +E K EL + ++ K T E + ++++ Sbjct: 1468 LKEQLRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLESTIESNETELKSSMET 1527 Query: 1099 FRNTDNEISLKTGDTSLPIKTLESINNHHSNDYSTNKVEKFEKENHHPPPIEDI-----V 1153 R +D ++ IK L+ H +++ + EK+ IE++ + Sbjct: 1528 IRKSDEKLEQSKKSAEEDIKNLQ-----HEKSDLISRINESEKD------IEELKSKLRI 1576 Query: 1154 DMSDQTDMESNCQDGNNLKELKVTDKNVPTDNGTNVSPRLEQNIEASGSPVQTVNKSAFL 1213 + +++E+ Q+ NN +E K+ + + T + +LE +IE Q KS Sbjct: 1577 EAKSGSELETVKQELNNAQE-KI---RINAEENTVLKSKLE-DIERELKDKQAEIKSNQE 1631 Query: 1214 NKEFSSLNMKRKRKRHDKNNSLTSYELERDKKRSKRNRVKLIPDNMETVSAQKIRAIYYN 1273 KE + +K + D T + ++ ++ + K + + + YN Sbjct: 1632 EKELLTSRLKELEQELDS----TQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYN 1687 Query: 1274 EAISKNPDLKE-----------KHEYKQAYHKELQNLKDMKVFDVDVKYSRSEIPDNLIV 1322 + ++K K + + + KEL NLK + RSEI D +++ Sbjct: 1688 DLVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSEIDDLMLL 1747 Query: 1323 PTNTIFTKKRNGIYKARIVCRGDTQSPD 1350 T+ ++N Y++++ G S D Sbjct: 1748 VTD---LDEKNAKYRSKLKDLGVEISSD 1772 >SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 Length = 1928 Score = 49.3 bits (116), Expect = 1e-07 Identities = 68/342 (19%), Positives = 146/342 (42%), Gaps = 44/342 (12%) Query: 1000 KYDEKVHRIPSIIQE-----KLVGSKNTIKINDENRISDRIRSKNIGSILNTGLSRCVDI 1054 K++E+++++ + +QE K + KN +N+ D + + N L V Sbjct: 865 KFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKT 924 Query: 1055 TDESITNKDESMHNAKPELIQEQFN-KTNHETSFPKEGSIGTNVKFRNTDNEISLKTGDT 1113 + E++ + + + + K E+ +E+ N E + K + ++ R E L + + Sbjct: 925 SSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLE-KLHSKNN 983 Query: 1114 SLPIKTLESINNHHSNDYSTN---KVEKFEKENHHPPPIEDIVDMSDQTDMESNCQDGNN 1170 L IK + +N S + S+ K K + EN ++D+++ ++ N + ++ Sbjct: 984 EL-IKQISDLNCDISKEQSSQSLIKESKLKLEN-EIKRLKDVINSKEEEIKSFNDKLSSS 1041 Query: 1171 LKELKVTDKNVPTDNGTNVSPRLEQNIEASGSPVQTVNK----------SAFLNKEFSSL 1220 ++L + K V + N++ Q++ S +++ N+ + NKE L Sbjct: 1042 EEDLDI--KLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELL 1099 Query: 1221 NMKRKRKRHDKNNSLTSYELERDKKRSKRNRVKLIPDNMETVSAQKIRAIYYNEAISKNP 1280 MK K H K L ++ +RD S+ ++ T ++ R I E S Sbjct: 1100 KMKEKIDNHKK--ELATFSKQRDDAVSEHGKI--------TAELKETR-IQLTEYKSNYQ 1148 Query: 1281 DLKEKHEYKQAYHKE---------LQNLKDMKVFDVDVKYSR 1313 +KE++ Q KE +++L D K+ +++ + S+ Sbjct: 1149 KIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQ 1190 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.314 0.132 0.375 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 184,443 Number of Sequences: 78 Number of extensions: 9390 Number of successful extensions: 67 Number of sequences better than 1.0e-05: 3 Number of HSP's better than 0.0 without gapping: 1 Number of HSP's successfully gapped in prelim test: 2 Number of HSP's that attempted gapping in prelim test: 61 Number of HSP's gapped (non-prelim): 11 length of query: 1802 length of database: 48,235 effective HSP length: 76 effective length of query: 1726 effective length of database: 42,307 effective search space: 73021882 effective search space used: 73021882 T: 11 A: 40 X1: 16 ( 7.3 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (22.0 bits) S2: 99 (42.7 bits) BLASTP 2.2.6 [Apr-09-2003] Reference: Altschul, Stephen F., Thomas L. Madden, Alejandro A. Schaffer, Jinghui Zhang, Zheng Zhang, Webb Miller, and David J. Lipman (1997), "Gapped BLAST and PSI-BLAST: a new generation of protein database search programs", Nucleic Acids Res. 25:3389-3402. Query= SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 (1928 letters) Database: tst.fasta 78 sequences; 48,235 total letters Searching.done Score E Sequences producing significant alignments: (bits) Value SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 3607 0.0 SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 150 3e-38 MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) 125 1e-30 SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 80 6e-17 MGEN-G37-01-000335 MG328 conserved hypothetical protein 75 1e-15 MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil pro... 72 2e-14 SYNE-PCC-01-000727 sll1120 60 5e-11 MJAN-DSM-01-001277 MJ1254 hypothetical protein 54 5e-09 SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817,... 53 8e-09 SYNE-PCC-01-001071 sll1583 53 1e-08 SYNE-PCC-01-000943 sll1424 52 1e-08 SCER-S28-01-002584 ORFP:YHL009W-B YHL009W-B, Chr VIII from 8590... 49 1e-07 >SCER-S28-01-002651 ORFP:YHR023W MYO1, Chr VIII from 151657-157443 Length = 1928 Score = 3607 bits (9354), Expect = 0.0 Identities = 1863/1928 (96%), Positives = 1863/1928 (96%) Query: 1 MTGGQSCSSNMIVWIPDEKEVFVKGELMSTDINKNKFTGQEEQIGIVHPLDSTEVSNLVQ 60 MTGGQSCSSNMIVWIPDEKEVFVKGELMSTDINKNKFTGQEEQIGIVHPLDSTEVSNLVQ Sbjct: 1 MTGGQSCSSNMIVWIPDEKEVFVKGELMSTDINKNKFTGQEEQIGIVHPLDSTEVSNLVQ 60 Query: 61 VRISDVFPVNPSTFDKVENMSELTHLNEPSVLYNLEKRYDCDLIYTYSGLFLVAINPYHN 120 VRISDVFPVNPSTFDKVENMSELTHLNEPSVLYNLEKRYDCDLIYTYSGLFLVAINPYHN Sbjct: 61 VRISDVFPVNPSTFDKVENMSELTHLNEPSVLYNLEKRYDCDLIYTYSGLFLVAINPYHN 120 Query: 121 LNLYSEDHINLYHNKHNRLSKSRLDENSHEKLPPHIFAIAEEAYENLLSEGKDQSILVTG 180 LNLYSEDHINLYHNKHNRLSKSRLDENSHEKLPPHIFAIAEEAYENLLSEGKDQSILVTG Sbjct: 121 LNLYSEDHINLYHNKHNRLSKSRLDENSHEKLPPHIFAIAEEAYENLLSEGKDQSILVTG 180 Query: 181 ESGAGKTENTKKILQYLASITSGSPSNIAPVSGSSIVESFEMKILQSNPILESFGNAQTV 240 ESGAGKTENTKKILQYLASITSGSPSNIAPVSGSSIVESFEMKILQSNPILESFGNAQTV Sbjct: 181 ESGAGKTENTKKILQYLASITSGSPSNIAPVSGSSIVESFEMKILQSNPILESFGNAQTV 240 Query: 241 RNNNSSRFGKFIKIEFNEHGMINGAHIEWYLLEKSRIVHQNSKERNYHIFYQLLSGLDDS 300 RNNNSSRFGKFIKIEFNEHGMINGAHIEWYLLEKSRIVHQNSKERNYHIFYQLLSGLDDS Sbjct: 241 RNNNSSRFGKFIKIEFNEHGMINGAHIEWYLLEKSRIVHQNSKERNYHIFYQLLSGLDDS 300 Query: 301 ELKNLRLKSRNVKDYKILSNSNQDIIPGINDVENFKELLSALNIIGFSKDQIRWIFQVVA 360 ELKNLRLKSRNVKDYKILSNSNQDIIPGINDVENFKELLSALNIIGFSKDQIRWIFQVVA Sbjct: 301 ELKNLRLKSRNVKDYKILSNSNQDIIPGINDVENFKELLSALNIIGFSKDQIRWIFQVVA 360 Query: 361 IILLIGNIEFVSDRAEQASFKNDVSAICSNLGVDEKDFQTAILRPRSKAGKEWVSQSKNS 420 IILLIGNIEFVSDRAEQASFKNDVSAICSNLGVDEKDFQTAILRPRSKAGKEWVSQSKNS Sbjct: 361 IILLIGNIEFVSDRAEQASFKNDVSAICSNLGVDEKDFQTAILRPRSKAGKEWVSQSKNS 420 Query: 421 QQAKFILNALSRNLYERLFGYIVDMINKNLDHGSATLNYIGLLDIAGFEIFENNSFEQLC 480 QQAKFILNALSRNLYERLFGYIVDMINKNLDHGSATLNYIGLLDIAGFEIFENNSFEQLC Sbjct: 421 QQAKFILNALSRNLYERLFGYIVDMINKNLDHGSATLNYIGLLDIAGFEIFENNSFEQLC 480 Query: 481 INYTNEKLQQFFNNHMFVLEQSEYLKENIQWDYIDYGKDLQLTIDLIESKGPPTGVLPLL 540 INYTNEKLQQFFNNHMFVLEQSEYLKENIQWDYIDYGKDLQLTIDLIESKGPPTGVLPLL Sbjct: 481 INYTNEKLQQFFNNHMFVLEQSEYLKENIQWDYIDYGKDLQLTIDLIESKGPPTGVLPLL 540 Query: 541 DEEAVLPKSTDESFYSKLISTWDQNSSKFKRSRLKNGFILKHYAGDVEYTVEGWXXXXXX 600 DEEAVLPKSTDESFYSKLISTWDQNSSKFKRSRLKNGFILKHYAGDVEYTVEGW Sbjct: 541 DEEAVLPKSTDESFYSKLISTWDQNSSKFKRSRLKNGFILKHYAGDVEYTVEGWLSKNKD 600 Query: 601 XXXXXXXXXXXXXXXXXXXKLFQPEGEKSSSAGVEANISNQEVKKSARTSTFKTTSSRHR 660 KLFQPEGEKSSSAGVEANISNQEVKKSARTSTFKTTSSRHR Sbjct: 601 PLNDNLLSLLSSSQNDIISKLFQPEGEKSSSAGVEANISNQEVKKSARTSTFKTTSSRHR 660 Query: 661 EQQITLLNQLASTHPHFVRCIIPNNVKKVKTFNRRLILDQLRCNGVLEGIRLAREGYPNR 720 EQQITLLNQLASTHPHFVRCIIPNNVKKVKTFNRRLILDQLRCNGVLEGIRLAREGYPNR Sbjct: 661 EQQITLLNQLASTHPHFVRCIIPNNVKKVKTFNRRLILDQLRCNGVLEGIRLAREGYPNR 720 Query: 721 IAFQEFFQRYRILYPENSTTTTFSSKLKASTKQNCEFLLTSLQLDTKVYKIGNTKLFFKA 780 IAFQEFFQRYRILYPENSTTTTFSSKLKASTKQNCEFLLTSLQLDTKVYKIGNTKLFFKA Sbjct: 721 IAFQEFFQRYRILYPENSTTTTFSSKLKASTKQNCEFLLTSLQLDTKVYKIGNTKLFFKA 780 Query: 781 GVLADLEKQKDVKLNNIMIKLTATIRGYTVRKEITYHLQKLKKTRVIGNTFRLYNRLVKE 840 GVLADLEKQKDVKLNNIMIKLTATIRGYTVRKEITYHLQKLKKTRVIGNTFRLYNRLVKE Sbjct: 781 GVLADLEKQKDVKLNNIMIKLTATIRGYTVRKEITYHLQKLKKTRVIGNTFRLYNRLVKE 840 Query: 841 DPWFNLFIRIKPLLTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELEN 900 DPWFNLFIRIKPLLTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELEN Sbjct: 841 DPWFNLFIRIKPLLTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELEN 900 Query: 901 TQDLLNQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQK 960 TQDLLNQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQK Sbjct: 901 TQDLLNQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQK 960 Query: 961 IQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRL 1020 IQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRL Sbjct: 961 IQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRL 1020 Query: 1021 KDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENF 1080 KDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENF Sbjct: 1021 KDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENF 1080 Query: 1081 KKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQL 1140 KKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQL Sbjct: 1081 KKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQL 1140 Query: 1141 TEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNK 1200 TEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNK Sbjct: 1141 TEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNK 1200 Query: 1201 RISGNSVETNIXXXXXXXXXXXXPLDKEDIIKKYYDLQLAFTEITRXXXXXXXXXXXXXS 1260 RISGNSVETNI PLDKEDIIKKYYDLQLAFTEITR S Sbjct: 1201 RISGNSVETNISSTRRSTSYSDDPLDKEDIIKKYYDLQLAFTEITRNLENEIEEKKNLIS 1260 Query: 1261 RLRFTETRLASSSFEDXXXXXXXXXXXXXXXDMDPSIPLDSILNEPLDNCPDKESDINKL 1320 RLRFTETRLASSSFED DMDPSIPLDSILNEPLDNCPDKESDINKL Sbjct: 1261 RLRFTETRLASSSFEDQKIKAQMKKLKKLIQDMDPSIPLDSILNEPLDNCPDKESDINKL 1320 Query: 1321 MLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKS 1380 MLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKS Sbjct: 1321 MLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKS 1380 Query: 1381 LEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKLQEILNESNGKLSQLT 1440 LEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKLQEILNESNGKLSQLT Sbjct: 1381 LEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKLQEILNESNGKLSQLT 1440 Query: 1441 LDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFENCMDDLQGNELRLR 1500 LDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFENCMDDLQGNELRLR Sbjct: 1441 LDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFENCMDDLQGNELRLR 1500 Query: 1501 EHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSDMQLQETLLELKRVQD 1560 EHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSDMQLQETLLELKRVQD Sbjct: 1501 EHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSDMQLQETLLELKRVQD 1560 Query: 1561 VKKILSDDLAHLKERLSAVEDRSQYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETS 1620 VKKILSDDLAHLKERLSAVEDRSQYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETS Sbjct: 1561 VKKILSDDLAHLKERLSAVEDRSQYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETS 1620 Query: 1621 TNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSL 1680 TNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSL Sbjct: 1621 TNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSL 1680 Query: 1681 TKIKQELESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSRNGELV 1740 TKIKQELESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSRNGELV Sbjct: 1681 TKIKQELESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSRNGELV 1740 Query: 1741 KTLQASCNGYKDKFDDEKQKNIDLYEENQTLQKLNTDLQLQLKNLHERLSDTTEKNAWLS 1800 KTLQASCNGYKDKFDDEKQKNIDLYEENQTLQKLNTDLQLQLKNLHERLSDTTEKNAWLS Sbjct: 1741 KTLQASCNGYKDKFDDEKQKNIDLYEENQTLQKLNTDLQLQLKNLHERLSDTTEKNAWLS 1800 Query: 1801 KIHELENMVSLETDLKYEEMKKNKSLERAVEELQTKNSQQTDVIELANKNRSEFEEATLK 1860 KIHELENMVSLETDLKYEEMKKNKSLERAVEELQTKNSQQTDVIELANKNRSEFEEATLK Sbjct: 1801 KIHELENMVSLETDLKYEEMKKNKSLERAVEELQTKNSQQTDVIELANKNRSEFEEATLK 1860 Query: 1861 YEAQISDLEKYISQQELEMKKSIRDNSSYRDKVQEMAQEIEFWKSRYESTMIGSKNIDSN 1920 YEAQISDLEKYISQQELEMKKSIRDNSSYRDKVQEMAQEIEFWKSRYESTMIGSKNIDSN Sbjct: 1861 YEAQISDLEKYISQQELEMKKSIRDNSSYRDKVQEMAQEIEFWKSRYESTMIGSKNIDSN 1920 Query: 1921 NAQSKIFS 1928 NAQSKIFS Sbjct: 1921 NAQSKIFS 1928 >SCER-S28-01-000806 ORFP:YDL058W USO1, Chr IV from 345664-351036 Length = 1790 Score = 150 bits (380), Expect = 3e-38 Identities = 200/989 (20%), Positives = 416/989 (42%), Gaps = 109/989 (11%) Query: 860 MTRTKKFNEQINKLKNDL----QEM----ESKKKFLEEKNQKTVNELENTQDLLNQEKEN 911 +++ KK + INK+ DL +EM E+ K +EK++ VN + T+ L KE+ Sbjct: 852 LSQKKKAEDGINKMGKDLFALSREMQAVEENCKNLQKEKDKSNVNHQKETKSL----KED 907 Query: 912 LRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIRER 971 + + + + + E ++ Q ++L EK+ IS+E +E + + L E ++ Sbjct: 908 IAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEYKSRFQSHDNLVAKLTEKLKSL 967 Query: 972 EATLEKLHSKNNELIK-----------QISDLNCDISKEQSSQSLIKESKLKLENEIKRL 1020 + + ++N LIK Q+S+L I + + + +E I++L Sbjct: 968 ANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQL 1027 Query: 1021 KDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENF 1080 K I+ E+ + K SS+++ + ++ L++ A + V + S+L E Sbjct: 1028 KKTISDLEQTKEEIISKSDSSKDEYESQISLLKEKLETATTANDENVNKISELTKTREEL 1087 Query: 1081 KKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQL 1140 + E AA N LKN+ ++ K++ +K L + + E ++ E ET+ QL Sbjct: 1088 EAELAAYKN-LKNE------LETKLETSEKALKEVKENEEHLKEEKIQLEKEATETKQQL 1140 Query: 1141 TEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNK 1200 ++N + +++E+ + + K+ E++ N + + E ++L+ EI+ Q N+ Sbjct: 1141 NSLRANLESLEKEHEDLAAQLKKYEEQIANK------ERQYNEEISQLNDEITSTQQENE 1194 Query: 1201 RISGNSVETNIXXXXXXXXXXXXPLDKEDIIKKYYD-LQLAFTEITRXXXXXXXXXXXXX 1259 I + E ++ ++ K D L L E+ + Sbjct: 1195 SIKKKNDELEGEVKAMKSTSE----EQSNLKKSEIDALNLQIKELKKKNETNEASLLESI 1250 Query: 1260 SRLRFTETRLASSSFEDXXXXXXXXXXXXXXXDMDPSIPLDSILNEPLDNCPDKESDINK 1319 + ++ E S L + L DK S + Sbjct: 1251 KSVESETVKIKELQDECNFKEKEV-----------------SELEDKLKASEDKNSKYLE 1293 Query: 1320 LMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVK 1379 L E + +K +LD +T + K + S S++ +LK +SEER K Sbjct: 1294 LQKESEKIKEELDAKT-------TELKIQLEKITNLSKAKEKSESELSRLKKTSSEER-K 1345 Query: 1380 SLEDKLKTMPLRDRTNLPVGDIIKNRDSISK--------YEEEIRYYKLENYKLQEILNE 1431 + E++L+ L++ + K R +++ Y E+I + E +LQ NE Sbjct: 1346 NAEEQLEK--LKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQ---NE 1400 Query: 1432 SNGKLSQLTLDLRQSKSKEALLS--EQLDRLQKDLESTE-----------RQKELLSSTI 1478 + K ++ D +S+ ++ LS E L+ Q ++S + R E L S Sbjct: 1401 NELKAKEI--DNTRSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIE 1458 Query: 1479 KQQKQQFENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWERE 1538 + K+ E+ + L+ + + LK+ EE+ + +EK K K+ E I E Sbjct: 1459 RDNKRDLESLKEQLRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLESTIESNE 1518 Query: 1539 MERNDSDMQLQETLLEL-KRVQDVKKILSDDLAHLKERLSAVEDRSQYTD-EINRLKEEL 1596 E S ET+ + ++++ KK +D+ +L+ S + R ++ +I LK +L Sbjct: 1519 TELKSS----METIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKL 1574 Query: 1597 NCSLKAETNL---KKEFATLKYKLETSTNDS---EAKISDLLKQLDHYTKVVEMLNNEKD 1650 K+ + L K+E + K+ + ++ ++K+ D+ ++L ++ EK+ Sbjct: 1575 RIEAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKE 1634 Query: 1651 AISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQ 1710 ++ KEL Q+ ++ + + + + + + Q +S L++K L+ L + Q Sbjct: 1635 LLTSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQ 1694 Query: 1711 KNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQA---SCNGYKDKFDDEKQKNIDLYEE 1767 K + +K ++ + ++E+ ++ + +K + N + + DD DL E+ Sbjct: 1695 AWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDRSEIDDLMLLVTDLDEK 1754 Query: 1768 NQTLQKLNTDLQLQLKNLHERLSDTTEKN 1796 N + DL +++ + E + E++ Sbjct: 1755 NAKYRSKLKDLGVEISSDEEDDEEDDEED 1783 Score = 150 bits (380), Expect = 3e-38 Identities = 230/1107 (20%), Positives = 477/1107 (43%), Gaps = 138/1107 (12%) Query: 839 KEDPW--FNLFIRIKPLLTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVN 896 KE P+ F I L N +R K+F + K D+ E L+E V Sbjct: 636 KESPFPRKEYFEFITKTLGKDNYASRIKQFKKDSYFSKVDMNEDSILTPELDETGLPKVY 695 Query: 897 ELENTQDLLNQEKENLRK------NESLLNRVKTSS-ETLQKQFDDLVSEKDEISREKLE 949 L N+ +R +E +N++ E LQ+Q L K EI+ + E Sbjct: 696 FSTYFIQLFNENIYRIRTALSHDPDEEPINKISFEEVEKLQRQCTKL---KGEITSLQTE 752 Query: 950 VAQNLEEAHQKIQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKES 1009 E +K+ L +E + + L+S ++ L + S L ++ + S Sbjct: 753 TESTHENLTEKLIALTNEHKELDEKYQILNSSHSSLKENFSILETELKNVRDSL------ 806 Query: 1010 KLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTE 1069 +E+ +L+DV+ +K++E ++ + S+ + + TLEK +S+ + Sbjct: 807 -----DEMTQLRDVLETKDKENQTALLEYKSTIHKQEDSIKTLEKGLETILSQKKKAEDG 861 Query: 1070 NSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKI 1129 + + +E A+ KN + E K K + NH+KE + + ++E I Sbjct: 862 INKMGKDLFALSREMQAVEENCKNLQKE--KDKSNV-NHQKETKSLKEDIAAKITEIKAI 918 Query: 1130 TAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLS 1189 L+E +IQ +N K KE S E K + Q N LV L + K+K L Sbjct: 919 NENLEEMKIQC----NNLSKEKEHISKELVEYKSRFQSHDN-LVAKLTE-KLKSLANNYK 972 Query: 1190 QEISLNQYLNKRISGNSVETNIXXXXXXXXXXXXPLDKEDIIKKYYDLQLAFTEITRXXX 1249 + N+ L K + + E++I +KE+ + ++ ++ + Sbjct: 973 DMQAENESLIKAVEESKNESSIQLSNLQNKIDSMSQEKENFQIERGSIEKNIEQLKK--- 1029 Query: 1250 XXXXXXXXXXSRLRFTETRLASSSFEDXXXXXXXXXXXXXXXDMDPSIPLDSILNEPLDN 1309 S L T+ + S S D S+L E L+ Sbjct: 1030 --------TISDLEQTKEEIISKS----------------DSSKDEYESQISLLKEKLET 1065 Query: 1310 CPD-KESDINKLMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYK 1368 + ++NK+ E+ + +L+ E A+ + +N + E+ L +S+ Sbjct: 1066 ATTANDENVNKIS-ELTKTREELEAELAAYKNLKNEL------------ETKLETSEKAL 1112 Query: 1369 LKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKLQEI 1428 + + +EE +K E+K++ T + + N +S+ K E++ +L+ Y+ ++I Sbjct: 1113 KEVKENEEHLK--EEKIQLEKEATETKQQLNSLRANLESLEKEHEDLA-AQLKKYE-EQI 1168 Query: 1429 LNES---NGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLE----STERQKELLSSTIKQQ 1481 N+ N ++SQL ++ ++ + + ++ D L+ +++ ++E Q L S I Sbjct: 1169 ANKERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDAL 1228 Query: 1482 KQQFENCMDDLQGNELRLREHIHA-------LKQAEEDV----KNMASIIEKLK-TQNKQ 1529 Q + + NE L E I + +K+ +++ K ++ + +KLK +++K Sbjct: 1229 NLQIKELKKKNETNEASLLESIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKN 1288 Query: 1530 KEKLIWEREME--RNDSDMQLQETLLELKRVQDVKKI---LSDDLAHLKERLSAVEDRSQ 1584 + L ++E E + + D + E ++L+++ ++ K +L+ LK+ S E+R Sbjct: 1289 SKYLELQKESEKIKEELDAKTTELKIQLEKITNLSKAKEKSESELSRLKKTSS--EERKN 1346 Query: 1585 YTDEINRLKEEL---NCSLKAETNLKKE-FATLKYKLETSTNDSEAKISDLLKQLDHYTK 1640 +++ +LK E+ N + + E L E +T+ + N E ++ L + + K Sbjct: 1347 AEEQLEKLKNEIQIKNQAFEKERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAK 1406 Query: 1641 VVEMLNNEKDAISLAEKELYQK----YEALNTECESLKGKIVSLTKIKQELESDLNQKTD 1696 ++ +E + +SL+ EL ++ ++L E S K KI + +E D + + Sbjct: 1407 EIDNTRSELEKVSLSNDELLEEKQNTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLE 1466 Query: 1697 ALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQASCNGYKDKFDD 1756 +L+ L ++ + ++ E +K LEE + + ++ E++K L+++ Sbjct: 1467 SLK---EQLRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLESTI--------- 1514 Query: 1757 EKQKNIDLYEENQTLQKLNTDLQLQLKNLHERLSDTT-EKNAWLSKIHELE-NMVSLETD 1814 + +L +T++K + L+ K+ E + + EK+ +S+I+E E ++ L++ Sbjct: 1515 -ESNETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSK 1573 Query: 1815 LKYEEMKKNKSLERAVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQISDLEKYISQ 1874 L+ E K LE +EL N+Q+ K R EE T+ ++++ D+E+ + Sbjct: 1574 LRI-EAKSGSELETVKQEL--NNAQE--------KIRINAEENTV-LKSKLEDIERELKD 1621 Query: 1875 QELEMKKSIRDNSSYRDKVQEMAQEIE 1901 ++ E+K + + +++E+ QE++ Sbjct: 1622 KQAEIKSNQEEKELLTSRLKELEQELD 1648 Score = 96.7 bits (239), Expect = 6e-22 Identities = 110/487 (22%), Positives = 226/487 (46%), Gaps = 50/487 (10%) Query: 746 KLKASTKQNCEFLLTSLQLDTKVYK----IGNTKLFFKAGVLADLEKQKDVKLNNIMIKL 801 KLKAS +N ++L LQ +++ K T+L + + +L K K+ K + + +L Sbjct: 1280 KLKASEDKNSKYL--ELQKESEKIKEELDAKTTELKIQLEKITNLSKAKE-KSESELSRL 1336 Query: 802 TATIRGYTVRKEITYHLQKLKKTRVIGNTFRLYNRLVKEDPWFNLFIRIKPLLTSSNDMT 861 T RK L+KLK N ++ N+ +++ L + T Sbjct: 1337 KKT--SSEERKNAEEQLEKLK------NEIQIKNQAFEKER----------KLLNEGSST 1378 Query: 862 RTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNR 921 T++++E+IN L+++L L+ +N+ E++NT+ L EK +L N+ LL Sbjct: 1379 ITQEYSEKINTLEDELIR-------LQNENELKAKEIDNTRSEL--EKVSL-SNDELLEE 1428 Query: 922 VKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSK 981 + + ++LQ D+++S KD+I+R ++ + + ++ L+E +R + + K+ Sbjct: 1429 KQNTIKSLQ---DEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESKAKVE-- 1483 Query: 982 NNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSS 1041 E +K++ + + SKE++ KE KLE+ I+ + + S E I+ ++KL S Sbjct: 1484 --EGLKKLEE---ESSKEKAELEKSKEMMKKLESTIESNETELKSSMETIRKSDEKLEQS 1538 Query: 1042 EEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKM 1101 ++ + + L+ + +SR+ + +L+SK + +A ++L+ + EL Sbjct: 1539 KKSAEEDIKNLQHEKSDLISRINESEKDIEELKSK----LRIEAKSGSELETVKQELNNA 1594 Query: 1102 KEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRET 1161 +EKI + +E + +D E AE+K + + S +++++E + Q++ Sbjct: 1595 QEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKELLTSRLKELEQELDSTQQKA 1654 Query: 1162 KEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNKRISGNSVETNIXXXXXXXXXX 1221 ++ E+++R + V K + E + E N +NK + E + Sbjct: 1655 QKSEEERR-AEVRKFQVEKSQLDEKAMLLETKYNDLVNKEQAWKRDEDTVKKTTDSQRQE 1713 Query: 1222 XXPLDKE 1228 L KE Sbjct: 1714 IEKLAKE 1720 Score = 92.0 bits (227), Expect = 2e-20 Identities = 136/603 (22%), Positives = 269/603 (44%), Gaps = 68/603 (11%) Query: 1363 SSDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPV------------GDIIKNRDSISK 1410 +S I + K ++ +V ED + T P D T LP +I + R ++S Sbjct: 659 ASRIKQFKKDSYFSKVDMNEDSILT-PELDETGLPKVYFSTYFIQLFNENIYRIRTALSH 717 Query: 1411 YEEEIRYYKLENYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQ 1470 +E K+ +++++ + ++T +++S L+E+L L + + + + Sbjct: 718 DPDEEPINKISFEEVEKLQRQCTKLKGEITSLQTETESTHENLTEKLIALTNEHKELDEK 777 Query: 1471 KELLSSTIKQQKQQFENCMDDLQGNELRLREHIHALKQAE-EDVKNMASIIEKLKTQNKQ 1529 ++L+S+ K+ F +L+ L E E +D +N +++E T +KQ Sbjct: 778 YQILNSSHSSLKENFSILETELKNVRDSLDEMTQLRDVLETKDKENQTALLEYKSTIHKQ 837 Query: 1530 KEKLIWEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEI 1589 ++ + + +E+ L+ L + K+ +D + DL L + AVE+ + + Sbjct: 838 EDSI---KTLEKG-----LETILSQKKKAEDGINKMGKDLFALSREMQAVEENCK---NL 886 Query: 1590 NRLKEELNCSLKAETNLKKEFATLKYKLETSTNDS--EAKI--SDLLKQLDHYTK-VVEM 1644 + K++ N + + ET KE K + N++ E KI ++L K+ +H +K +VE Sbjct: 887 QKEKDKSNVNHQKETKSLKEDIAAKITEIKAINENLEEMKIQCNNLSKEKEHISKELVEY 946 Query: 1645 LNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNAA 1704 + + +L K L +K ++L + ++ + SL K +E +++ + + LQ + Sbjct: 947 KSRFQSHDNLVAK-LTEKLKSLANNYKDMQAENESLIKAVEESKNESSIQLSNLQNKIDS 1005 Query: 1705 LSSSTQ----KNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQASCNGY-------KDK 1753 +S + + I + I+ L++T+ +EQ E++ +S + Y K+K Sbjct: 1006 MSQEKENFQIERGSIEKNIEQLKKTIS-DLEQTKE--EIISKSDSSKDEYESQISLLKEK 1062 Query: 1754 FDDEKQKNIDLYEENQTLQKLNTDLQLQL---KNLHERLS---DTTEKNAWLSKIHELEN 1807 + N + + L K +L+ +L KNL L +T+EK L+ Sbjct: 1063 LETATTANDENVNKISELTKTREELEAELAAYKNLKNELETKLETSEK--------ALKE 1114 Query: 1808 MVSLETDLKYEEMKKNKSLERAVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQISD 1867 + E LK E+++ K A E Q NS + + +E K + KYE QI++ Sbjct: 1115 VKENEEHLKEEKIQLEKE---ATETKQQLNSLRAN-LESLEKEHEDLAAQLKKYEEQIAN 1170 Query: 1868 LEKY----ISQQELEMKKSIRDNSSYRDKVQEMAQEIEFWKS-RYESTMIGSKNIDSNNA 1922 E+ ISQ E+ + ++N S + K E+ E++ KS E + + ID+ N Sbjct: 1171 KERQYNEEISQLNDEITSTQQENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEIDALNL 1230 Query: 1923 QSK 1925 Q K Sbjct: 1231 QIK 1233 Score = 87.0 bits (214), Expect = 5e-19 Identities = 103/461 (22%), Positives = 208/461 (45%), Gaps = 63/461 (13%) Query: 727 FQRYRILYPENSTTTTFSSKLKASTKQNCEFLLTSLQLDTKVYKIGNTKLFFKAGVLADL 786 F++ R L E S+T T K +T ++ E + + + K +I NT+ ++L Sbjct: 1365 FEKERKLLNEGSSTITQEYSEKINTLED-ELIRLQNENELKAKEIDNTR--------SEL 1415 Query: 787 EKQKDVKLNN--IMIKLTATIRGYTVRKEITYHLQKLKKTRVIGNTFRLYNRLVKEDPWF 844 EK V L+N ++ + TI+ +++ EI + K+ + N +L + ++ D Sbjct: 1416 EK---VSLSNDELLEEKQNTIK--SLQDEILSYKDKITR-----NDEKLLS--IERD--- 1460 Query: 845 NLFIRIKPLLTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENT--- 901 + L + + ++ ++ + L+E SK+K EK+++ + +LE+T Sbjct: 1461 ----NKRDLESLKEQLRAAQESKAKVEEGLKKLEEESSKEKAELEKSKEMMKKLESTIES 1516 Query: 902 -QDLLNQEKENLRKNESLLNRVKTSSE----TLQKQFDDLVS-----EKD-EISREKLEV 950 + L E +RK++ L + K S+E LQ + DL+S EKD E + KL + Sbjct: 1517 NETELKSSMETIRKSDEKLEQSKKSAEEDIKNLQHEKSDLISRINESEKDIEELKSKLRI 1576 Query: 951 ----AQNLEEAHQKIQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLI 1006 LE Q++ QE IR L SK ++ +++ D +I Q + L+ Sbjct: 1577 EAKSGSELETVKQELNNAQEKIRINAEENTVLKSKLEDIERELKDKQAEIKSNQEEKELL 1636 Query: 1007 KESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSL 1066 +LE E+ + EEE ++ K + LD K + LE Sbjct: 1637 TSRLKELEQELDSTQQKAQKSEEERRAEVRKFQVEKSQLDEKAMLLE------------- 1683 Query: 1067 VTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEH 1126 T+ +DL +K + +K+++ + ++ E+ K+ +++DN K E + + +D SE Sbjct: 1684 -TKYNDLVNKEQAWKRDEDTVKKTTDSQRQEIEKLAKELDNLKAENSKLKEANEDR-SEI 1741 Query: 1127 GKITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQK 1167 + + + + +Y+S + + E S+ + + +E +++ Sbjct: 1742 DDLMLLVTDLDEKNAKYRSKLKDLGVEISSDEEDDEEDDEE 1782 Score = 85.9 bits (211), Expect = 1e-18 Identities = 114/507 (22%), Positives = 225/507 (44%), Gaps = 67/507 (13%) Query: 746 KLKASTKQNCEFLLTSLQLDTKVYKIGNTKLFFKAGVLADLEKQKDVKLNNIMIKLTAT- 804 K TKQ L +L+ K ++ +L +A+ E+Q + +++ + ++T+T Sbjct: 1131 KEATETKQQLNSLRANLESLEKEHEDLAAQLKKYEEQIANKERQYNEEISQLNDEITSTQ 1190 Query: 805 ------------IRGYTVRKEITYHLQK-LKKTRVIGNTFRLYNRLVKEDPWFNLFIRIK 851 + G + T Q LKK+ + + L + +K+ N ++ Sbjct: 1191 QENESIKKKNDELEGEVKAMKSTSEEQSNLKKSEI--DALNLQIKELKKKNETNEASLLE 1248 Query: 852 PLLTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKE- 910 + + ++ + K+ ++ N + ++ E+E K K E+KN K + EL+ + + +E + Sbjct: 1249 SIKSVESETVKIKELQDECNFKEKEVSELEDKLKASEDKNSKYL-ELQKESEKIKEELDA 1307 Query: 911 -------------NL----RKNESLLNRV-KTSSETLQKQFDDLVSEKDE--ISREKLEV 950 NL K+ES L+R+ KTSSE + + L K+E I + E Sbjct: 1308 KTTELKIQLEKITNLSKAKEKSESELSRLKKTSSEERKNAEEQLEKLKNEIQIKNQAFEK 1367 Query: 951 AQNL--EEAHQKIQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKE 1008 + L E + Q E I E L +L ++N K+I + ++ K S + E Sbjct: 1368 ERKLLNEGSSTITQEYSEKINTLEDELIRLQNENELKAKEIDNTRSELEKVSLSNDELLE 1427 Query: 1009 SKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSR------ 1062 K +N IK L+D I S +++I ++KL S E D L +L++ A Sbjct: 1428 EK---QNTIKSLQDEILSYKDKITRNDEKLLSIERDNKRDLESLKEQLRAAQESKAKVEE 1484 Query: 1063 -LQSLVTENSDLRSKNENFKKEKAALNNQLKNKESEL-------LKMKEKIDNHKK---- 1110 L+ L E+S +++ E K+ L + +++ E+EL K EK++ KK Sbjct: 1485 GLKKLEEESSKEKAELEKSKEMMKKLESTIESNETELKSSMETIRKSDEKLEQSKKSAEE 1544 Query: 1111 ELATFSKQRDDAVSEHGKITAELKETRIQL---TEYKSNYQKIKEEYSNFQRETK---EQ 1164 ++ ++ D +S + +++E + +L + S + +K+E +N Q + + E+ Sbjct: 1545 DIKNLQHEKSDLISRINESEKDIEELKSKLRIEAKSGSELETVKQELNNAQEKIRINAEE 1604 Query: 1165 EQKKRNSLVESLNDSKIKELEARLSQE 1191 ++ L + + K K+ E + +QE Sbjct: 1605 NTVLKSKLEDIERELKDKQAEIKSNQE 1631 >MGEN-G37-01-000221 MG218 cytadherence accessory protein (hmw2) Length = 1805 Score = 125 bits (315), Expect = 1e-30 Identities = 238/1173 (20%), Positives = 491/1173 (41%), Gaps = 210/1173 (17%) Query: 867 NEQINKLKNDLQEMESKKKFLEEKNQKTVNE-LENTQDLLNQEKENLRKN---ESLLNRV 922 NE K + L ++E++ K L+ K + NE +++LLNQE+E K ++LL + Sbjct: 368 NEFEQKQSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQA 427 Query: 923 KTSSETLQKQFDDLVSEKD----------EISREKLEVAQNLEEAHQKIQG-----LQET 967 E Q++ L+ +K E ++++L+ +NL + +K+ L+E Sbjct: 428 SLEYEH-QRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEK 486 Query: 968 IREREATLEKLH--------SKNNELI---KQISDLNCDISKE-QSSQSLIKESKLKLEN 1015 + + LE+L+ K NEL+ KQ+ D E ++ Q + E+K LE Sbjct: 487 VAQERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEAKQQELFEAKHALER 546 Query: 1016 EIKRLKDV---INSKEEEIKS-FNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENS 1071 +L+D +N+K ++I + F+ + + D +L+ + ++L E Sbjct: 547 SFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELML--------QNEYENLQQEKQ 598 Query: 1072 DLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITA 1131 L + F++ A L+N+L+ K ELL+ KE +D K +F ++R EH ++ A Sbjct: 599 KLFQERTYFERNAAVLSNRLQQKREELLQQKETLDQLTK---SFEQERLINQREHKELVA 655 Query: 1132 ELKETR----IQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLND-SKIKELEA 1186 +++ + +L ++ + + + K +E++ + + LND + + ++A Sbjct: 656 SVEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEVIQA 715 Query: 1187 RLSQEISLNQYLN-KRISGNSVETNIXXXXXXXXXXXXPLDKEDIIKKYYDLQLAFTEIT 1245 L+Q LNQ LN +R + + I D +KK + +L+ + Sbjct: 716 DLAQ---LNQSLNQERSELQNAKQRIADF------------HNDSLKKLNEYELSLQK-- 758 Query: 1246 RXXXXXXXXXXXXXSRLRFTETRLASSS---------FEDXXXXXXXXXXXXXXXDMDPS 1296 RL+ +T A+ FE + Sbjct: 759 ---------------RLQELQTLEANQKQHSYQNQAYFEGELDKLNREKQAFLNLRKKQT 803 Query: 1297 IPLDSILNEPLDNCPDKESDINKLMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQ 1356 + +D+I DK +N E+D +L+ H + ++ + ++ Q Sbjct: 804 MEVDAI----KQRLSDKHQALNMQQAELDRKTHELNNAFLNHDADQKSLQDQLATVKETQ 859 Query: 1357 GESSLSSSDIYKLKFEASE----------------ERVKSLEDKLKTMPLRDRTNLPV-- 1398 L S + + + E +E +++ L K ++ + T L + Sbjct: 860 KLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYELTKKQESEQTQKETELKIAF 919 Query: 1399 GDIIKNRDSIS-KYEEEIRYYKLENYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQL 1457 D+ K+ + ++E R + + +L ++ ++N Q+ L+L +AL +++ Sbjct: 920 SDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNN----QVKLEL--DNRFQALQNQKQ 973 Query: 1458 DRLQKDLESTERQKEL---------LSSTIKQQKQQFENCMDDLQGNELRLREHIHALKQ 1508 D +Q LE Q +L + ++ +Q++Q + EL+ R ALK Sbjct: 974 DTVQAQLELEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFH-YELKKRNQFLALKG 1032 Query: 1509 AEEDVKNMASIIEKLKTQNKQKEKLIW---EREMERNDSDMQLQETLLELKRVQDVKKIL 1565 + K + Q ++ +++ W + E E D D + L EL++++ Sbjct: 1033 KR--------LFAKEQDQQRKDQEINWRFKQFEKEYTDFDEAKKRELEELEKIRRSLSQS 1084 Query: 1566 SDDLAHLKERLS---AVEDRSQYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETSTN 1622 + +L +E+L+ ++ Q+ +INR ++LN + ++F + + +N Sbjct: 1085 NVELERKREKLATDFTNLNKVQHNTQINR--DQLNSQI-------RQFLLERKNFQRFSN 1135 Query: 1623 DSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTK 1682 ++ AK + L+K+L + +++ +K+A+++ + E ++ E E + ++ Sbjct: 1136 EANAKKAFLIKRLRSFASNLKL---QKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKF 1192 Query: 1683 IKQELESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEETL----------QLQMEQ 1732 KQ + + ++ A++ LS + + ++K L +T Q Q++Q Sbjct: 1193 EKQNFDIEKQRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQ 1252 Query: 1733 NSRNGELVKTLQASCNGYKDKFDDEKQKNI---------DL-YEENQTL--QKLNTDLQL 1780 N + L+ + KD+ D+K ++I DL +E+ Q L Q++ D Sbjct: 1253 KYTN---LLDLKENLERTKDQL-DKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNR 1308 Query: 1781 QLK----NLHERLSDTTEKNAWL-SKIHELENMVSLETD---LKYEEMKKNK-SLERAVE 1831 LK NLH ++T K A L +I E TD ++E+KK + L++ + Sbjct: 1309 LLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLV 1368 Query: 1832 ELQTKNSQQTDVIELANKNRSEFEEATLKYEAQISDLEKYISQQELEMKKSIRDNSSYRD 1891 EL+T+ ++ + ++ R EFE LK LE++K+++ ++ + Sbjct: 1369 ELETRKTKLNNDFAKFSRQREEFENQRLKL---------------LELQKTLQTQTNSNN 1413 Query: 1892 KVQEMAQEIE-FWKSRYESTMIGSKNIDSNNAQ 1923 + QEIE +K E K D N ++ Sbjct: 1414 FKTKAIQEIENSYKRGMEELNFQKKEFDKNKSR 1446 Score = 116 bits (291), Expect = 6e-28 Identities = 215/1117 (19%), Positives = 445/1117 (39%), Gaps = 166/1117 (14%) Query: 871 NKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESL------LNRVKT 924 N+ K D+ ++E++ L ++ + +EL+N + L NQ ++N ++ + LNR+ Sbjct: 30 NRSKTDVDKIENQ---LLKEIKSLEDELKNLKGLKNQAEDNPELDKKINHLEVDLNRLVN 86 Query: 925 SSETLQKQFDDLVSE-----------KDEISREKLEVAQNLEEAHQKIQGLQETIREREA 973 + Q Q + +V + K+E++R + E A L + + Q + Sbjct: 87 EYKNFQFQKNHMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANFQANYHNKLN 146 Query: 974 TLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKS 1033 +L N+ I +++ K +Q+LI + L+N ++ K+ + + Sbjct: 147 DFHRLIENQNQTINRLNQ------KINGNQNLIDNNVALLQNP-----NITVEKKNYLLN 195 Query: 1034 FNDKLSSSEEDLDI--KLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQL 1091 D+L + + L+ +L+++E + + LV+ +++L++ EN + + +Q Sbjct: 196 VIDQLYNELDQLENQKRLLSIEYE-----NTYRELVSADNELQNVYENIDQNQIQFKHQY 250 Query: 1092 KNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIK 1151 + EL +++ KI K+EL V + + ++ + + + + Sbjct: 251 QTYRDELSQLERKIQLTKQEL----------VDKESALRVKIDDADFYINARLAELDDVA 300 Query: 1152 EEYSNFQRETKEQEQKKRNSLV------ESLNDSKIKELEARLSQEISLNQYLNKR-ISG 1204 ++ S TK+ Q + LV + LN K R S I +N+ + + Sbjct: 301 KQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEAFFNLRQSALIDINKLQQENELFA 360 Query: 1205 NSVETNIXXXXXXXXXXXXPLDKEDIIKKYYDLQLAFTEITRXXXXXXXXXXXXXSRL-- 1262 +E L+ E Y LQ E L Sbjct: 361 KHLEHQQNEFEQKQSDSLLKLETE-----YKALQHKINEFKNESATKSEELLNQERELFE 415 Query: 1263 --RFTETRLASSSFEDXXXXXXXXXXXXXXXDMDPSIPLDSILNEPLDNCPDKESDINKL 1320 R +T L +S E E DK++++ + Sbjct: 416 KRREIDTLLTQASLEYEHQ------------------------RESSQLLKDKQNEVKQH 451 Query: 1321 MLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKS 1380 ++Y K++LD E + S + ++ + ++Y +K + +++ Sbjct: 452 FQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELYLVKKQKQDQKENE 511 Query: 1381 L---EDKLKTMPLRDRTNLPVGDIIKNRDSI-SKYEEEIRYYKLE------NYKLQEILN 1430 L E +LK L K ++ +K+ E + KLE N K Q+I N Sbjct: 512 LLFFEKQLKQHQADFENELEA----KQQELFEAKHALERSFIKLEDKEKDLNTKAQQIAN 567 Query: 1431 ESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLEST-------ERQKELLSSTIKQQKQ 1483 E SQL D +S E +L + + LQ++ + ER +LS+ ++Q+++ Sbjct: 568 E----FSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNRLQQKRE 623 Query: 1484 ---QFENCMDDL-----QGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIW 1535 Q + +D L Q + REH + E+ + + ++ + K + Sbjct: 624 ELLQQKETLDQLTKSFEQERLINQREHKELVASVEKQKEILGKKLQDFSQTSLNASKNLA 683 Query: 1536 EREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEINRLKEE 1595 EREM + +++ T +L + +++ DLA L + L+ ++RS+ + R+ + Sbjct: 684 EREMAIKFKEKEIEATEKQLLNDVNNAEVIQADLAQLNQSLN--QERSELQNAKQRIADF 741 Query: 1596 LNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDA-ISL 1654 N SLK + E + K E T ++ K Q ++ ++ LN EK A ++L Sbjct: 742 HNDSLKKLN--EYELSLQKRLQELQTLEANQKQHSYQNQA-YFEGELDKLNREKQAFLNL 798 Query: 1655 AEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQKNKE 1714 +K+ E +++K ++ + +++L++KT +++NA L+ + K Sbjct: 799 RKKQ--------TMEVDAIKQRLSDKHQALNMQQAELDRKTH--ELNNAFLNHDADQ-KS 847 Query: 1715 ITEKIKYLEETLQLQMEQNSRNGELVKTLQASCNGYKDKFDDEKQKNIDLYE-----ENQ 1769 + +++ ++ET +L + S E + + G+K + ++ + +YE E++ Sbjct: 848 LQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYELTKKQESE 907 Query: 1770 TLQKLNTDLQLQLKNLH-----------ERLSDTTEKNAWLSKIHELENMVSLETDLKYE 1818 QK T+L++ +L + K L K+ E N V LE D +++ Sbjct: 908 QTQK-ETELKIAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQ 966 Query: 1819 EMKKNK--------SLERAVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQISDLEK 1870 ++ K LER +L N +QT + + E+ T K +A +L+K Sbjct: 967 ALQNQKQDTVQAQLELEREQHQL---NLEQTAFNQANESLLKQREQLTKKIQAFHYELKK 1023 Query: 1871 YISQQELEMKKSIRDNSSYRDKVQEMAQEIEFWKSRY 1907 L+ K+ + K QE+ + ++ Y Sbjct: 1024 RNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEY 1060 Score = 104 bits (260), Expect = 2e-24 Identities = 251/1253 (20%), Positives = 513/1253 (40%), Gaps = 179/1253 (14%) Query: 767 KVYKIGNTKLFFKAGVLADLEKQKDVKLNNIMIKLTATIRGYTVRKEITYHLQKLKKTRV 826 KV ++ N F+K L L+++ LN+ L + YH + R+ Sbjct: 101 KVSELDNLTRFYK-NELTRLQQENADFLNSKYANLA--------NFQANYHNKLNDFHRL 151 Query: 827 IGNTFRLYNRL-VKEDPWFNLFIRIKPLLTSSNDMTRTKKFN-EQINKLKNDLQEMESKK 884 I N + NRL K + NL LL + N K + I++L N+L ++E++K Sbjct: 152 IENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVIDQLYNELDQLENQK 211 Query: 885 KFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEIS 944 + L + + T EL + + L EN+ +N+ + K +T + D+L + +I Sbjct: 212 RLLSIEYENTYRELVSADNELQNVYENIDQNQI---QFKHQYQTYR---DELSQLERKIQ 265 Query: 945 REKLEVAQNLEEAHQKIQGLQETIREREATLE---KLHSKNNELIKQ----ISDLNCDIS 997 K E+ KI I R A L+ K S + + KQ + D ++ Sbjct: 266 LTKQELVDKESALRVKIDDADFYINARLAELDDVAKQLSFQDGITKQNAQHVEDKLVALN 325 Query: 998 KEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCN 1057 KE+ + KE+ L L D IN ++E + F L + + + K Sbjct: 326 KEKDRLNTQKEAFFNLRQ--SALID-INKLQQENELFAKHLEHQQNEFEQK--------- 373 Query: 1058 IAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELA-TFS 1116 L L TE L+ K FK E A + +L N+E EL + + +ID + + + Sbjct: 374 -QSDSLLKLETEYKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASLEYE 432 Query: 1117 KQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSL---- 1172 QR+ + QL + K N ++K+ + N + KE + K+RN L Sbjct: 433 HQRESS----------------QLLKDKQN--EVKQHFQNLEYAKKELD-KERNLLDQQK 473 Query: 1173 -VESLNDSKIKELEARLSQEISLNQYLNKRISGNSVETNIXXXXXXXXXXXXPLDKE--- 1228 V+S ++KE A+ +E+ YL K+ + E + + E Sbjct: 474 KVDSEAIFQLKEKVAQERKELE-ELYLVKKQKQDQKENELLFFEKQLKQHQADFENELEA 532 Query: 1229 ---DIIKKYYDLQLAFTEI---TRXXXXXXXXXXXXXSRLRFTETRLA------SSSFED 1276 ++ + + L+ +F ++ + S+L+ +++ A + +E+ Sbjct: 533 KQQELFEAKHALERSFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYEN 592 Query: 1277 XXXXXXXXXXXXXXXDMDPSIPLDSILNEPLDNCPDKESDINKLMLEVDYLKRQLDIETR 1336 + + ++ + + + + KE+ +D L + + E Sbjct: 593 LQQEKQKLFQERTYFERNAAVLSNRLQQKREELLQQKET--------LDQLTKSFEQERL 644 Query: 1337 AHYDAENAISALHSKFRKIQG-------ESSLSSSDIYKLKFEASEERVKSLEDKLKTMP 1389 + + A K ++I G ++SL++S + A + + K +E K + Sbjct: 645 INQREHKELVASVEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQL- 703 Query: 1390 LRDRTNLPV--GDIIKNRDSISKYEEEIRYYKLENYKLQEILNESNGKLSQLTLDLRQ-- 1445 L D N V D+ + S+++ E++ K ++ + N+S KL++ L L++ Sbjct: 704 LNDVNNAEVIQADLAQLNQSLNQERSELQNAK---QRIADFHNDSLKKLNEYELSLQKRL 760 Query: 1446 -------------SKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFENCMDDL 1492 S +A +LD+L ++ ++ ++ + + KQ+ + L Sbjct: 761 QELQTLEANQKQHSYQNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQAL 820 Query: 1493 QGNELRLREHIHALKQA--EEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSDMQLQE 1550 + L H L A D + S+ ++L T K+ +KLI ++ER+ Sbjct: 821 NMQQAELDRKTHELNNAFLNHDA-DQKSLQDQLATV-KETQKLI---DLERS-------- 867 Query: 1551 TLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEINRLKEELNCSLKAE-----TN 1605 LLE +R ++++A K S + Q E+ + +E + E ++ Sbjct: 868 ALLEKQRE------FAENVAGFKRHWSNKTSQLQKIYELTKKQESEQTQKETELKIAFSD 921 Query: 1606 LKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKV-------VEMLNNEKDAISLAEKE 1658 L+K++ + + + EAK +L K + +V + L N+K A+ E Sbjct: 922 LQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQALQNQKQDTVQAQLE 981 Query: 1659 LYQKYEALNTE-------CESLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQ- 1710 L ++ LN E ESL + LTK Q +L ++ L + L + Q Sbjct: 982 LEREQHQLNLEQTAFNQANESLLKQREQLTKKIQAFHYELKKRNQFLALKGKRLFAKEQD 1041 Query: 1711 ---KNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQASCNGYKDKFDDEKQK------N 1761 K++EI + K E+ E R E ++ ++ S + + + +++K N Sbjct: 1042 QQRKDQEINWRFKQFEKEYTDFDEAKKRELEELEKIRRSLSQSNVELERKREKLATDFTN 1101 Query: 1762 IDLYEENQTLQK--LNTDLQ---LQLKNLHERLSDTTEKNAWLSK-IHELENMVSLETD- 1814 ++ + N + + LN+ ++ L+ KN ++ K A+L K + + + L+ + Sbjct: 1102 LNKVQHNTQINRDQLNSQIRQFLLERKNFQRFSNEANAKKAFLIKRLRSFASNLKLQKEA 1161 Query: 1815 LKYEEMKKNKSLERAVEELQTKNSQQTDVIELANKN---RSEFEEATLKYEAQ-ISDLEK 1870 L ++++ +K E+ +ELQ + + Q + + +N + + +K + + +SD +K Sbjct: 1162 LAIQKLEFDKRDEQQKKELQ-QATLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDEKK 1220 Query: 1871 YISQQELEMKKSIRDNSSYRDKVQEMAQEIEFWKSRYESTMIGSKNIDSNNAQ 1923 ++Q+ +E+K + + ++K + Q+++ +Y + + +N++ Q Sbjct: 1221 ALNQKLVELKNLSQTYLANKNKAEYSQQQLQ---QKYTNLLDLKENLERTKDQ 1270 Score = 102 bits (253), Expect = 1e-23 Identities = 187/1024 (18%), Positives = 421/1024 (41%), Gaps = 124/1024 (12%) Query: 963 GLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKD 1022 G ++ E+ + + N+L+K+I L ++ + ++ +++ +L+ +I L+ Sbjct: 21 GYLQSEYEKNRSKTDVDKIENQLLKEIKSLEDELKNLKGLKNQAEDNP-ELDKKINHLEV 79 Query: 1023 VINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSD-LRSKNENFK 1081 +N E K+F + + + K+ L+ + L L EN+D L SK N Sbjct: 80 DLNRLVNEYKNFQFQKNHMVD----KVSELDNLTRFYKNELTRLQQENADFLNSKYANLA 135 Query: 1082 KEKAALNNQL-------KNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELK 1134 +A +N+L +N+ + ++ +KI+ ++ + + A+ ++ IT E K Sbjct: 136 NFQANYHNKLNDFHRLIENQNQTINRLNQKINGNQNLI-----DNNVALLQNPNITVEKK 190 Query: 1135 ETRI--------QLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEA 1186 + +L + ++ + + EY N RE + + +N + E+++ ++I+ Sbjct: 191 NYLLNVIDQLYNELDQLENQKRLLSIEYENTYRELVSADNELQN-VYENIDQNQIQ---- 245 Query: 1187 RLSQEISLNQYLNKRISGNSVETNIXXXXXXXXXXXXPLDKEDIIKKYYDLQLAFTEITR 1246 +QY R + +E I L K++++ K L++ + Sbjct: 246 ------FKHQYQTYRDELSQLERKIQ------------LTKQELVDKESALRVKIDD--- 284 Query: 1247 XXXXXXXXXXXXXSRLRFTETRLASSSFEDXXXXXXXXXXXXXXXDMDPSIPLDSILNEP 1306 +RL + SF+D ++ + E Sbjct: 285 -------ADFYINARLAELDDVAKQLSFQDGITKQNAQHVEDKLVALNKEKDRLNTQKEA 337 Query: 1307 LDNCPDKES-DINKLMLEVDYLKRQLDIETRAHYDA--------ENAISALHSKFRKIQG 1357 N DINKL E + + L+ + E AL K + + Sbjct: 338 FFNLRQSALIDINKLQQENELFAKHLEHQQNEFEQKQSDSLLKLETEYKALQHKINEFKN 397 Query: 1358 ESSLSSSDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKNRDS-ISKYEEEIR 1416 ES+ S ++ + E E+R + ++ L L ++K++ + + ++ + + Sbjct: 398 ESATKSEELLNQERELFEKR-REIDTLLTQASLEYEHQRESSQLLKDKQNEVKQHFQNLE 456 Query: 1417 YYKLENYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELL-- 1474 Y K E K + +L++ S+ L++ ++E E+L ++K + +++ ELL Sbjct: 457 YAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQERKELEELYLVKKQKQD-QKENELLFF 515 Query: 1475 SSTIKQQKQQFENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLI 1534 +KQ + FEN +L+ + L E HAL+ ++ + +K K N + +++ Sbjct: 516 EKQLKQHQADFEN---ELEAKQQELFEAKHALE------RSFIKLEDKEKDLNTKAQQIA 566 Query: 1535 WEREMERNDSDMQLQETLL---ELKRVQDVKKILSDDLAHLKERLSAVEDR-SQYTDEIN 1590 E + D L+ E + +Q K+ L + + + + + +R Q +E+ Sbjct: 567 NEFSQLKTDKSKSADFELMLQNEYENLQQEKQKLFQERTYFERNAAVLSNRLQQKREELL 626 Query: 1591 RLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKD 1650 + KE L+ L ++ ++K ++ + + +I L K+L +++ LN K+ Sbjct: 627 QQKETLD-QLTKSFEQERLINQREHKELVASVEKQKEI--LGKKLQDFSQT--SLNASKN 681 Query: 1651 AISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQ 1710 LAE+E+ K++ E E+ + ++++ + +++DL Q +L + L ++ Q Sbjct: 682 ---LAEREMAIKFK--EKEIEATEKQLLNDVNNAEVIQADLAQLNQSLNQERSELQNAKQ 736 Query: 1711 K----NKEITEKIKYLEETLQLQMEQ----NSRNGELVKTLQASCNGYKDKFDDEKQKNI 1762 + + + +K+ E +LQ ++++ + + QA G DK + EKQ + Sbjct: 737 RIADFHNDSLKKLNEYELSLQKRLQELQTLEANQKQHSYQNQAYFEGELDKLNREKQAFL 796 Query: 1763 DLYEEN--------QTLQKLNTDLQLQLKNLHERL-----------SDTTEKNAWLSKIH 1803 +L ++ Q L + L +Q L + +D L+ + Sbjct: 797 NLRKKQTMEVDAIKQRLSDKHQALNMQQAELDRKTHELNNAFLNHDADQKSLQDQLATVK 856 Query: 1804 ELENMVSLETDLKYEEMKK-NKSLERAVEELQTKNSQQTDVIELANKNRSEFEEATLKYE 1862 E + ++ LE E+ ++ +++ K SQ + EL K SE + + + Sbjct: 857 ETQKLIDLERSALLEKQREFAENVAGFKRHWSNKTSQLQKIYELTKKQESEQTQKETELK 916 Query: 1863 AQISDLEKYISQQELEMKKSIRDNSSYRDKVQEMAQEIEFWKSRYESTMIGSKNIDSNNA 1922 SDL+K EL+ + R + + ++ ++A++ K ++ +N + Sbjct: 917 IAFSDLQKDYQVFELQKDQEFRQIEAKQRELDKLAEKNNQVKLELDNRFQALQNQKQDTV 976 Query: 1923 QSKI 1926 Q+++ Sbjct: 977 QAQL 980 Score = 92.8 bits (229), Expect = 9e-21 Identities = 201/1159 (17%), Positives = 438/1159 (37%), Gaps = 178/1159 (15%) Query: 869 QINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRK------NESLLNRV 922 + L+ + Q++ ++ + E N L+ ++ L Q+KE L + E L+N+ Sbjct: 589 EYENLQQEKQKLFQERTYFERNAAVLSNRLQQKREELLQQKETLDQLTKSFEQERLINQR 648 Query: 923 --KTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHS 980 K +++KQ + L + + S+ L ++NL E I+ ++ I E L L+ Sbjct: 649 EHKELVASVEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQL--LND 706 Query: 981 KNNELIKQ--ISDLNCDISKEQS---------------SQSLIKESKLKLENEIKRLKDV 1023 NN + Q ++ LN +++E+S S + E +L L+ ++ L+ + Sbjct: 707 VNNAEVIQADLAQLNQSLNQERSELQNAKQRIADFHNDSLKKLNEYELSLQKRLQELQTL 766 Query: 1024 -INSKEEEIKS---FNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNEN 1079 N K+ ++ F +L + L +K + Q L ++ L + Sbjct: 767 EANQKQHSYQNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQAE 826 Query: 1080 FKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQ 1139 ++ LNN N +++ +++++ K+ +R + + + + + Sbjct: 827 LDRKTHELNNAFLNHDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENVAGFKRH 886 Query: 1140 LTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLN 1199 + S QKI E + E ++E + + + + D ++ E + QE + Sbjct: 887 WSNKTSQLQKIYELTKKQESEQTQKETELKIAFSDLQKDYQV--FELQKDQEFRQIEAKQ 944 Query: 1200 KRISGNSVETNIXXXXXXXXXXXXPLDKEDIIKKYYDLQLAFTEITRXXXXXXXXXXXXX 1259 + + + + N K+D ++ +L+ ++ Sbjct: 945 RELDKLAEKNNQVKLELDNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLL 1004 Query: 1260 SRLRFTETRLASSSFEDXXXXXXXXXXXXXXXDMDPSIPLDSILNEPLDNCPDKESDINK 1319 + ++ + +E KE D + Sbjct: 1005 KQREQLTKKIQAFHYELKKRNQFLALKGKRLFA--------------------KEQDQQR 1044 Query: 1320 LMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVK 1379 E+++ +Q + E + D + A + KI+ SLS S++ E +R K Sbjct: 1045 KDQEINWRFKQFEKE---YTDFDEAKKRELEELEKIR--RSLSQSNV-----ELERKREK 1094 Query: 1380 SLEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKLQEILNESNGKLSQL 1439 D ++ T + NRD ++ +IR + LE Q NE+N K + L Sbjct: 1095 LATDFTNLNKVQHNTQI-------NRDQLNS---QIRQFLLERKNFQRFSNEANAKKAFL 1144 Query: 1440 TLDLRQSKSKEALLSEQL--DRLQKDLESTERQKELLSSTIKQQKQQFENCMDDLQGNEL 1497 LR S L E L +L+ D +++KEL +T++ ++ +FE D++ Sbjct: 1145 IKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQ 1204 Query: 1498 ---------RLREHIHALKQAEEDVKNMASI----------------------------I 1520 +L + AL Q ++KN++ + Sbjct: 1205 LVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTNLLDLKENL 1264 Query: 1521 EKLKTQNKQKEKLIWEREME-RNDSDMQLQETLLELKRVQDVKKILSDD------LAHLK 1573 E+ K Q +K + I+ R + ND + ++ L + V D ++L ++ L++ Sbjct: 1265 ERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSNET 1324 Query: 1574 ERLSAV---------EDRSQYTD---------------------EINRLKEELNCSLKAE 1603 ER AV + R Q TD E+ K +LN Sbjct: 1325 ERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLNNDFAKF 1384 Query: 1604 TNLKKEFATLKYKL-------ETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAE 1656 + ++EF + KL +T TN + K + + + Y + +E LN +K + Sbjct: 1385 SRQREEFENQRLKLLELQKTLQTQTNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDKNK 1444 Query: 1657 KELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQKNKEIT 1716 LY+ + + E E + ++ + K Q + L + + L I + ++ K Sbjct: 1445 SRLYEYFRKMRDEIERKESQVKLVLKETQRKANLLEAQANKLNIEKNTIDFKEKELKAFK 1504 Query: 1717 EKIKYLEETLQLQMEQNSRNGELVKTLQASCNGYKDKFDDEKQKNIDLYEENQTLQKLNT 1776 +K+ ++ + +Q EL+ + ++ K+ L ++ +T+++ Sbjct: 1505 DKV---DQDIDSTNKQRKELNELLNENKLLQQSLIERERAINSKDSLLNKKIETIKRQLH 1561 Query: 1777 DLQLQLKNLHERLSDTTEKNAWLSKIHELENMV--SLETDLK------YEEMKKNKSLER 1828 D ++++ L +R+ +K + ++I+ L S + D+K ++ + + Sbjct: 1562 DKEMRVLRLVDRMKLAEQK--YQTEINRLRTQTFDSEKQDIKNFFPPLFKINGNDMAFPY 1619 Query: 1829 AVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQISD-------LEKYISQQELEMKK 1881 L + Q + +++ + + +YE ++++ LEK + Q +LE Sbjct: 1620 LYPWLYPQQKQDDNTLQIRQLFEQQLQFMQQRYENELNELRRQRNLLEKKLDQIQLE--S 1677 Query: 1882 SIRDNSSYRDKVQEMAQEI 1900 + + S KV+ M +++ Sbjct: 1678 QLNNKQSEFSKVESMMEKL 1696 Score = 89.4 bits (220), Expect = 1e-19 Identities = 121/549 (22%), Positives = 237/549 (43%), Gaps = 74/549 (13%) Query: 1403 KNRDSISKYEEEIRYYKLENYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQK 1462 K DS+ K E E YK +K+ E NES K +L R+ K + L + Sbjct: 373 KQSDSLLKLETE---YKALQHKINEFKNESATKSEELLNQERELFEKRREIDTLLTQASL 429 Query: 1463 DLESTERQKELLSSTIKQQKQQFENCMD-----DLQGNELRLREHI--HALKQAEEDVKN 1515 + E +LL + KQ F+N D + N L ++ + A+ Q +E V Sbjct: 430 EYEHQRESSQLLKDKQNEVKQHFQNLEYAKKELDKERNLLDQQKKVDSEAIFQLKEKVAQ 489 Query: 1516 MAS------IIEKLKTQNKQKEKLIWEREMERNDSDMQLQETLLELKRVQ--DVKKILSD 1567 +++K K K+ E L +E++++++ +D E LE K+ + + K L Sbjct: 490 ERKELEELYLVKKQKQDQKENELLFFEKQLKQHQADF---ENELEAKQQELFEAKHALER 546 Query: 1568 DLAHLKERLSAVEDRS-QYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEA 1626 L+++ + ++ Q +E ++LK + + S E L+ E+ L+ + + Sbjct: 547 SFIKLEDKEKDLNTKAQQIANEFSQLKTDKSKSADFELMLQNEYENLQQEKQ-------- 598 Query: 1627 KISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQE 1686 L ++ ++ + +L+N + +EL Q+ E L+ +S + + + + +E Sbjct: 599 ---KLFQERTYFERNAAVLSNR---LQQKREELLQQKETLDQLTKSFEQERLINQREHKE 652 Query: 1687 LESDLNQKTDAL-----QISNAALSSSTQ-KNKEITEKIKYLE-ETLQLQMEQNSRNGEL 1739 L + + ++ + L S +L++S +E+ K K E E + Q+ + N E+ Sbjct: 653 LVASVEKQKEILGKKLQDFSQTSLNASKNLAEREMAIKFKEKEIEATEKQLLNDVNNAEV 712 Query: 1740 VKT----LQASCNGYKDKFDDEKQKNIDLYEENQTLQKLNT-DLQLQLKNLHERLSDTTE 1794 ++ L S N + + + KQ+ D + N +L+KLN +L LQ K L E T E Sbjct: 713 IQADLAQLNQSLNQERSELQNAKQRIADFH--NDSLKKLNEYELSLQ-KRLQE--LQTLE 767 Query: 1795 KNAWLSKIHELENMVSLETDL--------------KYEEMKKNKSLERAVEELQTKNSQQ 1840 N K H +N E +L K + M+ + +R ++ Q N QQ Sbjct: 768 AN---QKQHSYQNQAYFEGELDKLNREKQAFLNLRKKQTMEVDAIKQRLSDKHQALNMQQ 824 Query: 1841 TDVIELANKNRSEFEEATLKYEAQISDLEKYISQQELEMKKSIRDNSSYRDKVQEMAQEI 1900 ++ ++ E A L ++A L+ ++ + K + S+ +K +E A+ + Sbjct: 825 AEL----DRKTHELNNAFLNHDADQKSLQDQLATVKETQKLIDLERSALLEKQREFAENV 880 Query: 1901 EFWKSRYES 1909 +K + + Sbjct: 881 AGFKRHWSN 889 Score = 85.9 bits (211), Expect = 1e-18 Identities = 164/831 (19%), Positives = 335/831 (40%), Gaps = 115/831 (13%) Query: 865 KFNEQINKLKNDLQEMESKKKFLEEKNQKTVN---ELENTQDLLNQEKENLRK-NESLLN 920 K E+ N++K E++++ + L+ + Q TV ELE Q LN E+ + NESLL Sbjct: 949 KLAEKNNQVK---LELDNRFQALQNQKQDTVQAQLELEREQHQLNLEQTAFNQANESLLK 1005 Query: 921 R--------------VKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQE 966 + +K ++ L + L +++ + R+ E+ ++ ++ E Sbjct: 1006 QREQLTKKIQAFHYELKKRNQFLALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDE 1065 Query: 967 TIREREATLEK-----------LHSKNNELIKQISDLN-----CDISKEQSSQSLIKESK 1010 + LEK L K +L ++LN I+++Q + S I++ Sbjct: 1066 AKKRELEELEKIRRSLSQSNVELERKREKLATDFTNLNKVQHNTQINRDQLN-SQIRQFL 1124 Query: 1011 LKLENEIKRLKDVINSKE----EEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSL 1066 L+ +N +R + N+K+ + ++SF L +E L I+ + +K LQ Sbjct: 1125 LERKN-FQRFSNEANAKKAFLIKRLRSFASNLKLQKEALAIQKLEFDKRDEQQKKELQQA 1183 Query: 1067 VTENSDLRSKNENFKKEK----AALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDA 1122 + + + +NF EK A+ Q + E + +K+ K T+ ++ A Sbjct: 1184 TLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKA 1243 Query: 1123 VSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSL----VESLND 1178 E+ + +L++ L + K N ++ K++ R + K N L + L Sbjct: 1244 --EYSQ--QQLQQKYTNLLDLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKA 1299 Query: 1179 SKIKELEARLSQEISLNQYLNKRISGNS---VETNIXXXXXXXXXXXXPL--DKEDIIKK 1233 +I + + RL +E N + + +E I + +++ KK Sbjct: 1300 QRIVDDKNRLLKENERNLHFLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKK 1359 Query: 1234 YYDLQLAFTEI-TRXXXXXXXXXXXXXSRLRFTETRLASSSFEDXXXXXXXXXXXXXXXD 1292 +LQ E+ TR R F RL + Sbjct: 1360 EGELQKLLVELETRKTKLNNDFAKFSRQREEFENQRLKLLELQKTLQTQTNSN------- 1412 Query: 1293 MDPSIPLDSILNEPLDNCPDKESDINKLMLEVDYLKRQLDIETRAHYDAENAISALHSKF 1352 N + E+ + M E+++ K++ D S L+ F Sbjct: 1413 -----------NFKTKAIQEIENSYKRGMEELNFQKKEFDKNK----------SRLYEYF 1451 Query: 1353 RKIQGESSLSSSDIYKLKFEASEERVKSLEDKLKTMPLRDRT-NLPVGDIIKNRDSISKY 1411 RK++ E S + KL + ++ + LE + + + T + ++ +D K Sbjct: 1452 RKMRDEIERKESQV-KLVLKETQRKANLLEAQANKLNIEKNTIDFKEKELKAFKD---KV 1507 Query: 1412 EEEIRYYKLENYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQK 1471 +++I + +L E+LNE+ L R SK++LL+++++ +++ L E + Sbjct: 1508 DQDIDSTNKQRKELNELLNENKLLQQSLIERERAINSKDSLLNKKIETIKRQLHDKEMRV 1567 Query: 1472 ELLSSTIKQQKQQFENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKE 1531 L +K +Q+++ + N LR + ++D+KN + K+ + Sbjct: 1568 LRLVDRMKLAEQKYQT-----EINRLRTQ----TFDSEKQDIKNFFPPLFKINGNDMAFP 1618 Query: 1532 KLI-WEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVE---DRSQYTD 1587 L W ++ D D LQ L +++Q +++ ++L L+ + + +E D+ Q Sbjct: 1619 YLYPWLYPQQKQD-DNTLQIRQLFEQQLQFMQQRYENELNELRRQRNLLEKKLDQIQLES 1677 Query: 1588 EINRLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHY 1638 ++N + E + K E+ ++K L K E+ ND + KI+ L K+++ + Sbjct: 1678 QLNNKQSEFS---KVESMMEK----LLEKTESRLNDFDQKINYLTKKVNQH 1721 Score = 68.6 bits (166), Expect = 2e-13 Identities = 143/759 (18%), Positives = 297/759 (39%), Gaps = 131/759 (17%) Query: 846 LFIRIKPLLTSSNDMTRT-KKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDL 904 L ++ K L D R ++ N + + + + + + KK E+ +K L + Sbjct: 1028 LALKGKRLFAKEQDQQRKDQEINWRFKQFEKEYTDFDEAKKRELEELEKIRRSLSQSNVE 1087 Query: 905 LNQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGL 964 L +++E L + + LN+V+ +++ + D L S+ + E+ + EA+ K L Sbjct: 1088 LERKREKLATDFTNLNKVQHNTQINR---DQLNSQIRQFLLERKNFQRFSNEANAKKAFL 1144 Query: 965 QETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENE---IKRLK 1021 + +R + L KL + + K D + K++ Q+ ++ + K E + I++ + Sbjct: 1145 IKRLRSFASNL-KLQKEALAIQKLEFDKRDEQQKKELQQATLQLEQFKFEKQNFDIEKQR 1203 Query: 1022 DVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEK-------NCNIAMSRLQSLVTENSDLR 1074 ++ IK+ +KLS ++ L+ KLV L+ N N A Q L + ++L Sbjct: 1204 QLV-----AIKTQCEKLSDEKKALNQKLVELKNLSQTYLANKNKAEYSQQQLQQKYTNLL 1258 Query: 1075 SKNENFKKEKAALN--------------NQLKNKESELLKMKEKIDNHKK---------- 1110 EN ++ K L+ N L+ ++ +LLK + +D+ + Sbjct: 1259 DLKENLERTKDQLDKKHRSIFARLTKFANDLRFEKKQLLKAQRIVDDKNRLLKENERNLH 1318 Query: 1111 ---------------ELATFSKQR----DDAVSEHGKITAELKETRIQLTEYKSNYQKIK 1151 +++ F KQR D ++ H ++ + E + L E ++ K+ Sbjct: 1319 FLSNETERKRAVLEDQISYFEKQRKQATDAILASHKEVKKKEGELQKLLVELETRKTKLN 1378 Query: 1152 EEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQEISLNQYLNKRISGNSVETNI 1211 +++ F R+ +E E ++ K+ EL+ L + + N + K I +E + Sbjct: 1379 NDFAKFSRQREEFENQR----------LKLLELQKTLQTQTNSNNFKTKAI--QEIENSY 1426 Query: 1212 XXXXXXXXXXXXPLDKEDIIKKYYDLQLAFTEITRXXXXXXXXXXXXXSRLRFTETRLAS 1271 DK + Y + EI R +L ET+ + Sbjct: 1427 KRGMEELNFQKKEFDKNK-SRLYEYFRKMRDEIERKESQV---------KLVLKETQRKA 1476 Query: 1272 SSFEDXXXXXXXXXXXXXXXDMDPSIPLDSILNEPLDNCPDKESDINKLMLEVDYLKRQL 1331 + E + + D + ++ +D+ + ++N+L+ E L++ L Sbjct: 1477 NLLEAQANKLNIEKNTIDFKEKELKAFKDKV-DQDIDSTNKQRKELNELLNENKLLQQSL 1535 Query: 1332 DIETRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKSLEDKLKTMPLR 1391 + E AI++ S K + K + E RV L D++K Sbjct: 1536 -------IERERAINSKDSLLNK--------KIETIKRQLHDKEMRVLRLVDRMKL---- 1576 Query: 1392 DRTNLPVGDIIKNRDSISKYEEEIRYYKLENY--KLQEILNESNGKLSQLTLDLRQSKSK 1449 + KY+ EI + + + + Q+I N + + Sbjct: 1577 ---------------AEQKYQTEINRLRTQTFDSEKQDIKN-----FFPPLFKINGNDMA 1616 Query: 1450 EALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFENCMDDLQGNELRLREHIHALKQA 1509 L L QK ++T + ++L ++ +Q++EN +++L+ L + + + Q Sbjct: 1617 FPYLYPWLYPQQKQDDNTLQIRQLFEQQLQFMQQRYENELNELRRQRNLLEKKLDQI-QL 1675 Query: 1510 EEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSDMQL 1548 E + N S K+++ EKL+ + E ND D ++ Sbjct: 1676 ESQLNNKQSEFSKVES---MMEKLLEKTESRLNDFDQKI 1711 Score = 67.4 bits (163), Expect = 4e-13 Identities = 116/555 (20%), Positives = 231/555 (41%), Gaps = 105/555 (18%) Query: 748 KASTKQNCEFLLTSLQLDTKVYKIGNTKLFFKAGVLA---DLEKQKDVK--LNNIMIKLT 802 K +Q E +LQL+ ++ N + + ++A EK D K LN +++L Sbjct: 1171 KRDEQQKKELQQATLQLEQFKFEKQNFDIEKQRQLVAIKTQCEKLSDEKKALNQKLVELK 1230 Query: 803 ATIRGYTVRK-EITYHLQKL--KKTRVIG---NTFRLYNRLVKEDPWFNLFIRI------ 850 + Y K + Y Q+L K T ++ N R ++L K+ ++F R+ Sbjct: 1231 NLSQTYLANKNKAEYSQQQLQQKYTNLLDLKENLERTKDQLDKKHR--SIFARLTKFAND 1288 Query: 851 -----KPLLTSS---NDMTRTKKFNEQ-INKLKNDLQEMESKKKFLEEKNQKTVNELENT 901 K LL + +D R K NE+ ++ L N E E K+ LE++ + + Sbjct: 1289 LRFEKKQLLKAQRIVDDKNRLLKENERNLHFLSN---ETERKRAVLEDQISYFEKQRKQA 1345 Query: 902 QDLLNQEKENLRKNESLLNRVKTSSET----LQKQFDDLVSEKDEISREKLEVAQNLEEA 957 D + + ++K E L ++ ET L F +++E ++L++ + L++ Sbjct: 1346 TDAILASHKEVKKKEGELQKLLVELETRKTKLNNDFAKFSRQREEFENQRLKLLE-LQKT 1404 Query: 958 HQ--------KIQGLQETIREREATLEKLHSKNNELIKQISDL-------NCDISKEQSS 1002 Q K + +QE + +E+L+ + E K S L +I +++S Sbjct: 1405 LQTQTNSNNFKTKAIQEIENSYKRGMEELNFQKKEFDKNKSRLYEYFRKMRDEIERKESQ 1464 Query: 1003 QSLI-KESKLK---LENEIKRL---KDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKN 1055 L+ KE++ K LE + +L K+ I+ KE+E+K+F DK+ + + + L + Sbjct: 1465 VKLVLKETQRKANLLEAQANKLNIEKNTIDFKEKELKAFKDKVDQDIDSTNKQRKELNEL 1524 Query: 1056 CNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKI---------- 1105 N QSL+ + SK+ K+ + QL +KE +L++ +++ Sbjct: 1525 LNENKLLQQSLIERERAINSKDSLLNKKIETIKRQLHDKEMRVLRLVDRMKLAEQKYQTE 1584 Query: 1106 ---------DNHKKELATF------------------------SKQRDDAVSEHGKITAE 1132 D+ K+++ F KQ D+ + + Sbjct: 1585 INRLRTQTFDSEKQDIKNFFPPLFKINGNDMAFPYLYPWLYPQQKQDDNTLQIRQLFEQQ 1644 Query: 1133 LK----ETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARL 1188 L+ +L E + ++++ Q E++ ++ S VES+ + +++ E+RL Sbjct: 1645 LQFMQQRYENELNELRRQRNLLEKKLDQIQLESQLNNKQSEFSKVESMMEKLLEKTESRL 1704 Query: 1189 SQEISLNQYLNKRIS 1203 + YL K+++ Sbjct: 1705 NDFDQKINYLTKKVN 1719 Score = 52.4 bits (124), Expect = 1e-08 Identities = 57/259 (22%), Positives = 122/259 (47%), Gaps = 14/259 (5%) Query: 1636 DHYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQ-K 1694 D Y + N K + E +L ++ ++L E ++LKG + + + EL+ +N + Sbjct: 20 DGYLQSEYEKNRSKTDVDKIENQLLKEIKSLEDELKNLKG-LKNQAEDNPELDKKINHLE 78 Query: 1695 TDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSR----NGELVKTLQASCNGY 1750 D ++ N + QKN + +K+ L+ + + +R N + + + A+ + Sbjct: 79 VDLNRLVNEYKNFQFQKN-HMVDKVSELDNLTRFYKNELTRLQQENADFLNSKYANLANF 137 Query: 1751 KDKFDDEKQKNIDLYE-ENQTLQKLNTDLQLQLKNLHERLSDTTEKNAWLSKIHELENMV 1809 + + ++ L E +NQT+ +LN + + ++ N + K + L N++ Sbjct: 138 QANYHNKLNDFHRLIENQNQTINRLNQKINGNQNLIDNNVALLQNPNITVEKKNYLLNVI 197 Query: 1810 -SLETDL-KYEEMKKNKSL--ERAVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQI 1865 L +L + E K+ S+ E EL + +++ +V E ++N+ +F+ Y ++ Sbjct: 198 DQLYNELDQLENQKRLLSIEYENTYRELVSADNELQNVYENIDQNQIQFKHQYQTYRDEL 257 Query: 1866 SDLEKYI--SQQELEMKKS 1882 S LE+ I ++QEL K+S Sbjct: 258 SQLERKIQLTKQELVDKES 276 >SCER-S28-01-001306 ORFP:YDR285W ZIP1, Chr IV from 1032427-1035054 Length = 875 Score = 80.1 bits (196), Expect = 6e-17 Identities = 141/628 (22%), Positives = 279/628 (44%), Gaps = 92/628 (14%) Query: 1339 YDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPV 1398 Y N + LH+ SS SS+D+ F ++ +L+ +L+ +D L V Sbjct: 156 YTMTNGKAPLHTSINN----SSTSSNDVLLEAFTNTQRICSNLKQELQKQQ-QDNAKLKV 210 Query: 1399 GDIIKNRDSISKYEEEIRYYKLENYKLQE----ILNESNGKLSQLTLDLRQS-------- 1446 + + K E++ YK LQE + + N + ++L DLRQ+ Sbjct: 211 R-LQSYASNSDKINEKVGKYKSCLETLQERIATLTSHKNNQETKLK-DLRQNHQLYQRRI 268 Query: 1447 ---KSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFENCMDDLQGNELRLREHI 1503 K+ L++ ++ L K+ + + + I+ K++ ++C L +++ I Sbjct: 269 SGFKTSIENLNKTINDLGKNKKEADAELMKKGKEIEYLKRELDDCSGQLSEEKIKNSSLI 328 Query: 1504 HAL-KQAEEDVKNMASIIEKLKTQ-----NKQKEKL--IWEREMERNDS------DMQLQ 1549 + K EE +K++ + + K NK +E++ ++E++++++ ++ L+ Sbjct: 329 QEMGKNREEMIKSIENFFSEDKAHHLLQFNKFEERVHDLFEKKLQKHFDVAKDTLNVGLR 388 Query: 1550 ETLLEL---------KRVQDVKKILSDDLAHLKERLSAVEDRSQYTDE--INRLKEEL-N 1597 T +EL ++ +D+K+ L ++ K+ ++ + T + I ++EEL Sbjct: 389 NTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKGLIMGVQEELLT 448 Query: 1598 CSLKAETNLKKEFATLKYKL---ETSTNDSEAKISDLLK-------QLDHYTKVVEMLNN 1647 S +T L E + +L + T + A + +L+K Q + Y + ++ L + Sbjct: 449 SSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVKAYKAEIVQSNEYEERIKHLES 508 Query: 1648 EKDAIS---------LAEKE-----LYQKYEALNTECESLKGKIVSLTKIKQELESDLNQ 1693 E+ +S L KE L +K EA N E + GK SLT+ + L ++L + Sbjct: 509 ERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELKK 568 Query: 1694 KTDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSRNGELVKTLQASCNGYKDK 1753 D L+ N L+ +T+ N E KI E ++ + S N L + +Q +++ Sbjct: 569 VQDQLEKLN-NLNITTKSNYE--NKISSQNEIVKALV---SENDTLKQRIQQLVEIKENE 622 Query: 1754 FDDEKQKNIDLYEENQTLQKLNTDLQLQLKNLHERLSDTTEKNAWLSKIHELENMVSLET 1813 D K + N+ LQKLN ++ +QLK HE + E+N L E + ET Sbjct: 623 QKDHTTKLEAFQKNNEQLQKLNVEV-VQLK-AHE--LELEEQNRHLKNCLEKK-----ET 673 Query: 1814 DLKYEEMKKNKSLERAVEELQTKNSQQT-DVIELANKNRSEFEEATLKYEAQISDLEKYI 1872 ++ E + K+L++ V L+++ T + +EL + N EE T + ++ ++ + Sbjct: 674 GVE-ESLSDVKTLKQQVIVLKSEKQDITAEKLELQD-NLESLEEVTKNLQQKVQSQKREL 731 Query: 1873 SQ--QELEMKKSIRDNSSYRDKVQEMAQ 1898 Q +ELE K+ + N + Q + Sbjct: 732 EQKIKELEEIKNHKRNEPSKKGTQNFTK 759 Score = 72.4 bits (176), Expect = 1e-14 Identities = 123/553 (22%), Positives = 238/553 (43%), Gaps = 106/553 (19%) Query: 1299 LDSILNEPLDNCPDKESDINKLMLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQGE 1358 L+ +N+ N + ++++ K E++YLKR+LD D +S E Sbjct: 278 LNKTINDLGKNKKEADAELMKKGKEIEYLKRELD-------DCSGQLS-----------E 319 Query: 1359 SSLSSSDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYY 1418 + +S + + + EE +KS+E N D + +K+EE R + Sbjct: 320 EKIKNSSLIQEMGKNREEMIKSIE------------NFFSEDKAHHLLQFNKFEE--RVH 365 Query: 1419 KLENYKLQEILNES----NGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLE-STERQKEL 1473 L KLQ+ + + N L T++L S + E +L +Q + ++++LE K+ Sbjct: 366 DLFEKKLQKHFDVAKDTLNVGLRNTTVEL--SSNTETMLKQQYEDIKENLEQKMSSSKDE 423 Query: 1474 LSSTIKQ----QKQQFENCMDDLQGNELRLREHI---------HALKQAEEDVKNMASII 1520 ++ TI + QK ++L + ++ + L A + KN AS+ Sbjct: 424 MAKTINELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYASLE 483 Query: 1521 EKLKTQNKQKEKLIWEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVE 1580 +K K +++ E E ++ + + L ++ Q + + + + Sbjct: 484 NLVKA---YKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKE------------ 528 Query: 1581 DRSQYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTK 1640 +QY D + +L E N + + + + +L K E +N+ + K+ D L++L++ Sbjct: 529 --AQYEDLVKKL-EAKNIEI---SQISGKEQSLTEKNENLSNELK-KVQDQLEKLNNLN- 580 Query: 1641 VVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQI 1700 + +N ++ IS ++ E+ +AL +E ++LK +I L +IK+ + D K +A Sbjct: 581 -ITTKSNYENKIS-SQNEI---VKALVSENDTLKQRIQQLVEIKENEQKDHTTKLEAF-- 633 Query: 1701 SNAALSSSTQKNKEITEKIKYLEETLQL---QMEQNSRNGELVKTLQASCNGYKDKFDDE 1757 QKN E +K+ E +QL ++E +N L L+ G ++ D Sbjct: 634 ---------QKNNEQLQKLNV--EVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDV 682 Query: 1758 ---KQKNIDLYEENQTLQKLNTDLQLQLKNLHERLSDTTEKNAWLSKIHELENMVSLETD 1814 KQ+ I L E Q + +LQ L++L E + +K S+ ELE + Sbjct: 683 KTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQ--SQKRELEQKIK---- 736 Query: 1815 LKYEEMKKNKSLE 1827 + EE+K +K E Sbjct: 737 -ELEEIKNHKRNE 748 Score = 67.0 bits (162), Expect = 5e-13 Identities = 92/425 (21%), Positives = 172/425 (40%), Gaps = 83/425 (19%) Query: 857 SNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLL--------NQE 908 SN +K + KLK LQ S + EK K + LE Q+ + NQE Sbjct: 192 SNLKQELQKQQQDNAKLKVRLQSYASNSDKINEKVGKYKSCLETLQERIATLTSHKNNQE 251 Query: 909 KE--NLRKNESLLNR----VKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQ 962 + +LR+N L R KTS E L K +DL K E E ++ + +E +++ Sbjct: 252 TKLKDLRQNHQLYQRRISGFKTSIENLNKTINDLGKNKKEADAELMKKGKEIEYLKRELD 311 Query: 963 G----LQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKL------- 1011 L E + + ++++ E+IK I + E + L++ +K Sbjct: 312 DCSGQLSEEKIKNSSLIQEMGKNREEMIKSIE----NFFSEDKAHHLLQFNKFEERVHDL 367 Query: 1012 ---KLENEIKRLKDVIN-------------------SKEEEIK-SFNDKLSSSEED---- 1044 KL+ KD +N + E+IK + K+SSS+++ Sbjct: 368 FEKKLQKHFDVAKDTLNVGLRNTTVELSSNTETMLKQQYEDIKENLEQKMSSSKDEMAKT 427 Query: 1045 ------------LDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLK 1092 + ++ L + NI + + + +L K A+L N +K Sbjct: 428 INELSVTQKGLIMGVQEELLTSSGNIQTALVSEMNNTRQELLDDASQTAKNYASLENLVK 487 Query: 1093 NKESELL---KMKEKIDNHKKELATFSKQRDDAVSEHG-------KITAELKETRIQLTE 1142 ++E++ + +E+I + + E +T S Q++ +S G + +L+ I++++ Sbjct: 488 AYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIEISQ 547 Query: 1143 YKSNYQKIKEEYSNFQRETKE-QEQKKR----NSLVESLNDSKIKELEARLSQEISLNQY 1197 Q + E+ N E K+ Q+Q ++ N +S ++KI + +S N Sbjct: 548 ISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNYENKISSQNEIVKALVSENDT 607 Query: 1198 LNKRI 1202 L +RI Sbjct: 608 LKQRI 612 Score = 65.9 bits (159), Expect = 1e-12 Identities = 145/786 (18%), Positives = 297/786 (37%), Gaps = 110/786 (13%) Query: 891 NQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEV 950 N + NTQ + + K+ L+K + + L+ + S D+I+ Sbjct: 177 NDVLLEAFTNTQRICSNLKQELQKQQQ-------DNAKLKVRLQSYASNSDKIN------ 223 Query: 951 AQNLEEAHQKIQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESK 1010 E K + ET++ER ATL KNN+ K + DL Q Q I K Sbjct: 224 -----EKVGKYKSCLETLQERIATLTS--HKNNQETK-LKDLR---QNHQLYQRRISGFK 272 Query: 1011 LKLENEIKRLKDVINSKEE---EIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLV 1067 +EN K + D+ +K+E E+ ++ + +LD L + S +Q + Sbjct: 273 TSIENLNKTINDLGKNKKEADAELMKKGKEIEYLKRELDDCSGQLSEEKIKNSSLIQEMG 332 Query: 1068 TENSDLRSKNENFKKEKAALNNQLKNKESELLK--MKEKIDNHKKELATFSKQRDDAVSE 1125 ++ ENF E A + NK E + ++K+ H F +D Sbjct: 333 KNREEMIKSIENFFSEDKAHHLLQFNKFEERVHDLFEKKLQKH------FDVAKDT---- 382 Query: 1126 HGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKI--KE 1183 + L+ T ++L+ + +K++Y + + +++ ++ + +++N+ + K Sbjct: 383 ---LNVGLRNTTVELSS--NTETMLKQQYEDIKENLEQKMSSSKDEMAKTINELSVTQKG 437 Query: 1184 LEARLSQEISLNQYLNKRISGNSVETNIXXXXXXXXXXXXPLDKEDIIKKYYDLQLAFTE 1243 L + +E+ + SGN ++T + D K Y L+ Sbjct: 438 LIMGVQEELLTS-------SGN-IQTALVSEMNNTRQELLD-DASQTAKNYASLE----N 484 Query: 1244 ITRXXXXXXXXXXXXXSRLRFTETRLASSSFEDXXXXXXXXXXXXXXXDM-----DPSIP 1298 + + R++ E+ ++ S + D+ +I Sbjct: 485 LVKAYKAEIVQSNEYEERIKHLESERSTLSSQKNQIISSLGTKEAQYEDLVKKLEAKNIE 544 Query: 1299 LDSILNEPLDNCPDKESDINKLMLEVDYLKR--QLDIETRAHYDAENAISALHSKFRKIQ 1356 + I + E+ N+L D L++ L+I T+++Y EN IS+ + + + Sbjct: 545 ISQISGKEQSLTEKNENLSNELKKVQDQLEKLNNLNITTKSNY--ENKISSQNEIVKALV 602 Query: 1357 GESSLSSSDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIR 1416 E+ I +L E E K KL+ KN + + K E+ Sbjct: 603 SENDTLKQRIQQL-VEIKENEQKDHTTKLEAFQ-------------KNNEQLQKLNVEVV 648 Query: 1417 YYKLENYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSS 1476 K +L+E L + + +S S L +Q+ L+ + + +K L Sbjct: 649 QLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQQVIVLKSEKQDITAEKLELQD 708 Query: 1477 TIKQQKQQFENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQK-----E 1531 ++ ++ +N +Q + L + I L++ + +N S K TQN K + Sbjct: 709 NLESLEEVTKNLQQKVQSQKRELEQKIKELEEIKNHKRNEPS---KKGTQNFTKPSDSPK 765 Query: 1532 KLIWEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEINR 1591 K + N+S + + + +V + K R+++ ++ S++ DE + Sbjct: 766 KNATTSNLFPNNS-AAIHSPMKKCPKVDHIS----------KSRINSSKETSKFNDEFD- 813 Query: 1592 LKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDA 1651 L N L+ + ++ K++ +N + IS K L ++ +E + Sbjct: 814 LSSSSNDDLELTNPSPIQIKPVRGKIKKGSNCMKPPISSRKKLL--------LVEDEDQS 865 Query: 1652 ISLAEK 1657 + +++K Sbjct: 866 LKISKK 871 Score = 60.5 bits (145), Expect = 5e-11 Identities = 55/206 (26%), Positives = 98/206 (47%), Gaps = 37/206 (17%) Query: 864 KKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVK 923 +K NEQ+ KL ++ ++++ + LEE+N+ N LE K E+ + Sbjct: 634 QKNNEQLQKLNVEVVQLKAHELELEEQNRHLKNCLE--------------KKETGVEESL 679 Query: 924 TSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLE------- 976 + +TL++Q L SEK +I+ EKLE+ NLE + + LQ+ ++ ++ LE Sbjct: 680 SDVKTLKQQVIVLKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQSQKRELEQKIKELE 739 Query: 977 --KLHSKNNELIKQISDL---NCDISKEQSSQSLIKESKLKLENEIKRL-------KDVI 1024 K H +N K + + K ++ +L + + + +K+ K I Sbjct: 740 EIKNHKRNEPSKKGTQNFTKPSDSPKKNATTSNLFPNNSAAIHSPMKKCPKVDHISKSRI 799 Query: 1025 NSKEEEIKSFNDKL---SSSEEDLDI 1047 NS +E K FND+ SSS +DL++ Sbjct: 800 NSSKETSK-FNDEFDLSSSSNDDLEL 824 Score = 59.3 bits (142), Expect = 1e-10 Identities = 76/382 (19%), Positives = 159/382 (41%), Gaps = 49/382 (12%) Query: 850 IKPLLTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEK 909 I+ L S + TR + ++ KN K + E Q NE E L E+ Sbjct: 453 IQTALVSEMNNTRQELLDDASQTAKNYASLENLVKAYKAEIVQS--NEYEERIKHLESER 510 Query: 910 ENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIR 969 L + N++ +S T + Q++DLV + + + E +++ + +K + L ++ Sbjct: 511 STLSSQK---NQIISSLGTKEAQYEDLVKKLEAKNIEISQISGKEQSLTEKNENLSNELK 567 Query: 970 EREATLEKLHSKN--------------NELIKQISDLNCDISKEQSSQSLIKESK----- 1010 + + LEKL++ N NE++K + N + + IKE++ Sbjct: 568 KVQDQLEKLNNLNITTKSNYENKISSQNEIVKALVSENDTLKQRIQQLVEIKENEQKDHT 627 Query: 1011 LKLENEIKRLKDV--INSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRLQSLVT 1068 KLE K + + +N + ++K+ +L L L E ++S +++L Sbjct: 628 TKLEAFQKNNEQLQKLNVEVVQLKAHELELEEQNRHLKNCLEKKETGVEESLSDVKTLKQ 687 Query: 1069 ENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGK 1128 + L+S+ ++ EK L + L++ E +++K+ + K+EL Sbjct: 688 QVIVLKSEKQDITAEKLELQDNLESLEEVTKNLQQKVQSQKREL---------------- 731 Query: 1129 ITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARL 1188 E +I+ E N+++ + Q TK + K+N+ +L + + + + Sbjct: 732 ------EQKIKELEEIKNHKRNEPSKKGTQNFTKPSDSPKKNATTSNLFPNNSAAIHSPM 785 Query: 1189 SQEISLNQYLNKRISGNSVETN 1210 + ++ RI+ +S ET+ Sbjct: 786 KKCPKVDHISKSRIN-SSKETS 806 >MGEN-G37-01-000335 MG328 conserved hypothetical protein Length = 756 Score = 75.5 bits (184), Expect = 1e-15 Identities = 92/387 (23%), Positives = 172/387 (44%), Gaps = 66/387 (17%) Query: 856 SSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQ-------KTVNELENTQDLLNQE 908 +SND +K+++ +N+ + E E+K L+ K Q KT++ L++ D+L E Sbjct: 402 TSND--ENEKYDDLLNQYELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDE 459 Query: 909 KENLRKNESLLNRVKTSSETLQK--------------QFDDLVSEKDEISREKLEV---- 950 E R ++ N K S E +K Q D ++E +E + EK + Sbjct: 460 IEWTRSKDNDFNNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQ 519 Query: 951 AQNLEEAHQKIQGLQETIREREATLEKLHSKNNELIKQISD-------LNCDISKEQSSQ 1003 NL++ + Q L +++ ATLE+++ NE I + D N ++K Q+ Sbjct: 520 LVNLQQQLKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADH 579 Query: 1004 SLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCNIAMSRL 1063 +++ES KL+ + ++LK N + + + D LS+ EE LEK A L Sbjct: 580 EILQESYGKLKTDFEKLKK--NKLNDANEQYQDLLSAFEETNS----ELEK----AKQSL 629 Query: 1064 QSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAV 1123 + +EN+ L+ + N L+N + EL D H EL T +++ Sbjct: 630 SASDSENNQLKQQ-----------INSLENAKKELQFTPVTSDEHLDELETLKIEKEQLF 678 Query: 1124 SEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQR--ETKEQEQKKRNSLVESLNDSKI 1181 E+ + +L+ + +N + +E S+ + E K+ KKR+ ++++ +D Sbjct: 679 LENQALQNQLQ----YFNDISANQTEEIKEASDEDKPVEIKKPRIKKRDFVIQNKDDKL- 733 Query: 1182 KELEARLSQEISLNQYLNKRISGNSVE 1208 A+LS++ + Y + N+ E Sbjct: 734 ----AKLSKKERIQAYAERLAKINANE 756 Score = 70.9 bits (172), Expect = 4e-14 Identities = 123/589 (20%), Positives = 227/589 (38%), Gaps = 111/589 (18%) Query: 1339 YDAENAISALHSKFRKIQGESSLSSSDIYK--LKFEASEERVKSLED------------- 1383 Y EN A++ + IQ + + + K LK + ++V L+D Sbjct: 192 YSIENLTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLENADL 251 Query: 1384 KLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKLQEILNESNGKL------- 1436 K + L++ N + D+ + D + + E + L KLQ+ L + N L Sbjct: 252 KKQIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNK 311 Query: 1437 --------SQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFENC 1488 ++ +L K ++ALLS+QLD L+ + ++Q LL N Sbjct: 312 PVAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALL--------PVLNNQ 363 Query: 1489 MDDLQGNELRLREHIHALKQAEEDVKNMASIIEKL--KTQNKQKEK---------LIWER 1537 +++LQ L RE L E++ + + ++KL T N + EK L+++ Sbjct: 364 INELQNQLLTAREANQRLDLVEQENDFLKNELKKLHDNTSNDENEKYDDLLNQYELLFDE 423 Query: 1538 EMERNDS--------DMQLQETLLELKRVQDV-------------------------KKI 1564 + D ++ Q+T+ LK DV KK Sbjct: 424 NETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNSFEEQKKA 483 Query: 1565 LSDDLAHLKERLSAVEDRSQYTDEINRLKEELNCS--------LKAETNLKKEFATLKYK 1616 L + L L + ++D+ +E N K LN + LK NL F + K Sbjct: 484 LDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQLKDSQNL---FNVAQDK 540 Query: 1617 LETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESL-KG 1675 L T + +++ + L+ E NN + + L + Y L T+ E L K Sbjct: 541 LAT-LEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFEKLKKN 599 Query: 1676 KIVSLTKIKQELESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEETLQLQMEQNSR 1735 K+ + Q+L S + L+ + +LS+S +N ++ ++I LE + Sbjct: 600 KLNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLENAKK-------- 651 Query: 1736 NGELVKTLQASCNGYKDKFDDEKQKNIDLYEENQTLQK----LNTDLQLQLKNLHERLSD 1791 EL T + + + D+ + K + L+ ENQ LQ N Q + + E + Sbjct: 652 --ELQFT-PVTSDEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIKEASDE 708 Query: 1792 TTEKNAWLSKIHELENMVSLETDLKYEEMKKNKSLERAVEELQTKNSQQ 1840 +I + + ++ + D K ++ K + ++ E L N+ + Sbjct: 709 DKPVEIKKPRIKKRDFVIQNKDD-KLAKLSKKERIQAYAERLAKINANE 756 Score = 65.5 bits (158), Expect = 2e-12 Identities = 85/393 (21%), Positives = 169/393 (43%), Gaps = 54/393 (13%) Query: 867 NEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSS 926 N+QI L+ QE++ K+ L E+ K ++ + DL L++N L +++ Sbjct: 263 NDQIFDLE---QEIDDLKRRLSEEKSKHLHTKKLQDDL-------LQENRDLYEQLQNKP 312 Query: 927 ETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSKNNELI 986 + D++ E + + +EK ++ L+ K +Q+ + A L L+++ NEL Sbjct: 313 VAINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQL----ALLPVLNNQINELQ 368 Query: 987 KQISDLNCDISKEQSSQ--SLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSE-- 1042 Q+ ++ +++Q L+++ L+NE+K+L D N+ +E + ++D L+ E Sbjct: 369 NQL------LTAREANQRLDLVEQENDFLKNELKKLHD--NTSNDENEKYDDLLNQYELL 420 Query: 1043 ----EDLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESEL 1098 E KL ++ N+ + S + +D+ + + K +N N ++ Sbjct: 421 FDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSK---DNDFNNTKNSF 477 Query: 1099 LKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQ 1158 + K+ +D L ++Q D + AEL+E E KSN + N Q Sbjct: 478 EEQKKALDEKLNGLTIQNQQLQDKI-------AELEE----WNEEKSNLN--TNQLVNLQ 524 Query: 1159 RETKEQEQ-----KKRNSLVESLN---DSKIKELEARLSQEISLNQYLNKRISGNSVETN 1210 ++ K+ + + + + +E +N + KI +LE LS + N L K + + + Sbjct: 525 QQLKDSQNLFNVAQDKLATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQE 584 Query: 1211 IXXXXXXXXXXXXPLDKEDIIKKYYDLQLAFTE 1243 D ++Y DL AF E Sbjct: 585 SYGKLKTDFEKLKKNKLNDANEQYQDLLSAFEE 617 Score = 53.5 bits (127), Expect = 6e-09 Identities = 137/713 (19%), Positives = 275/713 (38%), Gaps = 131/713 (18%) Query: 874 KNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSETLQKQF 933 KN L ++ K EE+ Q+TV++ Q++ +Q L +KT + L+ Sbjct: 85 KNVLNHYANQLKTREEE-QQTVDQTMAFQEVDDQSV--------LTKEIKTGFQELKPSV 135 Query: 934 DDLVSEKDEISREKLEVAQNLEEAHQKIQGLQET------------IREREATLEKLHSK 981 +KDEI E + E +Q + + ET ++E E + +S Sbjct: 136 ITAEDDKDEIKPEATKQVSFEELFNQPSEEINETKKPEVQIFSTDKVKEPE-QFDDFYSI 194 Query: 982 NNELIKQISDLNCDISKEQS-SQSLIKESKLKLENEIKRLKDVINSKEEEI--------- 1031 N L K I+ ++ I +Q+ Q + + LK ++ K++ ++ + +E+ Sbjct: 195 EN-LTKAINPVHKTIQYDQNDDQPFVVKRILKEQHPTKKVDELDDYNNKELLLENADLKK 253 Query: 1032 ------KSFNDKLSSSEEDLD--IKLVTLEKNCNIAMSRLQ-SLVTENSDL--------- 1073 ++ ND++ E+++D + ++ EK+ ++ +LQ L+ EN DL Sbjct: 254 QIDDLKENNNDQIFDLEQEIDDLKRRLSEEKSKHLHTKKLQDDLLQENRDLYEQLQNKPV 313 Query: 1074 ---------RSKNENFKKEKAALNNQ---LKNKESEL---LKMKEKIDNHKKELATFSKQ 1118 + EN K+EKA L++Q LKNK S + L + ++N EL Sbjct: 314 AINPLSDEVNEELENLKQEKALLSDQLDALKNKSSNVQQQLALLPVLNNQINEL------ 367 Query: 1119 RDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESL-- 1176 ++ +TA R+ L E ++++ +K E T E +K + L+ Sbjct: 368 ------QNQLLTAREANQRLDLVEQENDF--LKNELKKLHDNTSNDENEKYDDLLNQYEL 419 Query: 1177 ----NDSKIKELEARLSQEISLNQYLNKRISGNSVETNI----------XXXXXXXXXXX 1222 N++K +L+ + + +LN K IS E ++ Sbjct: 420 LFDENETKFDKLQVK---QQALNLDYQKTISALKHENDVLLDEIEWTRSKDNDFNNTKNS 476 Query: 1223 XPLDKEDIIKKYYDLQLAFTEITRXXXXXXXXXXXXXSRLRFTETRLASSSFEDXXXXXX 1282 K+ + +K L + ++ + S L + +D Sbjct: 477 FEEQKKALDEKLNGLTIQNQQL-QDKIAELEEWNEEKSNLNTNQLVNLQQQLKDSQNLFN 535 Query: 1283 XXXXXXXXXDMDPSIPLDSILNEPLDNCPDKESDINKL--------MLEVDYLKRQLDIE 1334 + + ++ L+ +N+ D E+ N L +L+ Y K + D E Sbjct: 536 VAQDKLATLE-EVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYGKLKTDFE 594 Query: 1335 ----------TRAHYDAENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKSLEDK 1384 + D +A +S+ K + S S S+ +LK +++ SLE+ Sbjct: 595 KLKKNKLNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLK-----QQINSLENA 649 Query: 1385 LKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKLQEILNESNGKLSQLTLDLR 1444 K + T+ ++ D + + E LEN LQ L N + T +++ Sbjct: 650 KKELQFTPVTS------DEHLDELETLKIEKEQLFLENQALQNQLQYFNDISANQTEEIK 703 Query: 1445 QSKSKEALLSEQLDRLQK-DLESTERQKELLSSTIKQQKQQFENCMDDLQGNE 1496 ++ ++ + + R++K D + +L + K++ Q + + + NE Sbjct: 704 EASDEDKPVEIKKPRIKKRDFVIQNKDDKLAKLSKKERIQAYAERLAKINANE 756 Score = 44.3 bits (103), Expect = 4e-06 Identities = 78/406 (19%), Positives = 166/406 (40%), Gaps = 51/406 (12%) Query: 1301 SILNEPLDNCPDKESDINKL---MLEVDYLKRQLDIETRAHYDAENAISALHSKFRKIQG 1357 S + + L P + IN+L +L ++LD+ + + +N + LH + Sbjct: 348 SNVQQQLALLPVLNNQINELQNQLLTAREANQRLDLVEQENDFLKNELKKLHDNTSNDEN 407 Query: 1358 ESSLSSSDIYKLKFEASEERVKSLEDKLKTM---------PLRDRTNLPVGDIIKNRDSI 1408 E + Y+L F+ +E + L+ K + + L+ ++ + +I R Sbjct: 408 EKYDDLLNQYELLFDENETKFDKLQVKQQALNLDYQKTISALKHENDVLLDEIEWTRSKD 467 Query: 1409 SKYEEEIRYYKLENYKLQEILNE---SNGKLSQLTLDLRQ-SKSKEALLSEQLDRLQKDL 1464 + + ++ + L E LN N +L +L + ++ K L + QL LQ+ L Sbjct: 468 NDFNNTKNSFEEQKKALDEKLNGLTIQNQQLQDKIAELEEWNEEKSNLNTNQLVNLQQQL 527 Query: 1465 ESTERQKELLS---STIKQQKQQFENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIE 1521 + ++ + +T+++ ++DL+ + L + + D + + Sbjct: 528 KDSQNLFNVAQDKLATLEEVNLALNEKINDLEDELSGSENSNNLLAKLQADHEILQESYG 587 Query: 1522 KLKTQ-NKQKEKLIWEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVE 1580 KLKT K K+ + + + D +ET EL++ + + LK++++++E Sbjct: 588 KLKTDFEKLKKNKLNDANEQYQDLLSAFEETNSELEKAKQSLSASDSENNQLKQQINSLE 647 Query: 1581 D-----------RSQYTDEINRLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKIS 1629 + ++ DE+ LK E + L E L+ +L+ ND A + Sbjct: 648 NAKKELQFTPVTSDEHLDELETLKIE-------KEQLFLENQALQNQLQ-YFNDISANQT 699 Query: 1630 DLLKQLDHYTKVVE-----------MLNNEKDAIS-LAEKELYQKY 1663 + +K+ K VE ++ N+ D ++ L++KE Q Y Sbjct: 700 EEIKEASDEDKPVEIKKPRIKKRDFVIQNKDDKLAKLSKKERIQAY 745 >MPNE-M12-01-000474 gi|13508213|ref|NP_110162.1| coiled coil protein, putative structural protein involved in cytosceleton [Mycoplasma pneumoniae] Length = 1033 Score = 71.6 bits (174), Expect = 2e-14 Identities = 108/569 (18%), Positives = 227/569 (39%), Gaps = 58/569 (10%) Query: 1351 KFRKIQGESSLSSSDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKN------ 1404 KF + + L+ + + + E V SL+ + + L +R N + IK Sbjct: 478 KFDSKKHQEQLALIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQLRETKL 537 Query: 1405 RDSISKYEEEIRYYKL----ENYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRL 1460 D +KY ++ Y+L + KL+E+ +E + L Q + L ++LD++ Sbjct: 538 NDENTKYRNLLKQYELMRADSDAKLKELEHEQHLAHQHHQEQLAQLQRHNEALVKELDQV 597 Query: 1461 QKDLESTERQKELLSSTIKQQKQQFENCMDDLQGNELRLREHIHALKQAEEDVKNMASII 1520 + +T + L + +QQK E L + E++ AL +++N +++ Sbjct: 598 K----ATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLNVL 653 Query: 1521 E---KLKTQNKQKEKLIWEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLS 1577 E K KT K + ++++E+ D+ L + E+L+ Sbjct: 654 EFTHKEKTAFDSKTLTLTKQQLEQTQFDLSLTQ-----------------------EQLA 690 Query: 1578 AVEDRSQ-YTDEINRLKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLD 1636 + ++Q TD++ + +LN +++ NL + L+T + + L + + Sbjct: 691 TFKQQNQSLTDKLMASETQLNHLQQSDENLTQ--------LQTQHELLQESYNKLQDEAN 742 Query: 1637 HYTKVVEMLNNEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTD 1696 H + NE DA Q E L +C +++ ++ L ++K E +LN + + Sbjct: 743 HTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCSNIQNELHDLNRVKTNWE-NLNTEHN 801 Query: 1697 ALQISNAALSSSTQKNKEITEKIKYLEETLQ-----LQMEQNSRNGELVKTLQASCNGYK 1751 LQ A Q +I+ E LQ ++ E N + A Sbjct: 802 LLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQDLL 861 Query: 1752 DKFDDEKQKNIDLYEENQTLQKLNTDLQLQLKNLHERLSDTTEKNAWLSKIHELENMVSL 1811 ++ + + L +E Q L ++N + Q + LH ++ +A L+++ N + Sbjct: 862 SAYELLQSNHNKLKQELQVLNQVNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQA 921 Query: 1812 ETDLKYEEMKKNKSLERAVEELQTKNSQQTDVIELANK-NRSEFEEATLKYEAQISDLEK 1870 + E +++ ++ + L +N ++ N+ N S+ E K + + E Sbjct: 922 TPPVSDELLEQFNQVQLEKQRLLQQNLALVHELQYFNELNSSQTHEIKTKQDETVK--EV 979 Query: 1871 YISQQELEMKKSIRDNSSYRDKVQEMAQE 1899 I ++E+ + + RD V E ++ Sbjct: 980 IIVEKEIPVPPEKKPRLKKRDIVIENKED 1008 Score = 64.3 bits (155), Expect = 3e-12 Identities = 115/552 (20%), Positives = 222/552 (40%), Gaps = 49/552 (8%) Query: 1369 LKFEASEERVKSLEDKLKTMPLRDRTNLPVGDIIKNRDSISKYEEEIRYYKLENYKLQEI 1428 L+ + E+ K L+ + L++R L +++ ++++ + N L Sbjct: 373 LQIQLEEQLAKPLQYDQSPV-LQERIELLQNQNTNLTQELNELQQKL-FKSQNNSLLLAR 430 Query: 1429 LNESNGKLSQ-LTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFEN 1487 L E N L Q L +L ++ +L +QL++LQ+D S Q E K+ ++Q Sbjct: 431 LEEENRTLKQHLQNNLPEANQLNFVLEKQLEQLQQDKHSLTLQIEQYKFDSKKHQEQLA- 489 Query: 1488 CMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSDMQ 1547 + L+ L + +LKQ + + + LKT+ KQ RE + ND + + Sbjct: 490 LIPSLRSEINSLETEVISLKQTNQRLSLIERENNFLKTEIKQL------RETKLNDENTK 543 Query: 1548 LQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEINRLKEELNCSLKAETNLK 1607 + L + + ++ +L H E+ A + + ++ R E L L Sbjct: 544 YRNLLKQYELMRADSDAKLKELEH--EQHLAHQHHQEQLAQLQRHNEALVKELDQVKATN 601 Query: 1608 KEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYEALN 1667 E E E K S LL L + V+ A+ + EL + L Sbjct: 602 FELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQ-------ALGITNSELQNQLNVLE 654 Query: 1668 -TECESLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEETL 1726 T E +LT KQ+LE Q L ++ L++ Q+N+ +T+K+ E L Sbjct: 655 FTHKEKTAFDSKTLTLTKQQLE----QTQFDLSLTQEQLATFKQQNQSLTDKLMASETQL 710 Query: 1727 QLQMEQNSRNGELVKT----LQASCNGYKDKFD------DEKQKNIDLYEENQTLQKLNT 1776 ++Q+ N ++T LQ S N +D+ + + Q +D + L K N Sbjct: 711 N-HLQQSDENLTQLQTQHELLQESYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNN 769 Query: 1777 -DLQLQLKNLHERLSDTTEKNAWLSKIHELENMVSLETDLKYEEMKKNKS-------LER 1828 +L + N+ L D ++ N++ + + E+M+ S Sbjct: 770 EELTDKCSNIQNELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLAQIQAEHE 829 Query: 1829 AVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQISDLEKYISQQELEMKKSIRDNSS 1888 ++E K + + I++ N N EA +Y+ +S E + ++K+ ++ + Sbjct: 830 LLQESYNKVKAELNEIQITNLN-----EANAQYQDLLSAYE-LLQSNHNKLKQELQVLNQ 883 Query: 1889 YRDKVQEMAQEI 1900 + Q++AQ++ Sbjct: 884 VNLEKQQLAQKL 895 Score = 59.3 bits (142), Expect = 1e-10 Identities = 122/524 (23%), Positives = 217/524 (41%), Gaps = 92/524 (17%) Query: 1427 EILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQFE 1486 E+L N L+Q +L+Q K S L RL+++ + T+KQ Q Sbjct: 398 ELLQNQNTNLTQELNELQQKLFKSQNNSLLLARLEEE-----------NRTLKQHLQ--N 444 Query: 1487 NCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSDM 1546 N + Q N + ++ L+Q ++D ++ IE+ K +K+ ++ + R++ + Sbjct: 445 NLPEANQLNFVLEKQ----LEQLQQDKHSLTLQIEQYKFDSKKHQEQLALIPSLRSEIN- 499 Query: 1547 QLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQY-TDEINRLKE-ELNCSLKAET 1604 L+ ++ LK+ +RLS +E + + EI +L+E +LN Sbjct: 500 SLETEVISLKQT--------------NQRLSLIERENNFLKTEIKQLRETKLNDENTKYR 545 Query: 1605 NLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYE 1664 NL K++ E DS+AK LK+L+H + + E+ A +L + E Sbjct: 546 NLLKQY-------ELMRADSDAK----LKELEHEQHLAHQHHQEQLA------QLQRHNE 588 Query: 1665 ALNTECESLKGKIVSLTKIKQELESD---LNQKTDALQISNAALSSSTQ----KNKEITE 1717 AL E + +K L Q E L QK +L S A + Q N E+ Sbjct: 589 ALVKELDQVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQN 648 Query: 1718 KIKYLE-----------ETLQL---QMEQN----SRNGELVKTLQASCNGYKDKFDDEKQ 1759 ++ LE +TL L Q+EQ S E + T + DK + Sbjct: 649 QLNVLEFTHKEKTAFDSKTLTLTKQQLEQTQFDLSLTQEQLATFKQQNQSLTDKLMASET 708 Query: 1760 KNIDLYEENQTLQKLNTDLQLQLKNLHERLSDTTEKNAWLSKIHELENMVSLETDLKYEE 1819 + L + ++ L +L T +L L+ + +L D E N + H+ +N E D +++ Sbjct: 709 QLNHLQQSDENLTQLQTQHEL-LQESYNKLQD--EANHTQQQFHQAQN----ELDAAHQQ 761 Query: 1820 MKKNKSLERAVEELQTKNSQQTDVIELANKNRSEFEEATLKYEAQISDLEKYISQQELEM 1879 + K EEL K S + + N+ ++ +E ++ L+ +QQ+ +M Sbjct: 762 LALFKQNN---EELTDKCSNIQNELHDLNRVKTNWENLNTEHNL----LQDKYAQQKEQM 814 Query: 1880 KKSIRDNSSYRDKVQEMAQEIEFWKSRYESTMIGSKNIDSNNAQ 1923 + N + E+ QE + K + E I N++ NAQ Sbjct: 815 QHE-HSNLAQIQAEHELLQE-SYNKVKAELNEIQITNLNEANAQ 856 Score = 55.1 bits (131), Expect = 2e-09 Identities = 115/565 (20%), Positives = 235/565 (41%), Gaps = 69/565 (12%) Query: 652 FKTTSSRHREQQITLLNQLASTHPHFVRCIIPNNVKKVKTFNRRLILDQLRCNGVLEGIR 711 +K S +H+EQ + L+ L S + V +K N+RL L + N + I+ Sbjct: 477 YKFDSKKHQEQ-LALIPSLRSEINS-----LETEVISLKQTNQRLSLIERENNFLKTEIK 530 Query: 712 LAREGYPN--RIAFQEFFQRYRILYPENSTTTTFSSKLKASTKQNCEFLLTSLQLDTK-- 767 RE N ++ ++Y ++ ++ + Q+ + L LQ + Sbjct: 531 QLRETKLNDENTKYRNLLKQYELMRADSDAKLKELEHEQHLAHQHHQEQLAQLQRHNEAL 590 Query: 768 VYKIGNTKLF-FKAGVLADLEKQKDVKLNNIMIKLTATIRGYT--------VRKEITYHL 818 V ++ K F+ G+ A +Q+ V L L A+++ E+ L Sbjct: 591 VKELDQVKATNFELGLAAQGFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQL 650 Query: 819 QKLK-----KTRVIGNTFRLYNRLVKEDPWFNLFIRIKPLLT-SSNDMTRTKKF---NEQ 869 L+ KT T L + + E F+L + + L T + + T K Q Sbjct: 651 NVLEFTHKEKTAFDSKTLTLTKQQL-EQTQFDLSLTQEQLATFKQQNQSLTDKLMASETQ 709 Query: 870 INKLKN---DLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSS 926 +N L+ +L +++++ + L+E K +E +TQ +Q + L L K ++ Sbjct: 710 LNHLQQSDENLTQLQTQHELLQESYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNN 769 Query: 927 ETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSKNNELI 986 E L + ++ +E +++R V N E + + LQ+ +++ ++ HS Sbjct: 770 EELTDKCSNIQNELHDLNR----VKTNWENLNTEHNLLQDKYAQQKEQMQHEHS------ 819 Query: 987 KQISDLNCDISKEQSSQSLIKESKLKLENEIKRLK----DVINSKEEEIKSFNDKLSSSE 1042 ++++ Q+ L++ES K++ E+ ++ + N++ +++ S + L S+ Sbjct: 820 --------NLAQIQAEHELLQESYNKVKAELNEIQITNLNEANAQYQDLLSAYELLQSNH 871 Query: 1043 EDLDIKLVTLEKNCNIAMSRL-QSLVTENSDLRSKNENFKKEKAALNNQLKNK--ESELL 1099 L +L L + N+ +L Q L + L + + +AA NN ELL Sbjct: 872 NKLKQELQVLNQ-VNLEKQQLAQKLHNTHQSLSQTHAELTQLQAAYNNLQATPPVSDELL 930 Query: 1100 KMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQR 1159 + ++ K+ L Q++ A+ + EL + Q E K+ + +E ++ Sbjct: 931 EQFNQVQLEKQRLL----QQNLALVHELQYFNELNSS--QTHEIKTKQDETVKEVIIVEK 984 Query: 1160 E-----TKEQEQKKRNSLVESLNDS 1179 E K+ KKR+ ++E+ D+ Sbjct: 985 EIPVPPEKKPRLKKRDIVIENKEDA 1009 Score = 51.6 bits (122), Expect = 2e-08 Identities = 108/622 (17%), Positives = 238/622 (38%), Gaps = 49/622 (7%) Query: 998 KEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNCN 1057 +EQ ++ L + L+ I+ L++ + +E+ KL S+ + + L LE+ Sbjct: 378 EEQLAKPLQYDQSPVLQERIELLQNQNTNLTQELNELQQKLFKSQNN-SLLLARLEEENR 436 Query: 1058 IAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKE-KIDN--HKKELAT 1114 LQ+ + E + L NF EK L ++K S L++++ K D+ H+++LA Sbjct: 437 TLKQHLQNNLPEANQL-----NFVLEKQ-LEQLQQDKHSLTLQIEQYKFDSKKHQEQLAL 490 Query: 1115 FSKQRDDAVSEHGKITAELKET--RIQLTEYKSNYQKIK----EEYSNFQRETKEQEQKK 1168 R + S ++ + LK+T R+ L E ++N+ K + E TK + K Sbjct: 491 IPSLRSEINSLETEVIS-LKQTNQRLSLIERENNFLKTEIKQLRETKLNDENTKYRNLLK 549 Query: 1169 RNSLVESLNDSKIKELE-------ARLSQEISLNQYLNKRISGNSVETNIXXXXXXXXXX 1221 + L+ + +D+K+KELE ++++ Q N+ + + Sbjct: 550 QYELMRADSDAKLKELEHEQHLAHQHHQEQLAQLQRHNEALVKELDQVKATNFELGLAAQ 609 Query: 1222 XXPLDKEDIIKKYYDLQLAFTEITRXXXXXXXXXXXXXSRLRFTE-TRLASSSFEDXXXX 1280 K + +K L + ++L E T ++F+ Sbjct: 610 GFEQQKVVLEQKNSSLLASLQAAEENVQALGITNSELQNQLNVLEFTHKEKTAFDSKTLT 669 Query: 1281 XXXXXXXXXXXDMDPSIPLDSILNEPLDNCPDKESDINKLMLEVDYLKRQLDIETRAHYD 1340 D+ S+ E L + + ++ + L Sbjct: 670 LTKQQLEQTQFDL-------SLTQEQLATFKQQNQSLTDKLMASETQLNHLQQSDENLTQ 722 Query: 1341 AENAISALHSKFRKIQGESSLSSSDIYKLKFEASEERVKSLEDKLKTMPLRDRTNLPVGD 1400 + L + K+Q E++ + ++ + E + K L D+ + + Sbjct: 723 LQTQHELLQESYNKLQDEANHTQQQFHQAQNELDAAHQQLALFKQNNEELTDKCS----N 778 Query: 1401 IIKNRDSISKYEEEIRYYKLENYKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRL 1460 I +++ + E+ LQ+ + ++ +L Q +++ LL E +++ Sbjct: 779 IQNELHDLNRVKTNWENLNTEHNLLQDKYAQQKEQMQHEHSNLAQIQAEHELLQESYNKV 838 Query: 1461 QKDLESTERQKELLSSTIKQQKQQFENCM---DDLQGNELRLREHIHALKQAEEDVKNMA 1517 + +L E+ + + + Q+++ + + LQ N +L++ + L Q + + +A Sbjct: 839 KAEL------NEIQITNLNEANAQYQDLLSAYELLQSNHNKLKQELQVLNQVNLEKQQLA 892 Query: 1518 SIIEKLKTQNKQKEKLIWEREMERND---SDMQLQETLLELKRVQ-DVKKILSDDLAHLK 1573 + Q + + + N+ + E L + +VQ + +++L +LA + Sbjct: 893 QKLHNTHQSLSQTHAELTQLQAAYNNLQATPPVSDELLEQFNQVQLEKQRLLQQNLALVH 952 Query: 1574 ERLSAVEDRSQYTDEINRLKEE 1595 E E S T EI ++E Sbjct: 953 ELQYFNELNSSQTHEIKTKQDE 974 >SYNE-PCC-01-000727 sll1120 Length = 1200 Score = 60.5 bits (145), Expect = 5e-11 Identities = 58/299 (19%), Positives = 130/299 (43%), Gaps = 37/299 (12%) Query: 868 EQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSE 927 +Q+ + D+Q+++ + + E ++TV + TQ L+ ++ + E Sbjct: 702 KQLRQRLQDIQQVQGRNE--ELLLERTVRSRQLTQQLMEMRQQQ--------REAQLHGE 751 Query: 928 TLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSKNNELIK 987 ++ L ++ +I+++++ Q L E Q + LQ+++ E L + L Sbjct: 752 QTERDIARLSQQQTQINQQQINQQQKLAELQQNLALLQQSLPPLEQQLASAQQQLTAL-- 809 Query: 988 QISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDI 1047 + S+ I+ +E E +R + E+ +K L +S + L+ Sbjct: 810 -------ETSQTHQQWQTIQIQIRTVEAEYQRQLQALRQGEDHLKD----LQNSSQRLEE 858 Query: 1048 KLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDN 1107 K+ ++ IA + Q L L + E K A +N ++ E++L K+ EK+ + Sbjct: 859 KIAQAQEK--IAQHQAQDLT-----LAQEQEQLKIALAEMNGAIQTTEAQLAKLSEKLGS 911 Query: 1108 HKKELATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQ 1166 K+E RD ++ ++ ++ +E + Q + ++N Q+ +E + Q + + EQ Sbjct: 912 TKQE-------RDRLETQLNQLRSQQQEQQWQWEKLQTNQQEYQENLTQLQTQLEALEQ 963 Score = 55.1 bits (131), Expect = 2e-09 Identities = 64/372 (17%), Positives = 165/372 (44%), Gaps = 30/372 (8%) Query: 834 YNRLVKEDPWFNLFIRIKPLLTSSNDMTRTKKFNEQINKLKNDLQEMESKKKFLEEKNQK 893 YN +++ D + + K +++ +F+ +I K K L E++ + EE+ Q Sbjct: 157 YNIVLQGDVTRIITMNSKERREIIDELAGVAEFDRKIVKTKETLTEVQDR----EERCQI 212 Query: 894 TVNELENTQDLLNQEKENLRKNESLLNRVKTSSETLQKQFDDLVSEKDEISREKLEVAQN 953 ELE T + L +++ K ++L +V+ +KQ V + + +++ ++ Sbjct: 213 IATELERTLERLAADRQKAEKYQALRQQVQ------EKQGWAKVIQYKAVEQQRQKLWGQ 266 Query: 954 LEEAHQKIQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQ-SLIKESKLK 1012 LE ++ Q +Q+ + +R ++ ++ +L Q+ L + ++Q + K + + Sbjct: 267 LERDREQSQQIQQALDQRSQAIQTQQTELEKLNAQVKALGEEEQLAVAAQLATQKAQRDQ 326 Query: 1013 LENEIKRLKDVINSKEEEIKSFNDKLSSSEED-LDIK----------LVTLEKNCNIAMS 1061 L+ I + ++++ ++S S++ L I+ L LE + Sbjct: 327 LQQRYNDGDRQITNHQQQVGQIQAEISQSQQQFLHIQQEKSFHNTQTLPQLEAAVQTSQQ 386 Query: 1062 RLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKE---KIDNHKKELATFSKQ 1118 +L+ L + + S +E + +E+ L+ + + EL+ + +++ +++L T + Sbjct: 387 QLEQLRHQAQAIASASEAWVQEQTQLSRTVNQLQDELIPQRSQLAQLEERQQQLLTNLAE 446 Query: 1119 RDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKEQEQKKRNSLVESLND 1178 ++ K++ EL+E + ++ + + + + + EQ++ SL++ Sbjct: 447 LTPLLT---KVSVELEEKQFAQGQFNFQGEALTSQIQTLASDLAQLEQER--SLLQETQT 501 Query: 1179 SKIKELEARLSQ 1190 +KE + + Q Sbjct: 502 RLLKEQQEKQRQ 513 Score = 52.8 bits (125), Expect = 1e-08 Identities = 68/361 (18%), Positives = 158/361 (43%), Gaps = 34/361 (9%) Query: 1426 QEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQF 1485 +E+L E + QLT L + + ++ ++ ++D+ +Q+ + I QQ+ Sbjct: 719 EELLLERTVRSRQLTQQLMEMRQQQREAQLHGEQTERDIARLSQQQ----TQINQQQINQ 774 Query: 1486 ENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSD 1545 + + +LQ N L++ + L+Q + + +E +T + + I R +E Sbjct: 775 QQKLAELQQNLALLQQSLPPLEQQLASAQQQLTALETSQTHQQWQTIQIQIRTVE----- 829 Query: 1546 MQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDR-SQYTDEINRLKEELNCSLKAET 1604 + Q L L++ +D K L + L+E+++ +++ +Q+ + L +E + Sbjct: 830 AEYQRQLQALRQGEDHLKDLQNSSQRLEEKIAQAQEKIAQHQAQDLTLAQE-------QE 882 Query: 1605 NLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNEKDAISLAEKELYQKYE 1664 LK A + ++T +EA+++ L ++L + + L + + + ++E ++E Sbjct: 883 QLKIALAEMNGAIQT----TEAQLAKLSEKLGSTKQERDRLETQLNQLRSQQQEQQWQWE 938 Query: 1665 ALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEE 1724 L T + + + L + LE DL + + L + N + ++ LE Sbjct: 939 KLQTNQQEYQENLTQLQTQLEALEQDLPDPWPEIPL----LQDRDEANLDFANILEELER 994 Query: 1725 TLQLQMEQNSRNGELVKTLQASCNGYK-DKFDDEKQKNIDLYEENQTLQKLNTDLQLQLK 1783 ++ RNG+ N +++ + + +L E+ QT+ T+L L+++ Sbjct: 995 SI--------RNGQKRLEAMEPVNMLALQEYEKTEARLGELSEKLQTIAGERTELLLRIE 1046 Query: 1784 N 1784 N Sbjct: 1047 N 1047 Score = 51.6 bits (122), Expect = 2e-08 Identities = 70/337 (20%), Positives = 146/337 (43%), Gaps = 29/337 (8%) Query: 1426 QEILNESNGKLSQLTLDLRQSKSKEALLSEQLDRLQKDLESTERQKELLSSTIKQQKQQF 1485 Q +N+ Q +L+Q+ ALL + L L++ L S ++Q L ++ Q QQ+ Sbjct: 764 QTQINQQQINQQQKLAELQQNL---ALLQQSLPPLEQQLASAQQQLTALETS--QTHQQW 818 Query: 1486 ENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWEREMERNDSD 1545 + ++ E + + AL+Q E+ +K++ + ++L+ + Q ++ I + + + Sbjct: 819 QTIQIQIRTVEAEYQRQLQALRQGEDHLKDLQNSSQRLEEKIAQAQEKIAQHQAQDLTLA 878 Query: 1546 MQLQETLLELKRVQDVKKILSDDLAHLKERL-SAVEDRSQYTDEINRLKEELNCSL---- 1600 + ++ + L + + LA L E+L S ++R + ++N+L+ + Sbjct: 879 QEQEQLKIALAEMNGAIQTTEAQLAKLSEKLGSTKQERDRLETQLNQLRSQQQEQQWQWE 938 Query: 1601 KAETNLKKEFATLKYKLETSTNDSEAKISD------LLKQLDH----YTKVVEML----- 1645 K +TN ++E+ +L+T E + D LL+ D + ++E L Sbjct: 939 KLQTN-QQEYQENLTQLQTQLEALEQDLPDPWPEIPLLQDRDEANLDFANILEELERSIR 997 Query: 1646 NNEK--DAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQKTDALQISNA 1703 N +K +A+ Q+YE L K+ ++ + EL + T + S Sbjct: 998 NGQKRLEAMEPVNMLALQEYEKTEARLGELSEKLQTIAGERTELLLRIENFTTLRRRSFQ 1057 Query: 1704 ALSSSTQKNKEIT-EKIKYLEETLQLQMEQNSRNGEL 1739 + KN +I ++ + LQL ++ NG L Sbjct: 1058 DAFDAVNKNFQIIFAELSDGDGYLQLDDAEDPFNGGL 1094 >MJAN-DSM-01-001277 MJ1254 hypothetical protein Length = 469 Score = 53.9 bits (128), Expect = 5e-09 Identities = 55/199 (27%), Positives = 92/199 (46%), Gaps = 29/199 (14%) Query: 998 KEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKS-------FNDKLSSSEEDL---DI 1047 KE+ S+ I E ++NE+ LK+ + KEEEIK+ DKLS + ++L D Sbjct: 270 KEKISKRKIIERTKNIKNELTSLKNKLKEKEEEIKNLAIKIKDLEDKLSKANKNLLNKDE 329 Query: 1048 KLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAAL---NNQLKNKESELLKMKEK 1104 + L + + S++Q L+ EN + K E+ K L N++LK+K EL + +K Sbjct: 330 IISVLNERISEYESQIQKLLDENIIYKEKIESLNKYIETLKKENDKLKDKVRELSDIAKK 389 Query: 1105 IDNHKKELATFSKQRD-----DAVSEHGKIT----------AELKETRIQLTEYKSNYQK 1149 K+ + D D + +HG IT ++ K +RI ++E + Sbjct: 390 YMEEKRGVLWSFLTEDEKIIIDLIKKHGHITQKEIVEITGMSKPKVSRI-ISELEDRKII 448 Query: 1150 IKEEYSNFQRETKEQEQKK 1168 KE+ + T +E KK Sbjct: 449 RKEKIGRINKLTLTEESKK 467 Score = 45.8 bits (107), Expect = 1e-06 Identities = 63/262 (24%), Positives = 120/262 (45%), Gaps = 32/262 (12%) Query: 791 DVKLNNIMIKLTATIRGYTVRKEITYHLQKLKKTRVIGNTFR--LYNRLVKEDPWFNLFI 848 D+ LN I T T++ YT I+Y Q + + I N + L + + LF+ Sbjct: 215 DLSLNK-EITFTITVK-YTF---ISYPGQNIIEQPAINNNLKYLLIIAIFGTAIFGGLFV 269 Query: 849 RIKPLLTSSNDMTRTKKFNEQINKLKNDLQEMES-------KKKFLEEKNQKTVNELENT 901 + K ++ + RTK ++ LKN L+E E K K LE+K K L N Sbjct: 270 KEK--ISKRKIIERTKNIKNELTSLKNKLKEKEEEIKNLAIKIKDLEDKLSKANKNLLNK 327 Query: 902 QDLLNQEKENLRKNESLLNRV-------KTSSETLQKQFDDLVSEKDEIS---REKLEVA 951 ++++ E + + ES + ++ K E+L K + L E D++ RE ++A Sbjct: 328 DEIISVLNERISEYESQIQKLLDENIIYKEKIESLNKYIETLKKENDKLKDKVRELSDIA 387 Query: 952 QNLEEAHQKIQGLQETIREREATLEKLHSKNNELI-KQISDLNCDISKEQSSQ--SLIKE 1008 + E + + L + E E + L K+ + K+I ++ +SK + S+ S +++ Sbjct: 388 KKYMEEKRGV--LWSFLTEDEKIIIDLIKKHGHITQKEIVEIT-GMSKPKVSRIISELED 444 Query: 1009 SKLKLENEIKRLKDVINSKEEE 1030 K+ + +I R+ + ++E + Sbjct: 445 RKIIRKEKIGRINKLTLTEESK 466 Score = 43.5 bits (101), Expect = 6e-06 Identities = 43/191 (22%), Positives = 93/191 (48%), Gaps = 13/191 (6%) Query: 864 KKFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVK 923 +K E+ +KN+L +++K K EE+ + ++++ +D L++ +NL + +++ + Sbjct: 276 RKIIERTKNIKNELTSLKNKLKEKEEEIKNLAIKIKDLEDKLSKANKNLLNKDEIISVLN 335 Query: 924 TSSETLQKQFDDLVSEKDEISREKLE-VAQNLEEAHQKIQGLQETIREREATLEKLHSKN 982 + Q L+ E + I +EK+E + + +E ++ L++ +RE +K + Sbjct: 336 ERISEYESQIQKLLDE-NIIYKEKIESLNKYIETLKKENDKLKDKVRELSDIAKKYMEEK 394 Query: 983 N----ELIKQISDLNCDISKEQS--SQSLIKE----SKLKLENEIKRLKDVINSKEEEIK 1032 + + + D+ K+ +Q I E SK K+ I L+D ++E+I Sbjct: 395 RGVLWSFLTEDEKIIIDLIKKHGHITQKEIVEITGMSKPKVSRIISELEDRKIIRKEKIG 454 Query: 1033 SFNDKLSSSEE 1043 N KL+ +EE Sbjct: 455 RIN-KLTLTEE 464 >SCER-S28-01-001667 ORFP:YER008C SEC3, Chr V from 167807-171817, reverse complement Length = 1336 Score = 53.1 bits (126), Expect = 8e-09 Identities = 99/424 (23%), Positives = 185/424 (43%), Gaps = 60/424 (14%) Query: 1423 YKLQEILNESNGKLSQLTLDLRQSKSKEALLSEQLD-RLQKDLESTERQKELLSSTIKQQ 1481 Y LNE N K +L +Q +++ L EQ +LQK+ E ++E +++ Sbjct: 316 YSSNSTLNEVN-KRYELEQQQQQEEAELRRLEEQKRLQLQKENEMKRLEEERRIKQEERK 374 Query: 1482 KQQFENCMDDLQGNELRLREHIHALKQAEEDVKNMASIIEKLKTQNKQKEKLIWEREMER 1541 +Q L+ E + + + A KQ E K + Q +++++L ERE+ Sbjct: 375 RQMELEHQRQLEEEERKRQMELEAKKQME----------LKRQRQFEEEQRLKKERELLE 424 Query: 1542 NDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEIN----RLKEELN 1597 + QET LK+ + ++ L+ K + + V++ S YT EIN L E+LN Sbjct: 425 IQRKQREQETAERLKK--EEQEALAKKEEEEKSKRNKVDNES-YTQEINGKVDNLLEDLN 481 Query: 1598 CSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEMLNNE-KDAISLAE 1656 L ET Y E ST A+ D LK+ + KV + ++ D+ISL++ Sbjct: 482 AVLAEETETTPTMQNGTYVPERST----ARAHDQLKKPLNIAKVESLGGSDLNDSISLSD 537 Query: 1657 KELYQKYEALNTECESLKGKIVSLTKIKQELESDLN-QKTDALQISNAALSSSTQKNKEI 1715 + LNT +L+ Q+ ++DL+ +K D ++ SN + E+ Sbjct: 538 -----EIAGLNTS---------NLSGEDQDEKNDLSFEKGDEVRYSNNFEGEAPHVYHEV 583 Query: 1716 T---EKIKYLEETLQLQMEQNSRNGELVKTLQASCNGYKDKFDDEKQKNIDLYEENQTLQ 1772 + E+ + + L L E+N+ + L+++ K + + +NID + L Sbjct: 584 SIIQEEAPAVSQKLILP-EENNESEALIES----------KEEIKTMENIDDEVLLEILT 632 Query: 1773 KLNTDLQLQLKNLHERLSDTTEKNAWLSKIHELENMVSLE---TDLKYEEMKKNKSLERA 1829 +N ++ ++ ER+ + +L +N++SL+ +++ E K N R Sbjct: 633 DINWSIEDDADSMIERIDLRLAETEYLFN----QNLLSLQKIGPNIRPYEDKVNDECHRI 688 Query: 1830 VEEL 1833 + L Sbjct: 689 IPTL 692 >SYNE-PCC-01-001071 sll1583 Length = 562 Score = 52.8 bits (125), Expect = 1e-08 Identities = 69/319 (21%), Positives = 136/319 (42%), Gaps = 53/319 (16%) Query: 817 HLQKLKKTRVIGNTFRLYNRLVKEDPWFNLFIRIKPLLTSSNDMTRTKKFNEQINKLKND 876 H ++ + +G +L L++E+ NL R+K + N++ T+ Q+N L Sbjct: 121 HYDDIQSEKFVGLQ-KLNQELLQENT--NLSDRLKQAV---NEVAETRPKLVQLNSLVTR 174 Query: 877 LQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSETLQKQFDDL 936 Q++ + ++E+ K + Q L +QEK +++E + + + ++Q L Sbjct: 175 NQQLSDQLSYVEQNQAKAIE-----QRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQL 229 Query: 937 VSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSKNNELIKQISDLNCDI 996 +E+D++ +E L+ A Q+ Q Q +A L++L + + + S L + Sbjct: 230 TAERDQVQQE-------LQTARQQSQSAQTQAENLQAALDRLGQQEEQWQGERSQLTAKL 282 Query: 997 SKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKLVTLEKNC 1056 ++ + +Q +L L N E+K KL +++ + D +L T +K Sbjct: 283 NQLEEAQ-----KELALAN-------------AELKV---KLETTQAEGD-RLKTEKKEQ 320 Query: 1057 NIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFS 1116 A+ Q VT+ ++E AAL L + E ++ K +AT Sbjct: 321 AAALQSAQGQVTQ----------LQQELAALQENLAKAKGE---PPSEVPEKTKAVATAP 367 Query: 1117 KQRDDAVSEHGKITAELKE 1135 Q VS +T E+K+ Sbjct: 368 AQEAPVVSPSPPVTVEVKQ 386 Score = 48.9 bits (115), Expect = 1e-07 Identities = 69/278 (24%), Positives = 118/278 (42%), Gaps = 31/278 (11%) Query: 881 ESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSETLQKQ---FDDLV 937 + K + LE+ Q LEN NQ EN + E ++ LQ Q +DD+ Sbjct: 74 KGKLRRLEKDLQSVQASLENALAERNQLTENYQAQEKMV-------AALQHQLAHYDDIQ 126 Query: 938 SEK----DEISREKLEVAQNLEEA-HQKIQGLQETIREREATLEKLHSKNNELIKQISDL 992 SEK ++++E L+ NL + Q + + ET R + L L ++N +L Q+S + Sbjct: 127 SEKFVGLQKLNQELLQENTNLSDRLKQAVNEVAET-RPKLVQLNSLVTRNQQLSDQLSYV 185 Query: 993 NCDISK--EQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEEDLDI--- 1047 + +K EQ S K + + E E + + EE+++ + +++L Sbjct: 186 EQNQAKAIEQRLASQEKLWQQRHEQEQAQWNSQASQWEEQVRQLTAERDQVQQELQTARQ 245 Query: 1048 ---KLVTLEKNCNIAMSRL----QSLVTENSDLRSKN---ENFKKEKAALNNQLKNKESE 1097 T +N A+ RL + E S L +K E +KE A N +LK K Sbjct: 246 QSQSAQTQAENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELALANAELKVKLET 305 Query: 1098 LLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAELKE 1135 +++ KKE A + V++ + A L+E Sbjct: 306 TQAEGDRLKTEKKEQAAALQSAQGQVTQLQQELAALQE 343 Score = 45.1 bits (105), Expect = 2e-06 Identities = 47/242 (19%), Positives = 104/242 (42%), Gaps = 28/242 (11%) Query: 957 AHQKIQGLQETIREREATLEKLHSKNNELIKQISDLNCDISKEQSSQSLIKESKLKLENE 1016 A K++ L++ ++ +A+LE ++ N+L + Q+ + ++ L+++ Sbjct: 73 AKGKLRRLEKDLQSVQASLENALAERNQLTENY----------QAQEKMVAA----LQHQ 118 Query: 1017 IKRLKDVINSKEEEIKSFNDKLSSSEEDLDIKL---VTLEKNCNIAMSRLQSLVTENSDL 1073 + D+ + K ++ N +L +L +L V + +L SLVT N L Sbjct: 119 LAHYDDIQSEKFVGLQKLNQELLQENTNLSDRLKQAVNEVAETRPKLVQLNSLVTRNQQL 178 Query: 1074 RSKNENFKKEKAALNNQLKNKESELLKMKEKIDNHKKELATFSKQRDDAVSEHGKITAEL 1133 + ++ +A Q + +L + + H++E A ++ Q + ++TAE Sbjct: 179 SDQLSYVEQNQAKAIEQRLASQEKLWQQR-----HEQEQAQWNSQASQWEEQVRQLTAER 233 Query: 1134 KETRIQLTEYKSNYQKIKEEYSNFQR------ETKEQEQKKRNSLVESLNDSKIKELEAR 1187 + + +L + Q + + N Q + +EQ Q +R+ L LN + + E Sbjct: 234 DQVQQELQTARQQSQSAQTQAENLQAALDRLGQQEEQWQGERSQLTAKLNQLEEAQKELA 293 Query: 1188 LS 1189 L+ Sbjct: 294 LA 295 >SYNE-PCC-01-000943 sll1424 Length = 491 Score = 52.4 bits (124), Expect = 1e-08 Identities = 42/184 (22%), Positives = 83/184 (45%), Gaps = 14/184 (7%) Query: 869 QINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKTSSET 928 Q+ K +L++ K+ +E + E + Q+ + N K LL RV S Sbjct: 84 QLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKALQLLRRVSEQSRN 143 Query: 929 LQKQFDDLVSE-------KDEISREKLEVAQNLEEAHQKIQGLQETIREREATLEKLHSK 981 L+++ +L +E KD + E E+ ++ Q++ QE I ++E L + + Sbjct: 144 LRQEVANLSAERAQLNEQKDSLLAESSELQSQVKLRDQELSKRQERIAQQEKVLARQREQ 203 Query: 982 NNELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSS 1041 L K+ + L ++ Q Q+ I + K++ +L I +K+ +I++ +KL Sbjct: 204 VQSLEKRFASLE---AQRQQLQAEINQRDTKID----QLDQAIAAKDNDIQAREEKLQGL 256 Query: 1042 EEDL 1045 E +L Sbjct: 257 ETEL 260 Score = 48.1 bits (113), Expect = 3e-07 Identities = 50/212 (23%), Positives = 101/212 (47%), Gaps = 16/212 (7%) Query: 1532 KLIWEREMERNDSDMQLQETLLELKRVQDVKKILSDDLAHLKERLSAVEDRSQYTDEINR 1591 K + E + +D QL+ EL++ K+ + +L ++E V++RS+ E+NR Sbjct: 69 KSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSR---ELNR 125 Query: 1592 ----LKEELNCSLKAETNLKKEFATLKYKLETSTNDSEAKISDLLKQLDHYTKVVEM-LN 1646 + L + NL++E A L + N+ + + +L K+ + L+ Sbjct: 126 NYTKALQLLRRVSEQSRNLRQEVANLSAE-RAQLNEQKDSLLAESSELQSQVKLRDQELS 184 Query: 1647 NEKDAISLAEKELYQKYEALNTECESLKGKIVSLTKIKQELESDLNQ---KTDALQISNA 1703 ++ I+ EK L ++ E + +SL+ + SL +Q+L++++NQ K D L + A Sbjct: 185 KRQERIAQQEKVLARQRE----QVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIA 240 Query: 1704 ALSSSTQKNKEITEKIKYLEETLQLQMEQNSR 1735 A + Q +E + ++ LQ ++E+ R Sbjct: 241 AKDNDIQAREEKLQGLETELSFLQREVEELER 272 Score = 46.2 bits (108), Expect = 1e-06 Identities = 35/203 (17%), Positives = 94/203 (46%), Gaps = 5/203 (2%) Query: 984 ELIKQISDLNCDISKEQSSQSLIKESKLKLENEIKRLKDVINSKEEEIKSFNDKLSSSEE 1043 E + Q+ D+ + ++ ++K ++E+E+ +++ +E + N + + Sbjct: 73 EGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQERSRELNRNYTKA-- 130 Query: 1044 DLDIKLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELLKMKE 1103 L + E++ N+ + +L E + L + ++ E + L +Q+K ++ EL K +E Sbjct: 131 -LQLLRRVSEQSRNLRQE-VANLSAERAQLNEQKDSLLAESSELQSQVKLRDQELSKRQE 188 Query: 1104 KIDNHKKELATFSKQRDDAVSEHGKITAELKETRIQLTEYKSNYQKIKEEYSNFQRETKE 1163 +I +K LA +Q + A+ ++ + ++ + + ++ + + + + Sbjct: 189 RIAQQEKVLARQREQVQSLEKRFASLEAQRQQLQAEINQRDTKIDQLDQAIAAKDNDIQA 248 Query: 1164 QEQKKRNSLVE-SLNDSKIKELE 1185 +E+K + E S +++ELE Sbjct: 249 REEKLQGLETELSFLQREVEELE 271 Score = 44.7 bits (104), Expect = 3e-06 Identities = 45/214 (21%), Positives = 95/214 (44%), Gaps = 10/214 (4%) Query: 1672 SLKGKIVSLTKIKQELESDLNQKTDALQISNAALSSSTQKNKEITEKIKYLEETLQLQME 1731 S G + + +K +E L+ L+++ L ++Q +EI ++ + E QL E Sbjct: 59 STLGILFTFSKSLREGVFQLDDILAQLRVAKTELEQASQAKEEIESELTAVREEQQLVQE 118 Query: 1732 QN---SRNG----ELVKTLQASCNGYKDKFDDEKQKNIDLYEENQTLQKLNTDLQLQLKN 1784 ++ +RN +L++ + + + + + L E+ +L +++LQ Q+K Sbjct: 119 RSRELNRNYTKALQLLRRVSEQSRNLRQEVANLSAERAQLNEQKDSLLAESSELQSQVKL 178 Query: 1785 LHERLSDTTEKNAWLSKI--HELENMVSLETDLKYEEMKKNKSLERAVEELQTKNSQQTD 1842 + LS E+ A K+ + E + SLE E ++ + L+ + + TK Q Sbjct: 179 RDQELSKRQERIAQQEKVLARQREQVQSLEKRFASLEAQR-QQLQAEINQRDTKIDQLDQ 237 Query: 1843 VIELANKNRSEFEEATLKYEAQISDLEKYISQQE 1876 I + + EE E ++S L++ + + E Sbjct: 238 AIAAKDNDIQAREEKLQGLETELSFLQREVEELE 271 >SCER-S28-01-002584 ORFP:YHL009W-B YHL009W-B, Chr VIII from 85904-86989,86991-91313 Length = 1802 Score = 49.3 bits (116), Expect = 1e-07 Identities = 68/342 (19%), Positives = 146/342 (42%), Gaps = 44/342 (12%) Query: 865 KFNEQINKLKNDLQEMESKKKFLEEKNQKTVNELENTQDLLNQEKENLRKNESLLNRVKT 924 K++E+++++ + +QE K + KN +N+ D + + N L V Sbjct: 1000 KYDEKVHRIPSIIQE-----KLVGSKNTIKINDENRISDRIRSKNIGSILNTGLSRCVDI 1054 Query: 925 SSETLQKQFDDLVSEKDEISREKLEVAQNLEEAHQKIQGLQETIREREATLE-KLHSKNN 983 + E++ + + + + K E+ +E+ N E + K + ++ R E L + + Sbjct: 1055 TDESITNKDESMHNAKPELIQEQFN-KTNHETSFPKEGSIGTNVKFRNTDNEISLKTGDT 1113 Query: 984 EL-IKQISDLNCDISKEQSSQSLIKESKLKLEN-EIKRLKDVINSKEEEIKSFNDKLSSS 1041 L IK + +N S + S+ K K + EN ++D+++ ++ N + ++ Sbjct: 1114 SLPIKTLESINNHHSNDYSTN---KVEKFEKENHHPPPIEDIVDMSDQTDMESNCQDGNN 1170 Query: 1042 EEDLDI--KLVTLEKNCNIAMSRLQSLVTENSDLRSKNENFKKEKAALNNQLKNKESELL 1099 ++L + K V + N++ Q++ S +++ N+ + NKE L Sbjct: 1171 LKELKVTDKNVPTDNGTNVSPRLEQNIEASGSPVQTVNK----------SAFLNKEFSSL 1220 Query: 1100 KMKEKIDNHKK--ELATFSKQRDDAVSEHGKI--------TAELKETR-IQLTEYKSNYQ 1148 MK K H K L ++ +RD S+ ++ T ++ R I E S Sbjct: 1221 NMKRKRKRHDKNNSLTSYELERDKKRSKRNRVKLIPDNMETVSAQKIRAIYYNEAISKNP 1280 Query: 1149 KIKEEYSNFQRETKEQEQKKRNSLVESLNDSKIKELEARLSQ 1190 +KE++ Q KE +++L D K+ +++ + S+ Sbjct: 1281 DLKEKHEYKQAYHKE---------LQNLKDMKVFDVDVKYSR 1313 Database: tst.fasta Posted date: Jan 29, 2007 10:10 AM Number of letters in database: 48,235 Number of sequences in database: 78 Lambda K H 0.311 0.129 0.343 Gapped Lambda K H 0.267 0.0410 0.140 Matrix: BLOSUM62 Gap Penalties: Existence: 11, Extension: 1 Number of Hits to DB: 196,522 Number of Sequences: 78 Number of extensions: 10989 Number of successful extensions: 506 Number of sequences better than 1.0e-05: 12 Number of HSP's better than 0.0 without gapping: 2 Number of HSP's successfully gapped in prelim test: 10 Number of HSP's that attempted gapping in prelim test: 80 Number of HSP's gapped (non-prelim): 121 length of query: 1928 length of database: 48,235 effective HSP length: 77 effective length of query: 1851 effective length of database: 42,229 effective search space: 78165879 effective search space used: 78165879 T: 11 A: 40 X1: 16 ( 7.2 bits) X2: 38 (14.6 bits) X3: 64 (24.7 bits) S1: 42 (21.8 bits) S2: 100 (43.1 bits) mcl-12-135/testing/blast/Makefile.am0000644000402500021140000000032211101342252014073 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.3 2007-04-19 16:06:12 flux Exp $ include $(top_srcdir)/include/include.am this = blastfile blastfile9 EXTRA_DIST = $(this) mcl-12-135/testing/Makefile.in0000644000402500021140000003774011754271037013035 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = testing DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = . stream blast setops all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu testing/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu testing/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am check: check-recursive all-am: Makefile installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic ctags \ ctags-recursive distclean distclean-generic distclean-tags \ distdir dvi dvi-am html html-am info info-am install \ install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ installdirs-am maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ tags-recursive uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/testing/Makefile.am0000644000402500021140000000022611162260561013002 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.14 2006-11-03 13:06:53 flux Exp $ SUBDIRS = . stream blast setops mcl-12-135/configure0000755000402500021140000067103011754270117011214 00000000000000#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.65 for mcl 12-135. # # Report bugs to . # # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # # # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi " as_required="as_fn_return () { (exit \$1); } as_fn_success () { as_fn_return 0; } as_fn_failure () { as_fn_return 1; } as_fn_ret_success () { return 0; } as_fn_ret_failure () { return 1; } exitcode=0 as_fn_success || { exitcode=1; echo as_fn_success failed.; } as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : else exitcode=1; echo positional parameters were not saved. fi test x\$exitcode = x0 || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 test \$(( 1 + 1 )) = 2 || exit 1" if (eval "$as_required") 2>/dev/null; then : as_have_required=yes else as_have_required=no fi if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. as_found=: case $as_dir in #( /*) for as_base in sh bash ksh sh5; do # Try only shells that exist, to save several forks. as_shell=$as_dir/$as_base if { test -f "$as_shell" || test -f "$as_shell.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : CONFIG_SHELL=$as_shell as_have_required=yes if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : break 2 fi fi done;; esac as_found=false done $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : CONFIG_SHELL=$SHELL as_have_required=yes fi; } IFS=$as_save_IFS if test "x$CONFIG_SHELL" != x; then : # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV export CONFIG_SHELL exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} fi if test x$as_have_required = xno; then : $as_echo "$0: This script requires a shell more modern than all" $as_echo "$0: the shells that I found on your system." if test x${ZSH_VERSION+set} = xset ; then $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" $as_echo "$0: be upgraded to zsh 4.3.4 or later." else $as_echo "$0: Please tell bug-autoconf@gnu.org and $0: mcl-devel@lists.micans.org about your system, including $0: any error possibly output before this message. Then $0: install a modern shell, or manually run the script $0: under such a shell if you do have one." fi exit 1 fi fi fi SHELL=${CONFIG_SHELL-/bin/sh} export SHELL # Unset more variables known to interfere with behavior of common tools. CLICOLOR_FORCE= GREP_OPTIONS= unset CLICOLOR_FORCE GREP_OPTIONS ## --------------------- ## ## M4sh Shell Functions. ## ## --------------------- ## # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" } # as_fn_mkdir_p # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith # as_fn_error ERROR [LINENO LOG_FD] # --------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with status $?, using 1 if that was 0. as_fn_error () { as_status=$?; test $as_status -eq 0 && as_status=1 if test "$3"; then as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 fi $as_echo "$as_me: error: $1" >&2 as_fn_exit $as_status } # as_fn_error if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits as_lineno_1=$LINENO as_lineno_1a=$LINENO as_lineno_2=$LINENO as_lineno_2a=$LINENO eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= ' <$as_myself | sed ' s/[$]LINENO.*/&-/ t lineno b :lineno N :loop s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensitive to this). . "./$as_me.lineno" # Exit status is that of the last command. exit } ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi if test -x / >/dev/null 2>&1; then as_test_x='test -x' else if ls -dL / >/dev/null 2>&1; then as_ls_L_option=L else as_ls_L_option= fi as_test_x=' eval sh -c '\'' if test -d "$1"; then test -d "$1/."; else case $1 in #( -*)set "./$1";; esac; case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' fi as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` # # Initializations. # ac_default_prefix=/usr/local ac_clean_files= ac_config_libobj_dir=. LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= # Identity of this package. PACKAGE_NAME='mcl' PACKAGE_TARNAME='mcl' PACKAGE_VERSION='12-135' PACKAGE_STRING='mcl 12-135' PACKAGE_BUGREPORT='mcl-devel@lists.micans.org' PACKAGE_URL='' ac_unique_file="src/shmcl/mcl.c" # Factoring default headers for most tests. ac_includes_default="\ #include #ifdef HAVE_SYS_TYPES_H # include #endif #ifdef HAVE_SYS_STAT_H # include #endif #ifdef STDC_HEADERS # include # include #else # ifdef HAVE_STDLIB_H # include # endif #endif #ifdef HAVE_STRING_H # if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif #ifdef HAVE_STRINGS_H # include #endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif #ifdef HAVE_UNISTD_H # include #endif" ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS PTHREAD_CFLAGS PTHREAD_LIBS PTHREAD_CC acx_pthread_config host_os host_vendor host_cpu host build_os build_vendor build_cpu build EGREP GREP CPP RANLIB LN_S BUILD_BLAST_FALSE BUILD_BLAST_TRUE am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__quote am__include DEPDIR OBJEXT EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE am__untar am__tar AMTAR am__leading_dot SET_MAKE AWK mkdir_p MKDIR_P INSTALL_STRIP_PROGRAM STRIP install_sh MAKEINFO AUTOHEADER AUTOMAKE AUTOCONF ACLOCAL VERSION PACKAGE CYGPATH_W am__isrc INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM target_alias host_alias build_alias LIBS ECHO_T ECHO_N ECHO_C DEFS mandir localedir libdir psdir pdfdir dvidir htmldir infodir docdir oldincludedir includedir localstatedir sharedstatedir sysconfdir datadir datarootdir libexecdir sbindir bindir program_transform_name prefix exec_prefix PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking enable_maintainer_mode enable_dependency_tracking enable_helpful_reminder enable_blast ' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS CPP' # Initialize some variables set by options. ac_init_help= ac_init_version=false ac_unrecognized_opts= ac_unrecognized_sep= # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. # (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datarootdir='${prefix}/share' datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' infodir='${datarootdir}/info' htmldir='${docdir}' dvidir='${docdir}' pdfdir='${docdir}' psdir='${docdir}' libdir='${exec_prefix}/lib' localedir='${datarootdir}/locale' mandir='${datarootdir}/man' ac_prev= ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval $ac_prev=\$ac_option ac_prev= continue fi case $ac_option in *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; *) ac_optarg=yes ;; esac # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_dashdash$ac_option in --) ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ | --dataroo | --dataro | --datar) ac_prev=datarootdir ;; -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) datarootdir=$ac_optarg ;; -disable-* | --disable-*) ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=no ;; -docdir | --docdir | --docdi | --doc | --do) ac_prev=docdir ;; -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) docdir=$ac_optarg ;; -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) ac_prev=dvidir ;; -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) dvidir=$ac_optarg ;; -enable-* | --enable-*) ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) ac_prev=htmldir ;; -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ | --ht=*) htmldir=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localedir | --localedir | --localedi | --localed | --locale) ac_prev=localedir ;; -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) localedir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) ac_prev=pdfdir ;; -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) pdfdir=$ac_optarg ;; -psdir | --psdir | --psdi | --psd | --ps) ac_prev=psdir ;; -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) psdir=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=\$ac_optarg ;; -without-* | --without-*) ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=no ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) as_fn_error "unrecognized option: \`$ac_option' Try \`$0 --help' for more information." ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. case $ac_envvar in #( '' | [0-9]* | *[!_$as_cr_alnum]* ) as_fn_error "invalid variable name: \`$ac_envvar'" ;; esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` as_fn_error "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi # Check all directory arguments for consistency. for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ libdir localedir mandir do eval ac_val=\$$ac_var # Remove trailing slashes. case $ac_val in */ ) ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` eval $ac_var=\$ac_val;; esac # Be sure to have absolute directory names. case $ac_val in [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac as_fn_error "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used." >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || as_fn_error "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || as_fn_error "pwd does not report name of working directory" # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then the parent directory. ac_confdir=`$as_dirname -- "$as_myself" || $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_myself" : 'X\(//\)[^/]' \| \ X"$as_myself" : 'X\(//\)$' \| \ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_myself" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` srcdir=$ac_confdir if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." as_fn_error "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then srcdir=. fi # Remove unnecessary trailing slashes from srcdir. # Double slashes in file names in object file debugging info # mess up M-x gdb in Emacs. case $srcdir in */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; esac for ac_var in $ac_precious_vars; do eval ac_env_${ac_var}_set=\${${ac_var}+set} eval ac_env_${ac_var}_value=\$${ac_var} eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} eval ac_cv_env_${ac_var}_value=\$${ac_var} done # # Report the --help message. # if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF \`configure' configures mcl 12-135 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/mcl] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of mcl 12-135:";; esac cat <<\_ACEOF Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors --enable-helpful-reminder output citation reference (default is yes) --enable-blast build bio-informatics tools Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory LIBS libraries to pass to the linker, e.g. -l CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to . _ACEOF ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d "$ac_dir" || { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || continue ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix cd "$ac_dir" || { ac_status=$?; continue; } # Check for guested configure. if test -f "$ac_srcdir/configure.gnu"; then echo && $SHELL "$ac_srcdir/configure.gnu" --help=recursive elif test -f "$ac_srcdir/configure"; then echo && $SHELL "$ac_srcdir/configure" --help=recursive else $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi || ac_status=$? cd "$ac_pwd" || { ac_status=$?; break; } done fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF mcl configure 12-135 generated by GNU Autoconf 2.65 Copyright (C) 2009 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit fi ## ------------------------ ## ## Autoconf initialization. ## ## ------------------------ ## # ac_fn_c_try_compile LINENO # -------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_compile # ac_fn_c_try_run LINENO # ---------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes # that executables *can* be run. ac_fn_c_try_run () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then : ac_retval=0 else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=$ac_status fi rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_run # ac_fn_c_try_link LINENO # ----------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_link () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext conftest$ac_exeext if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would # interfere with the next link command; also delete a directory that is # left behind by Apple's compiler. We do this before executing the actions. rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_link # ac_fn_c_try_cpp LINENO # ---------------------- # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_cpp () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } >/dev/null && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_cpp # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists, giving a warning if it cannot be compiled using # the include files in INCLUDES and setting the cache variable VAR # accordingly. ac_fn_c_check_header_mongrel () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } else # Is the header compilable? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 $as_echo_n "checking $2 usability... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_header_compiler=yes else ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 $as_echo_n "checking $2 presence... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <$2> _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : ac_header_preproc=yes else ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 $as_echo "$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( yes:no: ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ;; no:yes:* ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## ## Report this to mcl-devel@lists.micans.org ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else eval "$3=\$ac_header_compiler" fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } fi eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_check_header_mongrel # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists and can be compiled using the include files in # INCLUDES, setting the cache variable VAR accordingly. ac_fn_c_check_header_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_check_header_compile # ac_fn_c_check_type LINENO TYPE VAR INCLUDES # ------------------------------------------- # Tests whether TYPE exists after having included INCLUDES, setting cache # variable VAR accordingly. ac_fn_c_check_type () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else eval "$3=no" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 int main () { if (sizeof ($2)) return 0; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 int main () { if (sizeof (($2))) return 0; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else eval "$3=yes" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_check_type # ac_fn_c_check_func LINENO FUNC VAR # ---------------------------------- # Tests whether FUNC exists, setting the cache variable VAR accordingly ac_fn_c_check_func () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Define $2 to an innocuous variant, in case declares $2. For example, HP-UX 11i declares gettimeofday. */ #define $2 innocuous_$2 /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $2 (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $2 /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char $2 (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined __stub_$2 || defined __stub___$2 choke me #endif int main () { return $2 (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_check_func cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by mcl $as_me 12-135, which was generated by GNU Autoconf 2.65. Invocation command line was $ $0 $@ _ACEOF exec 5>>config.log { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. $as_echo "PATH: $as_dir" done IFS=$as_save_IFS } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done { ac_configure_args0=; unset ac_configure_args0;} { ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Use '\'' to represent an apostrophe within the trap. # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo cat <<\_ASBOX ## ---------------- ## ## Cache variables. ## ## ---------------- ## _ASBOX echo # The following way of writing the cache mishandles newlines in values, ( for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( *${as_nl}ac_space=\ *) sed -n \ "s/'\''/'\''\\\\'\'''\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" ;; #( *) sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) echo cat <<\_ASBOX ## ----------------- ## ## Output variables. ## ## ----------------- ## _ASBOX echo for ac_var in $ac_subst_vars do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then cat <<\_ASBOX ## ------------------- ## ## File substitutions. ## ## ------------------- ## _ASBOX echo for ac_var in $ac_subst_files do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then cat <<\_ASBOX ## ----------- ## ## confdefs.h. ## ## ----------- ## _ASBOX echo cat confdefs.h echo fi test "$ac_signal" != 0 && $as_echo "$as_me: caught signal $ac_signal" $as_echo "$as_me: exit $exit_status" } >&5 rm -f core *.core core.conftest.* && rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h $as_echo "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_URL "$PACKAGE_URL" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then ac_site_file1=$CONFIG_SITE elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site else ac_site_file1=$ac_default_prefix/share/config.site ac_site_file2=$ac_default_prefix/etc/config.site fi for ac_site_file in "$ac_site_file1" "$ac_site_file2" do test "x$ac_site_file" = xNONE && continue if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special files # actually), so we avoid doing that. DJGPP emulates it as a regular file. if test /dev/null != "$cache_file" && test -f "$cache_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val=\$ac_cv_env_${ac_var}_value eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then # differences in whitespace do not lead to failure. ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi ## -------------------- ## ## Main body of script. ## ## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu PACKAGE=$PACKAGE_NAME VERSION=$PACKAGE_VERSION ac_aux_dir= for ac_dir in autofoo "$srcdir"/autofoo; do for ac_t in install-sh install.sh shtool; do if test -f "$ac_dir/$ac_t"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/$ac_t -c" break 2 fi done done if test -z "$ac_aux_dir"; then as_fn_error "cannot find install-sh, install.sh, or shtool in autofoo \"$srcdir\"/autofoo" "$LINENO" 5 fi # These three variables are undocumented and unsupported, # and are intended to be withdrawn in a future Autoconf release. # They can cause serious problems if a builder's source tree is in a directory # whose full name contains unusual characters. ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. am__api_version='1.11' # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in #(( ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else rm -rf conftest.one conftest.two conftest.dir echo one > conftest.one echo two > conftest.two mkdir conftest.dir if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && test -s conftest.one && test -s conftest.two && test -s conftest.dir/conftest.one && test -s conftest.dir/conftest.two then ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi fi done done ;; esac done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. Don't cache a # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } # Just in case sleep 1 echo timestamp > conftest.file # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[\\\"\#\$\&\'\`$am_lf]*) as_fn_error "unsafe absolute working directory name" "$LINENO" 5;; esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) as_fn_error "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;; esac # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi rm -f conftest.file if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". as_fn_error "ls -t appears to fail. Make sure there is not a broken alias in your environment" "$LINENO" 5 fi test "$2" = conftest.file ) then # Ok. : else as_fn_error "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. # By default was `s,x,x', remove it if useless. ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5 $as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi if test x"${install_sh}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the `STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_STRIP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } if test -z "$MKDIR_P"; then if test "${ac_cv_path_mkdir+set}" = set; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( 'mkdir (GNU coreutils) '* | \ 'mkdir (coreutils) '* | \ 'mkdir (fileutils) '4.1*) ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext break 3;; esac done done done IFS=$as_save_IFS fi test -d ./--version && rmdir ./--version if test "${ac_cv_path_mkdir+set}" = set; then MKDIR_P="$ac_cv_path_mkdir -p" else # As a last resort, use the slow shell script. Don't cache a # value for MKDIR_P within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. MKDIR_P="$ac_install_sh -d" fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 $as_echo "$MKDIR_P" >&6; } mkdir_p="$MKDIR_P" case $mkdir_p in [\\/$]* | ?:[\\/]*) ;; */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; esac for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_AWK+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 $as_echo "$AWK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AWK" && break done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." am__isrc=' -I$(srcdir)' # test to see if srcdir already configured if test -f $srcdir/config.status; then as_fn_error "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi # Define the identity of the package. PACKAGE=$PACKAGE VERSION=$VERSION cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" _ACEOF # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # We need awk for the "check" target. The system "awk" is bad on # some platforms. # Always define AMTAR for backward compatibility. AMTAR=${AMTAR-"${am_missing_run}tar"} am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' # one day we should use a config.h.in ac_config_headers="$ac_config_headers config.h" # add a `--enable-maintainer-mode' option to `configure'; `maintainer-only' rules turned off by # default in Makefile.in's { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } # Check whether --enable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then : enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval else USE_MAINTAINER_MODE=no fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 $as_echo "$USE_MAINTAINER_MODE" >&6; } if test $USE_MAINTAINER_MODE = yes; then MAINTAINER_MODE_TRUE= MAINTAINER_MODE_FALSE='#' else MAINTAINER_MODE_TRUE='#' MAINTAINER_MODE_FALSE= fi MAINT=$MAINTAINER_MODE_TRUE ######################## test void*/uint ##################################### DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 $as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from `make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 $as_echo "$_am_result" >&6; } rm -f confinc confmf # Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then : enableval=$enable_dependency_tracking; fi if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else AMDEP_TRUE='#' AMDEP_FALSE= fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "no acceptable C compiler found in \$PATH See \`config.log' for more details." "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 $as_echo_n "checking whether the C compiler works... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" ac_rmfiles= for ac_file in $ac_files do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; * ) ac_rmfiles="$ac_rmfiles $ac_file";; esac done rm -f $ac_rmfiles if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi # We set ac_cv_exeext here because the later test for it is not # safe: cross compilers may not add the suffix if given an `-o' # argument, so we may need to know it at that point already. # Even if this section looks crufty: it has the advantage of # actually working. break;; * ) break;; esac done test "$ac_cv_exeext" = no && ac_cv_exeext= else ac_file='' fi if test -z "$ac_file"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { as_fn_set_status 77 as_fn_error "C compiler cannot create executables See \`config.log' for more details." "$LINENO" 5; }; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 $as_echo_n "checking for C compiler default output file name... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 $as_echo "$ac_file" >&6; } ac_exeext=$ac_cv_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." "$LINENO" 5; } fi rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { FILE *f = fopen ("conftest.out", "w"); return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files="$ac_clean_files conftest.out" # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 $as_echo_n "checking whether we are cross compiling... " >&6; } if test "$cross_compiling" != yes; then { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if { ac_try='./conftest$ac_cv_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." "$LINENO" 5; } fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } if test "${ac_cv_objext+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot compute suffix of object files: cannot compile See \`config.log' for more details." "$LINENO" 5; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if test "${ac_cv_c_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if test "${ac_cv_prog_cc_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if test "${ac_cv_prog_cc_c89+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking _____ weak test for C void* <=> unsigned int conversion" >&5 $as_echo_n "checking _____ weak test for C void* <=> unsigned int conversion... " >&6; } if test "${ac_cv_c_void_uint+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : true else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include unsigned test[] = { 0x00000000, 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000 , 0x0000000f, 0x00000f00, 0x000f0000, 0x00f00000, 0x0f000000 , 0x0000ffff, 0x00ffff00, 0xffff0000, 0x00ff00ff, 0xff00ff00 , 0x00ffffff, 0x00ffffff, 0xffffff00, 0xffff00ff, 0xffffffff , 0x80000000, 0x40000000, 0xc0000000, 0x80000001, 0x40000001 } ; int main ( int argc , char* argv[] ) { int i = 0 ; for (i=0;i&5 $as_echo "$ac_cv_c_void_uint" >&6; } if test "$ac_cv_c_void_uint" = "failed"; then cat < void* failed: do not use --abc options. /\/\ Consider contacting the author (http://micans.org/stijn/contact.html \/\/ \/ Please include the file config.log. EOM fi ######################## helpful reminder ##################################### # extra ./configure options # Check whether --enable-helpful-reminder was given. if test "${enable_helpful_reminder+set}" = set; then : enableval=$enable_helpful_reminder; case "${enableval}" in yes) helpful_reminder=yes ;; no) helpful_reminder=no ;; *) as_fn_error "bad value ${enableval} for --enable-helpful-reminder" "$LINENO" 5 ;; esac else helpful_reminder=yes fi if test "$helpful_reminder" = "yes"; then $as_echo "#define MCL_HELPFUL_REMINDER /**/" >>confdefs.h fi ######################## tribe package ##################################### ## DEPRECATED. ## PLEASE USE BLAST PACKAGE INSTEAD. ## # extra ./configure options ## AC_ARG_ENABLE(tribe, ## [ --enable-tribe build contributed tribe tools (protein clustering stuff) ], ## [ ## case "${enableval}" in ## yes) tribe=true ;; ## no) tribe=false ;; ## *) AC_MSG_ERROR([bad value ${enableval} for --enable-tribe]) ;; ## esac ## ], [tribe=false] ## ) ## AM_CONDITIONAL(BUILD_TRIBE, test x$tribe = xtrue) ######################## blast package ##################################### # Check whether --enable-blast was given. if test "${enable_blast+set}" = set; then : enableval=$enable_blast; case "${enableval}" in yes) blast=true ;; no) blast=false ;; *) as_fn_error "bad value ${enableval} for --enable-blast" "$LINENO" 5 ;; esac else blast=false fi if test x$blast = xtrue; then BUILD_BLAST_TRUE= BUILD_BLAST_FALSE='#' else BUILD_BLAST_TRUE='#' BUILD_BLAST_FALSE= fi ## it would be nice if we'd be able to set ## our default -I compile option here ## AC_SUBST INCLUDES ## CPPFLAGS ### AC_SUBST(mandir) #AC_DEFINE_UNQUOTED(MANPATH, $datarootdir, [ # where to look for manual files #]) #AC_SUBST(datarootdir) # AC_DEFINE_UNQUOTED([DATA_PATH], [@prefix@/share/man], [Description]) # Checks for programs. for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_AWK+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 $as_echo "$AWK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AWK" && break done ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "no acceptable C compiler found in \$PATH See \`config.log' for more details." "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if test "${ac_cv_c_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if test "${ac_cv_prog_cc_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if test "${ac_cv_prog_cc_c89+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 $as_echo "no, using $LN_S" >&6; } fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_RANLIB+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 $as_echo "$RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 $as_echo "$ac_ct_RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_RANLIB" = x; then RANLIB=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac RANLIB=$ac_ct_RANLIB fi else RANLIB="$ac_cv_prog_RANLIB" fi # Checks for libraries. # FIXME: Replace `main' with a function in `-lm': { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lm" >&5 $as_echo_n "checking for main in -lm... " >&6; } if test "${ac_cv_lib_m_main+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lm $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { return main (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_m_main=yes else ac_cv_lib_m_main=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_main" >&5 $as_echo "$ac_cv_lib_m_main" >&6; } if test "x$ac_cv_lib_m_main" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LIBM 1 _ACEOF LIBS="-lm $LIBS" fi # Checks for header files. ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if test "${ac_cv_prog_CPP+set}" = set; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." "$LINENO" 5; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } if test "${ac_cv_path_GREP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then ac_path_GREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in *GNU*) ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_GREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then as_fn_error "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } if test "${ac_cv_path_EGREP+set}" = set; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else if test -z "$EGREP"; then ac_path_EGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in *GNU*) ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_EGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then as_fn_error "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if test "${ac_cv_header_stdc+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else ac_cv_header_stdc=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : else ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then $as_echo "#define STDC_HEADERS 1" >>confdefs.h fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default " eval as_val=\$$as_ac_Header if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_header in float.h limits.h malloc.h stdlib.h string.h unistd.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" eval as_val=\$$as_ac_Header if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done # Checks for typedefs, structures, and compiler characteristics. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 $as_echo_n "checking for an ANSI C-conforming const... " >&6; } if test "${ac_cv_c_const+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { /* FIXME: Include the comments suggested by Paul. */ #ifndef __cplusplus /* Ultrix mips cc rejects this. */ typedef int charset[2]; const charset cs; /* SunOS 4.1.1 cc rejects this. */ char const *const *pcpcc; char **ppc; /* NEC SVR4.0.2 mips cc rejects this. */ struct point {int x, y;}; static struct point const zero = {0,0}; /* AIX XL C 1.02.0.0 rejects this. It does not let you subtract one const X* pointer from another in an arm of an if-expression whose if-part is not a constant expression */ const char *g = "string"; pcpcc = &g + (g ? g-g : 0); /* HPUX 7.0 cc rejects these. */ ++pcpcc; ppc = (char**) pcpcc; pcpcc = (char const *const *) ppc; { /* SCO 3.2v4 cc rejects this. */ char *t; char const *s = 0 ? (char *) 0 : (char const *) 0; *t++ = 0; if (s) return 0; } { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ int x[] = {25, 17}; const int *foo = &x[0]; ++foo; } { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ typedef const int *iptr; iptr p = 0; ++p; } { /* AIX XL C 1.02.0.0 rejects this saying "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ struct s { int j; const int *ap[3]; }; struct s *b; b->j = 5; } { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ const int foo = 10; if (!foo) return 0; } return !cs[0] && !zero.x; #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_c_const=yes else ac_cv_c_const=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5 $as_echo "$ac_cv_c_const" >&6; } if test $ac_cv_c_const = no; then $as_echo "#define const /**/" >>confdefs.h fi ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" if test "x$ac_cv_type_size_t" = x""yes; then : else cat >>confdefs.h <<_ACEOF #define size_t unsigned int _ACEOF fi # Figure out how to build C programs using POSIX threads, and # use the variables given by acx_pthread.m4 in acinclude.m4 # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || as_fn_error "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } if test "${ac_cv_build+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` test "x$ac_build_alias" = x && as_fn_error "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || as_fn_error "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 $as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; *) as_fn_error "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' set x $ac_cv_build shift build_cpu=$1 build_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: build_os=$* IFS=$ac_save_IFS case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 $as_echo_n "checking host system type... " >&6; } if test "${ac_cv_host+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || as_fn_error "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 $as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; *) as_fn_error "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' set x $ac_cv_host shift host_cpu=$1 host_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: host_os=$* IFS=$ac_save_IFS case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu acx_pthread_ok=no # We used to check for pthread.h first, but this fails if pthread.h # requires special compiler flags (e.g. on True64 or Sequent). # It gets checked for in the link test anyway. # First of all, check if the user has set any of the PTHREAD_LIBS, # etcetera environment variables, and if threads linking works using # them: if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" save_LIBS="$LIBS" LIBS="$PTHREAD_LIBS $LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS" >&5 $as_echo_n "checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char pthread_join (); int main () { return pthread_join (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : acx_pthread_ok=yes fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $acx_pthread_ok" >&5 $as_echo "$acx_pthread_ok" >&6; } if test x"$acx_pthread_ok" = xno; then PTHREAD_LIBS="" PTHREAD_CFLAGS="" fi LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" fi # We must check for the threads library under a number of different # names; the ordering is very important because some systems # (e.g. DEC) have both -lpthread and -lpthreads, where one of the # libraries is broken (non-POSIX). # Create a list of thread flags to try. Items starting with a "-" are # C compiler flags, and other items are library names, except for "none" # which indicates that we try without any flags at all, and "pthread-config" # which is a program returning the flags for the Pth emulation library. acx_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" # The ordering *is* (sometimes) important. Some notes on the # individual items follow: # pthreads: AIX (must check this before -lpthread) # none: in case threads are in libc; should be tried before -Kthread and # other compiler flags to prevent continual compiler warnings # -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) # -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) # lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) # -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) # -pthreads: Solaris/gcc # -mthreads: Mingw32/gcc, Lynx/gcc # -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it # doesn't hurt to check since this sometimes defines pthreads too; # also defines -D_REENTRANT) # pthread: Linux, etcetera # --thread-safe: KAI C++ # pthread-config: use pthread-config program (for GNU Pth library) case "${host_cpu}-${host_os}" in *solaris*) # On Solaris (at least, for some versions), libc contains stubbed # (non-functional) versions of the pthreads routines, so link-based # tests will erroneously succeed. (We need to link with -pthread or # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather # a function called by this macro, so we could check for that, but # who knows whether they'll stub that too in a future libc.) So, # we'll just look for -pthreads and -lpthread first: acx_pthread_flags="-pthread -pthreads pthread -mt $acx_pthread_flags" ;; esac if test x"$acx_pthread_ok" = xno; then for flag in $acx_pthread_flags; do case $flag in none) { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work without any flags" >&5 $as_echo_n "checking whether pthreads work without any flags... " >&6; } ;; -*) { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with $flag" >&5 $as_echo_n "checking whether pthreads work with $flag... " >&6; } PTHREAD_CFLAGS="$flag" ;; pthread-config) # Extract the first word of "pthread-config", so it can be a program name with args. set dummy pthread-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_acx_pthread_config+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$acx_pthread_config"; then ac_cv_prog_acx_pthread_config="$acx_pthread_config" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_acx_pthread_config="yes" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_prog_acx_pthread_config" && ac_cv_prog_acx_pthread_config="no" fi fi acx_pthread_config=$ac_cv_prog_acx_pthread_config if test -n "$acx_pthread_config"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $acx_pthread_config" >&5 $as_echo "$acx_pthread_config" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x"$acx_pthread_config" = xno; then continue; fi PTHREAD_CFLAGS="`pthread-config --cflags`" PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the pthreads library -l$flag" >&5 $as_echo_n "checking for the pthreads library -l$flag... " >&6; } PTHREAD_LIBS="-l$flag" ;; esac save_LIBS="$LIBS" save_CFLAGS="$CFLAGS" LIBS="$PTHREAD_LIBS $LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" # Check for various functions. We must include pthread.h, # since some functions may be macros. (On the Sequent, we # need a special flag -Kthread to make this header compile.) # We check for pthread_join because it is in -lpthread on IRIX # while pthread_create is in libc. We check for pthread_attr_init # due to DEC craziness with -lpthreads. We check for # pthread_cleanup_push because it is one of the few pthread # functions on Solaris that doesn't have a non-functional libc stub. # We try pthread_create on general principles. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { pthread_t th; pthread_join(th, 0); pthread_attr_init(0); pthread_cleanup_push(0, 0); pthread_create(0,0,0,0); pthread_cleanup_pop(0); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : acx_pthread_ok=yes fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $acx_pthread_ok" >&5 $as_echo "$acx_pthread_ok" >&6; } if test "x$acx_pthread_ok" = xyes; then break; fi PTHREAD_LIBS="" PTHREAD_CFLAGS="" done fi # Various other checks: if test "x$acx_pthread_ok" = xyes; then save_LIBS="$LIBS" LIBS="$PTHREAD_LIBS $LIBS" save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" # Detect AIX lossage: threads are created detached by default # and the JOINABLE attribute has a nonstandard name (UNDETACHED). { $as_echo "$as_me:${as_lineno-$LINENO}: checking for joinable pthread attribute" >&5 $as_echo_n "checking for joinable pthread attribute... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { int attr=PTHREAD_CREATE_JOINABLE; ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ok=PTHREAD_CREATE_JOINABLE else ok=unknown fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test x"$ok" = xunknown; then cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { int attr=PTHREAD_CREATE_UNDETACHED; ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ok=PTHREAD_CREATE_UNDETACHED else ok=unknown fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi if test x"$ok" != xPTHREAD_CREATE_JOINABLE; then $as_echo "#define PTHREAD_CREATE_JOINABLE \$ok" >>confdefs.h fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${ok}" >&5 $as_echo "${ok}" >&6; } if test x"$ok" = xunknown; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: we do not know how to create joinable pthreads" >&5 $as_echo "$as_me: WARNING: we do not know how to create joinable pthreads" >&2;} fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking if more special flags are required for pthreads" >&5 $as_echo_n "checking if more special flags are required for pthreads... " >&6; } flag=no case "${host_cpu}-${host_os}" in *-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";; *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${flag}" >&5 $as_echo "${flag}" >&6; } if test "x$flag" != xno; then PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" fi LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" # More AIX lossage: must compile with cc_r # Extract the first word of "cc_r", so it can be a program name with args. set dummy cc_r; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_PTHREAD_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$PTHREAD_CC"; then ac_cv_prog_PTHREAD_CC="$PTHREAD_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_PTHREAD_CC="cc_r" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_prog_PTHREAD_CC" && ac_cv_prog_PTHREAD_CC="${CC}" fi fi PTHREAD_CC=$ac_cv_prog_PTHREAD_CC if test -n "$PTHREAD_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PTHREAD_CC" >&5 $as_echo "$PTHREAD_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi else PTHREAD_CC="$CC" fi # Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: if test x"$acx_pthread_ok" = xyes; then LIBS="$PTHREAD_LIBS $LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" CC="$PTHREAD_CC" : else acx_pthread_ok=no fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Checks for library functions. for ac_header in stdlib.h do : ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" if test "x$ac_cv_header_stdlib_h" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_STDLIB_H 1 _ACEOF fi done { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5 $as_echo_n "checking for GNU libc compatible malloc... " >&6; } if test "${ac_cv_func_malloc_0_nonnull+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : ac_cv_func_malloc_0_nonnull=no else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if defined STDC_HEADERS || defined HAVE_STDLIB_H # include #else char *malloc (); #endif int main () { return ! malloc (0); ; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_func_malloc_0_nonnull=yes else ac_cv_func_malloc_0_nonnull=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 $as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } if test $ac_cv_func_malloc_0_nonnull = yes; then : $as_echo "#define HAVE_MALLOC 1" >>confdefs.h else $as_echo "#define HAVE_MALLOC 0" >>confdefs.h case " $LIBOBJS " in *" malloc.$ac_objext "* ) ;; *) LIBOBJS="$LIBOBJS malloc.$ac_objext" ;; esac $as_echo "#define malloc rpl_malloc" >>confdefs.h fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working memcmp" >&5 $as_echo_n "checking for working memcmp... " >&6; } if test "${ac_cv_func_memcmp_working+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : ac_cv_func_memcmp_working=no else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default int main () { /* Some versions of memcmp are not 8-bit clean. */ char c0 = '\100', c1 = '\200', c2 = '\201'; if (memcmp(&c0, &c2, 1) >= 0 || memcmp(&c1, &c2, 1) >= 0) return 1; /* The Next x86 OpenStep bug shows up only when comparing 16 bytes or more and with at least one buffer not starting on a 4-byte boundary. William Lewis provided this test program. */ { char foo[21]; char bar[21]; int i; for (i = 0; i < 4; i++) { char *a = foo + i; char *b = bar + i; strcpy (a, "--------01111111"); strcpy (b, "--------10000000"); if (memcmp (a, b, 16) >= 0) return 1; } return 0; } ; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_func_memcmp_working=yes else ac_cv_func_memcmp_working=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_memcmp_working" >&5 $as_echo "$ac_cv_func_memcmp_working" >&6; } test $ac_cv_func_memcmp_working = no && case " $LIBOBJS " in *" memcmp.$ac_objext "* ) ;; *) LIBOBJS="$LIBOBJS memcmp.$ac_objext" ;; esac for ac_func in vprintf do : ac_fn_c_check_func "$LINENO" "vprintf" "ac_cv_func_vprintf" if test "x$ac_cv_func_vprintf" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_VPRINTF 1 _ACEOF ac_fn_c_check_func "$LINENO" "_doprnt" "ac_cv_func__doprnt" if test "x$ac_cv_func__doprnt" = x""yes; then : $as_echo "#define HAVE_DOPRNT 1" >>confdefs.h fi fi done for ac_func in floor memset pow rint sqrt strchr strpbrk strstr do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" eval as_val=\$$as_ac_var if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done { $as_echo "$as_me:${as_lineno-$LINENO}: checking for va_copy() function" >&5 $as_echo_n "checking for va_copy() function... " >&6; } if test "${ac_cv_va_copy+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_cv_va_copy="" if test ".$ac_cv_va_copy" = .; then if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run test program while cross compiling See \`config.log' for more details." "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #define DO_VA_COPY(d, s) va_copy((d), (s)) void test(char *str, ...) { va_list ap, ap2; int i; va_start(ap, str); DO_VA_COPY(ap2, ap); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } DO_VA_COPY(ap, ap2); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } va_end(ap); } int main(int argc, char *argv[]) { test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); exit(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_va_copy="C99" fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi if test ".$ac_cv_va_copy" = .; then if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run test program while cross compiling See \`config.log' for more details." "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #define DO_VA_COPY(d, s) VA_COPY((d), (s)) void test(char *str, ...) { va_list ap, ap2; int i; va_start(ap, str); DO_VA_COPY(ap2, ap); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } DO_VA_COPY(ap, ap2); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } va_end(ap); } int main(int argc, char *argv[]) { test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); exit(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_va_copy="GCM" fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi if test ".$ac_cv_va_copy" = .; then if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run test program while cross compiling See \`config.log' for more details." "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #define DO_VA_COPY(d, s) __va_copy((d), (s)) void test(char *str, ...) { va_list ap, ap2; int i; va_start(ap, str); DO_VA_COPY(ap2, ap); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } DO_VA_COPY(ap, ap2); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } va_end(ap); } int main(int argc, char *argv[]) { test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); exit(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_va_copy="GCH" fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi if test ".$ac_cv_va_copy" = .; then if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run test program while cross compiling See \`config.log' for more details." "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #define DO_VA_COPY(d, s) __builtin_va_copy((d), (s)) void test(char *str, ...) { va_list ap, ap2; int i; va_start(ap, str); DO_VA_COPY(ap2, ap); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } DO_VA_COPY(ap, ap2); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } va_end(ap); } int main(int argc, char *argv[]) { test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); exit(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_va_copy="GCB" fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi if test ".$ac_cv_va_copy" = .; then if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run test program while cross compiling See \`config.log' for more details." "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #define DO_VA_COPY(d, s) do { (d) = (s); } while (0) void test(char *str, ...) { va_list ap, ap2; int i; va_start(ap, str); DO_VA_COPY(ap2, ap); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } DO_VA_COPY(ap, ap2); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } va_end(ap); } int main(int argc, char *argv[]) { test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); exit(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_va_copy="ASS" fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi if test ".$ac_cv_va_copy" = .; then if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run test program while cross compiling See \`config.log' for more details." "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #define DO_VA_COPY(d, s) do { *(d) = *(s); } while (0) void test(char *str, ...) { va_list ap, ap2; int i; va_start(ap, str); DO_VA_COPY(ap2, ap); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } DO_VA_COPY(ap, ap2); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } va_end(ap); } int main(int argc, char *argv[]) { test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); exit(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_va_copy="ASP" fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi if test ".$ac_cv_va_copy" = .; then if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run test program while cross compiling See \`config.log' for more details." "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #define DO_VA_COPY(d, s) memcpy((void *)&(d), (void *)&(s)) void test(char *str, ...) { va_list ap, ap2; int i; va_start(ap, str); DO_VA_COPY(ap2, ap); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } DO_VA_COPY(ap, ap2); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } va_end(ap); } int main(int argc, char *argv[]) { test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); exit(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_va_copy="CPS" fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi if test ".$ac_cv_va_copy" = .; then if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run test program while cross compiling See \`config.log' for more details." "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #define DO_VA_COPY(d, s) memcpy((void *)(d), (void *)(s)) void test(char *str, ...) { va_list ap, ap2; int i; va_start(ap, str); DO_VA_COPY(ap2, ap); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } DO_VA_COPY(ap, ap2); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } va_end(ap); } int main(int argc, char *argv[]) { test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); exit(0); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_va_copy="CPP" fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi if test ".$ac_cv_va_copy" = .; then as_fn_error "no working implementation found" "$LINENO" 5 fi fi if test ".$ac_cv_va_copy" = ".C99"; then $as_echo "#define HAVE_VA_COPY 1" >>confdefs.h fi cat >>confdefs.h <<_ACEOF #define __VA_COPY_USE __VA_COPY_USE_$ac_cv_va_copy _ACEOF if test ".$ac_cv_va_copy" = ".C99"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no (using fallback implementation)" >&5 $as_echo "no (using fallback implementation)" >&6; } fi # AC_CONFIG_FILES([Makefile]) ac_config_files="$ac_config_files Makefile include/Makefile doc/Makefile testing/Makefile testing/stream/Makefile testing/blast/Makefile testing/setops/Makefile graphs/Makefile img/Makefile scripts/Makefile util/Makefile src/Makefile src/clew/Makefile src/mcl/Makefile src/gryphon/Makefile src/impala/Makefile src/shcl/Makefile src/shmcl/Makefile src/shmx/Makefile src/shmcxquery/Makefile src/shmcx/Makefile src/alien/Makefile src/alien/oxygen/Makefile src/alien/oxygen/doc/Makefile src/alien/oxygen/src/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. ( for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) # `set' does not quote correctly, so add quotes: double-quote # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) | sed ' /^ac_cv_env_/b end t clear :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ :end' >>confcache if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then test "x$cache_file" != "x/dev/null" && { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file else { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' ac_i=`$as_echo "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' else am__EXEEXT_TRUE='#' am__EXEEXT_FALSE= fi if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then as_fn_error "conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${BUILD_BLAST_TRUE}" && test -z "${BUILD_BLAST_FALSE}"; then as_fn_error "conditional \"BUILD_BLAST\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi : ${CONFIG_STATUS=./config.status} ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} as_write_fail=0 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # as_fn_error ERROR [LINENO LOG_FD] # --------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with status $?, using 1 if that was 0. as_fn_error () { as_status=$?; test $as_status -eq 0 && as_status=1 if test "$3"; then as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 fi $as_echo "$as_me: error: $1" >&2 as_fn_exit $as_status } # as_fn_error # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" } # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi if test -x / >/dev/null 2>&1; then as_test_x='test -x' else if ls -dL / >/dev/null 2>&1; then as_ls_L_option=L else as_ls_L_option= fi as_test_x=' eval sh -c '\'' if test -d "$1"; then test -d "$1/."; else case $1 in #( -*)set "./$1";; esac; case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' fi as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" exec 6>&1 ## ----------------------------------- ## ## Main body of $CONFIG_STATUS script. ## ## ----------------------------------- ## _ASEOF test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" This file was extended by mcl $as_me 12-135, which was generated by GNU Autoconf 2.65. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ on `(hostname || uname -n) 2>/dev/null | sed 1q` " _ACEOF case $ac_config_files in *" "*) set x $ac_config_files; shift; ac_config_files=$*;; esac case $ac_config_headers in *" "*) set x $ac_config_headers; shift; ac_config_headers=$*;; esac cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. config_files="$ac_config_files" config_headers="$ac_config_headers" config_commands="$ac_config_commands" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ \`$as_me' instantiates files and other configuration actions from templates according to the current configuration. Unless the files and actions are specified as TAGs, all are instantiated by default. Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit --config print configuration, then exit -q, --quiet, --silent do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE --header=FILE[:TEMPLATE] instantiate the configuration header FILE Configuration files: $config_files Configuration headers: $config_headers Configuration commands: $config_commands Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ mcl config.status 12-135 configured by $0, generated by GNU Autoconf 2.65, with options \\"\$ac_cs_config\\" Copyright (C) 2009 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." ac_pwd='$ac_pwd' srcdir='$srcdir' INSTALL='$INSTALL' MKDIR_P='$MKDIR_P' AWK='$AWK' test -n "\$AWK" || AWK=awk _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # The default lists apply if the user does not specify any file. ac_need_defaults=: while test $# != 0 do case $1 in --*=*) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; esac case $ac_option in # Handling of the options. -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) $as_echo "$ac_cs_version"; exit ;; --config | --confi | --conf | --con | --co | --c ) $as_echo "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header as_fn_error "ambiguous option: \`$1' Try \`$0 --help' for more information.";; --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) as_fn_error "unrecognized option: \`$1' Try \`$0 --help' for more information." ;; *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' export CONFIG_SHELL exec "\$@" fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX $as_echo "$ac_log" } >&5 _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Handling of arguments. for ac_config_target in $ac_config_targets do case $ac_config_target in "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; "testing/Makefile") CONFIG_FILES="$CONFIG_FILES testing/Makefile" ;; "testing/stream/Makefile") CONFIG_FILES="$CONFIG_FILES testing/stream/Makefile" ;; "testing/blast/Makefile") CONFIG_FILES="$CONFIG_FILES testing/blast/Makefile" ;; "testing/setops/Makefile") CONFIG_FILES="$CONFIG_FILES testing/setops/Makefile" ;; "graphs/Makefile") CONFIG_FILES="$CONFIG_FILES graphs/Makefile" ;; "img/Makefile") CONFIG_FILES="$CONFIG_FILES img/Makefile" ;; "scripts/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/Makefile" ;; "util/Makefile") CONFIG_FILES="$CONFIG_FILES util/Makefile" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "src/clew/Makefile") CONFIG_FILES="$CONFIG_FILES src/clew/Makefile" ;; "src/mcl/Makefile") CONFIG_FILES="$CONFIG_FILES src/mcl/Makefile" ;; "src/gryphon/Makefile") CONFIG_FILES="$CONFIG_FILES src/gryphon/Makefile" ;; "src/impala/Makefile") CONFIG_FILES="$CONFIG_FILES src/impala/Makefile" ;; "src/shcl/Makefile") CONFIG_FILES="$CONFIG_FILES src/shcl/Makefile" ;; "src/shmcl/Makefile") CONFIG_FILES="$CONFIG_FILES src/shmcl/Makefile" ;; "src/shmx/Makefile") CONFIG_FILES="$CONFIG_FILES src/shmx/Makefile" ;; "src/shmcxquery/Makefile") CONFIG_FILES="$CONFIG_FILES src/shmcxquery/Makefile" ;; "src/shmcx/Makefile") CONFIG_FILES="$CONFIG_FILES src/shmcx/Makefile" ;; "src/alien/Makefile") CONFIG_FILES="$CONFIG_FILES src/alien/Makefile" ;; "src/alien/oxygen/Makefile") CONFIG_FILES="$CONFIG_FILES src/alien/oxygen/Makefile" ;; "src/alien/oxygen/doc/Makefile") CONFIG_FILES="$CONFIG_FILES src/alien/oxygen/doc/Makefile" ;; "src/alien/oxygen/src/Makefile") CONFIG_FILES="$CONFIG_FILES src/alien/oxygen/src/Makefile" ;; *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Hook for its removal unless debugging. # Note that there is a small window in which the directory will not be cleaned: # after its creation but before its name has been assigned to `$tmp'. $debug || { tmp= trap 'exit_status=$? { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status ' 0 trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. # This happens for instance with `./config.status config.h'. if test -n "$CONFIG_FILES"; then ac_cr=`echo X | tr X '\015'` # On cygwin, bash can eat \r inside `` if the user requested igncr. # But we know of no other shell where ac_cr would be empty at this # point, so we can use a bashism as a fallback. if test "x$ac_cr" = x; then eval ac_cr=\$\'\\r\' fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then ac_cs_awk_cr='\r' else ac_cs_awk_cr=$ac_cr fi echo 'BEGIN {' >"$tmp/subs1.awk" && _ACEOF { echo "cat >conf$$subs.awk <<_ACEOF" && echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done rm -f conf$$subs.sh cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>"\$tmp/subs1.awk" <<\\_ACAWK && _ACEOF sed -n ' h s/^/S["/; s/!.*/"]=/ p g s/^[^!]*!// :repl t repl s/'"$ac_delim"'$// t delim :nl h s/\(.\{148\}\)..*/\1/ t more1 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ p n b repl :more1 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t nl :delim h s/\(.\{148\}\)..*/\1/ t more2 s/["\\]/\\&/g; s/^/"/; s/$/"/ p b :more2 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t delim ' >$CONFIG_STATUS || ac_write_fail=1 rm -f conf$$subs.awk cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 _ACAWK cat >>"\$tmp/subs1.awk" <<_ACAWK && for (key in S) S_is_set[key] = 1 FS = "" } { line = $ 0 nfields = split(line, field, "@") substed = 0 len = length(field[1]) for (i = 2; i < nfields; i++) { key = field[i] keylen = length(key) if (S_is_set[key]) { value = S[key] line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) len += length(value) + length(field[++i]) substed = 1 } else len += 1 + keylen } print line } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" else cat fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ || as_fn_error "could not setup config files machinery" "$LINENO" 5 _ACEOF # VPATH may cause trouble with some makes, so we remove $(srcdir), # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=/{ s/:*\$(srcdir):*/:/ s/:*\${srcdir}:*/:/ s/:*@srcdir@:*/:/ s/^\([^=]*=[ ]*\):*/\1/ s/:*$// s/^[^=]*=[ ]*$// }' fi cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 fi # test -n "$CONFIG_FILES" # Set up the scripts for CONFIG_HEADERS section. # No need to generate them if there are no CONFIG_HEADERS. # This happens for instance with `./config.status Makefile'. if test -n "$CONFIG_HEADERS"; then cat >"$tmp/defines.awk" <<\_ACAWK || BEGIN { _ACEOF # Transform confdefs.h into an awk script `defines.awk', embedded as # here-document in config.status, that substitutes the proper values into # config.h.in to produce config.h. # Create a delimiter string that does not exist in confdefs.h, to ease # handling of long lines. ac_delim='%!_!# ' for ac_last_try in false false :; do ac_t=`sed -n "/$ac_delim/p" confdefs.h` if test -z "$ac_t"; then break elif $ac_last_try; then as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done # For the awk script, D is an array of macro values keyed by name, # likewise P contains macro parameters if any. Preserve backslash # newline sequences. ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* sed -n ' s/.\{148\}/&'"$ac_delim"'/g t rset :rset s/^[ ]*#[ ]*define[ ][ ]*/ / t def d :def s/\\$// t bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3"/p s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p d :bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3\\\\\\n"\\/p t cont s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p t cont d :cont n s/.\{148\}/&'"$ac_delim"'/g t clear :clear s/\\$// t bsnlc s/["\\]/\\&/g; s/^/"/; s/$/"/p d :bsnlc s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p b cont ' >$CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 for (key in D) D_is_set[key] = 1 FS = "" } /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { line = \$ 0 split(line, arg, " ") if (arg[1] == "#") { defundef = arg[2] mac1 = arg[3] } else { defundef = substr(arg[1], 2) mac1 = arg[2] } split(mac1, mac2, "(") #) macro = mac2[1] prefix = substr(line, 1, index(line, defundef) - 1) if (D_is_set[macro]) { # Preserve the white space surrounding the "#". print prefix "define", macro P[macro] D[macro] next } else { # Replace #undef with comments. This is necessary, for example, # in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. if (defundef == "undef") { print "/*", prefix defundef, macro, "*/" next } } } { print } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 as_fn_error "could not setup config headers machinery" "$LINENO" 5 fi # test -n "$CONFIG_HEADERS" eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" shift for ac_tag do case $ac_tag in :[FHLC]) ac_mode=$ac_tag; continue;; esac case $ac_mode$ac_tag in :[FHL]*:*);; :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac ac_save_IFS=$IFS IFS=: set x $ac_tag IFS=$ac_save_IFS shift ac_file=$1 shift case $ac_mode in :L) ac_source=$1;; :[FH]) ac_file_inputs= for ac_f do case $ac_f in -) ac_f="$tmp/stdin";; *) # Look for the file first in the build tree, then in the source tree # (if the path is not absolute). The absolute path cannot be DOS-style, # because $ac_f cannot contain `:'. test -f "$ac_f" || case $ac_f in [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ configure_input='Generated from '` $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. case $configure_input in #( *\&* | *\|* | *\\* ) ac_sed_conf_input=`$as_echo "$configure_input" | sed 's/[\\\\&|]/\\\\&/g'`;; #( *) ac_sed_conf_input=$configure_input;; esac case $ac_tag in *:-:* | *:-) cat >"$tmp/stdin" \ || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix case $ac_mode in :F) # # CONFIG_FILE # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac ac_MKDIR_P=$MKDIR_P case $MKDIR_P in [\\/$]* | ?:[\\/]* ) ;; */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; esac _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= ac_sed_dataroot=' /datarootdir/ { p q } /@datadir@/p /@docdir@/p /@infodir@/p /@localedir@/p /@mandir@/p' case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_datarootdir_hack=' s&@datadir@&$datadir&g s&@docdir@&$docdir&g s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF # Neutralize VPATH when `$srcdir' = `.'. # Shell code in configure.ac might set extrasub. # FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_sed_extra="$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s|@configure_input@|$ac_sed_conf_input|;t t s&@top_builddir@&$ac_top_builddir_sub&;t t s&@top_build_prefix@&$ac_top_build_prefix&;t t s&@srcdir@&$ac_srcdir&;t t s&@abs_srcdir@&$ac_abs_srcdir&;t t s&@top_srcdir@&$ac_top_srcdir&;t t s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t s&@builddir@&$ac_builddir&;t t s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t s&@INSTALL@&$ac_INSTALL&;t t s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ || as_fn_error "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&2;} rm -f "$tmp/stdin" case $ac_file in -) cat "$tmp/out" && rm -f "$tmp/out";; *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; esac \ || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; :H) # # CONFIG_HEADER # if test x"$ac_file" != x-; then { $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" } >"$tmp/config.h" \ || as_fn_error "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" mv "$tmp/config.h" "$ac_file" \ || as_fn_error "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ || as_fn_error "could not create -" "$LINENO" 5 fi # Compute "$ac_file"'s index in $config_headers. _am_arg="$ac_file" _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$_am_arg" : 'X\(//\)[^/]' \| \ X"$_am_arg" : 'X\(//\)$' \| \ X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$_am_arg" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'`/stamp-h$_am_stamp_count ;; :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || { # Autoconf 2.62 quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir=$dirpart/$fdir; as_fn_mkdir_p # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ;; esac done # for ac_tag as_fn_exit 0 _ACEOF ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || as_fn_exit $? fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi mcl-12-135/INSTALL0000644000402500021140000001731707255772654010356 00000000000000# $Id: INSTALL,v 1.1 2001/03/21 00:28:28 vanbaal Exp $ Basic Installation ================== These are generic installation instructions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a `Makefile' in each directory of the package. It may also create one or more `.h' files containing system-dependent definitions. Finally, it creates a shell script `config.status' that you can run in the future to recreate the current configuration, a file `config.cache' that saves the results of its tests to speed up reconfiguring, and a file `config.log' containing compiler output (useful mainly for debugging `configure'). If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail diffs or instructions to the address given in the `README' so they can be considered for the next release. If at some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.in' is used to create `configure' by a program called `autoconf'. You only need `configure.in' if you want to change it or regenerate `configure' using a newer version of `autoconf'. The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. If you're using `csh' on an old version of System V, you might need to type `sh ./configure' instead to prevent `csh' from trying to execute `configure' itself. Running `configure' takes awhile. While running, it prints some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with the package. 4. Type `make install' to install the programs and any data files and documentation. 5. You can remove the program binaries and object files from the source code directory by typing `make clean'. To also remove the files that `configure' created (so you can compile the package for a different kind of computer), type `make distclean'. There is also a `make maintainer-clean' target, but that is intended mainly for the package's developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the `configure' script does not know about. You can give `configure' initial values for variables by setting them in the environment. Using a Bourne-compatible shell, you can do that on the command line like this: CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure Or on systems that have the `env' program, you can do it like this: env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you must use a version of `make' that supports the `VPATH' variable, such as GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the source code in the directory that `configure' is in and in `..'. If you have to use a `make' that does not supports the `VPATH' variable, you have to compile the package for one architecture at a time in the source code directory. After you have installed the package for one architecture, use `make distclean' before reconfiguring for another architecture. Installation Names ================== By default, `make install' will install the package's files in `/usr/local/bin', `/usr/local/man', etc. You can specify an installation prefix other than `/usr/local' by giving `configure' the option `--prefix=PATH'. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you give `configure' the option `--exec-prefix=PATH', the package will use PATH as the prefix for installing programs and libraries. Documentation and other data files will still use the regular prefix. In addition, if you use an unusual directory layout you can give options like `--bindir=PATH' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories you can set and what kinds of files go in them. If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. Optional Features ================= Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The `README' should mention any `--enable-' and `--with-' options that the package recognizes. For packages that use the X Window System, `configure' can usually find the X include and library files automatically, but if it doesn't, you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. Specifying the System Type ========================== There may be some features `configure' can not figure out automatically, but needs to determine by the type of host the package will run on. Usually `configure' can figure that out, but if it prints a message saying it can not guess the host type, give it the `--host=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name with three fields: CPU-COMPANY-SYSTEM See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't need to know the host type. If you are building compiler tools for cross-compiling, you can also use the `--target=TYPE' option to select the type of system they will produce code for and the `--build=TYPE' option to select the type of system on which you are compiling the package. Sharing Defaults ================ If you want to set default values for `configure' scripts to share, you can create a site shell script called `config.site' that gives default values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. A warning: not all `configure' scripts look for a site script. Operation Controls ================== `configure' recognizes the following options to control how it operates. `--cache-file=FILE' Use and save the results of the tests in FILE instead of `./config.cache'. Set FILE to `/dev/null' to disable caching, for debugging `configure'. `--help' Print a summary of the options to `configure', and exit. `--quiet' `--silent' `-q' Do not print messages saying which checks are being made. To suppress all normal output, redirect it to `/dev/null' (any error messages will still be shown). `--srcdir=DIR' Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. `--version' Print the version of Autoconf used to generate the `configure' script, and exit. `configure' also accepts some other, not widely useful, options. mcl-12-135/img/0000777000402500021140000000000011756465221010142 500000000000000mcl-12-135/img/falkner-bidi.ps0000644000402500021140000012033010624335433012742 00000000000000%!PS-Adobe-3.0 %%BoundingBox: 55 105 350 395 % Old, scaling 10. BoundingBox: 206 205 394 394 /edge_width 0.08 def /vertex_border_width 0.05 def /B_test 0 def % set to 1 to test BoundingBox parameters /BBLL [ 55 105 ] def /BBUR [ 350 395 ] def B_test 1 eq { newpath BBLL aload pop moveto BBLL aload pop BBUR aload pop pop exch lineto % this is LR BBUR aload pop lineto BBUR aload pop BBLL aload pop pop exch lineto % this is UL closepath stroke } if 50 400 translate 15 -15 scale /color_min [1 1 1] def /color_max [0 0 0] def /displacement 0.1 def /radius 0.24 def /shownodes 1 def /circledict 1 dict def %% [ x y ] fac /proc_circle { gsave %% newpath moveto circledict begin /fac exch def 0 1 2 { dup color_max exch get exch color_min exch get %% max min on stack dup 3 1 roll %% min max min -1 mul add fac mul add } for % 3 -1 roll setrgbcolor aload pop moveto currentpoint gsave currentpoint radius 0 360 arc fill grestore % newpath radius 0 360 arc % 1 0 0 setrgbcolor % 0.05 setlinewidth % stroke end grestore } def % % stack: [ Ax Ay ] [ Bx By] wAB wBA % /biarcdict 11 dict def /proc_2way_edge { gsave biarcdict begin 0.1 setlinewidth /wBA exch def /wAB exch def aload pop /By exch def /Bx exch def aload pop /Ay exch def /Ax exch def /dx Ax Bx -1 mul add def /dy Ay By -1 mul add def /L dx dx mul dy dy mul add sqrt def /ddx dy L div displacement mul def /ddy dx L div displacement mul def wAB 0.002 gt { Ax ddx add Ay ddy -1 mul add moveto Bx ddx add By ddy -1 mul add lineto 1 1 wAB sqrt sqrt -1 mul add dup setrgbcolor stroke } if wBA 0.002 gt { Bx ddx -1 mul add By ddy add moveto Ax ddx -1 mul add Ay ddy add lineto 1 1 wBA sqrt sqrt -1 mul add dup setrgbcolor stroke } if end grestore } def /she { proc_2way_edge } def /shn { proc_circle } def /v0 [4 1] def /v1 [5 1] def /v2 [7 1] def /v3 [8 1] def /v4 [10 1] def /v5 [11 1] def /v6 [16 1] def /v7 [17 1] def /v8 [18 1] def /v9 [3 2] def /v10 [4 2] def /v11 [6 2] def /v12 [7 2] def /v13 [11 2] def /v14 [15 2] def /v15 [16 2] def /v16 [17 2] def /v17 [4 3] def /v18 [5 3] def /v19 [6 3] def /v20 [7 3] def /v21 [8 3] def /v22 [10 3] def /v23 [14 3] def /v24 [15 3] def /v25 [17 3] def /v26 [18 3] def /v27 [19 3] def /v28 [1 4] def /v29 [2 4] def /v30 [10 4] def /v31 [12 4] def /v32 [13 4] def /v33 [15 4] def /v34 [16 4] def /v35 [18 4] def /v36 [19 4] def /v37 [4 5] def /v38 [5 5] def /v39 [8 5] def /v40 [9 5] def /v41 [11 5] def /v42 [12 5] def /v43 [3 6] def /v44 [7 6] def /v45 [9 6] def /v46 [10 6] def /v47 [12 6] def /v48 [13 6] def /v49 [15 6] def /v50 [18 6] def /v51 [1 7] def /v52 [4 7] def /v53 [12 7] def /v54 [13 7] def /v55 [14 7] def /v56 [16 7] def /v57 [17 7] def /v58 [18 7] def /v59 [19 7] def /v60 [3 8] def /v61 [4 8] def /v62 [5 8] def /v63 [6 8] def /v64 [7 8] def /v65 [14 8] def /v66 [15 8] def /v67 [19 8] def /v68 [3 9] def /v69 [5 9] def /v70 [9 9] def /v71 [11 9] def /v72 [14 9] def /v73 [15 9] def /v74 [16 9] def /v75 [19 9] def /v76 [1 10] def /v77 [2 10] def /v78 [5 10] def /v79 [14 10] def /v80 [15 10] def /v81 [17 10] def /v82 [19 10] def /v83 [3 11] def /v84 [6 11] def /v85 [7 11] def /v86 [10 11] def /v87 [13 11] def /v88 [15 11] def /v89 [18 11] def /v90 [1 12] def /v91 [2 12] def /v92 [3 12] def /v93 [7 12] def /v94 [9 12] def /v95 [10 12] def /v96 [15 12] def /v97 [16 12] def /v98 [18 12] def /v99 [2 13] def /v100 [3 13] def /v101 [4 13] def /v102 [6 13] def /v103 [12 13] def /v104 [13 13] def /v105 [17 13] def /v106 [4 14] def /v107 [5 14] def /v108 [10 14] def /v109 [13 14] def /v110 [16 14] def /v111 [17 14] def /v112 [1 15] def /v113 [2 15] def /v114 [3 15] def /v115 [6 15] def /v116 [14 15] def /v117 [17 15] def /v118 [2 16] def /v119 [4 16] def /v120 [5 16] def /v121 [8 16] def /v122 [12 16] def /v123 [13 16] def /v124 [14 16] def /v125 [17 16] def /v126 [18 16] def /v127 [19 16] def /v128 [1 17] def /v129 [4 17] def /v130 [7 17] def /v131 [8 17] def /v132 [9 17] def /v133 [10 17] def /v134 [12 17] def /v135 [14 17] def /v136 [16 17] def /v137 [5 18] def /v138 [9 18] def /v139 [11 18] def /v140 [12 18] def /v141 [13 18] def /v142 [19 18] def /v143 [1 19] def /v144 [2 19] def /v145 [5 19] def /v146 [7 19] def /v147 [9 19] def /v148 [13 19] def /v149 [14 19] def v19 v0 0.0290 0.0430 she v20 v1 0.0320 0.0390 she v18 v2 0.0310 0.0400 she v19 v3 0.0290 0.0450 she v22 v3 0.0390 0.0450 she v24 v6 0.0440 0.0500 she v25 v6 0.0390 0.0500 she v23 v6 0.0420 0.0380 she v26 v6 0.0330 0.0380 she v14 v7 0.0460 0.0470 she v26 v7 0.0440 0.0470 she v24 v7 0.0330 0.0350 she v27 v7 0.0430 0.0350 she v19 v10 0.0380 0.0480 she v17 v11 0.0460 0.0430 she v21 v11 0.0480 0.0430 she v18 v12 0.0420 0.0470 she v7 v14 0.0470 0.0460 she v25 v14 0.0390 0.0460 she v34 v14 0.0490 0.0460 she v32 v14 0.0370 0.0350 she v26 v15 0.0440 0.0390 she v33 v15 0.0470 0.0390 she v35 v15 0.0390 0.0300 she v24 v16 0.0440 0.0380 she v34 v16 0.0490 0.0380 she v33 v16 0.0350 0.0290 she v36 v16 0.0470 0.0290 she v11 v17 0.0430 0.0460 she v12 v18 0.0470 0.0420 she v2 v18 0.0400 0.0310 she v10 v19 0.0480 0.0380 she v0 v19 0.0430 0.0290 she v3 v19 0.0450 0.0290 she v37 v19 0.0470 0.0290 she v39 v19 0.0420 0.0290 she v1 v20 0.0390 0.0320 she v38 v20 0.0470 0.0320 she v40 v20 0.0370 0.0320 she v11 v21 0.0430 0.0480 she v30 v21 0.0490 0.0480 she v40 v21 0.0500 0.0480 she v3 v22 0.0450 0.0390 she v39 v22 0.0420 0.0390 she v42 v22 0.0310 0.0390 she v6 v23 0.0380 0.0420 she v42 v23 0.0310 0.0420 she v6 v24 0.0500 0.0440 she v16 v24 0.0380 0.0440 she v32 v24 0.0500 0.0440 she v7 v24 0.0350 0.0330 she v6 v25 0.0500 0.0390 she v14 v25 0.0460 0.0390 she v33 v25 0.0470 0.0390 she v7 v26 0.0470 0.0440 she v15 v26 0.0390 0.0440 she v34 v26 0.0490 0.0440 she v6 v26 0.0380 0.0330 she v7 v27 0.0350 0.0430 she v21 v30 0.0480 0.0490 she v42 v30 0.0410 0.0490 she v47 v30 0.0310 0.0370 she v48 v31 0.0420 0.0480 she v46 v31 0.0410 0.0360 she v24 v32 0.0440 0.0500 she v41 v32 0.0450 0.0500 she v47 v32 0.0410 0.0500 she v14 v32 0.0350 0.0370 she v49 v32 0.0420 0.0370 she v15 v33 0.0390 0.0470 she v25 v33 0.0390 0.0470 she v16 v33 0.0290 0.0350 she v48 v33 0.0320 0.0350 she v14 v34 0.0460 0.0490 she v16 v34 0.0380 0.0490 she v26 v34 0.0440 0.0490 she v50 v34 0.0440 0.0370 she v15 v35 0.0300 0.0390 she v16 v36 0.0290 0.0470 she v19 v37 0.0290 0.0470 she v20 v38 0.0320 0.0470 she v19 v39 0.0290 0.0420 she v22 v39 0.0390 0.0420 she v21 v40 0.0480 0.0500 she v20 v40 0.0320 0.0370 she v32 v41 0.0500 0.0450 she v48 v41 0.0420 0.0450 she v53 v41 0.0480 0.0450 she v54 v41 0.0310 0.0340 she v30 v42 0.0490 0.0410 she v54 v42 0.0420 0.0410 she v22 v42 0.0390 0.0310 she v23 v42 0.0420 0.0310 she v55 v42 0.0310 0.0310 she v62 v43 0.0320 0.0470 she v64 v45 0.0490 0.0430 she v31 v46 0.0360 0.0410 she v32 v47 0.0500 0.0410 she v55 v47 0.0410 0.0410 she v30 v47 0.0370 0.0310 she v65 v47 0.0290 0.0310 she v31 v48 0.0480 0.0420 she v41 v48 0.0450 0.0420 she v65 v48 0.0390 0.0420 she v33 v48 0.0350 0.0320 she v66 v48 0.0300 0.0320 she v32 v49 0.0370 0.0420 she v34 v50 0.0370 0.0440 she v41 v53 0.0450 0.0480 she v65 v53 0.0390 0.0480 she v72 v53 0.0300 0.0360 she v42 v54 0.0410 0.0420 she v66 v54 0.0400 0.0420 she v72 v54 0.0400 0.0420 she v41 v54 0.0340 0.0310 she v73 v54 0.0280 0.0310 she v47 v55 0.0410 0.0410 she v73 v55 0.0370 0.0410 she v42 v55 0.0310 0.0310 she v74 v55 0.0330 0.0310 she v65 v56 0.0390 0.0500 she v73 v56 0.0370 0.0500 she v72 v56 0.0300 0.0370 she v66 v57 0.0400 0.0490 she v74 v57 0.0440 0.0490 she v73 v57 0.0280 0.0370 she v75 v57 0.0440 0.0370 she v74 v58 0.0330 0.0390 she v69 v60 0.0460 0.0480 she v76 v60 0.0500 0.0360 she v78 v60 0.0380 0.0360 she v78 v61 0.0500 0.0450 she v77 v61 0.0440 0.0340 she v43 v62 0.0470 0.0320 she v45 v64 0.0430 0.0490 she v78 v64 0.0380 0.0490 she v48 v65 0.0420 0.0390 she v53 v65 0.0480 0.0390 she v56 v65 0.0500 0.0390 she v74 v65 0.0440 0.0390 she v80 v65 0.0400 0.0390 she v47 v65 0.0310 0.0290 she v54 v66 0.0420 0.0400 she v57 v66 0.0490 0.0400 she v79 v66 0.0460 0.0400 she v48 v66 0.0320 0.0300 she v81 v66 0.0400 0.0300 she v81 v67 0.0400 0.0430 she v60 v69 0.0480 0.0460 she v83 v69 0.0370 0.0350 she v85 v69 0.0460 0.0350 she v54 v72 0.0420 0.0400 she v88 v72 0.0450 0.0400 she v53 v72 0.0360 0.0300 she v56 v72 0.0370 0.0300 she v55 v73 0.0410 0.0370 she v56 v73 0.0500 0.0370 she v54 v73 0.0310 0.0280 she v57 v73 0.0370 0.0280 she v87 v73 0.0470 0.0280 she v57 v74 0.0490 0.0440 she v65 v74 0.0390 0.0440 she v79 v74 0.0460 0.0440 she v88 v74 0.0450 0.0440 she v55 v74 0.0310 0.0330 she v58 v74 0.0390 0.0330 she v89 v74 0.0480 0.0330 she v57 v75 0.0370 0.0440 she v60 v76 0.0360 0.0500 she v92 v76 0.0320 0.0500 she v61 v77 0.0340 0.0440 she v61 v78 0.0450 0.0500 she v83 v78 0.0490 0.0500 she v60 v78 0.0360 0.0380 she v64 v78 0.0490 0.0380 she v92 v78 0.0320 0.0380 she v93 v78 0.0500 0.0380 she v66 v79 0.0400 0.0460 she v74 v79 0.0440 0.0460 she v96 v79 0.0490 0.0460 she v97 v79 0.0390 0.0350 she v65 v80 0.0390 0.0400 she v66 v81 0.0300 0.0400 she v67 v81 0.0430 0.0400 she v96 v81 0.0370 0.0400 she v78 v83 0.0500 0.0490 she v99 v83 0.0460 0.0490 she v101 v83 0.0430 0.0490 she v69 v83 0.0350 0.0370 she v101 v84 0.0330 0.0500 she v69 v85 0.0350 0.0460 she v73 v87 0.0280 0.0470 she v72 v88 0.0400 0.0450 she v74 v88 0.0440 0.0450 she v104 v88 0.0470 0.0340 she v105 v88 0.0430 0.0340 she v74 v89 0.0330 0.0480 she v101 v91 0.0430 0.0450 she v106 v91 0.0320 0.0340 she v106 v92 0.0420 0.0430 she v76 v92 0.0500 0.0320 she v78 v92 0.0380 0.0320 she v107 v92 0.0390 0.0320 she v78 v93 0.0380 0.0500 she v107 v93 0.0390 0.0500 she v79 v96 0.0460 0.0490 she v81 v96 0.0400 0.0370 she v109 v96 0.0470 0.0370 she v111 v96 0.0360 0.0370 she v79 v97 0.0350 0.0390 she v110 v98 0.0410 0.0480 she v83 v99 0.0490 0.0460 she v106 v99 0.0420 0.0460 she v114 v99 0.0450 0.0460 she v113 v100 0.0460 0.0410 she v112 v100 0.0500 0.0310 she v83 v101 0.0490 0.0430 she v91 v101 0.0450 0.0430 she v114 v101 0.0450 0.0430 she v84 v101 0.0500 0.0330 she v113 v101 0.0350 0.0330 she v115 v101 0.0450 0.0330 she v116 v103 0.0410 0.0500 she v88 v104 0.0340 0.0470 she v88 v105 0.0340 0.0430 she v92 v106 0.0430 0.0420 she v99 v106 0.0460 0.0420 she v113 v106 0.0460 0.0420 she v91 v106 0.0340 0.0320 she v118 v106 0.0450 0.0320 she v92 v107 0.0320 0.0390 she v93 v107 0.0500 0.0390 she v96 v109 0.0370 0.0470 she v98 v110 0.0480 0.0410 she v124 v110 0.0350 0.0410 she v126 v110 0.0440 0.0410 she v96 v111 0.0370 0.0360 she v100 v112 0.0310 0.0500 she v100 v113 0.0410 0.0460 she v106 v113 0.0420 0.0460 she v119 v113 0.0490 0.0460 she v101 v113 0.0330 0.0350 she v129 v113 0.0440 0.0350 she v99 v114 0.0460 0.0450 she v101 v114 0.0430 0.0450 she v101 v115 0.0330 0.0450 she v129 v115 0.0440 0.0450 she v131 v115 0.0370 0.0450 she v103 v116 0.0500 0.0410 she v134 v116 0.0330 0.0410 she v106 v118 0.0320 0.0450 she v113 v119 0.0460 0.0490 she v135 v122 0.0480 0.0460 she v141 v122 0.0470 0.0460 she v140 v123 0.0440 0.0480 she v139 v123 0.0390 0.0360 she v134 v124 0.0440 0.0460 she v141 v124 0.0470 0.0460 she v110 v124 0.0410 0.0350 she v140 v124 0.0330 0.0350 she v110 v126 0.0410 0.0440 she v113 v129 0.0350 0.0440 she v115 v129 0.0450 0.0440 she v147 v130 0.0480 0.0400 she v115 v131 0.0450 0.0370 she v124 v134 0.0460 0.0440 she v116 v134 0.0410 0.0330 she v122 v135 0.0460 0.0480 she v140 v135 0.0440 0.0480 she v123 v139 0.0360 0.0390 she v123 v140 0.0480 0.0440 she v135 v140 0.0480 0.0440 she v124 v140 0.0350 0.0330 she v122 v141 0.0460 0.0470 she v124 v141 0.0460 0.0470 she v130 v147 0.0400 0.0480 she v9 v0 0.0960 0.0850 she v17 v0 0.0690 0.0850 she v11 v0 0.0430 0.0570 she v18 v0 0.0420 0.0570 she v2 v1 0.0780 0.0760 she v10 v1 0.0710 0.0760 she v11 v1 0.0640 0.0760 she v18 v1 0.0620 0.0760 she v9 v1 0.0640 0.0510 she v12 v1 0.0470 0.0510 she v17 v1 0.0460 0.0510 she v19 v1 0.0380 0.0510 she v1 v2 0.0760 0.0780 she v11 v2 0.0640 0.0780 she v20 v2 0.0640 0.0780 she v19 v2 0.0380 0.0520 she v21 v2 0.0480 0.0520 she v12 v3 0.0700 0.0890 she v21 v3 0.0710 0.0890 she v11 v3 0.0430 0.0590 she v20 v3 0.0430 0.0590 she v21 v4 0.0360 0.0530 she v22 v5 0.0510 0.0770 she v8 v6 0.0910 0.0750 she v14 v6 0.0690 0.0750 she v16 v6 0.0570 0.0750 she v15 v7 0.0590 0.0700 she v25 v7 0.0580 0.0700 she v6 v8 0.0750 0.0910 she v16 v8 0.0570 0.0910 she v26 v8 0.0650 0.0910 she v15 v8 0.0390 0.0610 she v25 v8 0.0390 0.0610 she v27 v8 0.0570 0.0610 she v0 v9 0.0850 0.0960 she v17 v9 0.0690 0.0960 she v1 v9 0.0510 0.0640 she v18 v9 0.0420 0.0640 she v29 v9 0.0730 0.0640 she v28 v9 0.0720 0.0480 she v1 v10 0.0760 0.0710 she v11 v10 0.0640 0.0710 she v18 v10 0.0620 0.0710 she v29 v10 0.0550 0.0360 she v1 v11 0.0760 0.0640 she v2 v11 0.0780 0.0640 she v10 v11 0.0710 0.0640 she v18 v11 0.0620 0.0640 she v20 v11 0.0640 0.0640 she v0 v11 0.0570 0.0430 she v3 v11 0.0590 0.0430 she v3 v12 0.0890 0.0700 she v19 v12 0.0570 0.0700 she v21 v12 0.0710 0.0700 she v1 v12 0.0510 0.0470 she v30 v13 0.0490 0.0680 she v31 v13 0.0480 0.0680 she v32 v13 0.0370 0.0510 she v6 v14 0.0750 0.0690 she v16 v14 0.0570 0.0690 she v23 v14 0.0840 0.0690 she v33 v14 0.0700 0.0690 she v7 v15 0.0700 0.0590 she v24 v15 0.0650 0.0590 she v25 v15 0.0580 0.0590 she v34 v15 0.0730 0.0590 she v8 v15 0.0610 0.0390 she v23 v15 0.0560 0.0390 she v6 v16 0.0750 0.0570 she v8 v16 0.0910 0.0570 she v14 v16 0.0690 0.0570 she v26 v16 0.0650 0.0570 she v27 v16 0.0570 0.0380 she v35 v16 0.0510 0.0380 she v0 v17 0.0850 0.0690 she v9 v17 0.0960 0.0690 she v19 v17 0.0570 0.0690 she v37 v17 0.0930 0.0690 she v1 v17 0.0510 0.0460 she v29 v17 0.0730 0.0460 she v38 v17 0.0620 0.0460 she v1 v18 0.0760 0.0620 she v10 v18 0.0710 0.0620 she v11 v18 0.0640 0.0620 she v20 v18 0.0640 0.0620 she v38 v18 0.0930 0.0620 she v0 v18 0.0570 0.0420 she v9 v18 0.0640 0.0420 she v37 v18 0.0620 0.0420 she v12 v19 0.0700 0.0570 she v17 v19 0.0690 0.0570 she v21 v19 0.0710 0.0570 she v1 v19 0.0510 0.0380 she v2 v19 0.0520 0.0380 she v38 v19 0.0620 0.0380 she v2 v20 0.0780 0.0640 she v11 v20 0.0640 0.0640 she v18 v20 0.0620 0.0640 she v3 v20 0.0590 0.0430 she v39 v20 0.0560 0.0430 she v3 v21 0.0890 0.0710 she v12 v21 0.0700 0.0710 she v19 v21 0.0570 0.0710 she v22 v21 0.0760 0.0710 she v39 v21 0.0840 0.0710 she v2 v21 0.0520 0.0480 she v4 v21 0.0530 0.0360 she v21 v22 0.0710 0.0760 she v5 v22 0.0770 0.0510 she v31 v22 0.0480 0.0510 she v40 v22 0.0500 0.0510 she v41 v22 0.0450 0.0510 she v14 v23 0.0690 0.0840 she v32 v23 0.0750 0.0840 she v33 v23 0.0700 0.0840 she v15 v23 0.0390 0.0560 she v31 v23 0.0480 0.0560 she v34 v23 0.0490 0.0560 she v15 v24 0.0590 0.0650 she v25 v24 0.0580 0.0650 she v34 v24 0.0730 0.0650 she v7 v25 0.0700 0.0580 she v15 v25 0.0590 0.0580 she v24 v25 0.0650 0.0580 she v27 v25 0.0850 0.0580 she v34 v25 0.0730 0.0580 she v35 v25 0.0760 0.0580 she v8 v25 0.0610 0.0390 she v36 v25 0.0620 0.0390 she v8 v26 0.0910 0.0650 she v16 v26 0.0570 0.0650 she v36 v26 0.0930 0.0650 she v25 v27 0.0580 0.0850 she v35 v27 0.0760 0.0850 she v8 v27 0.0610 0.0570 she v16 v27 0.0380 0.0570 she v9 v28 0.0480 0.0720 she v43 v28 0.0470 0.0720 she v9 v29 0.0640 0.0730 she v17 v29 0.0460 0.0730 she v37 v29 0.0620 0.0730 she v43 v29 0.0630 0.0730 she v10 v29 0.0360 0.0550 she v31 v30 0.0710 0.0730 she v40 v30 0.0750 0.0730 she v41 v30 0.0680 0.0730 she v46 v30 0.0810 0.0730 she v13 v30 0.0680 0.0490 she v39 v30 0.0560 0.0490 she v45 v30 0.0570 0.0490 she v30 v31 0.0730 0.0710 she v41 v31 0.0680 0.0710 she v47 v31 0.0620 0.0710 she v13 v31 0.0680 0.0480 she v22 v31 0.0510 0.0480 she v23 v31 0.0560 0.0480 she v23 v32 0.0840 0.0750 she v33 v32 0.0700 0.0750 she v42 v32 0.0610 0.0750 she v48 v32 0.0630 0.0750 she v13 v32 0.0510 0.0370 she v14 v33 0.0690 0.0700 she v23 v33 0.0840 0.0700 she v32 v33 0.0750 0.0700 she v49 v33 0.0830 0.0700 she v15 v34 0.0590 0.0730 she v24 v34 0.0650 0.0730 she v25 v34 0.0580 0.0730 she v35 v34 0.0760 0.0730 she v23 v34 0.0560 0.0490 she v49 v34 0.0550 0.0490 she v25 v35 0.0580 0.0760 she v27 v35 0.0850 0.0760 she v34 v35 0.0730 0.0760 she v50 v35 0.0870 0.0760 she v16 v35 0.0380 0.0510 she v26 v36 0.0650 0.0930 she v25 v36 0.0390 0.0620 she v50 v36 0.0580 0.0620 she v17 v37 0.0690 0.0930 she v43 v37 0.0940 0.0930 she v52 v37 0.0790 0.0930 she v18 v37 0.0420 0.0620 she v29 v37 0.0730 0.0620 she v18 v38 0.0620 0.0930 she v17 v38 0.0460 0.0620 she v19 v38 0.0380 0.0620 she v43 v38 0.0630 0.0620 she v44 v38 0.0710 0.0620 she v52 v38 0.0530 0.0620 she v21 v39 0.0710 0.0840 she v45 v39 0.0850 0.0840 she v20 v39 0.0430 0.0560 she v30 v39 0.0490 0.0560 she v46 v39 0.0540 0.0560 she v30 v40 0.0730 0.0750 she v41 v40 0.0680 0.0750 she v46 v40 0.0810 0.0750 she v22 v40 0.0510 0.0500 she v44 v40 0.0710 0.0500 she v30 v41 0.0730 0.0680 she v31 v41 0.0710 0.0680 she v40 v41 0.0750 0.0680 she v46 v41 0.0810 0.0680 she v47 v41 0.0620 0.0680 she v22 v41 0.0510 0.0450 she v45 v41 0.0570 0.0450 she v32 v42 0.0750 0.0610 she v48 v42 0.0630 0.0610 she v53 v42 0.0710 0.0610 she v46 v42 0.0540 0.0410 she v37 v43 0.0930 0.0940 she v52 v43 0.0790 0.0940 she v60 v43 0.0720 0.0940 she v29 v43 0.0730 0.0630 she v38 v43 0.0620 0.0630 she v61 v43 0.0450 0.0630 she v28 v43 0.0720 0.0470 she v38 v44 0.0620 0.0710 she v40 v44 0.0500 0.0710 she v63 v44 0.0560 0.0710 she v62 v44 0.0320 0.0530 she v39 v45 0.0840 0.0850 she v30 v45 0.0490 0.0570 she v41 v45 0.0450 0.0570 she v30 v46 0.0730 0.0810 she v40 v46 0.0750 0.0810 she v41 v46 0.0680 0.0810 she v47 v46 0.0620 0.0810 she v39 v46 0.0560 0.0540 she v42 v46 0.0410 0.0540 she v53 v46 0.0480 0.0540 she v31 v47 0.0710 0.0620 she v41 v47 0.0680 0.0620 she v46 v47 0.0810 0.0620 she v54 v47 0.0620 0.0620 she v32 v48 0.0750 0.0630 she v42 v48 0.0610 0.0630 she v49 v48 0.0830 0.0630 she v53 v48 0.0710 0.0630 she v55 v48 0.0620 0.0630 she v33 v49 0.0700 0.0830 she v48 v49 0.0630 0.0830 she v55 v49 0.0620 0.0830 she v56 v49 0.0750 0.0830 she v66 v49 0.0590 0.0830 she v34 v49 0.0490 0.0550 she v54 v49 0.0420 0.0550 she v57 v49 0.0490 0.0550 she v65 v49 0.0390 0.0550 she v35 v50 0.0760 0.0870 she v57 v50 0.0740 0.0870 she v59 v50 0.0910 0.0870 she v36 v50 0.0620 0.0580 she v56 v50 0.0500 0.0580 she v67 v50 0.0570 0.0580 she v68 v51 0.0390 0.0860 she v37 v52 0.0930 0.0790 she v43 v52 0.0940 0.0790 she v60 v52 0.0720 0.0790 she v62 v52 0.0640 0.0790 she v38 v52 0.0620 0.0530 she v63 v52 0.0560 0.0530 she v68 v52 0.0510 0.0530 she v69 v52 0.0460 0.0530 she v42 v53 0.0610 0.0710 she v48 v53 0.0630 0.0710 she v55 v53 0.0620 0.0710 she v46 v53 0.0540 0.0480 she v71 v53 0.0910 0.0480 she v47 v54 0.0620 0.0620 she v65 v54 0.0580 0.0620 she v49 v54 0.0550 0.0420 she v71 v54 0.0690 0.0310 she v48 v55 0.0630 0.0620 she v49 v55 0.0830 0.0620 she v53 v55 0.0710 0.0620 she v56 v55 0.0750 0.0620 she v66 v55 0.0590 0.0620 she v72 v55 0.0590 0.0620 she v49 v56 0.0830 0.0750 she v55 v56 0.0620 0.0750 she v58 v56 0.0760 0.0750 she v66 v56 0.0590 0.0750 she v74 v56 0.0660 0.0750 she v50 v56 0.0580 0.0500 she v50 v57 0.0870 0.0740 she v59 v57 0.0910 0.0740 she v49 v57 0.0550 0.0490 she v67 v57 0.0570 0.0490 she v56 v58 0.0750 0.0760 she v67 v58 0.0850 0.0760 she v75 v58 0.0580 0.0510 she v50 v59 0.0870 0.0910 she v57 v59 0.0740 0.0910 she v75 v59 0.0870 0.0910 she v43 v60 0.0940 0.0720 she v52 v60 0.0790 0.0720 she v62 v60 0.0640 0.0720 she v77 v60 0.0580 0.0480 she v63 v61 0.0840 0.0680 she v68 v61 0.0760 0.0680 she v69 v61 0.0690 0.0680 she v43 v61 0.0630 0.0450 she v52 v62 0.0790 0.0640 she v60 v62 0.0720 0.0640 she v64 v62 0.0970 0.0640 she v78 v62 0.0750 0.0640 she v68 v62 0.0510 0.0430 she v44 v62 0.0530 0.0320 she v61 v63 0.0680 0.0840 she v69 v63 0.0690 0.0840 she v44 v63 0.0710 0.0560 she v52 v63 0.0530 0.0560 she v78 v63 0.0500 0.0560 she v62 v64 0.0640 0.0970 she v69 v64 0.0460 0.0650 she v70 v64 0.0980 0.0650 she v54 v65 0.0620 0.0580 she v73 v65 0.0550 0.0580 she v79 v65 0.0690 0.0580 she v49 v65 0.0550 0.0390 she v49 v66 0.0830 0.0590 she v55 v66 0.0620 0.0590 she v56 v66 0.0750 0.0590 she v72 v66 0.0590 0.0590 she v74 v66 0.0660 0.0590 she v80 v66 0.0590 0.0590 she v58 v67 0.0760 0.0850 she v50 v67 0.0580 0.0570 she v57 v67 0.0490 0.0570 she v61 v68 0.0680 0.0760 she v69 v68 0.0690 0.0760 she v77 v68 0.0870 0.0760 she v83 v68 0.0730 0.0760 she v52 v68 0.0530 0.0510 she v62 v68 0.0430 0.0510 she v76 v68 0.0670 0.0510 she v78 v68 0.0500 0.0510 she v51 v68 0.0860 0.0390 she v61 v69 0.0680 0.0690 she v63 v69 0.0840 0.0690 she v68 v69 0.0760 0.0690 she v52 v69 0.0530 0.0460 she v64 v69 0.0650 0.0460 she v84 v69 0.0660 0.0460 she v64 v70 0.0650 0.0980 she v86 v70 0.0760 0.0980 she v85 v70 0.0460 0.0740 she v53 v71 0.0480 0.0910 she v86 v71 0.0760 0.0910 she v54 v71 0.0310 0.0690 she v87 v71 0.0470 0.0690 she v55 v72 0.0620 0.0590 she v66 v72 0.0590 0.0590 she v74 v72 0.0660 0.0590 she v80 v72 0.0590 0.0590 she v87 v72 0.0630 0.0400 she v65 v73 0.0580 0.0550 she v79 v73 0.0690 0.0550 she v88 v73 0.0670 0.0550 she v81 v73 0.0520 0.0370 she v56 v74 0.0750 0.0660 she v66 v74 0.0590 0.0660 she v72 v74 0.0590 0.0660 she v80 v74 0.0590 0.0660 she v81 v74 0.0780 0.0660 she v59 v75 0.0910 0.0870 she v58 v75 0.0510 0.0580 she v81 v75 0.0520 0.0580 she v89 v75 0.0640 0.0580 she v90 v76 0.0910 0.1000 she v68 v76 0.0510 0.0670 she v83 v76 0.0490 0.0670 she v91 v76 0.0450 0.0670 she v68 v77 0.0760 0.0870 she v83 v77 0.0730 0.0870 she v91 v77 0.0680 0.0870 she v60 v77 0.0480 0.0580 she v90 v77 0.0610 0.0580 she v92 v77 0.0430 0.0580 she v62 v78 0.0640 0.0750 she v84 v78 0.0990 0.0750 she v63 v78 0.0560 0.0500 she v68 v78 0.0510 0.0500 she v85 v78 0.0610 0.0500 she v65 v79 0.0580 0.0690 she v73 v79 0.0550 0.0690 she v87 v79 0.0940 0.0690 she v88 v79 0.0670 0.0690 she v66 v80 0.0590 0.0590 she v72 v80 0.0590 0.0590 she v74 v80 0.0660 0.0590 she v81 v80 0.0780 0.0590 she v96 v80 0.0730 0.0590 she v87 v80 0.0630 0.0400 she v97 v80 0.0510 0.0400 she v74 v81 0.0660 0.0780 she v80 v81 0.0590 0.0780 she v89 v81 0.0960 0.0780 she v73 v81 0.0370 0.0520 she v75 v81 0.0580 0.0520 she v88 v81 0.0450 0.0520 she v97 v81 0.0510 0.0520 she v98 v81 0.0640 0.0520 she v98 v82 0.0640 0.0700 she v68 v83 0.0760 0.0730 she v77 v83 0.0870 0.0730 she v91 v83 0.0680 0.0730 she v100 v83 0.0610 0.0730 she v76 v83 0.0670 0.0490 she v90 v83 0.0610 0.0490 she v78 v84 0.0750 0.0990 she v93 v84 0.1000 0.0990 she v102 v84 0.0970 0.0990 she v69 v84 0.0460 0.0660 she v78 v85 0.0500 0.0610 she v94 v85 0.0720 0.0610 she v102 v85 0.0650 0.0610 she v70 v85 0.0740 0.0460 she v70 v86 0.0980 0.0760 she v71 v86 0.0910 0.0760 she v103 v86 0.0500 0.0570 she v79 v87 0.0690 0.0940 she v88 v87 0.0670 0.0940 she v104 v87 0.0930 0.0940 she v72 v87 0.0400 0.0630 she v80 v87 0.0400 0.0630 she v96 v87 0.0490 0.0630 she v103 v87 0.0670 0.0630 she v71 v87 0.0690 0.0470 she v73 v88 0.0550 0.0670 she v79 v88 0.0690 0.0670 she v87 v88 0.0940 0.0670 she v97 v88 0.0760 0.0670 she v81 v88 0.0520 0.0450 she v81 v89 0.0780 0.0960 she v75 v89 0.0580 0.0640 she v97 v89 0.0510 0.0640 she v105 v89 0.0570 0.0640 she v76 v90 0.1000 0.0910 she v92 v90 0.0640 0.0910 she v99 v90 0.0690 0.0910 she v77 v90 0.0580 0.0610 she v83 v90 0.0490 0.0610 she v100 v90 0.0410 0.0610 she v77 v91 0.0870 0.0680 she v83 v91 0.0730 0.0680 she v100 v91 0.0610 0.0680 she v76 v91 0.0670 0.0450 she v90 v92 0.0910 0.0640 she v99 v92 0.0690 0.0640 she v101 v92 0.0650 0.0640 she v77 v92 0.0580 0.0430 she v84 v93 0.0990 0.1000 she v102 v93 0.0970 0.1000 she v85 v94 0.0610 0.0720 she v108 v94 0.0910 0.0720 she v103 v95 0.0670 0.0690 she v80 v96 0.0590 0.0730 she v87 v96 0.0630 0.0490 she v104 v96 0.0620 0.0490 she v105 v96 0.0570 0.0490 she v110 v96 0.0540 0.0490 she v88 v97 0.0670 0.0760 she v98 v97 0.0960 0.0760 she v105 v97 0.0850 0.0760 she v110 v97 0.0810 0.0760 she v80 v97 0.0400 0.0510 she v81 v97 0.0520 0.0510 she v89 v97 0.0640 0.0510 she v111 v97 0.0480 0.0510 she v97 v98 0.0760 0.0960 she v105 v98 0.0850 0.0960 she v81 v98 0.0520 0.0640 she v82 v98 0.0700 0.0640 she v111 v98 0.0480 0.0640 she v90 v99 0.0910 0.0690 she v92 v99 0.0640 0.0690 she v101 v99 0.0650 0.0690 she v113 v99 0.0690 0.0690 she v112 v99 0.0660 0.0460 she v83 v100 0.0730 0.0610 she v91 v100 0.0680 0.0610 she v106 v100 0.0630 0.0610 she v114 v100 0.0680 0.0610 she v90 v100 0.0610 0.0410 she v107 v100 0.0520 0.0410 she v92 v101 0.0640 0.0650 she v99 v101 0.0690 0.0650 she v102 v101 0.0970 0.0650 she v107 v101 0.0770 0.0650 she v84 v102 0.0990 0.0970 she v93 v102 0.1000 0.0970 she v101 v102 0.0650 0.0970 she v107 v102 0.0770 0.0970 she v115 v102 0.0900 0.0970 she v85 v102 0.0610 0.0650 she v106 v102 0.0420 0.0650 she v109 v103 0.0930 0.1000 she v87 v103 0.0630 0.0670 she v95 v103 0.0690 0.0670 she v108 v103 0.0910 0.0670 she v86 v103 0.0570 0.0500 she v87 v104 0.0940 0.0930 she v96 v104 0.0490 0.0620 she v116 v104 0.0540 0.0620 she v97 v105 0.0760 0.0850 she v98 v105 0.0960 0.0850 she v110 v105 0.0810 0.0850 she v117 v105 0.0820 0.0850 she v89 v105 0.0640 0.0570 she v96 v105 0.0490 0.0570 she v100 v106 0.0610 0.0630 she v114 v106 0.0680 0.0630 she v119 v106 0.0740 0.0630 she v102 v106 0.0650 0.0420 she v115 v106 0.0600 0.0420 she v120 v106 0.0560 0.0420 she v101 v107 0.0650 0.0770 she v102 v107 0.0970 0.0770 she v115 v107 0.0900 0.0770 she v120 v107 0.0840 0.0770 she v100 v107 0.0410 0.0520 she v114 v107 0.0450 0.0520 she v119 v107 0.0490 0.0520 she v94 v108 0.0720 0.0910 she v103 v108 0.0670 0.0910 she v121 v108 0.0480 0.0690 she v122 v108 0.0350 0.0690 she v103 v109 0.1000 0.0930 she v116 v109 0.0810 0.0930 she v123 v109 0.0710 0.0930 she v122 v109 0.0460 0.0620 she v124 v109 0.0460 0.0620 she v97 v110 0.0760 0.0810 she v105 v110 0.0850 0.0810 she v117 v110 0.0820 0.0810 she v96 v110 0.0490 0.0540 she v116 v110 0.0540 0.0540 she v125 v110 0.0550 0.0540 she v125 v111 0.0830 0.0720 she v97 v111 0.0510 0.0480 she v98 v111 0.0640 0.0480 she v126 v111 0.0580 0.0480 she v127 v111 0.0550 0.0360 she v114 v112 0.0680 0.0990 she v118 v112 0.0900 0.0990 she v99 v112 0.0460 0.0660 she v99 v113 0.0690 0.0690 she v128 v113 0.0760 0.0460 she v100 v114 0.0610 0.0680 she v106 v114 0.0630 0.0680 she v112 v114 0.0990 0.0680 she v118 v114 0.0900 0.0680 she v119 v114 0.0740 0.0680 she v107 v114 0.0520 0.0450 she v120 v114 0.0560 0.0450 she v129 v114 0.0580 0.0450 she v128 v114 0.0570 0.0340 she v102 v115 0.0970 0.0900 she v107 v115 0.0770 0.0900 she v120 v115 0.0840 0.0900 she v106 v115 0.0420 0.0600 she v119 v115 0.0490 0.0600 she v121 v115 0.0640 0.0600 she v130 v115 0.0530 0.0600 she v109 v116 0.0930 0.0810 she v123 v116 0.0710 0.0810 she v135 v116 0.0720 0.0810 she v104 v116 0.0620 0.0540 she v110 v116 0.0540 0.0540 she v122 v116 0.0460 0.0540 she v136 v116 0.0560 0.0410 she v105 v117 0.0850 0.0820 she v110 v117 0.0810 0.0820 she v126 v117 0.0870 0.0820 she v127 v117 0.0730 0.0550 she v136 v117 0.0750 0.0550 she v112 v118 0.0990 0.0900 she v114 v118 0.0680 0.0900 she v119 v118 0.0740 0.0900 she v129 v118 0.0580 0.0600 she v106 v119 0.0630 0.0740 she v114 v119 0.0680 0.0740 she v118 v119 0.0900 0.0740 she v107 v119 0.0520 0.0490 she v115 v119 0.0600 0.0490 she v137 v119 0.0670 0.0490 she v107 v120 0.0770 0.0840 she v115 v120 0.0900 0.0840 she v129 v120 0.0870 0.0840 she v137 v120 0.1000 0.0840 she v106 v120 0.0420 0.0560 she v114 v120 0.0450 0.0560 she v130 v120 0.0530 0.0560 she v130 v121 0.0790 0.0960 she v132 v121 0.0710 0.0960 she v115 v121 0.0600 0.0640 she v133 v121 0.0530 0.0640 she v138 v121 0.0520 0.0640 she v108 v121 0.0690 0.0480 she v124 v122 0.0690 0.0690 she v140 v122 0.0660 0.0690 she v109 v122 0.0620 0.0460 she v116 v122 0.0540 0.0460 she v133 v122 0.0530 0.0460 she v139 v122 0.0510 0.0460 she v108 v122 0.0690 0.0350 she v109 v123 0.0930 0.0710 she v116 v123 0.0810 0.0710 she v134 v123 0.0660 0.0710 she v135 v123 0.0720 0.0710 she v141 v123 0.0700 0.0710 she v122 v124 0.0690 0.0690 she v109 v124 0.0620 0.0460 she v136 v124 0.0750 0.0460 she v111 v125 0.0720 0.0830 she v110 v125 0.0540 0.0550 she v142 v125 0.0820 0.0420 she v117 v126 0.0820 0.0870 she v111 v126 0.0480 0.0580 she v136 v126 0.0750 0.0580 she v117 v127 0.0550 0.0730 she v111 v127 0.0360 0.0550 she v113 v128 0.0460 0.0760 she v144 v128 0.0930 0.0760 she v114 v128 0.0340 0.0570 she v120 v129 0.0840 0.0870 she v137 v129 0.1000 0.0870 she v114 v129 0.0450 0.0580 she v118 v129 0.0600 0.0580 she v145 v129 0.0820 0.0580 she v144 v129 0.0700 0.0440 she v121 v130 0.0960 0.0790 she v132 v130 0.0710 0.0790 she v115 v130 0.0600 0.0530 she v120 v130 0.0560 0.0530 she v137 v130 0.0670 0.0530 she v138 v130 0.0520 0.0530 she v145 v130 0.0620 0.0400 she v133 v131 0.0790 0.0730 she v138 v131 0.0770 0.0730 she v146 v131 0.0710 0.0490 she v147 v131 0.0640 0.0490 she v121 v132 0.0960 0.0710 she v130 v132 0.0790 0.0710 she v147 v132 0.0960 0.0710 she v139 v132 0.0510 0.0480 she v146 v132 0.0530 0.0360 she v131 v133 0.0730 0.0790 she v134 v133 0.0660 0.0790 she v138 v133 0.0770 0.0790 she v139 v133 0.0760 0.0790 she v121 v133 0.0640 0.0530 she v122 v133 0.0460 0.0530 she v140 v133 0.0440 0.0530 she v147 v133 0.0640 0.0530 she v123 v134 0.0710 0.0660 she v133 v134 0.0790 0.0660 she v135 v134 0.0720 0.0660 she v139 v134 0.0760 0.0660 she v141 v134 0.0700 0.0660 she v148 v134 0.0610 0.0440 she v149 v134 0.0520 0.0330 she v116 v135 0.0810 0.0720 she v123 v135 0.0710 0.0720 she v134 v135 0.0660 0.0720 she v141 v135 0.0700 0.0720 she v148 v135 0.0610 0.0480 she v117 v136 0.0550 0.0750 she v124 v136 0.0460 0.0750 she v126 v136 0.0580 0.0750 she v116 v136 0.0410 0.0560 she v149 v136 0.0520 0.0560 she v120 v137 0.0840 0.1000 she v129 v137 0.0870 0.1000 she v119 v137 0.0490 0.0670 she v130 v137 0.0530 0.0670 she v146 v137 0.0710 0.0670 she v131 v138 0.0730 0.0770 she v133 v138 0.0790 0.0770 she v139 v138 0.0760 0.0770 she v121 v138 0.0640 0.0520 she v130 v138 0.0530 0.0520 she v146 v138 0.0710 0.0520 she v133 v139 0.0790 0.0760 she v134 v139 0.0660 0.0760 she v138 v139 0.0770 0.0760 she v141 v139 0.0700 0.0760 she v122 v139 0.0460 0.0510 she v132 v139 0.0480 0.0510 she v147 v139 0.0640 0.0510 she v148 v139 0.0610 0.0510 she v122 v140 0.0690 0.0660 she v148 v140 0.0910 0.0660 she v133 v140 0.0530 0.0440 she v149 v140 0.0700 0.0440 she v123 v141 0.0710 0.0700 she v134 v141 0.0660 0.0700 she v135 v141 0.0720 0.0700 she v139 v141 0.0760 0.0700 she v125 v142 0.0420 0.0820 she v128 v144 0.0760 0.0930 she v129 v144 0.0440 0.0700 she v129 v145 0.0580 0.0820 she v130 v145 0.0400 0.0620 she v131 v146 0.0490 0.0710 she v137 v146 0.0670 0.0710 she v138 v146 0.0520 0.0710 she v132 v146 0.0360 0.0530 she v132 v147 0.0710 0.0960 she v131 v147 0.0490 0.0640 she v133 v147 0.0530 0.0640 she v139 v147 0.0510 0.0640 she v140 v148 0.0660 0.0910 she v134 v148 0.0440 0.0610 she v135 v148 0.0480 0.0610 she v139 v148 0.0510 0.0610 she v140 v149 0.0440 0.0700 she v134 v149 0.0330 0.0520 she v136 v149 0.0560 0.0520 she v4 v3 0.1060 0.0890 she v3 v4 0.0890 0.1060 she v13 v4 0.1020 0.1060 she v22 v4 0.0760 0.1060 she v7 v6 0.1400 0.1500 she v15 v6 0.1170 0.1500 she v6 v7 0.1500 0.1400 she v16 v7 0.1140 0.1400 she v17 v10 0.1370 0.1420 she v12 v11 0.1400 0.1280 she v19 v11 0.1140 0.1280 she v11 v12 0.1280 0.1400 she v20 v12 0.1270 0.1400 she v4 v13 0.1060 0.1020 she v22 v13 0.0760 0.1020 she v15 v14 0.1170 0.1380 she v24 v14 0.1300 0.1380 she v6 v15 0.1500 0.1170 she v14 v15 0.1380 0.1170 she v16 v15 0.1140 0.1170 she v7 v16 0.1400 0.1140 she v15 v16 0.1170 0.1140 she v25 v16 0.1160 0.1140 she v10 v17 0.1420 0.1370 she v18 v17 0.1240 0.1370 she v17 v18 0.1370 0.1240 she v19 v18 0.1140 0.1240 she v11 v19 0.1280 0.1140 she v18 v19 0.1240 0.1140 she v20 v19 0.1270 0.1140 she v12 v20 0.1400 0.1270 she v19 v20 0.1140 0.1270 she v21 v20 0.1420 0.1270 she v20 v21 0.1270 0.1420 she v4 v22 0.1060 0.0760 she v13 v22 0.1020 0.0760 she v14 v24 0.1380 0.1300 she v33 v24 0.1400 0.1300 she v16 v25 0.1140 0.1160 she v26 v25 0.1300 0.1160 she v25 v26 0.1160 0.1300 she v32 v31 0.1490 0.1420 she v42 v31 0.1220 0.1420 she v31 v32 0.1420 0.1490 she v24 v33 0.1300 0.1400 she v34 v33 0.1450 0.1400 she v33 v34 0.1400 0.1450 she v44 v39 0.1060 0.0840 she v42 v41 0.1220 0.1350 she v31 v42 0.1420 0.1220 she v41 v42 0.1350 0.1220 she v47 v42 0.1230 0.1220 she v51 v43 0.1150 0.0630 she v39 v44 0.0840 0.1060 she v45 v44 0.0850 0.1060 she v64 v44 0.0970 0.1060 she v44 v45 0.1060 0.0850 she v42 v47 0.1220 0.1230 she v48 v47 0.1250 0.1230 she v53 v47 0.1420 0.1230 she v47 v48 0.1230 0.1250 she v54 v48 0.1240 0.1250 she v43 v51 0.0630 0.1150 she v60 v51 0.0480 0.1150 she v47 v53 0.1230 0.1420 she v54 v53 0.1240 0.1420 she v48 v54 0.1250 0.1240 she v53 v54 0.1420 0.1240 she v55 v54 0.1230 0.1240 she v54 v55 0.1240 0.1230 she v65 v55 0.1150 0.1230 she v57 v56 0.1470 0.1490 she v56 v57 0.1490 0.1470 she v61 v60 0.1350 0.1430 she v51 v60 0.1150 0.0480 she v60 v61 0.1430 0.1350 she v62 v61 0.1280 0.1350 she v61 v62 0.1350 0.1280 she v69 v62 0.1370 0.1280 she v44 v64 0.1060 0.0970 she v55 v65 0.1230 0.1150 she v66 v65 0.1180 0.1150 she v72 v65 0.1180 0.1150 she v65 v66 0.1150 0.1180 she v73 v66 0.1090 0.1180 she v82 v67 0.1040 0.0850 she v62 v69 0.1280 0.1370 she v78 v69 0.1500 0.1370 she v71 v70 0.1370 0.1470 she v70 v71 0.1470 0.1370 she v65 v72 0.1150 0.1180 she v73 v72 0.1090 0.1180 she v79 v72 0.1380 0.1180 she v66 v73 0.1180 0.1090 she v72 v73 0.1180 0.1090 she v74 v73 0.1320 0.1090 she v80 v73 0.1180 0.1090 she v73 v74 0.1090 0.1320 she v69 v78 0.1370 0.1500 she v72 v79 0.1180 0.1380 she v80 v79 0.1180 0.1380 she v73 v80 0.1090 0.1180 she v79 v80 0.1380 0.1180 she v88 v80 0.1340 0.1180 she v82 v81 0.1040 0.0780 she v67 v82 0.0850 0.1040 she v81 v82 0.0780 0.1040 she v89 v82 0.0960 0.1040 she v92 v83 0.1270 0.1450 she v94 v86 0.1080 0.1140 she v80 v88 0.1180 0.1340 she v96 v88 0.1450 0.1340 she v82 v89 0.1040 0.0960 she v92 v91 0.1270 0.1350 she v99 v91 0.1370 0.1350 she v83 v92 0.1450 0.1270 she v91 v92 0.1350 0.1270 she v100 v92 0.1220 0.1270 she v94 v93 0.1080 0.1000 she v86 v94 0.1140 0.1080 she v93 v94 0.1000 0.1080 she v108 v95 0.1370 0.1040 she v88 v96 0.1340 0.1450 she v91 v99 0.1350 0.1370 she v100 v99 0.1220 0.1370 she v92 v100 0.1270 0.1220 she v99 v100 0.1370 0.1220 she v101 v100 0.1290 0.1220 she v100 v101 0.1220 0.1290 she v106 v101 0.1250 0.1290 she v101 v106 0.1290 0.1250 she v95 v108 0.1040 0.1370 she v128 v112 0.1140 0.0990 she v114 v113 0.1350 0.1370 she v113 v114 0.1370 0.1350 she v128 v118 0.1140 0.0900 she v123 v122 0.1420 0.1380 she v134 v122 0.1310 0.1380 she v122 v123 0.1380 0.1420 she v124 v123 0.1370 0.1420 she v123 v124 0.1420 0.1370 she v135 v124 0.1430 0.1370 she v127 v125 0.1100 0.0830 she v136 v125 0.1120 0.0830 she v142 v126 0.1090 0.0580 she v125 v127 0.0830 0.1100 she v112 v128 0.0990 0.1140 she v118 v128 0.0900 0.1140 she v143 v128 0.1430 0.1140 she v146 v130 0.1060 0.0790 she v132 v131 0.1420 0.1450 she v131 v132 0.1450 0.1420 she v122 v134 0.1380 0.1310 she v140 v134 0.1320 0.1310 she v124 v135 0.1370 0.1430 she v136 v135 0.1120 0.0720 she v149 v135 0.1040 0.0720 she v125 v136 0.0830 0.1120 she v135 v136 0.0720 0.1120 she v134 v140 0.1310 0.1320 she v141 v140 0.1400 0.1320 she v140 v141 0.1320 0.1400 she v149 v141 0.1040 0.0700 she v126 v142 0.0580 0.1090 she v128 v143 0.1140 0.1430 she v146 v145 0.1060 0.1230 she v130 v146 0.0790 0.1060 she v145 v146 0.1230 0.1060 she v147 v146 0.0960 0.1060 she v146 v147 0.1060 0.0960 she v135 v149 0.0720 0.1040 she v141 v149 0.0700 0.1040 she v1 v0 0.1520 0.1700 she v10 v0 0.1420 0.1700 she v0 v1 0.1700 0.1520 she v3 v2 0.1770 0.1560 she v12 v2 0.1400 0.1560 she v2 v3 0.1560 0.1770 she v8 v7 0.1820 0.1400 she v7 v8 0.1400 0.1820 she v10 v9 0.1420 0.1910 she v0 v10 0.1700 0.1420 she v9 v10 0.1910 0.1420 she v2 v12 0.1560 0.1400 she v30 v22 0.1450 0.1520 she v24 v23 0.1300 0.1670 she v23 v24 0.1670 0.1300 she v27 v26 0.1700 0.1300 she v35 v26 0.1520 0.1300 she v26 v27 0.1300 0.1700 she v36 v27 0.1850 0.1700 she v22 v30 0.1520 0.1450 she v26 v35 0.1300 0.1520 she v36 v35 0.1850 0.1520 she v27 v36 0.1700 0.1850 she v35 v36 0.1520 0.1850 she v38 v37 0.1850 0.1850 she v37 v38 0.1850 0.1850 she v40 v39 0.1490 0.1670 she v39 v40 0.1670 0.1490 she v45 v40 0.1700 0.1490 she v40 v45 0.1490 0.1700 she v46 v45 0.1610 0.1700 she v45 v46 0.1700 0.1610 she v58 v50 0.1520 0.1740 she v61 v52 0.1350 0.1580 she v58 v57 0.1520 0.1470 she v50 v58 0.1740 0.1520 she v57 v58 0.1470 0.1520 she v59 v58 0.1820 0.1520 she v58 v59 0.1520 0.1820 she v67 v59 0.1700 0.1820 she v68 v60 0.1520 0.1430 she v52 v61 0.1580 0.1350 she v63 v62 0.1670 0.1280 she v62 v63 0.1280 0.1670 she v64 v63 0.1940 0.1670 she v63 v64 0.1670 0.1940 she v59 v67 0.1820 0.1700 she v75 v67 0.1740 0.1700 she v60 v68 0.1430 0.1520 she v67 v75 0.1700 0.1740 she v77 v76 0.1740 0.2000 she v76 v77 0.2000 0.1740 she v85 v84 0.1820 0.1970 she v84 v85 0.1970 0.1820 she v93 v85 0.2000 0.1820 she v98 v89 0.1910 0.1910 she v91 v90 0.1350 0.1820 she v90 v91 0.1820 0.1350 she v85 v93 0.1820 0.2000 she v97 v96 0.1520 0.1450 she v96 v97 0.1450 0.1520 she v89 v98 0.1910 0.1910 she v104 v103 0.1850 0.2000 she v103 v104 0.2000 0.1850 she v109 v104 0.1850 0.1850 she v111 v105 0.1430 0.1700 she v107 v106 0.1540 0.1250 she v106 v107 0.1250 0.1540 she v104 v109 0.1850 0.1850 she v111 v110 0.1430 0.1610 she v105 v111 0.1700 0.1430 she v110 v111 0.1610 0.1430 she v117 v111 0.1630 0.1430 she v113 v112 0.1370 0.1970 she v112 v113 0.1970 0.1370 she v118 v113 0.1800 0.1370 she v124 v116 0.1370 0.1610 she v111 v117 0.1430 0.1630 she v125 v117 0.1650 0.1630 she v113 v118 0.1370 0.1800 she v120 v119 0.1670 0.1470 she v129 v119 0.1740 0.1470 she v119 v120 0.1470 0.1670 she v131 v121 0.1450 0.1910 she v116 v124 0.1610 0.1370 she v117 v125 0.1630 0.1650 she v126 v125 0.1740 0.1650 she v125 v126 0.1650 0.1740 she v142 v127 0.1630 0.1100 she v119 v129 0.1470 0.1740 she v131 v130 0.1450 0.1580 she v121 v131 0.1910 0.1450 she v130 v131 0.1580 0.1450 she v133 v132 0.1580 0.1420 she v138 v132 0.1540 0.1420 she v132 v133 0.1420 0.1580 she v132 v138 0.1420 0.1540 she v147 v138 0.1910 0.1540 she v140 v139 0.1320 0.1520 she v139 v140 0.1520 0.1320 she v148 v141 0.1820 0.1400 she v127 v142 0.1100 0.1630 she v138 v147 0.1540 0.1910 she v141 v148 0.1400 0.1820 she v5 v4 0.2310 0.2110 she v4 v5 0.2110 0.2310 she v13 v5 0.2040 0.2310 she v5 v13 0.2310 0.2040 she v82 v75 0.2070 0.1740 she v75 v82 0.1740 0.2070 she v95 v86 0.2070 0.2270 she v95 v94 0.2070 0.2150 she v86 v95 0.2270 0.2070 she v94 v95 0.2150 0.2070 she v127 v126 0.2190 0.1740 she v126 v127 0.1740 0.2190 she v145 v137 0.2450 0.2000 she v137 v145 0.2000 0.2450 she v149 v148 0.2070 0.1820 she v148 v149 0.1820 0.2070 she v29 v28 0.2190 0.2860 she v28 v29 0.2860 0.2190 she v144 v143 0.2800 0.2860 she v143 v144 0.2860 0.2800 she shownodes 1 eq { v0 0.91 shn v1 0.97 shn v2 0.95 shn v3 0.91 shn v4 0.95 shn v5 0.93 shn v6 0.93 shn v7 1.00 shn v8 0.83 shn v9 0.91 shn v10 1.07 shn v11 1.07 shn v12 1.00 shn v13 0.95 shn v14 0.98 shn v15 1.14 shn v16 1.18 shn v17 1.09 shn v18 1.13 shn v19 1.20 shn v20 1.09 shn v21 1.03 shn v22 1.06 shn v23 0.88 shn v24 1.06 shn v25 1.16 shn v26 1.11 shn v27 0.92 shn v28 0.88 shn v29 0.99 shn v30 1.03 shn v31 1.01 shn v32 0.97 shn v33 1.00 shn v34 0.97 shn v35 0.99 shn v36 0.88 shn v37 0.94 shn v38 0.92 shn v39 0.95 shn v40 1.05 shn v41 1.03 shn v42 1.10 shn v43 1.01 shn v44 0.88 shn v45 0.98 shn v46 0.94 shn v47 1.07 shn v48 1.04 shn v49 0.87 shn v50 0.94 shn v51 0.83 shn v52 0.99 shn v53 0.97 shn v54 1.06 shn v55 1.03 shn v56 0.95 shn v57 1.04 shn v58 1.06 shn v59 0.93 shn v60 1.11 shn v61 1.08 shn v62 1.17 shn v63 0.96 shn v64 0.95 shn v65 1.08 shn v66 1.07 shn v67 1.02 shn v68 1.04 shn v69 1.09 shn v70 0.91 shn v71 0.89 shn v72 1.06 shn v73 1.15 shn v74 0.99 shn v75 1.02 shn v76 0.88 shn v77 0.95 shn v78 1.02 shn v79 0.95 shn v80 1.10 shn v81 1.00 shn v82 0.91 shn v83 1.01 shn v84 0.92 shn v85 1.05 shn v86 1.01 shn v87 0.89 shn v88 1.05 shn v89 0.95 shn v90 0.88 shn v91 1.07 shn v92 1.10 shn v93 0.96 shn v94 1.00 shn v95 1.06 shn v96 1.03 shn v97 1.01 shn v98 0.94 shn v99 1.02 shn v100 1.11 shn v101 1.08 shn v102 0.92 shn v103 1.00 shn v104 0.98 shn v105 0.96 shn v106 1.13 shn v107 0.98 shn v108 0.87 shn v109 0.93 shn v110 0.99 shn v111 1.12 shn v112 0.88 shn v113 1.13 shn v114 1.10 shn v115 0.93 shn v116 0.99 shn v117 1.03 shn v118 0.94 shn v119 1.08 shn v120 0.97 shn v121 0.91 shn v122 1.06 shn v123 1.02 shn v124 1.08 shn v125 1.09 shn v126 1.08 shn v127 0.94 shn v128 0.96 shn v129 1.01 shn v130 1.07 shn v131 1.11 shn v132 1.11 shn v133 0.96 shn v134 1.10 shn v135 1.07 shn v136 0.85 shn v137 0.99 shn v138 1.05 shn v139 0.98 shn v140 1.10 shn v141 1.07 shn v142 0.86 shn v143 0.96 shn v144 0.96 shn v145 0.89 shn v146 0.92 shn v147 0.90 shn v148 0.92 shn v149 0.87 shn } if /caption () def showpage mcl-12-135/img/fa.ps0000644000402500021140000041072411021510462010777 00000000000000%! %%BoundingBox: 45 215 435 603 % iterand 2. /B_test 0 def % set to 1 to test BoundingBox parameters /BBLL [ 45 215 ] def /BBUR [ 435 603 ] def B_test 1 eq { newpath BBLL aload pop moveto BBLL aload pop BBUR aload pop pop exch lineto % this is LR BBUR aload pop lineto BBUR aload pop BBLL aload pop pop exch lineto % this is UL closepath stroke } if /hdist 200 def /vdist 200 def /scalef 9 def 50 600 translate gsave scalef scalef -1 mul scale /radius 0.25 def /proc_iplt { % f l r left right fraction: compute l + (r-l)*fr exch dup % f r l l 4 1 roll % l f r l -1 mul add mul add } def /proc_circle { % p f point factor gsave %% newpath moveto dup % 1 exch 0 setrgbcolor % -1 mul 1 add 0.25 mul dup 0.5 add exch -0.25 mul 0.5 add 0 exch setrgbcolor dup dup % f f f 0.5 1.00 proc_iplt 3 1 roll 0.0 1.00 proc_iplt 2 1 roll 0.5 0.08 proc_iplt setrgbcolor exch aload pop moveto % 0.5 0.5 rmoveto currentpoint gsave 0 setlinewidth currentpoint radius 0 360 arc fill grestore newpath radius 0 360 arc 0 setgray 0.05 setlinewidth stroke grestore } def % $cl_r = 1; % my $t = 1-$val/$::CONF{RED_MAX}; % ($cl_g, $cl_b) = ($t) x 2; /proc_line { gsave .10 setlinewidth dup dup % f f f 0.84 1.00 proc_iplt 3 1 roll 0.00 1.00 proc_iplt 2 1 roll 0.00 0.00 proc_iplt setrgbcolor % setgray aload pop moveto aload pop lineto stroke grestore } def /she {proc_line} def /shn {proc_circle} def /v_0 [4 1] def /v_1 [5 1] def /v_2 [7 1] def /v_3 [8 1] def /v_4 [10 1] def /v_5 [11 1] def /v_6 [16 1] def /v_7 [17 1] def /v_8 [18 1] def /v_9 [3 2] def /v_10 [4 2] def /v_11 [6 2] def /v_12 [7 2] def /v_13 [11 2] def /v_14 [15 2] def /v_15 [16 2] def /v_16 [17 2] def /v_17 [4 3] def /v_18 [5 3] def /v_19 [6 3] def /v_20 [7 3] def /v_21 [8 3] def /v_22 [10 3] def /v_23 [14 3] def /v_24 [15 3] def /v_25 [17 3] def /v_26 [18 3] def /v_27 [19 3] def /v_28 [1 4] def /v_29 [2 4] def /v_30 [10 4] def /v_31 [12 4] def /v_32 [13 4] def /v_33 [15 4] def /v_34 [16 4] def /v_35 [18 4] def /v_36 [19 4] def /v_37 [4 5] def /v_38 [5 5] def /v_39 [8 5] def /v_40 [9 5] def /v_41 [11 5] def /v_42 [12 5] def /v_43 [3 6] def /v_44 [7 6] def /v_45 [9 6] def /v_46 [10 6] def /v_47 [12 6] def /v_48 [13 6] def /v_49 [15 6] def /v_50 [18 6] def /v_51 [1 7] def /v_52 [4 7] def /v_53 [12 7] def /v_54 [13 7] def /v_55 [14 7] def /v_56 [16 7] def /v_57 [17 7] def /v_58 [18 7] def /v_59 [19 7] def /v_60 [3 8] def /v_61 [4 8] def /v_62 [5 8] def /v_63 [6 8] def /v_64 [7 8] def /v_65 [14 8] def /v_66 [15 8] def /v_67 [19 8] def /v_68 [3 9] def /v_69 [5 9] def /v_70 [9 9] def /v_71 [11 9] def /v_72 [14 9] def /v_73 [15 9] def /v_74 [16 9] def /v_75 [19 9] def /v_76 [1 10] def /v_77 [2 10] def /v_78 [5 10] def /v_79 [14 10] def /v_80 [15 10] def /v_81 [17 10] def /v_82 [19 10] def /v_83 [3 11] def /v_84 [6 11] def /v_85 [7 11] def /v_86 [10 11] def /v_87 [13 11] def /v_88 [15 11] def /v_89 [18 11] def /v_90 [1 12] def /v_91 [2 12] def /v_92 [3 12] def /v_93 [7 12] def /v_94 [9 12] def /v_95 [10 12] def /v_96 [15 12] def /v_97 [16 12] def /v_98 [18 12] def /v_99 [2 13] def /v_100 [3 13] def /v_101 [4 13] def /v_102 [6 13] def /v_103 [12 13] def /v_104 [13 13] def /v_105 [17 13] def /v_106 [4 14] def /v_107 [5 14] def /v_108 [10 14] def /v_109 [13 14] def /v_110 [16 14] def /v_111 [17 14] def /v_112 [1 15] def /v_113 [2 15] def /v_114 [3 15] def /v_115 [6 15] def /v_116 [14 15] def /v_117 [17 15] def /v_118 [2 16] def /v_119 [4 16] def /v_120 [5 16] def /v_121 [8 16] def /v_122 [12 16] def /v_123 [13 16] def /v_124 [14 16] def /v_125 [17 16] def /v_126 [18 16] def /v_127 [19 16] def /v_128 [1 17] def /v_129 [4 17] def /v_130 [7 17] def /v_131 [8 17] def /v_132 [9 17] def /v_133 [10 17] def /v_134 [12 17] def /v_135 [14 17] def /v_136 [16 17] def /v_137 [5 18] def /v_138 [9 18] def /v_139 [11 18] def /v_140 [12 18] def /v_141 [13 18] def /v_142 [19 18] def /v_143 [1 19] def /v_144 [2 19] def /v_145 [5 19] def /v_146 [7 19] def /v_147 [9 19] def /v_148 [13 19] def /v_149 [14 19] def v_21 v_0 0.7 she v_28 v_0 0.7 she v_37 v_0 0.7 she v_38 v_0 0.7 she v_28 v_1 0.7 she v_29 v_1 0.7 she v_37 v_1 0.7 she v_38 v_1 0.7 she v_9 v_2 0.7 she v_10 v_2 0.6 she v_17 v_2 0.7 she v_22 v_2 0.7 she v_38 v_2 0.7 she v_39 v_2 0.7 she v_30 v_3 0.7 she v_39 v_3 0.7 she v_40 v_3 0.7 she v_11 v_4 0.7 she v_12 v_4 0.7 she v_19 v_4 0.7 she v_20 v_4 0.6 she v_31 v_4 0.7 she v_32 v_4 0.7 she v_39 v_4 0.7 she v_40 v_4 0.7 she v_32 v_5 0.7 she v_39 v_5 0.7 she v_40 v_5 0.7 she v_41 v_5 0.7 she v_42 v_5 0.7 she v_32 v_6 0.7 she v_35 v_6 0.7 she v_36 v_6 0.7 she v_32 v_7 0.7 she v_23 v_8 0.7 she v_33 v_8 0.7 she v_34 v_8 0.7 she v_2 v_9 0.7 she v_12 v_9 0.7 she v_20 v_9 0.7 she v_38 v_9 0.7 she v_43 v_9 0.7 she v_2 v_10 0.7 she v_21 v_10 0.7 she v_4 v_11 0.7 she v_29 v_11 0.7 she v_37 v_11 0.7 she v_39 v_11 0.6 she v_4 v_12 0.6 she v_9 v_12 0.7 she v_22 v_12 0.7 she v_40 v_12 0.7 she v_39 v_13 0.7 she v_40 v_13 0.7 she v_46 v_13 0.7 she v_47 v_13 0.7 she v_27 v_14 0.7 she v_31 v_14 0.7 she v_35 v_14 0.7 she v_49 v_14 0.7 she v_50 v_16 0.7 she v_2 v_17 0.7 she v_52 v_17 0.7 she v_28 v_18 0.7 she v_43 v_18 0.6 she v_4 v_19 0.7 she v_29 v_19 0.7 she v_40 v_19 0.6 she v_4 v_20 0.6 she v_9 v_20 0.7 she v_45 v_20 0.7 she v_0 v_21 0.7 she v_10 v_21 0.7 she v_46 v_21 0.7 she v_2 v_22 0.7 she v_12 v_22 0.7 she v_8 v_23 0.7 she v_26 v_23 0.7 she v_41 v_23 0.7 she v_47 v_23 0.7 she v_27 v_24 0.7 she v_35 v_24 0.6 she v_36 v_24 0.7 she v_50 v_25 0.7 she v_23 v_26 0.7 she v_14 v_27 0.7 she v_24 v_27 0.7 she v_33 v_27 0.7 she v_0 v_28 0.7 she v_1 v_28 0.7 she v_18 v_28 0.7 she v_38 v_28 0.7 she v_51 v_28 0.7 she v_52 v_28 0.7 she v_60 v_28 0.7 she v_61 v_28 0.7 she v_62 v_28 0.7 she v_1 v_29 0.7 she v_11 v_29 0.7 she v_19 v_29 0.7 she v_51 v_29 0.6 she v_60 v_29 0.7 she v_3 v_30 0.7 she v_4 v_31 0.7 she v_14 v_31 0.7 she v_45 v_31 0.7 she v_4 v_32 0.7 she v_5 v_32 0.6 she v_6 v_32 0.7 she v_7 v_32 0.7 she v_8 v_33 0.7 she v_27 v_33 0.7 she v_8 v_34 0.7 she v_59 v_34 0.7 she v_6 v_35 0.6 she v_14 v_35 0.6 she v_24 v_35 0.7 she v_58 v_35 0.6 she v_59 v_35 0.7 she v_67 v_35 0.7 she v_6 v_36 0.7 she v_24 v_36 0.7 she v_57 v_36 0.7 she v_58 v_36 0.7 she v_59 v_36 0.7 she v_0 v_37 0.7 she v_1 v_37 0.7 she v_11 v_37 0.7 she v_62 v_37 0.6 she v_0 v_38 0.7 she v_1 v_38 0.7 she v_2 v_38 0.7 she v_9 v_38 0.7 she v_28 v_38 0.7 she v_39 v_38 0.7 she v_51 v_38 0.7 she v_60 v_38 0.7 she v_62 v_38 0.7 she v_63 v_38 0.7 she v_2 v_39 0.7 she v_3 v_39 0.7 she v_4 v_39 0.7 she v_5 v_39 0.7 she v_11 v_39 0.7 she v_13 v_39 0.7 she v_38 v_39 0.7 she v_63 v_39 0.7 she v_3 v_40 0.7 she v_4 v_40 0.7 she v_5 v_40 0.7 she v_12 v_40 0.7 she v_13 v_40 0.7 she v_19 v_40 0.7 she v_47 v_40 0.7 she v_5 v_41 0.7 she v_23 v_41 0.6 she v_5 v_42 0.7 she v_65 v_42 0.7 she v_71 v_42 0.6 she v_9 v_43 0.7 she v_18 v_43 0.7 she v_20 v_45 0.7 she v_31 v_45 0.6 she v_53 v_45 0.7 she v_13 v_46 0.7 she v_21 v_46 0.7 she v_13 v_47 0.7 she v_23 v_47 0.7 she v_40 v_47 0.6 she v_72 v_47 0.6 she v_56 v_48 0.7 she v_14 v_49 0.7 she v_50 v_49 0.7 she v_58 v_49 0.6 she v_59 v_49 0.7 she v_16 v_50 0.7 she v_25 v_50 0.7 she v_49 v_50 0.7 she v_82 v_50 0.7 she v_28 v_51 0.7 she v_29 v_51 0.7 she v_38 v_51 0.6 she v_76 v_51 0.6 she v_78 v_51 0.6 she v_83 v_51 0.7 she v_17 v_52 0.7 she v_28 v_52 0.7 she v_76 v_52 0.7 she v_77 v_52 0.7 she v_45 v_53 0.7 she v_86 v_53 0.7 she v_79 v_54 0.7 she v_86 v_54 0.7 she v_58 v_55 0.7 she v_48 v_56 0.7 she v_75 v_56 0.7 she v_36 v_57 0.7 she v_81 v_57 0.7 she v_35 v_58 0.7 she v_36 v_58 0.7 she v_49 v_58 0.7 she v_55 v_58 0.7 she v_73 v_58 0.6 she v_81 v_58 0.7 she v_34 v_59 0.7 she v_35 v_59 0.7 she v_36 v_59 0.7 she v_49 v_59 0.7 she v_66 v_59 0.7 she v_74 v_59 0.7 she v_81 v_59 0.7 she v_89 v_59 0.7 she v_28 v_60 0.7 she v_29 v_60 0.7 she v_38 v_60 0.7 she v_64 v_60 0.7 she v_90 v_60 0.7 she v_28 v_61 0.7 she v_83 v_61 0.7 she v_84 v_61 0.7 she v_28 v_62 0.7 she v_37 v_62 0.7 she v_38 v_62 0.6 she v_76 v_62 0.7 she v_77 v_62 0.7 she v_83 v_62 0.6 she v_85 v_62 0.7 she v_38 v_63 0.7 she v_39 v_63 0.7 she v_84 v_63 0.7 she v_60 v_64 0.7 she v_68 v_64 0.6 she v_85 v_64 0.6 she v_86 v_64 0.6 she v_42 v_65 0.7 she v_59 v_66 0.7 she v_67 v_66 0.7 she v_75 v_66 0.7 she v_89 v_66 0.7 she v_35 v_67 0.7 she v_66 v_67 0.7 she v_73 v_67 0.7 she v_74 v_67 0.7 she v_80 v_67 0.7 she v_98 v_67 0.7 she v_64 v_68 0.7 she v_84 v_68 0.7 she v_76 v_69 0.7 she v_92 v_69 0.7 she v_94 v_69 0.7 she v_102 v_69 0.7 she v_42 v_71 0.7 she v_47 v_72 0.6 she v_58 v_73 0.6 she v_67 v_73 0.7 she v_75 v_73 0.7 she v_82 v_73 0.7 she v_89 v_73 0.7 she v_59 v_74 0.7 she v_67 v_74 0.7 she v_75 v_74 0.7 she v_56 v_75 0.7 she v_66 v_75 0.7 she v_73 v_75 0.7 she v_74 v_75 0.7 she v_80 v_75 0.7 she v_97 v_75 0.7 she v_51 v_76 0.7 she v_52 v_76 0.7 she v_62 v_76 0.7 she v_69 v_76 0.7 she v_78 v_76 0.7 she v_101 v_76 0.7 she v_52 v_77 0.7 she v_62 v_77 0.7 she v_78 v_77 0.6 she v_101 v_77 0.6 she v_51 v_78 0.7 she v_76 v_78 0.7 she v_77 v_78 0.6 she v_90 v_78 0.7 she v_91 v_78 0.7 she v_92 v_78 0.7 she v_94 v_78 0.7 she v_54 v_79 0.7 she v_103 v_79 0.7 she v_105 v_79 0.7 she v_67 v_80 0.7 she v_75 v_80 0.7 she v_82 v_80 0.7 she v_98 v_80 0.7 she v_105 v_80 0.7 she v_57 v_81 0.7 she v_58 v_81 0.7 she v_59 v_81 0.7 she v_87 v_81 0.6 she v_111 v_81 0.7 she v_50 v_82 0.7 she v_73 v_82 0.7 she v_80 v_82 0.7 she v_88 v_82 0.7 she v_51 v_83 0.7 she v_61 v_83 0.7 she v_62 v_83 0.6 she v_84 v_83 0.7 she v_113 v_83 0.7 she v_61 v_84 0.7 she v_63 v_84 0.7 she v_68 v_84 0.7 she v_83 v_84 0.7 she v_106 v_84 0.7 she v_115 v_84 0.6 she v_62 v_85 0.7 she v_64 v_85 0.6 she v_108 v_85 0.7 she v_115 v_85 0.7 she v_53 v_86 0.7 she v_54 v_86 0.7 she v_64 v_86 0.7 she v_87 v_86 0.6 she v_104 v_86 0.7 she v_109 v_86 0.7 she v_116 v_86 0.7 she v_81 v_87 0.6 she v_86 v_87 0.7 she v_95 v_87 0.7 she v_82 v_88 0.7 she v_111 v_88 0.7 she v_59 v_89 0.7 she v_66 v_89 0.7 she v_73 v_89 0.7 she v_117 v_89 0.7 she v_60 v_90 0.7 she v_78 v_90 0.7 she v_112 v_90 0.7 she v_113 v_90 0.7 she v_114 v_90 0.7 she v_78 v_91 0.7 she v_112 v_91 0.7 she v_113 v_91 0.7 she v_114 v_91 0.7 she v_69 v_92 0.7 she v_78 v_92 0.6 she v_102 v_92 0.7 she v_112 v_92 0.7 she v_113 v_92 0.6 she v_120 v_93 0.7 she v_69 v_94 0.7 she v_78 v_94 0.7 she v_107 v_94 0.7 she v_121 v_94 0.7 she v_122 v_94 0.7 she v_87 v_95 0.7 she v_109 v_95 0.7 she v_116 v_95 0.7 she v_121 v_95 0.7 she v_122 v_95 0.7 she v_116 v_96 0.7 she v_117 v_96 0.7 she v_125 v_96 0.7 she v_126 v_96 0.7 she v_127 v_96 0.7 she v_75 v_97 0.7 she v_104 v_97 0.7 she v_125 v_97 0.7 she v_126 v_97 0.7 she v_127 v_97 0.7 she v_67 v_98 0.7 she v_80 v_98 0.7 she v_125 v_98 0.7 she v_126 v_98 0.7 she v_127 v_98 0.7 she v_119 v_100 0.7 she v_120 v_100 0.6 she v_128 v_100 0.6 she v_76 v_101 0.7 she v_77 v_101 0.7 she v_128 v_101 0.7 she v_69 v_102 0.7 she v_92 v_102 0.7 she v_121 v_102 0.7 she v_79 v_103 0.7 she v_86 v_104 0.7 she v_97 v_104 0.6 she v_79 v_105 0.7 she v_80 v_105 0.7 she v_127 v_105 0.6 she v_84 v_106 0.7 she v_128 v_106 0.6 she v_137 v_106 0.7 she v_94 v_107 0.7 she v_112 v_107 0.7 she v_118 v_107 0.7 she v_121 v_107 0.7 she v_128 v_107 0.7 she v_130 v_107 0.7 she v_137 v_107 0.7 she v_85 v_108 0.7 she v_116 v_108 0.7 she v_123 v_108 0.7 she v_133 v_108 0.7 she v_134 v_108 0.6 she v_86 v_109 0.7 she v_95 v_109 0.7 she v_110 v_109 0.7 she v_140 v_109 0.7 she v_141 v_109 0.7 she v_109 v_110 0.7 she v_135 v_110 0.7 she v_142 v_110 0.7 she v_81 v_111 0.7 she v_88 v_111 0.7 she v_116 v_111 0.7 she v_90 v_112 0.7 she v_91 v_112 0.7 she v_92 v_112 0.7 she v_107 v_112 0.7 she v_83 v_113 0.7 she v_90 v_113 0.7 she v_91 v_113 0.7 she v_92 v_113 0.7 she v_144 v_113 0.6 she v_90 v_114 0.7 she v_91 v_114 0.7 she v_143 v_114 0.7 she v_144 v_114 0.7 she v_145 v_114 0.7 she v_84 v_115 0.7 she v_85 v_115 0.7 she v_138 v_115 0.7 she v_144 v_115 0.7 she v_145 v_115 0.7 she v_146 v_115 0.7 she v_147 v_115 0.7 she v_86 v_116 0.7 she v_95 v_116 0.7 she v_96 v_116 0.7 she v_108 v_116 0.7 she v_111 v_116 0.7 she v_117 v_116 0.7 she v_125 v_116 0.7 she v_126 v_116 0.7 she v_148 v_116 0.7 she v_149 v_116 0.7 she v_89 v_117 0.7 she v_96 v_117 0.7 she v_116 v_117 0.7 she v_124 v_117 0.7 she v_135 v_117 0.7 she v_149 v_117 0.7 she v_107 v_118 0.7 she v_137 v_118 0.6 she v_145 v_118 0.7 she v_100 v_119 0.7 she v_144 v_119 0.6 she v_146 v_119 0.7 she v_93 v_120 0.7 she v_100 v_120 0.7 she v_121 v_120 0.6 she v_128 v_120 0.7 she v_131 v_120 0.7 she v_132 v_120 0.7 she v_144 v_120 0.7 she v_94 v_121 0.7 she v_95 v_121 0.7 she v_102 v_121 0.7 she v_107 v_121 0.7 she v_120 v_121 0.7 she v_122 v_121 0.7 she v_145 v_121 0.7 she v_94 v_122 0.7 she v_95 v_122 0.7 she v_121 v_122 0.7 she v_132 v_122 0.7 she v_138 v_122 0.7 she v_147 v_122 0.7 she v_108 v_123 0.7 she v_117 v_124 0.7 she v_125 v_124 0.7 she v_126 v_124 0.7 she v_96 v_125 0.7 she v_97 v_125 0.7 she v_98 v_125 0.7 she v_116 v_125 0.7 she v_124 v_125 0.7 she v_135 v_125 0.7 she v_149 v_125 0.7 she v_96 v_126 0.7 she v_97 v_126 0.7 she v_98 v_126 0.7 she v_116 v_126 0.7 she v_124 v_126 0.7 she v_135 v_126 0.7 she v_149 v_126 0.7 she v_96 v_127 0.7 she v_97 v_127 0.7 she v_98 v_127 0.7 she v_105 v_127 0.7 she v_100 v_128 0.7 she v_101 v_128 0.7 she v_106 v_128 0.6 she v_107 v_128 0.7 she v_120 v_128 0.7 she v_107 v_130 0.7 she v_139 v_130 0.7 she v_120 v_131 0.7 she v_134 v_131 0.7 she v_120 v_132 0.7 she v_122 v_132 0.7 she v_134 v_132 0.7 she v_137 v_132 0.7 she v_140 v_132 0.7 she v_145 v_132 0.6 she v_148 v_132 0.7 she v_108 v_133 0.7 she v_135 v_133 0.7 she v_148 v_133 0.7 she v_149 v_133 0.7 she v_108 v_134 0.6 she v_131 v_134 0.7 she v_132 v_134 0.7 she v_138 v_134 0.6 she v_147 v_134 0.7 she v_110 v_135 0.7 she v_117 v_135 0.7 she v_125 v_135 0.7 she v_126 v_135 0.7 she v_133 v_135 0.7 she v_106 v_137 0.7 she v_107 v_137 0.7 she v_118 v_137 0.6 she v_132 v_137 0.7 she v_138 v_137 0.7 she v_144 v_137 0.7 she v_147 v_137 0.7 she v_115 v_138 0.7 she v_122 v_138 0.7 she v_134 v_138 0.7 she v_137 v_138 0.7 she v_141 v_138 0.7 she v_148 v_138 0.7 she v_130 v_139 0.7 she v_109 v_140 0.7 she v_132 v_140 0.7 she v_147 v_140 0.6 she v_109 v_141 0.6 she v_138 v_141 0.7 she v_147 v_141 0.7 she v_110 v_142 0.7 she v_114 v_143 0.7 she v_113 v_144 0.7 she v_114 v_144 0.7 she v_115 v_144 0.7 she v_119 v_144 0.7 she v_120 v_144 0.7 she v_137 v_144 0.7 she v_145 v_144 0.7 she v_114 v_145 0.7 she v_115 v_145 0.7 she v_118 v_145 0.7 she v_121 v_145 0.7 she v_132 v_145 0.7 she v_144 v_145 0.7 she v_115 v_146 0.7 she v_119 v_146 0.7 she v_115 v_147 0.7 she v_122 v_147 0.7 she v_134 v_147 0.7 she v_137 v_147 0.7 she v_140 v_147 0.7 she v_141 v_147 0.7 she v_148 v_147 0.7 she v_116 v_148 0.7 she v_132 v_148 0.7 she v_133 v_148 0.7 she v_138 v_148 0.7 she v_147 v_148 0.7 she v_116 v_149 0.7 she v_117 v_149 0.7 she v_125 v_149 0.7 she v_126 v_149 0.7 she v_133 v_149 0.7 she v_2 v_0 0.7 she v_12 v_0 0.7 she v_20 v_0 0.6 she v_29 v_0 0.6 she v_3 v_1 0.7 she v_21 v_1 0.6 she v_0 v_2 0.6 she v_4 v_2 0.6 she v_1 v_3 0.7 she v_13 v_3 0.6 she v_18 v_3 0.6 she v_22 v_3 0.7 she v_2 v_4 0.6 she v_30 v_4 0.6 she v_21 v_5 0.6 she v_30 v_5 0.7 she v_31 v_5 0.6 she v_23 v_6 0.6 she v_27 v_6 0.7 she v_33 v_6 0.6 she v_34 v_6 0.6 she v_23 v_7 0.6 she v_24 v_7 0.7 she v_33 v_7 0.6 she v_34 v_7 0.6 she v_35 v_7 0.7 she v_36 v_7 0.6 she v_14 v_8 0.6 she v_24 v_8 0.6 she v_35 v_8 0.7 she v_36 v_8 0.6 she v_37 v_9 0.6 she v_12 v_10 0.7 she v_20 v_10 0.6 she v_37 v_10 0.6 she v_38 v_10 0.6 she v_38 v_11 0.7 she v_0 v_12 0.6 she v_10 v_12 0.6 she v_17 v_12 0.7 she v_38 v_12 0.6 she v_39 v_12 0.6 she v_3 v_13 0.7 she v_21 v_13 0.6 she v_32 v_13 0.6 she v_41 v_13 0.6 she v_42 v_13 0.7 she v_8 v_14 0.6 she v_26 v_14 0.6 she v_32 v_14 0.7 she v_27 v_15 0.6 she v_32 v_15 0.6 she v_35 v_15 0.7 she v_36 v_15 0.6 she v_23 v_16 0.6 she v_12 v_17 0.6 she v_20 v_17 0.7 she v_43 v_17 0.6 she v_3 v_18 0.6 she v_21 v_18 0.7 she v_29 v_18 0.6 she v_39 v_19 0.6 she v_0 v_20 0.7 she v_10 v_20 0.6 she v_17 v_20 0.6 she v_22 v_20 0.6 she v_37 v_20 0.7 she v_38 v_20 0.6 she v_40 v_20 0.6 she v_44 v_20 0.7 she v_1 v_21 0.6 she v_5 v_21 0.6 she v_13 v_21 0.7 she v_18 v_21 0.6 she v_30 v_21 0.6 she v_44 v_21 0.6 she v_45 v_21 0.7 she v_3 v_22 0.6 she v_20 v_22 0.6 she v_42 v_22 0.7 she v_45 v_22 0.6 she v_46 v_22 0.6 she v_47 v_22 0.7 she v_6 v_23 0.6 she v_7 v_23 0.6 she v_16 v_23 0.6 she v_25 v_23 0.7 she v_42 v_23 0.6 she v_48 v_23 0.6 she v_7 v_24 0.7 she v_8 v_24 0.6 she v_26 v_24 0.6 she v_31 v_24 0.6 she v_49 v_24 0.7 she v_23 v_25 0.6 she v_14 v_26 0.6 she v_24 v_26 0.7 she v_33 v_26 0.6 she v_50 v_26 0.6 she v_6 v_27 0.7 she v_15 v_27 0.6 she v_34 v_27 0.6 she v_50 v_27 0.6 she v_0 v_29 0.7 she v_18 v_29 0.6 she v_38 v_29 0.6 she v_52 v_29 0.7 she v_4 v_30 0.6 she v_5 v_30 0.6 she v_21 v_30 0.7 she v_32 v_30 0.6 she v_44 v_30 0.6 she v_47 v_30 0.6 she v_53 v_30 0.7 she v_5 v_31 0.6 she v_24 v_31 0.6 she v_33 v_31 0.7 she v_40 v_31 0.6 she v_53 v_31 0.6 she v_54 v_31 0.7 she v_13 v_32 0.6 she v_14 v_32 0.6 she v_15 v_32 0.6 she v_30 v_32 0.7 she v_34 v_32 0.6 she v_46 v_32 0.6 she v_49 v_32 0.7 she v_53 v_32 0.6 she v_54 v_32 0.6 she v_6 v_33 0.7 she v_7 v_33 0.6 she v_26 v_33 0.6 she v_31 v_33 0.6 she v_35 v_33 0.7 she v_48 v_33 0.6 she v_6 v_34 0.6 she v_7 v_34 0.7 she v_27 v_34 0.6 she v_32 v_34 0.6 she v_36 v_34 0.7 she v_49 v_34 0.6 she v_50 v_34 0.6 she v_7 v_35 0.6 she v_8 v_35 0.7 she v_15 v_35 0.6 she v_33 v_35 0.6 she v_7 v_36 0.7 she v_8 v_36 0.6 she v_15 v_36 0.6 she v_34 v_36 0.7 she v_9 v_37 0.6 she v_10 v_37 0.6 she v_20 v_37 0.6 she v_44 v_37 0.7 she v_51 v_37 0.6 she v_60 v_37 0.6 she v_61 v_37 0.7 she v_10 v_38 0.6 she v_11 v_38 0.6 she v_12 v_38 0.7 she v_20 v_38 0.6 she v_29 v_38 0.6 she v_44 v_38 0.6 she v_61 v_38 0.7 she v_12 v_39 0.6 she v_19 v_39 0.6 she v_64 v_39 0.7 she v_20 v_40 0.6 she v_31 v_40 0.6 she v_42 v_40 0.7 she v_64 v_40 0.6 she v_13 v_41 0.6 she v_54 v_41 0.6 she v_55 v_41 0.7 she v_13 v_42 0.6 she v_22 v_42 0.6 she v_23 v_42 0.7 she v_40 v_42 0.6 she v_45 v_42 0.6 she v_55 v_42 0.7 she v_17 v_43 0.6 she v_63 v_43 0.6 she v_69 v_43 0.6 she v_20 v_44 0.7 she v_21 v_44 0.6 she v_30 v_44 0.6 she v_37 v_44 0.7 she v_38 v_44 0.6 she v_61 v_44 0.6 she v_69 v_44 0.7 she v_70 v_44 0.6 she v_78 v_44 0.6 she v_21 v_45 0.6 she v_22 v_45 0.7 she v_42 v_45 0.6 she v_47 v_45 0.6 she v_63 v_45 0.7 she v_64 v_45 0.6 she v_22 v_46 0.6 she v_32 v_46 0.7 she v_48 v_46 0.6 she v_53 v_46 0.6 she v_54 v_46 0.6 she v_22 v_47 0.7 she v_30 v_47 0.6 she v_45 v_47 0.6 she v_49 v_47 0.7 she v_65 v_47 0.6 she v_71 v_47 0.6 she v_23 v_48 0.7 she v_33 v_48 0.6 she v_46 v_48 0.6 she v_66 v_48 0.6 she v_71 v_48 0.7 she v_72 v_48 0.6 she v_24 v_49 0.6 she v_32 v_49 0.7 she v_34 v_49 0.6 she v_47 v_49 0.6 she v_53 v_49 0.7 she v_72 v_49 0.6 she v_74 v_49 0.6 she v_26 v_50 0.6 she v_27 v_50 0.7 she v_34 v_50 0.6 she v_74 v_50 0.6 she v_37 v_51 0.7 she v_69 v_51 0.6 she v_77 v_51 0.6 she v_29 v_52 0.7 she v_64 v_52 0.6 she v_78 v_52 0.6 she v_30 v_53 0.6 she v_31 v_53 0.7 she v_32 v_53 0.6 she v_46 v_53 0.6 she v_49 v_53 0.7 she v_66 v_53 0.6 she v_70 v_53 0.6 she v_72 v_53 0.7 she v_31 v_54 0.6 she v_32 v_54 0.6 she v_41 v_54 0.6 she v_46 v_54 0.7 she v_56 v_54 0.6 she v_70 v_54 0.6 she v_73 v_54 0.7 she v_74 v_54 0.6 she v_41 v_55 0.6 she v_42 v_55 0.7 she v_57 v_55 0.6 she v_71 v_55 0.6 she v_74 v_55 0.6 she v_79 v_55 0.7 she v_80 v_55 0.6 she v_54 v_56 0.6 she v_67 v_56 0.7 she v_79 v_56 0.6 she v_80 v_56 0.6 she v_55 v_57 0.7 she v_65 v_57 0.6 she v_72 v_57 0.6 she v_73 v_57 0.6 she v_82 v_57 0.7 she v_66 v_58 0.6 she v_74 v_58 0.6 she v_82 v_58 0.7 she v_37 v_60 0.6 she v_83 v_60 0.6 she v_37 v_61 0.7 she v_38 v_61 0.6 she v_44 v_61 0.6 she v_76 v_61 0.6 she v_77 v_61 0.7 she v_70 v_62 0.6 she v_84 v_62 0.6 she v_43 v_63 0.7 she v_45 v_63 0.6 she v_68 v_63 0.6 she v_39 v_64 0.7 she v_40 v_64 0.6 she v_45 v_64 0.6 she v_52 v_64 0.6 she v_47 v_65 0.7 she v_57 v_65 0.6 she v_87 v_65 0.6 she v_88 v_65 0.7 she v_48 v_66 0.6 she v_53 v_66 0.6 she v_58 v_66 0.7 she v_81 v_66 0.6 she v_87 v_66 0.6 she v_88 v_66 0.6 she v_56 v_67 0.7 she v_89 v_67 0.6 she v_63 v_68 0.6 she v_83 v_68 0.7 she v_90 v_68 0.6 she v_91 v_68 0.6 she v_92 v_68 0.7 she v_43 v_69 0.6 she v_44 v_69 0.6 she v_51 v_69 0.6 she v_70 v_69 0.7 she v_77 v_69 0.6 she v_83 v_69 0.6 she v_93 v_69 0.7 she v_44 v_70 0.6 she v_53 v_70 0.6 she v_54 v_70 0.7 she v_62 v_70 0.6 she v_69 v_70 0.6 she v_84 v_70 0.6 she v_87 v_70 0.7 she v_93 v_70 0.6 she v_94 v_70 0.6 she v_47 v_71 0.7 she v_48 v_71 0.6 she v_55 v_71 0.6 she v_72 v_71 0.7 she v_85 v_71 0.6 she v_87 v_71 0.6 she v_94 v_71 0.6 she v_103 v_71 0.7 she v_48 v_72 0.6 she v_49 v_72 0.6 she v_53 v_72 0.7 she v_57 v_72 0.6 she v_71 v_72 0.6 she v_81 v_72 0.7 she v_96 v_72 0.6 she v_54 v_73 0.6 she v_57 v_73 0.6 she v_96 v_73 0.7 she v_97 v_73 0.6 she v_49 v_74 0.6 she v_50 v_74 0.7 she v_54 v_74 0.6 she v_55 v_74 0.6 she v_58 v_74 0.7 she v_82 v_74 0.6 she v_87 v_74 0.6 she v_89 v_74 0.6 she v_96 v_74 0.7 she v_97 v_74 0.6 she v_98 v_74 0.6 she v_61 v_76 0.7 she v_99 v_76 0.6 she v_100 v_76 0.6 she v_51 v_77 0.7 she v_61 v_77 0.6 she v_69 v_77 0.6 she v_99 v_77 0.6 she v_100 v_77 0.7 she v_44 v_78 0.6 she v_52 v_78 0.6 she v_83 v_78 0.7 she v_102 v_78 0.6 she v_55 v_79 0.6 she v_56 v_79 0.7 she v_81 v_79 0.6 she v_97 v_79 0.6 she v_104 v_79 0.6 she v_55 v_80 0.7 she v_56 v_80 0.6 she v_89 v_80 0.6 she v_104 v_80 0.7 she v_66 v_81 0.6 she v_72 v_81 0.6 she v_79 v_81 0.7 she v_96 v_81 0.6 she v_105 v_81 0.6 she v_57 v_82 0.6 she v_58 v_82 0.7 she v_74 v_82 0.6 she v_97 v_82 0.6 she v_105 v_82 0.7 she v_60 v_83 0.6 she v_68 v_83 0.6 she v_69 v_83 0.7 she v_78 v_83 0.6 she v_106 v_83 0.6 she v_62 v_84 0.6 she v_70 v_84 0.7 she v_94 v_84 0.6 she v_101 v_84 0.6 she v_107 v_84 0.7 she v_71 v_85 0.6 she v_86 v_85 0.6 she v_95 v_85 0.7 she v_101 v_85 0.6 she v_107 v_85 0.6 she v_85 v_86 0.6 she v_93 v_86 0.7 she v_65 v_87 0.6 she v_66 v_87 0.6 she v_70 v_87 0.7 she v_71 v_87 0.6 she v_74 v_87 0.6 she v_97 v_87 0.7 she v_65 v_88 0.6 she v_66 v_88 0.6 she v_89 v_88 0.6 she v_98 v_88 0.7 she v_103 v_88 0.6 she v_105 v_88 0.6 she v_109 v_88 0.7 she v_110 v_88 0.6 she v_67 v_89 0.6 she v_74 v_89 0.7 she v_80 v_89 0.6 she v_88 v_89 0.6 she v_96 v_89 0.7 she v_110 v_89 0.6 she v_111 v_89 0.6 she v_68 v_90 0.6 she v_106 v_90 0.7 she v_68 v_91 0.6 she v_106 v_91 0.6 she v_107 v_91 0.7 she v_68 v_92 0.6 she v_107 v_92 0.6 she v_114 v_92 0.7 she v_69 v_93 0.6 she v_70 v_93 0.6 she v_86 v_93 0.7 she v_95 v_93 0.6 she v_101 v_93 0.6 she v_106 v_93 0.6 she v_107 v_93 0.7 she v_108 v_93 0.6 she v_115 v_93 0.6 she v_70 v_94 0.7 she v_71 v_94 0.6 she v_84 v_94 0.6 she v_102 v_94 0.7 she v_85 v_95 0.6 she v_93 v_95 0.6 she v_104 v_95 0.6 she v_72 v_96 0.7 she v_73 v_96 0.6 she v_74 v_96 0.6 she v_81 v_96 0.7 she v_89 v_96 0.6 she v_98 v_96 0.6 she v_103 v_96 0.7 she v_109 v_96 0.6 she v_73 v_97 0.6 she v_74 v_97 0.6 she v_79 v_97 0.7 she v_82 v_97 0.6 she v_87 v_97 0.6 she v_117 v_97 0.7 she v_74 v_98 0.6 she v_88 v_98 0.6 she v_96 v_98 0.7 she v_117 v_98 0.6 she v_76 v_99 0.6 she v_77 v_99 0.6 she v_107 v_99 0.7 she v_118 v_99 0.6 she v_128 v_99 0.6 she v_76 v_100 0.7 she v_77 v_100 0.6 she v_102 v_100 0.6 she v_115 v_100 0.7 she v_118 v_100 0.6 she v_84 v_101 0.6 she v_85 v_101 0.7 she v_93 v_101 0.6 she v_112 v_101 0.6 she v_113 v_101 0.7 she v_118 v_101 0.6 she v_119 v_101 0.6 she v_120 v_101 0.7 she v_78 v_102 0.6 she v_94 v_102 0.6 she v_100 v_102 0.7 she v_114 v_102 0.6 she v_119 v_102 0.6 she v_120 v_102 0.7 she v_71 v_103 0.6 she v_88 v_103 0.6 she v_96 v_103 0.7 she v_122 v_103 0.6 she v_123 v_103 0.6 she v_124 v_103 0.7 she v_79 v_104 0.6 she v_80 v_104 0.6 she v_95 v_104 0.7 she v_122 v_104 0.6 she v_123 v_104 0.6 she v_124 v_104 0.7 she v_81 v_105 0.6 she v_82 v_105 0.6 she v_88 v_105 0.7 she v_126 v_105 0.6 she v_83 v_106 0.6 she v_90 v_106 0.7 she v_91 v_106 0.6 she v_93 v_106 0.6 she v_112 v_106 0.7 she v_118 v_106 0.6 she v_84 v_107 0.6 she v_85 v_107 0.7 she v_91 v_107 0.6 she v_92 v_107 0.6 she v_93 v_107 0.7 she v_99 v_107 0.6 she v_113 v_107 0.6 she v_129 v_107 0.7 she v_93 v_108 0.6 she v_109 v_108 0.6 she v_121 v_108 0.7 she v_122 v_108 0.6 she v_131 v_108 0.6 she v_88 v_109 0.7 she v_96 v_109 0.6 she v_108 v_109 0.6 she v_134 v_109 0.7 she v_135 v_109 0.6 she v_88 v_110 0.6 she v_89 v_110 0.7 she v_116 v_110 0.6 she v_124 v_110 0.6 she v_136 v_110 0.7 she v_89 v_111 0.6 she v_101 v_112 0.6 she v_106 v_112 0.7 she v_119 v_112 0.6 she v_129 v_112 0.6 she v_143 v_112 0.7 she v_144 v_112 0.6 she v_101 v_113 0.6 she v_107 v_113 0.7 she v_120 v_113 0.6 she v_143 v_113 0.6 she v_92 v_114 0.7 she v_102 v_114 0.6 she v_115 v_114 0.6 she v_137 v_114 0.7 she v_93 v_115 0.6 she v_100 v_115 0.6 she v_114 v_115 0.7 she v_121 v_115 0.6 she v_132 v_115 0.6 she v_137 v_115 0.7 she v_110 v_116 0.6 she v_140 v_116 0.6 she v_141 v_116 0.7 she v_97 v_117 0.6 she v_98 v_117 0.6 she v_99 v_118 0.7 she v_100 v_118 0.6 she v_101 v_118 0.6 she v_106 v_118 0.7 she v_120 v_118 0.6 she v_143 v_118 0.6 she v_144 v_118 0.7 she v_101 v_119 0.6 she v_102 v_119 0.6 she v_112 v_119 0.7 she v_128 v_119 0.6 she v_130 v_119 0.6 she v_101 v_120 0.7 she v_102 v_120 0.6 she v_113 v_120 0.6 she v_118 v_120 0.7 she v_130 v_120 0.6 she v_146 v_120 0.6 she v_108 v_121 0.7 she v_115 v_121 0.6 she v_139 v_121 0.6 she v_146 v_121 0.7 she v_103 v_122 0.6 she v_104 v_122 0.6 she v_108 v_122 0.7 she v_133 v_122 0.6 she v_136 v_122 0.6 she v_148 v_122 0.7 she v_149 v_122 0.6 she v_103 v_123 0.6 she v_104 v_123 0.7 she v_133 v_123 0.6 she v_136 v_123 0.6 she v_148 v_123 0.7 she v_149 v_123 0.6 she v_103 v_124 0.6 she v_104 v_124 0.7 she v_110 v_124 0.6 she v_139 v_124 0.6 she v_148 v_124 0.7 she v_149 v_124 0.6 she v_105 v_126 0.6 she v_99 v_128 0.7 she v_119 v_128 0.6 she v_129 v_128 0.6 she v_107 v_129 0.7 she v_112 v_129 0.6 she v_128 v_129 0.6 she v_130 v_129 0.7 she v_143 v_129 0.6 she v_144 v_129 0.6 she v_146 v_129 0.7 she v_119 v_130 0.6 she v_120 v_130 0.6 she v_129 v_130 0.7 she v_108 v_131 0.6 she v_137 v_131 0.6 she v_139 v_131 0.7 she v_145 v_131 0.6 she v_115 v_132 0.6 she v_122 v_133 0.7 she v_123 v_133 0.6 she v_141 v_133 0.6 she v_146 v_133 0.7 she v_109 v_134 0.6 she v_136 v_134 0.6 she v_109 v_135 0.7 she v_139 v_135 0.6 she v_110 v_136 0.6 she v_122 v_136 0.7 she v_123 v_136 0.6 she v_134 v_136 0.6 she v_141 v_136 0.7 she v_142 v_136 0.6 she v_148 v_136 0.6 she v_149 v_136 0.7 she v_114 v_137 0.6 she v_115 v_137 0.6 she v_131 v_137 0.7 she v_140 v_138 0.6 she v_145 v_138 0.6 she v_121 v_139 0.7 she v_124 v_139 0.6 she v_131 v_139 0.6 she v_135 v_139 0.7 she v_146 v_139 0.6 she v_116 v_140 0.6 she v_138 v_140 0.7 she v_116 v_141 0.6 she v_133 v_141 0.6 she v_136 v_141 0.7 she v_136 v_142 0.6 she v_112 v_143 0.6 she v_113 v_143 0.7 she v_118 v_143 0.6 she v_129 v_143 0.6 she v_112 v_144 0.7 she v_118 v_144 0.6 she v_129 v_144 0.6 she v_131 v_145 0.7 she v_138 v_145 0.6 she v_147 v_145 0.6 she v_120 v_146 0.7 she v_121 v_146 0.6 she v_129 v_146 0.6 she v_133 v_146 0.7 she v_139 v_146 0.6 she v_145 v_147 0.6 she v_122 v_148 0.7 she v_123 v_148 0.6 she v_124 v_148 0.6 she v_136 v_148 0.7 she v_122 v_149 0.6 she v_123 v_149 0.6 she v_124 v_149 0.7 she v_136 v_149 0.6 she v_19 v_0 0.6 she v_2 v_1 0.5 she v_12 v_1 0.6 she v_20 v_1 0.5 she v_1 v_2 0.5 she v_18 v_2 0.6 she v_4 v_3 0.5 she v_5 v_3 0.5 she v_3 v_4 0.5 she v_21 v_4 0.6 she v_3 v_5 0.5 she v_24 v_6 0.5 she v_26 v_6 0.6 she v_14 v_7 0.5 she v_27 v_7 0.5 she v_27 v_8 0.5 she v_11 v_9 0.6 she v_19 v_9 0.5 she v_11 v_10 0.5 she v_19 v_10 0.6 she v_28 v_10 0.5 she v_29 v_10 0.5 she v_9 v_11 0.5 she v_10 v_11 0.6 she v_17 v_11 0.5 she v_21 v_11 0.5 she v_1 v_12 0.6 she v_18 v_12 0.5 she v_30 v_13 0.5 she v_31 v_13 0.6 she v_7 v_14 0.5 she v_25 v_14 0.5 she v_26 v_15 0.5 she v_24 v_16 0.6 she v_33 v_16 0.5 she v_34 v_16 0.5 she v_36 v_16 0.6 she v_11 v_17 0.5 she v_28 v_17 0.5 she v_29 v_17 0.6 she v_2 v_18 0.5 she v_12 v_18 0.5 she v_20 v_18 0.5 she v_0 v_19 0.6 she v_9 v_19 0.5 she v_10 v_19 0.5 she v_37 v_19 0.6 she v_1 v_20 0.5 she v_18 v_20 0.5 she v_39 v_20 0.6 she v_4 v_21 0.5 she v_11 v_21 0.5 she v_22 v_21 0.5 she v_39 v_21 0.6 she v_40 v_21 0.5 she v_21 v_22 0.5 she v_31 v_22 0.6 she v_39 v_22 0.5 she v_40 v_22 0.5 she v_41 v_22 0.6 she v_31 v_23 0.5 she v_32 v_23 0.5 she v_34 v_23 0.5 she v_6 v_24 0.6 she v_16 v_24 0.5 she v_25 v_24 0.5 she v_32 v_24 0.6 she v_14 v_25 0.5 she v_24 v_25 0.5 she v_33 v_25 0.6 she v_6 v_26 0.5 she v_15 v_26 0.5 she v_34 v_26 0.5 she v_7 v_27 0.6 she v_8 v_27 0.5 she v_10 v_28 0.5 she v_17 v_28 0.6 she v_37 v_28 0.5 she v_10 v_29 0.5 she v_17 v_29 0.6 she v_37 v_29 0.5 she v_13 v_30 0.5 she v_31 v_30 0.5 she v_42 v_30 0.6 she v_13 v_31 0.5 she v_22 v_31 0.5 she v_23 v_31 0.6 she v_30 v_31 0.5 she v_46 v_31 0.5 she v_48 v_31 0.6 she v_23 v_32 0.5 she v_24 v_32 0.5 she v_33 v_32 0.5 she v_41 v_32 0.6 she v_48 v_32 0.5 she v_16 v_33 0.5 she v_25 v_33 0.6 she v_32 v_33 0.5 she v_49 v_33 0.5 she v_16 v_34 0.6 she v_23 v_34 0.5 she v_26 v_34 0.5 she v_35 v_34 0.5 she v_34 v_35 0.6 she v_50 v_35 0.5 she v_16 v_36 0.5 she v_50 v_36 0.6 she v_19 v_37 0.5 she v_28 v_37 0.5 she v_29 v_37 0.6 she v_43 v_38 0.5 she v_20 v_39 0.5 she v_21 v_39 0.5 she v_22 v_39 0.6 she v_41 v_39 0.5 she v_21 v_40 0.5 she v_22 v_40 0.6 she v_41 v_40 0.5 she v_22 v_41 0.5 she v_32 v_41 0.6 she v_39 v_41 0.5 she v_40 v_41 0.5 she v_45 v_41 0.5 she v_48 v_41 0.6 she v_53 v_41 0.5 she v_30 v_42 0.5 she v_46 v_42 0.6 she v_54 v_42 0.5 she v_38 v_43 0.5 she v_62 v_43 0.6 she v_68 v_43 0.5 she v_46 v_44 0.5 she v_62 v_44 0.5 she v_41 v_45 0.6 she v_31 v_46 0.5 she v_42 v_46 0.5 she v_44 v_46 0.6 she v_47 v_46 0.5 she v_46 v_47 0.5 she v_55 v_47 0.6 she v_31 v_48 0.5 she v_32 v_48 0.5 she v_41 v_48 0.5 she v_65 v_48 0.6 she v_33 v_49 0.5 she v_56 v_49 0.5 she v_57 v_49 0.6 she v_73 v_49 0.5 she v_35 v_50 0.5 she v_36 v_50 0.6 she v_56 v_50 0.5 she v_75 v_50 0.5 she v_62 v_51 0.5 she v_63 v_52 0.6 she v_68 v_52 0.5 she v_69 v_52 0.5 she v_41 v_53 0.6 she v_65 v_53 0.5 she v_42 v_54 0.5 she v_66 v_54 0.6 she v_71 v_54 0.5 she v_72 v_54 0.5 she v_47 v_55 0.5 she v_56 v_55 0.6 she v_72 v_55 0.5 she v_73 v_55 0.5 she v_49 v_56 0.6 she v_50 v_56 0.5 she v_55 v_56 0.5 she v_59 v_56 0.6 she v_65 v_56 0.5 she v_72 v_56 0.5 she v_73 v_56 0.5 she v_74 v_56 0.6 she v_49 v_57 0.5 she v_66 v_57 0.5 she v_74 v_57 0.6 she v_75 v_57 0.5 she v_56 v_59 0.5 she v_82 v_59 0.6 she v_63 v_60 0.5 she v_76 v_60 0.5 she v_77 v_60 0.5 she v_78 v_60 0.6 she v_64 v_61 0.5 she v_43 v_62 0.5 she v_44 v_62 0.6 she v_51 v_62 0.5 she v_52 v_63 0.5 she v_60 v_63 0.6 she v_70 v_63 0.5 she v_61 v_64 0.5 she v_70 v_64 0.5 she v_71 v_64 0.6 she v_78 v_64 0.5 she v_48 v_65 0.5 she v_53 v_65 0.6 she v_56 v_65 0.5 she v_79 v_65 0.5 she v_80 v_65 0.6 she v_54 v_66 0.5 she v_57 v_66 0.5 she v_79 v_66 0.5 she v_80 v_66 0.6 she v_81 v_67 0.5 she v_43 v_68 0.5 she v_52 v_68 0.6 she v_78 v_68 0.5 she v_52 v_69 0.5 she v_84 v_69 0.6 she v_85 v_69 0.5 she v_63 v_70 0.5 she v_64 v_70 0.5 she v_85 v_70 0.6 she v_95 v_70 0.5 she v_54 v_71 0.5 she v_64 v_71 0.6 she v_95 v_71 0.5 she v_54 v_72 0.5 she v_55 v_72 0.6 she v_56 v_72 0.5 she v_87 v_72 0.5 she v_88 v_72 0.5 she v_49 v_73 0.6 she v_55 v_73 0.5 she v_56 v_73 0.5 she v_81 v_73 0.6 she v_87 v_73 0.5 she v_56 v_74 0.5 she v_57 v_74 0.6 she v_79 v_74 0.5 she v_81 v_74 0.5 she v_88 v_74 0.5 she v_50 v_75 0.6 she v_57 v_75 0.5 she v_98 v_75 0.5 she v_60 v_76 0.6 she v_60 v_77 0.5 she v_60 v_78 0.5 she v_64 v_78 0.6 she v_68 v_78 0.5 she v_93 v_78 0.5 she v_65 v_79 0.5 she v_66 v_79 0.6 she v_74 v_79 0.5 she v_96 v_79 0.5 she v_65 v_80 0.6 she v_66 v_80 0.5 she v_81 v_80 0.5 she v_97 v_80 0.6 she v_67 v_81 0.5 she v_73 v_81 0.5 she v_74 v_81 0.5 she v_80 v_81 0.6 she v_88 v_81 0.5 she v_97 v_81 0.5 she v_59 v_82 0.6 she v_99 v_83 0.5 she v_101 v_83 0.5 she v_69 v_84 0.6 she v_69 v_85 0.5 she v_70 v_85 0.5 she v_103 v_86 0.5 she v_72 v_87 0.6 she v_73 v_87 0.5 she v_103 v_87 0.5 she v_109 v_87 0.6 she v_72 v_88 0.5 she v_74 v_88 0.5 she v_81 v_88 0.6 she v_104 v_88 0.5 she v_105 v_89 0.5 she v_101 v_90 0.6 she v_101 v_91 0.5 she v_106 v_92 0.5 she v_78 v_93 0.5 she v_103 v_94 0.6 she v_70 v_95 0.5 she v_71 v_95 0.5 she v_79 v_96 0.6 she v_104 v_96 0.5 she v_105 v_96 0.5 she v_110 v_96 0.6 she v_111 v_96 0.5 she v_80 v_97 0.5 she v_81 v_97 0.5 she v_75 v_98 0.6 she v_110 v_98 0.5 she v_83 v_99 0.5 she v_106 v_99 0.6 she v_112 v_99 0.5 she v_113 v_99 0.5 she v_114 v_99 0.6 she v_107 v_100 0.5 she v_112 v_100 0.5 she v_113 v_100 0.6 she v_114 v_100 0.5 she v_83 v_101 0.5 she v_90 v_101 0.6 she v_91 v_101 0.5 she v_114 v_101 0.5 she v_115 v_101 0.6 she v_115 v_102 0.5 she v_86 v_103 0.5 she v_87 v_103 0.6 she v_94 v_103 0.5 she v_116 v_103 0.5 she v_88 v_104 0.6 she v_96 v_104 0.5 she v_108 v_104 0.5 she v_89 v_105 0.6 she v_96 v_105 0.5 she v_125 v_105 0.5 she v_92 v_106 0.6 she v_99 v_106 0.5 she v_113 v_106 0.5 she v_119 v_106 0.6 she v_129 v_106 0.5 she v_100 v_107 0.5 she v_114 v_107 0.6 she v_120 v_107 0.5 she v_104 v_108 0.5 she v_87 v_109 0.6 she v_122 v_109 0.5 she v_96 v_110 0.5 she v_98 v_110 0.6 she v_126 v_110 0.5 she v_127 v_110 0.5 she v_96 v_111 0.6 she v_136 v_111 0.5 she v_142 v_111 0.5 she v_99 v_112 0.6 she v_100 v_112 0.5 she v_99 v_113 0.5 she v_100 v_113 0.6 she v_106 v_113 0.5 she v_119 v_113 0.5 she v_129 v_113 0.6 she v_99 v_114 0.5 she v_100 v_114 0.5 she v_101 v_114 0.6 she v_107 v_114 0.5 she v_120 v_114 0.5 she v_129 v_114 0.6 she v_101 v_115 0.5 she v_102 v_115 0.5 she v_129 v_115 0.6 she v_130 v_115 0.5 she v_131 v_115 0.5 she v_103 v_116 0.6 she v_134 v_116 0.5 she v_136 v_116 0.5 she v_129 v_118 0.6 she v_106 v_119 0.5 she v_113 v_119 0.5 she v_145 v_119 0.6 she v_107 v_120 0.5 she v_114 v_120 0.5 she v_145 v_120 0.6 she v_147 v_121 0.5 she v_109 v_122 0.5 she v_139 v_122 0.6 she v_139 v_123 0.5 she v_141 v_123 0.5 she v_140 v_124 0.6 she v_141 v_124 0.5 she v_105 v_125 0.5 she v_110 v_126 0.6 she v_110 v_127 0.5 she v_136 v_127 0.5 she v_106 v_129 0.6 she v_113 v_129 0.5 she v_114 v_129 0.5 she v_115 v_129 0.6 she v_118 v_129 0.5 she v_115 v_130 0.5 she v_133 v_130 0.6 she v_115 v_131 0.5 she v_139 v_132 0.5 she v_130 v_133 0.6 she v_134 v_133 0.5 she v_140 v_133 0.5 she v_116 v_134 0.6 she v_133 v_134 0.5 she v_111 v_136 0.5 she v_116 v_136 0.6 she v_127 v_136 0.5 she v_139 v_138 0.5 she v_122 v_139 0.6 she v_123 v_139 0.5 she v_132 v_139 0.5 she v_138 v_139 0.6 she v_147 v_139 0.5 she v_148 v_139 0.5 she v_149 v_139 0.6 she v_124 v_140 0.5 she v_133 v_140 0.5 she v_123 v_141 0.6 she v_124 v_141 0.5 she v_111 v_142 0.5 she v_119 v_145 0.6 she v_120 v_145 0.5 she v_121 v_147 0.5 she v_139 v_147 0.6 she v_139 v_148 0.5 she v_139 v_149 0.5 she v_11 v_0 0.6 she v_18 v_0 0.5 she v_9 v_1 0.4 she v_11 v_1 0.4 she v_17 v_1 0.5 she v_18 v_1 0.4 she v_19 v_1 0.4 she v_19 v_2 0.5 she v_21 v_2 0.4 she v_11 v_3 0.4 she v_19 v_3 0.6 she v_21 v_3 0.5 she v_14 v_6 0.4 she v_25 v_6 0.4 she v_25 v_7 0.5 she v_26 v_7 0.6 she v_15 v_8 0.4 she v_25 v_8 0.4 she v_26 v_8 0.5 she v_1 v_9 0.4 she v_18 v_9 0.4 she v_28 v_9 0.5 she v_29 v_9 0.4 she v_18 v_10 0.4 she v_0 v_11 0.6 she v_1 v_11 0.5 she v_3 v_11 0.4 she v_18 v_11 0.4 she v_19 v_11 0.5 she v_21 v_12 0.4 she v_6 v_14 0.4 she v_16 v_14 0.4 she v_33 v_14 0.5 she v_34 v_14 0.4 she v_8 v_15 0.4 she v_16 v_15 0.5 she v_23 v_15 0.4 she v_24 v_15 0.4 she v_25 v_15 0.5 she v_33 v_15 0.4 she v_34 v_15 0.4 she v_14 v_16 0.4 she v_15 v_16 0.5 she v_25 v_16 0.4 she v_26 v_16 0.4 she v_27 v_16 0.5 she v_35 v_16 0.6 she v_1 v_17 0.4 she v_19 v_17 0.6 she v_37 v_17 0.5 she v_38 v_17 0.4 she v_0 v_18 0.4 she v_1 v_18 0.5 she v_9 v_18 0.4 she v_10 v_18 0.4 she v_11 v_18 0.5 she v_19 v_18 0.4 she v_37 v_18 0.4 she v_38 v_18 0.5 she v_1 v_19 0.4 she v_2 v_19 0.4 she v_3 v_19 0.6 she v_11 v_19 0.5 she v_17 v_19 0.6 she v_18 v_19 0.4 she v_21 v_19 0.5 she v_38 v_19 0.4 she v_2 v_21 0.4 she v_3 v_21 0.4 she v_12 v_21 0.5 she v_19 v_21 0.4 she v_30 v_22 0.4 she v_15 v_23 0.5 she v_15 v_24 0.4 she v_6 v_25 0.4 she v_7 v_25 0.4 she v_8 v_25 0.5 she v_15 v_25 0.4 she v_16 v_25 0.4 she v_34 v_25 0.5 she v_36 v_25 0.4 she v_7 v_26 0.6 she v_8 v_26 0.4 she v_16 v_26 0.5 she v_16 v_27 0.4 she v_9 v_28 0.4 she v_43 v_28 0.5 she v_9 v_29 0.4 she v_43 v_29 0.4 she v_22 v_30 0.4 she v_39 v_30 0.6 she v_40 v_30 0.5 she v_41 v_30 0.4 she v_45 v_30 0.5 she v_46 v_30 0.6 she v_32 v_31 0.4 she v_41 v_31 0.5 she v_47 v_31 0.4 she v_31 v_32 0.4 she v_47 v_32 0.6 she v_14 v_33 0.5 she v_15 v_33 0.4 she v_34 v_33 0.4 she v_14 v_34 0.5 she v_15 v_34 0.4 she v_25 v_34 0.4 she v_33 v_34 0.5 she v_16 v_35 0.6 she v_25 v_36 0.4 she v_17 v_37 0.4 she v_18 v_37 0.5 she v_43 v_37 0.4 she v_52 v_37 0.4 she v_17 v_38 0.5 she v_18 v_38 0.4 she v_19 v_38 0.4 she v_52 v_38 0.6 she v_30 v_39 0.5 she v_44 v_39 0.5 she v_46 v_39 0.5 she v_30 v_40 0.5 she v_30 v_41 0.4 she v_31 v_41 0.4 she v_42 v_41 0.5 she v_46 v_41 0.4 she v_47 v_41 0.4 she v_41 v_42 0.5 she v_48 v_42 0.4 she v_53 v_42 0.4 she v_28 v_43 0.4 she v_29 v_43 0.5 she v_37 v_43 0.4 she v_52 v_43 0.4 she v_60 v_43 0.5 she v_61 v_43 0.4 she v_39 v_44 0.4 she v_63 v_44 0.5 she v_64 v_44 0.4 she v_30 v_45 0.4 she v_30 v_46 0.6 she v_39 v_46 0.6 she v_41 v_46 0.5 she v_31 v_47 0.4 she v_32 v_47 0.6 she v_41 v_47 0.5 she v_48 v_47 0.4 she v_54 v_47 0.5 she v_42 v_48 0.4 she v_47 v_48 0.4 she v_49 v_48 0.6 she v_54 v_48 0.5 she v_55 v_48 0.4 she v_48 v_49 0.6 she v_54 v_49 0.6 she v_55 v_49 0.5 she v_65 v_49 0.4 she v_66 v_49 0.5 she v_67 v_50 0.4 she v_52 v_51 0.6 she v_61 v_51 0.4 she v_37 v_52 0.5 she v_38 v_52 0.6 she v_43 v_52 0.4 she v_51 v_52 0.6 she v_42 v_53 0.5 she v_55 v_53 0.4 she v_71 v_53 0.6 she v_47 v_54 0.5 she v_48 v_54 0.4 she v_49 v_54 0.5 she v_55 v_54 0.5 she v_65 v_54 0.4 she v_48 v_55 0.4 she v_49 v_55 0.5 she v_53 v_55 0.4 she v_54 v_55 0.4 she v_65 v_55 0.5 she v_66 v_55 0.4 she v_57 v_56 0.4 she v_58 v_56 0.4 she v_66 v_56 0.5 she v_56 v_57 0.4 she v_67 v_57 0.4 she v_56 v_58 0.5 she v_75 v_58 0.4 she v_43 v_60 0.4 she v_62 v_60 0.5 she v_69 v_60 0.6 she v_43 v_61 0.4 she v_51 v_61 0.4 she v_63 v_61 0.5 she v_78 v_61 0.6 she v_60 v_62 0.4 she v_68 v_62 0.5 she v_44 v_63 0.4 she v_61 v_63 0.4 she v_78 v_63 0.6 she v_44 v_64 0.5 she v_69 v_64 0.4 she v_49 v_65 0.4 she v_54 v_65 0.5 she v_55 v_65 0.4 she v_66 v_65 0.4 she v_72 v_65 0.5 she v_73 v_65 0.4 she v_74 v_65 0.6 she v_49 v_66 0.5 she v_55 v_66 0.4 she v_56 v_66 0.4 she v_65 v_66 0.4 she v_72 v_66 0.5 she v_73 v_66 0.4 she v_74 v_66 0.4 she v_50 v_67 0.5 she v_57 v_67 0.4 she v_62 v_68 0.4 she v_69 v_68 0.6 she v_76 v_68 0.5 she v_77 v_68 0.4 she v_60 v_69 0.5 she v_64 v_69 0.5 she v_68 v_69 0.6 she v_53 v_71 0.5 she v_65 v_72 0.5 she v_66 v_72 0.4 she v_74 v_72 0.4 she v_79 v_72 0.5 she v_80 v_72 0.4 she v_65 v_73 0.4 she v_66 v_73 0.4 she v_88 v_73 0.5 she v_65 v_74 0.6 she v_66 v_74 0.4 she v_72 v_74 0.5 she v_80 v_74 0.4 she v_58 v_75 0.4 she v_81 v_75 0.6 she v_89 v_75 0.5 she v_68 v_76 0.5 she v_83 v_76 0.4 she v_90 v_76 0.5 she v_92 v_76 0.4 she v_68 v_77 0.4 she v_83 v_77 0.5 she v_90 v_77 0.4 she v_91 v_77 0.4 she v_92 v_77 0.5 she v_61 v_78 0.6 she v_63 v_78 0.5 she v_84 v_78 0.4 she v_85 v_78 0.5 she v_72 v_79 0.4 she v_87 v_79 0.4 she v_88 v_79 0.5 she v_72 v_80 0.4 she v_74 v_80 0.4 she v_87 v_80 0.5 she v_96 v_80 0.4 she v_75 v_81 0.6 she v_82 v_81 0.4 she v_89 v_81 0.5 she v_98 v_81 0.6 she v_81 v_82 0.4 she v_98 v_82 0.5 she v_76 v_83 0.4 she v_77 v_83 0.4 she v_90 v_83 0.5 she v_100 v_83 0.4 she v_78 v_84 0.4 she v_102 v_84 0.4 she v_78 v_85 0.5 she v_94 v_85 0.6 she v_79 v_87 0.4 she v_80 v_87 0.5 she v_88 v_87 0.4 she v_96 v_87 0.6 she v_104 v_87 0.5 she v_73 v_88 0.4 she v_79 v_88 0.4 she v_87 v_88 0.4 she v_97 v_88 0.5 she v_75 v_89 0.6 she v_81 v_89 0.4 she v_97 v_89 0.5 she v_76 v_90 0.4 she v_77 v_90 0.4 she v_83 v_90 0.5 she v_99 v_90 0.4 she v_100 v_90 0.4 she v_77 v_91 0.4 she v_76 v_92 0.5 she v_77 v_92 0.4 she v_101 v_92 0.4 she v_94 v_93 0.5 she v_102 v_93 0.4 she v_85 v_94 0.6 she v_93 v_94 0.5 she v_103 v_95 0.4 she v_80 v_96 0.4 she v_87 v_96 0.6 she v_97 v_96 0.5 she v_88 v_97 0.4 she v_89 v_97 0.4 she v_96 v_97 0.5 she v_98 v_97 0.4 she v_105 v_97 0.4 she v_110 v_97 0.6 she v_111 v_97 0.5 she v_81 v_98 0.5 she v_82 v_98 0.4 she v_97 v_98 0.5 she v_105 v_98 0.4 she v_111 v_98 0.6 she v_90 v_99 0.5 she v_101 v_99 0.4 she v_83 v_100 0.4 she v_90 v_100 0.5 she v_106 v_100 0.4 she v_92 v_101 0.4 she v_99 v_101 0.5 she v_102 v_101 0.4 she v_106 v_101 0.4 she v_84 v_102 0.5 she v_93 v_102 0.4 she v_101 v_102 0.4 she v_106 v_102 0.5 she v_107 v_102 0.4 she v_95 v_103 0.4 she v_108 v_103 0.5 she v_87 v_104 0.4 she v_116 v_104 0.6 she v_97 v_105 0.5 she v_98 v_105 0.4 she v_117 v_105 0.4 she v_100 v_106 0.5 she v_101 v_106 0.4 she v_102 v_106 0.4 she v_114 v_106 0.6 she v_115 v_106 0.5 she v_120 v_106 0.5 she v_102 v_107 0.5 she v_115 v_107 0.4 she v_119 v_107 0.6 she v_103 v_108 0.5 she v_116 v_109 0.4 she v_123 v_109 0.4 she v_124 v_109 0.5 she v_97 v_110 0.6 she v_125 v_110 0.4 she v_97 v_111 0.5 she v_98 v_111 0.6 she v_126 v_111 0.4 she v_127 v_111 0.5 she v_106 v_114 0.6 she v_119 v_114 0.4 she v_128 v_114 0.5 she v_106 v_115 0.4 she v_107 v_115 0.4 she v_119 v_115 0.5 she v_120 v_115 0.4 she v_104 v_116 0.6 she v_109 v_116 0.5 she v_122 v_116 0.4 she v_135 v_116 0.4 she v_105 v_117 0.5 she v_136 v_117 0.4 she v_142 v_117 0.4 she v_119 v_118 0.5 she v_107 v_119 0.6 she v_114 v_119 0.4 she v_115 v_119 0.5 she v_118 v_119 0.4 she v_137 v_119 0.4 she v_106 v_120 0.6 she v_115 v_120 0.5 she v_137 v_120 0.4 she v_133 v_121 0.5 she v_138 v_121 0.4 she v_116 v_122 0.4 she v_124 v_122 0.5 she v_135 v_122 0.6 she v_140 v_122 0.4 she v_141 v_122 0.6 she v_109 v_123 0.5 she v_134 v_123 0.4 she v_135 v_123 0.5 she v_140 v_123 0.6 she v_109 v_124 0.4 she v_122 v_124 0.5 she v_134 v_124 0.4 she v_136 v_124 0.4 she v_110 v_125 0.5 she v_111 v_126 0.4 she v_136 v_126 0.4 she v_111 v_127 0.5 she v_114 v_128 0.4 she v_145 v_129 0.4 she v_137 v_130 0.6 she v_138 v_130 0.5 she v_145 v_130 0.4 she v_147 v_130 0.5 she v_133 v_131 0.4 she v_146 v_131 0.4 she v_146 v_132 0.5 she v_121 v_133 0.4 she v_131 v_133 0.4 she v_139 v_133 0.6 she v_147 v_133 0.5 she v_123 v_134 0.4 she v_124 v_134 0.5 she v_135 v_134 0.4 she v_139 v_134 0.4 she v_148 v_134 0.5 she v_149 v_134 0.4 she v_116 v_135 0.4 she v_122 v_135 0.6 she v_123 v_135 0.5 she v_134 v_135 0.4 she v_136 v_135 0.5 she v_140 v_135 0.6 she v_141 v_135 0.4 she v_148 v_135 0.5 she v_117 v_136 0.4 she v_124 v_136 0.4 she v_126 v_136 0.5 she v_135 v_136 0.4 she v_119 v_137 0.4 she v_120 v_137 0.5 she v_130 v_137 0.6 she v_121 v_138 0.4 she v_130 v_138 0.5 she v_133 v_139 0.6 she v_134 v_139 0.4 she v_141 v_139 0.5 she v_122 v_140 0.4 she v_123 v_140 0.6 she v_135 v_140 0.6 she v_122 v_141 0.5 she v_135 v_141 0.5 she v_139 v_141 0.5 she v_117 v_142 0.4 she v_129 v_145 0.4 she v_130 v_145 0.5 she v_131 v_146 0.4 she v_132 v_146 0.4 she v_147 v_146 0.5 she v_130 v_147 0.4 she v_133 v_147 0.4 she v_146 v_147 0.5 she v_134 v_148 0.4 she v_135 v_148 0.4 she v_134 v_149 0.5 she v_1 v_0 0.4 she v_9 v_0 0.3 she v_17 v_0 0.3 she v_0 v_1 0.5 she v_10 v_1 0.3 she v_3 v_2 0.4 she v_11 v_2 0.5 she v_20 v_2 0.3 she v_2 v_3 0.4 she v_12 v_3 0.3 she v_20 v_3 0.5 she v_22 v_4 0.3 she v_7 v_6 0.3 she v_8 v_6 0.5 she v_15 v_6 0.4 she v_16 v_6 0.3 she v_6 v_7 0.3 she v_15 v_7 0.5 she v_16 v_7 0.3 she v_6 v_8 0.4 she v_16 v_8 0.3 she v_0 v_9 0.3 she v_17 v_9 0.3 she v_1 v_10 0.3 she v_17 v_10 0.3 she v_2 v_11 0.5 she v_12 v_11 0.4 she v_20 v_11 0.5 she v_3 v_12 0.3 she v_11 v_12 0.4 she v_19 v_12 0.4 she v_20 v_12 0.3 she v_22 v_13 0.3 she v_15 v_14 0.5 she v_23 v_14 0.5 she v_24 v_14 0.3 she v_6 v_15 0.4 she v_7 v_15 0.5 she v_14 v_15 0.4 she v_6 v_16 0.3 she v_7 v_16 0.3 she v_8 v_16 0.3 she v_0 v_17 0.3 she v_9 v_17 0.3 she v_10 v_17 0.3 she v_18 v_17 0.5 she v_17 v_18 0.4 she v_12 v_19 0.4 she v_20 v_19 0.5 she v_2 v_20 0.3 she v_3 v_20 0.4 she v_11 v_20 0.5 she v_12 v_20 0.3 she v_19 v_20 0.4 she v_21 v_20 0.5 she v_20 v_21 0.4 she v_4 v_22 0.3 she v_13 v_22 0.3 she v_14 v_23 0.5 she v_24 v_23 0.3 she v_33 v_23 0.4 she v_14 v_24 0.3 she v_23 v_24 0.3 she v_33 v_24 0.3 she v_34 v_24 0.5 she v_26 v_25 0.4 she v_27 v_25 0.4 she v_35 v_25 0.4 she v_25 v_26 0.5 she v_35 v_26 0.3 she v_25 v_27 0.4 she v_42 v_31 0.3 she v_42 v_32 0.5 she v_23 v_33 0.4 she v_24 v_33 0.3 she v_24 v_34 0.5 she v_25 v_35 0.4 she v_26 v_35 0.3 she v_45 v_39 0.3 she v_44 v_40 0.3 she v_46 v_40 0.3 she v_31 v_42 0.3 she v_32 v_42 0.5 she v_47 v_42 0.4 she v_51 v_43 0.3 she v_40 v_44 0.3 she v_45 v_44 0.5 she v_39 v_45 0.3 she v_44 v_45 0.5 she v_46 v_45 0.4 she v_40 v_46 0.3 she v_45 v_46 0.5 she v_42 v_47 0.4 she v_53 v_47 0.4 she v_53 v_48 0.5 she v_57 v_50 0.3 she v_59 v_50 0.3 she v_43 v_51 0.3 she v_68 v_51 0.3 she v_60 v_52 0.5 she v_61 v_52 0.3 she v_62 v_52 0.3 she v_47 v_53 0.5 she v_48 v_53 0.4 she v_54 v_53 0.3 she v_53 v_54 0.3 she v_50 v_57 0.3 she v_59 v_57 0.3 she v_50 v_59 0.3 she v_57 v_59 0.3 she v_75 v_59 0.3 she v_52 v_60 0.5 she v_61 v_60 0.3 she v_68 v_60 0.3 she v_52 v_61 0.3 she v_60 v_61 0.3 she v_62 v_61 0.3 she v_68 v_61 0.5 she v_69 v_61 0.5 she v_52 v_62 0.3 she v_61 v_62 0.3 she v_69 v_62 0.3 she v_78 v_62 0.5 she v_69 v_63 0.3 she v_82 v_67 0.3 she v_51 v_68 0.3 she v_60 v_68 0.3 she v_61 v_68 0.5 she v_61 v_69 0.5 she v_62 v_69 0.3 she v_63 v_69 0.3 she v_78 v_69 0.5 she v_73 v_72 0.4 she v_72 v_73 0.4 she v_74 v_73 0.3 she v_79 v_73 0.5 she v_80 v_73 0.4 she v_73 v_74 0.3 she v_59 v_75 0.3 she v_91 v_76 0.3 she v_62 v_78 0.5 she v_69 v_78 0.5 she v_73 v_79 0.4 she v_80 v_79 0.4 she v_73 v_80 0.5 she v_79 v_80 0.4 she v_88 v_80 0.3 she v_67 v_82 0.3 she v_89 v_82 0.3 she v_91 v_83 0.3 she v_92 v_83 0.5 she v_102 v_85 0.3 she v_108 v_86 0.3 she v_80 v_88 0.3 she v_96 v_88 0.5 she v_82 v_89 0.3 she v_92 v_90 0.3 she v_76 v_91 0.3 she v_83 v_91 0.3 she v_92 v_91 0.3 she v_99 v_91 0.5 she v_100 v_91 0.5 she v_83 v_92 0.4 she v_90 v_92 0.3 she v_91 v_92 0.3 she v_99 v_92 0.5 she v_100 v_92 0.4 she v_88 v_96 0.4 she v_91 v_99 0.5 she v_92 v_99 0.4 she v_100 v_99 0.3 she v_91 v_100 0.5 she v_92 v_100 0.4 she v_99 v_100 0.3 she v_101 v_100 0.5 she v_100 v_101 0.4 she v_107 v_101 0.4 she v_85 v_102 0.3 she v_110 v_105 0.5 she v_107 v_106 0.3 she v_101 v_107 0.5 she v_106 v_107 0.3 she v_86 v_108 0.3 she v_105 v_110 0.5 she v_117 v_110 0.3 she v_125 v_111 0.4 she v_114 v_112 0.3 she v_128 v_112 0.5 she v_114 v_113 0.3 she v_112 v_114 0.3 she v_113 v_114 0.3 she v_118 v_114 0.3 she v_123 v_116 0.3 she v_110 v_117 0.3 she v_127 v_117 0.3 she v_114 v_118 0.3 she v_128 v_118 0.5 she v_129 v_120 0.4 she v_130 v_121 0.3 she v_123 v_122 0.5 she v_134 v_122 0.4 she v_116 v_123 0.3 she v_122 v_123 0.5 she v_124 v_123 0.3 she v_123 v_124 0.3 she v_135 v_124 0.5 she v_111 v_125 0.4 she v_136 v_125 0.5 she v_117 v_127 0.3 she v_112 v_128 0.4 she v_118 v_128 0.5 she v_120 v_129 0.4 she v_137 v_129 0.3 she v_121 v_130 0.3 she v_132 v_130 0.5 she v_146 v_130 0.4 she v_138 v_131 0.3 she v_147 v_131 0.3 she v_130 v_132 0.5 she v_133 v_132 0.3 she v_132 v_133 0.3 she v_138 v_133 0.5 she v_122 v_134 0.5 she v_140 v_134 0.4 she v_141 v_134 0.4 she v_124 v_135 0.5 she v_149 v_135 0.4 she v_125 v_136 0.4 she v_129 v_137 0.3 she v_146 v_137 0.5 she v_131 v_138 0.3 she v_133 v_138 0.5 she v_146 v_138 0.4 she v_140 v_139 0.4 she v_134 v_140 0.5 she v_139 v_140 0.4 she v_141 v_140 0.3 she v_149 v_140 0.5 she v_134 v_141 0.4 she v_140 v_141 0.3 she v_146 v_145 0.3 she v_130 v_146 0.5 she v_137 v_146 0.4 she v_138 v_146 0.5 she v_145 v_146 0.3 she v_131 v_147 0.3 she v_135 v_149 0.5 she v_140 v_149 0.4 she v_10 v_0 0.2 she v_12 v_2 0.3 she v_22 v_5 0.3 she v_8 v_7 0.3 she v_7 v_8 0.3 she v_10 v_9 0.2 she v_0 v_10 0.2 she v_9 v_10 0.2 she v_2 v_12 0.3 she v_5 v_22 0.3 she v_27 v_26 0.3 she v_26 v_27 0.3 she v_35 v_27 0.3 she v_36 v_27 0.3 she v_27 v_35 0.3 she v_36 v_35 0.2 she v_27 v_36 0.3 she v_35 v_36 0.2 she v_38 v_37 0.3 she v_37 v_38 0.3 she v_40 v_39 0.3 she v_39 v_40 0.3 she v_45 v_40 0.3 she v_40 v_45 0.3 she v_58 v_50 0.2 she v_58 v_57 0.3 she v_50 v_58 0.2 she v_57 v_58 0.3 she v_67 v_58 0.3 she v_67 v_59 0.2 she v_63 v_62 0.2 she v_64 v_62 0.3 she v_62 v_63 0.2 she v_64 v_63 0.3 she v_62 v_64 0.3 she v_63 v_64 0.3 she v_58 v_67 0.3 she v_59 v_67 0.2 she v_75 v_67 0.2 she v_71 v_70 0.2 she v_86 v_70 0.3 she v_70 v_71 0.2 she v_86 v_71 0.3 she v_67 v_75 0.2 she v_77 v_76 0.3 she v_76 v_77 0.3 she v_93 v_84 0.2 she v_70 v_86 0.3 she v_71 v_86 0.3 she v_98 v_89 0.3 she v_91 v_90 0.2 she v_90 v_91 0.2 she v_84 v_93 0.2 she v_108 v_94 0.2 she v_89 v_98 0.3 she v_109 v_103 0.3 she v_109 v_104 0.3 she v_111 v_105 0.3 she v_94 v_108 0.2 she v_103 v_109 0.3 she v_104 v_109 0.3 she v_111 v_110 0.3 she v_105 v_111 0.3 she v_110 v_111 0.3 she v_117 v_111 0.3 she v_118 v_112 0.3 she v_118 v_113 0.2 she v_128 v_113 0.3 she v_124 v_116 0.3 she v_111 v_117 0.3 she v_125 v_117 0.3 she v_126 v_117 0.3 she v_112 v_118 0.3 she v_113 v_118 0.2 she v_120 v_119 0.3 she v_129 v_119 0.3 she v_119 v_120 0.3 she v_132 v_121 0.2 she v_116 v_124 0.3 she v_117 v_125 0.3 she v_117 v_126 0.3 she v_113 v_128 0.3 she v_119 v_129 0.3 she v_131 v_130 0.3 she v_130 v_131 0.3 she v_132 v_131 0.2 she v_121 v_132 0.2 she v_131 v_132 0.2 she v_138 v_132 0.2 she v_147 v_132 0.2 she v_132 v_138 0.2 she v_147 v_138 0.2 she v_148 v_140 0.3 she v_148 v_141 0.2 she v_149 v_141 0.2 she v_132 v_147 0.2 she v_138 v_147 0.2 she v_140 v_148 0.3 she v_141 v_148 0.2 she v_149 v_148 0.2 she v_141 v_149 0.2 she v_148 v_149 0.2 she v_13 v_4 0.2 she v_4 v_13 0.2 she v_36 v_26 0.2 she v_26 v_36 0.2 she v_59 v_58 0.2 she v_58 v_59 0.2 she v_82 v_75 0.2 she v_75 v_82 0.2 she v_85 v_84 0.2 she v_84 v_85 0.2 she v_93 v_85 0.1 she v_94 v_86 0.2 she v_85 v_93 0.1 she v_86 v_94 0.2 she v_104 v_103 0.2 she v_103 v_104 0.2 she v_113 v_112 0.2 she v_112 v_113 0.2 she v_131 v_121 0.2 she v_126 v_125 0.2 she v_142 v_125 0.1 she v_125 v_126 0.2 she v_143 v_128 0.1 she v_144 v_128 0.2 she v_121 v_131 0.2 she v_125 v_142 0.1 she v_128 v_143 0.1 she v_128 v_144 0.2 she v_13 v_5 0.1 she v_5 v_13 0.1 she v_60 v_51 0.1 she v_51 v_60 0.1 she v_108 v_95 0.1 she v_95 v_108 0.1 she v_127 v_125 0.1 she v_127 v_126 0.1 she v_125 v_127 0.1 she v_126 v_127 0.1 she v_145 v_137 0.1 she v_137 v_145 0.1 she v_5 v_4 0.0 she v_4 v_5 0.0 she v_95 v_86 0.0 she v_95 v_94 0.0 she v_86 v_95 0.0 she v_94 v_95 0.0 she v_142 v_126 0.0 she v_142 v_127 0.0 she v_126 v_142 0.0 she v_127 v_142 0.0 she v_29 v_28 0.0 she v_28 v_29 0.0 she v_144 v_143 0.0 she v_143 v_144 0.0 she v_0 0.6 shn v_1 0.6 shn v_2 0.6 shn v_3 0.6 shn v_4 0.7 shn v_5 0.6 shn v_6 0.6 shn v_7 0.5 shn v_8 0.7 shn v_9 0.6 shn v_10 0.5 shn v_11 0.4 shn v_12 0.5 shn v_13 0.7 shn v_14 0.6 shn v_15 0.4 shn v_16 0.4 shn v_17 0.4 shn v_18 0.4 shn v_19 0.4 shn v_20 0.4 shn v_21 0.5 shn v_22 0.5 shn v_23 0.7 shn v_24 0.5 shn v_25 0.4 shn v_26 0.5 shn v_27 0.6 shn v_28 0.7 shn v_29 0.6 shn v_30 0.5 shn v_31 0.5 shn v_32 0.6 shn v_33 0.6 shn v_34 0.6 shn v_35 0.6 shn v_36 0.7 shn v_37 0.6 shn v_38 0.6 shn v_39 0.6 shn v_40 0.5 shn v_41 0.5 shn v_42 0.4 shn v_43 0.6 shn v_44 0.8 shn v_45 0.6 shn v_46 0.6 shn v_47 0.4 shn v_48 0.5 shn v_49 0.7 shn v_50 0.7 shn v_51 0.9 shn v_52 0.5 shn v_53 0.5 shn v_54 0.4 shn v_55 0.5 shn v_56 0.6 shn v_57 0.5 shn v_58 0.5 shn v_59 0.6 shn v_60 0.4 shn v_61 0.4 shn v_62 0.3 shn v_63 0.5 shn v_64 0.6 shn v_65 0.4 shn v_66 0.5 shn v_67 0.5 shn v_68 0.5 shn v_69 0.4 shn v_70 0.8 shn v_71 0.8 shn v_72 0.4 shn v_73 0.4 shn v_74 0.5 shn v_75 0.6 shn v_76 0.7 shn v_77 0.6 shn v_78 0.5 shn v_79 0.5 shn v_80 0.4 shn v_81 0.6 shn v_82 0.7 shn v_83 0.5 shn v_84 0.6 shn v_85 0.5 shn v_86 0.5 shn v_87 0.7 shn v_88 0.5 shn v_89 0.7 shn v_90 0.7 shn v_91 0.5 shn v_92 0.4 shn v_93 0.6 shn v_94 0.5 shn v_95 0.5 shn v_96 0.5 shn v_97 0.5 shn v_98 0.6 shn v_99 0.5 shn v_100 0.4 shn v_101 0.4 shn v_102 0.7 shn v_103 0.6 shn v_104 0.6 shn v_105 0.6 shn v_106 0.4 shn v_107 0.5 shn v_108 0.8 shn v_109 0.6 shn v_110 0.6 shn v_111 0.4 shn v_112 0.7 shn v_113 0.4 shn v_114 0.4 shn v_115 0.6 shn v_116 0.6 shn v_117 0.5 shn v_118 0.6 shn v_119 0.4 shn v_120 0.5 shn v_121 0.7 shn v_122 0.5 shn v_123 0.5 shn v_124 0.5 shn v_125 0.5 shn v_126 0.5 shn v_127 0.6 shn v_128 0.7 shn v_129 0.5 shn v_130 0.5 shn v_131 0.4 shn v_132 0.4 shn v_133 0.6 shn v_134 0.4 shn v_135 0.5 shn v_136 0.7 shn v_137 0.6 shn v_138 0.5 shn v_139 0.5 shn v_140 0.5 shn v_141 0.5 shn v_142 0.8 shn v_143 0.6 shn v_144 0.6 shn v_145 0.7 shn v_146 0.7 shn v_147 0.6 shn v_148 0.6 shn v_149 0.7 shn grestore % iterand6 hdist 0 translate gsave scalef scalef -1 mul scale v_3 v_0 0.7 she v_21 v_0 0.7 she v_28 v_1 0.7 she v_4 v_2 0.7 she v_9 v_2 0.7 she v_22 v_2 0.7 she v_38 v_2 0.6 she v_39 v_2 0.7 she v_0 v_3 0.7 she v_4 v_3 0.7 she v_5 v_3 0.7 she v_13 v_3 0.7 she v_22 v_3 0.7 she v_2 v_4 0.7 she v_3 v_4 0.7 she v_11 v_4 0.7 she v_12 v_4 0.7 she v_19 v_4 0.7 she v_20 v_4 0.7 she v_21 v_4 0.7 she v_31 v_4 0.7 she v_40 v_4 0.7 she v_41 v_4 0.7 she v_42 v_4 0.7 she v_3 v_5 0.7 she v_20 v_5 0.7 she v_21 v_5 0.7 she v_31 v_5 0.7 she v_39 v_5 0.7 she v_40 v_5 0.7 she v_41 v_5 0.7 she v_42 v_5 0.7 she v_45 v_5 0.7 she v_46 v_5 0.7 she v_47 v_5 0.7 she v_32 v_6 0.7 she v_32 v_7 0.7 she v_23 v_8 0.7 she v_32 v_8 0.7 she v_33 v_8 0.7 she v_34 v_8 0.6 she v_36 v_8 0.7 she v_2 v_9 0.7 she v_21 v_9 0.7 she v_38 v_9 0.6 she v_43 v_10 0.7 she v_4 v_11 0.7 she v_28 v_11 0.7 she v_39 v_11 0.7 she v_4 v_12 0.7 she v_22 v_12 0.7 she v_29 v_12 0.7 she v_39 v_12 0.7 she v_40 v_12 0.7 she v_3 v_13 0.7 she v_21 v_13 0.7 she v_31 v_13 0.7 she v_32 v_13 0.7 she v_39 v_13 0.7 she v_40 v_13 0.7 she v_41 v_13 0.7 she v_42 v_13 0.7 she v_45 v_13 0.7 she v_46 v_13 0.7 she v_47 v_13 0.7 she v_32 v_14 0.7 she v_36 v_14 0.6 she v_32 v_15 0.6 she v_32 v_16 0.7 she v_50 v_16 0.7 she v_21 v_17 0.6 she v_43 v_17 0.6 she v_52 v_17 0.7 she v_43 v_18 0.7 she v_52 v_18 0.7 she v_4 v_19 0.7 she v_39 v_19 0.6 she v_40 v_19 0.7 she v_4 v_20 0.7 she v_5 v_20 0.7 she v_22 v_20 0.7 she v_29 v_20 0.7 she v_40 v_20 0.7 she v_45 v_20 0.7 she v_0 v_21 0.7 she v_4 v_21 0.7 she v_5 v_21 0.7 she v_9 v_21 0.7 she v_13 v_21 0.7 she v_17 v_21 0.6 she v_22 v_21 0.6 she v_30 v_21 0.7 she v_40 v_21 0.6 she v_45 v_21 0.7 she v_46 v_21 0.7 she v_2 v_22 0.7 she v_3 v_22 0.7 she v_12 v_22 0.7 she v_20 v_22 0.7 she v_21 v_22 0.6 she v_44 v_22 0.7 she v_8 v_23 0.7 she v_27 v_23 0.7 she v_32 v_23 0.7 she v_35 v_23 0.7 she v_36 v_23 0.7 she v_42 v_23 0.7 she v_32 v_25 0.7 she v_50 v_25 0.7 she v_50 v_26 0.7 she v_23 v_27 0.7 she v_33 v_27 0.7 she v_34 v_27 0.6 she v_50 v_27 0.7 she v_1 v_28 0.7 she v_11 v_28 0.7 she v_38 v_28 0.7 she v_52 v_28 0.7 she v_60 v_28 0.7 she v_61 v_28 0.7 she v_12 v_29 0.7 she v_20 v_29 0.7 she v_38 v_29 0.7 she v_43 v_29 0.6 she v_52 v_29 0.7 she v_21 v_30 0.7 she v_53 v_30 0.7 she v_54 v_30 0.7 she v_4 v_31 0.7 she v_5 v_31 0.7 she v_13 v_31 0.7 she v_39 v_31 0.6 she v_55 v_31 0.6 she v_65 v_31 0.7 she v_6 v_32 0.7 she v_7 v_32 0.7 she v_8 v_32 0.7 she v_13 v_32 0.7 she v_14 v_32 0.7 she v_15 v_32 0.6 she v_16 v_32 0.7 she v_23 v_32 0.7 she v_25 v_32 0.7 she v_33 v_32 0.7 she v_34 v_32 0.7 she v_46 v_32 0.6 she v_8 v_33 0.7 she v_27 v_33 0.7 she v_32 v_33 0.7 she v_35 v_33 0.7 she v_36 v_33 0.7 she v_8 v_34 0.6 she v_27 v_34 0.6 she v_32 v_34 0.7 she v_36 v_34 0.7 she v_23 v_35 0.7 she v_33 v_35 0.7 she v_50 v_35 0.7 she v_8 v_36 0.7 she v_14 v_36 0.6 she v_23 v_36 0.7 she v_33 v_36 0.7 she v_34 v_36 0.7 she v_50 v_36 0.7 she v_43 v_37 0.7 she v_51 v_37 0.7 she v_60 v_37 0.7 she v_2 v_38 0.6 she v_9 v_38 0.6 she v_28 v_38 0.7 she v_29 v_38 0.7 she v_43 v_38 0.7 she v_51 v_38 0.7 she v_52 v_38 0.7 she v_61 v_38 0.7 she v_62 v_38 0.7 she v_2 v_39 0.7 she v_5 v_39 0.7 she v_11 v_39 0.7 she v_12 v_39 0.7 she v_13 v_39 0.7 she v_19 v_39 0.6 she v_31 v_39 0.6 she v_64 v_39 0.7 she v_4 v_40 0.7 she v_5 v_40 0.7 she v_12 v_40 0.7 she v_13 v_40 0.7 she v_19 v_40 0.7 she v_20 v_40 0.7 she v_21 v_40 0.6 she v_48 v_40 0.7 she v_53 v_40 0.7 she v_64 v_40 0.7 she v_4 v_41 0.7 she v_5 v_41 0.7 she v_13 v_41 0.7 she v_55 v_41 0.6 she v_65 v_41 0.7 she v_4 v_42 0.7 she v_5 v_42 0.7 she v_13 v_42 0.7 she v_23 v_42 0.7 she v_65 v_42 0.7 she v_66 v_42 0.7 she v_71 v_42 0.7 she v_10 v_43 0.7 she v_17 v_43 0.6 she v_18 v_43 0.7 she v_29 v_43 0.6 she v_37 v_43 0.7 she v_38 v_43 0.7 she v_51 v_43 0.7 she v_64 v_43 0.7 she v_22 v_44 0.7 she v_52 v_44 0.7 she v_64 v_44 0.6 she v_78 v_44 0.7 she v_5 v_45 0.7 she v_13 v_45 0.7 she v_20 v_45 0.7 she v_21 v_45 0.7 she v_48 v_45 0.7 she v_53 v_45 0.7 she v_54 v_45 0.7 she v_63 v_45 0.7 she v_64 v_45 0.7 she v_5 v_46 0.7 she v_13 v_46 0.7 she v_21 v_46 0.7 she v_32 v_46 0.6 she v_54 v_46 0.6 she v_55 v_46 0.7 she v_5 v_47 0.7 she v_13 v_47 0.7 she v_66 v_47 0.7 she v_71 v_47 0.7 she v_72 v_47 0.7 she v_40 v_48 0.7 she v_45 v_48 0.7 she v_71 v_48 0.7 she v_72 v_48 0.6 she v_73 v_48 0.6 she v_74 v_48 0.7 she v_79 v_48 0.7 she v_80 v_48 0.7 she v_56 v_49 0.7 she v_57 v_49 0.7 she v_79 v_49 0.6 she v_16 v_50 0.7 she v_25 v_50 0.7 she v_26 v_50 0.7 she v_27 v_50 0.7 she v_35 v_50 0.7 she v_36 v_50 0.7 she v_56 v_50 0.6 she v_66 v_50 0.7 she v_73 v_50 0.7 she v_74 v_50 0.7 she v_82 v_50 0.6 she v_37 v_51 0.7 she v_38 v_51 0.7 she v_43 v_51 0.7 she v_64 v_51 0.7 she v_77 v_51 0.7 she v_83 v_51 0.7 she v_91 v_51 0.7 she v_92 v_51 0.7 she v_17 v_52 0.7 she v_18 v_52 0.7 she v_28 v_52 0.7 she v_29 v_52 0.7 she v_38 v_52 0.7 she v_44 v_52 0.7 she v_76 v_52 0.7 she v_77 v_52 0.7 she v_83 v_52 0.7 she v_30 v_53 0.7 she v_40 v_53 0.7 she v_45 v_53 0.7 she v_71 v_53 0.7 she v_72 v_53 0.6 she v_73 v_53 0.6 she v_30 v_54 0.7 she v_45 v_54 0.7 she v_46 v_54 0.6 she v_71 v_54 0.6 she v_74 v_54 0.6 she v_79 v_54 0.7 she v_80 v_54 0.6 she v_88 v_54 0.7 she v_31 v_55 0.6 she v_41 v_55 0.6 she v_46 v_55 0.7 she v_57 v_55 0.7 she v_71 v_55 0.7 she v_87 v_55 0.7 she v_88 v_55 0.7 she v_49 v_56 0.7 she v_50 v_56 0.6 she v_75 v_56 0.6 she v_49 v_57 0.7 she v_55 v_57 0.7 she v_65 v_57 0.7 she v_66 v_57 0.6 she v_72 v_57 0.7 she v_74 v_57 0.7 she v_79 v_57 0.7 she v_80 v_57 0.7 she v_65 v_58 0.7 she v_66 v_58 0.7 she v_72 v_58 0.7 she v_73 v_58 0.7 she v_74 v_58 0.7 she v_80 v_58 0.7 she v_81 v_58 0.7 she v_65 v_59 0.7 she v_66 v_59 0.7 she v_72 v_59 0.7 she v_73 v_59 0.7 she v_74 v_59 0.7 she v_80 v_59 0.7 she v_81 v_59 0.7 she v_28 v_60 0.7 she v_37 v_60 0.7 she v_76 v_60 0.6 she v_83 v_60 0.7 she v_84 v_60 0.7 she v_85 v_60 0.7 she v_90 v_60 0.7 she v_91 v_60 0.7 she v_92 v_60 0.7 she v_28 v_61 0.7 she v_38 v_61 0.7 she v_70 v_61 0.7 she v_76 v_61 0.6 she v_83 v_61 0.7 she v_84 v_61 0.7 she v_85 v_61 0.7 she v_90 v_61 0.7 she v_92 v_61 0.7 she v_93 v_61 0.7 she v_38 v_62 0.7 she v_70 v_62 0.7 she v_76 v_62 0.7 she v_83 v_62 0.7 she v_85 v_62 0.6 she v_93 v_62 0.7 she v_45 v_63 0.7 she v_70 v_63 0.7 she v_77 v_63 0.7 she v_83 v_63 0.7 she v_84 v_63 0.7 she v_85 v_63 0.7 she v_93 v_63 0.7 she v_39 v_64 0.7 she v_40 v_64 0.7 she v_43 v_64 0.7 she v_44 v_64 0.6 she v_45 v_64 0.7 she v_51 v_64 0.7 she v_70 v_64 0.7 she v_84 v_64 0.7 she v_85 v_64 0.7 she v_31 v_65 0.7 she v_41 v_65 0.7 she v_42 v_65 0.7 she v_57 v_65 0.7 she v_58 v_65 0.7 she v_59 v_65 0.7 she v_67 v_65 0.7 she v_71 v_65 0.7 she v_42 v_66 0.7 she v_47 v_66 0.7 she v_50 v_66 0.7 she v_57 v_66 0.6 she v_58 v_66 0.7 she v_59 v_66 0.7 she v_67 v_66 0.7 she v_75 v_66 0.7 she v_65 v_67 0.7 she v_66 v_67 0.7 she v_73 v_67 0.7 she v_74 v_67 0.7 she v_80 v_67 0.7 she v_98 v_67 0.6 she v_76 v_68 0.6 she v_83 v_68 0.7 she v_84 v_68 0.7 she v_90 v_68 0.7 she v_91 v_68 0.7 she v_92 v_68 0.7 she v_100 v_68 0.7 she v_70 v_69 0.7 she v_76 v_69 0.7 she v_77 v_69 0.7 she v_83 v_69 0.7 she v_93 v_69 0.6 she v_94 v_69 0.7 she v_61 v_70 0.7 she v_62 v_70 0.7 she v_63 v_70 0.7 she v_64 v_70 0.7 she v_69 v_70 0.7 she v_71 v_70 0.7 she v_78 v_70 0.7 she v_84 v_70 0.7 she v_93 v_70 0.6 she v_103 v_70 0.7 she v_108 v_70 0.7 she v_42 v_71 0.7 she v_47 v_71 0.7 she v_48 v_71 0.7 she v_53 v_71 0.7 she v_54 v_71 0.6 she v_55 v_71 0.7 she v_65 v_71 0.7 she v_70 v_71 0.7 she v_85 v_71 0.7 she v_93 v_71 0.7 she v_103 v_71 0.7 she v_108 v_71 0.7 she v_47 v_72 0.7 she v_48 v_72 0.6 she v_53 v_72 0.6 she v_57 v_72 0.7 she v_58 v_72 0.7 she v_59 v_72 0.7 she v_48 v_73 0.6 she v_50 v_73 0.7 she v_53 v_73 0.6 she v_58 v_73 0.7 she v_59 v_73 0.7 she v_67 v_73 0.7 she v_75 v_73 0.7 she v_82 v_73 0.7 she v_104 v_73 0.7 she v_105 v_73 0.7 she v_48 v_74 0.7 she v_50 v_74 0.7 she v_54 v_74 0.6 she v_57 v_74 0.7 she v_58 v_74 0.7 she v_59 v_74 0.7 she v_67 v_74 0.7 she v_75 v_74 0.7 she v_82 v_74 0.7 she v_97 v_74 0.7 she v_56 v_75 0.6 she v_66 v_75 0.7 she v_73 v_75 0.7 she v_74 v_75 0.7 she v_80 v_75 0.7 she v_97 v_75 0.7 she v_52 v_76 0.7 she v_60 v_76 0.6 she v_61 v_76 0.6 she v_62 v_76 0.7 she v_68 v_76 0.6 she v_69 v_76 0.7 she v_106 v_76 0.7 she v_51 v_77 0.7 she v_52 v_77 0.7 she v_63 v_77 0.7 she v_69 v_77 0.7 she v_78 v_77 0.7 she v_106 v_77 0.7 she v_44 v_78 0.7 she v_70 v_78 0.7 she v_77 v_78 0.7 she v_83 v_78 0.7 she v_86 v_78 0.7 she v_94 v_78 0.7 she v_95 v_78 0.7 she v_102 v_78 0.6 she v_48 v_79 0.7 she v_49 v_79 0.6 she v_54 v_79 0.7 she v_57 v_79 0.7 she v_104 v_79 0.7 she v_105 v_79 0.7 she v_48 v_80 0.7 she v_54 v_80 0.6 she v_57 v_80 0.7 she v_58 v_80 0.7 she v_59 v_80 0.7 she v_67 v_80 0.7 she v_75 v_80 0.7 she v_82 v_80 0.7 she v_103 v_80 0.7 she v_105 v_80 0.7 she v_110 v_80 0.7 she v_111 v_80 0.7 she v_117 v_80 0.7 she v_58 v_81 0.7 she v_59 v_81 0.7 she v_87 v_81 0.7 she v_105 v_81 0.7 she v_110 v_81 0.7 she v_111 v_81 0.7 she v_117 v_81 0.7 she v_50 v_82 0.6 she v_73 v_82 0.7 she v_74 v_82 0.7 she v_80 v_82 0.7 she v_97 v_82 0.7 she v_105 v_82 0.7 she v_111 v_82 0.7 she v_51 v_83 0.7 she v_52 v_83 0.7 she v_60 v_83 0.7 she v_61 v_83 0.7 she v_62 v_83 0.7 she v_63 v_83 0.7 she v_68 v_83 0.7 she v_69 v_83 0.7 she v_78 v_83 0.7 she v_107 v_83 0.7 she v_113 v_83 0.7 she v_114 v_83 0.7 she v_60 v_84 0.7 she v_61 v_84 0.7 she v_63 v_84 0.7 she v_64 v_84 0.7 she v_68 v_84 0.7 she v_70 v_84 0.7 she v_86 v_84 0.7 she v_94 v_84 0.6 she v_95 v_84 0.7 she v_101 v_84 0.7 she v_106 v_84 0.7 she v_107 v_84 0.7 she v_108 v_84 0.7 she v_60 v_85 0.7 she v_61 v_85 0.7 she v_62 v_85 0.6 she v_63 v_85 0.7 she v_64 v_85 0.7 she v_71 v_85 0.7 she v_86 v_85 0.7 she v_101 v_85 0.7 she v_106 v_85 0.7 she v_107 v_85 0.7 she v_108 v_85 0.7 she v_78 v_86 0.7 she v_84 v_86 0.7 she v_85 v_86 0.7 she v_87 v_86 0.7 she v_93 v_86 0.7 she v_102 v_86 0.7 she v_104 v_86 0.7 she v_109 v_86 0.7 she v_116 v_86 0.7 she v_55 v_87 0.7 she v_81 v_87 0.7 she v_86 v_87 0.7 she v_95 v_87 0.7 she v_97 v_87 0.7 she v_103 v_87 0.7 she v_109 v_87 0.7 she v_54 v_88 0.7 she v_55 v_88 0.7 she v_103 v_88 0.7 she v_105 v_88 0.6 she v_109 v_88 0.7 she v_110 v_88 0.7 she v_111 v_88 0.7 she v_117 v_88 0.7 she v_125 v_88 0.7 she v_126 v_88 0.7 she v_127 v_88 0.7 she v_125 v_89 0.7 she v_126 v_89 0.7 she v_127 v_89 0.7 she v_142 v_89 0.7 she v_60 v_90 0.7 she v_61 v_90 0.7 she v_68 v_90 0.7 she v_107 v_90 0.7 she v_113 v_90 0.7 she v_114 v_90 0.7 she v_51 v_91 0.7 she v_60 v_91 0.7 she v_68 v_91 0.7 she v_102 v_91 0.7 she v_112 v_91 0.6 she v_118 v_91 0.7 she v_119 v_91 0.7 she v_51 v_92 0.7 she v_60 v_92 0.7 she v_61 v_92 0.7 she v_68 v_92 0.7 she v_118 v_92 0.7 she v_119 v_92 0.7 she v_120 v_92 0.7 she v_128 v_92 0.7 she v_61 v_93 0.7 she v_62 v_93 0.7 she v_63 v_93 0.7 she v_69 v_93 0.6 she v_70 v_93 0.6 she v_71 v_93 0.7 she v_86 v_93 0.7 she v_100 v_93 0.7 she v_101 v_93 0.7 she v_106 v_93 0.7 she v_107 v_93 0.7 she v_108 v_93 0.7 she v_69 v_94 0.7 she v_78 v_94 0.7 she v_84 v_94 0.6 she v_102 v_94 0.7 she v_104 v_94 0.7 she v_107 v_94 0.7 she v_109 v_94 0.7 she v_78 v_95 0.7 she v_84 v_95 0.7 she v_87 v_95 0.7 she v_102 v_95 0.7 she v_109 v_95 0.7 she v_116 v_95 0.7 she v_103 v_96 0.7 she v_109 v_96 0.7 she v_110 v_96 0.7 she v_117 v_96 0.7 she v_125 v_96 0.7 she v_126 v_96 0.7 she v_127 v_96 0.7 she v_142 v_96 0.7 she v_74 v_97 0.7 she v_75 v_97 0.7 she v_82 v_97 0.7 she v_87 v_97 0.7 she v_126 v_97 0.6 she v_127 v_97 0.7 she v_142 v_97 0.7 she v_67 v_98 0.6 she v_127 v_98 0.7 she v_142 v_98 0.7 she v_102 v_99 0.6 she v_120 v_99 0.6 she v_128 v_99 0.7 she v_129 v_99 0.7 she v_143 v_99 0.7 she v_144 v_99 0.7 she v_68 v_100 0.7 she v_93 v_100 0.7 she v_128 v_100 0.7 she v_143 v_100 0.7 she v_144 v_100 0.7 she v_84 v_101 0.7 she v_85 v_101 0.7 she v_93 v_101 0.7 she v_128 v_101 0.7 she v_144 v_101 0.7 she v_78 v_102 0.6 she v_86 v_102 0.7 she v_91 v_102 0.7 she v_94 v_102 0.7 she v_95 v_102 0.7 she v_99 v_102 0.6 she v_113 v_102 0.7 she v_70 v_103 0.7 she v_71 v_103 0.7 she v_80 v_103 0.7 she v_87 v_103 0.7 she v_88 v_103 0.7 she v_96 v_103 0.7 she v_122 v_103 0.6 she v_134 v_103 0.7 she v_135 v_103 0.7 she v_73 v_104 0.7 she v_79 v_104 0.7 she v_86 v_104 0.7 she v_94 v_104 0.7 she v_108 v_104 0.7 she v_134 v_104 0.6 she v_135 v_104 0.6 she v_73 v_105 0.7 she v_79 v_105 0.7 she v_80 v_105 0.7 she v_81 v_105 0.7 she v_82 v_105 0.7 she v_88 v_105 0.6 she v_136 v_105 0.7 she v_142 v_105 0.7 she v_76 v_106 0.7 she v_77 v_106 0.7 she v_84 v_106 0.7 she v_85 v_106 0.7 she v_93 v_106 0.7 she v_128 v_106 0.7 she v_143 v_106 0.7 she v_144 v_106 0.7 she v_145 v_106 0.7 she v_83 v_107 0.7 she v_84 v_107 0.7 she v_85 v_107 0.7 she v_90 v_107 0.7 she v_93 v_107 0.7 she v_94 v_107 0.7 she v_112 v_107 0.7 she v_118 v_107 0.6 she v_128 v_107 0.7 she v_137 v_107 0.7 she v_70 v_108 0.7 she v_71 v_108 0.7 she v_84 v_108 0.7 she v_85 v_108 0.7 she v_93 v_108 0.7 she v_104 v_108 0.7 she v_109 v_108 0.7 she v_116 v_108 0.7 she v_122 v_108 0.7 she v_123 v_108 0.7 she v_124 v_108 0.7 she v_86 v_109 0.7 she v_87 v_109 0.7 she v_88 v_109 0.7 she v_94 v_109 0.7 she v_95 v_109 0.7 she v_96 v_109 0.7 she v_108 v_109 0.7 she v_139 v_109 0.7 she v_148 v_109 0.7 she v_149 v_109 0.7 she v_80 v_110 0.7 she v_81 v_110 0.7 she v_88 v_110 0.7 she v_96 v_110 0.7 she v_80 v_111 0.7 she v_81 v_111 0.7 she v_82 v_111 0.7 she v_88 v_111 0.7 she v_91 v_112 0.6 she v_107 v_112 0.7 she v_120 v_112 0.7 she v_129 v_112 0.6 she v_143 v_112 0.7 she v_144 v_112 0.7 she v_83 v_113 0.7 she v_90 v_113 0.7 she v_102 v_113 0.7 she v_143 v_113 0.7 she v_144 v_113 0.7 she v_145 v_113 0.7 she v_83 v_114 0.7 she v_90 v_114 0.7 she v_143 v_114 0.7 she v_144 v_114 0.7 she v_145 v_114 0.7 she v_121 v_115 0.7 she v_130 v_115 0.7 she v_138 v_115 0.7 she v_146 v_115 0.7 she v_147 v_115 0.7 she v_86 v_116 0.7 she v_95 v_116 0.7 she v_108 v_116 0.7 she v_133 v_116 0.7 she v_136 v_116 0.7 she v_139 v_116 0.7 she v_142 v_116 0.7 she v_149 v_116 0.7 she v_80 v_117 0.7 she v_81 v_117 0.7 she v_88 v_117 0.7 she v_96 v_117 0.7 she v_91 v_118 0.7 she v_92 v_118 0.7 she v_107 v_118 0.6 she v_137 v_118 0.7 she v_143 v_118 0.7 she v_144 v_118 0.7 she v_91 v_119 0.7 she v_92 v_119 0.7 she v_128 v_119 0.6 she v_130 v_119 0.7 she v_143 v_119 0.7 she v_144 v_119 0.7 she v_146 v_119 0.7 she v_92 v_120 0.7 she v_99 v_120 0.6 she v_112 v_120 0.7 she v_121 v_120 0.7 she v_128 v_120 0.7 she v_130 v_120 0.7 she v_131 v_120 0.7 she v_143 v_120 0.7 she v_144 v_120 0.7 she v_146 v_120 0.7 she v_115 v_121 0.7 she v_120 v_121 0.7 she v_122 v_121 0.7 she v_134 v_121 0.7 she v_137 v_121 0.7 she v_139 v_121 0.7 she v_140 v_121 0.7 she v_145 v_121 0.7 she v_103 v_122 0.6 she v_108 v_122 0.7 she v_121 v_122 0.7 she v_132 v_122 0.7 she v_133 v_122 0.7 she v_138 v_122 0.7 she v_147 v_122 0.7 she v_108 v_123 0.7 she v_132 v_123 0.7 she v_133 v_123 0.7 she v_108 v_124 0.7 she v_125 v_124 0.7 she v_126 v_124 0.7 she v_127 v_124 0.7 she v_133 v_124 0.7 she v_142 v_124 0.7 she v_88 v_125 0.7 she v_89 v_125 0.7 she v_96 v_125 0.7 she v_124 v_125 0.7 she v_135 v_125 0.7 she v_88 v_126 0.7 she v_89 v_126 0.7 she v_96 v_126 0.7 she v_97 v_126 0.6 she v_124 v_126 0.7 she v_135 v_126 0.7 she v_88 v_127 0.7 she v_89 v_127 0.7 she v_96 v_127 0.7 she v_97 v_127 0.7 she v_98 v_127 0.7 she v_124 v_127 0.7 she v_135 v_127 0.7 she v_92 v_128 0.7 she v_99 v_128 0.7 she v_100 v_128 0.7 she v_101 v_128 0.7 she v_106 v_128 0.7 she v_107 v_128 0.7 she v_119 v_128 0.6 she v_120 v_128 0.7 she v_129 v_128 0.7 she v_99 v_129 0.7 she v_112 v_129 0.6 she v_128 v_129 0.7 she v_130 v_129 0.7 she v_143 v_129 0.7 she v_144 v_129 0.7 she v_146 v_129 0.7 she v_115 v_130 0.7 she v_119 v_130 0.7 she v_120 v_130 0.7 she v_129 v_130 0.7 she v_139 v_130 0.7 she v_140 v_130 0.7 she v_120 v_131 0.7 she v_134 v_131 0.7 she v_140 v_131 0.7 she v_141 v_131 0.7 she v_148 v_131 0.7 she v_122 v_132 0.7 she v_123 v_132 0.7 she v_134 v_132 0.7 she v_135 v_132 0.7 she v_140 v_132 0.7 she v_141 v_132 0.7 she v_148 v_132 0.7 she v_149 v_132 0.7 she v_116 v_133 0.7 she v_122 v_133 0.7 she v_123 v_133 0.7 she v_124 v_133 0.7 she v_134 v_133 0.6 she v_135 v_133 0.7 she v_141 v_133 0.7 she v_145 v_133 0.7 she v_148 v_133 0.7 she v_149 v_133 0.7 she v_103 v_134 0.7 she v_104 v_134 0.6 she v_121 v_134 0.7 she v_131 v_134 0.7 she v_132 v_134 0.7 she v_133 v_134 0.6 she v_138 v_134 0.7 she v_147 v_134 0.7 she v_103 v_135 0.7 she v_104 v_135 0.6 she v_125 v_135 0.7 she v_126 v_135 0.7 she v_127 v_135 0.7 she v_132 v_135 0.7 she v_133 v_135 0.7 she v_142 v_135 0.7 she v_105 v_136 0.7 she v_116 v_136 0.7 she v_142 v_136 0.7 she v_148 v_136 0.7 she v_149 v_136 0.7 she v_107 v_137 0.7 she v_118 v_137 0.7 she v_121 v_137 0.7 she v_147 v_137 0.7 she v_115 v_138 0.7 she v_122 v_138 0.7 she v_134 v_138 0.7 she v_140 v_138 0.7 she v_141 v_138 0.7 she v_148 v_138 0.7 she v_149 v_138 0.7 she v_109 v_139 0.7 she v_116 v_139 0.7 she v_121 v_139 0.7 she v_130 v_139 0.7 she v_146 v_139 0.7 she v_147 v_139 0.7 she v_121 v_140 0.7 she v_130 v_140 0.7 she v_131 v_140 0.7 she v_132 v_140 0.7 she v_138 v_140 0.7 she v_146 v_140 0.7 she v_147 v_140 0.7 she v_131 v_141 0.7 she v_132 v_141 0.7 she v_133 v_141 0.7 she v_138 v_141 0.7 she v_147 v_141 0.7 she v_89 v_142 0.7 she v_96 v_142 0.7 she v_97 v_142 0.7 she v_98 v_142 0.7 she v_105 v_142 0.7 she v_116 v_142 0.7 she v_124 v_142 0.7 she v_135 v_142 0.7 she v_136 v_142 0.7 she v_99 v_143 0.7 she v_100 v_143 0.7 she v_106 v_143 0.7 she v_112 v_143 0.7 she v_113 v_143 0.7 she v_114 v_143 0.7 she v_118 v_143 0.7 she v_119 v_143 0.7 she v_120 v_143 0.7 she v_129 v_143 0.7 she v_99 v_144 0.7 she v_100 v_144 0.7 she v_101 v_144 0.7 she v_106 v_144 0.7 she v_112 v_144 0.7 she v_113 v_144 0.7 she v_114 v_144 0.7 she v_118 v_144 0.7 she v_119 v_144 0.7 she v_120 v_144 0.7 she v_129 v_144 0.7 she v_106 v_145 0.7 she v_113 v_145 0.7 she v_114 v_145 0.7 she v_121 v_145 0.7 she v_133 v_145 0.7 she v_147 v_145 0.6 she v_115 v_146 0.7 she v_119 v_146 0.7 she v_120 v_146 0.7 she v_129 v_146 0.7 she v_139 v_146 0.7 she v_140 v_146 0.7 she v_115 v_147 0.7 she v_122 v_147 0.7 she v_134 v_147 0.7 she v_137 v_147 0.7 she v_139 v_147 0.7 she v_140 v_147 0.7 she v_141 v_147 0.7 she v_145 v_147 0.6 she v_109 v_148 0.7 she v_131 v_148 0.7 she v_132 v_148 0.7 she v_133 v_148 0.7 she v_136 v_148 0.7 she v_138 v_148 0.7 she v_109 v_149 0.7 she v_116 v_149 0.7 she v_132 v_149 0.7 she v_133 v_149 0.7 she v_136 v_149 0.7 she v_138 v_149 0.7 she v_2 v_0 0.6 she v_28 v_0 0.6 she v_29 v_0 0.6 she v_37 v_0 0.6 she v_38 v_0 0.6 she v_2 v_1 0.6 she v_3 v_1 0.6 she v_21 v_1 0.6 she v_29 v_1 0.6 she v_37 v_1 0.6 she v_0 v_2 0.6 she v_1 v_2 0.6 she v_10 v_2 0.6 she v_17 v_2 0.6 she v_1 v_3 0.6 she v_10 v_3 0.6 she v_17 v_3 0.6 she v_30 v_4 0.6 she v_30 v_5 0.6 she v_23 v_6 0.6 she v_27 v_6 0.6 she v_33 v_6 0.6 she v_34 v_6 0.6 she v_35 v_6 0.6 she v_36 v_6 0.6 she v_14 v_8 0.6 she v_27 v_8 0.6 she v_35 v_8 0.6 she v_12 v_9 0.6 she v_20 v_9 0.6 she v_37 v_9 0.6 she v_2 v_10 0.6 she v_3 v_10 0.6 she v_12 v_10 0.6 she v_20 v_10 0.6 she v_21 v_10 0.6 she v_29 v_11 0.6 she v_9 v_12 0.6 she v_10 v_12 0.6 she v_17 v_12 0.6 she v_37 v_12 0.6 she v_38 v_12 0.6 she v_30 v_13 0.6 she v_8 v_14 0.6 she v_27 v_14 0.6 she v_35 v_14 0.6 she v_2 v_17 0.6 she v_3 v_17 0.6 she v_12 v_17 0.6 she v_28 v_19 0.6 she v_29 v_19 0.6 she v_9 v_20 0.6 she v_10 v_20 0.6 she v_37 v_20 0.6 she v_39 v_20 0.6 she v_1 v_21 0.6 she v_10 v_21 0.6 she v_39 v_21 0.6 she v_31 v_22 0.6 she v_39 v_22 0.6 she v_41 v_22 0.6 she v_45 v_22 0.6 she v_46 v_22 0.6 she v_47 v_22 0.6 she v_6 v_23 0.6 she v_34 v_23 0.6 she v_27 v_24 0.6 she v_32 v_24 0.6 she v_35 v_24 0.6 she v_36 v_24 0.6 she v_6 v_27 0.6 she v_8 v_27 0.6 she v_14 v_27 0.6 she v_24 v_27 0.6 she v_0 v_28 0.6 she v_19 v_28 0.6 she v_37 v_28 0.6 she v_43 v_28 0.6 she v_0 v_29 0.6 she v_1 v_29 0.6 she v_11 v_29 0.6 she v_19 v_29 0.6 she v_37 v_29 0.6 she v_4 v_30 0.6 she v_5 v_30 0.6 she v_13 v_30 0.6 she v_32 v_30 0.6 she v_48 v_30 0.6 she v_22 v_31 0.6 she v_40 v_31 0.6 she v_45 v_31 0.6 she v_24 v_32 0.6 she v_30 v_32 0.6 she v_55 v_32 0.6 she v_6 v_33 0.6 she v_34 v_33 0.6 she v_6 v_34 0.6 she v_23 v_34 0.6 she v_33 v_34 0.6 she v_35 v_34 0.6 she v_6 v_35 0.6 she v_8 v_35 0.6 she v_14 v_35 0.6 she v_24 v_35 0.6 she v_34 v_35 0.6 she v_6 v_36 0.6 she v_24 v_36 0.6 she v_0 v_37 0.6 she v_1 v_37 0.6 she v_9 v_37 0.6 she v_12 v_37 0.6 she v_20 v_37 0.6 she v_28 v_37 0.6 she v_29 v_37 0.6 she v_38 v_37 0.6 she v_52 v_37 0.6 she v_61 v_37 0.6 she v_62 v_37 0.6 she v_0 v_38 0.6 she v_12 v_38 0.6 she v_37 v_38 0.6 she v_20 v_39 0.6 she v_21 v_39 0.6 she v_22 v_39 0.6 she v_42 v_39 0.6 she v_47 v_39 0.6 she v_31 v_40 0.6 she v_47 v_40 0.6 she v_22 v_41 0.6 she v_44 v_41 0.6 she v_54 v_41 0.6 she v_39 v_42 0.6 she v_49 v_42 0.6 she v_55 v_42 0.6 she v_28 v_43 0.6 she v_63 v_43 0.6 she v_78 v_43 0.6 she v_41 v_44 0.6 she v_60 v_44 0.6 she v_22 v_45 0.6 she v_31 v_45 0.6 she v_47 v_45 0.6 she v_22 v_46 0.6 she v_48 v_46 0.6 she v_53 v_46 0.6 she v_22 v_47 0.6 she v_39 v_47 0.6 she v_40 v_47 0.6 she v_45 v_47 0.6 she v_65 v_47 0.6 she v_30 v_48 0.6 she v_46 v_48 0.6 she v_66 v_48 0.6 she v_42 v_49 0.6 she v_53 v_49 0.6 she v_74 v_49 0.6 she v_80 v_49 0.6 she v_63 v_51 0.6 she v_78 v_51 0.6 she v_37 v_52 0.6 she v_64 v_52 0.6 she v_78 v_52 0.6 she v_46 v_53 0.6 she v_49 v_53 0.6 she v_66 v_53 0.6 she v_41 v_54 0.6 she v_56 v_54 0.6 she v_32 v_55 0.6 she v_42 v_55 0.6 she v_74 v_55 0.6 she v_79 v_55 0.6 she v_54 v_56 0.6 she v_67 v_56 0.6 she v_74 v_56 0.6 she v_79 v_56 0.6 she v_73 v_57 0.6 she v_89 v_58 0.6 she v_89 v_59 0.6 she v_44 v_60 0.6 she v_77 v_60 0.6 she v_37 v_61 0.6 she v_77 v_61 0.6 she v_37 v_62 0.6 she v_77 v_62 0.6 she v_84 v_62 0.6 she v_43 v_63 0.6 she v_51 v_63 0.6 she v_52 v_64 0.6 she v_68 v_64 0.6 she v_78 v_64 0.6 she v_47 v_65 0.6 she v_81 v_65 0.6 she v_96 v_65 0.6 she v_48 v_66 0.6 she v_53 v_66 0.6 she v_81 v_66 0.6 she v_96 v_66 0.6 she v_56 v_67 0.6 she v_64 v_68 0.6 she v_77 v_68 0.6 she v_78 v_68 0.6 she v_84 v_69 0.6 she v_85 v_69 0.6 she v_85 v_70 0.6 she v_97 v_72 0.6 she v_57 v_73 0.6 she v_49 v_74 0.6 she v_55 v_74 0.6 she v_56 v_74 0.6 she v_81 v_74 0.6 she v_87 v_74 0.6 she v_88 v_74 0.6 she v_96 v_74 0.6 she v_98 v_75 0.6 she v_77 v_76 0.6 she v_101 v_76 0.6 she v_60 v_77 0.6 she v_61 v_77 0.6 she v_62 v_77 0.6 she v_68 v_77 0.6 she v_76 v_77 0.6 she v_101 v_77 0.6 she v_43 v_78 0.6 she v_51 v_78 0.6 she v_52 v_78 0.6 she v_64 v_78 0.6 she v_68 v_78 0.6 she v_84 v_78 0.6 she v_85 v_78 0.6 she v_93 v_78 0.6 she v_55 v_79 0.6 she v_56 v_79 0.6 she v_97 v_79 0.6 she v_49 v_80 0.6 she v_89 v_80 0.6 she v_98 v_80 0.6 she v_104 v_80 0.6 she v_65 v_81 0.6 she v_66 v_81 0.6 she v_74 v_81 0.6 she v_82 v_81 0.6 she v_96 v_81 0.6 she v_97 v_81 0.6 she v_98 v_81 0.6 she v_81 v_82 0.6 she v_98 v_82 0.6 she v_106 v_83 0.6 she v_62 v_84 0.6 she v_69 v_84 0.6 she v_78 v_84 0.6 she v_69 v_85 0.6 she v_70 v_85 0.6 she v_78 v_85 0.6 she v_94 v_85 0.6 she v_95 v_85 0.6 she v_74 v_87 0.6 she v_96 v_87 0.6 she v_104 v_87 0.6 she v_74 v_88 0.6 she v_89 v_88 0.6 she v_98 v_88 0.6 she v_104 v_88 0.6 she v_58 v_89 0.6 she v_59 v_89 0.6 she v_80 v_89 0.6 she v_88 v_89 0.6 she v_96 v_89 0.6 she v_110 v_89 0.6 she v_117 v_89 0.6 she v_106 v_90 0.6 she v_107 v_91 0.6 she v_113 v_91 0.6 she v_114 v_91 0.6 she v_102 v_92 0.6 she v_112 v_92 0.6 she v_113 v_92 0.6 she v_114 v_92 0.6 she v_115 v_92 0.6 she v_78 v_93 0.6 she v_85 v_94 0.6 she v_85 v_95 0.6 she v_104 v_95 0.6 she v_65 v_96 0.6 she v_66 v_96 0.6 she v_74 v_96 0.6 she v_81 v_96 0.6 she v_87 v_96 0.6 she v_89 v_96 0.6 she v_98 v_96 0.6 she v_104 v_96 0.6 she v_105 v_96 0.6 she v_72 v_97 0.6 she v_79 v_97 0.6 she v_81 v_97 0.6 she v_110 v_97 0.6 she v_125 v_97 0.6 she v_75 v_98 0.6 she v_80 v_98 0.6 she v_81 v_98 0.6 she v_82 v_98 0.6 she v_88 v_98 0.6 she v_96 v_98 0.6 she v_125 v_98 0.6 she v_126 v_98 0.6 she v_115 v_99 0.6 she v_118 v_99 0.6 she v_119 v_99 0.6 she v_120 v_100 0.6 she v_129 v_100 0.6 she v_76 v_101 0.6 she v_77 v_101 0.6 she v_112 v_101 0.6 she v_118 v_101 0.6 she v_119 v_101 0.6 she v_120 v_101 0.6 she v_129 v_101 0.6 she v_92 v_102 0.6 she v_107 v_102 0.6 she v_114 v_102 0.6 she v_119 v_102 0.6 she v_108 v_103 0.6 she v_116 v_103 0.6 she v_123 v_103 0.6 she v_124 v_103 0.6 she v_80 v_104 0.6 she v_87 v_104 0.6 she v_88 v_104 0.6 she v_95 v_104 0.6 she v_96 v_104 0.6 she v_122 v_104 0.6 she v_96 v_105 0.6 she v_127 v_105 0.6 she v_83 v_106 0.6 she v_90 v_106 0.6 she v_137 v_106 0.6 she v_91 v_107 0.6 she v_102 v_107 0.6 she v_120 v_107 0.6 she v_129 v_107 0.6 she v_103 v_108 0.6 she v_89 v_110 0.6 she v_97 v_110 0.6 she v_136 v_110 0.6 she v_142 v_110 0.6 she v_92 v_112 0.6 she v_101 v_112 0.6 she v_128 v_112 0.6 she v_91 v_113 0.6 she v_92 v_113 0.6 she v_137 v_113 0.6 she v_91 v_114 0.6 she v_92 v_114 0.6 she v_102 v_114 0.6 she v_137 v_114 0.6 she v_92 v_115 0.6 she v_99 v_115 0.6 she v_118 v_115 0.6 she v_129 v_115 0.6 she v_131 v_115 0.6 she v_132 v_115 0.6 she v_103 v_116 0.6 she v_148 v_116 0.6 she v_89 v_117 0.6 she v_99 v_118 0.6 she v_101 v_118 0.6 she v_115 v_118 0.6 she v_120 v_118 0.6 she v_128 v_118 0.6 she v_99 v_119 0.6 she v_101 v_119 0.6 she v_102 v_119 0.6 she v_100 v_120 0.6 she v_101 v_120 0.6 she v_107 v_120 0.6 she v_118 v_120 0.6 she v_146 v_121 0.6 she v_104 v_122 0.6 she v_136 v_122 0.6 she v_103 v_123 0.6 she v_136 v_123 0.6 she v_103 v_124 0.6 she v_136 v_124 0.6 she v_97 v_125 0.6 she v_98 v_125 0.6 she v_98 v_126 0.6 she v_105 v_127 0.6 she v_112 v_128 0.6 she v_118 v_128 0.6 she v_100 v_129 0.6 she v_101 v_129 0.6 she v_107 v_129 0.6 she v_115 v_129 0.6 she v_115 v_131 0.6 she v_139 v_131 0.6 she v_115 v_132 0.6 she v_139 v_133 0.6 she v_140 v_133 0.6 she v_146 v_133 0.6 she v_136 v_134 0.6 she v_136 v_135 0.6 she v_110 v_136 0.6 she v_122 v_136 0.6 she v_123 v_136 0.6 she v_124 v_136 0.6 she v_134 v_136 0.6 she v_135 v_136 0.6 she v_140 v_136 0.6 she v_141 v_136 0.6 she v_106 v_137 0.6 she v_113 v_137 0.6 she v_114 v_137 0.6 she v_138 v_137 0.6 she v_146 v_137 0.6 she v_137 v_138 0.6 she v_139 v_138 0.6 she v_131 v_139 0.6 she v_133 v_139 0.6 she v_138 v_139 0.6 she v_148 v_139 0.6 she v_149 v_139 0.6 she v_133 v_140 0.6 she v_136 v_140 0.6 she v_136 v_141 0.6 she v_110 v_142 0.6 she v_146 v_145 0.6 she v_121 v_146 0.6 she v_133 v_146 0.6 she v_137 v_146 0.6 she v_145 v_146 0.6 she v_147 v_146 0.6 she v_146 v_147 0.6 she v_116 v_148 0.6 she v_139 v_148 0.6 she v_139 v_149 0.6 she v_1 v_0 0.5 she v_9 v_0 0.5 she v_12 v_0 0.5 she v_20 v_0 0.5 she v_0 v_1 0.5 she v_9 v_1 0.5 she v_12 v_1 0.5 she v_20 v_1 0.5 she v_38 v_1 0.5 she v_21 v_3 0.5 she v_8 v_6 0.5 she v_14 v_6 0.5 she v_24 v_6 0.5 she v_23 v_7 0.5 she v_24 v_7 0.5 she v_27 v_7 0.5 she v_33 v_7 0.5 she v_34 v_7 0.5 she v_35 v_7 0.5 she v_36 v_7 0.5 she v_6 v_8 0.5 she v_24 v_8 0.5 she v_0 v_9 0.5 she v_1 v_9 0.5 she v_28 v_9 0.5 she v_29 v_9 0.5 she v_37 v_11 0.5 she v_0 v_12 0.5 she v_1 v_12 0.5 she v_6 v_14 0.5 she v_26 v_14 0.5 she v_34 v_14 0.5 she v_20 v_17 0.5 she v_21 v_18 0.5 she v_28 v_18 0.5 she v_0 v_20 0.5 she v_1 v_20 0.5 she v_17 v_20 0.5 she v_38 v_20 0.5 she v_3 v_21 0.5 she v_18 v_21 0.5 she v_40 v_22 0.5 she v_42 v_22 0.5 she v_7 v_23 0.5 she v_26 v_23 0.5 she v_33 v_23 0.5 she v_6 v_24 0.5 she v_7 v_24 0.5 she v_8 v_24 0.5 she v_26 v_24 0.5 she v_14 v_26 0.5 she v_23 v_26 0.5 she v_24 v_26 0.5 she v_33 v_26 0.5 she v_7 v_27 0.5 she v_35 v_27 0.5 she v_36 v_27 0.5 she v_9 v_28 0.5 she v_18 v_28 0.5 she v_9 v_29 0.5 she v_31 v_30 0.5 she v_44 v_30 0.5 she v_30 v_31 0.5 she v_46 v_31 0.5 she v_53 v_31 0.5 she v_54 v_31 0.5 she v_53 v_32 0.5 she v_54 v_32 0.5 she v_7 v_33 0.5 she v_23 v_33 0.5 she v_26 v_33 0.5 she v_7 v_34 0.5 she v_14 v_34 0.5 she v_7 v_35 0.5 she v_27 v_35 0.5 she v_7 v_36 0.5 she v_27 v_36 0.5 she v_11 v_37 0.5 she v_1 v_38 0.5 she v_20 v_38 0.5 she v_41 v_39 0.5 she v_44 v_39 0.5 she v_22 v_40 0.5 she v_42 v_40 0.5 she v_39 v_41 0.5 she v_53 v_41 0.5 she v_22 v_42 0.5 she v_40 v_42 0.5 she v_45 v_42 0.5 she v_68 v_43 0.5 she v_30 v_44 0.5 she v_39 v_44 0.5 she v_46 v_44 0.5 she v_61 v_44 0.5 she v_63 v_44 0.5 she v_69 v_44 0.5 she v_42 v_45 0.5 she v_31 v_46 0.5 she v_44 v_46 0.5 she v_49 v_47 0.5 she v_55 v_47 0.5 she v_49 v_48 0.5 she v_65 v_48 0.5 she v_47 v_49 0.5 she v_48 v_49 0.5 she v_68 v_51 0.5 she v_63 v_52 0.5 she v_68 v_52 0.5 she v_31 v_53 0.5 she v_32 v_53 0.5 she v_41 v_53 0.5 she v_65 v_53 0.5 she v_31 v_54 0.5 she v_32 v_54 0.5 she v_66 v_54 0.5 she v_72 v_54 0.5 she v_73 v_54 0.5 she v_47 v_55 0.5 she v_56 v_55 0.5 she v_80 v_55 0.5 she v_55 v_56 0.5 she v_57 v_56 0.5 she v_59 v_56 0.5 she v_80 v_56 0.5 she v_56 v_57 0.5 she v_82 v_57 0.5 she v_56 v_59 0.5 she v_44 v_61 0.5 she v_44 v_63 0.5 she v_52 v_63 0.5 she v_68 v_63 0.5 she v_78 v_63 0.5 she v_48 v_65 0.5 she v_53 v_65 0.5 she v_87 v_65 0.5 she v_88 v_65 0.5 she v_54 v_66 0.5 she v_87 v_66 0.5 she v_88 v_66 0.5 she v_81 v_67 0.5 she v_43 v_68 0.5 she v_51 v_68 0.5 she v_52 v_68 0.5 she v_63 v_68 0.5 she v_44 v_69 0.5 she v_54 v_72 0.5 she v_54 v_73 0.5 she v_97 v_73 0.5 she v_79 v_74 0.5 she v_81 v_75 0.5 she v_90 v_76 0.5 she v_90 v_77 0.5 she v_63 v_78 0.5 she v_74 v_79 0.5 she v_81 v_79 0.5 she v_55 v_80 0.5 she v_56 v_80 0.5 she v_67 v_81 0.5 she v_75 v_81 0.5 she v_79 v_81 0.5 she v_89 v_81 0.5 she v_57 v_82 0.5 she v_89 v_82 0.5 she v_101 v_83 0.5 she v_103 v_86 0.5 she v_65 v_87 0.5 she v_66 v_87 0.5 she v_65 v_88 0.5 she v_66 v_88 0.5 she v_81 v_89 0.5 she v_82 v_89 0.5 she v_105 v_89 0.5 she v_76 v_90 0.5 she v_77 v_90 0.5 she v_101 v_90 0.5 she v_106 v_91 0.5 she v_107 v_92 0.5 she v_94 v_93 0.5 she v_95 v_93 0.5 she v_93 v_94 0.5 she v_93 v_95 0.5 she v_97 v_96 0.5 she v_111 v_96 0.5 she v_73 v_97 0.5 she v_96 v_97 0.5 she v_105 v_97 0.5 she v_117 v_97 0.5 she v_110 v_98 0.5 she v_117 v_98 0.5 she v_107 v_99 0.5 she v_112 v_99 0.5 she v_113 v_99 0.5 she v_114 v_99 0.5 she v_102 v_100 0.5 she v_118 v_100 0.5 she v_119 v_100 0.5 she v_83 v_101 0.5 she v_90 v_101 0.5 she v_113 v_101 0.5 she v_114 v_101 0.5 she v_100 v_102 0.5 she v_86 v_103 0.5 she v_116 v_104 0.5 she v_123 v_104 0.5 she v_124 v_104 0.5 she v_89 v_105 0.5 she v_97 v_105 0.5 she v_110 v_105 0.5 she v_91 v_106 0.5 she v_92 v_107 0.5 she v_99 v_107 0.5 she v_115 v_107 0.5 she v_116 v_109 0.5 she v_135 v_109 0.5 she v_140 v_109 0.5 she v_141 v_109 0.5 she v_98 v_110 0.5 she v_105 v_110 0.5 she v_127 v_110 0.5 she v_96 v_111 0.5 she v_99 v_112 0.5 she v_119 v_112 0.5 she v_99 v_113 0.5 she v_101 v_113 0.5 she v_99 v_114 0.5 she v_101 v_114 0.5 she v_128 v_114 0.5 she v_107 v_115 0.5 she v_120 v_115 0.5 she v_104 v_116 0.5 she v_109 v_116 0.5 she v_97 v_117 0.5 she v_98 v_117 0.5 she v_100 v_118 0.5 she v_129 v_118 0.5 she v_100 v_119 0.5 she v_112 v_119 0.5 she v_115 v_120 0.5 she v_145 v_120 0.5 she v_133 v_121 0.5 she v_147 v_121 0.5 she v_139 v_122 0.5 she v_104 v_123 0.5 she v_139 v_123 0.5 she v_104 v_124 0.5 she v_139 v_124 0.5 she v_110 v_127 0.5 she v_136 v_127 0.5 she v_114 v_128 0.5 she v_118 v_129 0.5 she v_145 v_129 0.5 she v_133 v_130 0.5 she v_137 v_131 0.5 she v_137 v_132 0.5 she v_139 v_132 0.5 she v_121 v_133 0.5 she v_130 v_133 0.5 she v_147 v_133 0.5 she v_109 v_135 0.5 she v_139 v_135 0.5 she v_127 v_136 0.5 she v_131 v_137 0.5 she v_132 v_137 0.5 she v_145 v_138 0.5 she v_122 v_139 0.5 she v_123 v_139 0.5 she v_124 v_139 0.5 she v_132 v_139 0.5 she v_135 v_139 0.5 she v_109 v_140 0.5 she v_109 v_141 0.5 she v_120 v_145 0.5 she v_129 v_145 0.5 she v_138 v_145 0.5 she v_121 v_147 0.5 she v_133 v_147 0.5 she v_149 v_148 0.5 she v_148 v_149 0.5 she v_17 v_1 0.4 she v_3 v_2 0.4 she v_18 v_2 0.4 she v_21 v_2 0.4 she v_2 v_3 0.4 she v_18 v_3 0.4 she v_7 v_6 0.4 she v_26 v_6 0.4 she v_6 v_7 0.4 she v_8 v_7 0.4 she v_14 v_7 0.5 she v_7 v_8 0.4 she v_11 v_9 0.4 she v_11 v_10 0.4 she v_9 v_11 0.4 she v_10 v_11 0.4 she v_17 v_11 0.4 she v_38 v_11 0.4 she v_18 v_12 0.4 she v_7 v_14 0.5 she v_23 v_14 0.4 she v_24 v_14 0.4 she v_33 v_14 0.4 she v_36 v_15 0.4 she v_1 v_17 0.4 she v_11 v_17 0.4 she v_2 v_18 0.4 she v_3 v_18 0.4 she v_12 v_18 0.4 she v_20 v_18 0.4 she v_29 v_18 0.4 she v_18 v_20 0.4 she v_2 v_21 0.4 she v_30 v_22 0.5 she v_14 v_23 0.4 she v_14 v_24 0.4 she v_34 v_24 0.4 she v_6 v_26 0.4 she v_34 v_26 0.4 she v_18 v_29 0.4 she v_22 v_30 0.5 she v_39 v_30 0.4 she v_46 v_30 0.4 she v_47 v_30 0.4 she v_32 v_31 0.4 she v_48 v_31 0.4 she v_31 v_32 0.4 she v_41 v_32 0.4 she v_14 v_33 0.4 she v_24 v_34 0.4 she v_26 v_34 0.4 she v_36 v_35 0.5 she v_15 v_36 0.4 she v_35 v_36 0.5 she v_11 v_38 0.4 she v_30 v_39 0.4 she v_46 v_39 0.4 she v_41 v_40 0.4 she v_32 v_41 0.4 she v_40 v_41 0.4 she v_45 v_41 0.4 she v_48 v_41 0.5 she v_54 v_42 0.4 she v_52 v_43 0.4 she v_69 v_43 0.4 she v_41 v_45 0.4 she v_30 v_46 0.4 she v_39 v_46 0.4 she v_30 v_47 0.4 she v_31 v_48 0.4 she v_41 v_48 0.5 she v_55 v_48 0.5 she v_54 v_49 0.4 she v_66 v_49 0.4 she v_72 v_49 0.4 she v_75 v_50 0.4 she v_52 v_51 0.5 she v_43 v_52 0.4 she v_51 v_52 0.5 she v_55 v_53 0.5 she v_42 v_54 0.4 she v_49 v_54 0.4 she v_55 v_54 0.4 she v_65 v_54 0.4 she v_48 v_55 0.5 she v_53 v_55 0.5 she v_54 v_55 0.4 she v_66 v_55 0.4 she v_58 v_56 0.4 she v_65 v_56 0.4 she v_66 v_56 0.4 she v_72 v_56 0.4 she v_75 v_57 0.4 she v_56 v_58 0.4 she v_63 v_60 0.4 she v_64 v_60 0.5 she v_78 v_60 0.4 she v_60 v_63 0.4 she v_60 v_64 0.5 she v_54 v_65 0.4 she v_56 v_65 0.4 she v_79 v_65 0.4 she v_80 v_65 0.4 she v_49 v_66 0.4 she v_55 v_66 0.4 she v_56 v_66 0.4 she v_79 v_66 0.4 she v_89 v_67 0.4 she v_43 v_69 0.4 she v_49 v_72 0.4 she v_56 v_72 0.4 she v_81 v_72 0.5 she v_96 v_72 0.4 she v_50 v_75 0.4 she v_57 v_75 0.4 she v_83 v_76 0.4 she v_99 v_76 0.4 she v_83 v_77 0.4 she v_99 v_77 0.5 she v_60 v_78 0.4 she v_65 v_79 0.4 she v_66 v_79 0.4 she v_87 v_79 0.4 she v_88 v_79 0.4 she v_96 v_79 0.5 she v_65 v_80 0.4 she v_72 v_81 0.5 she v_88 v_81 0.5 she v_76 v_83 0.4 she v_77 v_83 0.4 she v_90 v_83 0.5 she v_79 v_87 0.4 she v_88 v_87 0.4 she v_79 v_88 0.4 she v_81 v_88 0.5 she v_87 v_88 0.4 she v_97 v_88 0.4 she v_67 v_89 0.4 she v_97 v_89 0.4 she v_98 v_89 0.4 she v_111 v_89 0.4 she v_83 v_90 0.5 she v_106 v_92 0.4 she v_103 v_94 0.5 she v_72 v_96 0.4 she v_79 v_96 0.5 she v_88 v_97 0.4 she v_89 v_97 0.4 she v_89 v_98 0.4 she v_105 v_98 0.4 she v_76 v_99 0.4 she v_77 v_99 0.5 she v_101 v_99 0.4 she v_106 v_99 0.5 she v_112 v_100 0.4 she v_113 v_100 0.4 she v_115 v_100 0.5 she v_99 v_101 0.4 she v_102 v_101 0.5 she v_115 v_101 0.5 she v_101 v_102 0.5 she v_106 v_102 0.4 she v_94 v_103 0.5 she v_98 v_105 0.4 she v_126 v_105 0.4 she v_92 v_106 0.4 she v_99 v_106 0.5 she v_102 v_106 0.4 she v_112 v_106 0.5 she v_113 v_106 0.4 she v_118 v_106 0.4 she v_129 v_106 0.4 she v_113 v_107 0.4 she v_114 v_107 0.4 she v_119 v_107 0.4 she v_122 v_109 0.4 she v_134 v_109 0.5 she v_89 v_111 0.4 she v_100 v_112 0.4 she v_106 v_112 0.5 she v_118 v_112 0.5 she v_100 v_113 0.4 she v_106 v_113 0.4 she v_107 v_113 0.4 she v_115 v_113 0.4 she v_107 v_114 0.4 she v_100 v_115 0.5 she v_101 v_115 0.5 she v_113 v_115 0.4 she v_122 v_116 0.4 she v_106 v_118 0.4 she v_112 v_118 0.5 she v_119 v_118 0.4 she v_107 v_119 0.4 she v_118 v_119 0.4 she v_129 v_120 0.4 she v_137 v_120 0.4 she v_130 v_121 0.4 she v_109 v_122 0.4 she v_116 v_122 0.4 she v_148 v_122 0.5 she v_149 v_122 0.5 she v_148 v_123 0.4 she v_149 v_123 0.4 she v_148 v_124 0.5 she v_149 v_124 0.5 she v_105 v_126 0.4 she v_106 v_129 0.4 she v_120 v_129 0.4 she v_137 v_129 0.4 she v_121 v_130 0.4 she v_137 v_130 0.5 she v_147 v_130 0.4 she v_145 v_132 0.4 she v_109 v_134 0.5 she v_148 v_135 0.4 she v_149 v_135 0.4 she v_120 v_137 0.4 she v_129 v_137 0.4 she v_130 v_137 0.5 she v_132 v_145 0.4 she v_130 v_147 0.4 she v_122 v_148 0.5 she v_123 v_148 0.4 she v_124 v_148 0.5 she v_135 v_148 0.4 she v_122 v_149 0.5 she v_123 v_149 0.4 she v_124 v_149 0.5 she v_135 v_149 0.4 she v_11 v_0 0.4 she v_17 v_0 0.3 she v_11 v_1 0.3 she v_22 v_4 0.3 she v_26 v_7 0.4 she v_26 v_8 0.3 she v_19 v_9 0.3 she v_28 v_10 0.3 she v_38 v_10 0.3 she v_0 v_11 0.4 she v_1 v_11 0.3 she v_18 v_11 0.3 she v_22 v_13 0.3 she v_26 v_15 0.3 she v_27 v_15 0.4 she v_35 v_15 0.4 she v_0 v_17 0.3 she v_28 v_17 0.3 she v_11 v_18 0.3 she v_9 v_19 0.3 she v_37 v_19 0.3 she v_4 v_22 0.3 she v_13 v_22 0.3 she v_25 v_23 0.3 she v_33 v_24 0.3 she v_23 v_25 0.3 she v_33 v_25 0.3 she v_7 v_26 0.4 she v_8 v_26 0.3 she v_15 v_26 0.3 she v_15 v_27 0.4 she v_10 v_28 0.3 she v_17 v_28 0.3 she v_41 v_30 0.4 she v_42 v_30 0.3 she v_45 v_30 0.4 she v_41 v_31 0.4 she v_48 v_32 0.4 she v_24 v_33 0.3 she v_25 v_33 0.3 she v_15 v_35 0.4 she v_19 v_37 0.3 she v_10 v_38 0.3 she v_30 v_41 0.4 she v_31 v_41 0.4 she v_46 v_41 0.4 she v_30 v_42 0.3 she v_30 v_45 0.4 she v_46 v_45 0.4 she v_41 v_46 0.4 she v_45 v_46 0.4 she v_47 v_46 0.4 she v_46 v_47 0.4 she v_32 v_48 0.4 she v_53 v_48 0.3 she v_54 v_48 0.3 she v_55 v_49 0.4 she v_69 v_51 0.4 she v_69 v_52 0.3 she v_48 v_53 0.3 she v_54 v_53 0.3 she v_48 v_54 0.3 she v_53 v_54 0.3 she v_49 v_55 0.4 she v_72 v_55 0.4 she v_69 v_60 0.3 she v_64 v_63 0.4 she v_63 v_64 0.4 she v_74 v_65 0.4 she v_74 v_66 0.4 she v_80 v_66 0.3 she v_69 v_68 0.3 she v_51 v_69 0.4 she v_52 v_69 0.3 she v_60 v_69 0.3 she v_68 v_69 0.3 she v_55 v_72 0.4 she v_87 v_72 0.3 she v_88 v_72 0.3 she v_65 v_74 0.4 she v_66 v_74 0.4 she v_89 v_75 0.3 she v_100 v_76 0.3 she v_100 v_77 0.3 she v_66 v_80 0.3 she v_97 v_80 0.3 she v_99 v_83 0.4 she v_102 v_84 0.3 she v_72 v_87 0.3 she v_72 v_88 0.3 she v_96 v_88 0.3 she v_75 v_89 0.3 she v_99 v_90 0.4 she v_101 v_91 0.3 she v_88 v_96 0.3 she v_80 v_97 0.3 she v_98 v_97 0.4 she v_97 v_98 0.4 she v_83 v_99 0.4 she v_90 v_99 0.4 she v_76 v_100 0.3 she v_77 v_100 0.3 she v_114 v_100 0.4 she v_91 v_101 0.3 she v_106 v_101 0.4 she v_107 v_101 0.4 she v_84 v_102 0.3 she v_109 v_103 0.4 she v_101 v_106 0.4 she v_114 v_106 0.4 she v_119 v_106 0.3 she v_120 v_106 0.3 she v_101 v_107 0.4 she v_103 v_109 0.4 she v_123 v_109 0.3 she v_136 v_111 0.3 she v_120 v_113 0.4 she v_128 v_113 0.3 she v_100 v_114 0.4 she v_106 v_114 0.4 she v_115 v_114 0.4 she v_120 v_114 0.3 she v_114 v_115 0.4 she v_135 v_116 0.4 she v_140 v_116 0.3 she v_141 v_116 0.3 she v_106 v_119 0.3 she v_145 v_119 0.4 she v_106 v_120 0.3 she v_113 v_120 0.4 she v_114 v_120 0.3 she v_123 v_122 0.3 she v_124 v_122 0.4 she v_135 v_122 0.4 she v_109 v_123 0.3 she v_122 v_123 0.3 she v_124 v_123 0.3 she v_135 v_123 0.4 she v_122 v_124 0.4 she v_123 v_124 0.3 she v_135 v_124 0.4 she v_142 v_127 0.3 she v_113 v_128 0.3 she v_145 v_130 0.4 she v_146 v_130 0.4 she v_145 v_131 0.4 she v_116 v_135 0.4 she v_122 v_135 0.4 she v_123 v_135 0.4 she v_124 v_135 0.4 she v_111 v_136 0.3 she v_116 v_140 0.3 she v_116 v_141 0.3 she v_127 v_142 0.3 she v_119 v_145 0.4 she v_130 v_145 0.4 she v_131 v_145 0.4 she v_130 v_146 0.4 she v_18 v_0 0.2 she v_19 v_0 0.3 she v_10 v_1 0.3 she v_18 v_1 0.3 she v_11 v_2 0.2 she v_12 v_2 0.3 she v_20 v_2 0.3 she v_11 v_3 0.3 she v_12 v_3 0.2 she v_20 v_3 0.2 she v_25 v_6 0.2 she v_15 v_8 0.2 she v_17 v_9 0.2 she v_18 v_9 0.2 she v_1 v_10 0.3 she v_18 v_10 0.2 she v_19 v_10 0.3 she v_29 v_10 0.2 she v_37 v_10 0.3 she v_2 v_11 0.2 she v_3 v_11 0.3 she v_12 v_11 0.2 she v_20 v_11 0.2 she v_21 v_11 0.3 she v_2 v_12 0.3 she v_3 v_12 0.2 she v_11 v_12 0.2 she v_20 v_12 0.3 she v_21 v_12 0.2 she v_25 v_14 0.3 she v_8 v_15 0.2 she v_25 v_15 0.2 she v_9 v_17 0.2 she v_18 v_17 0.2 she v_19 v_17 0.2 she v_29 v_17 0.2 she v_37 v_17 0.2 she v_38 v_17 0.3 she v_0 v_18 0.2 she v_1 v_18 0.3 she v_9 v_18 0.2 she v_10 v_18 0.2 she v_17 v_18 0.2 she v_0 v_19 0.3 she v_10 v_19 0.3 she v_17 v_19 0.2 she v_2 v_20 0.3 she v_3 v_20 0.2 she v_11 v_20 0.2 she v_12 v_20 0.3 she v_11 v_21 0.3 she v_12 v_21 0.2 she v_24 v_23 0.3 she v_23 v_24 0.3 she v_25 v_24 0.3 she v_6 v_25 0.2 she v_14 v_25 0.3 she v_15 v_25 0.2 she v_24 v_25 0.3 she v_34 v_25 0.2 she v_10 v_29 0.2 she v_17 v_29 0.2 she v_40 v_30 0.3 she v_25 v_34 0.2 she v_10 v_37 0.3 she v_17 v_37 0.2 she v_17 v_38 0.3 she v_30 v_40 0.3 she v_46 v_40 0.2 she v_46 v_42 0.3 she v_48 v_42 0.2 she v_53 v_42 0.2 she v_60 v_43 0.3 she v_45 v_44 0.3 she v_62 v_44 0.2 she v_44 v_45 0.3 she v_40 v_46 0.2 she v_42 v_46 0.3 she v_54 v_47 0.3 she v_42 v_48 0.2 she v_65 v_49 0.3 she v_73 v_49 0.3 she v_57 v_50 0.3 she v_60 v_52 0.3 she v_42 v_53 0.2 she v_47 v_54 0.3 she v_65 v_55 0.3 she v_73 v_55 0.3 she v_73 v_56 0.2 she v_50 v_57 0.3 she v_82 v_58 0.2 she v_82 v_59 0.3 she v_43 v_60 0.3 she v_52 v_60 0.3 she v_68 v_60 0.3 she v_44 v_62 0.2 she v_69 v_63 0.2 she v_69 v_64 0.2 she v_49 v_65 0.3 she v_55 v_65 0.3 she v_66 v_65 0.3 she v_72 v_65 0.3 she v_65 v_66 0.3 she v_72 v_66 0.2 she v_60 v_68 0.3 she v_63 v_69 0.2 she v_64 v_69 0.2 she v_78 v_69 0.2 she v_65 v_72 0.3 she v_66 v_72 0.2 she v_74 v_72 0.2 she v_79 v_72 0.2 she v_80 v_72 0.3 she v_49 v_73 0.3 she v_55 v_73 0.3 she v_56 v_73 0.2 she v_81 v_73 0.3 she v_96 v_73 0.3 she v_72 v_74 0.2 she v_80 v_74 0.2 she v_69 v_78 0.2 she v_72 v_79 0.2 she v_72 v_80 0.3 she v_74 v_80 0.2 she v_81 v_80 0.2 she v_73 v_81 0.3 she v_80 v_81 0.2 she v_58 v_82 0.2 she v_59 v_82 0.3 she v_101 v_92 0.3 she v_102 v_93 0.3 she v_73 v_96 0.3 she v_111 v_97 0.2 she v_106 v_100 0.2 she v_107 v_100 0.3 she v_92 v_101 0.3 she v_93 v_102 0.3 she v_117 v_105 0.2 she v_125 v_105 0.3 she v_100 v_106 0.2 she v_100 v_107 0.3 she v_124 v_109 0.3 she v_126 v_110 0.2 she v_97 v_111 0.2 she v_127 v_111 0.3 she v_142 v_111 0.3 she v_119 v_113 0.2 she v_129 v_113 0.3 she v_119 v_114 0.3 she v_129 v_114 0.3 she v_119 v_115 0.2 she v_123 v_116 0.3 she v_124 v_116 0.2 she v_134 v_116 0.3 she v_105 v_117 0.2 she v_136 v_117 0.3 she v_113 v_119 0.2 she v_114 v_119 0.3 she v_115 v_119 0.2 she v_134 v_122 0.2 she v_141 v_122 0.2 she v_116 v_123 0.3 she v_134 v_123 0.2 she v_140 v_123 0.2 she v_141 v_123 0.3 she v_109 v_124 0.3 she v_116 v_124 0.2 she v_134 v_124 0.2 she v_140 v_124 0.2 she v_141 v_124 0.3 she v_105 v_125 0.3 she v_110 v_126 0.2 she v_111 v_127 0.3 she v_113 v_129 0.3 she v_114 v_129 0.3 she v_116 v_134 0.3 she v_122 v_134 0.2 she v_123 v_134 0.2 she v_124 v_134 0.2 she v_135 v_134 0.2 she v_139 v_134 0.3 she v_134 v_135 0.2 she v_117 v_136 0.3 she v_134 v_139 0.3 she v_141 v_139 0.3 she v_123 v_140 0.2 she v_124 v_140 0.2 she v_122 v_141 0.2 she v_123 v_141 0.3 she v_124 v_141 0.3 she v_139 v_141 0.3 she v_111 v_142 0.3 she v_10 v_0 0.2 she v_19 v_1 0.2 she v_15 v_6 0.2 she v_15 v_7 0.2 she v_25 v_7 0.2 she v_25 v_8 0.2 she v_0 v_10 0.2 she v_17 v_10 0.2 she v_15 v_14 0.2 she v_16 v_14 0.1 she v_6 v_15 0.2 she v_7 v_15 0.2 she v_14 v_15 0.2 she v_24 v_15 0.1 she v_33 v_15 0.1 she v_34 v_15 0.2 she v_14 v_16 0.1 she v_23 v_16 0.2 she v_24 v_16 0.2 she v_27 v_16 0.1 she v_33 v_16 0.2 she v_34 v_16 0.1 she v_35 v_16 0.1 she v_36 v_16 0.2 she v_10 v_17 0.2 she v_19 v_18 0.2 she v_37 v_18 0.2 she v_38 v_18 0.2 she v_1 v_19 0.2 she v_18 v_19 0.2 she v_21 v_19 0.2 she v_38 v_19 0.2 she v_21 v_20 0.2 she v_19 v_21 0.2 she v_20 v_21 0.2 she v_16 v_23 0.2 she v_15 v_24 0.1 she v_16 v_24 0.2 she v_7 v_25 0.2 she v_8 v_25 0.2 she v_26 v_25 0.2 she v_27 v_25 0.1 she v_35 v_25 0.2 she v_36 v_25 0.1 she v_25 v_26 0.2 she v_27 v_26 0.2 she v_35 v_26 0.2 she v_16 v_27 0.1 she v_25 v_27 0.1 she v_26 v_27 0.2 she v_15 v_33 0.1 she v_16 v_33 0.2 she v_15 v_34 0.2 she v_16 v_34 0.1 she v_16 v_35 0.1 she v_25 v_35 0.2 she v_26 v_35 0.2 she v_16 v_36 0.2 she v_25 v_36 0.1 she v_18 v_37 0.2 she v_18 v_38 0.2 she v_19 v_38 0.2 she v_45 v_39 0.2 she v_47 v_41 0.2 she v_39 v_45 0.2 she v_41 v_47 0.2 she v_67 v_50 0.2 she v_60 v_51 0.2 she v_59 v_57 0.2 she v_67 v_57 0.2 she v_57 v_59 0.2 she v_75 v_59 0.2 she v_51 v_60 0.2 she v_50 v_67 0.2 she v_57 v_67 0.2 she v_94 v_71 0.1 she v_59 v_75 0.2 she v_80 v_79 0.2 she v_79 v_80 0.2 she v_100 v_83 0.2 she v_100 v_90 0.2 she v_99 v_91 0.2 she v_100 v_91 0.2 she v_99 v_92 0.2 she v_100 v_92 0.1 she v_71 v_94 0.1 she v_111 v_98 0.1 she v_91 v_99 0.2 she v_92 v_99 0.2 she v_83 v_100 0.2 she v_90 v_100 0.2 she v_91 v_100 0.2 she v_92 v_100 0.1 she v_109 v_104 0.2 she v_107 v_106 0.2 she v_115 v_106 0.2 she v_106 v_107 0.2 she v_104 v_109 0.2 she v_117 v_110 0.1 she v_98 v_111 0.1 she v_126 v_111 0.2 she v_114 v_112 0.2 she v_112 v_114 0.2 she v_118 v_114 0.2 she v_106 v_115 0.2 she v_110 v_117 0.1 she v_127 v_117 0.1 she v_142 v_117 0.2 she v_114 v_118 0.2 she v_137 v_119 0.2 she v_138 v_121 0.1 she v_140 v_122 0.2 she v_111 v_126 0.2 she v_136 v_126 0.1 she v_117 v_127 0.1 she v_138 v_130 0.2 she v_138 v_133 0.2 she v_140 v_134 0.2 she v_141 v_134 0.2 she v_148 v_134 0.2 she v_149 v_134 0.2 she v_140 v_135 0.2 she v_141 v_135 0.2 she v_126 v_136 0.1 she v_119 v_137 0.2 she v_145 v_137 0.1 she v_121 v_138 0.1 she v_130 v_138 0.2 she v_133 v_138 0.2 she v_146 v_138 0.2 she v_140 v_139 0.2 she v_122 v_140 0.2 she v_134 v_140 0.2 she v_135 v_140 0.2 she v_139 v_140 0.2 she v_141 v_140 0.1 she v_134 v_141 0.2 she v_135 v_141 0.2 she v_140 v_141 0.1 she v_117 v_142 0.2 she v_137 v_145 0.1 she v_138 v_146 0.2 she v_134 v_148 0.2 she v_134 v_149 0.2 she v_19 v_2 0.1 she v_19 v_3 0.1 she v_22 v_5 0.1 she v_16 v_6 0.1 she v_16 v_7 0.1 she v_16 v_8 0.1 she v_10 v_9 0.1 she v_9 v_10 0.1 she v_19 v_11 0.1 she v_19 v_12 0.1 she v_16 v_15 0.1 she v_23 v_15 0.1 she v_6 v_16 0.1 she v_7 v_16 0.1 she v_8 v_16 0.1 she v_15 v_16 0.1 she v_25 v_16 0.1 she v_26 v_16 0.1 she v_2 v_19 0.1 she v_3 v_19 0.1 she v_11 v_19 0.1 she v_12 v_19 0.1 she v_20 v_19 0.1 she v_19 v_20 0.1 she v_5 v_22 0.1 she v_15 v_23 0.1 she v_16 v_25 0.1 she v_16 v_26 0.1 she v_36 v_26 0.1 she v_47 v_31 0.1 she v_47 v_32 0.1 she v_26 v_36 0.1 she v_44 v_40 0.1 she v_42 v_41 0.1 she v_41 v_42 0.1 she v_47 v_42 0.1 she v_40 v_44 0.1 she v_31 v_47 0.1 she v_32 v_47 0.1 she v_42 v_47 0.1 she v_48 v_47 0.1 she v_53 v_47 0.1 she v_47 v_48 0.1 she v_59 v_50 0.1 she v_47 v_53 0.1 she v_50 v_59 0.1 she v_67 v_59 0.1 she v_63 v_61 0.1 she v_64 v_61 0.1 she v_78 v_61 0.1 she v_61 v_63 0.1 she v_61 v_64 0.1 she v_73 v_65 0.1 she v_59 v_67 0.1 she v_94 v_70 0.1 she v_65 v_73 0.1 she v_87 v_73 0.1 she v_88 v_73 0.1 she v_82 v_75 0.1 she v_92 v_76 0.0 she v_92 v_77 0.1 she v_61 v_78 0.1 she v_87 v_80 0.1 she v_88 v_80 0.0 she v_96 v_80 0.1 she v_75 v_82 0.1 she v_93 v_84 0.1 she v_108 v_86 0.1 she v_73 v_87 0.1 she v_80 v_87 0.1 she v_73 v_88 0.1 she v_80 v_88 0.0 she v_76 v_92 0.0 she v_77 v_92 0.1 she v_84 v_93 0.1 she v_70 v_94 0.1 she v_80 v_96 0.1 she v_100 v_99 0.1 she v_99 v_100 0.1 she v_101 v_100 0.1 she v_100 v_101 0.1 she v_104 v_103 0.1 she v_103 v_104 0.1 she v_86 v_108 0.1 she v_125 v_110 0.1 she v_117 v_111 0.1 she v_125 v_111 0.0 she v_114 v_113 0.1 she v_113 v_114 0.1 she v_111 v_117 0.1 she v_120 v_119 0.1 she v_129 v_119 0.1 she v_119 v_120 0.1 she v_110 v_125 0.1 she v_111 v_125 0.0 she v_136 v_125 0.1 she v_119 v_129 0.1 she v_125 v_136 0.1 she v_147 v_138 0.1 she v_148 v_140 0.1 she v_149 v_140 0.1 she v_148 v_141 0.1 she v_149 v_141 0.1 she v_138 v_147 0.1 she v_140 v_148 0.1 she v_141 v_148 0.1 she v_140 v_149 0.1 she v_141 v_149 0.1 she v_13 v_4 0.0 she v_4 v_13 0.0 she v_42 v_31 0.0 she v_42 v_32 0.0 she v_31 v_42 0.0 she v_32 v_42 0.0 she v_61 v_43 0.0 she v_62 v_43 0.0 she v_61 v_52 0.0 she v_75 v_58 0.0 she v_61 v_60 0.0 she v_43 v_61 0.0 she v_52 v_61 0.0 she v_60 v_61 0.0 she v_68 v_61 0.0 she v_69 v_61 0.0 she v_43 v_62 0.0 she v_73 v_66 0.0 she v_75 v_67 0.0 she v_82 v_67 0.0 she v_61 v_68 0.0 she v_61 v_69 0.0 she v_86 v_70 0.0 she v_73 v_72 0.0 she v_66 v_73 0.0 she v_72 v_73 0.0 she v_74 v_73 0.0 she v_79 v_73 0.0 she v_80 v_73 0.0 she v_73 v_74 0.0 she v_58 v_75 0.0 she v_67 v_75 0.0 she v_91 v_76 0.0 she v_91 v_77 0.0 she v_73 v_79 0.0 she v_73 v_80 0.0 she v_67 v_82 0.0 she v_91 v_83 0.0 she v_92 v_83 0.0 she v_70 v_86 0.0 she v_94 v_86 0.0 she v_91 v_90 0.0 she v_92 v_90 0.0 she v_76 v_91 0.0 she v_77 v_91 0.0 she v_83 v_91 0.0 she v_90 v_91 0.0 she v_92 v_91 0.0 she v_83 v_92 0.0 she v_90 v_92 0.0 she v_91 v_92 0.0 she v_86 v_94 0.0 she v_108 v_94 0.0 she v_94 v_108 0.0 she v_126 v_117 0.0 she v_117 v_126 0.0 she v_133 v_131 0.0 she v_131 v_133 0.0 she v_40 v_39 0.0 she v_39 v_40 0.0 she v_45 v_40 0.0 she v_40 v_45 0.0 she v_61 v_51 0.0 she v_62 v_51 0.0 she v_67 v_58 0.0 she v_51 v_61 0.0 she v_51 v_62 0.0 she v_68 v_62 0.0 she v_58 v_67 0.0 she v_62 v_68 0.0 she v_86 v_71 0.0 she v_102 v_85 0.0 she v_71 v_86 0.0 she v_103 v_95 0.0 she v_85 v_102 0.0 she v_95 v_103 0.0 she v_111 v_105 0.0 she v_111 v_110 0.0 she v_105 v_111 0.0 she v_110 v_111 0.0 she v_113 v_112 0.0 she v_112 v_113 0.0 she v_118 v_113 0.0 she v_125 v_117 0.0 she v_113 v_118 0.0 she v_117 v_125 0.0 she v_146 v_131 0.0 she v_131 v_146 0.0 she v_62 v_52 0.0 she v_58 v_57 0.0 she v_57 v_58 0.0 she v_59 v_58 0.0 she v_58 v_59 0.0 she v_62 v_60 0.0 she v_62 v_61 0.0 she v_52 v_62 0.0 she v_60 v_62 0.0 she v_61 v_62 0.0 she v_78 v_62 0.0 she v_62 v_78 0.0 she v_131 v_121 0.0 she v_126 v_125 0.0 she v_127 v_125 0.0 she v_142 v_125 0.0 she v_125 v_126 0.0 she v_127 v_126 0.0 she v_142 v_126 0.0 she v_125 v_127 0.0 she v_126 v_127 0.0 she v_144 v_128 0.0 she v_131 v_130 0.0 she v_121 v_131 0.0 she v_130 v_131 0.0 she v_138 v_131 0.0 she v_147 v_131 0.0 she v_133 v_132 0.0 she v_146 v_132 0.0 she v_132 v_133 0.0 she v_131 v_138 0.0 she v_125 v_142 0.0 she v_126 v_142 0.0 she v_128 v_144 0.0 she v_132 v_146 0.0 she v_131 v_147 0.0 she v_29 v_28 0.0 she v_28 v_29 0.0 she v_58 v_50 0.0 she v_50 v_58 0.0 she v_63 v_62 0.0 she v_69 v_62 0.0 she v_62 v_63 0.0 she v_62 v_69 0.0 she v_132 v_121 0.0 she v_132 v_130 0.0 she v_132 v_131 0.0 she v_121 v_132 0.0 she v_130 v_132 0.0 she v_131 v_132 0.0 she v_138 v_132 0.0 she v_147 v_132 0.0 she v_132 v_138 0.0 she v_132 v_147 0.0 she v_64 v_62 0.0 she v_62 v_64 0.0 she v_13 v_5 0.0 she v_5 v_13 0.0 she v_85 v_84 0.0 she v_84 v_85 0.0 she v_93 v_85 0.0 she v_85 v_93 0.0 she v_143 v_128 0.0 she v_128 v_143 0.0 she v_5 v_4 0.0 she v_4 v_5 0.0 she v_95 v_70 0.0 she v_70 v_95 0.0 she v_95 v_71 0.0 she v_71 v_95 0.0 she v_95 v_86 0.0 she v_95 v_94 0.0 she v_86 v_95 0.0 she v_94 v_95 0.0 she v_144 v_143 0.0 she v_143 v_144 0.0 she v_108 v_95 0.0 she v_95 v_108 0.0 she v_0 0.7 shn v_1 0.6 shn v_2 0.7 shn v_3 0.9 shn v_4 0.7 shn v_5 0.4 shn v_6 0.7 shn v_7 0.5 shn v_8 0.9 shn v_9 0.9 shn v_10 0.1 shn v_11 0.2 shn v_12 0.4 shn v_13 0.7 shn v_14 0.6 shn v_15 0.0 shn v_16 0.0 shn v_17 0.2 shn v_18 0.0 shn v_19 0.0 shn v_20 0.3 shn v_21 0.8 shn v_22 0.7 shn v_23 1.0 shn v_24 0.5 shn v_25 0.0 shn v_26 0.2 shn v_27 0.8 shn v_28 0.9 shn v_29 0.7 shn v_30 0.6 shn v_31 0.7 shn v_32 0.9 shn v_33 0.8 shn v_34 0.8 shn v_35 0.8 shn v_36 0.9 shn v_37 0.9 shn v_38 1.0 shn v_39 0.8 shn v_40 0.3 shn v_41 0.5 shn v_42 0.1 shn v_43 1.0 shn v_44 1.0 shn v_45 0.6 shn v_46 0.7 shn v_47 0.1 shn v_48 0.5 shn v_49 1.0 shn v_50 0.9 shn v_51 1.0 shn v_52 0.7 shn v_53 0.7 shn v_54 0.5 shn v_55 0.5 shn v_56 0.9 shn v_57 0.6 shn v_58 0.1 shn v_59 0.4 shn v_60 0.3 shn v_61 0.0 shn v_62 0.0 shn v_63 0.6 shn v_64 1.0 shn v_65 0.2 shn v_66 0.4 shn v_67 0.3 shn v_68 0.7 shn v_69 0.3 shn v_70 1.0 shn v_71 1.0 shn v_72 0.1 shn v_73 0.0 shn v_74 0.7 shn v_75 0.5 shn v_76 1.0 shn v_77 0.9 shn v_78 0.7 shn v_79 0.6 shn v_80 0.0 shn v_81 0.9 shn v_82 0.9 shn v_83 0.7 shn v_84 0.7 shn v_85 0.3 shn v_86 0.4 shn v_87 1.0 shn v_88 0.6 shn v_89 0.9 shn v_90 0.8 shn v_91 0.1 shn v_92 0.0 shn v_93 0.6 shn v_94 0.3 shn v_95 0.0 shn v_96 0.8 shn v_97 0.7 shn v_98 0.9 shn v_99 0.4 shn v_100 0.0 shn v_101 0.4 shn v_102 0.9 shn v_103 0.8 shn v_104 0.7 shn v_105 0.8 shn v_106 0.2 shn v_107 0.8 shn v_108 1.0 shn v_109 0.8 shn v_110 0.8 shn v_111 0.0 shn v_112 0.9 shn v_113 0.1 shn v_114 0.2 shn v_115 1.0 shn v_116 0.8 shn v_117 0.2 shn v_118 0.8 shn v_119 0.3 shn v_120 0.7 shn v_121 0.9 shn v_122 0.5 shn v_123 0.4 shn v_124 0.4 shn v_125 0.0 shn v_126 0.1 shn v_127 0.7 shn v_128 0.9 shn v_129 0.8 shn v_130 0.6 shn v_131 0.0 shn v_132 0.0 shn v_133 0.8 shn v_134 0.2 shn v_135 0.4 shn v_136 1.0 shn v_137 0.8 shn v_138 0.3 shn v_139 0.8 shn v_140 0.1 shn v_141 0.2 shn v_142 1.0 shn v_143 0.4 shn v_144 0.5 shn v_145 0.9 shn v_146 0.9 shn v_147 0.8 shn v_148 0.8 shn v_149 0.9 shn grestore %iterand12 hdist -1 mul vdist -1 mul translate gsave scalef scalef -1 mul scale v_10 v_0 0.57 she v_12 v_0 0.57 she v_20 v_0 0.57 she v_10 v_1 0.57 she v_12 v_1 0.57 she v_20 v_1 0.57 she v_10 v_2 0.57 she v_12 v_2 0.57 she v_20 v_2 0.57 she v_10 v_3 0.57 she v_12 v_3 0.57 she v_20 v_3 0.57 she v_13 v_4 0.57 she v_22 v_4 0.57 she v_26 v_6 0.57 she v_8 v_7 0.57 she v_26 v_7 0.57 she v_27 v_7 0.57 she v_35 v_7 0.57 she v_36 v_7 0.57 she v_7 v_8 0.57 she v_26 v_8 0.57 she v_10 v_9 0.57 she v_12 v_9 0.57 she v_20 v_9 0.57 she v_0 v_10 0.57 she v_1 v_10 0.57 she v_2 v_10 0.57 she v_3 v_10 0.57 she v_9 v_10 0.57 she v_12 v_10 0.57 she v_17 v_10 0.57 she v_20 v_10 0.57 she v_21 v_10 0.57 she v_28 v_10 0.57 she v_29 v_10 0.57 she v_37 v_10 0.57 she v_38 v_10 0.57 she v_0 v_12 0.57 she v_1 v_12 0.57 she v_2 v_12 0.57 she v_3 v_12 0.57 she v_9 v_12 0.57 she v_10 v_12 0.57 she v_17 v_12 0.57 she v_20 v_12 0.57 she v_21 v_12 0.57 she v_28 v_12 0.57 she v_29 v_12 0.57 she v_37 v_12 0.57 she v_38 v_12 0.57 she v_4 v_13 0.57 she v_22 v_13 0.57 she v_26 v_14 0.57 she v_10 v_17 0.57 she v_12 v_17 0.57 she v_20 v_17 0.57 she v_28 v_17 0.57 she v_29 v_17 0.57 she v_0 v_20 0.57 she v_1 v_20 0.57 she v_2 v_20 0.57 she v_3 v_20 0.57 she v_9 v_20 0.57 she v_10 v_20 0.57 she v_12 v_20 0.57 she v_17 v_20 0.57 she v_21 v_20 0.57 she v_28 v_20 0.57 she v_29 v_20 0.57 she v_37 v_20 0.57 she v_38 v_20 0.57 she v_10 v_21 0.57 she v_12 v_21 0.57 she v_20 v_21 0.57 she v_4 v_22 0.57 she v_13 v_22 0.57 she v_26 v_23 0.57 she v_26 v_24 0.57 she v_6 v_26 0.57 she v_7 v_26 0.57 she v_8 v_26 0.57 she v_14 v_26 0.57 she v_23 v_26 0.57 she v_24 v_26 0.57 she v_27 v_26 0.57 she v_33 v_26 0.57 she v_34 v_26 0.57 she v_35 v_26 0.57 she v_36 v_26 0.57 she v_7 v_27 0.57 she v_26 v_27 0.57 she v_10 v_28 0.57 she v_12 v_28 0.57 she v_17 v_28 0.57 she v_20 v_28 0.57 she v_10 v_29 0.57 she v_12 v_29 0.57 she v_17 v_29 0.57 she v_20 v_29 0.57 she v_39 v_30 0.57 she v_40 v_30 0.57 she v_41 v_30 0.57 she v_48 v_30 0.57 she v_54 v_30 0.57 she v_73 v_30 0.57 she v_41 v_31 0.57 she v_48 v_31 0.57 she v_54 v_31 0.57 she v_73 v_31 0.57 she v_41 v_32 0.57 she v_48 v_32 0.57 she v_54 v_32 0.57 she v_73 v_32 0.57 she v_26 v_33 0.57 she v_26 v_34 0.57 she v_7 v_35 0.57 she v_26 v_35 0.57 she v_7 v_36 0.57 she v_26 v_36 0.57 she v_10 v_37 0.57 she v_12 v_37 0.57 she v_20 v_37 0.57 she v_10 v_38 0.57 she v_12 v_38 0.57 she v_20 v_38 0.57 she v_30 v_39 0.57 she v_40 v_39 0.56 she v_41 v_39 0.57 she v_45 v_39 0.57 she v_48 v_39 0.57 she v_54 v_39 0.57 she v_30 v_40 0.57 she v_39 v_40 0.56 she v_41 v_40 0.57 she v_44 v_40 0.57 she v_45 v_40 0.57 she v_46 v_40 0.57 she v_48 v_40 0.57 she v_54 v_40 0.57 she v_73 v_40 0.57 she v_30 v_41 0.57 she v_31 v_41 0.57 she v_32 v_41 0.57 she v_39 v_41 0.57 she v_40 v_41 0.57 she v_44 v_41 0.57 she v_45 v_41 0.57 she v_46 v_41 0.57 she v_48 v_41 0.57 she v_53 v_41 0.57 she v_54 v_41 0.57 she v_73 v_41 0.57 she v_55 v_42 0.57 she v_73 v_42 0.57 she v_40 v_44 0.57 she v_41 v_44 0.57 she v_48 v_44 0.57 she v_60 v_44 0.57 she v_69 v_44 0.57 she v_39 v_45 0.57 she v_40 v_45 0.57 she v_41 v_45 0.57 she v_48 v_45 0.57 she v_54 v_45 0.57 she v_73 v_45 0.57 she v_40 v_46 0.57 she v_41 v_46 0.57 she v_48 v_46 0.57 she v_54 v_46 0.57 she v_73 v_46 0.57 she v_49 v_47 0.57 she v_55 v_47 0.57 she v_73 v_47 0.57 she v_30 v_48 0.57 she v_31 v_48 0.57 she v_32 v_48 0.57 she v_39 v_48 0.57 she v_40 v_48 0.57 she v_41 v_48 0.57 she v_44 v_48 0.57 she v_45 v_48 0.57 she v_46 v_48 0.57 she v_53 v_48 0.57 she v_54 v_48 0.57 she v_65 v_48 0.57 she v_72 v_48 0.57 she v_80 v_48 0.57 she v_47 v_49 0.57 she v_65 v_49 0.57 she v_66 v_49 0.57 she v_41 v_53 0.57 she v_48 v_53 0.57 she v_54 v_53 0.57 she v_65 v_53 0.57 she v_72 v_53 0.57 she v_80 v_53 0.57 she v_30 v_54 0.57 she v_31 v_54 0.57 she v_32 v_54 0.57 she v_39 v_54 0.57 she v_40 v_54 0.57 she v_41 v_54 0.57 she v_45 v_54 0.57 she v_46 v_54 0.57 she v_48 v_54 0.57 she v_53 v_54 0.57 she v_55 v_54 0.57 she v_65 v_54 0.57 she v_66 v_54 0.57 she v_72 v_54 0.56 she v_80 v_54 0.56 she v_42 v_55 0.57 she v_47 v_55 0.57 she v_54 v_55 0.57 she v_65 v_55 0.57 she v_66 v_55 0.57 she v_58 v_56 0.57 she v_65 v_56 0.57 she v_66 v_56 0.57 she v_67 v_56 0.57 she v_89 v_57 0.57 she v_56 v_58 0.57 she v_81 v_58 0.57 she v_44 v_60 0.57 she v_48 v_65 0.57 she v_49 v_65 0.57 she v_53 v_65 0.57 she v_54 v_65 0.57 she v_55 v_65 0.57 she v_56 v_65 0.57 she v_66 v_65 0.57 she v_74 v_65 0.57 she v_79 v_65 0.57 she v_81 v_65 0.57 she v_87 v_65 0.57 she v_88 v_65 0.57 she v_96 v_65 0.57 she v_97 v_65 0.57 she v_49 v_66 0.57 she v_54 v_66 0.57 she v_55 v_66 0.57 she v_56 v_66 0.57 she v_65 v_66 0.57 she v_74 v_66 0.57 she v_79 v_66 0.57 she v_81 v_66 0.57 she v_96 v_66 0.57 she v_97 v_66 0.57 she v_56 v_67 0.57 she v_44 v_69 0.57 she v_48 v_72 0.57 she v_53 v_72 0.57 she v_54 v_72 0.56 she v_89 v_72 0.57 she v_30 v_73 0.57 she v_31 v_73 0.57 she v_32 v_73 0.57 she v_40 v_73 0.57 she v_41 v_73 0.57 she v_42 v_73 0.57 she v_45 v_73 0.57 she v_46 v_73 0.57 she v_47 v_73 0.57 she v_89 v_73 0.57 she v_98 v_73 0.57 she v_104 v_73 0.57 she v_65 v_74 0.57 she v_66 v_74 0.57 she v_89 v_75 0.57 she v_99 v_76 0.57 she v_101 v_76 0.57 she v_106 v_76 0.57 she v_113 v_76 0.57 she v_99 v_77 0.57 she v_101 v_77 0.57 she v_106 v_77 0.57 she v_113 v_77 0.57 she v_65 v_79 0.57 she v_66 v_79 0.57 she v_48 v_80 0.57 she v_53 v_80 0.57 she v_54 v_80 0.56 she v_89 v_80 0.57 she v_58 v_81 0.57 she v_65 v_81 0.57 she v_66 v_81 0.57 she v_99 v_83 0.57 she v_93 v_84 0.57 she v_95 v_84 0.57 she v_102 v_84 0.57 she v_95 v_85 0.57 she v_65 v_87 0.57 she v_65 v_88 0.57 she v_57 v_89 0.57 she v_72 v_89 0.57 she v_73 v_89 0.57 she v_75 v_89 0.57 she v_80 v_89 0.57 she v_111 v_89 0.57 she v_117 v_89 0.57 she v_126 v_89 0.56 she v_99 v_90 0.57 she v_137 v_91 0.57 she v_137 v_92 0.56 she v_84 v_93 0.57 she v_95 v_93 0.57 she v_102 v_93 0.57 she v_104 v_94 0.57 she v_84 v_95 0.57 she v_85 v_95 0.57 she v_93 v_95 0.57 she v_102 v_95 0.57 she v_65 v_96 0.57 she v_66 v_96 0.57 she v_65 v_97 0.57 she v_66 v_97 0.57 she v_111 v_97 0.56 she v_117 v_97 0.56 she v_73 v_98 0.57 she v_76 v_99 0.57 she v_77 v_99 0.57 she v_83 v_99 0.57 she v_90 v_99 0.57 she v_101 v_99 0.57 she v_106 v_99 0.57 she v_107 v_99 0.57 she v_112 v_99 0.57 she v_113 v_99 0.57 she v_114 v_99 0.57 she v_115 v_99 0.57 she v_118 v_99 0.57 she v_119 v_99 0.57 she v_120 v_99 0.57 she v_129 v_99 0.57 she v_137 v_99 0.57 she v_76 v_101 0.57 she v_77 v_101 0.57 she v_99 v_101 0.57 she v_115 v_101 0.57 she v_120 v_101 0.57 she v_129 v_101 0.57 she v_84 v_102 0.57 she v_93 v_102 0.57 she v_95 v_102 0.57 she v_73 v_104 0.57 she v_94 v_104 0.57 she v_122 v_104 0.57 she v_123 v_104 0.57 she v_124 v_104 0.57 she v_135 v_104 0.57 she v_76 v_106 0.57 she v_77 v_106 0.57 she v_99 v_106 0.57 she v_115 v_106 0.57 she v_120 v_106 0.57 she v_129 v_106 0.57 she v_137 v_106 0.57 she v_99 v_107 0.57 she v_122 v_109 0.57 she v_123 v_109 0.57 she v_124 v_109 0.57 she v_135 v_109 0.57 she v_127 v_110 0.57 she v_142 v_110 0.57 she v_89 v_111 0.57 she v_97 v_111 0.56 she v_99 v_112 0.57 she v_113 v_112 0.57 she v_76 v_113 0.57 she v_77 v_113 0.57 she v_99 v_113 0.57 she v_112 v_113 0.57 she v_114 v_113 0.57 she v_115 v_113 0.57 she v_118 v_113 0.56 she v_119 v_113 0.56 she v_120 v_113 0.56 she v_137 v_113 0.57 she v_99 v_114 0.57 she v_113 v_114 0.57 she v_115 v_114 0.57 she v_120 v_114 0.57 she v_129 v_114 0.57 she v_137 v_114 0.57 she v_99 v_115 0.57 she v_101 v_115 0.57 she v_106 v_115 0.57 she v_113 v_115 0.57 she v_114 v_115 0.57 she v_123 v_116 0.57 she v_124 v_116 0.57 she v_135 v_116 0.57 she v_89 v_117 0.57 she v_97 v_117 0.56 she v_99 v_118 0.57 she v_113 v_118 0.56 she v_99 v_119 0.57 she v_113 v_119 0.56 she v_99 v_120 0.57 she v_101 v_120 0.57 she v_106 v_120 0.57 she v_113 v_120 0.56 she v_114 v_120 0.57 she v_138 v_121 0.57 she v_104 v_122 0.57 she v_109 v_122 0.57 she v_123 v_122 0.57 she v_124 v_122 0.57 she v_135 v_122 0.57 she v_104 v_123 0.57 she v_109 v_123 0.57 she v_116 v_123 0.57 she v_122 v_123 0.57 she v_124 v_123 0.57 she v_135 v_123 0.57 she v_139 v_123 0.57 she v_148 v_123 0.57 she v_149 v_123 0.57 she v_104 v_124 0.57 she v_109 v_124 0.57 she v_116 v_124 0.57 she v_122 v_124 0.57 she v_123 v_124 0.57 she v_135 v_124 0.57 she v_139 v_124 0.57 she v_148 v_124 0.57 she v_149 v_124 0.57 she v_89 v_126 0.56 she v_110 v_127 0.57 she v_142 v_127 0.57 she v_99 v_129 0.57 she v_101 v_129 0.57 she v_106 v_129 0.57 she v_114 v_129 0.57 she v_138 v_130 0.57 she v_138 v_133 0.57 she v_104 v_135 0.57 she v_109 v_135 0.57 she v_116 v_135 0.57 she v_122 v_135 0.57 she v_123 v_135 0.57 she v_124 v_135 0.57 she v_139 v_135 0.57 she v_148 v_135 0.57 she v_149 v_135 0.57 she v_91 v_137 0.57 she v_92 v_137 0.56 she v_99 v_137 0.57 she v_106 v_137 0.57 she v_113 v_137 0.57 she v_114 v_137 0.57 she v_138 v_137 0.57 she v_121 v_138 0.57 she v_130 v_138 0.57 she v_133 v_138 0.57 she v_137 v_138 0.57 she v_145 v_138 0.57 she v_146 v_138 0.57 she v_147 v_138 0.57 she v_123 v_139 0.57 she v_124 v_139 0.57 she v_135 v_139 0.57 she v_110 v_142 0.57 she v_127 v_142 0.57 she v_138 v_145 0.57 she v_138 v_146 0.57 she v_138 v_147 0.57 she v_123 v_148 0.57 she v_124 v_148 0.57 she v_135 v_148 0.57 she v_123 v_149 0.57 she v_124 v_149 0.57 she v_135 v_149 0.57 she v_44 v_42 0.56 she v_42 v_44 0.56 she v_47 v_44 0.56 she v_44 v_47 0.56 she v_73 v_48 0.56 she v_72 v_49 0.56 she v_80 v_49 0.56 she v_59 v_50 0.56 she v_73 v_53 0.56 she v_72 v_55 0.56 she v_80 v_55 0.56 she v_72 v_56 0.56 she v_80 v_56 0.56 she v_59 v_57 0.56 she v_50 v_59 0.56 she v_57 v_59 0.56 she v_75 v_59 0.56 she v_82 v_59 0.56 she v_89 v_59 0.56 she v_72 v_65 0.56 she v_80 v_65 0.56 she v_72 v_66 0.56 she v_80 v_66 0.56 she v_49 v_72 0.56 she v_55 v_72 0.56 she v_56 v_72 0.56 she v_65 v_72 0.56 she v_66 v_72 0.56 she v_74 v_72 0.56 she v_79 v_72 0.56 she v_80 v_72 0.56 she v_81 v_72 0.56 she v_87 v_72 0.56 she v_88 v_72 0.56 she v_96 v_72 0.56 she v_97 v_72 0.56 she v_48 v_73 0.56 she v_53 v_73 0.56 she v_72 v_74 0.56 she v_80 v_74 0.56 she v_59 v_75 0.56 she v_72 v_79 0.56 she v_80 v_79 0.56 she v_49 v_80 0.56 she v_55 v_80 0.56 she v_56 v_80 0.56 she v_65 v_80 0.56 she v_66 v_80 0.56 she v_72 v_80 0.56 she v_74 v_80 0.56 she v_79 v_80 0.56 she v_81 v_80 0.56 she v_87 v_80 0.56 she v_88 v_80 0.56 she v_96 v_80 0.56 she v_97 v_80 0.56 she v_72 v_81 0.56 she v_80 v_81 0.56 she v_59 v_82 0.56 she v_72 v_87 0.56 she v_80 v_87 0.56 she v_72 v_88 0.56 she v_80 v_88 0.56 she v_59 v_89 0.56 she v_72 v_96 0.56 she v_80 v_96 0.56 she v_72 v_97 0.56 she v_80 v_97 0.56 she v_137 v_100 0.56 she v_129 v_113 0.56 she v_113 v_129 0.56 she v_100 v_137 0.56 she v_67 v_50 0.50 she v_67 v_57 0.50 she v_67 v_59 0.50 she v_50 v_67 0.50 she v_57 v_67 0.50 she v_59 v_67 0.50 she v_75 v_67 0.50 she v_82 v_67 0.50 she v_89 v_67 0.50 she v_67 v_75 0.50 she v_67 v_82 0.50 she v_67 v_89 0.50 she v_125 v_89 0.50 she v_111 v_98 0.50 she v_117 v_98 0.50 she v_111 v_105 0.50 she v_117 v_105 0.50 she v_111 v_110 0.50 she v_117 v_110 0.50 she v_98 v_111 0.50 she v_105 v_111 0.50 she v_110 v_111 0.50 she v_117 v_111 0.50 she v_127 v_111 0.50 she v_136 v_111 0.50 she v_142 v_111 0.50 she v_98 v_117 0.50 she v_105 v_117 0.50 she v_110 v_117 0.50 she v_111 v_117 0.50 she v_127 v_117 0.50 she v_136 v_117 0.50 she v_142 v_117 0.50 she v_89 v_125 0.50 she v_111 v_127 0.50 she v_117 v_127 0.50 she v_111 v_136 0.50 she v_117 v_136 0.50 she v_111 v_142 0.50 she v_117 v_142 0.50 she v_11 v_0 0.44 she v_18 v_0 0.50 she v_11 v_1 0.44 she v_18 v_1 0.50 she v_11 v_2 0.44 she v_18 v_2 0.50 she v_11 v_3 0.44 she v_18 v_3 0.50 she v_11 v_9 0.44 she v_18 v_9 0.50 she v_11 v_10 0.44 she v_18 v_10 0.50 she v_0 v_11 0.44 she v_1 v_11 0.44 she v_2 v_11 0.44 she v_3 v_11 0.44 she v_9 v_11 0.44 she v_10 v_11 0.44 she v_12 v_11 0.44 she v_17 v_11 0.44 she v_18 v_11 0.44 she v_20 v_11 0.44 she v_21 v_11 0.44 she v_28 v_11 0.44 she v_29 v_11 0.44 she v_37 v_11 0.44 she v_38 v_11 0.44 she v_11 v_12 0.44 she v_18 v_12 0.50 she v_11 v_17 0.44 she v_18 v_17 0.50 she v_0 v_18 0.50 she v_1 v_18 0.50 she v_2 v_18 0.50 she v_3 v_18 0.50 she v_9 v_18 0.50 she v_10 v_18 0.50 she v_11 v_18 0.44 she v_12 v_18 0.50 she v_17 v_18 0.50 she v_20 v_18 0.50 she v_21 v_18 0.50 she v_28 v_18 0.44 she v_29 v_18 0.44 she v_37 v_18 0.50 she v_38 v_18 0.50 she v_11 v_20 0.44 she v_18 v_20 0.50 she v_11 v_21 0.44 she v_18 v_21 0.50 she v_11 v_28 0.44 she v_18 v_28 0.44 she v_11 v_29 0.44 she v_18 v_29 0.44 she v_11 v_37 0.44 she v_18 v_37 0.50 she v_11 v_38 0.44 she v_18 v_38 0.50 she v_61 v_43 0.44 she v_61 v_44 0.44 she v_61 v_51 0.44 she v_61 v_52 0.44 she v_61 v_60 0.44 she v_43 v_61 0.44 she v_44 v_61 0.44 she v_51 v_61 0.44 she v_52 v_61 0.44 she v_60 v_61 0.44 she v_63 v_61 0.44 she v_64 v_61 0.44 she v_68 v_61 0.44 she v_69 v_61 0.44 she v_78 v_61 0.44 she v_61 v_63 0.44 she v_61 v_64 0.44 she v_61 v_68 0.44 she v_61 v_69 0.44 she v_61 v_78 0.44 she v_144 v_128 0.44 she v_128 v_144 0.44 she v_126 v_97 0.44 she v_97 v_126 0.44 she v_15 v_6 0.38 she v_15 v_7 0.38 she v_15 v_8 0.38 she v_15 v_14 0.38 she v_6 v_15 0.38 she v_7 v_15 0.38 she v_8 v_15 0.38 she v_14 v_15 0.38 she v_23 v_15 0.38 she v_24 v_15 0.38 she v_26 v_15 0.38 she v_27 v_15 0.38 she v_33 v_15 0.38 she v_34 v_15 0.38 she v_35 v_15 0.38 she v_36 v_15 0.38 she v_15 v_23 0.38 she v_15 v_24 0.38 she v_15 v_26 0.38 she v_15 v_27 0.38 she v_15 v_33 0.38 she v_15 v_34 0.38 she v_15 v_35 0.38 she v_15 v_36 0.38 she v_104 v_95 0.38 she v_95 v_104 0.38 she v_25 v_6 0.22 she v_25 v_7 0.22 she v_25 v_8 0.22 she v_25 v_14 0.22 she v_25 v_15 0.22 she v_25 v_23 0.22 she v_25 v_24 0.22 she v_6 v_25 0.22 she v_7 v_25 0.22 she v_8 v_25 0.22 she v_14 v_25 0.22 she v_15 v_25 0.22 she v_23 v_25 0.22 she v_24 v_25 0.22 she v_26 v_25 0.22 she v_27 v_25 0.22 she v_33 v_25 0.22 she v_34 v_25 0.22 she v_35 v_25 0.22 she v_36 v_25 0.22 she v_25 v_26 0.22 she v_25 v_27 0.22 she v_25 v_33 0.22 she v_25 v_34 0.22 she v_25 v_35 0.22 she v_25 v_36 0.22 she v_54 v_42 0.22 she v_42 v_54 0.22 she v_134 v_104 0.22 she v_104 v_134 0.22 she v_120 v_91 0.10 she v_129 v_91 0.10 she v_125 v_97 0.10 she v_134 v_109 0.10 she v_134 v_116 0.10 she v_91 v_120 0.10 she v_134 v_122 0.10 she v_134 v_123 0.10 she v_134 v_124 0.10 she v_97 v_125 0.10 she v_91 v_129 0.10 she v_109 v_134 0.10 she v_116 v_134 0.10 she v_122 v_134 0.10 she v_123 v_134 0.10 she v_124 v_134 0.10 she v_135 v_134 0.10 she v_139 v_134 0.10 she v_148 v_134 0.10 she v_149 v_134 0.10 she v_134 v_135 0.10 she v_134 v_139 0.10 she v_134 v_148 0.10 she v_134 v_149 0.10 she v_112 v_91 0.10 she v_113 v_91 0.10 she v_115 v_91 0.10 she v_118 v_91 0.10 she v_119 v_91 0.10 she v_91 v_112 0.10 she v_91 v_113 0.10 she v_91 v_115 0.10 she v_91 v_118 0.10 she v_91 v_119 0.10 she v_137 v_131 0.10 she v_131 v_137 0.10 she v_54 v_47 0.10 she v_47 v_54 0.10 she v_114 v_91 0.10 she v_119 v_92 0.10 she v_120 v_92 0.10 she v_129 v_92 0.10 she v_141 v_104 0.10 she v_91 v_114 0.10 she v_92 v_119 0.10 she v_92 v_120 0.10 she v_131 v_121 0.10 she v_92 v_129 0.10 she v_131 v_130 0.10 she v_121 v_131 0.10 she v_130 v_131 0.10 she v_133 v_131 0.10 she v_138 v_131 0.10 she v_145 v_131 0.10 she v_146 v_131 0.10 she v_147 v_131 0.10 she v_131 v_133 0.10 she v_131 v_138 0.10 she v_104 v_141 0.10 she v_131 v_145 0.10 she v_131 v_146 0.10 she v_131 v_147 0.10 she v_91 v_76 0.10 she v_91 v_77 0.10 she v_91 v_83 0.10 she v_91 v_90 0.10 she v_76 v_91 0.10 she v_77 v_91 0.10 she v_83 v_91 0.10 she v_90 v_91 0.10 she v_99 v_91 0.10 she v_101 v_91 0.10 she v_106 v_91 0.10 she v_107 v_91 0.10 she v_112 v_92 0.10 she v_113 v_92 0.10 she v_114 v_92 0.10 she v_115 v_92 0.10 she v_118 v_92 0.10 she v_126 v_98 0.10 she v_91 v_99 0.10 she v_91 v_101 0.10 she v_126 v_105 0.10 she v_91 v_106 0.10 she v_91 v_107 0.10 she v_126 v_110 0.10 she v_126 v_111 0.10 she v_92 v_112 0.10 she v_92 v_113 0.10 she v_92 v_114 0.10 she v_92 v_115 0.10 she v_126 v_117 0.10 she v_92 v_118 0.10 she v_98 v_126 0.10 she v_105 v_126 0.10 she v_110 v_126 0.10 she v_111 v_126 0.10 she v_117 v_126 0.10 she v_127 v_126 0.10 she v_136 v_126 0.10 she v_142 v_126 0.10 she v_126 v_127 0.10 she v_126 v_136 0.10 she v_126 v_142 0.10 she v_106 v_92 0.10 she v_107 v_92 0.10 she v_92 v_106 0.10 she v_92 v_107 0.10 she v_141 v_109 0.10 she v_141 v_116 0.10 she v_141 v_122 0.10 she v_141 v_123 0.10 she v_141 v_124 0.10 she v_141 v_134 0.10 she v_141 v_135 0.10 she v_141 v_139 0.10 she v_109 v_141 0.10 she v_116 v_141 0.10 she v_122 v_141 0.10 she v_123 v_141 0.10 she v_124 v_141 0.10 she v_134 v_141 0.10 she v_135 v_141 0.10 she v_139 v_141 0.10 she v_148 v_141 0.10 she v_149 v_141 0.10 she v_141 v_148 0.10 she v_141 v_149 0.10 she v_92 v_76 0.10 she v_92 v_77 0.10 she v_92 v_83 0.10 she v_92 v_90 0.10 she v_92 v_91 0.10 she v_76 v_92 0.10 she v_77 v_92 0.10 she v_83 v_92 0.10 she v_90 v_92 0.10 she v_91 v_92 0.10 she v_99 v_92 0.10 she v_101 v_92 0.10 she v_92 v_99 0.10 she v_92 v_101 0.10 she v_100 v_76 0.10 she v_100 v_77 0.10 she v_100 v_83 0.10 she v_100 v_90 0.10 she v_100 v_91 0.10 she v_100 v_92 0.10 she v_100 v_99 0.10 she v_76 v_100 0.10 she v_77 v_100 0.10 she v_83 v_100 0.10 she v_90 v_100 0.10 she v_91 v_100 0.10 she v_92 v_100 0.10 she v_99 v_100 0.10 she v_101 v_100 0.10 she v_100 v_101 0.10 she v_106 v_100 0.10 she v_107 v_100 0.10 she v_140 v_104 0.10 she v_100 v_106 0.10 she v_100 v_107 0.10 she v_104 v_140 0.10 she v_42 v_31 0.10 she v_42 v_32 0.10 she v_42 v_41 0.10 she v_31 v_42 0.10 she v_32 v_42 0.10 she v_41 v_42 0.10 she v_48 v_42 0.10 she v_53 v_42 0.10 she v_42 v_48 0.10 she v_42 v_53 0.10 she v_42 v_30 0.10 she v_30 v_42 0.10 she v_46 v_42 0.10 she v_42 v_46 0.10 she v_113 v_100 0.10 she v_114 v_100 0.10 she v_115 v_100 0.10 she v_140 v_109 0.10 she v_100 v_113 0.10 she v_100 v_114 0.10 she v_100 v_115 0.10 she v_140 v_116 0.10 she v_140 v_122 0.10 she v_140 v_123 0.10 she v_140 v_124 0.10 she v_140 v_134 0.10 she v_140 v_135 0.10 she v_140 v_139 0.10 she v_109 v_140 0.10 she v_116 v_140 0.10 she v_122 v_140 0.10 she v_123 v_140 0.10 she v_124 v_140 0.10 she v_134 v_140 0.10 she v_135 v_140 0.10 she v_139 v_140 0.10 she v_141 v_140 0.10 she v_148 v_140 0.10 she v_149 v_140 0.10 she v_140 v_141 0.10 she v_140 v_148 0.10 she v_140 v_149 0.10 she v_42 v_39 0.10 she v_42 v_40 0.10 she v_39 v_42 0.10 she v_40 v_42 0.10 she v_45 v_42 0.10 she v_42 v_45 0.10 she v_112 v_100 0.10 she v_118 v_100 0.10 she v_119 v_100 0.10 she v_120 v_100 0.10 she v_100 v_112 0.10 she v_100 v_118 0.10 she v_100 v_119 0.10 she v_100 v_120 0.10 she v_47 v_39 0.10 she v_39 v_47 0.10 she v_129 v_100 0.10 she v_100 v_129 0.10 she v_47 v_40 0.10 she v_47 v_45 0.10 she v_40 v_47 0.10 she v_45 v_47 0.10 she v_73 v_54 0.10 she v_54 v_73 0.10 she v_48 v_47 0.10 she v_47 v_48 0.10 she v_47 v_30 0.10 she v_47 v_31 0.10 she v_47 v_32 0.10 she v_47 v_41 0.10 she v_47 v_42 0.10 she v_47 v_46 0.10 she v_30 v_47 0.10 she v_31 v_47 0.10 she v_32 v_47 0.10 she v_41 v_47 0.10 she v_42 v_47 0.10 she v_46 v_47 0.10 she v_53 v_47 0.10 she v_47 v_53 0.10 she v_97 v_73 0.10 she v_73 v_97 0.10 she v_125 v_98 0.10 she v_125 v_105 0.10 she v_125 v_110 0.10 she v_125 v_111 0.10 she v_125 v_117 0.10 she v_98 v_125 0.10 she v_105 v_125 0.10 she v_110 v_125 0.10 she v_111 v_125 0.10 she v_117 v_125 0.10 she v_126 v_125 0.10 she v_127 v_125 0.10 she v_136 v_125 0.10 she v_142 v_125 0.10 she v_125 v_126 0.10 she v_125 v_127 0.10 she v_125 v_136 0.10 she v_125 v_142 0.10 she v_16 v_6 0.10 she v_16 v_7 0.10 she v_16 v_8 0.10 she v_16 v_14 0.10 she v_16 v_15 0.10 she v_6 v_16 0.10 she v_7 v_16 0.10 she v_8 v_16 0.10 she v_14 v_16 0.10 she v_15 v_16 0.10 she v_23 v_16 0.10 she v_24 v_16 0.10 she v_25 v_16 0.10 she v_26 v_16 0.10 she v_27 v_16 0.10 she v_33 v_16 0.10 she v_34 v_16 0.10 she v_35 v_16 0.10 she v_36 v_16 0.10 she v_16 v_23 0.10 she v_16 v_24 0.10 she v_16 v_25 0.10 she v_16 v_26 0.10 she v_16 v_27 0.10 she v_16 v_33 0.10 she v_16 v_34 0.10 she v_16 v_35 0.10 she v_16 v_36 0.10 she v_137 v_132 0.10 she v_132 v_137 0.10 she v_132 v_121 0.10 she v_132 v_130 0.10 she v_132 v_131 0.10 she v_121 v_132 0.10 she v_130 v_132 0.10 she v_131 v_132 0.10 she v_133 v_132 0.10 she v_138 v_132 0.10 she v_145 v_132 0.10 she v_146 v_132 0.10 she v_147 v_132 0.10 she v_132 v_133 0.10 she v_132 v_138 0.10 she v_132 v_145 0.10 she v_132 v_146 0.10 she v_132 v_147 0.10 she v_19 v_0 0.10 she v_19 v_1 0.10 she v_19 v_2 0.10 she v_19 v_3 0.10 she v_19 v_9 0.10 she v_19 v_10 0.10 she v_19 v_11 0.10 she v_19 v_12 0.10 she v_19 v_17 0.10 she v_19 v_18 0.10 she v_0 v_19 0.10 she v_1 v_19 0.10 she v_2 v_19 0.10 she v_3 v_19 0.10 she v_9 v_19 0.10 she v_10 v_19 0.10 she v_11 v_19 0.10 she v_12 v_19 0.10 she v_17 v_19 0.10 she v_18 v_19 0.10 she v_20 v_19 0.10 she v_21 v_19 0.10 she v_28 v_19 0.10 she v_29 v_19 0.10 she v_37 v_19 0.10 she v_38 v_19 0.10 she v_19 v_20 0.10 she v_19 v_21 0.10 she v_19 v_28 0.10 she v_19 v_29 0.10 she v_19 v_37 0.10 she v_19 v_38 0.10 she v_62 v_44 0.10 she v_89 v_58 0.10 she v_44 v_62 0.10 she v_58 v_89 0.10 she v_73 v_55 0.10 she v_73 v_56 0.10 she v_55 v_73 0.10 she v_56 v_73 0.10 she v_62 v_43 0.10 she v_73 v_49 0.10 she v_58 v_50 0.10 she v_62 v_51 0.10 she v_62 v_52 0.10 she v_58 v_57 0.10 she v_50 v_58 0.10 she v_57 v_58 0.10 she v_59 v_58 0.10 she v_67 v_58 0.10 she v_75 v_58 0.10 she v_82 v_58 0.10 she v_58 v_59 0.10 she v_62 v_60 0.10 she v_62 v_61 0.10 she v_43 v_62 0.10 she v_51 v_62 0.10 she v_52 v_62 0.10 she v_60 v_62 0.10 she v_61 v_62 0.10 she v_63 v_62 0.10 she v_64 v_62 0.10 she v_68 v_62 0.10 she v_69 v_62 0.10 she v_78 v_62 0.10 she v_62 v_63 0.10 she v_62 v_64 0.10 she v_73 v_65 0.10 she v_73 v_66 0.10 she v_58 v_67 0.10 she v_62 v_68 0.10 she v_62 v_69 0.10 she v_73 v_72 0.10 she v_49 v_73 0.10 she v_65 v_73 0.10 she v_66 v_73 0.10 she v_72 v_73 0.10 she v_74 v_73 0.10 she v_79 v_73 0.10 she v_80 v_73 0.10 she v_81 v_73 0.10 she v_87 v_73 0.10 she v_88 v_73 0.10 she v_96 v_73 0.10 she v_73 v_74 0.10 she v_58 v_75 0.10 she v_62 v_78 0.10 she v_73 v_79 0.10 she v_73 v_80 0.10 she v_73 v_81 0.10 she v_58 v_82 0.10 she v_73 v_87 0.10 she v_73 v_88 0.10 she v_73 v_96 0.10 she v_143 v_128 0.10 she v_128 v_143 0.10 she v_144 v_143 0.10 she v_143 v_144 0.10 she v_93 v_85 0.10 she v_85 v_93 0.10 she v_5 v_4 0.10 she v_4 v_5 0.10 she v_13 v_5 0.10 she v_22 v_5 0.10 she v_5 v_13 0.10 she v_5 v_22 0.10 she v_95 v_70 0.10 she v_95 v_71 0.10 she v_85 v_84 0.10 she v_84 v_85 0.10 she v_102 v_85 0.10 she v_95 v_86 0.10 she v_95 v_94 0.10 she v_70 v_95 0.10 she v_71 v_95 0.10 she v_86 v_95 0.10 she v_94 v_95 0.10 she v_103 v_95 0.10 she v_108 v_95 0.10 she v_85 v_102 0.10 she v_95 v_103 0.10 she v_95 v_108 0.10 she v_0 1.0 shn v_1 1.0 shn v_2 1.0 shn v_3 1.0 shn v_4 1.0 shn v_5 0.0 shn v_6 1.0 shn v_7 1.0 shn v_8 1.0 shn v_9 1.0 shn v_10 0.9 shn v_11 0.4 shn v_12 1.0 shn v_13 1.0 shn v_14 1.0 shn v_15 0.0 shn v_16 0.0 shn v_17 1.0 shn v_18 0.4 shn v_19 0.0 shn v_20 1.0 shn v_21 1.0 shn v_22 1.0 shn v_23 1.0 shn v_24 1.0 shn v_25 0.0 shn v_26 0.9 shn v_27 1.0 shn v_28 1.0 shn v_29 1.0 shn v_30 1.0 shn v_31 1.0 shn v_32 1.0 shn v_33 1.0 shn v_34 1.0 shn v_35 1.0 shn v_36 1.0 shn v_37 1.0 shn v_38 1.0 shn v_39 1.0 shn v_40 1.0 shn v_41 1.0 shn v_42 0.0 shn v_43 1.0 shn v_44 1.0 shn v_45 1.0 shn v_46 1.0 shn v_47 0.0 shn v_48 1.0 shn v_49 1.0 shn v_50 1.0 shn v_51 1.0 shn v_52 1.0 shn v_53 1.0 shn v_54 1.0 shn v_55 1.0 shn v_56 1.0 shn v_57 1.0 shn v_58 0.0 shn v_59 0.9 shn v_60 1.0 shn v_61 0.5 shn v_62 0.0 shn v_63 1.0 shn v_64 1.0 shn v_65 1.0 shn v_66 1.0 shn v_67 0.8 shn v_68 1.0 shn v_69 1.0 shn v_70 1.0 shn v_71 1.0 shn v_72 0.7 shn v_73 0.0 shn v_74 1.0 shn v_75 1.0 shn v_76 1.0 shn v_77 1.0 shn v_78 1.0 shn v_79 1.0 shn v_80 0.7 shn v_81 1.0 shn v_82 1.0 shn v_83 1.0 shn v_84 1.0 shn v_85 0.0 shn v_86 1.0 shn v_87 1.0 shn v_88 1.0 shn v_89 1.0 shn v_90 1.0 shn v_91 0.0 shn v_92 0.0 shn v_93 1.0 shn v_94 1.0 shn v_95 0.0 shn v_96 1.0 shn v_97 1.0 shn v_98 1.0 shn v_99 1.0 shn v_100 0.0 shn v_101 1.0 shn v_102 1.0 shn v_103 1.0 shn v_104 1.0 shn v_105 1.0 shn v_106 1.0 shn v_107 1.0 shn v_108 1.0 shn v_109 1.0 shn v_110 1.0 shn v_111 0.7 shn v_112 1.0 shn v_113 1.0 shn v_114 1.0 shn v_115 1.0 shn v_116 1.0 shn v_117 0.7 shn v_118 1.0 shn v_119 1.0 shn v_120 1.0 shn v_121 1.0 shn v_122 1.0 shn v_123 1.0 shn v_124 1.0 shn v_125 0.0 shn v_126 0.0 shn v_127 1.0 shn v_128 1.0 shn v_129 1.0 shn v_130 1.0 shn v_131 0.0 shn v_132 0.0 shn v_133 1.0 shn v_134 0.0 shn v_135 1.0 shn v_136 1.0 shn v_137 1.0 shn v_138 1.0 shn v_139 1.0 shn v_140 0.0 shn v_141 0.0 shn v_142 1.0 shn v_143 0.0 shn v_144 0.9 shn v_145 1.0 shn v_146 1.0 shn v_147 1.0 shn v_148 1.0 shn v_149 1.0 shn grestore %iterand26 hdist 0 translate gsave scalef scalef -1 mul scale v_19 v_0 0.0 she v_19 v_1 0.0 she v_19 v_2 0.0 she v_19 v_3 0.0 she v_5 v_4 0.0 she v_22 v_5 0.0 she v_13 v_5 0.0 she v_16 v_6 0.0 she v_16 v_7 0.0 she v_16 v_8 0.0 she v_19 v_9 0.0 she v_19 v_10 0.0 she v_19 v_11 0.0 she v_19 v_12 0.0 she v_5 v_13 0.0 she v_16 v_14 0.0 she v_16 v_15 0.0 she v_33 v_16 0.0 she v_23 v_16 0.0 she v_24 v_16 0.0 she v_36 v_16 0.0 she v_35 v_16 0.0 she v_34 v_16 0.0 she v_25 v_16 0.0 she v_27 v_16 0.0 she v_26 v_16 0.0 she v_19 v_17 0.0 she v_19 v_18 0.0 she v_21 v_19 0.0 she v_28 v_19 0.0 she v_29 v_19 0.0 she v_37 v_19 0.0 she v_38 v_19 0.0 she v_20 v_19 0.0 she v_19 v_20 0.0 she v_19 v_21 0.0 she v_5 v_22 0.0 she v_16 v_23 0.0 she v_16 v_24 0.0 she v_16 v_25 0.0 she v_16 v_26 0.0 she v_16 v_27 0.0 she v_19 v_28 0.0 she v_19 v_29 0.0 she v_47 v_30 0.0 she v_47 v_31 0.0 she v_47 v_32 0.0 she v_16 v_33 0.0 she v_16 v_34 0.0 she v_16 v_35 0.0 she v_16 v_36 0.0 she v_19 v_37 0.0 she v_19 v_38 0.0 she v_47 v_39 0.0 she v_47 v_40 0.0 she v_47 v_41 0.0 she v_47 v_42 0.0 she v_62 v_43 0.0 she v_62 v_44 0.0 she v_47 v_45 0.0 she v_47 v_46 0.0 she v_48 v_47 0.0 she v_53 v_47 0.0 she v_46 v_47 0.0 she v_47 v_48 0.0 she v_73 v_49 0.0 she v_58 v_50 0.0 she v_62 v_51 0.0 she v_62 v_52 0.0 she v_47 v_53 0.0 she v_73 v_54 0.0 she v_73 v_55 0.0 she v_73 v_56 0.0 she v_58 v_57 0.0 she v_67 v_58 0.0 she v_59 v_58 0.0 she v_89 v_58 0.0 she v_75 v_58 0.0 she v_82 v_58 0.0 she v_58 v_59 0.0 she v_62 v_60 0.0 she v_62 v_61 0.0 she v_69 v_62 0.0 she v_78 v_62 0.0 she v_63 v_62 0.0 she v_68 v_62 0.0 she v_64 v_62 0.0 she v_62 v_63 0.0 she v_62 v_64 0.0 she v_73 v_65 0.0 she v_73 v_66 0.0 she v_58 v_67 0.0 she v_62 v_68 0.0 she v_62 v_69 0.0 she v_95 v_70 0.0 she v_95 v_71 0.0 she v_73 v_72 0.0 she v_87 v_73 0.0 she v_74 v_73 0.0 she v_97 v_73 0.0 she v_96 v_73 0.0 she v_88 v_73 0.0 she v_79 v_73 0.0 she v_81 v_73 0.0 she v_80 v_73 0.0 she v_73 v_74 0.0 she v_58 v_75 0.0 she v_100 v_76 0.0 she v_100 v_77 0.0 she v_62 v_78 0.0 she v_73 v_79 0.0 she v_73 v_80 0.0 she v_73 v_81 0.0 she v_58 v_82 0.0 she v_100 v_83 0.0 she v_85 v_84 0.0 she v_102 v_85 0.0 she v_93 v_85 0.0 she v_95 v_86 0.0 she v_73 v_87 0.0 she v_73 v_88 0.0 she v_58 v_89 0.0 she v_100 v_90 0.0 she v_100 v_91 0.0 she v_100 v_92 0.0 she v_85 v_93 0.0 she v_95 v_94 0.0 she v_108 v_95 0.0 she v_103 v_95 0.0 she v_73 v_96 0.0 she v_73 v_97 0.0 she v_125 v_98 0.0 she v_100 v_99 0.0 she v_107 v_100 0.0 she v_101 v_100 0.0 she v_106 v_100 0.0 she v_118 v_100 0.0 she v_119 v_100 0.0 she v_120 v_100 0.0 she v_129 v_100 0.0 she v_115 v_100 0.0 she v_114 v_100 0.0 she v_112 v_100 0.0 she v_113 v_100 0.0 she v_100 v_101 0.0 she v_85 v_102 0.0 she v_95 v_103 0.0 she v_140 v_104 0.0 she v_125 v_105 0.0 she v_100 v_106 0.0 she v_100 v_107 0.0 she v_95 v_108 0.0 she v_140 v_109 0.0 she v_125 v_110 0.0 she v_125 v_111 0.0 she v_100 v_112 0.0 she v_100 v_113 0.0 she v_100 v_114 0.0 she v_100 v_115 0.0 she v_140 v_116 0.0 she v_125 v_117 0.0 she v_100 v_118 0.0 she v_100 v_119 0.0 she v_100 v_120 0.0 she v_132 v_121 0.0 she v_140 v_122 0.0 she v_140 v_123 0.0 she v_140 v_124 0.0 she v_142 v_125 0.0 she v_126 v_125 0.0 she v_136 v_125 0.0 she v_127 v_125 0.0 she v_125 v_126 0.0 she v_125 v_127 0.0 she v_143 v_128 0.0 she v_100 v_129 0.0 she v_132 v_130 0.0 she v_132 v_131 0.0 she v_147 v_132 0.0 she v_133 v_132 0.0 she v_137 v_132 0.0 she v_138 v_132 0.0 she v_146 v_132 0.0 she v_145 v_132 0.0 she v_132 v_133 0.0 she v_140 v_134 0.0 she v_140 v_135 0.0 she v_125 v_136 0.0 she v_132 v_137 0.0 she v_132 v_138 0.0 she v_140 v_139 0.0 she v_141 v_140 0.0 she v_149 v_140 0.0 she v_148 v_140 0.0 she v_139 v_140 0.0 she v_140 v_141 0.0 she v_125 v_142 0.0 she v_144 v_143 0.0 she v_143 v_144 0.0 she v_132 v_145 0.0 she v_132 v_146 0.0 she v_132 v_147 0.0 she v_140 v_148 0.0 she v_140 v_149 0.0 she v_0 1.0 shn v_1 1.0 shn v_2 1.0 shn v_3 1.0 shn v_4 1.0 shn v_5 0.0 shn v_6 1.0 shn v_7 1.0 shn v_8 1.0 shn v_9 1.0 shn v_10 1.0 shn v_11 1.0 shn v_12 1.0 shn v_13 1.0 shn v_14 1.0 shn v_15 1.0 shn v_16 0.0 shn v_17 1.0 shn v_18 1.0 shn v_19 0.0 shn v_20 1.0 shn v_21 1.0 shn v_22 1.0 shn v_23 1.0 shn v_24 1.0 shn v_25 1.0 shn v_26 1.0 shn v_27 1.0 shn v_28 1.0 shn v_29 1.0 shn v_30 1.0 shn v_31 1.0 shn v_32 1.0 shn v_33 1.0 shn v_34 1.0 shn v_35 1.0 shn v_36 1.0 shn v_37 1.0 shn v_38 1.0 shn v_39 1.0 shn v_40 1.0 shn v_41 1.0 shn v_42 1.0 shn v_43 1.0 shn v_44 1.0 shn v_45 1.0 shn v_46 1.0 shn v_47 0.0 shn v_48 1.0 shn v_49 1.0 shn v_50 1.0 shn v_51 1.0 shn v_52 1.0 shn v_53 1.0 shn v_54 1.0 shn v_55 1.0 shn v_56 1.0 shn v_57 1.0 shn v_58 0.0 shn v_59 1.0 shn v_60 1.0 shn v_61 1.0 shn v_62 0.0 shn v_63 1.0 shn v_64 1.0 shn v_65 1.0 shn v_66 1.0 shn v_67 1.0 shn v_68 1.0 shn v_69 1.0 shn v_70 1.0 shn v_71 1.0 shn v_72 1.0 shn v_73 0.0 shn v_74 1.0 shn v_75 1.0 shn v_76 1.0 shn v_77 1.0 shn v_78 1.0 shn v_79 1.0 shn v_80 1.0 shn v_81 1.0 shn v_82 1.0 shn v_83 1.0 shn v_84 1.0 shn v_85 0.0 shn v_86 1.0 shn v_87 1.0 shn v_88 1.0 shn v_89 1.0 shn v_90 1.0 shn v_91 1.0 shn v_92 1.0 shn v_93 1.0 shn v_94 1.0 shn v_95 0.0 shn v_96 1.0 shn v_97 1.0 shn v_98 1.0 shn v_99 1.0 shn v_100 0.0 shn v_101 1.0 shn v_102 1.0 shn v_103 1.0 shn v_104 1.0 shn v_105 1.0 shn v_106 1.0 shn v_107 1.0 shn v_108 1.0 shn v_109 1.0 shn v_110 1.0 shn v_111 1.0 shn v_112 1.0 shn v_113 1.0 shn v_114 1.0 shn v_115 1.0 shn v_116 1.0 shn v_117 1.0 shn v_118 1.0 shn v_119 1.0 shn v_120 1.0 shn v_121 1.0 shn v_122 1.0 shn v_123 1.0 shn v_124 1.0 shn v_125 0.0 shn v_126 1.0 shn v_127 1.0 shn v_128 1.0 shn v_129 1.0 shn v_130 1.0 shn v_131 1.0 shn v_132 0.0 shn v_133 1.0 shn v_134 1.0 shn v_135 1.0 shn v_136 1.0 shn v_137 1.0 shn v_138 1.0 shn v_139 1.0 shn v_140 0.0 shn v_141 1.0 shn v_142 1.0 shn v_143 0.0 shn v_144 1.0 shn v_145 1.0 shn v_146 1.0 shn v_147 1.0 shn v_148 1.0 shn v_149 1.0 shn grestore showpage mcl-12-135/img/fa_600.png0000644000402500021140000026001611017231517011531 00000000000000‰PNG  IHDRXX‰¸hîtEXtSoftwareAdobe ImageReadyqÉe<ÀPLTEó©W÷°ñ’ýøïúËbÝíqô¢•÷°-ÿòÔZMÿÿüÓ‰ìla žœ£–^÷Ç6ÿê¸\XSN.çLþÙ®¯bRýÖÎñ’*„„6ÏÐÕÓÓ˜ír'Á…J^brpvß¶3èJ1ÿåšø¾Μ:“(jÊqЋÚÚãÄJû𵵾ʬ}|ÿãäØÇ¶½¿Äs'æèí23ãÇ)ÍL8÷¾¼Û¿ŠæçÄÆÎá52ƒƒ‹ÿÿÿi«„»^äIDATxÚì}m{›Æóõ²À ø!‹µ¥£XŽ%–Ú8ŠÕ:úþßê>g9vš'Çi_ÜWH›[–`8{æqgÔá×ñëøõK¿Ž_ÀúuüÖ¯ã°~¿Ž_ÀúuüÖ¯ã°~¿Ž_ÀúuüÖ¯ã°~¿Ž_ÀúuüÖ¯ã°~¿Ž_ÀúuüÖ¯ã°~¿Ž_Àúuü ¬7§§7_:{tÜœž¾ùxö÷‡Óß¿ô–§§§á—Î~ìO?¼ùÒÙïNÿþo%Ž{õQ,o>¼ùÒýý~úáï/}ò><ûcIÿ¨È=ÊWÞòÕ#þ+Àº™ÔYVÿýÙ³On?š/õ¢ÎŠöôóÒ¬³MVÿþñ¬øxö£OoRO^}<Ë>ž}¨7Eýá?„U8á>¼´ìÕg_)—vq–m6ÙÅžßòͽ¤qLnžw•¯&å~*" ïÏ6'Ù$üW5ÉÔÕü¬¾ùÜÙã mgWêê(˜õŽö³°ŸlÊùü¤>žxáEý,κ©7êê*› gíÙl6;ž½©ç8êÓÿX²y¹»–ßMvvu¥ŽóéRĕ펗ö¦þëõë×Ùg/ô"›ïÊ“úÕñþÎÆgõä™è/vs¼åÍðð(²#ƯÿW²¹ø7õJr•}hxì=>. ùYýOn³O6“ϼð4㓞g§£[óúYÔ~ ¼ó³ßÈ|Èf<ê7· þLNøi'“ÿްê+~âæb¸[/–7‹ªùäOå/í*‘M'âi¾þ¿ ?øôøCG™]Pb·õúÕó8~矂\å¤ð"ûßðJvÙÍ¿¬¿½\ŠLwÚèâþÌh³úø¿3Z×g^‚kc¬YzÎjþÚƒú7áEÙyÌã\0¡²ÓçË^>ÛœODJÙ¹åÑ^ù§þWÀºñ ÷®y·“+¹¿"М{Îkk:\w½{ Êú«¾îûàáÑý*ÌZ/²‰Ö³ Ç7þ*7ç"²úÌkmx-5 ŽKÉ^ý댹è¨I·£ÖŸ¥þØâ¿0M›hÀ‹@éÕv›†·õÌ#0ˆò¾6L«¼Lô².e­¼™òxã!øL)Õž±þÆg§ÓYí¥ôû6m”«ÿkÆ:x"ÚÔzÔ¤él¸¿«4 ©…ø¢ÊçÎ6þÒ¦¹r€xb÷zW÷åâøÒPDÖׂÙÙY=`=ËÈú}`¬7|\ÍDHoI‘éóÍë×%¸óßd,XUH˦œ©å¬^%Íñçé"*¹¬úë–”•yxØ*S‚³vA™§¢!ˆª@ãµõwT´B!iROhš=ó¹×ߤ.ÓC˜»UKb¯'éBƬAY»/X{ÿÎqAÅuÕ‚>Edrµqù‘í N,ɦWu‘‰6ö”…§9‹ú`÷QdÂ^}F~9i·øÞb´“3€àâ™ðç[nÚ9D¹¥·±>„ù\›xÝR+gßtxž¬[[×YÝ®Hä Mžeí'  yÖŽò2ÐË?š,ú^Oí9ÏŠ +¼¦ÌñÑüÛdtAÖc +×IÀ¨óçTÖx“*¥Ç“ÔPÄ8˰ <0\Éèæºà½ŸQ2f-´¸,çEVŠ 2=© \Ÿ·› $>Šì^Š7~>Nx¹jëº}&®”‘GÛ"£(@\—åJ²Íw÷ÀYS¾:_‡g¤ jYÌŒsM’ø›ŽaUøfw¶^vS…iÛ™ÙYÑ÷ZYþuø…^ð™ô«ó7 «òÕv}¾ÔIú!Y¥—ÅH¤·_Þž/+¹«¯f…Ñÿ™‰•“@dX!´ð×úüí]Gd—Èò ¢*lü,¾[YgaÛÄwöíÙì&,û" úÿ7OW¸#[|½ÈÁ)ç«Åóp¥^žÏbà†«\â)àr+Çv|V¬’1ÜpkMP.5\ÜùàL—˜Á%ª@¥A¯]nó[øgk»½™*Óç¢ú§`R;Cõh›C©cëÒ4°ÆÅ õ\Á`Iº¦#²€'­{m2¬ž[\R32‰Éÿ3\a1@Ùw¸˜•táº.;^  Æj® ¤;F„>^ÔÅ—£x›(¨:1׉¦Òÿ»+ƒü°€©ˆ*Ó*b]>¯r§ÝÝôÒY6æ ø+|76ñ­êÿkÀÚÛ÷^B8W%píøÐLÂ'fhtiùðªïs綪Ã&¬JþZçν`‰z³jJ‘žpŠíí¡PÇi¿²z;éüÇqu[é §lV|˜@q)´ ¸[ÈÇ”‹þ+ÊÊAîùa‹Ï’V(Ç£[w\‹Æí@ŸDë»íøŽ"ËÜ(¾ ì8t®<í¨ ÓÅ\DF\¢ÀjàÌÆPeâ HŸƒ«¦1zÏ÷ªâ5k2ŽÉVÚÜÝAj‡qéoR–úa¾—e˜wö2p&él·0\uºdôŠ„¥ðéˆÝémj•²ä67µ]ª,–—ëˈԯÒte‰×æ º²ïûÈÞæà2ugAXÉm¬‚}ô£O|uÀ“Záó°z¡ƒrÔžì<W©n«Íþ¿Á•š'‡ÜÅXZ–"Ë;1µæAÏ,¬éåÝt+¼ÀMïî*c!èh‘S FÙ" v4ªvyE&ù+  Ø òçðÕ¶¨UήiUi†¹\»U|{pã4øæZÿA`¬ZQgºõ&”±+.·>€\VÆUhÃy„¿rÕ¥x¾¦ëŒ T‰ö¦+,xÔIÏ“E •©´ ÷f_Ñ$--D–¥Š/í*ŸÆû I“äGùêÐÀÅR  PéJÙŽteiâKüwÒ…€^øŸà*§'èì(¡Š£ñâÄÖ[Æ]iˆ.\)þÚ_^Nãx a™ÎuqœôëV½—°*Kø~Ñk6̃\DXG.‹ºø.^]œåspíP–]ãKG“Ï–Þ•afÝ¡ÿ&e©Ôƒ£)drµ=\𾑗‘épß+,¤Îäa³r‹’VVbL´Åóܧ<•¬mÍmMghe™ƒg«t…»‰@ê»(Ðð àæb®­§ñ´Ôi£›ÂUât©Œ†F6šúÇÁ#èñ¿  Àq÷ÐÒ‘þ¬¬ÜìS  }ÁØØÑ*À'cMbÉȺ†€QĪÂó¼m:ëz°Ä.RqÓô+Ü5\›¡WUø*áhÃLµà(Y?‹c âÊXB†{^¦»ÃCžðù1ìˆ8‰`·¯`,hßoQÖ“uzqñB¸uV5égu([u˜š/°œª-”NžwŒÏ+M±™.]¼­q¦äY8Í]Di祈ª Ê©0wAŸ÷²q÷ÇE{q¥#<û'Iê†W©Ìˆh ú%®d¯_aé®+O‚šªðPÁ ú)+äÅ4à+·‚ÈÙÊevhàïAKÃQT0’÷£;µ*ð3Ú^ ‡t¿®ëÆc aÈ®‚™g D•eIº‚ô"œE!ýïþô´…V“óÉuÿä•róáââïÈD{>½:¯³ýøŽFÞûØ.ë¶ÂÄÆCd@wøS5©‹MÝZgÍ<*Wmv–µç{ÏÊ”z>ÕX7‘£m—døYÝ.ÅïYE[à•o›Î9 kýà®}Rö¥ Tµ'_JP ÖÉ­w©mçÎÛâªh—É!|’gøªÎŠ¢®£Úmö2k—4hTªÏÛ ®k U +×ùê0™ÿ‹”u3Éþ<Éj¦¶TT^·ï^¼xWÜ]"¦»³¹2{˜}¸¼óöÅËw­$›bÓÕíä}Ý^6&qq®r0>à‚ͱs2¸*âY™Ûi0ø€ž·›YV¯žª ÿn³·XŽæ•ÖËw¼Êsz‚®·ç¬,`µž±àP;ò„O_'Æ*Æ­o¦Y€Üa1*M[ ðÁ›límÙ‡ ¬H¯|ùF}Bà5ß­ C)Ÿ`ÕãÿoùˆfäΠ3^EãLBmDõ®taú¯YY©3Ùœ[qo`F‘±2º‚{|òÌU)í½*|§Eë:ƒg“~¡Ý/(2<ªœ£# ƒ6„ÁåEÆóöÎBoe,¹ª¯Ÿ¦ ‡Òºú&V ß‹ÊÏz˜½xgÍïaz˜YÓÀÿºuòD`íaM_mÚ!“‘‰²–¸ZÂ!Ì¡PÝ/àïÝ’²ZbŽq¿ºg= yzŽåB%~E*N?CI Ö`ŠÿCØ‹U ÷-H¢:»š_eY@ûþ»=ô,Z kÒ®|r©¦ök3É ˜ãÈ"Òx©Â¿yª«½ù—(ë+˜NÚXRm†0pÕ2Ž7>‰öva-€©ßQÖðëiμ£ß-{¸¨?§h]IZ‡Æ{tå ÇtÀ®è@XIÙN¤(¢bŒtÂŘÕÞ%[bé¯ò×MÊ‚)Ç—Ê(Í< ,ø*H¿j< X·ÌÇ×õÚ'Ð*ÚšÏH©OKðߦ~žágÂepÆ ÏÀlÚÂ3}¹p_Ïë‚,IWA¹ ±"CKÃݱ]¨±Íjü!;†T†ÑwŒ`=}˜à*u"ÊÏX|ÝüJ.3“3^¿‰Ò¾wŒcå. ÿ%ÊÊõZê5ì²²Öö¼mßÕëXê {ëôºƒSc×ÍZq ùC¯kŠ,¶kÍŒ D–кʡ¿™Ú©`¼÷\hÙ/ØÁèuÒ‰È6ôŒž¿º€\jU€R|Þ¾{Wó )hÀI{_òGª1®Ó€è±óŸ¬ÜºNÍW‡9Ƨ³–ÂWÒÊJ˜%”4ážöûj)ÖE°%‚h¹–R•2UÆÛ÷×ã†QÀP»¤ibEVï"µÞVŒ€éhGt© ¿µ‡že¸³Y/$HV>OP WÈ+a„ûª³{ °Ké&‡ÇÊʱÆ÷¯öøxPÔ¥³ñÚ²®bå‘e)?xˆ£˜µ`1V§ð5DFGÏFEÖÝ3.AJJ5O" &V‘õ¹‹çßW_¯|žú º©¯?˜¯dõ±¯‰} šU¸bì2^›q\Yú†@nù+ë)Àº…cÓˆU Kr–³nd:aàÉú‚IôzCžy”)gN݆oïa§€™U/ Tzc‘æ Œ˜øï{àÂîia1ëí ã|¬‹õé7éªt¦ #¹5ž¥<¦ŒÀLðŠÐMê¤^¥Çe¹á¿áWÔ± îxyo/í¥²Š ¨µõeYøBÂïRJ€ç:ºåó9Š,¶#0Ò~ˆ,|¼ÿï ²p×SdŒ¼C¬w ,k}ň/§yJê+„VQd(¬ï™Š.ÅÚiHX¶™^úttdéôk”¥žÂW  €_˸BÇìÔÁ[–@Ÿ™Ó™gåºJXœB¬I¡ëº>ÙÃñOoduä\¸€ šgp.ùˆœ_ôày{‹—LCs™,ƒOM…ú]åXÝi(Eb²äFÏ¢DP%W!´j\ºÐ޶V_¦9û/PVcT(y,1Ø+vÞ7Rºwé<ÄȤ’;jTbèÄø½NFò~D~ˆôaÄ•¥¸Í¥\=«§p ¹Ü}®/Ô*Ÿ€«Ê9EnÂó»\á¸TNj°„Ę8Ä5§{;¦­¨”1í¯XYê)|j¥2.¤þ ä¸Î\¤õõ2†©ga_=c芹>­zÃW¬ð¨DuPŒù-ðã^C¿ÁÚÚIEV¦A„åÓCè©Þ$}ÄWè`®% ýuÏt<ý¨ÎJ>«0ðÆ•Úâ) Ay¥˜D lgÝ8Û%A¿P:ÿùVø 6da!Y¦“×·¨êB¥ä™­‰-Z ÖšÀb± É-H«@¾ ީĺv kØï5È—¬Î «>Â:ŒÇ‰µQ¯±6=eí‚è{qµt*K}aÜÑ„ö붇üŽå]k‰†Ä—ûŽ!5}ßušK¸ù e©'ðÕ!4¬ 1呃 1ºd¦vùÑ€7Ú׈mS9Éz…ߊ®:V®0Kè”Ù*'v;̲9ÀCQ$ð¨Ýô%|çÛu3¦Ý¶‚…H«Íè(Ñ*üºgÈ N4]J瀕  ‹O9˜¶^+Š’ìe°ö¶àßægSqê¤Ôz }»q< ûür|_^šöËZªðÿRò86¨uÖ6îJæÆÆd­9±f"†¸v Á[‹<éË’_ŠÈ¦£xOSk³_ Å»ý÷!KYa¦¸#g®ãŽ0xu|IöŒåÒÖ>½t|™¥*i¾ËROà«ÃÞò);ØCÆíBGdÙ‘µô¶Œ˜6ž² h\×õ¬¦ ê²ñ/ ŸŒ,ÖS&)Óªx8 V“öð o»®³tTÞWš{ t ¬ ¿&͡Шøêc)$I˜lr\™–Aïc¸JV"ò…°±çMÂèçRquˆ wͺ›]‚|úÔî•ÔfšxP…ZÖ‡ b#Á± r7¾õª¿kö‰’ÊÆ®Šß_ æí]¼ÒrÝÌæÓÖ}¨/ZrêûùêvzNö ³â¢Çöô±óä²5€!âŽÜ9ãàŠžl  ž‰iƒ?Kœ|ØWUÎÜD%c´To&u}Îb)¼8-£$FÀΪ>_@“^eõä4ò¦y WpÕ‹ÁZßæÁøž£nLtg ülÉ×ÀžàÞ:»– ¥ŸM&7?Ͼ:¶Žµ:£ð0ŽG©Ž¶ÝÝꢭϹ£D`u^·íÚã ÆÅy‹ŸÅ1JݘáB×½øŒ0Ïp¡{+§ÈvQŽ*à-®É?DdÖXŒ>÷²VûJñkȺ¹˜L>(ñ€’s7D=Çñ6Ò£µv—ïa ^‚Æä*e+üB¹Ê¥Ö£„È>ü8°„¯¨Ø´kÊ(¢W°ªð¬ÍÎÎÞeÚ[ëkÆDÛš_¯$xz–µo–»ºälÉm+nÙ9›Õ5Õ á%ÄÅ2¼í4Ò%€T•ó Qf‘䕨Yêsnt¾j7W'Yí•> ˜ÕÜû®žqÕ–Xï] YQ‡öEd]œüÇæœ¼¬¼ÈÚµœÂœ›Æö}ž˜||§†”N jsΜ·Ì”¿¨¸©@Ù ®ë³=%ÔwòUÈÒÎ/31{xgé!ì¯ä!Í&ç4¦ÔÌÃlRèN©®öÉÞ–ûÁŒ®‡DðZ‘Ï|îúŒ¡ñDñpZ)ÚÑçP0qÐX…d*F·t¤?²¢6üG˜í>©xRKèc¨º˜d~ÓP‚wÇOÐ.)†ÂP”¸0/γڸ1 X¿C{–ý,»=¢£ß4ŠG¸ì "\Écyù²¶]šbÈÉÙËñøòüãÙ{<2¼Ðâ Yaðg¹ÃQëREêÁÿpzV~Ûò&ƒÇ 0•‡(CÙÁSéW•ýE`ýÕVŒ—{cý²ƒ%•w ßÚÆïݱººæVýÒg4×cXuëz‡ë*?·•\}_¥ŒÂ©¤§+§hC³˜q%éýÄ'uÖ¬·/kGùØC`ípÏ@ ôÛXD”S.ÁßWNž»:ËŽ•8pÓ™_%°Xkò$¢…•|êVL ÝÔCKc»q·nU,2dí på´óíÎ`±ðïx%T Àšü\U}`׊Õúà«C ÷¶\D«vx.Rœy„Òùe÷èL4`hµÜ„ØÙvþšÀÊ”Jæ ÞTþOT$ó™_ToA»:ÈËXZ¤~!%§_@V8y-Àª©ÔÌ ÷ɹØ~³q¯!HËM_æX–Iae´ï¹k ÀÂQ^ÿ°ÈW F;»+ 2>!œ4Q²j…ˆÚ}"{-u à@ƒ¿fgã³V¢t醵³³IîA¸P±`1ùZîðpãu»T ,¦¤ ,|: xñlÉY”aÎülI†]Vè$ÝzUøV*°ÒÀšàm$ó@K­®Ëè2ÑGUx±  ƒLJ7~‚*$®¤+Ç\ø*… ¸\]ÚVj®˜ºÄó\Pò{ɯŽg°’æQQ c],vYUX¾Þdù#k†ZÔs2­9ÚU¾Û‹û¿°?|Y^ždbÚ^y‘Á¤‹íÊUéåún{HW.6ðimMrgq&w0‰ ƒ±ÙI¹{ýcªñvøúF׋?ˆ56‰lw~KsfOòð?ëû2¢ÔÉËžeC‘Îäl¦Ã*š·“ÙYV3ÐÂta%ñ¾æ¤T°ÞS’×,÷KX¬, Œ’|!9«ºW†RÄË{+lí36î´Íh¼‰Di jy¯hºèÁx¶×Öp#²îjDŠ5x“›Ÿà2©d•at»¦Ñ¾“vAd½«%³o.Ä,.°j€ÅmöîÅ œõe¦à6(ºÝ§ðîá¼ÞÐxŸ÷Áh¥]gí ïqä>˜É©eé—‘5oOþúë¤5øW…÷w`aI\EÜ7kÄ\ÿí…T7¬…Àp0å]Ìa²žì~Ìx_±²ÅU{ì óCI³M4TÑŠ•Œ•}•F ) ëÜúI-Ds 0pƒiÀH¯éä»4$´BxR>J1LFè³Ag&åA€‹”ååÓ€¯ŽÊIi$a³%ßRÒ‚¬}þý¢Í>8 •<÷ <[=¢½qr•Æïè Vü5›1²3üìùá`$-¡“§pB«ïúR¹KŸÅ×]6¬¯X B×½PUµØsgô9DVH»‹@´ö$ƒU[â0”euvÒßË–@)Ë*‘PN±âcл’5ó>‚ïâ}YQ¿Ÿà-%š­“jq5‘ £S>€owÌŒî°Úšn+‹±ë6[Ç6wú ˆÎ>Ü<=Üsÿ 6Qv:H#³¯Ü©r.e.LÂà:\šêD¢U‘M¤&×ìÖp–e•ˆóU}¿k$-MzÎ%þ]²tŠa†…`$ïË q‹Qµi*úë yoã³:Ô†)ƒ…’L r>â¦dÇ‘Fé«ÚÞJÀ,JË#mè1•šÎMK~áîkŒ òQ<ûTß/Ç?C.kGX^†[ýº\5v,®$Ü`Ì ¦¤,÷@÷H¢» Ã$iDb|n^£žb}QÞ;8€Y ¬ÁÁ•†ûŒe%¿RáÖ’†{‚ÅÐàÁç ?ƒ¬ˆ/Z„_Û®ÁQXc¸´5Å"³n×MJvÄtéCÒ#‘¸d_ö_ÈÝ«oñ£ìÝó=³k°#ïÔK £rSâ¡ö ”‡Æ+©Ä¸©,R‘TÐ/Yµ Œá„Ù¼ÄhoZŠœª ‡â 4tlÔiiÿ†c2ókÎ Œß4:¢g˜Ó&wιa‰Vëßæ‡ˆÜÛÛÖ ÌIoÒ×Zôì+P>ðæ,$…·±rv„kdM÷³q‰]í [Æ~ºÑíx}w,óŸ©e³$6‰ò*„¡|{7.fŸ…e$ò¬]jvï!¥žµ€žE&z Ÿš ú¼¬H¢tõýƒÚ™ +bU—Ô8% vB¥ðköv¡70¬zMø³ÂëÎv@¹lž[ã”±T(H2ñX±äI*[Ÿ ,(Žd%o–bÅã"—æTÀPkÃÄ  ‚+Ýy»Ê8ca Ä((E¼0X„Ð5 JŠbYjÖ h>åŒù­ H1a£­L2ÃFÑÖ«’¤ ̱Я7i8ƒß’‘êå™JY, @KVõiŠÏ%Û!åó@R=Œ¢úv ¶ƒÑ[ÝÆ°„€îñøÙöUØõË™0ªüvƆú˜N]šl25wÀ–ˆlj»pl©‘áI–„B_mA¢ŽŽµ}„–DÕaYè4±C•Wn3•æo“öe¿“n4CÆådEtV¸ÌÙpŠÈ:°Áf¢²‹/qå=Pd×P‡±T#:6Ä 2®èÃY×ý1ÂDæ¢'ë–‹Œtu l¿ã«ùŒÈ8ßiú8È;›Ž¬yŸãYMWêÂSdFÑ÷e¯…²º7sÚb÷í>àxC_Ѭ0DkäùG“| #ÅîÕ‘>@Vt„ÕÁ7„$àGn­£ùw9e @7¶Ž% 6V+o¤®ˆ5Ø‚£»*’V×Uax#|gðÀxÕŠ6É<’.–V~Ö†qÝAä¦D“CŸP]ƒ‰©Ý‡¸’†öP‚OĬ,–ƒ*'¹¯hHpaJ˜Áb`ƒ ¤ZœŠñÞZÔ·f3D¼x¸®œöû<¬ "g…ë•G÷b®­¤,ÚP|#¹nø;kùöpèÖRB€³õ«Â›é«¶îö…]³•îZòi÷;hlöXwN÷v­ãqnºõ”¸2·Ûø2p Ÿ¼†‡ÂÈ=ÀÈCeƃ›åô€Ь‘9Ú·Ë•fP€'Æà`%‹Ÿ^AtóY¼J+6ô$¨ð(µávݱlF3.Bi°6ù2r[ÉÛa3â°~ÓÆÖ‹FË'ëCeì’ TI)B½ÖÊh—y zPI®á,\LRö™¦ímÕÁßSéa᫨ˆ,Æ DÕ 4§'p’…®hKÀiÞñQ÷}Aoq˜ªT" ™&š³5þß©o§È Ùdæ•à¢Oí ͆õ FºOrûD·wLŽ'Q•.XÖGsæñ.o­ó…Öxå䇯Ü\dÙä8êX,Ç2-©·òûLú¬µ€ùÛy’ØŽ†–s·v;µ0ƒÃñ%7V†WŸi-íCRØøA?÷Ê0å>ß¹ÞчvÁ†7q#;J•U»Êa¡gÒ¾\ôW\å¼÷±"*y”"2v°dI¾\1~gÜø¯ƒy´óK™M^lÜÖYýV«‘”šr§Èä{à nºª3YÝÁª.ØÀvéQÛG‹þÞ„°ªº}È ã„5‹³g+³r˾‡ s:Esî¥s½PV¢¥VxUßçÌma]FÀ_ÐgµoVŸ›y†‰Ë}ȪŸKÆq6+Ú·8КÑÎÚ>vœµo%d蛣ÖÙìjVg^ Vá  JPb°jåæÞö}éXž±aCãh‘N6½þ³>ê«Ú‚ lÏ}ñ®v-*îÓ Ddžš¬»´+³˜Æ#ØíšÆvs8âjÈ^…%Ü9u"žit€Ã¢¥Õ‡_yw×Ýþó#¼Ë#Zbc1…0gEpyh¬ !´ô¼ ?ò• +cª×®„ÉÙ¬XA Ï¥Îlº'ü¨¼8&¡éÐÙiã$­öé·ËŽ[Ï|Æø ¤ìüàxë·õžÕòíb2÷0 ˜·uÃZ ÿã(ƒ÷—ŒŒ·ó'p!mØ_û¹wí‰ßÀ}õS^r7„ñžQÏ:›nYZ®º}ÜÉ#\ù¼(…«çf©ÃYhxpŒØÀ…˜6–ÇÁ ÎÏk 7̃†q¶Q>Øñ¨ÿâEîjöÅ-w}Ò³„ÿë$cõÄëM¦)¥·,ÒÙ•ÙQbÜÖÂÚ¢“¤ÃßòÙ,3vxýIh?vd—ÛË÷ã±_³º¹O$½‹„Ù0VÄî¡pyúÆ1Ü0×>]Ý×ApâþA™5:ïgDz™HÑDR{ç.Â?¸«c(-µe,½Wp‰öJE÷ÿ] MA&Šß>&SÌ¢HE÷ÇŽT™×C5!x?§âª„ þz]Ǭ×3¿2÷šÒ[ …±”º¸36iÄ+ÄWÓÕp5pDF+kqH¸ º/aÚe("+y—þnU1 ¤w¡f'°B¡o¾«ÊL)È‚½â_¿þ3Ë£\dük6@éL~ gñl}”ZÍE““cÅ^%«šS*^__|°^I ÊUÍÐH¹¸ç’QæéC`¥än2Vä r±6ÔL©é +¡›O òrÙÂ[†6%$«%ú³?mË-ÁÊ\I–6,¯Ur„ÝÏ7Á±VkRÓ+`b’Zl’1Ôÿi›±‰Ô0Ðâ¹M½­?)ì©I>dÒäA˜¼_|Åñ#Õ o2¯dæÒü´¦O@|éÃZ„…ˆ,¾=I´f¢—†þ”Îd¬ð&¯_$k9ú’Ž!ÄÃdif;‘I·œ›ïÚ³¹ôiqÜv˜øç¦ áàH5‘$‰§ªö •>;@&;)_—»c¾¾.w¯çŸX›LU‡7u‰Ÿm&^db|ouÃi½™mÚbÚ(™ƒÃ€º)}è#½W…¹f­‘Ùc!þGÝI' }̼ÿ®yOß0…Öœsk… š’i5°a$3¯ÒËmÍ^"N¥»*¨@ùR]gu½Ê’x®k^×5;±|R­®Úlöq$Ûi]¼ÍÚ·Õã×ôÌí&¸U?„Bƒ÷=Ó>GYÙõõ¦½J™JÕAVŸ\Mê?JÉ4Ýc+ډȶlä¼ÅìµînímdºîÒ%ŸòÕ‘³ª`‹=XÀZcÞ«Ot®½ÈÒ\:¬y·mÆÜƒ†ùB‚{Ø‚6W›+lŠWÆï6þù…ûû»Þ\Ÿ´§Î6ŸE ƒ|ñVO®¼‡¹¿šlþ<ùìRül¸áïI6Y™´MlÌGUî#@êhKcL*û”.!Ì÷(¥sʽ1iõâ¼—¨Cÿ˜ùE¯RRËbç/útØ*³Î²‹+îׂ­rû×\z+³…®™±Þ¥J}4P5ì&zßåã­™0ç¦êÉý“p9™|ø½Ô‘ùj¥ÓI]¤>ÛLj·üÁ¹›o&“s›!^ÚµO÷s]J8vÃ;•$ÛKÙûl£)+ž:ü~W>žEw‡.^t $ãÏBDÖù†Þˬž\ù®Ðƒ¿RÁ¥l¯÷õ»z™srÓ|çx”_¸¿W&áì~eˆÈÞdC=å>/&§ß ]ôUûÝ|ÎK³< ç–ÂD•ƒNLa)¾;ÖŦž€'eUŶ ‹æŸ-ì,"k Ó­¸·€_¬ò^rÕŽ%6 ’Oá%2þ”îuI¬¿b­$30‘³™ß‘Ãú¥ôñ¤mÀ6óDâ%‰YòˆØs!ºˆíqÈ`yØë¾?|°ÊÖoØn|áEF¿°ä~š4…Ã5[Ðq9Š KÆ­»b›µÕùgqå9«—ý(DÓÂGÀ+ŸÞ÷¸êT75iÈÁzé÷UÏóÊÑÚ†s¾Çd5«Ç1+…š¾Aø…¾0³<2˜ôºyÊö¯…lô0]êu˜Ä'ݼ¤=¤’’š :M˜œææïÆÓÙ.VV—ÍgvÿX’äcr/Eú@H hJGU(Ó´SŒç/XèWù¨/Ëf÷Q)€×9þv©ëOáËm)5aêdÇðÇPüq·n¨# Þ¥|ȱ H„eù `dåùk¶mK¼È¬béû9`]xg‚ý¥uß3o÷66åp%œµ€£}1´äÝ•{iîê¬Í»Qhö9s/çÚJÂ0‚oh0s'ª ¢÷ñs*ùñ10Ddѱ'jéž,x²Ly³Hx}"ùhø%s}yl¹€«:ÝÏqÙZõ€è/„£ŸÂó@vùa}3þÓ])³xPîí–À¢ki5|ܽ6{NÕÆJØfŽ0’÷5JùK*èÃGzß|°]þ~úÀ'œyzRN€íøøòg+•˜äñbb”–y$éÑENÞY°±¸í›èrÉ=ôêŽ 0‚½ùâó®4“iX>ªÂã«Ы¤][ `‘E d¥ØˆÉy(ÄQCŒ›Áû>¸Œ=WãxÆ6«üÛ½‘ ¦‡/Ö—…ßÛ‘³XxŒ:nÖ׿*jD•¥dzü»bC˜…Íœ“ÏŽrñÀ:àWz½ ÷¬H:TÒ³0Ϊ7·ÀD%nmÃĶÑÍ­é|Ý–âSç$±¿aÿ ýEšø€j¨o?!¬p”èŽP̃ӖÇm¥ÏÖïîž³ØÕ‘íAî §ã0ƒœ°º"YwP‚î}—°“‘±$¬Ä|…G*ñ\z-äHõà¦Nv†$ Ø#c±Ž "Ëý>DÓüaü>ï8fbkãØ¤Nmuõ ]È Õ±¨ Ë2|:°`ôI×I{´tvÚò«$gòœµÔ¬Àú„áãٖû 3•<°à´ø¾UZJNéòˆ¼Ìª?ŒÌ6d¡)ë¬*es§|¬7çwa5À)ZW!¾Ûkç¯5¿G–·¯1ÖÃq)9+ªRŽ¿N…Jø<`Qdó{ÎÊW(;<$M‘Y_DšŠ îdâÉWõS%¿ËÞ¶;_ói 9KÓuoº*Ü›¡ñ¥²|y.Ûž½ÿÐuyØÆÖfîð,]Ø‹š-M(¤ód`²dª‰‰UW¾b#l¸™ŠùèˆFéj½ôý¦<5³\/©_,3¦GWË·\À‹„±bœ-¥b0?@Û²†ë’$TP|«åU¯üt%½˜/ׯR¨d±º‚Þl”„E9ð•;ÒÅ‘§÷CyÄY‘tm‰4-JÈ|VÙLYBd÷‘h߆ؚKüNDv¾fý8ˆ¦¼]Ÿ¯cc¾ñ¬Y«·×=Dæ¤CÔj ‰XˆmÎ"[mÙŽ­œ—¡ë\°\®ÎáKß²õù´bŸ…„Xõø]È]ƒðwù•I4_ð˜÷‘÷ û|j_BP–à-Öà«*b{Áš£/¹?wÁ&…íò kÞ‹å†Û hùkË@b; Ã0 ÿñWÔãïHsF¶/>ØÔI¸´Ë˜Äakä’C•° ò0‡¡ þ?N_â,Œýîx¯tt< °†Š ë^=`¬¤{ÀY«æ"'Ñ!@•‰¡gªBŠ †V:pV®£ã¢N{Q'J¾î›‹”mv–÷Œþ/ûv ØÅ†ºk¦ÕéjÙ~ÏwÚL!²ÆÜBŸ§4O‡,>Wmãt!måkÍžEÆlÑîŽq½Ö…¡g¬²ü*a}Xxh«¬:ú†ì- ){¡Ó|5äÕëK6X5Yßû6˜Ãÿ÷ÿ‰}ÌaBÇš©^Z;90=±ò´˜˜§“|_ë ;|§Zê¯rVÌçB6^úK~¸ó~°±>×qî#gñæø&)h8¡¾ç2; €kà,WŸbÅzÚCtýŴퟙ–Í–Öæô›o;¹ö½¤£ÿy+»ï_ÖÃdéáo‰—f…_‹¾÷ÿù Ž+øí]‘_Ʋg‚ŒõL](ÙoÊ=ê? ¬4˜÷S dAâiŽÚ‚`ì}^=ƒrÚßÞÎÆšU‹Ïe¿XD:ç—¾â¥È`bÝîßÜ]dpo›&¿Í¹Ö¤¤=Z„pç>JjßvaIywèuÌâQöØf`¬ÏNÐüÈYìy§d”A¯½œž ,.cŠÌsVÎ…u:ÙdÇÒ•“IúofXÙßßÖ‰‹e©ãÑÚ7 ‘Á ûüöB)_¡­Ï'^doM‡…Z˸‚—í²»ƒ#Ä6îð\] µ`õ|•°¾,&ÓÙ®Èâ®dŽ ÊEöI ŽE=QWjÖîÙº0rÃÙjž~ÉÆÊõPù 8^q¿sެØQ³–$§â±÷Œ¥‘¯”9ke‹©^·gã³Y{‘Òdõ±ÍÃ1’’:6í,m¬/´È¼ç¬FTa%s)‘x®*ôÅ»„Ù«T(Ë7€‰%E/UÆr€¿ê¿!0º®ÿ®þüŽ´÷¨Ðòu&AºØ7 y·bÑ~-ÒÔV>¡ÍRÖé„ëw´±^L¶äã~ßoòY~a)ŒU–üQ`É6ÚÅó©ò ”Z–†ûEƒeYûÆïNÑsÖ$p~>,¿10tu]Lêš3¿Ù‡.kyf|V'JSÍÙXéÄ-Ûz’qÐkqr¸“¶îBHÖ  S‰_=@ÖV õ¥‘¿GÎbS½“*Mî—ýŒ%”•Ju"[±R±BjBÖCÃR<‘ZáLƒÅßõædSÛÄ ]VŸl²Öún¡«úÝ˺=?îÊb9ƒeÊY×­ÛIQ·±d§;U´œ÷þ6îΕõ½_Ÿ© C käë„õ `åL—º:ÑÐîÀir„|%Ÿ¦ÈŠùpû*êaqNW˜'mùO`yŸ0t6XeÅ*¿älZ8xÉ›úìoe­*{‰&2¸LXå{­V³¢Xù†*-¯atÉøC½r^zMxŒ_YÇô -Õ/÷ô=r\)å¤:¼Œv‡Ÿ,IŸQMxÎró=t˜X|&ô—0ƒdËiÒë¢8½ù\éæ:;;²wq¼îTПž×Ü Ë¾¹>ÌDe»fd„´:šª´_×glºÀasF Ãgë ÀZý7¸ýëÀ*w~Jz¶cCëi*5gŠ­ä¬cŸ—¤WºÛË>x˜æý0^öŸÐ°„@ÂŽUpë·;1—ºÑ¡4v,Ú(òÕ²Ê1Éx‹À7ì¶²9]3–%‘‚þQüêž³ÄÆúÚŒrÏY0tö’à{†Ÿ¯ >Æ]ÞÒº—U×0» õ™-Ù%a__Z‰¥ß+“64:Gq|w›ÀTWa±—Ž Òë/W+%Õ`¦;ì¥{nª°ôT"šöÕöAðÞÆúꨯ ¹;Á”;Éä¥?‰±DZaŸøý”°²ˆ2v^èó¾ C,î¯ñ+‚}ªïà«mãô°ì8ïÙ :sžôÚJ)ºßfÍÞ’ÉPckGã5EÖi{—ø†È©ë9ÖªäxŸ£ ˨|”Ÿý`å,rÈi!”¬déÒ)"Û_WvÚ¹r¨Ñ®ÒÍ.bvØ ?±µØY»‚@ä0¾/­ÚJÇÖC&¶+ñæ·vÖƒ;XoÅ©MFöÅÂslûrÉî~(Ä$Ö9AIÊÑ0JƯŽÈ¢}ÕFõÚ°œ[àÙ€j? XBY4³YæÆIßx=¡]QÂQ‡]ä «úæÈˆ¬ÙCø€Dv{×ÁýղɺKGwãÞo7à-Ùk–²ß4 Çw”4^©\læönšÚ[Ž’9¤ÀyëÇc¤eõMÂú:°¨G…²´ìó®ÃCôqê€õ¥Ü†l«—3·ÊP§´ÑC­ê‘BÌûÈ…Ò>aö]yŽ™^Ú L¢Ž¥ÍìmcØ-ï?÷¸(Ô ‡~øs):4f =¨‡:%g xd±ÒoÌ7ÎÂe+XyÕ±ÝÆOP…ÞÊ3K´!P$ÖUO0eÍV°IC:ßý°ÀW{rŽÀŠýNØN!Hâ;ctcž–T…+㧉ÙαOARÚ;NZ·wDaÐÙ»-(KÃ0ì2°L²Çîð `Iy ¯Ï̃ ,Ôu{s¯#VK(c}B·i¥\8Mª«¡¤Ø‚ ™Ô?BkÑ'ìvU·½—šµAà:é矗´pÑÜ—c(¨•Ïv‹U2Y¬Ëý(Óå–> àÀ¥ÿàjÉ Eßtª¬ªg•DNmñ³ËS–˜YDV®¹ÙS&`ûVº-!5`G ¥ß€¿ñž D–6²C0铸cóÎ|Î$²ãK);ÌäÁK¸ó¾ ìÚX{î›ì.÷æ–£•¼_˜ŠNüÞª Gú z°òcÆ[rá¶]§—Eqͪ刵2)«“%jJÖ S† Ž†¼Å"$-›ofÅ2wRè}õ±”8 ö –çÅZ¥¾©ÑEQ,߆¯‘†$ì›Íú\ç+Ö÷ñq%³³bU%ÿœBdý]œ}{*28 Žf±L$,Sþ4`1cHA5uI°¢È8àŒµÊ™ô!þú>ü °^žþ»]ØJç•NTSöû;¸ÕççËQcüT ½.ŠyΙµ¼ ÅÛ°ÇZç뻊ã'ÌúÒ¼…- â ¶Ê#¶Þœ¾ù¾f†Ùw þ°¼¬=e¥½DLÍ,{ÝqÿZâÖãŰº¨³RÙ ø þi!Åÿ`­7Y¶ÉjnwrÛfE%³kñŽYû¡ô͈Ö-Îê%ÃȃÉÝаv«ƒ*Ú:k³¤a\™¯ÄYú¹5•Õ‰¯}ëHŠ:ÛÔ,4òð?E”%fôx–lêMÏ9]ð %ÉÞ0¢W²óË6Öi¶Ùd™ÀJF:º¨I}ÃÖü®e‰Ä©’dŽëº`Á4Á­´Q~:ìÜ1Z¾kç‰ô°°çí$k ‰ð ~á½½õj’dÙ÷ô­xSãº&ÏÖ1Éè¡Â,Ñ¢_ÖWêêª.4»1˜ìöR ¯‡E Ö'åõ¢õª¾Þ½Þm€¬ùƒ‡rÿ؇gsˆj°-pR´Z5¢è÷]$¾­¼Œ ×b®?;nã"›ÏË«o7agõu9Ÿ×ohŒÊÝþÆÇЛY‹¾È¤ëõŠq+š ¡^ˆÃšJkß/ëïš}سóXšÆ%ÞêPÂ$ƒfœ hêl‡»m×vÿ0ŒÉʦd.Õ /j†¸µNrEú(F*ØŠ¤ÎâÏï˜Êñ{ýÜTñ `£Ã.˜œ)&o‡Ž lj¥JhÒ¤âh}úl€­L’ó»Zy¦ATMù'UºÁ?™ÏÖIÔl«SÙ†ªêYµõ/Ÿ-Gë&ù1WXsæ’Ö“Âç®§iUUÿŸú®ï› |ýÕ?¥ß³|2a,Àçì°†5ÉP{”I?õ?³h¨ñ ¥³ª:”»\º|X“?}£Êu4õ‡Òùtú‡deçÙ¹Û7Ûé¨ö׋ É!.9R·;䘄þíeûV†úÇ%$ªKîÅ›Nsåë,^G:Ü7€Ø}‚_Ö=B¢aý`“axÃ5ñäBa,6¦Õù\ò敬>s5`À>ì¾çƒ–ÇZö86…/˜˜ÃKÄ“ösQÕ íÒÒ¶8n¸_ù¦FaVÃ,F~ñèëkß­á°ZK7~ey1‹_ó™ÄMé3KÿÔ  ¥l2ú°þò êa„ÓðÏP2ô¦ðƒ²ãðcï‹ä++Ihë¯u8ŽK0…; žÕCÅɇoëšÍ^g¯~XËmHY)ÛVF[ö4ºšZ$´Báô HĹO}ÐñŸÇÂ3–¡$I:­R \qðÒͱÖ!€ ‘¾ñ‹±^&y•nÓm•‚X¦[ê6C=Vkš)û]L¼”‚¿–VÇÿÒjQ®¤ ×p_æ‹4}øóÿU}?9ñ“Rú°âýþ$Æáqè|ÝøÑ"'“òc•scÞ7¹ÿ°ÒE™ýéñHJODžóŸßÆ‚Qì›ßï‹;S<µUÓ&˜wjQ¼cqÃËwËÛ[vWòu$h€´Ñù–’¥p¦y²Î†žoy‰édó¿ÝóëAÜŸÕïôŒ•^LWílÑ—¢ ÉXp¨ØO.€õO]x¨®Ú&ç³êAÕЬ=/hcÍÚ=·u6á„]“ŠúšÑù½Zr n_µg~¸€b&ѧñë k„ nÌȲùn³mè=X}^ZTEK¶E)I†ÝÏÃEÐ3Nv´±–0$„ÁXa°ˆt•ûaúTÁ,]ÓÆò]Â㣜•»ª¨)2Ü{`Í9TÂwhî6ï “ºð·w5EfÜ`c½aqÊÇ|a*9³Zl¬6è¿ÜÂkW5;e~ÜÆz Xên•µF}1n}¤âÈä nõôv¸Vô‰. #,[x_÷fÆÑ#”4Ÿžð-ßø1iý<«'õä&eÔ˜mÞ†·š.ˆÞ´¾œ[ÆÛqç?üS“†Ü *»Øñ¨z‰©zßu™(=H»ŒªOŸ_qÛõ9_xn#VõËÌŸ¤ ½È· ªpïÚóX@.¾H#»c½þ)°BΊ“Fáçô¾>ŠLVá™´ é?¤¡…(x¿”Êd¥£Wõ»b§eˆÑy›Õmá¶T/âÂü•ˆÎY< ,[•åW Åy@ñfS·wÓÖƒÂÓEôSvžCî7  êå^j`B§Ø¸C|Â#°>ñ +ÉÅt³âJ—zDz{xË7Ç gµ¹ò!f¶Â;b+•ý¿eqöŠÝ¦Ù#­‹õ†ÙTÂ{ô1øÕe–E1¯dj½ó#\+äö£igƒÅÅù ’½=D%‰ág1Ö‚¡|V0¤»òðª8£‰ÃÜA.Æ{¾«‚¡jù°di%ÒzÁ®ÍÕYá ™£È—234|õæMø‘ßVÅ ï/šs¿zà7÷çy¯ n¨8ÿ=áp{F¼ôõº` ’”ˆߌ²Ë3÷mÚõyJäª?ÏVlºamP½;xâûœ-±9 elí±Ý÷ûGF?…®ðýqë×"Xt£0f'Ø@Šþ5gêV¯zä1Ürš;ŽãØ_^íQrx  %4Šwþl]Ÿ¶ZFœãˆ$ü:è»;6â„8ï/JXñs"³îVæleO6»fHõ˜¯{ÈVÌnïòî’IÂËXÛËí7õÅn3~™€®æÎ^Ž*¡Çžª¹S‡[£•é„K<\ÒãÞ…¡0³úHWéÜEÚ°‰ƒ‰¯Àë*oÜ—¶h±E3½B¢á‘ç®ÑÍܱÌV›¤c–,Á*Jª°R>„å^r̉i8Vzâ ´š0„¼©!¤SD¾Kº÷2{L]εÉ`¯<ô€ç:„‘h强7¹Ë !vßAOqœ­AdRŸ1Ü,ûDn}§xM°ü5Á$Kû`Q}±Àn`¼Eä{'%‰c“¨²‹3ï»v  ÷›×W.ȵƒ ý<Ê™5ÊÞrªïÿˆµXv‡Åm;+"ß%6…_׆_–ù/8ëúr”9QQr{%ˈ…³¶ç ù›±†Aßáá¾KXrbl,Ç~¯<­¤ÜïO9ÔFèY`•;Ó„—w{ÇKòÀº¶°êú¿ ²hÑÐ<?³È·ßI>„Ä4uGk¥ÙW„/¡zâŠæ÷vÚèð~ÒÀ=´ÈVy¾ 8ï§‘]ÞE@Åáëœõy`UÒV$Œ¤uIz~—ðç5v•T@ØV•޳„|‰ð,Ÿ·&]…JãÂì>-DÃÐA¨ô·*dŘ¥MšäPÃ¥ Ä)·ô §Ý^galÈPÈ$fÎü V‰ì8ë¨÷× ±ì%Ó˜°¹”åŒ c;­žÕk «à¨FîÝŸÔ¸X7…6Ì#o õ4KÐÛ0yµ7* /íÔRÉGMXÉ\œµ×_¼áešñï¥eï´jØ<¾ŸfŽÉîD˜Éü™#ÂÒ•½õ›æŽ3,8šm!וF}ÞtvëSUãËÊ€²Û¯qÖgŸí«‹¬ÈeFèå(|~Ï™…PV~ӽɊ%7ä¢*ÀâëHW¬`¿˜.,{5k.UIu$“ÃwJv à™-³¬¡GÒ×H¯³ú-§0~ÜMO/>ü-¸ÚšŽº™¥•ƒÐåï.No-ÖùàæŠÍÊÚ¶˜kUŸoØÚ7‡ï½ÍŠ7?†¨¿ñ¡Sro”Çö DÍaÿ²’Ó,[FÒ,‚|Š(›V"Dvy7m 7‹ Œ%šåué¡ ¾GS§¬l †ØÃ²>ÏÀÑ.ˆ–Ö¸[ú8FºaodŽüÔv&ÙÚF\‚¬ˆó•¯‹Âj•§ÐƒÛ…\ìïõ‹S0ÎeÈ{º}¹/°ÞÔ''›ÉÙêá8ÏÜë8gðö·0oÒí²­Ï²vÁÊ’ÛOï7ìq2W*¸âp¸=,‰½ö³Îý†¯ëÁ uÒgõ¤¨ë޽#û$ÉÚ—“¶öq+ƒ+)²¶Ma†›Ó ¢u)ó´*Ú¢Èê?rÖù¸æTö½OzéoqÁB¼¥(=”¶®7[—>éøQdóà‘Ñ{OY!?Ž;¾ŠÛìí*c[¸‰6• §p)ˆ |jçw!%Ç7©Ê*¾[düÜûIÖ®ý¤®¥3í{k™º.ж&ÆÜ­½= ã+éAúFù”Q†âM¶¡PÙÙø³t–#Î|ŇïÖä¯OÚËÇí¤i`E²»C&Xڙד+fU®¥PúX‘tÃ'®*p]Å~¿¾Ñ×&V}_}\„=Ÿl‹ž”txdŠñÙbrîÐ$ÃæÄ¿©w”Ãûs_!tKÔ÷séš¼iÝž5¯>`_Låo2k‡ ±WPn|鯇à+ÉÛl²rñ‘ °TY†Q|+â"+Ù¾ ÿÊàÂeþì©ÒèŽ"»¼»…Ÿãd30{àåR†øý¸ò"_­X½û».ñûës?/m8;%a©ÎT!+LŠìä¯_ÿ_»Ê9sU˶䋃ì$ü›3¡_¾¨Ý”u¸¨ÏÆggŸ«Pú\Ÿwi±ü:Û7Mþñh`=6ŒÏt¦:HBéÕДý‚%¶}~,‚g1Ôþ6zoFT£#-´¾…y4§Q<©vëvwL;³Íûý†ûv……þÇÈ_I1£‰ ÛçPŠy¸?ò<ñymUÏò[ÜÅ0®½žiu«ô1ßß9Ž{ôYË·?ÒçýOŸ1Þ79ev;üi%²³c˜ð¤ÆVIb¯Üd§ëE¹ðJ$eŒÒå2n`(î}‘¢«,9c¢|*®Dd}1ñç×ú æú1 -VÖj¸÷ "³0ëó½ÅÅjÇë=•îâÿÛœÝæRGâ;êÏÌx4M|ÁÄ»õ8Æ©<…qö}}Þ9¿ã¯×¯7öÌÿ Øso¨"`k5çÿY³H›/À¢u)¸ u¤ºœJGj!zNhÕùùJÖmÕm ÚuÇ^íÐÉai: Mx”™!BDrË%t÷q27~ sS°l;k/­ÿ5¼å]ÇÖ÷8¹Êž>zòç±µv/¡c¹"ÿXŽäÔNáÚWô̲ž£IdŒ»Lfòºzð¥\xVÈZùRêkž ÉûªŸlJ¬KÈìþn}ÄQdœ^` Ó0N¡Ô® v¯OX>ÑuÇ ±/‘ð»ößùÞïüSø¾É솿{ýšMœ”¤4CÐÊ‚wšçºjlp5 ¾)X8ÈNºÊ;ƒìˆ+û«T05J\-ÚX î8Öœ¼”<±Öº,óþ"À“äÛ-ÿl¨ÎŠ`Oùå^W¦ÒynõŒg¦CO‰zUFM”¬ l˜cì}‰D‘±K½²Â´økã‹§d°-›´V)–ÑA:çàx¯Â° ªQ0Ø'‹-–ô®2.Íx©“–y»yBßTW•˜‚Õ$ŒÔÀ–Œ•pÝTöä¸=<™ZqÖn´LyÔC·,tQÑÊ•4[3’øU8X¿°àM±‚LŠ³Ø³kÓ9øüÃ[=”».Wï2k`®Ü Œ’ÿýåGéxpI]>–Õ)qëÂøýöœ%=›–ÙõЧ¬V¯ ›°ÀXÙ.åf©'ó‹UËè0á²L&ŸEùp·K-ÃÚ–þìí9Ã5[›ÌC\5uá¦ö3eD8~í»å²`âå»BËâ Ǥþ¾é_2|¯æ¤-®PÊ7`JŽ4Ù¢ïa̰ ®­• |Ülw;4—¥úƒ"Üçãð{#sИÕÑ:¢”Ò>êu´g#À‚#@¨—9jP¦ÊÑÅ©NÙ\ã›óäplcÔp™³,ƒÈüˆ9Ηi3þ;^êàÄOÔì³D<ûŽÖ/Ÿ ÐL¤á+Ô‡cÍÏZ™ŠÓsÀ:A>‚•U°ÂàûÑÐè««ëúteïâ»»#¸¬zk7²âç|Mü9ågžû¤ðál,$«GÂòó ªE<=Ó3š¢ìoþž—C,{ŠÌÈàsOl½¶DnE`¸a«:«¶ ×g–×¥¤e_újy-Ð\ ´VK¡eÓÛ˲OÎÇOJé”A4²f§ÆñÝxÏ®âÒmùX\¥ìUÖìa²ïì6ÌÝJF°&QE\åÒìªiHâ'Lª–!ç¤Ì™3|aù9™XÉ a|*ÏD—Xxʉ}qéü°¹[zHÀjk“§zm|Šý¾ñžã9ÆöýxôþžºìJ¦QÁ®×ÌëÀ9ÄRŒã0dâfuÙåÚÁ€…"<V• »4õÑðM,˜¶©L³à YP¢T8Eý®9ØÂrË[ÃÚý(OXè@]EVÒë9&ŽöŽ¿¼fJÝ–ylúîiÀ‚˜Ò=@5€ÖŒÔ™ÞŠŸk¯«²ŒX^OzT‚.Ù1„˜–9œ íöàS–ÔþéD9ÿ‘Îlªü¾{ñÒ{Z´d~ÅîÐ_Â\†B㬹Ò@)[Ÿ‚ÃFœÄ-I×\F´=ÍÚ-¬]¸uVf8®]Ù?X)K°r3·c{9š[wwã»\ÒÝı´ò°jßm©w8êƒØº„é …¸ú¬] CÛ6וeY‘ý:4rlƒo1­±X¼´ [KJ¶4ÿÿ_½÷\9!´@W(ÝÚB!òõý<÷qpX*² Ãz÷“ñ Œ+Ã*L`ñPÌÝã"®ÉæW:è `^(>ó‘Ñ ¡7›HزLѱn, ÜdWW¹¬~ʰ¢´“jð›ô¦§wT530LÃOPfà%%›W޾’~n¯Èv"5hÑ)ke½ñ ß – Û³zÙ±ò'‚a*dýMSu=Oš™<År¦½cãØÅÐäÖ©bß‚'7ÍM¸7n˜ÇÄ,à§ß0g¼–LͼNàÛ J›Wh¶%tFÙÕ$¾™Uíªé”å1)è ï46™u¥D²t¥…Œ#ǿӫvt'³ÃâV»2½‡ZýK9HvX¼6‹élN—AΊÔUÅ«®Øk¯pdØ:’ÎqÖèX ›¶Þ d‰¯Ø_É]âÌJ›ŸóXQ`~TŒ¶lZtt[ÇÙÆaÓÚíù%Š}^­D ­εTÊÊä99¬’«æ™(Åcð;„«ðŸƒa.£Q†’4Ï t " ¤C)ó1TNÇA4,—m+èzµ†IXÆÔ@±W÷^ý,“Ö²Sˆ}¶æµÏH镨ê×x,Hé€q—î-ÉGvEGƶõe7•ì¹vì²èn§àè鯃•*Âbw•À9,_çhµ[´þŒ5›èEvE)“1îÃ.çµ9:AH¢ŽX#^¤f`Ý–¢¬ô‰>ΰC¤¢Ù‚I)ÔôòWô&T’L¦Õöê' «àw4Ù zîïè®›ðºDe‡4{ðy@‘ËP4d[Ü"õBÏ×OË>LÑÇb½¢ãõß‚!y%ƒ•E)mrÆÆ-™(̽ç®-H´BžF%-;ºõ=§j·¼àúdzQ@}–½íD1_ð5€ 4;,#Â)@PÉš“G³¬Ïކ«ªYS~_‘½ó`{«srª8²–MËrN^Çä*išfµ?e)ƒÿD•ü5ø2µt¹˜ÍÁ.€kÚ§ûøM–e/µ+ŠË}Ç N|„)ÊT9@¦Lwá’Þ-]ʪZònaÖ”„èØaÑyãÈwøKɨ¢èmé–)ËòÍO1ÞÔd5‰y¶Lk^žŸ— C¤eú¡ÉÎÏ› Y|^5å`;†J\Fߘ5(qQô¼+g—³æúô­›ÃtDĸkpµ°‡§FÚ(- !©ݶ͸šl0 %sù†ÆõȤ}^‚üØDAWþá°¤þQ0ÌJëN  -øXÀ«iÁš¦XΠª4uQ9Ÿž”ú”¦‡iùRWP%È`=jððôÞµ„½n9!‘ºsšçˆ/B7Œ^b32@néQG8ÿÅ”)ŽÏ›OV¶}ó;³ø…)YUÒhW=¯¾°e)ÔÒônÿ WE> ZÒn` €óP†%U=kÊdyýgÃ( ÝE1¥V™D'­Óp&ô0óŸ1,–²bk‚ÏÃá|,›âFÛž‡Ë9_ ¸pç8Az© ȳWŒËª7ryp×§{£ÏV†!»‚YõtJ ò9踂'¹#›[–'—U¬¹Q­?bY„Æ抺ÃE‡:"àX×ñ¡è±–r4X®£"d4¬ÇBÅ÷÷8ÀRˆä9Ðmì±þhvÜ’?w oƒaQFv¶À8Ò‚;÷MànxÙ‹Ï¿² ~ vwºcȆý5{‡E¯ é{5/å,Ò;£¹ÎÏûfÈJyà 鴵®¢lmÕ^%rt&?iXÅQ†g’eq8|WNÙG)A¯÷33úŸ7ÿºìw"¸Åæ’ÙÇPØP­ÏŸ öò Öaš§T†ä®ó*ÚÀ¨˜C‘ò+ý{w$nƒeå‘ÒÊõ‡Pˆ½!éF¬Ã Ç ‘,€^ÉÈA¡ˆ¾:Ê7,C’kA_ (@j²w/ÎÞ}>fYÁgÅç|S— ÃlÊ /±“꾌«óžéQšÁúŒwÞÿï,ËÓ¦X\9‡ü*¸«ýÁ²TÛÉÞž3bKTÇô”ÕD+mBo†Áù‘ò P倷D¤®±§(<½|*o~sÍO…B–:¹¶(Ã{ª·ÀÌ1 qagø¬É¨¨Gå:ƒe5sÞ|6’a@|À¤—Ùåõ˜™{ãz*²»‚·ªÃ‹Ù˜–Rý zN¬ž(_äx‰ÑµËðºèHjç,°T9£÷E¤—hŒD›•Šì(Û8ih†zXT„rVöcZ­ç uc–|‡Ã7äÎß"âБù¥U”¯ßå<¯.ñÙí»Þñx¬,/¯/ËŒü*æ½ÍÙû÷gÙµ^`Zy|¬ þêè®–´mæÎj0,¯ZÃÉsS— ÜIð“#e´¼zEˆÐœ+„Á½wÍê+Ö;ÏÊÊÙ#—¢!yr…eÓdKJþ@½î.7ÐRÚÞÙ¼!Ÿ!E'뺪¨|-—¾Ï¤Š‡­œo½Ý¶R5Ú§0®Ç+CvW£· ý!”1)ò«½•.x‚P©–.Ú2­ƒf2»–ꫦÌ08ßÊŠ)ÜAuÓqkÇÆPS Û(E”^ô¡œL¯yþb»úì˜ã‘Ág17d³%“:’Á̲¦¡@( …Z—·t»q·Rí* 4f6Ÿ\%Sú±¬ÌèÅ`ïç§M ‰©gEŸî Q"Ã?$ìôJ€9n»›ÑËšéöJGóf`a FÎÈ‘ª†ãêÒ>ÂЊɘY(¶Ò—dï>ïΰzèÓËš²'ÑjÚúž¹gé2öþóži šQL¬›H ¤¥£D‰Üh Cèˆ0¦(—³ç2Cƒ0«#ï*Ö³dŽ8ˆØ’~Wþpyn0b…säQ>ú˾`Ê|úäFic7¬}‹ŠRr€ÂFa\A‘"ƒeÚ€×4HÁUÓ£@_"û,\ǨrtdàO Ëè}½¿ Ðú²†.7ý¶CuöÑóÄDõ”ûè£b´Sâþìt æHvõÀ]]{.ã™it°ª ŽÂz‘ªÓ¡G“«qF¸9™ŠTÊG†ƒ¦,M¯®,½§“ŸlîrÒû£ÏÊe.´o©ÚÄ$Óh,ðÅ7.l²€/Õú,Wµ¹†à§Ób rQSC™pp¬’¼Õøã´? ‹'îŠîû®?Íèák-ö1Ôc…uÇÏMɜ܊ʅæ•FPÔ-Í jQ`Z†ã¶`yH fs <þBï¤c6ë×–Ú k>î*s>G?ŸŽLÑ£÷SÉôŽÓÚaœÒ&.€¾WWBc˜ÌJ€*X¡$cîˆÈüœ×⎚ÅÞf}ï®R¶ª _7Þ-EAý¦ÕhXT¶t”²÷h¤ƒà#ãmÅQ•!YµƒÖ´~‰a¡u{O£6©ª<–‚Â8Ó„fÆC¬ôö/]¯4*/)ªöóÖÅ9¹´‚—‘MEž£ (j2­ö€y§PáN+g"ÒMÿàµÐ;Ù’«RRÚGó <ÉÜaål/*ðH"ÿÄ–º«o\˜äÞªèH‚¦²* –PdTŒñu†Ê ò.Gžº…ò˜¤âZ;G—ar«d E DíöÄîêF¹T€’Ýo¨”í°r%>¶­ȇÿnZ9oÍâÈî PÂ`U#rí(SAUÓÒ N†5 ÌW!BY9ùѱ¥ G–Ö¨$kp§ /1,ª ä ÀSL„ŒSºýd”ò®.™ŠdØûˆ¼V3òªSžÜÕaN*·À]n' ^INÇ6iZÛ`\ÌÔ`¼é¿Á ðŽX>x\wF1È(AÈFÄžaೄ„:èŒL¿aGåùöóE¼Ï7€[©¬%_ܾʰRäQ~dRo1H Å}žÂh$: -âOÂîK' Ûª«›”œäª‘4þþàµVUÀáüWÓâ^¹ë¨”`±óÑWÅÇštß±t&МXʘV•wUÛÁ_Éhêñȸ—³*È{R„ÝPХѽ"v/0¬˜·ºGm?™“n÷"êJèZi×ÌÄ9.ªDg&«ªÀš»`ú‡ã}å+Äv²­Z8'B7œ 8ç‚ÿÝ|K4éá·Ú‹'"8%…xèŠgç«­ _å{r^7yÀ«yÕóÂ÷ý,º( u'ªîêU†Eçcü4º,:2ø,‹º@çÓ¤¼4™nÉ?@^–5L’‹š^䮨»]2›!¬‹™Zd´.*^yÜÿWÓ⋜»«ÑWÅßÙ »–÷kí,eÒ¶ ˆ4š ‘ÜÞÝrCÙŸY4¸=Y¢¸JÚ—báè²Yà(Ïò«·X + vǽ0²¯z¸(¨ví¬CÄÃëýþ`ÁŒë¼ ßÍÐÜmÊ3Ã8Q1 Pëo$L‚éÖEô¯B¼áX¥l}nOzѲô£i=Ó7å²µ_ñ¸U¦‡+$ï’½g›´Wm¢K3(~æM_‡î=bÄDoͪâ¸þì•]RêÚjÉK LÄ1°Ž’±}ì™ùäÕ°§À Ö¸Ý}±w‚0 éÂÛ´XγìÝŸ=ª¶>­&ôoæe™f™ÆO ä)¯ämÎÛP^á•ðßaYx]3¶¡£Ô¶l{Æ…Pm ¹*Ë×´øFìáá²Æ#3 ¼ÈèÒíÂn «»\ìèïä£TñÏè«”¬´®då‘c† ©ÆQa|ø Óú0ÏæOõq¿Î³rͦð„U•6Y¹ €¬½’Û&ÀCð1ãµP×äG6ØÃ‘!P2RÞÀÏ·B,„Ë Ì-J«e“aÍjÉ%Pð‰p+3ôØÊAG»…ÏOö¼”9yt5z.À¯›³M·.å¡ou_-Æû¯ÙÇÍÇ,‘zZدð>¹²‡QÛíJx†´ 6aÚˆD}ã£a]PüJPgã|`^íÊg¬* Y†ÍÓ,Pé7a¸„•Ê— ï¹–ƒ?¤¼¸}ÄÓ¡Í&Ê{ªv«fv €øIÃb§Ú˜±À%;¬²Gȵ 79ñ»tѧ〜 @søÇÃÇÉ' Äñ«Œgc?–Ó«öêøßô vÂèáízFÕïƒÇúæ#Ñ ó@©¿<Œ¤+ÝNÛlÔuìø± õsàä!t$yÂZŽê¯ÈÞ=ØŸ¬ýñÈ>†¥ú3 {—wZ$Ë,ÓV³·aŽ838‹I&¾!£²ß}à8 ¤ìgßÿ³ýß“FwŠÃPºùvåÃ8üˆ³À8üj· Ôë™Óçž9@¹Rw&Ò£&ÁlþÓ†…X˜3´ ŒÍÚlD–|”‘bvT!¡êŒý—ñrÎy h±ZLÅãý/súº¿ô;þ"2Ö† k:½¤ÿÿáèoÓÉ9 ëŸ÷³wí-ñä/Ð —d\?‡Wr 3k…8Ѐ,7@ÎIJtž%`39cÚŽ†õr][ð<Å‘òO kzÏVŽl e ¦F½ °ï4ùÀÀc]RR±¡oÆ–›Ú„"Œ^£÷êÛÿ4Ã:›©ïÿ}=ÖóëÜ>@7À´Ø°ªÑ°Þ.V” V+¦Äéæ3{82õàÈèb@8,¢HÍϹcJBAÂÃʼnd”Ä §ë÷[-$Ïëä8 ÿË`°o;rêñƒ¦Ý7Ï0Öx1úíûlý=½xþ±éÞolW~VÏ+'Gú…á<¯L”óKë¬è¯F}j΂y{ës¼’b¬JÐ/U<Ë·’}}]öNîÀ@’‚ aéJdëƒp„/Ž‹VPí®94YKM•…#ÿí¹»9òÍ«ïÊ•™åÌAòÈÎvÜ_fAÐ"þÁ´¼²Û?®eß¡üˆÀ뽎u884‰âš²)^Šñ\d̃@ެ§ûTaß,ò»*šÕ¬)AM£<—ÝøãyТx`X1¡p¥ÁXuöÏßßK»q"”eÿsVþûƒž-½´ò éÀãªHz†<>£k².g)£wGú8k™ZœŽLp¿Ô@\3€Àçûx,˜'Ýwé–·µ¤Bt¦ …NTŸ* ®Ž1Á<~‰> ðe‘ïˆ.0ñÚ·–³«{—•‹;&W»7­œ[ófQγF>Ï *Lá¯3à,ZF1w§Ï.U4 AAÂ^Ýí ”ù½9LAyƒ,"Oêy‰eŠ×Øgï9ù BzñÒò"^²s=O•M¶Ä=†ö±ÉY§œÛé©aŒ =,>²a^6 ÝgV”íÍu­…œ6iÁ’¬hd¡CóÉ8Q¡;…®R¶Ž\U´Ð$4ÁÛ—Í É®èNëïÓ]&e"!ÛÂÂ*Ösn PAôÔäÚ`·‘¾®5=—cq‹’–)U;¶do1¢Fã«»ÇÏY–0ˆ¼i ¡O>ëFIÊ!Ziée˜ëH•ㆺ`ž#xÊf ‹È°ó}å¬;¢yÝE†ŽnPÉ{1ÐÜáì@]NÏGöŸîà'Èkñh Ûݼ¤VDì²¼ÁpðT£×·…ˆpdqBÖŒPh÷ÒÍÇà"1?’šÊ½3û‹JÚªåœ*Iºù&ðXt*» 8£ ƒs:4Wð‘aXÉY¼>Pfcÿ@ù¹噸»µË)e‹Zž%+‚F\æqj½qN£• $f… Y#Wf©yš©‡`QÜ{±À<›«ßZ—µÏ Ôù^iì¡xƲbÄRGNZ€ „ k[ðŽ6¹Ž ÝŠ‘‡Êmk™;„atƒ—Ÿa#–2¡Z þµ¡q–d"^¦•,™ä1LBjã騺ˆh Œ‹I"é¿pd޾!æ7,›ò‘ñiüí‘u’GE1ƒ¡Z€­‚Y…eìZWùIŠüDé )ŽÖË]+—ØúgW¥“)]E·bJeŒªVv¹‹Tƒá¦ ¿áÄK ÐNÈrþ\(ôqȯ¤ŪY”1)cê —õ‚ܵÈ{±t¹¯càômTõOy,ˆù‘]ÝhXñ燔=äZGÔ5hKë0¢NŸª ÓTÖ¹—ŸÔ­Ò`Vâv®[²HÎ)Z;žAÙ4î=çvÐ ã¹]ÊLqnýJÃÊG⟨،Πv•{ø OÓ;§·Ù¡²¸Û­Ècñ~êGŠÄÀ>ɺàY/<ÕÃvëY^»I8Ö=OZÂza²ì¿Õ_û~P¨A ‰*‡©â–} û èж DD— -|…KŒ[Ç ¿zã¡ô§ k;|‡„‚Ï_o]àTÊc¾u|x1†n”: Y¼ˆ†Õµ ˜Š: ‡?š¼ó½·wJEkî¹,x«ô0˜"TA-J Ù–E‘°s”d­.-½Ê-@(.–KcªKJ×òI¿>=¸Ô¹f•£d¡æñ SãX³¼‚xíßxš¦N£íõà Æß1 -(1ò)¢À¹6MV‹O¡’Ît¼ë—jï“÷G&$9BÞVL&lSû0ÀÑÖ y†x6ÉJŸh[:ò@·¤„¡bB8`²àÌ#*eò¾?ÿÅ+ÃÙº@ņöûT1ŠkqþŸ ëó»2+ß1¶eÛç×(U&] UwbàÆÇ– Ý1›”Žž5Øÿ·ð[9y£œÂ²}¬Ý@÷^½Ýp(†®ƒGÈn«S@{ !½AðhÊÀ¦éã5!9¬~É%{q!è•PÿI³–ζ ©–Û:ªÔ³&ûŠÉã¸W,NUúž%4_$MªÈìûž®Ï»2 œV)V¸ºØ÷œxæÌ¤Åá¯: Ð#¬PvTÕ‡ÆÝ‰aåì‘È_¥¡õï&–³,Ü—iØùÜOxYÑÇ?¶î#“ÃÊÑ…iIè7T €ÌªŠÓO‡×mRánÄx0ª:²|¤ËêÝÁtͳùoÿѰæY‡Ù6ÎÅû3,~j–¸—k¾9ÆxÜ ´'ß@](à 1+óä3ç8.÷ßy¬pïѿר帟E¡0רeìŠƳ‚ÏhPû,úWaRV¥åµ4º­ c²†2>D;K¯(-6<Ù T·×t1Íá¦N7Üh€Z]s†ÙË HH?£þºëÈß>–gïßÿΟEÌê±Qˆ¶¾gÞÇñȸ\Î@–Ù0;7mr¦ž]ÎѰÆ#Ÿ ø6òXùì’Iõ‡-õ»äK2 ¥â³IeGé´Å‘á®X§ÝÒÿýï¶á!‘áÒÜ T5bíwXÖ¨º!@®„r»2³òŸ÷ïÏþ#¹í‡ŒEà麛§> ºQãý±ckã8¦7§Tã²pBºQë+W`ò‚üͱ×rðXì®È_é‚"Ǹ7a°(ÜÕÉisÙÒ#à ÓQ.áqŸ%L!{VT³™t_™æ¸/ŽÛ íÚ‚!™äà·ôu ˆaø :ÎJF,–kÕu›õËé¸K*úlTÐgï߿ߔ ”ƒ 1i#Æ€±·‡#ÛÐKºÌ(ø:,MbåQbFèO ‹³«`Wù¨ýïZï“/WÉþ~…gwuµ›&œ8<—dÅ^Š‹Õ)?… ë¦`iÑ 3”g U“-ÇÊ-øíü^no3;ä¨è›~ŽELÞ¯ÿ÷׫'dèʶÕ>þËÉcF2ÇI R°aÍg– †6û¤<²é©ÇJÇm$ǼcÕHqJ¤µ®O\V.s ì=¦±±Q÷ñ1ý> “ÔÅ)ºáhä7~©üâg<å xï–ÿãÿQ•¾ÿ‡~eƒ[¡ 4þç£Ãov…“^[èÐÒ‘u°ˆÒxFWÃ,F—ápdqNžÉO“I2±Ñ(;ÊŸí¾ðVÎsIEù´ÍuK¸lv&‡ÐtÍñ…]µÚUøuµ«š¿¡'Ao‡2’ãîØ@¹ËP²ÖÄßÿmý&x¬ìòn;™L²0ò/ežCO+Ï ýF!*WRå*ÂW"G×£ÊÌ+€à'È+õ£Ÿ>héÀ]Á_]0§ò8dV!*+«ã›—jÚÖ tsŽŠï}VòÛuãsϱ­*è æ¯/µ‡ ݳ‘ o¿¤œlÚiô1ÖüçÑ ïFL¥¤y¤æg¸ÿÉ>2ODOaŲ>“sÓ‘Ñ7åøFÿ) ²%%ÌX¬M éRF¬§Ü´Çì*ø«1âL’ ùÁdò%鯡ë}²»£t¾{O÷“å¶šH1/,*»éj„Í̸@“‰Àoô‡Ó²üA‰²í(~cÈ @ Z]—ýóÞR,üo’'ŸËk QÐI|ÃŒåŒn„ ƒŒ¼ãu«ÎÚaib$?}D¥ž4ô%‡Eÿ@ëupWè3ìÇ@ˆCa7 ‚¼¾9º,c.¨H ôÁ˜¢©ô)Ÿ¥(îÒqÕŠfIÒ9yÄ: AŒ»]¦@F̆yJ¨¤pTÄdþdt¸£²‰41çPÙnã½UÿfćÌ’ÌMbÐ'ÑؤÇ$ú#Pö¬9DOņcÐM>JbŽlÏvÅûVE2¡'Úí4ýÙsÞ¶»"«š&ÊÇûç“,¥EÛ:·ÿ:^X­£ªMFB¥ûµä ¥Ÿ3Ö©8ftA=EКî¡5ßBÿÝð¡Y_fÍ’Š‚ <ÍÞ•¥þ|0Xž•¼¡d!ZÅ,E½l²s®©&¥û//| BÁð> ‹]œ_±WgwÞé¶«u|ȲrJÈ«Øö0Ry¿¯ùÏŠYî§øÜ²ÀÝB‚"¬ ÍœAègu9½:ÌA&Ð(cè;Wã!)&ô£¼ëFM¹žeó—T…_³³¿×· Õ Ýt_˳Y¹Ä';Ë;èOÅáÈøÛ44ëõ¼\š°G2ò~njnªš<º«Ñ_…#cP5U…{µi“|—„Ç$¹ø²‹“i¾9ßêbIwåtzsEA…¡ºM’jÙܾ} `U^²C3 ]d¥œv”¡Ÿ­›q^KïHt{SQI˜C[ ;;+ÿ£¬„0ËÙJº;zNOf3˜u ¶p8X6]áCBBÏ{äRÙY– i5TåSø¦|²HI¦ öi¸dïw©ëÑeÑÞ¬&Jׇ×ãÔýO?ôY5êq«)yÊ×b#–ž;zSΗ†*Mg†Þ[Z­so–³ì|h)Ç,‡ÊD,EÙ×w/œ— ƒ¼ÃÂs¬>Rkt</ï·Š7Q´+fd º¤›e³­¢4ƒÀ( EB5©öá{öc~Ž,`õQÒ‰ºdBì&wü·‹änÔ~:ÉJ%T­T¼ÛMβlæÐÉB·}˜-²•¡K'B…- m+rtd”d0â ÁÂôÁòò'„0AœÅ*y‹Šr–;Fì´”¡ì±è¦4&õÙ3 ´Š Œbù®— !/®S…R‡Œ+ØIȯ€× Þj4,À½Ý>¸, ²ÓV1¬ë8Š š> Ï <. a•îxÿx_Õbœí ¥ÇµøH" vg´¹c ‚’ú5Mwö%778²|š0'‚òŒ­¸PјY!öVcéžó‘É"©út’a®H‘t´+öWÞ6ј Ý@Np÷e—•FÕnOâ4¹9ôwžL²zfq¿Ù%7=Øßr"@è_˜™L ÕӬўØê-ÝìNÞ°]í…­Ñ: ,¹OyÆÇ ë“úÁ‹}ꪖÔ#LM9·1¹uÙ‡d¡gN—õRS I¬ÿúÀ\HTz2‡üŠgD÷íP–£GŠÙeQ&qS9?ˆ“‹–†5ˆ'>+Æå¨Û–¡$[§ÍVë4ÕÒÆ¸˜ƒ `a}õµÞ2×2ú0#­âîû²‚Äð+ Ë ¦O»ØGºjw –uØr 4™NüÕCþгÅJÖ6:CeLím>²ž©¾þ ‹÷¹æN£‹:IbòU¨ïຒizü?™d©¡ª†»/ÉEA·Ü„i=4È}aXÐà„Ü JN.^æ™÷ÂÜ8gÙnmUÉŽcö?eX¹®éI¬ÐiÜ’áRÒTa=Fl””A‡ ÌáØÏí{^Z“CcÆmGGñ”ÎAü˜ó+έÒS6Ÿ…ä²8“½ÁúÄ}×cÏWäÞgzܶ-û-z:åâš, %ÎÓÙ˼÷¦‚!e²V½"Œ¼\ß걋VĨ½¢Úðîc­«1v#ËRZ à° ÚÆ=ýûx›xôVÒD*Év”ÑÙÍè Vyû´}ÑËÓ5è:i){U7dMä².’ÖïvdcwG{z2ÉÂV\Ñ«Œàb§t‰·<2d¢½®À"L)imö›¹_n:o7ÐýNe(§¬qdœìLÖ?gXw:îÈeõÎ9§,Ò¤½¬ZìamÇ´˜Éb}WœèZ‚ªœÍäjÁ´œŠ;‡šD L Ìêá µã…ÌÉeY·¿€ŠŸðX=&]Ý”ÜÀÞhwã {N1'RkÐõ·1™•CkTî;£ÉG`|£“ñ`=cj(½éaq ßbÇCÈéûDEF0­XdìÁ ùiÃ3Ž–3´ÏÌ*­™ÿ¡¢œÁTµj‘·GðV^ö)$t¼Ãê0Mô‘ý·Õ@É{¾Ç’û-&ºf—´é¦Júv•TQŽŒ{¤8²C:þ <cUî7x ž:öRÆ[Їªsa‹QyÄ‘p¥†ÕGT Þ€mëbÿ%QTnѧ“¬ž}Œ f…wOCWî’¾ a „N0¨ Þ‡¥[×±ßJ©6‡& U¤öOSi±ÿi•ʶ‚œ•R´hv’-ÚÖw—³·Õñd&x Ãë(¡#¿–ëë¨@¦S —³ßèADRiçâý#+LdªO>Tôкþ$zŠ–ÌS!ÓÏÞ,Yƒ¯1/­t•×¹—‹KÇÜ•©ã4°ˆ©"®Ymc Š…6Òm~=› ˜q³¥a]0ÓÑuó”Lß!2 ºýõåò£ç~ƒ”Ôë*Œ–ËõR£êVôqyöÜì=*ALiã‚}#`X”PýIN’/Þ$΋än?›}4ÉúüærEž•àTö@G‘&_MÉNµZœC× Ý"t˜|™ãR¬}¡sCW-Å¢êl¶jËN=ÃNüTŽSmV9zV§óI»g^wÝ2n kf^ k›È å9Ðf‰V–äÝ”„›•å¼Ì` )öy¬½pýi͆J;ùãö tTc£Y¹N­mXÅÙ—î욥/›)ÐÊ‹çØ ñà{ˆÔ40 à>üõ:(ÙeÛB.‡,I†uSÒŒŽ ‰rÉ8‡Çc-c évY–xK×ÔQ4kšòvÍ1!=Îy™@ç¤U=:£ ¿Ð7–·ÿæUò9½í>–d}ÍÖkàȬØD7̶ÚMUƒW9€Œ[‡‘¹bšŽ¢è¡ÄLgI×\ÎÊõD ’¼h±ÿy…2§rUmçZä?ÚQìŠÍ =Ð/ßèð¦tËÙ}Ü5—×â:Ë,¯F°L,x[…·qúÝÒÍÁ°î¤*ç<š‰ÝÃG5ê›;4×vÓœ‚ bF‘Tv…ß•<`ÖisÊ•·^‘Ã*ØýÑ ˜+Mþm]~ă¬éÜ«2,ÜÙñ^´_’¶ê Ð+È-#,²ÎnΚÁçñ“ëk,¤dËug»ui•Os³dBbº‡q÷ÞYÊ…Y\ïZ&ØSÓdº(ϧçóòÏä*4ŸL²Þdÿ`R¾`ÐC ÉH!n~Ecq}=kPõ8t½}_ÒÛ¢ˆÛ{å VF7Cù7‡3ÆïÚcUl)DxW8í‚ îÖ«Ç~‘¦pi ^àôô£ˆLú5 ]_\ÜÔ³qyKÎj†ø¾ûÿ ¯Æ¿Èƒøõ“cÒ‡EÆí× %#Û\nÓ›‹”~ѩԑÈF¬Øñ@T0ÛEY»Ãò̱*V^bˆs–A~{»e(Œ)NXyT&É>!m&võϬ©€* X‡O[©.¶#5 qoÜø¶q3ó_Á|—xªÛ€åx—h…“?|XÿÍ‘¥s¦|ø½”Q¹ªœÄEŠn•^ñåÙŒ2£Ã>œÀ>@$(©FÉ¡øZG2 ƒPrnê9‡õŒÇ"/qY Œ‡•¶±Üº6÷Ù¨ løèáÓdA2 “J²kÆû4²J~óqÿÕÑé ~û ?õž¯]†ª“ÿõh³ìøø#‡—~ð¬ cçrÈÝë2,N *þ%¡Âes±K.Ò¨š|©¢!¬Ø_?·›öÞP%̦XóÏˈÄÃDûðµdqqH¢g?|Tþ_÷@Çòp\L[üÝ‹Ü+=Ô§Çßî/FÒÿ@á^‰gŞʱn˜è À1ZÙ…´:·AÉä¼Ü€¦9§¬Xß~нàUñ5èw”Kíî..ÂŒø²DS¾ãë‡?Bß_)V•kõÍãÖ”ò?¡¿©°¹›wRÔøEÕqMµÆÇ€ ›g2w€7 òáçœÃøvCù|ZtHFMy$Ê«»WÖ¡TP–Ué*J§I²õ•»K`‚ç0!éqpO[ï2Þ¾ÿ£”¶æ5™>¼=?œG‚¢$ë’L±åâ 9–üþÈúÓOè‡UT²ØÅße$êZ HîÕ[ú‹ĪÎ?Ý#‡¿ Æ=øèM¿i²u™©œ´Èùê±iJÏ•5+¬ôº)ذ¸$4ÈJ¹—…]º›we¶n²È¼®‡uȱèÈœL¦Urµ»IqEù{•4å:+gÏÞÞ cWõ‘^LÖPã&)Õßo›Ìó‘IØ“Öj¼›ð2k•Ø{£íþÛNÖý‘}¥‚.{Ãò·Gã±ÚéA /I¾ …!•@d¤±³ANʣ̓W¹˜ÜÊ:ˤyÞa=µ¥5©%ªXyô±°=µuUë–³Ù’õŠâÈ/úð£ X’Ùì_ÀáÀ­^-è¡rx ÿjïï¾4¬Л¼Kª›‹¯1Hölºÿ¶“uD8·ç³kAa–¦ SŒPó¦Œým1$Ô4.«3Ùq®zÕsÇÈ€àÐÃbvÉöÕ‹Šèp…¢«$vUò%ŽÀ ¹?äl±dÿÜ£.DÀ›Ñ!M‘>‘aUÉbA VÇ{i.L{ŽŒÚçXô=5• tdo>“‡ÄÒØÉÆ]Эá#ëÇ#»^ŸÿÉÓÊq‹¶gWÉ$ћŠÍåØÈ@‡zúÆçŒVƒ­&—«U6DÏö°ž…)Z›q5‰½v±Àâ|}U éVê4¦·(Ÿ@:Ë^Š‚=~B¹|ÑaO(–Á} z „}•ƒ‚Ìï’)™@2‰¡MàÔ˱ìë«‚ùrß5´¨0V w¯©šá¬`ß‚ ¹q/ƒ–U¤ÐÀPBÙÁµZÜ(îFHÖ xµÃbacø Õ+–)cï˜ 2¹Štô,ýRV2ŽÈlYTîA^KK$£ÂŒšNG–¸Üâ{&ب¸Á º…0x¡N;Y}ÿðÈèŸÕøO|$VJÛC³ûªõrëÕ.K‡µ8vX‘e·/ÚJ\ðlšÇ{òë5ÑÒ$—…c- ¡ç?úï¿èwéç5[À“;L:*5"½«Yè¦àmgÊÖAë—çÌÏ&dÌ6™î…»I&”¯Ôô'N‹ äôˆ¶f21ún*œ)KÇ R"+lÜbm-^Å4pù–bÅ!ÐЭWa˜óö%¦Oúõ‹«BÜvbÿ%)d’H­ @\+J¦à |ö§›(6T&«`Y«ÄNw3X¦…VumÃ$‘·Þµ~ÓïVU2w_.’‹i"˜MdiVÚG÷¾êÇJ»úω@q¡E2ñÒK,eVZx®üñÈ"KApàÉ*üà?rXO{¬–„ãJ€Àˆl䢪r8’Öå¼Pß=sJ”C)Së¼iâ &ÓîFßbò”ÙdnTXè+ÂH‡ 5a¹ž»d"«½¥#9»óè!ã 9¬ýØÓä,Ý;%˜2ˆÐBß“{²,ºÚä¾û½Ëeo•{pkR ”Q«É÷×û_á±n ·ÜîoȎȰÈu¿º›•$W˜—öÏ–…ðÀ]Ùš¢J™TþËŽõ6‘¡{Ê:"„IÛï'É”B.ýAG…­VÅ(ÅŽló ±y1Ö@i´‰)—Á‘YLRÉžívw„A䮪Êa¡sl4DŽl˺žy`†Š~è°žöXä°ÈWÕq[ÉVGfÑf¨5¨e°ú,ž9$ì˜ËüB•-A¹FG·— 1Këä<ó›’ôÖrìŽð®öœ$žB=N«IBÿ`Ƴ·nßkw2îá[KÔÉap•n"Q‰tfx°Êɽ°ú’ú 0éW6ÝGØÌ^é(¿©êx—èUB†„÷]›TùnPÜ3¬„P¿³©ïï*õ”Šb¥9ÂÀw ³ãˆ¼° ²ùÄ¥w¨aAö5¥š¾-æÜ=Y3.„Þ*{¬&º™™À†#wÃ$D]­Éeå‘Gåll82Ã`%Å‘H;ùC­ê§¤74Ù'[l5àÀ* œ†NÖ`Ÿ±+ Y;™*ÍÚµä{-ûÉnÜPQÖ¡Ç&‡ œo«“ðR„N®‚ ålY‡˜>HÉa¥>×ùŒÌÀ×Q\ÅÐé“!WWÔ#%BÌIƒÙ„¢ è)øqP¿ ÃBòžr¸k$ =%; ¢Écï*&Qzš¨ztÐlU—î-ùÖÔ©øÈ œç™†…<—{¥À¸à±&ƒˆ›ÄLë©UlðḰá¿H°<Ðå”]øpdT£ Éè^îBç6×OŒ,ì®8ÃLò‡ëqÃú|^ž/Å>¥ÄD¤“Õ,[FmYèè/Ùì,zÆa)衊°Eo˜·n¾xº5EPúü.í?Ð褽 6½hb_Aí-Ð0lâ¡Ã²áî#a„˜Z#ÔJ¨]Ì ʃx­¨4²3ÍGD©5“€é"çç_f‹™ûvõÛyv©m ¡íÍt±XÌÍ2]’¸¤ªa·Ò®È{¦Êo$åXTž~Lå☵z>2ƒ#s#^˯}ËN)lkN·L àÁß3îb~?.äîy¬Êôø^ ¦Œš qèȆł7y{¾¢k>¼0;¼`ÉH:2“Tà tdfÿÃúPfgYó]W€bß5ó¬,+ìL»âý—L€ñãvE>—û ŠÑ÷1%:±hf³²üÌ5 ïY·á¼ÌfÍ¢ Ä/¿Ñ'Yó[H sŠ ™yà°p·‡HX߻ǚ,ëþÌÊyÆz®xüY“ÍËf äA\„Ú>ß Fe9›—ó×ÛÕ›r}–•˜l ª ¾ÞÞ¾½mz9“j²ãý—có”ÈHMGQN\‘Ã)bï’锎l¹Õ¬ôËZòHzÊæòv‘°¦ZúyŽ'ø°O0OG–¨ N1YEV¬RäíèÙ„€Z †fçÑ5Ÿ8hÜ5Ù§¬@Ód~Z‚ÜT>;˲Ï/0,Þ+´ë«úF}(ƒ¾2£î/y0ÕÌ”sOÚ]r¤…ûB3ÜлêóÛ|]6·ž;1jì¼³jSPn>ì{åèÈТWŽe2¢!Ë0¦#ðýüù{,À†…CJyg(ˮÖaD·ã5?ä¬ÑâæÐ 6 KzYדhþÔŽN¹±>2Ì ÿ…ú·%•ήÊßÝ2ñ’ŽìQÕØUNw ö/‘c䋯º»ù¥APGfÉ( åm¯è-eo™lÔÝtãdá :,°ü&׃éCLV02a¼sŸ¢Î¬÷|+¦0÷åÙûÍûåÎÛ³f%F í}ˆ dX+°5¼_¿{aÝoBßݹvdv/e=¡ê°œOAº]Fù£. v•¢'#év¨¦§SWb ®ËÁæ5}¦\óÇVÈýän2q‡YáåØY`Ë N+¾ÇdQe`7@©àÝ 0v‰`Wœ ÒqœÖâ0×.—ãSÒ—r¼„›­axþÚäýÝJ›ËÃÓjþD×ÿkvØ­º ¬oKCÿ‘`»â#C ¶­",o“É~¾‹Ê‘ÌÐMØáob‚å;,,ëÃózÜU ©)˜EN“¬QÄMH fN(S°dµ Ïj|ÈljàúeÀYdä?¤ºËïr!éw¥åØå¸æýùç +p7tÙ+üɘ°{[uÐ|rá·+`ÄP~)ªÀÔ„æ}/Q¿ÚÝ T AÕzCA¯®.s3c¬Ãeù9¾‰Sü¥SÇ)Ý â5/µ¸ûóæÃHY3;vö‚eQzáE kcÃBÄŒ)žF¯d3â±dN)úzt‚¿{ÃÏM15¶¾ÆÄ0cO:{u’õu = ®©Üäâ¦]ÜE7âàVLÍÃ2tdûˆ]Á[QMØÅäÑÊo“«/íÓœ#T9w”tÖ|d–Þ ·3ºo(ñ‰b÷ü+z FöÞGÇØS®1=—úæÈÄòÍûì7úG¨Oö†ÒßÜ|VææÆ¸Z‹VϰTÿ~óõyάMP  R„ÁŸç,µN)WàÛh.ÑqÅ#vÅô÷{&ï®±.†íHœ3+Õ=67¦<‹aêÑ?Aù0ªùÍ»@²…zw´­Ñ² Q–ß$3åS¦ˆM‰nKÀEެjÉ xY€KÊЋ1Õ’‡²c&q}ÙüûZÃúŒ>~§rŸJ¸¬[0·x¯Ù£¼m°k‰iBÿ]ÌnaAL+Çd™<“L\6kÊA`بőìöî–VPŽÖá @%:Î&Ȳ04DO+=ɰÈUìWS2†€‡#ƒ*Çæ½e²*44‘1ÏX9‚weá& á,äœþù×:~AUø nSÕÐ}ëÜ%|±©ÁÚW–ͬ­YsÚçÅC»¢CàuCè×÷²ÆVÅ´'“W^ùµ—Ñ!OŠëP³Ù‚**zÈeL_‚móžay¤: qê`YX§ïƒÃŠÆ„¡å=2!ãš _YÑžÛ.çxÈ9nã}‰Å’3pì2õ*å™"CøË¯¯ ÿ¤ü ëêúSy{Û”HZ£«ECŸ­®ò‘¿xhWÇ#ê·«¸G5%ïT¡&,ßž©¼y'sÔîTE±nècÈÑ4§™Œ¯“+Ì%#æT͵RAÞ,,årIHv Ã+ÖÆ…[1V¡'*lJÂrélÑ›Á‘Å0B6¬TªT3$–²Y”¾À°(LŸ$Ãrˆärù±:Œ£hviÀ%-™å~Þ»BÇ·}.­oZ[åpWyýïg&¿fûBPË?Ü]ÿö¥²ÁÜ„\.>‘Ó³ØÎ“0DFË2¡Ö2ð×ÄN%ãBÖ…iAß»1h¼aKõã°dj,'õ¶ðן`db"C/mÄøm~]gC·ÿ¿ýy¬ U̽¸ZIµÕ"4Uü7&ŶÇñÈТòìU`^Ø'¬èf½JÈÆª«›ø·òcSÁ§x鞌½ï¶aPHž\µXÅÓºbœÇ ¹y~³## V† ‘,.œŒ{oGfPàþó¿1K$ã(ü°\&cm¾¢¹ï¤ÌºkvÉKGý‹ Äž»Õ¸É@KÎÄpiä$•‡÷r¸`ÑÖð]åш&Œýí?_iL8éÖ:ì.Ó-¥ãçp÷¦L–2® Xs—гäP¹Ò­À6‰5Á²”CyHkÃê›F·¼ï/ lT‚P³rô?;0Ì*4Ü™Éá@&B0$Ïíqúî–ÇåQúK,‹±*g ° Þ éªÄµ¬(Žñ›;f€º`[°+Ä%Èùø¿&Ã*n’ÊÛ*´‹éN5Eo,S¾ç<1ùr‘2ân?Êž ÖØ--ºñº“@•ï•å#£ƒ†¿*<NQL@ÂÓ/{A.-‹‘—„qY¦çj•¼m‘jéáZ–é^hX¹G·U(v¶=´Á±ì,}¶·"výSH«qQ´à#: ¾ä ”Æ®¼Ù¶p,câ³jÂÐhîG>Ó«Š6]ú8™\Îað¬ÛmAI€äm}r„¬/˜_¥p.ÆøÖ±ÉÓ\ã›Â* o²0/8}äaÜÀe0,D.Rnµî,ïˆö¿Æ°z:2ìù3ÅõT`ƶ«‚ת¼ŸÛJ ýNÑ *Ÿà›FbŽû+„» •ö+µÿ’lòöê"˜dãY-Eù Ïj6ÇW'Wã³B7¥#£1ž»î­CÀéYò®Ží*GŽÅˆ™<°ÉùÁÃøü€Þ-‹Ç‘:øÈ@ÚƒÁ« š÷ÑѾ̰¢ê<[ e (MPI(Ø®¤áIw·­ˆK¥EÄ7¦]{à­èå‚Õa¨Eu™¶-Åõ Ñ $†ÙÖ žæ ,‹Ë»„=‡5ûºé­Â$v§ÛILg« Û¹H:¹Õ.¦½äíSÊòkÄ9…X‘ÇAj«”ËムÞd4¼²õk +zKé÷®ô ¸k”cèJ'+íª‹øŠ"¯‚ð˜Ïp2f—‹£ŠŽÌPò.’iz…åÜ{5‡„ͨjá‹Gvp°“„­/Jãm¢{ªéÈÀ*ð…¢Êäuóš¨æáºò½Pa’Õõq\› r´+vY°}»aäIò,˸8Õ‘mÛH'•¼.¿Ì°bec,BoAf¥ë-ØAn“¡Px£”ú‵þˆ±@lU<½K)5Žªö¢m ´yÓ`Uˆš…—Gì),‹›-ñÕÔ[ftѤ¦(ß"iÀ85‰éédXÝTÌýÊ1Øîf%ÃÚ*[pè2ÇñLLBYΚâB‡¥s‰U–‰dI,´T¼OªmO^êjš¬Ú«)‡B°:Í>_U’µ6ÀÊàÇÕ$KnÞPеôÉnج˜îÌÑneÞ[ÖgvY8ª‹D`Ó:™4“)D—lXJRà$A¼äd˘MŽ WÊìÚ»,òY¹gh›N$YDg¬¹\JãdËÓ—l«Š\c<å˜yjk™fCKº5$ØÕ´ ½,<‘MY ,hû [KnÊT®mSŒ®$²uö2É[Õ‡òJ!ÓÚ&<Æß³ÇÚ‡.rœ»A ÁÔ‚”ÁƒÈÓJˆ‰À\Šª`VÈé6äŽÇHB?º,|k Œ*\5 1ŠGÖ¢”¸¿*É¢#£7³ÕmÄД¶¦Bc9iÝþÓ-ÒYP2Æ,?ê¶Ò3œEV&™¶WŸSàƒlÐA·”›uÊãvº·¬à²¼"ú‹Uˆ™ŠE½a£&‚ÉòJ?¥‚Y‰ð8§v\Å?Ëò^®GçH’¿ÀH+ʰt®¢Dë?é±b–ôƒ€*ˆæ)ç!ENõ ƒÎ]ðe6÷èǼÈŽ¢ ªÀ‰ºB‡aEvÅsaŠ€Åþ`V{æ¨ ެ¿WÓž+x,– æðR Èç–Jè7e–!è…‰ž`6D¢æ˜F‹¡8%r†NÎ ôƒš˜Òm)W„ª"•V}éÖññ¯J²Rž&S^)Λ£ Š®ªV‹¦™Iè!i×VËY–­a/ya¸cîE/íí¢jsu\´9v&øÈRÞ­Ïù/é‰ËR–òˆ»½ÚŒl)\ÕuÊóøÝAŒŽŒ/9@ÄS>â‡vÖ"íÈßá':2[l{f82窄”yÞ”½?-ÒDH YBC³Ôé UB»´ ŸnXG=$­(c¨ 3th*Ëήgͧ‹‚ÉáÒqÚpÜŽNkÌàqÿÕ|bì±cî~TãýÖ•å§Kð HRV^®³f€½Èޱ5ù¡²´G¼¢¥˜éL-ÓwUˆnÖÌ.gÍyj”E‹4V›½U¿,¢“]Ó!ÍÎËfeª’æöíÿnK°šUU»jJÈÐz^pFþÞ‡7h覜•g¿Ÿ• 3.§n bCy„-ŽW›ñ'y»,ºVä±X:g¯ )Lë*+Ï>®ÀaÀœ^f×gYI÷ÃvùÈ¢o·¡ òXÌâ‡Fx™}¼^7ŸnÚ­K(‹ÃÖ³÷§ ÷}ïýlD7`)¤FOû|z^fH^X}øËçã儤䩀]—Xn°Öœz«C<–ÛñÕîÆ1‘ÊÑe1"Ï$¦€"\‹ Ey¿æÏf%Øk´ÇÎÿI$„Ë`”â¥ä»tÊ%èͻټ–5ö,šÊ¿,ɱåç2Ͱ.îMF:·³ˆ¼¾®š9ñ×ôÆ#c¡%€¢Æ ü^~ä„ ÊHûþá‘¥\BGËb—E‘üâÀ33šV8²m›,ÊÍ{kÏJîr¡»ÎêÔ6Ôâé#vEçÎ%™{B à j»~WW5tœÌžœ}ôÃìýiÃâK«¢0Ê»l0¾ò0„¦´G¸UX2'&[¡ÝDˆ‰C8EͰ¨Üe×iA’ó·:uZiTŒ>ë.a0LðXc–5'øêÃÖþ²L.ÛÃüx ï1h~{,iïè”+ô©CbƒÔpo<ïŸ:ÈÌ¡ñ`÷¿,ÉJÃD9ãêyƒ`XUtåZÓju8ÀHl©ØjKwÞV€U†)Üûõ§Ð§ fõí‘E¬kx°,¸,Šätdž™@;Y1[óp<[M§T>”×›#=Âïí çŽY"Å¿”JØí´òQvf7ÿØMvé& )¤ÒÒ‚°ë‡öŒ^!î§ÞKVãÏ¥i] È/wÿ‘QŠ®)·ü¡™ ¼ †õ'æÐ²øÆ[.„€"b¼–UTS¬+ÆI[½Ó§ vùþÖ;:­0 å~–¤ûOEuðXôÔéIïI;@Ò\Œ4 Lȹ…·=u÷[!Pü./#i…V¿•g€š¼d2õý¯K²pn‚Rd­5#‹F… Y\P)îÅò+xþØ> ¡«Ô›s&ê_þù„·:qZ>- .KY …§tlZ\x~¢(fßw »äIEììݵ«ƒË‚‚ä§…B2¬÷Í ïÐÄ /©aÅ>§ÿ:°)Ì™kJbUž, *[P´‹Xe«, ^Œ>Œld½WÀíd×ÝYóaÏ»¶x:zp¦ELqÕÉ<Ö©ËâoÓ„».›óœqÍù³C T÷œ[ý©&—åÐÓÎyæ)Ë*³K  3c°†ˆv©ßÿº$‹ÞC,s‹z窡Ž-g} ‡Ué»VGÖ\ÄlW=F[Š _ þfaŒÇ½Õ©ÓʃeÁeåþîÈï~oZ~ÃÐëõfó±|Ö¡9Ć‹@ø„]Y–…_e"|Cr]®ÜÕ.,;(³ß ½öRÃ"ÇŽ¶îG`–ÅaVÆe9ê²b)°s'/â±øÄˆ°»X_×TçÎ×=7±úç.…b,ªaʲ°k;z¬“,k_ƒ.צÐ̪Êl9 à³ës™ƒÁ½Ï²°• V´c(þ¸¯ôckú*Z5£`Í/K²èÉk§LK8‹„ã¹ýªišr•°ö =M9oÛ8°+æ»`Z}9›gó¯Ïy«§¥B×\Vê·ÉÄsÆ1oBáȲr†±Îò7à<àÙ½}Ò®pîȈ Y]¡eAoG·`¿ÅA ³çŽküRÃ*p±÷&ÚBñ¬QÏÁ*® kŒÌJÚØI6i¨¦Ï]Xý§–7=åx¾{n †R¬P¢E_º7z¬{—…(Å^oͰDŸn\â‘Ë‘9:¦êa}rÀ-÷ßk $:4ñþzÅ„Yh óà~ÿ “¬>ÂØÁÉárd–bÔåŠQ£¬¤\j·m‡npÈ” S^:ð–xüç¼Õi=SÀ²>'ÓØc‰ùá­AñĨ 6[1¢9n§rµÂ àÈž´«Ð~§Œ42„Ik},i²2ŽUɰ ×òüÝøœaŘ.±¨HÔŠ½‚Hssë£NÇ»îHÅkx«H ˜B °âG .{>Ýåò‡[rY7Éz*ñhVÌ †àtL»°Oµ-•zd~§võ02è …³g]ÝhÀ*âX Y«Áɉµ¿È°â(} +‹°^Üà%ÓB?·Ž[è„b ¯jf¤Vã4 ,/õ²`èzàBî¬I܃âfUºÜÔ 7cΈ…œa=³K©Fú<«tµ·|W$ÚhÇU`I߿԰ÇG̦&µŠ¹€a…)"z$Q-ëì ÁÞJ9gŒ2Js´¶Ï-7Ž«oä´dA#* ã :º,Á‚UÈ)¯RK7»à-ŠIKi6J~·>wzs;öMX]¥[`[YcÉZ±œ_å¿*ÉÂV 9,:«b ÷^ ,EÚJ–õFG¦e¤"/ÅBsÛpd¹1@^÷æÇÞêÄiÑñÞËÊeâì·fó Ûvh¢ X…Ç+z%²ÏŠFû‘B‘År†j²©ÈE“«p†QQ€–Úç³÷V\ã~˜A’“b„9·º£Ñ²º–ÿ@K¤î-¥Q=5¨Óйñs)ÖxŽÛÐ>¥,+¦tQâ$Á]³m ®Ç6‚ì/•½hSŒÂØUú]T£ ÑEAASÊîÈc¯Ž^? {¬_˜dEûZc ™ÆamØk#GCŒ•8 FF·ŒÑsЃ#ƒ·*~&ìr}8I„L´:1+Q§Gò"àµz‚Å“vŠTÙFÏï~“Ëêä¸noLUy—Ћo#çg‚ámêçÝüB¡?“¦ô˜µgú®œÓ¢¡˜Þ^oïXÔRº 㬴J‚+’êùkÞäJ ã‹«iŒ¦LΈ¼T.ÀNr”8!¬é˜ 1¶Ÿ¶+yøøßÓ›§P9Á(HëèúÄÀt»É7öX¿,ÉŠe”;]Á˜U3:Z²Ó¢[Ÿó,Ýjq¾Ã‘1Š ƒ'ûSfu(ýEr%“C}o•«Š'¼á'Õ„R†éT ZþÀ®ØeÃâf@‚ÎhRuÀzò‘™}ŒüíÙÞûóÉ;Ågʓȵ«„UŒçÚ¥Šëh(Ñ锩†8„ ùñ ààÓ¯™æ,ÿQŠ5¶8snÓûÇD•<‚ yÜ yQL±BÚWU [:6úfÙÿ‘Û(‡Úv,º@cD¡O­ã7@¿*Éê.ˆîííh=’õ89A<~5PnÁó!¸ýY³:8­Í”®ú2Í*ê€7îï/yîcØ è©‹é Jñ£Ç|7”h\¶3«€õä#³ˆ ’Š/n7H‘Fjë@_¦“ “²E6­%ê^ö×¼ïV²Ö¹•]ah|ìYKê)Ö¸@wôÍ z7{K¾›lµ P´“ë†ôR>²ºüZ–óÁ›.*}ÄõÄ€g,e‰4ÔûŸ˜£ÎîéÕ¯J²„éµH¥w¢ù3Zx­m ºNÞWtdÙ*D /²r,@¾À¬NkєТdÁŠPýGBï,\õrŽ#“ÒýhÅ&>C—‚é¦QÆ.šÛfÅw†Ø†¥~Ô{®Aå‚b分եðô¡Ô3´K›lÜþnà¼,!]>Ê5¢³_kã¥XÖÚ«³òïÍÇì˜À$EÀoZ—9ØÍ"rSÑM†¯Á>…ý#VŒ²u3à¨4kÐáEÐØ=Ö/J²À;¨{!­ ¿OÚ}zÌ£CV·o±}ˆH¦Uf71à—/îý÷~YþýþŸõfåUç|ïó¼àŒNçº\ ù#Nû7%½®¬´s™”·èð¢gØã¨* žz™aÑaw(:‘þ ÏdRh8Q0(Y—G:+˜ aM´¹6Lš Ч(ü§Cú˜bGÛÿ'7åRŽx­‡?›G£¦œnX—6?%Îz$¤…!ÎeIɢʣߎˆŒ«L÷%Y¹LÝ੺B¯ôwb¾ûË·çàu˜1RrUnx3¿‹ÜË—ü?g¬ ‘÷þ‘G/®%sle˜¾ŸeNÈçŸîóøº®ÒÃ{‹dYLäW«ˆ~€œyư0=f©p¡åñÖ¢G§{ pŠÇu|ÍK]µÕ¶>Î mšJ{ çÓ­´Ñì‘H&¬z¿_Ïè²Їt›ã÷ãÐÙÀ]¡q$ýÑKc¨U¾ùXcçå:ûã’‡uK(õ¡õ«’,#rD3Õ–nwVÔ–þ¨ÉŒ,X}2+з3aÁ‚gÄï³KY¼ü9ËXàïÌZe¿ÿ  g¡Y‡#ã›¶+u­Ÿw‡«°\†ÿ»E_¹ƒI°ÒèÈ™g`3žKÂ(¥t‡²_‰¡–@-feÝŸ5 ùc¦Oô ²LÜBJǰÀ0Axü#¤X÷ëÀ!Àôí‘VˆÈYqøÕPKÖ%ÈàÊ‘ÛR·8Rþ]Ào~©ó”)Ï!Ç Y@Ì 90ksÂ_’dÅ2‰•)«#¶ŽŠì¿Yt—…`XÜV@µÌ^3ÿ3ÖÙ [øxøþ§ß oz?ôw©³b?ýñïH²¨˜½c4,ljæÌw %²ÍpïÏý°#á=ÔŒ¼âØÊQQQŽ¢Vxýž¡a!–ŸÒÀ²—FX±ª³OÃ1Ų÷.8aû~S~Dk•ÁnùémPˆ-°½‰ìoö.ߤ÷uç#~§¸´O\6¼ Â;oxß—7ûìþ—%Yy´•XaAáÕ‡Î0²à…ÆŸÖ Ïo¥ü²Ù¼'/R^¿†í&žÿÍ¡p^h^Ä„BÖ†“Q¶¦£}¿Î¤Kuþ|(üû=®ÂVQXÍÛR‡½Š:ðM2®º‰a© ZˆTþ‰­+ `¼FSdÊéäжŽæ{LÞéØ(yÖtrˆ„P ÏÇ}Â'‚a>v5N^ߺ<ÛœQ:«Šz~<5JΧbèXÖLÉ0o®SŒ ã§j€ÁøDÉûBó¶•|’wHEQúÅ£«ú%I–0Î1ÿD8:¤k,ë.ç†Ãذ]6œ¼W¼½Cêõ欙½ŽªòßòìŸß³Ìó"Ï|zš¼ƒª'KftCC¯äF=ï²>”gÝYÖèΣW™[Ý@É,bš¦ÀS?ÈÞŸ^¦€Žª±„¬4ó_vH>s$ïk¬.7æÞ‡vƒÍ*ëghìæÈP#oŽ%ÛãÁ08{…b}šgóO«FTÑQªBT%`[s˜¹/©¬PñáY¾­ Ñ…Î<›Qaz¾‘êX‰6ÆXâdúIV,±»¥ãC’Ž…Þ5ÅG¦†Ü$öOʆéÈ´ìvÕ”Ù'é^ç-{7Ÿ¿±A è¿1®pã˜Xº@MYIÌæ~ vö/Ù"IB'\œ7·å®bÇ >öXý²÷'׿ ^9Æ÷ÂI^ËŽ±NlÑdì˜ ÒŒí‘cU¬ÃG«ÿì÷¬‡â¨‹Q< VäëÄaae,£" KÜ).6 ÀsÅGWcd”é[1H¿?¸¬‡Æ³* àh!Ò#—èµõ†^íïD‚…ž·ö¿*ÉB·OÛJÚ:Øh“¯0„Ö<7ä›°jÑ(ÝUSÍ›Âé×Çá8,µ‚–&=5®ð¾j´¸êzàlû†…¼E/Oï\µK&XcÓØ´Ø„!ƒHŸÉÞŸ4,0D£ÍŽ\Á¡ZùÀ»%¸£ÖÆ/xÇžM·Rnò¨¯Ûþ^%$†ë¾$äUDú½‡29&´9ûZå·aPÔ‰ðÊqM¬vª•Åè²DÂ0ŠM÷ eº¥ Ù lHJqÕë¶fEö<:Ö/H²ÐUw•ã&¸t#…)aày£lëH`VUKl.]L“ ã鋨ɛ_aYa]‘áh\¡8I™r™5Å+r›ÃMú—UHh¯$;Ut5M ½ZUC  œH°²ô§ $èF‘;0Rmy²V˜À€À†eïÔ=ƒƒ!Z-0„®Ôÿ³÷5li+]×ù’œDIÈDæŽ%V -ˆ §U„ŠùÿÿêÝkO‚`Áж=Ï{]¤çTS’Éšµ¿÷¦Ï·»ÖF^ç.ajoÙpíE.ûD#€‡íyý’Ë+‡u^–•‚‡Ûb¬€WmhI)kC2[Uìð*Û'âÄ$íúšX†$-h‰A.¬‚®S)>ªdÙˆF_•e`͑۫tˆÔdî‰ç)°†0Ñ&e‰¶…²Œ™²~gÍ=Z2/®[é%ãù;¼d|ï–äÎ;¿ ¬ÄòmWZîJá—"d7Xcºl¸úYq¶á®yeÍö5"o@(Œ—X+ÔÇìòó²>ÿCßRJsWlÏ[¡ÑÙ׸G§_g¼9!j‡e¨«Ÿ¼5_yœÊOØÇ”Á$)uÊT͸˜ÎÛHÈhCe ´×ZÖZj!“äèw#Ü“Ý29ÄU¬d!͹Vý’3r̳AšT?8Ñx”ÝB’t)ŠÊñ η#4k3>ªÁóöMTYü3×Yxt[(ŠÕVéÒH ÃIø:eX37B÷š±–å*›”C›•o[OozE{ß3¯p|«ÛÏ•> éñˆËÀ-M죱Ép,Œ èALækÉ(’jfP'Šnµm;xË1CV±v›n¸­5/†¶NÝ…ÊÕšµUˆ˜%:¿)¶Z>º™ÎÕ’Ósu„ ñPôÅ 0çR ͸ 6MFN¥èÉZ@–ÓÃ*Ywçu*ƒçÐòŒFÚÃÅpô°i »¢Kè/äÂç¹c¦EœO£’êîêî£z–%K@Tšµô~qL޾zEÁ&|n–qw÷*°ˆ²ú„'Wšwd•rPR¨¬²8ZHh¿ö¾ XöeªÛïsû¶QG¦¡¸øˆÏ8³¹«3¦?xUŸXÌKt(‰w("éiÛ±«½Âpi •µ£ÓnB†\lÀµ½M÷_0ÏHHÁ\/6Igt¢“wM„ßá1uÊ®ßÞçY+Ö’^(%Wd¦XÐ'ÐKÂÆÏ÷!% Ý5ó6©ëK+Nò{, ‰=²Eu1kíLüÒ QN”¥0¸VÏèì2k©Ë à""ËçÁ÷µ®U» C ƒã}…4àAfEçü5`ÍÜ+]};cw‘ 5Aк½¢½ïV5ŠÕï¶)øÅÏå_ݤä Ö°Bƒ‰¥•ÙBO? cHæmD~§e²WB©©5,Ò¯üJiòj$&ïYHÐ(kÊÒóq­a(HâT†ö‘ÿEëØF„§ág3Û'ோ‡,Ý/ËwLNЏÈâT’°3²*˲^ž(Yhn{ý 9CÌóùgtãnk­ªÍQœœFŒ7Š\80—FÒøµÖN¬%óéõ??~ÝšÿzVÝ{”뼡z0 úSÊ‹mÃX8£üv>?I¯^Q–‰1ŸqmKlÚÐ22XÚ&²í†«iÇ=fßä%ª/£Nj©°,nÇMg™n%;O<ðÊÐà~/•OÀÂÈ0ñgAS`nÖ–e«aì3§^â†9Hr%+)_±Y“3VhÍÀž<™ÂFj OG×~¢BtŒs°qÂŒe#g_·¢¸ÈIÓX8^5³ÆNbnff½ë8åêøO)+§÷„«¯ŸsQ,IÕÑÁ{´èAÏÍÒ’ &šIb|‡…nj¸æÅƒúý²ƒú8K“ÚèbÇÌP²ç$Òðͱ2Ђ!8¹æ– ¯kæ ´}>ã­A†áÂ(JOJdád†á~íýµRNƒ¦¨ž¤+ýi*Äëf`H{­•<•ªôÆø‹û½SSpΛg—0„.¥î¼Ë’&â·Nƒ÷aêq%kØÌÓaK§Ð?`†Af†…Þêúæ³]Êp@"ÎùÊôFÓÌ©¸ÈD('…‰>ü˜’Õ¹½¾þqÝ `\ea(×Êe`}Mk%~ÄÞQRæ9Ñ…àÖª=e`M?8€¥®‘ÖëŽVICL®i ÒP²Š$pé‰å€$c€ˆôõíž©Xü uÜ<ÿbÊQÄó…,Л,'Ù¯½¿2ò¤­Š¢ÕJk(à¿Õœ™M—CŒá­Û¡†¡#ð/^YvGç\±ãÎÞ! ‰}´Ôó1¼ÈVk·Ãš^! ±Lhè`ò›€±@ëdÒ;ñpŒyÙXýv€š¥0:° Éf õA¢‡¿’ j×s*Nü.=W¬’¯û¡@ɺ$I8'`MhûE"…$$`Am’ßsΓùœZ:óÝ ›]aþkŒ^*FkI_pi5°>Ú¼F–&-6N »OÀƒ üØQJ ÂqÎI4·×«Zº¤”ê‘߯Ì×’Ì W¤Äþ~í}°®¸+Ézß  {~vqv¶ï¦aÚ|‘Š‚&sP©QfZꑲ$Õºó:dÜ.Èè¤^hW¤µaG3aÁ¬Ö‚pËŽHC­òØ<´.cì{ðéë!Mf¿PEʹ1ùn­&¬®mô«©Ü!fÇ9DÀÊ& 2ŒYUþÜüXuáM€D'Ü7¬,Ç÷x¨ªGLú2åý>a1‰¾7œè tQ&EÛâadHJ7ÿA¸ú”÷ÃŽö¡Mª†´B¶ZJBɪ*ø®cQˆ"ίãë`š¼,T^ä¼3r‹´ Óq”,ØA>¯â½,¿s¬\>½˜æÎ,)Núõ,OuiŽQ¤é׎>Ë8ãDé¡ ˜:é°Ž…rcŒÌ‡³vûQ…¤µ! Ë!¤+Å“çÔ— â`aH¿<Œç6ºn9…ž§ ŸC} ,¿$+‡l…à‚¬‡û˜™ÜúmøÜªŸ¬Bî=Œ&É£<@S´‚h]|A¯Ù¸KøbQû%ë)@ƒ³Jø§|¾Ï'Üò]=ÜçœÏÑ7' ÙrÂ[I—G•a*ºcî h§'ßNhÉÈŽ·g1iqj2Q% `lb¬ù›˜'.ÓàäÎ/°ìÒqeö~Ÿ»ו+9½~WèèUÚÎ^–7v‡ËÓö#\>¡ïÄV/MO3ÁõR¢m û¥›[s›%örõKf,žÃ.…7 :íÃÑCg´š´ÖÂ}±¼ÆŠ±=ïe’ÖZ¸¡‰Ü{ÔáE6:d†Xuå¸w‡ D§™ý6þçÄÒevjŠ&Aú4’ƒ%úëÁŠë“¯X~Ä“uÓ Ú]ÄJCž½–÷¦˜(9ÛÖ}# ÀLÌ}¹€ ^-nî…~7ZÉÖÒ2Ο:Ü×ñÃÐZ÷üã6í>£ɬU™ FÁ-©d/íÜðà‚p°’ré’a8IÓ³‰»jI3]ÊhW L&Ù«½ï6núwàj§šIZ}-UÈ•–-”JßEÈlu~´å]Œ¼_¢-Ùk>û{=†Yúš´Ë04aúz8¤³*ÛTul]튎!m÷IYÂ}õ-¸û XYºO„¿LÔú¢ØÞWž’qcX'Á ÏØôcÄ ÙD!ýF[heÜõèRý ÃÇ<ÌHŸޝxF ¿4½¬~²È–™¢ ÷?.$$cÉ膕—ÖÒÂ0{sH$@ÑË<†ZUh¥‰F°Õl=â¬â((Œ6òÿ´Îræ™5¦a)£bÝÊ)éîå¤t4r¾”‡ ,›Öj6s¥ `Íä`Eb‘ô,w). ¾öÊìa,šÕ°ìCª’d¢çà(X÷ ˆlu¾žéxc¶M¤·C ZfƸ²= î9ƒ[?t3… :ÊdÎ-ëtž¸ÙUÎVÎÈöìu=Kœ9‹tÅP…ð1’¢0\ º†ŸÎ‰‹¿¬t‰†ÂcKÈcžBVºbC”žÓƒ÷dr!¤ïÉéRr> d…ŠÔd2ÁÔX Ìrà"õ ´Àú'«ñôÁ‹cYp…=²@&$(»Õ®Í7ç(¦]€4…÷C«FV‡\ŒmXÙQ%ÈZèXpc`T ²H ß’‡ ¬¤EEZæœXakÕ¢oGR….Œå€Dy²O}ØÇX˜èWw…K*º `YÝ¥¹¶Ã}AœLÈ$ÑLœ(ùËq~¬)³JD“2eÄžû¶A×ÀZµc³0ĉuS§d»ÿ…¦£…¡FÖpˆT ¡¤[aV´ùB³?$ Æòù‰ ³ †fqm>ϸ"ÐÐÆÜE¶­IliúU$yÆ]$ÂBÊ÷+YD¦&™:•'$-= ÅÈâUÓ˜‘E Vl ËãæÅÏEï ]„3/=’÷}‹ÓÞ -mo‡´™–ò¤¹M¬"e—T´=U·ÍªØ¾-­=Ð+ŠÂEvCßJЇÅÊ+ºf³/ÐÞÄ ÷õœÙÇX³’¥EªˆÓîq®IÆ‚á.ÐhÙx4Ò-ß-µ,Íq{d6“º€Ú K++É‚LOœps/ Ëìæâ¶¬ùÊ~ÑŽæeED- YϺh-Œ §£kߎ¾ß‘œaBš%F“3ŽròC=épí–e·[&ˆ³£Ü»õcbcƒ~YŒF'vh!ÅÓ4/nîÞ­cù00h“Ë¢tz½Ä8CÈ#• JX£É„'7 E.Gí7q…@—S1ïó°d5´ì›ƒ/9ëËɵ0€U×¶ÚgX2SqÂߤw¶îj2ÜVlMf 9‹ÜIoL¢£ë3Ôd2ºEØÜïY·ö!Œ….ôIeËHõÒ H{´µý!z¼!…1¦c̪ò4O¿ðe«YÆ'GZ õÐÿÄ.c›‡}bÎ/™t†Í¾gŠ·ÕMèœÉ“/m³5ðâišù,AAJÖ Ì”´Z´ôViðݳÑÊÜj‘ÌQ³„î$VX¨êßœÞ$ #p)v¶b?‹­6®ëô½Œ…!´u¤áa’CšºC½17ÄÄ|â¬Õ@Ê Ï¹ß¥t'…‡ò“´³Õ¤#ŽiB3C> HËÖк ‚éÁ—fÇãN𿄤KçwÛ–I…䙦7›ÈÚ‡–M’i7÷÷÷ù“m9-·;sy®çaÐ’)–ìñÍÀZ 8l",{©Gȶq·ó*ºÏ‚HËO\åî4ľÖÄ*ƒºÄ¾^2$gýïksÆù ƒ˱‰°âf´š‘~»ÈÂB,³,[ 5Ò½Ò¶e(ôʺ¨YŒa†I2L8@§ú m¢„“$IæX·ÌXñ4 Ÿµðë6þë _ü£å%N½Jê€V¤i}FfïBÕlð[⣌·GG“$áV… ã&mæt΄šèÎÒÅb±Œ„vñýÝŒåÓód´rW4k ¹{´¿ƒ•ed"(¡+M9¹­+Ç|úf瘭'HJñ¬0É’¡ayÁ70Ö<å Ëç×¾ò_‚š¹:—#סµ´¹Ì5+Nó+¤êÔoŒÌn‹LpiÅp ¬VË ÝÑûŒÌ¯y„ò ?Êþ®¤®}V!¢{†œ9< Éø’¶•Wb:r|”ªìŒÌó8íœE$›Ælu ;Kª±¦m•a°,²öÓ¶Ü™HJ×ë™NŠ…ïý<éû'‹|ºW-ï‚@ï¬1c‰”%øØ¬TöD-üÚþEÛ·Ø_kitš:ü&»M«§'PVm ï"Ç­æ§ï×±L!(Dýøš„®òÌ„çH …©²Ã/RÄA ƺq팓_Ì1ÉÊÜ´bÃz¢AL–ˆ§+,BÒ!‘><ù™^ûkRM0`ó¶¾[®pÁð‚‹è,ïñ„_ÒöHÅBã /ܲ õc3߆¤%[Þ³ŽÕqè …Û»g t‡´ èÏIö<b𿤅Р2[Èà29ˆ*Cžvª¬Ø(|ƒ,Ž4—m*2aSze¾ä©ÏL§ÎÐÇ8[ØÊSçõÌB™iÞc™šìÖ «ÐwêDÂ)ý^šr6ŒE›Ï,?áö±üÙ73|_ÉÌçjYßÒ¥i¤€µ&0Är× öRz“<@­­3«ª'Üê;“ÎCx¡ImƒQÚN§Ó Ã!º5N1=£Â2 D)iÉ>“)ä°°™äÁ4H—C]¯±¥'ƒs6Rå{:dgŠ ž¤=ËðüusGûMTÕ±RÚ~´H97 ™Þ§¼'ON`ÐåtöÄõ0u;Ágd‘^Lj‚õîaÒ’p1ÐÙgLɳÔÒ/ËN:ÝmHïÕ±JGÉÌŒ­bxÑnŸsó]ÄÇÉL‰•Ysù–[í^{ÂJ%•ÕnŸ! Š+浬vPJmó\[‰³übàŒzÄW(E*–?5£Ý–¨QœÊq»=(ßPž*¬/tf¡W3…NÚí+æZ~K Ö~nÿžéʵ ¦Ÿuûýâ4‰Ü‚S§Ôä¬ÝsÕ²¦‹óÞ×ów{ÞíÒK俍ì¶Ý~ät"RHÄÐ (Yt« ‘ÛQ¯×fˆŠ,©ÌvïYiÃ9/V l•¡nq¶@VRš´'F½j çŽØþ0Þ®Í%³Æ½Þ„ÌRl«é¢íÞd$Ž@êI¸R ôŸmCú4éEÝÊ\qûýi9D6,ÆJ½dum¡œ]äy/‡ƒ".i'–§;¸q×oƒGÃIFÒÊÙ¨[ôH¹H¡;{òpÇi°e Ù~Cæ,{ g ‚ ¢5@ÃuùZŒ…%Šõ[t5Òe×V;>T—0´š¾Ü‚ƒ(!#AØU­^E¬$D'F8Uã’È}Ƚ‘”ë¤ËnªÕŒÂ c0x¯çÝñV97d†Sé΄ƒ>:¦ûË -'–t d—›ó’•ü4‰µæà¢2äŽzê[‡ €g™¹r…Ûr]TÊ«%×9ï—]/Y¿VÅQŸZ¸2Th.Ý–bÃJ`”éev -¢-<¥°^wÖ ÇN)]å ‡NŒ¹šEB6ñX¹-.œB:VÑ:,VXS—Ô{h[ã”1Æ£šfzcÒ+…W²åÉeRrzbå‹Ð¡Ÿ9„º°o¤H£‰BÑ^<äw†… ížÑ]©¥;À¼€V+ä’&Y"ݰÏœ …"3TEÖç 9ݽÕОòxB6Ýoõ{š©Œw¯åô AñX†š\„1¤3¸%pV Üõç¯Þ ¬P…„½dôhQsXôJÇ3ö$¥Htp[…Û"6ðÑ’ÍQYTÏ:a!&:ý5.í¤Äxw,Ùj`¹Q×]…ŒV^2äžn€«F”oô¤`ã|¨¢Iž\eYµD€`ãFh`;Ú<‰G"‹áU²ª½ˆp%ðVÑb嶸C¯»¨V+¾@à°0Ënð@ÛÕ{Žƒ†ñFŸù‚i‹4¬ ­ëÆ>ޱ(lUýVÞ[‹{JÂi•؉¦,Å¥†~WÊ%\EB£Æ`ÐuJŒ h±òΨ‚'6¹µbF¶ÊLÔ#ïËa-qÑX˜§ŠÆ÷•mˆ"´¹uCâI|•ÝâªrÀÊOP<^Ð:¹Ü}¦¬ÕÃûc…1æPð’‘ ‹y‘¦Z‹Û¯9KT]Ã3oxÄnܺBÎx.6ßm†4rÎg¤›¹:Üt2AØ÷­l…Ò].ÜU—(¢›¾`.äc£ Ô ™õØb 7<¤EƒI×w[<úÜrZeÂû.<T`9™­#¹¥*éb¸š‡Ð­¢®}ÑK†2°… …<¿Á!À %v)L,Ÿ6#´&O;¨Œ¥âné–•Qa2…Pò çö"ƒ™@hªœ$k•hxBDBF?jê¤PIfÙQa£ßùr0˜ iQ b­Ù:Z†=Ã{îÍ›³[à ½äBåð¸„nU7N·¼.7Qœƒ•Ú˜«ï³Œ“1æâ†ŠB¿c¦VYF*Ç—ðcÆb’ÓÕÚ²VÑû󱞗̴8ô8+\K$æFÄ Ãa¹c0–)cñÐgÍϨ%p4oA»Ší¢PÜ[nÙ•^Ë]Ý éÙ0¦Ö:ƒÎ;CV”¸Äu–£Bf׊3uVݪp'LWj1˜À«6¶„֮݉¤'gºØ×¬/ Oº´K[+b+,™Gß-šs£jåj‰& 3aÐ};´ÂÚÌ®4ðO–\–I—euQu‰y\\äsÁ*¶*íÜÔ"tI–~<$¬è—È‚ð‹Ó¤M3›^îÓ™^§Ž'Ñ«£5¥ÎY?³<_F1ú’Ff ™èvê”C¯ö¨zÜ5ÁB Ó·I)C˜dËEŽ[Y6=îî3e}@Ò®W˜1Í$©ŸnRÆsÓñ-Ï’Y.ÏÕ!ahV·ªÇ=Msn5‡%Ã\粌Iú6‰y˜§-ÌÂ]Ù¾^²šµˆ«Êgç¦ÓX„dÖH#à¹ã*k¹Rî8µÂEV0k‰~G†§n™ü¥¾ltP1H•²I­›1‘þ >¼ê}} ……ôXW³›i»ï´ÔpD ˆ²· ¯<©Õ’¬ñ»³^ÛîÀ¤¼¨Z+ɽ®Ù§gÚö«étÆSé".‚Þ„–‡8Êå–ûõúØ@Va¸r=.û´бIò‘éèLÙt7(õXO"-Ãf§ò(OÛA>AyÌFÇg: ²é;ÔeKÎêû9âýßöP¤ù×½ dæ“À੃¡gÂú’ =Ob½‰0q…FEgHLH¹:ÏZszý—Ö³ë{ŒÔ>fs¢‰ºÃŠ5JƒvN·ÅPË2G次%ZkÊz/c¦Ó“ ë`ÈäJŒdÄEõy4EL§iŒÿ!Oâ¬e¯í|_Ó±3ÍéªÓ‚ý[¡Õ†/©cîÁÉÍï?ßçãІ)cݦxË›¤»úÞI¢QÑc~ŸÞópj9iÒ(Œ‰·§ÒºHS`åL{µ5ºŒrL·3Í{ÀŠ  °¿NT›YáØm-Üq Çw2x³(¼Kµ?ØcGH?!zš7æšÍÉyL?{©j÷Ø)ØZzÌXôÐ7\Qܯ­všwl$›í´öùbîÄíü,BGD‚Z"o÷¿íômßJ3äTæ„Uû1G¿ã4°”Â{’äS ÞqÌ™ù ·´s†:ÃqKŒò“~ÜŸ¢é¯ gþöä+"{R×dÖPÖ;u¬svŒOín›sû¥ ñoÓŸ;¥S±<$@*Æ×ñ/ÙH{¿Ûü!CŒŠøßçû[üijÒéuߦc= Ö&÷:™®bÎå€þ Å=*V„ª"“#ÑãO~Á±œÇáÐö3m}[é·kT8¬Œp¶OÃÒ0&ËðÁ¥K¦Ë~;c5•Ð#ä{*/I0à2ÉÇÌ2hàYÒ¥¿ã,Y6ÑA2R2R9S@GG~|ÉÑ*>bÏñšúã kiÔ3ÊÛ©@ú¬“ÒNéf§©¡›0x!©v¤PfÿMàI:õpxËa×é“d?,-eC4p2[—aÖÅoào¨‡í æÒw,Qbn"%!¸°ç$1kÊz'c]ròÁô:7Ic"Ümrh‡™ô-éKÙúVâé^ë')Rîc…ÎLÊr½bþœCî:"¾P˜¢›øÎ Ú ‹ïuð. UhµZ)BÞóic MÄcfL†«5ýŒZÓ¯ù„ Ñä"#~aL¢/²u¬ñ¤~fõgg¡aš#ÝEbÚ6ûɳyPç—‚³lSZ˜+™˜áÛõ¤cîA[GÖ­†!Ÿúê°s' Ó”óÌ1¾Xå‹@}ùeçT„&ÊŽ¼|é6QvÝR?è#Üis‹ô1‹=Á³ÆTCEG k3ÏâyxÁYÚü;g_Œ¸;BBܰ”v^øªíÈ]šeÔ”õN«óKìƒq¹Ÿðü]©ÿ»e`]Ia–˜R-¬rGfCY¦':«¤N¼øŸÆ’NŠÐÀú¬ z)‘8 ô£D`!øÌåñ÷=ˆBþš»ËŽ÷fÝñ<Õó#FﳺØÿCÊË&ˆ¹Î/…žå“0\¹0‹œ·[…7õÿ—vN©|Hš2ŽÒá/&„^Rø¾pX¥§±*°™%¥mëWû‰9LÎê¼ 1c•£Ÿg_«@mƒÎ½ RÏÉ ó €~:±ÌpfÏü¾9œÑ{tÑó1t2Ï¥VÖr,¼ÙÌA_Ao¬“hÒ'N¬òñý5ËÌ>òêæ9q¶«ëið‹¡%k÷û;ë©î6c¢‘àœ–ŒL²’ÄDÆs8”° ˜n΃¾îñR¨hBJV’ +æe²Cüø c˜–¬Ów#1»¨a,ÝÆ[Ãì¾Í3Æ<É$&Æ2‡6½™Ðü6d´—'u£˜7;¤·G3¨ð¨kâ§qxRãèwl:ü,ì[ c'Î}®µÿµ‘‡†¡XE.eüv«Ðî ÝLpYUz*•cõ·ªgÐøY7ÖÓ9£¹B+‚Ve¢{1©¨d m /ûÞ8e¥©6jG¼Y¸å–e›3ï¿Ó‹c“›0t8Æg¶£•FLÜ+KôæŠH5óL¥,²'•gÀ•yœfo§w/s¾Á—h›O·û–/’†ŽU¬˜²Þ©c]¥·H>x*‡º®Úð0ah!qNô¹“uHú%Z¼ä·Jx+1´’ÙÈiôvm&H 7¿X:5íq††i(‰±+…Ö±òïÚ²Jƒùu|‚±Shâ¤UÒÊ7ÐùÇÊ! ?ŠT¬UFUÅ}n䪧ŸÂ£„:@IňHÓ @Y't=s¸ëf¯å!¤¡ƒj0¤º`^u`ÂÙ<3á(¡vÔØëìY(*Èb@¦y>‘ÜFÒž;¾è"'a$»©x&‹Æ2¬ïèï— ®õ6çœm=‘†6Ûp–ÞøK.#H>HõdR ms+Œ¡åž6b‚î@¢ï—0”ȯ±“ º’t»=­Ë¿èYŽq;—6‚ž`ü„¬V,LYïµ ;Á4ïxõaõxsekkЇ:¿ÄÖÀ5PBnÀeŸõÎ\#væõ’¡ù—Þpà ³pßaÿÒíø‹RœÈâ¶î†YC¸À†p|ð‹þ{6Ñ+Š4Qá®.¾L\¤­ jß÷&¬LéqÀã“qÓwŸ M´ÉÖK†ì„³ÞDG­Èd2 À¨NÂ8ÓKFÆ §ãc}ÄÏ!ýó›f—¥xâš¶jyHzVkL—¹µÁ›Õrg2¢õñLdT-½êy*§tØš˜Õ8Ä¢@›ë",³11–S÷L¢—­Hq°DŒ@tâ'èçŠUElE¢KŒ2ô“à>Çd{ÓÏàpvbËÔ#‘SÑ'y¨^r, Eo‚ÀÌ>yOÏ=7Zbf8›¨ŠÃ;e=вüJžÑcqçr´E¢%ñcLWØE}¶ýVÂsY=ƒIãêg§èK™ÈزHƒi}ˆ±Ò|J?ÃH`–îuƒÔîrÙhèzÚR`ˆ“ÀvÄÕ!‰m, èUh–MlLsVÔ™–+¢’3ƒ$¡l¹DaIe¸#]èVïIK×¹!±ƒ¡†D%Ú2ƒ™r݉lÁ$,&ìTî‘ ó¼d¡žä·«{Å&ºN\… *C K* i§¸ªâ|3Ç[«Xhþé×9¿~ƒ,ÒpÜÊ(HƒQÇ¡&fNæ/à\+‘øÎƒ»H §{Z õ6œt!E/ n€ÃFY°ô\ +þÒŒú#Õƒ>€Ûòôn…àÞ‚°MiJsn›í00ЏÚ%w` úV亽Ïï­°c…ÈãEÇ%]4Ù.sÇ<ÇÆ•Î8ö…“áéöèÞo“„Ó'9ž€¶hz.%gå"½ˆlÇéÁ$ÌèyöòÎc‹äÐÏKfŽiYFºŸ Ï2HÉ,”Á•ì¥pŒIâ{ü¼/Z›KÚ•óJë¹]¤Õ‡qïî³ã¿ssc%¦Œ|Î °êa¨ +«ŸáYK ëp’·¿·óöºX5f–®ÂkXˆ£c²ÒÂà¶ê‰;c#Ëç´U¤²¶¸Ý¸B?½Åá•sá>´Ü¨p½ûôë×¼'`=[ÎPË'^²1½åÉÉ4Ÿ@ÅÔ[î†Ú“î„ÖOæ9ýZ®-sEzžÓ>瑼îUaoêsq«›O¿} .b,$þxó°Ö± b=êz®~±u£GÒ²ˆ²œ´­K¦9{k8,ISWÈÙ!áˆÑ% ¤–O*UEz{&Ç~™°÷¤Ó²ôtJ:òõ2‡3ò³/HŸ¸-á”×½ÿƒ=cÊò¢>³Àø½X<ïj¨qõšü[gÁu_¿sè1VŒ†wŠÈ“–¬©/FþÌ \éÂ.k¹Fz‹Ä„-;”“ ÍÐ/Š>^ÚB–¬Qt‰Y”¿Z =!–»²«Õª+¸Nÿìk~RÖù$ð“ÕµÓ£|>cÝ¿Õ_ÿ«û7ÃÕØ¾¯Gz»%á½06éê ¸Ò—_ûê¹Ôú„c?7‡+¶ÌB:ž#¡¸Ð+³6›îhÎj‰®÷¥Ãa>  ÷Â!ç¬4ñc[‚Œ(l.¥†!“N /Þ,Ÿ³ª°Ûã“÷2"¡å*è¶qÈÆàý¡?7½‹K{)–“€>ðzŽ©EPñ“¢XšN·haPˆ U@{*Póa·Ü,—jQx–‡IHZ‡öɵf´HètCo‰”mszO„EŒ…}Zéô3ë3Tù¶P¥_ð’ÅÉ{qUÙOœ¸õt°BË‹ç¤Ä£_“g{VßGÃØm¾ÒœU"S”AžÀ %Êc ÝݱÀh¥iÚKRÞ ¯àÖìÒ°gŠû‘s}GæCÞe˜C'qüÄÑqË뀥Ҏ®È¹Í;P¸zPH„s‹ôUä:Âæ!bÊÐs † ×ì01ØäžÄ?NÒ÷ÕBG«%×PJwšÈÅÓÙ‰«Ê6cã‚ùu?èÀ¥IF¼À’¡k°I²°@7K36 ÷ȃMˆ#•\‘]ˆ&[_Ó–¬.ÏA¾{9G6GÀoÙ®ë"Òûº3Œ(VÞHñš(MWE™ˆ®Þ‡«ªºI Y'ÁÝÀ"M‡> †¡긠cÚ/ùªªÉÅI–ÒëŸvÒ4ðìe‰§¨`yÖ æ2š ·ùa?óBB IJC¡ºÀºéäiç £)+¿¯ gÓA§eR(Ÿ:)Ù™¦§ØOó4½…ˆG¹¼¤³¶[V\A*EŸ8Nv°lr‚Îã{ýXì-—î€l­ÛÚN¹W¬f-I£"s˜Œ;T\«m¡ßrH=/Bt'b± RGèÍ]öq £˜¸n¡N;÷ùåOPðçë Ar—HuÀ’éºñ ÏóÀ"Ô1[ËLhÉ0F[šÃB=Ïuxg÷Õ,ÙÕV¡_’žDßL1û»ÁèIö’¯|®D³]˾ê-Pl#ÄŠÙiµë°[FÑã§¥ Ò 0ÆÒÇ$V'’d^O"ÔA-™©<ŒEºkûΘ½é T£‘á/ekFïA—=ø&™a‰•ÙVè+öÀV(ØÆ¸³÷9 ®Þ=Ó-r=®?¦oTý¬aÇÙY.6DÄ}Ù[è´KŒ2”“xèÜm!›À!Üh}˜‘Æîbü¶Ó•+)d«Ø½Šô¦Ñ|35ñ- ãXWíÑÛy±t/ðrY=œù¤¥E‰Èlú¢©zuÞ?:ÁÞ3vO%´›™Ç "Ά2I™w^ðPÅSåYƒ_ +œ¹ Î̳Õe–¨‚×%'aLŒëžÅ‰Îù%~Â+TÃZv¢`[aâ”ÌVðÛǺˆ“k—¤¤ T„ ULZ•OÐ]FÅ:G˱ÐG_ÙGˆ6…Õß>Z®ö´û(K—6Á1¼w íÔU¹Ý&.¦à]¢E)xCÆ¥cU_ryëC—¤FÖzèúÐrI•p±dœÕì„ZîΛêBb-GW‚y Bt“A¡<Üö­A¢ÊpaXw$hŸ›Ëûzìc,‡ ßaºÉå–~µF•ö:”>­LÜu –FJÍàQ@Ya’ Ô© ´I}0hQ3^¢Îó·ÐD>ð\÷³ 祃äâÈ=µÑ$&tÑÛ’ìàX)Õl‰€ÈCl #Zµ<2¢v7`ÂA\ö“¿Ž+ #ÅSöͲpY @Ö+ƒ"1Uº£–_3Œ5kwßÀÕ^`õ™°ªŒÔkñ†?óÕªOéRZ™«Jð•B#ÛiË N¥Ô.2&{pXBe2|®°¬‰°&Eˆáß蟋¡ïs£ VuP»±DrŽé] ‘KÄļìêÂU$@CÃàQ`–ù^1øk;"†¨³ñÊø\AÍZË.ŠQ•â_IOl)Œ¼'@-w>Hœuu.‰9vQN]Z(Ýàa0+_w»à%cOÏkŸ)=>s¹\¤ºBH» @2¯ö¼ÿ\í©ÞìjïcÁ,h£ _ý„ª†³H%tyH’Åi/qb/xçž^<äè¹G ÃÊÎ-+¤´fbé˜pç¹r³(l\‡˜Š$á\wqÃï ÛDï}<`¡eû†͡1¹eþbP3 ÍÛ r›jçÕ_ ‘©árË0ap¹Ý{¥P4m «ßg³[Í´Wú„ë¼ì~žëdÇc$ó’Ùë%s0îEÛ‡qᎠ—{AŠbÀ=œÖÃÕ^ „Å‘A]¬0êÒÙ‹ªš³ ¡\+±•`!A“>nÇ}Ŭ]:ã˜0CÓ ‚JJ£ÐCdÑÌíÊž+õ8/—͹ñÖ¹˜P᜖äð¤€yòŸàŠö¢nvFJæ=uæ8¿øì]èWBŽ0sîö:&Æx2—tn=’g˜$¡V¢8ÿÓmªvïÇ£ÎìÍìlbý¹3 cí±¦÷â,râ®D Æ™¼W»uƒ±DWý–ÎÝÛƒªÚ?¡_{âIíñ0 žÅ—, ÎE¹ø„•w#ÓåóuCâ×zV½³ê¥J~jÓ€+I-BU@¿7á‘ ËHNèýŸx´Éƒ«Óôž« ùó[=Z²qù+\Ñšµó´sª¸ ’,8L½3–\fk¢`…sö?ƒUÕÉÏ΂|\W«Á¯ä_~ýkOéüÓ·´Ç¥´6jٵש<éôÓZWÒÓL5wšAßó“þ­®¬—lÿc!p5É´HóÛ)×eJLA?™š¦jÅŒ]h.îεâ …~}º Ý[è5÷þ †ŽHO2­×.ÛhퟤÄñž1ôŸ÷«ÓÖEõzšó¯õnâx{›‹ñÛÛNÈÀAûá~?8ýpu“ëru»>Óc ~í5ãQÒ?ÒRÜkPÕ7¶QûÏI޾ōlà•©=/RÍã`: ‡¿^2­s™Á”~íšþF+<™s[€éÓßÖiÀÑäàk4DÝüüKÊÍ@ñß¾?ºâÝ7 ‘ÚøÓÑeîmldûèØõE ûœÕÍ_üÁá™e=Ø ½ˆ¢¨˜è™»úÿ•ãòëGïxÉšhù/­§Ókn&‚ìƒnˈ×ÝÙýübztnà§ô·ç™#.ªŸŸNòvû—À•ÎЯõκé\»ø{ÀbŽ"`õ+:òz€@ü«ãK ¬¯**¢¢ ÿ/Šß²ÒïºÂ…¡ô¯þŠl˜z—á½ùp‚©Ö}Pôr“ïÿ°:mÝá+¶j€u÷`¡çÃôŒ äá0ê?žÓsÿ‰<}:7<ú»ïéÿ˜ÖŠ»5z·àKiC1ŒôP=ïØ[Ö¼Î03‚_ßÄžR°sÔ @7¿Hw>ÆñÁéu§µ(¬ßä„G<üW¢ð4'ƺøZ?¤Ó7‹ÂT‹Â]Ôí v§Z·ñõ<>xdÓå¿Ö¿Kþ€?Fò;•÷ô;©Å§ ^N>x‹¢qòåd;ÁRov¯.”÷ÎÁÃø0£ÝÌzdå½cWÿe±òÞì)RÞ¿wò7D³Ÿ‚Ûù·ÝiöwéüÓÉnqJ+=¿ †ÄºXL›Gy•ByïÜýE`U§Îs†¼}Ù .ßôñ ³3žè-÷¬ôÕeй<üþøºÖë~NoòTýg‡}šv6ZGànß”}sJK¶‡xî.;Ë«ý+ýŽ»½ÛZé»÷­û‡¤•½÷äõõ}í®Þ÷kÕ[ßÒ®þÛÃ~ëݾùÞmû÷/ÙŸx—C€u<ŽÇXÇã¬ãqÖñ8G`#°ŽÇXÇãxu<ŽÀ:G`ãqÖñ8ëxu<ŽÇXÇã¬ãqÖñ8G`#°ŽÇXÇãxu<ŽÀ:G`ãqÖñ8ëxu<ŽÇXÇã¬ãqÖñ8G`#°ŽÇXÇãxu<ŽÀ:G`ãqÖñ8ëxu<ŽÇXÇã¬ãqÖñ8G`#°ŽÇXÇãxu<ŽÀ:G`ãqÖñ8ëxu<ŽÇoÖÍÓéݾ³­ãîôicDíãÓé¾É¶öéÓéóàOûæéæÃÓeñÙöž³óÓ§ó¿»âtïW{îvû K{ÜwöÊS¸;=½ùðEÚ[oyµõð¶Ïþ°®:ÁÉt=¶~ûlû8 ¦'ëâö%½pÏØúszá4mžõUzŸ^}ðI¦Ÿýâì ×õWgIó"5“³Ïéb¦ÁîûãK»Ü}¶½oø-›gý˜Ó’}t„ø®ký(õówžý`uNþùçŸOÍXôí³úƒ~6­æiJ'×Á.ØÛü&ßš…éÜÿïÿûœ~Œ¯‚oô–'õRÜ¥Ÿ6În¾’Ó¿‡+¾÷~fvJ—v}²ó)ÝX²æÒ¶Ï¶ËéÆºßåŸiÉî;DÿÉ?×ÿ| îjôo>¼í³?¬+<úÓg/–󄦯ÔîàÒ=»Ø…ßäzúÔÂñ\Ñ2}ˆÚO§ú³Ï·Î–YH ìŸO¿†«»àŸx¢ŸËM}1»î¯ƒí@Üu¶ë)œtxÉ.ë%ûË?n=ÊË͇÷âìÏ«þüo—›g'»Ëå·ç‡kgú…?:ûQpÒs]wåöêUú£Ô žÞlµ-:ï>¢,ûïëŸ (×w»s/êÝ×<Àí³ʃ~ ¹‹£÷Y/Ùã‡4ç鿣ì|ÒŸ}µãìO2Öõ´í…þzͦg/ŸÒÌñ‚zkÞe¡§Æ,š]»«ÁmÏüÙ¿÷¿a•ŽºÚæ/›ŽŒ¥änîüSÀú±ñÈn‚M2}±O6ÉTïÌÔZ“àôi†ãT/Yþ!%ë¼~°›{ñG½û¶ÏþŽu9½ÆV™a¶:SÞ8csé?¿Äw”e9KV&¦‘„%¬V÷SºÓã79Ií ë¾ó!BÑjÛ´VÔìœÏð„f†˜€²~¤7 X¤úâÞó7ÔÒ“Înqð ϯ&³Ó|ó쥖uot¬”u¬Ë]¥~ ¹]+Èxx‰óo¾yö§Ü —Á4 8,+ÅÙD9„$}IIH¨2²jæMrúY`„¡A¯t{)ì~šwxËÎØÐo0K‡‰ÓᫌWj‚³Ô g†,.V½œ®ä/êîlÞÞjÖtÓt»œÒ’5æãÂíužÏv=…N#šÎiÅòâ v;-’^2Â8–¬FR—¯ä †ôýXçí/J­\kLxñ¼Qû»[ÆŒ ú>£*±+úFH÷{û¼òBŒ…;°¾Ü<îEËc{Y%–FV˽èýûñ‡y3¹XX&[ÉnuÚY–Ų»Zɇ‹ïwÕ_=înnì…[#«:¿¹q[;_7p½Ü®nö;ô®nž•…–{Öû ž¹«›sz«‡gg½«Wtá7o0 >êy÷²p®V=)a–%WJ•íYNæ'!ý›P†Û ½.ØÊRîCh%¯í+«jdÙ«¨ëÎ>¾J¾ô£AËfJfXz%„álµjÉEèý~égdA»_ÑÚxñ›•™-~Ç’Õ šo~¾ì? ,Û í¡GDÊ“*„®,åà,G(?ZUqÄX-w0ó^ýPÀÒÈj¹Ý®ÛýøuE·+ w º¼J’Þ·h‘¢Aå¨ê?FÖb'e­\ûù¥o'ÕÈí¶~°Öœé‹!¾zóÓø(cYa ß Ot¦Ây`¹H ‚=Œ¨±OÛˆØÊP…ÓuwÉ«„U ÈòW­êïVI{€eêÒmÁÕ°r—‰»¬œÿ„±¶õàÚ¯Ö!|UÝÇüF`5œÕâ+<€¯>ÎX*¤ÿ-kI€É”‚ïJ¾ZcÒÚ¥B¥fxØX%]÷aV)ï$˜iÍß*ÜÅïVw"‹^nåXc×5ÌAQýWŒµù˜vQÖš°â+Öoe׌u_ýƪ áT³Õ€8kL •t…·,¡Êòˆj¦Üb‘(jÕ/{°Æ"d¹¬ëoѱ’ÊÈlV¸ô .Öu-âYº{ã?b¬Md=¸{ ë ¾‚†Uý^`i΂Žu_¬»§Nçr½…È N‹ÔuzJ.¡ŠDÌ’T#,ŒÓNšŽè_ˆÃVwa;M/oÜ-’÷‹'¹VËñM'í¼ÃpuÙé<[Ä7¼s£¤ŒD¹ÑMzß¹ÁÅz‘´–±¶/fãlý¨Ýt:›†°l¬të ¾bÂ:¥»}‡Gù‘>ût×!ë4½§‡w®Ö]gúéÇ´‰,ܤ'óoA9³ \”µt,#rBiÞ>ëä#Ž…—Ÿ~œä$«L$¿²4°È$ôÛé·ß÷3=¦'?>M¿ãÓýçÏŸï'…œ´ìj‘â,ï)Ï»‹Ð ÿ¸Žu¾u1[gkdiÊz š»%¤ñJŸÜÂW¬a]ÒJ;Üå{Ê+ý´ë¬•ßþß}~®ç×јàÛ5Áwxœ,[ „_ež ýG u†#WY"]kèˆÄݯ kÍXdêȃóftȶvÁ^ÝÃý9ÿÞ"•ÎþÇg–c H@†–òþp °¾˜Ó]g ²˜²®ê»¥EZ­ìÓéÞ¸×k„¥cbŸ~Ö¡¦:¸d×gzÝoô’ÿ8X:ú#0Z†a\ÀÕõIJþa©H!^ÆØ]­ 1°.–dÝ[é·&^÷KÂj€e¯¯i_“=uX6ˆp´ë€ã]HÕgíPI¡l2iÿ0cm‡·Ïž‘ð¹ÛÆ™öþÔ°š<’…avþÊKöuë,­ãÚwXÊש–Rg¬¬€Œ@¡T¡H7ôEJ_™±Òï¤Ì+õ ,Õÿµk,« «¹Ý÷+_ «Aïï­®»j&¾Ç‘ •C óãok¶qöíò…(=o#˜„MÁ&a“½q(°êÔ”Ô]!«dzÝœ­Vîýç÷ĵß' swRa’ÎÁXitv[h&rE;¿Ð¢P¸‘cµkQøK“ð™±`Œ\éÀ}p (´kyÓSFbß]h&¿…1 °ò±NH…ðÓŸ…×Óž»jÍQ8í-^ ‹´,Sð#¸cÁX¯ô‰6Üt!ŸÒ÷‰Â:1à.mDá¬ÕÉKŸï£?ª¼'?~œ¤¹?‚tëù#ò2,ß°È*\þYd‘%qMsÞZÑg¶nÒo8#^Xl! `z >]ãnW°[ùôi"Ò´ÒïQÞ7Wú”´çOÁåbÀK–ßÿO/Ù!Ð:ØÝpÀݪ—§iÛ²ZtÎá)wEv \ÄY9ýLÒÃ-ÔÊmigiõMXµ(Ô!cótË>Àv`Ó·$g^Еä=·9z|¶¢I£²œ¥WýadÓ’= ]`‹–Œ/íZY¬eyGkXô×Ãe'¸¼:„°t`Köwà -Ù¦»!­—lášï±dÑ!Ðz‡ƒÔÖ¼‚ÁÊ•$èÈ¢¯Økå""(<¥K-éŸ,;üRÁ«ÞÆX ,Û³ºõ§½ë@bŒQ¬¤ÄØ|ô͸´FÖiiytI¡ø³Òðùfš·³gh1²N-÷N;ݵ_ô {Ö1Š›¹3pÕ —º8Ç×hբݭ÷yÞmÇ2<Ä <0)¡d¹î àÄ,zfK-,VtÒ2ÌŠ4,Ëy°h÷®’¬ ÁjYUÅÄeD[d¶J·ˆÜÂ]M\9¼#cC²Uþa=kóèjlÍ6 ÅÈ‚/«Å˜jèoÖ°~Ë1k=¸îC„«k!XÒr[-w¶z€~öfh½ X {B—U×–¡ ºyaQ®†ùÊ"`I7£§hyK¢7¿òŒ~ë ¢KóÕÇ`e³’ „ªAË£‹,¤›,@^ƒn(Š•;À:-ÿ"²6°µ¨¡du PˆÆ¬Üãƒ/ 냨Wµ´r«–ÍA¸‡•¹x$Ýy+´Þ# I~øõï’b¥j‚—¬v©>È‹tv}'Œ•[X~eð} ÉYÄXö*ªÔøŠa5[DtU­nàŠªÁOîDE®$M0‰È²F³NYklukh¢ðôì…»x_­5¬sÕ*ê2à[[€·íÕªÎu¸z´VâY޽l´eB-•($Éœ ‹Hà ”v7{X‘´ åCÚ,&q¸üc%-wáYþûa%Š™É.é} -±•0d´Z-ÀYt‰]墢K+Ȱ ‘uúÓzÖ®ÇHØzhiHÔ°€È¹¬Zïà+"¬Åoá*BUU³Uϰ"½Ù \ÔùYoa-ãpºRIå¬÷·ú‚“Ga JÖÝ ¤"iX¤Ë«RH…r •Y("ûg‘(\ úïæ+‚•Œ 츮Ýn„5òåŒÖ]¸ƒ¤«’ôÃn¤ÄH ‘†Ö)´þ6²jÞ_‹.œ‘¤Î¸ïà+Öð!TEL `©š­¶ pâà9§ô×jüÀ"íʱ+§ÙÝdÖ§m2 u1Å(]›õd%’YŸÒ™áXjL&¤£,´ k‰¿½×ìM{ÖÁ|U' ø»«`ÓŸª«5ér>ò±½”lgXR)Ép¢Û]×VêÆŸ9^&^¤÷zÉH7v{÷lÖ땱·.Æ~åÒÎ; w¸†uGWri7\ÅKVÃJ_'9UäY¤ùå9S…+¹jXkûvÞ ,hWÄ$k\!þ)èX +ÑÎ;ggyZ;"svDNFêYV:EÌ}d)¤æ(çÿNd"Ÿ¶ÅUÏG’ï&½¥ëÊIð‘ĉå þ zvµ»tBœ:–…̧ŸæÓtd(ü¢ÌO6R7þSk;ñ"øvý-}o­}·_ë^é§O'Mü½>Ûyi7ü.̹Kq·+­W=q>Ãåš­ÀWní¸íLá?Gô–·Ÿp¦u­³­Ûy/°4]5rÐ_µçbafŒsÏpa­‡:tò9MK–é\ ®OÊNt…åþÐBðÎ|†¡ªû|ÖªB ¾žÄÕhµ|¨³¾KWy"^__ÿ3 œª»$”\œPP½ïB›®?t‡ÕæzÉêj¾í<’§ý¹vçÓ?×{êô_;tE,BMЫêNoÑl÷®Öôˆ°N¼ÿ·Ž¦¬Óà¹ÆwÝo%k¼X5]Õ|•‘ø»¨#—==@ÄWQ'EÁºÔûA+Ù¡":qÓö–õž~4ìQñðœÝ %þþ*|¥5lrȺXR;穤dþcoéÿï:štJ ÕjЫïöë` Ö ¾òÏôÅü“>àlU_Ú®\‡ó—qí7J?RVú›ì†õºoÇ›þW¬e­ÏÁÞGiHWÌWDV¢gË&$.I'v5°Î‚”Q7¯5™@Ÿï5Àzà<ŒýÀzg>C“4|¢èl}F¸¢! "ÂW‚’ñµI¢!ð“\üD°ºþ‘’¯ëúàL•w+DÑד5°XÖ{?¤?®5°ø•úìú•Þ ­ð×Ûè¦Îgxzæ+V͉°6 Êêlën?¨ÃèŠpµD} ‘eŽ5ÊQÈñôìâ,:Ë{¬0œ5 uÉB§ÎnhZ§ì…Wé»òî¶RûìõYÛ›=Àí@²™IªÿÞõÉneQx=½´ÙR}šþówDáõvƒž”WlÕ¤ŠÝm ¿Î¯E¡n™ó^QxY+\?¸ç›úU€ø,ü@Y›¢p¬ñnQØÐ᪠í{’­.„ÒAð”¾-Œå⌕÷Ü]ÉH(¥•÷¶&¶oXÁt#aö )ÓÝ•óú-ß›Ïðâl ‹ìÁ%×Fnk M®ˆTÈtúc~’GhšÔ«? ,XͽÛÝòÒœµµ¨Zy?]«ë¸˜»­³«½Êûô`~•n>…:ŸaK¿aá«þl¶™²èì[^·~©S7îÞ¬5]ÙˆÌ( 8Áªí4MÛð`!­ó¤e™Šî¥i0 9gYÆÓfÌý\§Hìs7¼'Ÿá\ç3Tk7Ù ¬.Ùƒ3« E«µ*N;yÚ–ìbXÝÀ%œ3†e¯S7þèqή»ÛŠV:Õ"=kuuÕ–¬³&ž»§ óœÝ°}ö¬=&ÿ¯›w»±î?yBXwço».û•û»¢7yæ««ÇÓÝd¯Vë·gíûlc§»1˜—]OXЬ&i0EÒAj´f*ÍSt¨&/ËšE2îvÝC†å+4¸:WܤpOsÈÇ`³]âöÙöñÄÍ!WÆ`%…5NÑÑ-–|FÖ€[EÞp xËw5$E7Å´1ùíœõX“ZhÄßìés·Ùëàãi³Uä ´l^Wuºÿþôº7¸â³ûÝW¼Ù²å~E ÐÇ·ëžñëij±ìëåÜÿu"4¨&Ù}þz ìš±lE²0›Y-Ú|Ê躷Æz_u[Øííã&«ë¯Ûg/½¬?¸?5ÁJ9IÝÜö'X±oñâ+g1÷ÖgSFs1Zöå|ö¤sXÝ:ÕO|õÂzÂÝžìLʸ pï¿ù1ýñÏõžûã>Å'ywó¬óê­êòJïrÜîxòM“hÎèø1w—(R}á[©+ÜrF¸ÛY䎸wàª|íÜMƒj{ÇÙ‹ ‡îyZNò|;_f{,u|Â^¤ïnÎ]÷¨Ö±™HgoüÈ÷êT?óÕëî•Á Û­È;ûïï*Øe°}¶óV›YŸöõö7öýêõô!je~=FâŸ4Z&»n]3–š Ÿi0#¥¹E„åÙïÒÛO_FÙ7Q°UtþJ z“ëÐÙ¸f€À‹·Ü P7¦xG÷ïÎ:{c1{ŽÚžuýNu~ûëµì†æQê}úÊà†í‘Ûg»ou3ýÆì†æpßTZ†b),؃h )äʰàêð'ôZvÃå·Í¿¾Áñþ»­Û·³ «ÍÍÕ}8Þ¬ÝSAÞfÝóï|@úze"HÓ"äüWr{ÈÉã+$¸u«µlxcvC3ǨÑWþÙ;¨a,"¬BYKw%˜p/è_ßÃWv¨ ž@ðFÝ"úzÑÛg?+ ,˜wÜÎKelóæ~q«¯±'e4“‹·ÎÞÀW2 u²Èî^Oz8Ö¥NYOzÚ:{Á­›ÛZé_Z…7í¶žÃqœœ—{6”Ö±BQ[¹ƒ®(¶¼÷àŠ`ey#hõî§\ý°Ò•`«$†åÉÎvÛ´v²¶õíì¶š¶oîÕ[}]„oŽÍ{qök¾úaÕw›÷vBó&~›6£­ïo7ïm ’;ß:{åVm|öÎd”ÿjk<ããÓ+ƒÁX¶"#9hÛcá WXþ;ü ˆ´dÊÃgßE.em±V(œóN¯me€U†Žv{_-ÏÍÓÓÕÖíì{ÊÛ7÷ê­¾.¶~óêMï³®ü ÓS+£Ýïq÷õþùQF½§½Ó4ï¶é•%Û¾9ZéóÃC:¿¾'‹¤ŸÑuW +§Kˆ‡ã °2|_©Ú‘þ¿ -®tm¹È•P™¡€ãyÿYgÚß=©ŸÝê7D í‡ÝÈŠVnõèïÝÝoèšL„¥È¼£g.f!؇⠑ï|K­ýâ‘kÄã h_±CNçàDÜNÀ¡òÿÆÕ:cæwD ÷ +zîÈüW£Ü¿¡Ï;Ë}è–•Y™áº¦s®4[!,¤ìÍi…–ŠjhéÊü¤p!˧Ÿ¡¤Üðì?8þ›|¥ûaý†c° YÑÊþ/ë70V±,MZK´,’ÞA¸j`UùÊó··ÚÂ÷L£ÅUÊà+Ò­äjÖGk¤}^å(ûÿw¾ª~[ZÃNÎzf¬¿›–óQ`™a†îÀ•^¦G£p‰æC£¸èÝùâDúÑL•øÿO}¿{<·Ÿùêê¦õFÂzÜLSØ“SÀœu¾•²ž÷—ó?>3%\éžËtä£7¼#GÙ«š­øìû®vë‘«§V"âãÿcï]øÓÆïaGB¾Õ†l‚׉i‰÷Ó_h ÃûWÏŒ$ƒMl#sIûüã½ÕÛ,ùèÌhæh¦³X„w˜àÖøË@`9ÿ5÷F{Ðs¡RÈl’ÓrlðC #s.ïS¹‹U:ö­¸û`º@ëÞftå]¶ënåÜò,ûoÂÅQâ.,ìwéM¿Œ1™Lþ žŽÂe&øZüØë¿æ¾Ká……^(„èï=Þºw’âêK™žafõ uÃG ŸÏVÚæºUpWuÉ”¸Ýõz³ž¼ð›Ü?³T˜ð[×z³•ý]žuëo%°þcî{^0±U«ýç´êz†ýÝGÖYÀzËî~«H†àQdÙ=,Æd%.29¼dmƒ¦(ô“žÚ6\Æ}v¬ÞÊ}ÏËZMÕ‚\x1–x9®gHìï>ü¤Æ9ÀºÏ­œ{[u–dJœK¼~^zçÆzµ» MןåGø!YgÄ[æó—è÷Ÿrßç99@KTL˜Oÿ-¬¾Ä]ÍRõFè¾{åõ éÝèà ë<+ŸW¯È² ~*ÄK:/J剻ËÚ¿<¤Õm`Mf2äÒ»‡ðÊh¢hÆbcùÉ^~Yë¿å¾K9ÀDÂì…‹Ž“‰Tv °˜KB1Ó.¦ê°•×3ìî>þhÙYÀu0 >)¼«$¦Äm³Ý@õ3 QŠ`ß3 }sÝÀ¬à&çôäÝíbñ}&s-Œ¿K`ý·Üwš^¼¡Š@©¡Ò§ HWņ,Äú{ï±5Á Ó†T7|M€D?Á8ÿ3¶ Ì mçüŸÏœµXqŸk鮌CÞÚå 1Wø7ïÿ`Y€‘µ%òΖý)^R„˜Wzäú)Ða-‰) Óg&6Cd¬g€¦”CfÛÿg/*˜ K%æ±%µÀXƒ°þ°(ž‰ç5G”ÀzUZûþ%Šü$¢§™~ƒ6±áói2XàcŸ±„õ°œ|øÿ°xæ¢ÌÅkC$)¶$gcý•j#,4‚˜Z¦ Q&ŠJ˜‘ÀOÀ¯zÚWH’þ–ÏÇ2’.óŸYÏÌ ÎÎþgÅ3—g.QËF`‹Ó¼›üª¬ÉfpŠ,ü~3@í5À ð1à Uœ¨øE»uË‹ýY î¹Gaôù1õgÀW²Ã– ,¥?á®Ðr}ÄYB~ߦNÞEßik°y»æpj]Ês°lZ¥»ñAfk¹»£«´¤›à-à¬ÑOïç¾ÚHÅhç›ÁF­Hæ¼ÊËk`7_ìúg…[^óeÚù…2G3¹ù35§‹<xSøÈ¥qŸ= §/Íð¶ÛA=ø7­¨µv܈DZÀë²0–ó’ž1óØw¦%gG.4œZvJùaŠ­ŠGö4 Ëßí™ °%§l´‹¾”Òyó`Þ•‚_åüÂÀGÓ¦u§é 3Øî^DÌlù‡0TO$i_CæÈ`&f\±¨*¼°o|¬s* 1KeÀö]ä'§@x¬½vQãªG;–ñ ÷/š$ 1Ï•^.ügõËÀ”ŽLB‡özÖù1Ô/cû~†C´îþú¥\ù¼ú˜÷e|ŸÜyÿÚ3]Tt>=ûÜYøWþŽÿ…¹V\iéø–øÁWœЕë¤YZÚà,`VÞ ­fðÄKßâ5$òz©Ö!y§gÈ_©ºAÞÉÚ »Ú_Oʽòµ®c ËË(<Ú—NyË€!‰rwÅS&å!ªµŽþx%þºÀ:© ½›Ê%µ,øgnY3ñ:“ %è¦ÖKJ·Áºè$X÷°‹ëzfÁl Ûó¬g½g×%]<?’v‰ø/ÿ[J,\çäú2u©§Y×Ü f(|´Ýø¸pMï—w#ø—üÿÓŒryÛHŒ¶ÈGÊʰ|•6…÷¨7xk9 –Cž0_R̊רzñ€ynrãMÇ_ÆS™í‘‡·?ù싆BAzc¶ÝXò"TÞ­”4çÜ÷VyŨ¢áxWݶ°sÄK±B¶âú–?š_j6òw®Ó§lW‹Ïô}ñV¡´.Ù!ª›Øc¤ua`aé:Û‹’^Xá1϶ËvFp¿ñƒŽ£Ùø“Ž05iÙÀ}ÒÀ€jÛQg±ðî˜kÜþ€ŸónÓöåyñÌÀ+Ó„ çöºZA¡rgõ²³$‚G+sùóš÷rcem­JÎ⧯¯hÌVA½/Ù³@8 Bejrh=1˜Nð~–– ±qÄþÛLôK£5L!L‚N?Y#5ÀÔtÇ>ž±Üë (KôÕ*3‚¨·Òô€®z R7þ˜|Ô.mÂêL(–) +ŒñöAƒKQ·©û„åÐ:ŒÅ)ëƒ8k¦‚«KvLTö±>‚±F›Áf~Œ²³~å²ìYXÑ.ÐÕ f¯{Ê Ë@ ì¡f!‚4óÉ‹n9²».ó#Øõv…—E‚nkcÿ–„’³³”NþîÍÆPRúY§kÞ„zã8g­&ÕZ‡KúW¸×ûfDõùñåïrŒ•×:äwÿ3Û·¡LºQXƒ¥Þý1ÊØ á ;„€Õ|pØWôÄf:_ гƾ‡<ßï 7ÞôCûÿ›v†"G4Ää¼”iù˜ÛâðáìJªæï‹ïßAY[ÍãGaNyZÅ”?ÀfQ­u¸0_µð¹¼buÃÖ!ËXy­C~pLtö_ÕkŠÃh/Õù@¤,‘ͦdÀè ÞÔ ü+Ѻôth Öj`9›o"ßßq4„’T7Ø\{zãíô ¨Yv¶Sȇ3Ns#óÜHy,Zâ)[öx<þr‚ÂE9åTëpa¾ÊŸ2Ì«µÆÊkòƒ{S686œ£uÞ+(+=û¼{Vƒ³Œ +ÎWÛî9žËZhÓÒõØ‘š©nð€°L2Üë4s ^|Xép¾9NcíÜÉ»;Ã…¿ã)´ºј-g„dle²š=REc1a…Ñtƒé‡Ú 3àØ²°©†»ŒÍ]þ!¹ð#—ƒë oØK®ÃW…W¦<ÝSV†±Üꇉ—é” ,áoõuM3Œ=¸º:X^¥ž/è³m–¯.hvˆ`ã´µh'Ìô`Ÿ qDCg/a¾Ãf‰ó‰ÿ®fH#Àá /O—é` ·üCúfpù“á%àÊif‰«m¶‡Åž²öŒEŽ—=9e—~¡Ø œÞJ‚ËÐõYóßZ3–~’ä«ËÂÖBj½ 8ã:Á¦Fƒ;Z„%A: x½nŽ+ ,çݾC˜Kôåƒ~¢%h—`šzC»NÉ"peÀt-ÿJ³ö”µg¬#„…J†S¶¬BV͉ëIלíñX3ž î]éA’ððÒŽ¯`G˜Û„Òù… Åwˆ˜|~ ˆ3kˆºiC¤,hd¨‰$4âŠ&þðÝ4Y²EúVÃj#}Æü55˜KÖÁU€5Ï€ È~¾ã,1eÿê*SVêgÍi†²véÕÙ±Zq²ÅG™9XÛÑÀö¼g°‰f°^QzÃèëø“V'ô6’¯¶šÝºÓAçÄ| k‰"C o†¦Ë0Üàa±¬µe¶:ž=à:ƒõ ªgÉ3=¸ƒtä°¨M°vÙ³í©Á¨u½u:éÖÀ…Lg.à¬MgáµvÔµIÚoëqÊî¯ÆY1k ìNg¾•”Õ‚±o”k»L°e ¬ ð³¾íw°æ^óõKÓû­ëzß±&áÝ·;/OyÿE(pÕõ¦¯ã—]‚¼“»»kîÁ£—…îÕsøðú:õ8e‘àÖ{øw\€߬ß8Y©Itc˜ägðõõà9œþù3õ.Œ¬7ï-•ð lSNÙ,„)û¾ˆä‹دã‡]í˜éñ‹w5dm—‹ÿ½Ž›ö|Å™`c?ÀwT‹ë±Xøc?×/¯…²ŽšÀ‰”¦í` â)ü†—w‡õäWd‘|*¬[žx°³Y¢‡Ë8Æ[dÝÅò"üœ˜È#No‘²š¼k!aEE•¥Úc©(„s—/ïMǾŽU4 u.‘:I¯ó»ñ´#ª¥‰ôÈB¼‘Ó•ùžH_ñ,-•ãæ€S–ìþ€Iœ£„%¦ŒñvFùÁ,y&Ý[ºî2Ž<¬ÛŸðë]€ïž»qÊ”ør‰·ÞK6Ë~hñ”·Ã©Ëü-Eœ²Ì; M\INEN¥¢‚6D°þïÏ×?þ<Ú}iÚÙKâe/eÖÖ‹—™Ò ?cü½Ÿ2c,îÂ×lšï ×.%^Ö>í|œ°8c­ø”ÍË Sœ ¬à²À²=ø5M+Šã8ñS(-q’vÀº¨•A÷jÝÖ†™j 6:òd,˜³âjÜÉâ‡\¹t7v 6k{/¬ÿu®¬?^œÄI’ë;Ü,ãŸXKü­Ø“Q~ò»ð´*ê s'›Áá^(sœ°ÐÇ„Ëh… ¨&°D¦;ÍfwnX¢üRo¹7…ô¦!Œ_ å7ywáYB¾j8xÌB ׾šï‚¶'ÛÄ-iîËyŒg‘±€=æ:öíøÏøëÅMa3+¨“w1e†séUyuq'ºV4×",¡Ñ㯖ߜ«ÆÞˆ*”ÿãšw—ÍáGóƒ;ÇyïLvÎÚ]hßÁ?à$÷b–´ÂïßE ì—‡æN)¿»(²”ý=y͇;ÔyìÁü6_lÏ2°TiáD¼‰¬"g¬[Œhûÿ³;6>à…?¼ìª"ìïV KPý}‘îiZàæïÁb¦½ëEÄ„†ˆeMìæë‹­DXbÊÀçGÊâó>¸@¸n:ô,‚¦¯έÞç=1(lCR¡ÑI§3Ø›¾üÝ‘¥9²t‘çÝò·¸1Ú¡·ùJ·¬î-:Y‚Ì8cµQæ·)n¹/n{æ0e­Ã;„LÙ['Ì„Þ`’ö‹/3Ó×A~E¡—ußÁ—7S©WÊ ¨ )k>Èî `e ¦é<²`Av#¼½tŽð²ºÞUÆò1Ú€±¬nâ;Û>[µËí˜ic q<Ê`Ø´µG>èÑ9¬Ä¯>8æ^ƒçá÷¾<Ââ>?°èVœf;}"5Ÿ‡¯±À¿«·3Àº|ްYÃQWÃÅ€ «›ÃmâfPòǰ„’±àÉ× vöQ°’s´R>&zͺt¼3t(á=ð3À(K|ÁÀ»Ã ¤Ø‡•Z=ÁX$­Ý?”E/¦nèt¾éš›]züX´¦o:žm×3÷e r íØ…²„€’'ÏóøCެ(\„¡Î;×9&dE»ËýbZ4£ÏºdÚ×S7¼g+ºòìVýœÀˆ´,¤¨#¹êÉY‘ØV >dSícq[¸½ /§n7½(¿ô8em︦ vBä³ÿÍâHàÆ~øò pæ½q6ØÑV{{æ: ˜*äQgñ®+xeÝ,cY:ë?ÙÍñ¸i_^Ý€Ó²|ÏV\Ï 4¾C\y¨å(žéÎôõõÁSëÈkŽ_w£ýÉuƒý¼_íÁƶ…Á/¨nøŸgØE¢k·` ò¢ÙMNË]Sâýx||üjßòάL.Ý’ÀJ¬¾ds»;ç=‘÷‰/NI_8‹BåøŠ*|¦z†šP®šéIáhKç},G;ÿÙKSŽç–>î /¬nxWƒ)Kæ1ë4§‡ÎeÙ…£ýºOÞÖc3d {fϩ΂1?‰#)ȿ͔ÉÉX Óeâ8õëeÛ TUkP_!‹?2­Öp<{&Øã”±$ÕYðƒó,âyÊÒW¹«å2»Î{`½S–eÝŸ,©z¨è—ptâCqÕ˜F>\îX}Ãõ}Ñi`œ•'¦wŒ4 ¾–vn8XU §&É*ZºäË€T2©­‡µ>Ü»TÀcð»êyßÕr[ÉÚ W7ä)K”騭y”&ÈEÍ¡]¾¿Â:)" ÜÒ¸EdQ<Û¶Í'ïËûþC€ª\äÝ"N û­\IÝ0)DˆÒøJ¬k!+ »¡RØd{•锹”Ï»Ô:a¬m^Gݧ¬7äµ=Ñ‘Í?’{©//G·M]BGÞôGÓ³e(+â¢ÛgÌm¿Ú6Šn­¼%L…ïbùu‰C~³²ÁGY9uÃá¦ðåõÅö[©¦ýnÔ‘LÔ^åK:ï31e-—Oj*æ}¹¸×P7RVªn¨;󛎕üìfoÔLºýê‰+Æžì0\šx`n`þö¼Áý×l¤”³•p²c5-è±ß·ž}yAA^ÝpŠ;'ˆ‰FƒNø³bÊFªÏ%µ=–L0e€0­ûA§üUîkÅŒÍÅÕ ï)K$ÈOŠH—…|c…¢dFºš¹Ã!&c,ÀÓÒ-Ë!_ñ°};k Sá;g,jjÁ&ì_í£óQ'GÞ’˜7=¡Q/?×ÿâ½£G’µÊ¯}½\zé”ζ˜²z§«¬,»R%ß.™mÍ,GÖ0ÁÊÊë'‰×È¡å˜ÄÉ"‹+f„ð3–Eð¬˜Ë¬¿¬ OÙ |5ûòÎŽ@+S5Ù-íc~¹‰Ê:XeE£ •þë€L$†ÎùŠGßYÄfxÀwæbé岤ßÎ,þÍ]‚u(t¶2ÿ3ŒµMŠ§Ì­Ý²^žÃ†—·ãŸy%´ö>VŒ/7‘@Y'›BNž¢%ÔÀ›ëðØA$®uâûÉ,UÓh­˜`…¶öÞJ'‹3V# køÄýï0V‰-¬o ¯F_+—íÌ*ÖÊÖy/ýº Ndœ¬â‚ÿJ (á™o³Ñþ?#CT“ZŽŽÇÍ5Ì“O¡¢ÚQ/d,jݲȿ þ;ŒUì&Ôê®nLv¾Ô{)´²æ¥´ñEñDNZ™­Ê|ÒRÚ)uõoQëÔ¨uaËC¥  ëþöÛ+~,ŠÌ8®²A×rbšK„6¡›´ž„bÆJÏZd`­È‹¾˜)¤“Ö}Ù]ÕÕŠZ§b²ÐÖ±„£ÉdÞc)KM¢ MâæRh 'ËX½h3™«ë­3î«´ìéT%©¹¥ž=µO=“Zd ©¢%´€°ø”‘ð¯»izϬkQØåmPnt¡õÛÛ=*\~]‚Eלíï¤=Á?9(¾«zµ{zò± ¢eWÇn`Êì(™É¨>Éò–b‡x8œŒµÀïFÍ €Ey26 @O0úýª2Ý<”ûrâ¥"[¨¸'´€°xFà!|â^ؾþ£U#p°  Ë2õ›G >`GÜtpèd!ca»0 ¬‰­:Ôwá¡ê48œ¿«4Ê7OÌ!í kXB1Z/{Þñ%|÷ǵ¢Ãádkcó¬ÆH XiÅ}YuþE± ûÈ>)£Zįõö„àaÉ|Óæý~µÎÿÿØ‘ë‹ÁN伞VeÇ‹‚À÷šz€fQy¨ï®ÀFµÀD¹Å·ª-T·„TTÒ–9L™è…){¿¼EN*“›ÏøXrÞë5'ÕOùŸ¨n¨ðb-!Ö(- Îò”ôãPzò:oäÀ÷ &©“…ý j›wùþj7tr%:ªZͳÖbûPÃÚÙ”{Z»!*æàp8{˜×R7üÆzOìŠ{B<$%͆¤ÖáÏ­ÇÜ­‹xht±ªí]npàdÁò묿=›±Ò ƒ¦b=3뽫PgO(C2VZ»aPðïú¹,3À×`¬¹•bRËÏMñXÅñèœãcì ]5Kˆ[Báß­G»gÛæ„õÃ÷‰™vyÂ"xZC^å!8YÀX =à¢>ÔÃëž»!Óœ¥ ’8ÏÇ*°…uö„Å8U]«3/ ¼ûÃáúX¯EŠ­pš`&«Ýæ¡é©˜Ú±›vçäú ïˆ]-Oøˆ®ù, m¾;q„êÝö`øÈ@4@É– ´œ§pÚÜmĺ„c™º&Bñ|Ÿt’)Ÿàׇ³ÌÒ®ðžOÙèô)›¼'ì1/;ÚQg #x+„æáp²q¬­¾+Ä<³]ÁÕQ'Š˜Rú·ÖätmÀá¾PÑ&åubïñ»­@6ÆüÝ ÿE[Axã_§½åÍPZmíöv7é F±nÄtŽZ­Ã%óVëÅû»A¤ø¤“Öe݇–°Ç’Œv”¨¡Ô¡ð#ppeû¬ûVK9Ž׿:–®]¥›0ýê]Þ÷…j–ÏD¤õ‡±[`ŠšïØ@€nãeÐÀÊÛˆ-L3cµå¶˜;mVÐpã.xõÎ%`d›†(7Â=çJN˜²|¼=û¿VФ·<£'t›ðMY.ÖØ®>KûB5KH‚W”ûQm l…[>ƒ‰Þö[C„Ñ1IZ—´aºK v‹—‘¹ÇÓ'¬÷AÙ =CáV “/¬RÅ´Û³/8ËWŒékÏR~‘+ZBÒ•ý D)ek¿àSÖ: ä™P•Ø££–0¯gÈ_"òîߪJ7J“¦Iæ&̤KÜë`Áxx'Êé4q²õ‹÷k…—èPýOxìä)»“Ù³ÖQZÈœûlo¼eÎ`(š 7mÏtùÛÙFêÎoy'gv†Ò– Þ½w9v>eï²ú–c.ÿcãæÏcS–×3,SùÝ“£ûÂMS­A)°4óGÃM |/èÁƒÿ³L"ŽT+hÒ”x„V}'¸ù n”fÙëÈŠYʤFwªâÆÓNëàgékïö%;g]äPÇíEaä»hUm»Ô:ˆ)…MŽ®ÅmuÄ1÷ð¨%´ËKì;SÛ¦ó>:XivhÕÛÆà1˜e|]jÔË~ÒumÝK+hTãňÊuAÅŒµ;Aíìê#w‡žœ%Ó| `_x8á;Î:CÏ ²3äûBZŸ±z«ž2cÁ”yG§¬‚±RuÃäè¾PUºQ ¬6é’¶ËzÉ3ÿŠõÀÿY&Ö­ª`Ä+9L;mG»!ä‡ô±p?Ö˜UÙÂP*&DÞx]‡­§ûcÔô¤Ö jÌooË8ët=ƒÊÎPØÂrÀáàí¬ðâMÍÇ‚o …Gݶrz†Bk~t_x¯(Ý(*è)–=ÕýVá*1zàsEªØ6ÁµÆ=XÛ1æpaãñã†È —ÙBÆóýwÉñ@+—sw2Ý5bËØšÜ‰ÿ>g°ã¬Óõ ÆPî qÓ¦„Ý{~Ö µ1œ2…GKü‚N¢­íœÏû½B@LQºQ~ÜÉÔþ%X¼ÔeÏ nv “&äw¤ØqÞº`ÝY ˜»è7†&-JÛ¼›œI´Q‹ŽÎ3Rš=·Õ&Á¯HÔ/4uÒ/Jsî8ë÷ííå[¦;ÃD¬ûè§rèo’Yc·ÑH Æ8es¥èè}NÏpÇÚìK’Îçý`i&ìÖ¼ ÃJKÆŒ„äF9UÑEç¦Áß ¬]#Ù‚YÄ<±cY]Ô!ù[kB¯êŸ¨vr(°3…‘†ãt¦¬eÉYm¢›—‡§;Ã4FšœÝ{¤áÆTÌŒõzg—õÎ|Â%j„kr—ÑcØÒÈe,^2ÍñÕ…/{Íï1*"ž´½69¸ºŽfÙD7žaäY½QÐüAÓÑR7Áö\dyg5ô«”¥—Æ0Íž¬˜Q5`me%ís«äd5Ès–Ok›Ì[¢ÿ€nRÌê¬Ð­KbZXˆ,|æL‰d®á¦¡Ï<à-¹Ø=‹°à›wÀ¢˜M/$r ôk0Öng(ó…'¼§UnÊŽ¡&íl(d9¯~ˆÀïò,@6ϤÑÃê”ÄO¶±ß¨,xƒq2Ã6HÙfÑ °ÖÐ:[¹ŠaÝÕY„…ùÂÝòcW¢%ÓH· ÞÞU€%w†ÒžðÖc` E`/2÷|ã••à\ÀV0„¦‰oÚ`¬OX‚ÐrÁòûŠš]Ê5®Ø÷³D-ç1àg³P'µ_,‰ŸÐ³ ±¼Ÿ%‡0¿øó°Oy ]XÒJóRXü-+kË ÒÒó×Â*»¼¯¬·…ƒ)[¸u#/Ä`pÞù3K"Ï»UÓ/í€å2âL:^Qyd®À¶½[ÔI‰7†2Í~2am·¿q×Ä®¸°¨*ªBWm [%œóU“EògqV_dÊ%¯riP]/nl ×9XéIè;Ý5ú¾¨Óü}‘ô}%žLªhã$°ÐÏHÓ®w×Z$‚_:†áö}Y¢½e½'¬\ýt8O¼×Ëä yÊ}œfÄeÞCc¸dÕþ«<,‘Ø+L÷§õqÊ ã›œ²³VÇ[î{U}ýT]pB®p“ɲ'LôÂø'd"ç.ïHCX¸uMŸæ‰¼»dÆø5äß–vH¨Sgëaåµi–Uéoo¬(Ö8rur³ÞE1ÚBïKmðâ–ðzã°^Ä;‘Söý,`åÔ pWÞ™Bµ0…VŠÞÐïšÞBtyp™~H1Ç÷£°3Àâ#ÁØá…æþÚ¦ÕðÇM›ë…‡X¬¿îJXÛ¹x)éò+í.Ó Þ…ºçˆñ=„¢Å¼ëàÎp·Ò^A– ùq¡÷öÒiÑ…¿eç »sNÄ“´ž¿+ê)¦p;˜¾Â‹ðÓgÛ‡øÜßH_«Ÿ-øÝdkßÊr׸¶û'cÆLÞ½xž3Œ#ÇgÏëöÀG+ôœZv¶ÏÚDô:;VD»úÚX÷™¿;*>×ä`Í7¶ÝùF4牬½Å‚ÇXðN€x׳ŽC,NXV ì’.ztþͳ=û‡Ó¥Ùj܆‹ð¶Û3Zz_ëÕ'¬-ïç·ï¢Ga8ámÁž ñ7Ïó:ÈBÏÅøV˜Q¥âî'¦=c°…­Ží æ5 ‹ë J+a´p|t¿ŽP?wÏ‚~ä¦äîYžJCÄâé|Ε~}X+HØá…ú,‡ôT€…„eð«yQËÂøû¶þ•G—ýæ2µ>|O¿[AùößóÆ|§ÀlL¾Ü^ä’_ؓКcrÕX!¸Œ-«˜‹Ó´ß|~ôëÒØæ/þ„ÖÉ‘槬üËãDe•hU\@=xVÇñ² —õC%U*b6ºCÙjÛî>¢ô¿¡¶Œ^=Âzÿe‰ß÷´èÓéŒÅ޹Kh‰V˰®’¤^ä}U¿êÃ.s&k©P-*_•Ûw†&n}[ºÀŠiÌVÇŒ!/ÄÈ(ð-U¥¤âÅi­ÕZÓ[me«è‚­ÇúÝ㙺®³$¾øÔ¯\ -—¹ÉrÅzµ€××)dòdz«CK1Xù^Ö€šô9_¥ñYPŒ_;²3ìbíã¯TJþº%„—ÍYYÁÖZ ó–aá®_?¤¬F`‰Ÿ\åÀrÊZK˜6ÓêW%¬ü»žŸeUÖèìl`Y„8 Po€ˆ’ØBœ-) K¯“òªf½ ‹«2óWÄXé1Ћ7€Öû}¢*aÁšÖ(‹bYÝÝø*Ó/¡…—$u€ua¿.k)–Ñ©|1Ûg%7~Üöw‚ obœÓê 4mÒe®™RŠ4Z%¨KüId­à`À±•]Œÿ*:Y$OYm‚Î;W¶n¯­¹p"Ü«Ö{ëtE_KUøP½âM °1õ¼[,ôµ¢0Œˆ%Æ’= ÊÛ Â–ßc¢\P¥Ou„±ø` ôµþmÜz^ô¼ó·ZƒŽ­,ÿtY )KH7¶š¹Fkå&W¨u"Ü×Zbl<öAaBi÷ÂAÇ‹Nxœ]rºCœ 2Êڂ獵§–‹uXš¹báôÏÔgpõquCÈúÌÿ! QEPïÀ$x3üfmU™ª”±øÿDhu¦(!xÞ‹Š,»ªÝ‹pÊjI­i˜lPÕÿÖºv€‡NYÜUhZ\U2¹cíX‹¿…4Ê:‡ ß_‘ý/s²º@Y©ÖáÖÑX«k0Vº~IñA(î*´­é©zG€5¶PvÞ¨k sze5üï7Žõ¼„Y`}}î͇ãR^oÙjEIj0–`òt±çïTœ¬a(K˜è±7tt íÏ®ÁX­iÆQ©Ã‹„òA¼¥Bs$Í]ޱ¤²C6u蜦åÈéT]¬cŒÅú"ËFº@Ö"Õ:$`#UaѨh§\Ïp"cÍ;Íñ>ߟ¿Ss²f@Y®u°Í€G±¶×`,©nëíNLn£)&ŒËµ»X†q:cñÑ>¤êÕj9šµ[‡äô ÊÅ µ#Ka¸ýåÙ^oE±¸º!Íì¸Qh{¸pX´TÏp*caÅ»ÌGŽÐUÀ]¬íu"ï»uÙ2Ÿ¾§UóBO›²ªóõ¹o;õ¼´›F×ÔjG¢¬¦I0©Bxo)™áùBŸ' có†8.©ÂX¡ì—Z£ø¼Áˆ¶EÊ2°¦NLÒGÁ½jqc<‡É’D¤Z™f½ø¥üº“5B»Š°Ê.V5°V¬÷H°~à Ûжân»/«±3wvId©6 ðd6¡5–u? HYFb`rm#Y])W˜¾w¼ÈJx>Úåè2.lQ­BOEõîȽzʾX°š5Ò¦,A¯.µZ¿}ö3Ôœ¸1ÒWb\YŠŒe¡”JË´8îdõá§µ>,¿.ó5<7|MÆr9›³{Lâ¯Ør‰Ê?榢šg¬“OΧŒUã„´và&ºP°¨Ô»¢qŸ'Vû>ÓŸ%ᢼX‡EÆ‚Šc§N­71µmOwVLó -á꺌|…r¶„&®P“º<+½ä9ÄÙ_`¬ÚU|«2µÊçè üƵpÆÎ_w]ñë!WIh%X§”Žæ˜¥H X‹—˶Z{¥ùˆòáh`9µ¾Á†:ÚBîb]‘±\¾éDiCS†eëæHa°w0v*Sx´ LÙJmÊà Fª{Âüs¥Î»º‹U ,ìi%<°ô¹»þ æo.œ-œc(B’Y›l{pî<ÁþX¥¢¿E¢×|8n 1ðÑ!ì^ØÝö<Ï oa›;ô9W]±8®z¼í#sGŒÍ°Í’Ýulo±œÍ´ä£µË#¹ë'L™ÚÑ‘9­aØ©ÑÒL«´„ía;f[¬Êíö˜Ž¼ÿr©ØÞø7fŸš!ºYðw„wÓ3Oó³Z ]o?|Áƒó·Ç÷…ßø#X$°…ûñÏ;Êþµ‹ã kç$Xm†ânÏþÄçË~…¬…‘T•ÑÁÕëø‹Šhá·7RÁÕ+žŸ“ä… ÚYuŠÐh•–ÐÔ †Þ.| !ˆ)ðy%6®ú{²3µÜýçðKi‚GùºWm¿mг¦ÞÑ}aZåz´u—ÎÍÄæîÃH×ÓžyWÄUñÿÂ.6…¼†ŒHqÂbŒgÛÞOûÔ„jÖh‰Ü²BŠQ¤“R:£Ü[ØìN×qþ+€…½G»,¹¡89°ÜûèSÅk2t¶â4 }«'GRÒê«O1kO&¡ŸŽÅHwigÓg}bßþÁ÷väëÂ_¸c¹’–^ƒ¹ÃµØÃrli;)lrrÚùÝZ+‡H“ÐG0à~°KB×p±ª*ú1ÃÔ°…‹‹ ”ÄGw}æ²u»T®¬ößÜà™‡È¾°T§ÚÑC)›yj¨aÕþÖÐXÜÚ_‘±€eýd{5Æ’¸êalòR‘=5X˜–•'+–]¦g‘üHyÞ;ª²™|‰T5¯Õ)O«z$îGïð@xï>fqüw²îæ|yõžHc»J˜¸³Ggñº( s4QjúRöç‘ޏðçÁ/ŸΓ÷pÕ õTˆ~ ÆrÓÏf¼J62lxð‹âp/ôÒ Å£·á¢…t<ï« RPin¿dÞ„3]³S¯ÎŸVö ¸ÙÃ]á6^&LÃn¾˜Ò!2…Í—¦×Âö¦ &ܽxѯ³féÍÃ<¶„-xÏF-ï6~„ñ#Á©jP7ž‘oÞôÛ4|ÒÓVêW`¬W@X+†ë #±KÞ~rÆÓ—¦”&ÏbÔv7½·ó¾ndãG',ÊÂéËKæh¾ê[Øð™Õ‹¯–w¦‡ä9¡à³…EÝ_}é2t³XœøO"t峟¶­¶=К¯’( [çÆàG›Áæ(é9¬>|ÛíªõBƒ<¯n‚ðØÀr åî³+1VŠ+ +º¼¤¯ hœ¦~öçO ¶7g²æ›Á@œ€‹Ÿá ¥ú‘ý±ŽÉOþ”u\¬r`­0Œ¸¾rÇBoÝ¿Áp¨‹õŸÙ3ÏM$„`)ZÓ\âàyü‹fwÊ-!ŽÎ¿½(ÅH)>8bÒ3è'+æ°z×a¬®€°d!nd¬†àÑæªGÏâ«‰ÏÆÝëpÌ6µ%¯ã:kP+Ÿ!än­›%o6Ž%ŸÑ}wÁÖ¢8+¡1 tX‰k²5ðt+VޝެÙMŸüc“h¦©”/4`8‰–Ä͈ã³áµ|¬®ÀøQQŽ},€¶hÅSq ûñ¶¼_hÀXÄ*ê88]DQL·µ{¹ÀZº@–Ð\ÅòÐÿ 0á cqº<ª¬0˜C´„¦=54®6@¿ÿRŒ5eq5!/ÉWAyáµ9¶õØÃ=i]DëP:þwu!Živ…ꆚÝ*Š€…r/J?ç­c{á]Oâ¬zvøl åŒ.@4ƒ 4÷ÐBBéØö…[—î,¡ÆùtÀ²ˆ94DÔ6¬ÎðÃúëƒ%Ïóná±[½ cñswé”á]x—¾Š ŠF¨ N×|üÞ¨` ¾w­C¹ïn°ø±Ž{Êꆚ늀%ä2òïqˆï‰Æ­Þï½û„ûT.|§“ut,pò1ÄüpdY„«nÅ43ÀÃXîõË‘ ²°Ýnø,Duƒ‡ç×`óM‰yÆ€ð.{gOV|ʰÒ.?te°Ôyž•4Xx ­C…ïžw±ÞDaßÑQÊ’ÃùYO%X¬€â%¬.Xbíï¼çŒgpq0MhÄI—tiæ²î¦_N,D ` WÏÜP#°ìToj… ?®¿ òx®0|&¼Ñ¤ø—`,)”¹‘'<—\wÙIËq¯°Û¶Ìîçýþ*¸¢‡õßT´œ²äàÂz+°¢À-/ð/kì{Ì¿Ùݽڄp[È;w¡Mdz¾-ÀýrµY2¿â´  è+Ð)à9r.#ˆ¦\Ýp×õ È}æ_¢ŒÑ WU?½ã}å穞xjß3uY°ü[—Ð:lËÞhVÒ: e¥6Üs•ÊÖŽÓuÞdGN·›ÞyùÍ,' æZ´^%ÿyþw×é4Õœd ñÐXî™P–loq$Ã?c1±…ºÁ›À.É©–à=ššÙBÞÊç‹'¢²¥Ë¬] iVP¬¹u ­CŪró.–’Ö)+Öä\` 9À‹,» Š0L#²ä৯7 N–cICç} ó›þ·4%~yK4x@ƒ `¡-Ô¤ìï˜ÈÐ`JuÚºÌOºàÓ’ó‘5É6mÒ$èi0M `µ#c8÷.¡u(÷Ý¢X%­P–\8;X\0ÝåܱGšÂb'Ø|ÞÆ;;yÀzx£Øk%ÏA>¾±áC®@X[Óìû ߣr`¡-¼Ñxâþ¨VÖß, QÝჳ%ìkÝ¥Õ?Yb´óì'*,w&ô +¶ÚÇ‚ v†\†q®Ö¡Ôw_D±æ¡­ u@ÊÂ6ƒÓš.Vqë~0Èvuô¼cA óäÖëÜ’˜q׊;Y`Š‚˜çvòÏø6´®°ø,è¾8P,"¦öˆçÐ"¯sô•´}ÖKž½°ƒq¶µøŒo|LH]€³r£Å»Ù›·¤žœ¬}ReV°3¼WQvœww8Òe›‚Ö½¬I'ÜÔí¹ªr.ÏW,!?¨¥aÉG væ‹"!:@òÀ#€¬»ý€Ë‚ÄSŽXŽ<£­2ÔúÌc0ˆ(²îY8‡m—5(½g¼‘wŸ™$4›û äsšÈ' WŠHáC ®®®,—¹V“Ðßís ‰Hø8[‘!ô1C&ú}‘vÀ¢$á"óè×Ó a€_…ÿ¡éÏöÁÇêRrqdÍ ^œÁh&/²d³–‘f*wчDy̸ƒ6»°P c,ë1déLçEBž‰˜˜±Ã¤!¡×Ÿ ̱'I¬„Ÿù7Ì£CéêÖ¸vX&àäôøInÍ$^pid­ ”ðÿ2ƒÙ¥Úø¨Á#tuÕ܌ˈ“ºqdM íÞÒá¾ØBÉÒ]›Þé` bº˜7R`Q<ëØï3M;ÊXZ°•ë}§«;K<²tqºé\YKVÄbF¶€ÀGÃ$É}Ùª†Ëde°Úmíµh·^µCËg¦/œ,Ž3«‹¦]‚LØÇù°ëI`®Ö 3—¾yÔÇ¢d½ D/³€tµ`ƒUdqLµ@S¿(²ŠS¶°î³2ÌøÃŒ!X¾l‹&5ÂÂ3|ÖB)`á¾E‚¿­tY·ƒ!ë£ð=Šn‡<üÞvtÆn7ŠûÀ·Më”ü¨µ¹ ,l^€ogÔ‰Þf1ZôööntÔÂß*† ~dýG›xø$sq˜}7ïÂ*¿…NÒn8¹ÁÑÜpj«eï´iȇ(R›c ?5¸9äÑo•ÀñÆæùƺ©‹ ?K>õDKÞ À¶XÄGaÀ—×ê¼dÝÕ{¢ƒò¢cxh:ýpp´ADO‚ó÷ž|´«ÂÏö½ÊÃës“?*é Ì×®ý?â)8ø~F¨•Î;g/‘RQx ÷¼RýbS48¾-b“£ÀÉù]J)õ³À[÷ŸåÙ[­KœÆo[5‡*Š ¼œVÈ^TœÿÕÉù×ŽË +­â+Sõ]½h°úD¡ú‰¦º&Je·{x­¼‡“ ì¿Ðfi ú¥¨`.Tv‹Wx¹b´uK´Ë£Öö܇ÑîU C(îÞÂ@Ôö­zð—ÜØwòUNÖë®DÖÏ¢à»K`½Ø¤Mºééøã5d¾ÿµî L[D<âŸÖnˆ°î®<Þ_ùÝZÆo»‘¢]qñ]?Y¶~lŸëÄçµyw%×@@]Ͼ…š©ŒÍ‹lvÁ],9ï"×D•ßB'7eaæ-°¨¼‚¦¶V2À–~8ë)cÝÝ8š´;V¥‡“ Ù‹µòŠ•­Ý¶•Þ%] ÜyÑ?£ÊTÀž›N$cÁ‚ ‚ Lk…ëïÝPO¼„yÂJtIKY•2V]g/¥DîbÉñ…bG¨ÌX›…èٲ◜wyg¿–½Ê£ÀzÃwöšÕL̸ŸE|w^>ah¨æiü¦Â¢jáã<Ôns5B’ó¥bÈbOp×ãÕÍ"œÁ—*ÿ®«7xœ-\pkË3‡¼çÔ÷´Òû¡ž¸'Dmæ—B¿˜Föx¯Û¤\\¤RRŒöµv?†9> ¸fBRÏÝÒW<ºÎñâñ·p|³5⼞ö/ョŽh+;œš»Â‰gøýÂÏÊJBoj{¿nÂ[èì©Z}zØXØ^”Ô â¼Ùð$ÜÅ ,ØÐ…púÖÌMØ3Ã'©ÌBk@P|£ÝY,6[Q#a~pÂÝÝþ¹ì©wÝ[Ç.ÛoÅ œ¤»süA%ÇifGIÝ›#ü‚(¢X §Ó0rå5êLm•Ty‹Eh§Öüà6ÙáÔ NÞ˜€ûYx`‡=ß~¿`98Œ‰b¨eþsùH’ÚÈÚÞE\ÍS}Ir±8èËêàð$U/Ë>·Eã{Ž‹©^ƒÃÉÛr,œÿþvA}›ŒÊ‚Í0I™½Ÿ(Êæo“y2exŽCd6™ÈáŠ%tþîÅ ³oosº Ýç—N=`½¿¸Ÿ…G|òÕ!X>¨÷A}·KÖõ‘e$éc®…yCœnô±ˆCŸõoÕÑQ]¸Â©1„ ‹7DÛfž›×N¤÷Î:Ë F¿î”¡¼ŠÔÉjßëa¥ Ñx7;q­ Ô‰YŒgqÊ"d!òÔúóq¼5ÍvmdaíÆûáöbvÃÛè7O,žÅ¾Tb¢¡a \ñFÀ=>Ã3Bt'+p1¯•šÕNºåM[md!°VâÔb’¤9Be\ÑåM4©ƒ¬S'ü,Š”¥“@öݦjÛo9Üå¶KÚ³¤¦Ó`¤ýÎ{3ö­ÏÏŸ9kÆÚ+¦›•˜ ® \ Xm%{9˜ÈÉPÖÕurבgÕœ2ìym` KæWóº|Å£p5uòD‚5´ú, +- w²Ô‡o1¿Ò«ÉY¨³pÅA !Ú!æ ¬b<ãQûŠ?ØÖu ‘´ƒ Œs–¦sÄÑVþ¯.²fu‹ûPICx_Õå¬Ó'ràù<f’GBˆVX]ÒÝÖä,Ct ™H°*‰¯áA×KÓ5ÀUV[ÉYÔ$zwOY×VïÜ‚)5ý,°4PÖý¬ûV&AN[å‰Ñ]ߤ•Ð¥Ïâíq4Ÿ4žìRuüպÆ(8ÏÂJr–EtBw4r2°ò)ÿªõuZjÁ¼ža7k8ie'iR>eóŸÑdÎ],ÔE'9¾zkmÊB³>rTà­«s–V›6§ )+àÉùÛ~T§ÒÉ)ñtôƒÅ÷ï‹ÖAÀYÞ®4zto—çû[tâq,Þ­MsãF €°†ž]ªnÀáØ6ws{ïì„n–®í(ëT`•êÞ½™R9À»€wNϽë1œˆ0 ƒœ”!ùص÷|U¡náG†…TT9«`"瘫äÜ;BÏð„Ú†a•“5ʧÄE¼û 6†Ù;1ï˜ï)L×½ )B”,“øYç[ç$Öüd–Ä7¶È²-À¹Èð‡ïa%9Kc˜RÖ‰À*×3¼ƒKVÝPÍ&©&9áÅ€OY8ϼ…×ÂÅ(Ž*òŽI²1å« u•/¶è-¨rVáIè±Zwˆ‘=‹_ådÉSû¶Á/Ofè ÍÇ»ä^»¼½Å@¦ù–‰¶£ÑžôxªP7´*%ÈY¦ü’³u"°*ô ¯¥<¹v¸h…zÃS&ïäЉøÞwuÞ¥ºÁ»CÂÂaÆ¿ªÈ¾U Uý¬ŠÚ G}†TÏ` `U8Y»j(þdb^þ EËÑÜ]ÚÞ¢hHRã"¥Éî_ðï*uCõp³ÀÍÒ$e ¬Å‚ûJG%ô ž^ˆ;ÑZ:’À’wUcÏuÛÂBrÎî+Ô “Ê&#jœUQmæþ8cI=CC ˪6_ÆÞšÎÀÒ MÁbÐ30*•ÞÍf¥“ ÆYöBw‚.]1Ï-lñ£¾P7Îľ—NÙ~|õ/ KLÖ‰ÀJÛÍu²¨²²CàCg4ë#ïVHÓr-.Z=ü­{¯œ^$[{£oê“Ý®Ârƺ·«Û"©p–VfaU†>wÓ›S<«SådÉ,»­÷ãtÅ}_<'X7½“0îLKK>üÂ,û÷EdúÀz´—,±õî’ùϺϤh ÈÍ 9«¡1ž¬y¹žá—?VëÀu/ô “ôUó»HòŸ²t´ƒre/mõeêm±+u–¯`oýÓ.W7¡JéfD…³´â=ÁÔöTâx\Ï04i÷˜“…é…Ø&E_2÷75saù=Çì÷zr!fñ KóQže_ÀC è&ÉÌÛO@Í{v©ºKªú(‚ŸõHú|®NÝVèÞoöŠåï™ÖÞïsgw¡= =×p¶ŒÙOØî‹ññ·p_:ïv軳ў¯V K ¡å˜”í]«…*Ç9«x"[‘¡·U¦ õ V`nµ#NÖ¶û3‚Á¬,—ûDÏw<&ÏâU;‹E©pÅÑøÈû’UÒÛÞEÏØàœ·†ŸµcQšÄ×û,&?~—«Þª%kå^žûô)W(N™Zìõ TO3ܵfM¶£Ý”¥o¡ü¹–ØÇ££’¯0ȃ´Uꆒ· ÎYZI„{ÖÿQ+»T9Y+Xg±»ê­°ñ@Ò°°ÃŠù]Ø Ë‡tÊ£çˆ+júqŒÙÂä¬Ûâ'¨Røèrׄž#LpYÀ!œ,ƒ]ãø ) øÙXíÁ˪÷£wñ¨*A‘|%Øêüëg•‹:ºz®8Ë)u²U ÌŒËÉÊèÑmâóú4`Ë`Ê€î¨,°ãèëÒ Ž±?µ°tK.»%K†_Q@dp°€³tNY§˽8°$¨–8e{¢å&gêÀâqÀç«[}ã¬R`mû5„0V¦ )rT»n,uWäÖ‘¸p¦……¼°ªùj¥ršÃ6Áý6ÖjM°äîŠaUnëÌ4ŸËžô]#„¿ÏX;P­è6g¿dSõÚØ®\‰ÈW—b+•xV©)ÜÖ¡¬­0…æ{®‚åâsÆê¹àQIÀµ±Žˆ‹ýyL»GùJ»Áü¨f5AŒ16ºbϤlužFëûù ý¿ÀXÒ§¦Ú¿”hÒò¸µ‹‰ˆ«ä²}ª9«œ±hÊ’ÈêeQ%¥Sª-¶Öætµ]Ålɇ×î³ç.]&é"c9z9_Å`¨ÖtÛnˆ~*ÉŒ·x5\Q:3•ÖùÂKÖh™±ö>UæÓööËØ¨© ¬d~Q¶Rð³Ê«e!²ž<»Ã÷Ç´ç&;P‰VHrjVi%»o!ØÅžåž½Y;h“N§ÓŠñçº 2¼ ÷‹bKø‚È CøuÐh “Á¹ªbxž]—¸rS±¶µ¼,@ÖoïåõÁÞЕ@•`*~õdã+€Uœf2Њ žÃæëëÔ+„E >òÅŽô”6¼Å÷¾‡|:¬g7äwKðÑ9_Jå†Sx’ÎüãkcÃø"…Lu«=_½ñ™”„à#S°p’ð¨)~ÈÜk>œ<¾ÎZ4_¦E‘Ô*`­kQ–Pˆ#²ªYv1s5Âjµ—ûÅç&ÛöW¯‰Å! ÏšŠœ66Kž5ýº¼ºœ,»0pêÕóÏAˆ,ʉ­!Na,™:ñî’¦:„Õž¯æ"/T˜qùã[~˜²…p>äø.ÙTE$Ç‹ôJUÀªGY2%ÞŒ|=h¬F£¡5ð2bækþ‡õÎ7àÿÔPýÙ˜ëhiÙ´§}ÔwáòäQoV¼» 4ba,‘÷}íÐb¬ôˆ}¿cªw°ÊøWißúŠ”»}‡3æÚrÊÄ÷zRiƒJ2©yÄÞê×Z^–\~MÛ4ÍÀ à2ñoŸ%Á£Éháÿg þ_Ÿ-ñg̘‘aùñÿtâ›Q ;À8”PZƸ#”w‹a7htÑy?ÛÇ’ÅJ^íc¬Ê–!'c`¸?®å»œ¥“”àM~¹LÑ“³€%ŠÕ¡¬¹x/y—ð®øNPì ¥šwˆ´í XÝã}JLá+EˆdI+5…3Œ¨Ê;Ïl kõ]€±D©ÿæi¦ðÆyBô1? « _¡¨«Ü -Gª³x“¦Ð_ÕN[5«ž—5ˆ¸”Ü»X¥sD“X,>ÚÆÃˆÁ£ÏÈÚkŽ_§ÅögžèCšÜ¥Å?ßÁyç†Ü}ÿg±xþŠGe5ó>Ö܆mDóÄÎîiÎûÃø¥ÀCy 7rQœéWUçý;wÞ±¥ùÈÃmÒEûf½ñ¬ë¼×ö²:2܆²bfÌ3°’„eˆ†¦ÓuŒvž·™—mÇ3I7^§Ób±!JúmÂÅàë£ìžyÈtìÁ‰üO‹cµ:R‡÷yã Àò[Ç«7de­Ž×¹ãÇOZ||—mê0ØÅŒ#ÀªË:\Ãñ*+$,Ë ˜hV HÃâ2¨ª–²ïwJÀwbž°Ãª/Š=Á¾0¸ÄéxzÆh/ *Hçï8óZÇÝáÏÏ]™Pû¨ë°jƲòÞªÒã ¬ÚX†VgË:X!šµ…êõ*Æižaâ€eŸO±fRSÛþÍëB¹Â¢,±ñ¾ <­WÉ›O™XXéœJYÈÀŠv“w5Á06„È(Kä ëMvIcI—?*ß%3³ñWuÆ* çYÍñ¼[õè#¡uŒ±èI”…±Ð8…ìþLÞÌÉ@)Â’îØJ0LQÍîê|ªÝñ,ôŠÍÄyüÏ3V±¦Å(j`AÙ S¶ýHÖ:¬šáw1j.BàÑ^ÁT*‹»R8¼¬8eYµ³£Ö´Ÿ¹I_øZ€,Í þãŒU"•2 !4«ÝÔŸóaÐ*Ö*3K}Ö¦+«”©Ú4" ™XqÊJÜúüà&®ûL÷I f´ iüeƺ¬Šùj[CÝð¡-­8"µØïX×°ÇWÛ£¾¡û®°¥q*̹{[òàÁ[†ž½¡µ§‰Ežçi[¾CtÙ7”Hü=XÑ–·È*60Ja ©n(‚Õ>dà›¼*uCgm¸ºa´ >\TëpX®á•ygúð U›ðœ;ž° 4A•Iªò°]ø|ÈV<âñyÝðŠN^›xø–`…ÿÃùkÀâÑÚ0=ÐÁGóÚ‰puƒ=(b+Ê?$¼+ŸéÚToˆ™æ¬e_\ëpX2% Xl¦c¸Rþ;uƒŽÁO+·D¢áÁk·81Ñ òlââÌ _+ñ_ç’‹\Oh…B×"é÷ÁMy~‰V¨ª®ìLÏÜÅåa´ùW9?mÞÏÖçõy}ëóúÖçõ ¬ÏëóúÖçõ ¬ÏëXŸ×çõ ¬ÏëXŸ×'°>¯ÏëXŸ×'°>¯O`}^Ÿ×'°>¯O`}^ŸÀú¼>¯O`}^ŸÀú¼þ|ý Mµ1I,nIEND®B`‚mcl-12-135/img/small.ps0000644000402500021140000000572210556367532011543 00000000000000%! %%BoundingBox: 102 200 410 405 /B_test 1 def % set to 1 to test BoundingBox parameters /BBLL [ 102 200 ] def /BBUR [ 410 405 ] def .5 setlinewidth % remark: The drawing points are defined in terms of unitx and unity. Why not % scale the whole thing after drawing it? My reason for this is that labels % which are drawn next to the nodes, and spacing between labels and nodes, % generally must not be scaled accordingly. I am currently not aware of other % solutions to this small problem. /unitx 3 def /unity 3 def /unithx unitx 2 div def /unithy unity 2 div def /radius unitx .6666666 mul def /proc_scale { unity mul exch unitx mul exch } def /proc_showpoint { aload pop moveto proc_circle } def /proc_circle { gsave currentpoint radius 0 360 arc 0 setgray fill grestore } def B_test 1 eq { newpath BBLL aload pop moveto BBLL aload pop BBUR aload pop pop exch lineto % this is LR BBUR aload pop lineto BBUR aload pop BBLL aload pop pop exch lineto % this is UL closepath stroke } if 2 2 scale 0 30 translate /v_0 [ 30 30 ] def /v_1 [ 40 30 ] def /v_2 [ 45 30 ] def /v_3 [ 55 30 ] def /v_4 [ 42.5 35 ] def /v_5 [ 22.5 40 ] def /v_6 [ 37.5 40 ] def /v_7 [ 47.5 40 ] def /v_8 [ 62.5 40 ] def /v_9 [ 30 50 ] def /v_10 [ 55 50 ] def /v_11 [ 62.5 50 ] def /c1_3_10 [ 56 36 ] def /c2_3_10 [ 56 44 ] def /c1_7_8 [51 41 ] def /c2_7_8 [59 41 ] def /nodes [v_0 v_1 v_2 v_3 v_4 v_5 v_6 v_7 v_8 v_9 v_10 v_11] def /edge1 [ [v_0 v_1] [v_0 v_5] [v_0 v_6] [v_0 v_9] [v_1 v_2] [v_1 v_4] [v_2 v_3] [v_2 v_4] [v_3 v_7] [v_3 v_10] [v_3 v_8] [v_4 v_6] [v_4 v_7] [v_5 v_9] [v_6 v_9] [v_7 v_10] [v_7 v_8] [v_8 v_10] [v_8 v_11] [v_10 v_11] ] def newpath nodes { aload pop proc_scale moveto proc_circle % load array values, scale, and circle } forall edge1 { newpath aload pop % load array which consists of two nodes which are again arrays.. aload pop proc_scale moveto % load first node. aload pop proc_scale lineto % load second node. stroke } forall /Times-Roman findfont 8 scalefont setfont v_0 aload pop proc_scale moveto 0 unitx 3 mul sub 0 unity 2 mul sub rmoveto (0) show v_1 aload pop proc_scale moveto 0 unitx 2 mul sub 0 unity 3 mul sub rmoveto (1) show v_2 aload pop proc_scale moveto 0 unitx 2 mul sub 0 unity 3 mul sub rmoveto (2) show v_3 aload pop proc_scale moveto 0 unitx 2 mul sub 0 unity 3 mul sub rmoveto (3) show v_4 aload pop proc_scale moveto unitx 2 mul 0 unity sub rmoveto (4) show v_5 aload pop proc_scale moveto 0 unitx 2 mul sub unity rmoveto (5) show v_6 aload pop proc_scale moveto unitx 1 mul unity rmoveto (6) show v_7 aload pop proc_scale moveto 0 unitx 2 mul sub unity rmoveto (7) show v_8 aload pop proc_scale moveto unitx unity rmoveto (8) show v_9 aload pop proc_scale moveto 0 unitx 2 mul sub unity 1.5 mul rmoveto (9) show v_10 aload pop proc_scale moveto 0 unitx 2 mul sub unity 1.5 mul rmoveto (10) show v_11 aload pop proc_scale moveto 0 unitx 2 mul sub unity 1.5 mul rmoveto (11) show showpage mcl-12-135/img/fa_large.png0000644000402500021140000120566711017231522012326 00000000000000‰PNG  IHDR]]{ÊeˆtEXtSoftwareAdobe ImageReadyqÉe<PLTEÞ4WVó³¡õÂÀì…€î‘ ò¬@Þ00ûäÀ°¯˜— }| üêÐþúðÌ™?ûãàñªWVÛÛèsAéu&íŽAýñðwKDDC4+¦M_úݰ 푹6õ½`øÔÐO7ÖäWì‰`ð¥íŽ¿€JøÖ èsÚ’j0ð¥ ò¬0áG,õ½ Æxçf*((±köÅp÷Ë€øÕÀÉó³@ézöÅâMýðàë€ô¸ô·PmP#ïœÜ%“gOùÙ€÷ÊP'ñ¦ î—évp¶†érõÀ€ûç°ìˆð¡`ÀÀÀî”öÆ öÆ@ô¹°RÉZñ©ùÙ    ”SIúÞó³°î”àEó°`PÐÐÐï˜0N-#t/™3jèp`u üìÀçik:3ì„1„R9öÆ`å`32€€€‹tó¶0àààô¸pøÓñ©Pë‚ èlþõààA³fUpppò«pãT=ë„냰°°ûã øÔp'Y@Ü%ì‰ï™ì†yF=äWtk÷Ͱ—…eæeå`^õÁ0à@@Ò®ˆÑ¶©ÑƳÃJãPPÙyeDK6ͪlÝ2Ïle°¦•z/O¿¿ËŽˆ®˜ŒÊ¦JÈn)ß=ã§ÂDB}f_qDªŽ]Åš‚€›gayc³)êÔÀ쇴=~teïŸ à¤`æÃÀš‚FÕ›ð @ÎG-â´_¾ŸiÿÿÀvªÍ„7Ù½ð¥0ß7 ¨~Rà•ž”ˆÈ%îæÔïžp½±•€€Ù³5áÖÐæÌ*òæøÐ`ðŸýñÐ```ðŸïïðððò¯³xE˧1ßÖÂ$â×§p@ɲ$·&øÑ€Ö«0ä­æ¶0÷ÏøÐ èÄ`Éæ»@íÞÀó² ÔžèpÆ£ ìܰã¢0ïšPëÓñ¦€ëØ éÉpç¿Pâ½}èÆ­5*ï™ó³ÿÿÿ;þ kMIDATxÚì½{p\Õ½ïÙØ F j܌ߑ„PÚݦí#äö µ[-Y²õp-çZDT-;ŽM0nÇÉ\ìŽd§Q<\ÕL¹¡R'©¹GÔ™›;fàR5qÕ¤æ¹çT¨ Vté<'Ü)üÇåªj\ÔTMíÞ{Öï±Ö^{÷6DB’½çT°å¥½»×ë³¾¿õ[¿°|óÍ7ß|óm¾-àWo¾ùæ›o>]|óÍ7ß|óéâ›o¾ùæ›Oß|óÍ7ß|óéâ›o¾ùæ›Oß|óÍ7ß|ºøæ›o¾ùæ›Oß|óÍ7ß|ºøæ›o¾ùæÓÅ7ß|óÍ7ß|ºøæ›o¾ùæÓÅ7ß|óÍ7Ÿ.¾ùæ›o¾ùæÓÅ7ß|óÍ7Ÿ.¾ùæ›o¾ùtñÍ7ß|óÍ7Ÿ.¾ùæ›o¾ùtñÍ7ß|óͧ‹o¾ùæ›o¾ùtñÍ7ß|óͧ‹o¾ùæ›o>]|óÍ7ß|óéâ›o¾ùæ›o>]|óÍ7ß|óéâ›o¾ùæ›Oß|óÍ7ß|óéâ›o¾ùæ›Oß|óÍ7ß|ºøæ›o¾ùæ›Oß|óÍ7ß|ºøæ›o¾ùæÓÅ7ß|óÍ7ß|ºøæ›o¾ùæÓÅ7ß|óÍ7Ÿ.¾ùæ›o¾ùæÓÅ7ß|óÍ7Ÿ.¾ùæ›o¾ùtñÍ7ß|óÍ7Ÿ.¾ùæ›o¾ùtñÍ7ß|óͧ‹o¾ùæ›o¾ùtñÍ7ß|óͧ‹o¾ùæ›o>]|óÍ7ß|óéâ›o¾ùæ›o>]|óÍ7ß|óéâ›o¾ùæ›Oß|óÍ7ß|óéâ›o¾ùæ›O—/nOm¨2Msûo¿9¥æï…_öûæó…˸—q-,ñú_Îú¶ï:óø¿œjX&tùþvSÚ†¿ý+KÍß ¿ì÷Íç —q .ãZXâõ¿œ;ômßuæñ ~YÕ°<èò[ÓìØ{ñþûïßZkšUßþ«JÍß çù}W|ÿý÷/^úr¾à’mÁª½[7oÞüÜÉÏ®ö[וoŸ¿Ò¥Cß÷Ó>øà«|)/„þõì·^y啞\v]gÎ_ð–h>«ý6 ‹¨½÷³=Øq³ú˜[©ù{á<¿ï}¶¿|_pɶà¥Ílþ¬j¿u]ùöù+m1:ô}°ýqã¿P:ù Û·–Y×™ë¼õšÏj¿ èò}Ó¼z¿²¿õñá.5/œß÷m}_Ùïkü .Ù|n³²ßÝ´ÚçPW¾}þJ[ŒýÕ”ýé…~¡(ôì+¶m_N]g®_ðÖh>«ýv Ëv{I…ý¾Ã|á —š¿ÎïûÞ×ì÷U ý—j ^Ú¬ÙïªnRís¨+ß>¥-B‡¾ïÍþ´Ð/Ün+V//Ün-8‡4ŸÕ~Ðå)³ê~‡mõ¢íÜJÍß çõ}ï;ìâÁ%Û‚›æ]ís©+ß>¥-B‡îøÀa_YØŠ/øŠÃž[>]g®_ðÖh>«ýv ËçšJX‡ùý/Xjþ^8¯ï»êì:ï/ð\²-蛫¼ª}.uåÛ篴EèÐ÷9§¹ö…~1°ªeÓuæÚ‚·@óYí·]ªÌ‹®nÉüÑA—í™S©9™ç£ž[á²y}߃®®ó€ùÃ{ÜæõÂe¢ìçT¡¢F·º‡(õ©Ë¼êÊwݲþK+íGs@»¾ˆ}äõ>¯öþ©kš»jþ¨í‹XßœFP•ù-]N.›®3§õ@sªöî\º˜¦«×ßÕܘH¹ln¥æd^êŒ;m^ßçê9ïo5;¾î6¯nXccN*jÔ566ï5;’.óª« >?nUÿ¥•VÒW=;´ñ…̳C{´·k–ûà«æÆâ²9 ÓtÁå•g—M×™Sz 9UûŸ.ºGxãàUê ÒE4eü–tù+Þçî:Íãs ËÖåK õ[çB—‹>]>ÿÜt±´¯zvèù¢ËEÏövOs_™?ºxŒ Rº<·ŒérÑkJò@sªvŸ.ší5kç ]¼J}AºˆGenI—¿â}î®suNtÙkþv¹ÒÅ£B=dzæñð-éru¹ÔÂRš›®–öUÏFš/º\õlo÷4wŸY;_t¹:º<»lºÎœjÔkÍ­Ú{çÒe»¹µÄ!¼¾ú@Me¹fÿÅ«Ô?•.ÛÕAëðzÔn—y~ªÈ“g*çþ¾‡Ï|‰Ì¤«;Ì‹®®#Þw·Û¼^¸LÜÆÛçR¡¢FŸs Ž“®RgË.xÕ•¿ïrËú/­´õ©{n9€þýç@½g> …"†áÙ¡U+¼æÄÿwèÇ.Ð0×'úænm=D—9 Ñ¿–í¾ËöϬQ{JºÅÚóžwµßÁû.¿5k½þÁ*s,‘šÊ2ëVÔz”ú7s~‰ê¨Â¼å>Ϻû’G¡Gá·ÛGƒsxßÈèT}±Cј©5/9{ÎïKßç] Ëä°ñ\>zð`­yÒ96~ç(UY“7ŒèÜêÊ7Wý—VÚB»”­Pe®‹š-i¤|xÎïÐ:´qóF*ÿ¨õMtð¸ù€s–û ú±éÏ?boÝ+F/9»3—M×ùí¾àõ[  é†‘ {UûBUÃ2 Ë7MóA—bï¼¹¦òàŠ®ÌQÏR5#Ÿ³Ÿ‚=æñ(çsv¯{½O>à€¡È#q&ïû‹£ëì5·—üRðïK_¸}™Œ ¯ìs±¥;±Ã4ÿìŠxÙî@‹A3ߺ®|+©w¥UÅã³àcÀ\/ƒê/i¤lªìúœÉRÍð¨ÜQú¾ŽCVù®å;‹&“ï˜æ]9‚n{‹^1Z…¾å’.Û—q v8çjÁ›  @‹ o•Vû‚UÃr8«¿ÁìÐûýEÓܧ9y›^ÑþÄïR·à‹»Ÿ¢m,}TSŸƒ-žïûWSMÅ[†ÉÂh¶"†xßﵞó i>åþ½òN£ôS=µ\‡G {Ft¶€ç_|Áß9¶$ù ZŒè,Wû­êÊ7úwUÚ~ðÇ#_`®—qõ»i?þóõ9EC Xi‡Þ§ÿ3°EX‡¹ñOÚ,÷S1‚&Ôº)`n6b?«WŒÖs!ÇYýåÔuJ[p_¾RgËg B ²EXiµ?u'Ó忯2OÚýþb•c³1☻~w©ÕTâ¦|ñê§À‡Â¶’ŠŸÊÙØ?QRèŒeú,ÀH²H´[Š¡Ã﫵ûÎ_ªÌã›\Âe§(ý¨û…Ë'Vª¤ÇDU÷9Ø’JˆjØhŽ­¢R*Z„nQÕî¬+?bì–ü%Œ7{gµ½ý’}|˜þá¦|‘ZGK𫤑´Ûyï GhüÌ4kíyî§¢TÐéû,Àx’ìç%_p›-XHÃË·–S×ñhÁ¨XXu¶¤O˜®´ñºB‹dK PRí W Ë€.ƒ†®â£^î5ÍŽ?F‹ZÑ0N–”J¤ÒÆMùâÙOëÇú@áçR;ªÚþ&‚§OcË`ÆãSÕÀ“½£È¢Ð‚l)À_¢ð¾Þ¶û=<ª5°É%\À¶¹>ղɀr$~ÔùÑ;ú“1¶dKêÎoU¼1ù»KP£yF ëYíz]m÷óÀÜrj:QÒÁú“ò„âËpò’FšMÝ”/ªC;ÐRÓÛ,þ÷‹ã}`²ÔôîÞ$ÃÿZ·ˆy®ã+ìü¿OÌŒoNÀp¹ `nJ´G_°êëÿÍ:[¨PÕsÊ-¶ŒºNi Vm ¼ |a¶¤RñÀ[®”Hë4œl™Üâ®ö¬†À2€Kú½YuéêÖ½µâ¡«FBÌ—ê„"±ñLI)5/N¾x÷SÑ‘ƒcE„K ÚÒ~Ô†§©¿÷¼.Ù’J¸ßW Ÿª†^àŒM-È..ô¾Ž¶^¼zIüáx«è›œÂEô¤‹Û/ü‚Ë.qÀ‹ýÑ÷‹Ú‹!°%[Æ«/¤²\íÏ=·÷¤¬Q‡náj7µºªõá2‡©ÉÝÁDý‡cþ »;46R"êÅ»C;ÑRiUæ.èݷ߇#¶%*4õJ¶„3­[pž3;®~õ+÷=M)ÖpÔ§Ý€ùl²Hrh_ðë_g¼hl)¶ï«:ùìsÏ ¶˜¿ýp·à϶l €o¦Y±%•j×NQ[úãwµoXÀj,¸$Ãÿ¼¾ŠïR«ÚŸÉB…EŠ‘jÉ—h:L=ö”]*Ž5®ð"ùr“~Šk¤z —TLÔñ{mâŸfr’K'pˆØ…:ö‘v5òcë€)– …Ø‚Âá’ʶ¬·UHBGø†S¸4j*ÆúO™ª”aì\>p‰^Ð[›+V,YÉúSîZ5(¶Ìºª}V{Têº9LMzÍV­ìÇÑ’Hh|¦9ßîõ+X*a¸ø¢-•Üh±‚ \.Ö-Ϙv{¿[Ó;*ÆC$¦Ø‚pÙÒxF¾pûSSðÌ %ö5ÀÌŦ>ü÷v×éÿ:áEgKýÀD1ú3õ©:þ·eÖ‚©ØzU£+±ö^¢YåØŒ#>âëµj¥/6[†Wµwìk°î\º\fŠÅÿòý:ÞqüÔ¶L<ÞUû-ãƒñó%Á¹¼ò;Öwl¬}áã™Áµ.¼57[‘üFáÂp¹&•ùŸž/\ÿD<?"þyºÓf‹³ÜåÓñxxë¿?ÞQ»þÑbS±àÄ‹LÏMÐb<*JáBƒ·ûÅbñÍÇÖ‹÷=÷mk¢B¼lÒ…ËPp¢/íß÷ |*ŒÈ6Ê— \ºÞ3Œ?ì_°ö¹ÿ]Thñ2l³Å¸€S X3¼ùØ)ùgœº…«=œJ%bþ§Ž¢Lz>?æÃØõá÷±ë¼%ºÖeÂKJñ%žä”ÙÕÿO¯ˆBç.^Ò6_l²”¢Å"ábÌ¢ÿ¦?| µðAl¶Ä .¿„·|ÿÔÆ—^€˜X'^07CIéÊmJ,ßÜqªã8 Æb‘ðò‰V` Æ7¸…Þ…Ž‹BõË«A¢$v<Óqüä ЂH‰€¶kFp™M%Xí§ Úqß,f³%• * ûñ÷±®¶-ì,Xpi)Û,k·¨”X²{êä^~á‚sÕ ºÈ` œè=(ÆÉË×Ýx1"…›¡…… ÃåØañ¨µÖjñê¢!þ¸FÛo\^‡¿ïÞ=ϼ-:¯øÝ /ÚÏ…—æ3¸(#áÂp©ÄiñÔOÇŠŒ—oØÂe†ŒÎŒ!FȹA\.py>n!28_a­?ÈÒz×VAÙ,O€]˜éð뵄tÝÂÕ6 h¹¨öx Í/s‚K ö@ iÀd³zã…ù’!MLAõ~úß§ŒÃÈÉuÀÌMÑÂÂ…”ËdVÈQè°F‡‰µÊö‰Å.ß]-оfeS‰kôax¹©7lb¬Ç .–ø©x|œ~€xiØÂÅ:T,FáSUÃ?eÅϦ—S »†Ímgm‚vìGNÄœp¡¿&·üë-q\ 'R±¤Í–)—d«ë &¡†;•.J¹Lˆ¿ÜtIÃlÿ*ïI&f„ å2ø1ü jŒ‹ê5 3GJñâæ‹Ú4$á"áÒHâ´xlqöªÎ†ËC„ ÝðVѽۊJ½¸ÈRÐÓÐËŠ†·.8¬ŠÑ¼p¬^¤p±¬Ñ"J—ä¸ñˆè 2¦aç2KE H‘b§øó üÑðx˜ð… `†•‹ø[FÒÅh‰•T{x& Ú«ýVŸ/^æ£BÒ%=kEFâøBévÖB'!]b)è«RxQúEðÅ -R¸\YX­~ø0´d1 ãDgKšäŒÂ¥œ‹hA—zkBª—'ÝŠe&d†œÉ,\òï\FŠºÀ£/a.Öt“”.uçE_ï\¾1†K#|ÖPq'ÒÅK,A‚³ ˜žC‰¿Ùt©Öª=‚:C¥ Vûм/^æ —]–¤ Š—þŽšËePƒÒ-&ê:š%º %î.G¼tcc(ý-E‹UNÂ…•Ë…„è£?Xg}Št Å3a[R¸„þ®EÒE§ á¥þ³öWœÿHË8„Ë€“.^„pÁ1EÒÅ3]ê—\¬k¸ƒRƒÚÅK ñÒ xÉkÊ%• ‹ŸÇR‰x¦_gKêØ/Q¹$].S ,^K.0ã´YJ»Rr+2 [û .8Åbé‚âe¼ùî˜G<ø¢ÇÒ³pijã–dn0]fœl™É‘r‘bíR™.Jõ"õøÄ'OÚ»øº«˜…KÃA‚‹5å¢ €™­6bH/ýeˆôdWMJ¿d£´hgðqÏåÜ‘è£÷XL—HÆÁ–Ù4Ã…¥‹N—6'I&šn†úÑ¡ Œ»Ñé¢ð2c†8I—I—åà“p!ébT­‚.+¨¥zÉÍ*åCéÐå%¯?‚ÊÅ`é"è^}¨¸°â%°Äár9_$¿i—ay¾eíëu8‘\b¡Úui Á¨É£x«_ úŽ:þV»Þ±X¸ôLsKJn ]´81rR]Ãq’ï“bíRœÂ 1R/pŸiÎzšCNE“ºÎpaébÓ}ci\y\i”K:’.Ž\ P+Ï/uߘ„ K—)@«»qÏ,öv”¶öC¹” œDÇXóñÓÝ]ƒà©¤‰ÍØ);KÒ.•†/^æ£BÒår4Kàè>ˆÎªLˆöÚU|r`sø‰—áýk4d8ôKöÝʲHårî!ën’.H—³¶Ä_ýán²t‘tqyÃê§ÆÚm LôX#c.¸Œhpm KWÑ…ü¤‡ŠJºD]Æ– \Xºä¡W)£L±z™I(åò6Œ¥÷V‹ŸþÍj[R×V=BÊEJÔ.VÓŠ—À‡K½Èº$y ¬±‚S-*Z,V,>I».î»´õ„"(^d¼ïGgH-´Ì”œ‘Â¥Oµ¤äÒEzźyw]é©nF˜1Ë´M|Ñ‹½5N´ˆÁãò$‡Ú>f¸HéR|OÑÅš^Ý/#ÇF‹JºÔY@—è;+—¸oLÂ…¥KñÐntì§R1B:¬¶ö«±Úfp%Õ>(àQMb›¬[v–.¤]¬¼/^n55]ËK¿Ò¥ªúÕëÖ(’ƒœV¢UäñJøÁÙ©OZÈ–¢ ð—†8:S‹Ov’Åè¬YËp±Xº ]l\³{Îrábñ¯¡.'Üû,M£cN´XÖÈ” .=:\`Û¥Þ¡]dä˜xlº°t1 Š.õË.,]j-8Ìx!Šà F¼4Þ£~˜Ìp{%Ð-v>¯¤ ÑejaÅK`iÃåõ&é#ϘšíÏN€N ù –+Y”.L À¢Œñ)²|ù¤Æuþ……ˈjI%]t¦ÝuúTbäHkd{ÆÔP¨sÈ$B‹bKÓ”Ú•™‘p‘ºÿ¬¢ …ŠUsälºHé2„C· ]cÖÒö)¸ŒtiBÁÎáABZFŽUcë ÷°OU;ˆ—Áë¼ ÒkRÒ…´ `Ë/Ÿ=55(¿˜¢ .}Ïs"Å5º¤a9Ã3ks¬[óÙl)·—p‘ÒŦ ë–ø«A—b˜×а,×5K»3B Ñb³¥g¢4ZLn»L¹èR<Çx™°¥KKQÑe©»Æì)‰¤‹QéhAøFŽJ°Iªa'à„uO+i¶„!lLÌ2-öÝ[º]„¦[HñXÒpYÕ£übÁWˆ.‰™ƒà½`àì´Éj£É¾ö3€.-࿇Ýÿ²<ã%•žáÝ—†r/J¸h-©\^kÃ8Í FH5Œð§zhziÖ ±a36]&àÓ65— ÅfK[e§ÜäG¸\xq4ˆÒ¥èò:Ӆϸ´D*Σz™°¥‹1‚t@×XEp)ûÆ\¤ti?ØMÚåZåKÌëR/è¼ÁM—bñº¬vrEŠNõ&TgÒ…µK¥á‹—Ïžš†l¿Øõ2ž’¢Ç [¥‹/—ªìN‰>>x:#ºd²¢Þáì÷åR½ gs˜üÇR%|Ù´á"¥K£Œ‹§×°p±.ß ¶«aöÍbÓ¥~jtÄš+A‹Æ–Cín÷#wl$]¤îéû;ÄË™¢-]"]Æ– \Xºäe vä—ÜL’ðrYoà{uS+§¦@±>(+§h±ï¶t!ºXM *^K.å}r…\чÅN2%¦©Qè¬bpô\Á}áËš.ƒµ.î—SÌXË“}À 5¡ˆÄ‹ŠtQ|‘ÂEkI–.p¾ÆYW®¡Mœ!õ©D¡°únA "雇¸õâB‹Æ–a|h*ŸÅ !ÌO! |_»‰.|Æe¦PìY‡xɈí˜5¾DâE|Y:yø“Âó-ð£ÖpŽõ¨/‡±Ú'æ5éÂt™ZPñXÂpY5Â~±u˜c¥4àž÷P¼|´†g¦š¶¨F:éÅ1cFg¯øAX … ×¹—†Å—H“Sj-‰ÒeÅZé#X×ÓÂhG¤ró,’fD—k°pšª¬É#oØWãfKÐ>i]OI¸P7ŒŽ!]äáü]¸öa¼ìdé2Äté!רÒõÙpAéÒ‚H s¾ ]\‘câ ·ÉT;ðYW ^¢8Iå`bPÒ…µ <Û/Ÿ15I¿e£‡êÝ/í3ÖôN½Ì[b¹HB^M1fFz\âEÆÁ!\4¸`ý®ÊUùø ò\kÃe íH—Ó%[dq Å>V©±%Ø.Fb¥~nm´ÈtYÔñÒc1^zΓt#ôŠøÁâRwiSJÊù‚-(”&í¼¤ H¯•#DzgóÕ‰$eáÙ²%Q€"ñBn±I ”-]˜.‡Š )^K.åùÅ‚t ÑÅÂ^µ¶á2ŒŒÈÊɾx€éB3Ø,v½]xÉY6_-‰ÒEó@ïTZCú;ñ >›fy\DKÍÁÈ…†Þ:‰-Aûh$Á¥»×™‹ìÐå†"P®½H½\ÙDÒÅaº´‘kÌZª¾1 .#r7ŒèÂ_x}V\‰Ë„—Jëã„»ÚQ¼ \.£ó,¢¤‹Ô. Þ|ñrÓ©‰ýb2Ó!ž–€INß]~\í¹g ”.ˆ‹˜ OÎÐ fäk®ÛxaÀ UÈü£Y7\î¦óàÒ~Õ%Ãâ{wðméR¤ƒSµ¨Sû[,)\‚.Sî\d@§ë¬ñò8K1@¿+þ¾¢¸Ä]cú”tÍÎ÷sÁK)¹ó’ŒI˜liM¼dUpΤË9àâ1 [º0]Àݲpâ%°dáò…~±rfK|í§X3=rËž61F«ÚžìQ»¼Ø¢f°wQ6—œÚo˜+È0åš ­%[º_¤üGÖp¶ <ÚI1 :',´Ëàøc‹Œ©í±‚„-ZN ˜{õd—=°«SÂ­Èžà‹¸™$éRÇKCk€]cKÔ7¦Á¥K5EE®€)ÌF?†¹[‡«„52ÕÎpÎ>Mi؉z1 Ö>ÁÚÅÊûâåæSùÅ$[ºâi N·ìû1ü‘ü^¢:s:ö-þvš’$@Ðb²fç®#ªã“¯¬ÌÛñc\°°8曡3.»Ëô/aìë¸ëÂgÀ`'ºÄ!Fx™ÖØ¢  Ë•ì²Iíê·O+ߨFŽ}¤ ŒÏ{Äßî..mט—rÅhAÚÕOår&ªý»ˆ—Ýßà`’Z*€xá¬;°¶¥‹¤ËÔBŠ—ÀR…K9†Ê$[vcDòkœ ¿‹áB'LÑk¹'F1f Ï+ŽSŠ0Káå½¼væE˜§$WÔ’Jºt­bð­Ó¥”.׃”8gÌyÄš{hÁDx‰(¶èÂEƒ‹¥ÎºÈó.1I :SY”)-'Qº IºXEv-Iߘ%]®Ñ{¦‹@?Â%7dí¤×t¬(ZyÆò6\ÂÁ‘'á¢8%]¤vAvùâå&SøÅ¢Š-A<-±î îq]¡% thÆKWy¹ñ6Ó%G Þ¤x°St扔 ˜´:ÿ×ࢤËêÝ3ty»0Ðè€ ŒÑcÆÔ^‹5åˆ=¶tá¢ÁÅræØWtéQ¿_ÏÉ_Gé"¾nÒebI»Æt¸(éÂ-tÉVSÊhÄkV9{a¶¤Œ0 Uûd¹u/„˜ÙÒEÒåPqÅK`‰Âå!ا+D‡[("ù4õ±ú´„ œ0©¦(¯z.Ĉƒ)ëµ´½R;‡2jCÿjÈ—hÎZk³Å*¿‚ÓÜLNÄUÞH#c–§›.o·À?|‚Ûøäв‚Œ`‹C¸8àBc”{¬Eº´ì’5Á—C—±“cŒéÒî±¥èÓàI­t¸±œï{QêØA{.³ ΃ÜJÇôËoÄ3û«ì‹³Ü9¹[y·}Öbjß…ä‹î›Òî-¶pq°Å²ì}—Õ¥W&7a$4&kƒÿ±%äûŒ¤c’(\öÛ#ˆ‚ôÊV¿>&õ²ßnæjUí]ð”—áWpX^wÐ*¹ma¦E§Ë·EÅVmÜ»w/ÔÊ©~Ñëwël¡Ì©n„B—.]ÂB”þg{Ñ•0:˜v9ÀQtáÀ2!_P¼ðÁ¼Î^˜ÛwˆGTm?ùìI|Ð%§.@_\×T½˜¶·uè/„OU~qF[ÓD3<‹è6É3;W%°MâE 7\XºH×ÙÎã ÷Õ5àÉx >UíÞ«XWë•kl‘}c΄*Ü-ÏBŒËãö…mzµï…µÔ±ÝêjƒÅSÎÀüôŽ£q böÝ^~Óï•xQÚ]c½w°xÁ꯽ᆱUÍêlá«ì`™Ï¿ñÆU²C?´ æõ6ƒúLã%/™4Ñ¥ŒvVº+馪+ÜR‡_¿Ì¤uS’Èû°ëÒz¶§e0~ToÉãïÒvåôX½:ëB{-«Á+íAç~‹Â  [”ëŒgLW¶Ì063)èòTéh©¸ÆÈÙ‚r‰6N—ùüóÏß%«ýÜÝHsb¨©ݸÒQ÷\^ä£L0V¡ð¢è®±öš/‹M—oW™UWïG{°VTH2¹–Ù’¨S9¹…önFûóI,´‰\0³ê`c}'ïr]d¸•˜î‘A½’/éÔñ¨g_Aû–xT-\Ò.'¹(q£EÀÅýBØ bD©þU¢ZD3Ïêõ$jÇ%?â ’.öžÿn;G²Ì0¶;_ÝxKt«ï£ýå’øìÒ5¶¸¾1W ÖÆã/I¶TËØolAGµg_Ö®û„ j’ôg©ãà«è¤lc|L_âÅÖ.è»~ÇŠ¨þ¯~ ì?}ðǰCw«àJuIª¨óï‘=zC¬‹ck1Èêè²Ûª¤6|i0hµŒw‰w%±‘Þxí'oà<§rUâ¹½$²8êjI<¡˜\ÐY{–Ñä`‹üiQîÉ\šœlÑöüyÆìsf»„i7>cL\hi¸ÆÜHoA<(†ÂEL\æ]¿&{«ý¼Ì±ã2¹åg®B.Ù³¸s0.Æ^]Ð56½ âe‘éòa•ÙñàýÒ®V™ÇãêNceoŠB¿Û,m¯(”µFúf1ÛH——Ǧ­)ÞD'ºÈé¾ç 9Ð$_þ õвg«ÌZírÝ„tyý¡ä…ŸˆYìnâ`øóK½J)ÈE´½^~BÆÆ ”.uòMK§‹%ÆHºtí„„ü¦Ùñû÷¥‰ºªULYDßXi fl1òjAÏjg¿eCðŒX'<á.u\<âÅP¼¨ cŒ[» k,x§ŠQýÿô´¯VÁä$£Œ"úªúž2`½V°ÓÂ$] ÆË•ŠO‘.VŽ„w£ænO™½°êieB¿WlIÅA$àA™’–LXÓgh!Òå´!Æq懚ç[,ýGúžKÑÉI {=>ç>]ºÀ¾_À=€X ®±’¤µ n¶”A$~B´à¯•ÝÅ¢á‚1þ…ˆv“¦»Ð¤hA¼>§ÎºH¼ØtEî肈—E¦ËoÍŽ¿¿ß¶­¦yÔÍ–bÓ%}®ß¼ù9Ó| V&p`Vf·ê9F‹é¢äË,o— á?ךß²»ý+?ä÷ ¾=Ã'þ£\ÊýÂ3y¾ï2!½Ç’.¼ˆU)Áƒ7FSæ^ÜpÁc²N‡ K(]ðy=M$]Œ~ªöØxÿý‹¦¹CºÆÑ7VÚ‚;t¶[ë&ÕŽgó˱–Bž¥Äli‚†ÛùFü[ /{”v!ר*^~«ÃEà…«?›£ŠçÉù’—ï}OÌ;;D‰¢x‰©CHˆ—5¿"ºXR¾$y÷÷ËH—Z.B¾˜æ;èS‹Š9¤Ë$r·äcõœâ¢Z?t¡Ñe¤Ý½Å¢É™‰  .’-Š@õú^ül¤I—.!ÏôØpÝdA rŽ €K­Î $Ç[/o·p Bð¨4ÜðÚ™N&_·l¼ØtAרÈB,P—.kšï×M€ÄÁ8Ïòÿ™æÖͺ]27ªlc³<ÙÈ{!Ç%]X¾¤I¼ ÔC\Ö£¦©÷úW^9 ïÝ)†”tyÔã…™zQÒÌ©]´»Á0š C’óCA™s¬.#ê ä™j.x§K»hù—1†>Õƒïëö€¹QeW_4ߘG nL0[ê¤cìçžÕÞu­³ƒîâRð 01tBåEÈ‹Ñ+Cõ˜.è³îLñ"ªÿ§èvª?«‚)ð<Ëô6Íï9ì ¬Y<îÝ‹+8ÏÒÀxIJº°|‰‘x 6c\å¦ù.O¿av¶Œ3bŸÎæ?áÑ’*Ç…–êJ£‹~7)—Ì9¦ÁE±%Øî¸çEΘ횓¤ËŒ÷Z|ט÷Ý"P7ûRÛl—ô{uçg¡2Ã!¦G!xT–̓0V´ñbÓa\ñ²¸tù—æ%GÍÞÿ ÀíŒFѦ֛'sýæß™æ£E¤¢¼h©?Uç  ËàϺ3âIñ¨WœfšOd1s&¢¤‹ç áºì˜e‡vyI²¥IF”0 BÅ/%p±¦X¸ÀqbÐIIõ⇫Pº„ðS]rŒ÷ošÛRË7æÕ‚Ûª)ä¡FÞfìYí+;׃kÊ9ý¾W©m@'^›EÉûAxÑèB®±;S¼üKó\>ø¾SNJŠ¡Ñ´Þ|ÞI—ïaÍ’x sEÃ79èÂòÅK%jðèéSæO;MèPŠÊ H@XòhI±Ý”‹Ö!]ðnJG 2ég\/#%l‘ª—ÇäŒ)b£Rºo2€]tט纥n¨Qe» Zð×N3ÍWvŸ%ôWç¨Ô)B; 9AÕH¤ÎZ /]Ð5¶âeqé²ÝÜê¬Úû7šûh†¦“’ @:Ì眓ýf(§ñ× ªÉ*èLä:]P¾à%•<ëo7èêöÛÅ£h’gé’Ïž/„éòˆM3‡vÉÉ~?Êî¸vrK´)ê䙸Œ°pi7¤it™’á,›PºÀ'ì0/:Çûµæ~å[,ߘW åëð¨öïX;9Ñè8ßæUj?c,B¼%¼ètAר)^¶›_uÒåƒZÑ¡AÄw¶ñÆøÔì].º<5Kâe2Þ“}9*ìMNº |Á,Á÷¸lwI—§Ÿî0÷…h±t9êðf}#ñø¤[ºXvž1;r»ãŒ‹ãÎc›-Š@=ò(³œ1ùDs›øM’.¡›  }‹îó@uCð}8ÃX¶Z|ö»\àxÞüN¥vI%˜W¡ý૦j«4}€.è³@¼,.]„VuUí^{»JšiþÎ5Ù_ mrUi ésü@Í`Âð]v‚œ\æùBìƒkJ¤‹uÏ»`2Š)Mj‰pÜá¥.Áf*6*å¹M—QÓÜc½¹HŸý÷®Á±«ºH¾1¯t×è gµ§ø@e|Çg)?(^®5ÙnŒ^]È5vGŠÓü“‹.÷Q ªÃÜŽ1pÕªûa­¥Ã|pX·~ûÌË YB—7äˆmU©=[ï/?\*]ÔyÚË·}]jFÇ‹Í-TLmÎ;NÂI²–.‘›  EwyN-øëpŸK¡Z<Ï—ÀjX‘o ð¢Ñ…\c ^›.®š½+øÝtqÍõ›·’Û˜À3nA—qy`ß‹.ÏÁ@ ]<^ˆÊûˆ[º ôÐÝ”Ð鹓®©§þ#æ]œ?u¸héa¦dÈ¥¢‹Üt!é²ÚzÖ¦éï_ÄjØi-¦o̳K+´´Ú7bËÔ ßZ%̳¸x&P¼¼Ø'#ƒ/@EktÝ‘âÅ4]pùà+fÇèr7’íR#LÈo›Î ÓtÁåéŸðˆmåDŠžt-‰c¡qkl™â³ú=.j`x Ûh)[4×Ù€Êi©fÌzL/&þp ¥ /Ï<ТGy 9Ðå®ÒR^…`˜e;«¡Ú¯| 1ò ¼À"âºî[ñ²ôèrüÖtyŽé‚Q^÷¢‹&^J»ýU ôgÑE¼»/æç?¢±…2ðÀNOú¼¼³¥`ïÁô‘¾¡ëejlᢧ‡©çmEµéBÒe76{äft‘®±Åñy¶à­éòCscÊ-^Ãuˆt‘ã]có/^—.̽®ªí€}¨ê™B±¾Gv0QÈ5Ùwàno$W³½ZÿãN˜uƒŸ´öªöý2G5ßO]Õ^Z ¿`Ž® Ù§æ$]$^È5vŠ— %»ú!SRx6g´Ì„ |Î}ƒ:§/­Š)FâEÌö»Pþ}J„Xƒ›#*f\¡½ãì‰ÈÆ’˜±*óßÁ¸º\á6õlIÈ[ŒG33´s©buºHlâ³.‡l¶ÔÛxq$ä·ìm¦‹<颤 :Æ Í­¥hÑsm0¯zM¼I`¬Yµ½$¬ÊÜ?Ÿ¥²/c®žðd Pº«/ AŽ‹.ªöÝ¿wV§ ã…\có.^—.ß1;ܪÐÌ ƒG>:S«—ï˜Uî]3q!JQ^`g§íõ¿¤ Läõ*ÆIc"Ñõf•ÛlƲü¨µ4”rÙõ/|S†ëóñ•«òuûÐx‘Í£¿«MåãPduîE —Ï“jÛ…éboºt94õ$Ê¡}f‡[׋O¥»ÆÃ7æÕ‚±ß1M<ˆ\óªvlAñq+ ð/-à’ò*•IUãÐÄ ùÆä5—„rÝâET¿{ÛÅä+‡á@eD¦©çv¦Äã”ýb)e¯×ùr¼ÆrD§Krõ:yÒYŽIc†S‰Ùø)çaJëB+¯ö‰â~Ó° ?•Ã5öeûÆFe÷—´à6ºÓ˜øMyW;¶ ñeX†y”’“#·Lؾ1¬v•1™]cw¤x1¿¢Áå•!¤?É€Ée’ÉS¦ãÄËófÕ;t£Kf0z‚º»Ê™.»7©„üâgÁ¾Nµûʹóò= â~áÞúqºªü”»%Íÿ*¥KŒÓÎÚ1È’..—ãNã)%óÝÁÊú¶ Ò7]Ú0ÕK\žM´ ñâ1€Ý5ö’Ämƒ|‰õÓŽý3N¼@ &3´xq2F¿Ýx­‘|ÿ¶o êÊΘL®±ù/‹K—#™ZÓF÷ƒ¢¾%X˜/œdÇ¿ÛhšûÅ?¢_ìÅ·D òx?ä·$^èŠJ!+dà+<êY팗y_€JGù}±Œû…G_e”âu–7qÚôÉèïš±%º”/3ú9;!ÿ”­<ªíTCîs¹érhêI–.!k:šX=³ü°Xýr¼± ÔÞô@=žƒ’–4å×(ðµûØÛô¨g)38< fÁ,=ŠíÚ úTú S©4I—NNž©.'¦E4oÔ—,ƒp}R2N&äÑNnØÛ.H—¶2&à‘ti7Ð%«‰Î³q+ ûË^ñ©ö¡UN^I©FòŒ9„‹}7˜Ê-†g_Ü ùK¶]$]zêUrä5EÞ·¬\£>:  ŽGmm´h®±u§!1î´)p‡èóF4.ZE²C&Ð9WƒÙÕî‚Ë$;ÇT!t‹=ò¸dTkóŒ`ÑÌÑÛ/ì›_ñX\¸Ä»ÄÌsŠîý¬Ý¡KcÅÐ 7_bë;¸ê²·«¥ï¸L÷ÉñÍÇ”1¹¦üšëÔ^ºøÏö£(†žÀÒ¥û:~ªÁHñMU*RÈIïٌ̺<«BòwÊæù!GG×áÎ)\äŽKmÛEÑE»’Ò¢ÕÄ ëX6ÁŸj£XáÀG¹\c_’ol¤GßTúð…íêSÝ{h¢8cT_P—TT#E3ÛÕŽ)|^tñBg‚þ 5?#aó¾h»3œñ®±;J¼Ð%¹©„660s˜Ð ¡µòZÜþ~ÆL?×ÿñSÑqœˆ’ñŒÍ—¤ƒ.ã*!&’Òì£J$dSߟÉLÊcúü¨M!\’ZK‹9ÆTªd™«¶~Lå#á¢Ý;©§Üoq'ä/Ýv‘t±“#ÿà#Þ·¤™eÐøgíSi¶H®1¡\@—;PwåT12®|b­ýÃaéßzF¶`àfÖjzFþ·> ŽÁ5á©jCž%ñ²/Å¥o‹~VŸr±à¢ò Ø54ƒ¥Ñ—Ýqt[ΰÿ}0®(ÆpL€ñBüT€—Y^p‰NzW®£f˜.*6àØx¡Pä3œ†w\䎔.Ú¶‹“./Êl‚À£—TC!²cÇ£xÃKô¨¼Ã5öåøÆP¸86•VC]Á§zOüS˸æÃL£ ð_¦rG>‘Ð2Äé•>HNÁ5#JQ"Æò2{žxX|Á&ç1#ÂË.vÝAâ…àòR·èåÖ7¿ù·áExùÈZ÷š>ë †é¼õ\Æ2l\˜¤]úœ!}üýÙºpB~y 9„M\p(lY¹ò-X”岓4{MJTáTÖO- {3ã¥Kϸ;SŠL.úÆ|ͱ#xÌNÈï±í⤠ÌÏ÷Ô“clç•Yо“MQ»ã²iÑ\cë.`+`là€ßÚPl™¤ˆ Q¿À‰”hA![Z]Lá„ø‚}råÊŸE!§hëyÆK,É€i]ÍOYE‰vÍ«x ,.\*Öà,ë<ÎxÙdíéVKÖÙkÇðûã>ÄÛQXù^c‡>.£ù+qp¨NÑ…ö`^²°‰EaciZÊÀ}ÕøÏ3N`³©Ôµ=e —¸xC»˜®à£P,äXºà^þ<ó—cž±PdWIO—)÷'Šê;!dÀro»šÊ+º´ù˜>ººœ³ œw)ô£¢Nª!& ï#áâ€K9œð¦OŠDõ{[)õ5¼1ÏðEU3Q‰—qð‘xÙÅÓ›(Õ‚ß²‚ðR-À¡ö_é$6Tû‰ /¹ÆîñBp9vPôÒ…„—óëÊWk»¾Ÿbˆ1AO²6"¡´äËìLÄEFŒS±ÌYE”M퀛x"m´TÓÒ8ïúÕj .ùÞ<>ŠÓg¤t½|Œ_Ú=Ò7¡Ñ¥'èb‹„‹îÓòK¶]¦Çê]&úF^éRIޱ4-Z#ö _—-Šk,¨Á%¸V­¶Œ)V&ác\Røw»Eûã¶K áŸVŸÇfß' !îù.þrXŒÓ{äþËßXè¿g¥†—<;^æS¼.«Ž tAºURšãÄÖð}Ì çHÆM~M¥«û\¦Õ”dìÔ.C–Û.ˆ*ƒè‚Oj”Ò¥FÂefóléA™pLÅ8ë®±÷‘p±òà–ÔU~è|DÞoÉAîü(Âe[2…§÷.ãqÈaD³Ø‚‰’.ñ8oPá…Æp”²Ój´ùÒ.¡Î!½rÙÝ{‰†K°[k04¼<‚N¬sì{äñU¯f. >’Ã9ãmší¡[æäþ~,ŠhtŠ‘äÈlbɇl2Æ>bXÂ2ÎÎ`†±Ë+D—Û½šrY&«+­`3=ŠŽ)á§êç8±ÃòÎ?ŒÔ.c¶hp±³XŽª™Â {£ZĈ.x­2Ì´›¦p5™Æï+Ø'|Kl\cºr©ì†^Ÿ8»ÇŽAÞ·¤ÙCÖ?içÕ˜IȵIÈg 3g€ a¤K2Çd~¼îïP±lUm¾ìáÛÃ2F³vØ ¹ÆæS¼.Iœ•C¼° ¼d`è”)ý"–¬•7˜.ÐÉU2H ½føÄDÙÇõÜw¡1ž’®(TÈ¡,™p²TÅžƒ¢ZggÕ4yDùkÊ`ù»†éò$»Š©cö§_C³êŒÁtAÀŒ© ]vF]@‰³áïÙÛ.¬‚.e‰&3ŒcŒ•K‘¤ Ò%D2¡1(‚ŽÜþ êcáR_cAØR‚FmJhw‚‹ŠG( ¸ÄèîvIÈ’—(^Ònº;9è ¿`£ÜŒ»*J¨Óq&‰pÝ!â…ábÙÒeˆ–0/°¤]ý©Zà>r¸—+]v +¼ˆ™Ü‰ÙÚ…¼‘ø™4êç~:°O ‡~šT®« ÓÄ÷8L˜l‘ûû›-ëWô¨E¡©ð³6Ê\ã Jìû]ô<È\4×éxîxhŒ¹$Þ×ÕGË;<ëò"DÇH¸o.]Ã5¦)¼EV¬Ó é›$ò ýE‡K&–ÊØ"nçå¿b®·I:~ŽÇô«ÏîñÞ°u÷°ì—W$]Œ|¥/Áù/E… Kì"Ey[k„ºtY%FÄœV|ÙmÓEúá/i¹e?>ƒ1c††O²ÝýYø¤3`.K b¼¬‘j¸Î€ÔÓ r‹ÙYÅšF¦íÄÉ´aRgÿF;Z³é¢¤‹Õpù˜öл L—©‹—Bר‚ùƤp ^w}Áüè¼”N—Îò>†‹ë%a/ª‘ci¾âM‚F"8šçÖÃ/(~”~Y];²Â>ºÏxi¶îñ¢àbK—!Ù׃/Û»¼X'K¾ˆÉONéxy¼|—¨g‡¬á»)g£väXJØãAErÀä?vާÀ-ß…f»¶Zý’Aûœ0–±ñrXžy©pyÆð‡õ® } V¶ÛòeÊ.ÆÛøíº(éÒ‚¨[[OÒåé[dט­\P¸¤Rg_ÍØç[йŸä4.Ä~æ»dKŠ/¥æ­–.P¢`ÍMLŠ›^åjÏôÿ@òe5§ÀùÂx Ϋx ,"\”tá¸v˜M¨®_ZCxaGñºÉéÆy²—àø†ŸpœÑøÒ}0ØÈQd´qŸ³/©l)¤¥¸‰ÐÉ®º‚e°«¼žÂ¾1Ôè2S”·”Q`2ãå=*?¤e±T€Á`ªl¹våŸlSÉ[ƒyíØÆŸrh%]p*¸¼»ž¤Ë½E¦Ëh‘ÃÆåÁžfkÁ}cJ¸ØÒL}AŒƒžåí®½5].Pïƒokt¹VnUÖä5¼ìÊú1,n˜OCLaÛUsû•í¬ †t*1»¶QÝ—x©¸Ä‹‚‹-]F¡6#buž£ëY®lÒà³ÙZæÍ¹ÇWA¢ ö mŠÒ^Mò‚pè>1S Et¼ä²1™m¬zœbÆDsâþ~¨éõs XnäƒÖnɗᬓ0f㥑ϼŒG™.MmAE¦.¯p§CÖä‹®úaÿC»€tùAHíânãûG‡J]c_fnq¥\X¸”•¯:Ïl9¿†’#7¼¾é©\°jêÁD+¾¶®φÏò®œŽãÉþ@†é6B…ú_òJüýÖGÖQµ¿.÷÷ü7òþõJ‰—çU¼.RºðÑW“&<ŒGê+°÷¯±KL)PqáøÚjšìϦ³¼1œHEgªé„cZ-Ÿ c‡‚ÖHƒ­\ìK*«³’-ê`Wß1üÉ‘1ycªU3ŽtÁU6Ί3…b¡›‡uy'> "Œ5ºÀê^Á%Tl¯QPNsö09N5‘äˆÈ ^qÿ¥YÒEI‚˪1–.ðé¦&c0VP¼ÈXn£f¡}cJ¸(¸(áR~êªû`EC+»3Ÿže¸8Rù‡»%]xæÀP^Îhà|q!±BÀâã3Å&ø^ïÁ[°sgfÓãÇlùb§´¼ÍÅ‹ )]‚Ø)ZÚ{ ò`%F9åeW·tO…d”Ñ#—Qœ þª;œ”'-ÃÃ)Ê6–’ûûálç‹ í=8'sÞ-×T#S⃩h f®d´Ð³›æÆrh…Jç*m¥KZÌöW/Áv\ÖÕŒÖÓ¾‹LÛ§¦~ÌYÉ—1Í•V®Q¼Ó¥GÑæê{š\(!Ÿñ ¯$w¸ÆJNh~YÊE —‡¾+Ùr÷.ô/gá3­ËèÍ d^‘Bå ÇFÀ ó^LY ·lÄ|•AºL&£ÆøÑㇻ/™ø#7hÃËŽ³å‹ÒrÞÄK`ñà"¥ §Ôž¶ÎÒ¬§qÚ{Ñ~±q-Ò…]bk-±©N)× ø€°µ‹˜Š¡º¼¦\x©<¬v"ZRŠtX¿;ÄÇOðNã ­ÇU~þH±öNzT|¬Ýƒ:],.ÚR-pOåˆêÑ$9"ô:ºÓEÞM©¤ 91Ê!¤¸{P2 ÀlÂ8KxÖìë,Á˼ûÆlá¢à"…ËÃ×Xç åéS¥ †KóP IÜË—ÚåX#?õX–Q…þ'Ûgx'l¼c2G†ê.hÛ9¸Ç¤âÇW*ù2¤ðr[‹.RºLO Æè³"\ÕÙåØDÇÈ÷ÐköÙʰXÖ5Õ‰+ê¬%°çroãÓþ¾¨êNyÚ 2Eè%㮾Ш xÍ?¦©°‹u4Üßb¨PgPFqØõèAMu¾·‰Öu;ëißå@›6µO;ovÑÓ![¥÷¾ðÖÿ. %]Pº¬k—p Ê3•ð»mm (J%M}©x‘ÊE —#6[*êŒñÔlX%@ØrþÓÇ»¡Ž·ÌÎJoç¤háÇùQìò&‰Î®x×KÝýì!Ä}ý{F¬×Ÿc¼ð)t=~ìo”|±ñ2_â%°xp!é”ûr×X$BT¢/»™.\Ax¶dÄ‹v?»½ml8”‹žìwÈ¥t1â9’CÝ ç½™Ÿß˜9CC;Ç‚3/NíbõÐÃ'å—'»dߘv옶ö#Eyn¬>(é"¥ ¥9c¥KFnß’d»0¼Èé^³€¾1[¸H¸HáÒLÍ­…J?UŽà’=²+ÝÞw!¾\WÉQå·Ì‡2‚·6#E¡Bw9Zqˆ«ùrFÊ—¼ÄËí,^4¸°tmÂuù.¾÷ëòŠ‘¼¡òŒ—ì~ÚénÑg¡×ìÚ3Éxé—à'u¾(¸Ð±Ê~¹ó‚±¯Âðl…hÙïbà“wk[<“8CxS ¤´´³9o>f7y½c“_C¦ZêíC0cäp–tAébÕsú—‘±¢06ÐV16Rüñ"• —§â¸vï2„zœT[ô[Zˆ.IÉ—uçåO3 ÚÃÇ»ÃL—~Ú¯©î¬é-ŸÔñ²¾¨ÊcöËMR¾œÉ2^æK¼ .$]ÔVw Õuîa1ÓþÆ^`ò½2¨R²Ó1*uD…sUuÃcÊdEV.iy,$Á ‚Úz¸‡§íà¥ì“Auïdœ?áÈÙn™É…ñ’‰Ï¼¸´ËNš{ËgäÞWAßX¾bj£­ýN¹E9-o>–Ò…”KnhLJ—ÜbºDX¼„À5`”âe>}cšp‘paáR-«OSª³DÄŒla§Ü[±c_f¸ ¾P¶¨Ä‹ º€ßÍÚå˜vAW ¸È Úåa¨OÒ ”¦/·¯xÑàBÒVgÐÙê¢`°ÌK–5„p9·ÚÆË(^¦¥Å'O~jU` U‹Ä –L†3W8Ø‹ùBp‘§ö¥xýæÉB(‚ÒEÂ…cœ+Õ½“ÝÚ£ÂQžÂ¾Áx‘+»&']dú—W™-3%£½èNy7%K—Á¥n ¨ŒYt˜øòðÂÊE†Š]–{ù¢V\pĉš­ÓYB†|óžËå¤ä Á…¶ú'© ’³¾Mò† .²x‰ß8²6hX¿üxFΙÄË<‰—À¢Á¥ ¯‰‹¡(ßö!d5  ÷¬u.¼àäk»Ü{±ŽqR%^€.y™}7‹kÞ4;©ÒÌ ñô˜¬ÕÖbšc›ñDIwƒ:Ô“Öõ2™êŸü@°Ôˆ<°ïÔ.4÷–óºþI;&lTO–Ä72OóeÈ£¼+ÃtaéBÊ%gŒ¥tiÃbL—ËÈÖÅ­ë"ñB§)CJ¼Dhé‰Õ~ Â24Gç]B't¾ /·©xÑá‚Ò%ÚD3gŽfÿÕ X{ .oï´l¼@'²,ŒH¶^—q­“1<ÛÏ“ÓvTò`Î>´È–3/a0#† tƒJ„baAœâ£‘åû”<¼Wú|™a¼ xy]»ùXÁ¥]…Š9£È´1>2‡èBÒ%Èp1ÚYº4L‘Âñ KÏHñK )—/¹ØRdµ–KŸB¶&°ËgXºœ»"&!jAæ N¥:‡yä ù-á±Ãiðj—Ÿ¬ðÒOwѾ ^þRp‘0ÄSŸ„[”‰.»˜t𥅯 ÈR¶1.—&G¨ØHŸ¾BkâD/ŽÄÉê2>¢ Jš;Ä”ÙRdéR>B7yÐ¥hM|9xAå2ØÕídK˰:˜Ì$ xPe nÇ' .ç^{þ õVWA|¡âé–õîÚ¿†‰F3”Å26L^3Œ$|F¥“©ÖñN¨ødæ ¶ãõù/E‚ ÎÍQ‡p âz›”gÅv¨š|a2‰©ÊB:÷²gX; Ž—ëÝꫨÌ9F§öZªq₇ta\@W̧¯]ÉÒý“h¦.º"¾Ðg$ñ¢iš{ÓZ¨˜Uª^Æ´ì{v䨴ýQºÁÙ"ÇÛ$]hÛéÒÆ~ :/õVL\3¿¾1‡pѾ Í–HDÕ7ÐAWyz%UD¶Íµr #UïÅ­Ý_‰´ËŸ½ýÄ‹.Rº4Ù¬f–QŽÈ¥…ŠÑº´®8ÍQÇv–]‰L꞊%½ øV'ü“¤]pû˜àýÑ©^8!æ±Çù^—}ÿ…®  ÃŠ.:\¨ËyDˆÙ€Ñå Q#º€tù¾ìeŽ Aé2ÆÇ0flÀuX¿ þ­~¡“×I¸hwƒÙh™L¾óÒ…þ‹€‹º™ |›gqàKªë*‚çõø±u? ï6ö«€š0Öp"UvEÞì–I¤º1ô9@1°á°½³VÆ_/çC¼.RºŒNÄ\TÄS&P;ŸUêå© p1èö“GãñÓ°.«·ïGNå.Ä9ñØ~º>´öh)d®UÖñ™—ýǹoq ¾»³Rul…—}t—lí;ƒqH ß`èúÿØ-u?Õo¿é€Ë̈ -”CíE`&´;4í/øÂË¡•WS7Šж Ñešd»H&ŒŽàRÕ—¿Ò7Â…jÁñ%[T7ÃàRµ;èœ Š—¬ŒëcƒNpKºïbõU¾ËÊsdŸj[°Z>>KÕÞ©âÁeÛ<&½i•¬:„âúÕþKê³ßvp‘Ò¥ýDÆ.Â>•'ô‡äì ñ :ô üÎê¸âK,!µÌJºÀúø;¥|éZ±If£RÇWŠùg¯æõ!—J½p#+€û‡'štý‚“ß91÷o¤Á…‹ŽØkq´Àôi›1A5‚àSa¤Z¬‡—g/˜å”±=H—`½Ë_ Ïž^¼ÁMG@'p,ÉãH½ü™nÅ&xb7Ì¢…HT»—"¾S¥JmÜæ¦KÙõ NUG«´G©³|‘¢/©‹v©mŒ4#S; ½´Gmø?\Z"Å7Z,w¬ÿ´^Û{ùö¤‘}y•E÷©›Iºð¶ Ñ„ æe;†âe ]cn¼üu¾1!\ë(ù‚J·Øñ[ûìR±F9ýbJ±¨æÜ@—kyN}Ü]a5…Ò2,¿§´ Ù*ùºH^ßÏ9dÊÎo™"¼¤÷kŸýoo;¸L“téû•.\,Š›Äú riAx¹¨ m*<\ÈØûûî5¹²ÊÕ ¶‰2`ê¥:~fßD)פ^´ê?þNµ1Á° Å—jÄˤÖÞþ³.\ÜháõŽ0úÊÄ?h#è-ÊŠÜL»†AhZÀt‹ ¸6^úp¾™w¼|ßþTþáâÅ}J"å"C“Qºð²û%ôm^ƒ¼Ï&ëX‚*~å_œs=êø[ð"„µk©O¯"¼¼ãž|!¼ìûëP`1àœ.DÛvgiÇ¥é"—¦Ø¸Ò7†êE½êÙo½òÊ+?<)þôm±®~Ûyå:„&Õ:J=‘uó¥0â,t”á‚Û¡BÓãÅYêQ,‚û_.P¡½[7oÞüÚÁpÉÜb<2n’ûÕ‹óQb`_.GÇ–Xyµ—‘tám¦ ¬µ0±Š—z\ªî´Üxù+|c \ħê¸úàûï¿ñÁh©nq}ö£®úk‡Qº_Œãë‚Í‹±‰_1MæÚ½ÐÂÒ…â-K”gÜzçòCt¢)Rlú˜;o»HºLÓ¢½—ÄËÈÌtãå ûÆ`ÇEôª½ï³ýE¯PM·à4îøìGg¥X,—¹~8³!Ç×IÛÎvüF÷ÊH•’´ñ¢øÒ]RíbN’aÊv~þ´(µ÷~¶;–=^\{.S¸š Ù%\X¹ŒsJSå³ÖÀ¬óÆÓÒªˆèŽ]°o …žÿµ4,”É”:È\¥Ì•I­3u ´g'¡%¿&­JkÉ™ˆºjy^xõ7lÿ×FÆKÏÔÍÑrsÀˆ¾zUõUñ¨wbÅâNZža†ÏP.ïêmº8}cmä›g¼¸Ü÷ ¶ÿV|ª£[ú‡£îd®Tšæµà=$]Ø/Æ1åtˆ2lÔDOϺ_©äÈîœa²ÖŸX '[·èá'U0®³‰A_µ®¶ùö’¥‹.£M˜ÒøeÚ&Ofàg·˜Ê÷«|cÖ?˜æ³¯Ø¶Ý¬Ši h9¥ì¿Y)ÝŽ–úgàJH&¿V¡¸£¤Ô´[í˜/âQ{7+ûÝF(4*x£…¥ËçsE’í(yÔÿŠá?°ò:ÄÒEn»Hºˆ•ºÆQ¼Œ’k¬/_Ð7†¡b™æÖ÷•ý¾ÖYí‚ZøªÒÏ®ª½ñíº¨Ì†¨]ìý©ÝÝ)}_G½ªÝètò¥´Úß„äû`´Îpõ~ež4«>¼}à2=A;è´Mž©pÀå\7ߢfûÆ‚õûu¸<ýôófU?Š—X3€_Všæ]¿¶M,kÃqGf´·Ü¥°‘4KçR)‹_³­ÃYèíŒzÔÅß(ûc-5å-Ðâ ˜’¾j¾Y¬§åY±¥Ëå+˜²ã—Çœ/}<ÝÌ#^¾oš_ý…²ÿ$è`Krm™çj•9öânýÝÊ/FÚEÂ…¢ö÷pÀ˜wÛ„ÁyÐJÙz˜/É•%!vA<‹#ù²²¤m>\¢tqÀÒ7¤Urñ†ˆÉ¬À(¯‡òm·W´hUæz{=£óûUž¥¢‘b$Ý­Ý…dÿ ©ÞßÒQZŠ'C›/âQ—6kö;QÈ.Ñ3êîžStä`ByÑÏÁt”<ê‹cí×YºÈmE—)rQ¼L±k¬/_È7F¡b¶rÁ!Ûá¬ö JPúÙ¡T.ÊAuB«H¿j—ÁÓt3O¸ž ÜÆy<ÿRåYíNýâUíì`$C|©²• âkô6‹Xta Øå„ËC5ò5ö LASêó ¨—SâWgùxp'߯ÒÖ½´ö=Å'î¯Øt)-µ>2ãäKuªCS.¤^Ö‡¤ÀÄК =êêo4ûc‡=?-0õú*é«Å>Þ·ÄÃâ(å+±éâÌÂoÈ*ç/Ûmå‚xé0ŸQlI&>i¾Éz†Ž½ˆa²‰¤‹ô‹‘vA¸¬®cÁßh!‚6]öllÁ$e•|©*é ëa _†øRÚ6/,Mº8à‚q¸ê*ÉtâÔ{ì»SìÁ!}cO™UŽIç•ÂúШa~þý^¥®=ŒYQ­Êc¯Bo6µµóôÄ£dŸG)±öÚÙÖ£ñE³ã}‡]tTû'”Ul«Çg•…Š!yÛ:å#íãìýÍèjü¤¥Ë.«<íÙ8jÉ;„÷ÁD³ÞÕ^?= þjAÁ—ýfÇý»¸œÅ‹ó%Þ$¢™h .¸žàÛ~†8ÿ‰è`Žùä韘f?$‚à#¸Ÿ¥Y嘚~}—Y•éZq½/«Vp<ñ)Roö|äÄ‹xŸ._û Ž‚FÁ—SfÇoö9‚nž5ìTÚWßì%Çg›æ|SŠ.A×iÌ yCå|áå)³ãû©iþ Ù’LDŠŸtʺ*éÐsñjHЮ‹ò‹Y*é&ËÚ…gÂ/ì²È{¶îe즃 òÝÔߨu‚ørª´3ˆq]^¾«AFðå¶ùp)ÒÅ̶/¥ËxÖ®ØO싹´ÁÁ¾±  -j÷AŒp/­>°¬:éQê°Ò;*ay¼Ñ£Ð¿ bøHÌO´þ­õ(µ?U¾‹¸×Ù+6W™¡CìÌ î!]ì\ü2>²ÉûQß'ÇØ!%]ä¶‹¢ËGY(^F¤kÌ—Ïí“g\6ØŽl¶¬v$zØÒ9°Áã³ÿ8Ò¼Âö‹Ñ¾KŒoL¶* ˜?¬ØÓS ݤÚU‚:Úåñ¬vpiŒ@ ¢ntJaP£·\puVÈÆUV± \,Mýäñ®<ÑÁœ«UX¯¾“Lv ¡º¡ÅÐF‡W…–¾ÿ1¸ÞïXµâ2né—–úR§4?Q#9¥ ˆS=a¢ÇÍûœ3Øo: ÔÑBjžÓÀÔzôÕKŽ1™aŒÓDËC/–<`o¼ô©*ç /t¿Z‡¹’ÐR,>Éq^ú© gq¹aûÅ]ðàtž ¼gCF´Ö£mö¥X¼ü`…m™8îÑö§ÊàÛb "`¼ÚæûK.:\8©)K—tAÝfÝ£]*löU™ßrÍ:'ÍõBè][±"š‹F»W y•zîXN”x‰ N%b^…~´¢,Í€"P<ï®XqM<îF«Ì­®^qÉ\o¼{öàA8‡ôîA—a.õ§÷Äq3;ðà{†×£^@ÇX»%¥‹ÚvQtµºÆP¼ô*ט/ŸÏ7fί2tØÌS±eCˆ¡uýêS¯Ïþ£wá+’x9{ð]Q©ÿ?woÇyßyÒ\:DÂÈ#“Iô„¤ Cˆ…9ŽH¼0"º8¦¢Å;¦„he‚âØ± ¢!X§h‘Tr­kíº,]¹s½Rtµfm¹’ȕԺâ“0ÐDcËq¤½SW<þáÒÕUÝÌô=¿·ç¥»‚l'%“D£§§ûyžÏóý½¢‡0J/þýÅx =øKèc×3õð“h= yìê?û£Ïá5Už÷Ñåâº59p¡^H-"\(mÛ…‹¨ÿÈp‚¢Ýãå¦Ê÷| Ê+•Ó.½øÂ ›)H–ž™múýÊw^x¹¹¹yó t¼¸÷Òc¡gmR'5êS/|êSpzssSå;>º<¡†NkëÎvÂ'qžxSå=ß vGeˉ§;k=°óB±£óéñ°±ú ,$é,K—,—‰ft ]|Žm[-¼4U>ã£Ëm•ÓQÐK’fP2t@?õõJžÃ6÷núp'<,ßJF9ŒïÐñ]õ—ð7xºyïc—0Níß|j'›6CCsóN~ÉgÐÕönžY{t±áBÙé”™Œëú V¥ç˜ÆÈ6V©ø¯¥Ò×î?j:kU/åwï¯lK­è»ÔVx '"Zºh·‹¡Ë©þI/£Æ4æÇËØÆ¬äüJÅ7a~_¥/B´ôchu+’V{éá¦K¥VüØÃîÊ—Û/W¶®¸Dì¶)/&©¼‰.¤þÇèÔ8Z‡*•ÿ.° ômð•ŠoiúûOO ?ë^ßQ©øàòÙ¯„^Ê·€½ù|e[©öà Š«p©ÌÀ0Ÿ9Ãe¢Y¼ xÇKĘÆV /•Š.?¹58V—ÐÄ[o«Ã‹0—ªáÝÜ[ã`¾›­kŽ.6\hß•™Âº†gçµÍÊç´´Lcd ®:OÕ„„§j¡ËM\Ê?*Ô€N®]Ô¥`×9`¤‹v»ºL“iìDny÷´i̇—ÚmcNU±àŒ}¾r²ºÈcy!t1É’+~ìµÐå¾uJ{nÐî¬ÀÉùØ¡! 6¤£´KpAù^åd-Ü8Y]N.O—ï…^Ê¿‚½w#t)=CéB êö:ùÌiv»ØFj×ñb›ÆV/Aº|?8ƒ–ІKÀÅBPMïæÞCðݬ9ºXp¡}W”Šà®.ëM ýK–i ·a{ÚÓ5 ŽÓ+:©ÖK÷;VO»ìÀ©‘.Úíbè’ãZcYï\€&-ˆ8x©Õ6æV ÎØË5ÑEÃxk t±¤KjÅýd tÙ_y{½Ã…vgÜïq#ºL:Ãà2Ö/ûÄpD-„mW?^º"]ÊÚíÂtÉ/&¡rµðrå·|t¹C h‘o¼´çþ€ßEúWÕN &Ð;óE\š^¢2ýßä•j£úÁ™=PÙåÒ˜’¯–ÂÞÍ–W“êxî“?Åö—PŒ´/d0üŇçÕñážO}]½x7ïÞÍó»XpÁ}–CFé1±\CckÄ0Ô¾4ˆ¯½Ryí@O[yag=Ÿ¡D´Ë/‡ŸDVX>zÊ¡g=Nw5Fñ`‘4œäŠ_4Uþïi*™ 3Ÿa¢Ý £7x©Ý-jçe¤‹q»XtY ÓX!==‚kesñR‹mÌ.žW±rѰ¿lªìâºÀŒMãˆO“ ë Ýá.`¿jªüy­ñb3NàÿÛacUmÏ´tÉj·‹Ì¾`ÆK:b›ÆV/oWîpáòjn8u¢²=ï_ ÐXÙRì7P/¼%Qb‡<ÔnmêAÌu™#b%ÃÞÍ’×0 ÿwUíXm)8÷ nJDÍF `U {7¯)º¸Ð¾‹ú¸ t1v1 C6Z(™õK¾-íýžG„uŽJØY}j¬HY‰(º7ß =©×¹íùâáHwÅây²ƒí õP—JLËø溘ƒ;ëñß¾¼T“:¯[ÒŸ],ºLóBRÌbvɾI‡!6^–µù…K}<Ð÷œ»ïª èZJjiÚú(ê{®œÐ“-º à÷Ç\—áb¼Úljo¿ž{פtZù<õnƲNÂ\ês>ÃØýë.¸;á’L]Ùgìb.^ˆyPŒ(Yõ£Šo¿úŠzI¸”ÚíI•©ã~ÃÊïWú¨}0q·÷ÿiÈYd¥Òyó07ü†±ûiµžÆ@5Êri8럜ì2 …šøÂ\È™ä«}0âµt™1n¦KÖq¼¤M~oÕð¢îê3¾±>¨ÅfžU4S ›@8Ö!I…º!Nî³à½)ñ€ ¾ìf.hL6ï}-ønšî½÷»›aÖˆÕÆø=ûÃý^îý Ø;©ÀA!ïf%hÃÇÜwq”. Ú.Æ(ëÐ×ä~ÜVé³/U*ÿ1‹&׌‘™ý[g°Æ|ÛŠx¡'-:÷=öŠÁNdIoYô ÇGŸ|s3^üÒ…S]Ì6ikàR©¦––.ÆíbÑ%Çß+JÙ%£ŽiÌÅË2¶1Ÿp©ïâÇþKk¾Çwua”Ð2‚/4Yå1`™R8cVM¦ùì0ø ¡ <“a”.‹iîBòضcÓÎý¼ÿ(YHEgÈ|ÎI¦„7¸náB»3-\R©zc¸ŒéÚ x®-›-ܪ½ÏÍ ûžz²s)k6­ÃGŸp“ñ>ïû‚~¢ÐsêLƪÿ¬R‚¯<¿0 à(¨Çßäúôáñài˜§¾úßm•m¿rüÆ4tjàKŽÆkÂJ-ñÕ%n¨‡§N·‹XÆüŽ%^ÓØÍãekeÛ?Xpù ß•ð%šá¡êŸ@"].µpÖþØ=—Z»ä`FÍÆ-d‹:úïæI*z¬¶ÍZ¼Ãó ½iãK<¾›G×] \pß% (!F{£¶‹ÉréÒésà=ÐT¹ßìj¿ÔTÙ¡ × ZÔç|5ì,ö3pšµ8©ÝT­)Ýú b°YIÿ¸©²Í ‹ûš*[yë¨øâŒü€tYä"cÚ ÷7þK™ð€#žÏíbÑöclc'ñâ˜Æ¼,ió —zNŠÛ¥îÃLÙÏ5UN²GþB é<þÚïÛ qôëØMz„›TrÓœz«K4ÆPºdÙšUyÄÿØOŽOè¦`Rß}—ÿóNN j)JQ7\ªRyÂàåù¦u1fà‚»3 ƒðó+Æ.FpÙcª¢€·å·¥¤”î@Ùd›CÔzAãíR(ÐòN ˲ò‰&8I*a÷ÇžS§}Qm¡ÿ}ÅwÖ*éƒ`AœÇ¡ÓgàòuÒ4¿óÈ¢,óÙ²šA;Ìöž™±Ëò…© wp‘Ûýcu‡lI¨ªì¢q»]²ÇK¹Ç5Ý,^"ÿ¥©rÇ?Øp‘»Š§Ì\l|zVa±`Ð:%Ý¿©*ò&ªb‰¶~˜[Ȉ¹e¶ìÝûšÿ žÔE)©ÏËcð²ñ†“Q0ˆ½Š­fÉ1õ¢ð¿›M  5\pßÅÂ¥®ë¾/v1=,ºhƒ˜îbûtQ}Õ¦§´¹¤Ò÷ƒ¢U´('þ÷'þ³„,DƒÚë]Mîöô.–GÎÊp®ï—…Õ=+ßÀ¦1-Kà4±GîÕ„}Ç›¾$lÇ‹_ºè.IòCøyÖ¥Ô]éšóW}n›. bcñ2éCˆ…—%lc®p¶(¥ žU{K¹_ÝÕDûui & \®Ô{ûî=9-`ã –Ù1Ùú5]Ð0†Ò¥'.Õ¯·÷=võRô[‚ªQ4;â{VM6LdÄRÀ}F~­}ìÙÿœº÷ûßY¿pÁÝç¸lÄ–”÷h»UE~ÃÈ–ˆÄ´nÙ°¡¹Ø÷´%¤Ò×šÉ h¨ v¡ÿ» ê6#É(‡€ä8”b‚Ƀàuù.¿ð1‘ÿGö»¡¹±Wøÿyñ9á8î †Þ{ï†í’v†3z  '?¿›N  -\`ߥ… ýûágÙ.f9-‘.A´ [p ü`‹tSë;hyKESÔk¬¼½Õœu@}Æ@Ä À¬©ÔÄis™×°/¥’/õý¦ ’óx+ dÓñ`‘´{W¬føÒ[Eº Ó…ä þ…L½ë\ îë ««¦åv±é’+kÓ‰ŸiÌÆKÛ˜#\ [8ÃÑú‚FΣˆÜG5¸E ½óŒœuÿ£è½3ʸ ¼âY Ò¥¡Ÿj•>쪧®°Ië1x—‡noÕHK±6ß³:0"¯¿Ãífºó-æ®Ö¯Y wg)ÝÇ¥K·ØÅH¹dD¶XhѺeèš…LË»ÖÜ8Íö0@Åõ˜5ÝRž¬˜Q¨4’¬ðcÃw‚O¿8AYú¬¦:iä  Sì¡Cgl‰ kUÖ™×xˆ/ËtºdÊ 1~Ážü8äN™å¤0fMB4nó–Ï×(&Ýã3­/d¡X0sƒïj6ý¾¾¯X„BZí§ð$?z]à]C`ORÃ¥Ä3qxÈG¾­s]^üð®ÿßwR_ªé õ žHî5É.ß>‚®o³6À’È /ùŒ¹:‚3ø.ßôÚðQÂ÷]F¸x(]±]ÌNË–£q3ò6[ƨ2qáowoé;¹ãô.±öw€Ðx–´0„ê=xÖ–Êî côÌÔ*öȯŸÙºõígþ$!]í/én3ÍN¨¿ÿŸßº¼mÛŽgþý[Ÿó h3ñ`tWÛúvlÙ¥v%s2|§ÿ%Dº Ó¥wAÛÆ.y5AÞÅ[êñRQr2œ«£…|®`¾ŽEÜ‘qf6Š—ŽA ^ÂlcŽp±ØB"üàá-ê)lÙE¦+ÐSõä:ï|ë+}'O>1‹mèëWªãvŸS•í`ºÐLî7lá–ãG»ñ1ÈR;k»év¸Å ?«“x÷ékÐ.ã‘uï§å®Ö+\`wf„‹‡Ò¥Nìb–rY³Ð²÷EÍ–Oz‰hadŽ*[|R=ŽÓÒ8ìðçÀñboæ ]ïài|²Úç76¼ë$l-âx#вøkßÂt»6¯FuÞ:ÿOús}Â4šÆ´ã…0ñÏßÂ÷ý€Þm-Ë—yD™ÞUÒ¾à-}±qf/…›“ÁˆwUóÅ ¡ËÕúÀ½!|ý+~Ó˜— mÌ.6[Ì aJ9i¼\—p6‡/P `Z LýÕ>µàâÐ¥(þ–ÂûJn\زbÚ€pWkÍ—qðïgàŽ¦`ßMþ¡Ç¤j,V¥Û‡¥âÇKCðlÚù®Ö)\pw–²P¢tÙNv±±£¢\Ã{,´l~a“f˾«£s–%š!ŽƒÙ°y<9«ž4üqÖ–.êÈŸ„ô‡S Ì s„ËΡi"™Q±úuŒå þµ¬Mèa¿ÏÈ›^”ôim¤ÂÄ„1ÙÞYe)¾Ìè6|ÓÖø¾‚îo\p`1^êA¢0`Ó…7},[ž„ß4¶2¼\ÈëÌþaš£©){ˆÇä ~¨ž-n2-ãØs]âåBò’‹¦ „Ožˆ¥Ë™»Lè`C´oK¦hW×Êx±šNN€­º¥}ü¼áåwÕE°ˆr=Á%Ú;€­RÉzo-ÑEàû.[¸ti!»˜‹mëjÔ‹\[ÖPÜÅ/qôÖÑ[ôjGmÞ`ÊZÉ$b£QßÞïÔ)$åñ¸ýƹN>Ùjay/èÖbÝV-]P>ôêñIÛ‹’v‚˦tâœé\±ñá7a-=’gñ¢Eʘ[ÜÛuº ãÿÌ¨Ï MÔ£í]-¾(^p‰ædw%·é‚QüðüfCœ+/®mÌ..[òoÐøR½(ÒE-â‘#ƒ” ËtvïJ´ <·$×§ìf‘M UFèbt ®`ÅÃ{0¨Ÿt_¡ô¨öñ4‚Ùnñ¥$t™Ä+“ÕË@9Jûké|¹i=ÒEæìÎlábI—j½GåÒûA˦ŸþôNaËy»¾fã]Æ“ðˆ&há˜Æ@º\Š–a¿ ¿\²úÆ.Þ&-]tW¸˜5.bÀ×cÄ ÚÇŒã…lc@XÀ‹Æ6V/ätñd'c›¤KŒä¸ÁË©ðÃå Ñ%gZ†e}汄w“x¸ÀŒkáRŽæzûK4ÞÐe§c`š~{kjªXŽbq±½¸*À]Î7S…±ÇZÑjÿÁ¥á¬ÙO\h‰^;ªD ކV¸× yÛj7‹7,xÙÇ6‰Á.~£kŒ. —†y¿p1Ò¥‡'P³šDÌãŽã2 Óó×Ädtù-XuÔŠšÏÁ›OsД¦‹mSßáâÕ‹#Žþˆgã… F+ú¢¦ ‰—!ãxÁiÁGb,^ÌÞ«¬ vö^ˆœ.4\¼E† ïîÒ{èù x™£@wº™laάä6]Ðñ¿Ý!âe$`³ðbÙÆ,áâ²¥Ôu?ª¡‡ 9Öà![¸Ôª _xÏaš>µ°8a¸@g <‡/hÂÉikPD„$»m£X†Lƒ‚jeóE´K|­^z .ð@aô ¯Gº0\`wæ #]2 — ›mÕòi/”-¯&KÆ$­MÀ”½¨€Œi¬¿-Zl¦eˆé2k'H¾¤áb¤‹ÕNð/h¸Ðî-"^z­ ×0Ó „B9ñ/a|™§i+™xd“t)5]8«–ðBf6_ˆ.,^fØ`ç‹7‡† ¼AK¸°é¡çùù"tiã4ýæööÖ¸ÀE£žÞ æ·€t¹DùHd;S7eÐ2"³…ð2…w²ý!±£ ‚Üý3 6^$¸4pXÞü‘µE‚˧µ}ÂÅH—yž@ÆâÛ qÅò¨3ÊJõ³zgž¶„ÅeKäqµG¥(œi-]˜.Ž]ÌË \Œt3éŒl™ÍQY6gGÅ{"^¤™\·q¼L¢I èÒXbñ¢÷^¨p\ÿ¾vº"äÐÏ4Êæné2 ƒD³$ª^ɺÀ°‡=dw%^ªáÅØÆŒpñ±%?yUWÆÇÕ? UÅ„-©+g,¼¾ÜÃëø0¥é“o¦Aà"Ýà žŠ»en.¶„mÌp¨ÿTi;ãÍðåÓkž‰z!‡þTipíÜ:¤ Ãl*®p±¤K‘áò˜–0¶´¨ç¨³ñÇ“¼ó×âMc8(åí$]„.Q+ARmÊ.Þ7Eºˆ]Lr\`ã…N ù>"^"i+w:KtAgLÁ±…òe† Í´ÅÓÛ&’.yèÒÛeáe–M Eñ¿Ä8õ…Ä F¤}ˆ™ñn/ xƒF¸ˆ[7ß9jáÅâËQ¢Ë"K—‡à\@Åhº¤šuqdš5ä¼×á6§Ü×ÐffÊì% ,©ãÚ»ÿÐf¦ g 1^hÆÖK­ªáµE‚KýBP¸é²èÂE­&3V0ÁRˆo²Íiv•+J³cB—wé1^—zMg÷Ñ(Æ`#]´]ÌÊqÉó‚Ê©ûóB/å§Ù4¦µ3Ü^éâåE¼8aÜfUóe7FèváPäbVöv{pkßK·›J½.s‡²]d%‡¼BÇÒÖ“ç»ñŒ;–iȶ1#\dtç¹òNW΂ ®Ð…ŽˆaK½å€wùÒLëøâ9¶1àYZ²¦-Ç Xº.05âq×6ä ;]xó¦áÂÒ%FtIG䆮Øx1+¹Rc’*€³þ´Ð»„iìFðÂpQoÐÖˆç9xÑwu]=à³ `íG…Y/íäsyÕØ)M{”.°»ú ÁETË뱡ܾ£’%FeÄËo†¯Y¥øÚð"Îe’/ˆ—Ÿ’Qû¬8ŽskŠ.—{æƒÂÅH—žF .€5„®,ÝRN÷/ÚaøýX`½Wû„çD¼±µ»íuaº8v1z#]´]L„‹ŠÌ©û‹š.,^´À ‰ã%‡wEt‰‰x‘½)œkÄN‹Ó…˜03$ ø míÒ¸µoIGbx)µ]éáÙ#Ù.†/žãx‰É]±xé÷ªâmcZ¸h¶tÄX¸äŽXpÃXºÞa \ÊÅ ÝÕÑ%ÇÆR:+F=öQ-^ö´3] q‘.ñ¤Km#å8ë– #´× ¼è$'â ,½ò¦K6“+µ¢:Œ¡aÌ[wÚ…àrn!(\Ôbé’)\7p!´ì;æ²¥Eiê¹V-–O؈xm8÷´t)ƒ ÿü)ç®^¸¯‹¶‹ñ;È;± ˜ºolc"^hàõÛ–ëa¢ šÆJ~Û˜/ât!·‹‰†$é¢né2Ш¼£„ù5×+,€š^Ê4V;^.½ –pqØâùñÂwÕªžp Í1TYò Ħ…þ”/º¿Ë„H—‘óøÞ¯‹AÌVø×[p’•ð:¨ôQ¼<&Œù¦·±]ËĈ$‹—*³»–èBpéH‡‘.Ñx~Jà‚hëÉÚºÈÂÕÝM 14A™ˆ#/ƒ°øÏcö #]§ÜàRÉÆIû-QÂ4"Ãó(ñV®’ñÒ(}Æ5[r¾ ý.µST÷6ågKˆz»º`Ö'I—R÷Õ”~î(^"y¬³›êšá(ç‚dÐ$o38l¶P°`F§U¾n²¢ºNP Æ£ "_îÚŒÓlç€6§#ë.—íé€pä¿¢z­­Âp´(²Ô¥’†-³ÛÕSqUˉÎI!#ºô_{ö0Em«5¶ Y„¬2§ ö-ˆ—sú_ö˜òñ¿yC] ãh°5ì&¹^¦{}ÑEàâ îÛR*ë¤\¾Á™’Z·ìMùÐrøè ¿}邽 ZÉóÒ;ü 0QöÃ×îÊB›]H¹4ѳ¼.d³„‹gbA/Z¾hÛ˜ˆ—D$­û ;t¡”ªØÆd%|±•‹H—¼b.¶ËV±Tð¢/Ô!¢²c=˘ƖNjÀ…Ã"3ÕØ¢ŽsvÀÌá;™.,]®\/WÏóÛ‡É ‡Hº(a¸ñ¥[ânÄK{²œW_º‚£ä¨/g=]>ùÞŸ¾ÈHb¼À8œÃ[‹¬º0\„ dɧUgJ:QÚlÉwBJ«ƒ–™…„I¨„—4ñ8`wL¯öól¤‹Úƒ¸táQßfKÚQá¢}¦ p?’qFF(¸±i6Œ1]ð"^²:ãÅlÑŒI œÈZpÑ»:¥n.ܬ/e÷cº”J–} À]ÍXâ%¼“Ëb&P"Ô.^Õg«³%L½ÀtuŽÒSR--VDò`}gžîªë° W¤ Áeʯ[òcî>ƒ"=еXšv”:€.;%2fp'ßæ}8%_ÖŃ"ë‰. G¸°lÑh¸p€P«Í-g;ÝHs„ YÆâF¼ìó>M¦1”.jÈF/ ]>éS.Ííûlé‚v±!#\ÄúŒë:àEË—ÙŸÉ0ŸY¤ÓOfÈ4VÍ6æœÌZÊEK—˜šH·nQð2æYáœïw9|™Ù’¦±åðÂp)fB*ñÚ‡îÏÂxÉöŒQ6åÆ6‘.ÉÑÌûiLU:öE]ú»œé‚ÊåR‰-¿…×W—0sdñR‡­b>õ]£6rãÇÐ÷òݤ,ÒÓk„.—LP¸PöJ—Ì .†-/koTOÌ'ʦ´|y¾—LPBt]àj?C{¢Œ–.SâÐE¶T“¶tQTÌkáb•J1 ù¢5–‡-ñ’àÐþÌÓlºàX¼ÐÞ+kÏ!Êtaû˜ ÙÔ¥gÈô·‘3ëô¥"/”ï¢ùÒƒ¹ûtÙˆ—PÓØpÚ÷ðØ-K©ŸâIiDŽ´¤–bKˆzud;»è‚páeE «lJ—¨À%ÝÛ›—§ßŽx…˜$¨c³8Ó[–ì9ª6¹Æ9¹§<.¹úœ¡‹†K›%]Ð.ÕÂŵ<Ù1ò%k‰—²=xyt¿!?2Y‡ó¶Í˜fÌ4åü¹>¿Æ 1c§J\Yp–íq·jV%áË«mh À",^:‚ÂÅ¡°övÜ7Úεni‰›ÞÌ˪XÇç1`,iêóG:©JÂÔWð®Àïò*>üŒ†Kº·ûø[:l_ ÏR1ªó^¸Þè)¦‹z±¿¡µ—êzLðg­›*–—v-\P¶øÐ¢„ÔHD [’UÑ‚fÿ¨ø-!ó¬öR®Ä ¬_lοt——®âecåÒŽ†1ñºhÁKÂņ‹ƒ#_`·åKØ·ÚëÁ•ÒeÛÅ´™LÅnÊDùû0²I˜=Ð…––zã~éñ-ä=z×gò_¤éRziÓXu¼\¢ÕØâ# ZÜÀd Ë9’.R9–ó´MìΤ®rMÒ%y]”KöÚ”ö·h”8€aä] ¼ÌyIÖ ¿¼ˆ«_6ˆzðú Ë1©”n„‹[‘¥ ÂåPïð¢N´ˆuVA ö”¤^›EÚec/…õæ T*y¦È ¯ñì¹SÓ…Fý%ªu(Òe†Ÿ6 ¿[Ãù뼽͒Õ>nr/ó²w:ÒË?¸E4L¹Z ËéÂa_:¨ãÇà;öË|I·8báLW±ˆùébÙÇ^§Àöò ‹—þáâtÅsÐbÃEtK]ÔŠƒ^^½À:d¥éÓ%éŠì‘´mbŸb\a0p^þàhØ`HpJwRQúsš.zMõ-· ^à}L¬º \Z›Y¸ l  Eà’œiiÖ1ÈUÐ’†ÒX.#Á`Aù€K™Þ²KŒAÔ¬:íõØÅR§^ÐÚ…žì˰£µ¤K½+\\¸8x1ò%ë¹ÕÆÒ6^`£'©Œó¥pÛØ¼® èé(}ôïÃô”&e)!]êbœá4õé„˦Pßf¹¥` Í'–6UÃK.†-ad ä½]æ(M_÷sIJ¹æöçL’.—[zÆt^~²àj0ôO9ÖJâEÓÅ»šÔý+¼€z‰cþº<þågžyæÑ¯ºp!ábвëà–-[삟_à‚SzÃïE‹îVL½ µa µËÆíh§1aÿêLYÌÐÍyTw_Ó…G=v¥4ÒEìb$\‚>sû²öÞ .7˜fƒ]´äÄC‰ðºaµïÇßX0½Yuy1. ‘-ÞÿáéÓ§îâÂáž\ ç•uWN1»> „š.ôàDÚuð/ùÝháÂõr.ÓYËß2lúØÔ ^JÝûGÄë2hU­¡Kª·?µû œôè£VþM]óåP¿¼aãõJÌ,b-µ¼L†ÈÃÒ®-ð¬þ‹*´¿Þlê[ ^ÔûØ¥N:mÃ;ÌB¸ˆpÙb¡å5õ¶à¨ ¡ %Í–K¡hA²èrJ=cz{†Ž\?ýö7)%?‡‘—¶wŽeР©éÂy.°x}Ñx]Ä.ÆÂÅ/Z¾ ‡‰Æ Â@æZw¨mlÆX™-¸À…ñ3*–¿¶l9½X½g•nV'÷Zx±éâåüñcëùÀÿòŒ=ƒÂñb½A?\„-UÉâÃËãú ¨0^æZ•zç„ój÷“§Ÿ<}ð‡Pä’K/Û£f µs­«WËR/Ðëå¡GN?ùäéûþíPß`òEK¿ˆzyµø€Z¾OÿÝW?vº†5vXàÂÂesGÂQ-§Í¨ ¡©YÍ–æ´²”ç²qTÿz{†ÚÅË¡m¬žöoð1”.¥®÷/àP~-c’¡˜ c"]:á„‹‹‘/°?‹Ù&0kz ]rü ÐÖg0!Ì—išœØ^¾“bFÅî.muÎÐfnÑR/]Ôätù26cOÆÐ¡Ãx±ß .Ä–¥ÉbãE_ê俺—’‚½£ÍÚ߂ŒÔªgPõµß6liñ½ý€‚™é2êå¡{ŸlÒÏêuzƒ¶ÿ…ÕËÁ›ž@+£Ëãêi4m»¼ÿ2|þi‹.¶AlWœ´ÿ~< ád‹A‹K¦Cf絇 â m,¡«¥IºP‰¼Oè"£>F†1–.õ×0T•…K\ìÄ ,:uWû^Že£"߀¢‹Ç?ª“L$Þ[¹NQ.3äßÇ«`¬×ÛÔ3zââÅ‹ø¬è9˜K Ûwå§K®,õù¡?rnñ>ëR€Â%L·^Îv'N {éå-:€—ãþKA rIgåLa|ònç$„‹°ejÖ‡þ^6`‹”º7ø<,\ CÇðãkÔg Ñ?Xsº&Зo» Þû~.Ís®Aì¸ýN¢Y,Àƒ³¶puã”Óf{)›ÈPê¢jcЬâE”.¥Ò)r_²v‘ ý—Ø0F^;Ç¥ \|x1©û9[¨[x!CÛÆzá—ÛŽmÌrº\œ_ Cë ¬& 3HŠ?Ó÷ΧBÖK¼¸tÉ9)ÝEµIÐ¥–: Öh}°˜¡H<§W7ÈÜKáä¿EiËÿxùW}Öüƒ‘.7Ušîû9ï]¬TvLà38{ãky@tùv<>÷„:I­Í]ÕU‹¡h‚™ar˜iOò±¸TòdŠ£çØ‰NtÑ£ž c(]"¨¹OLzKÀÅúgì|lR÷aµÿ€R¥ŸÂ Ó%B?À(u=vܼåtÑf1Ó‰¸˜àYí¿_«gõ¶ž¹u:òLß•Ÿ.à—(èø±éÇ}—ʆú[v^Ϋ"#ž%cÚò†1V/Ç—’N-š/s©Ý¾“&ÚŸóë-‡rbf¬ñâû¼“X¸7' š/møQÅ¢o¯1¸¨ïpë[xüêõ8x%ÙîúZv»ÓL­(ßô±E£E“Å*›¯'êí™Ç¦vž†(^JåÞMdåoá@?¢‹®-Ɔ1’.Vr~u¸øðbR÷៻²¼]ÄR%èKï;¶±y_+¦8ͱl3´àß|«ÍÛZ¼à Û»?ÁKOH·Øè áKÖû¸ÔÒCgg¬ýM$r¾s±F²0^à5?ÿ&ÿt¾æ¯9l¡$åã³6ûâĠˤßÑc¦{¨ƒ"Ç`nX—ÚA×þØPƒæ‹‚‹ûßþØèòNS¥ï—?—㾦Êõ^}=ï(±¨“>w»—ÕI#áhÍ’ ¥ ¢Áì¼X»x\Lbýì½ÿ¹¸ñÄ!]ô¨gÃJ—#ýèï˜Ï- ó¾+‘/°ÚLb›ò LÁÖ™øY*nœ.T³ˆ½]œ€1xV¿¸[ŽýMü.ñR:kFî*@,5v•ŠMN=ç¿Ô[ð-½x9&NlQÏèÆBdsàRv eæKkà¤ë®n A #nÞòÁ@#¹¤ÿR'[Ë®wëóoðÑ5…5¶ýã[rÜÚˆT<ñ¹ñ[ýßá¤ËA‹Å ïÊã`ºxôƒ¡«Ì u;ØãÅ8]èüF¨¬£hvØD¸ûî§*•/xv4mãø®tÁRc^l;®äÁKív"Ä&Ñ)»#ør’Ä6o×fãÁ°Ä{.dæø®|'¿`tK8Zø.^ÎJ¢.ƃ—zÏžÎù¿#0D×’ïåm{檹[©¼¶w¯?Bl.ø~dØÂha²øÁ"ã"j…ÎíB¶±R¬>íÁMXwwÞÓì4Ó哺*2Æ@ºlØî\l ¸ðÂo¨`‡‡IAþi¦ ÛÆzqÏÕhlcÆébMËœÎu™BupT|A¶o'ðS±!&y9f\ºxIhûXMC'øw;¥ej$ _ʬõo¾©±e–ËÉìœuÜè–Z4a‚€ »”=c¹?òÉÀüÂÇC—¯ª ýsû¸£²ÍA Ô:V'=»}\4'Zl?Kº4šÒ’–vaÛØz^ê(±¨×ì;9ñ†F=ÆPº´ÐJ>°<\ä‡Q¹«c‹«‹¤yÊÆsˆ‹íBúA·‰õJO‹wØÀ¥aZ§jáØ‡Fk?®Tî»Û>.V¶jñRÐ ¦Öf)°g±´òTjWðRÛ,¯W{ äå¤RWNðÕhÃÁPõ=Ó`讃» ù<Ò-UÑ" jÑô`+ã³ò_j«kä¾<¢[×\Ô3ûþ[öq¹Òç¢e®e;¼$ÿwèc¶Zˆ,¡`Ñ«¦³=c¿‹ØÆ&PmìEj‚s&šcº¼¨«"³al:þKVã’pñãeLçQ#^ÛÆz¨<’Ð…mcd@3ÊÒ~ñn"ýÁ¸zd:|@ÃûŽÄµ{bêŠÉcž_¼H>ص 7¸Í5ô×F^Mß´;p0 [f3°e»è®üg±n©†=Ó 0!—ÚæT¾ü0ø·~œ´ÃyÝ·ŽOÂWà÷àW¡ — jôiò“§qµOQG¥¸ŽÊbºÐ¨gÃK—¢É:Y.ücMq xà)F`hºxôƒˆQ2z-¸àœÐ° .½¥ò„C„»Q©<îŠÛ§é§ •ÃgU8r©]z—Âòrþº~Ø ó¯Õ0Vý=[ƒáêÅ“vƒnY-<9fè ²“KÈ¥÷…~F§N‡ ÑÇ× ]þ r‡3sßúGÞ¯"Z€,ù®ÎÆ? ù¯53Z,ÕÁ¢‡EÌÞžiíB¶±kXmìµ iÆRßÓå1 ÆPºý$©.~¼Ì˜dÉ®œÉ‚YLÛt¡LÓ®KlcÚé"3ÖtÇ\—±*£bŒº[`ŠÚ<*ÁËX LÊSm©e脽Á]:^«f²ð¥œµþÍ_©× lA´Ð¥ê»¶„œõHË2h1êÁR0a—ú·3Y»jÌöæ“!_ðñ….÷WžwŸÿÏwTÂj"d¡“îsß÷íÛÔI€–`lXuºÄì—Ö.º\*ÅJâ6Š9‹.ƒ¦Dä¤HÛ.¶ \èC—EK¼x½ô–`ˆÙt¡ Åa÷t¸àœé¯[å) wo«|Ùˆ—´qq ^‚›Ô1ü®Ñ°KäEÜt{9_Î¥MåÚÚ cá﹦Á°Zôäð¤ºL_Ø­lÍ}!CôËk†.÷Wnu§î[;*§-Š,–\µivÐdY,ZÒ6:¶,ö»PœVK%Côö×ÀÖšº_°èBpaÃØ7ti¬ .þȱ„%^†M àEÓ…lcÔý«‹«÷Ï¢Zz´Û¥ †ÄU=ÔÞmgÝ£¾’–F¼ðQÓÐ {ƒnœ,üšÝÅþMµš"ZìK…žµZŒúÀþÎ L_È¥à .N+ÄaúB¾à—?ºT*¿ô=ÿý•“Ÿ÷•Êç|ï{eG(Y–¢K£Í£]d³ÑMm:¹ ÿ´¡‹Œz4ŒE~ƒÒŶ‹- <ÅÐElc€³ÎÈ © aÑÐÍŠ£×)ˆ§á’ÓÖ'’.0¡*•_øpQ»Ùoð½”Iºã#ôå¬ôk¸TèI¥a—o·9†èÚñëW*ÿ蛺·'ÐçþÎB!ZX,w\ÞÚžíRÏ ‰](]^ø(i™)Lº\Ø0vÌH—îZáâÃ˘/m‘¬éñ¢ðbèB¶±í»ð7zÅéâæ äŒtÙWmT¬x@‡<ö‰À ¾Áå•ʯ|‹ýå@|Á³V:ƒB.| Á/øöÇDßãÿùóatñ½îÛï«l­Ú¡]<{·d´KB,NuX¹ÃŠR¼ ‰z2êÑ0Vÿ:J—6«K p“€.1;*r£ ³Ãì”1>t9ÄŸ7?ûêÒá´Ã6\<ív¡)„;´JÅG„»ï¿ÄÊæFðR}íAº_Ί?°†K…ž´Ò¹¼T_]‚Ct뢋oæ¾õ[¡t ~‡'†kßEóü~—N.Ì6Ç"Ø,§…нÞuÆ.hkè†ü¡öþ6Ë.V\|xA2â%=œ6=^Ó ,¦­Ì–ÞxÍX©ÌÖŒÕn’.0ùO¬ê€>ö¾à ¾Ám+¥‹o­ó½¹QÛY5ΠKŸBð ný£K_Mtñn”.¸ùµ‹(ÙŒÕåÒ¤ó8ê. Öðî/A.ÒáÉ¥¢Ø²Á¶Xà*fÙÆ†{0…3ÍtÁ)1c³\N߃Ík‹d@“H3.ÆíbfP:ˆ„§*Û’«D—§j¥Krõè’üxérrÝÓåÖàúüÍ~òƵÙ~x­]ºHíê1`lψ…žÅú)wmþ7sÃØá<”¤ÚÐÑhíôj‚‹¯( ZºNXÕÆÈ›¸ˆÿ2mÙÆÆ¬MZkÆj· I—1°ä ­ê€^]n]=ºÜZ]n]=ºÜ6cƒ_ðã¢Ë{íøäCmxè»?ý#}„iÕËU íÕè2i‹q­]t—ºCÔn ËôAK¨QÞªÀAPûp|Ϙ±‹Õº+}bzÑê§¾f·H·˜…4yÿÅš–³á¢Ý.–ú_¨T~0gí¿‚&ŒÔ]9Õ2ÛÒrŠþip+ÖQ‡?=¥þ5ôRwžiÅãð|„½œ---uöõê®Ôt„]j-']îªéÈ …¶®~ü/a—úÊ77™ÿƒ´‘MaCô™5D—_Ìj©dM ? û—§#µ~ER)LjßïBÛ±hiÆ^NAÚþùR©2ô/YøÁ06E­Å¨å ÁÅÅ E¹ÕÆäf :ƒ%]–ã]lM vƘÖÒ%Mócá£ðT‹š6³4Y࿯Ҡ®›%w­5@q~Áÿà >öýwúް7x9»¢£Rù§€¡*87j;+ìhSS'Ïÿ­z){Æ‚Å$ì >ó±Ðekå²ïùo«TKlÁöØo­ì÷½ï¾ÊªABÕèÒfO­]ÄíåôR·{F½Eri&1M?¡íb5Ã…ébWL΢ի…Sî†.<þ€Ä ßæ´ ív1žËò€zV>$ôUþg$ׂž7¥1ºœ0mcbÏŠ·…\êQ«Ç3=Зc•…­9b,ü=?º¢“–Š›ÖË]jpØ}tÍÐekÀeº æF!®†ÔÂtn‰i¦^Ro€¡GF™-C>íBn—b¹qiïÞÖ$˜ÆÔ ýKVoJ0Œm§ÖbÆ.V3\\¼P˜]*™B·¤9«q©ÎÐÞk€ƒñ+n’.30õcOo GÛ; $ òhÅ,ñÉí¬3ÏÄ„—mµ 'BÞà£+ ~'{Ø¥¶Vn«á¬ê1ƽܥ€ï¹­«óW@—/WúüÒ±BÊ Ã„Q'ù¥jåݪiÙUèÂE´‡|Ú×ät/ 0Ui/Ö–rééÒ¾gÆWL¢¸]¤ß î½®b“+ËñÂta|Äès\ñŽg-¸h·‹‰º,ǯl©4ù}%•Öº«´Q#´hâÆ¤œNÌAÒ…þ`È¥þ“éñŒ 30äåüÀt:¯=b,ü=¿³¢“– ©Ôp]îR øœÂ†è;k†.êîü6mž®Ï„ ûïbFEM€!·K›ãŠ¿ ¹]zK)ÊuÙÛœ"ÓØÈ&QÞc c×IºÔ»Ø ÀÅí÷‚¶1G¼ôXt!¼P!l¶ÚFÞ™¬;ce™Dé2f‹‘3í§CFÅÞ]& šJ;ʬ~¼Ôwv•ŠEÉÕ?¸üÐ9öÜé7øÎŠƒß r©ÚÎZ"jl^Õ.s)Úž}yu¾à èòN“ï}VÌFæÿiòm'ú¬‡`ªÐeÒÉßíBn—H†…`æ1j Ó_u÷0ÀEébìb7¼+Ÿ&Oç´xa5ÝÃ4@é1ÓœÅnslÜ.:c Ú2¶6ù=PÅ—¬DAó‡ ]Ü/‘›ÔM·Þ ¹”#\"P`òÝ—£;Ý@*% ÿ¥Þ^ÙIKNŽ„ å.…;¯°!º†JÁ¨»»Í·/¼è«b¡óŸC¦™Î_0øÄ¤ÇIÄÕ.èvéõº€;± èQ0P)­]¡®ÎJ—}Æ.vCpqðB¶1[¼d™.ýi—4-5 ¢&å2ØÅí‚Ò%—(B;ùññ‰à¨€â:­q#^ñ1žÇo0^€,ve'œKc›ÛÛ'‚oðí› >%ñöJÏZBýÏhu¸Ì¥h{öÎê|Á +­~±ÒôÕÆÑA`TœtuÒ!]«–¦K›39D»Ls†"€¥eöö†FhÔK~6AÀØøKÚ.v#pÁ»²ÍSF¼õ0?bŒ_d£œ—ļ.âv‘jÜòw‹›aÿD¥iµß‚ÐuÔ…SÛÆ`:Xwe70Æ­—ÿRXÂÙÂg¹/çÇV»¤0ŒyÞÿ¸ÔWCGŒï¤?ñnhr,èê_^òóØò2D×]àî~Ëš¹wTšþ÷ößßá»ÚÈÒ€!µ7YrÔ¿ø]à3”’ ìbç bâæzP0Øvy§ôw‰t— òûëÌÿ‚±‹Ý \¼ a¬ÄîÄñ‚…Z4^Èž<à ʖ}}¿Åí‚Òe¦\H’›ýt`TP9àK?…<ãf³‡/1†y/ua^ï-KcX;rütà ~õ&Ã{Næ|è¥j;«ºú0;Æ¥/EÛ³!úÕ‰.ÞÛÃ÷_î¨TB)?`Ô¿ëý”-ýÖ=ý¡m«Ó%'ýë‡í²@V®}T÷öû¤b×HŽH ,Ž<ãÏ÷­.ö¯y VûCݸµJK~2%>@ñ²¸èƒ‹¸]¨R_\·q„g¥³ë·©:‘”¢Ç½WI¼hÛÖ㻲פ~(MtŽq]â‰{OúÞà·nn0è¼ùª—ªí¬ªêßr¼,y)Ùž†èŠ¾à†•>m÷AÖÑ{û›ÔZ(ýomÀŒÄÕ-m» ±Ÿƒ“¨11ÔÞw· ]°ø~£ž¬]ÄÊ5J}]È1Ñ&p!ºÔËÕÃXè»ØÁ…ïÊú%4OÕ«Ž-`ålŽk$ ^žæ=ÜUýk¦Ñ™ó3,]:„-³S©¤zV÷ï‡DÈ__¤zø¬45¾ÊâElcTÅ2Òæ+8M#\&&ÜK0=ž…-…R ?Ð~9¶)ìF cCXϾԣÕGŒõy6rk™9«áÇÛK|^ZÌËc;œ!ú¨ç­5¼l»Ö~u=ÚÜ;€‰–Ýïð‡V_W]Ѫ`$²7ÏMøŒß%r ú¬xG¾ôj*`iŸ¸PKìãºàA,ެíb+€‹œ»3819å%=À5’5^è ]îçaÞe®Å‹$¶¤¬c¶œoWÂë¤3*Ô jÕÀ¼….¶±Iz4J!^¦ Z¢E‚ Î ÷±ûØ2Þzïç?ÒyƒÞì`xRÿéò—ªí¬ªêß8^–¼”Þžù†èʾà {S>½Íú¶áwOLèöê6`¦¶À›ð¤¦Ý¯à &œ.T|_OÒ.¸ÿQtÝ'}]P¼œÅ¼æ]:äâm ]Έ]ìá"weý¼¢  _ÍsÿâôÓœ«/¹ƒ ÞÕ=%©b»]ÔtÛ>'½µF°Zðió¬èn¦Æ)/b#ºä:GH½çG®Ã¾Êyì#,\ [¢TžÍ:«ï² ”0ŒÑ—þKs©û«#²>ïþ?v]-“#ag¬[w?Oï¼"‰â3DïÜ[kM øß‡í¬C0ë;ô=€n· _ƒϋz#õOÚelMû¨2åô¦‚%˜è2^Otù0Œ}¤Ë¨ØÅV/hE€¯Ð¥‹{õ2>/ VÅËFêçbúT²ÛEmé’×…-ÉóÔÆÓX?xnNø2Þ‚¹<@Ì|)€G`ÔK>Ö8C¥Ï±ùi»õØ›vçs>¶¤Zî…|¤'+ú Þìøz¦¦¡úÌ 4©ãxYòRz{æE¶4Ýô\içãwž¡f;”£­º½º ˜dëê¹ã Ò2åŒVòE­Žóatá®”zrvÁ8«”.Su¸ËÑ8‹Âsºè+wÀµS²nˆ.Ö/.¨ÍQ¯c\*Ápk°8ÿ`N¼ÿE«¹]r†-¥b á2Ø>ÁMn·þñ‰Ã ž4$ñ¶1˜›¶A åÜjáÒž*ÿ¿òn¦¦'}l¡ÚŸƒ#¥wùål=`õѼ1Ø6 []âTýy:é¥5NŽ»lº|‰àŽ}˜,üç×ÞaM ZØtÅG0òà¬òüt¾CZ¶gFý£ße¬Œª¥Ë×`sa³h/u]Rp}4Œ‚Έ]l…p±ð‚{CÈQ)™¶ "N/lÓ.€YŸÛåŠÅ–ÁeBÍ …Ï—ãØ+x®dñ¥Ë«ÏfäzÔežðBÕº†2¦³v¼,/çäÁöñ‘.—-#Û.Ÿ¿÷‡OÊ»é^­Á°ôP­í¬*êÀ±HT»Ô€)“ÞSþÁ–m796¬ü‘d~øÇ8Ÿ‹>¼8 f÷î¢QZû9ZYó¥Í±3‡Æ<39P»P†Õ€‘.årž[Taà1]ò“°žÂ_’l»a¸Ee~ëâÁç“ÈMÆ‹ô›,°î.Z}Øí3l)Ç.£0v7Ö«gÕ‰ñ¢8ÊPÖMQ¼mÌ×àî*ןÇnõɘö¼öÚk­P¤&µÏe Ã…ÔÝ«»ïÂoI-ºnÐ0f3â \j‰Þy§÷…/|5ø«5MËñ‚G½ú¼RÙÊÑqv^cM‘)—aˆ®ÝÇ´^IÛ,BØ f÷Ã?.g8Ê £•5_NdÓUCP\cL«Ð.‘D”F pãeœ7-B—ó°Ì ]: <VŠ9Ä3pÅp±ð2¦û¼¤ýt¼¤-ñ?³ûT’ÛeO«a ÁåE˜éwzãÇÿ5~†àÅæK)e˜ÔžÕÉd ¸À>æóõW?J·O´§J“6[J¤\þGèâØ~ýøñGf­tÕ› «uVˆú·/dc|øáŸ‡T¹`n÷s+ù¼Õ¡ Æ<–Cñb“T ÖÈi 830É|éï l†139@»|ƒªCD´×Å”JQ›’oì0Ò¥+P:·U »ØÃŲי_žÏPA˜Æ€.oä,¼°^!ñ’¶ è“Û¥^·üUk}øè1€I¤W`üâzœ_Õþ.vf=0¾+ÒŒ¼„$|x.2 þLœ=£[. ô€lTw?bðR³aÌ!|©eÎÍGªýr “#çtZ'·nI·Êñí¼Ô9Ãu«Ô¯[CG"/>L†¿ fH'= /„¥ž4 ×êü.dBé²!I{\šË@¼È¤K=¦R¾ÈÅ‘áÝÝ\,¼Ì8®YtÉXxI;â%æÙ}*áëï;j±…á²nv§$ÿdÓx±ø²½wÛ´ÆÎ^Ú\¸À>Fä§)˜Rã¥A‹-%R.ÿæS .R×}^·ÒU׿Aêßv¼ð£ÌN5†±žÐŸÌt!3i^<¯kdÊ®]5ÅuæOp€yÿP®`dç¥'h—CôëFº¤yÁ„Ÿ)':Jp'àÇŽ±[2Iv±ÀÅöé_ÇB•bõŠ2]Jéa­¶$Ó2 šjðL)K|VñCº|FÃÅCéâ ]¬‘®öæ†/O›I‡Šî IQ¤W0ˆ>Óé‚AÚ6[Hç 6ó€®»¯ñR³aÌåÃ2té篶¼ÐäH¸ º$Âv^3^Lg×]¦ËUðâ‹6wÚ&®Éþ;– >-Ùžiõ}ÁH9äPº@S5bFtËåÙRG¾èÒÁTÊf)ŽÜx“p1xAÛXÜNØÇ?÷F ^X»8×-búT*U´Ù’ºŽpùí(]<ú/þáÔi¾\/ØhGc&Ïj¸À§)„üÑ©\d¼}\³¥ôÆ·.w}¤KêŒúÉY»’ÛÚ™ÙyÉäíBt‰ˆté¡Q?¥´4]bFº¤#+ƒ‹/NÚè㲺¨w­Ž®Yv]ÌÄ“6/âo¡vòj?¨áÂÒÅ¢ Bc#ÇàÁ˜ç§ø×tÑC¸œò$›3t9“'¿å!bKbL¯ýÜmè"kvD:Ò¤o.KÓ%LºÜ^prø/@—×Ëî„á7#Ò%í­ ºH»¢ªxqÓß1Ü“ ㋵6˜í™¨¤ º]DºœòfmCº|’jŒ‰ti\ ¸h¼€ÝÊ/4(_/E]š¥ËÛ˜ëoI¥®ô\ cw±t!º`u—¢àe|0ÖæçKA/œ mìÚwá¢æ„¢ÈwÙßÒž¡J}w1\Xº¤7BùõÆubó9^Bèb c«#]V.:@Ý BXú-̹«‹Ò¢Vø’‰–ý»4Ã~}Z»Ì‹t™g¸D Z¼Lr%˜¼‘.+„‹m¼œ0ñÆŽëÑszø„qíS‰0^:Ø&6xˆúÎe††."],º m,3‚êåë Ô”ð%ÃkŽøv)yªÌõo åg¡ß…Ëãà,ž‰èbH¢Í.¦¾˜àeáÆá²4]B¥Ë à'‡ëxºŒ–]Ó ¸±²H—…uB—éò²xQ/»ßIpc¸|±S´ºR²ú‡š•ävéÒ@pikÓXŒsõéÒ½:pÑxsÅ d ­S÷çµÏ%^ñïTlb‡‰-SÝû.™„–.@—Ãb›ÖêåŠÞíi¾ÆÌ4C¼´ºpQ++Ä‹Y,E•ú4\Xº âïñÖ‰iÌçx á‡Ö«$]Vƒ.ÒÌˇ+t†Q§;͹«n‚®ùò,ÖVv™Ý öäÐÚeF¤Ë"ú¨^í3ÅÑ¥ÑH—Þ•Â%°61^ç­xã4E$/ò—ÆÖ ]D¼,—! ³ÍÇDÍ—~ª­,€‹õ³“ŸÕ? bûEº¹kÂ¥\nÓX'Óå°–.ùÈ*ÁEãeÆ/iªaÜËòeF+—¸Ô7VÇÓ–äè)râ¦#I¹”‡Yº(Í‚-Îu`Ï8¦>ù\;óåÎO“pAlŒàR.cºŒC˜ÿøö¾¸ˆtõP»XéªkÚ4æs¼„ÐEëU’.«AD^"€ã!Â?Á˜ÈØ&²« cé̇ F‘ÑëƒÔÈC0'Yºôð¨ï-âê=QcÓD—˜–.éÜJá\›˜S‹F¼DÝê½ñ<#_(¨k¨—ö{,¶ðJ‰¦s§.Zº8ti°b$[Ôc8B9/&~Œ…K½·á’´Ð Šëñ2cÎYºä½įõ8_p¾íÆ„¥èRMºÔŒœ®ãé²à˜ÆhÀÍhé’öÖ ]¦%wI¼ôƒGÍïŸÂh¾ŠT½33´Äb©ÿ1  l@b,]N‘r9¬Ùv1ua%0Œ‰ti\5¸^r K¼@®>h‰´-¥ÈX¼h›XªQxËÀI¹”ËP‡q:]úcC󨝥…ñ’ïæ]]Iø²s_§îLqç¸Äÿð¡ökH—ÇS6–‚Þ7.,]R¬]Ö‰il̵#b*]¬’tYº x ¤UšÐiÊí¥]tá–A0@˜k†/”q™›ì·'¾¾±¬Â@±s$]æeÔ7fho¯VûâÑ%¯¥ËôŠá²6QÈq¬G‹—Bùð»ÌxVO3^¼¡’0èœf‹„ÛÇ‹åi„Ë9Ï–.6]$ŒŽðR…«™ø1”4/r†ò\â&¦ „^ý3õ9ö¼œsB~úÅ0– a¸ÓX(– KuéR3^0ÔÀ™H—iÇ4†n¬¬¥Ëº¡ Š—ÞåÔË-ÇÅgý›/E˜‚¶œÀP¹yòrŒ¦\bÃ†ï¾ kêQ–.¨\vfÁZ6.¦1Ò.Gµté^E¸^,ñÒtI@¯-/OgéyÜbØ•L±Þ/²r)/Ôƒt!¯+ÐE‘%ÅÔè‘^FµPÉK›íø1¨“t ÏIÎ [Ú.ßÞ9GF3%^Z¾-pé2è±vY/¦1×ñ¤‹Ö«%]V….x[8¤‹‡Ç/–aŒ$÷± ëD‘!`¼lÔæ Æ©ƒI]ÀÔŽ}]ÔêÑA£žÊ!³x‰'.ZºdW—µ‰çul^‹—âÓèÕÓöA½Âçß—TfK± MÂY„ËÈ€#]4]lñV'‘c\*Ùóº2ºD™..¸ ª‰Ótùp8gñ²ÏZ!$ç³q¸Ü@B ž—p,A—%¤K­xÁÉá8^.¹²eÃv1–.`à[/tL¦{–ÃK?%ˆ¦s!9bþú0Ý:ð>[†\}(éø"I—³'_‹˜ÆÎ v9,Ò%ÿàjÂEð²`ÄKÿ_"Êö¹wÒeìß"l)—xà+]ŠpÙ;‚ùÁÆ&ù.CÝúùö´Ó­Kñìví94ÉÛ;uùTŠðBvf Ë5´­Å eè#\DºŒz¬]Ö‹iÌu¼ "z`Õ¤ËêÐg9{$$2Ö6Œqr‹üW`Ô¥¢ý6_pg3ÜiŽ] ²Øv’.ý4ê¹rVûL»‡ÅDºûW—àÚ”Ó\-^¢×.‰È‚.jɼ†.,ftvÌÔMŠ–‹hßI»Ò…èâökéÀŸCä˜/]]¦îªw=pªöW.ä9ˆlVÍAzŒ°Ý;e­üœó¹t.‚È%ðR…Õ鲤t©/89Ç •¦NX¦1p3Fº¤½õCü"=°wO·UÇËWÈz^ˆùØW ÖèÉÅ%ꌩ?`KÊäÔs¸‰ßᕘÅË,F$¿¤¥Ë¹Õ… ã¥?mÄ QßìŒåsÍB9*l¹ó¥DTú•$;‡$œ…j#ã$]@³`“s -¥ø5¯Aðûa4£ýû;?Mp9Œ_Sá…ÙÒ>1cTÎ 2."]RZ»¬ÓX3±tÑz`Õ¤ËêÐ…Ä ÆÞ>-xIÛ2 /\ÕÁɃ)˺þð%N#l¾·Ëˆ˜òêGM_—Ô`=ù±ó'dµ/ÂpTR•¤‹¯õÐÍÒ cݼ³x)pDr¯ Ɉ±‰M›Ÿ'QŽÐ›6ÒébòJ3dþ-^°È«æ =nA¬þŒ’š9)Zi¥?4¯"]bêÛè¡wIßK5T§ËÒÒ¥F¼À=ÍØŽ¢Ë‚eƒ7]6Òea=ÑÅKËwWÇK?»*†ÙzêŒÍ—"Æ ½T‹  ÄŒ©ÿÝ‹Ò%‰QÈ;òl`ñrérT¤KËjÃ…WùLQ‹ú° ØÊ¥lÅ‰Ý A›ŠåŸÆlfõóçÐfÇŒQA1|V‚—œ©=mÅ휠éEQG––¢‚ÉCloŸ@¸`ç5-]=­]Ö‰ilÁq¼"z`õ¤Ë*Ñ÷¼9”öC´ÞÙ†1ée$âE)§áØÕˆÅ—Œ ‡OsËx¤Ë\{b·0\>èç¶¾²ÚÇ+,]Š™›Kpm ‚ˆè¶Åé| —"ÎåíºÀ±š;ÏjD.›eI—\‡sú4m»<­^X¼´Ñ6ú-Æ¿évØ#º$ž–Z}z…ÊÁ— ÐýK¹ö«’ *]–“.µáe˜Y—.ÓÆ4.‘0ҟ ‰¬‚½«Š—¡’ØÆdÞùcø7ktBâ¢D’.—;iŸŸ‰—fÌw9ÌÒå#€ ã¥Pñ™ñ”š¶•‹fËõ7<¯á”^)J—æY<ûìÁëF†¬˜±¸,9—˜3Cf_–R4 ¨ÕIçN¶¨ FtÉwB¸2ÁåÕâé2êií²^LcŽã%@Ñ«']V‰.$^ð_Ò ˆ—AÛ0ÆÁE¼X?ð›ÈìúüVÉ!L o t!‡Æ-:êÃëåÕ>t‰‘t¹9å\›8ÁSð¶8‹.Q EŽ[lI¥æØã‚¥ —´-]Ñ,›'=Q/(^0T,ƒØ«u—ë¯Û“¦«>â é2É•Jî ¡+m¦CèÂ5ƪã¥:ªÒeYéR^r—.dÉKÈL[Ò%í­+º x‰`PÅtu¼ô[¶±pÀÔ[%´£vÝzD’.—ôé‰'@—‹çEýøg,]>¸hõÂâE‚ÇÆæmå¢ÙÒ ÍYް§¥‹( ‰;:nùZ˜.ùXcÂJ]¼ä}_êÚ³‰ù² â“Ùl)f.]9OQ-ù?!\(8Z¤ Æ´vY'¦±¬íxñ3D—€]=é²Zt!ñ‚76O~æ)'1”/i»V§0:Z¬mz!áL¢ ¬Í¯ê•º­¯úhZí±Š%I—›S.ÁµIJk0^g ¥Î¦-¸4,ΛÂù-QSF€’ÃÈz|ˆ—o”.w…Uò„ÇÔI¶1Q/uúRÏâCÄêJí×%~LR›3Ñ2Ðå¹1”[džµÖ§<Ïày?¤ÆX5¼,Ajt©AºÔ„—y4ÛaÏ-AÚ4&ñ¬Îw]X_t!ñâ¡ëe±*^†JŽm,0“š/Ó=¦j Êi¤ I—fêç–è´¸’xÑò2I—./„@µY+Z,é5lI 2åO&¸¡’(Ü`®‹øZ€.Xž2Â)÷ü¬/®xQ·ŸI‚¦ïd””ø]`Ûú`*‰Êå¡ÚêtùÝÆ´vY'¦±„=«ýtÃØ*J—Õ¢ ‹êlJžæ©yß­‘xI‡Ü}›sKÞÔ·Ô„º aÖÀ…Ûúziµºt¹Y¸Ö&]Zƒñ‚àØ®Cc£²DÖ²ê‰e8ï2EëD†2ô¥šŒéS®ŸŽ1¬ÖÆÙd¤^¾1% h'r†á’²ùó†ÕÞ èò!Qú+ï3‹}?ïkýHÐ5ÆÂñ²ªÑ¥éR ^†Yšô¸tYÓØ€µ É'ä{¬#ºx¡Î«‘ªxé÷ÛÆB“×9—±œ'9ý8ø.(],¸\+Ò†6—oÑtiFé2ûQÁEðR@XâÑD‹©»ï”‰ãv},‡A2S³Xù =ˆæºh7>ô;ÓÓÞ½T(#¼lté’ß8Þ>!|i&¡¤—BbÆàJû.˜°ŸÏ¡t¹S¶k¢]Ö‰i,m;^üË0ÆVSº¬]H¼PNá©—ßøæN‰—7{/¼”SMyDóóa Ìþê»c·œ4b„ ½ ^âYM;ŽsüÍÀÅ¿6Y•Ï/ ,©{èþ‡ \tÿ–rîOÉ]©{§–*©Q)sŒéÛv[+q9$Ù6ÆxIʥ๟KË”Ä'w¡·*£Ö'zV÷¿ý«þå¨^blvìñ#Á*¾†—% P….µI—ð’3v›.Óbã½4ìLžÖßcÑ…Å ¹^¼jx£fpwéÚõaÆz0NûÀìÕ{òGŠ1.ýõY1ÆO‚x9}²INjþèàb¸J,ÊÅÛwt°EÝø«2Ípò·RÉ}ª&[~ß亀ALW±ìáÁ¢«÷#^Æåóp.RØcbk~ùöÛÄ»ªð ºëÛ—öqZ] ]¾yŠ cF»¬ÓXÙr¼ø‘ÆVSº¬]X¼ë%w—¿æ× DñòtpïE—²Ld_ÔFäᦊÛv%5\ú­±IŽ›³úÚo.þµiÒº áÅú¼m?¦åÑô‰pZì³vÑBO&¨Üäa)bD>Y‹.Y2øˆmŒƒòíK=ržó\„/uµù‹ígµõoð'ˆxÁž“ãñH°‹ïñ²ôú_….5J—ð"“Ã¥ CgQ cø7‘—ë‰.$^(Ÿuº*^úýÝ— ðÖXkTômÐp91l•ÎíjyÍ:éG%\/»­ýÞ®•—OF‹TÊõ—zt¡”‹ÑSÚ1M—^®Eiª÷“z9ÐgÍErgÛ¬õËá8šF.XwµõÿÃh±Í\¯lûCŠ._ØÑ.ëÄ4V¶/>аalU¥ËêÑ…Å ¹^%-Ù#;*f¡lø¥ ` _ÔÜP;‰¾ýÏß~ûí÷©?5íÖ>§áØ€{Ö®›…‹m25g/ÏËÀlÑ…ÛXuÀÄr38*únûþ[o½uëjÍ|à¹Ëò–spÒ­ŸùÉO~ò[wÐÐùèàBxÁ»zïÍ7ß|þšA:/ÿÎ.2tΦR8 ¿óÙÏ~ö+¯¨?½Êwz™BIr]¨˜E—„+º³åÕñ 4~ý-š/­`톳^ù×êxå÷ÕŸþêóŸßP‡þQuÇÍ ]Ô¦­]Ö‰iÌžÒ¾E˜ c«*]V."^ƨf’/œ ‡â¥1°÷²/¥#|ÉGÕëÞ;Ÿëƒq?R*üàoûÎÚu“pñãÓª9‹xñßÕ®‘W…-mq†ËÅ»ùø5Üûvlƒa >R†]ÈíâybËu)ù/u<©ãĤþØ\AôÄ×ùø?«þ}$^pij ÃXO ¾®”.^–“át©]º,û9]Ý¡Ë7&»,:ùEó=Ö]X¼°ë¥^à‘v$–X¦íZd’ÿ¢FÅmoññ«mj·»]ÎS±K5nû ŸQ'=òQÂduW—ßäãŸÔîÒ¹“G:¯±pµþ‰Ïòñ%%*^kîÒE3RÚï9t‰+¶±ÎRËx`IäÃ_ûØDR…lÁC}à_mH¥BßèGéòIm³´Ëú1%Bé"½‘VUº¬"]X¼H9Çâ/RƒwÑ=þ½—{©Éí³_v«Ax»>þT Ãw!²7îVŒýVà¬wV•.“>KÛ¿ |^R³…FßûSwëãꬤߖÜÏs¦=˜Ÿ.=š¿hë)tÓj¶1âmÑ/_Ô(¼õ-}üã;`j‘© tëOôñwTšþÃGû}ÿWE³7õñ+µª“Ãåú!Š*á‚ú³æPLøÛâÓìÆGérÕº¢Ý›Òê–¬Äm[èš`¶ÀC–øäU*Ÿø×æPò¥5•:‹â¥¤ËïîÓ†1K»¬#ÓX.Œ.l[]鲊tñ½~90ù¨ëx!ñ²Ïos/#á)äKŸÑ¬¶ä»±(³]16xÖ3«JÇ0¦Žûƒw•¶ðhÃ{¿x·uü¢©²…R $]6z¡tÉšêŒÚÒz)f  ƒn2Ê…ÕË~ØìâcGPEÈ0¶DB +¥ÁËòát¹!é²ÜÇ ;Ž¡KÎ^!‰fÖ÷X_tañ"®—*xÁ‡:SÝ6Æõ‡»mYŸQ.ˆ5VcÙ²ïè3Êñróh™ã~£\/}•Óã”ß‚¡ÊTU¬É(û=‘ì¥xܤéûèÒk»è"\‚ý@pU&°§q[ fÛ÷ž®49pùןPó:•jñò¤écØgc@»¬ÓØB]Ø0¶ÊÒe5é¢ÅËç ÜeãEj’xñÙÆœKY&(ÌW$¨£¯ò-žJ@˜"û7ªžµ*_ÐoÛòy»‹\°—›¯äëÕY»©²;NÏi³OºXtÑn}©þðKÉC昩Ž] u˜ÆÔcŸÅÅ có!HÉp!¼dk(F—•.ËàeÞv¼hº,èåq€hfuF/âz Ç >Ö±j¶±i§+%f‡+]Ô¡ç†y|;l»7=–>¶Úv1<Ô "«^ìu ³?ò¶Oº€xÙÍ¥ZÓXÓÿÏÝûGyùž„$òÈ všðCh%Y‘ånGF4P#u R‹)Ë6rt‚ÀÆ’±åA6OŒ,AÅåñèÎf6qM͸fbïÔ̽dìñ¡îºf¯gsëfÊKBv'v2ÎÞ [[¾T­ËµµUÝï»çyžóû=- Ñ%¿Szõþ8ï9çs¾ßsÎóxZtYã}žÏë‹Ï¾òÊqöuߪòþG‹.§±™%FÆ1uËÇ+õƒýÃ:ø/4™h ý(‹Xéj@ì~úñâ¡¡*Ï‚ËÁ Kü{Qº|÷vžðÚeYcé ]’r·b!¥KAé"ÄË”§«1ñÂÅ‹éAet ÚçYÝø—½T³}¸ÎªÈìȘ‘ÏþTV…¾gWA³ÿƒ´5X;^AÁœ‡óRÁ“,¸<ó°wƒ~ I4ÆÚHpc^æÍïå Ë"¤ËœxIë/’.ié‹Q¯k¼Çr£‹/rêʼn,ØPo¬AcR³ºjÁåU^…=óïy\Þ\åm,æËzž—_^ôRwY‡çYpùöR±E®”Úd^€./a‹-ó×Á¿Ð©c†vY>ÖØh€.ôúç§Ë_Ž.¬Å.€.ŸÃfv#Œí UB3vh—åcMèBÆXÁ¥KaéBâ¥K¬…9ˆ F:±%^ oL¿”fŒ‰¶a÷ã{¼þºùé²Ç«-]Ú¬˜³9çS-€.{µq·t¹aºˆKÍ£]®¯±ÓNŒéãZ Nc {²ÌüÉ]tYœt™ /½ÚÄ‹¢ Ÿ9ã43ÞcÙÑEŠ9õâ ­Ó51<'¤Ëj¯v!Úåê­¥Ëê…Ðå´W;T º<¼ º¼ä]‚Ha¬n%l¥‹wtí²|¬±†]’2ñÀ¦ >>ü{o;ŸzQêEN¼pñ¢{czªmäEmc›·98Ñ>ñÂNýpõ7u`L^:Fᩌºî÷·;OMÀqá<ÑSì)}…=§½rp¹aFòÐÎRãø=t ð‡GÙ ­Õpôƒ¨dr]êo‡Ñ2|T g5¾ÁNúA`Þåq(ÒÎNDWÔXù¦!!1ÖÃãÙÏ‹—]+]æÀKZ›xQtá/ Ôåšï±ìè¢Ä‹œzqà…ÊÖéMÆØµÂmún<ÖxÿˆUîÉL8SIµo›÷²E—5ÅwÙæ]´èrÉ;s~³_`ÇJÖ”RÞ_YtyÉ+ŽG1beìÞæQ,Ù¦gÙ±e÷œ~¹ríÄðßñT`Þ…5 /‰³£þÈÓøŸó±XÊØíÂç]À [ Æb‡`§šÂgXÚeùXci‹.dŒ^º˜.r JšÓÔ‹œxâEóÆ´KiÆoW½Z³¿³ÊÛÅw€ÉéÃµŽ³þ¦å¦ÊÆýTüp=Õb©¯m}õýÞi³Bÿ Ÿ=ÜfïuÁSŒöáÆ|©ýh,ü ^êÏi·õ+‡Ê¦Ì«kÍí.ìð¼“rË ­J®q!¡wŽû¥“óã%@—EK—9ð2©&^]º´àÈ!ë=–]¤xQS/¼PẼ±Ý#íuu —ßT±ZÁ»¾„hô’·Æ„Ë»â¤"ì©L¸|Påm'1Í6í(…!u¼ß{É¢‹çm…ò¸¡È¦FMíFkÆh§þ“b#ÿï„«ýä-:§ÅßÑ7>’Hćú½Ç,º°FÙO`›~ù <´¬¥]–56jѱ"H—BÓ%-§\(à˜¯©•ü‰‡½RÞ˜v)eŒ‰¶ñ/žw§eA¥´-ÆÈ–#ñ펳xŒØ¼ ½•Ò÷¿î¼ÅÝ oªon~Ýó~k-SgŸÅc¥ùè"òqdye íÀýÖK1Z€]×hÉVO@)|Ã’.Ûˆì€Äãú{hHpc¢—Í›.7!]òã¥WM¼Hº„”u¹Ã~åG%^ÔÔK/¼tƒÞXÚ0ÆÆxl™;=ïËÛ&ÇoøYGr=kј8©XkAÿjÐå²W‹]'&xœ§¦§Wlú<«Ð–1–’ÛôAU7è„!º ÈT1ê˜8?t°UPîŠéÊsê">„-Ö6ÆRÄ©¥ Ì•Ž¡eMí²|¬±)‹.I‘Y¸ÀÒ¥Ðtáâ¥×W»^¤z‘/B¼(oL]J3ƨm„Ær^JïÈ/zÞŸL%µ‡q[*pÖ>ƒüf_ÐÞJ ÇF÷ý0ëë6|òÂ%„`²KíÇ`ÑaêQ(&»Ÿ±WßóôyFñiœì›v!ÁiŒ©>~~¼Øt¹é’/i5ñ"é2fHë=–!]”xQS/A¼Pñ½±QÝãÚ¿+ÉZPÅo4¸¼ŒµÂ§Ýs£Èv°“ÞÕàòeqRÑŽ^ÅæfÊý0£RÏ7T‚ZØ”2·Sþ€7³Gž graˆ.íbs¾Æè‚mqÿæ®Ç(°qܪÏZl•%]þdKöJ—8M–^ë¡eMí²l¬±“.hŒCºœ.ieìÉ©®^ލà \¼HoL]JYPÔ6XÅßUåVùÅ*œlìâ€Édy€à;ì³.é9.nî‡Ñüÿ̾_,+rý…ˆ-ÍÍ?©ò*T•ÞÌΚe_µDæuÑ#è2EkÔ¸pálÉömµ/%VŒUg2m"Ó2;IÃË7ØýŽré•ÝÑ ÁÆk\Hè'Yؼx±èrsÒ%/^&åÄ‹ Ë@Î.Ö{,CºhâEM½ðÂË7àMiÆiÿH ŸUyµ //W‰Å`˜Ûe”«¿ÿ^å­QxQ'ëýoì©^>duU$vɶq¶lÚô÷¬Bk ÆØIס ʼ." Ò%Ý1„KSÉyºì¶¨-Úälinfg=fìÔïßà§O€ty…2Â$ÊJEÚ%S»,k,mÐeJL”Zºœ.ø¨“êîD2dþü\¼HoL]JåÄqŒLû ­Iß»xçÏÛÆT0ÀH¶D ´ÏJ×Ü_O¥Ž{í§JçÉþØçlšÈþÅgu Ϊ›Íu­“y]tÀ]ÒM`vµqá"Ø’Ýr!±ÝºTç²Zµ O‡ g¶CJñ™ýwµ“Š—SP¡S|Gå—Y]ÝûŠ\àõÄ–½uÕl¼TõWÒc'­¨ÏFÆe^ 0¹X*ÓieG©Èi|h¶X½í]1d³…µX¸áç¤-ÆÎz6ä—á6} ÏvNsoÌÔ.ËÇ5èUd¦Ò¥8tá»AÕÔ W/#ò¸xÞ˜¼”² ÆDèÛ>ž5«êÒåÍ{ ±ÜUYëC‡[0Mü®ÀY7ÇÇSip±žªÿ8¤çîau»¯ž×ÔµohËV<ë‘GöœægÕMcJʰã™Óex6mfH¸H¶4UÂZ•íú¥pS¦ˆ&-£3Oå°N?üÈì)zýà”´¸Îd.3®í3Ö‘à0ÆìÞ}¼˜t¹ié’/i9ñÂé2¦I—‚ï±颉mêÅÆ /aËKkÆØ€ŠMxñR—WݾzÖ‚TŒ¶v¸òI8iõª—W­1šY±àB:µgõ‡—á†ý{W¬xö…õÏ‹ë–ï­} 襇ÿêôK´¢#ŒÍ†5ÿ‹&ŽÌÁ…’-+ï“-V´E¸TÌ`ËÚ†nøÒç ½‹×ÏNzvìuYQ9¼%®%“m h—ecMétAc¬(Ò¥ðtIjšz‘êeÀ/Ü“—’”¬ø}X7þáÇ"]\ê¢bË-à&½_.Ïú/¢½Ý_‚OeÀ%vþçê~ûú°†Þíÿ^°åÅ< ¿zªmÞ‡©õ Æ— C¶è€ºLC¦q¾{Q±¥Ûbâ5í÷Wúú.ÈÜÆ!ù¾zYž´ä:<èÙ,-,¦Ô{-A$ô. ÍñÜx1éróÒ%^&ÅÄ ÑEÔLš™ ¼Ç²¤‹&^´©/¼ˆMolTc¡c¿ÖÔ ¶ ¹Â“ØÂ.öªVUýâÃ%qB=UÕþæØ‘ï|ž³eÓmð“ mz­/yÎBû ']k¦u©¢èA靨²[lÕþúx)Å–¡ˆÞb«öãýž);Ǻ­AÍu¨)³´Ë²±Ætº@-h/Št)8]ºŒjêE¨—vS¼poL^JXP²m\Êü-ïo/OUÔ–ïÊåB&[®”ò9hXì¬ ´bÈ$ïý€.·å éB#°©åO]¼èS/&^D)kÞXZcBÕ%\¼P¡È¼lÉu„ÌÒ¢_¸EpaO¦š{†<_ãhùÞ÷›fEä‘0ÚÄ_dt¹¯Qrñrž)”ˆµ©…Ó¥-œ‘l9?Þ1šæp)óÂ}ã#j0ve-ÇËÐk}b¨VRC»e@=m©„ß›æíe@zŠÇ<òÓ;]¢úºÏåbM)ºLño^éRhºà ‘Þȵ©3ß‹/bvN³ xÛH¾%à‚?h„á*+‡L-ð$]ÚræFË›áK·ùTA¸$)Ç$nLÙ Ö 7¯ÅbP| it—áÜËW|3 A©f ‹_¥¼“¢-Ò–Iœ–‰´Âëôñy`%_ªÃ’.(^f#×^Øñ{]¼$X†Rþ8’ùñ¢Ó¥PÒÅõ(½|âè’åŸß!²¼|袋}êÅÄ‹(fåJcŒ«º©ñ½pU .ñ¨š“UwåCº©¢ÓEÂ…=% áâMxbñ%?Ì)¾ôpº|Á§IŽzkmhÎØgË`ÇboP?Rv®D‚åÔaœo9Ž—:‹ Kpg[& Ë–ÆÕkÇIïœi™%]´uŸËÅkPtIQ¯!LoZ/úÔ‹ßS¯áEˆ—EnA Påï>,á‚?@3dJ®A¾¢ouÒeøÉpÆ ˜çK·ñTA¸LqÁ„‹ÜßBSû8â s^töHº¤Q q¼è‘Ö†§í¨‚"§1͹”ZÚ°4°×*íãBÚæW·|é º xiëSx™–Å®!Á2”æÊà•/] ']“æ/œ.É!]¸%›ô?t1Ä‹>õbàE”³òƦ¸1"Ô6t©¯…\|È(¬¨’Z3•ÒW ܸøO*á"Ù+Ç6 gœ/G[$]¶À6ý! /ÐR0ýÑe‚ïo9Dl!$vªD[\Ùâ §I /±’hB¿_pK¶~³ŽžŠðRy/O) ™P%]`–5–táåE‘.…¦ UØ); º0€2^¤xi—tA *Dã®dï½.ôèPθà` »øêDHå8kìä-š/ÝÚS™p9t ž°ÇÍ0ã"زö…u„t»åz°Nh3¬«Ç‰ÄçË”7––3“šCFã!j‹ãÜ2÷œñK¯`2˜¾#‡wck)£ü{Š/Y>À*Á_Ux©QÅ®`cs§9·.”.ŽÇ¡Æ!èÒ•³.Ý“¹à“-WºèâŘz1ðÒ©ÅvÀQJc]TýÇÒê[Ñ:âQn'ÛCæô$—.½Å¦‹—ÃR¸¶|ï‹4µ¿?]C§Ð/G¿Et)#Á0P/MÂ{ZìLôµ>:Ö-à"£‰·…Ûý/Ý-Œ†û¾—úw•4ºSú…è’e0Ä™·â•8f¥⥔ϻë>—‹56*è2UÌ©¶ÂÒ…§g6Ä‹>õÒ ãEŽ¢']Ðÿ"á2™ÖàBÞT©f˜š!ºB BºlÁ&b×]07Æ—nõT•&\jp7=ZP!©[Öîôý /]f¨£!¢Ë$ÕõC+¹záÞ.MùÒÙX*áÒS o]!‚ ¿Fxá™[;¯ðÝa¼\£ófÅÜK¥¯‹ŽÃë™'Íq¼(ºTºˆ>íÑ¥£Kͺô±eKC¼S/:^dIso,ƒV.ÉýKÑe œ†¹ü`\ojàVÀ¥ì”.Š-`jñ’&D l£Ë/pÚ#ŒÅqîe½1¥Ot‰I¶Ð †ž§t¸Œc+:&Ø2tÖ÷¿‚x¹/ÔJ´·¸íÎç· x””Çq††©—Ô€xñ‘.;Ër–ƒ56%è’,¢t)B~—^ß7Å‹6õ2•Óð"GÑ3œ.i•¡+ÒáBÞ”¤KÔIé2LtÁt*˜áK·|ªi.•É\f§x’¥[`ri-á¥iºU§Kš¤ ë÷ißK¾y»XuV*ÌY]G\"¤òÍŠ˜/ã˜rRâe†J`ºñ).~ ªž ŸÚŸÖ‹] Á0ÆæƒK>¼(ºVº‰G;Ò%š’ Ær£AclùÒÅ/ÆÔ‹ŽQÔÜÐΊù'ã;Ñé¿ÞnL» ˆø³Å¥‹‚ —‘Ã[è9^Dª+â Ðåº\§Uß´’3¡!<Û¤ËàwÅ>˜¾„‚ ¡%©Wk¥ /œT·» è³zÒIXQ1xÖ(vŽÝ›.yð"éRhéx(¼{7DäÌvA…ƒ·~€3|ªeKS¼S/^dY“76•Qî:Œ¯„ˆÑšr+Mºi.]z‹K .\Æ“†nñu¼tSRÔd¦¯žèÒ¯æÒe§d€æLHOìISRô_¨p¹5Ù;q('_^J î¦Á˜fõK®•mé{<²Ln˜ð²Á×ÄK)ìwÙ-†=Ã[²àNK×ã Q¦Š)] K—.éMÒl$u&åÊ15Ц±×™ü±Ã€ xSãr.€²|1!]¶øœ.½B.¹³P¾Ð jƪáÌ,—É:›-J½@ç?;€k‡;.ȈëBTpõ2Ikž:+[h55®Ê… —±Jn|%‡¨oñ"ð2)J!’©ŽSæË-=|™Y÷†CÐîÌb'$hÆØBàâÆ‹¤KÁ¥‹ýXÔ8>‚µr¸6~Ý/N¼Œ}VèbˆsêEË,lôÆ"1:K¦oÄuT…d{+•Ó.r'A1é"áÂ…K[|¯©[t¼< #/ÚŒ½Žta˜¨NPdÉ„1QéÇÏëžXÓŽRX!Æár!J>YÓ£’-Ù…Ý+U—jÌŠM ™ìîŸL”\;O8”$ÓkùŒ/þQ†º*öÅò ©ÿQbJ²¨œ J—)må½>0RS/€µïEŽ¢q˜2&{%wpIËʼnst“QËÒeXÐ%­5`Æ|AÍãpIã¡l‘êeö¦4„hâ:¤ Í¢†Dx9€ã©šF±d¬í¾ø˜+.\2Wäþ–aÑ‘÷(¼ôÈaÜlæœÈ«ŒmsJ—¦öbG$hÆØÂàâÄ‹ K¤‹õ`Ô8" fJGKl>+t1Å‹9õ¢ð"K›Öð«Õ’£æš”ta¿Å×5 €ÔH‹H.\3ºEÃK³¾Ÿ¥™èÂà!ƒ¯ž¦_Í× Ç®÷Ñú–¨‚ýƸØ[ÛÝ[`1ìoØÊt©O¸7†EItI$žÇ¼.Ñl[÷©f)^ Ìx“Ñu7f—<`&srw~WQ¥Kaé¢-q4Å‹œzÁÅôrß‹Ew›IìŸ2à:¡6@&Ôaúb2CZÐ…[c~^À,„/ø‚Êãpi¡ñɧó°Eª—A°)ƨ-¯tÉVÇEJJÄKs"]¨åÈMlH%þН}b˜HgÅúãÛúxò")^8^:TI¼Åé2N))gá/²Ø Ê[(\\xt)†t±mRÑ%)‚#‹•/æ&ÚåLS¼˜S/ /²¸Í½ùÝæ÷áÉ¡s<- ­k2¦]į÷“..|©Ø:§n¡ƒ&Ñ«ÕTÆZA!]$^`6füºœÎ¯´É“—k|µLt³e]VÄx€“ ÓÔ9\%ð‹¬ØPžåtá))¯ãî2‰!^VâŠäaãѧÍe9K0½"4v·h7Ë€.ʳŋœzÅ™T/b-é2 ÈêpQûòó”¦5íNH—-¾¤K¯m“3?_ð¥1Fpù­ïRqwº~“ÔËyüpØ–.=mjÿ ãf#rGTm÷•ˉ4•MDÈ·¥øHM†xáx“Ä»D¡|OЂ1ö›8Æ—xÅŽHÆØÂáâÀ §Kq¤‹ùp½’.]2¯‹è?-klÓÅ/æÔ‹Ä‹*o¾²aRFÕg«˜/¼Þœ6¦]ºUˆ¢ÑEÄ3"áR·7nñÓ°%¿Ná¥3ÎõÀ~—ïŸUû_h¼G “å| ÔúxŸŒ¼Gp‰Zl:¢ÜíÝ(^¢^ÄË!8ó#¤Á¬>ëz ¯Ë^d4@!^ˆ.ÓFRƒ‘Η²E––ƒnŒKº”.Sz¸Ö©àzG\4‰ï"Ô‹EóÊ96¦‡ñÍxb"a”iiÒeXÑ%´I€™/Øþ„1Fpy¡ilaG# ›zx´¹.é\¸ZãKº)Ç‹DÅŽ°Rc/%)—Þ¤Áð;›Ä»*ñBx¡yKN—•~Ëm$]˜xA ¼ˆb$HcìFàÄ §K‘¤‹ñxiI—)™×E6˜†Ï ]LñbM½H¼ˆç{\"czl1“-!ŸÓ…ä´^XBºLúÅ£ ‡Ëa‹-¡ Yð ¼dYà•:p7å–èy/;THK¾/B¿ÈÝøG4¸(¶@À&Øq ]j%//õ\»`$˜gýÐwIºÀ&Mì ¼pñBtÉÞ7—òŒÒÝUä°r…¤‹±÷×/bê…Gê…FѼ×Ï|dÂE²e¼)AÃÈ)éƘ ‹eåÌÜ|Æßç2­³%V“¯hJ³}/Amºô²W‹K¾ "¼Œ³Ý#æZø*ýl‹·uël×èƒ&%^t¼dÚ.§Òøó¨Ä’ /€aŒÝ\x!ºMº8)è’ÒÅ—/æ7_Ît±Ä‹5õ"ðB%qp" &\d<1ä”мPѺìÏbKf‘èBp9uJgËÞCœdQxis!Q,ï£cœ/•Ð{O¼ ^iy²oBÒåÔî–{\L¶ˆ|0½| ò@·…—ô(ìñ¾Séc^—¸¶a†ã…‹NÓ“*—,`ÄvÀî©âJ—BÒE7Æ‚â…O½ˆ(F\½à(úQÝ2VpQl©FoJ¦R׬1ô£#š1&éÒ\AäÌÌ|äÆUÕ[²v6GÕ’ ‡ØÀ \œ²I\0ö”±ŒðRw*´lé ñ¶Ø—ÔØräp¨Å^U¯‰/ìw m¶ÑÈÆûf%^¸x$pcìFábã…èR<é¢á…¾9†4 Kša;é¶¿ù²¦‹%^¬©(òŽdÎ>¦ ¶ð¿ ºÔpÿgTk›I1,]¨Bºeo,<•‡,Ùép87$ðÇ‹Œ.ã^—³ë9_ØHmâ<íÚ¯€¥úD—ñÝ-¢ÅFÝlÁãkg-´ll Õ”¶WÄ4N†U,Ü«ßú=öŸ\çÔšPxY7âèò–êéF˜ßK0Béw'‹»€t™2s|[â…O½ŒŠW/0xèÃ÷¬ É–’jîMIºhÖØ˜.b!èâ²Æœ€ioÍǗ9+«ªd Ì &ó• ¬™nYÇñáû]Ä^—žN/uQÀÇT.&[\ÕU/^fe’£Hnì)ÍV›VÅ~‘@ÆØÃÅ ҥ˜ÒEáeL8cY%]¨+|óeM[¼XS//ÃrK$cÂeT“Ü¥ÓEÄKkÅ4)ƆE¡‹‚‹ôÄbaþT6Yšv”âP´ën /u°›’ïuÙ)ø>áe.kÆÚÂÉ.­Åæc‹ØÉÏ÷¼0Ķß&ÔË,_3–­#ì0/hV£¦zþ>lË@—:³¦7fÅ[Š€™4–€øË.VP<[¼ÐÔË€|R/ëáƒíÚW~¹|ß. .Ú|‹\´%颬1¬…ÇD`ñ´N—<Ö˜ 0“³N¾œÜŒOÅn.ªª6ßÒ;GžÆRŠ»O+Çêa€½õ ;ö=0H+MÒÓõž×Öýåååû~ÆZÂÅfK ºf5ñ¢áe×>v¿ý»pñþ$…Jæú%[ªŠý‡”ŸN- .^Nn>S^þà/¦t‘xÉÐ –÷‘4ëÅzeóåMK¼ØS//Ç2På—/c’pQó-3rɹì§)Ž.]:ÄØ°pt9ùÍÇüÁoëpQó-eøT²™Ö!&c…>óÐCíß:ÄŒ=U¯b¾ ñ“H™Õz¨Ð¹ŽÝ¼ÅJ¶¬ÝmG{ùùž8hZ= Év±ûÙÿ÷ìQ!væQmBgñò,lû_ÿ#»áùÏYË Ä[`TYÝ"kŒúÜŸ7ìOáèbcAñBS/ ò·H½Ô'ö‹4£ ._2ò·ÈE[’.Ò#³·‰cLÑ%¯5æL&à˃ÛÄSý ‡‹1—Èæhúb8xÙÀÕ˾”HÜz?,4±Â!^^“'U|]ÀÅÉ^]õ¦2làåBX]j;‡uñçm£‘ŠýºVìÿ²8¸(¼¨²Ú>]Ô~ø mýwh£±À7_Þt±Å‹=õBxiSõ«â €‹>—¯B’.5˜¤NOñ×.dž…¢‹¬¿.ࢯëÍeÂÇdŽb•ð’Ñìu˜zqI—¸È`¼?eö#ƒQÅ–.‘Dq+¡› Yx‘7ìÿü+Ó=i¿E›y¡¡W†TÚnzc®0üsF+«[ciU¦ˆÒ¥€t±Œ1‡x°Rß¡z¹Ÿ½gUÅž={à}Ï\vù[ÔnFEaa-lY+†MºÌecñå$ûÜUµ—/_®àO58n¬KçòcrDêåuýà·bUÆí“ö@=îËÏ8Êœ«ê#ÛáRÛN?|.UÎe˜ÄË‘_¬Lû¥K—øY‹ ÇË® («=—ñÙ\ÜfxÙšÒîWÒœäû›/sºØâÅžzÁ~ ‹cÍêÕ«¡ª–#\̼“j $éBÖØ¨&]F娰0tÁ$ž +´±N,ÝÓ9ë&‹è'è‰/?ÕÛÆ%Lñ"Ö ÓþÉó+ÄY¢V`‹½0èXÙ Š—ê֞ \Ê{쥗^|œa%Õ0U¢‰—‘h|*Õ€šòZcóÆ(«?¾õŠnx™nøãeAÛ Šk_ŒÇ>ªÝ_åU]¾;k=¯6»bæS»]¸5FÑ•àc•JcLÑek,/'ÙS­þ%ÿºŸJÔÔØ[RMÍé‹?×5¿n¾àž`†ë¤ÚDbbN¶ø”F)ÛiW×k‰íìR?ƒÇ7N³KAÓMÃ2В߉ùý§a±ï¹ßâYÓ‹3„^vÁ³¿Ç‡—<ïjqÆï²[]÷IŬo¾Ìé/ÖÔK¨#‚űêM<¾ U•gzU9µš @k,­I56,]NZOexbN7Ìb¨Xz÷ŠŸzFÛ¸ºE±…¯ ƒ|/?5kk±Cyw ˜„ñ2s0! »”÷Òt(î F—€1æ/bå#Š1ØÓ”9_å¥î¼C—«¼~;7˜ ó¥èBÖÕ‘‰Œ1.óZc6`$_þS•WñÁ/Åq‘=U\'6#ÉÕ5·/Fxù‰ý‚µó·Þ³OJÌÃ^0MvuMÿœÝïyŽ—w~S¼Š..cÌ%^´pÈÉ^›·Ù¬;wTxûô é‰!uºLñð$]4cL§ËXc:`RÞE“.¿¬õ¾‰™XÛýyŒ1Ës¾à~-ùNúæž•{cbÃ>«®m)ï]¶±G—âe&ƒçn’òXØ Ç6ï¢Ù®ß®]ì¥â‹Á· Þ/-¶Rv[ß|ùÓ% ^H§Ñèj,´Í»Ýì›Þ\ HŸé!EŒrÐ*¥‹>6,]\Oµß˜gÉ;<³|1wÒÑ’¿òÐksÈžÓ7ì×ðy˜”÷9‹.yß<Åcb>Ýžk,\áh@ûµucóXc:`R޲úf1kÔ6o•I—wŠ×b E§1æ/bê%×Íþ™ ¬º³W½¤ƘA ¿ÖEÒE7ÆtºÜ 5&ãyXt¹,çÙoìq¾ }Ö‚Nšãèãæ1ÞÏ‚Ë3§aýŒy zÞ¯¬ÆqɹÚ`‡çýÚj×ø‹v¸îw•F´“ÊøæËŸ.Añ⋘b Ѐ޵ú¦ÕXü½.cLÑe@f¨$é¢ @×Sõ7/êp¶ G…vÔÂØ¢Ûk¬“u8Тzˆ„«¬Š:¯ïy¿±èR¼ˆ.ncÌ%^¸¦OöÒ›ZUçŽÍ૱—fŒt QVT’.º1fÐ冭1Qþ\~ù!L„,®î8^0¾˜“æ8ÆU4± ]AŸÚnAVÛ¸g³šºQºXÍúí‹ø‹G—àý6ÒH˜BØßü3@— xáÙÆBXU­®éÍ—±øåøÌ° $]Ú)>Q—.ÆØ° t >Uj±t ¶ W…ÖŠT¡èò9˜4²éâh@‹í!‚eµ±¸t±àòÎíE»aè’Ç Š—ÕM—Óêdž1fÐŒré¢c]c9é²Ê«HŽ.‹:iaâ%H—xý  Ë#Ë™.§i|N!ìŒoþ ‹-^D8äî<ý8ë*´ñ™aAIºtç¸5FÒÅ….·/^»ÛFÿ‚èÒ_8ºôÏO—GßC8¾à­¥Ëª¥N—<Ƙ-^B2ý ®\º÷ñv5öÒ1.´ôŒöºø†1fÐe‘Ö˜çýkÀ+Ÿˆ–\áGI4:.ÿ¢%¯MLL˜ÿäzÁò‰S 9éÀ•§Ø'NA˜Ö>ø[Ô^2ÎØ™øõú§×¯_èüùó×ëáð¼ß„}ùì–¦>fg=ïÀ'QNÑÛº {à°¤Ûu¿ËTÅxî ý›èbŠ—.½h”ªê—¾Êã9#¹š!”t‹0üÉ96¼iºÌŒ¹žêá³k×®åÿÙQ©¿Êÿ‡­3þÑÙ6êãì€*-g-ij֯Óqv½ûÀ®gMãüÓø7—3öЊßyöÙgÿyÅÞ{1Ò¥«í¹mño˜GÆ'ìfî:ŽŒ;¿`qéòAÀ{|IÓ%¯1fŠ—OööXu'å=ˆýCwÀÓèBYÄ)8r©iŒ™tYœ5¶Ñ[mÑ×̸&Juϯ38—·Ññ‚ûDöåyNj[iÝ•<š«ð¶èÂ.Å ñ.w£ÂÛc5ÇS-hD¦Â»lµk,+üÂc] :ÆWªnÌs¿._äÒ¿ùg.ºxKźŮ—Þ*«oªðþD¬…²1IÀÏ ÍŽÑ¥±áÍÑefŒ=n…ã©´&L¹WmX. |oWÛÀR˜M«³òÕÂî1ê,ò-£²:ÁC%ó¿dÑ¥ÊÛO©\1ÚX´/‘ˆ»Ѓ´¤‡?ÒBV•5vB[t}ÁâéÓÞj‹.æÇYztÉkŒéâ… —d/-øÛðÉóg¼”-{½÷hÑe¯mŒitá (B­Å0ÆLº,Îû^Êžvñ^UîD¾cŽøóÿÁñ‚¯ªìËt|3ïIó†ÖñecS¹}^•=íâÕD©!ÚÆúßïUÙ®qð©æG ÃûÈ~/e[^¼/,Ç# ö•WÊ÷{•šxÑ¿ùg‚.J¼t‰¥b|×ËhÃ>/e›öÞ« ½Ò3B‚.ÑJLÏW6dž7ADK.ܶßñTïiçåžÙëŨmTåi:a¾é¨ïë ò/£uc"ÏKZmŒyñDǸGE’JWz†—ÚvÕÖyÑ’8ÆùG‹Å–ÖøSö´‹ñq–]òcJ¼páÒ¦iÉðÈóÍÍÇ=kØžòjÇB¾ðÆ cLÑká”.¦1fÒeQÖØðÏ«,ñRáÕjÍ/ÏÈËÚG)/xA#û2ïÍuÒ|€¡=•$^r¯VYâ%…kYŽ\óuñò~•5ör=Õ|h¶$õUÖ°±o¨øR ÂÀ7pßO&Ë¢‘¸öÍ?tâEèúgø²dö½WYßÚ¶ŒœÚ´B¢óÔÞ< »=6\,]-Œ-ٟǃOuÕê’yÕ©yÑ ¶KÖT#ÌuÔ €§É—dþ5н$^Ú±D_²¤ Tè-R¼D±Ú èªèø@wÎ •„˜68äø‚ðR£ÅaK6Ì^pµ%]жF­ t™ÃâE ª]áÅ:ãëÙk½ªŸAóáÞ˜aŒIºðZ˜äÒÅ4Æ,ºÜ¸5–n‚±½±Y <ÕÌ<#/‡/Æ/e½à·­ìË8ô²OÚÕ¦µŒ¹ƒÞŠhµû<ïcÖ¥j+®e)¹ÆÅË[$^Œ½Æ§O5'Zˆ-ì(÷Œ½—Ä u¾Ü½õ¹G^_̸”zÁí~šºò«“0?ò‚ƒÞ؞̶ 4õ0àg¾öÃŒ¾€x¹¶eÃþy©G`KØo/Ua±õýù£’¶\9ý¼ŠÍ°›íÃ=PVÙìm'òðeÑ„©äÁœ{±‡v¿3ÍÍu³Sª¢ èßü3B—QQ|\¸¶ }̾wí*Ø‘÷åÕ¬8ºë®MÕ¼ÉY!ÞõµÓг,µklxƒt‘hA¶`Ä¡øñ+ú§zП× úb"_Çw²³Æ¨ì¬R•HiÂ`2õ+‚Mû*dw’¡‚‰Ì.‰3sýîxÖB½%ˆÍsXc-’-‡¾».6d–®çI˜/ÈsD›ñÙkWÁžÊ°ÊlÚôµ%L—¹1Ù8H¸„$[²4TyrôTUàÿÞ?ÄJ|DT‚Y³Ã&ºˆZˆ{]Â!Û³érCÖ˜Ê9qž'…O•Úš ÏÌ3ò øbêRÓÚ n;éì­ÙQ< ù²À 7Ö‰é!e'Ý/EŽâ«×JÔû’sT6V®…Å~Ô‰½Pða[J1ée½VVÛîÄ 9-ùù²”^ù¾„Ù>ËÕýª€¨»¦*Z»þÍ?#t åtá2ª­¼œ (U‹ÅñOw±ÔKV̾LéBÓ.2Ö˜56¼º(´[@¸$â¸h÷Œz*³ÖçžÙ¾ØŒbÇó5 0Z­HýꞨo.Âà½oƒ5/´Ð›ZÐc˜ c-Ç¥t$ìfp©kÖ†4G¼(o̶ÆZ[V¶œÅ΃9&Ëêo°‰¤Û Éd 8.uuåZ•ìÎÅÂK!è2·1¦Ï¸hºå¶n±lò½Ç)ïg?Ac> ‘œ\p<íÛtµ°†§×³Œ1›.7`¥µÊx>6t†žj#,èí Í3ò²|1íRÓeò7>˜×iÊå^-¯œD|™0e"JrAþÿ’—¢±dâH™¯øRÏSŽ¿_NÙO+ظ ’„K¼8£'‰Vl¡ŒÊGYYÑ¥j÷}5„¡ùjü9ùrC„Ql ‰TÒ¯þ˜ ´–=úuø§ç¿âk/ê›6èÂg\¦B¦'Ö.v½ÈôÐ]t zá³/cAºPñ ð •öØpÁtÑÐBl¡ÊÊeÅŠæD=¯_ZïžÙ¾X»NÐ9Ñ‚j÷ɵd¥f"Ø|„ÁëG$^à׺dc¼˜›Åî**¦ý Tr3¯…â~ûyU¼(o̰Æ4´hl avÞX]óqÙ€ZÉé™ … Æb 6¢8kËý›¨2gVPæ¯-YºÌiŒÉ=.iK·`À1^­×ßÿ´ÞïºÂKØ4ƈ.¢’ta"Æ2Ælº,ÜÓÓÝOÀÇßpeûý[Ù[Â?4Î=ò²|1íR"çã׿þí¹gÉá8xðÿ³ú\ΗlÛ““s½1,1þ="ìÑã^_\à¸ÎŠ7ù?uÖÄ‹ ˜níohÙÝ.ß…¤°}#ì†Øœ^_h¿Äl9¢DÒ¬YC­ù‡Ÿþô§C˜ mBà M¼¨oþY ‹ØœSFNc•ëÅÿäõ×_ßù5$‹T/¼CÑz'êøø´K75f F-“O"[P¸påÒŒ“ä¿Û¾}×€k69/¦ ÑØò7 ]Á<ø3sµ²äËtÓt~Â`¯Á”¢ b¸¼éóŸÿ_ÁqŽâKœÃe¨1Ö³bïàü¯ ¼(oLZc:Z¶œRlñCØì>†Å³CuìRð78^üÂð…ØÂ‡—YlwýÓ?ý} ¾ÕÚï / Ë\ƘڜŸ›’ºeíN4ÈÔÐjýP,Æ×ûixÉÌ3@—s¢Öðy†Ë ÐeÖXÚå@ XéCÇÖK”Ë–Î5ò2}1ýR K(<×l‡àKçïzóF$‹hëâß#ÂW@lÑð‚|A¸ÄXç3ÉfëcC1ŠPVÀ‹ùTôh½çô¬Ô—2Ø`ÈN°?Ss’xQ|91<åÌ|„‘lÉv`i‚ ´/°f1ˆdìÃ&ó|™6ñ"¿ùg€.js~24jæ4–¹^]Xìô¿ÇÀ²b¯R/¼O‘½Ñ…¦]ø†±ž¤#=ùÀ  ¥÷wTCil/” .ðÝ¡7œ9‡g¦/¦ —|ùÅóÆ^­Ü#šcÍpÍt> ‚ë'ÃeÖá> Ö–¨xA¾œ'¸$& ƒòdsP÷£ã/Ò#kÌ@ËðÊuƒ’->)—£ðíêb°Î©„Ì4—ð…³…Û¤B¹à@jÉ`ûXßùBÑðRºÌaŒ‰=.|‹ÈEJy»TÃ0YFëýâ}ˆ—#T¬‘^‹.Ó¼¢ty’ý¥Ó2ÆtY˜5ÆÕÆ´&]BHxŽcš7æy¾˜~©…g«Ÿ0’/=é|€)õ·‡VN—ʬެÛñ‘h6“Ë´j(BÙ‰/~Wƒ¾[ ÷°Î—{A õMCYq§YáEãKKW>Àä'ŒbK&©)l;Y³¸Nd ê…O¼Èo¾ìé"÷¸4ȰûZn°Ùý]P¼ ^ÞлÞ;]hÚþ·›oןôo€.&ZÒ¼v’pIœúŽ„K¢ÔM×ðÌðŸp™L..s&×ðѬàKºR&@.^®ˆá2§KˆÕyR/%Ø!×\XµcM ]fám³/Òƒ¶×©£%}¯Î®\Žn€~q(6Äþ÷¤J¼Ü$_8[Ä õSB¹à÷f•dïy/ßÿJ±ðRºä5Æ´—GFžknË©¢ Š—jÂËÇ<”ò€I—,¯…a jA›eŒè²kŒ«ÎCº ]ð3O+oÌ5òÒ}1ãRÓ7”­>?`_ü<€Ù!©òïñUN—ᬗ{ .Ðcw²³âHì¢[6Øx±p Ï·hpñIºÔ@Y §YËÎëŠÉy£±¾¹R.Ø6€.õm$^¦îê…×+ùÍ—;]Ô¹lLÏ;I»^F%]H¼Ä/pNïY¨w¢nÑKÁ‘iC¥96œ“.ZdÍŒò©±g\®øNº¸†g†/ÖÎ_sò†àŒ^¿ÂŠ/¾ Æ8‹˜HÃeNØÄ?2‹×wÙÕÃCØCÃ"²aA//Â+Ó̆ÿÞu1-.>I—APH;…™¦ðr|lá#Œî•B¹Pwt‰¡xÙP,¼Ü<]òcjs¾æ‰ñŸ‘A.§^ˆ.$^²„—£OfôE˜Š.P ypä$ºV†1¤ËüÖWÃYCººÌà($›7í‘î‹—º1¸Ì /nÀl‘â¿G©rÆ4¼(¸À|Å,§ ‰ßP/ƃôN%%[Æ p!é’­„²’N³Žƒ/Æu'»;òFÎåŸKbÏ£” µ pÆê#DÆJÿ>¡^øÄ‹øæË›.Úæ|Ë“‡˜zát!ñÂñÒØ¦w.Ð;!]hÚ…‚#×ÐBÃôÂèb£EÖJ.\®”jpnÚE×ðLóŸpéž¹q¸Ø€i˜ìèvò%ÔQýþ“MªBm*iÀá2§Ën¾äÚ/÷µs¸ð6Ôæt!ñ"ñ‚V†aˆ±²²Ø"l1ŸK—8ÒE®3Óð²H¾¶áÒ{ŸP.|ïÐ¥:ƒi²ïûEÂËÍÓ%1¦„‹d˺ò§Ü S/œ.$^²Ó( ãÙ°±ŒÓk!Ž<…ÎñðÜt™Ïj£´‡&ÿ¤tátoÑ*¼1×ÈKùbÖ¥ÊSªù£óŘ2)^ð{pº¤ù¿¾…õJ¬Ýjqò9c\¼Èú|„ÐaΖh„ÿ“€ —.ÓXVj¦“/æÕÛ{§\„ÑÖ‰QÏCÊe½Ê Úe]FÑê…×+ñÍ—5]4áÒ`îw±Fý¬âtáâ%öÏ€—½Þ‰FDï„­§]x^ÜPi óÐ%€Y#§¹pÙ½áòbBH']Ã3ÍãÂ¥7´8¸3ÖÛÞíàKW2¬¦õw¼†ùž¨<œ.§è_¦± [¹–Ã%ÆwÀÀ$ Lï“xÉ–Œ ^B–j ²EåHºÄÆ‘.j™Ž—EðE²eš —4µi%`’½kFñR$¼Ü<]ÜÆ˜.ú:1u7ÈÅÔ § /Ù,ú8zªM]º”taÃô¬mŒé25&ÔFˆˆ0¬¤ Ñ¿…ôÆ#/å‹Y—*[t·âŒÁ—`„7F³´œ.Ã|hú°X-vh7öD ÀhÙÙES?eß<$æ[¢ñƒ&.]jˆ.ªq˜x±øb½ą̀E˜FÅÞór¹»[µ  Ëݹ6AF¡^D½âß|ÓE mK{°Ó§^XÐ…ÄËàºÿ™ð’$ùÒÙAåtÁi—n~1´Æzç¥K-Š-­4\¹ÒBpY["¥‹‹.Žá™òÅ„pIß\mc€Fã ”®˜ž™^±lŒ~èÆØøkÍó"ãL}X°~ì\NŠ—Î§pC™Ôò¶¨‘—.ƒÙõøÕL/7ÈÉ–¦n1ħöQ“S}!« ÿ~ˈ/ÅÁËMÓÅiŒIá¢<±&£ºƒœO½ºpñ’­$¼TNêÛÈ.X kÄšòccÌA—¹¬1©6|"Bi§’.Dú ޼¤/f_ªìf>‹0&_¬FÄ›N~N Ô†›-¯q¸ììD+át¹Æj4vÑ¿gUýˆÆ„qÛ6—/ž Óô$]\‘.Zã°ðbóÅ~Á´"ŒØ¸lá=)—»{µ¶ÎØ÷"’Œ¼ùTòzÅ¿ùò¥‹.Òë†áRS/‚.B¼|÷O/5c¼mÄÞ ªå(¶'q-´ÆÒsÓÅÅ–ç¸pñ .wŸSÒÅEÇðLúbB¸ø7 ×à‹#ùÒ9…ð6Ó ‹ Ë+ÝíçX39øïÈÖ7äF¤xº¬gê 3Bâ…ÆE„jiE-d‹æBséÏÒÔ¶`šx¹¾(¶ ZóÖñBR¡]«cB¼/7M—1&„K™6ßb%©ä9Ÿzt⥳…ŠFÑkÆBšt!”ì˜.sXcRm"4jÒ%}€ÝP| òÆ#/á‹.uÓý‹ 0_ŒF”‰´Ñ& ö=ˆ.¨‘Å~­‘faFØJ.‰’7¨‹ošJfêùzpqùNŒžŠàf'í&é2ísºhÃÆK€/D¶Œd3à’aÃn!å’ÖÛh—ïOe¤­'ð2KõŠóåJ)\ôù–§x¡©—]øÌKl'âåZ2$_¶”²Þ‰¯âÏM éâ÷‡g&]\hÑØRzŠ —?*M(éâ¢Kpx&|1)\ `0’/b‡rø˜˜ä‡&T-Å Ð%—ƒ†±ƒ‘í¤ž –¿rñR‚t©‡ ÃÕ$^øÜ eQ¢”ì§‚lQÊEH—ØxÑEß‚iáe|Ql)•´æmãKݺºTf¯KñR ¼Ü4]‚Ƙ.¿3çò$• ç•+.è"ÄKãïij_®|o{8”tÁ±rÇ|tÉk)µ!ˆPšÕ¤K÷8ö˜ü¥Ð ޼¸/¼TA°ÀØ|1Q˜ÄKšÓ…g0€F~×BÆ@’ä#4Ð*»[ô¡1Dû(r$Gx9%ü^›-xÔp¸°ã:I—A½qðäKàygEëÄÄÑCÊÅ7ÚÒe– ñâËiËùÍ—)]„pé5æòGÝâû¾„ ‹/ëfŽ#^*iW ŒÂBí‚.ÝòJSÙ@4,.N´hl ÂE(—P‰&]t Ï„/¦ºÂÁÅ  L›Å—Ž\E%î#ñÒ1Õ€t-3BDÃ/Rgv€ý™‹—s¥g‘.¬é´ˆÜIˆ—#ônlZÛ—¯½²Z?Ã¥Ë`vWŸzt2/ à‹ÆEk—R]û]BÙ%^Š€—›¥KÐãÂåÉ£Ö:1S¼ŒÊX»N!^²Ó|嘪IA%]*±3 ÍG—<Ö˜R‚àrIéÒ›‹jt!o,i¼¸/¼TÁ:š `|Ñ´œð¤ˆš#2lÁ·"³¸/ÛÊó¼4âtõæÐ8ÆY Ëdž–5ßÍ>¡Sb}$]àD£qñâà‹þ‚Ζ#­ú< 5ë»}³m 3–†žSЉ—vùÍ—%]„p™²×‰å/3]„x)É^e#r._Ê]ÔN2/èâF‹Î–2)\\üsºtqÐ%8<#_Lë 7`üÊ&“/ÉQØÁí¥ã(^Øc ]ÚpÅÖÂ!1ïÍ%˨1]hÿ„Ó…OdâE‘¯§ —ŸÞ}ÈÁM¹HéÏ–rºÑÉx™‡/[4Z åbh¢‹¿¥:¦ÄKáñr³t±1.\ÂGì5È–x‘/xE!^²|aò)Õͺ(éBA¥G磋ÓÓÔ†$B£&]Ø·0è‚ÞX[Æy¡/Væ¸T!G²ÀùB‹Öˆ.2ƒAÂå4„x’ÊN¤Ë„ŠoÙ‡#\^÷ó°E®ƒ§âÒ%ËžŠÓÅh¼¸øÂ_ИoQó0Ô¬ëÇFͶ±“è’Éjâ…㥭[~óåH.\’½“ùÄ tÙŠ.B¼Äf /ß;–“òꃨIØh»x¬±]ò Eg‹¯„‹„‹ðÅHº8è0ÆÈÓºÂÃÅ ˜R‹/°§¿g8V™mí Á¬~ºDLÃP-< “£]8fâW$ÇUñÒÂ^2uêC¹éÏŠufàþ ^æà‹ÎÖB¹˜ÚŸÓ¥¬1)^ Ž—›¥‹eŒ ð•}u¶Øâ¥A6üPR£‹/¬ÏŠ 0ÉÞ¤¢‹’.<»^Ç|tqYcšÚD(ÕöºÀÛ™tAo,bÖ{ôÅš—*tc&Àèyº'¹xÉåŽAYÉÔž¸Ïåü Ô@HK/e@—ܬäË8¾ …Yïf‹ZŠÌŽs\º@û;@ee6^œ|ñ»žTó-ÂL)¸ˆX(&]zñ}•xêE~óåGU̵¿%xñ;tºñr=“¤©}ø<ŠýP³9={È5fÓ%éD‹ÁM¸H¸_ŒK— ]Æúb ZWX¸8à –vÍJN°ºàŠ1çˆZÈ÷½Ð8žèƒb­Z аp*±‚_àlL´O¢ïZÒe–ź 3p¿/yø¢³E.r/˜©ý9]*ÁSâ¥Ðx¹Iº˜Æ 7[lñ2¥ìÝ.J¼T†$^ºÓœ.çtéRÉ—H…æ£KÀÓ…‹$º\BºÀ¯˜t!o,ÜeûbYÇ¥Š1¤µcñe …[Â|æÊê6aŒÝK+›Bb[%‰—VpÁ` Ømìź,öë.¶p Æp_ ‚Ù8œxqðÅØ—/wÙ4XpÑw\¢36I£r%^8^^ß|ÙÑ¥+™Ÿ-ùÅK¨A£‹/¯Mù/Éôµ¤Pñ%Écé>[w΃-ºp‘p‘¾—.AºŒ±1-Ð_<¸¸ãäK.ŒËƪ‘.øÔU¬²E-¤]ûWÚׂx™€1 E’/¯õá°ø)¬0ÑgÆže!]âÙ’.Và~^|1Ø¢ ©\,_ŒÓ%”kL‰—ãå&ébc(\ò²Å/£Ú˶×è²Å‹ˆ! x™ätÉŽÍ(éRÃÃ$ÎGÛÓ…‹"B£&]ð[Xt!o,dùbY×¥ŠÔõ˜€1øÒ€”- sñ‚e•Ë„§\0H?Ç ‰—¶8Ñ%‰òÝ’#È—’AÂK€-&\ø^—ì´(+xªV³q¸ñbñEíË7^pJÀe½cÇ%íw¡4 šxQ»öÓ" ݲ.6[æ/3@X)^b×|…—n¿l‹±u__"Õf>CÌf‹.\\„/&¤K.¶16 I¦‹ `Ü|é#ñó.0„„(ÇÕK”/;OtɶÍF…þÇe3õ„—A4›[ó()]b㬔]윖N¼X|1ØbÕºí r¤‹¿¬1M¼/7IÍCá2[,ñ¢M¼ø>”y2m‰—Fñ1x¾—¦è1#Rºà8¹×Îh碋iÂE¡T‹0FßâŠE—^3?ý†ëREÛýï°ŠoÉëÅÆi›Œð˜l¬íFï÷ÔÀ‘#=´¹¸žÓ…ýŽâ ´ÄËzN¸ t9‚ì`OEtÉ|üÙé0¾ ˆëÙS)è‚ëºb‡ÊxıV"Ä…>/@lÑð£+ ítDL¶àÒåÐ"NÁ)N¼”!-^_4¶˜/¨à‚ߣKßÓßqÆr|ºU/~‰î3/#ºÂÅÉ–9Ä ôMYžëE‰—ïú /0xÁ3íZïDÖ˜Ž–@¨“-†pQp‘¾˜”.ºØÆØ˜!\n\€™œÖù’”y^rœ.ãÙ¾:ª…|ŸÅÌ5\¯„+÷ã1Š3F£œ·(…A®Wû^”–7#Å¢tY]“F;§e>¼¨/˜‰H¶˜ÂESòÉ@Å!ºT¢5öô*ñRH¼,š.n¤ì™{…p™-–xÑ&^ˆ.¢ÿ—â¥3¤©—}ü~Û³ÙÙiŒ ãeF磋²ÆLá¢W"é¿…E—4åb–y*³y.åßJÀ„ùòý6˜š¢Þb_-ÿ6.ƒÍàžÊéP×Ôô_@¹ŸR­î9H=Ì­¯Ÿ 4;GÅgÞvõë6\Pº•éC¡¬héeuS€‘xÑ.eóEc‹¬WbÎvò˶Á×’i/ÃΚx™âù^Òü,í†Kê°ŠC.ùØ’_¼ ]d$ÄKl§†—îU BŽyÃHmvjª¥ÛÞ«o²Å.\Ð;¥K—],clÀ.· .6`2úþÊI.^ö×R2âûû.ƒ­=i,£®²Æ ‹íï—µê=„Äál‰ &ÆÅ®}U ­,ðÍÖžEcl‡F—ÊÀ*>‰»i|!¶€pÑj½T.A_L^*‹ÖØ/4ñ¢ðh±·ˆ.ÏQâLÌúm. `‹)^ô‰¢‹¨yR¼4J1¹/%ïW±+L‘Ç(+e—e9é"­1S¸hD@—ë).]ø·°èÒK]™ðƆ³y.åßbÀ¾tö k3Ê «:¬úN9–”q\ökgý ý,MKŒDi=øoµÏüŸM¸ tÙ!e •{ª°X˜$CxùßÍ£ÏåkóûZ½ªx@ºÝ FÛHÿþè¨Õ*5ñ2JI’žÿëTà†Kè°.\ò³%¿x!ºˆ®ÄËγÞÇËv½Vd·”‰^‹ÔfFbV$‹-¦pÑà‚¾Ø•#ºt±ébc3 ºp¹•p±cïßïÓÛÖÂA¾Ù-þcû¹×«ôZÞ-ØÂ”ËxíÚ×ãÆŸpAér/c¥]Ö˜ÀË_ZPºF&EÇùöéj÷û3™÷ÈöÅôf¶ ¬±ïêâ…ãå?n»é´8º\eÈ^ýò;ï¼³jçU[[Lñ¢O¼pºð©/5Â…õÂFU{6ßsÏ=œfÚ…‘Ç*y ËsÓ…¬1K¸hD ]‘›y¥ú] 6>*ž*ÿ¥ü[ÁÌuÉ(«û9\p„Æ—£^ DþÆ3Ï<ó,QØó~DwªF¢çíb߮åËÊ-2±,«®iÕY‰Peì4¼ÔÅ;î¸c3üé¤ÉÉ—«Æ _×W‹©ðÀæI»g‘>%^Ò”ƒ¯?pÃ¥t@Zõò›o¾y;6 M¸ÌÉ–¼â…ÓE¨x//âÞâ…Gêòo¿ýöE¨[1€’f…Õ\‹A‹-–pÑà‚¾Ø‘s†t±ébc¦‡s«ábÆàKw­^VÞë.i ðRÇë—Ö%e²×%[hþ…73£15>ÙÚݸ•2ëët XcÔmÖš}®Êi,øoc6³×¹r±}1hA/=ÁŽÏ=•¦èîÓÅ â¥ßè!NÞ:º°§[ý?>¨`e»@¶˜âE›xº$嵦̎ʨ÷cqö¢—îáÇoSˆ—ÜX+¾oYcnº 5f è‹í&é"¿…Iyñ§šãRŸ `Â"ÄXî’UV÷ªìå+wÛÄrßßC­?ý ?¾ÁÎÚ*Ö¼””^“³×íbß®Á¥K™4Æ´²â9CŒþ[ØýöÜÁ;Ù¥NªûejýØU놯ßíU`Ÿ´ mA¸_­ÌêÕx]¿}Ã¥—ÕoòãËT¡–¼âú¦7x®X%âåá1¼@q¼ÍSˆ—-¿ÓVͪխ]l¶XÂE‡ úb×LébÓe2˜€R—O.`_Âk¬²z½ƒ]¶iAõ_x>Ð%õñý-± Qµÿ¥ÖnŒ .(]v’1ÖdÐ%hA'·Æês(çò+å 8ɨõ¯£r±}1Vû-xT!ôb¥†xaxé·zˆ“·Š.ÏyÞªwäñV„ÇÆS¼h/@‘ëÅ÷‡a¢)VÆ£Þä¶³2»G¿bEû*CÝ´¬17]XÍæþªT:(ZØ:šu‘ߤ ¼pOeM“5]÷)ÁE ð…Ñã` ¬þAøU"_ÎØŒÿwž÷ð3êØæUÉǬçà|¹ßq)Sº «ùzUVØ8,*ü¥ç]¾Cwžöªêµù1ÿ¼á{Ö„»Ôs“~b ÄK5­V†zõÛÀ ß[J¶k@oÊãÝ5T¡–|âú¦Äìo:·‰áå‹ëùº1ßÿ†çm~[¿®õªÞWi+¥5F|‘t±Ùb .è‹=uØ”.]tcŒÇ”íöS‚‹Á—ívYy¯*Õ‹³­=¡¿Ô„nÉÎÊý/î ­I—2ÆvtqXc>´X³ÏÅ/ÈçòÅüËA»Ö{ÿà}±çt¸<ñÄc^Pß5Å‹ÿ×â½[D—mŠ¢øª)ïÌÙbˆmâc$·‹Õ*[²(^(ê}¨!—RüJU^9ÕŠîjZcyèÒ1§I "/v/Iõ-Lºð‘W¥³{ À…CŽE°¬.'y¤)µM{2¥Æ%x°…ŽáŠð—€/#UK=nJ—2Æô²âCLJ ©°ÞÓýÔ\>ò%Ï {Í4¶ŽÊ€#ÎOuNçoøø¢Ë6¥\/)¬Ð aK>ñ‚}ÓŒè¡{sçA¼|EzcÛÔh»Ì‰ÙÉÞV5ò•t °Å.:\Èk±¤‹EeŒqá¢(ù)Â…Ó ø’r—O•œ¡¶¬…gp.fòa$‡|™«‘t¹f˜KMº8¬1GŸ[.׉ùbõ]ëSx?ÛÛfÀÔ {öu¾)^¶zˆÇo ]ôRïÇíL¼,Œ-†xÑ&^(?åzP/(^ZÐ…šÊíóªî1ŽÍ^Õÿ­å}1­±<Θ5Mb¢è“tѾ…A9òj•!›BK.Ùx¸ÊêUòŦGgz3ò,£ê<ó&&.ôõ´¨Éñk%û—zÏ.-ÊÓËJ5v¿;Œã"»Ÿ¶NŒøâ¾!ÿÚ¥'½/w› 8˜ç†KG¼°ô¦q¼Ì>ÒÙ’G¼PßD¹^p „âe7÷ÆØ ß6Ž‹bè¹–J±Þù‚t °% \ ¸ /ViK‹.Òk·>Êpñåî Æ—}yËŠ¡%ÌDW-L´a’Ê,dg£‰¹ZJŸŒ±¬oÒÅa9úܪ÷%[8­µžîgùbzU\žø ¯2C¼<èè!Þ»%tÙhb”)ï¯o¬'L[/DÊõ‚‹±P¼ðÈ^µº¼Ä£Ê{®+#çzMkÌI>MRrÂ…|1.]´oaÐEŒ¼†Åy1jÿôá‚ÎXMýËê :ëø¸;hI­¡zih²j´¾²÷’«Ø é¢czY©PkŽ©ØQåýÝA¦O;o¨¾‡¸Tà¤íì†e@Ƹ8®>·dè²Q÷ÅðH‹ãÆÄ ï›0×Ë 41/ÖÓº±Þe³Ç|;åm“¹ÚTû+Yÿ9m³% \ ¸/²¥‹I1<›‘kµ:– \|àj¢†k]eÅ`Étˆ—‘¬«îÌŒ$gQFjó· ’.Ük²èâ°Æ\}î_Úë#6:k½½^l£%]@¼ÜW/=Äs·„.UÞËÖ›^ö~¼cÁÇG‘H¤IþéQü¼bÿi ³i…aÓ[0êÚ‚#Råm¶>Ò%ïñʶ°”/†5抑ÜÄw„Œ9á£è“tÑ¿…Ay¥›¾Ø§d (ë*«òx=;}ü)‘¨ò¾aÕÓì¬DbåQøùJ:\—úña: ¬Î~c<:þÿè_øGÇ£ÑÃêx+[å]´ª½º”:\7|ä(tjÂ’„ë$0%Î~ÿźººµw? oPïºáұƪ¼/[tYí(޼Çm˜ÊÚ< oîÑÇÏA]| Ôõ?bxùÓÐŒ>f%{§Õc®ñ.˼/Bm ÷^¬@Tl .ä‹…ÒŤ žµ«Õq¡%—z€$¶ `Y‰Ã´ä/ âÂÊzg3ƒubQ¨}Œ1Ç¢s´ ø^/þ&j¢ã·i_hX'¬¶ìsá õTÜø‰•®Zÿƒ/>ÏÚÅ‹_TG•gÁå‰Ç¼‡V¬øÃ/>»iÓ¦ïÉ“‚=Äã·„.žg½è;«¼ŠìM°óÕü—¸ •œõ<ëݳÇÛX#—â… k,H®6Øé ΉòÅh8nx”:]h䥄‹ôÅ–\x1(WY¥šíÃó¬ªóÌÃ^*f®KUÐle\xÌ <<Ϫõw\—2ÎZÀ³;OZa®n\2tñ< .o®rÇ 1™hDͰË%N[Ê=Ïê0ßÞìUhy_„Ú¾8Ø.&\È J“.8<ãÂ%©ùbK.ˆ¼QÊUå*«…ÕÂØÂ[P·raDŒxÞ/h¶`Ÿëh±ÁZŸºË>¼]^ žåê!6~Jt¹½ðt©–¡’tÙìm„n~†§YÓ­1›.rÆE‹5fg—$ébx”:]`äÕÍ/Õ¨Å6Y páAÆ’Nºl^]Y]X——qbêoŠ.òRsÒeAíz³×¿ºl^ÒtyÙQ7I—ˆ—ã˜Üz0Øc^ºäzyä±ÒŠ–‰UÒ¦ p1áB¾˜”.]pxÆ=œöÕb—\°Ù§)W•«¬úR BQíásÕQåÄ"ér»—œ—.¬m,€.OÏrõŸ]V{µ…¦‹&^\C€K´•R[­rÓEmLQ±Æ "p_Œ¤‹éQêt6@KÓ4ãYºTàBÓ.bä,«þi—3 yÕR(%½U,Ž.âRói—þ…ŒB—=ÞÕ%­]ú´¢ùzAéBâ%NŸÒî1/{µØ¡–m‘ ®G­ÃÙ9¾ÿÅ!\L¸p_Ì!] ºôjáÇ”/¶$àâS ( Éë*«ÕÂ3±· .]êE¢‹ÅÐeµ«Åk}ÿ‚´KÿB´ËÕ[B—múÊk<ÖxgÎǧ+Kpt„Ùnñ‡aø¬ ŸõÀ ô4ûC%”W ¦¼G¬t—ãÁVJAcÔE}©˜Œ5f|1’.ÖÚ=.iì.%â‹…–\ø´ ޼¶¹Ê굉‰vŠã…‰‰‰”÷ƒ€«ú·OE£ãÙšâì¸Nt]êñûâB×Òk}ÕÕä7…>Hþ¥5Z]ݨ}ðmÞæ€!\9ö¨ª-×Z««ß¹-{N>úÎsîÊP ýÛÎ/||þüùx)Ç —μË6ïe‹.k¼‡ MÿhE]¢º¯m6òd뎹ZÒŽ;Œ>†¤VôG˜ÍŒ@«‚ ûߪ\É>V•wÑê1YùÏF&hQ°%«Gq .䋹¤‹A—Iy@ùbK.4íB¹ª¶¹Êêµñª¾]ÒfGU틎Wwî,a h|6¦òµ ˜cY[Z }ÎDuuýKK_]]ýV©Ñ‚‚}nùkÕÙYv4ÁCUÖLϺj}ybâÔðøäÊ…‰ lüŸ Ì»œÝð¼n/;ð¤G>¥y—«ÞóESåý2¬Õ3Õwê\弫_ä²1¹ãe½Ê}wªÞQŒ^™™ÎÖz§Íoô«*o{ÛCHÉ—]ÌõÜ3‰À}1’.ÖÚ=.½|O3»þíô\páÓ.8òºê(«­YQV¼É‡k­ÅìÏ<ãyþ{(ødZ.s]ê¤\0¶Á6B+ ¬%•;/yµf­¿³ÊÛ¥¶ß· ÃzÜùÓÆê³œë¤]kl´ýI¹ç¥ÖqÃ¥³[Ÿ5 .ïVyÿ$F›^ºDÂÉî±ÞЗi+ŽºDÑÆ6°¶5Të]2;Ì_³ZÑ/«»š|Áêü$cKoT9„‹¤‹N—´ ‡R¾ØÒ€ Ÿv¡\UWç*+Á"gU…"׋¹“2`tÔæiA´`Ìç+Æx ékÆìUc_ú¸ÖÑçnE• ¡tB£0ÈfÍúR Ö¿>}žXíFmã1Ûó¶B¬±‰\<îê!NÞº|Ýó>°DZÕ¦M+ ä÷àu°ç%ŒØó"w¼htº†€cm,ÜQ ›gk­¼¨‰®X§)äË€M{ Yc&¸/FÒÅ^»§zLŒ:‹—¢ßÀ=•K.4íB#¯ –UJ NC8s›=½ß°&)J|”é–{^—Ú†÷ã! ´­”6]ŒÆQz%Á¾à–bOÉe©íØ»$\ß9[ߢÐBÛ‘/Hûy";½ŸeßpÛ’ 4 /[Kƪ _‚5¦ ÐsDÂ97c{^´¾©WJy/_ô[Åî÷¼s´ Ltæ-;B¸ß…ÖeÂÅ‚ ÷ÅœÒE§Ë”Š*¦|±%>íB¹ª¾>wYùø]Ò…(v]%”¹/ë긶‰µÖ÷ùVʬ¾¡²…³_ö¹¢]w6vð•~[ƒµ¾jÅŠï|b&G:h[c/±KA(õë¹Üû²¯„é$»‡XLZÌ^ý^Åo´ýWÏ{bj"_8`æ&Œ/bÇ‹¢K Œü#«·­Ù /õ+cjÌÛ¯)²Ns4©Å9”t±C‘5fÉ î‹QÔ,;‚ì1‡§ÑÃKñß{*?}¸ðih¾íŽ²Ú§ L[{hÕ);K¯:ßà%:ÞÎõ’x ¹.õ ”.!üPÓ~º¨ÆñÄâìRw{½}zzDÊìw|gŒ*[©'p¼ ™–m<ñSwooC.x×] ½«ÁåËž÷ùM¶ó&› ³Ö`Œ-^´¾‰¯Êš‘â…õb)/õk­ÃüP~oêž³Ú:1¾W?Ô~lœÒaÿn.¸p_Ì)]]ô¨bÊ[*p¡i‘Ä}ãÜeU†IÏòuIÕ³¹n.^؈ÇÝ‚¸t[)›\tQêØLú\­]·E`¥_ØQë?ëøˆ— k;%^ "pF4ñì!¼Etùv•W«^õå*¯Ä˜9#Ä‹5¦è2Ìãù˜]´ÅMo­ò*ÔWÚÌîÓõ²ÎÈ­ûœ.ÁÍùØîÂ&¸/FÃñ@Þc²KaûRý7BÓK.|Ú:`öL»ì²2Ö[pG=ÃJt››|£J.ˆ†“Ø_|µÓq©þ£št11‹.¢qˆX•Ty§U½¿X…sÊ™0š,Ï‹øÎTŸb#<*&lS >Uœ§LËä’o€KcãŸÙ7ܸ„à hÍ»:\ú_Y±bo0\Ãpc0Æ/ªo#ñÂZ×qÏ«U]æ¬ÐêµD½êØá«8c4ã2Ò¦eoÂ…ûbné"颇CV¾Ø’ M»ˆ$îлeU7ÊŠfê—] y—4›ë…2¹ ¼Ž@]=VÒEc;\têÙÇvŸ‹íºMûvaG­‡zà ;ë1.ý¬kì5M¼üÌî!Õ€#ùd•—ºû«=/uüø+&_$`òFˆ1ñ¢è6 *¹Ñ†Ü¥C8—Ø^åUñi´_]‚û5˜|ÉÎbWÅä Ñ% \È3°à"|1Žÿ.”zL¸TF·:Å ¢q©À…¦]ºÄ²ƒƒVY½š;&fkgùlmxKô)z½TåxçÏÛöo}5É–‰êìVë†õ´ä‰øÒÑ[ƒ#]ÊPOÖXÓŒß"g^vY7\JA,©ñ™ýw¡mA'àŒÐ0BÅÆXâEõM¸tžwÛ\¼”57¿ÎnÂg«ÍŠ£ê®M‰„‹/[Ê8]øR±¨Š?æ‚‹ðÅÜÒ…ÓElΟâ¶çâ’ Ÿv‘IÜáãhe•z_%5æeÕy,³+Ð6⼿6½ƒÄ kŽv…~àlHJaŒ•:éuý«’-LæÜoõ¹&lÆ×ÜjÖúÔCu¾À³NÚbP¢¸äzN/»Ìbq hÅb[‡—º¼êöÕkØú77××Y|Q€q†‹1ñ"éB~‹ˆúƒâå}½ªK{6?|î‡ù|ž*±ø‚€iº¸„ \Ü‚‹p¹p8~"˜:G¼T›Œî*~ƒ¦oTžÊO}Ú…g¥Ì6µœÔ˪‚ïNÉ•¦aô¡.ˆ=ýð#Ÿ† Bð¥ªÇÅçâ)Á­KUÔ ì¹t±Œ1›.¬qT—ˆûîê~¨1—.oÞs‰ýaãÿ+g’Ç/H¶d±5j7ŒÃPp„W§+;¹¬ÝeT†ã˜b 3T²ûž ™—$¥nòý¥†/µzÕË«ÖðMŒÇVäŒÔ0RÅXA õ¾ 7-Š€c(^6¬ã¹®Rk6_¼ Å P÷v^qòeÒE,Ó²·»àÂ}±<Ò…èbF“¾ØÒ M»t)çâ‡zYÕ¾/‚ReÕvШ…Cƒ°;ó+~ÛãVû¬³¸tÆXÖwÒ…©ÿê§yÕ_ÿœ{¿§õ¹µ¯†E§§ë¼Ÿ¬õøTÑú _°=öÒç^ẓʰ©ZXcR¼4ìÒ{ˆE6 Eæ¦|ïq‘™-µï}èíëfg|ÑcFˆ>ñ"éB~KˆWéSìg #ï—ËûíOðD××|ae;ÆWtÙÂÅ®.ÇŸ´}1ê1ñRÑÄop¸È<•Ÿú´ –X[vz˜‰ézUVû(×”Ü%×™Í^À23J¾¾qµÀ~.¥æý¸‡FQ(],c̦K¥hGc„Xì¼þTüèYeˆ-ìОjþp$|‰Wó˜ñÿMžTµ°™2XÂû•ù¡xé†U¯Ê³¶=è/¹Co@aì•¢ÕÄ7`”†Q*FóÊdßÄ£yQÀ1/k±}‘…voðJ¸øÒ–É…¨¥b:_l¸_,tAºÈ)³¤á‹-!¸Ð´‹0Æ€6¯jµÇåòÅh@Ø6ú2Q-ý^f,Ôdœu¦—.ÂkrÓÅ? dûú”ž÷•yò©rrû¥`OòE½`ÕCT»¢Ü⥽¡ hÅ¢›Çs—+*j÷ÁÂÒ+X}ÛrŠ//Æ€1ÃÅ Ÿx‘tá~ eÜî`_àúkz#싾ñoSýýå[ár/_T„–/éÎ@m'"¨XcÒå‚áø€/F=&^*)Æ[â7zĪälé’˜vëDc¬)Ã÷xýo߸ñêã?ìi"»U„`Á éýíå§÷\Þýá%«ñ¥T|fVìµå[gù7]éŒ1‹.*7­˜ˆ ^`Oµ¯¼"Å.%×'Ø2‹OEõŠÍ/!iÄŸýÕƒåpÒÖØÐСuˆTԌѲ±Û¨cgaUæñ“þ’<Þ{Ž}¤Úrh@ǰ7{â˜Ý5§†1T cÌzÑ7ñh^!žëÄË^hð >-èuö×½ˆ—7²}²ÏœÖøÒg.“|ùÈ‚‹ðÅòI¤ NM ’_l)Á…¦]¤1†ÿoÏa úîäá k@W±mÄ©#ô)¾œ`¨g¥ÁZX{Š:š:.]„1¶ÃIYå×ïä¹ßÁ:}e?Tûr‘kÈ=«ž Јõå\|ÔÂãXcÓ8·ÆP¼|4ƒêçÛ¡ýíâЊÅ¹Ð­á>R/ §Ïs¾<û‹³NÀHÂpñÂ'^]¤ßÒAÒþ(neÁÜù»ÉyìÇ^$_JDÌ­þáÂá’iøb˜Û:ã<{ŠèÒ8#F^â7¸j]ÞXC.Á6|lë¥B>nzÒŒ|{AÀ…íëZrãEñEîqØ9ÇÐâ»é›‚t±1ƒ.:[8\f±ûŒª[wÖ…÷s@MÔ^ì8 Xµ>ó”è3û.ö¸_ÂÍ\„/–Oººt§ÅS _l)Á…¦]4c¬[vô¸5Ù¼|ŠL©…Æ/QM¹† Ÿ½ÿñæãu#C@ÆŒfNÖ–hÃS.:[0ó;~ÝHµl É©ŽNmB?l…:y5“kKH¼¸øñPP&ï¥Ê#k ÅË÷)•c6[÷£M›¾àZt¡®kô>®^r¹Öoq¾|kç}yC„!ñÂ'^]„ßB­.™ÞMæ‘ã»ÇYìqFú†^$_^› S°Îž.J H— FÑ /–nÂd L‰àûâ7„Ú^ÞXZd¥ä/vBŽ#éqC¢§í€H¤\Âam üÓ5‰Å—-‚.±S9d¢ÖûAcL£‹`K" *à‚yï'²ÕÔ…f;KØ’­Igõ¤Éc‘ð ت-¾À÷èÊÁ2ýu8¯€¹ÏY)$ßb¿ñ–¸Fݧ‹/¾M™ÀKö»9_þð¾—0††!tÉŠ·F¯Œ¦^6Àé{ë#oì:ûó¿ŸŽBiõ½‚שžÞ!×^@ŸÙÉ‹œ=J£±`…ñ…à24ðÅòJ—öî]ë•Á÷…/¶¤àBÓ.ÊPÛqøãÖd|¹RºCSÐ`&¢ˆ— ¾w‹†¼×ü&ø(€óŒþ²ó(Œ‹Ÿ‘1v¨SÛù­è"ÙR•GpI@áÇ'xÀäT—Œ¬@3Ô»e"³Zµ×ðàKÚá+(b_#¼ ‘5âå;Á›³Á¸QŸ]hëVƒ/ÕKnr§äË—Zò&qê)X›æ/‚.Üo!c#—ë$nd¨¸&Ø->™ÆÎ0úÖ:‰É—‰ÙP«±·#˜syTÆS.—”.¦/6<…ªˆ¼Äo¨é›Ê%àFx#8*é‚Û$³và®Ue‚|hëQx‰"8^,¾ì/,‰âåM¡ c’.R·À%•.8¼«&ºt6–…L¶gWƒ{ˆfµm0YÑ×õáŠ1ÿrä#1Eœñ2x¯ÄK„ “Õ²±å@!,^¦¿ú}É?/`L “­b¨¢ƒù¸ô±u+àÜH”º K Š—¡,âå{_2Æã_­¤3¡oäãéç.Úú1á‹å‘.3“h*Á1<ã¾ØÒ‚ M»(cLI¹¼ ñÒÙdðåD‡Ì‡ŒNbµ†©_JãtéK xÙ5uèl±õÚ´‹¤‹`Ëà¡(ìûÿ©{ûà¸Ê;ßS0`FÔLƒ‘„"‹nAi7–Œ¹[–í–äÁ–ÈÒ€EtÛ6ޱ„±Èx,P'7¸‘p…Ë8š[É0¾¹“TÍ55[³ eBÕÆ»Å²EêîÞ»¤RjÑ¡3™šªom±ª-*lU÷9ûü^ž·sNÛ²,pûÜ;3Â>>ê~žó<Ÿçû{eåRFé‚ ¡(Т*Â… ï Á.ÍÙ¤‰ƒ/k`øáQu(^*/`‹}•f¼4È!÷_~]9xÌÄKGÎ⋘¿ùáŸýµ_Ã]<e8*‘D2 EÇ.âýEñRèú¡“/шäJ€áh1#~LÙÅ¥ å¸0]øxƆ¦ƒ ¹]´aLI£šÄK®Ã¶Ai‹Üd‹ /Ú»?WºTò(^PºÈÐËÓòtyÂô·@ÎX–áÂÒ%_Á3¨Ý-Ò„l$•‚™óà¥r\¾Wûó¸Úαxé#KéÄy/ý¸ƒ\cºŒª ÅZ½Tæs6_lÀ|÷µ‹a’Ã'_$º½…§M5ùnêóÒ-v+¤‹K›áñ›êEœ Ni¾ôWlÀL*"È2ü:+RJ—Epëj Ñ…N^ü/ºlÁÅ1‡p)W¤ti¬7,£ïÞ&C d ”µÌX¶±r™|o\ÝDîÛ†¦1/{x#íЇ aÿ}Õg~Rãt«hÃ¥—B£kóÅ̃ÿæf›0uû÷+º(_L Ǥ}öyÉ—Âãqôê—I¼¼æº^\Ÿ,öÌ^Ë0ØY/£Åt|ò l ”.œœ‚ÏÈÐTkp!Œ2Œié2ce‘qLŽÈîCr¬R97WŠDég¼Löâz!ôôÜ‘j&ñB®}zƒM· ÒeÂ` üÊìöº(Ké’ÍøënÄh·ŠT<(˜¬jÇDxþîû¬_ε‹ýa‚ÅK„¤ì¦;à?» c2Î\[º°i ÌM†zI AióÅÌøßmØf|Ž!¶·Ð´^äM%{™xG{‰.-R¼ØêE¨¨ÊßÇÂÉa;ŠŒˆ McÊ.&¥KÚ+\Ê!²öðÉ‹þ…¯*ò5´±pé‹Ì¨“—’.h˜ê+[\ÄK õH–dêüÓ߯Hâ…ñÒ5!ñr耦‹øçÛ±82‹uÛ0¦è"Ù"Á%[’Ò¥à*º\è¢ßß’p¡\PXßZ»„±Ay‘ß„êóš/ $^²/°8f(l žrbm­k·¢Å‹‰Ä¾x³î&›07µ²^øleM¡xŒo–tAñQ±&^é嘲 '7ï×ÑbÌ—ˆ´‹HUUŒ+ÁÐñŒ,5t»hØ’.†]LãEï&ò…›ø~ü†3^ÕÊkéä°¤K¿0/[]ÆË#¦ÛEÓåN9ÖHpÉ¥t+SŸ˜-éÑãÚHFvÑ”˜fÏÖ\Âüõ™”²KTfëH¼ˆs©—¯À7ǰ1¬zrïµ¥‹ôKN+¼¨¤¤ëã‹GÁ4¸Ç‹2Þ~ ÛQ­™m.·ð´J¸PÂþ-øCçiP ,^ õÂjCJÖ5©p² ˜òÁiLÙŤt™÷ —zéK “ý ÉýkgcáR,U†ÔÉ‹¥‹ØH93[/ .1É—Á±8Nñ®Æêe_¤O=·Ô º´˜ §\r4³>Ë[r“(%ÂÒ¥WÚÄ.4²A¯{!%Íb$]fŒJá*C'Âx™ÇrýPÏGñE|*®îÊx¹^ø}0 híŽZ§Ë¼!^/ïÐûšóóÅ ˜éSmu&`^?Ÿí³à2.ö!/à¶j‡í£,ÅËV /”œ¯êØÖå…K›ôÁ_J°Ò¢ÓÒEW#ºÐñŒ,µt»¨ã™’.–]ÌÀK¡¡‘Ÿ½’/fÔ+.ÕK_¤ÏÀ»»áÿÀ®8WÌ“xÙ³è2^>1Ü.Û0˜lB³%4Ý_"¸D”tÉ+›v¤äÑ÷%þ±8‹Y ­ÞòSuŽd¼þ—s$^à`ÂŽ8ñÍ1lll7_cºŒjñBxyµ·ÂÖ1?_<>±«„[€0SªÙáš“ƒÐ_á2 !^¥E) ™G±úƲ/J½°Úcþ‰Ì¹È}_>í-X>4i»˜”.‹>á¢<Õxò¢ÔÏåÙÆ¤Ç6æiyò"é"V?šb‹š-Ò¡Ÿ5sFu'BŽ”hl)è­YJØßv AmŽ›K°ÇaØC{ jëcUÙ¦h6‹E#œ‚’Uq4ê5K —þé±A;` ’xT8¿T/Øæcò1Ÿ kBOÐË“¥’Å}\ûÚeÁ/„—ü[ÇøbfI ïg¶†ùÞßÜ{ w°œaÚå6àT iº$Áå âeäù3^X¸ÌeË-jÏl$ùRhyŸàb8ùCéÝTJ+6í“.f9d¢ ÏÐ"‘«9¸ÛEÏ”t™ñö8à”†ŽË‘©…Få«j.Iñbø^¢¼X*c›cÙ’2Ïÿ nZÊÊ̽Hf ök)Q X8u±t‘á8‘T%.¥²ƒwaˆYõ©¤æQ|©cñ ñ%|ŽsÎË1ñ'ǯ5]rfoHÂË')i à‹˜ñøÒùˆxJxðE«•îlö$¥ÑÁ³#ÍT*Ùu·]{ËZ¼°z¹ƒáüïË`óOȱû©Eö1ôtUv1)]Ò~á"éB'/ü“…+¯‰mŒ7èn8kÍ«“H—C`¹€¹0æÂeÔ»`ʯUäX–þowî5¢ ÚaØs$ÙóúƒC - .ÇSt®;¥¼œ'™‹èjÁØ–îéÐX:c¯ŒÑIþ‚½háSx€!C¥ò¿ä£pPÛ66URàh†-§‹ÑØUêå‘n]fÈÏ 0uKûİßô’U=æ{?üï^UpiNÂÝ=ð#&ÍAnŠÌÁXÔïa²Àðˆ^”|‹¥Å`û/ævË ‘R¸—éÂ^ý8[ûaï»E¿Æmh¬d´(¸à¯aé’4Â-å2#ûU,Ùâêy t®1Ã¥0ºîÐ&öǵ<±ƒðÒacñr9w­µ‹:}Mxá¨ó¹j|ñ†ÒíÈFg‡ÍhM6ö)^ º¨ÍÐm ó2ª PH*«üÎa…7§±¥`‰×.‹ÂEÒVÄô`ù;pÛ˜.9.×&O^ ]¢2D±×—æ+¾Õ=è/®2ޱx)ƒ6xìEž´ã°CLÙÄ‹¶‰ÁoÐ;ÂeÏnt¨èð³ {•Ó:¢J#EtðqXÊÔ¤´ÔâE /`" Í(ÿ y^Ò“dzQç¼Ô|D²áÖ'ñ"ñR¯­cÁ|±Md/ÁÞ4Z™k³ó½o/õû]Š*ø‘(›â¥BÁB‰>Á(\5K·KåWF.g\ãä@áø_  /ªò+-á"é‚Ç3,«A¸ ÛEÏ”tñÙÅØ&Þ"ñ¢äËBÅà lÞ-Ír#çPÌ2ؼfó,]`ØaGÃt¬AÅ C&ÌÉ~e6à"¥‹8êEüùÆV(²,œ<í­)jáEæ:Kö1dŠØY·Å /Û\Èy©Ëº×\»HÓŠ /:fXÇ‚ùbF\16.fóf> /“ º¨Íp²U5Çp«¦þ.Výä·­4Ó=¢+Œ¥ƒ„ ÓO^åKv¢übmcZ¸¸TcºŸO^JºD”áτ˅JŃ—PgÙ'^Zص¯ÄK}ù¹;ãl½¼ˆE‘cSÊßrA­ ”áÒÐAkJº\¨GƒJT6šÑýŠêÏ"[TԜƙ]ÄË©@±Š‘_ ac™\Y¾ R¼´Õ>]æ=âEâ%Ômá䋘Mu[)6릛­ŒË×ëz–Àó²±YÒªa¡x¹£&³o6Y'í!¸9áæ5*ëÃ$ØçÒÑ`X=1éÎ74“§Wùâ.’.ð§3fNoM]i^@ó¦tñÙÅ”ÃUãEÖo™æK3öC'/Çl_”ÖÒElåó„âÐÑbn~wnŘ1YË'õi;9-é"ÎÚ“.©Oýy.†|áf½¹ù>Ú"ü©Ì2ì‘âeÛ1Â˯#ñÒâ^sí¢ÖÇ´‰—úi«ÂwÛ íj„÷$šËPê·èÍnΓx1éB›!ª ]s Mc²ó±æKIRܘޒ.óÂ…é2jºnª4 ûBmc†páÞ.tò"O«.™=v1†Ë´òô-Ø*öõ¯ßqeLTw#ñtIбg÷ Ö;lq×ÁÄ—-Û&;æ$];'¸¸aÝwr®ÅZ(ÐŒ"QLå’š—òO†ŒEø N³£«=Œ+ݨó÷+BTÉ—ÅËu@—¯x‘xqMëX5¾¸Ø¿ÑðÁDRd->gWñÇÿ8ªgºLeY¼œ*CU6/z·JeNÌj¸èè& Léyœê“¬–/^áÂtQª¥á‚/\†gRºøìbF4Æ‹”/°Ûï‹ÚµÚ¸ ÿ½ïD Cëìyã•bB³%4ÝoVŠ+µÃò4RºäK4AŪʾJ¿”/´åMg8nl.3Ý@Ç0»Y)|ŽÅK]{yä‰¸Ä Š—û¯½vAÓXʰè³zq-ëX¾ä*áf ˜©S‚Ëpö‹ïϱt™K‚•ÿÎÆ×¸.^bæ_ é=©ò^àSt¨¥‹ÃºƒÜU-‹¥ýFH—E·J/K Ë<·Õ½d'Ê/Î6f êíBµÖÓ) ‘̘ˆ³à²˜òD„Â%R ÷QÂþàß/Y/H«fµ† ^—ÐÒÞ<Ð]Ðç+á⎚}'O¤Â}XgŒ:dÊh1¨u¼ˆk¶Ûòq§$\¸Ðx=ãŒcé­`úú0#ŸÊ@Ü{ëI¼\t­xŋ‹e«Æ—X%qN+˜_>¸NÆéßôç;,?Ìëþ)ËÆÙâ‚ û4=§0Õa‡Ð…+´"2‹†“ª Ü!ßþI¥Sá§ã)swËyÝzýææWspA·‹4ŒIéⵋY¡¢^¦ ¡‰šõ“/E)¤ J—vÌyiÃ@cÕ¿å5ôµt!³XžíÅJºTlº(¸èñÏŒAZ(ªÈm©¨¸±“Ó±ˆL«ì7¼h}m,^^¯;÷Yg\á嫘óríµ f(Æ´x‘êŵ­cÁ|£[˜,•Ôƒ‹®»bœÂÅ,épœˆD»¡]ÊÛtŠÕ†Ê{Y`i(_ éßG¾°|Á=5‚ëã ‹ý!·J/K ‹ÑàámŽ¿(Û˜%\xôR¬_€‡ÆŒDQ .ˆ•˜QAP>ªQ–®¦ƒÖà n2âå“.S(ó»Íþ•ã²( Ó…âU\rþa˜Fô ©`¤\öY\ª/‡%Cà»pÌ$‚In-ÊÑe¼¤B3¶€ óË–‰ÝxÖ8–Å_uÐe¬â/ /¶u,˜/0F©_Òùå>keúÊíûwxŠ_ÖE¹R|”v;štJuØš´ìúT¹Gí™$_Ü';¤an°¥_ío£öwëòŽ[¨ÉÑO±aLJ¯]Ì“‡ ñ)uaÃÑÎk¾¼ƒn•ìyXz“H—vòís-˜%µã½XR=Ê6\p/érN…èéù¡_Iérc¬ýùS ª¿há/ñ24”Òÿ ñ ~‚Ç‹ººý>ŒûãqÌyùþ5§‹+-«*‰ðò×c â zm^äÈ‘]O‘¥E\óÓ1'ZC)ܧŽÀM›g).¯—7CT2ïeH9Åuqîøn—¤n8„Eã»dÎ Ož:„AKŽTR½¨GÝõ5ùR\4øC³‘ñûâIgé.O?$á–ËÂ勱y…‹¨¨phÖ³€š—i}²$¼„õ£:Èý1³Æ¨ŽËù“»Ì±‚UÐlÀ%Kɉ²1ì —uš-ɨr$JºrQp‘Ò×FŸuÚ¥ò/jtuäÚ÷‡$`²ÚAš8I/Äþìw}í:që+ñ¢ñⱎðeZ/ ƒïi3å¹£sm¯o<Ú¤îz}GÏù(eŽÒÕ‹¯EŽ53ÙÈ%÷-›Oû稑Ýð䬷4É´=Z³pQ~¾œ–.»X@u 7ˆF{y_@ýÇ){÷7àFÞn¬ ·'°–r*(6Å:W/jØ7<*áÂÙ+(]²JóKºìãšï†×.ÍÚ"¬3†OfÁŽaàx6•ѧRF¶X—Xü ð'X¼Ào;C%6ÖýQÓÕ. Õ  𦼬\ ©^|Ö1_~´Áqš:üìaà#Êà_š‹,ð¦J=<à½éÔlRÆÐºR½¼ ûÐÙÇaTÖ«—Âäˉòf¸éðéÓ§ñQÅ*ý`žK£iÃöíÛ¬G¹×Î6æ.l9â®´,]l»˜„ 9]ä2^ä£xq\D^Ëú0ð_[¬aÏ®^¶Z(4^ž´Fà²U² ‹DtïIñ_…þѱ .,]B°"…Ix¯dðד£›“i•ʾπYŠ+cÃøc_Q/ƒüTÿöúpëkñ¢ñⵎùøòÌã­?hxóë&vƒ½r/nœOÁ0<ÿü Ïã]tRÝOÕÆÜP½@ ¨—÷šŒ›cžËØèLÆôYgù­kãtGÙSûŠø‚ èö[o½>ÝúZ…‹ŽóZºxìbAå9/EE¥à1øêørÊ\Ô×öðÚhzþìÙ³M¸‚àï¥çe*[R^Þ¤–…¨ÈH—öYiC$dÒcô©Œ¬|Ä¡” _»}9Ã<ŽÝÓ`”.ªúc·$·x†=¢Ï±çe„ÿTüI{D['â²§q[RΆUì@7».$]èS•Ĥ÷*c† ÉÑ¥ ¼9ÐCR¼,Iÿþøg¯âË`|ªkÛ­Ÿò‰ŸuÌæ , ã­?ØV·C;ùwô$ Žqºò°¸ë†èzžðB§UeTý÷󦺺W'©ª©5›Ç·ÂXÛ+v ñЗÞÅëË·‹—¢Fá2¦ c,]ªd&;hq\¤œ—S¾aê@qÕ¿rÂ7¢ ÉU:?{ÿè"8„÷zá‚'ÁŽN Nž”ïÕ´…D£;&[Ê ›óºl.™p’ß›Çó©j/cª¸%^ ¼ø¬c_þgû­orŽ—Ëãç6šQdnæ q×êºAãªÆ<È6ê:Þ›0¹££j2´ûÖ†8ì´ó¯MΆ߼+¯/‰›j.Êí’SÒŶ‹ÂeˆK-qäÉì›ø IuYL7!ÖFÓ7Õ%ôK«ÌÊŸÐý+ãÖ2ûØ·b© H¬Vq†šÅE$ŒØ¡È)8_¥¦S–AyfQÀÃâ?Óø6I¼hºÜ+~É_Åœ—æ8—‡ùGïnúá5£ Õµ·Å‹V/Ö1Å—ƒÎÀÿøklÁÄ—Ûg„)ßñÝMáM[¬â"D˜Íá¸ûîŸÒ£<|i57ûî{N< =.vŒø…?¾M_xõ…ÛÆ‚„‹b ž¼XºXv1Ãé"e彸 dCçßEUl¼Õ?ì #É•ùâÑ'O[tåXÉÅzmdÀ%Ç»RIÌpaN>Ñ“|é•MÒ*‰fâ“hPÂ~©™=ýŸªv}/0ôó~ñbàÅoS|9è{ëÑMØ×¾ß,vÙjrÉñž]— ó¡ï¦-ºüIË$çï·úÖÆ£V?DL« —wßý“ZþŒ2Œ±t±íbApa‰°ÏÆË§øúöÍâ›¯Šµ·špòE¬ ñnNPªQ¹<›çõ.³p‰âÅú²˜2ë)B˜îÉsÊx[»d¦Mïj¹ÿöø]û0¸ ñò¾¦ËMâ—¬}ö§0–#à½úÚµ¢ ™Æ<âÅP/Ö1âË?:Î×Í¡ýÎaç.~ò‰ïÊ@ §ü7m(g›‡­ºd‡þƒãüÔ»éQ6_6;Î÷™×igƒ Ó€yØq^¹Í¼N{õ…ÚÆ‚„‹Á8y±t±ìb .†ÓE=ÊS ½‹Lc,^å(ø†]p%Ky—æKЈ2[ éÂf™«oõµlÑñ-ó–§5µhds½1ÐÀ=êe“~¸ÏK_øò”ÿSÝU³t/™/^¬cÄ—·üoý1¿ŸÂt>ømI÷´ÅKÚ½â==VNÿ÷þ£ÿ¦ v#qØ37ûׯ»"½:_~×¼n­Ñá×Ç3’.¶],.ª~W‹…—± &½`գȠ«ŸštùæY1ìJ¼ÀŠâM¾e&Ó J(]à¡ÃüZÀÒpÁåÑ?f£%5““¾U™û‚²÷ÇUtQÙ]Î)Ÿî§„ý¼ _]Ð{u×5£ µ|ôˆC½YÇ€/Ãß±/Çy†b‡[ÊÍyŒp8pÓf#®‰®#ÎÙ»í eíÒƒQñ(kÓ¹ï·ÖM ˜õN«µ€n»Çû¨/Ò6 \,¶ÀžLÒŲ‹)¸NãQ¼t iLŠ…ÉõþE¼Õ\'Ç*;4¢›#:Œ¤ OÒÅ„K®¬[ë-štA‡¾Jõ3‚†dÖ~ƒe#ÏKz]¬ùËÌsí¹õ§+âÅÄK€u øôÖoþÏi1Úm?AsÔyþûrœ§&#Ûꌜþƒ7ýû{ ¼ÌÂ2ó¯‡+žŽîëÛ-¸¼û›Úþ1uhmüÕèL&evtpþĦ˻·×äð§ÕñŒ¤‹e €‹.<ìzñ‚ª§BM÷Žc«ŽÞÌtùæ7ŸwÖ³ml¢<3eu—×KCLøTù‡{t¡¦³ôqÇ<²Å„K*’åœû+}*'³¿ís’.ÿòš°ZöŽœ NïòåwÓ/.ÜòÑ+^LõhsÏÈ ]x°­Ç¾–u“¸Ë3w>ê·ž]çtà£îñ¬ íËrj}¶1¿pQlÉL«“IÓ.¦á¢œ.ÞGÙxéBÓ‹Pa½AÃÞ:÷\A#ÚJÛL³’.²çwébu—==ª^˜Éÿ¶hWLV9/KT¶§ô©jÖ¯ÛCÿh x1ñh |ë7z/ÇùÀŽƒ+ºicÐÚxÔoÊ¿6åË»?«ÉáWÇ3’.¦]Ì[¸øñ‚¶±LiÙ e ‹tùéòv· t$¯K;f˜e/Q¸rW‘ƒ-òúQ*0¯ 0‘xÁæ3SAïÕ]׌.dó‹S½XÇüCûçàåÇ?঺<ô(ï®ó\à£ü+èpãrL^«kó “-*Ûe”¥‹aÓp‘N—Àt /‹°ÙO²xi ¤Ë–E—çØ+ §¸ó‘’FB©Øl,³›^iù‹¤¯T/$^àö}ªÚvëkK¹-^,¼ø­cAoýÀ²è2°¢›é2pyºüI-ÿ˜<ž‘t1íb>¸ø„‹/Ô ­q·Tì‘@º,kwÛ€æ]’.•YY>iÅpQ3móàeMc(^Îc€ ÷êÚÑ…Mc~ñb©ŸuÌ/²ðH<~ÇÚ;&ÄulíÚµâ‚nzo8³öL[›øß|—OË›&?ƒ?:οø,&GÚèð?rÇô«ÿõ“qY¬¦m̧6l¶¨"c9’.†]LÃ….é2^¼ÀÏ…‰—F¤KÀÜ´'Äuç{¦¦¦–ÚÛ—î¼3hD׃LÁC\w»ìˈk¾ “¼“‘×< lY]‰Ñʯ¨.ÃÇTRÏW7âåSñSŒKÆgH¼ôág÷ªoÕ,]`’ÆF«ˆ />ëXÐ[tGÝŽ¿þëM;6íøã¿†ë';‚Œ^Gw@FÀޝoz}Þ|Sø¿„¿þcxà¦AkãèOð¸~¹.oÈXÆjpøÓòxFÙˆ†]Ì—áâà Îàh£ô6†+ŽÏïrÖ9ÒÓ&¶¬ ´áÞ´ÌÖ#C@ºËœÀJ}ó1—½ÿF‰Á-ñ‡:ÒG/ :¶ñX†¶1þ;ªã¼›îÓØ‰Ì·Q¼4ã课uíèB¦±ñb©¯uì.çYÏЀOX—d¯vÓÓh¼)×_”M¯B‡Ãžñhrvr°~gcŽÎîœíž]gÀÙ%žpR|¼±4ONIÜåYAÆ£B_ŒmÌç&ñ°E›'ébØÅ ¸Ó%P¸øð3îfñR€± ˜ò®€Ý Þ2@»T(šftPÙ«½ž/ÈÝ 9^Lú’Ԝᠱ´:‚ÉÑ•®ý¯³»ÅK¤Ê(]ÜGòУ[ûOp[œ6ÅÒåNµÑa.r-~˜Ä“ @xymz`{Â=‰âLcïÕÓ׎.l /–zñXǾa¦©’ÍÑI4Ϩº†Uoúˆ¦u0D›aèÆ=GìôLú]Ùsírš¼æx'Á]–µs`—3àÿæ£.I˜U²yÕ†-j#%é¢íb\Ðé’©"\¼xÉá—Ÿ$^·àXù†ýwèVŸ¦¢«[\x `Dß;|–¬ÌË^˜¡oÐEw—éæµaÂE¾Wc1•ð‚ÁcEst/²ÿ<{^JUæù£š¥ ºõýM*ƒñb[ǾðÖïoÛírÀ?}§'‰™’ÿJusŠíÔê}éõ£^ñr̤ ©àôóõkCÜU GTèòÒþ£Î€×íâ¼›®M·Ë.GˆágŒ—16‰…Ï¡xiOí¦];º°i,H¼ØêŲŽ}Ôä!÷Vy9ÐkH—Üÿí¿éC™ò׉›á{âñ‰&xwÝß2hÓåwMžCí€QUf.˽Û›<4q×ùhÖ|PU¬ŽmÌ£6Ø¢Ü.9”.Ú.fÀÑ.T.^¼`£´By݈cå›°‡Á| ÅKàˆ‚ k–º²ñ«—Ê¿¼¯¶¼z=1õ•G9­V‚-\Ô _ö©4ñöz^ú?U WC·¾ÙFÌ#^l¼XÖ±üo=D%ùC^I¡úÞð†$CeœP ìKEXœñMè-ñÝDz¾TÔ­ãk#1Úéb+Ý&xÙ€q„5Æv»Œ¢tÉi»˜.—.¼Œši^ö³éA—K‰dY‰—*ˬ$½.%naQ¢’ûÊlJ—QÏ,x¹¨Íh¥óª:cYv¡Ù­¢ÆJ§P¼4ï¦î5¤ ›Æ‚Ä‹­^,ëØ¿sœç,“cÓfY•¥ËhJœ¼7ýÈ¥¸&±7­IRјñ#vzéY§ úÔwxÄ‹•Ä-õ‹p߬ U8]ïXQý§éSåg—C˜U°y„K [¤Ûe¥K£²‹pþpPV°pñàe”:“x)àXy†ýaŠ= ‡H¼¼O™s¾ûû;ì?Tm=1¿¬žé"¿ üi·¶‹q³0ù^ÂE -Û˜Qß+Gç¹–»¼ [?§ëÝzÅ‹/¦uì¾·þmt·MI•ÃyÄ&Çó8-Ø´oͱž:òÅ ºÉ µh´ä›#•]¾µñpÙÖº:ñ¨ŸYÙ.M¿èÿRn—JmóÀå’ÂÅÆKÎè´„‘,»lÏËYÇyŠKï—ËPÇûL¡¼Ì"•Ø«(]Pl@—ƒ"}*«»%ë§SUà"¹HeÄcبm '™.ÝX<«¢ÆúP¼Dªî¦×Œ.l /¶z1¬c#åVÇ@÷€ã<)KY SãxñKJ³¾› “ŽÒðÞùŒûZ&Š·;oÅ]/cpëÊNtô©ö·¸H’ ìÓ+~¡:¡A!Ø-²­É….[æªmc¶p©Âù*¢tQv1.Ó*(«šp±ñB¦±ò$ŠÝÓžaßÕÞ,ëóSèrCGy.ÞêÑ]ÉHa?ÕôB ƒgdä™.¢‹ü‚(¸F”]ŒáÂï•-\èÓ¥Òh+🥱æ˜/%hþãýT/×0\È­/McóâŃm u´zÞú]2¡¢íFR:ÝMr<ï8ï=ç ´ý¹,HÖÓê¹ée7tñ£XEóu½kC7XH질çÆÅ£”zùX˜§*®Ö_HÌÉBd³ár9ábà%7Ýo´ZZƒ‹©Õ1Ô‹˜œ?Ú/»5_„9z­·Ü¼ÿ w™ÅË•™× 5dýEŒÉ+“±èC0fªÀ…¹¸@‹šžÏð¬ÐBºtLwOqäEEP¼$ Yc«o7½–t‘¦±@ñâQ/Ò:6‚µg©útlMÉ ² Ïm \\’ ßM/ ²IÅ–Jìc¼ ã›â¥wþ'- Ù¶ž61—m‡\»9-EnËTÿhý^ݵ„>Õ†7!:æžítWF*í½ $ÌUÚÆ<õUØ¢\؇¶KÚÅL¸,¦./\l¼ i¬\€‘Xƒ •ÚÃ.Þ9Ù]lp„^â­ÖˆŠ»†9ŒÍu!i9Vµ^"rê b膲‹I¸Ð{å.¤¬ÜEtäD29ŽÁð&£ç¥O¬ „ý©ž®e¸[_V2AâŃix/Ûoý.h\Á€9ó„ÛÐQ¸@§é‰ çèÆ‚úoŸSli.œhµnÚYѾžz¤Þµ“Q2«»‡dó´aþ_ë7àM§wRèQrxë!É–D298†Ù„»¿EjÝ©w6H³ö¯ì‰çÛ×è› €Å– {\àSÑ]w=­v_‹/— ÌÊmc–p¹[¤Ûky½Ï_Є‹»°<ábâ…Mcè|_ƒµÆÜÿÅ«SÔÔxAöÍË΢ÇKè™ß©»*aü³%’.9ü`(!»b’.è]œÂ*³ƒÒ.¦á¢×L&g¿])´†­…ìÅ˶›WCîwzký¢%æ±t xñâ%¤ûÞÉ/ú¡ÐØØàf<™|i›E¸¼ž­¼Á+èàm¢Ò•Þ»I5뙘ÄíöŸÓÚ°ËðµDð,.¶³'§ô *F Ó9Í–oÿxªò÷Ã_S|a÷oFÊÅ!/\–'\Bh£vb©”%^` šåXÜoæ#ãÍ 4Ga©d”{ûãGô2ÃçÈ낆±F£ä¾¦Kf:7f°%då®I.-°ULÏrÓªþ_Q§U–9¡’Ä üÑ÷Ø‘«]@«Gi«"^¼ê%ô)íþŠukß~ûmª½wˆðÒ½íC” :¸_ûÚ_ºÛp“ºCr{´ÝÐ2jê–'7hÑíë.í ›#[¶¾ÈC’-õ²í·/ݲe³m;òð¥ aVl3…Ë¥Ù"ºdfp£.#Ë.æ$ÓX½/ ‚:Èb@ ¹sˆ—.åÎÁb÷l,kòɧ¨Šþ1 H0Œõ’}²ÞëÞ¼J;æÜHYw߀‹ª‘<ê5e(‚ɨ7æÇK7Wq,i€_ÞóÖ[o¹×Á…n}i›_/^¼¸FhD)/ÐVü÷Ÿ^òá$ÙÇÐeÿz”¢þO±‚~)ŽÐûÍÌú:¬Ù»UfÞüÞ{ïMH´€¯¥4GGñÒ!8FO•ËbEä ¯QlYÇGy~}ôöÛ[C|¡×¬_FRô{à²,áR¾j'–6ÅK‰ËJ'{Þ~û)A” ‰—dù‚Ã.0‚Ʋhö9|Š˜Á6–.€©áI]¹2íñê˨±-¹8&­br؆3æTæ]¤zAÓX„Ä tfþî6!¢êħºiåc¼Št‘¦±*âÅ£^ÈÔùl;D[älýhŠÂàzzxÌ+gDáe)Ê,x­C¹ÉŽSÒ Ö)Á›i†éL'³ö¢|j¾R ÒVž2J†Õûµ— Î N´4æÎÇ— ´¬È6f —˰Eº]RòÒë1‹u._¸xIñ2Áû°kp’Êî²Ø9&%_ØÓ.^Eª¢B¼LÕ³aL^ ­Z`Û/ë±XÑÎ: —±”O¸¸®™ ¶mcý- /pT#ñ’-wvpWòë.äÖ— •CÁâÅëÚ×£[¬$Å»ý8éÀÇ/âá„„ËÆæ Å Á¿{Rôg ¶Ð)z-FMå.¾‡W¤K>Ú‘[e2é›Bå‚I•ÍÝ­óÒßrï:ù©zt$ZÖ"_øS¨¤.Ë.-`[ÃRÄÓó‚G0ø$$F¶Ž^Ú`pÛ¥xé¿i/÷€;þE—û™”.™^e©/—÷ÍäÜ¡@º¤í´hÅÅies]3à=œ—¥.1]ˆX+Ÿ‰!€ùß]Ÿÿ ^ŸÚ ‹4U/–za¸)¥èÂ6ÌL¾ƒ£°[íä ª»"Zë—–¨ +mmQ:M ­; Ó%Â]M:i.¢Ùþ.ÀBTʼnºäûµííÑÀ³À?aV`3›¯\Ž-Òí"ËB\ª'ç_/RRä9Y‘ åï4Œ;W¦w¤`|×î2,®¢¿îx[S­[Èó5">|Üh÷ž t²ù™´†KÈïqÑUê¥ré”R/ÓÓ•"®â,}ôrÛuBrëK„.T/vÍ1Ýa¤KO`¨^Úa|"{¨Ø¹¶ÝÓ:æ—›6½®|ùÙSò]®”ŠHÎt™Í‚J “9N0íˆ9X0Ñù«ØÒ†œ~ÕyÔ¨TâLmðÅÓskÈ‚Ëå…‹–!éÚ/UìÖFðÆŸ‚ÄÉSdjQx9_ŽNCq‰˜–bµ†,wä*K0 íbñÒÃÅR|*IkAˆa7à"¹˜ÓV±iuõñ”öá7ŸŽ¡zµ²6$æß 8F‚…®fè¢LcÕÄ‹¡^h&ë3È‚¤ ¯mØÏ‹.èî“»ÃØüZŠ—¹8á%Kqàr3,3]0y!¡ÕGpÙÓßM4c’IË\³±U²èØöȰ˜zcþùriOÿ•—e°…¯jþØh%QrüäͦÂK/ó:Ï_b÷òVÖò8ã¥ß}<ž0 6uvl£…ô˜Ë’¾ÜqÝ´Öˆ¹éAï1 ¿ìXL5:$KJm/ó)Ã8ÖŸ+’ÁtŽÏô× ]È­/Ï—©Å*âÅl†LÛxwÇI"hù]XRx¹ƒà‡ç¨*ˆð î‰¼q‚f»%òA 6”{wãN)÷…‹°Ï‹"$1 !šº¥=¬º$`€ úÉ2US |I[pé·àr9áâG‹²ªpH¹\™˜TLƒ‹É=[w0^ÊÍûëöÃÄ`Èk¥ÒÆtZåðÚöÄu¦8•²0ç3"¼hR±€R•ý¹1Ò¨—,øÕx}«G!^`×uœJÖ±x•ÞS;t‘¦±ªâE©9“)eþ¢Ë"Íšª²±!Ü0¥†Èž ‰½qüÛ©8ÿiyÒ³]0ÓrF½îE†Ë½”¸—VsZûò? ÆBw6zJfÚlج—•F«e±…(ò„ÔkÂ…U½RÃãe¦Ãâu¦@2(]‰—GpQd½téëÆn3„‰$™ùjV‚Éù ïÏÏ ÍX•`¼déÏ̧´mì„ñWŒ—O@Ђ]ŽÏô× ]Ø­/McÓÕċ Å\|âJ]b¾$^È¡¿ŸýûQÖƒßc²¼NxéÜÃâ¥]Óå&Ü)ÃEv$Y¹|{oAÆ&›lùö÷?ÎPlâ¾8LÏàÙÎÞý À\{¾Ø¯VÈ€Ëe„K0Z/Ø„oF/MÜ£€.YZŸ¹»/³0vXË&+–té cš~Æþ‘K|ª^-Á~­a¦%ù‡y‹,™~þo¬76k³¹¼!ò74 •¯cÝrbatLÌØ|_Ù ¸˜ºŒ û`®5_LC׿º·¹Û0eìE£òˆ¦‹”.iŠ \0AÛ’Ø•(n,3–Vò…¦ÖÞ#,^*£×va·¾4¥BÕÅ ©“ä-.K—ðw]æ:nÐ’±!k\Äf)ö¢°Êqùj}ÇL&Ç /í,^^€©êQté £ÿ)]Œ¼|¨c3}.¨búS?aªÌäµá‹IÀ!¹ø« —å¡ñ¦±AÈLr'AŸt–)…2ž7D1r쥮dÅKòÓOH—žx2éR— g¦ïÄızúT€ŽYÆRéüüó*˜u(È £€qüQŸÊTš,B¾lÓØ~°7`ñ2Û]KtѦ±êâe=9&íTn†ü.ý)4­ÌÈðZ¥]R¥èx|œ½ŽÉæpÄù1Êq,z&VNŽÅËŸÖ]´i,X¼Èmœ\û ’.‘ÌÒE:©éÿÞ©ÙâŽî+R}˼tꆕz‰²Ÿ†éBNõ,Æbs•taËXŤK¸ ]‚°ÐWÌž·Ì—€zc9ý²¦ÆòÙ‚`é‚á TÔÙ´ª+t5‡h’$^zÍ|]k¬Yâ…^à˜tG<ßð2¼ç£—éë¢<øü^‘çg†ÒÆŸO£Ûͪ…Ó*ݽ$^Öî¸^èÂn}µ),‹¹K×~¹žŽL–.—ä~‰ãÄ^ÿóunÃûs‰q\{èyÁž’„—sœ°Ÿ“J_ $ªÛŠ¿|oüœª'†nˆÛÌ*¸ÈM¹r9 ÓŸ±óEó%c×*Ôû…ËŠÐâšÛz”–høër^ˆÏmù©M„)^€.sÅAºÔAÿ¨ù¼R/¨ÄtÉTWn*`ùZì|ýçt¡>•îý˜Ø7{ŽmæF¶Ò‘㻵Em /z'¼´ïåBtAérbQçn⾓ñø‹[U+0äK”òŽ`Œ$^8lŒé‚¦±,—Ázc'“Ú—oÑ¥\]‚°P0-0| ®ÅïƒU$\º¶P_0’.ø!^Pé2‹©«qºX‹#,ÅK£‘«Ïpyd°Ô7GxéZC/¤‹»m6€—Çä|4]ZüQû’,]3ƒ=™Æª¿–ø–ztuJÂKcÇŠ—“×v‘nýœŠc /zg¼tsD7Óö‹Ý—Ç!%Eõoy½-’ê¢V`X?™Ä 3^à$vE$Æ‚}0&Ð6‡âÛºV¥‹t Ñ¦å ½Cý—Q1±”'Èü å‹.{…ËJÑb™Æò´FG€.yªž ¸Lg“S¤^ÚÇI¼]>Ë¡-3p€-&uY8’]Æ‚cø®Ø´åÆH«`-g6°¢mŒ«;–e¦Í Oì@ñrGmÑE›ÆÄ‹¹^¶¢]Œéëй.TÒ仲“[qÆh&¤‰—|6 cÎxañ"éÒ-•K;¼ÿž81“.UábÑ% Y0A|©Z‹?×bŸò WR5޵$]ðý]£óüç¯Îéb-Ž"‹—®3Vp¿EÌüyëýäð"ºÀžÕx/Ü‚tñK]U,(®È»–°ÀT”£‹pëŠÉÃÙ9/ƒ×v‘n}ÔŽ´tüâÅÜÆ /{¹àҥЋ air‰% ×åÛŸˆsì_™êåØñJD¶[.®5f Åò™ @õñ)#| ‚ÇÀ46NÕœQ¼Ô] Ó˜-^<Û¸8!^ÚÄ`í¤þ¨­[ʲ>rê»Ì–öYµ…h+½Š˜|Qá`»îÂG}øc-Ú›W…(C>º\ .UéY‡ }A€Ñ϶iÛØÓü©¾¦„KŸáË¿¢ºdô¨Ö-fŸfêã² N5ƒ¡yx—Åص_Á}ÄiK¨a‡OÕì-QÀxIhš`š‹áb©–˜¿ç©«i BEÙ¨”›rxOÐg—Ã~¸õ¦ý¸?ÛâÅãÝe’zÃOpI–Ç%[öËŠUZÊÝ]c’xA¾ >Žx°9r˜Æìï¤Ï¥OÕ|©kKÔ»6]BÊEÆLº\ bü|±ÐU]r=Jpáuôª E›Ý ¶ž]89M­OÎ63\âSøŠ¶Ë~/çä°|«®n¤ ¾ zi/…Ër=ê.V]1-æñ Ò0ÇÒ1E—"[ït_¨aš)Dˆ—£¯rØW›.†iÌ/žms]Ð÷Ò¶…Úkb¿ÕÍ—ç·ÄÛeo°ä¬B‹ôÿ挒‡¶^žlÒz JÃSþKº(º\.—  y8Jû‚ƒ| Ê[ô§ºë/I¸øâÄ–I˜—2Æ*!áB}\VÃé¢g0„!*;õÜþ÷6\àÈZ@àÄÍaßì/ÕFx1µáá°)\¼1û½R ‡ÇjÌŒÁ,‘7!_¯Ï3ÒàݾËöëÅ­O.qò,™âÅ—’÷|¹Íô6%?¡Ø’à°ÖqÝdb°‹†ë—,^°¾åW/d. $JKR³%ÁõÐť•ݾãIÊ ¢Ë"FòÅxë¯v&Íô S¸¬Z´Ù ûSΚkãmÆ)Ù›w8tí¿¥ox ý–¥p’û#_È÷bÎó/Lá˜oÅ)¶¸œ0“1£ªA#^eP©ÍX£¶í½«_@«NÃ4fˆï6Niú/ˆû àúöî»ï¾ç‹ŸÄéë…5Ì–%ÞÉT¿3²ˆÜÄYiO>‰^­âÏ~ý;ßùÎÄ£œ·{zâ³2w2kII—KÃåRtQíÄ4|iŸjàÖßÿú׿~åvñù~Ôié–KÅ’ù ó¡õ¨-Ù€rUœ.j±(«5 MOšpéíÃÊaÇãö]/ƒ/x“žæ‡•p ðµ˜ï•¯ö÷ç•]+ú8Zl~òaDˆöí¯ÜvÛmÀ¯~æúqë£vìǃ™!^¼qY˜¦žwø¢oÞó«_ýê•Ó⋾·qãë/™lI2^–p×*F•î¹…llí\?ù̽/°ŸýÁÝwßýìY±€Ä9úÜljÕK:Yï¥ 6~-Gbn a,˜.W‚ä ¼õ_úò»ï¾û'·_íLÚÚ,…KnõТÍnpòÍ»wö/Äuöyñ“ÑžüÅ&ç“Ø’2)ð"†Ý¹á†>øà†çy…ñÅžKH¾´Ó23æùa)\.ƒ•ßÂl!_™8¹pALª(åb=õ5ÖnžûLmÐÅ0iñâÝÆQº,f*³—Ó÷ñõ/bËlßcèŠ×E_LÖ$‹/}ª¾å0,³ÃßáëëâQoËîູ%¥‡.—Ë%ébv«TXðæÀ6ñB¿ùk¾þÛx¥+—Èo¹$a¼ÚrÞh@¹:N5ƒÀnï€> p)püo±ÿíŽ{ï’x)¸cŸöI¼´z¦ùa þ tãë÷* ®'¯ üœÓ ¯Üpž×Y L¦ân¿¯{®¼H·>þ¦^zJ¼xáBiú]åH¾è¯øú½8ݾ§:ƒ1[’³tö]êèªe8CBTr\Õç?p9|7__oÂÍóòaXÀ×C—¬Š¼h»]–˜Ø´xëo}—¯/o¸ª™ô>ŠÞÂ…ÕD‹+£Á0vJL²/!Þêõæ.Â:YxÃþüòj¢=oßB¯äK<î™gúì™…K£ÅÏÒþð-±!üiGòëKñâË(é"F9ÃÿÀ¯ÔõObO°ÙB¾r ‡”Ù†Í çåD%ÜNxyKÌäÝú¤Rµ*Ó˜®Úè¡‹‚‹4Vx c—£Ë²ó¨ã|é]uýæö«˜É—}²ÞÂUA‹r»ˆSoBLÎ ¡¯çqKj†ã³»!ì$)¶±CÜð¾žÇe†©”Øv•ø2þ¶wž=+(Ôå\åN¦t"OLîp2•%·æJÊIQcðû<+ö£š ‹acñâÛÆ¹%¥¸4 ñ[49G”nÑnü™Cx!U¾m¾Bù•É&}„æcôú„ŒAÆ.ecöpârp¹ ]ëzÀq&P·bbÍ…ðB ê-‹xV]“Üå4}Ǻž'…¹æM³˜åw _.—£‹/ 0»œ_[×ïÅ¡c™yùÂì xÔGæÁwUœ.<ƒø}¾Eñ¢KØð úîzƒŽU ÆÈ`À4Ë£—-ü^éÌm}¶íb. •·¨súK8VM·Y×µ/^”[ŸLKôMQ¼ yá"[R†Åðüʺ^ñ‚lÑbP6{XªUÁ-“Fñò½mÐ&ÛÞvÄi²àr÷OA¼Ä{áˆXÂn eËïÂý\*Ï«§ c˧KuĈ/ø®uýlÅ3ùtÀ£ÞXe´ðëCØؒ,¸üÅ dO‘é,SÉäyxU-¸|pƒÓôŸÑל-qþ'‰‰]þy6ÄKè61ëxfhéÑ>€ùõÓ{"&TŠßç_±Õ]LÓ–[ômãZº´:Ûí/q_“³“Ð’Òi97/ªáH~Aï¶Ó–.|T¯A³c%/.—¥K ^$0­¦1 ¯çï®d£×„ zÔËîj;]xñ÷ùt‹IžAÿ]F=:ãtÀ4?Œת3–5ز‹1\ŒN)ekµ¥‹¸ôXÕ¼[ŸÔ?ùõñØöÂ…¥K†ÿM{×ùÕ€óV"h‘9YØ"z ›òkС«Dâe KX…[=ÒÄË.ñ¨V¦ŠYFÙ ™çÂ]¬f‚ cWH—@Ä´šÆ,¼V<“w<êÑUF Oã(FŒµz¤ ˆ—'ó-×°@xUo°éòX¬"&8=F‚½¸!`žU\òè¥ü-‹æñÌÔþ²F!•7Ázc?ÆZcVìË5AÓ46´+éRirð|‰ÓBF"‘}½wGøÚ×%®Îèl4:ÛÛ¥®A¹YF]MÎ×=ÛÜa´äˆ[1…žÔ)ÿñqÊL2t Ò?¿ÄÕ O =†ŒÐÆ¿÷ ávçß¿²ë^lR?ô¨¿åß¶OÓê\Ý4. ¨áR: ¼«½½}iø³?¨+pš+±™tà3j'áô›“âŸ)Uþ*ƒMÄð·16Œ½â¡ËéÚ7)·>ªÿ!òëçØne”tI»˜X@÷xvÛ#ñ)1w>–l§ ê8Ó&®¸s’€|‹ïýa Ü•hr¾é¡ - ãi’.`ìU“ÄÊ%Í]ßbê/úÿ‚b!}å׌.uÒä|Ùƒ„[¿M¯ä zÔ›«Œ:-äÀ0&FÔ—¿xÞ9rnÿ9ŽñþöWáç&]ÄM=ð7===/Ý,®µbÞ‚æYšÆú«/¡ÔŒ5ø^v¤\v‹ŸŽÃô¾ ~€ oҜڂVì·j‚.¦iŒÚJYpÉu£tÁƒ¦ãx¾Ã}Û å]ŽãÙå¾ó¬|Ô)«%Ìz9އ¿~Ũ[Ñô¨ ŸëG÷è@Ü{Þµ¿Ç¾§¹rUWQ®¤Zü}%Ã0&>».·½éÜuݸõIý“_ŸÅK\ a\@žMçW8=Ë¿6éœÇñÀånZ@E’.шҫv'ÊÏ÷rÞýÒJ_ G­þK‘FÍÙ!6ìYÇG—³ÎÀFÏå8¸|pƒÿ¦Aó|u+¨¤=(®?‚n—¾Ê,˜Æ‚Vì]5AÓ4†>—>.£)ˆ.cß›yÿ—x`õèò?*J2³Fèò{çàjÑå÷_0]ž[]žsö\–.W»6L¸P"FÄXÄO—jŸ.Ê­OêŸüú¡øR½Æm Tj§{¦H—W®ˆ.çTÂ~]~JïW ¥KÄ„x©ï ‚K~¶ztùÙçðR`w"¬‰Ôç§Ë ÎÁåÐåà2èòÊÕ­ ŠÃÍš½JX» ¦ÍÆ¿bk„.Ú46Bz]Ó!—Áaíé•Eÿ—xÖi]½£6=*í¤K]n]=ºÜºÒ±Zù€N,G»l»,]Ä£V .V½(4Œ…ýtÙî|XëtÑn}TÿèÀÈuà÷Êøú“¹T0]Þôÿ¥®J¼øérØi¥²ï°€LˆaÊ%Xp´®Þ£Vÿ¥ à dq‡ƒ´ËªÑåÍ«ZA—¨Z@E€“]Áz5A+öÃÚ ‹21\´l4Eýœ÷âÚH»™AÕxv~>’ ‡Káp¬±¾>ƒ?‰ÿ?Sס¹¹¹S±ã¸zÑkYÄøÙø?‡¿~h÷ö‹ç¤ÄC©ø}øxýå.8$Ö_þ:p>øïr^ñ á´ó[oZÉÿ zÔÏů˜„_ß_¿š o$h@×Gg£³»w£Ç¥¹Wà]ssçËå÷O¾¶•¯ i^_Þw|h̼†ŒÂâüG­âŸ3úçtè7ê ó\(AÇW Wp¸þü.Ú­OêŒäûÀVaøÆY¸”»9#|Àyųëœvþvë…9¼Ê/lÝ+¤;þLÅN_œ×1/{åËÀG³b] 8?õÐå¬ósHš$éÒ?†`ûXLDæiì¥k™þ+¦ÃŽÖ£c+ºd à€ó3nw~¾²G>ð¨o}G„ÍŠÏ~ƒßï3Àø_š?ù]ÄŸ'N­yìÆcä9û¯°ø}ó¼Þ7¸ ªæ‹ú#c>Òzš†°†Él‡ºm/wø-÷ÇÚ!&Ùïw9\#~e£PäOUµ±\†Ã˜3<ÚÛê¶¿Ão›œëºrnJ6# -$#Ç0^¬QLez-oRuسÍ9Î3,]0M?”ÂçHä¥/û/3vÉÈ1¼>tn·‰ðÏMÎßçV0Ø¡®Ózf•3]ø‚Ý£4 ›bÆüwm‘ùTŸÅ­?0Íø¨Þæ¥òò*–FĘ/vÑ(\iQE¤a¬iuZm¸Üƒcu½¸õIý±ÑoŸ/]rìëG©Z«sÚÞtþ©Éùß:d¨õˆ‰È€Ì˜K‘cë(v(-s^â#xÖC±€àUˆÒ)7Â1’I”ý©•±"g¯ f b´Œkun·‰ð›•ÎäôéU{ÔeÝ.hŸýy]ÄÚÀxTB,YÆÀ²ç=tqœ·—’y – ¹Ë¾4Ï­›Y ˆ Eðñb²Ÿ‹Qîµ ì«„ãPû`ÀŠ}¦Fè2ª·ñBƒª66ŠÛJ¸¡Ô; ɬÿâ‰Lh sAlŠ›¡ô¤ùœÆË V1È(0§ƒÝs†~öɨNÓÇèÉN¹3®].—Ðß;γð¦31%WÌ–|Aï£rW9Ó…®Fôî=êлe3Ä ÝEGuàkç… iV"À˜5_Œ÷JçNkÃw,#mcª6À=ÃØC5íOê?†ß§EUkPÍ ºQûŸHÁðÿÞÚu¶óÈö¡ý?¥[dõa2äc\ÎޱX‡öÃZ@ÃØCX†{šrêóC(gºÈ¨1ïq`etÉyš‘Š/øeOœ×ŠfRl½«õ¨e¸]Ð0¿ÐçÔ—Ñzíãñøxy‹yx¥K”­VuZ!Yîòͳ̤$À±Åš+¦š…iºä>Æn&bZ›ãñýuuoùWìJÆês¡KÎJ¢¤„ý\FẎSnº²Áø­L¹ ãäÔr•éÅX|O ð¡)›x”•4î8;‡ÄâÈÆúeöÍhe5éR/B—np6ü³åˆwvâ½¹+d ~A^õL¼Zh÷PÛ3“†ùñß…3˜e7Hc*|ÓüWÇu_›Þ«ž˜~¯Œ“—^^¸PkWv9—ôË`âå«ëÇ­XÕnQÕÆºôÈ×ÓÉŠ†ÿŸŒMç9I]¸á™^e—ö’°ã˜Yé”?š' ¬06MÃ?)?@‹ÖSü;è„3o¦î])]¼dɤ‡úaýÆ Â—W4“´õ®Ê£–cÝ$ÃüÂ&tÙe„ƒ·O­7æ7Øé”78Î,[ÍN‘0U÷Ïó_é„ÀØL0[ÌùÐڟ誶5 ;Æ5‡+íñ8˜Æü+öéZ¡ |)ç‚âe”;WÕ÷fdC¯ÄSMÎý-hrZÍòõ)J¥tCÚ:"‹a9\2;Àîþ‹&sŸûºxT¸2Ó5+Œ…Rü©ÆV—.Áx ‰±´Y|Í„ß79§eq†Ü•±¥\¾Íû¨Ö†U-/fÆÄûæЃ‰rc£Q> ã¸Ø¤žò ;Ï`s&ÆlIÎù§ù€H-0ÅpIÕÇÑï•>yéµaÁE7 G¬ìËìãç=ÜäÖxy¥©ö#Æ,·>~óУ✗Qôw£] Rð+â‹¶êm^ ™ ¯˜ )öxç>óàÅKwÇlÀÃ4Ÿ+PwÜ­˜n†‹«éªhÓ˜m»ºøÉ"þáP ßÂÛ5~¶’™”[ï*¾¤“ìÙøž£ëX>/>Õÿ—Œ3_Ψ»Î­ÊšçÿÜËÅLj,H /ØÚ_U=×ÁvlÆ< Uj– ¥ëSöŠ]ÙX}>tÉYú ¤é¯‘Mîq멦ÓÏ=·º³µBíÅ—wÂÚè3¦Kà ˃ p˜ki)Ñ\:M‡Ÿ}îYhï²!1«ºz¿üX”}óihõéâÃKhFÆýAó°í·þþÍÛÅwÁ$-Ÿ/&[­GµþŽ=ë‹«¼BZ0àö‹gÌ=øv0†mh01ƒ=iÞu×)—e×D¾¢§¼Ó sCx ¥å£´F½Wúä¥ÖÃÅC¨9³PÔ:¨"_†Óo>°úù}x]ÀÅpëãÅ"¯dÂ~wŽŠ#ÇH¬•9›á¥¸ýWÞ<Í/…õZ¿p¡>YfCL¼¤†îñ‚Ñ8fgŸýéahï‚ïWs]zùˆ˜æ‡Ô[t™Ñ¦1Û0¶ºT!‹KÂEÁ[¿ô³/Á[ðTh…l©TÖü£c<êóx)Ð톱CÝÍЖòìÙ ½‹sp¿$YìÉÝ, öl܈xizþ† ½‹sú#±ý'î|•õËHÿ( ¿åxæñbAÓÉoÏ”ög¸ˆa·š(‹a¯&¹HMb ŠÁEýzÖ«ö{;³T>Oúò=€Qï•:y©µïOþS/Y`¬>µŠkŠCˆþT=í^—vë‡NÀWhá|ý. Dº-è฾Âqv×›o=HlËÊlL|Ã=\ÅŽ)¼p‰-hRÇiµ%Ï så‹+ ™tR¦1aìrt©N.ütt㜙üsEl©|üËMª·ðsy)PÃaìêf×+¶ Ý)=˜1–»W6‘ ¸lÜ8an#p~r×=&ícSÍÔ1¹ÍÜ(q.^¦}e?MÀ¨ùPÚŸà’ÉÎÇÆ°€E‰M–ËÔ¡ÒÜlV8Ÿ ]hçZcìqÁ#ÇÍ7Dp·gËú Z×?Lrç ¾¨7Ž©rÑœ2<ÿÊ ]Óý¿¾¼µY¦èSš~È@–ôûèbâ…‹´á‰ó£—ß„Oõ¶xYžp—Ë[ÜÐ`TüûýOn¿ë.ñ[ä(¯¶Ó… clùsóÊ? l]ÿ(÷8OȆQ-.4ƒ8ì.l@5´ Ü´çP"™x’§¹gðíË7MdûÄDZ'/µ6.ÚI”ºN¦+•U ~˜ßíÕQ茶c9+7ˆ-±Å?ƒžï½wtÃ]·‹·ðóòœ- alníe±b_}ù¨øìG`ñSž G΋5”\Æ“‰öG<²%qªR@¯À±ÑK¾€¡ªîŒÜ(á³s˜y‡öå›&25Rû3\dµý¢ö‹´5·Ó‚¿¾ZûwŸêV¾€>º°FˆÂG褴•t¹î:¾dŽ ¿•†~‘hѾ–¼Y19Gk,ŒûÊè…d"I>^Þá¢åò¤¡§úe‰ÀÕ¦‹Æ  —BǪ”Sª^_—ä‹—-à3‚ß&NE`2”ÇõËÔy^¡a Ï=8Šõ[§âç1ü5e}žªáBÀ‡Ÿa2š/lÁrã{^“ÙZ0I%9ƒÍf5Ë32N^´6ƨ…•„‹ÑÛd Wþçƒ:¬K÷ú¹¤[ PhóÄ!È»ùˆlœ3¢Š¶²òG…a¿~±<úŸ+Âx9&mL ^&äY¶Mìw7mãÁŒRqd.šæªÈ7Vo˜ç¢Ö‹ÃX5º\†,R¸(¸@jÛÍ›6½Niëç—)à9Ö÷‡nÚD¡7Q¢êØç0èv!à â.t`›²LŒ^„hÉŠÃÒ9üá.ƒ/~¶¸õe.=íâT„,ç.,«À cðjF0¬d«˜§5I¾FOš˜Áu/Âä+á}ð/渖[K¹yŽÛrÎB¤>õ²¸ðîR0QÇÅÖ‘ú3 e\‡”!ÝLï7Тµ3Ë¿¤Ì.Øj¬Š“¥ö92ùÕë‹.ìÖGïµ|ìç}¤-;¯W¬¹Ê —·£6_*~1¡Û7Êy/<òÿÄK3? èò5~•ÒEÌwÎ õ±Cs*K]fxEõ{ cAt¹,Y”p©ìS¯‚‹tÙD›ñ³ÕâeÙ’âzþ£îº_\6Æ+îò2Vèv!Ã(”.ë€./OÀêC¼´ ºÌ ºL°rIÎt1Tÿ\s–Û†öì¿Qo…þŒšJè®Ð?­¶0C<¨ýÅ 2j‹‰aWÉŠ-ù.€a æLcb³)¿Zkt¡mòµf´Ç%&c[`mè} v„>8ÍͽئøÍ‡Óbe>gà%4/“ Œëä±'ÏqË¥ùIµU´«suéÂx¡ð¶á<Ã¥WŽÕ#É)K¼TåK[¡$]±}ddºRù<ðÒ(Ï4£$]Ü­â<“,¡x¹x¿”+ra? *HºH¶ð”G¸$ó²×‡‡‚œœ¬™ÓïS0áÒT‚ .YL¶„+äs;éBŠvÑŽµ×]ЭO_£IsI)°¡ÂÆPº¤ ¸¤¤Å „‹Á–`ýB­¨ 2kŸ¢n l¬Ÿ t™›Î™ÒEüEjš’(AS¬lJZQ_D?]–C%\bÇÕn ïÆÍ;6mjWâ%³\¶¤éx ½ÿŒ¥ËƾŒ»X©\‰ûæÊNdí ÚãE貿=Žâ%ÛÆxÉJKÄ:qw1õÈ!Iƒ-ðå¼ÊÇÛÐ4@#Ò¥k0PYÑØ‚"Œ'LyA¿.<ì’.J·D³#O@Ę[Ö¢i,[þó£ Á…4}J†Š…zóÒ ‚kC›Å0Um^²Tl¾ÌÂf5XàñL )¼ÀŽ.ÏhŠ.(^ä1 [›ÛpÿçF…—TZe}âÚÀ±Ú–ôŠ—@¾±ìb,]q©sZ7fºŒ¬:^Ø0&>IÔ.É0‰—Ai ”3a‡À!¤‹¡[pÇo6à’Ìêqe„Ò©RÙP/aN˜NþLÉ,\9<¹¬ñÃPÍAº­¸ÔãK×]ŒN”ð* ¢šl|,+tr™V. ¬G"c^¶øõKj^gV*õ2Í9/Íôp¤Kj±Å”.åˆ¬Š «f’ §¶gp¼Äæ=Mª=tYY´p™Q‰›¨ýQ»ÌîâåÒ‹W³åÿ§îíƒã*ïtA‡ÔÐÄØÆ‘ŒÆ-";º°’%µÜ6-µƒ-9¡!QdÇÞ¡ XI9ȸ/CP$ˆ¢°Ü¤§vv˜¹Ù›ÔÞ…ºu³ÅTvw\w©Ìš©Í[¨E‡N˜Ì†­ ÿøú*lUwŸ}_ïÇ9§¥¶Ýf¬35Ä–ŽÏÇ{Þ÷÷¼ÏóûâÞ¢‹©>O™tWÉí"Â˜ç½  PÊ!ºôw#y¹Ø-ðÒv Ÿ;ît¨×¹ÁE–tË·I¢b|iáaŠf/a£{±¸œÕÃN«[°e|?HOâjÝZ±Îr× ×ºhs—×9.^D41jI™ç}ï3pjkZ1ºøMÑ×¢³'†›±¾Ø†,‚´çB^†S]¢šº€ KÚF8’¸jèÂûìÄ2>Üz½6h¬ŽÉK_±ð„¨ 27ŒG¼†Ã‹cäÎROÜ¥H%|:Ä“?õŒlJä*WËÛ.o)ÌÜ'*Êa=Þ"àrêížx3ò4Šb 2&7›àŒ0„IŒŒÄtðßìÛV¹~ÇÃÊgÐ?`·hZkè‚3ÙFå1jlâN¡wY¨Ë²—Pâ¢lx6ˆ5s2bÉ Ùž(³´áE å¼(ò2¯Ñ%ÑE^—4QÝ,,%K#q/“Ž0v jX€¸ðŒn²¸?q—J·!/!»C§”£¥ŠÙºØönB•«áxA·‹Ƙº¨ïèr¼|ŠÈË9õRÝ.Û·V*L^šZ^ýòfò¸ ¤£Îaðe!AZMW³—0¿ û|Ârè[‰––&¦m]/,Ø(Øie¥àÞ[Û®!t3'9.:Nì|eÂui"pÁ0â"Ž[²ÂèBá@6´¤{šSl´ÏÚõ-S6"Çç%â­Ÿ%e,¾ž[Rö m1uü¹6M¶‘èÂÄ%““Œ¥%{mðXí®I^À^FkÆ'§5u9ÎÁ0l¯ñ𢅱‡'ÍGÞ–#"*ÊDt!òµ*ÕLe…²0ÓÒ6âÙ)øEö Ǧì/ˆi—}Vì_È∃JMï×ê&—ëè‡sâó>m’$ )g)c‘.˜§Ùø'¥Þ‹¢0½JÓW¿OÑç·´á‘9Gs“ÑÉéÀVÇúuä“—‰ìKŒ.˜Ö·¨Kî—OóŽÉKN×\v/ñËE›¸È|¶¹?r—õ–ƶY¿n™`[C]Ìcó"_4Úñ‚n-Œ1u©TÞV“ð¥ß—û‰¼@^ùÚÕ‡‹^$òÂɹ?‹ …ã¯"¸`%Ò’CÜvì÷júbà%d–XB-4¯C‘9ÑÒ-äÉ…œñ®òÐP'¦Ø¬[×™¾vÐEŒ—[(M_!È< Ö“L–¨ :¡ šÚÐRFƒÉ›ÌiãuLGp'X ™@‰FÇ™”°¡ñSÇŸS(" CM\L:lÌ^åîOǦ8lìøÕO;¹’úÌè÷˜8IëâŒC?Û¯æÌ^²ò+W¬¼#BNV¸¾œ¬¯øRj>¯±e¶P¶{S‚©ƒ…~†­{ÈKçÀµ.4)Z2¶tÄââDBêBà2ËîHæ,3žnJ$¾ݕґ4É€k|áúc Áäe‚Ññm¹â0³—fYŒ.«hcõ¡‹E\LóÜaZø”sç º¤-p¡W¶–^óד~ÅÓ_çàc\'|¦ùŠ]þvÞöNzØ8ùçDó*&µ,oûÚA—6®^«Ù—Úic›#¦.œ®ïz\2Y/åóSU–|Îê ™­Hϸd”2+…½yft)›6år°ÝÇǹ‰ý,á±aõ¡‹M\ôÇñÒ(xa¬§Þ™²F,æVE¬«<Á”ÝQ}ŒUòã]ÊOp‰¤öû… ƒoZJþpI+ÙyYàRŠ•ý â-ò¢¬µó/­)t!péB·¾xŽ š¢0Ã:†ê&YÄ%e bPT?Ã3|rÎìï#bƒÇ<_z,öÂä勈.H]b1³€Ä¯I×Éóc¦—}‚Â6qu¡‹M\L5@Wcî²d¤±?#v ´üõ©b®.ÂØ¼ÙÛ7ÖñC~#o‰º¨»,jtÁZáÓÄ\úËj0¼yYü¶úùEѬ ¸LΡPjÌú§›7j·ñ%™4‘c6»à¢y ® ˜PRMc¿aÑÂ2Gê24ô<<Ã5QÅ’b$¾8±I±ßÙ6´.¨Œ³SB é¸y_ÔT̘q?6bà…É ØïÝk0¼ˆ0ÆÔ…Þc?¢ ^¾àÇ0·2¹ø4îžtË>ÉsiFlID…ºô:é÷V…ŸÂä²S”Ç*o—iÎqåK®'æëCåwPKê²¶Ð%Òe1.®IÙÉQ–8“¢Q»Ú^É™ÈZXÿÇí™écü7ú~†"//aLP—ŽR2ès&f `Å)³1“Þšu£‹C\ÌöébÌ]&4¶ýú\"¬å¯_#] Ð寿…îxûŠ0ÆÔŃªð³ˆ.H]º©g?y# ^f)çå×ëPäi𔽯ðîãƒ)9øRöÃˤ›ç’Me\lÑý]`æb\ðPލËKØØL=ÄÞk]Lv—'†‹MáŦ\L8U›=o{,ÃèÆp²eó:è7ïÔçç!¤«Á­–15㌻.ndxÉò¬L¬¦­Š.q1àB›³Û‰ÉXN´þH^jc‹/1¡.ÏЮh9AUÚ›|Ž—†À‹cB]pg[DtA¼Ä/xq½ºûy)×M ûºFr!gÀ{ƒ©ï4;Ž¢•¯aË8Æ$Ôlá÷öÐñX9àâÖª¬øŽ¥¡TLï‘!ê’–jkÅï¢Á|”°…å1`&1©k¡ƒ^‚Nô‘1£ÿc!p/®W(JÁLq€¾Ìi&X0ì…È ˆ!_‹#uqÁ«ü•' U‰™v:”Ý–÷uJ]]âbf°_cîoöîÓH^Æ‚ØPÅ,]ìÓœ(#ØhÇ <ÜaÞ ui‚ Ct2àòê"G·¼àotäØBÿ«š¹°‡µ¤áÜmœü‹|±à%ïK¢üh½‹-V÷° !ØÆ&ˆº< {ñnõ;þµÐå±›_ßüè·,pq±Cyîß§NÚw?÷ž"páp*[+ûì¸O“É&Þ¬Ïÿ¶UŸñ<œuÏæÍ'7?úwVÀX Ó°´dgulS׿¯]âbYH~\»[¥Fb8é9 /+b‹Æ+ðÔl ]9]"žôxi,¼°0&ÔßãþNž<ùïþ?Lç"-lèiο~°Qû¾{àgp¡¾“H]† Õ6#ê|ð‚?fÁ Ϋ}k‹ÁáK†±¦ˆico@_íôý'?ù8NÑkñxìëßüæ7ñé"]N{šc Nx^AHCˆKÅŽ³}”j{fÜ.ÒM¼/°³-¶‚$^~¤ ñ#'üñÿùØ/úx åÈô™;)X)“Ê¢“›ô-¨ÕÐÅ%.fþt1æ.@@û °Ñðkb!ªëbßêò$ŒiDi´ã^vŠ…1¦.`Ü¡fáã'÷Aßð#Š,3¿[w«ü û_Yœ­” ¸È·áÖ ƒ½£VÙP÷€_^p^áÒàbò[Lè¿Ýùò Pk#ê2\&E﯇Éð­O]½—»bÞñ%¶gÙ7*­:wÑFÀév—ëkñÙqŸ0f&ÛrÞ*-mù÷i;Êö qªâ¿”LK©T6¹Š6¶2º¸ÄŲúq-xÑèÒØÓ@^úWÆÂ«)˜@ÏÑ®h©"»¯€ãåÊáE„1¦.ðz@·ì"?¾Uh¯£Gú(˜³þOvèsOc\nçáS_vP1 ¬ød>=¯¶<ÈàâãxvBEÔuÅ´d9’‰þªŸêŽ/]ƒØb- \pkÙ£“ã¬ñ¯M\Kc¶û‘3néM¨ƒÇ°ÔªÝu áåÈŽÇ[ÍÚê’E[š .[ÁÑîÓBÌ\Î'­‚..q±fo@cî;rƾ Vëä5õ9AUŒt±ïm¹áÆ2¶vÔHÇ û, cB]@{@›¤G¹¼ò*ûP18Œòï§hÕŸÙrèW4…¦VfÖ€é÷ãKWÄZ@.¾ÜIN[¶ÐKþ¢C5ÔåTîN¶^éº;îÆìÉ–²ûHœ6ú ä®Q¸á‹/¾ˆ7Ä©:a•šð4¼xŒVÐÆVD—¸Ø›oó¸^4º 4ö1̇հE¤ªòEuö³¸+š3[³ ãåŠáEºR2ué)ßã (ìf{¤:QÇ”âN/ÀY÷žxâ„|çSo2¶T.u)ëY|8c£‚Á, ³Ë™2³¤Æñ,„‰ºåú‘ºàVŸ]¦èŸ^s¼Ðm7ß|³záê{A€íÎò â ºíu:ks8q!_‹mÇÅãi·KÖ*&¹/PþÅîêÙ/_RÆìdYWÖá>^}s™² /Q‰ã‰î“ÆVDq±ænPî²ÄÒØ/ÁN?ÏjµU1ÖÅ Ná•/°0¦¹U£/˜8IÂS—&1I<¡ÁSo¸¨†ðòüòßøÆ§ÀšŸÄ$JâP—3igÐUÔ>¾Ð¬¿ùæ×qÆ@ë‹£Á¼|B ]`ÕÀÞ1=OÔåó Çï²/õ§Ÿ º<ÖZm}ý<~÷bµºMY -º ÇýpÒ-xܹMÄàâª#¼ýöÙqWs'ƒUÏÚýÅf‡v©î¹9O•l¡P'®Ã7ìix± 1Í_ºøˆ‹ .öãjx1>*8{õ¯Š-t©"ÌÄîAqºÈïÚ¼†Â cL]šÊ÷ø´»»S×|ÁývsÓ›»Qg=ñ,_ųNu°¶›ÉžÅ°tíübD25ùñåìøó_ñM…L5õCƒ0>CÎçNÑ÷®1pQOwÓ[x|ö6\@e;N¬bVÐMïâñÏú,?q™ôÛñ¬þ…Îv‰›i£{qIWƒ/ýø%w:˺o„<>Ų¿}ì%‰9•9 Ï'­„.>âbÍÜ]L¸ \J׀ƴ7‘š3Y/!ªëb?ü3 .@w~PÑNý†;^²FcêY&ÉšÐÇ ä>æ*v.níÀX®â©7”õþÔ?Ññ udèO±èׂÃ^¶‹ü2"j€±ñå™1¿¢£Vj¶àÃmÔ7ÆN©ŠÔ,Àt/õÞ'†.ï·VG󎯷Â[౿Ϭ×ÔIwÞ"‡:éØh½FËM÷™Îήw…1w²éö‰IZ4ZëW7üõÝrìQO(¼´H2—l˜^} èâ#.6¸„=î’A—ÈY… ý5ªù /u®h|9os­ÇË•Á cL]"éüz¬SùGʆ(~uÖ³úxB5E`’ÈdÐë£Ò¾)ÙÄ™ü)F…‚‹/ýþ)³mjeßÔrÂÞC‹}îø_ýSôš‚µ€¶üê-9njÕð’¼0·WЖ߾+Ÿð¸äüv\Ø}N»]æ²)svð˜/eK,ÇK¤Lªà%9•“Ö-ãõ ‹Ÿ¸Øó6Dîë¶ `b†Ž}Cá²5T1ÖžÔec]µj¬ã%e„1¦.O'ô±µC›¦jcSª?­Ìø?éãS ^0¡¾^¼(é,1J#rø–ŒÆ—ÀŒª…-Ü=lIÜ.³(-Åž”‚‚Úø/õÞ'….ïU·˜YøÎ;/T«»¤§±!ì/VGÿû[̱³Z}ЊAAL×´òÛqWs&Yë„€„ECøÒ¿Í¶…wßý”º!\,ôÄ0Kc/3’ͼbNe-tñ'äÉ·6^]ÔJžÂÀZ¥’/ÕŒÔþU²R±WG˜ãåŠà…¿S—žrp@wé{O²Wᬯtyöûê,Ê2ç½\¦9R¦¤ ‹®7CaÊ„/ð}Sf׊¾)Û«ˆ©>¶¦èµä{yÏ—·Þú Y,ê Gf½¾Õ WgCÅò;ž‘_ˆÛ%ë”ÆŸ³Ö(ÿñ%8fV2cD^bЖùPû^ò‘UšxË7ç“Æj¢‹Ÿ¸Ø³6LHc[`ؘÇY/¡ªëb_Cêóé¸ÃVëxÉhaŒ©KSØ„~¤»û\?UÃÞ¬S0ì¸ ¼ìBÍLvMIt¾žÎŠüæ¨y 0„/íÇ‚3¦¶ºàdHœfa¬\Iò Ei2ø.õ¥O]¾U­ÞùŽ}ÜVÝÒoc lSÕI/Üb/V·h¯d_³%Äí¸#Œ9“M¨€NZ¡õørOµºónûP7„’HH^0Ó™ÅG’Ÿ—Ь–SY]üÄÅ—ÀÚÐd«Â«&Õ箃¼Ð¥€ºlÈ=/Î,‡PÇË•À }¦.MåûC´höm „ùÈãTUu– .Ï>{¿3ÚI¤.‡/ O£‹U|¡ðåžÐ)S[?”ɯp1Ԩ޽ܜ¢w\;à¢ÖÆgß²›«[\d´kuÖO޵׫[\â’0»0ËŽkaŒÝ.®.FödÙ¤îk| ³-Úu%Í–›víg¤`2]g¨+Õ@—q±çl¨.&ÜŸ¢Æ¾}ëvЕŬ—|˜*&ºØõH]@»ÁµÍu¼aŒ¨‹Z&!zTq\ÒÓÔÝp†ýS6ºüÓ7`™Iþ#Ìë<ô‡¡‹À—7BfL l1ÊXb¹W„±Ò"v ˆáò_êŽO]þ´ú¢3 ßùMµzOÌB>ÉØ[îT'IHÜŽP ØqGs&›ñ’óæ7!~ðèÉê ÇÞýëjõ~øH^ZD3ð’2"BöÐ%@\p Y^X€Iõ´÷ƒUÉ ]j6%÷AK¢_ý±pÇËåà ¢.êæ›Ct—‚ ½[ßDàÒ÷—ÕϺ~ç˜ÃJû-tÑô%Gµø¾œ ™2·ÔöMÉdÈq*eÏRBS—Í!Sô±k]þ´z›.oý ¦ª“˜¥³œõýîoí³àÕ­]˜±ãY­˜ñNÝÑſġqè‹Â—°1»_|¾Å’fÿ^2R©¼RŒQ陸çJcáè .ÎŒ Õň» c.ç<ÏÆ\;îcöd³H8]Èù{«O¹Æðî-ðT“D^¨(mõ^P4H¬¤…¡K€¸¸™€akCà…}ŸGeiuòB—BêâÕ˜…/᎗ˆúL]ÔÍGÃT}»õ:›¨ †ýû>t¹¾sRM†y—¦Akçe£‹E_šidFC¦Ì×W0˜TcÌ+â‚)⥂Sôë× ºÜ[ýŒ‹.oÝF ¥ulî­Þä.ðwy™ ¿™³vaÆŽ§Dc·‹£‹ipñìÊc«,k"/QÓãžáÌóÿX‰R)s®4†.AââÌ×p]LzSÒC€ñ y‘*#5LºQÆRŽS¿±Ž—”ƈº@eØ„>y®ûcï.ò¼€ õQ /°RQÄõbmϼšt f4dÆÔžõ„.0X{Ù; Àˆ_úÒ.ÕHt©V㛆{ªÇ|‡¢Ù¾‘ÝþËX%D'/û"þ“µ~!ÜbÅé\.W«¿öëÛÝ yAmŒIÁˇžYKu¢K¸¸à¾6”!äÂ>¨óÀ?h^•¼Ð¥ˆºxãZ‰µð¥†ãårá…„1¢.Mµ´ÛT«>pyö„ø¨%ÜW>B§Lwýǹ2¢Å§ NÑkǯ_­þʇ.7Ûacz8~ë[à7ľjGؘmÃbD1Ú<ß^ú,4+%ÐÊϹÒXº‰‹3[kèbžw׃._VPñE!/̃ÒÅ<¢.pò—G|¥éxɈ0FÔåã° }lï¨Vÿ)€.“ê;BgL]K…1JÓï¬9ùÞû„ÐÅ7 ßy¡:DßÀÞ²S/¥@Ò‹sk¡ .ø—RŪnX­úláÝ;Q7Î0yi±Ú}dµiOÙ=+WA— qqÁ¥ÆÚˆô`_0ñ!`Båjä…/EÔE„±I§¾e-ÇËåÁ cD]ðæa:Zº<ÅßyÊW¹t N™ÑK@—E.¹‰Oœ¢w\Cèâ—·~bœ’ÖpøÖ÷»Ÿ!GÈUC—à˜mAõy’ZSbæË˜/4ù¤îø˜Ö)ã5Ñ%„¸¸sµ†.6ïFtIÀã·¢4Fäe.áf½øu1¢.(ŒÝ÷)at¼haŒ¨ äQއNèÕÑåSÁ“êE—S×қŤh,Ž)tù]€B?ñä† ìÿc…mܧބ4àë“£`ýƒÿ˜6'u!äå>)Ãô¥¯¯Zý—€³™<ÿyávGÙ¢/¼:æWA—ââ—°µÁÑžQ[€#ilEò—"êÂÂ{‡ ¾Ôt¼\¼ 06ˆÔ…n6 {žìWÇÅÎsêxfãÎÎNÈ(c˜UŽEöoÄO˜–OÛeÿEŽ"ÉÊØža>Eÿ“øçgúûÕct>³jeî߈離߼†Ðå³eìõõ€¤ÕxtÁ„þç€8¡&t ˜ [À?s±¾õp¿·Ñw…]ꛟºÜQ}Ý7 ·Tÿ1xÒßÈŽV÷ñÔ™cÒfÇ­ˆ1k²9};ÈRBšÕ }ÆPݰB R‰¼Œ6–­ØðÂa'uÌF—0ââ—°x1ÉT‹ZõkX[‰¼ð¥˜º°0¦%cÁ—bMÇ˥à cH]øæaúh9ÞDú5S.Om©>áCüÎD]Î{ŽKÒçÕgÐ.qý-!SæÑú‚dsÔ3*[B¦è£× ºÜQ½É‡.[ªÿmÀpGõf߇¨Š„®æÄík;ž+Ù.V¼˜íЫcwTwÆlŸU*¤8ÒEªÒüŠ—Iµ»“Pé9GsÐ%Œ¸øfi÷—þ-‚.88$!fìÅX±¼“/jt1¦.$Œùút¼dX#ꂺX$Ôþã3¨ánÅ•=ˆ®¿W¿µºjœJ„vŠ-Ï­ØpÅךõsäîãEI5Æ;¹çÖu_ªÑèòõꨟAW§ Nò“Âê2u8Ca&ÌŽ[ca»ðp‚,SH^’T[ý^‚jÿbÂ$‘,ÚEÚX¶âÀˈ›]òTaÄÅ.ÁµaÕ_ÌØåÑX[¼ð¥˜º0fãáK¬¶ãå’á…1òºðÍ¿2 ÿaòð †}”›êÚ\mõ»]Ôwf¯Kúq ^-tiêí™S¡Â!SæýÕÀEÍ%ŒCݦ(™/ûB¦èû× º¨µáw»T§oÈnÁ³üÊwõµÊØd0•Ò¶ãú0CR&^¬¸³6fpÇ+l fÀ<ÜGËú±¤Ù>YÒ˜….¡ÄÅ7GƒÜßô»‹Ñ…¤±ë—0aÿ ˆ3-c¼uª….vI×ââ!3æýZà¢Ñ¥—#Ænämæ×ë½TÃÑåýVßÎp †ö¸ø¢NÚãƒímz˜æ(€*fÇÍ–ÌL6¸¸ÉÇŠ¾€Iù Õ·×Å:Љ:‘³r^zä ]^"‰Ð¼JýT¡ÄÅ.þµáÔöÕ±–Œ4V›¼ð¥˜º06âÛ±,qÉá¥Æ°ƺÈ{¼2 s1Bqëªÿt¶úÈË(…© ×ex¢×ÙyÙèÂÈbÐÿ 8eÞ[\r (%6|ð?#>NÑk¨ŒÙ›|ÔÆÚý«³nöí·UF–ƒ5Æl;žÕ¿ˆsêÌÈjà"–ÿµeý+5y©pwî©Ìð‚Mªû¸’\Ü‘Æ º„ß p»ï$çêóà€46P©HÂ>Ë)¿.&Ô…1/ô²4Êñ’ea ©Ë ébµl ƒ-•°gÓ÷Ôcþ´ÕG^°âeZBýg{f£KÎé ½Á:ƒ3潚à’téãâûH]zi›¹üÿÖy©Æ£‹6'4þÅjëW°Gƒ/ê$;Ú{[µõ3uâ®0f¡‹ÆÌdó‹›|¬­ønnù uÃ~îÿ’!òBç5ñ"LY‘c:%ËQÇä©B‰‹\|kÃW7ÐżKcµÈ‹\Š© cÁ”…/¨UjâË%À îXº´è÷øzp@9¸"B­¬ñØ\­>åx]ZÿVa…0Ö@Y¬ãÀ”ùÖjà 똑ùCÀ…v›SôZêò¢Fö'N¶K•ãKž†Xõk}ߦF¶’›”K»Ò«Øñ”c9ÑÏ"«‚‹Xñ}1»Ÿû# y‰éˆÃh°ßËR®ÀÐc–4&ON\üóÓÇýÝžÆ_tÁÁil7ª¼^ËF…c]Œ© c‘¢Ò(ÇKŠ…1¤.¬‹©ã?&ôýTŒz*ÑujàÕx<î&ëO¢LK>Úè’óõ›æ¾“›3æÿª .Ë‚.,Œ!u™jB#¹„“Áw©o}Bèâ½W5Ûœßl«VáP_ÔI¹ïpj¿©¤ç cºaLO6Ÿ=qu1«†¸z½ÙþõuÃN]ŸÉ uQm ÑÅLñ×^2ON\üàâ+‡æ¯uÆô‹°4V‹¼ð¥„º@¡ád˜e@JVªÔÆ—úáw,H]ô{lz20 §: j.¨×é=½ø¦úÎOX©”Õ¥mÑ¢iNl¡K›‹,…áÞaç :SæÐŠàBå¸KºŒl4³ÌÝNûŽù¦èw¼kéPc¦Ù˯¸üü•iZ@ˆ/R9_¥7¿Uïð€)”›s…1mÇ3"ŒÍÙ¥’V—9m§¶ùÆL·”Qøb7ÇŒºð…»ÌHTgeÞHcüTáÄÅ?;]î?çë ¦¹ Núm­ŒüP“Çõº˜PƲ!‘;r¼dHCêò2ëbž÷…Ç|úÙrú t¢LõL¶ìØ;°Í†—oð°³4æëïa­‹,™T›lõ:¶ùfÌ#Ç#µÀÅctiBaìÔËH]ʸÍT;ÖÒ¢ÿR—µ€Ö]îêØ²’¯~·§µ ©¥çñNzª¸Ý¹§ªNš¦^ëtÀ Í…¡‹Æôd󃋭‹™Ž¸12N£OA ࿼؊7ì—úüû{¬RÉ=‚.¼D!ùñ©Â‰K\œºûÁž$TÅR¿ KcáäE.ÅÔevE3¡Ÿ¡×D£]aZ%<0Þ·Wû“ÝÓÇüzêi¤y™ƒãŒ-ŠžÌÀ°?AøÕYÿÛˆT»Ñô¦b€™q¹JaxÆê v&Š_Ð2‡j‹nô@Â¥éO2=…:Çœ)ú¨ç]kð²í&È©üìÍêéß¾ý»¿< ñEÛ<< ÒÚþùfÿ)]…=ãîÄ]´0Æ#«‹¶âójÜæŒÙ>°kiX†8’ÔÚ˜ /9\,E[ |ªÄÅ?7î?è;©Ñg$µÆ&½[ y±\/¢‹ u!a,èÔoœã……1°Ð¿]̃FÒÇüú|$ ÒØ~!ØÒ?´ f}ë§[ª/ôH½¨ã]¾6Xš‘Z­^Lo°§Ó¸€ì£®©.‚.½$ŒuéÃmf w‡î¥.o]foÊoB£›Ñ-ðßÖG¨»`_°·Y+Ÿ¤6gÓ^!ã!袅±°~]Ìê¶Ž»ªâf¼Õ(ü÷Þÿ vƒ³ÑýÒ½]m&øô&A ^P˸êe5AAa¬—ŒÜr‹—ö“fŠÞû˜w­´€¶á‹þÛ¾ßzàËÓ2Ãn¶Îz†cŠbÅR¸ ³DF—¬®Ê7ºØ àb[q@Í݂֘½sVÿJ)•\¾ðÃK"³TLjÅÒ<Õ|8q ÌL‹û±Åó¾'è’µjyžE^Œë…u1¡.$Œ…8õæxÉ’0öP—£¢‹¸ìøîßø'ôC™Ùî#{™¸¬»ŽjaH€õ™£óÍ]$­÷rÃvŸÅÓq?²Ø=»ôZäsüÂ/f20ºô‘0FÔ¥·g%”ú­K]îºÜÎÇï“:l;90ÐO–Ö/š>Im?·À¶—û­k!&fí$4ºhaL&›\¬&®[(ɲPª¼¶y ÞpÛ¾Ïo®¼³qÝÿea*ͺI:"èbÁ Vás2+û¤›†Ÿ¸ÀÅ’ñzCû]I~‘ÆÂÈ‹\ЍK$/½ºÃx'ÿ2á¥MúwɰÓèUþaó(h¹<Ž_ð¾·Ÿ7ÍÒ»þO†-j³G"#èu)d1b¬ð¯²¸c5‡¦jv¨só¨¾ZÛCpqŒkCê’Èu ¸ ¨ÍÌIzª;õ®ÁC/ Ç·ÓñéMÁ—‹Shž#ãý›å¬;P<›Ê£¯`Ì— Îè’a,gt±Úàâ·âjö›4L1–]»?²d9·d☮Q1"t)óq ÌKÃýðÅâ.LÏöbB¥M^´ëEt1¡.$Œ…9õåxI‘0zc?ëb.<&# ?îÔ9-j–. öÁfcMgÕõ’4F5Æ’VËë’,6¶D¤}öÖŠýY^¬ÉÀèBc¿¤4ý¦y¤¦ØcA]jË. u—?¦yä+åsê©.rÿf¾Ü®þpÝ}ê¤!¬Ïñ³nÃ^!­bª]D“ÉÑÅllapi¦Ü—ü/¸ÿf™óÅG° ;.^P›çºcDìûbáÄ%.úq{kôR4ÝÃè…X !/r)¦.KÒ’(ô Rc+âK]ð‚Ù¬º==1ì% ÿßw‘w·|üðT?7!۱.ùÞxã žRƒw”¼.¥3pÙ^ZºfšCôCšõÃjÇ4íÚu?^âì“.¼d]p¢©K(ŒQyåpÁ€ øND¼/}é[Þ5{ÜõÈ=ÝØl}Á‹gዲ Õpœ÷¶ÿüç?ƒ4€´·ÑJ.ùŠ{3ºdD›ÓºXMp ±â$b=øàß° 8ËúRš¼ +¦ög•0xñw|t —À¬ÔÜ?[,táŽq0¡Ò!/ìz]LSÆ"¡"Xc/$ëÐÏ|`œu1üPÞ©VZƳ«¯+¼eoûÏàüY +ÏÜðGôÓ­[±~<ÒÄQc¸¼ ߘDJ¾ºÝÓ˜Àe˜ ëƒþmºÎúàÅž Ò…1¢.å<–ü_Ð!9MW¸€®]Ôfª€‘u1_‚§ÞtŸúï8ÆIÌNiö®#C^]D“ÉÖÅlpÑÓ9AÕö7iãtfÊÒÇàøÐL* /c´\MÝ1.  .ApáÇ­‰-vçcz¥Kcò¢—Q—9Ý«»¦ãeÂóVÄ—:྇ޠæâkSݶ?­‚—ØÁÜ~[*çÂôÄh…¡he‚gg,´)ù`ܱâYÅ—1‹x/Õlà%ë¨aºw…±Öˆ/– ¸tœƒ­wmÑýL7è6{^ ¾ÜþPdS†@Xöháe ¬¤¿º£‹Æ–D«.5¬8;à9“JàÅ›¹¥š¢=•Uà%1—“±A✓LØka‹ôw1=(9¡Ò!/äz]L¨ cÙÐrq¼0;ÅnÖÅ\àCEuãñû„·lø¨\†œ—i+P™Îv,?ßgEŨIÑ±…Á¥­W×÷Íb yïQ^œÉ@èÒ‹ÂØíD](æãϦbºN鿺¨ÇjÃ!ê,ix1ør×7¡ àcwtJØ ÌÚ3v¹;AÆx²À…t±œƒ-˜Í*S•è /Žˆ§åJÔÅðKÊ–EÃËÕâçºcs5<.!àB›«-6ºÐKEY Ñňº,'*+ cV—ðeuxi³e«ˆa.¦ÞfÁ,ŒSlàó$j~$ó?"èÂäù¸CéA k³üîXñ¬Ç/A?¯dn„1æ/Ž,èå,9Ûj—ö…E¢.×>º·  c¬Á–O錃-ñÓîTMY‹cS'Ëúat«¸¢yC  ±À icº*?ÈÌÕ.ø¸]…•zÀ[èB¯µÀÒ˜¼hù© œ¹’0æôx©/«Â‹íi1Ì¥’ç_ !2l¾†p@OÅÈé,}^š5º ãˆÙÅ‘cŠRˆŸ¥eØGcx¬dÖ›¾1e;Ütà?KYè_úêsY(¯ê‚èÒt€È‹/^ä¹s´~Nu6!ºì] ò²•á%‹»°%kß²x÷$»]FjËJVœé‹l^²º¹±wq^' ]1¹¯ô‹%Rc«ÎG$ì‡W|*ä.Ë"ªWû2Kc6yQ›Ïè:ÖÅ4u!a,Ü©ßÇK ÷SíL]ÎZàâ-1ûï‰xµïÕØ¢>â¦."/í<é ]ˆ¼ >•dÍ ÉË>cn†7l³6¶¸x†ºÀ;!yñ ¼ø&¡ nü§¹82$4á•§* ¡.WŠ.Ê0!y©ØðbëcÀ]†ÊL^*Ä^b*åœE^]X¡).‘¸™ã\£b~Æ?Ua J%€ŒÀ \ óÇ…¿D-¹Uàe¬âæ¤ÁÍêî\^©¼.øbI–Æ\ò¢u1¢.K••…1_—šø² ¼´Øº•Å\*=üR9/"1Èë^"yéÑèâIÅ¢e‰2;-¥ÍÝRÁ寻]pžY)uv[ðâïóäkÄÌ¥¼&¨ ¡Ë!"/GlxñJ#Ÿ¬~º.6@ä¥L?wa9‹¼ºdDãЗPpY[˜¾è|4—y›É&,1&ð’ƒÆÌ\Ådlˆ ÎÆ]½æSw9šDÒ8¡ Hcyñòí¬‹iêÂÂX¸S¿1Ž— l…ºŒG,p‰fâ¢GbPjÓî †¼,Æ4º yʂ۫Y‰—]ú`[†ö“µp±¨ Ì "/^ü“9ÍêR®s©4†º\1º´1y©$ÖÛVwp#ãËFB&/•·Ñ8uàÔµÈ £ c¤ÁÅ›×þ-îäφήƒÃêJ©ÃË22š)ƒ/É’5§^X \fupñzVź¼hiÌ!/:ô ©ËœéÕ½šãe|Y^Úl]Œ˜ËF5¥ÃB\ ¶4y¼ÌYä%-èÒÔÛ% ¬rAGxoâ¨4Ç£g=\í`³þgQrâØðhò·;9¤»\^:_^Ô…Ðåån&/{ ¼äÕnÐíXªqšÉKy«ø^¸”XÆFƲTP2 \VÅ¢/Q,[i±pxZƒíâ˼À Øêh“4Ž ‡˜à\lÒ„¨öSwY ”\Ê@¤1‡¼`¼ØF›º°0©á`i„ã·€B]Z,páˆ|E\4¶LG“ðÙC,äE™5@—ã"/HXÌ:ŠÉ.BÖ¹“Säƒp±© žOä…áeÒ?]zAêR™Bpy³Ò êrÅèÒRfòBqPÚîÞnuÞ*„¼$2¼ä<›¼0º0FêP¸deóÔ7"’n¸Ù\>ƒ_$“ËV^R”að¥hïX^8nl^¯ˆw —¦Õ±Å./"ÙäEëbH]v'*« c^ ÇK |Y^,a¬…C!2ºégß`ÄÊTEx9«©ƒ·WÍ„.R_LMüXa˜Ú'8Ú{Sˆ“¿OfýGäíÕ 4…»( ^à’³…±Xó8‚Ëîò¡.„.Þö¼ ´¿ªáE}ÄòÀîRYòBuª¼ˆþeúg³,ŒaèK% \ê¤/È&04Ÿá%ëk»äàKžìèØðR:2–¨ÕD&‘é ÌD$ìÅUžêîM9©Kˆ4f“Œ2¢© cáNý†8^²0S…ºœ5àâ"زc ¿\I5¼ºy)G]öWˆ¼ L]3U Ý˜ô†’š/C³ zS•fpAêrÓö²ž&// %ßd@üèÛÊÔ¥¨ Áål¼QÔåŠÑE™&&/•1ËòbÀ˜ècÃ3š¼dhïû¶çÙä…Ð…„1R‡Bd1í žÐ±(5&Eæ%&+^ò¼¡ñåÆÁ ¼Œ™N´ý*åV“Åz «cK]¼$%¥×“’ Ôåvx‚U„1Çñ²"¾¬/–06ÌnôI­@vil9##ÁK3<î,‘—¶Þ¾iFŠž€½Ö m¬LíHÁávòSDL–‰ÐA/›J º yIL.‹(ØžzÎcÉhâa—ûÒk…º0ºÒä¥ÿˆÀ‹ÚC]vLòR.¢Sf*çÙäÑ%ÅÂîŽ2Ap©[„ÏF©[=Ã˼¿çŸ/‰ ^`Î&/˜jºBù!F,¡lîéb+?…TAµ}³´4f‘ˆÛ«+«©‹c5œúp¼¤` ÈÔe<¢Á…‰K,'ØòÝ }fàekÒ—ÅJ ÐÉ’—˜‚Bpbζñv‹ª¿~´¨ý-ƒ3¶ ÐÇ:F_œKcã+1yxqwø¯@ƒ¥ÛŽ¥˜q¥ou¹rtiÓä%ž3¶s]ŒÿeãV!/•ɇt`²!/„.$ŒQV ÙXñI½®m2ÛŒY¢¤¼eNëV‡PË£ƒxÑÍ3&ÃzVC‘ëÖ ºx‘3êJ?[rÈ‹Öź¼ ·{eaÌçxY _V+ÖÅ \r &.å©·[¨š>Þ‹¿`…Y’6,èR§f4³OÎ4þ\˜:—dyxÊÌæ%)&äek&ç âa}ðÉ—´¹‹•*û\þ¸gÍPF——»Åó2PxÉ*êc?èÒ}±]“—bŒ|/žM^РdH˚ݑmO.[hËQäùOð’‹zÆÚø’Á¯{ÛqØ’É[ˆ‰ê6³,”ÍaAÛrtå§Š,açãiŸQ%"ò‚ºØz¸¸¦.,ŒÕrê7Âñ’‰êÒ"àÂÄ%l¹a;ëÑ„_pÁ"/ÑÔ‚!Z€Bâ~«Åóš FºšÝ81pòÛQdMð&0ÕRf…ïF„—¬_Ú×ÂÀz'ë–­4Œº\9º´”5y™×Ö—r]Ô9Ÿ—ú–ý[™¼$rã^4y!tAa¬Iïìò/Æ2åLý*ûq‘ '9¬U§o ëüJ _^f*&Ç…‹Oʿԋ-!èâaÿºè’E^Lº2P—n|ôñ•…±€ãe|Y‘çÑñyáΈY˜ÕØÂ0„2æ½€H—Y ótØ0ŒŠJ¸E3{‰MFX—=V§\ŠR¶¯¬›¢•3“ËÞ‡x©Äd^øgÀíÂÏ™aEaàVÄ5B]]¼š¼´—^ºÀH îGt ä%fàE“4(4Û#¦^ˆ.—†-šý££ƒáeÌ[cá‹Î{‰–“% ¿q*+)ˆ9lz˜ÓÓÄakQ.^ù©–óØ=L¾)oJµ4&ä…ò(!ëeQSÆj9õáx]S—³.B\ú÷ ¶D¸#î8$ZÐ\4äe _°6UEÊyQ<­C"zCâÄèhv+aôaÏ8Óø€ÉË\ek°( f:o%êòR¯å¡£‘xã¨Ë•£ LC&/•¬ØßÛy}GÒÚûÒÉäå0î-1ïE“DÆPêó•Ü+žñ qYÝ—À j‰åž¼&/‘ll!€//³Q P8W_V‡¿ä¾®1\OXI`rïF·Â’&/FCê–v¤e5a,èx©/5ÆËc72¸pÜc¡cÈÆÏo¿ghò2M1c4Õ ¦ÓôXÂlz{e ,LA’͆’Ñ’ KŸ\ 7†ÃKN®Ú”apyq­PA—C†¼ôW^ަΞýEèÒ=`®ÉËD¶Rœ à‹n¦Ò§{VÁŪ¾Tˆ\ºÀ._“È‹)ã'Ô%޹P»W¾rÐñR_ÂGL cSÏ  ïÈþq[,òÒŸx!òRhæˆäAT1?iwwà¢Ë·*‘0{ AÅ3Y*I3#WCëuúÉ ¼äú´èÌàÒ1Ó³†¨‹ ËËÝš¼ ”ßFxï§jUŠºœCtÑž—І!/)©ÁšÏÁå2°…6ìjŽD¨¯kB@¥h‹dš¿¼¨ÏÜ„eøSnÉd=ÿ–/&Ê„Ç ZvU1»ó±ç™Z#ò"õżyC]D«éÔ¿rÇK*¦©Ë].L\üÈâ-žnˆ;ŽÙÝ /¥N"/QB—"ì­˜¼$Ñàãrí]”8±’ ’-fKdÉX³Õ4­ãfüEa<¬qq‘¨Ë¦6—. Þhuiº´” y™gÜIëÊåÀR7ù•мHÅ*`/B^]`&Ohæ¼Àµ~¬¤:r8†9u¿’i–Ú•ga%øð%2_Ôð2¯}Z;vÀÅ®ìçöj­]° _ÈË!})M]–½U…±pÇK-| 3y“)ôjÂДŸ·òÒ‹µÖ·2¼0yYöå»L‰õi¶¾ æ ÷úÀ… ›4}®ISÈÙä%Ó€—ý š²œç/¸f¨‹  HcB^ÚKñbá±þ¡ŽIg!f¬4~`Ú"/±JÛ‚!/ÚŽ§â~p¹,láyá ŒÄX}Aù¬%ÉAg|ÉŒXð¢ÎIcydøQÇœÙÇO…ºX1g®ê¢ÑåE^ú+K /±%ÊŠÄ|—¹ÈuB^„KËÍ /L^4ºŒøÀår±…ٿʦ¼¾’N’uÈ C?ƒšXðR)Nš£cì¹§Ÿê°ë‡ BŒÔ»ÁBqëi É‹äQR®K,c cµúWîx©Ì2u!p¹®`cËÞ"žõÔˆ2ž…÷e{x—{ûÐ"£ Ž’——á×ØÂ¹/gÂÀÍ@—Å`Úš y‰ÑdðÁ œ6ËÔeÁ¥<ÒPêÒti³ÈK<Âðržc ]¼zõÉ¿æ!b/L^ú¨Ý&– 3àby͘L©õÕΚÐ/*ù/D^N³¼Ÿn–ÍöQ).‰ð‚ÚÅв1¥¬§ê©S G–Æàe€çt)¡.#4VÆj:^Âñ%8nm6¸<“¶yËâV«i™Û­8©åMJØO›:cçñ¿Áš/”£›+Rö»³¥ÍuóÈ›€À ë òµÍz˜™ ²žµC]4º€4&äE}ù9‚—Gwåp;“—WÏ-–‹sÖúPή½jêò•a‹°ݶ˜€ Éþü¢xLfd5¤[ì¥Ãc$:Qe%SjÖz*ÜÚ´,×Ìîçºb#ÏFqëiÌ£!C]Œr]Ú‘ˆ0VÛ©ÅŽ—lŒ© ‚ËÞõ¶tŸqM€!/es$ò2mÐ¥ÔÁ»Í²iv1 1Û<Ìuiò–¬Â±Tìw‹¼Ó°áe9¿¸HÔ…Lö•n uiºÀy[È˼î÷‚1POËN²«lðåpN‡µyÃÅÕD5¸ØYY_£ˆ:ëþ{R6V'åy•0_À´îÿ2­drÚ÷2¯ÑV‡û©šêÕÅÂÑ¥1\“KD^ZlêøV‡0¶‚ã%_#W°À¥ßæ-Ðw2†,åÂ0nd÷Ó$òò]#¹‰þGí´ŠI7Ïsôb•Š””낟Í)v™§jc©ŠëÚÏÙÓGy.’]¶v¨‹FÆ4yi/%²ëÀVîQô—úã/À"yÁVìÓÝç•Õbx!ò’ —+ÁÃþÂÉ ^´4Fû3Óÿý/:r¬d%§lp±žÊîG 1y)œ¦k$Ûn}K#òBºQ¼µc‘•øÉ•9^RSD]\†l‰rw/§»‘¼dæ §4¼yPÿâ’&¥Y¤öîøÁeK+÷ÅÊuA-9aÊ“¸f½À‚—VËÚJÔePÀg©K#Ч! ÑšM·w¼àÔ¹O;¨Þ(#z|PØKîCú0DX'ÚWYrÎwÝ=K"d×¼$eqÐÆI]]Ç'¿9h¹ö³V×™y—ý9ßS¥ëÕÅj Ënu§£ÓécϦ.Ê<Ô#Œ­èx Ãߨµ¸àbü-=¨`ÃÆ8»z7~Á§qg…1cG™´•|n¼vö´‹. ©Hù‘ôóóhbuCì@T'ñ]à…‰Ëaú”‡d§W^[ÔÅ  Hc„¼ô+Mðr¦Âè‚É·°6ö*$³îx9X1‰”æH]1¶höoè ÂK±¨+Y–8*0rÁòïû ò£ÝÎñùÐ÷Tî1й‹q¸‹¸õ4†|eû&ýǨ׋c+8õ¯Ôñ’™Eê¢ÁÅø[¢TóÍ ‹&/Õ›ÃV{!æ:$/€.×·±m¢„}'™v¥$Ó\˜ºäX&µûÁ$í1fxÁå„ÂØ_¸pz#©KCÐÆä ŒVÕßM-@о"P#ù:ñ§µwúÐ ³emöÝA=6ÔàâË$™w;ÜÕßoq‚ýy)cœ” ÝGÝ<ß{÷^^6®ëóÔðô:ëK¬õMU=ÎSÕ¯‹Õ@ìP‰E bý'OàýN¼ÔeÒ«O[Åñ‚/zôåaßeÀÅÊoÁø°`·bü1Wœ£/¨>ö4¢Ûyž’4ìRcMÆÏuÐÅÌê"p© ~™Av,Ð|F¾ <:®L²›§p`íPƒ. }ü](µVåù!†—˜.(uy¡ú–/ûÕz‘±éWŒ-†ýú¢ãĬñWß7’ÑÙLɨYf_â«fÌ’óT5¸(‹Ù`£‹Æ-]5@§{ìçÛ_Ù„½^ÆE[Á©Ž^@ÇÞ`R©ÀÅ`KýÈ.²yWC uä:©(©âý'᣿ZŒy9ÅFéiü‚$êo¶ÁE¨Ë‹zÛÒi§žŸ¥AxY_’Ó Ï¾^˜ cgH]‚.8 ¼@íà HÏ1×jñ4wÁ-i‹U}Œú‹uŸÛE:±;èßR~Š/KqÒípw ½â‡iÛ²D›_4N§°îw¿úB]Ñý_^ž·žêŽ¿£Ž1w/~ ºX tAi¬JZ–Ëo´êû{£LîëÆVs¼ñ…Æï¼× ÃW\Ü8±Bx·âœUüx„KZZ#:z‹žÄB^šßA..uaÊ(Uc€6ŸˆÔú‚÷ ¸PÛ#uœ]CÔÅ  Jc ó¼Ò®àúü5¼ht°SÈ â ÁË>ÿÒÕŒ®[liLÓZûœ”FÇ»•_Iðb/ ¿w“(ù©VäþËó®Q>EÅÝ/n}-múÅŽí?7+hô ²RGX[ɩَ—ïÜk­X'Nl)¼ÒÚ’ô™`™"xùëVÇ$õ1yégt1„ ÖÑzÕ3uNGÉ9Ë7Yèi¶á¥Ãú8£_Ñàk3Sh uiºà4l†ñ˜©`‘ý›h»¿Þó4wAi¬ÈË“Ç_ 0y›BÐ=;ï¾ûî§N¨?ݯ¦[r¾wu‚‹^ìL±qÂû½pË-·ì„?ÝÓ>“Óþ—£°èݧÚ54tö‚Oç¹]¬ºìƹÉ'˾QÀ ‚ú„±Õ/|ùPý ¸áëw¾óÎ;/¼¨þôˆá-MA?ËL³? `8Ú÷C/øªšD^Š1.b%7 g9¬É´es© £K$i‘—)¨¦Œ{.âýFõ£Wßæ¢«0Ü~jíP ]`Y<äå‡/Q¿ÂÏ{G^4ºÜŠÈƒÅN¤~òs|à ¨â³â—}´9¬éKŒ¦ŽuÃ{d¿PfŸä“ZOü7ŸûÜç~|/-3D©ŸjEîϱbšÅtsKr÷‹[_¤±/îØqLÝæ‰¯>ûì³ßçY8C‡ÂØŠNýËt¼¼§Fᦟ¼õÖ[Ÿ¹MÍŸ*p0¼Å§†U2:”oÉãy…1ßàÔ6I…|q‘ÂÐfMB%‘¤Yì}I{>ê"¯Éù.sa-½7ɺÞü“wß}÷¦ÛȺ-ˆ3-ÑÓHêÒtÁiä宑ÊE"+=Ï“Üp”ÆÚ`Q´D%ïÀ95)^¼›U«#æ«®2éëpW7¸ÈâÈü‰›ßR¿ºßž[ø¸s¾e²Ä (5¾ŒÃð;OµkAVŽÎ;¾]¬º ÒÜé)ûï÷ç^ÝÂX=Ž?¾†¾þ¿S7|¤SÒµbgj#‹!/Œæ™ó¼‡_ðÏaw Çìú ¨’$ÿ4’ô9_·uu!t‰äq <ÜVX­ÕpO<–œê„/¨}KµõvÛWؽ–¨‹….(}ÈËP„ïÈGò / SˆMÈËíå!q Ÿs†cÔ‚—+ÅWúƒ©ãÜðL†MÆÊS'øœ­pR©âëѳ÷7±b"” º˜ú˜#]àrâY>¾:Šð’a,²²öu9Ž.7¿ÅÇg·T«ÄUw|÷®²¤²0F/O䥾yg¹Üq1`’ÀßræÁ%SJ]“¡ ;ôuð˜¦.9+µ6Ë…0Æ'³2‚[ÁºÝü.ÿ¼¬7µ¢J]ƒ.8 ÑݼŸÒô›¤lá.(ú©ä—àËjdïÖǯի~à` #šÖ.²8Œæªþ´KYÕ[ôqç ¸_,#¶Yðå‘OU4™–—¤‹ÕB’ƚʻ÷{¿na¬>Ç‹_Ô w¾£ßl«¶v2¶Øi d1䥕P'þsèX!ã(QöjIdžÁ õÎù2—üÔѼQ1Ê©lqúÅ”^½‘{)ª§º} y]ltAil—6Ò§,ÁËŒApÿöyùîa5À§dù¾äk Ÿ4&ô%8u>HƳsÔ®LðEôÄçÌ1*OeUVZ‰û/ç}ìÖ[¾ËF´ŒÒئ_ìø#uÃgÍq/¬ Ü¿U¿Üà­æÔ¿,ÇËwªÕ›ÞÒǯn«¶þ”ãÄÅ3yK²›¦o>…cå3I¨ˆa¨pÆtÔä%éòùS„º°Û…ÐÅ”ÈÎ¥ÝDKuÛÞÕÇo·‰uS$t¤·¡Ô¥1èBÓÉ ¬ïŽ,Nç¥( ¯÷Îíî„røˆ/­fߋƩµºÙŽ2bâB"ë%‚‹,ެÙ/-çGÍ6¿%ÞÏÂjÄ—ÙZO•Ò«ãÒt±šè²›bëF÷ûfýÂXŽ_FÍömÄhu3aKÅjöؾ­Lsµ1’Ƽ{CÇ Ý%S„‡u·bxÒ3-f©Ÿº º y)ÐTw#ÐZƒ.~†ZSÔÅF”Ƽ`fh?ŽÕ3èòyž —nLµ;… (d8ƒ-~iŒèKÈÔ¸±8[6—Q‹¹{¡§3uÇWàþ’Aiÿ bƺû“ }qÇŽVÃ\ðÀcÉÔjNýËr¼Ük˜ ÂËhõqŽA¶œ½üµꙥíÔ!ª4Ö4I˜±Â͉¨‘Ƙ¼ä)‡Ûä¾uÑ¡tðºK–ksÂu¡Žæ‚ð2J+úùäK]„.8 ‘¼€×µoÃrîvQ­©ôK9üJÏ!µój½Û9v* ÕØ’ÓRmärÀE‡ÕaùÑjë-Î÷ƒ¸1_j?•®ÊiºXMtÁå}!÷{¿na¬nÇ‹Á—}ÕÑwœãE^žG’#ÎÒ'oG8I{4l¬’L^(€(íà`Œf½éûâ§.ž®H3åTbÚïY¯ {ô×H+DÖu±Ñ¥1ÈË«§¤ËA—%û.yÙ‹1Z]×x t8ò BØ–àêCnø2Hsz™FÎÀ„vÀås?&ò²”He¥ÚÜßVÅ\tÁ˜1_DÙ^Ì¢|¼Úê€Ë³ßW+èkXåìíÊNýËp¼@i¼XD‚àEÐ¥±®CÒ*R Eku§Ï6½XýË+ö…Ú6¤ê>àtºÐý µú‚ïS¾X=©žç{ÎúT½|Ž©S”z/á€ùöshë³z¿Ó`uë{M0ǧS—p´Vïô™ˆÛ_èèX8‡àæ×…ÒyMØ¡þÁuaϾ©œÕÛWÄ6|´!º”†?Ä¿õÀHÆ~(äŒ –FІ?â„émÓž—t9ôÑ£TïmQ]PCòr¤ÿ%­QQF—\%†ÒØ÷°#’ÌÁÐá¸Â^‹+Ic^Ø Oø“6´··¿tÒÞZý¾]N 4fKCó|ÈÔœç²fþŸC¾ËQóW8k$ÎÒØöÕêW}èr¢ú—(Œ’¥°æÙ ÇÒj'Ðg}èrsuó,^@×íW;Ê~®~ÃëécõÑûiyÁ|í3I¨T%1Ãú4äǬç•qš,6=¦L;ÿ6†K­/Š+‹—™¬£"üìBA­ ŸøÐåuºa"ÒhêÒ(t¡iˆäå:lE²ÁËY;ÜhfÉ î>&«UŸiº{OuK­žÜÑr°äÝÊGÌÉVGµêû’·¼^]ç?BŸª|EGT{žÝ¤ÙÐûA¿Ÿd}¯Y XYå¨V}âÕÑîË:jÕ‚ã.Ñøc¥¢ý£×g~X— {ô-hi#kº8èBÒ’—¯ÓÚÕ2ÙNÅç*ƺ<(ܛؾÐá¨4ì ƒÒXèÔÙî;ªU¸|î‰à²ŽE/eÊvKc`ÿ±—ÐÅ.Ï>Q=FÂØU9ªU¸¼uÓ%- ~rÐ š$Z@˜'<…îë©rãŽjÕ.ïÞ„7LŽ5œº4 ]h>„í[ìúNSJÝ&ò‚ÚXÐ6í¬‰.—.øOŠ+£ËÎê±:ÐeçÕBœ;¡÷›•êÀuvÜïå¡Ë C«©nÄ0›2é¼ÿl°âe8ó¥Â} é”kº8èBÒ–.ùbäÖ#må‡Ü­uÆ~é}ÉK´æpd÷ˆi,ì†ÇVG—×Þ4Ö.aKÐe]]žBÌëþÄÐå'—´€.„®….ÚØPµ±Žà.­Áèò¼á°×pêÒ(t¡ix;ŒÇÆt±b¼d÷õxi¡ºDD^P Ûùnk¸A/­ˆ.{êBõTW ]:BÑEÝÚÓ×w/qd‚&âuÄ]¶•CÉKLrýÔeõá3— {ômº©Ãš¢..º 4vpܧ±{?ïѶ ¼@KZj’ä™yèp¤÷ˆi,ì†u Ë‰ê¶ÒUA—ö+q—ä'È].iòf’xy™’ö¯W ]nÆæO]†.0 Ïc½Ž²Õßñ¾S^Ú8ÔÈË2FÆ>å³M'ªC‰•øX+Pfñ8òbKöÒ¨åÛ“Yuÿ~ougPäÄùúûäÿî yªÍå®™&:ú¨Èx4Zšoª÷( ùqnËÃFžêéz_ó4¾f}ÇÜ û >¡†ág[‡ïããÆ…ŽŽ§ï ðóýð‡³ 7Þ7\,CŸ]})õr˜¨òyÜR$ZššNÓ¡Í](Ga0?Ä¿·$¢ØFŸ0cÈËç›z x;äÑ1´lÍQ]@Û8>ô Vžµ±¼ ‹‚ŒiìV&/ …G¶qÆî »áТ:Žü3õ߯]ýõ×VìC—¿Réðé1˜€)+×0oMÌ1rç„O[ÈwyØú;[†ëvºlo­~?àwy\ \–¬É*‹Â÷,+cK µ€~âC—Ûª›“‡Û^æ…Ò«VFþ©¥ þX,ðÏ‚f7ü&ôË»1¤|g¸ß¥œŒ¢ç¥ 䟘ZÔò2&K…Ža“+©ÑiµÌJ¸œfôü;(ÃMZ9jg»àqܰë*P—†¡K ?ÇêkXMŸÓ—îã’–G=)]Õ,ä%U*o«žpMÓ¯[«ÿ^§BdM¼Ø%F‹¹‹Ãd¼¼WÝæ~É;[«÷ÐDZâÆÞ yª{t1ŒššÈX]/;f¬ ¥±þ°QØUwĘw /¹I\ÂÛª/ºâ7ò‚ËšˆæjÄ‹µhZn /U{¬Žâw‡È–Ò<†¬º½)=Îu™3¹/XÒ³(¥©=ÝÇ¥í,äþC €Zž[{ÔÅE”Ɔ†¨||7ÇÍ ºlÿô VØEiŒÉK´Ü6÷7òýÒØ{a7t‹3{‘mÕ{}èR¥e6<ùpÔ—Y¹B¬X "™*¿I àñ1_ºË³ÏV«?çcc•:’%ëÍx‰Ìк͗_©Yo52ñ숱H^ŠçdÉQþîiõk™¤T{)‚]ãJ¢Œ¹/ƒ|ƒÓñ“%Éз¬¥;/T*¨ÛoíTÏî‚Ëoñ†3Wº4 ]Ô4ÄâçH^†Çô B®>ÃK‹6ãH^"g‡vU«ÿâ 8ÕiÜXwäJÀE‡ÎxùRµz§…Žšn"¼Š"ÿ1ä©t1…¦´)`¯ŽKG—±¥iCï×Zo*¥vh¥ë…u (0™F>£_ûRÈ Kþôôßù¥±ö2S—LÖf‰ì`XåJè‚ö{þ0jl~î;Qm•cTa}>WWÆ C - ÏúBÆF¹Á L‚“ \ÁÊj”C¬¾ù#+˜¤"æ¼P—Á% .ö“2ßàÜ—˜é&Χ¤¸ÕwF†[ê†ÿìÆà†¹«@]‡.mÔ·éIèóÁ¯…ÚØ}ºbòÑ6]| É ˆ"ý[ª£¿v<ÂÕ}ºÕ¼þ.— .¼8LÆËÕQû[¾P­þ;§]•º]6^ y*·`0 Ï ´ïùÐë¦w@ñ•!€5+lpùj…1ËÂ&Vž«g¼hQ[º£ºåW¸|–_ð¥’çTJ¹²“AŠ«—iBûL’+ÊyAiŒò\¤Ô˜M]` qîKšª. ºqiéI ¶à ·üÖ—ÿoØu5¨KãÐ¥©K –޾Ջˆ6†uÆtgMlKÐLû´s°8¾R­n1Æig+úô©þ”ÑÅ.\xq˜JßZ=a¾å ­Õcwùú!Â<ÿÛVÿS¹kƒ$²È%¨c.º´pœBtDM³À(lñú°þ×\¥Ô˜ -jø-õJÆFÜÙ ZhYAØÆ•÷ûÇêØVµê2îœÙ8ë—›|èbÒô#VYF!.邾”>ùJè£çÖ uñ¡ Ic-ñH^æ6pÜØæ»hxYOÒ’ÐŽTýÃQÉ6ô!}ÒXäÿñÿ±h%¯lŸƒ0jpù~p~Á>.g<0ñU± wYž‡…¼ÒL¨Ü^­ÞkØËW[ѧ¿!¢yÉjÚØ*¥Æ\hÃtÛ¯lp¹ÃnÐI}D4¸0²¹Õ£H>…Úg’ô¬Ç°±7JLK›çÓ½,¾1,¡3‰å”U¦R)N—-léîþ;õ9 ¼ü„>ÎÌÕ .Cûº¤ËPÈâ.V;³×HxéÂ2ü‘ƒã7q¼}àÖj+çãýúÅjuô5©kt±+^Úñ2Q¾GÍ{v£Ý¹GÝoﺻp›,\”VÈoüOUê*‡Lýꘅ.-œu;ñvM¯ûkßýú1b,SwþJŽ—´Àñ˜vÏþf¾`[Ø ÖÐÅ<«Ï Œ¨óìÓ§:åP Ö±^”¡ïC§Â˜Ð—£ËŒÓ`¦£³£l\ñ?:T±èZ‹ÔÅ.wwŸÚ8_¹Æò´7(9•”M)ðÒ„ÒØGë÷"y™mQÈý’•Æ>¤+)ƒy¿oüºN÷©4£Njý±–Å`~](„ÌXÂðøJµZlt!hÁx1Ð)¡R CëSZ£.hwÄ¥;^Ð" ˆ=û¿ºYAÛûnhdbùŠsg_õ(ØZ•¡Øâ.ŸIšî^,Ç–( ÃÆ¶rÔX›îãžñQ ¹meq‚k$SC$IÐØ²ñ>ïÏÕ ?Ã>—›y5_ êÒ8tõ}JY$/ƒžhc\#™áeŒÒþñ¡!€¢g^†’âo@‹´÷ì|Z3n{M÷qѺØ /v¼L1¬Ž¾øúÎ=ÐÏ£‘¿h ?ÆyÄgluŸª’ó›_°¿u«c‚.-RÑ+2¡z†¿vF '+ÜàJ/¡ÐÇŸÃ0ܶó…×_¤Ly¹° ×Åd`5¼˜g?6}ªûÔ~º÷L—IT‰•Ôdð¡‹SaL6zñ,Ê|N€Ž‹jnÁ¥žSû¯Î£c‰¤™µH]|è-×3j€¼Ü@‘Aã\ýoS3d,ÃÿÌÐZÖŽs`W}_2ÓØ‡t¤1üH÷Û7<öÓ;^¨‚Î.»&ô_=ñãU¥T™ìõ㋘œU3li%ÒuÃ^B -¬‹Í*SûÝí< ­'žxê‰Ѓk€S)G"X~¿²ªë¥–ã%Z^ª£7ßô“›nS¸F_ê⯬öb8Û\“¤P÷óÑ8—‹ÅœJ¨Œe©f¢y›oÄuÛÊÞ÷ÂÖÐb°å™û@GǾ~Ógn¾ § ĸÔ¥qèë3ž$òÂÚ˜ôw‘´Ê.j€ˆo»+Çtn–Îl£,ê¦Z»2páÅAŽªúš¾ß½¾ÿm€—»xÀÄ%š,V.9iÎâbÖAó[N·%êSÇ],h©`¯œlÃ#üÛÿõ›æ~Òi»š]ã¥&´8|`†}Ü {AÿÚh2e½c¯Y—úlÛ#Ÿ+wÖ伇›]tq¨KÄ<*¬Ñ‚Ã[paträa¦d½•%êƒk‘ºøÐå ¦×©)ñÊ&ÏÛ@qcŒ.qª˜¼éal+54äû#o7SuôþX%Õà§´¤1þHö ú0ñ/E§0ÆÏ¶?®»î#@˜‹ñ¥<|ÁòØÄ'#+r Z”-%],“Ýe¤·ÿð}k…‘@9v ËïçWs½„:^jB ({äüP|I…q/2²‹;TÚkñ5ì¬0¥Ì.¹gÀF²žÀF5KB^lê’ÓrUZ ¶\ì€ýáLùùΓÖâ‡×{U¨KÃЩ ìR‡oeòBÚ˜îïÒ‚ùÏs™ª”3p@!Mç®Í£Ç¶m† \±=Z»BpáÅŽiî]ü`׿-£Ûþò1õÛMßöÒ’$â’8¬ÎМ#û=vì›p–ôJh6~}§cÂêêXFzU8¬DO6—uÏyÞûßùOê~OÀý0S„à¥Nút¼¬-$l}ðö¨aÿ濯˜ ²_ .ÀøÖF¤ÇN’¬Œ¼ÿ=ÇF·m†>… ¼ : û]lêBvkiDbÆÌ±ÿ"­ŒS8s•P[´`Æ{ê1†¸®5I]\t‰Œ]D³¢É kc„.9)Èæ¦]Áò]‹»}{û©î¯ì:©†ãä=ýCCõGÉ_²4fv¯=¨nx׆†—’S\íœ<6zl³‰Wžó¬Ö$f‚í€Z¸ËþŠÝ>lØ[_Ö#pyѤVì_áSÁ..”äܹ\b×KÐñ²´ÐŠ~í?ÿå–-Ûþæ1û…á †)û¸ÿX¢R”möbùðÿñï«/ˆc•$x™ãäå¢N¨Tc•É y±ù‹%x]ƬŠûµ&¶—_®°u¨³û+œ›{?gy·]êÒ0tê¢ð."/¤½,ë¾ú½HãöA—» '¢£Òyª{󶥕èbW .´8`ÿr†Á¥DaÀýdØrÂ^²4ÅYh¹Pæ ÓeØQ˜2ËeSûzº€YY‹ûæšžl.ñ½¯'«Âͯ^ê£/>ÇËÊУÒçmTÃŽëÎìÚ4¾Ø/˜îisÖ†E\У¢~—Âm¦O°ûx;•^úšC¨ ƒ .º¨U*føè“Œ- ¢(-AíÍf!VS¾Çñ5I]\t9H–fHÓL^H#t™“ŠÉ;à‡C#Þ/\^ù%ŒN¹]ý±uÈXƒ½úF³è¥z– ô{/Ö¯϶uª_ÒÒW‡º4 ]4uQ8Èäµ±.á.´p,nUfÓ\r´ `Œ“Xsê#G»rpáÅaU’uòM³mföB…ÁK¼9P—Åò«jþr˜2Á Jüb~Ûšf€©¹gt±9W„%pé¤]˜à1¼ÔE_,Ç˪ÐÂ>ù&ü‚»…½à ZkÃ&.è©ãÉg«Ñ]´ÙËŒ”zIúÕ6‹ºhpñZ†“–*ÿ2/×õHØØV— ˜FÎ<·&©‹ƒ.‘qމ+Uò‘ïòDÀœJõç-£õ(¢öÊŒó¾ˆéÂmø>ÆÖ!U2-9à’ÐèbàW¡.øT¾håèᾂ˜ÉcåP€ñÄNq%˜ü$–Þ x±— ¸lÿ¢.qdÈÀKdõ¬Ëñ²*´°‘òzÃŒò’¼UòCSh6isf(Hµ±©r¥¿³Aðòz&ñ¼œr÷h0VÙ u’ûÍÖâìši:d°Å£>/]å­ip~íÿ½:Ô¥Q袽.0³…¼À~¡È ¿¥CˆË"$Tnçä@û QD—3†¼ˆ.ÖpáÅ‘1eÊàï=–(Cìeš<.j®¨›uéŽ!w‘ð–93Côö¾m0gÌ™æ:¡ÅMäs9Ä-]°+%ú^ÞÎ×K_ÄñR´hê‚_°âë¬Ôb©î 2*0qé*èðdÀ»Ã^æ*Sìy¹` Áp)‹º¸Ø‘á±3¹û4¶D¨7ö»äÎÌ[±Â‹k“º8è)e#¾Àäå XðOçÕ¤,ª­®À $T’,V¤mœõp™ÉKƒµ1’Æ ¸À„^²Ðņ—¨E]úº]œX2]}_¶÷Q `g‚†}-Xg,?™“ÞÝÕ‹¸üÔ‘¶Ñh”ºZOWea׋8^ê¡.áè’p^p @ y=I>ÛéN”Æ&0¡ça>sŠáe,&ä¥_ÙÍ„=V±>»$ƒKs%*Z]l‘&•‹xÏ~FÝé¼éšEM]P¡òûB—ÈÁq-‹)[“fpéÞHËÑ%WÖä…u±†€ -Žm —àšMv´Ò&†—hgéÈÍÒ£ cŸ&}ù8·Ò‰¬âzAÇK}Т©K(ºŒ¹/8ƒf@*Ùª¦>šá®(µQØBž:Gc /ñ$“ˆã8 ès„¯> \JgÒÎïìd9àŒ­Ä‘]Šî¥®EtÑÔ…ØŸ—HÑå9Á–ó-˜<õ,|BmO™¼°.ÖpÁÅã^€ÏšŸAÍÇF—ì…°ò? "¡}¢.B—67Ìå°ßý­Ìo €qX‹Ûu1êPÙlÐ…ºR2¼,×G_à’‡ë‚C]]òª—s_°)éÓgäÝE_l¤/È€³ŸØ Îz!/M DN´„O=ÛÖÌàâ[4 4úlaø4¥’cŒ.Ñ5L]lt9H°ËÞ„ÉË$ÔîÂØ24~ó^^ø7.;v¼ÚÝ}.Æè2#ä¥ÁÚL ³më™ðlt‰Œ´»ð‚Ô%Gt9¤gJ1”¿¤a?Úꃉoeü. ¶dZ°VA%¶—ÀÅû2KcŒ.0H_f÷¥ˆc‰±U\/ 'ŠxiE?*S—Ptá‡\êÕ IN+xvB¶X°?˜JºL•P †à%•´ÈËÓÄÃìmXº…çìàchV*%ð…ÈË" ceF—«I]ƒ.†º4¦ÉË¢K'-õM˜Œ½]î:Db‚.3L^Xk¸GN³e˜ì-º(®R‰k¿ÏêRù7ꃻ3¿ÕíD| Œ_srõYÓàâí&iŒÑ¥…kŒIw=ô%7iz¼¬-†º0º,û±¸Ë÷‚ø¸¶&ÝÔEѤL^"<ft·£ ð»D “—ž1®3†cÅ}]Êû %ÆüôåŸÝdžLý£¢önFÿòÞ>8ÎêÎ÷4„ˆQ‚:kcãHB#L‹FiËXBVËÂÖ‹Óv&бlãØ;´ â C‡$Ö´pM–8Ù™b²Swf·®©{w¶œK.Äu·*w™©š ’PÑIÈ Ô-üǰ®]*ÿu?½ç÷vÞž§%Ùn%¶÷™LÖãÖÓç9ç|Î÷÷úÒe1~ K‹.$]Êå)²·‹xÉB½1  - ©GcœV‰×+{úDjW9AtÉ–D¼ÔÖ6ÖÂ/u@FÑŠiѼ^Š,]ÊåÐå&³6úqŽÌ%]ý‚|©BË(¹%¸ÿH¶ò‡hÓp©ÜƦ1¦Ë+\cLðÂý.ç–p½ÄòÉ•¢ÅH—Hº¤¥ÍqF’éæí-!=ŠKe¾ƒÅËl)‡tÉ¡a Ê!^êt¾/u¨¾@~5¶ØÞÉQ-ý‰bºPŽO1[v?è¯üfâYw¿K—U‘.µ¡ K—ù> ^ñRÔt™mÆÒUjËd¸Pµ±nœ2H—hëÈ.V3¸HÞNØØYç+†.YœTñï^úàÍ‚tY“úÛHoæï—b—_*Ùýý^˜²åkqèBv1— ›Æ˜.‡¤Æ˜àe9ù‚1îñ²,Z,éBtýlÒÿ‚dÌõ¹ú¢eºÈãšçɀؚÇXÁ‡P—¿DëWuK̃‰îëÒ»™»ö½ ö…is oP»“è Rù9¤K1q K‹.,]Ê%ìPiÄK¹|ª‡ÂŸ $•D¦àå•ßÇjcgÇ‹åb?Ò%ß/⥶¶±F:yÏQÆ ]Ø‹ð=K½tQÓ‚èb_¤^¦r£iW¿|ωtòSÿw….Š-•›à—ý±KELcD2ŒU ^øÓÕ Ž­Ø æI—(ºd.jÍnLLÞíV5?Šací`;@…Ô ýbB#¼Ì–,ñÒ0ªóôçâQkg¶‘Ü–ö¶RGƒçeÃX‚è_MéRºˆtiÔÁ‹:lì¹n¢Ël³dûÅŽ0\*¹:/x¾E¿K…´ !3µƒ ÅÉZÀãu‹¦Klš9ÛOeh{Á*ÐtÑâUSvù)&À7¾M²‹YpÓÓe.¾¯;{.!_Ä×ù£ Å’.÷-T¢ c>_ºrn¨\ÇËrÒ”É{H åÑ~ñ–DÉyiˆùùxEÆ^XÃõÚ—¾XÖ5çèĵ'Q†6¨í'Êײt1téR.c‡J#^ åEˆ»·[±¥(u¸~ pÁjcÆšºü¶/5µÅpýÌáÞ¶CئKFÚ'X¾Øõ׫釃y­^‡)…2iû_ ¶ò€c"Õ€™Ëææ¸{°ëîßûƒõß1pÓ˜©šóGƒ—:§äÌȢŒ.t1ሠœN =P±‚öôB’r^À4ÖB¥nFÉ0fáeш—çðã«Í%L-2çD›Õ¾ü§(ÊÌ*Ž1‰Ò… cq¢Kb5¥KMèÂÒ¥ÏÊëEñ¾|¤Ë‘NSÓú‡*£iˆ-JÁ|Ì<¡±ösÍªíª†p¡@‰8î cB.( 8ï%IÒe-ˆèŒE4f χãòeÀ5€ZN~‹.dsà¦1¢K£U|_㥊|±Üøñ•öx1Òe^ÎB%Ú0&¿¡Ï¶©¿h”‹pRÓ˜¡K'ߦµk_ÄK'¾ ¨g¹.½}áÌíΗ­8±Œéû"Q=Eö¼Ä“PÍñcˆ¼v¥‹¡‹H—òÜ^1‘xéšííº¤ðpÄ/ÿt·ÊÆ>/êïý‰ú“ÝÉbI‹—ÚÆbØ‚91Š cLÝ;A˵q ¤Ë+ðÇ6]P°wzY„½P©Ú\~.i…W•GF<ǵQ0H—:j€]ì;·ýž1]^ÑÅ÷/GbV™TG¬Ûh)¯°Ç‹‘.aº¸‚tþ˰ŒUfn¿9ï²x™&ºLêrTå"EŽ%´x©£Œ|xµè"vÜø8V#v 2;Gµ|(³Y6Œ•ŠD—U•.µ  K0žè¼^/{8[h&Ù§í- urUQ0¯C¶U M4£9ös-¦'k ¢Ë@… cD-\œÈ1”.vb]8ÈË5xzñcº<¥¥`0]ð£~ãÀ…McD—Cvñ}—ùâEˆ­¨Ç‹-]r(+U cæqLý,fE‹a6Ø@,ËØ°T¥Õxañ2Œª-g¯:?Ç’®çn—Üɘetaù»[‚ —•ÐFë7pòºv¥‹¦‹–.…ØËbCñò X ˜AY2ã íÄÖWnï¡:Ždƒj_„€#/µ³© 3ŽA“”E†1¢‹Åÿ¼ñ½€tÙ”†ô'†.È’›L‹Ð浑Ë¥F&E¹“p¡]ì.õr ÓÒÅÆ`ÙŒ1^,åV-ƒ+5-]Bt!¸Õ;ýϧ%Eœ[•³xi/ÝtéÐåtŠ‹œ÷2Ö¯ÅKCEžK¤Uy±KØÒ}Á¶¸lÑv±fΪšé/#]â«*]jA–.»äÝÝĤKÎ&vá¦1¢Ë§+¥Á‹+_ÂÁÇË÷xñ¤ËH9L—PWJ|Ü>+°„àÒ29lж$Šƒ¶W¿òhuä˜/Xg,Qžn´¼.‹ñã“n=1ÌË·Æ"_FP*¡xIÄK@—ÛË×´tÑté#»9jŒ ÒMtyûT*øXpQ;¨B‹—ÅþÂÜñR+Ûn˜r¢^¨°a è²Î‚^rPî]ÓM jà:£éb* åµ×´²§·&='?Ðå[ø•Ð.öm‚ ·œÕ¦1Ý­àäÏË/Z¾à¦6ˆ-ßãÅ—.>]bVMA~óù‚ÇeKš?À¿žÅËØôêkÞÛ/mZ¼*:éíÆoÎq›8f,ù-!Ø]?(ØŽ4]Ã>¤ñs½,ž?½"Ç‹%]\º\ 6‚ð›ï·ä.”Ô—™K“xiGºˆaŒŠ'Lä‹—/¯%¿VÇ _¤c›yù"_:HºaL¶.ñÕ•.WN–.æð[‡¹“ÝÔ¤òAÒ.åDN”Ëí#`&õ‚>¨©˜Ð%=/⥦p‘Êr’ c±ãH/+Ëy/ggñÅÆ4]¼êó¼–¼}={Z¬ž•~L}4\È4ö ‹kóðR™³3²¼±9^´t)GÐÅ7ŒÕ[ŸÜg5H¯?ÐAƃOe0¬^X¼Ì›4ýçr¸(FºÝbJõ™€³#$t“Ê1¢Ëµ-]˜."] ´ci¬Ç+”5‚–±žžM°÷íæh±/õ0^~ƒM*ã ’?l‰—ØÆ´“z?û}Ä0–!ºLÛ5^AÏnÂÇêáÄI¡‹h> à!ᆲø1§.YBÓ¥[-3¬/FpÁÅuLcÒ%úlLW ^¬ àp„ØÊ/–tq被ŒZ²ò(§MüusÄ-$^à ΰaŒ•‹˜LâeÆJhÎÒwtØÒÞ lµœ4ͽbë/#]«+]®œ.$]t¶ù6¶z§>/‚­ƒ\Q¤\.¦i›ÀÛÕÃlÃ*ðþ'ÛS5… ÅùÁ”FLd“  ‹€ï;~vþMp‚P'¦‹ß™A¯¦ÌGv‘¤Éíߟ³{V:€™¯4­UëâÛžaÌÆË2…^Växé‚á¥Ï{tñ c1”Ò•sâÇôÚ&•@Ñ9 É-ÈVD½2}^ðï!¸$æ-ݲûÆõUªp´ý9‰ˆë¾¶¥ Ó…¥‹¤é=kÉ&0ˆKRÛJE†.÷’kÅ ÆþvóÀiñ2]3¸ä¤‘9Æða³ãp ]AqZê8¯i&×´Ð…µ?YÅ’ •ÂKeaÐ>Š÷ÕËö»Ø•öƒtaÊ0\ðaFÓÐÅ1ŒqÏsÆË2ÁÇ+r¼ØÒŦ‹)•“³Ô)aØ8V&~ìÀ´ù˜:/Õë¥Å£•‹…/Sf¿©·’g¦Lœ˜ÓÅ]#•5¤(s·z¦4þïêJ—+¦ I1ézbçë+Ôç´K/Lµä6T.í¼OŒÑ}o@°÷^ü¨Ù@L©äÁ%‡VÏèãç!T,¡Å€¹à}'P¼^ú§5]ü®Œ²žÒ~xKßÙ~‡‹NÏÊœÕÆ7.h›Pëâ¬o3xyÝ‘ôáÜ—•8^DºPx©×»:dë´BÅ*»;Ø{cæ/-&„.%ª^àÞ¤¬^vé,ûŽ®×@ºäˆ&ºEj¾Øc%€!ù’ ³9Μù—1›òš–.D—õ,]òôgžW æ¨ùð±M@—5Ðo ç¡.ìP‰É„¿÷ˆ—ýpj?%;õ pÎÖ.¸YûÄ0´»wÌ…KVr]^¹wM†¸0]Hû³Ulþá%аl‘(õy·½c9>Até¸|#K¿pÎ1I¼ƒ#GÛ”÷âT JVäx±¥‹E«$ÆAõR»‚Ãê±'í_áðüÔYÆgÜV.^H¼¨%4BW>Š-tFì ¶’|é²gÝ8ÆJ‰ Ö7[]értyüécÇŽ}ùߣti ±…ÃÆ~ñ}uÓÎ­êµÆÏh¸”§;t9~(¦6þ?âGý—2Õp³û¼Ô.jBÄÉø ¯¥f@®3fÎ$åÝ=/-•ÇŸ|â‰'¾üu¿+£o ´Ã[:JNü˜œÿ6lرUýùE´½}1ü¸Gz7S¿ïØý¾a çýS?9]%u%Ž‘.^êÓÅ3ŒÕÛÂEà"ßpqÔÖÖ ê â$;ÇéMª6Ù¼ÔuÿN5 ßÿsp¬IÝX£[bŽó3"'./ù?À¼ºÿš–.jRÛðÿ¡€vIð·Àp[؃ÿˆšOìxL­o \¦Ð¡râåa{ ¦êΟʖ"âåÊlc.(tûK1Ê·@Ôë\} ´õìáògJ½ô—·Â„þß¾NÚÁЧr T…ÑɈ¦b®}lëø‚[›f¸œÅ2ÊNóˆ?ºë®ŸÁX=ñ3c«H}¿Ø¦æXz°\ŽnX¾Ç‹#] ]x¬æøJ® ÛÅ$%ØÄaMuù/Ã/X*¹Êýþˆ—qØ>7«tîË[ÙÉl¡¸£I‘.'Ñ0¦®ÇÉŠ¼úèòå¤uæ¾ÔXŸÃ–Ùfým=džø¦Ä'4\ÔXOâ´ŽÂÆv6黨Ù@]-Ä‹Ë(WÓ)–M™…]pmœ€gü<áe‡|Á›]»XTQýÆ–pf éYùeóQ¨\ÎN…ª)W*ß×cõï}½1Z 4B…2ˆUIÝ_Þñ"Ò…Ò®}ºx†1¶‹±p‘Pd¿kÇ5VBÌ0òž¢(Éú¦}§J$\|ÝbYøÙ€H—Å~´üèR“ïZ•.fRì;• §Ë…:‰£äÓÇwîzBw¨ý •Gn# ROµ,õM<üÃpR¯K_¡mÌÀ%Çg4oÊ6]4\(Îã‡`ŸÂÀäf=)Žn†¢'iSÕÅn` 5Ä\óq¿ãßOæç’ú£†>Áp1‰–úyoÓÃpøqœú|ÜLxAƒØtù²Ç‹#]4]d¬ÒduÒ¶#ùÀ¼%Yö1/fmÜï)ðFQ`rµn^ôØÒm׃å’uLdhÀè%ƒ˜µb§¯6º<®–FÓÆsÛÏÁC›¶Líiû Ü=}ú4Þ¤ácƒÍò<|¦S?mzàè“Gá® p@¾Pñbà‚k"ãE‰&ù\ˆ.¸6n‡5ƒy/?†§Ú¸}ûv|*»c©STßšŠ€¾¤3Î0ºœ —ëwnú¦‡œeˆ—›EËDÊ—å/,]¤¥G×0Æ}\X¸h¸¨ëxÂáË_ YϾÁ—L˜þ+û웎a³ŠÒ-ò5œ §_:'`Ämé~ûÝ»6¥ . ÖsçÎm„1Ãí™ØB†qJ¨¬üÏð ŸyæG?‚}ó0l«ÍâýÓØîx°F7Ýð Ü´jZë²ïÊlc^Öy}]â—ébà‚Úÿ[Xa“ÿ®É^@ýûõnn£ÅqsÐû¤¸ñcÓ¸6øÑÑ£zÖX‰–Y{É0|ÓR–*c¸;Ñt‘ïáÉ—å/®tºÈXeXL‚b˜¶×µŒÌ–”q DW²'ƒ t@¼ì²öÜ .[ƒÞ¿xwKê8*Î.3¸‚>sî–[ðŽ\ety¼)hºïM¼Þ?ïØ61P 7m¿¯9ª¦Á…ÆcˆÁŸ°YÝõä‹x}EÝÕ än¸rñbU’A#FŹQïh¥Þ§ ®ILÓ‡¼—«Ñ?w+^w…/Fˈ^WKFñe«7 k¾q$ì¸öÆê-¸ ëzmgQ”|YÖñ"ÒEúQzt± c\UL„‹ —¬µþ_¼go] çŸOíónJTÑ-] `âbƒ\™ÒýM‘ïæÚ‚‹ú/½…׿~F G^³eÏ£1]kLÝÜð5ºžÁõKzǧ˜™Êîú™Ú nø9]ê¦VÌ8ñr~äJlc\HèÂäX`ÀW‚1p¡¨R¥¼?¹÷îje«˜£ZصoÏÏÎx¸¿, '?K×pÎöÛÁšÔÈÇÊ Ã;ö*a’¼a"ÇréHïËòŽWº0]ôX±aŒ”Á¦.‹º‘Ù’bI§@´?$åÅŠxÇdí¹­†-P˜q Š.î–„Ò¥ c°‚>ý6^ïÁ/¼ºèònS0ôË7å:×l·ý-œP 7ýâ¹¶7‡Ûw fÿl§z½ê‹¾¨¯'›put^±x±àÂF yn¾Ç¿OZwóìøAõìwÞ*—ú‚ïDÄòa¼DæBÃðûá~0¡±z§ÎÆ·“£å˲Ž–.£RVÄ¥‹m“”¹0\h¬´}ì¿øÏÞêgÈtÆ*7†nj¯Æ›.˜D™r%¨Bý«¨ws]ê}o|ï-¹^RßÁ°Å$Tª»š¾¦¯ÔÆzöŸFyG~ ÍgÔFvPmã?×× „—a<½}î lc\XèÂû>a’óq©XKµÿsOÍÊŸø/Iá%™÷ b >^to°ø¢³€š>«¯'Õ(ôKÅ$Gc0VÎ0¼‘o&gÌO2—àxñ¤ ÑÅŒÆAÓƒdåÏFlIÓN}Ëÿן ­‰P¿–rbÂÙsïSw‰né˜ó5ê€ó²%ÍJ÷Ó‹êþúm¹>½š+èrèòŽýEß|ó¥ ØÜ­}ùRkì{?¹çž§ƒà%“¿y¸RI¶C/Zן©çÁŠëMŠH6C:íûtÁ÷Ý@Ò…žê/o5×}AðÏ Œ#ñâ¦54 _ðìÌ 0á±úçˆàc/òeÇ KŸ.Æ0&åµEЂ‹4ÿKø n>Žø‚ûª±Å£‹±ú›õÞÍ®9º¼cï'o½õi5§„-’P wYpùÚ×Ô¹ý'=Òœ»=Eéd­ö®Šû* ?F€Ÿ½lÛ˜ºR‹ˆ@kPþK\üÞKz¤œö}-^4[F>èp—Ï~öo‚àÎd¸ÙéÐ0üsDð±…—éÈà±å/žtAº4ê±bÃXÖªƒÜ±%I®û_ZC“á‘D¸—GkhÏÝÇ5_Ê!$xߢKK ²lµá¢ð²Š+è2èòõ xÿMûúL°Q³Ej©›î»Ç¾NõI ¥‹Z¹ŸÁWlº¼x4Ø‹ãÊÄ‹]`YŒ@\Ì*A£îÑ…Þ·Hxª—nµ/|v-KàÅÌÖð0ÜáØ™«Ü´1*¯ÅÇKH¾,ãxaé2¢Cm\ºhÃXý°Õ“‡‹Î£$¾D=»v&.ñ‡ª±%D|\]‹fkøÝÜq­ÁÐ[ö… ˆÙR‘Zcꮯ9×3ÁPÏ™môªâåŸ*o{X…`ø;ñüV¹¶1."tcÔ.ÍÛ¸}Ìô'={“H—¯/±€-^ [²þÚø›.Ÿ=ªÞ7ÔVv³5b¢òZ,¼´yÛ’/Ë8^|é‚tIë±bÃØˆ)Ö±%™ö]ÎT6Ïüܽpø‡q=Ÿ»<Û˜ º™tÝ’_•`xò“žÕÒå›Õ/.[ܵñ£Ïº¿o" &j¶–ËåÐ×7xÁ/6‰º"_–q¼øÒ\\ Ʋ¦°Ä|,bKš¶Û²!j2¸Õµ!bÏ},1M!â>]º@}±ÒØñö̃aìXð.oÿzõVÐeÐåà%÷›¾Ù|Õ;"x xÚÝPîÙìà“¼bpmÏ æÑå`',Ž+/ö›äµ}\hòéY-]Ô£G- ò\XW^Cl±ÖÆ“]†ÌXå¦YÁD ÃŽôÜ 6`ã]/Ò¶2³ÇKHº]h¬Ø06¶‹Ù[’¥ý«N†–j¡kcÄž»^í\9üŠ]ºtá©ñ<îxPœc(ø´K—·[Wm]]‚à—Þ7ÝN‘¶ö¿ð6”Ó6æ]AàÁåÅ£è–l¸|ñâôõA}\âé— Ó…Þ÷6‘.•dÜé-ŽíAkïe]‘Ãp—wEÝt:Y!¼¸òe)Ç K—+Í¡ Æì”pñ×F%êÙ[W2 ­Ý—9 áws­ùõƒà=oC9žwù†1ð¼DLŸ‡¶U Œ!ñR¹ Û˜RŽtÂïçc†. Ö³ZºTjº€<¸|öhäX…‡á“©—iÚ—ù²¤ã%$]˜.GâåÒmc\è¯s„Ë0–ºˆh'=k¤K¥¦ ȧË߬ˆ.7À¬HF)ƒ—i[¾,åx K—Ø ØS欀³«–öw¶$_ûGN†Ã±ç¦.“.\ÞþÔª­ ÑåðòtyzEÚåÏ‚£`s½Lñâ¼I\i>Ûç˜.yŸ.ô¾µ×E>"Gwèòt0´<]ž®þ¾Ãx±äËŽ’.¶]Ì¥K WØ…«²š—ðÚ¨D={h¬VtÓÿŸéòé𤈤ËÐJ¶Õ£Ø“‡ÅË¥ÚÆ¸•G:¸ÌÉ"¹ú»=«¥K._ÓäÓåÉÈ±Š¢K,Ú‹¢ñB®—JÅ’/K9^BÒ…ZBçËèÚƒåéFKû;[RHûGN†ðX­*]>}uÑåýJ;ÖsæÛkõÿ!7þ%d yr-DÃLlÚ´éÌSkמ™˜˜ðCÆÀ2vÎéÜe‰çM²”ö“Ü¡rΣ ¿o-]*ƒ‰(a¿ý|Õ«­m¦­­.ê'³³QÃðÄÿ÷C犺éÜôÂÊñ¢åËŽ’.#Ni&›.ó¦²UYÍ…Khmd梞}ûžÙÙÙ#2»fÚ"o‚ÌìŠ5øÛ2´8²GfáOêà¿g¢Þͳ×]þ5d yâáïX3Š©DYÆžxø•{_¹+­<ü׿§þ1Ê$tßÙ$‰—K´¹p1…_’Yt KRÆ^/ѳ$]È×½€êàmδ™]‡ÿNÿ‰œ çw©©ó•e쉇~xÍÃõ÷k†ÿ‹†™*ºMã%#q#_ª;^BÒEUª0ljØUÕ-)¤ý¦£&Ãö#f`è?Q{îöç»õu»}ÁŸ?Eÿ¸»½½ýâí·¿ ®§ž‚³ñö x/d{öê¡ËÁ9ï›n v8 ÔNµ1Øîm(CÁ÷áuÆ{¹ß+l÷ƒ'=º ;0¥~ärÄ‹ —Q§žp7³Nºtá÷-ÒC½Ô³{‹c(ørõߺTÞKÔ0ììí=y!æ hø¦‘Eö«áEË—ªŽ’.Ž]Ì¡K£)‡l­ .ÞÚ€ôÒbÔüÇIêPIžÙÀ'¾éË´¶³KyõùqŒTõ,~‰ï檼î9r7;»{ëžk°£Æ†‚yti v$ Tî&l™”nTÿvg7ÁZDÛ‰—K²¹p1íã2ŠÎË<á ]XÏ‚tù^R|Ðç"^’]$¹bÇ çÃYû´ó&á£|¯~, ×ÆâåäÜÀˆvz?†˜ÉŸ¯,…—i=E¾ŒT•z¾t±²é¢+³´¿»%¹ÚŸ¿`x2|?ç59ƒ í¹_6ï§Z6%Å‹áv·'6ÝŒ5Æ6·xtÙ¸j+è2èòÕ`ÈiAû̘UïYm;ƒ&ßÒ´×] 6×çe¿Ûigê“Û%xµˆEÜ>¼dñâ¾I=öè‘à6$ìx1tá÷ÒEÒTvC¾®Þ­\^ÌG…‡d¯˜¯FÜ4qq¬\ 0Qxaù²XÍñ‚;´ksèÒbÊ!›µáÂÅYjÙùÏä(ª4^ÞqÓ»äBM.‘«ÏK`¤põQ—ön®ÆK- ßÒ<|6óór*õÂ17™³õ^Ä>ãX!õLOÏ1ÿÔ®núוj¤sÜ%ØÆ\¸híOÕ› 8½úxºkºžÍÝÒEÊ«÷ù’ò¦”¥ƒ¼ƋԌÙá&Sb:%- LÙüÂÐ0Üuêùuˆ-…—‚žÒVÛÊ•H—˜ô£ª7†1þë–öw·$[ûÓŒ/ ¿ÞïÑeGÄžû®¥-G¢éBñb0–-·cWJõ }·KðoW]Þmò@:„AÈL#ìØîVá¦=ý"]PM¨»žô¤K+UýPËgöÅ‹û&emp4gS.Ò$Ötá÷ÒE7~ƒg÷N^­±•ãÅÊÖ¯2 ½`Þ¸i"•B¾¬,0YË—DÇ íЮ]Ì¢‹]U̬ .fmPQœ"tâiþ‚j24ꌸâ«á› J%}¬ÖtáÇE0R7€DùÕð»¹æJÁ¨÷}‹wZ¿%ò…³;•šhòÄK“q\ÎàÔ~­§ç`“'^š‚Ó:èo†r+¶ypµ„K… c¥RŒ&»Ðõl9‰}]6É^ñ’Z æ 4êç·xx±Ê‘©:ê$›4Ë€ùÂîä‹mT áE»^Œ|©âxñ¤ Õ~M—Œ‘.9£ýÝ-Éhþ‚qªläO†ÖPÏ}DZýg£è2I}0Qºä’q*¾¿Ð“.­ù«‡.êìåD_Ÿšî§^-cÒP`NíN~öQ¹ 8ŽiPÁӎץé뙹ýTmrÖZìrá2ZvÙõN‡«Gè"ïŠ#O˜X\õT÷9™ÆM[KÃõ+Ë×yGh¾Þxh˜¯ú7Qì±*}(#ñK7^Åñ‚;´g3t±Ë!»˜+®·VäæÕª¼ç™1]æx9< ¡Ï{ÙjtáÇE06‹ôÜz7_¿Öèïû}';»éÇ C|À€iìéÀÉxy&hú‰Ð¥›özP¼ÜขÿK'ºQ­Ø•ÚÆ<¸°ö—¿£Õ?HS]êZ0&^£>šæ¨í¿¤Ÿ²ƒÃîŒdå·Xxq‹(ÃGÙÉú?RïŸÑ ˆÌš~F¥úO•¢#xÉXbEË—å¥ •®ÀÏ¡b(¶ö÷¶$ÖþòãýlÞð'ÃÖˆ7;B{î×õ;JzDº°]Œ¤Ët¹™»Qª_ø) .êþtú*¢KåÀô—­A°ObdK¯u:0Ö_l´n꣓Tj³«¿ý¤¥\‚{é  Áõ ^£’—‡ 帘,vøÈùÜŸ’]ð}hÙ+vV/Á§Ò‡/¨ñº™«1.‡-°~Þñ†áOA`ü›i~!eóeù¬}™Vð=G£¥Ë´¯ú‰.’ãBž½6<¸ÐXåç¤ ñ”4óiõž}óŒ=°Jç`Ù¿iß|S‘¶1©ÀoUˆëâGT¿¸Ý7Z¹ö.õ¾õõ½VÈÁçPKæ •áWwýÈ‚Kð lùnP==kÛûªºé'ëÖë³¼‰ÙáÎã+²ypɤ-ᆱã\¾W£ 7%Õc)KKJ”.˜ ñ‰ÃÞKz¶ ­c¡ÜIÆ‹‡õ«Ô(µ” }” T0­Þ0ì{˜Ãɘ/!À^¦íÁñR÷«J+¦ ÿµ†™x1.¨ýä Æ¥–X¢Õ› û¦Æ"¨µú{îçô ,ï½_¡ ÛÅPº¨G#ÃínZ½üºFtäj¢ ¬Ž÷A~ÏûÛ›ð²µy|QßKÝôÀvH£û—ÓtSïŒlI-(µûgSêÛ =Iøá.背‹£Hâe6¢ËòpÉ&½ \ [É4fj$gÙU1NÒ¥ï@CŸjã9|¹¾à?RGã¥äKÞ¯«W”õãà ¹rãÞô}5[Ç.º|ñ—…8^Š¡¶•¸Cûv1¦‹NΧL Y>\²ÖL×l9ß‚eøœ/¨ÎÌš/}œB–.·ú“ñicºðã"·ðBTpñßÍ—+•k/_‚4º=G³~<åò^}ƒºë™I ËàØš5L—3·åÔŸ(©¼éÙTƒc=^&-ñÒLEE–³¹p‘ø)Ì‚©”ó—W‚);Ò¥0šÀ6Å=›»/i@<Ú&–öp·.‡¯ô@ Çj]ûÿ½Â„»Èöl¦Tlu†á¥ryÆç‹ÁKÁ©Ì2ݶҕ.z¬¨F²HžQ,ެµ¿—˜ÍMaË|gÁaO%^;çm¾¤/îž{_K99芦 ÛÅPº<—,³aLv·OCNå{·4ш^Ut©< =z†6âo†­f,æËøqÝôçø³f™uÔ~ÜŒÛ'Ý5ÔD­'/“Ü@ößÅry€qãþ¸ªu†ïÀ=s©•ºàûVj¿ ÖëI5õ°…Û¬õTøì<®X0_ZZ¾4žðÑ¢ÏfÏšjz¬œ6;¿ ˜cÖXmÍ¡}:Ä—%KZòÕ‡úÌk[‰;ô`9”¹ tÑÉùX|_ÛÅ|¸Xk𥞆ý?[_ð~ÚÖdáÚ&.Ok@›6cµù†*¶1¢‹˜ñ€_ ÀxÎ_Þ»¹&/gÁ¬¿Øœ:Ë|™à•íuôMŸÁ¶Œh<»8¾‰ùrw£:áý8u¼‰lgk×s KiÏ–‹ÅªUÓ—>ŒÏ™é>Š?¥}tZi—.°‘Ÿ¢ú‚‹ºžv_{\’UûÚ/ F³E]evˆ¦ŸA¬X~a íffƒ†¡¿@ Ük!¾8€a¼Ø®—ŠîÉì=#]ÌX]¦5᯦[Dû{p±«2k¶lÉáGýGk2 ]ùȶ-Vµ$ý† 殦}½ä”¦§tWÑEìb(]Ôpa w·³Oà(µÒnSލhð»¥KåÝg©skëÝ•7Ì—_mâ›’˜|o_u]cØ.:Q~uÃF¾«T‚„˜Ô^1u°xY0nÆR2Ü÷~L;n€?Ù²Ÿ•ãdDÎuI#ÅÔîDYžý:Ç–’/!ƒ˜«ûÿ¿àáO¬Y“påƒfjªßi(ÈÄöé0_,ÀD㥞ÁìÈÌ”L‡£a€.úÁ'm»˜«·Åö…œ~ƒêDž/jþ¿ºá}Ó”ÆK„m é"v1Ü'µÓ »Âì±æUåš½¬Tž¢—Ülé0½ÐÛÝ®¿i±áÓ“š¾ìîï¡&Ý2‡wŽ|Ö­çfñn†º\ä0nÏTøy&_¶;§\鲞K.wë/È ÈîäU°Ú W"|-[²u,óëðwݵ–&vŒøbÆ+õÙsèðë0Œ—Œ»Y¤#ú¾8ÒÅ+©bIßjDJ‚4†àbAÖ˜|”=Æè© V5vÞ¿jí#Ý„V‚®ç…èÂv1”.7—Ù0†»ÛĽ÷þÝ"GÖ»~ö³»Ÿ£õË7ÎχÃxq\/•ÁqeK{¬„.X,þ¿(5”ì-ÉéÈy°Åv«¼´hî=2`:ˆõwé¿_Ú¼ùþ)˜#㸉^HFµaGºˆ] ¶º)ð…Á¾v ÷Ü3ÛÛ¦£úåQ•¤¯ ºh“ ÆKX¿4ã>/ªÇ¿À&ÒR øBÍ ÛÈMØ=‘JÑ&ØðOéŽac¡®KÁ%«ÇÛ{|  ÓØ–]ðT°Jâj¢a® †KC£¢½%!_l´ô/F×zá§¹ vƒ„W ?åfœ+)õÖ{NiÂñ ¾¬{4ÔP,/]ÒrÂÈ—ò7…ôov7Ò¥+§‹ï³]Ì‚‹3ö£ÏÙMHõ°8цìüt4ÃUvÈðˆèolQð¶Á7»X΂ ÄÞ´â–HM¸–.^Ý‚—’¶­Ù”Jµ#]Ö¬9853Ö_N?ˆxÙ4Vj¶àÒ³ 颦N[¨­3bÆ,ÏK}¨êp1yöØêÌŠb?Ö5] £9JÓ'mâÀÅ6ÎZÁb“Yé켆-›, Eò0›¿£ e:|I~ðFýøa;ÆÑ/?x¨Å ãÅq½ŒšòQ™éâŒUÅ eQð$­ºûfKr¾àèÆ-~F: ^¦öÝÐLx¥ðÞqËXÔv3K¼À0æÙ.†ÒŽ÷ØóáRzXM–Tïn ü·G®Jºðœ!¼ìJ»|Ù¿ØOtÁþѱÊCøç¯ÃpµuSÛΩ6¬¼JÁK° ¶Ä/í¼HÎËR€±;óLG¦D±aŒ÷Yf^‰§ 溜¤y·‡à’GƒÙ|ØæÊ-r2× þZ×–eñ’å;&ˉæ)¢ Ò¸˜³¢75_¾¸L3d}œ:àNÖÒÅÝŠc% <ä¸HWJ¶‹i¸Ø£®žúQ›-zØs“ÒöžÁQ”¾µÃ•m†/ƒ|W‚¤ñ²©%Û/f¼–\*Ãìà_ÍUñÛ»$ ðkÃâËŶSDØnÆâ¿ü|©ÔmàByZH°5/›Æœœ—ʨÕïÐŒ½Ë™¼ -tsVl¼ÛE›.°CšþZš™'ÎDÂÅøòË<–÷¼øŠRyù5éBYàú[¼8|ÉoÀ¨ßkåÁøúå·5z€!¼,Ø®—…pßKº¸c»|:¦ß¢ÔÝ—µáʲÌ›-Qpa? ®8«ýº”NõÂi3^F}ñ«žŒ(]Šl#WD ¥Ë)>r&«aÿîéÃ:’¼œÄsæK[\i¦ ¼Í›Éj ?ÉuÆÃ)¨ýEtÁmpᥛÜЋ&a¿`잢Ö1¡6ŒÑÖ[²èkãnë2|‡¿6ûè¼K¾xóTÏópQ˜¬®Ÿ"â¥ÏœŽ5ÞÎtQƒró`d¾T\ÀdÃx¡Rcvád‘.îo…P1˜q¹ŠîJÉv1†‹ƒõ†ßpØÂÃ)“ ^VjÓÂÚVÅ¢ldê¥h¾œŒÓ]j¹ ƒÊ‚—m¬Ë˜ñ´téb¸¡ßËMxW/Øå·wÁ·/^žÂ ãQ‡¬“L¬CøÇÿÔQš0pé™Pë+…tAñrdîyÆK¿/¸Z‹UcírVÂ: ]›,8·eì™.0¯oÒ¹.éÖEÁÅÎÔÁc•¼‹–J>Â>f“/W¼ØçÉd¾²í!Ð.½¡L~[¿Üæ-Ü“ˆ—¼}ÅRcvð˜%]¼±’äå¹²SwŸÖÆÏâ·ßaK$\X¼Xxñô žÌI¼Ä/YS9bèçå§¥Ë —8I—61h„-=W ]ðUäµz9DÌ×|;Qoè‚‹¤¾á2.á„‹NëCñRYÏxé,”½„ý(À¸HŽK!4Zd³¦ÓÖÆm:×¥ó!~ÈFŽ0Œ9ò¥Ë=i¶"ð2`Â×X¼øfÎ$Íí›4]$fAPbñÅLz&„.5¦å‹–. ®p)]*º+%ÛÅ. Û –v|ùfØ©]$,‚EÞ®!8D½`æËXµ‹ˆß6ÖEÂdÁ’.}4SÓ,]ú# ,]«¦1œ=„—z}ãiϺô¾"¼|iË þïAöï ]@¼ì^¦ž‰±þ‹—º,…I F˜È¬]NNì<ì‘E·\ŒkºàžûCÉuiˆ‚‹——/ÁcI-QlñÉ%^È2 ùÂÚEçÁŒDé÷dˆ èˆÄ=^Œ|1ÒÅ+©“vúQpÎ?ð_~¥:\„¹^ýÂÖN/eÂËSó*+š¶XÒ%}#Ã¥¹LÒ c6]òW%]`êäá}¤ëpŸcæÇ_çWŒy¢ /7’C¿ÔÌ.âºçi›ËQÚ«—áW¼DÆÀEr\²¡à(üXÛ÷þA#Ò׆H—áú/\ j³6ŒÙòÅ6ßj¶¨õQslÄìì"^\×KžÏF@—Oºy0Æ\=¿ÛðÅL1„éñ"ò¥§Ñ€'\ ]Ø0Fv1†‹=ÆÓ!¶ˆ‚>-'ámV/\PÓðEýÙGE6 •5^<ÛXW‘W¤Ë|Ã¥œá_œC÷5ïxÉ ¿a¨ë/1Ò×Í©o_>¯þí¶7NqŠ%áå7ßFôÌÎJþËY5uŽ”I¼ÜH“Z©ØÑpŸR¯s¤@ûïƒ1»œÎqÁ=y.JJСxQñ€è’±¤KztýÚ0\"zøY³%A–hñBù*üIê‡?ÜöИúܤ¶õ‹ ÂKÒè“Q¯pò€©EæÓ%ãØÅ\¸;³!¶Tƒ‹ˆ/–~ÁÊS,^4^F]ñ2€^PÌ0é’yŠá²ÈÒåTÉ¥ËôUI\hܘc+ 3ÿD›~Ǫ ©†m|¸¨Ñjž’OU´xõÒ0PŽª6f¦Kàb’óÃIƒ“%çZ,çëqÐ3–téŒ1\ÊÓùr5ÃXÈ׫¸l©D•´´[ú‰xq\/²K"]àwð¨ `ºdš&­7|Ñ€ áÅôx(‹G$î ‰®*Æ’‘ cdsàBú0b‹ §ÛºˆQ/:‡tDÇq¥ Y¼^<ÛX—oéÒø!Ã¥cëBq~×¼ãϽ1¬ö1âe}mÿ¯÷èfIßVSx¬í¬’ö‹úOÏ‚õ«ÃÇÔÔùVY‹V/}“¼{¶é[ÊÛ€ù¨ÈïO'çz;ýÈ€mÄ‚¿ãÞ”hïeé2’[V.lqÝø¡,˜åÎÒañ¿"ÃkèÓÍÌÍû#õ‹Yʸ€öõd2=^ŒjÀ%‚ŒU'Ñeζ‹ÙpAYV‰}ä³¥:\´ÁÐÁ‹â‹éÑÑ&âEãeÄ/ Y{"]·¥ø@géÒÖåÒe䪤 -„w†ñÂ\/êHôóÛ`ÂŽ½Öfð2>.6`ŒO†usÁˆV/ùd1ªT²O ýõvr~¨˜–ËŒ›CºÀÚØöJ—áúŠÀ¥œIV5ŒÙÅÁc["ð’µËÖkñRK Ëߤ“3€i[ä96ýÐ:K¿`/¯ë<«ÇË _t†ÄT#ºa ÷íá¹y 6=Æ\_¾¿9u6)Æâ…ÕKŸùóCL—›ÁÊâEðâÚÆFä Šté[ÿ<Ã¥p@ô0“׃ãÕ?ÕÛKê…݃Ý—o| †¢-…AÊí.==/P&0Ñe­zmÉu$^/gà!âE³"ë½ÃþĈñ¸Ì¹šîv£žúèð‚½)a‚ü¥‹:Õ…•K˜-^ðñï²®5l!½^Bâe Ï´ÕÏþšþâ¶¾P-2[¿|¾µ-h¼ód Ç‹@—v¼ð¦W‚Ik!SšûHÅТŽbÃ>[–€‹/^pAdÄf2ß¡~ÂâEð"¶1bÄ€ØÅDº¤cb-*%HºôŽmqéR¾:é‚‹ƒŒ9ñ1gd¸ëx¼9N}]>To“þh¦´¨­euHÈßñÂêeïB¹j©dLœßäàœŽ‘òŠÌ‡¤&T&;ÕgBàà$UëŒ\v'(ª?Ò0æ|åBl ãeÀ©âåŒ+EµG´ e|h™È0Éì]¾ `$\ò`ì/"]BÂ¥"uÆÈ0†L’#a¼Z!¶„‚[s¶43â…Õ‹%_0½·mŒv¼ ^lÛ˜yƒ,]æ·Q”º”Ù@Ã0{`îzp¼ úç:ù„—õ”/3©ÔÄ÷Ä>ÖMvÌ?<Òûù\ÆIucäËÙžöDùQ/„—uÛ†Y¼„˜á½Éˆ:,x—‹–Eú*Y KÎ/k@º¨S]H¹„Øâ|T„hÑ~–%ñ/Y1V©µ^}ð¿ ÷Äʃ1QdZ¿ì§ßËšðéjYËñbË—A+9ŪÀFtɘ“n\¶$AK[–„‹‰vÐxI¢HÏ¥µá‰—Ýe—Q[¼H¥–.ÚÝ\úYºœ*Õ{tY¸*éB‹ƒŒ:BV˜ß·í¤˜ÜÛ84òPꢶÁKhÑN«» â¥BÇÕ½UÄ ^Ç]ïHÙv±°K*h¯ËuašþµqÒð7Â_NFÆübï Ç zù-.^FœW‡â¥Åîñ¨¥‹Ñ.ˆì9·T f:æó£Ó0]v Ë…„‹¦ ÆPu8¡#ò|¶DåMŒzëDÄ «{·dí:™–S'Ó/õ–m Æ«X±¤ËçHȘ JÒþ Ò%=8^Hýs|Q/¸o«ãæmß©'°q5Q8)äJ3'w—"]zzÚ?'âñrp]£ÎyÉG¨’ýý–‚)úd £¥"vÔ$  NN§`³W'_¹„jì{•õqf—X/!ñ¢W|l@ýh ù÷ñÌæ˜ÈHÁ¤Ï¾0Ñã4Ÿ’Å=jO+ö©¤óL§ÑeNÛÅ .z¬"Ù²4\Œx1xÁÙíQk ¿7x1âeR—Ñdé2H»ÛCðç,]ÚJ.ù«’.¼8ȸa0ðvõÞÆ}¼ ×ß.‰Éu¯ËŽô!V Þ[¨Þç…ú®“ߨÅ\+–1sÁŸ]&çÉ®ð À¥!ÏBÏ0E) Skr$yü¼xg{/wX®ã›ÖÚ¥" ûaÀ¨YâK…D£”ë?nõxÑc”ûb ¡ ð¶?kƒx mÖ¶>-¥ùzÛ©êÄ(ˆx!Kƒ—zm…wÚ{£`uìù@¼ð ö[ÒåfrÂ5&9ŠŸ cH—Üuáx!õÏuòE½€|/þ‘ígY³)ÕVXÿmùWôèO]6aÃYªo)â%‡âfmŸÉy UŠL‚A8 ˜é°Ëì…ðZN`÷00¼>L{½§\ü81-Y7S2¢îØRx ‰—‚±ë v¡ø1™6`PÁ Tþø‡_ˆ0‡X½àï´§•ó¨s^éh¢KZÏö„[[LØRÚïuL^ .V¨¶à%OÆ$y½è¼ÀžÁË–´ˆ¬/–Èé’ÆXØÔÞ-œµh—O—é«“.´88ðÇà…ç×~@†Ô‡ÙÆÛø£¾zíBwM‰xÉq‚CUñÂÑbYg†²UÅæA‡kæjËÐe—©0ÆpÑaëö߈D êp2íõPm‚^²^'m/·¥õËHK»ˆx©DFMì_b^`ÇXlñ¤ á"té£0aŽH1mŽ5[êñ´Ø È7ŒÙâ¥ä㥞ƒÁ%ÅÃúpj|ͱzé2†"¶{>'Æ4Ý- ]*×…ã…Ô¿ôÔê¥Lc©öRY®¬é-.k©( \í af Wÿ{?¶i‚ÄKâåÌ.“óB¿£à:Ñ“v ¦QÅ qFA3SaÌU..[\´äÃdIÆò~ݱ%ñâ‹Ë> ~—thÃôLa¡r“Ëõ»ÇôæÃ,»[Z²€æüÒÑH—¼¶‹-:kCØ¢Æ4s p±Ä‹àeO›Ù¬ÐLcây)—OàBíñ҅ǯ¬‘.'i³xYý ¥Ë©ÒŸ.#W']xqpàÆKº\„“ª’ú1oãN¹xÁÐØ È—6Ù8Å¡·Šx!¸Ôs¨˜Sîñ`ÒÝáaLèùé"p‘×j cUÐÂ>DÞì¢ '¼¸n/õzö[aµF»Xâ% ˜a5s|¾¸xQ¿š|0,]è{¥ûáÂtÁü¸¸þ–-!¶¨ÇwÑâT~ ¯-^ú}¼`‰M ÕÛ» 5Ü\ØqÂ’–.4 ºK-yó¥bºBt¹./¬þ¥‡¤¨—4¥Æ&ë¿Ë|9ˆŽþ»+ê|—M)P0=jêÜôà:á Š—I<NÞ‚¬–.ciº»ÂƒÖà&[ÿ:_^e·þ•ÓEþ0^àßÀ+ûøs\Ðöa%ÑÜ>µ˜°è¢Þ&ðÏŸÃÅ!IQâ…à2ªCÅtYÂKFÑ5Æôâ(ÒSµ‰tÑpÉñ8³a¬Z¬8±ê…“5^F|‰—>ZÒÅÖ.Žx -=¾Ð°ß않aé‚«—Cî» ³2 ,ýý.\4[Ž$,ž–N.aØ%^%/\À9.úå|j¸ /ÙQ‘.—Rãœy~µ\³zÕ_ûŽVÿÒC’Õ‹š|°^f1"¹ò²‰OVp©t¾¦ñ2n}µmìm˜.¥¤>ÿm8‚ã”÷bÄ‹üŽ\Þßè‹>˜Âè@x£®´$t6%I[¹ØlqP:*&Íwèºc+Á‹'^²æù("ÙªS‰ ´—öùByÂÝ?(M߉l3=o* ]R#9áÁEû[öž–+‹-^è©^Ë‘xÉ¥q=Q‚çål¦0x)rXNV¤Ë'éïU‹¯™¥‹:×cðOWy•Ýú5  /IŠ£}nv&ÿyiºÁTENß­yG!´c9Eõ6_Ú0Œì,ÁKX¼PdêˆÓ€23h£…ϦƘýØD—“(]4\äÌ€†±ªhqc«÷}¼„,G$^*ìz±3-íâ‹üÅ-V˜²ŒËN©’.ðùÓ «Î¾ÄÜÁî•°EI‹çËŸ¶ŽeàÆ÷{VDÆì°1OéöE]?ù ”,/II€fé¢á2_Ié’PGU¢Ëõáxaõ/¶1ÂËî±™ÆÀÖÑp{JÇ'¯ùcÈÙ³v¶þAÜ6fÇâ†/Ûà\ÅêňüƒÑ™’®‚ICu–°aŒg6ÒeäïaŸ·”‹Å–ÈÊÇn ÔAfÕRXYǪãÅ/&‡ó]Ô-Gð¥r`~ÆŒá˰íå°w‘aSvà¢{ÞÀ”Êq.Æ—ŸñoEpqŠäpA~/tZìÓŠ—Ô<&‡Õk¼,r~s–¥‹À%õò#]N•ºˆ.…Uvë×€.²8$)N[iÀ&µH…ݼMj‹AÉ)Ü3Ú¥ÑH߇êà§zë.¨Å1† êS!ñ‚»§H°‰_ Ÿ#Ÿ<ÃõX,©_]—ÅâÈ.ÚUT eãWaKe©¾/„—QÏí¢Å ŽVÁ–.Žv ‹øÈtÂŒ“ÿb\^â]ÄÉX0¡b‹Ü¶’•^·Ýß…ÇɰåÂä ùŽ Á%Ê0f‰—~)ÓbèÒIaš/àhÍõ¢Æ„ú»¸@Áì–-a.=³Àt¹>/¢þÅ6Fx¹8Vš„étÁ\—ñÁË矇€e/køPÚ;ûúCk…/Ï•D½4‹xÉåáÇVQ¯Ùh”aŒúÈßeÓôoÓÊŰe´Z’sù¤ÛL*…¬cÕñâ‰ãÖºTbv}ËÞV°ŽÕ=÷áË. ŒX&N›ÙI''‡ '3;™.Ú.†kÊñ¼T¸8â…ñ²@'¢ ™ÆP¼4cÜê\ã%!}³$]4\vWºHºìƃõ¢Ëà*»õk@½8$)ŽñR€ø,¬è…¹.3ºp%m)òŽ’°é"¹$0zSJÅ´`ÀД'^˜|r.6ZöK“Œg£~”Íè ‚U±×À…ßi|¾*Z"r'—/úâ÷¹'ñ’ Us¶µK”xáôH;“ÿˆUÆàŽž¦ŸœÎvš´úô¨©uàÑ¥ÅbK]_{ÇMðq.Q†1/»ÄeµŠºàq~ps¯æK:gáÍ (]¸*2¾A®ýÖG³tEèr}8^Dý‹ÝJð’Û+tÒ}ÐÇζ—ŠÏ}ÃàEÓë*I±ÚJÔµSæ|>²ºËt *Š¥«(˜bÚ?æLK÷°µ˜¦ÿ‡¢\LäB²YL­JaKE—,*d}ëXU¼xâÅLM—¬îQæò4€˜uß1ùûÙ“V~|¸¹Êjv2]\œäi§aòŠá∗4á…º]âh;ó!Eyy R®û» tÁî¿»÷bmq’.gO¡a¬žè2°ÊnýZÐE‡.EûÜÉJËj®Ùº™Íb»_Ö%§NTxG)–ô]ÖN‡;èTÛ0äïíÝy›¨¾óÚåláâ[±œZdža Þ7ý¾Žþ|¢.¹H·Í2lYJ¾ä«X4I¼È¡ÍÌ>G»DŠ®Êo+˜öqÍ—ûÌ€.š#iWÆMŒö‡½Å°e¶YóÛTÓ€K¤aŒÄËÔ ÂÛ°Õ,é³pH3Êå—îÀ—£žŠáB¦Í9’.à§Á¬)´{í;^DýkÛÇb/§vÆŽÆ­ûR—‰v®oyðTc‡±nëfiC§ûWŽ7/PÍ1uªÛÉïû‘²ïEð­XŽ‚ÏAÆÓþ¼‚ÿì®»¸ä¾Ý¿¥z­ã¶ØòÅ·ŽUÅ‹+^Œ[_Ó[œDú_ðwØ€™°êü„¶$L23¹€1pqó[²®]lÅp¡ƒnÚV/Øï¥œ%º1j¬·›Ä ðeÿáEÈwœÆwsz³ösÃúr=I—nŠ]¨]2«ìÖ¯]ôâУbøòþOjç ×ÆÇÆ©¸}eÛͺåG'î(›‡Ì][ÝjÊê§^vš›îø?áâÄNÄ,¯‚>]t9íÁiÒ5tvÂÀ¥’_-ÕØ²”|É‡Ì ¶xáPz³9:Ú%Z¼èªü–‚1|!¼ØÃ¾U×!/~´`ÕMr††½Åc )ïG€;3ZeµÀ*…dIؤ ^ˆ.1þ urÛ…ÐdÀ)³—M›ÔÏm µÕt¹>/ZýkÛXå)øòOý;k®"SÖ&Ëñ‹Ì—Ï¿VÂú±õ&ïïf§æËSÛ/û¬»~j -ÉHcÞúBÒ]A‡pY’-:¿ [,ù’÷¬cÕðâŠãÖ×t¤C]_øwY€±øBx‰Þ’öOÆ K, ù/wÒ³‹]\(اJ«áeÙû㘈ìŸExÙá/ Ý ·¡al IôQ€Ûé²°ÊnýZÐÅ,±e :I«:Nm¿ïž{îyú¨ú§}PÅ ¼2I’º úßÂ]O~åÅ_ü3¸ë~ƒÞ=ëz*5áݤ…‹ïk±ˆÓÚ•}0¹®bY}Ôй;ß|óÍ—NÓS1\œìË-!3×lYB¾ä£ú½hñ‚0.Ç*ÑÚ%Z¼TLU~£`4_ ,¾àö—n½õÖû`Ô¶Ž£VüÀ;Î]jØû<¶]lpI¸T1Œ±çe’Ø~Ât##ºÀ,tÂR>¯û‹=Úë?û>€ ™6s$]ÏrAÓå:q¼hõ¯mcóêÜéNûàÇkÖl†«º¿ØÙ õ nn¸áç?ÿù ÏÀ›„†c½8„/íàè?쬠­"\|Õb×Ýêš^Ò-ûöÛoú3ê£~ÒÓsûÜòdYŠ-–|™ö¬cÕðâŠíÖ×tÑÓ"‚/Ò•ÏŒáËí< oyÿ­·Þz ¾àÖHÙàvgQ h¾ÓÏËwíb—úsé^˜.ÔÅbv ›TêW´ÇtÚÝÂCZJÜUǰÐ¥R^]·~Mè¢‡ØÆæÊÅõEOßÃ׿ ©¯:ž€MÛý_¦`8޾È×W†l¼h¾ì÷oÂÅ‘± b#l$ 0ðCñÁLÎ'`il“¯÷á©.nb¸ÆØÒlYB¾LGã…ÅKÒõ¦¹Ú¥šx1«ÃR0—ÝíðoåëNP·Æ]¡»Ú<¶ wŽ8k#.U c,^ ¢¬Zã…éR¡ #ƒ¶éd¨=½þSíÛ+1y’.-([ÓC—ëÃñ¢Õ¿ØÆ!ÙŸö?ÞT*Õ'³Í/HÿJ€Ë3?—« Þ÷XÛ)4C÷¶ _.á42gç9&Mè•öÃØ F6ê©ny›¯÷6ÁOÚ—'Ërl±äË´k«‚W¼h·¾Ž³$m_LhƒŒæËš‹ê ž{‹¯Ýcáƒñ÷½o™š/®]ìÒàBâe ”µÏt‰“i,í.?š—~ÿÑqwCÃX…¤K‚ cõB—‚Õ3tú*¥‹YlSÿ½9ž¾G_¿P_õà sJ|Ñe_<ù¢¹š~ÙåKø¦WC’pÝýŠDŒ%tÓÖÅò#Apß›úúekÐôŸ´$:·„‹ï/Ï–ªòe$²[%‹—¼íéi—jâÅíûÑÉ=6_vªùu«¾þr# ¨ë”DUïßtÛl“ª»6"áRÕ0Æâ¥!L(f/BvÑ7"7Ñ63¼gWbþæPºÄÈ06hÑåúp¼õ϶1ÀhôÚ85{ÊñvôéŸý„.?7×3tÓü 䬾ü$by­!ÝÚâùH œSÔÔùôÛúúïN{ÝùkY¶XòeеŽUÁ‹#^ôCè’u6Ë0_l ×þ–#_~¦èù–¾Þk¥/è&¼ü*TÙ±‹]"\8ËzÄÇ §@Éupó—(a?Ïõ“7‡ý?©Õ…†±z’.d· ÑeÐ2ˆŽ\¥t±ÚÆàÄ>d” â¥)ØàDªÐ‘µÉ©øXµÁ‰F¾DÜÔï9HF«aWûb°HŠê©¶¿i]¿l Î9¶µtÌO¾\[ªÉ—*ÍI¼È’ËEk—ªâÅ]É,'Z"_šÌé·è!wØùrïR:aC·°…Œ îÚˆ†KU؈— ZÀê ^:˜.96‘xQ›‰Ù¦ÐS=+ɰI”.dµèr8^Œú'ÛL¥¡êk çGÿ~“¥\à è¦ÙWî#¾D¬ ¯<¥[[œ-ºl%s|0CF¹Àõëð õ”\[̬NëX4^ñ¢ÝúB—ïo„ø³yœhI|i2ÇÜ£õ´ÓÚG6øµ*»Ø%Ã…Ä‹UŽð"aÄÔ#©®òyLØOg“ z*ÿÑÕúƶ t)“a¬KÓEÔQ:½*æÚÐÅ,¡áŽ éçºOr°lO¦’S[ÊΠéEçzZø‡š¢íÔ7‰ï=—Ž>ÂJ*efdEÌŽ`èMçzÉ|¶Qð“/WÌ–Hù’?©éó’N[šË×.ÕÅ‹»:¦cœÉß®¤KÓ­Îe†}0¿ ‰–;ÂwÝÈ!æ¬*p©ncñ²mMcðcRLf ÌÐ4Vañ¢&9M†Ð³¿Kï#GÒ… cxŠº\'Ž£þé ¤¦ëŽêÓ>Ní‰K)%]š¸üü† éà/³höQ|9ñQ¯º•ío¹ ¹ó£V0j½í\ŸrÄKD·â•²Å’/IÇ:[¼h·¾Ðe0tÖ ñÅÖÿ…ÎäW|y"z˹޷¾ &rqØâjÿK‡ ‹ÓÉ-}’+¡uÁf— ÓX‹—BrnvD<ú»l»¤Ë ƶhºè ±‘Uqë׆.Öâ Wu¹5ØîÒ垦àËȇåŒã­Ž`‡«)øw}&ý·¤¨›6»a]Uìb:•rrž –­Á9wV¼9¤?ŠzŸºÉ——–(ù‚EÆ"]ûܤr k¹^|í²„xqW†•"`»Çu á°KQ}Êäo¸k‡…omTˆ1/1¬½\ÄÛ‹.slñ/0õTJï#Ò¥B†±tŦËõáx±Ô¿”Z«6í×PjîiÞèØÅÈõòH‚ÅËxcåCpò·Žø¨G,´xÚßš°t€Àº1¤`Z]颮!Y×ɨnÅ—ÂO”këX$^ñ"Ë_èuäðùâü*˜J˜‰Ã¶q ¯!+¬íŒ€‰ÚGþW7ëÚÖþ—®elcy®ãŒ‚#N¦±çX¼”GønBþ§d«taÃX½¦Ë‚M—üUJ{q›‚û<ºœ6˜Ô=¿ùÍó½½ÝMÁW¼i4xúF©tãoyÓ†Þºoݨ¯Cm3m3'o _Pócú%+gÚš‚;½Yñ™`Q*G“Ì6Œ]*[Âò…NQx!ñ¢ÔÁ€ÙÇCÚe ñâ­*¬×x¨)xÉÛ¡OÇÚ×}׺îÞÝu׹Ά*k£\–2Œ‰xÉ$Hnd4^¶ðÊAÓ˜/£8eÂOõ,½ã(]Ø06èÐå:q¼XêŸËDGMûc›øÃׄúߦ]ž ŽáOÎ<{pí'ïVÿ†±ˆa‚ún¿Áÿüiyüg˜Î¯Ë•ÆÚfš‚¿õèr,G‘d¹d¶Xòũʉ[¼ˆ[Ÿé‹6—z|qô—§LSð¾·E&8væîO~÷“øŸµ8ðQûȳ¡pÑþ—/9}ˆ,P6ÎTK2±x)Ï¡a,üèÏ’a¬½.lC· ÑEÍ­Š[¿Ft±ÙÆ‚ÀƒË=Ûƒ¡ƒ=ÞÞ¬ñÉ`h<å^‘7¥.ë oR¼y_p‡}T° c—Á–|aÓQ^P¼ ð0’ë%¤]–/îêàÚzAàmзžãL ûŠºëŽjk£*\–2Œ‰x© à ^úø¯R¦%‹\CQOu”ÞÇ0b‰ c£]®Ç‹¥þIHœˆœö÷zWxpùù á›îú¨Ý½—s—·?ÍGOÑË`‹jbëX^lñ"–é’­¶Uz|qÊâð%¼ú­—¢†½ê>Öþ— Þ‘F­|ÄK] >½ŸLcõ"^@WF=údû$J6ŒuYt)Xt¹Zéb/ŽX4]î ÷,O—§ÃàXÑM—K——dVP9Im»L¶¸òE÷v‰ÀËØæÄ”XˆÖ.KŠou | ïÐjØW@wqØk£*\–6Œ‰xá0/ü‚VÖ>פœf”#ér_°ÿ”.l+/8t¹N/¶úÇ%ŸŒšö‡WB—Ã+ ËÓÁÆÞÑåSî¾z…l ɗѪx±Ä‹¸õ™.ÕÍ<._’‘| oÑïG {Õ}$¤ý/.²%X ÜQIKu€Oiìõ‰ôE=úQ4Œ­ÿJ6Œm±è¢[׬Š[¿Ft ™ÆÂty28¼i%Ú¥ubÚ%tÓåÒå\ðޱ5ëªd—ÏG¾˜Þ.a¼$¡ýÏê½|:R»,-^üs^6Š.ÛWD—í< ¡µQ.KÆ´x‘˜pø‚õºVæ™ÆYdf¢žªßÇ0ZÑØ0–®¸t¹N/¶úŸ§žö5£‹ZAµÒ.·ØS§lñ§5YÇ"ðb‰që3]—rQ;|qô?N¨ð}ËJèrÎKû_>\Äœ¢ýúêg/˜\Œ •Ó(^.º:õè°Qîeé"†±z‹.Bò‘Uqë׊.Ö☣˜×§=º 6̾ÖVšÿ¢IZ|ðàÏBáÿð ^/·µÍІªß×…Euu>q]Oxýå»ÔMðû^òfÅi¶—R.Æ®Œ-–|ùȼ1/ùr‚ö嬖‰Ô.ˈouLÇî ù.þÃ7Yÿ÷¥_ЏëÙȵ±\–1Œ‰xÉqIpø‚õ:\#O¦±þd ÔŒ->¢žj¼|ˆŒÆ=º\'ŽKý7"Ž£¦ý±Ô íÝ7i›í¦ëµ¡¿Ë†™¶æ›Ôu¦gÓ¦ ¼-ê£þ󖄺¶Ô«ë#õ'êñ:¸¿±ž/ø þɇõxûä¿=`g»àå{®˜-¾|!ëX^,ñÂòŸé²Œœuøâè%_ÔámÑjÝd_{wµ UÝG|ípñR°’éKŒ ÆÄ„Êì—¸ÚXÿà!¿Ëi5cR©—c ]¦Ä0Fn¦KFwCX ·~­èb-Ž4ÅŒuáò‹¦`3´nY„z9Üäí7_]Að—|ToµFÜô¸û…Èœ,éæ‘ô¾<œv'Å/›è£ò¤àoô])[,ù’(¦+•H¼¨‰3A ûÆõ¡]–/²:¸7ÓG§ƒVwƒ¾³É+ìo]ò.km,—å cZ¼tpQõëu4`Ž‹ô§¹\¿zƒïD<Õýp3H—„6Œzt¹N/–úoÁ˜ã¨ie*§Î›šïý­^º $¼ì{^ ö–«¾‚¤¦™/æMR96äXÏnÛÛ|ƅ˯ V¶øòe4/–xa·>w[vFØ|áßÄÅ úÔtwè÷ì/ËÒîVeñµÿÁÅ÷¼ „—X=Xk,ûý¬‹\̈al0D—ëÄñ¢Õ 6¨)ÿÔŸö­®ƒ}jF‘ã~·L 3Ï|‰ÄËyÈS -³£ºÞ¿)¾îÁeÀêÎK[R©`¼üm“+UC¶øòe4 /Z¼°[Ÿè2¸BµáËtÊÒ¥v›V³G¿cå¢%ƒ (jqµÿÃ%”°?‡IሗYnS2VN\TÛÈ7Ôw ?út BéÒ!†1v»]ä‹ ¬†[¿ft‘Å‘¡í>_µ‰3*q:†^-wÕ¹|)-ÎônVw=­õz0ÔÝ{JóE‹—ûC7ZÆ.ÆÂ…#cÃÄ–Ôxû”ú}Cì‘ûåö Øø®‘.É4•ë©ÕAXÚmkù¢×/¹ë*F¼à`¶Ei—ˆõu¹ÒëT©ÃÎY‰wB•ðƒ=·{hëq÷®Þ ¯¥á²؈SI4Ný]:¸5gZÆ)ç%v'ƒýT¯ÃDéR–TJÉß¶èr½8^DýÃÔÍ(ßêMû_µñ"¸¦zSзåm †^Ó£ùòÅq/S¡e6ñÔzþvZª‹Ú;OqÐe{,Æ¡O±Ïå{êÔš-ž|ë˜#^h×!º¬ÜTªù’Þ¯k °±{ü½s8VZxÙûˆ5 Zû×.\mÌ •£¬}2KØæç»ê ¯Ù~ônT`/J—Òˆƺ\ºÁçVí_;ºðâ˜ã`ÞRÐtúé§·CWÉÖWaÈ/¸|l†»Ž>ùô“ÐÂS¼š¥ëÂù1 /æ&Œ¥<´”]Œ… 'F>x;³¥·ßÐgî{éÜi|ªQ-]¸SpÍØ`q¿+_xçyZâ\/m‘ÚeyñR^Ø2˜Oó°Ÿ»o;tÎ; ¬Zxu˜»îˆXËÀe%†1/õÚ4FtÑx)òP¼`ç³ÍöSµþ7ÝÒ¥XØ%,º\/ŽVÿh«èFwfÚÿJýyãy‡.PiðÒôÌ 7@{—àð䛾L ç%´Ì?–J=¥‹¿’öwá¢Ul¦Ûö2[.¶Éb:÷éOÝòõï¼»zlñä XÇ|¼hñBn}¤KìRNÈ­[úÓп VÐÐö[Þ?_ƪ½è¢EÙGÞ kÿZÀ…Ï¡›.ÃRÒrŠ6Phâe}‹ìnòè­¿‚¾è_DéRÃØ—.46²nýÚÑ…GšOÚ±tñW¤}[ÓÎÞ~:év¼fø‚õõÛÌ]C;©î˜ðeFøbÝô’é_Å.69ouŠ7l#ã‘ýû(‰HºL‹a,] Óå:q¼°ú'ÃNî¶ö º äÎY¬2{tÆ…K*5qLÙÎ×°ïKª[øÒ3‘§6ÖGýã^¨q‰ê¥ ­–¸ɶØÒÞZŒ|yuÙâÉ—Ñ^´x¡9€tÉ^Ú6›[4ºEýµl_µÖF763(ºhÁôWÖ2«iÿÚÀÅïóH˜+kõÒÆu“Áó²ßsÿ9óT¥fH¥$é2<Ò̆±z—."ŒÒ«a¨]hqdô~%¦~µyÃÐÆÖ¿úsPpÒiQü/§¤¦´ºkãÆÖ ÐшñRŠàËŽ ‡‡ð¦˜ÆK¤]L<.°5ZláfÊcú©ǵ5¢¥ µã­ÝÐ’!Ó«<–·R£ñ¢`TE»,)^„-{Ír_ŒLºüê#8 ¿Úx9ÆD£Ñc‡‡o€¾Güµ±\VfcñÒ)¦1¡‹àe?ÿàu1†ªŸü·Gø©>}T´1#†±Áº\/ŽRÿdƒ‰¼Þß#Ç6n<ý,¼JìÐÑPjžuà|٩ƬõØfµßÌbºlª×âK;šÐÔGÁûnU#{ ‚ÀPê…LcÓ\Øã¯xÎÓ-\‰ôÝ?}öŽ;ÞyöñUg‹'_c>^D¼[éri&ž\‹Íø°xÁÚ@«zûðßœ§t ÞÍy_û×.ܤҡKNä?5F&±^z·úçx9ýêæcC‡Û—z¡¾²Iº´ˆaLÜ.B—Š”q¯¬‚[¿†tÁÅ1§Mãè”/Ƨz»\Ð;Áb>}ÍЛêî+x‰àK›ZF¯áÌa¼DÚÅ$T¬þ†Åèí§ÖÚ£ÌíiQÞQ])¯ÄíÂ'mW¾äªF–x©ŒTÑ.KˆÖ˜ŽÌ ªmüTw7%c^îýUXT==›¸¾»6–…ËÊ c,^΋iLÓ…ñ2Ï?ˆk¸6`_D¦À$]ÊX|¿ÕTʦËõâxAõ/†1uÁ,/•Õ+<_?Ã~\õ3Å\²\¨ e÷øxª§÷,ª¥V _^è™ÅƒëøøøE*õFxYÏný¬ *¦þ7~dÂÓ-%óx•ß [\ù’\ðð"â…ÜúH—ÁKpO‡Ø‚¿ƒyÆnÓnFqèxV*¥ÔP¿€s·ÞÕþ5ƒ ‰—¤M ÇŽ{§`cSKè zM½{öãM›Ô0TÏÜvQý×·Qº”:Á0¶§dÜ.š.ð¤ \¸jé‚‹#­7Âô@Á—º™Q§TžýÒû!½ÀY´bE‹/8¥ç]R¯Ññ•ð²+l3¡b“¥¶v‹-\JpX~Ô=•ó“µ5ŒeMJ•#_òå²±äØâ%¶KM„u••‹‡-øÑYùè;®h,/°³ŸQ?( D8à¬eá²R˶jár=Q±ðÂ°Š³.êÀ®Ï$Íš”t)àã&­éoÓåzq¼àé±O c•zxÅ2X ‡ñ¨ÚlúÜ)ýB³ûüíØ…þ¥›–Ѝ‹/›àGSý%¸þzŒð2¾»hZb\t¨X®,qb¤[L—½†ß*[<ù2êáEÄ îH—•ÏÍ–®zíßG1WÐ{yu¼´0]ÚÉGìhÿÚÁ…&wÚ¢Ëüž63‡ô ]½Ånxç{²š.gäàAÒ¥43è Ëí¢é2(õ÷WÁ­_CºTÒeã$$éGº”ÊåY/â@ç~ðm6](LÙàEø2ÿ\; ‡´"E¦^Æ|ØZ9.o\´Ù2ÿ†þT¸¥“鳦T¸+e Ü.rαå‹ÓNÌ/ï’š^©x ±OyØ(|Ê„¬ª³ÿØD^ðˆ¼Výù(îùÃöÚX.+5Œ±xãÁGL—Ä´‡—ÊEzÍÛøo¬SOeµé2kë%‡.׋ãeŽôªÏÓÒ!ÕbÄ _½8»»»© ¥ÐÞ9©—ñ^‡//¨:!t³ª—ö"•/ÔÒÊq™œrü--Ã%»ÿÛo“-®|Œ9xñ‚n} ËŠú[´ß½^Ö‡g)2HiñÂÚ¿–p±šPsÌX!F}Š/³iu$?KûȨХ›+ÍŸ%é2< {ÂÍ–ÛEÓe€Mos™Ú˜kI—9»ª)I¡‹ˆÎ;-êZ0S•&]`3³Tòf÷®m•aÅy^1^¢…‹íËÇùó¨þLx®ùz¤‹3Ÿ ¹Æ¡iÉ—¼Ó Ù/H—ÈM;,^¢ØâäµLÍ,b ÄõÃ0 tÉ•µxáµ±¸¬Ø0ÆâE üð ÓE¾`ž»ÎX†1uÁSÍ6 ­²2ð¸}v/æ¬ß¨÷zp¼dˆÀ¶taºñ²Ø¯[+  Ï¹w¦Mè ²k.¾æòe¦œº`ÂKãÆh:šÏß2ÜØeû-±Å•/É/,^ð„tY¡SßcK$_â2ÜêÎ;HN¡8o´MábÜÂ:"™¤³1±íW»k ÃÆh€.³ñq/I—–.”À–ÛEÓ%ÃÚ%¹ æZÒ…ƒÛr–tºdêH¼ä-¸ºP׆>©Ga«4ÇU2buv1_A¯õ‚èýÞE¨¦ó!¶gÊÚ‘\áâ±e~ònÄ»`m ý Vîsî\š®±a¬âmÀZ¾Èda¼Xâ…è’Î-/^¢Øb£evL}ñŠű3!¼ÀÓlƒ}\úX¼ðÚX\Vn³ÄK}šéÂ_0'q Ú ·ÍÐ¥ÜoK—2ÖñŸ³Ä K—ëÅñ‚ê_ c,]˜.}‡D¼Ä¥õdj¼¿¥Küû”dŠõ^D¼Ž'rc©5ÂÅëÌuDØÅ~‹lqå˨/èÖº¬ÈÀÁ'eÒlæ¥x´ziºìiñÂÚ¿ÆpqÄ Ùé5U:/¸î1ç…ÖÒ¥Ù–.¥p:yÎv»hº,Pmµ¿¤W|dü]Ð…Lc[º0]+H¼ÌYpa‰ fPw­&¼ì³ì͸LR©óó`ëWÕŸâ aKêmè9‚ ·´Õóʵ®L cYû¤mÉ—ù8 ^,ñBt‰,=àˆ—¶Øh*T°$ºÒXØöé7Öyx!ß1Òe”Å ¯•Àå cF¼tf˜.ò“TŠñ¡›w‰tIØÒ¥€ëˆA‡.×ã…Lc9‘.{ŠB—yê³Ö\ê_„0 ‚‹Êv”.d{cÌ„*#^vó¿uO˜øäç  •\M_ÏsK¸h¶<¿‹¦l=™1»æm»Øo—-®|ÌZx!ñ‚n} Ë œúQº%Œ–r²šÏßî«Ü[Ö©Qþ˜‡ý.;xÑÂÅÓ-¥ÒþÁÅòiºŒè`¿…Æl·‹+_Å;Ôˆ¦K”®·ÄK˜-^¡ˆÃè¬7ŽF¦-k]¼PRÒ%GwÓÚX\.Á0fÄËpe0nõzhXP/Sä@‹ñ‚t)ÚÒe×ù¥.]®Ç .-]n. ]igqsé×pY$éBtyA=sʨ— “#|YWédï‰ZHSì{Áe+ÂE³¥[Þ@†Û¾uYv±ß>[ù’̼°xMè²ìI#Ì·ÐËtZ×$îÄÝA]{]õ‚†±¬Ý/•X3nÁCjíáb‹›.#]%—©8†}7e¤ ÆfÀfK²›¥ yõgfãcm§D½¤z›yuÍ´ëú0ófd?F¼¤Mòä¨aË".ûム—Icû°Å•/s/$^àK¨øûe¬¤!¶„jˆÙõ-a¬èÈ;¹×Q/ø)ÃßUcüò<›ÆÚ0ä öp±ÄKRè’–˜ÂËžꨀ⥬éÒlI—8š<ä¸] ]9$9Y{·~íén€'†<ì+A¼t‰r¹Y¿!µåK}‰‰I(1R/}‡x)ÅÉÚ_´J./3[vßøº>ù2\xmt˜H6¨ù¢Ó56ŒU¢÷ýâ2xÑâk$s¯—hñâ³% -xÈ;ß}”BñìµÞV/œTAt%\÷«µ±2¸\’ä—N´º%(1˜œÉ4fZ2eK¼ÀSe….x;ü½W ºt¹n/ûeÇ„ýè‹ÿצea‰\ƶ°tYlÓ1c(£sQ&³½t×o¾'ñɲ8ò¨^žjŽFõ–ÛûØŠ(¦ÉçÒ’Óv±ß[\ù"µX¼Ì]Ö,éÔ÷ÙF‹ëßOÐv«"ç¨ÜqZ€.ö‰E\Š«³K hí’fuOûäpDxy ~ûZ¡‹H—Ò=\‘©+‚.L—r¶æ«¨ö–±¼HÜÇ¡GŠ—YÞOš“ÓÀe’òƤ>Ìbw;/ù—å 6ÆšNÊÚŸª£Õl‰Õ‹p)§?$¸ðÚàûðTÏÉ©`NªÖÒ0r»È‚ ¯ ©±Ÿà|*'™¬}±(· O]8YãEÄ Ðå»Üë%¼2¤Æ>±e)´º sÎ^YK½pµ¢ H/ƒ+ƒË%ÆŒxi §*ˆ´×pQÊ4mÄ >÷Ý’—Ði]®ÇKK‰ó¹Pºd±%n[x>Cñ"pQïkž¥‹RVDò,¼Ü)í{d˜‹ô““©”æK¯,í{‰ïÑl1Bu˜e¸°öÿ]³¥âµ­D” xi4ÚealY -l{øÿ¸{ÿà8«3ßÓ8D¬jÒÄ6Æ% E‘»‰B4°d«‘ºeawK¾Ø’g`'ºmÍÐ,°Œ{ÆŒ¢øJ[µ·îPS—TÍeêVí½Îš¥jã?Ø©KþÙÔdI·PÒ2IØ-\µå«­¥ø¯ß÷Ýóü8?Þ-ÉR«póÎT°­V÷Ûç=ç|Î÷û<ç9²ë•iÌö8Z½Ð[åP»4©9¾o“à¢ÄKLÓ%bÂEàeÄK§eå¾ÊQ}”.!éŸ ºÃ.š.‹r»f±æaýMÈH¦B|}\ÎHβxI0\àL<#“Œ¿Œ-Ñü›^òàFÐÑIw}˜žFªV]VlqiÝÕ•”…e\pl4¦dý^¦‹>û­Æ5ƜಠH³œÜû"ñ"Å Ÿ– ½¸<±UТ邃#4Š_{iv@ªYm„é2Áßp¹QcL‰—¾«qcÓ O¨ò"Å ÞgÀbuè]1è¡Ë—$ðRªÐ~.’.)œCÈÑŸåfìTp©TdÂX˜è2?¯ÆŠC¥w/SL˜=þØÒñÄK$¯Ù"7g½i„ªFí°Å/_ ,^´vY•-«¡EÓ%Â+ð|ÔE¥^¾#ÒÅ)Ik,ºIpÑâEÑ¥,3iyët~¬Ìâ%æ|•2’QºDÏâÖ[8 ÏvÑtq¤v‰Õ<¬¿ ») $]hã$Ó×^ .VLI—¦‹Žïc}þ²UnuãFÐVgÀÃJ:êTl‘Â¥4kÀÇÆõ¤ª±O»)YºøaÕÒ«váâÈrï‹LLfñ"Ϧô‡^Täs¡5 …éÒS¤QqÜ ¡*‰ÄšY½È2¼L—œNÖ[ \nÔSâe„é[Ð1—r*B&Å îñäÈó¬Ô•31è¡Ë—#ðÒLsGš¤‹èኤ ®Ï&]p‰²t™³ˆ.Q]ß’4áÐ׿ué²Ã¹Û×H¢[_‚-J¸`NÁ—í?ts°Å'_ $^®Kí2¾2[Ö€Àã…$[cä-Y)V/Í\1gPZc‰È&ÁE‰¦K }1R.‘9UÅK‘èÒ‰Òe n©†‰t®à»tYâe¢Ök´M¨“&éR0é‚k¯k.‚‘mŒ5Ž!]úr]êüJ¨8FÍ—¿­YÓ%1x<ÔœqóEÖ‹¶HáBÇ H¸ÐØ0ü/¦ MöÅM0Æ‚Ã.u°¯Ï^X¼ÜÊ5’½¡£Æ~z-haºôrîØˆÐP½¤ðÏÒ¶JY†—é‚Ýkh­p¹qcL‰yŽXQÁ¥Õ’*Eü€Å ÜÕŒ.BÆÆ˜G zèòå¼´ñ7nFéâМÆtõÙ€ %]† PÒ¥dX%WpåEê%¼LÆœ- )ë‡]ñ—¡¸dKü ׆°9íHcF=Œ›€->ùR@ñÒ!µËì lYZ˜.@1þâaê¢ §/ÔFÇY»Ì¨fn\”x‘tyQçÕ†‡T½1/Ç‘.Ï’t鏲įØÐŒ§ˆ¦KZÒ%Uë5Z«X¶¬d gìÚ L1’(gWG”1¢]A¥¬ÏÏË€y„.m«ljÓtÁzSaƒ/Ñe’ýÀ)\¨G(¸¨±!ý/¢ Oöðà`¾¯q矨&]p™J ÄceÄ ‰©]Ü¡å‰ Í­ -Š.bt`ƒ¸“.ê—IÜXw÷-0]Tੲ¸Ü¸1¦Ä ÜÄ‹f- ±ÒÈΨ-,^஺ŒÝ.P§(ëL^º|)/Ø ¹þíñ1^;IýáQd@T/¶°˜ìpD{+C»ÀÚë"Æ^ò’9ݤaµvj¾´ÆU²ø #âb(Ôþ‘›‡-^ùR@ñaíR¨Æ–æµ¢EÒÅ Ù£ñ…y°%l¥CMr«Ä ”Ž~àà™3gîãö ¿û+/Ƚ“ˆ—|ÕÎËÿùÀ¾! —PŠϪ“xW<Ù,yÂ{²v 8ÇÜ3 ±LLBI‰WþÝÓO?ý__Rm+nG²%1Öph1èâІJ+¶Ø+%>á¾ê“ωýÞKY}vÚÈæc,^ijٹóÇÿgR)J°²4"^PãÿOÏÉçÌw¬L™‰èòe¼P8,iEÉ·Çù¬€s*.\9¯¥Ë¼d6Ðe¯ã òŠVö–¹y™9¯~à ´ì²#çWv_ Ð>  /ø™©\ ×éÜTlñÈ—gA¼<"ÐÓ~Ä–¥ä Å ‹c«‰—6çÉï?}æéÿòRh›=jœó²IâeŒ ?“6ò¸û¼<$K)%0Ðö¿_´Â™- ]¨â‚¬ì »tYÔ[TkÖ¯íÉÇ ‚1,] ´Ú$•0*³OQ¼Œ:ˆ W¡xÞÍ*Í«úüÚo=0ÌzîÚC[4Ú¹èj­ð9—úU0\B)Œ=TʰwRí˜Ä»âɾh©½ê5›žÃ..éâ‘/‘-_‘'–Þó§2ôò¢ûu*O™^Ó (º¨Á1Ñ%¹Ìù¿÷ j«0P#k/ ëꉃ-êó¤-¶€Ñ’ÌÏî¢ÌIýª=¥^ ö˳Ç\kR/]¾  ‡Yº8ÜPŸEºä’V —ùø ]ºðÖ‹Ig0ê©9Ö1­Zvx¬?&ó“û—©Lã²1̑ʥÃÁ¹ÙØâ‘/ßùÖÓ®äfKøÆÐbÒ¥­1åI¼üor~­±ùC›,^Œ9áB)maœU/ÝzþÊwàF/P`:ã;;Á ®ßVc vtá¶E’.øW1—rü<Íó P£›7à»Ég_š¹Jt9N~ˆß-ƒ?†Ûއ{D»¶ðäu}¸«÷x²qƘ¼C¥va—˜ÿÑ)ù²n½ýòå˻ĭÿ5Ξ‘¨- çÂkU®š.jp\—k¯%˜TÞŶڿ?µ(Èâãk/ë2Æ„NzÐü¼¸Îî°²9ü\ÄËæsþ»äJ„O¥tª.õxá<ñQ–.Íd;4eMd¨üK†7ìƒt9| -x¬cSHÊÏO4‰•žª{Cû?…}þ­·Þjá±A¦²Þ_ xyÜì…;.ƒ ¦t²Å%_ž_¬å®;î¸CŽ ¶¬-&]še°òÆÂm ß¼©âå¿™xæ"Â…ëÂÎaô-ÃS ýüóÏßù$Ö‹¶Ê^â »˜tQ8^c vtáS)ÛhŒÈcù$yØŸó‚ §<µVúrÑå8{!³d,æIºÌG{Zì–g^Áëû§m»}ÉZâPä”<ÔâJ_µÿ>¼~¯J$ð¤Ì%U{O—“U,S4[bÆX*¸KÍÂ.>ébÈ—Ä­¿ö!^¸Ë¶?wØàCKSÕC*W¢ ŽcI¹ö*M$­¡LGÿ»â/ß‰×½í¢­`I¶¸&ñ²>cìIÏç%Èug %eàå÷sþ~€‹¬¸>¾"]ê?ðÂyâx®KÎÁÝòKVŒéò(×Ãn/IÜüEñ+`3µ—‡Y"> [å'Ç\ÄÌôÖSx½ý¶‚•¿¬ŸÜ1Ýý¸hþ;t/lçÆò=¾@ù²OÜûíïãõ A>¶ÜZLº¨cQ•7JÏÛV°$87¹‰âåIÏ&ò3-²†hrÍ\ÄÞòÏt=/^ÔŠåç cl‰Ï$ ¤‹ HÅjÖ¯]Ø£s]B˜†´ =(yH%<ù¡c,\Úï¢à";tXGn±‡_Q×3-v{\תTç#ë~{Ÿ¼ö‹WE,÷ØÐ¥Ä˜.0ÙT*ÙBíÀ´¾OÀØ[ì]¿ûP^¯µØ] @‹Såʕ邃#» #+}¡ñJ%#záð½wÊë²h+HJZ“xY—1ößçµÒ9ÞØäh ÒþâUÿÕ|ίC7ÁÅAÊòH]ê?ðRÒu+**e\_ g,  w7\íèËÈ% •i¿ËÞÌû¸ÂE¨.ªó^\žR—Ð/í\süB\ŸÿÒïí…4€Ê>Oå&”/ÿ(îý×ïËëö{¿›-7ˆ]úiÃ_Ò×V0J6O¼üÆÿpfå.è2Yc–%æ‘–V×-/SœÇNRµ`º'³Õ6¬_3º°1FçºfeN-žÓ¥áBâ%§‹SöáwE1—fÝ¡»ä¹.íöð÷5]^ù‘m?ƒíÂgm%}>2¼JÃå¾ûž³íGÜcÃ8|’é’¢ûæ­”‹5óÆ‚Â.Ò…åK»Ùs>üðvÛÞ€ÙÊÅ£KÞR”m1mõïïÔ×ýØV1g âe}ÆØGŸËq ÕÉ1Õ>²[^q?ç=²<’(Z.uxacŒŽ¤L7rrd é¢à"„'t‰c ]hyÀyAÖМøñT ^’ž2]í&\„|áöòÖSÆùb'}½ðË¥ýobùÒnÂåý÷¿Æ]‡ØrãhqÑÌ`N{ca@A#¶ióÄËG'›–µÈ­`Àñò8%Α/^%#Y'!]FoBº1ÆGRRúÜ(Ïã Ye]Š—÷\è>Þ«»ùd‡¦·iH<`Û&\^yå´=,Ó•Œ=Íà‹xÕý÷™×ëö.ÑAJzl5ö‰.8ÙÇôVÊšycAa—Xuçæ¿Ùö?4¯ýö.éø¹3ÄÖ*^ º4ÓQ·P¢½1Ñ"ûlûµ;Í ÛÊZ\ƒxY—1öRàçÍr²Z–­±—üÏy'Žqß™]‰.õxacŒŽ¤,°Ç_px“}÷á-æø¦pU5Â…£Ì–¨Ì*ãŸZil¼mÒå©·¸ƒQåàË»½PŒ‡ë7µ/Æòåÿ²ío¼o^w@×A¶¬ -.º ¨ÄåycC8€‚Fì¹M//=œX.ƲÆ~¦m1iŽ Cþl¸å½¡@ºè¤±dmýåZÑ…±6óx›A—I¹hIV 7ÏèfºÀVñYifñ[e¯½nŸ~Å}ÙöQ¨Bù4òù/gìÓ.¸Ü÷[Ûþ‡¬q&…aŒ1]RŽ.Ü,]ŸZ¸+a—ªÒE\mßåê9þŽ×–pʤgl¬Q¼t¡ÁAWÛi¿îšìï¼×¶÷Á佺xY—1ö×ÁŸ—Mqà…¬±¿xÎTTƘÛóÓ¥Þ/dŒ‘t±"òh›¬ÃeŽÊÞL†c& Ì 2> Þü2YŸË@îYþ=c¿õ”û’êx¬Ù ÝçÁħÏôÂ}©ÅÒÍí‹©ä‚Ëû¿kûðúÑ⦠ªÿœ® (pÄ68›%^‚¦ˆ}Öì"^ÈÛi?ÿÏî ÅËèù=tq\uÛÆo>º1†zãEu´›¦Ë¤Úmšlk+-]˜.—ENòêedÅBÚ?òÌ:Úd”š.U†íçÜt¹o—ýç9clÆÑ'û‚Yc¬VÞX€{´‚tq´_swÛíƒ`ˆœõ²FñbÒ¥‘!–_|âã°}¿{¶¿s´hÌYU¼¬Ï{°ÊçáA£¢7“5ôœª3^pY¥½1?]ê<ðÂÆI®ÈL?Ça¸4eè¬!G鯨)lˆˆ¤Ë¤3HÑ–L¥dI¶vy¤ËSO ÛyùyÿÑS‰á€^øçNßMï‹Qûš›.ïßeØZÜt!õ_ÔL+Ã#6‘hÚ,ñ4Eˆ” À Zcׇ=ÒÄË™ ××G½6ÒÅU¶-yóÑ…Œ1¬0&]¼YM—IGÕ¸,^3ÄKΤ ÀŽv#£ß +`ضgÒyå´}²ß{Ùöo=tyÝþÈæá“H—SѨ1Vo, ì²’tqlûwž®sÙn7N«ùeÛ÷zfûý×ׇTÖö ú¼ 'èÎíp»Ôs²IÓóÓ¥Î/dŒQqä¤Ì}Àw.!, °tå!ì²/2]&±—GÑ kÄm3¸É>iûèò–}r‹ç ê…ÍÔ/†#è׺ÜÁº&—.²ÆÕ^G,žµIâ%èO~ËsÙö?ûéÖØ„ÞçòÆLº¤]_7w³Ñ…Œ1*ŽÌï R‡Ë:l=lÅÚrâ?ŽÛ`šôd_i¢·¥¹É;ëëÅY[ÚX£ËÑ(©}ºTmZ´•g¶¶¿7AS÷Šicë«1&¾`ÀçÑ‚)‹Ýe¡ïÊÿœ`¢ ï»5¼±ºÔuàÑI—™/fY*\y•£–ó\ÚJY*c ?¢ TÌᬲ1Ì=‹M,Á`ö匵Øÿ…BJsÁ¡e¤z4o=´Þ=öíº¨4žZŸ[êš(1í—  €¶ÊP’M/ASÄqÃØl Ýp"ßå‹ê·ØÁ3]¦¼e«hzc®ª–Öæ„õkC4ÆHºÌ*÷Nm>BC¿,tAñ…ïãò/DÞØ(þÊÁOÀd‰to²;Þžžj…ŸEä›Ë‹WyÃ.öÇzl˜ÆXÁŠwå9•rãÞ˜?ì²²tqþÜözªö?ºž÷¬w¾ZäÍM—6E *qÐöUöorD^)ml}c}AŸ÷íK«ƒ\ƒžóÇò 8ìõ9íÑ¥Ž/dŒ¡t1|1†‹˜¬BʶTGRrõ¨%, Jtáâìr~Ñ_î>ãÞL‰Û)·tD©@w„·V è…×…/†#Èv1GÐz㢠ï+ʨ~p[‘5¶)â%hŠø¿C‹ë!rÌÁ´½Æ˜O€5–á.U0¼1]6'¬_º 1†Ò%+ 9[tžË)žÇsR¸À5Iâ¥Ìø*%ÈRÆ>æ‹Q}~ô ”cg‹gQ;l·c‘Rn‹ò "ñªýéÒnŒ Ó‹)ºäN¥Ü°7æ »¬"] ÊÞuI»5>îZN¤'oD¼¸éƒƒ—ÈmPyf¿GJ|D=lqEñ²ž­”}• Ïkoh¤BÐIïù8à9«2üãhÜio,ˆ.uxAc ¥Ë´ÿ`RÁåp–Âr×iºÅ#^Z0ì"ø¹²,ÏGê è…õá‹áºÝ#]¼)c7J·…Aê?'åãÇmEÖØ¦ˆ— )¢R ƒ:(gŸà-éÒN 8ƒ”ŽÁÕÞ˜‹.éÍ ëׄ.hŒQeJX¦§a[¦l1®‘ì"rcŠàF÷¼ a.%n¢„EÛbRæ‹Q}þ°%Ëï´íç\n|ËÓÝŠ/åJ^¾Êܬ/^µ¯r=`Œ,E—‚Ï«7æ[àÇV›õþܽ÷.»ågfȦ‚ ³ñ⦋²Æh‰Ü%Ö^®(ívËKÄŽÙÅËc}¼Öó~Þb †fÝi9—}ÏyŸ:¡r‚ÎëTÞX]ê8ð‚c(]`)ZÂ@—&œ«brÕ\ùöº”ßKȲêØù'·ŠêRYFf2.¶ˆëŒ;òò–ÝòSŒä÷óÑaxyzá¾úðÅhýĵÛFﺸû«ÿ¢Åëヾ¶úïÔì Îf‰ï>ohBoŒv¼„é Þ⊺´I“sÌYA¼Ü°1Æl©ø?ïÝŽÎDb>¢¿<‡‘<Ïùñ+tЈ*:¯SzcAt©ßÀ R¿QÃÚìh¸`±¬.•oïÌ:޾@WEžç²Uü«ôÅ*Ñ+n¶ˆK´ÿ[ÆVJûñ~Î;Á|‰c¥>w/|<ßU7-(ºŽR/¿¾‹G¥[aÜtaõŸ ÚÝV ™¬·I‘—<ø•˜Ã&t¾´˜pó¯›xy†Y<1G®)µ¢òÆ\tÝœ°~MèÍâ1­¤«Š .\#™Ï ‹¹¼Ë,¦-H¸ ],™/FYŠÊB[#ø,‡Ÿ¡Âì-6†z[yäLu’G0DO|ø9ØSùû×Å«Nwçåmcx%Ó%æ7Æ6ìùÂ.«IHf·¾ë5Ø0õ‡Ëðe¸%¤îØE˜ÙUÅ‹‡.Òã2¼½ØV».CeÉ{÷Û6ì3žTÖXUñrƒÆ˜dK©gÄûygúOôã/eõ­à6}äzÎaW`Ëð'¹¿%Ù ¤KÝ^ú0Ρ/ßNÂéR”³Zi/J+ÎÀÕZZ‰™ŒéÑhÑlÙq´»{ú¤hÙ·d~Ѳ:Þqñe Tr÷BÑü§Bõ„—öÛaOå7î0FN¨¹\áÆ ã™dYýC—^’xq·ÕEemNÚØG®|ú;ß¼œ:&ÏxÁZcçÄ‹Zn‘lì¿#>„eøÕ6ƒ‚ôÆ\tYÜœ°~-è‚Æžë£u{LÁérž„‹Pîly…á94ôH¸0]äáou$ebìÈZ¸NÃi†ÿ~ßÊÊh¾DEã–K®W‘y–—s´aŒÁ=ö]rAÆØF½1oØe5ép Ó­ïÂ[ß§K–fµnyd~ñ胣Yn_èªÌQ[Ñ>AO‹­±ªâ册1Å–Þœñùó0ÖóªÊKû æ„€B. " 1è²ÀÞX ]ê6ðvøŽµ¡/&8=æ%¹dn#ébYˆ•OéHÖRŽéRn½âõĺŸÝ [f.\à±§¶`‰ñnƒ/SѲU>”Hœ1z!ž\GxÁ®3Üÿûà÷ ±¢ºQÂx¦Vÿ¸b©2ÒSɘmõn#ÉlmÒž—ŒüŸ¿ó T<¥5y?_d?ù§xnO$ŒÖ˜"Ç({cî“­M ëׂ.°dœ•ÆÄDš#¸à&ÊFUULÌ#Itϰnt^žàŠaC¤ ç‹Ñç‰-!:7býãÎ]xžgûYxª\éœb×8ƒrA¬È?ÞI‡ƒÞs BðÉÓmc8Ù7] AÆØF½1/ûW‘.!v?þ;:Hõžïu@¥|¡‚cÕâ0k  Ž6YÚ­I´'·ÕI!ò°¼î¤´Æªˆ—1Æ4[ôä/Ø.Öyˈ &£|'kÌ0îjŠŠÁ³šž£5KÞX ]ê5ð‚ÔÇ cä‹9ã|¥Ct™Wù0çHº øækf  K4šð±%¾4úèJ16h+Z¶Ã_¦ÅˆJ‡šOMŸQ¨r¥Îðò›äÂs>¾Üa<]‰Ô3ÕŒ¬´…Fݪ«Š¢¾™å%n¬@ǧMº,á$B•b’–ÞóB*‘.ì‹Åޱtlq²]ºŒayÏž}:‡è=x’’/Ëvt†¬¹=?@¥4:^0y Í˜ì9T 4Æ6æyÃ.«H—Ђ>B#ûÈ#?K¡oe$P¾Ð²Ý©‡Y.48Jª´Û9˜‚*yÑVxJøg”‚ÁÖXñ²vcÌ`‹#á·ŸO0‚§+Î+õBòE|A´ÆÿÐñî»ï:Gaj¤ B—J¢D W@o,.õxêÂw-±ƒÉp‰t¤$¥KÆ„‹X2l•™_´wE±Å²·ÊàšþwúvÜ!4ͳn¾Àñm‡±Ñßó@öÛð®çë /âúÓ?}‰Ö‡^¼0_ÖNïBÕuå¥ãNóÔT"žè]µ–J—°­ò‡¸ȦóRÙ³çNçç,ï<¬ðÂ¥JÉûzÿ‰þ‡ÿéŸþéÖ O¶žžƒ •FK7æ¦KzSÂú5 Ë(§Å¡µ—vô1ÇP ¦ ¿}‰¦ËcôFÃjÏKÙšur ÀôÅ®ÏÎ\%é’¿m45^^2ࢶËTF&ÎqN¦Œ¿lçÄV†ÅÂÉ岯‹ö¿h²gºÄ‚± ycÞ°ËÊÒá"Ï”3f— /(_²æ®—5ÆKÇu]*T ÑáÜÝ„ÏìH°xY«1f²EÃÅZ-&ñ03f¢Z½€|ÉfɃۀ!á À]µ^”ógîrIÌÎM6k^àáÈÒáPþî!>, z`3Ñ%R†AóG]’y\¢c’.ù®òÁ­ÝenÀTD(Ãh#Ò¥ëÖíÒWî`¾ìþúVÊËsáä^œ$ë /Ê~ðáEñem„ñN¨þK´´ ƒ¹ Çì`†ý|Röçlšxa;뻂+ǵzI\ÌÀCkl«¸—‡¿õ­oý[çO€.x®u¬¿ay*ÙÞ˜›.)}¾K €Хȫï%Z¥‡ÔDUpG@„Di Y^4}’xO*ß9ʧ‡õ6^Å!ÖšÇ"~Tï:" ”UäÉpÉø‘Œ¿ŒÁ¬ò<¿Õ1ñ눗1®é2&{¢K®Š1¶!oÌvYYº \Ôñ™’.MêKÇ”|IykÚéwÆG#ễktôÒÅËQµ$ÀõrxY£1æb‹—dRÆQ¼„ //'H¾¤œ4$ÚŽmº8;0É'bIÖ‘†KW]aÕgà¥YÆÙS'Q¦áàRhŸ¡0­–Iº¤zåTv…ÃøL—¹JdL²%§2\¬ÖU¦™ÚýMutø’Õ*ùriº»{Ž#7­¸©{¼ÄªðeuÂxçXxH%¹µ7{÷a„9´å\∗»^š6Q¼~Ž\Aõò&Ï„°½²Æ.‰{ùA—SÎcðH㈗~¬5f¥/ɳò``ýÆœ4¶PÛ°~ è’ä 2ŒóMSÀÝŽ÷Ш‘'‡Eä*É û2ÀÀti½ÊÅùÑG³H¹3…K„Þ%ªØ=è!\‡µâ‹§ø 2˜ˆ/Ÿ¥áW"h1ñdOt)T3Æ6âyžÍŠÒᢖUnO¯ÄK2•”òÅsÖ îy)VÕ0>º4»Î<à…2Ðe‚Å‹ÂËbñ²&cÌÍ.ªà‹…Ð$~âåÒVZ(| ¾à=×I¢Ëu0=[ISÍ©]}´Y7Y.õxiã8c”|1‚  Ëðýy å¨KVÍdt²mÌ–Î<¶1ÁåÐ/À€.ùÖ8Ï7ÀZ‹oÝ&ãû*¥s¤‹®àÒ»îñ2»P•/+Æ×“JÔ³ašßÚ‘hQ1‘xùÚû ¶Æ6K¼Ð Šâ¥•ðòCªˆr‘¬1x¶—¾*è2?Ñ ¦gG['ãåŠL¸†tùèÂIcÉ…š†õ7N—QæÆúb4IµÎ æ ÚhÅy¼è’.ÍªÚØ¼I—Öyi".Yú¤žHR 0*ó„&É+-úþ£Ûq;j¦33*QîƒÙðr´‹Ø'æhžìù®ªcë÷Æ[ùeÀK!e­À—ê„ñ ÿ6ÎÚ•P>ŒÆÑ%ƒâ¥?Ý;§­±Í/Œ/ÂËwÐÇVÀ˜7²é’ìê„çÙc1^À+È Ãã%/]dÒØlMÃú§KQK—dHNQ£N‘ÔÑ%æ’.üœæµxAÒ`åU•%s1".™‹ÄŸCObî£ ]ÄÊmûËLŠõ$_î6 !Äfy²'ºÄªcë÷ÆD#ÝUuclÝÞ˜;ì²’t!¸ã3<(ðÆJ)ÂKˆå˸{QáÞ°ï!LØG—fmŒIéBt¥ÈK^è#zz‹âe5cÌÇ7\Ò…VT,^$^ ôø¡1Ft)ZX‰u²”Þ>' ^¡†‹%« z ¼´ié2¨b.Þœ?‚I—±ñ2I—©ø‚“&[æZ#áJBC$NouÁeGx1òÒ9TæSYgVùcs¦|©¼Èµ*ÝW Ö^Âø­ œ¶f /µñ"´«3@»öà ¼Pdº¨TLõ…“¡Z†õ7J—¢äÛ¡œýK34ù@%ŒhéVñËrUK‚ðr‘wüóºW¦ŠâüËã¥ê`kŒ¥KRŒ ±ìÜNCl{ƒÌ4ÃÁu gY*wµŠ1¶.oÌåU•..._ÌKòÆ4^”|Qrj…s^pwEú©1ë„11iSööL‘ÅKŸ /.ñRÍs³eTîD¡'ØF2<åøé‚CoÇûyÄ —რRšPWÎ x™pr^²Õ½±º ¼4+éržàÒ\’ÂeL0G•3Wâ.é2Çá5o™Â:c/¿ìÊ‹Ó 0•+¬ç+ºà^ÖKw;ªz6K—J3>Oå]êdùò¥À‹’/ká ô#—†QÅ÷ªêŽCtYа)-ž“xÙ ñ¢é‚â49õ·„—²#GpïA—°d™Ëþ Šñ+Ï2^yÒdºÞdø¿ã7]’Ì ž”Gð0â¾;yéFÌÄ–’O¨,Ϥ„J_I¹ãŸ×½/â”qvµÑX—eþYcRº@FªåøË®ÿ7ø,…IÑ Ý¡²š1¶oÌv©*]$\ܾ˜¯ªFê>vŽé!î¢x9æ`SåM¼ŒWõÆê-ðRbéBp9BÂepûl%c÷¤ËTk‰wT@:·bË…D%jd?ûÞÂ¥¼‘¼ÁÇQtн*Å ZcRºô•ÔŠÖ×óç¿xÑòe5¾˜ cJ2ÆŽHº`HÅË’”à§B› ^ º xi‚RzͱÎy4ƈ.ËÜKN€xiÄ‘„xyž9Z üuz÷Šmt´†aý Ò…ª /á„”oaYÒ=¢Ž ¨„•¶Œ$Gç%]0g™vIŒŒ¸u ,Ÿ“Š. xÖ$Š—"C³÷Kš.^¾tÁêlj…“>6¶´jǼ1oÌ »T“. ._ÌOöÆL¼È½/ÙUÄ‹o7¥<%2#÷ºÀêDÖ5[\mÌ  ¼hñ`Œlq¡¥À%÷Û¯/æ¾+/T“ðÒ‰]á SHt‚ŸGù¡å*—zQ¡Ÿ7Vg—f–.—©÷8U¬@]atI €D´<§Œ±ëŠ-ñø²Î›ê #å &cSÀ–¦.E—Ê¢ó&‹X³ÝÆÒE]8%ºù26ö¥À‹!_Væ‹wYyÜ.lŒ5+º´&´xIÎ)¼Ô^¼˜iÄ(^Ò°FÊ ^Þ!c é2Íö)Š ʳŒ—íwóLãzÖŽJK…jÖß ]’Ä9U®uHz!¹‰KÑ%¢êOÒ6˜«*nCQLEÅ"~]êU¦nqrã–‘EK®6n“%®F–Çdð ºø"Cû87 æiß¶&5²voÌœ„«H¯/pÞ"{c&^̼êÄK`ä^Ušš¢Téñ·^Îå{Å‹ø¬¤Â‹/>cL³¥àF‹ÜDÙæø|1Ï]¡xáêœqÅäŒ+­˜.+z“¸çÚ°O:nÌÀËh5o¬Î/m$].J"PÄ%'š¥R¼´Ñrü¼\ùõš±^?_ê/¦|©Î— ó]rÜVDù¨eAfw[_…vQî ñÒ {ž“Ï×Z¼¸¶@¢xÁü—J¸ñ²¥3lÐåÌûï¯î&“yûËJ½‘.eÓ“»ôgkÖ_7]¾w4º‡ñ9ÚQÓ]ZÕ%=Ю^DÓQS[Æd‹U†_>HÇ•ªWº%Šý½êf t{ß«t¼å,¹lãîÊŒ£l‡HñmÛËç7ùè“Ò¤äK^à>oÿkwÞyçýð§}ÖêòeíÞ˜ü@ébÀÅï‹ÒEyc.¼èÍê¡*âÅC—fF´ì: ->â.tr'<)h·àÅÝVOê-.¸ø}1ß]‘xá‘>QÑ“ð÷ßwß}ÏAgx"ŸÈ”å]Í †Wx1èâQ*uxhøŽŸüêW¿ºý.ñEg¸ô \;oz‰@«¿õ—âºåyfy/[–óø¢·Ÿzê©·Ÿç·’u`¦æ¸Nì?0X·:Ž´C¤xùL̘;fda@?]¼|8|ûOÞÿý¯ÝŽ¢ñâ’/A|ñô"\ž5’tyˆÃ.’.0AS/QÚXã5{†ÛêŽ?~øá‡¯Õ¦­ÜtAñÒG9S•ø ñ·“®Î ÐÅŒ/h¥-¥^xãºöÆRr4-Ô,¬¿ecãò/ùúã°è÷—ÏA=¢9O¿Â×÷Å‹Èxt‹K!\ܯ2â-0OÄ&’Þº¿i²CX¼`.GŠŒ1ø©›.9L KËó+§.ˆæß'_÷#^V“/köÆŒ°K t1àà‹ÓEyc®Ì1Õ&±l°xñÌã´ò¢mú½dŒMp[¥Æ¡å0 #¦®éS‹˜ V´Êóíž¶zÒ§[\hqÁ%ÀóÝ‹„e8‘¸Ð!Îë÷ñõûaœOç#§H¼äÈÏ‘xÉ%Õ=ÞX^ĺãW|ýn—`À¥4i ¥5‚Ë3d ^-¢9¼žXgkÐ[Oñõv âEž;Ó !-5Â˜è² í/!H;ߥŽÿ  ‹‹/âïxŸ¯oìª[¼¸å‹Ÿ/nºÐò¬—"TØó L—sE¨çŽg𢽛9 ÖX¾'iµ\.È×jÑVžÒ“ ^¶³6íè?pqu†=pWR¼<+úD¯¥Ô góhoLÕ€™­YX=tùmßÿKuýK»Ýò±á“H[̶ŸyE_Ú-q¶»Ô+û*{ª¼Šbùn\%yn*°BâeD0FF“›. †Ù˜ùrP<î;Õuïi»å­UåËZ½1#ì$] ¸ùbÁtÑÞ˜‰cåž/žyœŒ1Ú¦_¢äˆEÝVÙA:¯ eB„&íÅBr¯­>véZ\p òÅü~‹€%dwˆ‡³ÿ>uýVŒFX*ŸgñÒEbñ‚m5èÝü1€nÿ•ºþU  <`¬T —¿üËçí–7ZÀUßcÌ'â‚MÉs'—¬A®EMg½2]°z+Ø!$^ä^)¦é¢ùòqïï«ë×wÙ-¿©S¼¸å‹—/nºÐò¬Æ2ô” 6/Ðe¯X‡ÉÃ;KÖ”áo/Îkªëwío+]P¼CÛÈöS_g€4Çâ²Æ^YR½ÈS•7¶(q;Z³°þzèò ½ÿ—Æõ/ÃöNËwÌû°Ö$xµØ;i_þ\uNˆ©?øUW¹wO˜ï™–gOåÌ´±^¹×E´R“Ÿ.]´c&{äK‹^ã”Ù·¾²|Y£7¦Ã.AÒÅ„K/V….Ú3ñ’2C /îyœ1u®‹XÉ&]mÕErRUƒbå…a[iÝâC‹.A¾˜Ÿ.R¼dñLðø°V.ˆê ‰e/3,áùhmLÍOyc7àåA­\/ÃôEµjkæA\@½œQhy¹5Lr}Ø5Ÿ<õ½h*Š)ç¿Zå.¢Ë:eЖ ^~aìuéuªÓEò¥E+Ä˰ý‚S§xñÈ7_ÜCž–g*¸Ã•Þr’.X°­1/XÓh,5ZÖÊñ²ñ¶òÐÅK7Ç€ –-¾Î€ýª›Ä Zcð•I½d˜.Ú“sI¨faýuÐå{vË/]×k¤\%yÅ‹\ØxåG¤yÜi‘.@}d++U½J²EG\ÈšRsSŒí¶ŠQµ¬Ìó–‹.dŒqqäØCÛÚÃwº®ûí–ÿǵ?q#Þ˜~$ÒÅ„K /V.Ú3ñ‚‰¼Ú5Ì­8³1&+Œ1–vµU:'³ŸÈRɘïg·¸Ûê5/È–´¸áè‹ìÂañâ¤Â(]Zîs]÷ÓÚ+Nâ%'wßðáÚX0È»é/ß³‡庾F_Tª–qù-ïeûèò–}ò;žË¶ŸòM(ÃÝÕ.>ùØý/ÞZù²m\Þ¿GPýâÅ'_üùc´<»Š#ïmfc ËS]Þ /vá=4(^îÆ¬±>ÛöÀåÃ×6ÚV>ºHñ2³©¿3ìªd­ Š—-GÐkŠá4µ›KZ olT.ÔBµ ëׄ.¯Ù'W§ËsöÉ5Ð幡 †'—, pZt‰xÃ?cÞOÏ{Uù²oL…]|ÒÅ—j¾Xuº˜Þ˜—q¾¥ 4ºèB+/”.—Kû\ÄOàÝH¼ T j«jϦ¼´¸=Á zè$øé">¾`ó–Ô:7¢%Ÿ[ålý^ütùš=¼ºü¥=üV¥ËÛ7D—i޼l€.?©/ºàÅ'_¼|¡å$×í 3WŽ›£¢õns¨R{cϧ4oØsÎO—?Öž.$^"ýtyÛÞ5TH[aLë8kÇWS4í¦ÄdššÈõ+jÖ¯ ].¯….Ϭ‰.ÏØí7°òõ$ñÐeHÔªN—ýöGô­V“/«zc*ìâ“.n¸TóÅV ‹é§UÊS…Cã>4št¡•I|§J™e˜+FïÖÇâe¢J[µoD¹Ò…Ä ¸ ‘ íÒN_pV=‡Âɲ(RV¡™ò{c7yàÅO—;j©]ÎÜ]nX¼i—œ:Ç‹_¾èœà .Ïð œkÎC*ì".¨‘\ɲm)*‡(ÍÔà§Ëm+?]R[@¼€16ÔÚ#I˜Ùâ0'ÇÁbÞžãéiŠð‚ 8ì©V˜­QXtyÐ~ÍC—×í­ ÷¥Ÿ ¾`!ÄÊòâŸóÐå4| |Á>jqN8“ÕG4û¼±›<ðò ý5]î²ÏLOwæçÇÄùìÖ[O]œŸ?:lßâ»ôwl5‹¾zëËñx”Œ´Ûíî óÞû^uxüÊòe5oL†]¼ÒÅ —ê¾ØJtqyc/)ÙŠFå1]påÅÒ… ~,%?] G…K$^¬¡ ¶ÚçN;ç/hf‹UÍóùu|I§RlN»áòÛû‰}Á£|dS>Ó$ÛJáE†^fë%ðò‘}—.ÿÚbïÁưëq¼€5*bíöó^cÌ~wº{jùJDˆh|åÂG¾4!Û~<Šcˆ"l}”5†s)ŸïÒ³¨4ìßèç{+•îjÆOdýŸhÇIû.7\~ÝbÿC®þñâ“/ð ÆµÁ>ƒÒå=Õ]5]ÄBf»Ô"©|:â%ôP"ÞÝnßå†ËïZì'kMËñ²E¬Bíá§q1÷,Ð9/[âPjûUŠë‹·bõ2¡¼±qo Õ(¬¿ºü©mÿÑE—ýö°2§ô‹¾ï%ÃbrÀíÇŽ÷²;ôªx¢5l%)‰8šÐÓ†17ÅðXL"%e¶„|3&n¥Ô“}ã©ÄÛ¾×cö ‹V=¾&ù²Š7&JtñÀ¥º/¶"]\ޘƋ ½ätr]ÈÛVdŒ‘tq¸n:€.hUúH¼ôÄ»h+ï–ÙE?\‚÷QV§KîYðÛþ½'e¬ªòÔâÎx—m¥ð’õzc7yàEôúßyŒ±á¸,ÜÊÛê“Ð^c¬eË–°åeùh3õû¬x«·=«UÑf ‰—ð,o¨,t©„qÂì-Áþ7ùÐ+uʵ›.½}ªpy´cË–ŸÚž¤±;`ðsõ|Á.DñøîY”.mÒãaCtç7‰¥0ºP¼ì]î†ô].ÛÃÅPmé"ú>–¯eñހΠtMÜ*Jñ‚ÖÇõ+©^ŠÒ;¦¶Q.Ô&¬¿ž½ú÷ØÃÿbÀå¶}`HÙé±ÙEù"ß·!¥_òEm ®òªC×y%ÕóÍMh}¤qH(ñRðΘ´•RNöðƒø.{ø^×Aû¦þ_ƒ|YÙ“atñÀe_leº¸¼1…z)êAYO[¡1ÆÒ…wU> ¢ Zc• °NëöµÕ‹IQ7\ªì£¬B({J'ÅB‰ñp~ëŠéÛgpeý¢!^‰†FÙV³2´Ÿòzc7yàå{׿pùƒèõsú4 ˜]ží”¶ýX€"_º/Ä£Cðïqï {›Û¬#.OÅü‡0!˜KÚK nÚ>ÅâÈ—¤xôÒÅ$ ±E\Ãö®_pùŒ °Uo| ‹[¾ð욥S ‡ÊXÒà¸4Æ®štËx;­± îš¿ÔM#h×ï\1}û€•œ¨)]àžI¼´{vù:ÃÓ@ž‡J¼@Ú[ü=œ‘à­(´{s#êÔ'9³µ 믇./µØí/÷¶Ø'£à¶X.Àˆ=¨uÉ÷[ì]²Ôóeðxȹû?ÙžW”FIwPE½sZXa -ÿHL[czÆDcŒ'ûF®Îü@‹}ZO™¯‰»š§»‘|YI¾¬èɰ‹[ºxಒ/¶2]Üޘ‹ ½ x™Ðh4Ú 1–.3¼¤ ¢ Zc•R£ à>ám«vÁQ`([¬ÏYƒ/楋¬¨Ið–¿Ÿ‰Ç¡ñr‹JÙñu/QÔs!n+•96îñÆnòÀ —Ÿˆ¯ÝZ©´Ž¹#šãy\N¾C3Ä—îå+×çÿ/rÍ'²Íˆ/KVŠêÁcˆwS¶Á¿ÂRu„*ŒÁdب¤¬1¢‹›,•‘Û:8]çÝû®_›piç‚UõÅ—@¼˜òE­Ý³8ÏD±­rÒ‹†LºŒ³->FÛ•;d¦Ä Ñ:/l¡¬˜…l éüC/Vòø>_gàÿ“xÙýì,ÒæÂbNÄ·B¼lkJ²7F»;²2ð’û"èâ<Ùbsdÿ_öÛöð‰þ91õõ˜{ëgÅ‹ZžS†jÿ¼›/•Áíýïz^5Ý}Qò¥I9-³Þ¹)Ç HC´#¹‚’#ä™1ÑÃÉ^²e¬!¾GÜ:G«ïÝw5Wqóeù²’7Æa·tñÂe%_lº¸½1…zÁRɺ­Ðcé‚ïֻ紴Ƣ‡¹Änwÿ»¶»­>&‰bFf‹É8ÌJ¾˜û êÃÂ|X†e‰ÑÑÂ;*ûº û£¶ó\¹ûëš¹"å µ•Ä‹ ½dë#ð‚ˆ#ûÿzöBƒƒ™¼ hŽ[”-&†Ù‰[\|éÞ¾{ËOÅ‹ÞVN´YG‡Á+ÙDÖXAÒð‚ 1®0/ÿ¬MYc@—.YÚŽïÝÍü70‚~Â1—;°WÈUo]ñ%/†|ÑCÀÆ cC9iŒµ7ébažQ¬±Ö8§yOõÃì6Ì;*wY´ÌZ¿=æ£ Z;°ç¥C¬.+¸;CË·¾õ÷K|ÙñòWMXàN>+Ð[‘zi–ÞX„§“PmÂú[Ö;:ìá»îíòëâ'Oˆž<‡iZ1]Ö8öâg-§ŸyîA »«uVæM¾d _¿k¾êäôT÷á.®µ˜pLkÌ\ùÆøÐ L[Qõ5c¢1ÓL„ÕìØè{àÖ_¿|ÿ~¸õ]qud³æKuù²’7ÆJÒ%]¼pYÑ[.noLá…C/|΋Dc³ú 4ÆXº 1†øx]D#.u²p9:ÇÏFµUûÇÚ“€qís„M®øä4ÏŠÍ6³v¿»Oô–×÷ßÿÌiîW—ÞØÍ|y&ÔF¬tòe”>È,Èoxc7}©1@—oÿÚwÉ^å€È¤V0­@s<ÿÖ-o=oó0[îpñþöSxÑ[o½ýÖ[ü¢þ‹ Í—°•"k¬¨è"ºD:A‚+Œ¡“ómV´½#²äœ¯K¶l»õ”ÀßpïwÜþ“Ûï’½¢"ëíÖ_‚ñ¢ä‹êA0”F¦ ­"ÖãŸÕ?Ð|¦q 닞ŒsÜ©ø²œÝ†ïzíwàRÕ×myé’ÅùåohÃþBàÅè Øþg_•|y6ì?Ëñ˹ù­H½|bzc)xI}1tq~ó‚<ïÁïáöTP/b¦Ÿ5fŽÈ‰3úE²6ÔHƒâ Â¥¿ûãòUÃéÜÖHØä‹²ÆLºQº”†`· 4Ê„åÛ!ˆÆXÌŠD%[BXh+ñÆçÑæ*¾T•/Õ½1»¸¤‹.+ûb«ÑÅãI¼ÈÐ ŸóÂhLª¶ aé2£<÷Á ºŒ.éƒI4$vOÐ`Àîs‰9+ÓÅñdàCÃÍO«.Ór—€—¾9pXz=ÓÝGÅ=|‹P[I¼¤ÜÞØMÆ‹@ÃßkB  ^–Dë5+Ó¡GÐð¬l;n}Só¥ÿС_t†Zj.¬ø2o%àÀ‹iº8maÑ °àï¡ ;9Ÿã§ÏGÇ`ËwCc_œ4îýÀ’~}¸ÎøŒµJÒ–g½$óÂe~0ó¬þ.â»ÐËÇ–ÕÕK4‚Nœ±Õ*£dö˜—.¨™ú¦ û}•‹úóZÎ<Œû¦¾Úö0ïŽzxË_mUñË(¿©—´áeàeü ¢‹?Ør¸}ç¾"r×ߣ£+§—¦b8œ8¸søäÉAUPÈ,:ç¥õ…`JüÒÇ{vîÚÕ~`¬‡;I7M*¾(k̤KA%Œá2¬Ò¦¬1£ª|¥’ŽÌ)¶PDZ°µŸwÏë;÷W7çÆ ó¥ª|©êqØÅ”.>¸¬ì‹­J7&ñ¡uHåhÒ8iŒ1–.dŒQLÈO—½;Øã=ܰbm%žàsð=x7¼‰ÒÌVöÓå˜-Nh–Ñm¢¹à€™égľðäÝÓ„—Æl¤Sñ¥G¼Ã´ºÏ”)Ïœñ2îòÆnþ3^Äú;Ñëwî4ðRj†'iÀÀ×>qðiÑ;!›cúçÑ~Éü_!bžx÷̰x«'NÈ]ÊÑXã/$_¢gÉËiº8g­2J——1l‰âå½JYL¶ÜêÜ Ê·ýæ/ÜsO;ÞUDÿÒ’U_|©‚—Å] ‰Ž¢t©”‡¤mÉêè²úÚ8¼fócD¬ÃØ1~â]ñO¿ð¤Ì½IŽoÀóÒÞ+·µ ‰—c•iè1gNŸüÏO.mÙ"ñr½[ñJÔM‘™s1CoEEa®kolœƒ°ëoYÿ¯ÂdDKU­^*¥i«cq‚LTtÌ‹¸@ªLæJ•(tÒ¸‚ g·D–@Ò\ÄÇ#¦àÉ—Û¼6é’“{]†¸QÆe?‘3&¸@­ š- —¦4¾|p6Ý/Ì—*ò¥ª7FaSºøà²Š/¶:]<Þ˜Ä ‡^Ô!•€Æ°¬ø+¯Xº WÈÂq/][™ =›j•<¿îà ý5x‡~ ar³úõ2µ0£œ±D×¥Cíyá«™ïÐd‹Q}G7^8ç¨nøR/R¾,(cŒ¤ËÈ8L0yµ²úGºä(ƒ<œl‰V⮊$Ð~zÑc-ŒÆÖmyé‚^Á¶~)^æqpBt™[­ /‹bÝÆ|ù[Èfk"» ñcà%¬¼1€J¨&aý ÓïÀP/•¾œ¾çn+#švæ1µ¢àÃ(sM`ÓŸ†Î ?ÎÃ: +|Å— í-we g»DxIì:³d¦Ò:o°EÂÅ ƒßš…8›/ûðB|©"_ªycDzCºøà²š/¶:]¼Þ˜Ä …^rº;Œ&±æ  ±Äíz„µÓˆxÑ1iiº(¶D#¼˜åÕB¥2§èâÆ‹ü˨/M90˜|ÌL¢E:•’lÁ³1÷¦À¶uRe1ýuz_Pñe**ä_³NsV©¼±›>ð"g˜¹‰—ï˜Þ‹°@º@?š ¼LÃæ”«ÒÛv[k§²3¡¹¦ç°ÑÓ]Fi¾ ‰ tEEÑ]çŒ#)ãjÏ‹Ð,m*#Y±åoö:>¸Pˆ/KV]ñ¥^Œä1hŽ1j«¶,;ÍçX„$]áýßvþè2Ë/†+P»’ñ’¶L¾\rF­ŠYÑFâ…½±¬ ¼¤¾pºÐ„Fx9×¥ä IM421åb®×¹{;Ã%|‘€AñRÑêÅàË䀋.2±å¬«rA͘29_¢Ç§áByS±xY(^äžïÞŠ—/ò%Ø£°‹–.~¸¬ê‹­….^oŒñ‚yÀ³†xÁ¶‚1¤ cèàÉôSj+Å–­¸kw–à2ÝÝZ¡§bÐE3Å„1“42‘0 FËõ+¡Y™<†¹œ°šî^¢YÕ‚_ItKõò)~Á&9hw8ÙH^ËžùÆ o¬/’.DAÂKß ýS8†Ò¥Cü™´ ûý¤^*¼9NñÅŠä—¥x鸰Ìx™O?Ó©â/9ƒ.ESºhñ2¨èâaK\ŒsɱŸt/™ò¥NøR/ü-@çË亴,k0«I|A¢Ë@³eÇ^ȼúÞ´ &‡'LºH¼ÐÊê†í1]0ìãå ,• ŸÛÙæ|Ut™ÎŠÐ!¶H¼ü~Zx ‡_~þݘ•¹hȉòÆFeàeü § ç=F>4G—>eébµBÜEM6<‘ß½ çˆk|™ Hñbª“/ßÖÓ³”.]ú—2Yc0c*¶T(òkÀ…ó¦¬YŠyWM]>¾É—@o 'm-]üpYÝ[ ]|Þã18jˆI—!Cº`:xÍlA3i¶„¨K50\ºãKHm]$U|~}Ž•ð)ÎŽû„L,m–‡W '­³|e\4ÒûöaY©äÒ ~Á£ÓŠ/ß¶ÊQ-_ø¼—¤öÆê!ðÒËÚ;kàåZs ;t_šª}‹¹áç:M™ðF¸¼“ùÉÓbA×|ˆkRNsNÆ!ì•%™?öæcL—ÆÞ¾ŒKºhñ¢»zÔÖ ¸¨À‹ÂKnÐ%_êƒ/Õ𢿙l«0ÆÆ`:ºnÑ„S„ üÉX~|IüšxPñíJ¶ ç+†3fàÅY=æ¡ *0Æ.Ñ9/[`0Âtk›ÂËñ³ò[dxKœf)_$^ÐKÉÀKò‹¥Ë¸Z.ç¢8 4ñ}˜¤‹õžŠ6Z.x‰ãŒ±[üÎ’´¯®¡w!ñâR/‚/çU œ›¤tiZp䢓/ñü“[LåMYY˜ËI¼¨ŠUŒÆ®Å— ùäá“Ðõ2ýpYÝ[]|Þã%‰™/0¯ôQO)]ðW{(<ÅÖ´•ÁôÒñ1öcrE+U}ࢠã¥äƒ r¾`(˜ta´èqÉÎê'HÂE,Ý`Új.XJ\-«è2ñüÓgد`ÎM6ŠU‡äKgÄêÓÑšýÞÓÞX=^ »¥õ3ïÃÁpm‘DC„„15üN1â FõßÅ›äËî‡Dˇ[§i›ø4‡öqº/‡Ú¦ÙNYÇ —tÑâå8ÜU´ÃÖ@¸èÀ‹ÂK¨™ä˱…:âK¼À¨_ÀüJh«ÃÐÝÁ›„±“åY$Aë0b nœ˜ät%â<òšqi/ë°ÇÜ£Ã.[i.ý.WKÑ¥ïëOñ?^¶ãGØ¢øòðTå½SZ¾0^Êj`/Ô ¬¿Aº¤Ôƒ)мté›8hðÏ0ØÏ]B ‘Ê–k‰œš79·’/àY×H¼°z¹&÷ÆÑþM)]zs¼p—â¥`Ð%Z‘ׄKNW8ÇP¼(¼0ûz5_üò%Àð‹’.pYƒ/¶6ºø¼1 ­‚´xA1”ŽÒ1NœfkLÒE²Eôü(g‹Á\a뜛.Œ/\T}±ê1rÆ á2Ž¥5Æ!ㆤ‹eiº,:ŸÁΛ­xKÐ?°ÚØ”äK¯}‘û©”7V(3š‚V;6š¬azÚÏéºP©H:E¸ ¡:T|™ÆÖ„—_L²U5ß­¼|tné2¨Å‹P´G|l© ¼ÄÜx ‘|)õŒ×_‚ñ‚Ï%涺 Ì)Ž^¥L²%ƒ.ñ%~fÎ…¥η‰ݤ‹ÆËÛcnºàì»ÎÇdñ"VßVtéu¾ òÏ/Ë$^ çH¾<Ë{ÍpõIx)ó9•xýBé’Uó™h2V/0Gà ð&4Ý@—"*É\îº@y›¿sv1G=Póe‘Î~2^º§¢P‹ 1 |ºDqÿ>ÏýC© $R‰—´ôÄQ }&C¸°1ý ­›^øà¤Qo—åËÌqÅ¿|ñ{c8iKé—µøbk£‹ß3ð’VË ŽQq¢ÞmÊãz5híÝGºh¶8Îä—Ä¤Ô  Úê ]$^Ú|ÖàB@ 3ÄRãæéaÉôĬT0ZÏCƒA!§î.P0\’TMËž¿ú˜ÂKï*:¥â/:yÌÄËl}^0‘”ÌZŒ—%èÎ[Ú) Ë(c{Èiƒ­¤Ó´Ï%~,Ô[öñÂøË/Óâø ‡„24ë¹¥K¨O‹WòÊpA¹Zô¨‡åËàhýð%/Dý6j«Ìh²ð\Œ5ªóD—{‹²ßÝMp1R’+Ç=ÚÅÄËÚcnº@7’1ÆânÐå0'–ƒ7véVè;ýÓ'Tü¥IËV/tN%^R_(]x¹•c/Žs3Z¡ÕnßæYœVº`~мÈi•Ê/Ñ|i¸æHñ"ñBÅ.q'þä<å?MHéR_@¼ŽJñ¢÷NŽèdO\È[ t)ÀYŸeàEÊ—œæ‹O¾ø¼1x«Y–.ApY‹/¶Fºø½1/IùÉD—fe•XvMz©¥J´“JB˜láÜŒ½p» ^âÐV{×BW}1s7>Š:¨: „qŸM9Ó@YÒÖ)Èæ„‚) Ë(VðƦöj¼ŒÑ] Êü±ÝMJ¾˜xÉÖEàé’–„JÏá%ÖŒZppswIZÀ1§µFñô-ýp˜ÚRÙ*_wñÅË|k~yZ†Ï`"˜ ¤òÇ^þTI|”]M%/Ê3ØR.(âÇa¦Œ% ¼HùÒœ­¾á…†x‰¤ θhŒMòÙ.m•Ö8§€Ç—Š´@ü¥+í>¤áÒ]ɹã.¼Ü˜=æûÐôlŒ9Î^Üó7 t™ç§ÞØßïþ¦ÂKž6à–õa~þ]-_/tN%^Æ¿XºÈÀ èÅ¡ý&¼OTê³{1g ÏßAw¨Gf‹1^R1S¿4\cñ2r|RâEÌ%Ÿ”a2»6Qªû’$ÑáZ¥) ÿ+òÂ…Œ±Y•MY„7M¼(ùâ(¾Ìxä‹ÏÃD)®|—5ùbk¥‹ß3ð"Šѥ¤ 8³‹xP§Üt¾S˜bvjžÅSp»,^Ä\ƒ3fÔÝ÷ ÅŒ“=ë¢ d+pñ}«ïç6èÐÛĘMÉ*zè…èÆ†,ÚÓZqšå\¹[N6ð ÕCàé2![G…ö—&p¯K—n3f1v ðe‹"5z߬[¿tó!.Ç»¤N5¾€/ͨ]—¦ÝQ—®^/\ƒyKÿcÎàBœWgMõ¢äK¨nø€ì>Í$]âx`F8‰ÿÛq™£Å/Hß”saÏoïWÅD—ßs|ÚÅ…—²Ç\tAãHcÎ60¼†]K!ºL^ÑÏáîÕxAñÒÝÝtw`~þC%_/Kì-l<¬¿QºÈÀKÖš„—7p+¯cG‘.hŒÁØx³ÅÞÔ«Léž|Ú £ñy„ç£/x¢åb#Óe®bxŒóx(IâEÖg’‰a)/\ø£ª¨n ½¸O±!ä(RòEó%í–/oL_%h—µùbk¥K€7æÆKQÑ¥ÄÒE¦V¶qØEæ‰ÅÝuƤD ÚQ(^D[í]CT_úbžb£® ÈS Ϯ掆ˆÊØRnYÐEh°Š&&oLÝnçâ¥)«÷Wî>ÅòÅÀËl=^.ª\"¹„—O¡ :A¬…Ŭ°…Œ1TÀÏ2\ú/ò<˜÷$_pì‰'Tì‘êRg|.blÂ舚ù‘]â¡v(¶$̳)W€ ®Ñ²Xñ2"ñ¢ä‹S/|ñãKK4Þa" °‹¬ùÒÁ5’eJì›´tFç6JîXâ¼ã»xñrö˜‹.0š{¥1¶—6ìC\í’è2|¾ÏqòÆþän…/¯:•VÅ—7¥|!¼TÈ›ÝxX£t‘—"‡€“ÝwÛ"ôù ${w¢16#«"÷ï^œóàšùšæKáé‹x¨1Õ&”)à9:—!ïžâN£‘hÙ“?ƒÃ’!/\øÒU„ÖCñ‚k\#%__Ja—|q{c²ð]*.kóÅÖL—oÌ—Ó¥™ÆÐÙƒü¯f »¨}ù¯žrÑå1N΢5(‰—ˆW»f$“/æ+OéÁ¤U%õosT|?Ö݃>1%£úH,ÌÛëHõÂâ¥Úê¬ôÇÞ¤yöÜ€ÆK¶/´³„/r }"+Œ]GA€Úþ±þ2†eK/÷xÀ’R¿œà b¨B»ö;äNþ W gìóK2þ›˜q¡PÒybç]gS®|î)/Y\Ÿ J¼hùR/|ñáx ¥ËŽEœ 0ì¢ê‰= ðˆJ½S©žDœ7#£o–hÒ.¼¬Ùó¥ôª4ƶñ†ýÖJ¥_e$WJMèmÙí(¼xÙo•Qû+;X¾ìVÕ zhŠýBé"/1YERâË.Ð{`Ó+6ÿî‰dÙ‹œ_òOÂË%c‘Õë ÜÆOú¶°ÊȆX>IÁrÂúœ–òÁ…~° ×]ØŸàC¯áìœÒ#IËÅ—¡°!_ÜÞØ¸”.pY£/¶vºxc.¼™.m2a,”&m‡IغžØqWK‚Ë׋øÊÞ&/y+¶wÕÝ”è‹- Å wÏQ·R¢1’äYܰoYÝD—kÏĽn)õBâe„Új@òe'Ú†f…—Xèæ¼]8ð"M€„ö±j1v«!¤ c €—)[Œ¢÷B€¸Îƒa¾°xá">ýýÝ˪TÌôô6çî_HùB¥šÛ*:ùD~ÐuòñŠp¡À ΓãØÆÛ^´|©¾xñ_§™¤Ë^˜‰±Ð,nã<€º;£ƒ´›’¿ Áew3>½ÎÃë'šüq^Öj¹èÝ|;c0J/ýœÄ‹¤Ë= ÌÛ«ðÂ⥠³Þ®Ëø ñåâ‘Ý\ BôÐÆÃú¦ ^r:eˆð² ç»ÒKUŽHå²c\E9Üæ˜˜“®éúüXz”ö½4·iÀ âd•õÇp&½ªOÄJÃ_81,ä… c¸Ý޽±"¨žuÖKZ¾xøËú¼1)]á²V_lít òÆ\xÉ]Jz¯Ëè1šØeýßÁÎl“.—Fgt‰n·—ÄKØzhÕJ0ãÞÇè»0aeXÒ÷Mp'@ER:DcºLpuNöƤzañ"þàv|ËÙ›?ðBó8`bæJ—»Ú' tˆ"1ᯆ¸9„`#îÇ]"ñr‚œ/R/ñL^fjû«¯vwùc%Ç9/ÙòΉþL¥Ç ËÊp¡À UçÎRŠ‘Æ‹!_êƒ/¼,QºàhÂ…Ð|\¶ä8¼àHú‚—Žs˜‹ôÑαîĹ@íâÅËÚì1“.0]ôIc ¬ÔÏ¿Kâ…éÒ×Ä#”¼1…/¯RNõâÝn¾ê–êe$´°á´aºÐš«`œ­AY­ßD¯¬èÒM“3)—eŽ`4øð‚3“Á—F îÚöÑÏ©ú–£z_>íyñ@þWÊ6ÆHíÊÓHP¼`SÆrÆh2䋇/(_Œ¦ç°K2—µúb7@— oÌÄKÇC—ÞëÂß\±ekS* gL¥ûÍÈ|÷‹—V©b™›]-0R»PŸ2ÆðTJ$tHeXÒEŒÆÞ˜T/$^^Tmåæ Wç‡ù]8ðÂî*ÆâÈ×Ð+k.ÉJ0©\æ)1¢S–ŒdôcóÑx?Š—w¶tDKáòá¥Riíœê6® Š/m*™«Ëhº¬Ö](^ȦÏx1äK]ðÅøN%–.½\h<QlÙ‹{Æ^fºÀÄÙ­Ó*6‚õxXÕ‚í7Å]ð²{Ì÷0óžbc ¥Kˆ©”t饱|\zc/(^º·]àH(7_¦¥zé™ÝpXÃt!¿¸hXt4Ú/Aži¨ØªèBÊ¥“Ã9­^f݆}•ü{!¥^`}6*ªÜÆû÷êÜÉ4ïy‰r1@+ù©.옅ôЀõ"‰ì[i×x2ä‹›/ _ oLž\—5ûb7B— oÌÄK®QÕm;¢¾y4nîˇÁ1¯è"• Ýn¤€¿A⥲rþ‘µ Å¡ÍùFF2†2ÆbÙ³´McצK’åå‚Ì“xÉ x2ÚÊ£_¸_ÅÒ7{à…=(vA7¢BŽ lþ)Œ–™.Y¹¼“§Š­^bÎ`FçÄ\ÁÊb°@íØ›Mõõ3^.&âÓš.ñgYÀ\Ò±|]*¹qmpaÝEâ…rŒB^LùR|qá¥6ItÆäéSÄÚ3Ö©èBÙb0»A÷íhƈ—*ÚŇ—5Øc&] Aßdcl R/Lñ)ôByc /$^Z‘.¸#Э_T%î‡õ7LZt©° G&|¡°ïàÓgž>¸O)—N»(jslÔ“l´$ÇIÃ5­^¬}vîÜy`Ÿ òÏéuCI ì;¸sçñªˆ5⃠crÓ_Hv&/49O¸F”)_Ü|߀¼±'ÿü….ø™%^¸¬Ý»ºzc^þáÇÐVhé2ƒû[(M‚ïƒãÑT;¿÷’©\(é²–åž—=Ïœ9óï^rN[,éÄð•ÑÂǽß%] Sˆ’>;Na˜Ä>ñygü ªŸóÁhÒc¼,ã]í¼¼óÇ/9Uù‚')ï;ðw/¼ð½—nrº¤õÁì”Ñsn«üÿ©{ÿè8«3ÏS8ÄŒ*(Ú?Õ’0B.™ˆB¶e«,UÉ2.IžØ’³.ŒM4’ m'”0ÚÁØ VJ8BqÓŽÒÓÓ Û§“3;fg¶wÍ@³§ãíÉaÙ==p $«©Ò ;ïì0þƒáìÙݪ·ö>?î¯÷½¥_@,¿é6úñªÞ÷½ï½÷s¿ÏóÜçI'¶>,Ž÷Ä .§¹€ —T+ìƒÑã!Ö.£‹×ßRÚÅxiŒŸ¾ZvçýÒF&f¿!'v6.³‰–]³æßo^p‘º‹Ä ¹^J&^LùRŽ/0‚–ÈK2ðòà½ÄºŸT3L_q•5)F…]…¸¿ghÐÿn2'Âì6AKÊ-ŽÇýG~ø÷úñ2§y̤ §f8+¥ËêmØßzÌÖ´?»^Ø6ÆxÁ—¾ L¿`˜ZúEª—)˜sÿêó¼›ÏOè3ic§6 ôs„—çz¸ gõ&C¹ÀÊ?cø^dÜ„ÌDÜà «—?Ö%ùÒ¥àRE–®Há^uÖ7»‚paÃØ˜2Ö0H¼Ð«ž¶Ç”)_,¾Dq­f\OG/Ò.¶ º8mc/ú®öŸ&éRzóŠdK^&¨³Ö~K)ºÝ<¬šqÏËÎZu’.ðºò3Œ—9Ð"³ŠaÅL#Š #ÆJlúJ'_ïÔ-šè ìœÊ6Æ>½ã®Êòe°h<à’¦ v»DYºœ¥}/Qc‘r9Ý‘wÈ7©ª•0nä"âücIß‹jÙžýÒÇ/ÙR±ž˜k?ªÛlpaÝ%Å ïî6ñbÉ_ظ”^’Ä‹º«žý«(DL"¸>;5Cu_J¥¿Öm¥•K„J¾Å©‚˜ øÑY{a/s˜ÇŒQŸf”­×ÒÄËÃrlù–4r¬S¶1ÆË†Š¯È³ªoã3õ «—Ï?€>?]’¼í}Ì.¸»ú5qsµÕÛ·o‡›<ªàsUçÉ£åu£i 0(^ÔþJÀË~ø¨G9µ††’fæçkÀ­ðÛ#gΜÁ ᆱ>Ël I©H¼ë%d*K¾X|Ko­†¼°ýÞ•. °‹-Œ.NÛâîJ·vR],/ãªÜhž%• Þ.ìHÉB[uÝc6èv.r%§ÚÇsÝ´Ì*vC:ùÁ0–Ȇö’ýAj^pÜE”‘qc„—×Ì“¾_*×MfïûþR¦Ë4 (‹µ,Õ/Ÿ¡þÂ… ðJKå"ú")E†U„¼®H¤¯³)kñö1Ìa‰¶ñ¥#G`Z9 k N(ƒ¾üös÷îé1:ôöyÀE¼‘xa׋K¾øù½°öÖ 7ÝT½D^âe«96.a€K úÔ)°(6òÞ¼u9%=ÒÎYáÈ.öI‚ôåYߟ^f7tIr1ì éRz®óøã×=^Ë×c× Ç1^Þ ³^z©Ö¼+C¿Œ¨é›;Ã÷¯]äVÂ>-]VÀ4ðZ­W{áfë0)º]X‚vC[ÝãkP†‹å&ë ¦+#\Äp1*ô`x+eX*“Òƒ¾ Ê]/•Ò6ÆýÊ~@_6Ù½ïÒ¦‹Ì5œ£¹¦@S…À <Ãsïàñ·^@¹`G² nfõÒÕù,À›‰ˆƒ©’O iw½h4ï‘ß§ã%Ѳù¸ÉܦÑïû.£CÏ ðÆâ…]/6^lùbñÞ÷ïâñÁ­Kã%‰9 0‚nˆµ £a jƒuRçÿ=%n"Áv±Lõ_ÝcŸui^x™ÍÛ‹v½ü™¶|a¾Ô›ÍÿöÛÏ®·@»ØBéâ¶] ´Â~Ú;9U’IÆúEw[ÉÛÍQVÐàIÿÁ¿_Ì&ä{Y7·p)ùè’Ū” ’.]àäÞû‡êràQ] U”/Íþš™/‡½ï[K—.r—Ò€–.bö¨7áòÎ;7Òšj3Có»"X jäDi’͘û ‡!hX¿ˆæø}ãø™ç½‚¢æÊ•ÐÛl®]Îñ¢Ä‹L¬kãÅ'_$_êM¸¼,—äA`«)q’11ƒ§¤oÁZVçÄãÆiCìa×YóÁKYó˜¦KZÆ”t¹dÂñò-åz‘qcxÖÇKö]­^‰û÷Õ¾ º$uE@%]JãyÏÝlg¼jš£9ÑTŠú¤/0ÛOL²{åÏû¶ù’ž9âU#[вd2ðEœu׿qÆ[ë4ŒY¹ ä­³xa×K/>ù|Ù*æ¾·ÍãVÿõh[(]œ¶±ï[¡÷å‹þ•”!Ô¡¿q·•¼Ý>ÌH¸5xRµ?øó‹5Ï‚C¸øè2èÂ&î[Îu]Š¿pÝUšÒœ±ü«ÅÄßÌùš/¯{ßÚ¥K—i¹ó*jH—´hŽß1[yi²„ó ví¯¬â½ YZ8õ3_^ñ¼Ÿ™tùý#^Æ ‹ñ¥J&¿6]Öñ"Å‹t½øñâ“/Èñ€?×<.,…—äAÃXž›“Œ‰ãÿ NIâÖûÈ.–† •àúzÍyÖüðRÆ<¦é’T†1%]¾§ÍbÒ8¶V»^¤mLœõ‡Öñ¸}WÝá–þrQáË KÚp»HéRÚîÕ[ÃûæÛ<ïŸÒI÷°KÂPÈ9CSp¶¯Á2ª3G½#ÏØ‡çݳ'ÊõL’¸“p\œeuŠ;íy: cEë-¦XFIñ®—`4¦O¾”®ñÎXÍÿöoü×[ ]lÁtqÙÆ¾ïh…û—½ŽµR*Iþ÷m¥o7YÉÖ8NÚjS~±PY¼XÂŦ‹àø8®1` *O×¸ß 'U(О˜5s¾fàËQGï{pÉÒ…/9|ÿJº$×x·ZpyçÑí ²$¥ŽD¼œ£¼ø’³r fv#_ö^ú}ûð¼g>…¡ˆÄ:†j8:w‡.ïxQâEº^üxñËÁñ€\ÞýíRxIÎ4Š“Áeµ}ìûŽ)éÁR%:ò²‡0‘åQçYóÅ‹Ó<¦G|JÆ”tù¾÷ø[öA×#׋´‰³lºü¡}WIð„^Tgø2èRÒn%]2ÕÞ]öø¾¹ÚûƒÒc<4x›;îÁtF>Òl߉±ýÕÞ}/i£÷X•R&ûÀôxÚ½âN¸`Ð06i¯d1C/ÒõÄ‹_¾lôž³Ûÿízûz µ‹-œ.ÛØFW+`UJ®Î<ËYúv1ט«AïµöµÈ¼ûåðb ›.9Œë/•(` œüåÞ ®^RÉ“`þ.Îùšù]½oÉÒ¥›Ü.9Cº”RÕÞs6]Þ©÷vrí ðà‡2 /#˜ƒ"#_2Ħ|ºGyôåÑãý.¶Àk–K`Fzæìг9^”x‘®—^üòE¼¤mº¼[¿^’klì< !YÛNrLI8Í d1רPó¬yãÅeÓtQ†10¶Ñ']@¼Àõx× ÇmT}-^Ì»Bãfõ¢:×B]—PI—¬çÝæßBÍŒ´,æë,ßqb4|‡çýÚ×+Î^á¢*_Yæ€(è óÁLh³¬LÑó~ãkÿíöõ0‘}WñË<"¼;EÎVˆû×Y³A¶š)ÌÚ¸E_K#ù~˜·é—¹÷Ã|ǼNÚàê}—–.]PfB¦t)‰æøÀG— åF½ºàÏÔòÁå÷¸Zv®½˜ÞÙ•·_?åá÷ý[]nú|üBg·Yä”<ës> Ñ|hk õHœoý­]ßá?ü†1ð¼žì —®]’Òí¢¤KhÒó|Ãûæ»ÀðÅÐåQ¯§=ø*}âλ´Ÿ È)èÃåßÛmŽž /Å–=Ïó5ÿÛÏÙ× Ný_üÑeö6º+G+8è<«gÁ h™È‚èBc£Òëâ¾÷žà8“6¸zßÚ¥K—it» ˜ÒeL4‡.ï|Xv9ð2bw Òåg®–£C//3yß‚K CÏóÁåݯ}Î ~1tqt°ÅNIÁ³ª¿8ºLàBX4„ËÐåºyÑå:]‚aíÕ¡KNî#TÒ%WüRéòcØ=3çdh¿Ê<Ææ/^\yœ ù2×`ÌÏo9ÿùŽÀEœ­››.[t®]„z1éBÉ÷ éâ¼÷ÃsÓåQ§v¹¦è‚¶?ðéãT±šÌAºÜX~9ðbˆ— ]qµìM— z±äK.7.Iº<:º¸§¤àY_ ]F°|©–.NºôÌ‹.=K˜.QÎ瘝Kž4h›8‹\µ*‹5áqE|;¶ “§àXeÇè»›šü‘ 0ŽŒŒ¬<¶b$!“/üv{O¦àø„f¶DÊ>¢rCx lzñgô½8(³u>mv™‰¦üA /'b)îÔ‚ X[ØŸ‡»™Ôãl…ÆÆñÆñ]ðÿᘘp%Zt劢IÅÿŸ­;â:É|À¢}·Ø0þ†=“Ž»ý„ÿ c¯§úÅ›;Éçºà‘gé:ÿ«ØQ1ÛIò¨¨põ¾'–.]Ðû—dér’ž÷˘Ab¬ˆaƒCè ~?:k¡ ÇzD­Z…±d«N6á XÆ®8^4éùóçŸÆÆuuè5ñ<ä`¡¡¤_?|¹.«û²ë@JŒ –1±©«uLº{áQ155íÿ£&wNIˆwšŽ(S—ë¬ ³Žþà1F´28®¸Õ1b,õ:þKg¹,cÿ”Ž?ßÇ/¾è²ŒñY¿ÚQÿÛ±ÃÕž¸*tÉÈ‚ˆRº@àUµ·Ý7¾{¼{‹ÝTï<ß«LL2_DеSûžâÌjïßK%:hg•ÚæŒ~¨í¾^¤76Ö’ccO:~HZ†©]/î<~2xl­wÁ×þÕÞ->^l1^};n ÷9ÎÒ älÅ;çY…BóÁ]ç:éì`¡¢‘^Ì,ý2V&—{õ³Ò0V#3Œaj×°âg --=åOâØ$È…âê},]ºÈí…(]RxUíÝä£KµwotšÏ6µb^†tí'ÔÇãp<aæÕÞ]já}ϰ¼óº+Сï;=©Üñb„©]/A×¾<¶Ö»ÉG—jÙWSÉ«Ü:”í.3ìÄrë8•“MpJtÙ á)6ZÄz\W®ì“¹]ûvô˜íi1ÆcÓcQ¸+¿W¿Võzœ"‘ó=ÞK>ºÔz\Êô%™báÁWa;ÃW….YÞi,¥ n¹×ëñ›&¼ØÄe[ÒÊÁc*‚+8‘_–E[vš^Ézé½Oåî#ZußëÕúÍ¥Þûú÷“l Tò,r®öhH†©]/n¼pðدÇ/½‘•û/¶XºpܘÜBïl….ånJ$"]Ô¢Á³¸8[ˆ¢ëêÆ]'˜ð߬ÂK TÌGŒú>Žc0&ÓZºîý=q¥lN ÌbìÔQ÷I&ZıÆÑûÞ[ºt‘‡VŽ$o#ÈïvñbOuðœ£å{źÃÇ/zùÔ¡ŠTî4wêóvÊ÷éϵ±ò^G‡~yù¯u¡ƒœ*y4¦@ãÀ‹ û×^ßíâÅU_ý݆ÐR¦Ž\‰Õa–ä‰ÂL$L'¦¤!ª7S¦=ÿ°kâŠä£¡âEGIº$9b Æ*Ç¢|ëžß0†½ëÀ¢•2|¥¢âa{3%îÖÿªzì ¦oŒ­qt†÷® ]rœ%IJüþåZßò±c—–ÌýŽçèÞL¼dN4rÁÉ÷k}k€Hy¥ÿám&ºþs­oÑAgI¾Èˆ±À»Ã] ˜oL‹¹ë¥LòVNc‹— -áéwû(OÚS©¶Ð¿ìn….#œ!Žüoî³dõÏVLÚä8I?`ªèî–x+Ÿ„éBìÞ3 ¹á ¯‹óÞ·÷i²ˆwØo žtɇ–8Ý»¯÷-ÁT0’.iSº„³\×N4ÇM>é#è™$aŽÆ€Ä<‹ïÕU‘z9t°ö\Œp_=â H®g/džSÉÿêèÐó©Ý3 z­/j׋/,_Ä]Ýä“.õ\qöwL…–2#HtûX]#OGBóE^NI‡±%MI3œCÔ=q‰)©Œ€)¹¹RÒ%Å[)Wh¯ Þúu>ér‰*Œ³Úoß°îê%Ÿt©/jÕÂE‚a1è   ÿ¨”.2 ¼gí98ãÕÞCÕófx}ãߟhLä-œôz´Ð»N,½¼G-ãeí/ò‘. ˜áþÈÞd+ÎÚª6èˆ1´’ùw¼dq<§•xQ»^ÊàÑ(îÊŒ ?ãyT9¦ßÅØÅITI3†„s·B—.·Óq–./Íé§×øO2Ðo3ð)#\$]ÈîÍZó©ƒrb7èý¢h±Eôúá£[ÿž-ñ§.‡þ Ðû¾·té’4¥K1-÷±ük{³þ­rÁô‹»¼Â­—W90ÉÓ²šÐRàÒ»SâÅî´7ë¿„½"¢Âó¹P)›¸×ß¡k1gIksÇ‹)^Ô®7^H¾ˆö5.Öþîc¢Å9‚¸Û7Åâñ:9D‚SÒkí15%5q~ê‡g©)É-`fÁ ™Ç$]Ø0ö‚+NdþÀÞ¬ÿ8o–Aší¼wuµÛß3«<Æ»ÂÁÎð½«B— ßü1’.T"¡˜¯÷ôúÒÔnš9ÍÕY7Óß2cïO䉜Ðb”Vì,ˆzÄXxXL%ѹüz7Wík ª ¶Õž÷ë jó™1f†Š¢mìc%^´ë¥L ¥ÖÂàÈaOóý7ââ_9Ï!:+·-Æ.¶º`‘•‚jhÕH$êáöŸµ¼•}2FiÿI?Ü·R>`Ây«/åŠë]Ž#¸±*å%]°Reð ~¥]½±Í\„ôTàÖ@ \ê’¯÷ý°´té’2¥K±4)ƒÅ“*õòøf“.ø”’'"W}âsÐ÷²¢ã`§‘âò®uÄ_1” f, +Q/¾ý¨©Þסÿ"™T&ŸÍñbŠízqâ%.&à}+õò[ñÍíü€7|djÖ/‘0~´¸FÐþS)v%&×´uC‡}SÒk°’¦¤ÆY6§ÂÖ¿hÓS’SÀÌ‚4Áz|_=FŒ Ké"ÐR*­¾û°‰—7v°k.šk]Áéñ®^2à"¦SCµÄÚ6É­`u†E  ÏO—¬ÞÛ#¤KhRFóÆÄ-U_€ØÛ¶×zà¯ËŽê¢“Ð#¶|¡‰|\!ã)šíCS08z¡<ÖôQd K+‰®:2"ÎÚ¸öBýýqÖ_‹K(¾¶RjÂmcZ¼h×K¼T6´7ˆ·T}ì:úðhEÅù8é:5±p»Ø‚é"}-b‚ ÛƒÃh…{×™©¦¢P ´ÕNù€5oJ¶Œâ4N¯žäË•A¿]Œú?޾媥Vò[è.= s$ïuA´\üwõð† ô¦*eRìB¸ÅwÒ´0^ŒÞ÷@i Ó…m[$]¢c*BGÐs°§ò.ˆgø÷“¤ßpúí`›A÷ë¨&³ÞKaêÉìLF å;µàÒ‹­T·áxÉ7aóú¹P)äç‹ 0F…i-^ ×K/È6?Nï»úFØSùÁMð¾ï¸c¤QUÔ0ým_a\h Ž 16b’/£›Ó×õ ¸àmLIGÛÛ¯A’Kä ’-Cíþ³D/¬4ùâ0³á¥”L b2¤­”¼A´\ ù¤W{d 4¨ÀK4—ÍÜò]Ž;¯¸Ø€wõøK2…¥w¯¡ZÚÖÁ©#R—¬Î°¸ôùéí1F{…tÂÐV‘Åij«áßÂrCC*u[éU2­£ /B¨Ü’5BDãGõà¿ûú¤})Kˉ |ùkô{¶b×Γk`+%†ªâZk/ÚõâÄ £;ŠWÂëÕ¾† Í ƒ’/O~¹t13áûÌh…ÚMƒVâÃ^°!Bo¶Õ&ù€r7¢Ð4NÚÈi†_¡b³gLVtI@ÿÀÌaYIXƒ´å‚qW¯Àh8Òw…‰K§ZFŽøÆnZàx"xïK“.iʘÇSNç ª ×ÿWºƒÁ3$‹š/‡púŽvò–ÝDçó+ªZåԺˢ¼5GÐýa²°À•SäxÉC®±‘5úzbA€@/ÀhÇ‹)^ ׋/h Ô#¶§ž^%}רaGt|Á„)‡‘æz f¬Á™óe¯¸«ªv4{ úl-Ú-š¥­E²å~uþ¨§Îâ^hñ%(`fÅK†­à ÚJ ë‘å¼–¸lØ€cÃ{ëj¾ ú#1*¶œ‰—}^Þ;žUûšù~4€z>×úüt×’Ò…̘L|ü7k¨væÚtÑwÅ—6”óÊûB1œÓÆ-%™m,SÖûüQ‡wŠ>ý´ìÏùOš'¨ò¢:kí_+é¡ùâÜ7?9ÖMyÿÐ6֯ċázqà…Êhï6ïjø,ö¦®¢ä‹ ¯úâéb¢%pPwU¿S)ÁN©é{R)é:}Ö½Üì‡ ¶ÐOâ±&ã ÊCÙÇö¹âZ¦fÁ‹¤ m¥U%)%\†#Å—×Tó]MŽápù®Å1?³àQªL{X,Î*œhã½'6î})Òó¤™Ñ£˜J\ªúdsð3À¢_M¿ƒ˜¸²fŠÚ%…ò»‹ê½ìZW£ÃÆ hPï›>êðWÄ"[YÒí0ìò—–¸jþµ¬8áà‹ ÃñbŠÃõbá…*p úFìá¯lØ€ûø®-¾|9„™-b>ýþ¨n«攘\.õËÞÊg™ ó­å¬Çn_¯J²]iáÂmCG#Èæ‹_ÀÌŠåcÃXL¥ Rpi0P4÷hÐt»bË8L]1q;ÖèD›­—3Z¤U³øE  ÏM— ¥HºÐŠ?+³êÃL³iÓÖV=]^Ù>61\2xÌðµè‰|9¥gÁD#‘®×^{­i°e¤¥%làzÞ>îªp¼ºiÿ=ºê¤Å—HÙ¼,Ý!ú‹©Q%^ ×K/¤\Öãôå•WâpWÏ“z).š/ó£‹U¿k20òsÐ’­•¢ aœƒp‹øè°´‹eØî'éÉâåÏÜØÉ/ØB¯aþ¯µÇ³+œ < Úãš%!¿¢ l¥ì–ÁÄ3mc¸àñÍoþ¨*iÀœ7Ù"ŽƒT§òßþË{bWp:r¢…ŽŸ¾ñÆ¥%{0]R¦×1Äp¡>(šÃŠp4ù’9OŠdæV®}8@¼´ðü†¯|å•ð8· 2‹úFGá2JÎßýûïßBW¢õ™Á—ÉI`´ãÅ/†ëÅÀ …0 \vWaðØo¼ñJ|Ç_nØðg/^ü|ù‚ c¢%‘ ¢³c XñÊ+¯ÅÏcåèx¿ÐË¥}l]ö ðocLLI#¸u²É(%]1$ªNc™–ýûÿo X|ñ ˜Ùð"é‚c»eÚ øD†  ÿ’Ë‚¤A¼ÜÁli”¹=Îb.þª_oº'->„nüI{¹Àoñ3ñ€[ßÔŸ›.YœÆ[Qº·¢ƒçâÐcÜ„­†@;¯âËeÕó”{^OäédJ¦gÁ»P.ÄÔ0 ¼ädWÝC˜‚E·Ð>}F7§¸*4Á än¾LŽåd¶1/†ëŇR.ëÑdWˆažì½ÕËbù2ºØ¥!RçÈD©² ,OÅA²3ÖИU5›ªA7M“ÏKÓëè¸lÄxüy¼Pƒ­ó`Ȳ„|úÅØãR/}¹„¤‹€Ùèn–.0s p1b.VÿŠñÒŽÂZ[€D#ýqXrUˆÁñ«rhºˆß/yº˜c4®?f¸dº’ê!_žêPÅÇÈ7µn½Â‹hÙOH¼ƒó€hÌ_µ€Yç|¾‡lŽÆu×Oil4Š…ÒLwvÚXŸi¾D“AÀŽS¼˜®‰.Èp¡õ§xG;â âÞ~t½ÄK/_a,´äré2Šb„G|Ft >ÖvÙ—pi‚a= Mp)\Qu@)ôÍ**–žW¤9¦ _,S/ÓcQI0Œ•ÒEL”á —(‘7Hž—x¶ˆ'ÆÜ{ ÿÙ8Œ vøõ²Ž¨ªKª|ÆÙW®]0‹>®‘VR³¤y&žžŒp‰VcZâ}úÊ¿¯óäkቜôenÉà[ר[¨ƒŽN(¼duWEãü|VX³’ïÓ±.ÓW02Û˜/†ëÅ‹T.4dâ°Œ£Y¶ƒð‚™É×¹èâ«:œ¶Ø’ç¸T""¡ÈâåDIÖv9Ș…ÿL…]>Qƒ¹qP È]ØøôQr£eIí£4ícöæ|'^°ÕÙƒÜýÆ‹?¾L3†‚‹/^y1†ƒæüúüÉ ÌæÝð§¨çQ¼ÜRº¦é’ÖÒå8m½¿Lp åŒ Zº¤l¾úzT½ýÄ/+Ò\܄⅊¸D[>{ŒÅ ʤIÜñB}u/¿¥FäK˜ë3ƒ/ÙŒ0†ãÅ/¦ë…ðÒK‹„7åˆÅ N@—Ñ8TDüê툗•E7_>7al´ôerN¯ ¤Ë8‹—‹d¤]Ìl<„ŒÙ‚“/Nò¯+_þ)L¾_£_¤!~Üœrz+ËSÀ¸ð‚»ñUž±NeöígQpa²ðÎû™²6Þ!Ø’H%û2Tëe×J¸»SغÐà_ÅŧQ·}R©Î«Mt» }÷u'Iœ‡ß„un#7èB/3ñMq¼ZmÔ!M<ê7’G²x™ M]>k&ñ’ËJ¼d\°ûè'ºPò<^{ÁM4G_J6`þTÉ,^L׋¥\håDi9Mâ¥DxiÌ/Ž/³ÒÅ?¦m¶Ã$±k8U aô¡(‹—©Œ¬í²¯%¦Bö[iÏ'œ¬ƒ®´ry³Í3‚*jFí£ÔñɾÍù¼ÈöºφJÛ z¯ Áå¸o'ú[špØœUÕOÓ‘ÁÓ£ñªtþÔåHÿŸ\ÛtIú¤K á2ZÅËü1ƒ.˜¶h̯_Ãr×K˜js­â¤0*”³PÔt¹ÄË®iÕí .ø®.š;\£F}Í_gÌš4Å‹éz!¼@ò§Ô5bág­@—F/« /ÏO–åËâ ãCKÉÍ–K ËÙÎx ‰—=É×é§atèa® É·]IѬ ÃP•rˆŒq”.£O1]€ñóE ?^¦y7>E$gè­jS*Áå,’E§t™&%¼ì8¨Ææëãbxà žÿâ·/®ÎË£D›«Lr»yû΃¹Í%ÍFÁ(¹1&‘Æ@Ÿ,øÒ»™ƒÇÅFnâD7y^¦a•ƒt9A⥦$ñ²Ï„‹8.2]ˆñ›QïÁ‡wó_Jå L©ýrž3\/ /Z¹àÊ«ù K#‹ÂKÅ6êÇ åKyº–‹>¶Dû¨ ´Þ […¤xiK“ öêïUñcms‹ Ø¥æOti®ÔtÀ<–×m"ùrª`oηðb´t˜;ƒhʘަ?è{ƒš-ð.~Å«²DŸÞׂüxG·Ì.^®º¤l¯KÍb£ŸH«XƘ áÔd.¨_#SÝl;so“/]:ZP¼¬—Ó(ZLÁ¥TZfÒ¥˜Êºùˆ,)¹Ä‹éz!UÝ•0F,ô× Ì~b„â¥DxùF²8 _A?ZʰEK ËŠŽ8‹—Ñ0ì‘p9Û‚³†½D—óÊ&«¤afÍé”.ñM?`ü|QÆÄ‹B‹ÜM™FÃX»Z\¾k€E±®}rÄU=¹œrYÀ ®ÄFýŠm2ƒúRK€.èv‘¡)âÍ-×Â&óV9BÑ/‰ 5S….Ã>Ö¹¤2éÔ÷ÝÓ¤H' v]2/{YY$p4\S²èBñg¸•Þ&Öf„«¬3øb&šàþʶ8´Ñ˜®‰­\påõñ Ë`œÅKÇnxoOßÞG=µ{!|)C—Z[üc™I–‚‘Ì¥è":{^>A&‡õAÙÑ{5[úwqœØøi~ƒ,]6]öÔèü…™p2?ve—µÇEáņ8Ò%“}Ì’..¸(¶ì ­~ñ2™1öµ€Ïfx%¾—ÙÅ˵@ŸtY‡¨‚Ì'Kš.(]B).ùCLFcúHfûÀyÊÀËøòÍŠ.¥c¸ð~z5›ä.ÃÇJ]¶˜ï­[Æâ‹ ˜Ü´C¼®!ۇ6oÓï—g% ‹è{$^$^X¹Ev•áËB@‹ƒ- Ëë29môli¹/ãÈœ—õ¥-ç`í/šíœÁ–³§h·+—‰Â y]–—ÀÁ˜ñ{Êñ…ŒÄ‹‰qWH—œ4ŒÑzä)+>A±åÙëɵ/ð"ÑÇÕ©‰—>+±S_Q–8½ÊtA· G¦øJ¢@›e4]hQLÈP-­ü/­)£6—Œh†åš4U…¦.B‡Ô‘L@¼°Å>iÓ¥D>˜<#&ÆuhÁÓñcÈ—’=ˆ¦a½hÔy™Cˆw—4^b .´òº^¼¦ç[O³xi+4^BÔ¡£‡VÏ›/.ºÑ¢Ù’£_EÓ¡ãZ ›a‹¦9˜”âšbZ­êsyqبYù[ä$éRÈG¸š¸ åä9âÇ^šÖˆ*¿K—’.‚áÛ‚p1ØR ±ÃòYm½kœÉG)nlNñr Ð%mK—^.bM 'k”.%ŸÖž0â“)¸2lâ%‘ÃhÎiM—ûH¼Ý88EqcZ¼X~ýi¥F¯2]ப¤t±àò .L4]xM“42„ÁT¸m¹ŠOŽpÚ°iååÐ~ö¢Ë %^¤C8¢×JŠ.ð6?2ÊáuæÎ>¾Øƒ¨ÛU¤Rº^^,¸ÐÊ ´ËóàI€žÕI†/%–/cÛVÎW¿è⻚-IçciŸ¼õ’.J¼ÌÚ &ŠN?6Žqbô 2ÝŠxƒÑ^’.]E ËêÈ `0TÌi M)âarÊé}áã$]Žõ…Jæ͖R:!‡Ïy¹¯V½-2œyVñr Ð%)¥K¿4ÌJ¸D©°…¢ I—ŒÅ!~bíÁàÊ™±4§´ 'ú´ ã8.bR„zÀ€‹X%™tæ ¥ÏX+Àøø줖x!× +‘Ô: .´­PºTBðF‹q|]Â¥{ž]Åe\ÈßB›z/îEaf±BI±¶ËX[keYÀùÆ´}ZÄ]‘ÅŸ cg?Šà’H%·­°Ø"Žg1p,Æ[&1`t—|/¶__…$_]º Ûzòî„„Ë.ž’ia¢è‚£"k´nÁ¤7/—_3,_Ú2*çXÂð³?¥•Bé‚/´ëY]t!ïT^_ï1ßþæ‹Ò) ì(ý0—•†›òÓ¥ƒ—ãb±ßzãEÊ—ô¾yòŦ‹ -[¦é«p¯…ÙÚD—tQ‰—È”Ö Aëxÿ tªôVbÜ%I7ÌŠÓ0ˆ`p3fÞ™Î$,Üc4x@lU­¦¥ ƾ2]ÂÜV[J¸XlÁÍéu£±ŒÚׂó1xöWÎéy¹è’bérö\º³d­Psu —m2Óµ/¿'ó_ÏTtíÃÇ£xWg'´beI¨iŒh‚–p) h—àÈ€ñó¥”I˜-­Í¼5O†^Ä»Å\ž]À¯¹¡3¤ð"åK²rv¾”!LÐ×$ üÊÔ‡]váȺ„AÍKñSpAé²¥´o¨â¸Øl)ÕìR–âØ¯(*ÆX4¤ü™M¼,}º|dx] ¸@ ÊU|婽ù™-o2ã/a/ùR§Ê HßKl ç`Pv)ôÂèº;MpAyßëÔ.¤JÆ>›/¸ãÅŽ"ë³(¤PåÔ ¼ÐòŒé²Å ”­TxQò¥4¾8Õ ìkñÿ4Õ§ªèIæp0Fty¶ B/I¼pAéBÙ`€.#ÔïãB¸0\Ú!ËëI’.âóÚ¬˜1"Œ0Š/½vJëÖ‘.Jº˜f±\ÈÏÓÿ+#rŒv½4ªBñbùõ“2$ùêÒ $]L¸Lê… ÒÅnË#qQX­›/K¾¼Îò…ñ’,ɪ^D—. 0=áÐØÝê_*Yt‘¶±©´ 7|›&_’ÌmDèyáUÛtàV)ム8àdºtÄ•x)´u(¼hù2¾¤ýcÔLçd°¥4`¨„~Èé%É M— Ö…Â÷Æ4Þ«œù£ãV~KNQM‘c,]"Å,~”±|"Â$mÝ*Yù“aJtwÌÔÔc}äÖ%]l¸Ølñe>¦¤0ß5 lc76‹xYútIiéb*— ­Œ&IX§B;gØÊ.·x³ÌÇÖ?Èi“É8v\©Dº` z^ŽÉô/]Ãñbi²¥]N~“/2ÕX°ó²úÀßÒû~J&…áåÓÔ?‰°ìi¼(ù2?¾ˆ?ð%°Hü,iuW¾9\îu=‰ O(Š’ÒQª¹¥‹NùÒÞ¢ó[2\€7¼M_¯¢W?¹•- Æa ÄK]FXº$ŽS(²Ìðg±ÅD Ä~bâ%ÔkÚÆH¼˜~ý>ùÊ®.]ôn`Ó¡?¦&•2Ùµâñnß,5Щ–Î’/¼¿²­ª”&r/D—p¢Žß¨˜š²v¸½.¸ÌÖ‰³òm¾·©ù’Õ.-D2lŒ“3á¢ãÙøÙ2¦öpÔ!5^´|™“/iË@ge 4Ù’IÍXhQ÷ŽÝw*£èrcÅP¼ ‹)ã…’’.ƾ|Ý&o’šé” ¦3vWrÌzØíœL‰^NÉøäT7î 7«¿ðRc›”.\,¶8’êÛxIš¶±YÄËÒ§KXIË¡ÏÝn€è’`ªD SmeÓL®Çó™Y#ˉ­ç"•`ƒÐ@/01.—±\ÚÅÊ7æŒÁ£Æ‹-’ê}Ëœc¼<“t٦ŋèN×+¼hù2¾ÌšžR²% \Ì€±åœGÚ§Ž®&cŽW””tÑpioRùù×ó®—8G“Q¨Y\ÆŒ•„Y×iNI•cѰÙ‘îDYº°aìo3zLˆaʼnùÑ¢"Ç$^ª,ÛŠÓ¯?-C’¯6]h3°Pż0Él.¾‹¡¯fJÅÑÚ|éŠðDÎâ…é‚Éeb-jjÊÚBܦ Qx¦†òÕøõ¨™ß2jü…ÃA„ù2Î\Ø8úP7¯¼X»èýçÔq>Sx1äËì|ÉŒ•Ërn²Å2JˆuŸà@ã6E—fšÙA¼4µ ×Ñ/Xºô/7²ãL©ø1ÈJ–ãM\·FÒ—±> ãÓP*~Œô û^ze\7Òå!–.&\L¶”©×bã%eÚÆÊ‹—k‚.$]L¸à%ÃXè )|Ê]xÀﻆw’R«{=ýÖå¡éóM„)^X»ÀÚ 3—Œ´ìMK Â:·v‘¶1®aÆÊŸœÖñ(>C®Ïž´vè ¼ðòLÒÔ¿/b‘´LãeÚñ€.¾ØhI”a‹¹ƒÄté«€1ž]ØÚÈYõÛûáš·¬`´Ü=D³¼(Q¶3qšÂbvRÒE¬ÒÌ\à~˜A9àŒÖ|É—£ ÆÎ®6Gă-.´ðvŽñó¬ÇP¼T™~}¹b¿ÚtAébÃRCÚlEˆ9Z‹òP†´|ñóe‚ðBâEÒ¥ÀË/95eŒÉºm,D»]‚1_2ú/Œ=/0ˆÄ¢”Ë*´ßÒÂU©­/¤èR)÷Ó'NÓx1äKY¾”3ˆÙlñù;¨T›\pÈ^{‚ïæÇ“iìT#Fð]Dc˜˜Å«¦ ‹Ê#*ÔÌT)J8ÁN“ǘ.Y²Ï·>À(ý2ˆ±Ò €Ë_ Ë:–.\ ¶˜hil¶vhZxAM*ãÆÊ‹—k.$]4\´ì‚eQªLÒìï0ˆE9¸§¯¤äA©t|\gŒ ³ïeÅj/LLý‚óå^Žh±–ukms&£ùbÓÛ^¡1ÀàoŸ Z4°ÄÓÔ?Š—•»°/Ôx1äKY¾Ì­ZpEËü*šËBÀØÅ’A.¦#¸À/o‘9öW\Œ74õo+½ y rf0RÀ Õ¤‹‹0 0³ð%Édû̺~KãCn´ðÒiÚÆP¼˜~ýI~éW™.(]\¢ÒZ<åk3Û+œ³ðbÊ_¨ð‰ K¿¬Dif¯°ðâ§ ÄMaprYÙ€©‘SkgF[Ó€j½ c‰>"÷¹€‡PáöÐ<Åtiƒ[…5Ì^®)ФñbÊ_fA‹Á–ƒ~Wº  4Þ̶1  Òu“bX71 w]Äàä®=!™bŒ]M?Ö–aü Ì,˜.2¿[y'ËFé—§Bº2>ÐeI ͖ˇ¬-“c¾þfá%mÚÆÊŠ—k.(]4\¨šÆ"\¯;¶&šh2MõºqO¨Ú°ºÏèý/ðq§P½ÜBâEÒeTN†«iICÇÊgÚŲ¹30Æß$t*‘’¿¢/#Ã:c!¤èêÿìyé åfüC¾¸øR-©d6:'t(÷#&8¬4é‚QÆ-{^šV(¶”îC§,9á.v+åÒÞ.ð€ÛôG†ãñ®Qrz® *ʦ+qó%5»)ëHºÜ¢FƒfËéÁWGË¡Åt½HÛŠ—ƒÆ$ÙÍö «LXhå2M ùMƒ˜Yr8A»òpæ€ÁS¾Ø|¡z/(^€.ñ°† íy‘'?ÊO—f¹3Òœ¬,À(ã§ÜÿÒÇ[8Õ bå¢#SÈÿÝ…‰LÄ ZÕ:žò§è®Zx1å‹/v¨oJUl9Þix¯(Jˆ cÜXÑ€R3 †õ0Üíæ|ç˜åêÃ(¸ú´ŽOž 9@|¼Ì3¼W€r®é-O¿˜F#öb2×!]N£tÙ+'Å–‡ž²Ð‚yÅfÃKÒ°•/×]Pº\’\‰û`‚¼í]‘àdØW’q(ØŒÜ0I6â“#\ï…Ä‹¤ º-+hYHoFÎeÚÅgsFùÍ£Y·x ¦ûa¼dLº€ilù¯pÃ>-7M¼˜òÅÇ—²h]/eó‰é9)ËÃ~OÜ.@—!¼Ã¥¢¡©]ú[®7{úròÝÛÀÅ He¬·éÃÀ –¡ fÊ ‚dó%—§y]äXPlyúXyÕâÂK•7†âÅðë'¹­¯]X‹…1¿ÆöE2‹a„U·a›Qt‘d)ÉŠc–ä0å‹ÅT/bâÙy¯wë& %^r†òÑ%£Œ ¾ÙÊŒ‘ŸŸÉ-æ×ô€õß”ý¨‘o ñRW,Þ[Ï' Ж糧"ù¢ðò€ú(’/_4Zè£6^úV-¶6ã=m6\x$ºëþ˜¯·iª„‰VšT·¤˜åÌ”E—¶÷¡Vù3i]yª”“wõÈ.fÔq $5ïrB凙NtqÎ1j…Úúý:$CMfñ2ÈTœÌ8úœ…—”7VN¼,eºÈN!Ð)ísI*ù¤ý,ùˆ­YÄle{8 4Œ‘€áÕ}ÔNÏ%– ˆ˜ Ö{Ô+ ƒÃ,^ž^MÁÄ54J³Ní°9Sôñe:jŒ †Ë©C–¯“{³XëÉn1ÏS¶1ZnŽJ¼hrÚæËAゼcn¶h“º%]è®jë7ÕNü û¿‚ê‚ÉÉãÈž¾ï,G(·óOå#ñÕq-}çcQ!KíÜ%£7­… =`­˜s‡8D_±¥¢%¦óœ›eËãå„aCñ²Ùnâ¹åêÐå‡T»ëý1‚ ôµ!Ð^*Isr'cãÅ’/¥Ë:??ª—ýµêzÕ÷`Ôü6C¼dŽâ£Ë Uò8XÇäK(1c^ð~éÐ7Òaà]mêÑ'mE¾0ÌwÕªñò/t[Uÿ‚å‹/|·Xü¦¾ÞÚïYlñù5øïýpaéÞ¤?êÈŸ`[͘ öÅÎ4«,–Åʇ A38þ$Rýµn}Ò.îÓÆ½Nhÿ ŸÿÁì1—-A¶<õñ¤K¹ð®i+'^–.]Ì43úIs[Kѧj“ÒßBÿ!®Œ™¿”sfÍrÅÄKûkf‡†f[u7ŠLŸâެK»¸lcåƒ|IZºz«Ú™¦í¾”ˆî/6ÝLcO’xáå&©—ÿÉê…ìßQ| FPõÿKã{n¶ɵ éb¼œµÿ j’ó&]„tù[ò¸ãÉ—B‘·ÜÂ%Áë²â4r“1EÈq­Ñ"£ f'Ì:~ã{þÇÁ¥Z¦p¶›LÏ/†m ÄËwµ_šC’¯ ].‰¼pÛÛo¿ýÜÁÒM—îg?âÜ+\r‚é’2ÿ<Ç´±ýñ¦|PéùFÅ<'V]µÛïºóÎ;="¾Ú[²6ïÕâ%c¬C|tNüXÑÊ:`0?¿}Á×.05¾«G¾ýÌ3ÏüNºÌhÒÆ»Bùx9lµUÊ—Ì›:¼*:¶]4èöçn¾ùæ»àCTlñÇdñárPmÓ?c]O´Õ©ÁF³îdké„lè6¤ ïs) ‹ds¯¬/hö­R¸ÌV€Mß±æ‹øàz«Çˆ»Ú½-À–§.‡(êÙasà%mØÆÊˆ—%K@7ýüÝwß½ñV@£&N|š…Ë!ËŒ+)zôœ4Œñ®Ë’µ‹cRû_Æa)}.øá;ï¼óÜ­Ôþ-+ï#ñ‚ jæEXÖ¥]ܶ±²€‰‚¯·:ô~]ÖZû ¨©ë®{ë­·®{\œõ§ þ¿Aâ…—› ^['m•ò%ô˜™` /¨ðÁy²Eç%3¤‹x9µ/ýì;ßùÎK/‰¯^oŠ ABéRõbäbO¾—†}Ë€*«XºìÝÄž"t e>„Y—â¼ñ÷~ùË_~ ð+6<` Ä2¬år¡9ñFk7†â¥Mûõ9$ùjÐE4ÿö·ùø°GŒŽºbq s"QT™÷™)‰îÇø+‹¥*‚ËÆ‹–/Ø;•Q4ì™;ùø{q½ýÃ…ÞC¼D5^lº`ò}JTQ®>n0ë2—ì z¯­ïë¶ò- a?*îêÈ3||[ÜÕV´ Ã]mƼd­ˆ—Ãþ³ÀûB¾éþÞ½ôf>n'=ˆl  E Ÿ \”twc]oÿ)ÙŠ‡UmJ$"]$\ ­ØVÙ°ôïú›}+Å­8Ђõ ”FÝ·äËî‰z_ÙßÒ  E.¿V1^’:n¬ŒxYªt/é¦wùø ð.;÷YÝò+v» ąݕµÿö¸ä÷ÀåÂ;|üC5á¥ŠÄ |Hh³Ü§™ui—r¶±ò ¦Þס÷ï®IZñö5 —Çß’G­Wû/ŽVIñBËÍ8ÀÅ: za’|-†ƒ©Þ÷€š›ÍƒŸÉÚ·,£¥‹x9/}‡Ÿ ½ðŠÔ,wŸÄè±ë÷@ùÉö³ËÉ—Ó¿´| æ²J#äu‡ŠxЖ¹ 3“uÓ/ùø½jÏûË >¶(_ [¯Ë™Ç ¼T¶±qQÐI#hìªÐ凞w×ÛêøM½Wûrþ±få½DP½Ÿ¥’èbI—Œ~/J¾p|ù_F÷{Þ£wªã×¢ï¼/Nª2Ä t¥}”M—hòÏÍblqfSà‚ïñ|.)<é‘gô±Ñ«…ù2©Ä -7÷ûO²z!ó¦ß:ûjJzðm¥÷ºüЀ‹8Ä]Iº<ýøªÎ>[cÃír;íœ>G)“Ï–*¥×eøµÀ`|¯,Z8 e¹X2ÑV7þRw«Ä ³Åvãs”xó˜—Ú6†âå€2vÓzâ*Ðe£^‡âdQë­ÑÕ ¥9¬¹¤Â„"¾uOÖ˜B|x!ùQQäK­^Bã8^z©‡?äÐ.³ÚÆ y#»C õò„\ë¾¢ƒ=þ–yxÐ+–—´xå¦ã$G‚µÚÀ®qÌßÖ$¦Œ2ŒÏ7ZpùÎwj½‡Ámµ<üXÛj0]ÖSìÎ^r·¬/µb-ÔŠnïŒfˬÑÊ=Z¹ ^z¼‡[‚b³›Ç ¼tê¸1/ jZI’¯üwO—¼ž·­ã9…‚Œ kSù®˜.–tQn^@¾ ÇFîͺ¼|§W{§uÜ…×ë-iñBåañ£MíB†±L Fxð€Ö”©bîu\ð=¾Ó\¥Eð¤g¬ãQ” ýÙUœ¼‰¢<g½lóÛ·R<àÍÖq—lPÜ×2°…‹.Jº<¼ž-DK‡¬œ•œë²“Â’!¢¢­°ô3Xþ\­ðò\d± C€™Ò%Ðc¼˜7þÜV± ^Ò:nÌ)^–&]Äz×:¾f·l*™4…Jº$UÊv» aLúôÕ@RÞt‚/¢ýß±Ž=O,®+Q¼Ô`"èúÄK£K»Ìac?p4¥z} C¿'k½ U8LÃÌâÆ[×a¯¨2Ä vhÿI¾¶J»0(^R™’kÒAÂÈ cxï\¾ó3!^†Zªî“®—8ÚŨ Çg\ßåéÛK/´`ôÄ ¥0yÉDZS#;Ëþr`)G˜{½ž_ZÇÏ…xA¶” >žÕ<¦ñ®¶¡x‰H¿>׬þÝÓe­wÁž+Þîñ6é-“c*—¦‹Ý-£V—/¡N èUûšÎxÛíiîÎZ¸^¡Ê/QuY?]È0–uï%±ßX2‘Õ;.øCø< f<é»ëßy(ÂdÑÕ¡üUqœ¤á‹/ζ·ÕÀñ¸wôüÐÝ_ýé‹/¾¸á«t8OjàãÜWÕYÁ\ClI²”Ëé;µÚŠ£a­÷3]^‚ ž{ž÷é74 úÜóx¬ í²¾>7t~èüÙç©(hÓHCÈs0Fø8þXë|æK­÷{>ºÜä­é «B–N8ÍbÓx9¡âƤx™T‹šÔU ‹çù¦Š·ïòªµã¥ðEžç›åîÜŽ×ëÊ>u]”«N™ët¸.ØÓî;<Ï×sžyÄë l¼rž5ø(ßX¼ù‚W‹ÏÿTIõ×CÇ:nدn î¶´8[¡eQ‡«Ç¬õÛ%çe à\/7æ/K“.žçƒË»7zÕÅ/ñð<ßÜûÎsø*#Å!.R‰C¥‹øÅÌç½^°C÷Üá?<ÏÇ·® ž5¯“îp=àBZÔ¨ëâyß Ð%8®ù Ú” •üÕ‹}pùåÞÚ¢ziæ1—Ne“âeZ%–]žãFë2+ ‰tašEŠ£¦#H—ˆ•†æsÐå®ùÐåQïð<è"ÎjŸ“.â—q•T?îº#aT¦Ùœ7­ðEÑå9“. ±Šð’V¶1‡x¹Vèòµß5]>ÄWÏR‘J®ñ’ÿÒèr—wx^t9¼¨“îp=àZT{]\tù™c\(ñý¨]Ç5¿0ºüFÞ'QFÀ”7)¼€ë…lcR¼äTÐØ’ Ë¯^'ëúòéòˆWùÆÂñbÒ¥k¶jK ¡Ë#Þá†yh—ÃóÒ.ŽòÆí^}l1ÒÅ©]ê±z^lë¼,ž.ò£¾º\ð¶‡g à%)mcñr­Ðå&¯þwKqAHTbˆ—ˆ+_ ]¶ÿ®é² 5¤‹S»ž¿v1¤‹sð×qÚåš¿’³ ˜òæ1…—*7ÆâýúhNHÿîé²Ñ{Î7Wœñþª\ƒŽ¯xs%)è´ë*Íã`>ž¬ô'Âá|8BüVü7<†çñÆŒšæ¶ <ŽxՇ·¾O[Z†W¥Å8_ •3'&&êz¼ª±S§NíÞòÂú†††SƒâpŸUxsÛqì£|ó…Þ]A¿KÝ`Úg7›ÍTs~d·g%æEÆ/>‰8¯·nFƒès9žÆC[¶¼Ð‹‹/·Ðq±<&Ž·\_z­ð¯¶Ì÷ø®Ù _mîéqô˜5²dòB­b¼¤dÜXP¼,Mºlô¾æ£Ë­ªšÃr-ÅIŒã^™¤¥g–œØ˜ÐÿíK«L°}´ÓKöì¨ük¹Ÿp@tèç|“¯±Ï»î£ÏH¼$ÒÓvˆè’ ŽJmè:Ê£?ÀÈÑ¡'ôo:Õ22Òãr©ˆŸÄ&F^Üðâ†ñ¥ó$ü¨ÓË÷.{¾xµÿõ8p*ébv[ÑÑÒåëð“Lô»l?&Æu»Ü®?Ô~êÔÉë·\¿žXòÙ–ëñgÅo° Ô§‡&Äù§†ƒ13ü_jì`åœGk› Hþš.·zk8ëÁ¦¬yLáåÛÆ®—â%+#0ú~÷t¹ä±§ŠßÔzªÈ­bΈËp)õr»]‚a)‹)·îŸñŽØ³Ü¯áz=¬÷¼deŒÌE¢ D„PĘ Q ͳωK¡V×ï [%| ùz;–]žwæûø£ãJR9ÏÊs: ™8Y({,ÞVëmjÄ úQk=âˆSc´ŸÍu½­P¨;Li6…ΙÂ$ý¸‰²NæH–I“a˜B}pJ¸ÞÙìó<ðN£!uWÁs\gnóãE¼W²ÅËÒ¤Ë%ïV.¿­õþ; Ö!Òšc)ò®r Ã1b ÷éÛPr¯˜Î “´çÞÄ«¼moèn/!Üñ°ŒµKvÞqcI’Cð²xßýZ\' ª¥ ûÀ!ÆFæ1„:/¿ÉuÒ¦ÉùzÇnÍ;&Õ@´´MŸ÷9Š úèâyÿNyA ÀNàm¸Cÿ¼ž|±Bny9x, Mí‡]ƒq>áÈ תÊdÄÚpù»Zü(̦œyLᥓmc!/“2h,ù»§Ë·<ïCk®ØîmT»NÈñÒ¬v¶é’ æ+öíómÝßäyï‹]ê9ÁÓa¥Üó’‘þLèB´•Rgè›5fŸÂ¬•ñ?9©•Q?Ð%S6_qÖXt@ŸßZëUëyî®Zïp eÅÛ˜/9î÷˜g,+)°ÎÒJ³ÛÆŠyžVï \0fdc-PtÍ/j;ómqR“xÜWÉËâ%‰'ï÷ŸuÄN…×.ðˆωæm4 t`ÜpéëVé¨qOÏÖÀ]Å çH—Ö¶qÚ:ÙÊ%?Kš. §HºÃÜ¥­°v¾d:á«oþ W©é,ص6—ÛÆüâe‰ÒÆËÏ¡9ÐÚ•V6`Jk·~–L¸3닞0Ù.Æzb@ží¯g_ÑþÕ¢ÇìÓX¡—":ÝUS÷G0ºÄ¤à `H¼ß<ë´U‡Í—u½ wm‡êsõd,2ãçKa&œ LâȺ|w6„ÚwÐ=¸uÑ:ÐŽŸLQÑÉCœrÿ„¦ ¦¶)À}Lð¥¦Z·ù[áÒ{ F ßU˜ß ê1øQ+VcT]8`$^Ò7ög¶xY²õ]p]¸ñk7Ý ýë=¶y¥ävýI-]†¢Gó¹]&uµccÀà°U¬;¤âF¸¯öl¿éà pÁj! ^šÐ4VØ‹â%$/œ#¹ ^LÛ˜%\TAÙþ=Ûd/”®×ÒÔ S 75QÝŸ™â=Pjññ뮃Ê-h¼!ÞÁ&1nÚáÅ6ˆŸ½ažTÿ2Î0£’/3trè„Ôv”§7áBn|Úë29Á¶Â2´Ph­ö¥—~å]¼Ã;'VCíÉ¡slüôjÊ9¶J'¨¯zªRž‚hdŽÜðÔ³|Wöàw(}'YZ2¾7xÓ?¿ñV{0úS^À8ÍcŒ—P/ÚÆþü»$^&y%¾êªÔ¦|ï Y(­ö+gMUý»+£üùéRÎí¢WjªZåfÝÎï¯Q×Û‰ÖM—N/ìx‘ø³°,>0íÓJelcŠ-½•4÷ÒØso×),­Tåþ »ŽEÃ#GÕ]¥­+ë¡|+ëˆàøÁ&úÞ7JÇ…É*©?ªç^Ú2)ù¢æ_5‰wQ½5ªIÕËÿ~7;[p‘x y¢ÿ6cJUÚ9•!ºÀG¡+i">Q'¯“¹Œ¶q}WX8Zø®ÐÒ6õŸŸ°>ÊÜAùy#ñ’$ÛØ*[¼,ÝÚ”ÆzøŽëÙæ…3‚aKq­J9¡£jÁS32HËš0ño³“JëôÊ—„ešòuh+ô‚7¡)-/²¾K¼hÛ˜%\T±ò=¡}^H›x›b *îJ|ûj÷c3;îxØÓÍÇŽHWŒ„ ˆ— üYÓclÈ,£jl \*ÚcÆY*_˜òEú`T&|.3ÜVTã|½9»‘ &Âi„å„iÝFt©zr9¥MnÑ›_†&Â(a†æ1‚~ªìMö±¹÷ž(÷Q>À”0.ó㥊mc/’x™¦ ±‡® ]ÄðøáўÇŸøÿ@1ªºÜqý}ªÒG—òn—’ÏGY©s„N˜*¼¿iMuõ¥'þmËH˹•^N’xaÇ‹ªï‚ƞĴO+¹lcŠ-3á(Ãp{uuýš­rÖÞò‰ŽÑ–áû÷‹»ºuÍ= ‰±g®š¢2ЩU¼“Üïß{ôpÏá'Ìx^õQèa©‚ë5³½ËÁ1ÿ“x˜’#Óªd«Õ‹[ÿ«që÷ˆ¶n‚T/1ø41äªøª£ý Ò. µV³¥ÐŒpé?ÖÒÒp|Ô?pahÁ…3ßÁïꉵk/Q+øwP.0/)²ýÊ/K—.Јô¯þ{q‹?¥Î‹ªdZÆPº„ŠÊ"JòÝ.2XÌ„ jÿ¨²Š…Ì‚wbúyù›kª\zb“x³'q¶i¬°&ü¤ãEÕwqãEÚÆ,á¢ØRȧ÷é^øhÏáú£›TŽˆ‹«ŸZò¥±n"Êä?í_}õ .ˆÞð;<²aË—x¡Ðx/L6kÌp^Å—8Â¥A\äžoª¡’[E—~‰Ž¥ªÃT×…ÚŠá‚/ça1b×@á°óÆ>ÉöÏdªäŠ+b|`mÊݸK&Í–SñÂå¬xs?ƒÿÌ.„,…™ˆ¿:i®d Ò¬€)'`\æ1ÆË Šûs/9 1‰_%º”J¶áÅ õ}·¡JSΔ.i?]Ê»]Èf,=o¦pS“.[ õPî³ðRGâ…/’.Ê1–ðk¥€mLÛÄ>MÁEL—bIÂAúrÞu×i¾`¢€±„—€uÍiì›P r"•.uh¸pR{ÒÔ%åL‹±A:š.…$^_& 3]¾B• àÖ[¹Ü½‚ ÌÖb°` Ö¤ÛÈ‹ñØZêàBbUYåXåcãV˜‚ÿ¾‰pyþ~K¥ø¨= B 50ß•‚K0ÐÈÞA¹XÀ0^„*…¸±K¼,eº”J_ww=nÒ¹m^¨JúŠüÈÒ¥TTÕÎÓòû(Æ¢~SOÊ‚»)\ÄHÊ€LX`\Ü‹x¹B¦±e1dÇ‹®MéÆ ÙÆLá¢lb7ˆnù¦î…U«N ·ÄFã /ûJ¥}†ÿ%¾C<úyq77̇,ðϰðVc¾XApÅ¿Šå•]b—‘F w´ª“a´‹‹/:4oàÐ(ìu¡¶Òp‰’íÃÍedPÞ}J•üôxæ‹`8j‚Äb•üdg!¥>æzXb.+ ¯ZY ÍmŽ;{·± ˜¾2Æac¼tRÜØ(^D›¼ªtyV jjíû´*™¢ _Rº”üt)ïváXJÂËÁ^ .%]¶Œº+W[x‰¡xaÇ‹¤Ë ¨ki%ŸmL³¥¬+ã.0]ʤ2ÝYTû#»¿.ÞŒL3„ÉìØîfÊ>kê#‚›ûB!À ¸-š4¡³Y“&¼dej»¾£˜ê °îTxÑ|¹\³Î¬„œÊ†¨®K_4—»@.‚un5Dž¶Àƒ4—0˜’ãÆÄàëbº|btíÎ)N+ÓÅ?W•*1%ÿ¼ b ޱĽØ—²yÅÆKšlc;Lñr ÐÇöOqÔ *É)qMÒ%£-eHŸ´,ð# ˜,\ºÖ ‹IŒKÇ}bjùÓD¡Päx1jSºñ’²+¦hKhÚè…`/ÿJŒjTíÆ¨‹O¡‚£°L^†•6Ò{жƒñÒ$Ô /æ±®œÛ¤ª|p¨Ø`ãh õB{Âýx™)¾´Ip‚Íà^—x ·•—ª‡0€zna_¯ˆÝ®ú0,â-#=Ù>¤$NÃSyøÝú-С£y’|-ä‹™œg%˜ò€IºLЇCƒ§šÍ©IÊ0ï[½ÂÀ ‹r¼HºÀß>æªëbÚÆL¶ˆ..áÂÓ%Òüâ@½?Á=ïãqµS-) ^ ÅüîaU}FLšD5iòº>ñf\ÔŒUwœðÒ€.\ÞŠðB—dÿ h“¯š3܆ÂKS\´Ç•;îàœ½b>˜!ºT)6O>¼_6t¥^ ¾ôZà öºì¢çy윆‹ø1ˆm¥sàfY-óS®¤éNpƒé"p™²‰5IÈzjE‰¤‹Ÿ.åÉÂh¡q•˜G˹ÓÝí0Aóá¥’âÆ¨Ù'±»\mº(ñ‚ªd®·³JºøéRÖí¢ö ¼„iækkõMM$_&@¼”,õBâ…/LªJŒq6mc6[Ä÷ˆ×Õt ³,¿€trá“ý…a€Âœ½[Ö… ¡x)J¼Lä),¦åSþûg%]ÈqBï<ÕÊÚ>êŠn3Š u ëhFPúe§,ç˜Ô —â÷uˆ„$ ö•½ƒŒv*¡_H岕*ego$ª3\J$]f¥‹ßOÓQ·.©p™3¯ØÂÃxI¡mÌ/×]phï€^0àûTYI’.i£Ê$šÏPàÈ $ëÝ!•b¨¶HÉõÉ—0Š…—‚/äxYfÖ¦táe:ª„‹Í–Réò¯ðO‘./°ŸñòEYð!5²ô6O9Ñâ{ƒ DŒ˜hÔ!`æ1ÂË´±x™î[ t‘âUÉÖxÉ)éâ§KY·‹Î/&=.›¦&’/(^JR½L)ñBަ çsm bÛ˜Ÿ-¼°ÔÓåòQü(®Nãað|L—:¡ÞˆÅ_BBl‚åµ1E}tyG˜Ê8BU“f„_-¹ÎkäG †£}†#–^Öñ†:Å—)1‰›óodRP®T.I—Tîc¢ÀxÉËQAmrG¾bËøhW„.,]ÊÓ%€™^,ÃÂe øç™m¡€a¼$À6fŠ—k‚.(^^-fQ•äduc–.Qƒ.¨b°å4㈉PËÞ±ŒÜ;©\7ˆöA//¯ÎHñBŽ—eVmÊ ^’jw§Ÿ-$ðEOæ¹÷¡UôQ—-'Ô€p}ø©ÊÒêçŸ鲡ân4«ï[‰\Ù°{ÙO/ — Z4]b¾¨ÝÅeèøä²êÅäËXFÍ¿*9òX‡†Ëü0—ãf‚ýó±• 4Š.÷­—¿)€«s„]H¼ *Ù '>Ž ›.åÜ.Ò.ÆÂ¥-“-”/0™žÚb°>4…âe¤&î4Ñ… c2õ™í¬Ø"¦Ëq œ.Ñf"ÃÅ8-Îj¤t‰© ¯Áp*}‰©^öòI£Š. a²IÕEp}ó`h ?ꆸ䋖/ù. /‰Ë_ÒŸXpiyóë!.¢i 0¼)·h˜¸ø:‡ÅŠàfúkÍ.JºèR-Vz±TÆ—EÔ œ?`/`ÓâåÚ  ì?GU’ãü)’.ÝEƒ.cƒ¥4˜iE1 —½¾´tcÖ{\`Ÿf¼ µ‘x9bO»˜xQ{\.ûÙRõäò& D ZÃdÌ —•[ȵÿ$üÅõÀ™¦ó2~l÷2ÌAz½ÂË‹·gÆbJ¼(ºøàҙ̇ÂEa§}ÌV/_f¢¹l·”.—¦±i)\: "yÇ ˆß?©öº¨}.+)Ä®tË C·ˆctR‚‹à9J̦éd)ÍŠ–²op‘ˆqF Û †±%kHØtq»]Ø.¦„‹„K¾èÆKiçß u`Êëõäy‰º")¤‹4Œ‘V2]ûÖ¾|5]\nÈŽŠ( D=Éë&pß ÅSCôk¾|†â¶—(¼pçLö¬I¡aZ5\àÎOâ§k¾j°ã4>úq[—T]3eνuY`¾,s)³Àb&¦~µÉY§=a(œÂTv°R‰I¼Èê3ÏJí’Ðp cÖ혲Êâ¤ybÐWÿ%ÓìÃKb ÕñcŠ|ÂÚSè|’w—u‘Wf7òÐ&œ½•Xçe¼0ÕÚlx]B¹¥§B†tAºtÎ…=¥2.¸,Ò*¶@À^ÎkñrÐ%G‰P(¥~†òŠžŸ@Öȱ„!cæ,’1¬bbJÒË^÷Ôdº^hê»ÛI¼ˆõY<¨]ÔÒÁðåga­RšÌh1"ËžJJ*c\ž7°9òŽŒPÏÓœl‡äÊ‹-8¿í¨*}ƒÅ ´Õñ8lÚ9.«˜'ÛAAm´ òů^$_pÐGØç"…KXn´„Ý”\’²B%wÆË>{»´‰=»þt˜¥K¥‚‹Xù6¢t!kà{n´˜ÂeAp™7b€cšÇ(`OíyYt!ñÒ‰†1.y”vÐÅévÍž? …‹žšfÁ ‹ˆ¥¡}/R¼@—†1­•0€'ÖgÔîÓ}žø’L½ç-ûxÈÌ`MsÚ=È¢«j‹ù»#.ñ"ÅË ¢‹ø¨L675*áR¤deʬÕvÀ0µqýÊ>dÀ_ǘÕÃz÷ *vPÍ¿ƒD—°ÜÔÊ /1ªó²9Tj3¤K©WëÒéR˜-ÊéBm€Ëç°Š-0„— %^®º¤Š$^ºyõEûõù;I—´áÏWË7]ƒR/{ËMM–ëEŠ—"oC¹2(ÅKÜ¡]’~¶”ªžìW$é?iÃeùöhJºü@^–gÍàÚßÀÒe÷2¾+âˆKãx¼‚ °xù*尿6<®àÂöëFX8ä ©—¨½ù=\‡ÙûhuÚÄÂ¥wR„yƨ$¥„ËíYÛ_îÞ‚9’›Xº¬ã\͸\„fg©hÆŒ•C‹%\—y"Æ!` óET(ñ²$è‚âå¡)®ÌmƳXtqº]RB¥„‹95•Ç Šši9!?‹ml3´Ò@DljÙ) ‡>å¼”ÎÒô.¤KJ¿zÀmRº¤Ò|‹lÔ"ñòi©ô ‰—4ù]8¡l\Ã¥8Šc3˜Ÿ/¹^ Ò·:F¸Ð8Êp>¤BÅÔü C§q†Ú•ÄË!˜^$^Æuõ0)].k¸:µtéËPt)‹e¾Me\pù¼V±Fâ…ÅË5BÑ8(^RÜ—°, ÌX$SR1|úÓö\ËÞ²S“åzQ⥮Eâ…Å h—N«]§'}l©zÒ²€™Êå¢Ùò«WÙÂ…—g¥*)]v/ 黾°x©ƒ"|Œ/«W ]0b¥´úY.Ì0f샀ñóÅ¥^p¯K¯Mmá+¼ ¢ J—öÿŸ½w®²Êó># t„D@.!Å9b‰79$*nV‚ZH%$ h¤T$ÑRbP"^ ãôÛm;®©š~'Õ½^{p´ø£™i†YÔš^SS5¡Z«Ëz×èê5Õ™µXõǬÏ™½û¾Ÿ}NN’çÜ’ß÷íׂdó\öíó|÷å·9\bk£:^^˜ tigÖebX¥¡/M‡[oÔ³¹I—øh1ŒË°á’bü€!F q¼pó’tãSÙÀÛÁ¸ÃE×´Ë^UŒ9ftMññBÍËÚõº{fR¶á ÷Ésu¯¤­³¢ù*¸ÀhX‹,ÕÂS·èoôX¢ðåE îÔúL‹šË†'¬zÙ1÷BÝJ÷†Rϸp´|Ìöê72뻇´ð —°l èáÉÖµI¸ÀñôÕËoU³¹F—h1Ëá’bü€éë’Ãc/̼d]úÙ‚Æã¢t9èâšvé¨6Œ‹Ý5ÅÅKlØg‘Ǹ{‰Àî’nNÍ+iëĪíØp .[7‹Ñ03~ŒÓŠ«×úåõL5ó21 ~vöh%}J›-m‡l7ÛóBéҳ˩®‰ÚŽ˜-eZ¨¾rlž´|Èë¼üfì,_iœ*6m@Ñå$mþ­3c,žÃË®}`^ÖHëq:i6ŸÇæ°f Sº\îJ´Õ„?U³K0/̼ä]` ?5/y¬}È…a0Ž%èRo ÑPF}ã’°kÒ§^À¼ä[BáÀ6Cµƒy‰²ïÍ…šqQç …-´¸\£a›ù-f߬”«õϳ3å¬KöT]§ªEàÊù5yyKè©)K/ß§{^ÂôŸ°s¤t¸Ô·¬×‚#æZƒÎŸ{ër­MÁ…9™tëÂO›\“kóò^þ3˜—?¯’§ÌD¼Í'›¦‰Ç!Þ–-¦q .ƒ"Ƙ¥›Å6h6÷²ÌKvÐei'3/"øJŸƒ.®i—zøøGìãâe&Ô\yŒ¹˜$|`cQsÑCË­À+ilñ/ûV!÷µõküc¼\D¦}yÝP_{/Ü|xϳ&\–òC`´Õù:`T¨ÿi"æ}ª*:WôÐô÷•b¾žï¯T¶ì‡š‹Š6> &U¨yyŽO²\™ g8Ò󟑼¢taO§RÎeÖE­¹$?7.âЫK 0 /ðü—?;|˜e{VÓ…òw)̼œ„±z-’¾¢‹Us;DD}ø Ò5éS/û؆ýM´´?†¦~j^ÙØÜÜüÐ? ³¹Ic ©"Ѩ.Û Œ5:›¤q1§pæ œi§§¥ŠY—:õTTýbNŸ­ô>Ç‚_&ÅùH3)ÉxÖ„ õÊÌàȺƒ(×öï+÷Âý¹º¹Ð Ò`›7꧇Í8$æ[äi•ÿCÉ«fºÕ²”Á…6Ùµ±m"âÍ€ Kå¬DõÀ0.ÂeÄĉEv«g‰\µ•ážÍ0]QÀ¼Ü/üR]Ó.Ç ãâ /̼°ƒJ¸{)mÛ(Î-^A€E9·4[üpágh,½å  ýòÚÀ§Jfò}/ò ÷²cTfróB[âs|×¾zª9kp¡•É8×ŘÁ—ð ±ïå¡Zù‚gø>—òNŸŸKKÄZXD,±£1ü€‚•ýQùTµ+ØóN›Æ†6¯D´§ÚÜ571]¤úÜU‚Š%†—ùó«lÏnº°ÖuhÖ¥'¦Ñ¥Ã¬&õ|%ï™–¶Ä’éšô©—*¾q–npìg~¼4o¼l@ߣö…L±Å¥ˆXðV/Œ‹µül'Û³纜•Ʀ£OƒË{ܼÐn}&ŸX¤•¤:É7×w®‹î`4¾0¼¨¶Q»"¢†ÅÎ4ÐÖ¦^t£LõQ^žFêdNĸ…‘yUû 0+`ΰE•ïu¡b‰éb—Àá’1-nÀ42¶Œ¼CÒÁ‚y9®ZA‡Ÿ.¾i}K¸ÄÇ 3/ì Jæ^>!u"TüàƒÒºQDOs5ÍÁ–êÍ{7ûàM[¬ ¸ Ó¥pÓcle0D[]§µ*Ú:ne›Iè(ì ¹é~†|ª×^{>Us'‡ ©L;ú“&as×ç]ò0˜å_è‹,3.%6Qníÿc¸Ô¿ë‰Š¢°ø˜oØ¿B¾Ï–2“õˆã©èmï転=UaâüÒ¸ˆ®¬Lɨؠ€¼Œ§/Xrîܹbò‚?Éjº°væå€n]Ztºìµj/g¿ñÙ;xפO½pó*Ë/èyV7IÄ– ÛW5Øp‰—>ãò’á]êf²C·Qër; Sëª×Ë{÷P ¼÷‚Ø¿Oÿv‰VÑåï y¡sw‚î.ñ¼c–,Ÿ‹¨È—ÍËj»5ºÐE> ¾…¯§ªSî¥P,ÆÚ‹A´1¹)r"{ªïýëAòT .§ºúøND›0ï„‘€Qþ…´ ëR .t‘¿èº¯tí·ïGà2p†›—,âÎÑÊG|©Ên±ô=U"ºHãB‡}%˜ºQ±ACðò!yÁW?ýaºç]ÍfºhMú]~®‹ÖÅ0ºt¹¾17™Ÿ½ÉtMÚÔ‹0/tCåÇ´Ø1ó¬$[Ø< |cµ›ó›oDÅR1=dÄA†5È48ò{³ùqb[o™pa!=(öW¾°hþ%Ê”ï€:r —útÙ[0v«g/éB>7W‚ŠïJå_ÂЀ¦¨lbp)/Ó œÜwêkÒ­¾ÿc¦§á†b.¿4 kJó>"]ïû?ýŒ=U)Ë&M²œmޏVv£^=] ‡^‚Á#Æé^\B“/‚îv †.ôß • Öe“Ê!.Ö´‹ˆ%)ŒK<¸ÄÅ 7/Çy-z4äÕÞ}§Ð¹Ä‹ß·0ò‰û-Fqkû6$]`Á7ÚÒ¢v±kîåój—6VÅ}EÖãü»{…$OE—²µ÷0³Þš0—Û¢`$_¾ Y—jjP3•¢8a'*){^ΰM™}…±ÙG}O¾/¸AìÀQ' ŧ‹2.|ÒÅ,ÁÔŽŠ%ÌìÿÙóŠ¿úTèÕPVâ…ÓE¸ý ,Šlû…]\pYÊ—‘Ê#“êš´©n^ª`hìÖ­HÈʳ’n7YÊžRx•­eæçÃsír©˜ Y&ØÒ:®E‹‰˜cà<ê{\b<ÚØì×yþ!©ªß‘:B:òJ±u€]_Þ+¾N »zn¹Œð%¾lª¤tÒÐRNZÔÿBºÕK½Ï ,Û;Å:É%K \~$EüKӺΆ¾ì:ƒç«êÅN|ºXÆ% pI1¤}qQhò0P té€U½"Tr}LM¼ht1§]Ä9.›…K<¼póB‡Æ¶Ì½2PâÕþÕJ‹=o…J¤y–SòRò<—¥…¾q¶oƒÓ…//c$T[A”{™M!¶²ŸòPÉU¼Â–èÝø½÷>éyß“OÓé¨v¬~mf††óũӴ!gÆG"±ç¥MÝX¿ðª#»YÆžªbà±A颌 Ÿt1K0õ£bñC_Põ#Ÿ~:ÙóÎZº´èãïªHb-Š..¸ˆ}û=±!uMÚÔ‹0/thlaÏ­½ï…<[áò,Éï3q¸þ}6[*&¼‹dKô~yv¬ãTuŒ”5TŸêˆ}ú)\˜y!Ùr€m“oòBßÑô3½•ÁN-£Û4÷pÃüK$ñ vo`n§D‡Ë|›ç}$ð¥+0)@6”èp!ö…^ê ;É­KåMh;ÑÅ6.iƒKˆ)ÑárñâÃk@Ð…V~Ä{ kÛ:]ôia\Êz’€K<¼póB‡Æ ÿ³ç½z§®×¼â}" “—bpÙW­*ñ1Îç=.b£Œu踤{aóä|^›™—B¶rs™ç-¾Wy*Q€ÏTúwEk'>±Q2Ê—D—Ú,ö»¹‘l]UHójâÛ0ð€3{†Ç=Œ.bKœt1J0M£bqC^ðëOu=èÍÉZºÈ ø`^&ªq/I×ër¸üó!vMÚÔ 7/thì¥ØõçYqÄ1&ò³êÿÌ-ýûŒ/û˜ý€yÅ–úyօͶ”ñ–,på{aöTBi|Ru~lè}¯–îc¡¬[ÇÖ¡5ÜøGòT:]~ô>½T'øºû·±é¥Ù;D>Ç¡‹m\Ò —„ˆ!/x×E]S†Õ€¡K7êe¡’ëùÊ+‹.ú´‹0.7dÛH—8xáæ…­ŒýÄ{Í€Ëw{Þ2¾·JE»T ƒKl‡ö•(?Æ—*º¶Ô¯d ªvéU…¹—Õ.¼‘yiYºVµËÍÞA£¿÷wž÷Ÿ0ßå¯uVýb„À4tǽÔa¶¼ðš+Ñ÷VÊýA›Á„9RA^maOU±ÆÒE˜¼ÕbÒÅ(Á4ŽŠ¹SäM7ú‘O¿ò¼ýÙJ—>c2µÆ õâ[‰|K•Ð4„®IM½póRuãoy¶Â"‹6vÛÅ¿­:´ï3¾T¬ÿoQ”./Éù–ø<£Öe¾›÷›Ú¿ïÐgÿŒÍ¼¬§ƒP‘™¤Bǯõ={;ò}ÖE´nt³§¯^8˜òæx/Ø­Æ7¦‘ªó´I—{Þ'Ä´”ƒy)£véÌ­"ïý™yõMÇj¾Z®®C”¡“.>ã’¸ÄC i@\.~1¬]–²q££,TrKLÛò®è¢¦]¤qQmc¸ÄÁ 3/04[î-6érg±÷[È;°¥Ã¾”ZмYn†äãÕÒwÉ(–4æ bQeú sŒaÙË‚y)‡# w’§zÒìÇï%OÅ&Ì«üÖÅQ¿X%¤€©u^JÉ£€)v$zBÏ+s]jã€zÁË4ÖX"ºÈÍùj/©Q‚ió¦Ö{ÕìH>-áÙ…tQ { •,”€.·ÌUËCëšÔÔ 7/ôó¨`¹#Ï6н ;|SƒrµØ^ +n\ÜízœlÛÆÎeŸgÔº´‰UÕlj¿œËeùTp4„Ê_nY—ï|§–Ôz˜Æ‡ö¹ÝÙMh30õ›„ƒ©u¾`÷sZ¶Ö»Í¢ËÓ¬mPóRz vkO«µ¬Ë~TËòê@,FÃßÌ‚¡±j~J‚‹.>ã’A¸8SëÝaÒåâôá4  èÒ!Æ T²ØúµÔ¢‹œvQÆE¶AáâÆ 7/thìsϻۢ˃tÕK™°/îð/ eœÆÆ¢Ö•Þz:õF7¹ðjèy¿³úñ×Äjƒˆy ê r^ªÒ’+QÓ:[qŸªƒy3Ú¬O@5;%ãàè%˜‰Q10ž÷•Õ‘œËÂy}NUs`›t [)ª¯H†³†Ýú|]“šzáæ†Æ\yV=SvÖÆ3æ©BÔ]³MûíÚÏ"•jLŒ«‚’DKRÞÊà2?¢~vr>£Í¯Ûó,¸|ç h@a9ÙäÁ¦<[öÀkZñhgøÓ"ÏG—÷éºKº•’Z—m³)4 Åü€cŒÂg\21ž÷…E—)Ãi@AÐ¥‹ ŒÝÏB%CŽÉ‰E>í"ö¸<£µ$àâÆ û ‡¡1ϳàrçb¡åöňa—\ º°UÓ¬½õ"`Ôøw¥`^èÐXƒçYÝø½‹ùGØŽœTãð_ªÖOG"]ÜOµEª+ÚИ.ZT1ÃS/ÁLŠiò<«ùôë,œxatѶIvLæeï^1èÅ«}Ÿ¯vn֯ņØ5©©f^`hÌ•gÅñ*£.Ýl¶!¢Î :ÓîcËÀ¡°N¿R9ۺשÿ¬Ì ¬ÏòÓågâ©ÎèÁ‘“j@þ¬M‚.·yµ€”.\~ô36‡“Öe|¤Õ‰i}]üÆ%Kà"ãy\.þ|8 (ºô‰Uml·é2è§]Ä—–jÕ6’‚‹/̼ÀÐX<º8ìK’p1èÂTuÚ{ëÙ>X8c›:4vÆß?ÉÇP­Ë€ëRMƒÓåI§w‰óTÇù\Ð{55/ Ó YÛkÆB|D´•Z¶¶´ŽOë뽆˸d\HšlÑeX (ºtñ1Ú¤y/’.Kõs\´¶1¸¸ðBÍËÀ r‰^­=0æµuÊãée´L¾ÏEí{9¥E;ÅÔþ–ú- ¬³WyòØbrßËR¾Â~€š—7Þè…ì ïê\—žS;ÜQᩦé_\—bËõ `D$À‡‰ÚfÖÅZ6‘¡m¾!^ª/Ô¹.ÆÐ˜Fó1颕`6ŒŠQ=áÕÚ#ìÞõ,¥K½«ç{^~cK±zäÚäûåý‡×5É©f^HMnväÙ—Ö‚*ønàÕ]î{{\Ä'…ŠùÂâŒÁÞ˜·¬ÿ€oÓ7árˆ9[¹n}ì]j¢ÑÊÞÃæfJØNù ý\ò×îvø6 =äzAud²L²ƼM…Í•°l¬šµ=0ÆÛb4Ö… ñNP£‹Ë¸d!\h²§]†Ó€ KƒmúK¸y/‚.Æ”ªm .>¼°‹ýô,­/C–y©…U’/mÄRdv©.¹qà”Å–˜gŒ~ËWYÖeöQþ…í{YÈ.Eß3BÍ ­ÿ!Ë&ÔzWi=Õ&p(aìúÕ²Ô$ Õ—þK•¨à|ÕÂ/‰àd(±À­?^*á_Z}hLÑÅ4ybÒE•`vŒŠQ]Yæ¥8CÁ0º¨±-ÚL¼ˆp•õÆ”-œ=Ìû·kS/̼ì®lmóçY‰ë‚–øZaÕ^ŽË=.l»—bK!ìÕ__-›ßñ –u¹O„axY»ÈBaÖ±A¨ƒÖ‚ä«ôS©ÌYï kì~á~Á0$Õû–u¡Ó.¥pJ ˜— ÑiÖï[Ö…¶Eþ©s#}£SlZ_¶*§qÉF¸Ð4Ù².Ãi@Ðe)óÞ²››1ñ"èÒ¥Ÿã²7Nð¡á…gäôÎyÆŽ—/ô(œø"øÂìK§ŠŠ¬ÂkT÷±¦&ÙÂ|—¢ ŒYÖ¥PÂE‹‰! Z©8ç¥ÈÜÐ ÑÓò­µgÕFýÊêškVr£ïRËô½Ô 0ù±\¾Ð¼Ú¾×•Š~ıœ¤pjF±4‹œtQ%˜%£büÛËØ—=e{6ÒEyuÔkÑÆØÄ ­êúî@±ÉRyÿáwMbêÌ -úf_ž=0à‹¥t«A¯G¾+ÙË.¾§RîË/ÿcŒíw¹¦Eºx×´../ZuÎç¼67ë¿ÏKrb§q®‹y6VG—+º­õÎ4CRÝfìvñ>„™|Ê—6ò@oV±fý3cÖÅ£-U o°³ ^Ž~Š>ÏJIÐÅi\².Ѐ~nìvV9]:ø‡ ‹0æ…O¼pºáUÛ2\$^äIY´¶oûœ®»ê)÷r7é0Wìä5}ÖYØ®2¶C+ÚÀÇ£ºT8äÍZT@èë» ºÌÓÖSùœ y»U;9^À ]Y¿ê¨8çe"}*¹%¾Øó^Uo– ¹ÏÍ}ªüUkôO.µž‡7Y“o_êo÷Ùá `J¬D±SÕ_¶îÝN—ØÁ©7ö¥Æ—òìçQEÕЧ‹=;Å']T f˨yAù¡úU Ïöl¤‹:ͥŕÌFÌÈw”+«ôþ#èšÄÔ 3/G+[+_³òì¿g#myjS½—Ö5] /22|0n¾¥ü+:µ•Ó¥úÝ4p¿e]4¸T}{þa…Œ 0ƒŸóÒÛöšî^jyIÂ6ý–Mõ‰ã°Ý”¢™Uo²+ÅŠ2ëSâiî…Àeü"®uóæÂ!•ˆC!Oõ¾¶•ÒŸ‰X |¼ãCc­GY³~Ãm\².Ѐ¤{ùbú0ÐÈéÒÅ>LZ¸Óæ…9]¬s\dÛ\|±È7ò1ˆ5F2¤ødy÷ƒžç=tëŒeª`ÜtÀ¥öqžÚÑqJ ‰ªúá»]h+Ë7¬‹t. ÓX«ƒˆÌ7n<·3*Í }ªÚ'éîÅ}-䱩1é‚: ÂL+»ß$Ëñy°æš|VâÚ¥þyoϰ/~mY‰‘¨™P®“O²Î„/Ë:Z?7/5¾7¯”½`ùÀ•sh èb9é"K0{FÅTë(~•nŸûÃ9‘íYI¹†d/ï*×0ó"MºÝwêÞD]“˜zóaøKì<“ÕoËØÔ]ƒ4éKûº:øŒË…ÙШÅ\þ¶qКHên K}ÿ<3­‹€KÕ·û&ŠcÈ(^ÊÊnÝ\’'ïæ•F¢ÏѪú³Ç!¿,I¹M?aYZbrè»z3 Ô©¿à«æaÉ0·ŠèÁ-"B²w˜Ø–^ΗCôì²ô˜pxª÷E~š¨&²vVe;ÛRɇÆZo@y]ÜÆ%ká ¨d2ÝSy×”a7 ‘Ó¥ Œõ‰ý¿Ü¼ð‰J—õ[Œx,{]û»‡Ð(´1hRö¼°XcÇèI>¡búßÚ`ÈSã ùÔÚÉÎÒ²¶îÓ&,Çié|‹ð]’.00fXp.­G¹Ñ ¸bíîÛž0úÖN£A5äOUKÿ»|¿tÍòRløÚšg¡dÑ÷äI»Tíüp_Û"-Ñ28ó[1`ŒÙ Ð/õ ý$;+"Œ­1‡Æ(]Ö[ÆELºÈ̦Q±˜–WµÅZ¶g%]ä’±.±º¢8Ê¥ÈvxäSš÷a×ħ^À¼|K ÿV‘/Ït¾é›»Ø9.tÆ…Ú©íŠ-lÁy'Ÿ×!jÓnú°Øb¿Þ7Ñ8å²uyªNºòŽ®¾ºQU=õTf„±¾xt©®ß´ÔŠŸ¥^7 e¾!è ¬=ͧ¤T¹9áeκ¥r·ýTµŸÀv˜ÝÜ}±±±]| M¥ËQ·qÉb¸ˆT2’4rº,…±•2Ú7/ÜäË2Ç@ȶ1¸ìÐ"l‹ã­hϹvšÇ®[ÎŽêÜ#2+¾À„þNÿÖýê}._ù.IúåµR·.̹ˆà¬µÁ^‘m«çñÆBÍËŸ;i5ÔžŠýkc‡Ô/{ŸØ:JæcKL]ªä!¹:õÔ>ßQçEµ¾!-µ¹|uÜd¹¨çðyfX—vu"dôÌÇlåØn~$5/ïÒ&[à/I#ÂX×­!H¼ j@Õ}+¯Ø|ùR¶ [ °ò¾˜âKÍ û©V 4ÂoÚ*+_š(ÆÆÞæ1úè#ùºuÉÆ$K™X»rã?[Øëüçïý£B Íyfg9´Vòš'Yñ@=Ä…ÞÍñ¢ø2³G¬©`OEòª¡‘áeäŒÉ¡1A—zlÒE”`ÖŠ)=ü𳱬ÐÅìÂ*í;*T²ovº^yÿ‘wM|êÌËMvBå­Øí¤M0û@Η3lBÆx”q¡“1ýb.ÿO…to öSûÄÙ”ôSå¦f]ªØy.­’,åá-ùtj¿”o™ï}ýšb¸šW—.]’O¥[—޽ɣ¥§o/ù|,ü'Õ€hµíPØ ÊV¬ø÷M4‡^4¾Ì’OÅòjÍ@w/Ã˶ÙùrlŒÂzrºøŒK–Ã%€4bºtÁÀØ-=7/` 籞2y¶Ë^ÿ¼¡»–S^h·y†Æ´§Ò{;Å—çéú”ûýöÅ<±‰û.A—¹Ú.v:ÏÂSD7.ð]¿¶_N~7¤¡’ŠjHÇkåÓh—²=‹ïàÖ+æ` ´¯£…]ò<¿sÆö9Ø-^hF ¾Ðõc§ÔSÑ 3¼¬f!A×hCc…O]4ã"&]D fá¨XnˆÒe·,MUY´±jç€O—ôþAtM|ê…~LäËÕ[n'½é»¤Ý/ ÿRÃȺqQl¹!_ƒ…x–gSÒºô+n]è<Ë:͹ìdq2W’ºVk)[*¦mÈ~ƒP1uJ´a]:¬…1Õ‰áBW”}Þå_«\ßEj¹œvѶ¬üéu^¢„B’/½ü©X^ D£ /ãè¹4|lŒÕï`tñ—\€Ë5bºôñ\Òºó²IÛœß"­„hCƒ‹o@ÌØ÷RÇOߢ?•~&©Ò7µù—yl½½jKžƒÄ|— Ë<±‹á@ÂåÊúã{Õ„Dáö¬‡?ÀTÚÍ—A5œ¡Ñe—º”>Ï".ÕBžªL9>µã2Z`bSο„«×ïÛ)‡(`¤{Ñù²T=” ÃËÒÂÅØkYJw èÆ…OºˆÌÊQ±œ¡ËŸÍú]MlØÿ¼ÅÕAJïL×Ħ^ªØ&s:4vkïí‹üt¡|aË"Ëéü ®ì¿Ǧzƒ-Ʋ­y6%ý<£;XÞ›Êfð× çraûÜõ¬§}÷Æ–fÑ5Ð-Sņý‹.`]>·/!Çæ¡ ‘U÷íPYV/Uó/¦Õ¯R«k¶Ì;ÕÃð¡ÒøOy•1Ï/Kf³s/hCc·hoá7.c.#§ËR›^;ÿ”™—¾Cw``žf%xÛ \\s-&^f²SãahL<•:Jò@DD§ØµRmÝßäûÚa}9›xt¹bD4fÍi'v×VRI¶DÚ·-dSÞgù²1úT3j$]ªìàÈWìK Ÿ~mšöTŸ;Ñ¢-™‘|ÙW›kF¹—mœ/kåSA †Ûà³ñ»196F»„5§XÈ}¾V±ô8+Á,Ë º\0»¼B¨Ú°çeœ*ïmè–{ÿ º&6õBÍKë{ÝI¾¥‹ÖÛ-Û·U¶2ãR½}¦ƒ-=]1âYx—y<8r/«‘ .³èydsYU§ÆE°%o][]\ÞPÃÝ¿N— Qk¯ ]æØœŸp Èv-õ“ :Žk€Ysù4ÃË­êS–p¾¼¾Oñ%¶ªA͘nSîEx6³Ž=+ÁH%ÃË56v…}5”ÙøaÄf%+A!]&e»—WlóJm¸©ƒ{ÿÀº&6õRÅ×lõ“Êïö.,üËV¹u湕’üÜe^Úw :á]®4”·Â. .°Ï¥Pé[Þ¤Û³¶ÃS ó2Q§KG×SÖ6}Ò ´ìíëñ»“M‰V+Ã@™ÕÂúôr;Ss0Qî^èS­ª©ë“§²¼Z3À²OàEŒ‰Ucî³)Ç\FL—.90¦Y?0/+§Áî@a%xÛH.qÑbã…›—-ꩌÏi[Lοt®Œå_ácOõ-îU'› .ù«¶èÖEÁE¹ É– ùÚaã·>çæe¢˜á€Ñ0ÍÁUۛ̽ˆ±1úÅ9ÍOȬgX â¨ØHérÆ>h²÷ŠyH¥6§Ï¼€]›zÙ§†Æœtá±ÅHõäáÌ.vK‹MÃ.µÃ Q.`ÖåÊúãùr‡¾t:[bzP˜¥Â¼0ïb_JÖ/u)ÿ䎽K}ÎÊM>î¦ñ…ôýeÜÁ´ks/00¹@Ý +A˜Všý2s/ll¬åO€·êštIñ¼’£bÁÒ¥EF¿["©4f_º˜÷´k‚/›¨¡±ºˆ8­<re{÷ÀD1&Ö­Nžèi1;zº"™5Ž6f].lÏ—;ô•qÑØãAaZ·Òÿ-7/ϱ¼ÚyKG¦£a V‹q¶Àà×§cžR|ÙQ-‡Ë4¼Ðhc’/$¯òéÀXÎu9ÄðÂÆÆ 7·ÂÐX½ƒ.c.#¦ËR10fÌZQóÒK+öÁ^}a%ö YG„ /ܼ¬O¥O»H¸°ÀÃr|LN–ñeôóp‚„:Gr{¶C_,o²ÅÀËfn^ö­Z³NÐE]JÔ/u)[ôi|w[0Èâã ?dð²V‘Ѽj€A J—:Z‚<82ÃËwall [i¾É>ߥGÂe/ŽŠK—>QOUoæEß«_ͼÀ]Lr¶x9ÀÌKçÀ€ Ë•üR²~ÉKÙl±WˆuøV¨Ö·¸³Eã º*kØÉñR}þÛµ¬˜ tóÅ v0÷RÀ–Z—Áª1“.}.›qT,XºTò!Ú}æE÷.pæyOÐ]4Ë?É¡±J]\Ä9.oçNž¼!÷¶°Iuf®Z~°¥á wCa]`¯‹€‹4.>¶H¼Ð‹-ܼL»U*òêO®àȰ›¤Ëb‹–>ÒÿtùVˆnv›Éõc[~À^ëFÙŽ—Ö e×è·G+E|˜Æ n]b/SéØX÷­64æ£ËXËHéÒ%Æ´ŽŽF« †ŒŒq+mc0¸$/ܼð§Rã5.Â"lÚT­üË®¹÷ ûÂ.³Ô¢n]®ñ/ûõ; …s‘—r±EÃË´2m¬èB׆‰½.¢~ÉKYl±ÑgøX­VŽÇ—¹ì:õß샩ýuÞ‹¶ûyÝ ”.Ë2xw/=PªÓ`Ce¾½/š-¬ÆQ±€é²WŸÿóB”mÒé]wà]8ö14棋€ 7./í>¡Î4ñ“‰ƒåç½ÔÏrF t)/±³].¸üÙÁ/̼4pºT/í)7ŒõðÞâÔ^“-6Zü3˜býÁ¦Sõ.¾ˆõcÇ7ó¡…ã1¼ Ð-Ÿä©º…é­dÖEâe%}ý ·Øª1›.c.#¥K«× œ]J €®‡¡»”žbVb¯¶Ö(´xáæe%{*5í"àÂ-B¿AÙÁ—y¾tÑѰÇ`ïñ5EÚ—FØv¨Û\Ä¥ö¹ÙÓVoF˜yéºÐßðmú¢~‰K=eÎå›hñÍà›íÄMÅ—§ÄŠÝܽ@£ï¿AÈ0ƒÑ…ZË?d/mê¹6Têt¡=ƒË  ˜.=æâÚ¯~À‚AʺaîSÐ5Áˆ±³éÂáÂg\fîš©ØÂ¶‡TóE0¤r²LÔCAKò­I™BÌüLa\v¹Ù¢ãe3/g¤w1Îu©Þ!›cbZ:|[cêMÂtíèò!Fù—Íâï9ÍñRÎÌËÈ+¦¼R~® ÃK…àɰUc]Æ\FJ—¥|`¬E7.´gºIñN,ùËŸà#—ðp2Z ¼0ó²…=•œváp‘PªxbrýØQÖ³¯áîa_H}mÚ ÚP:Ö0ëríÖ X‰ÙyŠ Pݸ—-4 +Ç 3/; øŠdn]xýâOuã1-&Zöºgðíöâ"ŒäËåÇø¢Ý½Ч«o)¤û]Ä6 —ø?cî¥ ÖÁ†JýlÊ.8*$]ZÌ•‹óæÛsþ¬J¤¤kêaæ†Æ,ºp¸pã²m›Üß"»ß+Ì¿ToŸtÒˆÖ=PqÆþÈöº”ÞºG‚½wᬺo{![Hõ^ÓÊñÂÍË4Af]˜c©þœïqÍØb¢e¯,ÎE—4âóçbT¼ þ‚;$^¸y¼ªÑö¿hxXülÕ˜I—1—‘Ò…ŒÕ›Æe`M,ëduX‰z9b_Zt¼póRO%O…epiYꚯ|‰„õ©´ãìµ¶´&Ç®pëÂáÂ+Þ@g¶ð=øg¸{áæ¥€G‚aÖ…×/öT²‘R¶héÙ\ŸhpÂH¾4LcöE¸— øöŒF©£ºu¦]îf÷'iY †Žité3à‚£bAÒ¥¯ËœEУù毃~úå7™tapY}³R—˜ËŸEÊÔh'ËÜÏÙš±ÖÕó„u¸Ì/g½qØÂ«uÇ 7/œ.ep®‹ÆÞì['f ¥~³›,BÂÄ Ähû÷YÇ´šã…›—îRºŽ¬=Oî>gs©ÄËZ3è2–à2Rºð±Ó¸ÐE¾»™y™ÆéR¸7\†/̼¬ät9¥àòü©xsá.¾°ðcpÆ ¥Ë\¾žª`[«„K<¶èÑ]^®Ýbæå9æ]˜uaõ‹ÅJ“ßG„-æ ±êÁÖ†%C‹/õã`aò¸}ÛXÀMýe{AÎj§¦I¼¬¡½Ç\I—..8*(]ªåµ4&ÕÔ8{^RÒ5íóCc]\Æms±…†ç"†_žV¬< ´¿j#ù X—Ûc À¹toHÀ½: ¼0ór†Òå@ß^z$åvÞäÍ@„-æâãê„dID 1²}2¾To¼¼~ü,˜—N K4Zªñ…Ú)ÀK =§’ƾmÐé2¦à2Rº°±zÓ¸°f^8]z:ªãÁeDhÑðÂÌËN—.ç—Æ]g•¿ê|ÄàË•2Þ§Ë<¶žªð(­ì; ¶”?¦õ徸aϱ©ýrj^:O0º€uaõkéRÓ·Ä_|,ÉÆäKõ¶ï¥Ž™JöÅ*ørÖ’¾)ðq|]踺„ ŽŠK—Ó¸PÅ3/)éšNy¡•¼T£ ì0ÓÁ–êS´TÁNI›,l o3ó.Ï1ë2›…ÜêléíßÜÕ¯ ¼póò&ìÕgÁ‘»¬À–ŽøûZâ‘%!ab< ™å_γˆÉS™y¡yÕO¡¼Nðå,Lܾ)Ü í<¢]Æ\FJÖÙ´ØÆ%&Í § ýpÁeÄhÑðÂÌË Œ.…. qØ"p6ø"'Ó¦t¹_öoÃbŠ-e²/÷G¤,ˆÉ•c̼À¬>X—·{|ãºk~-ƒ‘%˜|)g»öi^EN]àý_Z«â'Wïes//[9]èA4.8*ø¼‹a\¨â˜—uM=Ô¼Ð^E—ºJ[œ-ô¸I~¦¤:Ÿ¥|ƒÑGobÞå<³. .*²èËÝ º8^˜yéº@pddêS{7“,‰SØÕã÷/< ÿ0/ëè8ìué<#Ö'—^#%xH¸sÍ̃KtÙÀ¬‹i\„y9Ééâ„K hQxyÌK/Ð¥ÇÉå;5¾Ès_8]Àºp‘lÙZ¦6]:È¢Úfkf^h?ÖåhMJψÈ28a ¾0¼ü–QæEé´~{4úü,>ÿÒ¾]¬cx sºô)¸à¨Xêè¢Óuš—TuMę—†¢K›-ĶØdáQô7LÓ[£K7X—ï ¸È1±Šiƒnkdx‰‚yº€uñïÐ_Z?2²$ 30†ax™ æ…Ò¥’fZkÃÀ†ˆàËÙ©jj¿_§ËXƒËðé²g;sÅ4j]lãÂÍËxv²nÉ÷üp - /¤$7²CMKþÉΗÑ0æ_„}y¨„]ê“V¾÷Ò˜o¡}y²hx!ysJ/uÍò-צA–Á£ó…á…<ÙFõ‚t²³³¢UοH÷ÂraùÕ‡»\pT,‰ô=§qæåp‰™*u]Ój^Z76ñòöÃ…±¥þY.lÏWáñt¾ðÔtiþüÓ—Nc¾%q08è‹-L&Þç0{ª×9=Ÿdİ!’%.aöÂbºax!o1¾X6 ¾ëºWÍ¿p÷©T9:æà2\º¼ÂÎĤ*þ­Ë¸PýGH%úG.¢EâeàuÃ9ÿ› `‹{ º_/`_¾W+/Uû(ÀŜ˷Oþ¢gJúVmAûlûH=Uí2Ó·¸Ø2\²$&ŒÆÀË:-¯j•$_˜{ÙXk• … ŽŠ ½ý£Ë¸€y¹²R¥²k:uëÆ#Zúol¹qe’,|ÌÇæ‹Ö€(_¨s1æòãlo”'H‚(^ZKõ\Xv#ud‰G˜kþ…áe¼Þ€ø/5¾0¼è9ú_Ç\†I—«žzðÕ;ï¼sq ùÓ~‡qñ%Z&á8Z^ÈmjÏÝýÛßþöÕ×È Whp!l‰O?_®Ý0/õñç[œ)i†â…^Jeà }ËHÉ’ˆ0Š/g\šŒÂùo·vÚ|ÙNðÒdäÂ2€ ŽŠ!Ú6Ž<þâ‹/¾qU ç¹ëЂß{ï½OòT©íšzhUòóÏ>ûlòtVëu¶L³V+²¸øb\Ê»ƒ[’-ñÉK³µoTЏÔן~úé«Óµ¼JYâÆœ)'xi2žêße¸þˆ\?FgšŒ}`ŒÁext!µþÁ;¹î®eýŽm\ü‰.)A à )¿Ëõ5¹á —ú?B›/ %Ö¥©lYå¸T‚9õºö&+ˆç[‚"K|žw ý¥¾§’Ñ”%_¶õ6Y¹°ŒÀGÅ‚ËÁ¹¯å]¦ïøB’êµ{¹þ•¦êKùSMùŒë«b /­g6$&‹Í—²éÖ¥.ͯálYp<YÌU[ /¤žû”ëʼnðYâFú—ÎEþ§’ð‘þàbdÃc .âË+$gû úÒg\‰þŸÔ¡…ꟿ=Yíck´ÝÙlÙ”q¾8KðuC3K]¹p Ñ€BÞã]úiA‹-º¼–Òüy?·úÂs^Q„îÁŸ´jˆr^jZÓckþ˜ÔEÖÀ?y_[ýøth@é&‹I×Sý køëϳïІòrW6Cº$–çY]Óç¼Úù–\‰Šo¥Pžgõ…¿]ìÕ®–\—*ŽKiφ$óÊQ‚y–\¹0Ñ€<ςˋGü ˆ´ .÷>˜Òü÷<«+ül²W\†œ—Þ¥¬nüÓW½â ‘EÆùTŽÆïφ9H—¡Òe±×48]§›.¯zMAÑ…ÔH@tYœ•t!%88]^Eº¤ˆ.Oúƒ.‹ÓL—;†„/e÷ã_gA-t=•¿‡peÒeÈty0º<蕤—.ç‚£Ë9¯$(ï’âl&]L†.缫ˆ†y—¦¤¼ËÕ´ÒeŠW]Fp)»Ÿ’µÐõT%Ix—)c¬ ƒ.˽žQû¿Ÿ`É•è—-)ÔrïU«3$OµzXr]ê—s󇣴gC’yå(ÁÕÌÿçÊœw B˽'}ó.¾DòÿI‹.Sšÿ˽;¬¾pº÷ËüaÖú/eÏpdC-t=•¿‡X®ïváÙ€ó.ƒèªWbvMw‡¼ýÃJ¤®z¯™}á¿ û†^*ÍÙd – (+gZtñ9KR™pù]jóÿª7Ýì ?‚Zä¥Ìnü«ìh@É7ùŽ)Óƒ©õ^jú«_Oɾ4èS˜ c‡.±ëÇÄ™kË÷Œ,Q ð†Ùy©tçUv>úhPr9›îüÇ”ë%8*èB²í•csæ\=¶ä‰-òàn˜—Jw^eç£ ¾$•³éÎl@¹^‚£‚.( …B!]P( …tA¡P(Ò…B¡P(¤ …B¡.( …Bº P( …tA¡P(Ò…B¡PH …B!]P( …Bº P( é‚B¡P(¤ …B¡PH …B!]P( …tA¡P( é‚B¡P(¤ …B¡.( …B!]P( …tA¡P(Ò…B¡P(¤ …B¡.( …Bº P( …tA¡P(Ò…B¡PH …B!]0 P( …tA¡P(Ò…B¡PH …B¡.( …Bº P( é‚B¡P(Ò…B¡PH …B!]P( …Bº P( é‚B¡P(¤ …B¡PH …B!]P( …tA¡P( é‚B¡P(¤ …B¡.( …B!]P( …tA¡P(Ò…B¡PH …B¡.( …Bº P( é‚B¡P(Ò…B¡PH …B!]P( …Bº P( é‚B¡P(¤ …B¡PH …B!]P( …tA¡P( é‚B¡P(¤ …B¡.( …B!]P( …tA¡P(Ò…B¡P(¤ …B¡.( …Bº P( é‚B¡P(Ò…B¡PH …B!]P( …Bº P( é‚B¡P(¤ …B¡PH …B!]P( …tA¡P( é‚B¡P(¤ …B¡.( …B!]P( …tA¡P(Ò…B¡P(¤ …B¡.( …Bº P( …tA¡P(Ò…B¡PH …B!]P( …Bº P( é‚B¡P(¤ …B¡PH …B!]P( …tA¡P( é‚B¡P(¤ …B¡.( …B!]P( …tA¡P(Ò…B¡P(¤ …B¡.( …Bº P( …tA¡P(Ò…B¡PH …B¡.( …Bº P( é‚B¡P(¤ …B¡PH …B!]P( …tA¡P( é‚B¡P(¤ …B¡.( …B!]P( …tA¡P(Ò…B¡P(¤ …B¡.( …Bº P( …tA¡P(Ò…B¡PH …B¡.( …Bº P( é‚B¡P(Ò…B¡Pcš.ûŸ8vìØžgIÜ Ó}¿ o˜Ã%˜Ã¹åùŸËzÔW_0-Ù+tÙ³ÜcšóðˆSwÃtß/Èæp æp.dyþçr…õU'ÀLS6ä]ö“ÌMŸ2eJ1ÉŸŒ,Up7L÷ý •÷ôÓOßñ s¸Ìö1ä[²¶B§»Åæh ²ÓÖ‚r‚.ûC^hòEÐ]Ó=ïêHRwÃtߦònû ÓÓ#»a—`€Ù>†à’­:Ý-6WP%˜¾” t¹òŠ¿¸(49äÎäRwÃtߦ ýFê¶\j–`€Ù>v”µ:Ý-6WP%˜Æ” t¹ªçÆÅ‹wxÞÃÃNÜ Ó}?’JkÐ:rfè8À 0ÛÇŽ²µB§»Åæl ²ÓØ‚r€.ÏzÞ]uMñæ 7Up7L÷ýhªÛôÆA¼ýœi–`€Ù>v”µ:Ý-6WP%˜Î”tù‰7ÝÈ‹_xÞþa¦ î†é¾IõôoL û†9\‚fûØQ¶Vèt·Øœm@A–`:[PÐe¹w‡™§{O 3Up7LñýÞš`k¹õåE¿½žÈ¶1üüi¾¥³}ì(*tÚ[ì[£¨Y‚élA9@ÏûÂÊŽ)މ¨äRwÃ߯i‘-Ïû¯qäÈ´äðK°$lª!Àl;ʆ öÛ4ßR7  K0-('èbåÆÅŸ;F “KÜ S|¿Ú$èr[®Œ¿‹Ë-¼˜íc‰.™¯Ðio±IÐ%gP%˜Î”“t¹#©L»#¸ºê»Tþª߯itÓ%Ù,J—;.äzPêoX;ºé2ìLg Ê ºÜå³rEëžêØ0îVõÍåA.•¿jtsÁÜ/Σ¿qûí¯›ÿç2öÇr¥m$“W®T³}•©³},Ñ%‰LKq…>Kó Ün)‡P%˜Î”t™ãM¶²£ØÛØ›€q¥úé0З;.µG'K8q¢ ^p#•½ä%4ÜfC î^ªƒÁeûØQR9;'ý:½7œã›ÕÏ™d ÎIc ʺ<áÕÚã„^k„ŽÈk€q¥úòü¡¢…j£ãR×5²¬(r' ê¯;R…l_?ÜfC ^Nªº™ÍÁeûØQRùÿDú+tzoø„m^r§Y‚O¤±å]®‡,Ú{%ýDÀ W*òëdù"ÑBlÉ¿û/õ FÊ–þþ ¢«Á½àUgªÛ¬/¯\Yñ’ô &NU7³­òÑà²}ì(©ü¿ž Öæp ²¯§±åB$òÑñscy¶÷hk¿â Ì[vªÐ²†pr|ÑÐ>¿²Àu)…–ó”-‘h´È—èÙÀ^0ôŸÜ©n3C9sH…¿ÿÒ‘ê­„9JØBÕ\¶%óbçÿõdjáõà*´ëRo¤²=›LºžÃ%øldûh K쪧pûÉØñ‹Úúûu¾Ào(±RmŒnå¦ð¢çÿüùï š(À ½ÇÙËÍŸß”Îæv ªÎöÑ@—Ø1zÜOm ýoèÑšE/‘ý|)ÒR}ÔN<Æ®ÂD|q¡…Á%ZzØ“—ª]Öd‰1¶PãBœ ݂Ҭî·|`/¸ü/é3»ðr<•G[ƈo˜Éüˆfž… —Êm¿ éÙN²ažÎ–ºÙKè¿ÔÊf9ÆFûºýãĉjÇÏÉí¦VH´—›ÿÇRÓ‚ö'|ªÜl@C.Áôdûh Kìú1vVçÁÑm§/án_¾,ª…TMäãølùÍ®X<¾¸ÑÂá­Yôáav©’Åë,œ-`\À¹,Z´NÞoΞÀ^^ª ^~EzÖåAÝ0c%Øœ—÷Âi/.mÛ¦ÊT%à)^[b .ôæÖs22Ÿÿ$ÓfÿE¼ÎIù6¾}$w#½ØáDmƒõr³j` æS¢L[¶ºå¯X±lUíÜÇq¼„mÿBþ]ñȲÂCä÷/ï¢FcWÌÅ—xh‰å?pi£×‡É 9Y[À¸pçrè<¹ßÂØÃ?ä ŸÜx¹ÜôW±—Çÿ0G;¸Õ|ò踩yy½y¶ðp9›¦/(íh´R²…ÃåЛyyy»U^¡’—¨«ñ;'žhùõ{#0/Séõ'Äo¢—3ž*ÀLôT·_ºtiÂh.Áø/˜ªl t!ͪØ>Ò»_¸GàEó/ÛçDN’ß— ÝЄ}íà^l¾ÄC ÝÏÒ ô(§ô˜9ïøŒb]Ý{™ü7WéB01.¶€ÐaÆ=^˜sap<ïg‹€Ën§7õ¼B ] ñBõîü™Ú½›ø×²—KŸØSÝàÅ%÷Óží9G—*Ú¿ç³Îé&í„©ØU5—†Ò%n¤æ%&܋ΗUN´ð’.•`b“]8[˜q‰øz¹íÿ‚qñ¬KîÓe*ÁCÞj/—Ö©1E—•:[*ëb .±7É?ßtI1^Ff^¸uÉ2¸ð§tIP‚ñ^0ýÙžstaæ%Æ:§:@…ô/»ªbs']:iOtsáÍ î^4¾øÐ¢öà\vÎ[ø˜AÎn\vŽã½\àÖÅì1ýxaÖ%÷éBÌKoÞŒ˜Â‹˜sÑèR ±% Sû.»‰óy3†tI5^Fd^[— ÁE<Õ(¡KüŒó‚ÈöÜ£ 3/¢sZÖý áËòۭ̼ä…"ҽĪV9ТGwáp)&ÑE°…— Sy/¼u±zL/â©rŸ.S‰wÉ[-ñ¢Ï¹ºÄv ¶ì„©} n].©ÆËHÌKbë’)¸ˆ§-t‰[‚îÌD¶ç]¸yáÓ8Aþä·±¹óvÒΨ"ìì2æZÄü‹Aò³­.Â$Pºœä—ݶ“—µ²— ÞºØ=¦…ñT¹On^x þYŸst™)}ËÖõ´pö‰lg³.H—Ôãeæ%¡uÉ\äSºÄ+Aç f$Ûs.ܼÄÔÔ>ÕÖçgÉñ+šú˜ÀKEûD!üM²Ì[Xõ­€‹0 ±I4æ Õ‰}™q©’pIuñõ˜^äSºLÍóÂJpQ©6ç"^P°…†a˜G¾òD¶së‚tI9^†o^Z—ŒÁE>Õè¡Kœt½`f²=é"Ì‹ÀËÖ…Ì—Lúv‹ÝUE*7/̽Dä€Xá*ë<*¾SRÂEš„:>Üvbísܸ¨ñ™TX©ãE<Õh KlAo^ÄËY}z©îFÆ¢¹ó\ø¬ Ò% x¶yId]2õT£ˆ.ît¼`†²=é"ÌKlì;©‹Å1¶~“? èóû°çe’†—ò•…¾Ñ°yb?‹‚ 7 b¾åD]¾0.\Ra]=¦Â‹´.£‚.|æ%û3»¹[cËÌJZ¨m3/ÈBÚZ‹ô*º ]R—áš—DÖ%spQO5šèâ,Aÿ f*Ûs‘.¼, öFºî¨€Û—*@̵¬æEw/¶o€Ppa&á[1—_W(‹—TXW)ñ"­Ë¨ ‹˜y©k+5‚ÂÀ¾üøb(P‹-À¹4Ò•cbÖé’¼ Ó¼$°.™ƒ‹öT£Š.®ô½`Ʋ='éÂÌ éáË%^¤}¹ÀéÒßßËg^Âç/Øx9?o¥±_ƒ 5 5‚-'ÃʸèpI‰uqö˜/ʺŒº°™ºZLà ù’Ç^o¨ ÌáBWŽIë‚tI^†g^X— ÂE{ªÑEG Ú/˜¹lÏIº€y™ú­»å® n_ènÊ£0_ æåüÊoVM2ÝËÖU…æþ} .`Ö±1±‰áò¥q1à’ëâî1^”ut™—7aµ˜(AOìWìWêÎåÐ<úç£bÖé’¼ ˼ķ.„‹þT£Œ.þ´^0ƒÙž›tóRcFÚžïUœ. lÿ 5/KØ<‹=8F|i˜¨Á¬ ›o‰M*ï”ÆÅ€Kj¬Kœ“â¥RY—QBذÏV‹±<+c¾ð,М A ÅK£´.H—tàe8æ%¾uÉ$\ô§mtñ• ù‚™Ìöܤ ˜—“l¾[à µ/, ìßóRY®ðrsî¼­:`_º5¸À‚¥uÀ–Xáe\L¸¤ÆºÄë1 ^j”u%t¡ÑÆzÙ}¹0™Å/x^›s™KñÒ/g].éÁË0ÌK\ë’É^ÎxªQG»Ìh¶ç(]¾¡ý>_«+ñ[&9]`ÿ>Ì¼ÐøÉççý@Ä3Sµj+‹-ó/u'Öu¡l‰i3.\Rd]âö˜ÛèSŒ.ºŒ£ËÆØýº³°r¬Ø¢^p¥6ç²µà…Z—›H—4âeèæ%®uÉh/g<Õ裋U‚ú f4Ûs”. Ãgøž…—qjÞE,6j‡N«¿±KÆ3³/ÊGÙÎÓ3©I8K;9¾T,º6æ‡KЬKü“ÎDTŠm•£ƒ.umlÙÌ·ÀÔþ¢{Ì,Î…–[0ÖX>é’F¼ ټij.™í匧…t1KP{ÁÌf{vÐeÿÇŽÛ3ÈiûZTTôÓgy÷^.ö¼H¼ð]û]x´±þövºÿE‹˜¼ÿ‰'‹ŠZ¦EE&ÿŽÂg˜ß ÆeÅÆæ¢"x*.©².q{ÌûØi3 /û>|xϳYV»“+Á·š››ßz–Á¥­ B%ó¹|må˜zÁ‰ .áð\X0ÖæxAº 9û¤Š‹—xæ%Þ¥ “ %Êl/g>Õ¤~ýó£·µÌ0\².{Ø1iž7çáäQï ™—ªo.Gj$^]&-¬šÊÍ ‹ŸÌÝ‹¼Tñ ó…ÏoPã²±VÞЂKª¬Kܬ Û÷’T^e BàÊÆÞ¼Þ^1—/†7µT³%àB]éÖqäå5†ùaÈH—¡fâTqñâ4/ñ/¥™=Q†{¹8O5*K0‹²= 貟äFhú”)SŠIŽü$a¢s,ÑßÀªâ¹Ì¼°ð”å /Š.[¿áÑÆäù/ĽTD‹å3¾TT´’2zQê¹”b ì*©¡{\*ì§jRpIu‰ÓcŠmú_&“WY[‚¡ßHÝFðÂvåýZ&ºç´g¥jj ‡¿¡<™´RîuáxAº !û“J/¶yIt)i|‰š2ØËŪ«£­} (³pÉ4]®êyvñâž÷°3‘‚ Á‹çýŸt@ì ìy‘:ÁFî/ðüܾL¤æ…T-Η¯öEMoxÞ#l_>=¤Šò©”2«$ÁS¥ÎºÄé1å6ý¤ò*[KP«õPï?©ä3/3¥Z_®‚9ý./@*†¤Ë²?¹Tqðb™—D—’&ÁŸè•ÌeQ‚§zxt• ¿½’ÙwË,]žõ¼».êšâÍq%úùgºÎyÅ`W”y9?oa_˜|‚ÓEØ—F0/1à {\§Ë‹½Z¶/?6wì*¡×\–è©Rg]Üt‘Æ’Ê«¬-ÁÛôjO\{-oÙ ËÆ¤¢å\æe Qÿ\…—ËH—ä+E’UÇÓ¼$º”4 YUU³ó©RQ‚Ž”áÌ,]~âM7òì➷ߑȀËg¿÷¼ebÙØI-Š>ÛóÝ.èÂìK'7/À—fïà‹¦<ïÑuÊ$€uiNðT)´.nºHë’T^ek >ýSÄ3Òù*9~*RÎßPóÒOàÒ{*^.ÉWŠd«Ž/†yIt)i²ªªfçS¥¢] (³/˜Yº,÷î03íâtï ¢É&]>+ñ6Jóò­–’í{iʬÒÍ \ê ‹.˽·4“@­ËɆÚO•Bë⤋ ŽœT^ek ÞfUû§Y¶‹C*ã¦"å|™Ò¤öºÐ=•^.IVФ«Ž/†yIp)µ4+›ªjv>UJJÐÕ€2û‚™¥‹ç}aeÚïµY–<ï÷]¦x%**YO:ö|·«œˆDZ鎊KYpyñ ½ßò« §™u!Wu=ÕÕÔ[']TpäO•e%xðeKž÷_µg‰>¨©©ùU‚T%th¬Œ½Ð{*5¼ ]’¬ÉW'^tó’àRjWI6UÕì|ªAл¶’Jåj@™}ÁLÓÅʳ‹?÷j+,yž—Ïî€Ù’þþ j^"zÚ6Š’š6ùwy΋¸”M—'éýúɯJÁºDè¿p=ÕœÔ[]´s]‹ªjv>Õ` h¾­¤R¹Pf_0Ûèr‡WÜÞoÊO—É"5/#1œl¸¨MÿQ¥Ú°ï§ËìR‘(,‹ðTþ§š“zë⢋v®Kü§Ê¶¬}/ nøÅ¥ËåØnO9¿ð¼F¹­é2x¥JÕqáE3/ñ/¥mˆÏ¢ªšO5XJ‚.ŽTH;kïò¾æV]¾òŒ5÷+óRa¤®ôã¥WnØ·—ŒÑ‘±f¸ X— qCÿSK½uqÐE³.±øO•m%xxpn<íOäLuŒæx0Ö> òGŒÁŸ/®ìãždRÅ­:¼hæ%î¥ôX^ÙSU³ó©m@º$‘ÊÙ€Æ0]æx“­L+&ÝNoewxÒª|•hŠE—boc[ˆf#ð?áy?7q‡í­Yd&¼ÑóîÐà2Xø5å‹Ü°/C#ÁÜcá% Ÿy!æÅ{Ò˜u =*‚#×p¶ùžêÙ4X] ëâÊ«l8¤ÂÿTŸäÑ‘¬~v8Û8z~Ke³YïŸö¼G.ëòô‰—þT¬œkzó~öcjl ò §öÙÿ}ÿ/æÛ€ñ¥b'._|xÑÍ‹}CŸu‰—(³Ö%kžjмž|* -`^ì?Î_2#ùª§ ü©õÿeg4Úf¦ÄSîå÷ä/E§Dø¢G£„8c:^ מh—ËÆÚÉ¿>¢9o£<×¥M°%©i²žjEA¬‹.†u‰^.±žê•¬èßìü_ ñ]_¢•ìü–ʽޓZÿQ£ª&+Õxñ‹bU̼ȱ1–Wˆ_öÓJ1Õ_!½7?!_|xQ3/®ÚGR¾Ó”UÕ>(ójN4 W’Me¢…Ên@—øÏ3Å—¼,ÈÛ’Ét«Ð]SBž·'V¸ðÅ 霊'Ó=•_ÑD£Ñ™/ ¾DPÉ,Lá%—¶lìD¤ösµGXþÀ¥¢‚YXÞLõüÐÏiOµÎ…Lµu±ébZ—ÂË@Y#¯²¦3žjöë‚/¥œ-ím¥äÑC·‰Jï5÷ÖøÐ’Çð¢¥:¼hÑ;§Ù/u7/blŒüoù*\˜ìÈ~þÙnÆWH·'æ‹m٘㆖Ixú¹ŒWUë©âæUv–à ©ühy÷4d»Þ€HÙ¿›I¾dþlÊcô ›Úúßå‡ñÅÌa•¨ö¯èo÷M|©0B%Sºó6àåÏ'ô=/¿®£î¥™^$T ÿ}´¿½¿?ÒMo´Ž/pÞW'Q6kOµ¬¡à%åÖŦ‹a] !äóߨy•ò• á Á áKﺶ¶VR”D¡­óÞòÿ¨ñ-G®)­áƒc"Uˆ‹ž0ƒ'ø  Ì‹y…xñg¿0oø )1_l¼h{^ü74M‰Øœùªj[—y•%7UíßÙh!¥ø“ œË;2È—,8ùøú1vXçImÎ0f'—ld3ùÑ}1É—Þ Í¼ˆ³)#æ¾j^~ÅöÈ´6‹KE;a‡ ìuáhòÙ1Çå_þR>=2¼5åÖÅ¢‹a]\æ9ò*äªÙ3{{{óàhãp”9˜RžíM‡OûÙ’—Wc–sßsz‰øÍ¢šJj^øØ÷.ˆgö»óoð…fRB¾XxÑ7ìÛ74M?o7ãUÕo]æUv– +U“? )ÁwÄäKÈLôN,s|ÉËŽì}øas†ZðÅp0ã?¡¡‘$^4¾Dlº”wV² 0Œ'vk¬©¨(?þÃut$¬;Âg]JùNÊVq˜ûÊXlÒŠËài/)·.]të"àâÌ«,,Áº™tZ%È×ÑÁ±VòŸŠ“|ôÑ"¿ò9\à?¥5¤pàíÙ°X^^ciàK¾Sy…xIX) ók¦JÈ /æ9/ó/]ú;·IÐsÏhUuX—œi@qõ·ÿqIç{Š-<ÛéOnÿî¥K—&ÜNÿ*J0S|ÉËÒÖR5©›OƒtV®;m¯"¼œ™´*_òååç.kth@Ì1 ±HnØçne]4z’Xž›u!ÿê(7«áp9_HèB.Óñ’ZëbÒE·.\²_”-Tg_€Ñ±¼ÞuÛvÂüK£"Ê’ñÕWÚVÊ&a–ÐÿɃ` /- ƒa^úÃ'gÊù>66WxÄËàñŽUdÉðÅÄ‹y΋Þs&áŒæžÈºä¶ô¹–¿¸ý½äX¶ʈ‚eÂlúÛÊÌ _²”.ßÐm‚/¿¥[¹ À0¼Ð‰ÞY/ðŸZýÍeF—H…s¬†|2Óµd»U´1žuÑnXƒ\ÁޤÜWËŸÅàÒ)§#ü]8^ ÒHͺä\[fÖñù‚—%3*õb/ÜwÏ!Å"Èö¼PDðö£ÛÙ‰=Ę^ž}»ä Œ×ò ñ2À$à‹‰üØnåÝlƒK|ë2Ðòý{ÌRãÙ~Šèÿ}W+ÁLð%+éR5‰ D­W|‰Y€‘x ‡+D¿uhjÕ7—õ°c̽À¨ÙIm â&ÓQ³uål ›u¹ ­ †ÅzI¢U&]`Á¬K]4ë’SpÑØBµ{˜—á˜L;§“2Tr”N¼Ð?—òý-|ÁØ.Ò––p¸PíªÒé²Ý(µxÑ颬K.ÁÅbK¬Žî˜¬©Ñ§X*Š-yyy ÞÞÆfUjò(þÍªŠ½ t¢# 8^¾¡jþÅ:ßñ22ÀÄå‹ݼXvåÝlƒËh².Zü¥%²YNf^¬„4ó%ûè"ŒK>ôè[óÅüþÄçÈ_gÒ–)—F8^Ê£•yòËXƒKEg„áå¤:ç…ÎÈD€.lï¤X0V±‹¯ûX„ôßuYÑå|8 xÑ袬KÁÅf …‹> V³¤´­íh£Ü [J—-/˜*à8ikÛE‹a÷Q0/ /—"ë|)×Vo#^F˜x|1¾}5ó¢únÍ$d\Fu±Ñâ()‘íܺº0óbÏž¥•/YGa\ ŠÞ\®ëì&ïùÖF0¾Y¿¦aü|©8)&Ãʱ ž\IÆ¢ílV_X—ûv‘Ÿ¶CÀ«—¯„ÃÝÂEÊÃʺœg “Sˆ.Òºä\|l‰Õh©ù}-ÊB8\J•±™ûÆÞ<6ëÂL ùÈØýé-ex¡C•U¤l4¾èq /#L¾è“f^L¿òn¶Áe”XZ\¥$³[An^|KËÓÈ—,£‹4.±…šUP|Ù+†fis0/ß7»à›õt"¿Ôàˉ:˜ä/û^*:å9/å‚.·1“°‹¯;´†Þ½0–àK•´. c©Æ‹¢‹´.9?[~xH[÷Bo¯ÜÔ²èÐÛ4u¸¡”ÿhI[üẲŒþ¡Šg¢¼um / CÊ/‹ù—š1ÄK€qóEŸVæEvÞÊ$d\Fƒuñ£ÅYB2Û…u‘táæÅw!m|É.ºHãbÀEç Œ]Ž“üï¼~‚U©øÒz’Fﯢ€áBRù¸’ÑåLy‚#w¼0¸|ÃÂY‘ž^ðeW•Š0–b¼(ºë’+pñ±Å(ž7ÉovÍ~ýÉh)pÜs"ëŸga ޞżKÍvš K޶1¼,¢çÁ°hcÚú1ÄK €qòE뜔y1 ˻ܷٗ.´¸KGe»°.’.¼8‚’¦‰/ÙDe\l¸ÄÌñ±p•݃å­k%vå„â y™´Šv`°r¬¦UR‰][•yë7|Bÿ&ÅÇJÞ×+¾Èmú©Å‹¤‹°.9›-Zî›]EW5õœËs7ÿ‡sŸg³*¥Ä’ôÂf®^=‹­#|¡erzvÕî£ /ëÈ"Ým¬ÐÅÄK€qõ`ªsRæEôÞÒ$d\rܺ¸ÐÇYªl—ÖEÑE˜׉=iáKÑE\hç+÷Wvã})m7ü ?_ì$_9F·UÂÌKiE4ÊÖŒÑßT†ÃÝðÕb¶’éBDÍ¿ðmú)Å‹¤ ·.¹‹-:Z>¸VÝ]ä—G[è\Ë›?d f ŸÐ/ w²´¶¶—fó5c|Aý«šU#&eÚ*+ºÁ[Šù/ˆ— ãèÅTç$Í‹îXÞÍ6¸ä´uq¢%Þ¬˜–íÒº(ºHóâ<Î: |ɺhÆÅ ÒùÊõÉ;¿e?ÙEhÒ»Èt0‘J/'åÂäEmQ:ü’at™±ò2·.áî<¹9V']N ËõcÁ³TâEÐ…[—œ€‹ÉÃN6ž…l"ÖE?¯t„ËÿÂàò+:Û_ÚÈÎq!™ù+N—^X/všÖý‚ˆÂ œhË/ÿØÏÄK €ñ÷d²s’æ…w[Â$d\r׺¸ÑwEŸ–íʺht‘æÅ…—4ð%[袗8pÎw¥œù–žÛÂãºh±È^8KàqTòèPÑÝÏÇ¢°l,zæ(ùŸï“þû°. .aH| ¦Ñ%^=«BÍ¿¤/‚.̺ä\ ¶˜hikÛÆ8½«TíF"I_‚øüà_.‡b òøºc”Œ¤ ^=«m£ ˜—Øy/ä†7?ÖÖI¾ ^‚Œ¯7““0/šey7Ûà’«Ö%ZâïFÒ³]Y.ʼ8ñ’r¾d]tã.<,.ŸÑ^ú+¶E¢ÃÁô–v«ýû½•ýg¢Q6÷Ò™—ò0¥Ìnæîãp 3¼Ü”§(³Ý”«#ý_R‡Nf]r.:[Œ¹–”­¬yÜ£")ÄV“cña8:\b±½ðy@•QóBÿ\[ 1d¨y¡×YÉ×þ-8*øÒÖZÑöùÄK@€±{4Ñ9 óÂz-n² .9i]â¡%A$=Û5ë¢ÓE™7^RÌ—¬ ‹n\âÂE~Út+¶ôïÊð;˜ÞÊîŠ%*>´‚ŽU²±  Kéù•`ø&Jx‚ã§(3º,d11_R†þ‚ðTÙ-Ö4>ݡ߶ ˆœË‡ubŒ.pþ‹XŠ —Z¤™:£···±Jªbý®<ò7øs/Éö¾öïô=‘V ˜ÊŠî Öü>â%(ÀX½šèœ¸yQžåÝlƒKZ—¸hIÎÈvͺètÑÌK¼¤”/Y@øć‹<Ò#?"÷âGÖÆêÄÖǵf¸þ—gÊø0½íýýí|îÌ £Köº0¸ZÖñÂNQf{õ邱çôõÉ)à £ X—¬‡‹b‹…þ¥íl¾-Š.±XácýØؾRE‡È"Plm•ÔÉüzV#£ËöÊ9^æ‘?µ+óÒj“/ˆ—À3ÁèÙxçÄÍ tZÌ$d\rͺÄGKÂÖF¶ëÖÅ ‹f^âá%…|É<] ã’.¬ó½ö„b‹ #>C#»t¶jQÞó$lz+û#ílñ+˜FØX‘ÇÇgx}…¦*¾×ÅØÿ’"¼0º€uÉr¸H¶Ì°ÑÂáBç\$[^-FÑE®ƒõcS٬˂äï3æÒ_Á¬Kcùú}tf¬—^°<Þç¾MOŠûö%å`fîš¡óñ`Þùk­wã3/Ò´¼›mpÉ-ë’-‰Oß1³]·.]tó/)ãK¦éb—DpÙÿÓ¢¢¢Å ´¬Ý¾S±&úéÉ.Ñe››þÐwBUoE:'©øQÑáÇ›§¹/ZGnøMØv/Ë6’>´LìuÑù¢ð²ÿ‰cÇŽí ä4"xÁŸþ÷t%oÁÅñ‚‚-ëòN«£Cü’¥¸´NUlÉ+óXŠ. ./¿À׽̌åÍ óýÿïR8?ÉËëm —ƒ¿\ÔÖVÙÖVQ~òŸ>@òæÎ·ŠŠš7>*sVL»Q¾(¼X8£AIeIô÷‡Ë#ªÞÓN?díÈÞ{˜6 ¾Äÿ.Ée-ˆ^ žjBNd»†–K‡ÿ½™(ñÉ¡&\ ë²ÿ R8ÿð¬Ã¼èx±žÊÍ—‘–M†éb—pÙÃýô¼âGhï߮Э•¦›÷n¬å©jÇûøòòÔ{˜•áGƒz^OD [ ¼Px¹üHU¼BÌÃh|áx‘O5çá‘æ„¼yªÊ¬‹ã9[ôb2Gç<Ìç\4¶´íŠÙtᣑ0ÿÒËç÷g°“,›eá|ÔK€Âv$õ2†Tðó^T1?"ŒÆŽ— g4(©ìPµð’ãtÝÙa®+S9á’\ö§¤]z7²]w-ZJŠ-öT—f]|÷Ó͋ċã©ü|yÙd”.–q‰—ýä=CÓ§L™RLÞµy-í>ž?¡ÆÇ¢pÞË Òé„–M½>¾¢Ãbãé/Ÿ~ú¶§i6© }ˆ/¶JàåÑZí†E|¦JãË\‚—ez¢ŸŒìûFÁ¦l‹ñT?ÑØ¢£åÿÕ(ê$êä˜]iŒ‰Q¾¸TG^=~ÐóJÚõUd|§ø¢ñ¤IÜö¦§/j’åüJ˜Éô?ê7,¿Ÿ·ð[±ÿå@÷2ë©FR Cöý².¾¶h¹o¶ý쥥/˹|ºM_Y±"YÁ…ñ…ͺ¼ùBÞGVá´Òñ08:ô¤˜ÇŸAK04ù3ÐWWÝ;Ú|ÙV`ጠ¸$“¾DS}€!¿ä™…ä†KRÙ¿?e-èj6g»5×âK4[|‹ô¤uqÞÏ0//—¼xy¥ñ% Í]lã.ÿSÈ+þâ¢ÐäwµBÅØ—û÷+Hv¼(u$ä•DÍUd0?@ýFê6Ò84¸„ù‰ºáeö KäïÎOdKÖÚ[}O5쬸î»_6ÀÅ÷TWgúÐâHÕ¤Ö‰±c]L¸âóû½yžU8%t çMúëîðΗFr¿ß&eS>·j÷Q“/5ÁÎhÐõd²Ã™È»šfó~I¦ î³"Û}Óø¾DGa‹.Òº¸sÁ4//^‚¼|ù·@24ct±K<¸®=Q¢¿èÅ‹wxÞ#òü–pxýB¶¿²Ä«}QÓ$ÕɨµÑrQ“Þ4 qüÕú­a[þÞ}Yû5ÛÿâO4ì‘ã«Á]*@ùŸê-ÎTãåd˺]~mÃŒ½@ç\ü…óI%ÈOƒÂ1ÿR¢Ã…àÅóV„·Òó`Žj|iÊÊÍ¢¢|8ùD&`ü…ôðp+ôձׂ^ô¯ó'º”-þíEÒºÄÉÓ¼ –WŒ/Á4  ÑÅg\âÅÛÕO‡©îº¨kŠW+ز~!éX Wÿ²Ìó×éòâA¯8}~I9KnÉøP™zaíçÄb“ ¶4,óßpN¬pîJE˜#º OÏw©åxªZ-ñR±ý-¶uºÔXpërˆîßÿÈ_8µàV¨y~+ã ÉöŸ¦ëœWLª«T 0½PÎY˜£ÙT”s†”Hæ’³ «B?;[P“oñ±«%b‹.ÒºÄËÓ¼ žW„/—‚ÉÐÌÐÅg\œpá‘Äš½éÆ‹^üÂó=#Ð˧süåÝÍÞÁM_RõREEÿ¶Ž˜ˆTÒä=ýSž·?VEŸf½ò0EŽî‡R„énŽ—hèúIp— P®§úÐDKœT/ò–c[J\ÀºÐ]_ovÎ?­dÿæöØ\:hy’d»—Ï~ïyËÂá¹â«C\P6æhVåþ!&â€9ìlAêÐ?‹-è’½¯Å•èï,¨öo/’Ö%n.æ%™¼šp0˜ Í]üÆÅj[@µÞæ›^œîj¼4h܉ P¤Ö{âËrï­Ým¥¥m &0õÖ,ªµ>¼è§×[fÑO¯us\Ëu÷øE&üð¥£q=1¼üXÜ¥”ë©/úà»?\ýöêÕÄÿ-wæýÕÛJ‰v«¤VcaÁ–hÿþíwèÒ2~)Gá¼}¶†6?˜°úf„¨Ö›lÒ峯(‰òë½½úíÝ JKk³2G³ª(e…<Ñ}=þÿÏÞÛÆÆqùž-St§%²Wl‹$Øu[…N“R"½C©  Þ6dزaÑÀdÈÈ‚ÛD@^Kñز Ä¢b%¶àIƾ;É]/Dö®fìM¦wÞ^ÎRÀ6,%3ùBc±òa zë¼Öy«êÓÕUÕÕÅ:p‰ýð¼Õ9õëÿ󜗜r5œ•“Uüg¸e²ÁªËp±Œ9fʼn­}êÐÐE.2\ì·Ÿ6Í{BK»hèØNÖWf!½$[™æÒÜPe¥Q ÊÈc(ÑǬ|LÊ^Áw°r…ü§´"Ÿ®Øvè?rÅ‹ý|82ÊJñp`&Ãh·% üÿN K2"ùa«(öh´åa)Z¯atXù¼fµgÐFsUWŒ`ïuqΊ/Ô*:tQ .T¶l_9™µZ*4tõ-º|ÇŽ8Óe—l4¬*°¬cÔëuú–•¯sCÑ 6ÈÛ^aµB ÄÛ¢ƒ+§¹ŸM³àP<øÑ4FP H€Ë¯÷€Z¥VhYÈ*Š=©G©@‚†ÑaÕCòœÕœA½MU]f›¾sV¬xñ¿VÑ¡‹B¸paeKFÝRë…òq}º¼§£]v)A%8¯cäÛÜØɹ±i—“V\¬VVVV8{.4n¬€¬}†Ä H2]öÂòÍRØ*Š=©GY®ÿ²W)éâ9«8ƒz›©ºêH7f›¾KVŒxñ½V‘¡‹J¸ðpáe‹•úóâò ÒÎâôÄÍ'nÍ$.ž±Å¹¹:o>qÍÕ3vþÔààƒlRø^gçMî?•Ñ’×Qè[V¾Î E/Ü´Ò™ÿn:Z9e¥›8ct*rê!û'ÖàÈÎk(§›ª‡ó2†{ÿçN5ÍßJž±÷n><::ú®ÑM‡Z-ídºÈÝñJ§\Œ>ºáêk$«:V±ŸAKMT]ö„1—¬ñâw­"C•paá"É–þ¼õ}æ^¡¥}æ ¢Ôk'Ÿ¾Bcÿ¯t)›3WŸ¸}—eiÅKΜ™·»¨ <+¶¥WÇH/ù˜•I¯VŽVâ‚1´‰2…ÏHƉ,ƒ?®x8‹ ïâÓÆ†úÌ.. rÿ"O*],¶ÀX¼øpæÑý/Ö` G%æñ‚ÊË‚Í0SïÑh?J…‘‰ÿ°s÷¦<ƒ6|:;kéV]}w¯‹kVT¼l†øv ‹.jáBà"ÈŒ|VåË=¦ù ·ò:÷‚€–+ou[¸5¿ÃE]XérwåÔèPwwÿ£üì’™aÀ?ÕBaF*ð²ê›‰†‘î—ß²òõ«—N­ÔV‚tÁg‹=&ÐK—}GÐjâóÒÃù\0·m £’_¾xqÔ2ÚÃÀÅ*ïGð±ñ¾±höh´¥dd dVïIIknlÖ’´¿‰¾RÃ…“.îY±âE|Ξkº¨… ‚Ká[œl!h¡ç _yvôIzÏê - û,ž¼Â(“\ñr÷ÂÑ}p.™a,§æÙÉqÉ4¿aÌR°€ïÀcø 1¾ÀwTmÚÐ1ÒK>fåcÒ«•ÒŠ—.äàJ.Hº@ÝV—½!=œŽ¸²yðž6v}4f«—ßYÿè¸qd&øÆ¢Ù£Ñ~”¯Fk"Yà[N|Hïøµn\·L'Ÿ§ Qn™`u[©L•žcÉxÖqìÔ7Ò†~eåïäШ•Š—.ôTd.@º\ú%uäæ 8Ç’}8çWRƒ£x§äÏÿâ…q”Á‹è‹nFàQ*ÀBÒÚÚÏ:].sÿ}öqn$3ÈÕÈ .*éâš•pÏ ±rÆKÓ0]œ„ »H¬È¢¥xòʄ˕¾zúÊ6¿î|rup.5=씦燮ONãCð{èìw°qâ.ª(uL!\”÷c&©‡ÎHî&J†.ûŽàÆ[jÈ-à¾gfÉ`xÄ\,¼T¿ºù:5¬+üƒ•ÑèèÃñx}cIR&°VxÄ·Ü¡ÃÜM‡I :9ÂE)]Ü’pI¥ýs7¼4•‚¥‹Z¸°{[^ãÐ’}ö ¥Î¶”^v‹õª2Œ·'\®3p)X¿‹/¹ ¥ H€{Ä/†…Ke=‹‰‘.ü5Ç”.`”.-@¹@¸ôóƒ¡X…αÔ`ätó tLÙÜöV­åËÅ‹oäð"úÆ’ÔX\Èb¿ånó_€“Ô*¸8KÇÔéðìÃKtQ *[†N>ŽMjÏ*²}åôv=Å4Ëè…•eJ— vƒäI¢\j¶tÙbübX¸¤Ç¸ø+]x¸ºÀý-à\C‡À åò–Z<”Yè;‚2ëD¾´•7ž³Ù6Ä ’//*ßX’´ÀâNû-·/‘.KÃÒÅY¼†—é¢.Œl™Xžeß&*¶LL\¹R,€,–PY¶¨ô ¢ËPÙ Y{•ÀÅ–.Œ_Œ—­b¥‹D´¿%eŸ0c.+“Z[ÀW“‡l¼À§ë¿õb,£ò…à%ñyK]²0o¹DºD.¤‹³x /ÑE%\ìhËÐõÿ6‘Ù21ùöÄÅ:`Ád{$]0]¾mo´ªBábKÛ/F„K)‹ÏÒE„ ¤Ë-tË4ýä9xnþ$7([еÚ¸ª }]Ãâè—m°xŒÊ‚—Ä7Ö Xtȼåé¸x..â% ¼EY¸p²E@KI`ËÄääÐàŠ;X²¶tAty„«Ësô2w*]¨_Œ —ZŸ¥‹‹.søÖ—‡¨tyÞír [¬tàä/h÷ËÊÊÜÕq&ú‚ñ’øÆ‹&YØ·\"]"OÒÅE¼ƒ—`è" ¥lo“ÒWO_á½aWe°¤¦§ÉB¤ t…}nQæt‰ë·»ä-G¥ õ‹Qá’ÀÅoé"ÃeßCørâ#ûð cýùÓ“6ZD¶pxpúú(º)låØspñ’//‰oL –7>þØYØ·\"]¢OÒÅM¼‚—@è" ¥lo“Ò³üØ+Y¸·\"]"ÒÅM¼—è" •l±Þ&‚fQïSsƒƒƒuÉ˃S¾»2aýM†Ëí+]°_Ì. \ü–."\À:1x`ØCÀ¤Ëœ5¶¡[ìu‚5[X¼@ñ²l¬ü%>æØ©|AxylÇúÆ”`é|¦ó£fȽåé¸x”.®â%¼øO^¸(eK¥ŸÓ,ª},`óÊP=²TÒàUb½Ë¾"Òå­m.è-·ÒÍJäËŽˆpIàâ·tà‚îo±P27ö»ü|xÀłޡïÂ/H¼¥ >feåØ#`ù‚ðòÜô©Á²{÷3Í’…Ë%Ò%"pñ,]\Å‹ÿxñ›.¼pQÉ–ÂÛÌÍ_W•`9uqòj²àåÆÀbáH—̶@ —+œt~±~[¸$pñ[ºðpÁ÷·¬¬<4xñâýù 8ïxÎ0®® ³Åê²…Á /[k =ü$VêSX¾@¼üä‘åsËÁC~…Ë%Ò%*pñ,]ÜÅ‹ïxñ™.¬pQÈ–Êu›,jÅrjp{èâ)W²°÷±t[ÿ^§Ò%kÈÑÃeû-Vº@¿Ø:¸$pñ]ºpp¡÷·ÙV$OÆu$]NñAàâÎ/H¼¬ƒèýøÁ›o`ù2úÖn€—é‰âsKÍ/²o¹DºD.MHwñâ7^|¥ +\$ÙRx{ò´»b´>²>q#K•ÝÇtéòÖ6¯]\¶»éR²·„Cá’ÀÅoéÂÂe½¿e_­ÿuD ]®X!g‹i°ÅÆ /à¡[ß'n¾sÇ|yøŠ—xûÆÁâ'Y„·\"]¢—&¤Kñâ3^ü¤‹-\DÙR@šehÈY±Ô#K%G/>ר:–. ñt¡p¹ÂJ—4Íq«–À%éÂÀ…Ñ-à ±·!] t÷¹å¢Ã/H¼L‘Áô X¡ŒùòÐ4ÆKl}cÎ`ñ™,â[.‘.KSÒ¥Žxñ/þÑÅ.¼l¡qÅâNì ˨è\c“Hºd¯X>ò9¥ z˽aeþ#]¶xá’ÀÅgé2zˆÂÅÖ-'Ñb.S·ÀÇäàJm¶ ¼¬¤Ž`ñb†ƒàüdè!´òÆx‰¡oÌ,þ“E|Ë%Ò%*piJºÔ/¾âÅ;]Î---½, —ÒIºlb¹pbæüùó3/¸‚Å,lŒEI—Z•îu~±Ó%JüúÕ!äÃÒ…øÅ°p‰\„ >+ß üúèÅ‹¸PÝòÁç¸ÏGz¬Áðƒ¿Ÿß$«ÅôÙñPžä/fzzzÞ'U'ñ—Ð//ý~6°eÏ[¹%²Ho¹6.aÏ `Ês ²ú禤 /ÎugðÒl½Òå,º¶Ì4{ϰÂåI[¶L^Ÿ˜)c£ù°¸…‹ ]Æà6ý¯àz±íí“5B —Ò6rŒé’æ„K„à"thðYQ`ùù‹?Ap!ºeeðmÔã³ì`ø V. ±;ÇV~2Ü‘«Žâ/+Ð?†ñRø† lÙó¶{vM – È"½å¢/]žA•ç f04!] xY̹Ôà¥ùz£Ë‚UnnWWWŸUö›D¸ž:=Ä\ôõB™1š—ÁâL ,.téÆÒ¬ç‹aºçÿIìCÒ%›ç„Ktà"vhàYU |Ψn!l1F¸Á€”Ë7d ÆËgeUÕ±~|xé(ûÖÀ–=o¾g%°Hù+tÔ¥KØ3(¨ò^q‚ oÕT?͹×âe͇ ä‰. 93·w¦ûMs ‚å‰í¡!fËg¼Ñüpj΋#YÔ`q¡K K—·À…1%BY~u:Æta6çG .B‡žUpZx¹&ê–ÂÔ_ F–ry­q¶¼¬|f:TÇ_,¾Ì ßñ¯­yÞ‡Ž>ñ3¾¥ó,X‚%‹ —¨K—°gP€È.a6ÐÂËšéCy^è²™3ûî­’´7g…ëâ>–;’5q ‹ X\èöº\ßBëÅÀùb..Ä1¥ ³9?Zp‘:t#ଂ,p~ZÐ-SŬl„OEn-VzÂt®:Õ/©;¦o ÿy“‹c‚&‹Âùqéö t©àr~Í— ä….lÁ««{Lóyy˼ÚHM–z`q¡ Øë²¼ŽÖ‹Õ0]ì5±Ø1×áïÊ™ÈÁEÑ¡g‚Í*Ð?cu :žR6:á-õªNâûóþ50ÔçÍïÕm, ¸D]º„=ƒ-ïØ4Ð].›æU6u™}Ò>–;²Qù¢Š,Z`q¦ËWè^—? õb˜.ö† ìÒeÁe,zpQtho Y[`Ùz½#¶“U#¦à‰-õ«ùò™ íy‹«ÂÖV¡E—¨K—°gPÌfl` ô@—7Íý\Á«÷¬ï«âéÆó £,ú`q¦ ”.Æò6ö‹º ¥(\°c Jì‰ÉF.Ê]2«€ ü ²…ª¯6ñ­ª¼yjÞ¿†ô¼&-7~EaµYTp‰ºt {ÅmÆÕ@t9nîáK^Ýo.²Çæ_ZŸês6di,ŽtÒå)£‚.ø>ÊÏ'l¸Ç#]2у‹²CÏ™UÀÎphq0úA€ <ècCzÞ‹Òrc« É¢‚K䌅=ƒâ6cƒj º˜æ=¡ä.¼àØË«SãýÝÎFYžòGºÀƪ“x½¤Ë4s‚"rŒ1Òe,‚pQöÕFY\à»Ål|Òóž—–;XL%\"¿×%ì·T=ÑE(xõ³<=÷ðW\ŒNî,NtA‡#¿fûŘkމc,;x3ZaýbÑ:þEÕW½AfvíÜÀž÷üÿÃ.7v²:Â+^±›/òÛô“ÍúB—=æKÝFMÎo] tëÅÐA•â­U'··¯~^½¤KzŒñ‹Eìl1ûJ/«° lç¶ìy·¨ ¸D›~2 £Ù@Ot9 ©¦%OFÍÒIp¾ØP¡dÃe…|cË.7¿[±ýbQ;¸ÒǾÒË*ìÛ¹-{Þ­iƒê’èŸ0– èh6Ð]zͽBÉ}æYOFÍÒJx¾ØupC% 98ƆŒQ¸M?mûÅ"w*²ª¯þ«Y­øp ¡70¤ç‘6¨àÒ‡#':š ô@—sfYtÉ™›žŒš¤ ”.ð|± pC%…ˤíÛž„Òåè–í‹\ŠŸ*úêÎ…}^òÒéöR~Æ¿‡ö`ÐË*€ÑçcŠn”'(¶ÁáÈç’Éz ËfN[Ÿb9–Q“tÒž/o¨¤pÁtÉLÇ”.Œ_,jp)V ÷徚‡gAñlJyCU ×‡ö`ÐË*€ÑçcŠl”pi‡{]6“Éz9 æœi~­„Î]öhÔ] tAç‹ÄžD}rv l±ª@ébûÅ"týŒØWæáao|©Óí%tHt'ìÁ —•ÿ£Ï߯Úbí6=[ —ö¸’ÒǾÒÊ*ìòÚ´žÎHÞ0m²ÝÛ¯>GϨºér/ÖmËx%¦K¦j\·èòí›@ºØ~±hÁ…\ob }EO5h˜/Å—nÇl±újÞ¿‡ö`ÐËÊ÷ÑçkŠdÔpi“+)žê8” èÖ70åµ~{Á~›]9Ó)Ü£eä.Pº û(kµ* ¢K¬?ª¦l¹Iýb‘‚ ½:+ ñÂôÕâððtÊ_ŠbVïËl1^ÿ 8dÔ·‡ö`ÐËÊïÑçûË0jmp¸µª-¤‹ÔW‹‡?>” è–7ÐãÝ”Kàn³òøóøBSFžé¤Ë·È>Ê×èñ/€.ð—Øïu¡~±(Áž–Öêq¦¯þ´enÈ_Ĭr#ô\5–B¾ºMjUnòá„=ô²òyôùœ"׸´‰tú œÇÖ^´º™@m7 Ãš±^o>Þ\B×böžmÖÈ#]à cø>Jv%  |ÇØ[@ºy ‹%]&žÂç‹¡æ\‰¥KDdŽ€múÄ/¸°×ɳµ¢}…ñÒ _˜¬vwtÜD…”8¶à¾ºþØ—>qb$mÌEÚò`ÐÌÊÇHÑiƒ\ÚGºð}Õ,^jµÃkk?sûü†U@g[èflª}FG ]&¯^…~1 ¸¡2ûmH—Ê+@—gª"[h| ID—1öÂÎ$%p‰ƒti/î-O¤Kœé‚¥ËöIúÂ/Ið5üm´ß8ÆNaéRÍF.[Ük…ðÒo¨Ï!+@—Î1-´¯°tAt)_L&B—XI—¦ñâN—DºÄ˜.Dº¦ YHGOæ¤ ¥K×OàOéâ/έO¤Kœé‚¤ËË?/L"\@TÞP éò*‘.•–ÂÅ-­a£x±å דlVö™/ÏY­ïÄ]b?gàÂHJ—$®ŸÀ%¦ÒÅ3^œé’H—ÓI——§á 3O„ H@Ålº”ì½.-„‹[] mãÅ–/6_殓¬ØóÄv#í‚\c¬ra¥‹M—$®ŸÀ%¦ÒÅ+^›ŸH—8ÓJ—«.·áRC~ u@—“tÁXëàâÈ–Æwߨxaä ׊l+’¡vé¦Êen\’.6]’¸~—¸Jxq¤K"]bL(]r™c… Hà…àó*#]Zg¶xÙÚÉà…‘/µÝöþJž-5ª]¬.AÊe»¾XébÓ%‰ë'p‰­tñ†§ö'Ò%ÎtÒ…Kš‰Œá“`†léÒ¸¸°ÅÛ¹ ^ùR´Ï‡™»Î²ÅÖ.µ±Ÿ¸À¸=']º$qý.±•.žðâD—DºÄ’. ï÷ôô¼ÿ—<&l¸0Â¥ý@#==ç{fîé8\Î---½\‡-¶•ÇÝ76^Îý]OÏÌ[0ªã «ÓLü…²¥¶ðƒÅÅÅ¿å=–²AÜ/H†.I\${ºÀý,<题Aôð¢—Õ‚5þ‡ÿt9‘.;‚.gÑ%œ¦Y>1a¿0Ó ñel5ß1\h­zϸ°…±ò¼µã…fÕwK³ï¾Jô˵}ryø&J²cŸ—.,]’¸~Ü3*œábO³µp¤‹by4ÒË^VÎV‰t‰]¬§ÛßÕÕÕÈAà Áê|ðpáÊ{ÓQ·°V=¯µxé(‹Yõç¥ó“Ayæ¥K—v[¿_‚}µ…k5ÎK–.I\?溅›ApáŒ^ »Vo6c¤‡—µœNV.&Ò%~tYÈ™¹½«0Øñ2§.‚Õ@àpáËÛPÇ[|«Õ…á;bV$ž¶÷WZå™»¾@éî«õ"²»ÎK–.I\?Þpf.Ò€·VÞô𲦕•[‰t‰]6sfß½U’öæÌù9Y¸ÈVÝáÖjCË÷±V?5Ŭ˜ubd}2 Ð4í2a_øÀ±9^ºptIâú1Nò :¨3 Ã®ÕF-ÐZ=cêdåV`"]âG— öq¯®î1Í’pQY ½Vò:1kåP ÑBˆ/ó,\ ^þØcZTIŽ.I\?ÆIk†=B¯•^VnV‰t‰].›æU6u™}[:V½aת ­Aö±VêÉÞÌ—;¶[Œ8Ç€Ñ:Ü $Jž.I\?¶Ik†=B¯•^VnV‰t‰]Þ4÷s{õži.x´ ¶VÿT °Vª¬þÊÞºøò’yé >™æ%E,]p¤K×mÒ…aO ÐkÕü{$‘.ñ£Ëqsÿ¼W÷›çb £4úèèÁðß#‰t‰%]zͽÂóî3Ïz´ ¶V‹XALÏ]œ¬¤ÇûKß}Im5}jÂ0Ò㙺¥”¾™Ç{4 }ЬÞÏfžœª`zDíËÒš±œÕ U¼` ¤l{¿º$qý˜&­¹öRÏ Ã0Ù„q2ò˜&ß#‰t‰%]ΙeÑjnz´ ¶VwÕôܨõ2ïq´‚€q%L©HÈÓŒ"«û…‚ňxnôð"¿™n§Ü.¯9*]˜Ð½H—$®Ϥ57ž@ÊÛ ÆÅ¨QÀ4÷I¤K<é²™¾Nô©VèYZ«å«§RÃa.š’•+A€QF Ð.÷Õ2Í^v ÒeÜL€öº¼úè’Äõã™´æFØHYàîÎs„é”'ÐKÓÏLsï‘DºÄ“.Ö× ónýyî²g« kõ×àÀb0‹’ÕÈÛS"`8ˆd!ÿè³2G -¨¼]\ÔÅü‘•emÓ'9‘À¾D—$®Wñ¢17d£Í–ÔŠ'Ì¢¢V/Þö©<óïµk•H—¸Ò¥¶Á|¹g Šwš° ®V'*ÝYtÖ=K˜yÑÊ’!ÆõA00"YÒãEr§qŲê˜Ðbe6:ÀâÅ‚KÇCµÚk脱"ÉvÜ.I\?¦Ikn„=\ d3¯4ò±¼5åm•ÊZ%Ò%¶t|`/Øåt +g:Æõ¬‚ªÕÌ,±ñ s/fvʲ~úAæH*µrjbzïu)añ2VÁ}]’¸~’"š¤ÕÊ a<®"sÁ‹õÁ‡¬Y"]º´0Ѽ}mfv‹Y6[«|Ñ0’‚áÀ²Ž¯ dÑrlt™¨’aoÉr|é?mýx°ðº¥]R/Ã<' èƒâe ötIâúIjOÂxŒ3^Xº$Ò%¡K4Øb_E\㌱w™|ñ¡”ZÃLÊ€a8dÐrûèÁïŽÚk‘Ñ}“_vºÆ …—SsÃ/À5ÅËxïUtIâúIjWÂxŒ#^º$Ò%¡K$Ø’¯ˆxaL>ƒö³(öôO@ŸÌOO‘HÎUf_Ëm0mŽÞÅ>±Û6^¾|Óåí•TŠähá¥DÄKöUtIâúIjcÂ4 '¼0tI¤KB—(°¥„WŽuó™¼¼›Å"Ì1™0`˜ÌÝ'žµÐÄ¢eåáÖl¶Lÿ²·²¼Ø|ž±[³–xI­€_†+Ǧ'¶¨x+€À¾’.I\?ImM˜ã€›.‰tIè ¶Ôjj¼@•À&JYðeYÃ1˜»+ ZF—Á¯½JØ2Z.,/˜/³ ªßÙ_â.C¡ýo׈x)UˆƒLnO×OR›¦!À¨ñbÓ%‘. ]¢Á^ä)§Æ§ðB°BáûaFäW‘¡tíôÏáï’xËôQ𯌄ĸfì›Ù)cp-ƒx™>DÅK‘œ`&7)‰ë'©ý Ó`”x¡tI¤KB—¨°EÀ‹LÕrc1s÷ÚC¯§Ù#Ħ‡*é©ôz…²e<†ãï^_†`Ü¥Z쟟m[¥B¼€3ÇxÉ5%7*‰ë')„ÑŒ /”.‰tIè¶Øx‘ÉR©J;$·2µqÃÏV–÷Kžš0X¶à4¦P/_~‰¢úFõ6üU`i㊗nGº$qý$Å…0š€Qà…Ð%‘. ]"Ä–¿kßY± _æë$ÒÿÈ-‘0©[ÇÔûò¹3É$¼à5cè^—T œ`«$^Æé’Äõ“ÂhFÆ ¡K"]ºD‰-¢f‘°²ÎÆøóÌV™±ZöÉQáLý»:;YÀL_T§ ¯ždñèòpý|:µÅ‹­^ xÉVœè’Äõ“+ÂtÖŒ„L—Dº$t‰ [²È`Ag…±›ø×óG˜-“\æÆpãú¼ºtfÇŸBÒeŠ[½ ñRt¢K×ORÜóá×êFÄ ¦K"]ºD‚-2¬«`(^ÀŽK¨]€t¹¿µ²BÄ Q/¶xGñ‹)‰ë'iF ‡H—DºÄ€. ç–––Î^ŽX×(j%±…!‹¬Xì}/ öôô8dEÑÒ±¸¸x~f²\$Ä 1þ»Ç4CñRé±òšùKðï}µÚ¾/D½¼ªöcP«™ÿOÅÐFãúa?ÁhŽ˜dU+½¬œ­ ÆÁ˘ŒgÿÙ]º„ÞÀv2 ËYtœiöž‰ÐÔPÔJ`‹M‡à=ÙVé’•­Zðõ{¦Ùwî“4*™ñ‹t_>8[¹ó˜`òci/3eœÕ|Çð- œŽ¤lñ‚ÕË„m¥êöÆâúa?ÁhŽ˜dU+½¬êY9† Á ͪ¼æ,]Bo`û ™–ÓeÁjgnWWWŸÕÖ7#óµK®ÇJ§Ua0¼ÌŽ8fÅ8Ä:ÊŒQ:ÇŸžU9Š/”‡]ªubæpVæ¥K».\Í_q˜gíÈ Q/Ÿ•]»½‘¸~ØO0š#&™@AÕJ/+=+ÂPÀ@¼tgfÐ+Qi`;™VÓe!gæö®Ât`¿inDdnHµbØBÈâ Š—‡¬¸XËó¼Ñ€õù‘»ÜÞÉ*Qj cW¼0ÜaM‰]_ t eîyYYùàdÅV/õº]?®öŒæˆI&PPµÒ˪Õ„Á€±ð²ÆÏ h4°-‡L‹é²™3ûî­’´7Ù!׊Þ;9É¢Œ—ûʬ„ûZþA4 ñ–£ü¥“5g ƒsÁ9_д ãåû–vYyd,³š6ëu»v\?ì'Í“L  j¥—U£* sô°)Ì (4°=‡L‹é²Á6tuuiFÁu,×ê„ó6'°8f%]¦0êÀlY¨ø¢Ö0`6Ø©'Ç $^RväÅ0êv»v\?ì'Í“L  j¥—•—U„±Ó+Í 3h`{™ÖÒå²iXeS—ÙÛú¹¡¨UŸÑˆbqͪ, Ei4}béï¢\Ô|Qi˜;¶¨'ÒVým6ò2;¢Ñíšqý°Ÿ`4GL2‚ª•^Vž TFžA½­o`›™ÖÒåMs?×ÐÕ{¦¹ÐòÉ¡ªÕHÃ`qÌꇣo©lÕÜùÃîéŸ7/}Á'Óü«?3à%•¶xéÑèv͸~ØO0š#&™@AÕJ/«¦ ä £šA -o`›™ÖÒ帹‡oéê~ó\Ë'‡ªV3 ƒÅ1«E-FçI §T—/yæå²ðÅ |õ:Âý¯±â¥¬Óízqý°Ÿ`4GL2‚ª•^VMh&§žA-n`›™ÖÒÅ4ï -íŠ@XRU« —t#I•Õüð±k\R€ô5;†’~ý0½†ðbš_Hsã%hõ“i+áLU¾+VÐ¥ê©;nÄ$(¨Z©²zéC1éYÕIÄ1¦˜A:åm´É ³ÀVÓEhèê'ð«jÕWð”TY•Å`¼Êh~ØS’çÆ.EVÊžRØO0š#&™@AÕJ97˱+­¤œA:åõ¶É ³À¨ÑeO$'dzoÙ'ºì‘ßö*£²t)¬S`_Á'ºì ™.{º´Ãêõ/«²]TVžéRÖ)¯·Mž`˜¶š.$•¶É!תǫv‘³Z”_öF^érI‘•²^µK¸O0š#&™@AÕJ97HбòH—KrV7p).C¦µté5÷ -í3϶|røX+UV3³ø¾bw£ê<sœ¾È«[è8c9¾6§”•¸â%gþWlu$µ’zn“ìS(ů×û FsÄ$(Ì t6Øåt¶å lÓ!ÓZºœ3Ë¢ ÐÜlñÔ(ågü«•ª÷)/0a `º™Ë+ó5_òdùð9~+Ü vè J~ \ê¢jà}ù(~ýúa?Á(Ž˜dW+½¬|-PžA›-o`›™ÖÒe3'€´¯Õ+^JycyÛô­VŠð®%‹0nF0ãŒ90_¨xÙTæ`Vˆ/GVR+{)ï+ —úBc¿~ØO0z#&™@AÖJ/+ gÐFëئC¦Å'Áœ3ÍO¸•×¹–^R˜¼>tµÇ¿ZÉ ‘b…O]ªcÅuî’äŒÌF¼p“ãÉ ðeXüؘc’Lg¿~ØO0b#¦õ2AèŽH(9ù!m›•¿ 3h3 ŒæÃ‰8]jŒN¸gÍŽC­eKab{ûåéy¡Vïø×Àÿµ2‹¨°>U¡xŒNü© ÿ„†å‹yÙ`'Ç%«Cçì‹`䥻 µ’¶ækí×ßð¯¯Þ\B×pÎÏlë~[€t¡.P¹ ÏîÿªUïYßhg%åaî÷ ›ˆfðZ2l’î.ñ€Y«²†fe{±Øò.@¼Ô0_àQÉWà¯Öþ6æ  ÄÀ¾Ö9üù©{ïÙpGÌÀÌääÏAíw6^˜ç}ðk­Ç „Ë×Ê£ÞÇ äÝÊ¿Co`0C&È”ŠÆ9særíÊÐÕíGn´/ˆ-P¸`å2‡¾²ƒZùØ@6I‹ŠaNœ™5ŒY¼–¬ˆÝccÙ˜ÊV&Ï †/t Í;ðo/˜/ƒ–x95 ý]Y+KT Aé"¹Á4âú%ðûFÊ*0ÌgøÕäääSS ^˜ñÕz¼`¸(G½¨+txmíga–×¹¶¶¶;Ìç¤×ÀXФg··‡Nÿ0t¼à;¡p!ÊEá$ò=)=¶ã0Œ»Ëú?`À¦:–ÙbŒœÕîááiDŠÈK¼¬¬€£’·àµÌÌhœú¡I#®Ÿ‡p·„JØÀ-¼<™Oð¤Vã……K;'«†Y^§Uàî¸50Bt©]±^ï /˜-H¸lŸ&p12!”­—Œ=y̨¨þZ}‹Õ./.Æ÷-í‚/©ÌÛù€·sµ¢ ì׉ë#éRȶH»`ñ’à%x‰\ºÄŽ.(òR /”-é+H¸<–…p¹ö‡çÓà‹aÆëŒ?ÄiŒ$YޤVxáO£±ª†Äwë—ЯNÕZ¤]ˆxIð¼Ä . ]âGy /”-ù×NC¸¼•=áráÏBõ‹iñEEÇ=–F^Y èr¤&âeìsG%O¨èRÉT}׸>–.ÅZ«´ / ^ZŽ—XÁ%¡KüèBÄK°x±Ù’y —†ËVØ~1M¾ÐÍ•©RAtä²Bx¯_gñ2)Wº¹‚ÝâúXº²-Ó.T¼$xi1^â—„.1¤ /âÅfKé$..¥Jø~1]¾³ÇD­2¶îàd³Ê®Ï‘•cð¨dK¼Ó^úxq‹ëç‰c¬uÚ…Š—/-ÅKÌà’Ð%†t¡â%(¼0l)=2„… a‡ïÓåKFy¦ee«$ûÉ0]hV  Oñ‚ÅËV--ùƲp ç¸>‘.ÅZë´‹-^¼´/qƒKB—8Ò…Š—@ð°¥f  —–ùÅtù‚?®äÅ8LQ ¥ Ê ®3na¼`ñ²^“ÅËú‡ç¸~ž:ÆZ¨]lñ’à¥ex‰\ºÄ‘.¶xñ/,[,á24„„ …K+ýbš|)ѳǤH~j]IÕ::¸’ì{Áâ¥H’I ¾1C‹S\¿dPÇX µ #^¼´/ñƒKB—XÒÅ/>ã…e +\(\ZìÓä 9š|(¦ZQÒ7»F·Ubñ²Lη¤¾±1 /Nqý¼ík¥vaÄK‚—–à%†pIèKº0âÅO¼pla…‹ —–ûÅ4ùBæ‡ÿê7œ£úìÁýÐ㉗uD—ZmŠõe+"^âúDºÇX+µ +^¼´/q„KB—xÒ…/¾á…c '\l¸DÁ/¦ÇÛ=†ø²®Cœ /ULî8Ë~ü//ê¸>èÓ vŒµT»°â%ÁKèx‰%\ºÄ“.¬xñ/<[8ábÃ%"~1=¾°î±šj뾂.8+„{Ï ,Œ[7VJ‹xQÆõ¡tIcÇXKµ '^¼„Œ—xÂ%¡Kké²pniiéìeÿ«ÄŠ/^ËãÙ .‘ñ‹éñEp!ùRCq˜ÂHÏâââ̈¡â ÄË5 ^NÌôôôÀ⎳$Zâvû7Fä¸>èÖ|;Æ´è¢÷µ¬~`5ðo/«Ä ƒ—À†¨/)œÚ1x ¤À˜ÂeÁ_çëŽBÿ´]ôæ†^­ük ÿt9‹nÎ4ÍÞ3Š‚¯å lá… —(ùÅ´ø"¸ÇÆñÞ—Z÷–1SÆ}ÕwBň—é¼ø÷hÑÏâ‡x¡ÝÞwbL!]¶ˆcLƒ.zOPËJ2âÄ ÁKC´ùZí^‚)0žpñ6 ›zÎt »VÍotY°ÊÍíïêêê³Ê~3PññÒQöVžÀA¸0p‰˜_L‹/¼{ Ë—t‰{6=ŠÍýE€—;\fíà?‹—Öè]…tÉÇX]ºè-+`d^º´ëRÎ6âÄ À‹q¢dõi@C´é¯ÆN ^ÖÊK¸hBŸ´]|®•8ƒ¢žè²3s{Wa:°ß47/^:¼•'²E.,\"çÓâ ïCòe„ï«Õá1§†;L¾G©kl¬jãeÄ¥Û¡t)QÇX=ºè-+ËÈÜõJ—ˆ/^,¼Àºÿ¦ß1D›|<$¼¬™O¸hŽB¿´]ü­•<ƒ¢^è²™3ûî­’´7çûìàÅKíï=•'²E.,\¢èÓá ï³äKá¾ØW*¼+¢Õ»ÔÖOè"gµ!J—~ê«C½£eeå¾ i÷¼x©ýƒ•Õï~MRC´©ø’ðbR`,á¢; ýÐztñ·VªÄõB— ¶àÕÕ=¦é·ë˜/^Ê“Ø" .õ‹éð…wR_ýÕ”|º²lE#4ãc/.ÝŽ¤‹í«C½'¨eµÁN 89Î(ÄË  /þÑfRð(”ãsÑ…¾ h=ºøZ+å bÄx ËeÓ<°Ê¦.³7Hñâ¡<‰-’páàY¿˜_8÷Ø•}%ì韑­ú@æS%૦UF½¼t©ÙŽ1wºè=A-«Ë¶¨'Ò¾W/–Õ'¿fÓ§¾Ñ&R(Œã ÝQè×€Ö£‹¿µRÏ FŒº¼iîç ^½gš Š—†Ë“Ù" .Qö‹ið…u9÷K˜…Õˆa ƒÊÆ3ðt—JK·#éÂ8ÆÜé¢÷µ¬Þ4/}Á'lĉ++.¿þÿCÔ{ c_`L—"kŽBß´]|­•à `Äx Ëqs_òê~ó\€â¥Áòd¶ÈÂ…ƒKÄýb|±Ýcª¾z?CLYa5Ö3Ã\2`‹de¬ìÒíHº0Ž1wº¸×Š$•Õv é¸ðÅ |õBF§GGGI­öòtùõ€ïCÔ{ c^`Lá¢×WzÚP·»ÓÅs­¤ ä2ƒ8#_FŒº˜æ=¡ä®@—5Tž‚-²pááy¿˜_ˆ{LÕWr\¿žÜSéÒíHº°Ž1wºx¯Õü°Ló inHF–ÕïºtE(®Ê ¸À¸ÂE¯¯ô:´¡nw§‹çZÍ“rÉF¾ŒOt ^ýÄ¿1#^(OÁ…pááÒ~±ú|Áî1U_õ)Þãu¬]»IÖ1V.^kU®O—]²‘e%Àå×{"x e[`lá¢×WzÚP·×£‹ÇZéÐe—Š.¾Œ_è²Ç,wú}FŽ-^Tåõê²E!\x¸´‰_¬>_ {LÕW}…úïqÁJMÒíXº°Ž±Fé¢[«yºÌkÐeo¤ébM '^<j½ \¼÷•^‡6ÔíÒE³Ve-º”ëÓeOht9 ©¦Epv•¯„±Å‹ª¼%=¶¨„‹—¶ñ‹Õç‹õª¯þ㸘”V ¤?5;±2^t‘zéÂ9ÆêÑE‘•Q«_«÷:;orÿ©t½e>|æÖ©S§>ÀV¿•tÙÌ `ë3.Î¥†ý& /Šò64Ø¢."\ÚÎ/V‡/ªgvÞó|QY¡Üú±x©–ª÷•F%"]xǘ3]ŠV~Š¬Þµ·wÀ¨jeá‚ç‹e´Køâe*^,«.AºDè(Õ€ÞwôöÀSw%pi¬¯ô:´¡nw§‹¿µržA>/'Áœ3ÍO¸•й˥“¯n_<å/añ"–÷£ºlQ .íèsç‹ÜW#è`®wVøMOÄËTÆ/ £1"]xǘ]ŠU÷å¬.×úó"`µšœùrŽßj|‰ Œx1÷0pFéû±ØPø½08ÂHz—.1‡‹òí¦Ó¡ï5+-ºx¬UnS?ƒLÏYA—Ú†i“ížÕ³ïÀ7õÉW‡ü% ¼ˆåuØ·U:°E-\D¸´©_Ì•/b_}£`àsÃØ’ztÎÎ mÍÜzͳ2f ‘.¼cLMÄp?ò€jÄH€kõŸž|jRâË;9.qƒ‰¼XVT½ün€•¤œ@µ #¸æõ¶ÊØÃÅíá¸uèLJ¼f¥EoµzÇ)+n)CU÷™. è½`¿Í®œi‡{€‚Ùö0ö²1¾¼Ez²[„‹—¶õ‹¹ñ…ï«™NB/I=z›f…–ÉTجÐÇHºŽ1][ª[ë!+;@ÈFWY_,£Ü.23˜ÁÀ‰`Õ·ì©ü-_`dÞ`ÊîŒ0Âóözò€K‡ãØ¡Nx©Ÿ•]¼Ôê¬sVì RýªûM—Ú¸w¦<þ<Î?Œ_„±÷¼°åý;¹ Ù‰-ÂE‚K;ûÅ\øÂôUùŸ,¹aØxazеúì—ì L¡Ðcåî Í’J’cL¦ eK1 o$[t1`z$+_`ÕM01¬Z ³xaNs¢‘Hõjç;aØÿD/CNàâåáHFÿô‹/ŒUî§µfèr{Ñl°V î Ä3hÍi0ø0¼Þ|¼¹„®Åì•¡†Œ„a6ì³å¡ËèÀ'á"Á¥ÍýbÎ|!}50Þì"òŶ*æ^8º¦Æ Ë÷{Ð-Êó–Dxƒ@HÁ1&ÒÅfK ÁåôðŲӈ¡€)Hÿ‡Ý@‰/ÿÀÔêÆ /ÌQÉÿos­O.(Â0’˸x8¼ÑQG¼«ùÅÃl‚.û¬Ï¬U}+«V‡o8 ½¬‚  HgÎ8©°‚iš0Ü=/™çŸ½8 ^¦'”lq.2\ÚÞ/ææ³žõÓYîä°‚Dcðó 0ƒð2Åož{*­ß9qbĸ> B¥‹èãé°Ã%×úüâ²óˆaŒUàlam ÀËr¨£ãRÏü„Å #^Æ …·O}˶È/Uàç׺+DºˆŽ1–.,[\Ž‚çÅÿ†+`¬Ä=AŽ/ý†1{ÚÊð.N‡8õb‹—t¡~£ýŸnq/xÙYpi4¹âÅJ»ÁÇ=ÓH—þž¶&NïûšWOiËèÂ*ï„aÅKæ*þ{)_˜™L?òÝš¦p‘Ῐ;_ðÑü`ÙÖ‹Ž/y/s`C%ÍʨæÉš€Â$øxw?̪[vŒÙtáØBàRƒÒÅ(Öm†¼LYÁà}ÚÊð 4–vsx±Å‹UðõXÐ%Â4Ž—.Í᥎x©C,]ü¥Ë‡Á±Ôy0(¼¤‚ír[Á»Ñ(aXñò˜õ÷H,bšs·×. ¸ÄÆ/æÎJŠJqÝ/H¼P¼ô[Y‘ø~…Hôñ5ê²ð":Æ]x¶P¸ éRÐb¹#`(_®/Æn+Ç›·Ñ8ªqx!â%+ºøN˜Fß( \šÄKñâNÿ¥ ¤ËQ$^…—TàÎ(˜í+¯¹ÝañµËwI,ÿé"^œ…‹.qò‹¹ò…ºÇ*Ýã^l¾`…r á8¾jU1`ƒÄËÎj\tŒ!ºl¡pÁÒeJ·!ýyC ›/ë€.G±xáðBÄËxìèâ/a{£$pi/îâÅ.þKH—ƒhuÖÂK*Œn·ÌÕí+o=w³Â0âÅÒ.ÛÚoÆC^œ…‹.1ó‹¹ò…¸Ç*ÝÝX¾Ty¾`ñR¹ñRþ-‰.P¼¤˜Ÿ%ºl±á‚¥KQ¿!UvuÊw¹y 7°x7l>;ºøH˜FÞ( \šÇ‹»xq¥KÒÒ¥ö/á%RÇs æ­îCÏèÆ/@»L2oE/.ÂE—ØùÅ\ù‚Vé®!ùR™Js|Áâe á¥_/àÿXñRc.B¹.Xº€9/cJYöIH—Q ]j·‰xa/€¢ŸÇ’.~Fÿ’Àż¸ŠWº ]]Žñ ^Ráu=ƒ±S;¤¥a¨x)½¾èB=:ÌÅE¸¨àG¿˜_°{¬0–Åò%]dù‚ÅK¡ÿí©"·ÚÌ â%ŸÆ?ãÝ\Å7]˜2m¸`é2Õ@#Š ²êLaÓ僯ŽRñÂ(^@Ø%_ºøBÝ7J_ðâ*^Üè„tAtÁ®1P« ð’ µóc½êk$^JycÒ…]íDÞ(nÂE—˜úÅÜø‚Ýc•"‘/[†/X¼T²6^ªøÔA¼ì.â•c”U, äô’ "]Š «´ãEŒ%k ¯?èrjò©a*^¼@ñ2œwñ¦Kó„Ñ{£$pñ /nâÅ.AHD샵 /©°»_T0µzŠà)tùœßß‚Þ(t.J¸ÄÖ/æÆü£4‰¾¤K6_2X¼LAì­"\Ælã¯*»¶2ÂP¼ÀX>  ‹.Xº¢y•ÙñÂü=›ý%¤ËäŠ-^¼ñò}«ÄRüéÒ$atÞ( \ü‹›xq¡K ÒÓå¨-^ÀKª@R0îæ öˆ-³÷Y¼L_t.J¸ÄÙ/æÂ—nü“±,‘/5ʲô¸ÿ›§H÷ûغ,^ƈ³ á¯Kñ'Á0p!Òeª¡úçÑe35`à=»]ñb㈗ÉB¡ZÛti†0õß( \üË‹xq¡K ÒÓ»ÆP­|ÇKª5@V0ަô¹e3d½Í>Gû]¼@Ó‹ÂE —˜ûÅœùBðR)RùBù‚éR)s¸Ç xÉTè²1"^J$ðB× ãèÂÂ…H—bCµ/J_xèòÁS“ÃŒx±ñÄËÏ­òw]<¦Þ%‹xq/Ît Fº`º×ª•ßxIµì!(ŒJõŠŠ$^Š;Œ.ÞãþFIàâ+^œÅ‹3]‚‘.„.GYñâ7^R­| *#k˜Ô©A¸lì1Y»€¥b‡»ö]à²übN|¡x)Œe¨|A|ÁYž2ˆzâ%›gèÁs œ)³ng…òféÂÁ…H—©«^Ciœ¡ËÃÅìÁ›xûŠÃ /¥H„q{£$pñ/ÎâÅ‘.IBâõò/©?¥‚‘5Ljî—5I»à¥bßpÀ‹.;Ä/æÀ› •¢-__l„P¼@ñ’]/âeØ”„}ù ]8¸PéRl°âBà…ýqº‚è2X0¦N’2ŠÎOÆxâ%»CéÒ(aœß( \üÆ‹£xq¤K@Ò…Ð…¸ÆH­|ÅKªõB­`j¥/®L³„967ÈiºÇå/j¸ì¿˜š/6^ŒtÑ–/_º·`Ï!ñÒ_ÄKŠ9MÆ0ðó²éÂÃH—»•FWŒÕT˜àбZìÕå×&)|>? ÏM û;—. Æé’ÀÅw¼8Š'º%](]@Uo0µò/©(<‹…ôœ??óÂ|ïäÄÅkDÃt,Zé½ÿi7/\àR1/ ç–––Î^v„ ô‹ý5r­•–U»ñ…Á‹16fË—Zž¡Kí{òä¯ßïéé™™EŸ}ŽÅ‹Z9¶ðžõp`_ñpÒåˆǘ:ðßGÇ•í&t_Þ€âŸÏ–=/?~ô|OOž`ÍóPe ³f=£WþöG]ñÂdå­¹› Ô^ønp/ n=œ¿¹žt¡t®±ÙZ©C»Òå,ºÍ4ËÏSó-f'9ŒÃtä°Ñ|\KÆoÎ'x¡YõžQÃ¥–6fgÊÔH§V®VmÈ/…ʘ-_JŒx©Ô ^NÙ}Õw~4{ ŠôëE˜•…¦¯¸@é’/4îs¼€ïEB—‡@°d‰Ä„—«“zÏ9©ÞPE„Y$3¨ü'YÃ7 ›•3\´æF¬&w¼ˆÝ /Î}˜t¡t®±'ØZ©C›ÒeÁjBnWWWŸÕŒóÄC644¹Ìœù²`½(r}¯¼û.xaÌC/ÙÅmv |£|zãÒ¥K»Àúu6½k–¾y{š'ÌlUO´}¯ì“ËëÕªUo\<Ë /ôæJsIg0]FTϦÀÜó²²ríQ(]<:ÆTÛ1ÆhȰ ûH­ _¬ZýþWlz<>OÐÃPUX—V+ÿ{ý ¤[`œ'‡“ ®} taè]c Ôª]èò¦¹ŸkÃê=Ó!±|¼fè¼ù—¯ÿ‹iþ¸&îéŸ7/}Á'Ó\üb…Ey ZµZˆÍ˜gøV“›+)^2h™rZÕW#lä% ²rëQ$]<:ÆTÛ1Æj໹]ƒGÅ–¯Ÿ7÷spùÕoãôªVü~˜ÅúH·ÀxO ¦'Üú*HéÂйƴkÕ6t9nîᱺßüVmS6¿ÃÓåë}æ9l`ïé/ ß¼Àw¯s¼_Ì0ÊŠòÎiÕê\ŒF½Í¸Y…ü‹ˆ—,ôõ«za†/Ö·€¬[_AéâÙ1¦¼ØŽ1V» ר>|ÚL¡l~§Ë¯bõª.V6aru'vqŸ@Í>V&¸õUÒ…¥ tiתmèbš÷„Ft™/]ãÒÝ”iþ‹@—w9#„ÓüBš|Vo¤RåYIe¯°$åKHâ#âúÆòª^à—UÓé´K_!éâÙ1&^Ç«]k ‰dW5Íß tù4žeå€þPLu¬^”¨Ñ¬œv`\ß±X™àÒWJ–.È5¦Y«v¢‹Ð†ÕO˜a8™¦—¯?*)è²K••FyJ«¸ùùóa8÷Xe øÆ*ª^€ã:/Vré+$]<;ÆäÀ ãã´ rí³J.˜¦—_ý>žžå€>,&-+åòšUü'LJƒº‘ .}¨taé‚\cšµjgºì1ËõéòÙHI—r}nìQf%[Åorð|Áÿ@êex³T½Ð‡6[2{^œû IïŽ19ðÂ8Æ8í‚\c¶xÉ(è²w§ÐÅÐHPX)'׬vÂòôpP702ÁÙ(XéÂѹƴjÕVt9 °Eùeÿ¯’glQƒ.—TYi”§´ZŠáèçø"¸Ç]ä^èY6ñâÜWHº4á/¬cŒÓ.Ø5FÅ˸U÷“E/ÌxñRrî+,]špŒ‰Ö1Ækä£â%mÕ½K KLŸ ºÎj,«2¼>[&8,]8º`טF­Ú‰.ç̲èÝ37e£œv‘Œö]Xä÷‚ÁÝ`¶>w_«&/cÎ}…¤K3Ž11ðÂ:Æxí‚]cD¼Àº‹a—x>AßôÁN÷ ÔàŒÝ1Èëá2ÁÑ(`éÂÓ¹Æ4jÕNtÙÌ ŒìS¬L°Œ¤Ë†ÈèÏÚ%|ó²­È}”ZåiZÅ /€/Ø= r_î…zÌ%/ǾÂÒ¥ǘxác¼vÁ®1,^2°î]‚t‰çôi@ìüø³œ'PÃ3vÇL ‡Ê'£ ¥ Oì«[«¶¢‹ÅHónQuî²ÒˆÝ¬ÿ’`Ù2<¼ÈÏŽK¬½R«ðÂ9Æí‚]cH¼€[6KÖ¤êå·1~‚MhÌë]ã<.p'M N‡}[¥ãPöUàÒE  vÕ©U»Ñ´b`/غs +g*#GÏn_µ^åï€=•ÿú®e4suûi‰-û`V¹]dj0Y¿˜fyúVqÂË]?–/¾ p½°8|uf>Á¾ï=•ÿöi¼Ÿ`sÚfËnç ä¡À4´Î"{²½@KÕWK.Ø5V§VmG—Ú¸ª¨<þ<¾ „ËöÕ—{Àǹ2üó…«ÛÛCOKl!Y™`fpYQ¿˜VyXÅ/• Ý¿_ xé±{¡ü ÐÑstM/ð¯ŒÕñ‘Yp¾ ‘.Í9ƸÀ ïµ vAñ’B7Ì 'Øÿ'ØÄ€æØâ<¼¸“&æÃY£—!óâEÑWÁK.Ä5æZ«6¤Kms ݰ٫äã³à¨äÓÝÄè%K¸Àô´Ä§¬¿˜FyYÅ /Ýöùc/÷{ÐõÁ3䉅—+^PŒŸZ½³ÂÒ¥YÇxác¢v!®1,^ †®àZÅþ zÐ"[ü;iéu¹ Y/r_/]Dº`טk­Ú‘. 9ãu}œ’|º›={Õú笎^“ØÓµŽŽ;üª¢¸äб<VñÁ {~r•.M>qb9Äx¼Ì!™PH}t;ô‚¬F±tiÖ1Æ^ǘ¨]ˆk ‹pÊvÿÄäää‰çGvÆl|@+ØSçÚÚÚnŸ Ü1H¯x¼ð7ªpÝ‚téB\cÂ=/Í=ÁT´Ÿ V.ÌO®X´yòéÑ5[,ºX?ä~ÀûÅ’äŠæ|KH„„V¼lªÀe•‡ÝV(즱tiÖ1Æ^ǘ¤]ˆk Š—+à'ßÂ÷T&W•œØb½æ‚±íØÄã…»Q…ëö¤‹Hâ¯Îl*E›.¬r±tõô'¶ÈtýbIrÇ‹p?2Q* ¼ ñJ˜.È û4¸‹¸ÛÇxc’v!®1(^ŽÌP©–.‰_Ì3^J„./X½¤K,^xI§‘v!²M¿øÅ Íw> ¼HŽ1…vA®±t¡0 †@ 8ƺ4Ì–„.¡âÅ– ´ÛC’. ºPטoâ%¢t• ¿/ÿÊ6/*õÂÐ%ñ‹5—<‚ËÔx…£K¡²•]§Û*‘x©d2iBºM¿V„ÖÝÍÖn§‘c í‚\cV™U¸çetòõZB—†Ù’Ð%\¼P™@»=$颠 uù&^¢IA¹ˆg¾Pñ¢P/ ]¿Xx)!ºT@$ƒOfß Ž¼Œeñš1ºMùÖè*煮kõ´ pMÀ!cpÃþäW ]gKB—pñBeéö°¤‹‚.¶kÌ/ñIºðÊEqž/²z±é’øÅšÂ ^6ÖoÓÅààx!‘—*^3F·é£­”Fóx!‹£³uµ t½ b=H¼dº4Ζ„.!ã…ÈÒíaI]¨kÌ/ñEºpÊeŸj_¾-^$õBé’øÅšÃ ~­çº(ðB–ÏX& ¥Ë´‘/¡3ÆÖ+>à]g&.>Sh質T²7ì'ti”- ]BÆ ‘ ¸ÛC“.*ºØ®1ŸÄKéÂ*—}g¾ØâET/”.‰_¬9¼”ÐaÉ•Œ vy2Æ /)ØíPº€½.ùÜJÙí^ò*ǘR» ×XŒ ¼a?¡K£lIè6^°LÀÝštQÑÅvù$^¢GF¹ìs^,BŒÌôôôÌŒÌ21}ƒ»ï¨–á^±º}æ3x8²õë™4¶³øbãÅcÕ+䎗ºÚ¥¶‚Î{j‰—ô|OÏÙp•ܳ^ÙR[øsëIþÍåÈ70âH¯@„ð¤~úÐí?«#]ü¬»²(Û5ÅËO›,/t9‹î×4ÍÞ3X¹Ôg‹ ^ˆz¡Yõˆ_Œi`„²ªƒt|ØLÎîP”u/ÃËÄj¾cÝñÒO·úçK/^«Î“Ÿ¥R»d.³Æàc†;r!õUôÆ—g¶„6¾b?ô <Š@å5éâoÝ•ta\c»íZy.¯åtY°º,·¿«««ÏjÆyKƒœþ¡[DñÕË e&«ž¨øÅ¸¾•¬ê%í:ðø§ƒ ê{–1¶`¦Â:Ç:À§—.]ÚãyèfÐVÊ*Þäû+8+OU‡« Öµ´Ëø÷áYcððýåB뫨/ïºåxû¬='f/k9f½VÝÕ2Év-”›/¯ÕtYÈ™¹½«0ØošÛ£×´Ø"Š /ÏóYmDdnøW«…\‹#Vy~ Óïßµž #ëà€—J ñrÇš»¾@é’eeg, WŒeÒ˜/ë0+U¯è¯K kì©Éɉ…H†0Æ—g¶Ô’ ~ÝB¸0h#¤º«éB]c¾”×bºlæÌ¾{«$íÍ™óšl‘ÄKí³ŠÄìØô¯V›a6pÝ0îçÌòo¾$éÓœ…pÉqÞó’§ “­o8_д âŨàc„/÷½W½åЯ£] à»eI—G"9Â_¯xeK¸ã+öH»ÀgÄ ´NÝÕt!®1Êk1]6Ø6¬®î1ÍM¶HâEÎ* ®ckfK–0ûl¸|ùå÷Ló8bŠ—nä³þ`çœ' æð}È•ת£Í”RàE¥]2…ÂÏÁè±è2ÉÁÊøZóÆ–dµ¨îÒ:JÝ`ט?åµ–.—MóÀ*›ºÌ²&[Dñ¢Èª·õsÃÇZ…ÚÀ-Ã1Íÿð%›ö›}â^ Õ.vrXÚ¾mˆ!jÃâËHUÇk£×5´Ë¸UêÖÏ/NŽDr0„4¼±%™@­©ûeyõ†Rwº טOåµ–.ošû¹6¬Þ3ͿاûÛœxQeµÐòÉác­BmàºQè1ßåàòåoLs¸ÆŠöî—©ñóÒ|2ÍB‡ö‘G“yÜ{Õá­”Uå)–’vI[…Þ´è²2y>’ƒ!¤ñõ³ÝÑ_±Ÿ@Ú¾©˜@ aÔÝ.È5æSy­¥Ëqs߈Õýæ9ý_gÅK“YE³e¥ã3Êæ÷xº|9`öl ýr÷é! ëC¯‚õ}» ß¼Àw¯ž?€õáCCWvãÔDÕá­”y9ð¢Ò.`ÜP9YŽä`HÆ×Îj ªÀì’jIF»¨»ÓÖèó©¼ÖÒÅ4ï èj$|ÄŠ—&³ŠfÊJÇ1f˜æoºxæëO•°V7;;B†uz¯zaE¼(´ »àÃ÷£9’ñµ³¨*ð•N!©&dÔ@ÝérÒÅ—òZK—^s¯Ðˆ>ól#Øâ¥é¬¢ÙÀ@²ÒqŒu÷šŸ té3g˜û]*Ùb¡°Ü'-yÉ™çÑVÊZ­-'Î{®z?>|_¼ÈÚ…]ú'-º”#9’ñµ³¨U`¯ÕÏ™~0„º;Ò¸Ææý)¯µt9g–Eïž¹ÙPT¼4ŸU4DV:Ž1Pžè3ï˜^ƳÖ3ü^0¸lxzŸ˜Ÿ‚x™ñZuìS^dí‚Â.ßšœÇjFr0$ãkg5P«Às¢x±&Ðá;^wçã˜?:|ا ÔZºlæFö5º2Š—æ³ŠfƒÈJÇ1ÊûT.…'^¦Œåû9á»:ÌçîQ¢>À¾Ëû^«^!ñ)ð"kvy ]íbFq0$ãkg5P«ÀMÅquž/ÔÝ™.È5æGy-> Æ"÷'Ü¢ê\£— 0â¥Ù¬¢ÙÀ ²ÒpŒÁòØ/ïš¹‘Y/c[Öçù½Æ—LóŒä¾@ùÒ#UýÇ8ÆY»À° 8|ÿ(^¢8B_›È*i þŒ]’& äó|ñò;Ó¸Æ}é«VŸ‘¼Á@òÞ~Ó|§Ñ ìÈKÓYE³dUß1†Ê£êå7è˜1û†J”F‡çÙÙaÍ秇9¾Xò¥0 Tý„Öm•yz+¥x‘´ »€Ã÷O‚UcÑ ÉøÚY Ô(ðÐÇâzg÷‡ ¾ø^w—‹ÊÀª±—ü(/Á3°lÝ9Е3½DŽìecMgÍ’U]Ç.¯ïQ°§ò÷[åÍøB00àLbkväv‘©aÎÌo |)ÁÃ.Ùª[F:x¡Ž19ð"ivyÊ¢Kl¨|1šƒ!_;«u <ô1¡³©øâwÝ]è7TúQ^ëï¦\wæ”ÀŸÇ½Ãìyi6«h6WÑÁ7;Æ@êUïæF zß$Œà2<}Þaf†yü¿üœåKÞgÙÃôÂèeÈšŽ19ð"iv·RÖŽ‚S¶‹=‘ _±Ÿ@a7°N‡à} ÿ 3°‘‚/>×Ý….è¬1Ê‹ÀÍÇ›KèFÏ^†¿ùòRÑ?gÎxRñ÷¼\ëè¸Á7À™3?²ÞyÇšÌå+'šé«†cµja¹PÌœ81‚× óxAÊexþ0eu;l`…˜Pý2}nD@9qâFJ /F¯ˆQ» ° tŒÕàYcW ‹6ŸŸx~¤¶#’ƒ¢smmmw$xÃzçík.—}V7ž@ú‡À…tûa¾*ÿ˜uw£ ½¡²ÉòR1˜YÜ=/àâähVó®U³&'Ç1+‹CWÓvŒ¡°ÞÛF• äCáBàb)øÃø»õ¿“ €¨~™~¸F÷¾T3ºxacRàEÔ.0ì‚c5蛺çsëµ$5FëͲ;’5{ªY“êÿ+‹'¢Ò.°Û¿&6Pß.ä†ÊfS艗èÒå «fÍMŽ}ÀÓp-ÇXÊ*+x©€ÕbD¹•ŠèrÊúßÖ¿×áu_ë¬~ñ}¼uÝûR/¬cL ¼ˆÚ†]c¬]cÓ  ]âD—CàܤcÌÊâPTšÃÂvû3rƒã‹]È • ]ñ]ºjÚ5c×ÒvŒ!éé2þºÁã¥Ze”‹±Uëª ì’OYÿÞB翌ó}.¾ÏÊ—ºx©p</¢vuÅŽ1ä{¹˜Ð%^t©5탎±HÂu»ªAñÅ•.¶k,¡ +^¢K—æ]cá:ÆtAt)xõ2{ÄŽ¹XÿÌ—@·WH&‰¼)ä»a<Ÿ[ŸÌÊ—:xácRàEÐ.0ìBcµ¸¡òV-¡KÌèÒ´k,BŽ1.¨ÛÕ †/®tñÉ5 º°â%ÂtiÖ5®c KD—ƒüJä#1ÀpŸ}í‚õÇ AÏ"˯£¿,ߺAùÂÊw¼ðŽ11ð"hv!ޱZíA°j,¡KÜèÒ´k,:Ž1.¨Û_\éâ“k,taÄK„éÒ¬k,\Ç–.ˆ.µ)[·}.D¹@º€¸ l`ª $ëÃÙo±ùÂÈW¼T„.|àEÐ.0ìBcÅYpÖØ‹ ]bF—f]cÑqŒIpÁÝîØ@ÿùâN\cñ  #^"L—f]c¡:ƈtÁta\cÚçrc‚]¥ è’/¾ÞŸ¯ØÆëc%•';)_ùâ‚Á1&^í*k;ƪÐVºÄ.MºÆ"ã“Ⴛݥ~óÅ.þ¸ÆbB[¼D™.͹ÆÂuŒé‚é’•ÜbÏ1 ÉÒ.†qËúó&`c]…,™MwÛ|±å‹3^ǘxáµ »Pǘe¹Œ\c ]âE—&]cQqŒ)à‚»ÝµþòÅ.þ¸ÆbB[¼D™.͹ÆBuŒQé‚鏯ðj±J¦J÷XögŽAºLàŽ g]Bù²uÐæ •/ŽxcBà…×.0ìBcUz1¡KÌèÒœk,*Ž1\H·»7ÐO¾Ô¡‹/®±¸Ð…Š—(Ó¥9×X¨Ž1*]]ˆkÌŽ¹T¶ "yØíÖïN£:fŒ‚"üògßÍR¾!òÅ/’cL¼ðÚ%må’8ƀȩ³ÆºÄ.M¹Æ"âSÂ…t{½úÇ—:tñÅ5ºPñiº4ã Õ1fKB—,¯\>*UB— ìvë6T^Ì—q>ÏKK¾Ô¨~ùÉE,_Ôx‘cBà…×. ¶Ô1(T„g%t‰]šrEÃ1¦† éöú ô‹/uèâ‹k,6t!â%ÒtiÆ5ªcÌ–.„.%V¹¼…±Aãï‡Ý^)À •F¡Š ‚Q`‚üéïÖ¨~™Eò%£Â‹ä/œvaâ+"BÂcøºÄŒ.͸Ƣás€ ívú×ztñÃ5ºñiº4ã Ó1ÆHB—<«\Ö‰j!Ú$º½ßú‹½¡²°…õ†‘gW‘M}•=Èó¥º%ãEáã/œva—׉c¬ŠTt%t‰]špEÂ1æÚíZ ôƒ/õèâ‡k,>tÁâ%Útñî Õ1ÆHL—’Áís館€n·W "ðLÕ(^,\°€)–x¾¤ / Çxá´ Øíò9vŒa邎áOè7º4á‹‚cÌ.´Û5Ø<_êÑÅ×X|è‚ÅK´éâÝ5¦cŒ•.˜.0„ž-&à¬HüxŒl¨P)1xsòïð¢pŒñN»€êÇX•p ¸Æ.&t‰]¼»Æ¢às†‹Ýíº l–/uéâƒkÌ;]Î---½ìƒ‘Ÿâåǯ,..ž½ÙÉáÙ5¦cŒ•. ï÷ôô¼ÿ¿ ÷¹ˆx9ouû7F S°“ä~À—<}üSÀ˜Ç'3ôË|‰ÃK÷:£y¾Ìޏ&ðÂjv™DŽ1[º„>úüŸ@¡·!Ú}Öœk¬5Ž1®Gçà"t{C øÒÀ¬G?ƒ'º,äÌÜÞU˜ì7Í ïF¾>ɰ Ó5¢cŒJ¡CçrÉç¼k^F,«G¿„é÷ïšæÀ4j }A²‘O³xùmÀp|©ó™À «]¬l–±cŒJ—h½Ú…݆ö˜@]c-qŒ‰3H ¡Ûl Ë—Fž`ºø2¼Ðe3göÝ[%ioNY´–‘Ÿ)ôÃt…é#ÒEêÐùá‰B¥D"Æ–%EîçÌòo¾$éQ`ˆ²•6XÈÔùbÆæË õž xa´KÆvŒQéíÁ W»°ÛÐ&È£k¬Ž1yÕ0z©ÑÚ|iä ºÓÅŸÁà….lÁ««{LóŒG#?Sè†é Ñ1F¥‹Ü¡ÏÏ ýy/ëЊ˗_~Ï4;`BÙªeÒ*¼ ùbTÒháË|½'È^í2n;ƨt‰ö`Ы]Ømh“ äÍ5ÖǘÇåZà Ä|™oä ºÓÅŸÁà.—MóÀ*›ºÌ^oF~¦Ð Õ5¢cŒHE‡ö}“¶x)%`õû/Ù´ß,Ãfð~H–/6^°|I—Ð2eÈ—;õŸ xa´Kš:ƨt‰ö`Ы]Ømh› äÉ5Ö Ç˜×eÙC_Öz‚®tñi0x Ë›æ~®àÕ{¦¹àÉÈÏzaºÆBtŒQé¢êÐp¤#^¶,«w9¸|ùÓ¼Ä ò\¥x!òe ø2_ÿ ÚF»ØŽ1*]¢=ôjvÚfyrµÂ1æùE¹æÅ÷·ûÃņž +]| èrÜÜ×¼ºß<çÉÈÏzaºÆBtŒÑcªGŠ!ññ²nY}§Ë—æ"l`š·Ìò…Á •/5˜ï—ë?A;ðbk— uŒÙ Æ¢=ôjvÚfyqµÄ1æùE¹èmY\cOЕ.> t1Í{BÉ]rÌGËÈÏzaºÆÂsŒÙ{]T:>M³§Ršæoº<ãúŸ§¦ÖÓ8Ñ_¡?±>D†üCã Ú[»ŒSǘ½×%ÚƒA¯va·¡}&×XKVŒy~QÎ{[רt¥‹OƒÁ]„‚W?‘rZFþ>Ê Ñ5¢cÌÞ¦¯êÐ>éÚÓàòå÷`àe°ÐpÒy‚4ðbk—4qŒÙÒ%âƒA¯va·¡}&×XK¶Rz~Q–½-‹kì Ö¡‹/ƒÁºìÑé´=aÓeOT'Gî±ðcÌ6}U‡ö-ëÐežœ5Ö,]ä'H/¶v¡Ž1[ºD|0èÕ.ì6´ÏjÜ5Öš­”Þ_”ÞvŒ6ö¤ËžÐèr@RMKžŒü}”!¢k,<Çs˜ªC{Hø½äëaŽáoˆ.õŸ ¼Pí’!Ž1FºD|0èÕ.ì6´ÑjØ5Öš3Ƽ¿(½ímì Ö¡‹/ƒÁ]zͽBÉ}æYOF~¦Ð Ï5žcŒ=YÙ¡Yt%% ¹ÔƬ?ûÌOºô™3§`ÑŽY{Ðó-Q¢‹Çtž ¼Pí2NcŒt‰ø`Ы]Ømh£ Ô°k¬5gŒyQzÛ1ÚØt¥‹OƒÁ]ΙeÑ%gnz2ò3…^`x®±ðcìáÈê²o¤Ìt[ÿ7c–Eǘyž5VTÝfãÅæ Y<ö¾Î$ª]ÒØ1ÆJ—ˆ½Ú…݆6š@ºÆZtø~/JO®±Æž +]| è²™ÀÖ§XN eäg ½Àð\c¡9Ƹ{]ÔZ´—#§ÁÒäû9A¼”Íî±· ºãE›/H¾Ü×y‚$ðBµ qŒ±Ò%âƒA¯va·¡&Pƒž£¾ßċғk¬±'èJŸƒ—“`Ιæ'ÜJèÜeFþ~S¹À°\cá9ÆXéâСق-^Ðéû&·ãå]3÷å+À5v"c+ë‚Ê(_@VuŸ ¼í’ÁŽ1NºD}0ȵÛôlv­ÚÑ5Öª[)—tzTÙíÞ\c =A÷“`ü žÎHÞ0m²ÝÛoš‡4ŒÞ úY†^`H®±Ðcœt©ÕŽÎ«:ºÆŠÌÅa¦­^~3€¬ž…«ÆA¦ŠYg¼P¾@ù2Pÿ ’À Ñ.ãØ1V®JŽö`Ы]ØmhŸ Ô˜ç¨U·Rúx^§G•ÝîmÕX#O°Îɾ †”×q8°ì·9Е3ÍÅá‡ê=Êœe <ݹјk,4Ç/]Ž‚c%ågFVKÕ‡—¾GÁžÊß?N­@¯S„€x©¦y¾@ù2Pÿ âÀ Ñ.iä¤Kä_»÷"2 Ûg5ä9j‘c \6¯Ó£ªn÷xÏ@O°Þý.~ wS.kËÊàÏÜëM¢Ä g´<‚µ <¾P‹òähÀ5šcŒ—.GÁ©Å‹r‡®÷•øç?2 ìg4 tXFà /=uŸ ¼í‚c¢t‰ü``çÆÚá#2 Ûfýÿì½mlÉ™çYj’¢(‰lM8Í£jk̘1&J—Ñ€Z˜¡XÉîR¬Ðác«î?€áÊT¼À ²=^4€axQø".œp`â…j—v0ÆÚuÒ¥nŽVÒÝŽÌjŒ£Š$aŒIp u´¹å[M>ópt9Üq(ºc½X/„.T¼˜ðÆê¥q„¶ÆL+ Ò%.…,-}¸ÃK‰maL*› á½/>Àp¼(|ñö} 80ñBµ c¥\€t©“OrÞØ¡l’#|„IÆXõpñÑ%ögžzºo^O¼hñ½À/»ÍFQµ5fÊËyÒEβr~¶ƒþþåþ–ºânPØãÅ/2_*ÉL¼ vécìûu-]Bxc‡²IŽªú’Œ±àâ§KÜÏ<õtqJ’xÑáèÒÆÄKÓãïNHkÌ”1fyÒE O·ŒÀZc›QIúzW÷ ]ñ7¨.5&¦$l'&ñ¥¼|ÁÄ j— 0ÆÖ­º–.!¼±¦5V{HÌcµÀÅO—¸ŸyúéÒbQ‹Ò <`™—¦7ÆßÖ˜)cÌ“.:¸xl!"$_úÚ=ñ²{À´‹ ^à;üK‰€w«ùR^¾@âµK;c¹ú–.No¬iÕóÆXMpñÓ%îgž~ºÀW&/ÃZõ‚ߘ{L¼4½1v„´Æ c[ApØ" $;!ˆ—B;Ó.‚xÔ.5&†o†,ò¥œ|Ä ¾Wܩ¢7Ö´Æj ‰qc¬6¸hèó3O?]`¾/uê{k\¼4½1öÆLc\ºøáÂÙ@!kŒÈ’]J—ƒB‰ÑÅ/pƒRâ%0í|ŒÀ—2ò/ ]:˜1¶UïoC%o¬iÕÓÆXpÑÐ%ægž~º€cÏÄËæ¤/àŒ9ÔsÅKÓcïN(kÌ 1¶¥…‹Ç–‚· 1XcD[d/»Î¡K§$^àu{¼hÃçÁ| ”/x¯– fŒÔýëPÉkZcµ…Ä´1V+\4t‰ù™§Ÿ.ÖçÃÆ^×à…ŽÝãâ¥éÑ#”5fÈcÒE…‹ÈaóG°Æú˜5ݕйÁ¯éöx) /}Aò…P´K;5ƶêÿm¨ä5­±ÚBbØ«.:ºÄûÌë€.í¢x)®O®©x¡t¹æ‰—¦7FßÖ˜Aclˉ-ްƒ Xc.V¨x9pÈlJÔ,\¼À Îë/"`f|KÅx|Éêå ùë&ïÕ<5ÆFŽÀëPÁkZcµ…Ĭ1V;\tt‰÷™×]о`âeÓzUÅ S=À'ì7½1öî„°ÆL­1†ÒE†‹Âißzb˜5tÉuŠân°½âÏú×"ã|Ù-éä‹[“ù7Ü“Ÿ£ÆØÖ‘x*xcMk¬–˜5Æ]â}æu@º .›óò¶õ‚‚¶–íž'^šÞ!¬1sÆØ–•-Ž´ù#Xc9"K¨x) ]v%ñBnð•\`âE‹ ˜yLY¾µu‘|ªPcläH¼¼±¦5VKHŒc‡‹–.±>ó:  ¦õ¹x)®—Þ—ñÂöá¸&ˆ—¦7æpç( ÆJ.~¶HÒ­1%T¼ ]€*\¼óz Ëý²Üó´IŸˆ¦]À&¹ÄÄKÓ c™3ƶ8\ôlQ¥ Zc8Å ™ïR(QÑÂÄ ¹Á¬Š‰/ `²»:ùRðè²~t¤Ko¬iUsÆØaᢧKœÏ¼èÂv·½Ýxc¥ï xáÚl ÷,ß×ìâÝ•••[æö, w½Øk¥Xc¾ëÅmŒ‘ þÅ]vQð…K[ß¾õ3t}äN/—_[^^¾õ—Ôcâ…Ü`&DâEÆ‹ ˜’N¾l]>ï^ïµËÓÓ¹£#]*ycelÓ (Ü㯕õ‚qcÞõ —Ź/ôϘ³ÆIŠû•9,] lnÇ*zc»Ž‡®]À&!‹%¯íædoìî¯iÛ=7Œ´Œp×3Q+ÑÓ\/^cŒ_°÷ê=„K [|Ò’CY’ÍÍÎñS¡7ÆÄ ¹Áé‰/þÅ.%ùrK¸Þ’.¼±@›Ät wAµ’Bâ¿`¼Æ˜p½ÃÂ%0VqYc†^™ÃÒ…¥õKÄ[Y[BëkÜà ×.è‘îæBIôÆÝûì?{úôé^÷^øê u=RʾÿØýþ8kåYcºZÅjŒI\ ëý`¶ø¥ Xc9”%?™Nu°ÂÄ ¹Á{!‡q(x Lûw¥ª¿{´¼žrÞX€Mbº…» ™$„DW«81¹ .e5fì•94]`×Y²(ǵ=ðƬ>ŽO»€ zYðÆûíþSÛp¼xÖ¶÷co¡®ç–²}‚ÇýøjÅ­1m­â4Æ” .ä‹oXlÑHn•ÔS ‚7FÅ Xc¹0‰^ô€¹løI7¦µIL7 p4Ô€¼èj§1¦6 ÃÀ¥\@ã°ÆÌ½2‡¦ IëÂd 8>ºÞX©ÀðâiôÀkçãÆž÷۽϶Ùqª?îÖîzn©þOøq,¾@­1}­b4Æ|\˜´‚Ù¢‘.ž5ö_ÕS oŒ‰rƒB%^ôxñ&÷™á7&EÞ˜Î&1Ý€Â]ÐXb!ÑÖ*FcÌ߀Fã h Ö˜ÁWæÐt!iý,|Äî±m(qÄËc®]ÐñÒɽ±}ñF··OÚv¼Öq¸ëí‹mZGLµ¢Ö˜¶Vqcþ ^ f‹Vºpkì]Í©&¸x¡ÖX)\µ´xQ3høI‘7¦³IL7 p4Ö€XH´µŠÑ‹0ìåOƒ5fð•94]HZ¿,EØà8C½±qŠ—¼§]ÐPoìm¿¸-§íž8›F¸ë=ðT=Óö1Õ C¢¯UŒÆ˜æ‚½ÁlÑJjÍ_Öžª“‰6j,äüÙ¼x€Ñ]¯Ç9RGoÌo“˜n@á.h®Ñhk£1aØ+*rkÌä+shº@Z:ŽÇ­èY}^ÚDÔE½±‡öYéF·ŸÙöbŒm#ÜõÚ÷?‘Øj!Ñ×*FcLwÁ?ÿn`ñ-íæhלê2ñƨx¡£ÆBÖ,/ 0ç ¿1©òÆü6‰éD[«±Ã^éT‘[c&_™ÃÓ…€¢¬1G÷5ôÆJ†¦]¨â¥€ÞØû¤|§Ûgí»1¶ Ýõþ¬U=®(_^äÛ+¦Z‘Œj£§1V]ØõÒ…ZcsšSÍ®PñB­±™°U+ƒÌœá7&UÞ˜ß&1݀µ ƒ C¢ CŒÆX„a¯tªÈ­1“¯ÌáéBÒú#`!8º¨7FÒöˆ—6ÉBñ‚Þ˜m?Sîôt¬iIÝõòêaÛŸøGLµ‚h£爱ê¾°o=XcºS œJ/tÔX)tÝÊâ¥Úª5oÌg“‡¶ )‡Á„!ÑÕêÛ1Ž‹0ìOµ5fò•9<]HZ­1/ÌgxáKZâ)`Hž]ÛVntûãX}cÝõæBÐåXlµÚƒëi¢çTʪ ]¨5¦;U/¬7FÅ 5~áÒòx1ýƤËóÙ$ÆÃ¡»`ºÄ×€ $ÚvãTÊÃ^ñTQ[c&_™ÃÓÒú]¸æ‚ƒzc$õâÜ7 Ak ô]âùïô¤aºœ ¥]blZºœ´¯Ä9•²ª°I´Æt§ú®7†â…ZcákW/¦ß˜tyc>›Äx8tœK’.m»Žq*e„a¯xª¨­1“¯Ìáéi}­1G7õÆHê„ à =ˆ :º¼èSi+±¶ ÿõ^›v.´µ=¦ÿÓ û¯ŽÇ³mÀÐÅ_«å8׫&ìÒ­1í©`½1/tÔØLÕ+‡ÓoLʼ1Õ&1ݿݦº[­Ögšãc†½ò©"¶ÆL¾2Ðv‘Bk ‡9ÌÛetaxAk 3/äßõÚ§”;íµoÅØ6z4×›Çiz[Ù‘+¥yé·ÿ(gmÅ7$sšZ-c\c¬§Š°J´ÆôO×âGñ‚£ÆJÕÔ¯ ^z ¿1)óÆT›Äx8B]°Ç—Õï¯V$$ ºãc†½ò©"¶ÆL¾2ÐÒúÔCñ½±qFŠ:{ÅK¡dÍÚsªh?±mÜÕ\ï3a&8æ®< fƒa©ã†dYS«Xß¿>ìe¤ Xcú'ˆkñ£x¡ÖXU ÆË]ÃoLʼ1Õ&1ŽP¼«Š—c1ÖŠ„Dׂâ\|?°W>UÄÖ˜ÉW&º@ZŸZc̳ú]6xjŸZc”AÖgý H{ãñò\s½®¾qq—0ÿ_¿òíÕo¿‹ëÍÇ7$OýµZˆuñýçáÃ^Fº€5ðÑñBGTUÃ@¼<7üƤÍSlãáuÁçþc­Ðóµ 8ß0ì!N­5fò•‰€.Öw¨5FÁÁ¼±Ò׉Uæ£ k!ƒœöù×lûciäu¼;Üõ]ï'ð.fVžk|ß­UáÀ+-`öˆxQkõOñîJy7lØËI´Æfõ§o Å Ž›©®†x¹køI™7¦Ú$þpĬäBÅÿ®¯ÅX+?²ë®”†½ò©"¶Æ ¶ è‚i}j1p0oì%øOŽjÑÌKá¥ü‚ðÕñì¬mÿ æV»¯\ïJŒ"aÅÖqŸÖ*&À¨Qøë¸w¥Üö²ÒG jO…Þˆ´ÆJUÖ0/û†ß˜tyc>›Äx8B]p_×€b´ÆN¨µÚ‰yWÊÃ^ñTQ3÷ÊDAHë3kŒŠêÍ_DØ0¼°5ç‘A£Ø±ž"ó{^<ÝoHÐîK×›u‘(p‚Æí2û±¦áÕ*À@HäZÝŠ{WJ5 Aa//]è„ÊAí©À'âåË8j¬Úh•ËÑ7&]Þ˜Ï&1ŽPÜ×7 Ø¬±3r­~ó®”‘†½â©¢žPi앉‚.ÖgÖ/Ô»ƒÈ<¼Pk tÖ‰9Oöš$¿^1±bÔŠp½Wš—ñÂ3¶ ;·‘–aÏý¥¸¼cô€¬HQˆwWJ_Ã^^ºðµÆ´§o Ä Ž;¨¶†xY1üƤÊóÛ$ÆÃæ‚g„w­0$R­âÝ•2ê°W:Uäk™ze¢  ¦õ™5FÅ õÆ.²•`(^ØvŒ{t,YñâúgçqÎCŸ¡ÏW¼ëÁ^%#º>Ê?]Æíugsl,YL€Áˆµ:·1¦†¡Fé–áÿ¯ºS7FèRZkl¦êâå?œŸ3úƤÉÓØ$!ž¤ñWgchhÙÔC¢!ku"fc,â°W8UôËðze¢  ¦õ™5ÆÄ zc½½)/£E´ÆFé@åß[V.×¹ÚÒòÔdÃí¸zõ2î½¬Ç ©Ý^ß%·VdÕwq´r €á;T¶º×ƒXÅoŒÑãÆ² ½JÒ…íPéÊÍ< ;)ç~£ÆJÕW//¥õéiþî¡÷Æ´6IÛÎÎN«ÑÊ•uÈê÷C­¦jÅC2´³ó7ìòk)h@UecÇ•Ö=Vº`ZŸ[cL¼€76åþÿ‚#à%ÖŠ—µÒY»«îŸÒ…í^€R¹Q‡ÔJ­ì&:ÀP·Ðáûx0ÆÂ¥ ³Æ\Y¢{‚í”.¥`ÔX !Òã¥Ïúþôôäzî¨ÓEïim’6Ò™§¨ê®tzb¬V<$pU'Ö])ã:ÊÆ*†*‘ÐÓúÌcâ,r ÷ xÉ{£ÆòùÖì3ÉÑE‡—Qt¦°Çôχᄉ0Ì-l¥q3bŒ…8*Kj•ôtoŒS`ÔP-^²Ö£éééÜ‘§‹ÞÓÚ$)£ Jcµâ!at1aŒ™¤K ;TÖ]0­Ï­1&^ºire¸Tñr‰cm[ÉÓEƒ”.BL˜(ì1¦]Œc‡–.ÌëÔÒ…{c“0jl¦–JèðRʹpyÔtÑ{c:›$etAéb®V,$”.ÆŒ1St‰Ç«º`ZŸ[c\¼Ðe`†a¯/m,§¿îv`í ÓŇ*]”30‡ µÆ˜vI‰1Bº0kì@Oîɨ±RMµðã¥Ï"tù~#ÐEëél’tÑ…Jsµb!¡t©Cc¬B¬êÔ‹„.4­Ï­1&^¨76Œ{½Hæ˜[`4R(%L/TºhzÌ Â0Ô£Ú%%ÆX(éB­±™º0o ­±Ú”/YkÝ¥Ëz#ÐEëél’tÑ…Jsµb!¡×­Cc¬B¬êÔ‹„.4­Ï­1.^Ðf-âem`Ä‹Û$M/Lºô˜„9 `¨5FµKJŒ±PÒ…Zc¥€X1o ¬±ÜAmQñR"Iýéu«è¢õÆ46Iªè¤‹ÁZÑ ]êÑ««ú´Æ¢¡ ¦õ=kŒ‹—VF–zax!Ë€x!X{Òt‘ð¤‹<’MO˜ÚƒÖÕ.é0ÆÂIfuÅ ½1 ¬±™«"ã¥Ï¢Iý† ‹ÎÓØ$©¢ “.kEC‚®Gc¬R¬êÓ‹†.4­Ï­1.^øzc<õâ`Î…tßÉσ ï¸2ÙWøè"à…K§ü8i-aj Zc¨]RbŒ…”.Ô;ŠõÆÀ+ÕZ /Y‹&õ‚.:oLc“¤‰.\º¬ Ò¥±J±ªOk,ºÐ´¾gÉâåËâ©—Qo¿—­"c雬Nswí§‹‡.]œÊ³p4„ùn-€Ak µK:Œ±°Ò­±ÜL`¬„Qc5?a/% ËñF¡‹ÎóÛ$i¢ —.&k…!+×¥1V1VuiECšÖ÷¬1eØØ–ˆŠ—k —J¦tÙM”. /žtqÂÍñÔ¦£jÀ€5†Ú%ÆXXéB­±Rp¬Ú½Qc5WÇËû!C’úoYB7æ·IRDOº˜¬†èR—ÆXÅXÕ¥5 ]XZ߳Ƥ ûùµWiê…ÃÅý»ïX/@Ë\o¡£ Å‹']œð+ø 31^`Àí’c,¼t¡ÖØ;±BoŒXcÃ3µWˆãÅýIê¿Ü0ÚEãùm’ÑÅ“.&k…!K×¥1V1VuiEDšÖ÷¬1i©ä|~õ?Cêà²FSœDñÒÍèbÎÓÒð2&tîÕ­O#&—Ûjß-… Xc ]FSaŒ…—.tÔX™qÜ+¢F /%Lêw4]4Þ˜Ï&I]éb´VB—ú4Æ*Ǫ­±ˆèBÓú‚5&nRéÿL:‡7òÞ2ü€—Ê JcÞ˜ž./EOº8Õ¯~¦jIÏ” H&ŒTcUH´ÆÊŽ)og£ÆæóñÒgAÚåÕF¢‹ßóÙ$é¡‹ ]ŒÖ BB®]ŸÆXåXÕ£5]XZ߳ƨxi¥+W®½‰º€ïP x ›T’~¼d™óÆèât’­4‹5Ó¥aʆ„dÃýÿR*Œ±j¤ ZcåèÞŒ;8L¥/%¤Ë+D¿7æ³IRCQº­„„Ð¥>±Ê±ªGk,"º°´¾`¡x!t¹F@³ÑÎá>P±ÿ… "ýøeÎ ¢ qŒM«¬}åæ`Âf€e£Ò`ŒU%]À+?ö€Yc3‡ªVCH’ú_i(ºø½1Õ&I ]Déb¶V$$Ä«Oc,D¬êЫ.‹wWVVn±-hZ_°Æ §þ‡?[^^þ»ß‘~óªþ£×/ä›}í'?rKÝú󯼱 ºÀòlZå"Ôªæ=DÂ\ž=þüìÿ˜+˜½|Ë29ž¦À«Jº€5vùµ²±j‡Qc-Ëç…7¦f¼¤þ¿]qúãN=r*[êÿ‹â)6Éâ7Ýðÿ,á¤K„µ +7$;ЂvêÑ +rƒß\9\ ªöíKˆ.·po3Ûî¹ý‚56šoé§…Zè§ùä8÷†'‹ø­¾ÌJõ^5åѤ Î{Qo°vÂÌÏÎ 7˜o²(Ìý¡Î¤‹Ó5Û_!V…RÎz­ÿð¼<šžàTIáÞ/^jnGòÆ$›$’W5réa­Bj€÷#s¿;’/ƒwƒ†"š]ÝÊõŸ=}út¯[Á‡äoXZ_°ÆI0îß¿Œü¾@G‰áψ”Ù‚EaZæ„Rçsf¼±ºÀ\˜|Ùwƒ5?Ou>§·ÈH@y&ü®W)]CÄêàò\$%£ñ®ÎEöl’ûT õ~I¥$o̳I¯¤'žt‰°Vác•šûË`"¢IÑÅåFÿ©m8^³ÆÜBýŸðãÁËZ¡D‡Lášóÿd+¥xczº°iúŸin°ÆÃ«AM’ß«DGuÒåy˜X=( YËŠðÙ$v„ ‡¯Ô‚à1kìyšÂÁ¥ËóPP¬RÔ‚L¼ qG41ºì‹µÛÞ>iÛ7¼´>³ÆöÅÇ ¼%¿ÑAÛš¤Û1úK]5áéé§éko°¶Ãª«þQdþ($h W)]BÅ*ª€–¬Ü`tÏ&±#\8ü¥voŒZcûi —.±6 }¬RԂ̼ 1G4)º<°í·Åã´Ýã¥õ©5öÀªL®Îåó·'`Á±\挮To΀7¦¥ _aLƒ5ºS}C­|Ù…žäÞöê¤K¨XEÐ>ˆUTÏ&±#\84¥æo ­±i —.17 m©µ 3/C¼MŒ.í³Rí¶ŸÙö¢—ÖGkì¡}ÿù âe­›@¨äv`héJ]6àiéÂ¥‹þk:N%͇É×Da1©·½Jé*VQ4KbÙ³Iì]©ÏCkìašÂÁ¥Kü ÈW*E-ÈÔËkD£Ëû¤\½í³ö]/­ÖØåc‚|N,çó]tí­ë`éJ͘S©£‹·8²þk:ÊœÊ#Ìœ& w“zÛ«0*VQ´DbÙ³Iì]©eaÜXcWRoÀ˜™$•JQ 2õ2ÄÑÄèbÛϔ궿µz)“ɼ³Jò§K¶ý‰ïy“QÉðSRÖ¶Ô•40§RGoqdÝ ¾Û^Ó¡?0º($••¬v®‹î÷k*ʳ":U¢G¸{ЕZæT‚5–¦pxs]"¬•¶=Q4µ c/Ã~œL.Jí¶?Æé,âáÞÇü…´¥zsñÏ©ÔÐEØ×Ewƒ½VMGͱJÊ6®RºhcÕSS¡0Ƙ> õ–x wÚWGXo ¬±…C˜¦a­‚¢ ijAÆ^†ž8/˜"ºœ$ûÊ=æ\8ºXoLCa_Ý FF—±J¨mT+]´±ê©©P(cÌŠèT)ëPN†êPÜWG\ol ºÕÔ„C˜¦a­‚¢p„éöeè‰ó‚ ÒåEŸ´Z®ÜcÞ÷Ò–Zi-~?]颽Ao’}•t©1Vÿúÿ© é¢ÕJM…BcV4§JºC sºR+®Å ºÕ´„C\a,ÂZiPºÜ¯—·¢ö—a%Î &F—û”R½^û–0[ŸŒËõúFqôÛÿë‹סß'žÓ”ºUˆ-~?]étƒµºSÍÂý·OttL´Ã˜1]¬fï}áŸ;¿êUK—p±Š& YŒUdÏ&±#\8´¥Äµø‰5¶špˆ‹#ÇÜ€t±Òô#Gþeˆó‚‰Ñå®=§úvöÞ¨7[FÍÊÓ›`‚ÓÓ%Xp?ë_pÿ¸¬)õ܉-~]D颽Áçµ]HwªÏT£UføÞ½/|¯#åÒ%\¬¢ h cÙ³IìÐ…ã¿´u‡ š¸¿+d–Óiqä˜ÐsM) zÒZ·/Ãs'žõ©â Ëó~…~½$Q½7Êg뻟À¹Ïú•A‚ý͆¡boÀ¬—"˜Bj)2|!voÌGQºèn°ÖAšS}uF¥ËÐÇŠðŬ‚©^º„‹U$cìÿžŒîÙ$vèË …/ú ‰ûT¢5–ŽpHûºÄÛ€öµ¥|-È­Ok}¾ ûN<-(òSÅA—~öÇÒpiû)¬€<ƱÆfepܧ… `7Ìz!*_SKõ“b÷ÆTºŒÊ;Bún°¿æ}ü§úïüœŸÄ øbPÁT/]BÆ*Š€âæ.ÎG÷lü^Ud¾øƒF>1oŒXcËÚBÉJ— ªGÔ€žëK)-"Z| }ƒf#š]œ}á‹é™Û6þ¾H±16­1ë]ñß'3õù±Ý;Yk,¿ –‚­³âöÆTºHÒÅéÚTnðµ_JÕy Œ•ØdýÜ …Ÿ­ÒH!_ )˜¤‹æPs¡ÆXnz:Âg“Ø¡†ãgO†4|QKaÛ¼1¢c¾ŠpHÒ%šç]Ý©ö•ôwÕ _Bß Ùˆ&FR¿ÁSdR΋§ûm{v~ýÜö†{£¼ŸÊº…ú±§-”º Ç)^¤RAŠÙSè"K—®]Ë”nðÖ!_)VH–ìHÁq:f(a¥(¸×kUøbBÁÔ"]|7xë…*c„.Ó>›${ùZu|‘K-}HÚ†àÁ„Êý„C‘.Q<ïjOµ¯´ î¶ºáKè4ÑÄèâ¬=zæɯW.Ï[ó¥Ž6‘/¸Ö²ÉöûŸÊƒp—δ£5F2ûr©µø½1….’té‚õYþB¸ÁC®Â#ÄjÎ% ;0¹ó^¬æðz>¾Ä­`j“.Ê˰¢PÿŸtU4ÆÖ]º|5ºg“Øá™Ž/b©ò³ÉõÆV’‡*]¾¾_boƒ¥ê‡/UܠɈ&Fçù îÙsËÍKÝ"_pþ›t¯ÎÿL—üÒôz†þQ)x‰×“é"I„KV¼ÁC]i¢ÝúìÕÐÎÎßHQGþX¸XEQòâüÃØÇÃd¢8 U/Ö:ãËG÷Ü¿8“¯úXkex‰Õ“è"J .Q…eð³#ß­øoZÝŠ ‹#Ê\Âp¾¬þó÷bU0µK—jŽ6÷V¦~ûÛj1ƶ ír}zú"†¤Í9z‡–/ìEexáÞÛ¡ÒiÓˆ‡d¥K"‡†ruÄƒÇ Ü{®.èBñB2õ¯0¬86ŽNpÙ¨/^âôÆ$ºÒ%¸øÉR׳ÓËôSÂ|ñæ%¾ÿõ7âS0‡”.¡{O"Ä~{±jñ{f]ÜcøèÒ¥,_8^¸7Fw¨L–.Ò% tiòEst»ÑX3phè‚xÎÐáù—"Ñ17I/°W…xéæx‰Ñé"H—àR+Y8]¨K&æb†…(|=.cFº8¹‹U‹bŒÍ`Rß=6é—ÈmûÁ|axá޳ƒ¤Kz¤‹€¹&_”ã¶‹ú¡‹‡ÒI3¾¸Ý6é1_«B¼´9 /1zc"]<érX¸†,”.Eþ=.Fà‹SˆEÁ’.޳ ‰—jÅ 1Ʋ˜ÔwâQÖ.eùÂð¼1f%I—ôH'°&M¾Hù(­#ºp¼tâä|Y#`i¨&óÒÅñŸ7&ÐÅ“.‡‚ËaÉ"i aD¾81(SÒ…%^ª/$ ã˜Ôçi—#L—`¾0¼0oŒZc Ò%EÒÅ)ù&_„ÃPÚ%:º0¼Œ°‡YäÈ^Uâ…ã%6oL  —.µÃ% ²ø´‹0_¢V0Ƥ M¼T)^ÀkÓ.«ºX5_(^˜7F­±é’"éâ”­J“/<†Ò.Ò…âeœþWפ7µÅ ke óÂñòݸ¼1.\ºÔ—¨È¢Õ. a8_V_îp¢U0Ƥ $^Š«/ı]HÚ¥íˆk—`¾P¼PoŒZcÉÑ%MÒÅ©º&_ð0•v‰’.l`2ý¯ 4öÚü˜–.›EÚiP¼ÄåytaÒ¥¸DI–@í"†óåÎ#˜•‚1']0ñòv•â…¼X}<©O^’Ö#¯]ùBñB½1´Æ’£Kš¤‹S±.M¾ÃTÚ%RºÈx!c‘ß&SdUó'q^eñf^8^bòÆ8]˜t©.Q“¥¬vóÒ&ãË4θŒDÁ”.x®N¼€16Á’ú$í²ÚÚÚ%ˆ/ˆ—VôÆÐKŒ.©’.NÒ5ùb.í-] QBñB¦RKÐc ŠEo‘ñ5aòw˜x¡xy?oŒÓ…J—êàY*jN˜V¹~!븄9´‚1)]àØ|T•xc¬%õIÚåqch—¾ ^n‚7†ÖXbtI•tqBU¦áùb,í1]&,Ž2ÑeÊêkURö SÔ$±¨Ìyñðò¯bñÆ]¨t©.q‘%”vaå$¾ÀœþÏ¥`LJL¼äª/ä£KJ»´6ŠvÑóñò¼1°Æ’¢Kº¤‹u Îci—ˆé‚ˤ^ˆ16ie¡Pü±ü¥%€•†q¼\ÃctAé.q’%´vÑóÅ%Ì+¿¯UÁ•.˜x™¬F¼€1ÖÁéB>EœÆÑ.Z¾Œ±ã§`%E—tI'tmš/ÆÒ.Ó¥`1¼€1æþ¿1»Ï+æô…UÉÖÎxx)NÆàQº t —¸ÉRv à‹e¿þz- ƬtÁÄ‹U…xcl‚%õ!íâ4’vÑñÅà ˉ„è’2éâTÁº拱´KÄtþŒ1Ëú~cnMV|MÞÿEÆKÄÞ¥ H—Êp1A–ê´K _¬ÜäëÕ*ÃÒ/¹*Ä cí,©? \i,í¢á ǡ¤—ÜH¦—O™tqªªN£òÅ\Ú%jºnx„ô$Oÿ=÷÷ï@_0B7¢Ž€ –›ÒœAŽ—ˆ½1¤ H— p1E–jµ‹Ä—Õ7ÅuÉÖ'ß®JÁ–.4ñ>óƘC±ë˜vi8íâç‹§^È_%B—´I§JØ5&_Ì¥]¢¦ Iët–¬iè¸É @øÆÜbQzG÷’ž.¹ßî |áx‰ÖCº€t)“d©^»H|Y:#­KV‚1-]hâ%÷jXñƘûÄ~ˆËïCÚ¥µ‹/^éæÓ&]œªëÓˆ|1—v‰š.}0[¿³Dæ­\sf¬Ëç———ÿî?å3²æxxiY&ìæ~Ô^ý1Ž—ÎÅ»+++·"ÙðfñÇçÏŸÿñ_‘}h‚àbš,µh…/ª1—gÏŸmöO*(Œèœ7,]hâe÷;zñâ{Î`ŒM°œ>¦]G»(áùâáe‡´ŸŸ=¨îT‡®Õ?î¤Lº85Ð.€/¡ba@ã{c|‡¹´KÔt)À"üN'ñ·®wþ7óµíÞ«Þ”vÜtè¾/-ý´ÔB |Ôf÷Äü âez–ªçÆaëxëŠw½1\’ KmÚÅÇ ÕÜ—Q0< ½WÍJšxɽ¬/¼Vü9£1ÖÒ…§]E»øÃ!ò…âe¹?LÛМêеšÛI•tqjÒR¾„ŠU„÷Qn×\Ú%jºÀ‡&JyÙíäúÏž>}º—ôä~lºÅÒÞ¿ÿX?–*^,ÁØäK¬Ï¼½†…ø©ŽìWÄZÍ«pIŠ,µj?_¤|m:`™Tê/ ·Ô¨~ñ"Õê¡`Œ9LºÐ´Kch]8$¾ •;ýBzXå©]«Õ?]|| «ÿ#Ó.‘Ó¥x‘©”¿è·ûOmÃñâY/Þˆä§n›8ö ÷±ÔÔûD¼´ñ>ó)$žjÿ0á—O5(Â%I²Ô®]¾ønP›ƒYŒ.¢5˜xÙýš*^´µc¬ƒIšviíü8_Ö.BÚ¯öTÖªné"ó%Ô ¦3 aje0í9] ­O¦RºDè}¶ÍŽSý"^®u³e-Ÿº¨ý„Ç/{K¸Úë3ÝBò©j–ÏÕZ fÓA–Ãh‘/¾°êF‘ùÂ`¶u`â%WPÄ‹¶VhŒM0éBÓ. ]Ê>$Æ—!µíW}ªkU·tùæÓ…Pµ2˜v‰œ.Ö'ÆØ‚x£ÛÛ'mûÞÄIì` ”Ð6 u´ˆö±ÏôŸªf£s_wª4åpÚÅ)«?‡L¿¬`ö£‹h­ÝÌåñ¢­cíLº ³7ãèk—  ùâo@7ª?U„µª[ºp¾„êmÒ…0µ2™v‰œ.Ö¿ zãÅmñ8mÏI+½¬RUrLl®¶Ÿ6©Ä>Ssªžk÷@sªtå°Ú¥l¬p,™§`þ$ºˆÖv`âeבÄËm­Às˜tai—Ð.*>$—/;þÔSË©"¬UÝÒù²æÓ…Pµ2™v‰œ.Ð\"ßÐg¥Ý~&ȲLe÷|ißÿD>ñBÚз4§Z¬­r5§ºœ ²^»Tˆ†*˜×¢‹hm&^¬‚$^tg±&]XÚ¥´ËÃÉ}Þþ´XÓ©"¬UÝÒ…ðe9Ì ¦3 ¡je2í=]ÈBén0gŸ”ïtû¬½ì‰—ÖÖÖ (uLi÷½Rk­x\Ñœênm•Ój6d‰B»Ü +B¢`梋hmM¼HâE[w4Æ&¦•´Kh]8þ¬U9®h¯PÜ-ènjbÁìÎP7˜Î(„ª•É´Kôt™°,2•Ò¶Ÿ)wzZ3*Ù¶?ñ5Ž!ÿ©jL¢éN5˜ ²Dô=^9V„0F´vŽnkL/ÚZ¡1ö«i%íÒÚEÛ‚”éùCÚ4ä/k JO^?º„ºÁtF!L­Œ¦]¢§K®1fÛÊnŠ.ÇttñŸª§ÖøGvªtj—p7˜|0ñ’+ˆâEW«Þ1Æ ÓjÚ¥´‹¶U¦Ë1-]¤EB—7˜Î(„©•Ñ´Kôt)àcþ;=)¤õËÑe®2]NF×6N¦‹.ÅÈér2]L‡/¹Q¼èjÕ ÆØ+ÓjÚ¥!´‹¦…¡Ë\ºÑ ]N†¡ËÉTÒÅ_+£i—èéâàcêð¢Ò–Šı弴œòj›îT+µÆ?²S¥U»„¹ÁäÃ@/»Ž ^tµ:ïj—..¤´KCh8¾Ý¦ºä+Ô8-(º„¸ÁtF!L­Œ¦]b K;1ÆzìSÊöJtÁcÎ7ä¥ß-õÛMi³äoiNu«¶ºõDwªtj—p7˜|hâ%WÄ‹®V³Ä#Ò凤´Kh—P©GÓ€¾ÙãóNw Š€.!ÞÆ(„¨•Ù´K ty6|¼kÏ© í_jlYž ³Áòù©Ü°\ȪçµÕínt§J§v wƒ)M¼âEW«Ï,k¤KIN»4€v õîj·?r Ï;Ý-(º„ {£¢VfÓ.1Ðå1YîŠ,JpJÁèB>ÏŸS9¦|y‘¤~ql²(ROUëø M­R´Eßãán0a ‰—]Ç/šZ‘elºˆtùþ–œviíê!¹…| HØ9úçî]†=…QQ+³i—èB2*_$ µ?–F^ÛOóSl‡JÎŽ×d¼Ü'¥ À9º<ÿ*ˆõTÿ®v¼+§êOÑî Q|‡»ÁäÃ@/¹‚$^ÔZ]ž·f@ºäŽËi—FXgÌÍçñНIû#Wsª#Ђ¢ØÍ,Ô FP£oŒÙ´KôtÅ÷ç²èGÒggÉüâ:Û¡ÒÛìeAl÷…™ú{˜÷¿Ô¶…äS­ ÔZ=µV?HQwÉ÷x¸L< ,ñr ˆ_­®’cu™UN»4ÄÉ!ÒÀ‡jÚá›!‹|‰ðy§¹E²Wf¨Lg*ÕÊpÚ%zºÅ÷§æ;ñVO‘ù=/žî·IJÿ¥Ó>©h Gÿ1Ö44‰ÿµÇPH>Õ¡ð"œêVšz“h¾ÇÃÝ`âa ‰—]G6¦ÔŠL¥ìé²u\N»4Æþ.ÒÀ‡dÕE© ‘E¾Dø¼SÜ‚¢Ù‰9Ô ¦3 je8í=]ˆä˜Ä­tÏ“ýŒæɯýO sJ{šÌ>9HË€Rþcit á©æ~GV(«/+^­®,¦ª3‰è{<Ü &šx!Ö˜0çEª¬1Ò%7£¤]doÊ iõÐÜŽ<ÑEàK„Ï;½-(º„»ÁtF¡|­ §]"§ c–5îþqÄúì<îÁû.‘$ÅuË*u^SÐA: ºsëÂr^\jÝÈ?]ÆS ΖœÃáåù nÚs+e}ITßã¡n°0IÃ>8{ÄͲÄË$^xÝ–oÂâû°ÂXÎzEI»4†v©ð(.ò­–}ó(¾DøÚ§¶ED—p7øüGý)ŒBÙªN»DN0Æ,«Ýýã–•³FZ[Zž¶‘¿Ì_$«E–¾¦À…&bÜRùàã£Q²ý±[èïiÍ[}‡Å‹{ܸñ }]I”ßãoð` Þ³¬Ý¤Pz‰Zcò>/«ø2\‚å¶ß"ÒÅšº| ¥1´KÙG‰piCŠììì éÑ‹ðµOe ŠŠ.ánpà û_§0 mîËЪûé´Kät!ÆØu·Ç"ÒŲ¶ Yú‘x‘&â_(æCKgp Yñ"lU|x¼¤ñ0ú=¾{#KJ"‹x’'¸…Ö˜¼Ï ñ̈ú>”.[2Ó«^Ú¥Q´K™á2º1TñðÍ9²G”t©|%Æ(-]L§]¢¦ 1ÆöÈ~\®t!KDµ2ެÓ]T¦Dhüv XÌ+ÙþLFuÇ@¾¸”Z/9G/&¿Ç óE.‰Xc„_ÄQc²x!? ênÍ~ÒÅÊ’¤þñ=/íÒHÚ¥,\Î @~êCÊZ#òÅ,]Ü«¨+º˜N»DMâ]› \AéÂér‘íÑ5)2c»¸s—]8^î «cÇF;6©|é;¢x1ù=~0)Ð%kŒ$^.XhIâ…Ðe€|aXV¥‹u@~ÿ½vixíBáâ tYkcù©”/FéÒjZ š.¦Ó.QÓ…`b€ŒõGéÂèr޲¥dY/ìýUö'o2ÿIU¾¬®¿NaÔ}4ñbò{|wL K"Öy36˜5&Šò28D§klÒ£K~ZðÃîXÊ—µ¶Ç”/{£ŸorùrÔðbð{|—/:’˜5F/7·p­1Q¼]À»èB%ëj—’Ô_L»4´vápaÒåv(ðç›ÝÄûé(âÅ¡òå§·‚/Fé’Ö¤~ ]Œ§]¢¥ cŽ3Á¥ /í/‰ÇÞÎ-”í@Éð°°™‹*_VÚ(_>£ÙW¾1¼˜û/X,í’ÇçrÌíæ7¸5扤Ë9ò2LO¿B¾T:ˆ†•xÒÀÚŃ •.CØ¡ 5Ùæ¡Û /L¾Ünm¾˜¤Kj“úAt1Ÿv‰–.Ôsú¸ty”Ø Pñ2æeééª0ל¢y0ÝŸyÿòƒ÷(^h‚`íqW[`ù—/G /æ¾Ç¬©"U#Ç“±ÆÈ³ëdÖ˜'^.×É“~4Mà·õ—.¯Hi—Ö.\˜tY£ µÆÀù°›á…Ë—î£Ï“tImR?ˆ.æÓ.ÑÒ…c¨Sˆt9CzúYPàÂìP,œÞ÷[üËÏï0¼P¨¬~míYY|‡e_Ž^Ì}ï‚Z\ƒ~<›˜5CÙ¨1O¼@­úà±_|¥ƒ¤]ÈÉ_‘Ò.«]¸0érv(ÔsÐs8^¸|qŽ:_LÒ%µIý º˜O»DJfŒÁ4}‹õü3«‡Ë-׎?›B˜¸µ /ì߇->`™¥aZ^Œ}Ðp\…~|$1k /Üãâ…2hÖáÂ[kìkRÚ¥aµ‹&]†X‡2„ÖõÆ<¼xòåˆóÅ$]R›Ô¢‹ù´K¤taÆš-Ôãߘ-\òkÝ´Cù²4_c†ãÅ›Áÿè÷êËZ^Œ}`Ú¥ ÂŽšr7™ûÍoxÖ/P«’uÖ#i—7]¸<’Ó.ª]D¸0鲯;”'Ô£Þ˜€O¾i¾˜¤Kj“útI í)]˜16B“úg¨Â`½@öžv ±6q˜w|1Çðâ1©ø…¯¬ªÒçæ‘Á‹±ïñ]L»Üưo%f‘çpkŒ‰R«>+ëíŸ!ibŒ½*§]T»ˆpáÒåïPÚ¨5Ƽ1/‚|9Â|1H—ô&õè’@Ú%Jºpc »«qê‹yߘ£ù¼oó0/ØÍ-És,ÉñBÊof¨|ñ! .sðbê{ÜU+èº1ìÙĬ1H¼xÖ/«0 ç‡Ów`©Ëj'ÆØ+rÚ¥1µ‹&]ˆ1F;”Vf1oLÄ‹ _Ž,_ Ò%½Iýº$v‰’.ÌCébµßd£ŽÛ¸X.ªâ»¹Qù¯ÉƸ8rŒˆ—â[ïÑìˤv]å#€Sßã˜vY£aĨċgQñBjUÊMO¿M>&r–õê#—.ß“Ó. ©]$¸€tYcníP†˜5Ƽ1/¢|9¢|1H—ô&õè’@Ú%Jº0c ¥‹õ}âXµyߘÈ2eÓR3/ØÍQ€ñz.—=s‡ðä~üÚòòòS² Ìf0^ﮬ¬ÜzPMcñÏÜûû;UßµÆ ©¿øm÷‚·ЙHñ[c¾g‰Áñò“¹µš½L·¢|dÍ_'Úå‚B“Ô.2\ΰ_® ÊfqoLÄËâŠÙå”/A|©ãä,º·÷š¡º“ÎÚx¬B]p‘4 Ÿ©…’H»DHfŒÁâÈíŒyÝëæß˜¨\&‰Ý16-ø_^zYM¼ä‹?Ì•Ð.+²ý+m{®Å•/÷ðrë -Õs£ÞZ†¹ª»4!iÑž«F¬1Ý ‚‚ò¬1W¼Ì²Zõþñ÷É£¿‡ë$O+i—Ô.2\àÛùÉ jŒ1º´qkŒ{c/<þ ;(_t|©ãd¸î|GPs± uƒA…’H»DHfŒÁâÈ8x¸•c\ÖÞ‡ʺ0tlŠüyíÒe)ïóÆf ä/[æl»ÿìéÓ§{IëpåËÛ:wìW„Rëë«Ë`Õ,k³(Eô|üÖ˜þ!ñ"Xcÿ–Ôª÷ç_ý9Ùæú«¸ ÿ:Ë«JÚ¥ñ´‹.£ü{”ҥճƸ7†xiã¿@å‹Ê—Åúm@¦ëÞº3g8V¡n0¸Pi—éB1Ü×¥ïQaC¿1G©¸ø=c8oò®1Æ8áø/àYÙÕ|K¿ÝjŽÏ^ŠÃ~wL)µ_OMÃdÕw­ÉÌ/ä ÆmÜ $^Ä­1Ï#xÙQZ;È|Y¬ßd¼îeŽU¨,S(‰´KttaÆîëòÝ ]_ ¿1\@ŒQ €RYçãâ…Œ³æçïô۽϶ÙqªŸà%ŸÁbŠ›\ÅØJ©úiÏû V½`Y÷2j¬ãµÆ‚n/ÌsKÍýúSv| Ÿó0c_PaÒ`ÚE… H—VnŒqº<ñ¬1Ïsñ¢>ï…!&_¾ô×m2Û‚¸^¸ –)”HÚ%:ºPcŒnIy3O}røÆäpqH¦ý‘À{|²$9‰:W2¿™sÏ7(Æl{û¤m·À:&{8†Œnp¹à+U7Öñ¾ÉªXÖ”?VWcµÆo/ÌÛáòé§ Ï9t¹¤¤]L»¨pAérÆë1]ÚkÌóÆ4ñßâò…ñ¥ŽÙ”ÀõÂ]°L¡DÒ.ÑÑ…c[Þ<Ê©NÚ \âp¹ Ƙ8c¿XbÿIN"%^ÖЛ¿lÛ/n‹Çi{­5Ü0ùÎ4áËS©ž:iŒV}ךÿ…ÿ‚½qZcÁ7‰j¹¥~ó©xœ…çL–ᤦ]K»øà‚ÒÅ3Æ8]ZkÌóÆ4ñŸãs__vê·nAæ¯î‚å %’v‰Œ.Ô£Ò…tÅuo÷06^±;"C^(Qñ^¢Ë57Ö~Þ>+Ålû™mÿ=–Øc{V4¥ë£m<4Yõ‚eM.k.x9Fk,ø1ñ‚ÖØCû] .ŸþÚ¶Ÿ¢5ö’švi(í⃠JÇ3Ƽ)C‚5ƽ1]üw¼¹/È—åúm@f[P× wÁr…I»DFjŒ¡t_ì¢5îÑ…Îuc h³%K¥1N9ñÒJà±ÙwÅ>)mû¬=K÷}ÁµfŠcÖç4¥îÖGÛ¸b²ê–5¦‹ÕlŒÖXð bâ­±+öŸÊtùtÐ^v®+]†},i í⇠JÁóèòD´Æ˜7¦‹ÿÏ„©ûæßÂznAIÄ*ÔËJ&í]ÐC邾˜eµsºP¸cl# ³]îq¼tÓÝ*¡„”x¹ ÿø÷¶ýL Úi’…‹¾÷–®T¤%V}ײ¦"›5¦»Þ»¿‚ƒ¼¿úÕ#÷ø•mÿZ¡ËW!¯q…imPí⇠•.‚1æÑ¥M´Æ˜7¦ÁÄ©û¦ßÂznAIÄ*ÔËJ&í]¨1†Òö£,á"ü7ÅUZˆ16Z€u]`õ½%0F:‰ñ‘ïd%øqÉ!ÞØšm+1ÛþØîqÏ>yI,«-U/mÃ\ÕÉÄüŒî‚½1ŽÓ^²õ°ÑõÛøGÛVàòéŸBâegí;©]4pAé"c]Z%kŒzc/X·$_긯»ñX…º`™Bɤ]¢¢ c(]p¼X;,Â?*-F4M7è“1˜m™y¡Ôù‘/òŒ—k]{0ÒX ÚI»çrOß×&”Õ–ª×¶_Õ\*oê.Ø›‹ÏÓ^o2Åké²;T^ô¥]F»hàB¥‹hŒ KK IÖzc/˜(_긯»ñX…º`™Bɤ]¢¢ c ]À»æmŸ¾1*­ÀÆÄÊAÞ¦`·Ò]ÆJ¾/·¿ÜxÑ'øVȲÎÀ%.šRõÒ6ÌU}ײÆ2º žqB¥özˆ"d3Œ.¿ñ9cça‡JÚ¥Q´‹.TºˆÆ˜@—'’5†ÞXð &È—:n@Æën·9_pðXK‹ûi¼Ô]wxq7âˆ@Œ±÷€.r¯ÓX¹5oMà">¥˜w¨„„¯ˆMŽk/hõ¹Dɸµ‚—ajš[c­¥]‚àÂ¥‹bŒIt!þP²ÆøZü^0<¶ÓòÿÖmàânA\žÀNû7¿Áî…‡­;ÚvvvÄŸ'–v‰‚.`Œ‘ΉíGIú0[ŸccŒ¦WÚÀsúlÆv#ÿì£/—îP—,Oþ°Ñ½Æö¡üè}茊¼[!*-ɦî_¨G¼Ä{}²µI’úù—¸dÄÁw]xÙŠw‡Jz€zÇÃK/`½B—CMrºÜl(í&]TcL¢ ñÁNÈÖ˜°OeÙ£[]8¹yhŽVì­ë´Ûè'F¹Ÿ‹tI,í]ˆÍõêJ}1¶¶™­?ο1×øzùùÖ›¸†²õ5víFº¶ù€å\¦à£ÖI¾Cz˜K0¬ ÄK7·Æúäü‹·òØÚh/cìÕ ÐåczýÅ P‚í±Zcì@ ð2EÔÒ0Ò¬±ëtJÇ/qAÓÒ.páÒE5Æä…üpM±Ú½}*ËÊÂÉÍC×á¡0L¬Ó®$^Tº$–v‰‚.hsYðy̓ |*·³oÌÛ Iøï3!2½Îè2 ®×¡ ùA?jd@þmE¼àZcr~_/KÝM¼¨ÆXî$õ‹Öë,J#T¼§µ»·5æ‰O.Ü.bâ…Xcë.MÞZ…—á /oMOãN gG»Ã…KÕ“;’xù©lyûT6åË¡ oÆQ2vñ¢Ð%¹´Kta6õÅ„U‘ɇ)ûÆVxYÅÉ—ÄŠ™kìs â~…¿¢µ¤·YÛ –©xébÖL¨”øÒ&¸cM¼¨ÆØ9`¶7–"ßeQñBÈ’5bÑñP…¥¾’Eþs¼‹Xcßwéò9Ò¾"Þs鲉{ý4Œv † —.>cLîPÈ\S¬±°ÞXS¾T>0©Ÿ`§]A¼(tI.í]¨ÍE}1qÉ}Òç¿@¿1×<º<ÆUÉ`x,ôt]@¼t/Q°À/䳋Ðö©TÄË ]kLäËwù²6ÚÄ‹dŒåÆq¶Ë07Æòtè]©‹eˆ5FÅ ÅK× áÝäVGg.Gœ°. K¼P}‡Íw¹Ô(Ú¥ \¸tñcr‡yÕ í5åK¥Á`§]A¼(tI.í]Ð{„¾˜´Ÿ é«þ¢@4ÆZq¹~/`Y|oJ/äS䝯èh¢¯³)1ù·Û¥ÌË_kLÖ/ž|YjmâE0Ƭ¯#]ÞÆðÐÓ¡wä÷q3ÖØ¨8sv ×=÷â%0Æ@«ºï¼QS|Há™ÆÐ.eàâIŸ1¦t(>×k,¼7Ö”/åšÔO°Ó® ^º$çàž.Ô_¬KÞ,Œ¤õßÀoLjŒ¡ûXâjðбÜctacl”ØMÔJ†üÓâËä3{õ,]ÞZc²~ñäË¥Ñ&^cì1MêãEèÇ©5Vê$ºe܈5ÆÄ ÅK+“¥`Œ!]Úsp)N² ®o6„v).]üƘҡÄËmÕ«ÂkÊ—²f r;ÁN»‚x‘_†¼ÃÓ1ôÅd¸@vI@1ò•ºz“­“¥ÖXnï| à ¿—¡‰g†ÏÛß yÌ3/ž5¦ê._Ö.4ñÂŒ1kü\f¾@-¶a†ƒÎJ º¥ÃŒ5ÆÄ Å ÍÜY`Œ!]¬uôĦ6©EúQgh—rpñ¤‹ßS:ò_£>k¬ o¬)_ʘÔO²Ó® ^ä—!IïÐtc :‚6.Ö¿ߘÔÛ#%Ú¨1†ôÁ᱄_`ÝdðÿaÂ=:šhä‡Aò þ3]ÀaÃé"ÆXÎÚ"Z³è˜7GÙÞ.Š›ñrµKy¸xÒEcŒ©t!‰—3~k¬:o¬)_´Mê'šv)/^¤—!Qï°t!]ÁÛ|i0¥ï£Ú…c£Dè¬rc Å ŒºÜÙeÝ[Ô2‡&^Fr9žzyÛ²:GYæÅgI|±†›x‘Œ±s8dìí´)]„Û¬.CÖ<Á™õ? °]súˆ1F'Nclº³£ÈövTœˆ—£§]ÊÃE.cL¥ $^üÖX•ÞXS¾h¿§!¬É¦]Ê‹éeHÔÁ;$]ÀËõߤËã%*]F©ÄÙ €5†gXŸÄËM¶åXc9žz)®[\¼h¬1É›Ì4ñâccÅ;´Ó¦téèÒghÔ>ÁXÆ_²ÆØ:¥ cÎËÃl&XcÓ^Žœv©OºèŒ1•.ð}­±ÆªõÆšòEùÖ¤Ó.eÅ‹ô2$êà’.7½M$u½w µ c£~ÙðŒ1/“Ì#ù—NO¼´ézck`y©—MkÆá™5&ñe¸‰jŒYã_ÎÀ:0¶!¥‹h›²ÆP~NÑ/Kd±\éƘóŒ!{»k¬øHÀËQÓ.à"H1æ[Z Êh¬±j½±¦|ñ˜ÔO8íRV¼H/C¢Þ!ér©|ßÝt¹D¥ €C4Æà“ºÈU„nŠ—K«lûcÒ£Œär^êåí’ÃÅ‹Þù"Ê—ÆÅ cÑûˆæÊ9]kl×1dÑ'HžQ©xÙœž~kËÅ y^`Œ9ǧ§ØWZc^Ž˜v©AºèŒ1] ñ¢±Æª÷ÆšòE9P&v)'^Ä—!Yïpt9SALXùÏGq©~Ññ2åâ"Ùh„‰—kyšÍ.ukÌK½×;–y ²ÆD¾ 7ñ‚ÆØ9œK¹FÓ.œ.Ä-šx1e¡üì*ÒP”N>N3áHW]d¬Zc®{x9ZÚ¥\é¢5Æ|tċΫÞkÊ_ü6’O»”/âˬƒW;]ﮬüëå§eûí¾Ëç—Ýã)"e”ölפno2ŸoYÆRw,âQñ²ä9a.^fÜnç—̃Û<ðÄK 5&ðE/PMRõ•[¨M€1ædP»äY®œÑ‚Hí±>Å‹/Vø1õ‚Ç6»:s¹Ë¯¹ïÂìåé_n½L#â…Xc—:=¼íâE¶\ Ô?îðCkŒ-þÈÙϨ} Î«ÁÓÈ—ÆkAìÀ¤~5vl± /ÒˬƒW+]náþš¶=× ±Ð¨·N²T4kµôóR?„~ ÅËŸâ’sñB¬±B_tx楌5&ðeXÀ ¯UÏÆ2ÆhÚ…-_)Ђˆâe\²ÆâŒ•Ÿzù€~Q8Ä^†Þ«¹u¶ÈX})Îxx©{í"D¶ \x©…'N1¦{HÀ 5V‹7¦Ê—FlA¢Šl­¢ÓŽ1VZñ¢\/Y¯6º,º·ÐöôéÓ½äÅ€‹\ȳ¼ö¤R?™J½F–‚§âå_VyÒ²J„.+T¼”µÆ<¾pùÒ"^ïaCc3.«"] ˆ#4ñâYcÒŒ>Vô ¶ÓƒØÃéýùWîþnŸÿ>ÝÛ÷5œÎñRçÚEnAp‘Jý(ÀÓ?$H¼h­±š¼1Q¾ÄüV¤üÀ¤~ØN;ÞXùÅ‹z½„¼šè²Øo÷ŸÚ†ãų/Z¸È…öy’æZ™Rƒàíy+¸äéz‡%²í:Ž'¹w<óRÞóø‚=U‹Z«2ÆÎ‰ÆX›H‡¯cY]Ü[Œ9VT~Bê…?œ/} ÇoÞu_†É;^ep~†—úÖ.j €‹&þ>c,à!AâEoÕäyòåo²‰¢ðDèN;æä/¾ë%iÛ7ÂúƒÆó—ºJ¼±=¶ä>K¼0ºL´zÞûô­hq¾ çÂTýˆc_–èâHtÁ naâ…Zcû±ÇŠÉÏ T– "\>ýôOm»%ŸÏÌÓÝâ®Ñu//Ô³v Ym)Õ <|]ë­±½1”/Ù‚øIývì-H/þëµ$;pºº<°í·Åã´Ý¦ÐœßÓ”ê%_Ù£y>p/í%¤Kn‚ï ¶Á?}CXc”/ó¦êGÕ{,&õWeº`G0ñ‚ÖØ±bÿÚÉ–pOmû7ŸŠÇY’Òf»Å °*/cu¬]ÂEV[J5Æ‚O‰—k¬VoÌíÎþ¦1[?0©.íb IâEs½…dN×@—‡öYé¶ŸÙöb˜BO}Ƙ®ÔeâíIë—:)^&°KDoŒ~ú†²Æ/_ Sõ£jŒéҦЃ⥠­±‡bÅþu•¦‰tyW‚˧¿&âå"ßêzíPIð2VÇÚ%\dµ¥Tc,øT˜xÑ[c5{caë~tHê‡L»ˆ•$^t×ÛIt½šèrÅ>)ßÄöYûÇÊ¡+´Lºµ*•šµrã%ºlæ&.ÙŽŽ÷©»³ÖÑñ¬UE¶À,u„:t×»Û ÆYdLN»ˆtAkl/Äû7FbÅÄË+Ó™üœý§2]>t_™¾Õõ5¾C¥‹—zÖ.á"«-¥cÁ§ÂA€5V»7Ö˜-È; ž!Ó.&b%ŠmŸ›èz55ÐŶŸ)7qšŒõ’]!2t9?U©žª(Ò¥H†‹a⎚߄n¶8 {è®wô³’hŒ}9³©¤]DºPöxAkÌH¬XæåúôTÞ¶­Ðå«öªÓW‚—áB·Æ^êY»„‹¬®Ô·Õæ2§Â¢ÖXÍÞXc¶ ‰ÊaÓ.&b%ŠmŸ›èz55ÑE¹‡íI¶DíÇý…æèä•ò¥ðTc’x™ôòúÂÔÈ·¡Û®Š.þë}Û± ¢vYõÑ­1òk ­13±BñÒG¬.ÛVàòéŸÚsdFÓ |EïàÖ˜‹——Ü?¿×Y¯t Ym R§R–9&^¬±š½±ÆlAüÀ¤~ÈÙ.Fb%ˆÝõ]¯&ºœ´{sûñ“ ]ŠKÑSIâeØÅ ›õR\¯V¼è®wäÛc…©Í̦œv‘èB‡Þ®L€5f&V˜y!‹ïk鲟e}Á;ð·ÆØK{êz}â%\dµ-HJYæT˜x ²ÆjõƲy$õÃÎv1+A¼è®7÷Ó$ÃU]^ô °¿˜P]!’w9W±ÔyXðjfUN¼ä&&²H—™‰‰_Qô¼3A>g?˜ ç3!ÝõVÃËf6…™ú­>ºPk, â¥èb$V ^È(°Kê1âŒ-{ *®OzÖ̦œš®O¼„‹¬¶©ÝZ™SÑ=ƒ¬±½±†lAÞIý°SÍÄÊ/Ú7&Ñmj K}J¹‰^ûV˜B„._é®Pª%KfÖïŽåÄˈÓâ¥Ôét°ÔËmüô =j,TÕ¤1V˜”èâøéâYc®xq%L¯™X8&§§ßj›³®Ð¥—- ={F¤K}â%Ü[¨mAêcåN…_ØAÖXÞXC¶ ï%vŠ¢™XyâEûÆ$ºM@ t¹kÏ©îžýñî-Ôµ Ÿß_îT˜x ¶ÆjòƱy$õC¯ i(V\¼èÞ˜dwg®e%˜»¶ý±4¨ºÿAˆB0™r2ÇŒ¶¦éï(‰—ñž×/ÍXë>·A¼„¶ÆBUýcYË•.ï)i….Ä,Š—-+7k(V ^Þrk³lK3^Þu_†ir¾ƒ ßöh«ƒÒ¥­³Nñâ Ÿ‡)ekv¥,s*šx ´Æjóưy$õï i(V‚xñ½1ÉîÎ\ÓÉû¶Égî=ü L¡0ÆrÂA£–"‹‘ÝóI.ær%J—JšzY»I~)„µÆÂUýÈc‹¤]V•´‹BaB¥51ž[Ï,˜‰€ãkn#É»äêå׃î+S¼>Íø_møvŒwÑ5’ë/áÞBµÔŽnWÊ2§Âoì`k¬6o¬áZp@R¿Š•!ÍÄÊ˼øß˜dwgÎÔÚ:O‘©;/žî·ƒ2Ur!˜¨ÿ^N9f>—Ký­|Ôò#%ñ’ËÒÅ`(^hêeº°ÖXȪ-c,7žµÆ2™ÍU%í¢Ð­1H¼X¥Ž_fÈÚ,FbEWzi… ö~‰Ì©üÍWñ•Ùx™ñ…,•üy;2—tä:ÆKˆÈÊ¥~¦wd‚O…‰—2ÖXmãÆ­9¯OT³!×’™ä Súܤwg®qoʲ…àÜ ùõÊbˆBý¸ÆØûí*_rç½Rs—s}µ‰—Rð’í¤xy'Ï÷°\ûÊ|صÆÂUýhc}–5µ¹™YRÒ.*]„µÆ¬7!±µlˆUß0°O.§×{e–º_€Aäí˜&õû"½zÅK¸·P*¥Ù•²ü©hâ%Ø«qÜXƒµ YëmT±!—[ÞH 漈}îN¢{»‚.ÎóÜa³çV¨B¸cK‘Œ&Vù²þÙù9(58K„‘Æî¸¿û/tBeÉ¡xyQ.’ßÚB[c!«~¤Œ1Wõe2™÷V•´‹J´Æ ñòK:jâéò\ì±zešŠR{ôexw¶È6C¦|@~@Q\g¬^ñî-KÐcåNE/e¬±çT6T Hê‡O»»Ÿ˜ˆ•0aß{6 ïírºãÆÊIªÖ––§n/€ŸÍS9/_Jí%üƒe]½úŸº²–+@¬_‘‚ëÄø§‰—"K¼äP»äú(^fZ=ø¬í†¶ÆBWý¨cÖŒeMnf6/äÙ¾Žž.Þ2üëìW¯^žˆ³Š×ݰ¹Âð´•q_çe6¥ÉÅ å yH/õ•0톬^ñú-¤¥Î”ýfÖžŠþ‹2ÖXíkñ7L Hê‡ï´!¶gLÄJÞç¥mgg§Õ©ÆÁK#]B‰CüÆÜcÉ‚/Ùƒ,†`c ¯)ÈÜ–ºÚYâ¥Èþ­K²ÿqÖA¼”þ¥Íë?½ c$¨îÿÇ2›™6¶áçj]À+xÊD€é•ñ}Ìõ‚L}æóvrñÂ[„8S›/À—aö2œéšº|ÐQïx©öÃùZuÿ„&^ÊXc‡X‹¿Hê‡î´AÞ4S3iŸ—6@M^=ÓÅí7Îà®”„$€/…> º†ôEÒË•ÔÄ‹[`¬1†—NoYm¬Ô|ÿuÆ ;“ÉÀ®«âÚÂ*]è•’rÉ_˜—.d±syùœUYc rPºd67ß»ÆÆ@´Ñ­±W8\`M徘µ AC ü;žÍåH­r gÜŸxxqºÙ¦?}Ž_-ÃdðX£àåL Ÿ¢4ñRÖ«Ýk¸ÂºÓ澘qñ‚tIAÚÅvY¢»RŠx‘ø‚€Ážðæõw7Dº¬óÌšAkÌéÀ³/Hâ¥iéŒ1 Ò.™ «lü¶Hb½u‰‡”xQñÒ…coÑ ûS L€.DÁ¾C’ùïxxá;–^<þy+Û{äKà¥cŒ'^ÊYcMo¬ªGp3l§mÒSÄK[»3íÝÂ8Z^d¾À@W¸Žy}ëàŒ:ã%—›è¢Ö˜Es[çDñÒ´ÆŒ±±L&óu‹,¦]ütéb }0¡îñ83]ˆ1ö9°OÆql@­Ö ØÚÞœž~t}ÃÃË({ÔÓÓ°¿ ÜÈ—£—Œ1žx)k5½±°$õCvÚF}1E¼´U³M@ýkÄ|yÉxQøÎ E¾G–#Ùérèâ0k¬ûÍÒ;¢xiZczcì½ÍÍÌmHYH[:úèâÌ \`Ë x”Ý1ÓŒ1¶ÚѨP«ïG¬µë86K^è Q|4 {Söáç‘/G/gjê,h⥼5Öôƪ|ØNÛ¬/&‹—¶êÖ«©sº<¥Æ˜/2_ b^‡É‰—­fMÐŽs½(ˆ—¦5¦5Ʋd‘1ò6–Ä´‹†.Ÿ\îLAþ:H‰x邯Ç$^H­¡jÄëóðÂÄËE ËŸwÍpùrÄñR“1Æ/e­±¦7ò 0d§mØ“ÅK[u§ë]»,1cL‡‰/Y1¯q©1ØÞ…Zc¤ÓÛ*y ŽxiZcZcìk™ÍÍ ä!ŒJi?]º!ç²za}¼—.Ôs’²/’7I­H 2®}“ £Ëà /_¸>+ðÿÜ“/G/5c<ñRÞkzcáQ®Ó6î‹I⥭ ïÐecZ¼|éóúÊRc_'TB⥓‡ñÒ´Æ4ÆXö±«]¾N†×µJi].w^.â4òÛ«1Ó…cŽsœM–Ü ¿g:\*8è9/T¼\êúgº¿Ëñ¯pùr”ñr¦F&^*XcMo,¬|¼®Ó6î‹Iâ…üávÒ.Fè²$cz¼ó÷ż¾¼ÔØ…ÇËŒƒ‰—NÀKÆ/MkLcŒÎe2›°–ô¨”vQéBáû×¶Þ&väüwc¥ 7Æ>Ç ûäÿ¤V› ^w™7æá…Š—3l÷0—/o1ùr„ñR›1æ%^Ê[cMo,̱ºÓNÀÅ yè×Òv1B—=Ñ À ç Ïë îñòŽå‰—­H¼À´JžznZcc,ëd63ï‘þyUN»(tap_ì^ß þ˜u+]¸1v'ì³µjÈŸ 1˜7ÆñBÅËMò^}@×·¼¾NåËÑÅKÆO¼T°ÆšÞXÈg*í’„/&Šòû‰4¤]ŒÐ%/cAx¡|áyý½-uàÊn Km“´pÖþEO¼4­1Ÿ1Vør&“¹°Æ,J'€.—¥™u/6 ã¯[»±Ò…cŸÓe*…ƒ¬´ï>Nêq¼ x¹DÞ«›ÝlýäGÈ—ñŽ#Š—35ûìV°ÆšÞX¨Pž•vIÄÄ ¡ËPÒ.æè"yiñ‚|áyýÿæÛã…ॽkÜ›ÖÏ…æâ¥i©ÆXÖyœ¡«ïß”Ó.](\œ/fí’̛‘.Ü#ù\€žo#Ög©À¼1†*^¨Ç×%ñ%·up4ñR«1æ%^*XcMo,œ “vIÆÄ ¥KòictÙSþ^ž×_šQ/÷@¼Ìxt±:)^2L¼4­1Õ+8çØ¾”å´‹H|`düc°ÂrltaÆ‘.ÇùxcºM@ɧìroŒáeïê·"óÅjŸ>Šx©Õó/•¬±¦7†ðm!:í¤|1O¼Pº$Ÿv1Fß—W^\¾ð¼¾‹ y©1aßdJ—­Ä K½ 7­1ÅsÅI»¬±ÝQZµtápé&÷¦Û¯çŠtd…#]˜1vÜ›°/ìÎ ǹ7FñÂT¤ TôËÄKíÆO¼T´ÆšÞX…c#d®<)_Ì/”.ɧ]â¦ËâŸ-»ÇSÕ+‡œóB°r.k {¼´,/Ÿ??{yé²µ•óøââ…¦^ŠWÿו••[æ¶žX¼közUÔêK—çAº´ ¬h°ª¤]ä>¨;‡‹CfœÉîoScìòìùóçÏ 2c ¥ MÙ·,Ã+C¼ L½0oŒâeú;V+‰/^Òùpª”?Z®Õó/n§·óÍrá Þ˜ñ˜¥¸Iµ:Aé2Z¾ê~_Ìà ‚xùÝ7IãØ©àà…ªÕa«+]ná6i¶=÷ÍOƒðRàóõs,ñ2•o駧꽪ÈÂ/zá¥znyù º^•µê½J¤ I»€´[’Ò.BÝ=¸p_ ðþÆüì\œ7ÈŒ±ãläØž÷¿E.HS/ÌC¼¬i³È†—t>œZ[Ðïj<K¼ ,Wj¤_\6³”· ¡VÄZ”Ò.Úªû|1³7Ø6ÄóÂÆýðU‘.‹nåúÏž>}º×­àÃ*ð’åóõs4ñòÇý©Η¼¸|qñ’É·ÌU¸ éLæ«K¬Õù‚ãÙ.r®B-õ-ðÅ2ó,þ7b(5Ƙtqœ¿"0»ÿþ±~¼ M½po ðÒ¢òñðr9•Çü F/aNum§ßpÌê =ØûSÁ¡ ¨ºâ‹™¾ÁÚ¶QSØ£¨z|tYì·ûOmÃñâYÛÞ"^æÉâÇwr˜xiQN5¡Ð…ŒO.­?­|AÓ7˜DÓðÕÊ•.8èaÕK»(¥èB+Ä[{”¬1ö‡˜oc\º¸µ²}‚Ç}¸ M½poÌÅËS_!_~9=}5•' /¡NuÃtÌꥑƒ$õŸxi—€ª+¾Ø¢ù.Iß6ª{$U.ÏûíÞgÛì8Õ_ ^ˆxÙ…ùú9’xyê;Õºåþ3 /–õY˜ š¾AㇿV_v¥ (À5/íâ+µp_ìf×<cOã¾AjŒqéâÖªÿ~ƒWš¦^¸7æü{Û_ÈÇ—éÉT>œD^0ò½êTÆ_èziAð×ÒÅ€BŠ/öÜ|—Ø6ª {4U.ûbí¶·OÚöÐx!â%÷ŒAžv]ðŠä^úúÀAcŒÉ †º é4}økõ¿¸Ú…{i}Ý»i‰4Æâ¾AjŒqé²/¶ h7XêÅóÆ´…T¾L¦òá$ò‚‘îž0§2þB×K ‚Z t9S®â‹íï’ʵªjMÕã¢ËÛ~q[œd^°¶¡¡0§2þB×M êa§] )¾Øó]Rù¶¾VU=.º<´ÏJµÛ~fÛ‹¡ñRàyýÒ’û í?ÕeX†Â…Ë Ù29gå·½ é4zèjõ 1ëwµ–©;úbìPy'¯ {¤7H1.]Ú÷?‘¸ I½äÆ™7PHáËk©|8ɼ`n—·æTÆ_èúiA‹ŽyÚE_H/öÐx—T±m„­UDU‹.Wì“rõ¶ÏÚwÐxÉòuøïåç4§š…eø;p©±>˜¹Ð4}ƒ&]­^ˈSëÞí9g3„ì±1oÀØåË‹|{‘ bê…zcA…d¾¤óá$ô‚ õ‡9•ñ˜ÕO º‹I}oŠ¢¾:òŠñ.)DÛW«ˆª]lû™R½ÓA‰!^ |þé¼îTƒhÑ¥Æ`ª¸ é4xèjµàÑåv8t¥Þý€8‘¯ÂϷȈ±¸oc\º¸uÿÄ×8¾µê2tõùm5°t¤óá$ô‚= u*ã1«Ÿ´I}oeHm!ßkŒ&^ª¿ é4×6üµZöz]‹ÑE[ªøˆþÖ‹ùѤ‹VØ/W¦‹¦P>'©l(Ô©ŒÇ¬~ZÐ ŽóÓ6 ߺûæ»$MÛÐÐE_÷Š…VÒC—û”R½^û–S^ ,¯?9§9ÕlgFñÄKµ4}ƒ†]­¼Îwµ|)Þ6Èz+÷zã½A4ÆéâÖJòÒÏ/ˆ³^Þœžì-S(í'©ìÉB˜SYý´ [<©¦Lò­»o¾KЬmDTõ¸èrמS};û¹S ^²,¯¿¬9Õgãhy‰—j/húͺZ=õ6ä*[Ê[à’Œ]¾·ï ‚1&J·Výª®çÄY/]LJ—ËJûÃIêk õ(Ǭ~ZÐs–Ô_+SÈ¿î¾ù.)²¶QÕã¢Ëó~…~½ÆøðR`yý;¶ïTƒ¹ÒXc^â¥ê š¾A#‡¦VBÚ¥µ\©5Þ6n3{)ÆDcL”.¤VÇ”//ï‚°àØ…=R«àB)8I½`$ñRùTÆcV7-hŸ'õ7Ê4 ÿ~” tIQµˆªÛJ0wmûci¸t…m|xÉÒ¼þزïT—s¹°Æ„ÄKÕŒúí4ìQá¯ÕSu¶K@)¯m,aéå8 Ƙ$] VÇ$ÓX¼à„5V¤µ .TûÛ—Jñ¢ÞC­¾CËaNÝõŒß`ìµR6äò7 Ý~”+†oÐ×€´z㮹—!¾5’÷…¦gnøPé¨x)мþX~A9ÕÿålGkÌK¼TÁˆo°e) }’Z«_ä}i§û’ÑÁ]£åb (c’tÁZÛF‹°çÜ(W]T ý š·/…Gd÷ðd(Ô£43_ HiØ[å´‹¦ÐŽf?ÊÌFtCm@;5?çH^†L¬Oið™”óâé~;LNHÅKóúïI?'ŠœkL˜ñRý#½ÁeºŠ} ‡P«×¼É.ùsÖ畈.ç‹ï³^œn?\Ìä}aØ“¥ ­Uÿ1Ö4ÜZ}4 Öêñôô TèVTo_:ñÉ=´ …z”Æc¦´ ¡Òö›rÚEWuŸ/æÂ%dØ#ƒ \Ol@û4ï›zâÜ›r…la37H~½j‘/š×ß?„jîr—3NÈÖ˜0㥆 FwƒsÏvàJüjÕÿ4Sg»d ÛæXˆhÿÓ|þ†÷âccJ¡+ѯ1&I¬Õ`g=Ò2ì+Du­ ȵ²Æßœ~ôšW¨ÿÝ‘½})<"ºØu2Ì©ŒÇL¼à™02ʰoÈi8Ä.iG㋸ ý­¹ˆB%…¶qå¾:Wõœ#xbÝùøù îÙ–| ^²˜×'ýÎÓe܃wpvÞšp ¤XcB⥖ Ftƒ¤VwRƒV«2‡%/Ïvɰ÷"ÚÛ‚ó(ݰ³^<Ÿ_“ EPbŒ}E”.lóeá ¬!^X­ö.9>ýhò¼wƒmѽ})<"ºØã%Ì©ŒÇL¸àèPjð¢†á„’v!_“ÖÕ«—'¾1ïöƒ]N;ɼ€5&$^j¹à¡Ö––§mP«¥Ôà…Öê¶<ÅgâçöØ6•ù3«n©Üéï»?x‰³%¿9ÆÌ±ü{ÄÕcL”. .ÒD¼0¶ŒÒY/ÄO›ìƒBä׺Ë\§Ý­»SïG/ôš3u*à Ȼ`ŠðâygçoD:ËiÇ!ë¾´AÕÿ÷¡!¿/Æàb,¢.ÒõÊàÅÌËIYS’ñ’ż>c¤oœp¶àW2y¬11ñ’H?óH V) ֊vÌ4KŽ„j–´\Z‚šƾoþKiŒeÍÉïP¨HÖ²ÌOcØ£=ˆ1ö+AºHpš(_la³^¼}*½|9ñ‚8ršI¼HÞ)=Ò„qѰVÚ…TõCèË»}ë‹©p1qˆpñŽòx‰ÿH]d¼0¯Ç”ÛHX ^J/}Râ%™~¼ØFk•¼`­F1r—Øl—Žö_7î¼Òè‚ëî ™ †óâä.»1Ð…c×=éÏcÍf½dù>•pƒåÄK“.^÷¸QõL^DdÜô§]PºãšÆK \ÇKêè"ã%‹y}ÏØ9 â…äõIÁ¬œxIJ%ÐZ¥/X«/çé 6Ûöpq‰q«¹J9rÎc ¬1‚ç{dÓéü#ë zºclÚ“.pñ²@^w{½¼I÷©¬,^štñúʵz¨gzð"Òe×vñ¤K«ÆK \’ÆKúè"᥀y}o ÆRÊ’×Ï5æK¼$¡˜¤J ^°VA‡\ã³]°¿c="¿½U`tÉ{láá^èBé²Õ=]^¡tù¼ \<¶°‘cŒó¥·¸7VA¼4éB'JÖ ‰—jèr—váÒEç‹¥. ã%…t‘ð’õòú“€—,• í/} '^¨v¡µJ ^°Vç2‚1ÖÆºñŽv䆕½äc Ës¹ýù”.ã1Ðåº(]´pñ<16rŒzÙò¼±òâ¥IzÔIâ%Ex¡áK»xÒEã‹¥ .Éâ%tñRðòú´ûë@™0Bé’M8ñBµ /)Á Ö*#ìyœoåÝ8å†5ïýxï %Œîë\,,!‚ú¢§KŸ(]tp‘ò- ^ õ²Ë½±òâ¥Iö>ÔIâ%=xèÒêK»pé¢ñÅR—Dñ’JºˆxÉò¼þö»T&”¨5–pâ…i&^Ò¨Õ—Å©”y¯_bÁÌpÝÒ¡Ý*¡1Fúr† ´Ë+‚tÑÀEÍå+xÔËqî•/MºåZT5xèrSM»pé¢ñÅR—$ñ’Nºx)ð¼>Û9ñeÂ8³Æ’M¼0íÂÅK*ðBèòø±(].ñn¸q¦£A¦¢07ÞÕùOsPébíFO—ëžtñÃÅ7Ṅ‚ŒÜ#æ•/Mº°£n/iÁ‹€ 5íÂ¥‹ßK!\ÄKJé"à%Ëóú”.¥. ,¯ŸM6ñµ /iÀ Ôê\Fݳq‰UoIƒŒÇVvÕùâõNOºXV_Ôtéó¤‹.¶øð©—÷ÆÊ‰—&]ØQ?‰—”àE Ë %íÂ¥‹ßK%\’ÃKZéâá¥Àóú“´Ì¢L yýR²‰®]<ñ’¼]À[UáÜhÛS6C¶Æ»(\ò÷HØ™tq5]^áÒE…‹ž->¼@êå—Ì+'^štá/Dý$^Ò.jÚ…I¿/–R¸$†—ÔÒÅÃK–åõÙW¶Õ2åõÇsI&^<í≗äñBjµº é–=.l÷….»—üº É÷¹t‰~6åu&]¸²Å‡— É+#^št{˵ú©mòxñÀѪ¤]¸tñùb©…KRxI/]8^ ,¯?Å貋2æõ³‰&^<í"ˆ—ÄñÒÊ– Ûð&µ`uÎäµtq!…Ëj‰Îz¹Ã)]ú˜t‘áRŽ->¼´‹ÞXñÒ¤ ?ê)ñ’¼xt¹©¤]˜tñùb)†KBxI1]8^²¿”Óú–u2æõK‰&^í"ˆ—¤ñÒÊV ud¸8~ºà`dº*r~´³„Ó-ÅC—W¨t‘àR-*^ õ½±`ñÒ¤ ?ê*ñ’¼xtÙÓ.Lºø|±TÃ%¼¤™. /–×ç½]‰,ORê¤ÖØn’‰A»ˆâ%a¼]ÀàÂ{ñ›Ì0#CÅf¸ä»Ý°+Ò%Rº 1ö¹—ÊlQñÒ!zcÁâ¥I飼ÄKòxñÐqBN»0é¢úb)‡K"xI5]^²YZ¿Ù8 h^+É/¢vÅK²xatÙ`É”U¥¿ÆÄ *6"À…¼}<ë2=]Ð;.À%[T¼LˆÞX xiÒEê.×êªÂÉâÅ£‹œvaÒEõÅR—$ð’nºP¼ôѼþ˜5Áú;H¶Pk,ÉÄ‹¨]$ñ’(^ZÿöÎ/´®ãÎãÖJª£?®cIäEÁ•´#ËV¨/Zƒé’ZÐ-¶+!]6H …:YWu^äl¶›¡ÝuwÓ’—’‚û‡îê%BÁ–b–<ë!Í£÷a! eŸ çgfΜsçž;çœ9W¿/!$ÒèÌoæÎï|îwfÎ6ÍU§§ŒßíùÉ]Uúû7Ñ ŠvÀ ßçòæ¹Y¾alwÀ>]ÈÄØ78\LÙ¢âå¤07k^€.¡J¶ðR4^8]ºäej]Ôy±À¥¼¤§ËÊêÆÆÆRÖ¯Å!xùôÍÉÉÎZí»Cïÿ×.]ØÇ6®ë{™,¼5p凵ZíW›:ó"àÅìRö:GU{49y–oÛ9`ðOOàgõqù70€ž›#;ƾíKýª7umhhèýMkzm !Á¥ ¶(xAK/|n,μ8M—|ˆ«ûÅýÚ/ò¬Ð° ¥B¼´|©¦còç_†.µ(-»0ë¢Ì‹%ÁÅfTüRià’?^ÒÒe‰¼Ó÷‡o䀗ó?è¬ÐúF.y|£ì¹.¶^Œ)$™†—t—²úüÇg/LF4H›»ï½MéR%Oè£W=þœnÛÂË[Ͼ?ŸAT—®ÌMJOt˜~çñÒ#ÌÅ™‡é’[1ý²’o…f L.EñbãR©cß‘–]¨uQæÅà’MTéà’;^ÒÑe%hgåTÿHÐÖ{Ùãej^¨oÓd͇Qºœ·¾ðbÔ@TÈ___宅…$ó‚ïâóÑRYv¨Õ‰+ø¦>ûúŸ±Ýž-Bú„>ŽöŒGÏç¿4Dêö{ö:tÃ¥i¶(x™æÆbÌ‹³tÉ3 ©Ð¬¾†¥^ö+ d;ƒÂK=#.»Pë¢Ì‹ÅÃ%«¨–ÓÁ%o¼¤¢ËJůôía>åû‡YãeJ®o4Ü;ö)§‹Õ…£…üŽÇDë¬l^‚ö#]© ;T‰jY`K•œ0öt¿Üøò@Ð¥JwL<îÜgùùü\¬F%^*ˆj;[¼œ çÆbÌ‹«tÉ7 ¨Ð¬>ƒRU —† d9ƒ¤±*.»Pë"Ï‹%À%èRÁ%g¼¤¡ËQÅy²ÇÔWÉz°þ¯Ôâe7“…£…*¹:ØØ‘ÍKý§¾¶Tf‰*ÄK76'[_÷^A·â—ëäݔԹ\ñ¼3dÇ?aìs«QÉ—ZžLÅ/xé…ÎéÍ‹£tÉ;r¯Ð¬>£R‹& d9ƒ”±.»Pë"Ï‹ÅÃ%ӨΦ¼RžxIC—C±¡{{½¾ŸíLn´¾Kܼd²ðbÔÀCqÔãqCc^bJeÖ¡Ñú:ñ¢ ¾%£ÿú9¶ ç¢ YsyÙónÝ&ÛÉØùüçGmF¥^ª3[d¼ô„sczóâ(]òN 2ö†å4Ë2ƒÔKíó›1±.ò¼XšK¦Q¥¾TŽxIA—Mß?½'ªßÎ2DM}#ç^²Xx1jàfè×™kŽš—ØRu¨¦¾y Š˜ÛÞƒ9öø ?$&¸W_=w}Ÿ¥çó_ö¼)«Q©—šOÉ/3áܘּ¸I—¼È…Œ¶ffPd¬2xPë"Í‹%À%Û¨Ò‚ùá%]îù§¤†î=ñý• CÔÕ7åÉx±ºðbÔÀ{þúcY´d^bKeÔ¡ºú:KèC•“÷ɼؠHt§Ço¥Üaçóê²UôRJÿl€€—“|nLk^ܤKÞ äDÆ®XN³ì2(z©}ºìB¬‹4/–´9ã¨Ò‚¹á%]¦ý^¹¥{§üÕ CÔÕw-J{ /º Ø¥hZùN…¾U‘BW&&&~ß°”t)kª«¯6¹Tò!9ªm?7¹F*¦Û•ÑO •¯wÝÄ[vM˜·•Ýâ-½Ð¹1yq“.y'õ]-¦Yf½Tm[°.Ò¼XâC”ÓÎfP^xIAߢ´´?ÓUB]}ẾgáEWá²úÔˆï?Ž ûH!³R;Ô,*#YÊòˆ ñÒÃçÆtæÅMºä@Nd,Ùz%ʨ”v@]ÊâX]Þ¬‹8/–ü„¾Ã”^RÑEièÞG™Nãêêñ¢æåj–Î7æFG´Y)‹ª«/5],Fe{Ä„x™áscóâ*]òM '2V‡ƒRÚmt)‹cuy1´.â¼Xƒã_\Π|ðb….½9Õ ¾Ë.¼è*\6áÆòdªR;ÔŒy)éÒk/7Z1!^N²¹1y) ]zó¦Kþ;o€M)í€6º”ű:?È­‹8/Öèl1§3(¼¤¢ËéˆKÛÈt¬jêØN=›a…ïuw¿+üsA;çÅ ýÓØØí¹Ø™1åRïv[ìP]}µ­ëcccsH­tÑ…Eßß"?ùjP~ÌjTöG ÇËÀ›‹šWé’o9‘±¯w«J.uý™Ø™1³KY«µÐºób ®t;ƒòÀK º û}JKGü¥ CÔ×דÝ‹®Â÷…ßß\ îló‘Í,Ö ƒ/Ýf÷ò„R™tè°¦¾Ú·èñ.d‡É ¶‰Œµ 1†yY«×Ñn·æmF•ÁˆáxéascQóâ&]òN G2Ö¼ÔÙ›kÏPW²YÕ¯4u)+±ÿŠ[a^¬!\º¦ÝΠð’‚.«þ¼:èebL}—#x¹ša…ŸïŽ h T“ŸòÂÏyQ Vׄ饘R™u誦>üÒµÛ<¤E .Œ.h#òÅWѾqàvq®f3ª,F ÇË ›‹˜7é’w¹’±F¥ÎÞ¼þŒ0çUSÍK‡ù¥¬Å^eÖe0œk—®^t=ƒ²ÇK ºUŽd»ã%¦¾pnÌö‹¦B´G-à C ™ôêP¾S Ëd‰)u˜e‡—Rë[F/ŒÆÖ¥›¿FŒžŠ|Òµë>aì ü$èþw2ÎFµ¾K ˜#—E¼X}âE­ðg3"ZvˆƒYÇý:=: Ûƒî›üŒ•H)M_ |:j«CÏ^ˆFõ7Þe|ÂX•½¤’Á¥ÒOŒ‘Ñ)[Hè¶>æŒF ÃKSÍ‹«g$ç@…gì;F¥ö)Q¶ww2È$ÝF¢Ú¡Öå:ŸK„ cËÃ®gPÆx9‘¶©£}èùžÓý?ÛIM}×ny/|nÌþQcr…-LˆýüAò2áíÅ P¥ƒ z¿FÉÒU\coì&J-éàây£v:½,lYjîÛìå”Ý.!]ðáûWð¶1Ê–ƒEr)[sF#†áe†Î)æÅÙ÷»ä@gì’Q©!Kuðl7eË‹ÑÂ~ƒ²Ý@5ª*µ.;l^, .[²ŒÊÖ'˜-^R¾›r½Ég~ý»òµ²Q¨oúG øµ‰êܘÝw¼ˆ ì Ñrñ7Aî¿[ƒõÁ~Só~…L‹·lΖۯý¾ÿG…—š^ÑÃÅó~"40õBäM”ïU”¨¶ññ.;4¬\(]ž?·pµí¶0¯W%—ú®¨¢Ÿ Å3®^Nâ¹±+/ÉæÅÝwSfÔîThRßÙ›8ƒhšíc²?ålé"·ñ_$'ýŠÉ¿ßí‚] ›K€‹Ì–Ì¢²ø fŠ—´o>>Ú ¯á¹v÷Ë—s¬¬¾á%ô:1†—ËÊÔØ³ö+\®ñ ±ê_-x^!Æå:YÁ¯Ux¡m|Ÿ»ÉØòÊ}ï"½‹±ÇÀå\r¡fದ ™¼_ì <™ÒïC` Ùrq—\êïó¡ùV£Ò}‚Eñ2°@æÆ>”Ì‹Ão>Ψ;Ü©°A}loË NL‰-ü6nºÅ²KÝ©‘w»TÙJЉp‰°%›¨ì~‚YâåDú?Ýêì|TÿÖÝ/'žË)?nÜ +Y/lnŒM=µZßÍ?u> Ñ‚ÌÀç"Ï´wv~ÜÍÁ»áôÙäÚà8‡ ï«z\ä¶<΃úÆ~«†ºÅ6"Ó¨ÐàþC­z›³Åó¾C.µë÷Æ{.]šš±ý ÚÇK™“Ì‹Ãt Ô½¿¿ß•kYôŠú”]Çû?­Òƒ»D¶H·qþ²×À÷÷?®ïÐï6Ûj0˜[¬w{Ÿ`†xi….h^eöË@=yç%ÇKl^ì-¼H› Z‚Ïáz„-h¥NVÅ·n†l ~tF¸ ëç piqp™}™‘+d²n[|Žò€Gõü¹…”.w…9±7‚ˆà•×лvqÏÔÅË Ù76'šÇé$uWý˜I! Ó°E¾çÞWب]^Nâ¹1ɼ]JC•-Êm¼ºàp¹uù .%fK–xi™.ŘŽqnÌÒ‹-Ê3ø“'ÆÐ̇üÖÂ_ag@ßV?“H—là2ÜS]º‰ÓÚZãóblbìÌé4D‘ñz•µ·zý”Á…X—Ð…âåå<7&š KIÈa‹z/„.øÜ—mn]ÆÀ¥ÜlÉ/-Ó¥ óÂñÒ#Ñ¥å…ZT²luwÍ,ൊ‹ô|˜p2ÝÂDáÂ_R©¥K6pyŠ:ÑåÝ-ÙgÝ y@: -µÔ«¼m(¿¥p¡Ö¥ t¡xù6žÍ Ð¥d‰²%r/„.‹äž»ÍçÅ´p)=[²ÃKët)ȼp¼\×õ[[xÑ ECB´÷uŽœÃÙ²=Hïsø©øíï…÷e]2 2.¾É~D¢šCTCkTã[l/Ñ`} t.̺”‚.´Û?Ásc‚yº”€,¶Doã…Ð/êW«|^L—v`Kfxi.E™†:7FèÒÂÂK-*Y&·„ñ~sUüê?„ºè}ŽL¡û35/ºd—§dÎër—ð€‹¬+h+ÛÜ'ã4*aŸ[ð“«Ü¹0ëRºP¼¼†æÆótqž,:¶hnã…Ð?¸ÍæÅ4pi¶d… t)ʼ0¼ôXXx‰ e0z"åö¢ðh’é`fÁ»ÏžA\Û¡GDR¼ Õ—]~cŽÒ% ¸Pã²ÛSï’] µ,x²Îãßí«ÛRûPâÿ7‡ ³.%¡ éö¹+$ótqœ,Z¶è\d㥋[o©’¨¶©uápñ¼çëR&ºP¼Üåæèâ$YâÙ{ÐJÑÞEˆªmÙb/vèR yQñb²ð"¢½&KG~ªXĸÔwd¶p¾ÜW\^¨yéb.[_—K½þüup¶K“ïö(*:16(ÀÅ;'X—RÑ…6ð.3/@É’À–ø#" KµíÙb/vèR¤y ñb¶ð"£%†, Æ%|._þMÀ—7ñ,Ô÷Æë!^¨yúÊ:\^QŒ :ClB ¾Ol›|·ßâËþk.‡ ‚u)]˜{¡æèâY’Ø’p¸}ñt©¶ØÆ‹%ºi^8^Ⱥþ³©Ð"“%޸ıß»Éö¬[>†â…˜—°¯¬Ãå¶d\ðñ”^”.[[&'_ ïpÜâÎíú>—RWIg2ëR2º0÷BÌ ÐÅ1²$²%éµ\…Ó¥z,Øb/–èR¨yñ2uí'K›M¡E%K¼qál™Ô¤[,Ÿ çÃP¼|y¿^«ÕpT-Ãeeuƒ6P„ 1.-Þù©¡ ¾Ú#±‘]Uami±sûÇï±R;dùÅöì8éËñ’Ò…º4I¹}ãχ††–6]ÔIº„ãË>Y’Ù’—4T¹™WƒR(5jû"\¢l1»T‰ñÒjmÑ¥PóÂðrþy“¢ïß0D‹†,±Æ%dËäA<\&Oïþã/WKHÜ@Í`º45¾m‘¥1[âárdï“4»T4ƒ^Œ®å•a|µ„ßFíÑ¥`óR?»co¯×÷ohÐ’H–ã"í«ê¬K5ÜôKOc|Fe¯—k,lIXs9Ì2nhK©¹±Ý'VŠñU|Ù£KÁæeÓ÷Oï‰ê÷ç›#KŒqQö 묋—ð¨dÄ—[SѨ†í5pDA .Ô!æF`íQ/,²¨âJ ó‰1òºœs¥¦Ë¦½n?6tÑõ™²˜°%.›™&а¶T$ƒ"{Ë1¾ŠO ‹t)Ö¼ÜóOIݱ÷Ä÷5C½qQŸoÑY.ܼ¾ i¢Z±×À) -¸ÐúcYA/ õ–5ѼèJ­Ð‰1º!y¡Ôt¹g¯Û ]t}¶ß*YŒØ’´ù^¶ ´¢)Í}õù–rŒ¯âÈ"]Š5/Ó~¯Ü{§üš9YôÆ%úì¤ÆºÈp Í â‹.ªU{ ¼&¡êPrcÝÿ…•¶Ô*ë.âÔXéb±Û ]´ ÔYÌØ’—zÆ ´ª)¥ÉrޝâÈ&] 5/¾ÿDé~´¢}blâäÉ“_?ÙPŸ|•žU/üˆ½øöWØÎ "ò¾AŽ €Þ„|þ·.ªC‹ üù…-I¾ÿ8’wðoÐ ÔAB©C21†O§ÆÊH‹Ý~lè¢_­Å-‰p©gœ@w>P¥Í h¡2Œ¯âÈ&] 5/¾¯tÇÞGþü„gª òfà÷ùOø;o‡?»…J]”þð"{¡0?KóUá™]TènZˆæF‡°k,©Ô21†O§ÆÊIkÝ~Œèí³éôd1eK2\ê'Ðrä81mE •a|Ÿ@VéR¤y‰öG¯?rÞ-^¡Æ%‘-%s:¸HÝæì{º¨†í5pÙ„óMJà‰1z8òUaj¬=èÒ tÉ·Ï ÙÒ.õŒhÞˆ.óéÒÛîté-œ.Ešu“òrCi‹ž-ž±.çâ±÷¼LPºD£Ú°×ÀZcn¬G iK á‰1z8²85VNºXëöcD‹}fÊ–Fp©g@tY–*Çø*~0Ø¥KæeØïSúcÄ_2Ëu«Xì9È‘ cÊ‚>Ó7/#©£J×ÀáÈŽ—ŠÿŸBT[±¥®Ý L {¯‹85VFº ÛëöcC‹}fÌ–†p±•Ù¥t¹±TÎñUü`°K—Í˪?¯NúG&¨nK8c_Ý0¦…Ëìø¹¯pór-mT)¸*? †{DnÓ•úMŒñ÷ºSce¤Ëª½n?6t±Ögæli ›Ÿ¤Ù¥t¹iH9ÆWñƒÁ2]Š3/G·#F›TãÒèý-‰p Ȳ+­¼|ž.ªÔ u(_¼–yc¸yÑ”e‡ï“Æ„©±2ÒåÈ^·ºXê³&Øb›Ÿ¤Ù¥tiL9ÆWñƒÁ2] 5/þGÒþìŠÁ{ ã’Ä–ˆuQàÂÈ"­¼œ¿–&ª¸*?j¼Î)E Í‹Rª2…¸¾’R˜+åI0«öºý¸ÐEÓgÍ[m†-&p±US—Šf¦A£*K¥i mº¸òr臼}rÊ÷ßiÖ¸$³Eµ."\D² Übæå\óQµÖÀC19Ö…cÆ‚F…+/‘RWny—DžÑé±RÒ¥n±Û ]ZﳦØb«Ÿ¤Ù¥ÔÜ`H*Ãø*>lÓ¥ÈmcA‡Œö¡§€N÷W|ƒE(Ù¸4`‹j]8\"d™é™=÷÷ļœ›m>ªVªt°Ì@ÆØC¡k]áûj©¹+Þ³»Â{]©±rÒÅf·º´ØgͱÅ.ù'š/¾ø/š†•`|Ÿ@ÖéRä3/èu?ó£èßÓ OÅ‘KC¶(Ö…Àå£d zà]yy{¶ù¨,4òQbøÓG¨Âø²ž6&–ú >m@´.ÂÔXIéb³Û ]Zé³&Ùb—üHÊ ä\viçþø*>¬Ó¥Ðö6ÈË:‡›4.Ù¢X—jô9LʺòÒÕtTV(Z#¯ä|ÑFE^†ü=é•”|j¬¬t±ÙíÇ….©û¬Y¶4—üH,UÅÇï¿ i óã«ø²O—¢ßórã†Á®d\LØ"[—ªò„>% g‹çÛ‘Þ¨²ÕÙù(×òB/_4Q}eŽÀRx%%Ÿ+-]Œû èÒbŸ5Í–æà‚ûj¿+ײR/úF:=¾ŠO ût)ú%•&‹[ë2;~îŒè\8YD¶ÌʇÇöUbx ùÂÊ¢š=…à%´.áÔX©éâ´¥K³jž-ÍåȾbxIÓÐc® èR´yiʸ²…Z—·ð:˛ܹd‘ÙRWÞ¨R ]B¼DøÂ¢zêy/â³;lj èt±Ë–p)´¯8^€/ÅÓÅuó"S¶ërfW<[L"K„-ÊUФ‹€…/,ªO=¸ñÑP65tºXeK¸ÛW!^€/…ÓÅió"s¶Ì¾Ž|‘ìS ¨lQÌK¡tñR_ž¡QÍâÈU¼°©1  ÐÅ&[RÁ¥à¾ð|)˜..›—и˜²?ÏŽ|Qs¶˜Ž-²y)–."^ÃÍckHTOÉ{iT¼Ð©1  ÐÅ"[ÒÁ¥è¾ñ|)–.Κ—и˜±…=)ÉÞërræ¥(\ôl‘ÍKÁtñ²&ŸÆ_ÇcH»dc2oº]ì±%%\ ï+ /À—"éâªyáÆÅ„-â3øè[ý´Î¢9¸2Ž-’y)š.^pTÝ|ò CϺÈx¡Sc@ ‹5¶¤…Kñ}%ãøR ]œ4/ܸ4f‹rºËEö¬K. l‘ÌKátðB¢ ×÷ÿ–<¶ƒžu‘ñB¦Æ€.@[lI úJÁ ð¥0º¸h^˜qéjÀ͹aìY.ÉlÍKñt ñ¢â|!/àÄϺHx!Sc@ ‹%¶¤‡‹ }¥âøR]œ3/̸\OdˬîÜ0þ˜¾zä~¶ˆæÅº„x‘¢b|¡é‹x!Sc@ ‹¶´'ú*‚àK1tqͼPãr°Ï=Y¨u‘ábÀÁ¼¸@Ž)*Æ—oÔ£xÁSc@ ‹Ûi pq£¯¢x¾B§Ì 5.““ql‰'Kh]$¸±E° NÐ…ãEŒªëm¥S¼à©1  ÐÅÊ­´¸8ÒW¼_  ‹Kæ…—¶$’%´.ÒË ÙÚ7èÂð"Fõ–7qBî˜/xj èt±qm .®ô•/À—üéâŒyQŒ‹Ä–†dáÖE€‹9[Bóâ]^„¨Ð£” _B¼ ©±Ë@ Kë·ÐÖàâL_iñ|É›.®˜Ù¸l1! ·.!\šb 7/®Ð…âEˆ ?Jyë÷Ò‚Ç ~¡ÐèÒòí³E¸¸ÓWz¼_r¦‹æE6.œ-¦daÖ%|ÍqsláæÅºP¼„Q±g]¤ó-^hk.Çš.­ß:[…‹C}ƒà‹Uº¬¼^«Õ–6ÍËݯ­nll,åø†©BɸP¶“…\êwè>LáÒ<[¨yùßF}•7^¶xT9ÅžuùÂðrÕ›º644ôþ&dŠý¡ú^Ðý¿Ülj@ç@-Ý6ÃKµ ³¾Ê/J_ÅtTÞŸ`Ðe‰¼Ó÷‡oÄ›—k•†…ìJŽJ2.˜-Mx~©ùNò¤Ì o¥` ¾›×òî¼L†Q\b¯¤øBñòþ¼S¡·‘ ȸT–Q¥f‹p©Vá’w/˜áE•¦³‹½ tYA]¶¾Þ±ŽîP÷ UNýº¿$¡Õ¯]¸Â~V¡h\¶4AåRËøÈýtl©×4/Eå^:Ũ~Âòåæ¶Rè^du¨6L u@ç@-ù)Z‚KÞ½`†—ýŠ6*¥ÃÜ‹Ý}º¬=Ûñ˜hÝ÷ã Uú>Ãúé¸BVsU¸‡u:¨ðŽÀ–—›!KôRË“soÜJÇõR‡.|èk“±Qq¾\H(jy¨6N Ü‡N¤¾ôK jµGaÁ%&*±ÓVŽy¥¡ËQÐg¹:ô½ùâ3¦¾Jæ]‹*|²ÇT¸ÌCÿ¤)²h/uåV:¶D/å^’¢b|yädèí £Ê}èDê{=õ2u4ªÖ¢rb.ú Q…|9.‡bnà측+$À%À‹¶MŠŸäÞ^¯ïw†G4š“E©K騢»” Ó¯ ¢"|Yv2ôvQå>t¢õí§Ýe1ôR&å˱ϠtÙ ]=óöúB}&êךB6TxzOT¿?/±Å,úK¤c‹îRÃÅè£ øòÈÉÐÛAF ”ûÐÑ%PÊíµC/k!¾ìû JA—{þúcY¾¿-tJ‚Ëg_h ÙTP¡ôIî=ñýµi²Ä]êŸß²ÕJáºIT]wœ ½d”@¹]}w=êË›@g»kÇ>ƒRÐeZùæ…¾{ý°KÑ´ß'Óå³Q5ˆLû½òG¹wÊ¿Öå{Âa[]*ï¾r3ôvQåÞÿ@¶£‚ Js̪ü¬ñº_ÙÔêàrJ[Èî÷ ÿ#ikyú ݼTÞ}åfèía^Ô:2úŽrGíu©ÜûêØgPª3’ÅìX÷ýwb q÷òÅhL!› *ä_žœj©B7/•w_¹z;È(rïH ÛQ÷ :‘¶o+,5âVª‚B#}è™Ê?ôWü<–³‚ GûÐL§[®ÐÍKåÝWn†Þ&xiœ@¹÷?$í¨Žy¥|7å~±!Ê z%±Ðüh%±MY¬ÐÍKåÝWn†Þ2J ÜûÈvTÇ;ƒÒ¾ùøhƒ¼Ñsx©ÕB6e±B7/•w_¹z;ȬgóîH ²‚mA€. º€@ è@ Ð@@]@ º€@ è@   €. ]@ t@ Ð@   €. º€@ t@ Ð@@€. º€@ è@ Ð@@]@ º€@ è@   @@]@ t@ Ð@   €. º€@ t@ Ð@@€. º€@ è@ Ð@@]@ º€@ è@   @@]@ T.ý¿þeiÊØmÒIEND®B`‚mcl-12-135/img/fa_400.png0000644000402500021140000012002711017231516011523 00000000000000‰PNG  IHDR·aÆþtEXtSoftwareAdobe ImageReadyqÉe<`PLTEûîÙûúö«SþßœébúÌclBñŽø® óŸ÷º0—“ ß+ê_Pb£ ñ1¬cQŠ…s„†" Ë~Ù¬9ÆŒD”-cTM|w7ÅÅ̺­ ÷Ç¿ËÍÿÿÿ.¬ŸYŸMIDATxÚì}[CãºÒ¬ÐÅ’[(Y± &&ÿÿ_žª’ à aíïá<,öìYŽ­–º»úRm®ÿ}ýõeþ[‚ÿòß×ùO ÿ}ý'ÿòß×ùO ÿ}ý'ÿòß×ùïëˆy<=¶W/§Ó§ß2§ÓËíÅã§ß{¼½ûåö¦»¾^~¿äï×þ÷Oý/oøm t//ùÝbÜ-SYÊIWï–²þòk¦[—N7¸–ýÅû½”ù°êºåÐÝ-½[Òûµ×¹üIĬ‡¥ìýó ¯¯¯ë˧5˜Ûœºc·Þ/Û%»céÚ ¼¾–—ÿI /ݼÌ]úÀådÿ×ëÿ§U?³ýqçeíõíöãß±ëqûn™—åt·ø—e>®¶·§uY–ví<Ïëÿ@u-Þy™ç¹ ¿pÃy=Ú>_^×àöï»àfüZ.x˜»äxÿîÚ/iûõ¸,ÇsºàÚ§ÿI F‹>Ù°²ózt[hÿ³s*ÅÎKçzw,Xô.æ°á'ø¿MS7gÜLß÷O¸­ãý9ðCp•c‡gèúÞ–’ó¼þߘ¼ ¤‹Ö-‚ïÂæðÇáo›¢nx±5ž!¹äàÚWÈéR¸²x–#2væGY¶ÍvH÷úzþßrí JJµ¨¬.ý"o3çH•µ8c§3^°§œ¹š¾J¹¬¼u7wǨ,ÆX\2q5ún½ü_©¬­;\ÊÙ×êyçç¸Æá†±»¨,çýÐͯevîÞå̇Á-@å¸\žŽÝÝ› n^;k–Oµ…víõSYÕ?v%âËû¡t/rà=â(§8•nrø‰÷¥»¤`E‘"þÄxèNqØBÎþŒ¾wÅpÉ#.Ç,ç)NW/¥üßëé|öú:w?ÆBq[öÃgñ”ÃPN/Ùí«öå–nFÛp—<¼@".:LP’žB©ÉšâÿÁ1µÃ®~Œ7‘àipêm·¡ç¿û!ø:WÜ>v•±Áð‚I#î+ 1Ü+l|Ž…Oü ¯ê°õ6§/±ÏµÚŠÒ¨<ÞmX&‹?ÕmTÆ\·<á<ðÞ-lž]¨ÜaâÉqð¡ï“›Ý=ú gªBúX$Ï•ÃçbµÌµšÿƒ#±ÂÖÊ š°Br¡Ìñùé韺ÃB"›ÅˆÝÓÓÓóD?ˆŸ‡ …ÁQ‚ (’Œ¿p̃¯)ÌC$ )—ï–ÓÑzœÿùçŸç‚#Ò=ó,£q¾‡¼ç!ÕR Þ%è<ÃVÃTûÈ¥:ļ³ƒÏpsmøÃ„)\­ÇµnÙmc.Kž/tÀß”ÖJ8¹_Rž —4ðô€ÿÿ„‡×3¦<ÿÄa„2†§? ádÀ:h,Û@ŸYЋÇqÉðªšdÆ8 éO曥ã^¦wõLàÚƒ^@ 8ç½7&[÷c0Lµž¡jÛy UÏÎ̲汩pDºvT&€(Ü1}÷Xá(Áî¹p¥Sƒã¤iüeI P¥S»vlb‡b¬°Kp€9ëöï#&‡×¬tøóÓ?TPð76?â ±ƒDžaçã™xÁðœ°èÔX@VÐøsgF(ì!åî0J ßAé™K7 ç稩¾øç™7Öñ0.ýX Öw0v0ܰ,7€HävµîOéxdbø³G+†àgZ‰éjq_AÓDè7W¡œKIô,þèiÁýyÄ% <Ø`BhÔumøC8xpÚ¬uÿúˆ˜XN¥ „Ãó¹Èç¡Èñ1°´Ý¹“S Ø‹ôîÃŒ½EEƒŽÓN—fÀ¤^RþûÒ-'® ?í¬ó!‰œùjØêÔ»J‘ÿP ðåìáÆa³y÷D!®.=ÓŒ•-^{G @…íKØapRð/˜z:`‘oôÞÝצB·ÖîóÂÄ$íIÀ¹4ÿÖŠ˜(CJ ì› ÊOP À×Ý)ûa°c„ÙÆAæÃP$8' …žÝý!M>îÈýoò€Žà©h"ñûÿõ—íyù ýýWÔî2–8èY˜€~bœlŽ<\4ºæð Z Ú kŠf:‰™€={³-ýüD CgñK¥EÆÙDTí[oÝþø½¿®Âç*0õ_Êc³@FÄÊý•Øq¥¾ÿ‹ÿÆPJ~4·ÉG0<(Ð\ÐÄWºfŒDP ÑY}Ýj€!wQôV  '¢`j÷ÀQªÄÝv®cxÄs1Ý€:ËR…AQÍøošqŠ6ËØMš) „k°ÁrÖTñH8%3%òûÖ24?–×”4¤¡obÏiJãËa¦þ< (ÁÞ8;ã…›µþ\¦È…ƒjäyI-ÀE£ëE¬þŠc’]ݸ G–PŸãWuGåMEÊ{$àBH£Ò”@ÿÌ?ä±MØÀÇnš9.Ú¯pR`©$ Feæ2/GišZ—# :`RÌþÖñè¡"ñn¢¦£6þ|RçÉ™&ä2U yìU(H¦0nFUbævÈõååçò€1ƒ®é±9Cïórl§j}áÏÔ/Ê|\$"ï—G£€ ãX ¢¦ðrä¦çYÑñÿZ"//MYñÚítPCâ?ß;ÿÄ6ë_îäá´ývT€DN•‹·qÔ ]¾ÐªÁw“"†Q“𚀻ó–$Z @øÙ|RZæô)5u4©Ü9pC°lûŠ¿^Eozüñù€£=d¼¿fןŸ»ç& µ¦FÞh憮{†óïu@\{Æß›K‡•P.MzÅü2qõ…/wXeÃϸOÚÊu¨3>ÒI ø\8-Œ(—ïqxó7yàéÝ'7Ä<ÉíM¹—ÿ;7*­·ÌDˆt¡uƒ¢?ÊÉÌ0×L¹9lyü3’?(­0—9ÌZu"ŠÝB"m»vLµ] È3CÖ½üð|Ú¹«{Š Q<ÒTè‡Â©^V€»„H‡’9 *Ó¾pBº9ã^qÚ3VºÃùš?KäåððçÚï‹á§æÝã¯:Ö qÈŠ`­þ¼>äËéÔºöÞÂÕ@Ñ´0Ç ƧÂäÁ[G¬½ÀÆ&d_ð9u®5ÎÔb3ñäq õ ßkƒ;ËA›wËL3­”|Oñ Új–(OíÚ±™R“0‡¼¾üÐ~Ð(Fà©°çËq¹6*å޽Kð†= <=fJfزedŽ1/…)ÜŠ*\á"“WŸ%òr@øûm1¨˜¸o‹ÿˆϼ’9_ð!멎ëT3,¼ª€7»>9áO„PÞÌ]Üpw8=Kaúª˜•ƒñ>±M&¸ª™ßÊØêÙàævÖéÂX`ÆK7Í6Þ€!,wì¯TÔ¸öŨ ã3T€ÀÝ »«ŽÙ3ì„/ã8 Ø  ÃŪ‚«[m^¬p @:((sXÃÃzpï éz]/áÐÑ»¢?ï”õ¹~–ÈËúðð U—ªn˜°¼÷ƒáÄ ‰uCWÀ†Ky ‡;NHµ.2!ä‚…n‰.fêò táðâÀÐNÅ‹Bàžh_ ŒòuÁ šrè$)è®ÚL@¥ÚN¤ëË”(0žÛGh¦ƒž³5†§Ý‡#Š¡òÚòM»ùz@ÌŸ— KŽ0z¸ #Ý›Ò=ó¢5LÐåðApÞŸŸ¨‡]šð†vÍVË0Š%©ºI&’x‘‘A™õëg‰„y-e¢3¯xtÆ9Cp­|¬€!/2üüRÖÓ÷F½ÂµfÀ‡ÿO5Ò¡ #Êcí 8ÞQ±ÆXΈÇ6;ݯ+c£Ú:<ç‰ÞÂSÛ ®±2;.m™Çƒ `fgøÓ€óÖ,[ðSÀ'¸DúZ3‘ql€Ä=t ÍOäK÷¸Ý §†§ç"î =)AE¬äáEÎŒ›b:Óö~¸i‚4·‡K‰RÜ2 bˉºO!`Á›&@·^ÎH"<ôv¬yŠúý_ÛãÇ€õ{/ 6^Éš<Â)bü6U¹¬‘¾7°r^®œ¯œ)Øï†j“µXp‚Úô › /`þ°Â–áßL‰Q"ÔËXí8S ÌQÔ'Ç÷xCµó• „(=˜ x?ãx@õäÑüÀ~@Ò6wdÞ´‡=@ÈÙ'›¹ö~ÑÜ̼ºÉWËŒàRЂ‚\ˆZÃVÊŒÀ+5hÒüÞw‰f‹ F6€%}¦K¥Dë@˜Cç]‡‡d ãÀ”¤ýV @e ÇÒåÏ8„°b w‡¥iªÅg25bg.|‚—Ÿqœ l2ƒû¤ñŒÐGH¶Œ*›åIk™2ÇsgS‹ÃT±P"W"ÍÊ$Nò. AOÇÌ3c­õàÈbï;fP½Õ¹h‰zïYÀÅ™2Þ–Þ͙ǒéZƼ |j]‚IÜ#4¦\pø9©¡ÃºI„*92Vg°/s`6rdÁ@'}vFcËâ !Öþ.c®ÔÆÍ@<ÜѬXp³¤‹nÆ-CcàÎí†ó`˜´t]ƒŽÖ0Ò… Ba0T:M<5‘®³©\Ý8sõy]»„ ˜]»ØëÂS–ͧIû‘š+謷Ú4À* » ØÚtGcƒÎ…J0¬Ï}݆1øòðf419Sá)!þ¸¼©)Øl˜±Ä½LÜ’)2ŃN¯”Ù%b(A><-™»Ñð3çJãϮܭG®×&ìãò7œÖu…©È‘(l_~Â&ûŠó¥åTöy«AYéM&o*—Ú<à¬$Æâð› 4>òi­v°u'=Ìô Ð!¯l—~VjåL¿*Ä( £[ò€ŠÛ=0ä…ÏB ;@£¨é©†4›m ³â¼aܼ…:ÏÖÍã08ÙúR›  Žç]ÎÇ‹ã&…²Ög"U 5àÓè6)/!¹ãZ:ÅføkgF3uÃGëd‰LaÔÍòX˜°Ã­0y¡8+Z-fä«vΫõî—Ç¡¶y?©pÌ,S¬y¦DZ Áæn…#ËŒÏò¹låÚ–DOz™Yçxm°Ï2i’Cá‹’Bó:©èX\p Ý!߃CÖׇW.H- œ³–Ãðƒ°ý¯ýxM2´fð8µPÜv§Œ¾CX‰º–‘1 œùÊ[XV#“Ç\fé â‹ðùÀýí3Zýn¾AÙP.p„aMSDÐôv CÏåáá/Àð€¶À/ –V·iv-Š;e‹ml˜i¶o¾ÇÇóå sg’âÖ™WZéÂv¯ôÞZ~è8[u* É/‹wÃkŒz±‡YKL&}=)™<ŽØðažË·b.z˜<χåýA3Ôvß_¡ùF˜¬#6—¹ðÄñšÌL5;C@_c†©Ýðî•W"_Ö/ÇåUðC ìöµ„?ì®yÅ7z˜Ü&•KèäïF®9!9¯BåN]K–©Íí„° 'Sñ§ê €/tØ»ƒŸ B‰Ô³¸wˆ†'[+·ÐÉmÀñÁ/æ¢BÞ̬BDcn_§ÕÎÝ ^è¬>¾}ï¥c!÷f¶¼^î=!¡Ð_Xœ)¸·À2\¥x|X‘÷öãmIhG°nŽ)hE!.`•<é†(Ž€ÏNk^qŸWöðxÕÝ^Ûÿq .+_¬—‡¼¾Üž»Ô¼”‡pª ÚßN¤t0Ô-JHlawog{…¸X'æáÊ™›#´¥´`_à:ÁtÓw±Á¹3«Èg(ª¤p!ýY…‹¹†÷¸–ÅwÚí­Ýú¡¬ƒXà±[i:‚{þ}¼Ç†Ê⠾ײ•½J·ãЙîčЏ1³¸Å|,’‚D¨´€ RÌ‘÷Èzˆ3nViD:üÌóÚP~8¯åô¹Æ~mû†Öìñ#Tq0Ö…¦#cç­«ù‹—uÝò4©x æ» ÿƒ‹FÃMGÑ}t !5º¼,6“÷×ôªÌ#ò[$†fˆ’O_N\œf òí Æeo¤™_èI¼§Kˆü'&è¹îò²Ì  ~Íáaè(Þó8à™Ü3Ý _8Àùt¿fê…©'åh1ÊU_Z—eKÊ+Ó;`.+†ã0U‹âÝo7ð¶9̯©8zí èÄ¿‡ßéƒP" ‚'ABËüøn‘yÚÒ§ªPE¯èbS´ü€V•HèòŒSo§JÏ—es,rÄÛ*pV¤}ó± ³¯öfÆ¥íß$’YFŒSyå)Íù^’¢ÊÙŒ@ÔP{àŒí} Lü4ºÁ‡Ïias¡`ÖÆI(if+]Ë=)D×rIÀÖÇ*à6¤ø[%‹€`ßTNPrÁyšY= ˆ‡‚Ë kŽ@wïmtjذÿV |äZ¯Å–ÞX@Zõ^#ž”fý5ÄÉË›Y '}ÿ/_턊M YXNãpxCÀ¾GÅq˜³V€ +÷~@>œW$( ÿíî6#" ½y†avVÛŠÓjÞSP¶púª<ŠÛ* 2„Ôê;œð,€”¬u9©vL?l¡wáÞmâ´b ˆ]¿ˆ¡Å²|©ŠyœWâ37·°-.Åðë§Þî5;‰ï§åÆÍŸݼ1l[¶XÑåQØÀÑÚÙ dûp@øï|ÛUˆÓ åëÝ'äJ¥¼cºË2:.ð4üD“üé¿.zÎ_ÉNQÁl_„öÆgw£µJóÆrîŽ ˜>˜ùÎm¢“.»àîˆìó…ac¤†Zn¦ß„бØ.ñoé „fo*ò ºB×6{,/|]Ø.úŒK793+{RlÍsfšJ JÙÝ”“NÈÇÄè~FèzÎÒ˜³û@ ëT$Þ[þ›5ûSG‡‡±ð/§?•‚æ×L”¦g¦¬€æ ±˜à—Ï3À ¬ú hsï}1”Ïûª ê °dº†U  Ñdý.+ 0”v'F>ü᩠𪉜´k…§ub·ŠYÂtͱƒÞj9@ Ç¬¼¡âݲó„˜_ Ë›¨¸«*-úýÁ9–Û°§N^Ç58f Ð>ã²(ùò^•ÞëŽOX~6ÙÀôDëñάŒøçéé¹Xè-Þg¸[g1âBvw „‘l^( AúÇe^ç°Ží´3|óá£Yxt7Èa›@¼u›£ B€ÀÐ r"Šä†Ó&1öÍqâ ùô\팰””Fš¿ð˜Ä &%’wc (3Îñºâ\·? o ,Í®gì §~IØ6Z¿Iér¦“+òÏsñ£1ýÕä{oÊ(„|½O zõb晀E‚MíˆËèz-xq²¿ —ç"™ŽøP¶Sa«Bò ëkÕîb'ö,(Y…ÏKN â·ÌL¡˜Û 1Ÿ;/dG°«˜³»v¼ÿˆàÖC† o* UU`6`‰“^|]êÖ „ºç'Å0kSb­¯84lÒð~a \^ø\=®>ß«³ˆ·ïjGÐú0ŽÇ1 ´£D… ¾z¹[áÃNjSû±D—™*\ P«XxpÌúòbÆKÞäZÔz8(Ñs²Êc³¬žàÚÖ–C4û ùýàgµ6@éÐ7?îÞ0RÅJ<³´)»©ô a\Ýtøƒ<‚ ¥°”Ê×|:ÃJ$ƺaâ+–¢.eRî)¤3 ¬ #¨s¿Î"Býº6øK•²ž‘ñ+h£<Á¤@}%kÞqÆ|8%Œ‹P9«Ü…Í…£Ið ƒ*À#ôœ™õé÷.2Ok˜î~ó¯ÚÁ ù¢5‰v$…H”¦,öOjCØ=9XaØõÈjÖð0°žÿ°„¸»¹ö`¤ƒ ¿7+ͨ;ÂÑÏ*µd6ÐZ¶\Y{·Î¢çäî"ÇõÉX9ËX\ò¬3Si%35VMØ {+Me1[gqï0Ê€Á8RÐIÓ•pO¬˜Æ5YéÇ—äµ->hoJ¦êÍ—•¿8#pýÂ^½ù#04T{ÔJ)å°Ø5¥5¿ü% ?ŒF»L fœ”ùµÌ¢¨Ò4ôÌ Zí­n'>`Ì]÷„ý¯w ĵ®&Å«Uõû´9{KµD l~rªÔoŠË©{ƒíHºŠ÷9,~`R&3ŠÂÐ“Ý dP¹huRb *ëëÞ=<¨ óÏOˆôNƒ›©€!õBñ1ó×vØÅ: Ø[Ø,ôªÇþQÂQØÖ«M’bö²5 öuc|ŠnÎwÈ$¤|_[4’Ýþ_¬Ìs9xË–Bz ½#~9°¬Çœà{?î›=`ï”®ð°«Ý¿WÝ kÿˆ—iñ§ nQ\û•áòËZú?”/'PƒþT F%IÌðáa.Y]j8,ÆHáw¼œûqÀÏ8ÁióS9o ˆ+£Œ=Së5Óûé|†>Ã*¥[ÔC)Ö&“¿P¹RæëÑ-ªšûGŒU–¶ªš‹.¨÷f=rªëaàµ{ ¿{,KéiÄm®‹&ZÉZ®ÁvO,Ãéʱ;þêjv—¥ûS/>äÑIÇüL ­heUëÃk¹°Ú0€“¿·Y½vÃÀȰ‘¸n$™<ðÇyîõR©8fiªáÈ6ÎË­‹l¾ÝN<¸Ëëå1ëåNjТ,»1Iùq]Ž:ö\föÅýŠ•Y᱿¨OlªžíÒ½jºÉnVÜAËÆï÷°%þóªjÝ©6oþnçFÅs8‘êʼnçÃ_õõe¡‰ D¿¹>0«Çˆñu W…~Ío'„oºœ™Ýìñe§ã¨«¶o¥¤Co{ƒÇز¤]E° xŸt ¶ü ãÜM>Ü^Íœ-,Y™€¿ e9+¬7NȯþÝã Iëf2m,Îî%qñEÉA"ÙXÖ:¼ù&%‹Œ‡…ÔQ ÊL7¡¼ÿ•ÕhYfŠç§iŽVv' äÐ\–À±>c9ã$SßÃfℲÅqm¿Î9 KAÜ^ÞB ÿüÓõÌO±†Y¥…’D)˜ÿÜ\åÌŠqR’±â·>ÃÏlñËæ—ç0sw¹¬Ë U9jª•þ‘/XÉhnÆlV?'{ÔHôSø¦–³Pq>°Ÿ!…Oa7ƒÍ¸^Já~ ?,زBM C\%cwSÐoÒ€I<^/ë-s­}'µýèTÒpYO*#Ò-ÃV\ÔÏÈ/C¢ŸÛ½™0C‰]å+ ïòD¦¡Çû²Çi=ë³ydŒV1ìÊÂOžû‹] ð4J™nÏ&LC3h&„‰¹J7«G­E½pÜÙó|.•΢Ú*±mõ]ö­;Í­…U+ã„á«"r?ˆKY /+›p“Òµ“×wy(òBÍžááÙý(>>Ü'é°úª®’ ÝIÈlNõÑÍtxvj_ý¹;Ѓø$œ}]Ïç¡¿K a÷cKþ‚Ë›ut¼ñ]Ö½å¸{7¥Â‡Ê’ÆV0Tí`?n;Ý’\M.1«Þ‚J¹[~¥Z¾CUµpåá³ÆÃÕYíîY­?–ÝT¤#Šu´2(?ó²Xg¥{v}ÏÚ4@tRx+ªq¢;`šºº·8>º§B”ÌqÍʧh³ß²ßë!YQ1[î«Úó¦áý³Êÿ‘°2böÑôƒï‡í(àÅÂ@T˜T¯,»Äcźš’­{ÛYL,ãž<0w¼eþ ¯6Ç^ „UWµ¸eÆ bÂ+ J, !‰…ÒÅraÄFìÈÅÓÊÿD {¡±4°*K8uþòµî¶Ûs.Ïl¨ñýñXü[D¶Q±–tg̶Uà‘ú&“}CâáZÈórÆíµvUvÕëñ l/ß>µ<„‡ ¤VYº|<€‘ÇÓ³º?¹)ÿ¬²ÊÃ+÷«ÝöBk”8u>´FHˆ¥†ÔM"ö‚à*uË¿ ß[^Täàw2¨ÕŹò8i{òú­û3åÊcDšPU w³Dloí¾WY'U¿³3ÃsóH{°!ô#‹ûa›ÕR¯š¦ž•o¡6WM©æ;yÐ%}\/,¿¶niŒH™ÌRKwÚ–> ¡ÚßjwÀŽBwN'xòé¹ÜÈŽÿlÔW%-ã·|X×záûVõ\Šýbïba9,lúDˆù'¬eˆß>C&×ê:ÉAa¥\Å$@¾­rÑÀ¬°Îæ r;¼‰›+Fàt§l#lÏé7‹…ÊêÍoB!ú€Bdälð{.‘gbg^¨#Ù Úù¶¹eI¿%¹¡K¼®«Êá±Ø­Ê)Ï,fö[m½ßZgr±ÎŒH<äéÒ1wæÒ}"AøŒCò+¸Jj/€ÏJ¯ÙëÄ5Âò½ÞH$VÉ6Æ1h&é¡k¾!"dxŒQãÈÒ¹¸gFX}G?ÅÒîÚͲ¡M²×Ûµ:H¬è•7˜ÜºÏí@Ç5Æa¼I…ÑÍ ½Ó§cãÕ%0F„–Ó(ÝûíioQcÓºÀx›bMÍiÏ õ¸1FYÙXšÅjÕêî”OQŸ¡{êþ “ë=õ¸áJ¸úדÏU·ÑŸ°lŽâæf³Ægâ9Û?R/ÝVˆÝ%-Oo˜¿š3a/è³ïɇ«Xfȳ$`>®±ðßQûópgKìž…Ýž7¡°''Ž@Êì›ñYŒ~+SP¼ŽuMîÄy'dŠ;§ÑJ–#l¾nfV+$â­¡ Ç\,4~p­Éñ¯¡6O@"[?ô›éAïÚ(CÞ1qžÔ‰ŠUŠ,ï'äÙã%aæ5$mÊ×(3«h ¹r ÛØYÊFòÿijs®²ÒO‘áæÊ$8·té½'DÅqÒnƒH€2pTüØØ’Ô;NÒÖœ¸£ƒ¥s´Ãë¤\ìäiÅy¶Îª€VŠ€¥ÙՇкnc#úæ±5Îï}†#~ýN į½g¦"b%¯«ã°r³­}˜^œNzHôÆsþ8¥ÝžÿYiAS‰T¶+^íÜZÙ¹ÐH€(uì¬i ð£'UÒ+$È?cçU-Ù¤´«Óp'o€ {«Ã"Ù€q‡ó8ŽS#ê‘DêtaëòlÜ´°Ç€Zs¹¤äîwÓll‚SvXšk‚£µ“f×¢^U²A7†-–Ô‡,.«”SÐp<~[ýŽ›êGÆPÌ8—µ±¸ú‘¤{,u9’ÀÁál¤¡£ê2'X´ù-zö§ã!ð‹m8³óƒ;1ÉY®L+vçF,ÏKÊ®°3žy1%îY1BVMÒ¯Luèº;Ù€‚úÈ\ñ‘Ûèûµk\{N$@òõ|QòÞÏIBŒÀ>ŸâîRˆ¡ÛHz)¶¹cßž;ýˆ…•ÎŒq‘ä;‹›­íÞÜD¶GJä dh¾©~ÏÍ $ä6š”±’e­±òà»§§ãó €j¾X^ävþRûòxÄ/°òÀY·3‹Ô'Ò†bm pdKȤ5e(& ¹³Ÿ.Sú5v'¼éåN#¢¼AÐÇo¢19ÆÆ9#Ñ<‘¦# [KqhŽÜå28ÂdQ2¸Ï‚&6N“Æ„ðÇï·PˆWfD3 >vÒà›#É͞ǧÓwí<·ýhx_tU8ÁG½€s"=u~Tëñ\Û‹e}ë>ý]inQ©Ÿ@ìe‰ZZ“\©viý«KñüCOæÆéшý娨ˆo*÷ ¤QŒ±ÿœlj5¡ªÖ-Ïǃ*–ù³Â´âË]Ç9<ž£ ³_Ušý¬A;kë(ÛµVn M ~DUMàÝÝwEJlôžEé¦ãêÛ™™þãÓŠO´ÚgìÞiàå|l¢&h¼5ñý~„ò|K¾ƒNÒM'¨Ù'vhdº¾­õ[r@OÔ¼4jd§Ò%\!óÌÇ®'n£{»“ Û7®›¤ï•ùõ¡›7¼ÚÚ÷·r‡G–Ü|þz DvèŽÌ»ÎéVF‹TÊrq)ưB¤Ì–U²d²ùa%…ët'îÏIpw&éj"/Sä^{#õáçTˆû~¿Ð åe»&[@½þQª¹qtjÒ'^šÿ%‹…¡‰=s}¿?!WÑ®¨‡ƒÑ¾ˆƒ\^Q§â"ðIŽð愸]7­éþÐ=¾ûÆæ­”µÌáËÄÛs¦lã˜ëÖ·(£uJó¹}&ªûoºtëýTã n$G‘–©[K‡IHbæd|ã¹›˜^‹lãKrx_êÑ!*‡C÷±¡’fìð%!KBŠ J8/&ZõŸKÒJ •ÒÒ0»ØÐ£ù^e‘L ~¬ÝÈ—K‚šŠ`íY‰ßlxï’ûâuƒ°-¾ß)VÛä¨à—åÍæüòŸp>’R'qN“m“C&²=r=fZe͙ؠõóýSv ©‡l¢=˜·×Sá‰X£`H…{>g™‘½¥Ôµ.+žèåÇóð‰›d8/ó×I]kü24fA?EC ˜šÇ(…æ‹àÌjR£ºÃíeœ‚œqê Lò7èÑ’´…µnm¤KúP¶ô‘åcçæ •ð«ê×% ¾Kî‹ü„©|nd~ÒÙ–SÐhW±`mFÑ1]e¬~@Kh‘ãL܉D÷Dhæ8u¥²ôH¸îÚø†oL}´!ñÊŠà[g*©Yðï¯ë‹±óœßqÈü¦ØŠL[èD"XBlHÑjES¿w{ƒÅpÜHe›“Ú™£UéaͶ $¿ñ…6z†Ö9ÅY‘Àk$û¤ØÔ¿kÒ­èÊ¥V´±Q £k©»MIà/sÜFª–3CÏÏÿ<ŸµöÞ\fÅÜÝÜn(7€œÃŸ åNÎð¬ydŸ#oÚ—ƒU8Oi–”°[™§6ñVÞ§"j„¸31°×ªÖ½ÿ!ØÑƼw—|:#P„óÎÔ€!™°D˜Éb?N¶d_ví·a¶•ný}¥¤ônòš´K’íÈ-SÔ },òÍ@&iÕƒ€µF µÄ=ÐÓûÇ¡o\Ã8Õ]¯_Á%»ØÒf£bnâlïÇPwìÇ‘éáËQeº™åG^4±¯©íÕxÔmÛNë¼à:³øjfzn¤' ù·¼7%¨Ñ!Ù†D§=¥Æ”kÆ}gW;«~k›üBu´ D£a*²3Œ ;pT‹ØañHÐÁ¤u™ñî,¶î¡›pTÚ¦¾Sx¥KåÈbÄNÒ|隺J¤ãÚ[JCkR 5.o1Žf†”¸SàáÖBòɄРzTÏ®oÙH ¤n[í·žœc™\²ªcçÈÇ:æåð¹ûóWP¢ÂÜ×ìÇ\€éZô7«‰n9§Juâ ÁFÒg2íôà|0ïÏBÆl¯³¶q‹-¾‡Þb`íÜ‘ÜA4Pb—É2k¸lMê =6)º‰/@ew¶#œ½Ý2›,º6ëC­žomЫ°‘w¶´=ßZ‡ý.Ví»¦¯y¨0&´vúxk@ülBƶ3‘H€Â–ƒGq(0Ê~þ©\Ä™Óa±ûLGô¹açìcoýV9ä¶'ÛÒUÖ©__¹Ã`Ë´y™w,olp6ݪ}Y¸#ŽOñįvľÖÇÃßðƒžKœ 'ÀÁßÇÊ1Döù©BØgÏú)¹îN 7¤m8ÞvfôaS)ˆãîÓXûÆ€›[Û ‡á ìŒ=Yãñv2~$î}]È+Ó÷ý±0‹åÚ,b‘÷ðz_l#ï¿'°¿t³P§kÚ¾'[‹­lÐ[‹¿ :k¨%c#Ÿáh¸ûOd2¿)è˜ÃúEŸq=Ðf9ŽË¨â!·ñ·*±p®ŽŒÝûs+§ÄÕœ¶Ûcá-D=gZÖ¾MÜ"GгÆD¡k‘é’ËAx°¤ù{šXKè!Îm"½‚½ìͷ̃rzÃí¦[ÙSzöµ?¶7±^‹æMLKt½·Ö;ûTÞh–È·Ö.˜/w“e‡ComìãÞ:™•š¤e‡’ œ£$<ñus½?ÂãEL–}êGeî_ Úný¬…¥Ë,.y7ëm[Ù‘:Ú³2úØæã¾o:Ù´.•í_±n“È}Él¥¬ã»ÉçØêŒ(PìW¿yY×+çi6c¥MEïl>ÈŸúkÙÅÍ–ÞÎÂE HáòG£Î;>S ÅßR’b@9æµp†¡iŠ#(»Þ©8‹¼\,ïCC¦ªÔŸ Sg¯sFŸÖb´á¥ûB ü¨µÌžòÚ==u-ùF¬ {nB¥rwß ùëÎ*k]4O!ëÌÁBeuòT4„¯å ª+F¾»ä;hbm½›Gfu…‡K×8‘ìç2f&2Oð9ŽèÜ=*»:¿µº˜V#ÐÝ©uK½³ú¹Â‘¡A=‹äÂû`•&M‚H¤á¨­\šâˆÖ²ã~«;ÅaãDù6*­ë&óUo´ü¡{ â|îXP¡ðÎ;Ð{ÜÅxñøôÈúÆÛJ6†ÊÆZ4—ÓËUcGtÌù Ã]é“`Q…UʆàÈ8`Æ)¥ëõ•U9d°e<Σf!òÐæßê]¢Òxv˜³ÕЙ Y†ÕJç„¡–~¬f$ÉÏ£‚É·²Kl¢V 5¸XÑ6†ß>iè*ûAá§²à/ª×T)År@hCàF}•7:ÒãcþC‘|ö$ï„¥‡[3 ç9HQWò™°€f±)ß&lÐkÚKf]ØIÁ±*Fe9ô˜éÜòªœ—íT^¡1—m ¡»K ŽeÕ#ÙzŒØx uøÅ wÇ‚kØðܳ¯#ŽDÑÍ$pa(a„‡‚¹n±<0¾ø–ÿÁFj‘êƒZ')ëç£wµâIÕØ´È,}aÿ£Âã°„ØÕ×qè Úp_•…2‡‡½‚32Äq3³J|g¥9ÿÒ»%†Œ+ö×:·‰®¶5ÒÞCkŽÇ‰ä?û˜FŠ¢ <ó[ ŽøªÍ#ø!.GÝ) EÓ‚éaãG.ç"›}Ëf½!—ÉÅ%S(HEfÌX“ ÄtNSÖÜTö&h†ñtþѹ¾”Јîç³6ÔÉø›ö ìNËž-c zíü˜55™3’Zh°pÐ:OÀùüÄjÖm'÷‰¥mšJöÃÆÉ«H_¤†[åÇØ$ÍͪYiS‰×ïò²VÍá6s©ÎÔЩOÇ~>Ô=Ð/›’=9ø_èÉ*Àu`Œž›èŽÉɈ_Ê]¾íªY,tZdüpk{ùdxˆ…/”ù&éúÈã±\Êjm ©\£ë+9]»T?µØ²ñ‰va :Ôðá9Ñ2ÈÅrªT|æfwÏÿª:fŒ8Jæ×™i\J,–§»:˜á.,Û‘U š¯ñ´2ܪ”ÓkP©ún»K‘ÔH ]fËo¼”‡ÜRÇ3j“nÛ2G^Ôx¾“•ôtÉÌvãYëÁ±¥bìI¿yhò}2BÓæ¸q‡šä;ÀƒÇ¾;£‰ìü›Šhã¨ìÕªJÀC[ÍynÝŸøé*`H-½`#‡`ÑÕ+úûë^Ö‡×P˜oe±í?¬zçzþSØÞò‹<œÜ&çq ãèÔý¹²­BÍ$óv?>¬T§@¼®m¤ú{˜Q“b’x¦ƒØÚ×üE„BÌøC›fÊj™ïÈ£Š`³¦N©T{­Ú£¸ÚéŒ4ÂüÕ©M3Zoµ8”3Y•Jø½:UÏË9Ç€k™i%M5t@ “sPo@¼bÖ»—ÐÒÃù£ërúÊZ/ùÒ >ôKÄö2uC/d® äaÔB’ábe1ö4²EÍ éÒ±W”iÅŽ¤°C”ŸX­ÔÛˆQƒŽVÄg8*Ý…ÄIs/È“®¬Sfwkîáí}\aTY5tèÔ Éª®¨WçÇ‘›97Á’‚kçJ÷^T£^fcN¸gp±8xÖXL–|U¹­f1Pz6ÙöÜd á$iî©`, n¤ÿ6¨žqº‹Gîcö“¡à˹+Ìà å¹;³å§ÞÜUžyT{/çkDZ×þ»5Öˆ°°‡d(X †Ù@ÖŒÛÖWÜhÌÛcæ•õU:xfÑ7KwæÄ+š¼Ñ]Ä•û¦#(%Ð:׬jl#Nlä #‡k«€U„É-dõh CÒhP`›(±ùÆþˆÛß8Ž‘¼‰2FÌ¿7Hh«ª²à‰óF&ÝÌb¼Ð×V¼Ú*ô8«3ŒS¸þì‹$FlñÚPùÆwá9œ¡öœB åê“Ïn˜Ò ­¡u¨Äwìu¨™å)öN˜8Ê/kT©ä¡–_ÛŠ­uªK;Ÿ?XM¸Q´½^àó.°v²†6]¢ªÆ¶BœôÓ¨E“† à%‡²Ö°)Ã÷V”ÊA+!ÀJŽQÿ{ƦÈÄdù§š ¢"7[&fq,V§KfÑÒÌ £ˆ_CÅjp?½6둌¶åš<{RÁò°›EJFË>ï8·ekÙ3^5Á;ì |¤™ê@Ü)’žÔÏY¥…BÉDäìÙšÍz2íáž°ø€üŽPÌ=¡©²dR©Í®‘Ç §ÃǸRA]©|w֓워IFÎÖÆ-+ͺ¦qc;qõÆé…*åä5˜¨!ñNІ¾´A†ÕŸ­A‘ð–R‘}z1‡ì~&ÊÚ3ê1ÔñÖôg¬VýÉ­¼”›ô_Þ=×´ê–Üš:oƒ®¤ØÅ TÏiÁ)Q¥ZÏÝ¢oήYsDò{åùL” ,lÃNcnd<ÃÝ)¥ ¦©ªÏ3M~¦Ÿƒ‡x1†…™á?»âM€]†a'«áõXø¹UÈhéF©YDiV±JÒBNÕ¢Wgþ Ù¶[Ü—å FE‰´Þ Œ k]î§: §;ëÌ2²V“h$¡ØËœw*.Ͳç&*xËæn’H"™ÐMñˆàh×6¬™ýûƒ"K|¬7ヤ¶Ù¤·^‹fNxDÒ +„gñøUõ«„»†õì"‡u«é3í/‚è$.hÞÁŸÆÅ†VÆáZkŽ ·SÔš7F^¤´7Djd^§Š›CGðǸjã8ºñ~W~LÐØŠÏ]»%0Ôå‚û©‘þdóFª çguÿµ6™KjTºI¡·Kw(]Mo½µ­Þ“å»DpDàUŽ<íYÃ’¢(¯ðkò¤RÁcÉ2eó‘*×¥¦µD Ä>ŸÎV;LðSÒ½CÁh¢ö¡ƒÉN; ÐíkžÙÕÅZÈrÞY¬8í?”qˆy§EFæK9•êÖ)Ç•.ä*´}êÞÊ.Á½½Á2C:èNâÁã)ÛYä›?5"ì©M·†¹Inïä5õîx,ÔM4QŽ­AL0qüŽÓ¼ï·Ø´¨9\+éÅ¿¶¡qgujƒðm±'áÚæumÌqŽiÍ50££…y}´£"]ÿ’ û‹vü);0ômØÇwz¦‰³.ùå¡Ñ”€{ÔpØ_êänɲ[–ÞŒÛ>°§9qîq¡F ÏÒ G•D÷¡j€ 3–² ½‰ÝᚯÿBg]%#€aÚ KmwUñû±hj·®Æžÿ:ÎÀµ2£#’·[>–†?^ç3Ðç™ ¥§–[É¿&[È/‰ÓU`.…äF™ÃûÂ]u Ôƒ‚OÉv¢,o&‰Ý¾äiùÐkø›—g~%M·Q8öÂ’;èd‚Jº iœ:ëjlUyw†Uá ^>'t^ÿÎÒ¬×g!æg…NzQ8wœ«¥‹O7?¼Ûþ6]¢1H~¸†~ :a8Qä°!V›Ïò½Nžûßzx} ±<$×|‰{"6 öí«Ï¬±±v6dkkfɇæ#éÀõu_öÚѲ³úrhóŸoúŒÇ®óL ¼ˆ€ýœ§Ú7+‚«Ò{ˆvaCÅê¨ ?ÖYpR³CzÏìØàŒg×àP?'g9xðwqì‡D-KCïìøéH¥j…tTt@ÂÚ\¿Q­»±ê4FqÉÒ¾†Í}=Cñ«±yŠ‹L‘ŽÎ¤iôáÖ“øPæ;ͦ̚ÒW—e4$ißãx4f‘”Þ–M£jä2Ñ«ðù&ÑwjÅáH—?r6ClžP~Ëbÿ@gá1ZÏ"­9Y/ô5ù°Mt¢\nÙ‰ô‹í¸~>$¬CÝWǃlfq ]öylœ2_NHUÉ]õiXØ÷3xæ Õûyç,\‡”9mË¡Â;¿‰2wÀ¢q#}ÇÖ I×/4¡à 'Ü’±¾‹TÖÌ*1š˜9vÉEêú©ÐP_A¢XIÃN` ”4ùüÕYùZ™Œí°òB¢½ðU5ÅÄsø ÛIÿ<–¤E©Æ> ù&#Ëæ7q$U^f–Äåð…¡nG„Ù[ "§ ;…‹ïˆ#Ÿ.9\ç¶›HXVË*EZuföfŽÞä̇¯r \ÉÛØòñ™óËlíÅ»L&ÈÑä [~4¥¨ tŽv«pySë†ø¹U<ÖðËYj°‹dP…Hmbü¬Š\"ü}¤Ü-Ò)µ€gœîÔ%ŒÝÙHn$Âè/OpÓY¢¢&t¢ÉÚ,ÞnU„¥~9Ðf°ÃðÉŠÝÒ¨‚àËüÁE¢äºÙÜÂb›Ú!÷(#ŸjÃ8[œCCÈoD½Ù¼[è…Ñ·g7•é4'$¸µ[»£J¿ö#ÁŒøÑ™M÷q}ÂçΪéÊêiïÔX ×÷ŒZ³¹L ˆEÊs÷\ØxVØåzw¢þq½¬U”¿ÇЍäÉkËà$m”ù*½(dIK mˆ!ÃÖ⾈KŠì1îÍÏa…ÚÕ0 "zHvhÒÙ}Õ#.¼ËgmyQx:·±„Εf92*3|_sCño>{xÿ§1çì‹'´ÝÝöMùdû•F̱ßkŠ; »›vÂüZüêÝ—4//®M^Ýfg‡—V ™Ã×3Ÿ–£Úãx>zQÑȞ篬úïã*˜»e¦-Ó…Šª…Ì;£»1x6éçöÙÝ­øåè}°ÍQ±ìeÐÉ]€ñQoõ÷"Ì›8fÖ_ÂV~Zú®üœœòõ‡FÄDqÛ2)=庳À(1-¢‹Äy›ìƬ?T™nÌWmð¥*€R»(ÑÛ—,Af`Ú2¶4òDÆ]¿¶ê¿tᘧ9˶QA-ÃLògƒ)HQ¹²YòVø‹ÒRRçVÄlv³ÄÖ„½çSêË%דpÛ¥šù¶ÎÆ*_g“æ9WÞˆcò™#s›Æý‰ áZ‚¡èˆŽœ÷M0ª¸ícåˆ*k6:Ôå[¼Q§ŒbLmÔJÿåÁ'‘4¶Åm*\‹”DY™ÓwiDÓÙ´*ãfÛ¼(«¼f ï³3ºË¥7Êðûvg§kÆÎ Âfd†¬šæÝX••%HÄuÐÎh óRVŒ#CF¸­½ý|+ ú@ªZTs÷>LrMžÝßµw,Èý80§û#‰˜°—iÊê6—³>†ùêˆX®GåLÚgˆ ë¾\ðÉüè=“o‚Ü3ŒŠ.‡”¦¢yâBÎXæm¿k·¼U»&d7¿-Ò¶‡Ç²Æ„曑!ð$¼IÛx6VºÙ:ÛXƒ7åEàfw%x²s´Ê¦»ˆ9Šbn±œ»¶9ù‚dV¬{Nnd8›š"©ëén¡´ê¡F}Ídzdh¦ÊÎÚ©œ¿]ô$Ç*çóG7yõ.›ÒßÛ¢_Øb4å׬!p0‰ðƒyÚýx8«9G,j·m:ÂÅ}VZaŸ)žC3-ú‡h,Ù¾éözkî“)‹{Ö˜v:»ëNß-W¬•ìù>hÂe2÷‘ÓåáÒ‘šð ™çÓŽÅœ Zp4X” ûÞÆîò‰æ;‰ˆŠ*«¸Þçd_uKÍ_J盺½¸iè¸`4¨ íø¾”´MZàDØpY¥Ýˆ$35WŒ8<Þâ›oë”…N¾à65Ån6¥FÛ‚g€Kb*Yí¥!ÄÖšÈ(Yã d,j(åé+”Aº?z÷ú°’â♵½ç0Px0¶9iuÒ:6öÖ.åÞ9.ïå´b£RÙ‰­urµP[¶òo¢ÕD5É¢ÄÑÂv’oá½iîO9d ÝNfúVÛË­íö‚M¤r®³åt½q‡ßÔaã)cAÕü!f¸i’©Z†yBð ,NfÏš­³ˆ_¥°ØV’4÷••šÎúioöð³â¬BÁû"6 9·Ý?ÿpæM:®cI“íÛðº¸õucéÿ¡@”go½âdØ„xí+6W­ž”Å_ Ä ž7ÀÚGHcó­=ë7#ò{; ̇pª¦SsƒiB˜A%xÇ’hà Ó<^á‘üaŽK« áæIæú~BØäÎ2?ÍgæPp‚kÕ¬p.PKN„“ošiŠØþÃ8ûžyÙZž°;s"§õ•á¾9MÏÏœâèãòü¤ŒafÓ^I»“Úà¬çÃ+¶â@Nh;¶±Ët\û¨ÄïÊ¥>]HFÑöòLžNÎÙœkþ.«9–ÍÓ¹…)% I"éj¨sVÁ˘`C­a Wc•ñ{͈:qEí~ª·Šä@è™ g°'k85‡övê^4Jå±Â[ò¸`BR<–…¾‰>®´#wÇ_Ê4ŸÚÀÎÆU*¤ï¯$tó¬.âP½^NêåÈ?°ìb]ÅyªéçÜ $Ïå%|Ê£6â—ü@ƒÉP_ þ>Oôs[4l?T/Nÿ)ª|}L•ä°•­Øf«dËkƒ÷ôN Ǭþ^ßP[!êãæ"žˆƒ090)vß¼Õ RA³BÏú,"ߦ˜$w7á8X dÚôMßj|Y«V×"À¦rÆ¡¢´Y%ÝOnõZ™¦|†kJuųæ5ÿRf)Ëßê'ÉöA’LxÚã”Üo.ÊçC¦ÂGz镟$ºrÐï¢Ì"¿®£×ÆY –f©S&7‰Væý,æA#&›™w°ë=©vàƒ’zN%Â-˜FZ]•ÏèãCpïÜÚ‘\÷ ¤UR°å ÛSÚê;@ÃFšüˆÍvmQs”øD° Õð¸eÖ·Q‘š¦c>båØ&ÔÃ8pÐ(=íÌþ[òâ7¾,è ãÙÏ›Zò?…çËÒ60œÂƒU”„ ¦sºïL9iÈÅÍ•{§¡y¼VœH4¢ry1rÄyªm60é×Yê¯"¾OiWòûCŽ*É–ï^0«JeO¾ä´O»ÙOÉ$é&V—fCÚ+¨2ÕháNÅÕ¼_Ï1\•£Jä åØ7ö6-¬µ ú4QXÁ‘ÿ%‰#o"|#^G ྜaò¸ÌNLL}µYy v6fŽŠ²Ë˜+Y{ÇYë.>þýáE„DÖ2‰\Ê”ò¼¼ëGý÷ÝIç%Øni) äl,A}1= Àtz¼ï„½q"3ðàRcóZ‡r.^Öµ”—[Vɵ<ÛdÛÜã·Ìu!okg9£'lçÓ ƒ¬S}Ù%bnz‹öÑo†sçR‰ 04ÛH§üð‰òö·¶è ^A@µŽÔÇŽA0C¦ßEÌ^ÕivB¿ÀÆô ÊÆÉéº\eøa?Kar-ØOa…u¤ëUèÊ ¥Ìoù Åìßo¼º[tçHË=ÎXQßõK¹î’yÂÏðÉE‡HÿW.ñáõrk3'×sëåò-ùi %$ç7ÏÝúÔõQƒæö éz_Ùa@i@ˆþþÞ»27ö¡¾`¡Ü@÷òW`oWÇ êÚ©³ yëc½%¨êÔº¨W¬d¿Ϧ#ëê¼’è'»·/–ªÝ¾ðwR™*LÔ‹ ÆB"#¾¸¨Y „—&užï Ÿ‘Z/z|1¯uÏ`I–C‹0GFtE^|?ÛºøXÚlæÛ ïwšÅ®„[Õ˜éþþµ¶‡©ÛJ‚ÛµQÝžb§âƨީëôã~$X}êûŠÈóú@¶Ñ”ƒÅª“Âö‰%@{›ÆÙÆ£æFý#&óä/ÄÃÏ×5”ýö•?¼æó–U#Ibc Â%÷V]ÛØu3…”9h¦•?Gn/ú± å¼ÑÏ÷®¼æ‡ÃQõ&ð<û^Ë8ïäÖÅÐín³ä‘EŽk5Ç…œ¾¿Üÿ§/qærzdEÃ$ä …Ò„Û:ˆÉ†Óé›@F–á?=ýÓ±Ê+vù›@H¸àC˜ÚÏ VÞ Ø­T Ö8„µ›Eu+Dž•òÁ®Ýa^Ïu›« zÛ´é5¶8.¥8Yȳ¾³ÂÞÙBÌnbáH«ŸÑŽ©×Ù9œÊ²vwÙ`RY¡SÇI2\õskãÄ¿yÃëë’…">RLtêÂ+;ˆœþP«•Ó¡;®: žY@L’€gÞp{ˆ}ZÀŠd„dTmIÙuö‘’&v^ÿvBúFä¥[³&T°·©²y°tgV G¶xÎ×°÷R“kc½4™ÞêX:ÍåÝÌõwÒ&:±€ËÜW'VǰMKýœ¦N=D;‹”H ¾YÖÇAÃÕ»î<’ªàúØÝ˜µŽy´”Öv‹c•u£è'vçs’·Ò‰ökòn¦cTùp}o¡,IêßvŸ7Ù”C®€yœ²mm:âØ:¯Õànä³ ð[‡g^ð°•Øñ # "CRâ[üº¢Ò­Œ$rß±•d¥½­¦™x˜fà<ãRà•AÅôî0oÜîažfMr«$û½l~d·±âlªz!ç²5ÕV‹ç1ÅCšƒDàfØÀä·vD†»ò2r ߆©²ÞèUOÆIÎg˜_G¾«Ú2¦`¶ã&v«ÎP\Ûãh¸L—v=µ8’ZK9ð„]8´æ“c‹:6]ÌŸ§3)±e4ˆ›¬œ8|jåÿ~/]j<É5V «Ùe˜A‚·ÊÞ8KÒ"Y»ÂºO—Å›ÏÝS·6òƒu=…-ßtí4דMÐyQ ~œýªˆ".Çû²ÌÉ“mà–å„D ÀÕx÷ y\/{?fV|MÉñØJ2žnÂe àcæï½0©_aãØÞ3›ó$bn3•r({RHã’­éч `þØi ¥/¦ ¶ßÆtX/,\ôu»u ô4<ÞíÞÿí„<l&-%€X0“COaÑm yMvnp;ã4¸0 ã³·Qd·Ù›Pù`ƒ6’ŠØð¨œ͇5R†Uc$[‚ —Ü.ë”* Ñéú.‘^‡ãžbne† óih5· ¡ãÜË׎Ä}À:| 6qª¦²MI\™‰gágõò¨œ\2ÉE]»Ž}n1­ÌpœI.¿õÃHÓTºãxÔ Ö I‰(ùuÞ'­4¿ ÉHÛÌÎs^ØS:Û4[²HeÛ&`ÆFà»DQ±§6÷8´ )pU#3w]6´b§Ï$÷%EÐLn9Ú–¦â`'<ƒ|ÓÙ«]ØPÊ¿H±º¬Wó1­‰„IÕï9!/ûxÔWÜæ+'å×Û(Ït¸„×ÌzücÒ´îÔ¼,,#o˜-¢Ã™ÜAç}dç³Fv®³Zu[㻘|:ïþ•¸ ö†Rý¯ äuÙ;c÷ø$2Áÿ5Áþõ„0bò¢¨ôV¼¦0²iCqÚ%×%ý«[æ.°{é4…¥ê{­º'ØÚp¹†”Šas˜:.i˸£®ý¡ ËÄ;YÒ¯ìoFT÷Û6d½<Ì«êWwÊáÖtNÍué^óax€Î©­¤¢rcѺ‚#=¼µˆ2ÙP‰¯.ã_BkËe›WQÙ§¾¿Ò¦ À*BÁ$4”Yz×¹…̾ g¿A,3ê°,k»ªFt/·¥r *éõ:5gέ]WÈ:UÛ‹†XÁ“ñ¼Q‰vâo‰EÍc[È@Qý FüÚ ê™æ{¦ÓJ‚!ÆÊ> 2H$qªÙ]6„„DVì¨"o ª3^Øå¯Z¹­š=ÝÉþP²MœÂóñÜ2¿¤ë}nM£CG²¤}¬8Ç×%wŸy8F’Œè¤À†œv‹Ô¦ ¦|ZOÿ½oár×™u ØàpICþÿ¿¼*òà¤÷7ë®Ι=™Þ4±]ÈVÙR©ñnײkQ²O£ðÁ¢—E¾Ö‡6½WÇB6ÜŽóœc>'"'üÖïLò4SH´"TÂ×¹P*„W²‹}ME† ­Ï”è¸ÄáZ*q<Çb4Wù@5áÅ% uû(ÿÜ×r2ÝF/«%ZLj¥ß¼›¢XÁ•c É÷¤ƒ“²¹*`Ed†" "°\³z<»®ð¹r\T{¦%Ÿ&*- ÝDSŸO%(’ÂÅå¼ë…ºómü§¯©„c­VI,k©¸>@[ÒÒGqB0Ç"J6ð˜Qb6ü¾]8êù¦!4Mq¢ÅÓ’íŠZÄ5'C¬γiIaeØÒ[*…Gƒ‹;ª¸Ë¾%øÜì1²f#¦Õ\hzq©—«bÝ%Ž£^ ¨SZ/º–âÐ ¦¦bAÃk HG8q’Â!¨|†íyRé) :! ¥$éí²)J=°®¡â4P&ÅÑçÐÅ~d9­]Ä ²l>vÊŸÁ`ùêbyèÝ'& ʂȕdÂi˜ÖÒÚA|?g]ÈI›d3Ê+{"3¸üA BJK˼LZÛGøsJVÐ…<¦¦uv"°õ°qëD·F{Ý+\1aaíîB»EkS{DJ¬ßkÚÙJ2+¶Ê‚R±h<êIj%ÑØûè²Kz®‡‰9ŽƒUFŸ;Þ=©BT”£½¯ªt÷{T„¯CFDV-¤=…,‹­üÄ;áPr™ßWsBÎb-˜[Wt·ÄÕlÞbµEV‚ :vÂhAÌ)Š4ƒ ¯! {<‚b[¤Û‚„WX©gïêÙNsÞf!p-w¬ÝÊ ›¥dº'Cg7Fð„>b1Œ¡†ØáµZZÃgÅ”eô…\8-rÇ!£;.ÐÌyqÆECè>®Il¹’VŸÚ‰r<4©Ûxáí-ŸEªk€¤Qͼͱ÷¥×ëûÈ%E¢l×U–‹fÁ|®ú˜@OÛ&aeu¡r¹Œ;¦wä¡ÿŽS°oás€Rh™Ûn’¾Ž¿1˜Iá¬dàt™Õù¦)Ë‘S†Î¤^«o×(u‡—6@dæ>2‘$ö¯P4˜5üC <ÍÛ·å/¹*;UUª[ QîÅBº4NÌU!ÝTj„À«ŽY©jƒÉÃy®í÷eÃ2Û×bZèwˆÐ=Ä^twB¿Wi]wå@è9¦gâfJœ3!4”0²KDƒ@«[Ðêö˜á¼ÇPaj™kÒ{*ùŒÓkXˆ*h—b UÕÐÔÙrbH`ì4ëfñPA‘–É*9e?ä‡\î70ô—´ ÒÔkÒø0dÆ–¿\À"ÅK£º=÷ ÅC»ä8$Eù”ï'½ym°›íÛÊuw\®cÈkÈN¢2ëù`!T}e,¶gAÙ«úÈÛ±¯üוp:Z–©àð!_ÇÛ#Ø«Àø ¨‰õJCœ– ºÄˆåÀLH|"U+œ8Þ–¨O²ÝŽËéîÒkðXÑÅe¶O¯ ";¼~`§‡wP¤²K+Ô¿%žçQáÈ»O¹*ÒOªö|ü¿ÿuG7lm‚ƒ…Ž«Á+¢¸¢ü墅Ь&8v8¢x6„»ì@ÂÇm–Ï'YSÂÖaðpÒ°…sÞ*ôû‰¬4À±ò™•»#9ZžkÆ!6+¡^…« ‚ÕHÑâò£¶ø K3ûá]²ç*¼ôEö©Ÿ‹¯’B³ù½-„¢Ÿ6ìpá¼õÕðÑÕÎû±;Xæß±ÇóZ>vo3Drk@#»àoñhXû$%}Í Øäø!'¯[I˶b½W,ÓFvSR $"|úµcÐ.ÜŒ^[EÍ2b’eTטúà<äTAÆÙŸôA¥Áă‹}ÊÄ’jüwdáWlq¹îp:¨qªïÆxÞAÙ!Hì!p-º¤§ìo§«¶­Ïéä·ìtš)#ê눡½m^*^DšWw„f` ¬¯\æ`¦3ᢻlMëcJD??—¢ý@ ¤qž e¼ž2^…S²tÿÕ0öYhìÉÿ¿Ãž–â|WÁ± ?(ܧéÄï§iGà °ÙæktÖÍZ¸3§ÓŒŸÌú>¶$”ŠèUýCÔA…(¤…vÙéG]ë`QpNÔUʿƧQ?õ_‚sºÂ9‡Yá͇W}JÓ:t—àÿ9‘gPôA÷à4N'æ/<™ÏÛé÷›º¢ïýk a@:s˜µœó^ë¾=Ü[²™Ÿºéÿ äûtýÏ÷?jŸÓÝMöóJ‚õ2 ¢îktÑlÄ?ñ²aa•¢®/xÕÑ*yË£®ªTí7Q½—®œ˜ZãÛÍV!^6ly½–Z) k°S±ïn?ò/«i†¦ iÆ?%“6[v›ú_Ût÷Ë]ÛÒ™M-ß´4*›îÞ È÷ú¯¯/ _@¾×/ ßë Èïõä È÷úòä{}ù^_@¾€|¯/ _@¾×/ ßë Èïõä{}ùò½¾€|ù^_@¾€|¯/ _@¾×ïõä È÷úw€ˆ…ßYø;ñöâÓ¼ÝÑþ»ÎˆÕßü`(Œx¦b$5’×uÑß4(\€»}jQþûûBÚÚíKn?ûýk[ƒû›žÆ€ÿND¿Ñöœ¯û#o½?ûU@DÝç2œùÔÎ}— Ì9”Ï_Äw#rÄÛÉ/]áÍÛ#ÅøÙo_·‹™7ýMÏ †0½•¢åÊ,Û_®þ‘Å­Wãg¿ 'óÃЪëÓÃrˆ>ý‡zÔ‡Ki´.ñïæ-~º‘âGf•M?b };›Ëtƒ›nŠñœ5×cùßïf¹=ò6tõŽ…üdVÜÐýé>+*y‚èSÈ8©?ù— YƯ[¿B ”§ú³üïáÈr;yˆëÑ«À/Þ­ ÏcP;²÷ß—,¤îÉC×´S2Y¯¯!ж/Q_Ùfû:²©ôÚ%²RNEÙ>« ñSî§²Œ3͈~·¯‚~­„¦„Ëê}vÒ²:aógkÈ>;w¢aB÷~Ï0úP ËÍwMh¸ÈÚöå—:“t½*úgÏXûö9 9,Ôãêj›• ¤”#ËЧ“@µV}LFͧÆW”4‡Ã+cv:cZ W¢ökbð%æd5Mk47¯1ÉÓß8íó›éËÇùÑ}w¢Ík_‡(t=Öz>Sû…>¦Â:ˆ¢ÛXAµq¬êâ&&°ëÕnª(* íH4'¯ô! BÄ ¡0ÜY˜Í5p7^zþÓOýÀõ9sm•~fôŸ½ý¹B¶¥Z”…\'kFV6¦%DиÅV%Ú)5 !B=0/"úmDÅ¢­‰¨Ú‚ˆNžÆ­íìcée1íË€xD0ËX¿ð\ÛŠ0pÚUñ1Öa…ò–(&å­äÑÚvúMÓ¾h!ªµ¡ÓZ’iµU4RüDžLÄ£³Ä3§“”öØÉë•’^\r¬L⩤3Osd0 ˆÐâFõÖ<ökD‹yÄåmˆOž¹ÞPjŽi«â§¬b‚—1"4—xòFÐð‡|Ù@î,yJgmLæÉ±1L_òÏAû"Ê„>(Öñs‚Vv!¸¬‘‰a(3.ã+*1 M xó®ksÞÓKiÁ0Jëë ýï…Û‚6–ÂO7ÎUänˆt8ìá«cM“s½a×À“ÎĹÄ?›÷_ôêðÙno¾¿Ô9Jc”Ù%Ë ;-R2˜!—[c!zº)™1^Ch TÑe¿AuŠnBÍtTFCý' ŸlPR}6iáéù šxõJû2$@„fÔš~BÀˆµsÑá€ÑÝûu9°}WþwŸQA£j·¦×ù/‹ÕŸÒ0Ôe š®õ…ÈûÑá±<À!¥),?‰4žó_ÁA !¿I‹nJP†3,=„HÙ ~¢ ²ý˜¢Ï‰)ÁœáU{D€DÙ`ê2Æ­´“Ëû4[:s»)á>‰èóõH– Ù2-‹ •>QÓœ¼]®³ÄZ¶Å2¡2LœPÑX©Y@´x’,_vaˆp$ŠÅW —üôÄåwãð:ãè‹`%„½2 ËŠOê9Èk¾‰10¸M|Í-@²aœh¨áÐ!”e– t^a°X=˜,%2”•˜öziÊ“߆‡HÈ‹£$,KL‹×£C'LlyôÔŸ‘ž»‘h1Nˆvf}´7Ö¿êûCh$Ý—hN`€ÌC"6˜G7ÔRÅÖZ_'‹«—0\ºOB>œ^ìiDTbdµm“Ðâe ñæÚĶr nÔ§þpÅ¿´„<Þ`ì ¬ÚGk¶ˆp@CÃ3#Ìа%:æìsˆUóZ¯ g‡£ ‰¥g~zǪBP÷˜eG#Þ%ùˆ/5u®ÚGžç€ Ææ,M¯a¢œæÌô-˜Î2¸]FJºûC3·vØw @ÎåYó`7E÷ôfÜ™¼(× „ ¶Q–9aîÇð ß¿9ôàìyÞ0$bø%bÕfN ·ðÁˆ`ð<äNv:r|!Bòpƺ_©°32Zh¥µŽÙk_Zô•ý9&êþDWnC’¦YëƒàgÓï'Óyöx脉°–pÓOôW[0^ß¡!L‚MŸH÷üó@?bZdPüf¿…öcðpÉk­ Ý.€v7@ÆgÈbÙĪ_™ÄÄ¢^lXó"ïï.h~$<œJ€J&¨³‹/&Ï!7U„7=rõ i‘b'¢pÔ•AÉk¸]²µÚ9šPvíº}Lð»>vëÙQèK¹%õø¼}ØF ™4dgœlâ¡ç±eÜ7§6È)úóEôêùüíÎC&Æà²‡øcVÑÚ –½¯} êü«1‹»Ö27 ü0&\í6bèŸîÚ©`äá¿Ñ@V\Lß½0ù2 ÍþÚE~×?×QÜ&Yˆ+¡õCÅšf÷u<™íajûšdÀü%$V60å| DÓ ¨û»o7­mm¸ŸŸÍ.Ü<ݦߘ)*,-C".Íó‡G_X Ø-­ˆâÕÕú|…PÓ]^ýxl™VE”‰ÀÊ…ÑG{Ã}êaDѳ²¼Ø$\ô //æbvüš»ÝÅ*Šbpsu0œ_jðã@ç/ŸöÜÖpò<­Œœ¬á¹»Éèø‰UôFîbp<“¤ö?M©3A{iÛe€ˆ?˜oÿŒÈ¼0 R¨ð¤]µ“¡Á U@Šžšª8N $ä÷Èÿ‰PÒ |æùþ.@Ö$ÿ瀗EK¹EÉ?«Ë묃þŒ¸°H%QobÝ(¦Kðz·h܉ÿØ>^·Ÿ1éÿ÷€œpNDMµžÃC4uˆFˆÇÀ6BätJBT•ÉA„Z!Ò£jeðŸ€!îéó2Wåf­[}¹öœü©¼’°³JÌSM½Ï²`ö¦ÚÁ:Úò|Pˆ• qóIñûé‘2:òÛþ <ÐÓhfi` •³k\y«UHŠ¿4SÚDû—5í¨_3)„ë’¿îÿœ!–Å;s´® ÖÑHÿyNi›aýìº!»ªãï 䵤ÏZ,ó¬¼?€ó¡¥ß?â=$Ôìűiw8¥: `!í±¬/%}>ß½÷w‹!e÷Yƒ<h Û§¬[Îå8-úùÍCŸê"ðT¢®S²â„P²ùÍ-MZÈ"+ù¿_Öo¹ÖÍB®5Ž»/4<£W؃œÏ†OßþCyM8Àbó…kiJ.¬ÂqVD+k…–üdÇq]g>”Ô¿¿%q+ΉRê?0‘{ÖË|ÀqÎ˃p&¢–;ó&z^·¯9urÿÔ@Þ“ÖXŠŒ 4ùYGÓ¹ñ±ÖŽ–s>‹Hdœ°l‰eòtõß,ë·.4K}é?äˆrL’LDÏÉ_® .>#” âƒ8Ý!»ª ÐÅÞÿ6m@ë99ÎZ¨Êrâäù¾Ú³ÄŸ¦Ü1éÒ8ÝŸÈß"ˆ¿ „=`ŠŠã*ŽUúx¼Û)D&¡E<‘KwlJ¶ÿŸ\™îÈ‘1a1îO d [" Ø¸aB(c'É·l$¶%<"XEè= ãÐXé3Ï#—J_.°©°öø&ñ æ#\rÃ6rè‚'ž½e:|¥Uïit »*° ˆàæ 2;ÊêŒþwÑVš’õ*<înÚ ÷ í%‡¡©?VrXxúáÚO‰‰GÇaÔŒ‰Óçß.%ªØµƒæœÏJmHi[Jó|±PòL#i Gz$}°"¨è¯øå:p>gÆÇ¬óïï è7¹œWõßê²á¨qÌ{Ÿ´ƒn„Dð Æ©wKÊ(ó#öžÐsz¦P¢S)+¹“•åSKä9fCä7J›žþâÓ«“ÜU±Mýÿ²yÒÉ-Ù´ä?ÒgŽ÷@wÏ75 ß™sN«=ï81œ™]ÞWâ¤Ïbm×±Wì¹_l!³…ÊŽ "MjÖIé3žZÙ1üÔ üµ´-ó¹…ï[ȵ÷ !¾üŽPÁ,-ÙBÞT¢‰0Ztëpœ[ŽÌŸ¹¢9ì”í³‚E8âXF´\¤+I€ÔûìÈÓÕŠÐÖì(>\Cº=Ņ!û;Züv"`¯­!E½/ÞÍ jNƈ8ˆST¢™ô0„¤E¥‘©4‘@©•"9´ÆÐŠŸº#¹]êaY±žŸRܹ²ÕgˆP;õ"""@bâ×fý¦C2뜹rþ‹Ìá}ØDÏÒÀB4 9¥G„"PU*½CLäÄØ¦LW°¬wyjrgÜÂ`9|¼ó%–úÕ”Î%š.޾fsG·ôÏ’w$&ÛÆ21ˇ‡DùõU¼³ØCa*"¨ë.¬˜±à­÷l]ÄrgZœÒLeýu<Ú¥7è_âl;¶!‰v ¨4YËÂì! ,-"€ ÔK@3a˜d/àë~^ÆÁ¢…bí¿Dä <þ±…ÌÌXG(Šb°ge%µåT6©€ å”E -2$Ò˜W¼ñXðñ¢ hz@òQœŒ¨ó–Ïä·…‰§?ü¡˜Jôx¼ºÅ-Ý£n€Ü|ïUtΟ»7 H³Ÿˆãw»m£Úx€“I™3šL3V"hI¯vÂBGf±­âìÊN q˜þ…»µäIAÕ[Ãrœ6ÊÂðî­!Ö0öæÞÂcÿs-†¾9s»É7øöAô|r%PnV±Çº‡¸V^¨É<ì#Ø*?ÒY‰Jk&E²ŠÌ³ÈÏò‘B…ÃÝ[R“pÌLŸýi:qýÆPÒf–²(Â;xL„’>Pé>ž¥~RØ=Cì€üÒ‡óu9¶—ƒ­'Â’½…{¿IÒ,<Úø@¶N¦Ì‚@øGÕîÄ{(NAɤ³šoÚ© ÷I­Îå|òÛ ÇmþÈrÈ˲é€÷æ2¦»oáá†ò~èòö)×S áÐì"IðÉÿÕI⊕Ø^×;$ðA±.ß_÷‘j *›ã!_:îóVR_®ÙÝ_î¤Ýeô!«8jŽ-D¥Ç -!©¸Â÷û=Ãkêj_l™MŽ€§(‚¾9;üé×KäÏéÙÍ MvÝ·»ùGÈ1åÔ‹éÈ:ñòŒhi²&Ñü޳y0Á«§}°/ú’#øqÆü¤Cb&ö˜•a°²–æÒjO—…’Y– ê^ (H°£•g›vš.f ”£I")2(œÐËu€n~ítK +jl$ŽiÖŠwvGbˆ¡ŽÓ,û‹’˜§í¶Dƒ™7ŽË:Ý¿%­ÑÜ%ÌpÇ¡#o—ú‰Å½y5PëÈa"] ×t07ıéoüÝ/âµNOôNE§Ó)‰_'Ó’>$;$§)Í™M¨XØ™ï¢ewbH+ûÓ–Lh€Ä”Ê®êç­Óu&ogš,<»^ž:Í™ýM|想{O ¡å ÉL¶b Éÿ‚øÌ ÔΜ9Ԅé×Í £y!£­T¬ks¬=e×qÝé BµRZèSÞ\D–OvM²w†Œ‰27˜c¡øãéb8y¿ûTüÉÇo‹NÜ·žK‚ŒÙÙ$/r×슢CtÀƒw‚Ö«òŒs´·^ð´v1ÃKIËzxBz:ú`?†ðAÖs5a½N²¸~Êâ ƒ ¯l|˧¿“·7/1"PÇÂÐÍ¥aNÓ´¯Ã)Âë×k)›â¦yZþ¤Ê#^^Ôïc Ï7¦E–2‘c”©Ð Ý7úoò´2ÊÓâåo¾½7!¢c‚y@^9[“çíGWžç¬7ËÏžK ôv%›‰ápÜxg¥VÞÞñ_…<¦p€q¡†NM(´­‚áԈ؋ÔäÆüEªh¯…èþÎåð-„žÏ—Kú·ë*”B”ùw!ëR|ލ«kÃðd‚Ú©¯ÑɵüX*ö. úd€èµ5ŸPÊLEO„¡ŠmóŠ—v–¡1.øËÚ*RÙŒdÇÑòVËÀGœuø…¯dèäC@Zÿ…0û‡€Õ,Ü B_¤iiãÏ)¬8ç|·å׆ß4«Î-ãcvôˆ@Ð{Wé³à7Çc³…Ð[euöæŠÅMxÌí7W:#V»÷¸©é#±µ>w2Ñõ¤“0‡Á³W½¬ý¥.M°ŠÝÝSvYçecµzT(›!\A–í£lWíbhðG´ÎËãó—ðæw"Âð]Þó²¸ ÏúÅE/˜¿è.nÊ÷óbüý#Åo_Ê ƒQLBę̈[xHäÎE6ÔsèN‡Æ"@3á¬UT¥iÒúÁ'iYœ¸ìùnÞße â÷ebù4é †Ý[”½Ì'}ÎŒX¸Ä1Ç¡'SʬŸ.W¼GÔ>L¿vY\gb–=Šc–Vi]†:üõu\Œ•Íïn¯ : Q‰~›K/I -2j¹X¿mú3çs'lxKã2 ˆ+¯/C|õS¨€ òˆ¨ÅuØÑù’G,ö)$hã4Ã>Í)RDï+… Øí5ì_@·ù½Ý¦[DÂ|÷¦§ßQHÄBÉ£æöH¸Å.#بÁ]Þ¼Ë+{YÄ¥žCVÉDŠlÉvQò‹h&9C"ª#>DDù–ãQëÄÖY}w,g,ÀB„¬ÈDê7÷òÑ/6u´¾5õ༷¥Ïn ß Ž¿‘€Ô-}ïˆ8w€˜Ã`|_Oi£UÄl©Ø †wÍE”ÑX+r|9€.Ä?ÄJJfÑEòbW cêÁÎ #ÿ°~Þ62 k[O+4 †¸-1S.’¹Ã«—»Øm€Œ˜ëC …Ø@a,´ ™¸³*JW,[J±…(+ÛÐü% ÛxÈ`L׫º°Ú»é«Æü°ÂhT^ïš ¶2¶çRÐ`Ë >’}Ä;jŸ3* ô7¡óÈ9ˆ´ˆÀBd,”5öÿÚB†o×jž§/Çgúaç‰kÑ“†Jg38O«Èy[Úé3nó3– %â¥!l ”Ç0ŒU!{&S‰&—~b# ±¥»7ûbÏ‹;‹×q‹3Vƒ}Kÿìû^Uâ!¹µäÕy‰ÞÊK‹b?—PÒ6Ù~/{†`~ÆR %ÒJUUQM4&"inDêI˜uÌÉ ¶æ»÷[Î'ó[­íz¾Á›ˆáhÎZœ±ò}_<»Ôï.M\ù½%ý#ŠaÁs1¤@^ôô2_]±ØÊËÜcžÏüŒE Òº^‘ÿK„$IƒŠ2V¾lGÁeYVÒÝ_%[¯ød›lÞÏX´’ÎU™Uº{ ÅïŒË ¶¾ÅÌPÒ³z¸IŒ¡›|òz.”iHµÃêa8²(LÝ’JdïÄ5,ø1=g±:Ó<;ò…^ì/Î.\•ÁC6ǹÐzrÌÞÓ:yÐwÏ÷óŒ’ÛÉ4™®4’#Gö‰1Œ«# ÁS_ £¯–;Z>³–1ö´Àœ˜pAñÇ ¿N¿U|ZV&óÔ­ß±äïæØÞŒü©ðÞ®®ª}þ^q?iaÔ€„×µíC—'Qs^¾h:*bL¥{5 ©9ë5 U)ZÏQ+»Õ‰9-ì-ø#ê8–üREÕxî3F4߇ù©.TQù£ô´’ÛÈ »““‡£ÏëûSòÆ9Í"øð¸4óƒ1]ag¤&Žég dêL‚…Ý ¹œß}õeŸ­S2B|¨ÃWÒMs <ùíÙ]©qä€âèOþ„·‘|ë>à䤅9K,ì2ÞÂdšß^ßg‚ó!'™YƒöÃXœ¾ÁSs657ªasÉð‘ ô7uœ-ìOŸr_CÝi*QT¯`B~Öy^g¸nºÅòV T1„ȇ6rÌÞsÃý¤Å86ë›Î™:ç³~Vsnf}¬ñãg†I?köD` HHzh!ÊþY»@ƒT@N€Bz–âÁ¡Ôú+gÖòV‹DYv”9´ØH¾.™ÜøÀï žç†æŠÙ'}¾äsÇJU‹Âš1ι¬YR¥…(µ@^`Gü *.e?Ì]¨Ø¹Ö‡{°»Øù%˜ØÐó¨Èøí½ŒˆÓ›†Á„n~ò3¯ ®xgŸ`  °fh5'Hêy6¦¸é¡~üJXÊŽåãº2³zµ‚ÍC±ž´¢î¤)‚ùí€bž´0”ëɰu7–~E4Yègvú ˆ“ ”“íá÷‰í:Ô¿e,YRËóÁvª’XÜ‘1‰~Ëf«p¬˜Ï¢Á .Yý EOi‰…ù=Í£5·€ d|ñÁNˆüí hŠ>Äh\0ìöÈe@˜Ýäi›2Õ+S&ˆöš%Èl!‰i²ÉH²¬ÚŪFèÛf¹‹ëŒxÖD‘½åë~BÏŠN4ÖùSôÝÌä6޼ÊEÔ™úõ£@¹‰Ø»I@˜ÝD¡ ™ê•aŸY-Yˆq^&Ûåý?U—².ð¬)©çë4_$†Ïu¯¥kM´zÖIRÿ …—‰½ m®¸ry¬¸r™®vºØÍ9LzFQZÐhN.B3ÿêàábAÕ=Ò=˜gÔB/czn•L‹a%S.}P߃{9ÐBW.ÃÛ 2]'õZ't­¿]SÄpî‘!ªw‰BjUªG+zªS˜+º Aíól2^?K•J3ú}$ [7w"’èYÑ“Î'+—È }‰æt4#<4"‡UI]Îç„'6‘;P\ºîå m6.Ñ5 êÕÃúv™c¹C5 &HÉ» mYv% JÈÖÌ0PþkƒkžJWãTéÔåWŠ :¤"ðv“çzˆ¢Oyùèg rÜÊò5¢Îj@Èü¢‡&ÚD,Ãa£ÝmÞÇN5e÷Èí h'éÊ|³Û+l ­ys/§NÓçté.²ížK° HÀ?ôÒA%6¦ÇØ LæõR’Gg1ààÒ·\^?~ô'‘«e·wýËó-±’y®j¶óΰÕO±»ÉIK#|(QìÁ•|ÛéïŒ>I0™/š<*Û$@Þ<ÁäñƒÒy½…6¶É|C¦ú˜Æ‰¶‚ªœ¡œ´#»æ±e<âß/b›qøˆÉ‚ Ð¡»ïçÐï™÷Æ1~\ö#ùÈ@„_?„dž*N¾ø24YÞ×êˆÑùh"lŠŒO¿§-c Cb•ÍÊ“¦8-RÐJÆ8}/4ƒ¨ oZH“ç?h›ôkÈDgòr}Wä16ÀC‚gwëD.¶´d {1É tt½F%Ÿ¤OºÜ B‘9ìðÊ%·öùEræP_¯Ù‘ì$)ö‹"B&Œ]§‚¡$ÍXïf0wb Ò~ý9ÚX  ë´ssèãæb-¶µdqwkê"äÔ7Â!ñÄ2Îsdÿ>SXnÇв샓U løÞKÛyóVC#Þ´ÏChEïuŒ¦ä‹êMÃÃwBz¾ÄÄ©ØÒ’|y“s²,ôsÅTÕ⫯<ÞÆ ß! 7–Ú¬"P#ÜGÈJcgí= éÕr.ú ÙÜ@Ö†GSM1¿µ0×’¼}=pOçô«53‘nÊ"D®?—h@E7)L!»í¶©Š•Ý);ËÒÏ–'Þœ²X’Ìó:ìÐÁÎFzÒ~¿©}ÕBüôÊÖ«¼µG[rÄä{ NQYƼ¬—mʨø9M±EhäŒ4E×rA\üÍ0®)Êǘ ñn´[§¸ž ¥1k¿oRöäm òhÃ`t7-ˆÉHS‡úœÏl„ÜÐw<Ïyï‘_ËÝ—âˆCˆ8¶!ÔË>Фt\÷]uÁ¯ØiV«¯OCãâ ÑÂr« iØûýË’Cñ–¼þ¸µÄ=M¸³aò¡N 6O:HÌÛ,Œú¶cAÅÒ•˜z ÄŽ^'Œ0è¬ãV›ìï !»ø«6Ö™ÐT8ÒýÈBœv{@Ôsv,Éü$ ³æ¶³]þÒEcš¢Ö‰Š!ÑÒ½N'ü;î"!Ôä¯lò‰ùm4]žOsù,ámŒlå¡Ek÷9n-ÆôžZ·BéGùþXM œ ê)И0!,¡5¬‹¤ñçˆH®t û,q´!b5ýëô&éæµ»[{pPHþ ~H²k5`…ÒóÔÝH‡¥æ†J]†l"e+íl0œ­xŸ:Á|"€cÖ©n¦{™B£¤?…ŽÅËÒôö!rÝ¥#`Úòißùä<šÍ'€˜‡΢™7‘s²F韇´è•Š,;p3ó(‹0]éãŽ(IbTz |Æ…®_˜±,O´©ÝAֺеNb]FY†3±/æ6ã¡%'7ȾÔþCŽ—¹}š´žC±¯›¹¯à“r¸ 7€FlÅ”Fj@û†Þ{V*‰Cy™XW+¶XÌÔ¢‡iˆ º|PØAb§ŒF)@ÅŠ9•˜ ŒRµ1L‚ãKr¯/Ïj@ð }÷œßX|IGíÏŸ÷븈û2[»ž¾[rn·Âì&“UŠdºŸ2L}¡ÍýsÖ.®—LmJ÷Èú%†8˜±à$PÀB5Ï9ÂEœ¨Üƒ:?q¯¤ Õ€`+µ'oÝÛü\o¹þ¨lˆÓ7xg†ú¸áCû²…М»‡…„R Lû':b—U,í¦ð;tÏ’ÕúŒI0H¹«²9¾œèSV©K ÇB¿¤tòl!È.óÝ£I¼[`Íðî·-$¹KÌZ™öWÖ´×kHŸI“]©eË}¶ÏûN†å¼¦Î&ż¼®kì\âî;Ëq™MËÉKW‰â÷7r©TIùû[ ‚$</j¿égò¨K =/48¯7d™ ¼÷üÈ/A_îþìÑ—ÌœÝÔjXÖBÄ|.E…^Ñh^ƒ²Ù¢)Ù°K­}öص òÇg^õÔŒ¥¤@p[AS¥ÿ' »¾æ¡C+ʾ‚Á’&·sÍñòž4­·¾øMXKdQ˜æñÙüaCýmÖ_—ºd†xRJ,ðÁ‘›ÁMÍ€ž–V–3Ä–/‘w±¬>å8|ý\ÔqƒÏ×G)×mŸ-Ѻׂ&S±R/?òü?Ô¦ôc`ôycýG!e¤³ÑÊ‘±Ø1-*kºÄņ— qÂ3CËDø-õÔöŠmÙ0jAk §Ÿ:º^%Õãç=y[’Z“~zö¥ é×o6‰åGz ¡.øÜ>lXC¥Æ;E&’íëSœJ!”¾ózÖËZí-!\‰€A.J]&–%õKÇïg#Ù½¤Ókn,äÊ~0¯ç÷ÑN³åÙ¼¦Gû='˜$åü# uÁg¡}A®|X™k‹¶ªøøîxR×|\жOà k6rõ°ÐÖàM ý¡„[/`gˆzY!qz‘Ä ,ôí'¢Yú5±~TrÆšŽ –†þÕÒÌn 3íNf«lZÉ×BØgJkúN­l{2YÛ&w|âeNŒFÃñM'Ú!‚iVâOŒ-eýߤŸÊ¥n—Yå ô(xð¨î™ª#:ß‘–×ÎÔgöÃTÆV®ŒukƒµÜ3ç3I†#Ð!RMdÇxøC¸/q,ºü¸ Ëv}žU¡Öá¨ÎŸÙ/âanÝO>¤E¹ýòÞqo¨;-#Âqè Ã’ZìQÅ»xj¿+ÁÁkGª©;ÁQv&R},(¼ý¬K¬Øˆqêe˜Éº}¬"òܵùŒu,£ `fœw!¢ň›0¨PjµÍ²¡oÖµ~Šˆ&DTxÙ6eåóq9M¹³Ó7¸ ¡·îIO:àd acvÓ7Ñ#Ÿ¶T–ŠÔ̆ºÖDµÅ,iêë0•|-\@d|b˜ÏS ®ñQMzì?5µÉËå˜ÐœnEÇe9=Õóë:ç7ø¸áAʉÈLƒrl"[,d)ƒ1_¿½œ»r,Ä©‰¿HMœÉ³<Ó*¢{<šMù‹óˆŒÔ€–©¹€š˜ì_”$€oÒ«ßæ“eGó^ú‰¦]÷2ºî•”–[‚¨!«7.êbüÐ{g.Ëõj.Ru;U&ÝõŠ®lÜN~…±5Þ¯Å~S†ï,"ƒ)k>“f€}Ý"Ûo¼ˆ ó< 9Eô[ÈLìÄV‹ýpâp¸ wCޱ=!Rµ%‰O§}#‘»mQGƒçv êËuNÉ,ßw¹ä4¯]£3: ¶¦ë̸רaÅùÝ^CÏMY×± Ñ"5 (:Í.vyCÞïä"ÒÊÒp°Ð¹8#ÇG›Æç騴,qÔ‚S z‘rèpX†GLæ¿S!ªt›Û›/„íæóy:^mü»òL†‚y5)úª¥ÍÈçi¢3ؼ}øRlS’ù”§—lp{“ĺEïWÅ£èhäö=oå³Å 1+˜QŽ##]z‰!œ”ÓÝô‡ ¶R=D'ínÛÝïæ“8žHœ×À©MV*†ðËån•ñ^ð½“u@LØeÎnŸÁÉ#øhÜÉ•AÊ”hD*ÝMõÉ+ ‘[¶™ê8gÛî~+8ûFÚå–¬Ÿ÷õáIDF€´‹&Òª‡E„ÑÐ,DÅtÚ!²Gq€£ Ì4a´^—ÇÀ–ðÿ´ ^Ø ôïÖ¯ñGñFÿ¾÷¹ Ë€œ]òVÈö"b´à–ÏÌUœÕ˜Þ{4×Åô»îßèc`Â,Ê5„›¼ht¨QŸ›Œ¡ÜÙ—¸7¹=u.þÊBònUxã6ýøŹ­Ay¿†P0g7yѼƒÈðׯ²b"í >¯à ‡âû`J~#ñoeKbeÙØ S)•'†ô;Pç9+ùøWv§SNË›Â.ÑŒ{,{‡G}Ðò¾cÃàé5ž¸iÓ>tD4²YdÅDXÒ†ÞìDyR2ŒÒdŠhþ+´SôƒÝúð”^q„Þ /AÀKؽÈ6˜MâC—ŸÀxXœ»eL#=Ǯ׳¡Ñõ­¸Ú1œdÅD|€j ”Jèå¶Ú¨JkKŸµ¤ ý<ÔÇ1Agªw ååÌ8ÐKèy}%Q6]¾ȦÃu ™ Õw_©ŸáÇ"»bïe‰‰Îÿ¯:ÿ¼U(ßȲ‰äÀ¹7ÒS»A"¥ŽëýÄîTgÓ\C†,îÁu½­¸˜/@Ñw¯Ag )êMÒH»j9ÈŠ‰47ÎFX ôKtÇD«öÎ@f}´›ß¶„iu‡ƒê¦Ãñp/p4ÅËÕRgäiM}ô•< æF Ç;ÉÔ–Ø”xkQ6`ÒËZ5‘Ç×ÉôÓ¯0!ÍWh¹õkíHlj¼‚’%íŸ_¯ò'b÷ä‘®œg%ØÉ2ÔƒI vƒSÍœœáL­v¿|Ph²ªÇçpbHd=¨çJý @^ã!ÏLâ™!¬0"òs-ß Ùb" 'xŒ õ[°ÒÃÑr«XuÁYEÅ BÕ¦ÿ±… ¶=ŒmõÄ—#Dÿ’Á@º½E›/FcpJâ:yXüµÕý=OôymFEôtyä¹ätlþ ·âp a2 2ž­£i† :?¯êèIÀP#þ õÊêý~^Ûf¿? FVªSDæH«êqÚi²ËZª XvÉŒFY_>È–™sÆú8®¥âl‹ÊŸ¬Ý(øÎ—T{°‘_"X`èòIúèsJ—ìtÎq8l>O ÷¥U÷Ò_œÅ•NÒÖ:qKË䃟ú¯'-f9é¸j%Ë,g>ImÀ{9ÎñP¿Yoq ÂǞЪ%m›ë¸âI1ë56}+¹"öe\ÎtÌŸ"“ã° _´é¼5ßäëÅo/H~‹Î®,ä2Œ~oꑦJ­¾óˆ÷O®?×ú¯§¬¨×±Î/¯„ë£àþmað}]Q¿W³wzQ/¢{þÂlÆéÍ(“BlÉá¸eR ~ן¯êMñÛ=t¡-Éã»7%ŠÜFlSŽÌf/ë{ý××/ ßë Èïõä È÷úòä{}ùò½¾€|¯Ùëÿ 0Ø¿b´W>åMIEND®B`‚mcl-12-135/img/Makefile.in0000644000402500021140000002601011754271036012117 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = img DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(exampledir)" DATA = $(example_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ exampledir = $(datadir)/doc/$(PACKAGE)/examples example_DATA = fa_1024.png fa_400.png fa_600.png fa_large.png fa.ps falkner-bidi.ps falkner.ps small.ps small.png EXTRA_DIST = $(example_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu img/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu img/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-exampleDATA: $(example_DATA) @$(NORMAL_INSTALL) test -z "$(exampledir)" || $(MKDIR_P) "$(DESTDIR)$(exampledir)" @list='$(example_DATA)'; test -n "$(exampledir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(exampledir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(exampledir)" || exit $$?; \ done uninstall-exampleDATA: @$(NORMAL_UNINSTALL) @list='$(example_DATA)'; test -n "$(exampledir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(exampledir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(exampledir)" && rm -f $$files tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(exampledir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-exampleDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-exampleDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exampleDATA install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ pdf-am ps ps-am uninstall uninstall-am uninstall-exampleDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/img/fa_1024.png0000644000402500021140000102624311017231521011610 00000000000000‰PNG  IHDRHÃÛ±tEXtSoftwareAdobe ImageReadyqÉe<PLTEøÎOïˆýÖÑÿøê[[aÞ&ïyçdÿÿ÷¶oð“.ÒÒÓU" ÷´¯ÿìÊΈJµdRÿ빿„JøœØ„„÷½±±³Ýµ1ð‘‹÷µÿ÷ÛÒÑ ÿíÙÿÙ—ÿÛ©çFîtmçWÿ܉ìq.÷©%‘ïL±°çRK“ÿÙw÷¦][Þ÷Æ8ÿìëÿç©÷¶FïpêkM÷ÊwÞ.$ÿÖf÷¼#ççè”%o÷¼W÷ÇgøË‡÷«4Ïœ:onÿç™1)çK0ÿܺPI÷¦Dá4ÔŠï›÷¶5øË˜‘j.ÏroH´‹0ï‰ïï²n-).úÆqE/øÆ(ø‡Ú¥B)L÷©\å8&øË©ïv÷è’jèÎ)èþô!ÎQç½5ÿ÷ÍøÉÁ¥JZ´Š°M•QH54=÷›ìiÞÔ¨÷Ú)¨s8stzçW÷xé©-1ðkçD‚V.ϵ±¯PcгѭjÔȵ¬“‹sm==‹pO¶©ÓtqÑŒ¾kZY<&œœ °usÿø»ÍO+Ë–mÀÍOJÏr${c$øŠ÷½½ÂÚÂ#ëäÛÞÞß½½¿÷xÞçêÞÉ™ÿç~½£#í¦ïŸ'ìªD]^šƒïïïï÷øížX¯E*ñZèØ»í©5çĦDEMìØ«ëÉ–êÆˆ„„ˆïÆ9¥¥¨ì·' !&ÿÞÞè¸X³ ¥õ¡ŸçÇÂïµ÷iíµìÊxÛÿø«ÆÆÈðJÿïøÁÁ çÅgä<=öÖŠÅëàÌä¶EÿÒ=õÖ›÷µ˜ —Þï”÷­ïœÿÿô÷¥÷µ ÿ÷÷ï” ÷÷÷÷½÷½ïœÿ½÷¥ÿ¥ÿµ÷­ ïÖ(ÿ­ÿ¾ ä”÷ÿÿÿ÷ÿ  Ûœÿ¥ ÷÷ÿÿµ ÿ­ççã” ßÞÂŹè^^àÀ|÷÷öÖ{ñJóç½ÞãÖÞœ÷ÿ÷ðRÑ¡ ÿÿÿÈužÓ)9IDATxÚì½xç•/¬‰˜™µ¢ÈS…ØkÆ“±Œ6!‘°±+±Z 6º¸þ#»Vh&1©v ŽyÚUï½ÎÝ÷6»_¨JCºÏ"Xoâ@ˆƒÃ“;ëË–tKB­Û™Á²1‚Öé:in÷nv¿~¾þš½óóŽ$›lÓ†ÔPx>½py<ó¾çüÎïüyÏkÐ2#32ãÿ·Ã™‚ÌÈŒ dFfdF2#32#™‘™‘€ÌÈŒÌÈ@fdFfd 32#32™‘ÈŒÌÈŒ dFfdF2#32#™‘™‘€ÌÈŒÌÈ@fdFfd 32#32™‘ÈŒÌÈŒ dFfdF2#32#™‘™‘€ÌÈŒÌÈ@fdFfd 32#32™‘ÈŒÌÈŒ dFfdF2#32#™‘™‘€ÌÈŒÌÈ@fdFfܹðØ÷_|ñ诹~ô®ÿ†ÛÜûï/_ÁËW>ýmî}ñÅï_ùÝo³0㓦à(<äÑO?“wÏø¤iÆU9yóL»U·iþ×Û?Í'?A¾o‘ÀÞ68ùÚ0ÇqáSŸÑÇö‡ñú¢Çnî6Ÿ¢o> —¹§ïÿ”Os?ùxÃ7?~ýõ›»Í!ã'LÁÑEx}xÿÉ_7Ü¢{ï^ýÿ„ÕzñY•‡?-†Ÿ"óóÚÇÅÿûúõO}›ä4ì6'÷I[t{!àÊà 8§¾ÿköé×ÿÀ6üŽ{»àèÓ\ýöì퇽Ã7¾Ú½ÃÞãp½1Òð©&ú1¼Ív¸Mø†Û\YÄõìÛ¾~››ût«þ×sbý²=ÜþgÿÍÝfaNÁ’õÿ~ ^ {÷-Ù×Ë=}òcSp|û²cÛ"áïß­æ·qû±e'ÜÜü0çÞ¶}ý>X•OeÑîç"'Ž-Û~œ;uãǿɹþ/ïþà8·èÓÝ&Ù¦ßæ†i>ÚÀõî]¼·‘¾@{òL ,®›»Q¥÷ÃÔì[rÐͽöñ™<þGïþËÏ{¸oÞépŠÛÞ²‡;<_Ìÿ¦!²¯·l4œüT¢³¯>ßò±Û<ÌÔ/7rŸ _çïÞ½lÙîÝÛnÔôy·yýö­ù'LÁca÷’ì%K–dïãNÝ0“‘íCËàá[zÂw©ð·m÷%xƒKÇoX­¹Þõ8û-‡?†ËŸ€›ÜÆe—p"¶s‹nÀMîó»v=ñÄ»~þénîY¶›ÜÆ;š¯<íÝ{èСŇ{‡»}S³ˆÓwÙFîÞ0­1d!;»ñFMû9¾ë®]Ÿçà~P\¢ÿë—ܰ,sÛõË-Û?n¿v¼ÈmKÞ&;²h¾®Ô'/·ô4üvØÿ›†Ëô±ûxø¯æ©b¸7}›áÛ˜›‚}7ÀÑ~n‰>²·Í‡£û¹»õ‡?YtWêÿQîðþ—zžþÅ<•s§fÿ ÷) mQ„è?,â îŹ˿8ÕóÄ_}àwï§¹M˲ÔmîŸo#öZŒãÐÞO…# 3¾Ÿ^Üeîyptr¸7% ½áyFâ1îuð¶»66\¹£à”{}r´Ô¿`L§S*—ÝÒóôIão«ŒÆEs·i ¿€—ð—ñáðrø½{ÑøÛÆýÜöKÉi^Ï}sUz|3¥Š¨‹/Þ¦5ÿ(=ëɬJþz!½èK²Ý§àÊ*ý÷"wêÙw>y7ÀÑc©7Ø>oµþ5¼m}j¹×~ë" o[–ºMdѪô¼}Ÿ;†JZñÞüÖÛ\~!|8¥rËÜ‹ædá”[×ÿŇ™nÛ4ïO¡Ñ²ÝÛÂ÷¦ßéun_Jöq¯§/¿ùÒ.v_Ýõîûw4 7¶èK‹*ú|Ÿ)5¸Ã©ë-Û¸ç‹M¿iô™ú¼DYÈç÷E¶}Ïd3Ù<6“ɜƅõK"ûL¿yŒ,KóšÔø¢9’¾{väµÛ´æW¸m)±Ç) /„¿Ÿç¶eëk~(»Ñû¼-5¸´À^:þ×»¹É´“^­¾m\z×»{k‹×þ†ßµÛ¹céE<îMJ‚Ícú[î_P#þµâ¸ÛÙärº~Ãï¦cs·¹tØ›–…5\c:¾mQ€§7¦÷×™z)S}˜È‘†Hï·ÓïjîÙïùÏ_ú¬{› |8eæÖoçv0©Q—¦ô uÌoÏpóoÓù’ —Ì éËë#õÏü¶»Ô‡Ó ¿¬×»45¾|Ãmöß^ cçI`áà·Ÿ ¾¾è9‘õqa– ¿xw}sjUZ¹®oéuË2õÉÿÁÈÝÁ­Ÿ§¹™4þk 'Õ´âóî˜#øÉ¿¯mž»ÍîÃÜ_¦…aï½}ÑÖ9€ÅmMJÂK/™ÃÙ)°ÄmN^fAî{v}©¼ë?»÷ßÑðôƽk9®ûJÖ™ö­¯®}uëÖðÁ9Nùe;\:¿^ýØß[ÛÏœ)M¨ê˜»7ýñÃá¿Øš—÷*üÊk?I‰Îú%áÖÿY ßñënÔ¾õLV©ªæ¶rÇR4º%ÒøæÉñf£wŽHxÿÇíÄÆìä ãáyí_ç¦]€Þ†<¯äå PÞ)û¹{[ä®ÌîO00s­ßÖeakáJ;`¿ G/^üuÿŽ.¿X^9¥ŽÕqÛS<âROoÞ«íyyY&†jÞÁý`ª?`À=ÿÉp±ºzyÑòê‹ûU²¼hÆ)I×>àN,KÍçÆ†´(<0Ü›f½Ã·-ØzªçRòa.mÿ…. ¯æµ?ëM»‡ÂÏæåàÃënj6»á%ÿ_v×w#¯ßѰŸ[’Ò\·;W–^̇«o´™#DsQ"½3ÆOp“sŠ Ö¸“®ÕãmÈç[ÜO§ÿýåÅI"—sÄ$g‘å×Ü&?g¥Áù@·¢-$ðsïÇBŒÙÉÛܶE_N»¾‘¹ÀO΀y8 ûÉ0”¥¼6Ñ\N¡×îž§ïÊ àý܉KÉé?̱Œ§mk\­YÏ5¶¤#0;Ö~‚,\¶‘ET§#Só°ž{X+(„ÉËŒŸûü.b¿ºë»ÜŽkqçÅ_+ %3Cq© »g.”ŽÁ^þëznq*pCvàÖŽo¦MÓîá÷RW —p“²}PØJÊ‹'^jåþhWÒÛùcî±;ކ{ÓÞ¹*p¸-µk¡N®q}‹ný¸¹[ÊóÿÝJYfœ.I‘`(€×‘]HÀ]Þ¹’ÈÈx»e½z& s ‹*àãA©i&g|žØÀ‚;­Á1U•Ç€ùmLÎó¥c‘y:Tu{·§os#¿IÁ‡)xªBŸ€ÙM¦•kL®z/ ‘1§ª8AQlÈÏ%÷¶Û˜«\X:ènIsˆ 1ŒgÓ™MLs=fŠöµ¬/ 9( ªšPe€ñÖtļ'ü«â(ˆT"Á¼`F­Ã¸ë wÃ?€,( –Ëód¡ ¤b(ÒÃ_“;¹m$'qiÙÆTF(Æû€k8DàP#wûÊÂN†{Rñ®µ\—ïBŘÃûtop_ÐÈXRY¬R,8„^÷»$â X÷Y]ÖÛ{Z¹^0Þ-àÎÖ窸€rˆ…ñoõäúúõ½\½ ¸psf Ö˜¤Ä@ù•¸Ó)Å\Ï@ŒìÃÜÆXÌ•£i¨þ ÞÈ>âD‡½¿²\.©°*dÝs’h¿Ò æ~®_È”7|—|»›ïKIW¥œ»92œ¼Íí üjí0Ùú˜ŸQ\Õ` 7OL5ãÔàš›¹Eåë&ÀûÅ)Øïøº´ì0wwfµš:νSx'"^_)„1м˜hY¿ÏÍuÂÿÞD$!4½BÖ̆»\Zߦ¯UÙYžç/ÐÞðÏ¿ºk×ßíáŽÇKªPgZ*@‚(R±$ÔÃmà>p›÷¬´‚½™ÜÁ5,ÆB€ÞÛ˜Ô¶ÂO%‹ ‚,¨Å%švÚ„S㇩Ak—=[«úTTZé#œûOìzb×Ï#ŸY`o´w]hõrîÆÞWOz£.R ˰ü…®§±—ãZŠR èh_ä„=¬V$çŒe¥URª3Œ· s¯TÀòeÙYeáB'ܽ·q˜ëÙœ»–Ö½ ,½äZ –”ŸØ~¢þþdª®‡>~Ü͹aïKšÿ yk³—nìæÜ-—o›þ£J‡õ)àùP0VÙÂOMS Uυͽ \x'È7<5&¾+ÎØáa®þîÔÿBŠ©‹pîãnÎËó @x¿™ ÷âåNžg¦„€y²0§ý-Y ÿ¢hæ"÷pÜŽ¾â l³ñ¼_h‡Ã wÿ<¬ðS?uÑ^V5‰=(™irˆºŸR)“‡Ãx›ðŠó?ÞƒÖENq~¶fŸ{í6ê?ӼË‹áÌ炚hS@Q /Ò^˜LoÅÈIõxÚq?þù®÷¯´;ötñä?}ø”×[ßêKÈ*ÃÈH«ÛûôA¿ÏC€@ =p·)‰%Þ.}Ç"fxÿÁ^¯»¾ÓgÔJ¶ ðÀwðÿÛÚñÖ?û¾e–×Jœ¸ÐöAïšH\‡•ýúŠòT½×{êþ³Ó"vùA໿Ävª46ÒÝÿæç)•", „¸€±`Zû ´šbUeAG`±Ì­þïY´^`QÿEñíEnï¢×ûkIqaY@;¢2))ñxœKü¥T|ôgðS{v~ZºôÇm_@oS©^)ñGVÀí[ÿôòmÔÆC1 GDx~­?è?- Ì|×N6³‚ä_ô‡XÚA‹ôߢVíHXîdý÷˱"í>šÿÉ3¬}W<ºkö¼ ÉÍLqi€Å.Eœø­”NÚ~¸ÅJø `£/‹ Ô¬æÙŸ…ض=„üS² ·° ¦U>6÷ †˜’ƒAC<òJPVVº$tˆþŸ3įÅX>O+™œ,}¥¤O–‹kò­*XžÃ!L|ö½Iý|g¹±k/ð!#… Ô >$ü5xfl žYWôßU#r›ÓÝiÿüK´Õ4/ób™¼0„Àó0 v-®îâJF &Âàˆö¯}¯‚EÈóÚôw<•bó^±¡ú ,è„ãÁ ôêƃÜaFRœùZa1bNP¬0/1TBýOûÂÏx>÷Úä$»t©czÍAÎUÊáñKék“%·QÿMY •+ÐÞ#м@%õ¾hÑ_10C~ þ"ÏR,}žDú;Yb 6&WÞÁЋ+KN @QY6Âì NJ!€ÿ ú1xK™am5`&tªŽ‹wÎt`(/Ç l~ Ř^° &Íγ“¹ ¨¿ úïô¨Ýèce©ºJA0„ÞƒGÒˆéÞ˜'þܼx‚a²,¸ò€V%!`ÔD•QsJ ~²ÝA«j"!—ŽßŽ5ûO©¬J›–ÇêSC,»'ðžëèñõO˜üð€*ãÉogmƒ íw§ý—«4´â>„Þ€MXd8!FËòüˆ²è¡íÏÇÞh±Lô¿ËCŸP³‰Ô$#€€ñ~œ#Úñöy´xϬÚJ§8 JHÅ”C€Dº@&*4­#DI¨É‘"Íh òçE•_**ÊíÚ-³ä{Œ`qý VFó,0D?ÚˆíðÏÑ­?³ÅúÏt×ûm¢Í9&'fïX@ûŸ˜Œ˜FY¶ Èêj«öË î[¢p}" «­^O!€ê*êÐö3qE2œ|4nØvmµþ}ÄúGKAeLù&Áóþª«J†"´ó²¬HµCg¯'ÐlT.¯ˆ#™ÀëTSÕ¦ûV06MR0£¾M«€Ô}€@•,ß'íÿ9 yÌ™%ØÛûðJdИIz¤‹01*pŸiY-λ8³•ßh[ ,¡oü.Ó´ÿÓr±QÐtÞdãýÌ4Â@2ÄÁ{<,ˆ AY Pƒ£ ý£Uë  þ?T°ú<ý‚fãá› ù£b£iËïý©AÀÌ ÅN†ý•‘ªê bùñWükÅM+’Æx!œ`¼Gü$'6(,¥%ÉšÛøÁVxUC]Vhi„3‡Ÿ÷£= |´ãª?¢˜Á7é?¡Цó´ø²¢ ú™)À-€ö.¾kSL*‚/¿#Šd™_­ž’U"éS°æHÊûœA„üugQû€êê¹àg,h­^ ú_ð Ÿ`Ù!Ë €o]Ü‘¶°€ @¡:±›J€Ú×nÁ\céhþ{üòOC`ÿ5‹$Å¥‘2m9h—Hwß§•HIe¸ÏAÔWÞ'í@)zEPL§@÷Г¬T‡,PdÕ3ÙÀ¡À7[ â]h§O±¬âS0”@‹íñ…Aƒ“¡??Ф¿gÀ>›¢*²èÆÚšªâ©,.·Ñ´íäHRÖŸm{ù‡Gì|@ Nk|þ‘¸d­raàße(¹¬å )@{“ `fˆ (gy^ðã{´™X?"Ê"ÀFÉmÒ“å# Ó%Òáý #žÇP¿€êϘ^^ã@ò/"a¢ôù5ÕOo×x[‡õ³SÃmÐÿ<+:Ú¬ÈLèCà“¤ë°æÙË¿LÖ^H™L„_—ÑÀA¢´ xK•q|e<¨òQÿó‘$ï¹Ü€g<,Km¹¸ ô`&ξŠZ–…UŒ79k-rF¸Ç(Ð ¨¿2TU úëÉü*çŠAqY•!2€BGµí9Z„gD —ÜçøqÕ˜¼.Ë-wÐþ¿£ÕÈj0^n$4ˆDFPåÄHµy/"á žïÊj "¯Ê·ª &ËôÑ]eÿ=Œ'+Š€VcC0uÓI € Û³d•5oüÐáX]i[IÅY ’˜9ž)©v‘8PÜP†¼Ä .€³ÊE@TÛšsYÓÆ›¤(ƨ$«ýü_þ8or €# à¶ø¨ÿ³øçtbmLMß(>E¥¡YŠä„VÃ×"qt¨s‡cÍ@,ˆð¢í=çg§·øíöt‰]톩x¾vÏú/v¥© ìÜH3»)ÿ"h±™ÿ¶ÜÄúFƦ)=¨N”./G8 ^\µví¿6îLív0×L€Á˜} øã›š±ý)bû¬ÊŒ¥Š¤úaB?äõ/ºŽã`I øÿ”$¹$©Ê%]0VϘ þ¨½›©/ø€<òÑ›º0æ¿ðV;ÿ¿G» `Œ¢@úÏ\,†w¢TâáÇH¼«mk^fLOʳ["Àªyš¡Úï2ûºV.×j6Q<ýÜ ͦÅĉ÷ó«ó³X¶Ž"Y–úe7Ý51ÍøÀJ$ëâ­«§»Vi@ÊHèÏfB¯ÒWpò‡çh&¸£„ùâÝ3%ù–"t÷Aé‹ËK€J‚,Ì€çoèXNk„JâàðýVRś痞—]ÝçE˜saéš8°Eãmáÿ͈ap ¦¦kí_)Õï@/€Ú"3‚HÓ€xÙeçÀ7¨ÂßÒ´nz1²j¹ì¿ðߪ%©úË ô‹UŠ3à­„"F;6¸'_›._u–›†„äèZK:|”h„ÿkH|¬À ¼­"À”ÿ?ã´2l(“ÀhwJ#Ñ ðÏ–'äâY]ý]Õ–Ê 9Q>®µ1̹ ®3Œü üÀî ,aÍèò¨j.!ÈN‹‘\¾{ì?èÿl¹œ¨!uN]–“PsE± dl½BÓ^Ú¸ˆ;]7 ðþñåâÑ~„“E[ öÿ¤¦=è »Ð÷çí&” 6oÃy‡mÆ9¾³6~”±h#ÁÖ*pûù þ( %9E)ÒÆA2ª*H¨4?È • $RXýæÒ¥Ž2@p²ké‘@,¿=öÄœ<ü´ $Ì;ZÌ5ßör¹¿ÃAŠ#Øëx›ÀG ÐD›V€6¯òδÿ{ŒV©x ¾¼€nÿ‘ Æ–Ñ+0ÜJûÏwí^“T ð4?v-&1àó Vç ,S‹ @‚ç /—jù0[µêÆ››¨ÄøO4 -¢\Þ‹S,Ïþã?N¢Õ`+«-¿_:k´ôäÏ@þI̶Z‰ YÇdŒ7F‰ù×í?*‹%,ºbUƦA·¤ØÐJ %ŠïX $‹)xÿ[0›åho•°ì¨?E© UšJä‚é‹Í\!UÀ˜ãÄØV<§ê:ËS_È)KÈS“ ›@·¦€1*÷Ý-Q€v‚ø?ÿ3F’b f`DqSµ…ÔŠØ£ÄÓaaR¦ñ:Ë¼š’¡ Œ|7{À†ùÓ€?âØðŠö~VÑzurSæ%Ú´¸uü~•¡”x*zOÈl¤C+Q– )Ê )úU¤* ©:Cu+…\ù?/€Qb à[±Ø-Îl%üv”¨ÿ´š šyZP¬Õ•@RÓà 9Ž8xJÉ ÑŽP­¥kŒšùiy‰h–¸ôÈg£·Ž¾¶èÔ¢o>Vüÿå7À“µåÔŒß:s¢×k®ÿ †ùÖŸk׋;'âà¦*S²Z:‹ rdg}¹~V QÓ¤Že÷h–Rj§Ùkþüf…°Fð‡Ç=Bü*:`Ç)c.ÁøNUB..Eó—¶ÿ@¬ã9X$ð¦& ¹Šª¤˜õLæXò´ûy½ûïÉëÆµ…ÏÜ‹SóúIxQÛìý$² ¤åg›[ÍfóçÏhýX‡ÙÀ€þu#ê?¶¡»ËºÏƒÊï 5ê‰ï¡þã1ˆˆ˜’£¸¢Ÿ‰,ü»½æzzÝ\øo½µ@˜³f;f _ØæÜ½fŽ«¨ÏcÙ­9•$Á-«%ï÷3ýe*^­ÙÙ@±J©çÖš¨N77lv‡¹zR e?@*J²Ó›¾Í›l`¶Èލ±¥t´ ÀÇfÁ*Zs,ŒðºòµBt"ÐüëöŸ<]Ž"Ô¬ŸgÌ©ÒI ÖÀ½ŸæÜ½\Ϲ§ ì\Ù¯OMC'ë;Ó¦g¶d%kpî†nxÅ ØI=L––àùzŽÆ ­x{­|]’dÆŒ€0x¿DÖ]xôçÆ=W§žgWøÖs4ߌš¹ð ?X @áèš1±fÎÛЋ{‡ŽÕvÖfùk-Ê’ÕP’ÿã)·*’Ó‚Ö Þ¨aäGBóþ¿äœqôƒúk(2ÿÀ {Œ¬#™àdéÒ®wc/Çí¼&Y>pïÓ\¤·'Â-¯?‹8ѪSÍ;"dj½´Xö–ýý?’q׃>cî·»…óô†3"À @+ º*åDÎû¹z²£Þ͵þ]@í<[“ýÓœ{_6ÙÛnö½u^A—¿v¦V–K›BYHÏ‚†µ,›7ºŒöõÜ0éÊÜÈ™½êB¾›º \·k… 6!Ö‡D`)lûå ‰lt$¥º  FKÚÝY6]˜,ž'uÚeB±À¾Œ¹ÈöÝËv/;vO£°À™€EÜaÒÌÌÍu~ÛC¶ü¨rBº¶“3“§ \+ƒ)m´âü"‰1s½‹qOú0×úÌY 3Š‚)Ë9Q²‡E>@ù¦;8 ðXCäv=±ë‰?Šxë&ˆ?„[zc„¹G‡ñ(çµ½wH èô¨X8×Å¿2žúp\²ûÎÀt~/÷øãOÂç9¯èÇ ^pô¿‘tíæV¬ÖÎÀ‚¢Ðý~¬Ì7}=’kùMëÀU&¾<ÚÿxÒúƒÞÀó8;Vñþ=`â¤rk˜àK+¸ëq›p=WM©^pýGH›ìƒœ[ýcþûCŠÚÁxôs0åÌb7ê?3ܧ½\ò²÷;8"Šô}X=ì)x“0€Ž¸4Ó÷Y(ÀBÀýɶ}-ë{9?è-`jXÕ2®7›´·ÈnäžúQ“Œ¯ÀŒkMà©÷÷aj«&ßê<¸ÙC•½Ã‹SíêÁöO«*‹E2ÜfI²MÞ‰Ò(îÌÐò*¸%q\tÃ80ýôþrTÿŸÓ?”#)×q³ÑEíŠHžF .†j®;rlw²[m}n1‚J”ª]°©y8ÝÑ!KŽÉαkOq½ÿ5Ù{ŠëDKÈfE'¢S×v¤ÚÒ2s›sGò xü@ÿs€´>@é«wp9à"lZ‹í*þ0b&WU¦Àú:Ýüsð  ¾4ÊÒ"Ö?D‹ìþ>Ð_`Ä‘.ÓŒ@ˆBfÕÿIøÅ™Áï}¡ÁD‡Z“óÈé=ëœ߉¡Å=úO&{JHÉ? ø8zÿ _CùÄþ#Ï'êßa@^£½ @3JÊŒøÙ»™K¶çÛ}˜{*¶àfòT$ÙgWN.)y ðøœ>åV  â>pŠ2sÉËŸƒHM°¬§‹æ¢¶ƒÿ`' `|hÊPþY(À¿Ú•SîtcMP"iòªµ©¢ú[ßz–K7¸kpÇ$+Zº@–/ÅK±Ê#‹xk. Ô<¯Ú*ýÓÎtWvЊ¥Ž kM÷G†ÛÈòÚKO²µ<0€,ÐyXöøÌepíÆÀû/Lȶ¥í¿fÀme EêÐ’ @«Æ‹´žg‚¹;Ò=fvoã6“É\@'àdÃÆÔÔ,áZsëfª “õáTó¹Åas[¼Ó@¥¬J“=éžT‹a&ÇŒùO7}›Êë{CërböÎ¥÷r?ߥ7çÜõs®nLU¯[›Vþ}Çßo×í?‚À£ÜôYžµÍ-jžG—æ£3%ˆâ+å×eÏóÜ£Iý’RI8O ëM¶ìÁÎý;*%0wø`òG(Gå¶’¤ þ„{-`ÿSê¬S‰¿/àù—1•ß0# ·>Ò’lÎuÉíþéBç^L“Ñr«KDk—Wb µS7ô8xÿ|øù!.×Í]~”ÛÑ .± Òlÿû Ÿ pdZ‘bµD©Êß7<ÆÍ5wïuó›Úò^ùNÞ„w®É}cd³k¦ 4×TXXœº¸s[…0fËãAÀñ± b8å=”êɸ—ÛˆF‚šˆ¤6G[¿<È›òOúXt_qV»$ÉU<&I,$UdmÉÏä€ÍMTÍ(.£vÒFö”4ïj c?©'GM`»ªÝÇ­¹è,`&à^n_ºÿ¡Û<ÑÖÞ¾‰Â€·w~ûÉW×É …ŽMÏkL `§*ÀLìÿç¸ÍÓ éÂÀžö6Ê´¶‹÷w´ãÐqìDåæ’êÿq­°˜!ÚA ?±‡ˆ‘ðö8KV™xQ¼GK1*H|ÿåM ç$LE’îèê_@J‚ SNM{ uŒªª7Ý|y÷áȱÎì¤; oç:=ä}džMsŠ ¦ÿ…%ùö¥ú4 ÐÚLM‡D±›a¶bz…b Ð:¤`ÉÚÏP¸Àp[»ê=n׿èô ýí%6ÀN!s ‚ÁÀضŒÿ‡½NಜënH ÿÞpëKlr„¼½éÛ,æþ‹¦½`mÉQrJC¬Ü´¼$(å#øã’W}D¦?Ù_±0ŠûþÁ=€·Ö@LjFõA˜‘R?<×.Ü]Ÿ»3 — xq®ëmK£—ÅÆÎ8„yŠÞH:£ë=²êR$¯{7çžJÈÅ`¤—X>dÏÖ*åbÍt§n ÜÑ­!ýy½_vœ?¿t)üþ²÷Àã)ð9l ˆ±}6ÙÔ[ÀmýÉߠкô?I>pÀŒÂäp€b™7?½Þåšö ú d\.©e˜`ÓrŒäïÆÂÿ"r=ß%Å”¸®þàýgæBH-ÀâøŽ@$U×}};÷ÔµV“Eî–¤’¬Ïެ€Y9ÄqÞqþËÞó4}ÅyŽóŽ/¯˜ÌÕç£E[Éh£,ßeÑ]Yƒñ3$ö¥{;ô†wwc,£;ÝàºB:ˆÜ=UÕD4Åøg´8-VU€AUÿ—Û<ÞÖï%Õ? úØÙ®ï§#¿s ± 8Ï—5£UY^؇½¿â1Ü‚dSBõ‘)iûSiÄÍÞ «À#ŒÃìÙù®·ÖÊcõ‘ù ëÇd2¯ 漘nŒ¼¾e£^&D^)0¼u)²CÝ‘i¹ªMVUpoÐ À÷ž(Ô}€Ž—ïÔ(€ÞŸ÷‰îY‘¶_H3€­Ï„B éŸ/ÄÂÁÏ >ŸÏ惹A``¿„áÉ8`þߨ †ïèäR}ûÜ Æ€RŒ'óþ*CÍè¨X„›$§Eoõ‰1AÑïÐ+‚5K\D%1€|W,X­}ô€1yŒÛ6wþJdsl}€EÞ–$QnÙž›š57\yÛ€gžázð˜Ë0:H1›ð^À^ )#Ærê¦)ÀÀÉðá´”7˜ë(9:8¼^µê”;}²˜3u Ë==EÍ7ôÏ SŠ4ˆ{œËç¬âŸmŸ7Ї\Á<ÿ6ü袇%1@¬ù—FÄ0(#@óË1Sª¯lb˜–-ò#5z×?uÄH2–$¨P`ÍtåŸíL7e¾tŒ{ŠÔ- ptÞá(ázx™iðôƒÊ¹†9°kðR@‰ú0G¢Lss®Á°÷Âà;ÍB …õãQxȾ;´à›‘ï>ñôÀw¹¼@€jm!rú$V&]ÊòOS‰š‚“5XàŸ]°j¶tb:a£E–úJ§ž À=û=V<¿Æ3MÉuó€3\/9×v‹<ûªžÕ‘¦’ A:0÷Ñ€@ïõç$=‚ôœ®juS|$àœBoð>Œ¹7¦:ôï> N.p-ÐkÞísçátß 1Ó*%·õ†ç¹~–e°ò‰ç1€GÑð‰´?„®í«XN# „ tÄ•’Ï@:¾¹Ÿ[Ò¢·Ößǵ>ƒumªtµâïÿkê «ì}as3æôØ[jЫ,û™ U.Õ÷ýÛfŒJGÀaqÝ ù`èKÁnnM7H_Âm¼&M`_ @¡뼋Þð%@!¥%.Ж‘Aôÿ r´°Št[©¡¯çº¬‘€à/u©òØŸ¦yßî˜b8.О€œžÔ-‡¹͸¹U‰IêWêçCYß P­ X̤;ÓÃuì˜Êx¶¨*v5È!…@¤"¨ŠZ§¾CËO†“þÜ_}b×ç9¬ù°ðC‰?ÏH/bB¬_ÛJÉt_±ñ«g×Éò:ËIÜ`½ zðÉÇ8Òõ³«¦'d§æ§8:î`YÛrg·üœÖ H¯ü×’[ÿ$¥b¼HQœ%`/’^ h/ðü=EŠdz…@QåŸîL¹{=Wm¡÷MqÕÒÃñ„ñÉAJX³b.Úv#C´‘\ È¥™Áî-ðbw€eT}cÈ|©xß4hå²lùýÀ×¹žõúa×a¯Þã#]å/ÖO6qsuú¹”¾‡ÏY”“¿)”µvÍ›ìtÅï1ƒVZL’ã~ýãzžÄ&eÙp›Í“qfwÃ]>† í@ó’TEXžH|kÖGÄ÷ËZL"¾ÄYÒh 6kÆ­X ¬aeS+ ,û¥Ý‡¹×”Tiå‚8Æ•“;ôã¯Íd›JÂu˜ò$ï:ì­kÆ”…ÍòÁhXŒÇSÚ›œÉ¬BUvÆI‰S;kÓ+‚ 1ìs§–þgî„~xõs+H+Þ/° {Á¬§>÷øl„ ×(°hÀq*/ÎZºø<²U4Q~¥c¥ÄÀê1  € ûȱ¡NÒ·þÛË™ƒ“×EšU‘=ÆË?Ò;‘àõ{Hþ¯êÑ¿Šd$PQ†’ͦHcYW%ÃlÌŠ€IUŽ®ñºIîKËÜ‘&|Oð"nv·Çƒè;q BØÄ M)zç!uœ˜†G¹ð)úí¼,–”f“Q³õÝDEŠÕÖªò÷ {¾×É…oÏÞÞÈyýŸd“›ë]¼dßÁ0×IŠzHyæ÷@ ?dÚ¾…À”OoÂüÀVÁì]¼¸q˜k%{ Y²Ìb½\ï¾Cx›ÍÊx“ðJlˆÄIp ·È²’.Û`˜iänÆuèý—ŒÕÎ'!m•§¤xN‰Áâù 3gçÍÜÆí-Ƕ÷põ¹Š”ò ÈiRÆš;¹È¶íK`jÜÓˆfz·+Æïå÷.ÞÛÈqþ£_ÂùiÞÁ…ñz/ç­óy}¥,—(Á~D€+ÅT¹Vxg& =õÜñ?z÷ÝläÌbWîhåq`?ï~îñG.`??!$àæwôñú>ï4V–¦ÈŽÏß` #` Ãm²'ÃF¯HÏ-H>QLH`@@Uß…À$–þaŸÿ`܉ûIî]™ä#vèAU`ªäê("E€AXøªŸß>|¬åØá°÷©Iì ¸ µ@[C ßûÖoßçæê±Ó»ŸÉž‡Ã‹Sóè£a2“ƒ'3×pfÇ7lXÍJú¦/çÞ¦"%ðgËovGÀÂ@M€ ùÍæ¸zXFŸJ¥X@s]½—ƒÑ³9DŠ]ài&cŽŸ™¾ŠýúK H¹80y(ê8ù¸»Ž"AÄ4Še¿ÉÛ ­!I„“¨.ô±&ôþ‘ ‘1Þú/IFôþìÖC9z€Õ%)ªÀÛ;f‰ÑÕ`yZ½øðÞÖŸ¼ÛºË ã‘€°mù/§Âdj&ª¦TJ‡| œ1ë052Íè/L1Íu=äaê773}}"au±À­÷aM`M0çñ>¦ïÔx½V²X‘Ö ´X‡ À@–ýhÖVDÈâvŠXÛ‹Õ}¼(¨É¶L›"ù° ËÓb™À¿ÔInãmÅà6`^°µop|¹“ÌO¤7¸*ɤ3LÜYr‘¡ÎP.'¡?°1†ì¤ÄgŒÕ#HœÉ˜M4¼ K®‹M“Š¬Ž ñ×9Þˆö_ZØýØØâµòN;<•SðôGQp¬Ðßõ/Þ0’—ÁþÓáþ ó48‰ˆ>LŽbGÌnÝ4XPÀMîöûõí;ŸÚ¬H`Y}9/'Y€HÀŽu¹q ô³öÿn"Äû¼©¸PŠyá~èÓØ‹R~6½£ugœKºB’и5ßܹ¢s³:©2¤¡¨«z€ Ôâ¾®)d¥³ZÑT“~¦R?Ãôcà7šXX?ˆX~Tí{^¤&A6†||לÈ<©fê©;ë˜æÁbO JþßÑ È©Å5$Ró[Wì`šM.ììC˜¼„/ªÛÑÚ¹97÷<1ÉÍŒg"7wsgëŽÍ¹×M„™Ü´Js) é˜üÀšÀJDü;±÷ÿ™(Ï÷ï}û„B…ó䑞v¢ØÍ |犼Ìw öõã)ü ˜VojÏ{ ÛâÇÙg€&Ó '€]k67·¦3x-FÎÉP¥¦‹vÁçDYAR¤ª|}Ç_Ü`Áþ3E#Ø *6R­w 'ÒÄÀ{59‘ö~''À¸Ðí:éi åW^¸ðíR-RA»ñŒTIUeˆcðáZK™(ú+†x¢‚c,Ø>!kO^ÖP•–Ú—.0XÚËÂíÎV£j½’¿Ü`U*/êHíø» ö¿â#­w¡0“<1ÄØ¤iùE†)Þ/_*ÊÏs8V7IDÿCAU]»v-–:Bháòy,écÙĆ<›ýPýy†ÑÏ4qš„S¢þ~–à}ù—hÇK0 lÀW7Ý·8ÃßÌÂcqX zmÅΚRõMSÃB꿨yKóX«c’T‡Ý^[LLy–ƒÔ4R°ù¸ˆñ´U¦qÙ …­°'(RöÁ*¶M0u ,[µ+6Nè«ÑHG ë¨¤Q6€{cG€+ØÙÑ93‚þZrÿ_A”œ1àÌÑ,€0QÐA£U2T¨°ü:`G`‘ë°I <¶ ‚~bûU^—dþè|vï_q•’8­6Š›UE š–Ç$Rôƒ¯ 2®wÀÆ©7'Dò—D¼s´vÒÿr ¼{(h…·ÌÙ‚yùΣØÿo6‹D©K˜ð@ veÛh$ü!“*o@ }îñMYžt$€D…ðXˆ¾€ƒ xÎmÕ8D?o»Çhƒ‘F@t®•M°½M}QŒý:pÿŸ„ý äT §%ubˆV—ª #’äy<‡ð½‡Î‹Vݤþ«éóÃÈöÂÚÿñ3žíë¦NcP‘Ö€TAáWLÈ8ØÀ0€ÏmpÀžüñ7±QÀj°„pJ…‡¼ÉZÂÚÿ—DZq÷eP^¹Ø©`K[?Åô·ã~vÐ5@,FßÛ¯Z%‰If ˜I§”19Ä] i @ÉPØÄ„æ0ý6 u w1& )Àî,›e e1g¾‘ôÿ'¥j-ÖÌ8±[ø–œñ"ðçHL˜ BŠaÒÐëA€à&XrF&æôY#iTQtø­ R–'Þƒ>áÖïâ|YwøÉ™O ƒç& /¢‚ŒÍB© 9Ͳ/'[£Ñ' ’—ó¸“ʱÿïì*BŒàLÉgk)ðsŲAOï{ \yqÃÀ¿!0ðžèu s<îö­Ó|C- ‘ˆ–Kñzèäî77œw°Hüö.žÁ➆۔­"9¤,.jO•“$çòüdÿŸ"ð %† É`¬¢rcSP?“i ~rÚTûxúx©…Ê€ÿo³h³ì ±Èd";­žÝ’Ôr~Þ†I‰¤ ê@cþ“¡xýSGxÆ ‰°àÞ @0e¼Y °`ð2Øÿv|½v€˜4&G³@Ž°Ä˜«ÀS|¼PJDœÁ6•“²Ý'q0k4¿CŠÀ`ƒ,Àâú‚4Tšp¶Ú\RÓ«:àY…°e<09n”×bÐXd°â’öaÿ즖ƂÕ9ÀýbÁ¢š„œ@¹œ+bAr0ˆN.Ûx¾lHµÇÓušb² xÀHÊøŒN@NS³Ò>´ÿØ›¨ôL—?Äx<ع˘° 8è>¼T¼KÛ ~(ã郿t &¥bxÜ.ŠNÄàÄ‚)ë5`¿SDì³}úŽ*„§ñÔhY¤1©¿èm%ô¿ìŠ6~_Ò€²°¡Ÿ…½;oûÈ^Õ_&q<9”2¬ôy¶¿ãåeQ¹?¯ ?Î(ä Ài– –‘â®iˆO¾[±ÿA Z/jÉ`‹vQ’¬D Ë ’Jö¼·á¼œDÇÕæ’Ô‰(žètêLj/X`+áÿk=àÕæ‰hý»A¢•yÝD³iÐrô—øÜjxÄÿïâi!¸D(8o«Áí¯]à¡»¶Öbw[œv œÝ›«0, ý?­‘`ÌÛ:³µ7QªÐO.Þcšgë‹è'ṽͯ˜=>m(±\L¨z— ²õ$þ§ƒ2’…€ 0H’E3žÛ ÈØB4”¢p€ü~øxù¸Q¯Ôògb˜ÿŸ*/–åu59k>>RÌP1E†åÏwI.r0È=¿«)ùìåWNJ%k­œpâù&P5‘R«‚èÍgÀüOI#ÒጶT®5Óè?ð$G×gú°½ùÎGˆé+Ð.[Êב¤çÙ ‡É”LÀòV Â;M¬[[…muí0#gБ1-}X0~'Õ ÿÿ²V€ ¿˜Î ¶4˜¬nZÜ@vn\$Á†.Pv›Gàñ¤[ÐtQ˜†¥P`¢C®ëà ƒD€öfš@æË*±}c|'øHP Ðt™±£¦sff¼GÒî£> g…5µ  ®Ä+ 1Ðì– åÄ¥ZžßC€ý*†®íåVUM81GäjÒ TÀeYûï[U0ˆ§®^ãpü¸,ëC4“ ž@»}6bòËîÑ®Ìf™@ëEöCÁqDd|`üùºDÀá(˶àݦ<;ë{ç>L þðs×ñÄ„ÓÄÓ¼9 `X(ýGû¯å lMwUm•¬”¦qííIÍÉî!VÈÊ‘‚Y>âÒ¯×é-E©×£ÄþÛOh1ØÉ˜ˆ nö†ÿ™Ñr€ä³XUª;É¥g@Sû&Ü÷‚/¹1ðòøÐv‰æ¼¿S#§Jè¨cÕd À,Ù d» Pÿ@ÀU©R†–Ë pÁàöI®ª„œF€›wwŒ” .›,XŠm3áy7y£dûxBž‹¥ ýM‰3´ 7øÔx)‚#Ññ‘d9:S„yÒB ”È@P"Å•S(ãCÞAå€ÿ¯Ñ€xò-.U´äáɃèöÓâD褡iR ´Nˆ­˜Ðð‰€kè,õHBŃAxÒ ˜'1˜úO1„+3j!©ùÇ3yREZMÓ¶8¸•>rŽ|rÝŒN%4ËM:’Ï—ï$ÞFâ9ZþY¥©Æ àÊCç7ÌŽ€þÛf­ ™¦ 3Š”:HÜU¡H# àÿÛÞAªn*[sþˆCÌ+ÿÖ@àþ¦‡ò6…è#¢Nù1ω3‰ìŸô7Á×áë ÿ}mžßLbëØ Æí[i-gH®©üf6LÿOÃlûXû¨ìluš?.»V_ß±÷ ßeÃ(VžÅ*åÔèžþáa>$d_NeÝ/öPžÑê-@…†äÇ™(©ùoòñŒžó—¸˜…<#+ d‘Ž@úš#ÿŸAý“¬Î¢ü‹1ɉQ?ä{·`.³ú}€{ºøÔöœu[ JE¡¬J9­(+¯$7éèæ?Ÿœù8Z9¡Ê„9?ïÑ|ÅÚA5±Å\Ÿé4žJ"`HƒÁ½Q:Êc’+H:GÀw¯»HÎc²½Ü(yÈ;† ýY@pñ*,QV˜iÏ{5-–=DÀèRªWÓÝ!äÕ¨ C"ߨÿŠ7‘(>…GG²X&ˆ»…?Vè çi†˜Ÿ4å áΞo{›GFËDZÀÓg'¬µÉ½zÿßrÌtlĹ¼c<¿Ú9B‚@JÅL\Šw`YEÎ*Ü àÍêïgÿ{l«hÅ.Î ÚZ~gûoÛÚ+êÿ1X|^x0"§~p E"¨ÿÏ‘OÚ¿ƒ3"ê‘A˜ úøH4}ÄÁF‹Ò‘dJx<2þÏÂJ 0ÞL_€€—1ÿ§¿`ßU˜-dò¦„<ŠÚ9ó ;/ê ] _%¶kB2¨$éL|c‹{ò…J¡È1y uÚhìå¨ÿäü  qõ{«áv˜*D˨F±Hþd›0®J2€ñ~†úOÙ¨*þ#E`°šÎÜà¬Uåh9€;V瑸§ìDm\¢(“Å,)ĵC KUØ´+‰ùQªôòM™ÿ³Õz8¼r0uÆåHeÉw÷}ˆÝ?¥ ÙÍx&¦Át²¦EŸ‚àP;"€ y@¹™ðBqލ1HŠ )ª'ÜX†‡ÅãSfkî(@Òþcà,öªö>Û&ÔÂÕ`Ë Ov!X$)5]ö‹4p]Œ "øIô œzªŽð¿ÀÝÁHd7éÓçYYĹxš#8ùM%Æ21‡ÓOS‹bEP—x' ¤ÿŸ+ÿ ±™²*S’uh9– :@ U•"½ÀCK7|„§•«¥øØµ`Ç,3Š’ŽÎ#–ßÑþûÚ>dHÑ/Í›€à£U÷ÓúAà,(:†x±ì­WºHɤȞ{ôÍsð§I@«&ÿIn“g„5ôy„"·ËÚ›h dX8û€AóOz?—Ê`ÿ?Tâ¿@ðÊx+i»@pƒdG ì„€1ئÇdr4˜~H•ëaÙ3vøÖbáÙÁ¸wÀÎÛ5;&I==Úê¾vŸ5î µ'óÿXVZŒåg¿¥x>ä)Á˜BÎ 0b%`^Ï<k>­h1Ìi‹"åª 0$ðt’ƒ© oÚ 0®œŒÅ°s3} ]ý±\Ÿx ܵòrH™ŒžŒçÌÚþÊ|­ ¡a0;°Õ€x9 óµàCQ˜ ¢B!eÒ…3Æd¼ '–÷ß­tÿŸ€i´ÀÑ»^¹\,wÑ´0½¼j @µâÒ´ÌqÓxH © tÓ ï@åM<óG '#ùñCTÈAçÀÃòÈùX"z¥£5°ˆom 6 `/…>`‚ôþSzåŽK"Ç„I.Ìè8§ôý˜Þ+¸À¿±À9° Œ½Š µ`¥4%£€†"Lü.D?à¡B<ØpðjB‚ÎõCÓ<Ña¡ûÍ,<H¨2þ⌔òÌimµãȆø¢Øßdq,CMÈ`6×Õm…B>Í*Aø©´ƒ~þ— ò G?/n£±¶Wêü¯èöŸÂ¶?ãXí¯Ä]#˜Ä**H  8ÛÿïsâÿY >‰Ÿ·õaù¨ÙøŒÒôQ¡¼¥}˜bùêl±¼®8ŸºEhNÓ|ðË+ÄþcL“ÒÉ»š«R⟠æn1¤èß^p¥XÌB%üð"¬¬ÏĆž÷c‡€-ëÀã<9Ú‡o÷“éÍ~ÿôdljpЧ“>¦Ê[ú™æW=zòްÿH”« ½l`Ž;~ q¿E €OªÐþüÈÿõËëçŒs‰„èwµgýX\WÐââ þ#o×Ñäx¬ÀU„ÁæÈÕÜéN1{µ(ªA{à³e¶—L¯ÔÕ½|%Ùÿ/h-Ò°Úea¤ ëÑ/$ý@I•,é=þ¯?äøb6ÏûHŸv èÌÌ($ @’®œ8x’ÁÏÀ®è«²•ȼ^õGú}‹o“ÅåÿãI(ð¾¸y®Œäâ’ït“‚ [; úP—Øýö$I満7âá(¨=~¿?ÄúlÉ”"riSnîËG>vå¶Úÿ—µ$°VÙg~…)àÿƒ«´ê`lF»‚à›OcY¸9PšˆŽ-,EÚý“â~o=)ŒÝLHð™rP½þÛìG޼è_ÛôfÛ•—Kª¬J@“˜¿BÚBå—(˜è“‹¿¾(LŠÑQ@_~xt1ÃŒ’}‚£rB«ŠádT°¤ŠªÝ’B€üħÊWë±ÖýéoŽ’ƒ])=ïú¿™¼«{ç3ú9xk®ä ¾ rð×éZ½"„1ÌnROéeòxðª(ŠLA¤>8I®’™ â±­øS^;ùû·ÿš@Ó9bþ‘•=HÓeW0#8ª½^@hý"}Cà}±ú¡×¨Ò4ÙáÅýq¤DÀϳyØ'ðˆ~ýžÿs¶XEç}{‰w ¬>Èè¡…ߌ‹{êõÅPy ÆjC<ˆiA°ùËõ¯Ëcxâ|ùµar›nøþ³ 5? îãe—‹;§†tAšcPªªÜl$Èýðþ<Ô´þšøù+ÌúžÕ˜8GèUZã1–Ñ]ú™õ¯ø Ž ðñ·É;y€à¤ Êx€È=Q†p9>¼y³eáÔý·Rþ¿†˜ÁJ°Êý5MÁåÚ9ãRü¸÷8€™3Ü»·—køå¥‡©‡¼\ÃÞ½{͸í‡Iþò˜d¹žkhÄ{;CX´lÊu8€™kÀÛx#›sÁ‹TýØXªž>¸m_c„ëÄÃv¢ÊUW,¨Ä‡VZPa-qâHSA+ž+)¹;¹Hã¶}½\+_6¾VVƒM& ƸT„Mv.›‚ª\ ¢”“l»ûôN@NÓæwxûú=ØÁUWcw¹;"þT7gÖõßÔ`íðår O¦Y<-+ß*ë,èù½\/LM×#çbd„lˆl3áFɃû¶õr‘bä²^8“»ÙÍõnÛ~¢—;õ{C xûŸL¥vüX;2ñ·ì •ådSf_¾^€™ó>Úøø£·ð|Ü '’¾Ü£0pæ Ùtu êõëan…C 1"5 TZ<âåžn|²q˜«Çº° ?`Î .òcÇ`úëc±ØHÅrZðûÓY€ê!ë«‚1 «u\_->t¶DÍY,«Õzÿ@' BN [^¤XÇ«ã7É®œâŽÿà_~ð Îë×”Æ@/ ÀîÛ×èž?HºÊ²OÁÞª•ÑæxàCYïPÌ€ ÂfKMM˜kÅæÇR2([óe3w ›¥r­Äø“ЩO›{í–@Êÿ×JF¬¯¤=ëŠæRªÁþ{¦£؈MqŽkã½\ã!{½‘d!,ö6ýïÕ¯‡Ýú¾aò(´þñÅÃ\¸íºîÅQIéá&?îÆ¾_’îq´ê]dz—˜¹cꈋTṳ̂VÊ `ge‰!Nø\ ;q/ÉÖO)ØkÔÖɪ5 «KpÀ¸V?® ^aw>¶Ü™ã¿=`\ FÜØ]|÷ÿi0 ;M»áCfät¾s¬B¼ #€Ø33­ŽHñüñ-²Œ}’Ss3áÎ$U%˜¹mø¦Ùû†½ÁØúÿ:¸¹}--Øm òô•ß“ý÷$í µÇêHú.£ý¦‹á¡jÈùuå­© þøéË~„€·Sm/1Hò€ ©ë¸Ö\B†`:§©:.üä×¾öµ'¿ÖÈÕ€_ƒ†os¿ôî»ï~õÝop;c1—5vÂYTpÓ"ÐO„ÁÕZ?„?`µbÎ>yL*•eÉR­¸ðDÁ!p_ô( bèÀóꛌ.â~ððÿüÁüK÷QZì~ž Ô¸„lw„ÿñòêókVPؾ²Œ¶ÿ·/Ò"£ôÑ=Ø 0mn ØàpxŽŠÿŠdÇäÇôfÁ¬2GÈ|õݯ~ƒ{øÀž¤ý7VÊ~ÏRÜcÜ‚þBÆÄvIPY©½˜jâŽmo(âËkì¡ÖyípZ¿Ý ö÷£×¥úaZÞ8鲯$üK÷"­²£®xŒ@“>.`‰ÛMÂ~ŠaŽ©åàþoƒ2’¯‹ôµt§ö ÿÌÇ Ü'ˆV>aÔfãcrtÖÃ$ò«¨uãXr¯#@AT^wù·ÿ'ë¹õÉf2' hN'äÜát;3n–öÍ·/ÆÝ[à€öl-Åt>B¹©y®#|œ>ÜdšÚ‘jŠ”½«¿ÖäŒ+Äx©5Õiºeßo_õ[jÿó ’ÌÓ I·w´ÿªä„ðíÊ xH‡ìñçå2A¯fñ¢7<×öÆïó1Œ½ ½~®QÞH°8ù]̤ÖsO¢úýÜSÊ€€ n÷wßýŽws\“”¸¡è×mäÓ@Á·Ÿ¬K·‚ªBV•ÜÇj4 ùÀääHr^uœl4_.MY?½ð"ê?YÖŸg?,¾®NÏX/žñE™èó«µA»,£7tÓÝygelú·ú<ý€ÌM6‡ `u¿àçRý’x©þÚÅÔ±¼è𺿤OÁއÞRÐëÿ4Ò|…äî§qrÆ]2èÿ[`/Ku,u,òÎkáºY^73ÃíUíóÚÿº ‡b.ãø;gŸ|œëäûË'dõl“²c®Öç¸gõ½w¹æMáßZç7ÅÿO@Í`r7{ŸþÚ“0à¯Æ+ã*¡C~îÄW¿¤ïr;¯:—[’¹‘Ëû]YÁ«DæúGã Xà[¶@žHO¶ˆœ-tS`QÑþ]ðûͳÓAéYk ï›koÿç}ê#ž_óÂZlò7€þ¿–߯0¶Ñçü¨¸sþì ±¼ãí7Á<1­\ª]òã`$ÚŒ³£•àG²ó§àá[ Éú?­{) ¥¢d%Öÿ_”dÓ¥Uq÷Îë}íg|xN¤ÝnŸß7ü<žÿn·øBæymÁ¹}ðªpþ|fN)ïå:Ÿ1ÙI£fs8­Zû­_ÙÔf¢>Ü”ý›(Ù³iSÛŠÚÔßGQ›Š[Ó§”/BZ߇ ?ŽB ‘hI¨ÄZ\TÐ4øMNVþ[KŽrÛÓÍÅ{q' ‰x~oq¥–d›&¨ Šªómòàcmê÷°!Æ3°iÓ EZ…õm¢6s{çºÞz±]8̘Åù‘¹ÎÍ^fÇÊ`V?v ›¶þ­°Ëêÿ±å´Hr«ø¿—QÿÇÉA¦Ø‹OV¶1œ"Øä‹¨ŒÔÿ…™×ûº[ ¤¿ó¯ÿo±û¡²‡ºy±3E௯ ”Ù°8·ùnRø¿ôîFwqieeé¯g%iªôìæ¹Õºt¼!¡Ty,XaÁVAq4ãNýÄ@åb~òì雈†ÿøRãÉsŸ`Vœ÷n{—À–ÁrvÑ¢ØÛ²ûÉf ÕßМþ¬ù¿»EÑ|àÉt¿ÔðŠ e„uñ/­˜7=‹n!$ýÿñ LÒ³¬ï\q“ø?ž[Q/’ð€4é§Ñ!–äx±)þÞy×ý¤Y¾€ýÿ’‡>À¯±‚Þ,žõÞxAï%2»ÓJ±ó ÉQÇÌÐÜ—Ï´rsoèý‰|±²P2%Áº.G )˜ Îb<ÆJŠþøäsÈÆ?C¾v4Ý[xÙ¥Ã\² /‚+;;½^†I…<ȳˆÿ¤’Ë×ü`&yQ2R Öá <© ÃAÎÓ›Íï ßûûŠÿýa}îó ’ŠÇýÈGfe,¯ºjåŸn<ðdú¨°+ÝȯÝ›ê”-~ìú—ÏëÃñ—Ü“É>€wîŠÜ—ÒÒÜMŽ› §N|ì?J•bcòDnÝüÕòN«x¸†"U/—âˆZ¤ú·JÒ½Ê&£Aß¼üÓs€ðÏw%õ׆;ua€áØC‘<wìH Ÿl‚_bnæù óÎ !SàО°ðdªajØœž²‘ySpêÖ@2þß1¤è-í<„]{ÿœ¾) Í%Uªÿ1ÐÜ4§/÷×Cª˜y½¯{#už¼¬¬šô†ôÇ÷‚¿lÏÈjkËò4{n Ô€‰ò´ 4ׇ“* àÙµYYY y0Ký²Ü¯•À¦søõ³„€JâEn4ŸD00žŒh,Ø=J1gr’VRà“œÜ÷?‚⯸)›²û8˜îPks`À×É%ê¡%Ùn3ö:’¿€ÂÍA¬ñÜ„Ü?ˆ•~ÔÄÀPmW¾¨NS*G!£:ÖU ÐÖ²d3•:$(r0Ø` ޱcâÜ`Ò¸)S;äûö–N†v­Ð×y½ãáåO§k"œ¤¼–Øu¨I^ç\Æ«ét¸î {Ï9H¶LCZ’æv^=ïõjñ&³ÎÛ{GBøOb7µ+° ²t$}ß·÷þí¿}¤H:~dês ü¿=”’88¸ý±VÅk^±ÿÙ&V3ûšæÌÖÝå…cK£~ÞDÞOÐîo–@}0sžšM5Ór¿Yjþ†îö€C¥ï9 î2Àç¿üÔNx,<¾gSíàqmáôOïj¨à×%ßð³†_¾B`£‚Ž*f/¼OÙ!QÏËj,>ƒþj‰õÃ=ר0õÕ‚ð±O‰†UêéÞ5Ur`»`÷1(µwßUƒ)ñ»Æ7Õ Âø_¶mƒO–‚£Dû÷<½›ÿ yÞ,*aLÿ€dziSM¿/Y‚‡ ûß4M5zðîÁ!¯fö)Ýd¤ÍZœºk&«h/Žqxfçãz#VZJxlåCE374ü/MöSYÙ÷­˜¿Qòq7ÿùöDá*Ï”?þ|N‹Ù‘ªÉÔQtêÁ¥ÚƒU>d€`p±0ܹItŠûvÛ ¹øv±cwd/F lÁÀrup(M-|܆´›x[ÞÀ4ÀË æ~:9:²ß ”_;Ô^¡hÞJçrěۺø9$î;>Ó Ç/yß§þŸ6¡æ}æ—Ú•ư¦å&VÂ#·•ÿO¯61Kü?í+SËÇ/Ë“¾i¬-Nd‰ÿcÿ«ejÏñeõʼßðÿßÑmy‡º¨iI{öõu5ˆé öÿó÷Œnõ¸{°ÄYì-ut»v%“9M¸ŽUƒñäÎÏcòç¼4ºóË_f!€Ï‹ŸùæyÙ™—Cº¹ó=ñ¾‚¼V|ùªb Þ‹Wvn)ÄöÀn5Ì(Š*;lD·^•3. Pʤí¼Ñ\y­5·F‹.ÀK‰_`Èúœ,;ÖZ Zí·jš»ÎÒÆñÇ0ª~ØbŒ8,ã/îýlGKkܪÀ³ñ\:p׳un”]Q•ŽˆŸ«ç¹7:§¥ô¹÷į–àKâo”`õs‘”¬1»“âXûo 1ö=ݼA cU¾VÑa˜zLj}-¸¨hÕWBwˆ4ÀP÷/±X É„"ߟÚiLþ‚Ø~¡HÆä{¬ððÛ¿ ~ôHØéüºs:1õL!¼6,§|v€ðŒëÎ °þTŠÍ…ùõ­ÅõŸ,neõ\ 18 iEËH_™gó Ù@œÂ0À?Š]i-MŠDS–ÑB@ÜR¡!Ùœ±ð̺fËý… `Îv‘Ï §-H|áy3±²‰ÿV×<¨X›‰ !1Tð†¶CTv ¬t > š~gû/ôŸÆ®cyJYPëSA[’ÿïœdŠÒ5Ó‚¨·òÿÞGÃ}—8œR©ãOËEª²ú(Òt; s7Uƒ…Íf‰å·³|ÿ¨–r0‡ÂV*ºØe@]Dô¥ÅåCªï¦ÇQœ°æöÑ©“>:n²ÚgÔ@òÁ²MÿJbŠ=UÆûx‘ÇšC#b×[¾1AXRxpEÓ˜;}Ãcý |BYÍ:š¤T_Îj!n¡ éXñ‹ù¾Ý]XÄ_GÄ„NcךæÔÓÃïÝ_GÅ[ÿ öß"ó?Pç»'Ð@û_ÁœPþ›®ó°öK3 ÷©?ù<ܡѶ'w/ö5–Ý¢Ÿ‰>Eàž§ÄX:å ÏZ=V}ã_‹ÅûÛàZ~$rsr\tèO¾Œ…;Å}ßÔ# ñˆ@ƒX†ñ6ÜžÛ">ý ž…+¨;ù0ÃŽánýlíKbžÔ\+àþ&‰,¨‰ê «À†2µÀ Útm iŸHNÀÇ>5ÅLŽ6}ª^¥â1qçíx¶ã,ˆÖͧ-Ô‡õÍÝ5–š&S'[N÷Ï Ôï¼²ÏR5‘஫ëÅÙO!@±7“ÆÐQ®±>rn)1ZX‚­4}û_éP±oÂöª LÈr5ùÿüd.¶ flQÖ'ªœ¡}âÐã»F¦Är-M™Ü¤Šý9zS»84²kdäßaš±Á]­\Å.Qܹk$!F·VCf[àYivÿX¾T1ëÊ)Uyµ?Åc£âÈ®]Q1±cÎÜ„Ü)2ç˜÷3seÊRD*¶&à*Gàá¿PưXÇ:›e!#€ðÖ±±Ì[ä²³Hà%™0ÿòtSAü5ç=º} |&ˆþñõ¤K帘صkDêâ¸p'N¼ˆŸ´sœ§'o7W«Žˆ¦ Sr2b„òÂÒ`9Uü*É1\¸{¬$ȼ`Jö™õ¹ž7ÝíCC»ŽîŸ¸ÉI@–ÿÏŸ'ó_û“ßòñ€¢Åô÷?ÙlñȲtÞT½wÝf"û!ñçNý¢#!NÝ3ò”˜ÀBo€ q®e¶>མŸz ÎøhÂïÊê{<ÖÈ€û@áþpÏ3ëa{¨¿**•”‹â¾”Ãn—3vÚgp¢âðÑ—_‡^ž3#+ðå*À…S£ÈÆ#cia·`WưÞJ“ØÌ`Pòôy€T @ â(rƒ6É×PX)§ŽEïûÕSU¨¶!§äZP³µþò18GvíÄ%à­–gk.Rm(u8x,) ¦çâ@e‹!Ç7cÕ#[‚g››‚ÂºÏÆÁ Ÿ¹gJL< ζ”euçüî¶è[‚Ç‚¦ßÙþ?ú~ús¸“ÙlÐã@ëjÄÿCj?ž,¶Ó«šsVúÞÚÚžH$ÊP§^£¢U:䦬=ŸÙÝQží¥L,¸nS´†xîozÛŸÚyëËê/,vT†YýÇ[ï}<15r€à;àÂ~êós:–º@œË»øŠ †œBRŠ5}­€ ”òeRXQ” óûàUGŽ´U¤´yLJzYØ€Åô9‡¼€´ çÆ‚H1/`U&€™3‚Òw¨NÔǶŒŠÑö¶ jx Xÿô„OÜšâ¶zXµ~¡e>WFÿ©É²"ðRÊ1-;¼ÔXïìîâ:¶€lïØý= Ð|T®5§¥±¥ QÞ¡x,O8”26}œÛ¸êÖoÿòÿgÌ&fþ_ÕÍeÑûßì‘Ï…‚ ?ªñ (…·7¯›^LÂm/‡OÐî¦ n½}üÍw—ãnÛ Ël¯JRÐZî¾ujêø>°°Tjh&À¨ãÔŽ[wN=¾këÏa[ýàvVá»ý­ÔËÇ£Ñö÷.€¶7sV½eÜÃly€(·¯œv h\Éáx§ɇ]/™L‹²Ó)ËŒDí IE¹†l`52þÅ<™¨è'’ô9# ¤M?ÝMˆåû¤Ý”ëƒq‘z±¥Ñâ¡sdýl¥ÄÿsÈtr±k>SWò·‘ ¨««ÃÓ‹+9ÜÅ5Ÿ®óäcV>îÔË`bû†á¤½v é`Óï&ÿžþ˜ÙGæßJul‚&;\dÿ³ºm& ï_IÈX™‹4C8%]Áõ"ñ6¶Ÿ­T´™IÕä¡üîPOïxg*dj½’‹ó|YÍ÷jͯ¼âÿ¥š¯‡%cäÞš’¬ eþyò½IÇ)iܬärF¦Ü¬ žTbjRшäŒÏ¾üÈ!g2ª ä?VÒj[o·—çp,‰õì‰1´Ó‘ìJ KsàÀi++1Â%N€}?˜AüÙÁ”ä·RÒøå¹ â=Šcuãü:t ×~&ˆ6~¬JÀÊïÑ×à!mØÑ´yE˳šú2`&ÕŒœB™qÈ+ó*3Ò{*tÚ|K[ZÒÔÁFÛ‡p3$¯º{C¦4ÞƒíÀ`A2Sð–ˆþ¯g£¾ +©üK|¿›³ÖCÒ@ó³^Û=è¶4+酱çëîÒÏpü'a}Cë/¨\Û¶kÙ?Óïhÿ¿ïwæßàÿ í¿m[Óm¹ðLCù •\FÅè;¬ ƒ^›>gÒ”… ucÃ;6[î¼l@«l#¶ø$rQŒÅÀÐuЕðÚP3)“ÞÍ[®¦Ì²¢¿,èîoç9^a;d‡“2ÕÐ+}Ó,;‹!³ÀrNI‡þVÈÉðpç[`O!Ïl¶€ôêEGRY@À•pƒ  @󟊘ç ñWZ°]=øà­ ³ÝØøl}E?ÓA€³¾qÀý(2“÷a£‹süoõ¾ÊÉyD*}Ì4€æqÛL9á÷ð8ŠþÅiâË ¥y·‡óVÍÝliÞü®ý<ïn®¹˜[”5Hq|óëÿšÎ+…Æ?ž*¡`± LXkš¾ºi3vÀ\œÕ>ÀÇx³ÙÍ nÏ’fŒ@ß©ÙÂKîæ~t¡*¥RŽI’ÿu›,‡Ï2\Pz6@!%l°ÚÀ@§Þ‹m´?Di(sHV• >¤üóeYÕï*VÁ” IëÑþ+áp9NbÕ¼Õ\ÃA¥µ Àä»AU6±‹¬*õ ðA^@µ,‡ly:ùð‰6(ØgÖýÇàí{á,<êx½/O)_:Ç¡ý?/N €G/¿™ç’áÍ ÿË Pï;—ë¶"…âÒ´"°X,_só Xá÷?[·Io@´Ù2-gäi+¥¶n„ þßõrÁüS«&›PþäpÊB.QôÇ}H_ˆØùAôlüµ•39R]Ë8ÈéµNŽ·Í£ü¿Î_¡“PÇnÅ».k¡P^ U&šËp^Å,¡ #ä\C’âê$š©`ä'›1Ì’@à'Gj.5A«ª´ÀÇÈ#¯oÍj Ød9 x}8Í»òéq W•™eé¯y–84ݰMZ$U Û–Ëâ4Ψ[b–lj&%†” ;¨ÂrNÄL`7==RšÄi'8À{Aú•d8Àº±:LeLÄAha—þj€³V·»æù¼j¤¶yÓͯÿ› J¼aþÐÒ22Z÷£í¨Ýû¹uŸ¶XÀl£Ð˜/Ókq+KÈ¿£€ë (ZK«,XÜ’äaP0ÎßÔ—Ý‹=oë^A ¿ßˆ)eÝŒ'©5 Ó±vÛá‚Sìá'ÒÐa}•d%Äç ~Ú p:$‡Ù…!”ÿ,¸›ÊIŽ—2xe8cûSÔ1»C˜àʨy? dO­žÐ ïêö1ä7©iœ~‡Z@QZ ²„ªNA¬üÛ³QoÀ@³0¨"ÙMË8 €Ãy ÏZð,y@sÆñœX»ÇXÛŽTH«g©Cqœ¡Ü¥¿~ÿéÓ›Þ·"Q6¸8“õÚFE˜~'ûòŸ‹æŸp‡Pþჵª\!)‰âŸùK‚+@ó¿Àæç„žˆ)I>/vÛ9d"â|@gtÜc°‰ øåÅ<ÿñép M U2ý>©ëãöC x°Ñ¨‡ÿåøXÔÇ&)˜íD.8ŸÕº”Ö›l¹ù´l¯8S Ò¼ÇVìEGà"—cg&”2åæg8ÄkÕ´%ª ¬'€Xÿ‚6ÿœ·ü“††8ñþÀ盞µ‘øÿÖü| PSÜ2¡ 6NaäxM'H‡ö0'GKɦ8cï‹&ÛÞyb‘@-0QèþÜ`Gr3ºžöÀ€ÛsJÁ«úo¶Àø½™ÿ_ë IX©ÞæÞÚG_9ûq,mEñ§Ê¯A6) ˜'ð€ÓxwïZΡÓ Æü}ì4Ô‚ZY¸ùu]o@.݆¢£¡›…![%ž @(£ª¾ ø‚’’´ùä´DtFïOH"BhÝ·²_-;§9lŽñü’ÍI0ŒgtŒæë€.Á]U’89 Ì¿?#û2j \=à0†òSU 3µÉg 6œ ÊQh ÅëM4÷³läAs3¢Çs¨ˆ ÁRçÖráФÔQ~1b;IÚIæ-ÏIM¨«cáÀZÁÓóª¾ñŸêê6sXNP o3fåoŒ €ýášÿZC*´Cùo Ï:]M‘„i`ùó~ôÚàÃ7Ö7ä”éÍÑâ“3I%lÂ,jr°Å…تӊ„þ4^{:)ø¯4FÿçÏK˜ðSÖ2ñˆ6c`v®üzP³WgcŸò‹vðø'YR0Áº®ì¹W–Á]P}gãžùoÐ(9ê[@`æB?1±€mF±5À…}DFXâ¹pNÉjgåL#|ÔpUQ¤Œq+é”c[eGÉíïñ0 €ŽÀ`¯»ÛÖ©"'ò¦Çcï™§k‘½D\”iš ’ÄZu™Yl'ÄÁ—4.…º=îuèvúÞÿ¤ÅÒ\#Éë³§TÇÜæ›ë`þ¿cÅüg›&`pÚˆ|ÿ¦›]³›Èús †ý‚òVrÎ<ÀOÙpèhUSF HO1©>ôÿÍ:¾á°‹çOÙÆá†-ø,®ï|²JwfÔˆOŽ„äk X5ÄüTßUâ_F£á·LüQoœˆÓGPÙíQTV÷`ÿOSÀÏ9­ù02Èi8NÅÍscc ãÉÄSЇ%À’ €Ïþ¨»_Æ]¯ÜºÎ Nå6„¿Î„Àþ É ÁY£Æ\# ’ûtñvíÁçÝК·Ûbõh¼Ç"•þj€²*œáESuoU'ë¯ #Ç@ xÏø*ù7vâ4\=FݔƳ6Ÿª:šˆÇU§(@È6Q’ƒºMSªÀø\˜YSdKõ†@Í›+;Á¹–1àS`Ϧ4V¥Vûû…2 Ø’jšExAE‚YBÖª³ØÔÞQ¼h,M­-·(-õ E2¾ú w̆1J‘›g¼¨ñçIü bW #àv÷_Dº.‰áâFäón¨ßÀ ý¬4(Ñ5)TmJ¥™øËç$͘8†Å€Ú|wM¯[¨- ä”Ü,NÜÜlëïSOé7àü_i¡hþmùUøî¿¿vÝ÷gÃÖ~âþ\B­eØþ‹@Rc 9ÝãöÌkéA·Ã@m§<Öl¹«««q»¿¢3mU’f4ÿ-³àærü:2¼À¡ øÀLË)•U !É ÄÞù’z|H•@kÿZ7w.Jó˜ÊA TÍðÜlŒMÄ1/§èá Æ`c|ªÏ„.%#¸$Ðw% Є ¤ ªxóÖ°1À s_µ©3#qî^Ž"ƒcwÁ’Õ¼ƒþÓ1ä t·q¨–@“ZzáLMO/â¯ÀRæÒò èˆ1 €ÀãxºOoêé÷ôì-³Ô=ûÉ >¾ìLæø ‰ _­¶âý£Ìv' éú ï<  hé<ޏÀ„¸²^S'EnÂàbŸn §®wÍ+Ó,`ñžnc‡@þ/š d‘ž#_5‚¿Œƒ=A“´šQ¯‚"†=̲(€iÕ¶<€3|b-F°ˆN€™Àq÷³Õ2N„³;éü>")ã?Å{^mÀy;¼*5Å`«Œò¾*ªÚ±nÓr&ŸÓÂXµÉË^*pð‚õWÂË`<äÇçHü»q%í¼¢\n6@› þ?« ŠÂy¬.º‹(ÿ=‹”À÷1ÑqHÔæªi-ýBÏtJóº±iÊjÍiƒ4qgó4@ÓT2V{3À^„û…࿹ÉzŠ÷ôÒd›²²h° òZ.nKMPNŽ>„ @=§á\«ýÇP x,÷Ïž—À¶½Ê®þ:ö¾k€e~vÍ¿KßFžfD7Gpà›‡> }Ô<Ò÷Ò¹ ÝàMQe¹tçÌAŒšl6Šgõw$ý‹<¿¡MÔr§4ÜGfåó Hâ GÜjbSWÏ ¾b_@5Æ i;Qüü¯MÀiòÊ‹àŽ8&h¦j[š=BíYsUKYú[9p p^hó@n…ò….Gy"©ÇÒüé1 ßtWåÙÓu÷À#Ú-|sœŸOÉÛ qbÄXO¤¿ì<Ód‹Ab«…¥a☠IFªªòî÷-ÂÛ…Ì) s{=¼ ¶Pòë­JšE‚‹öŸCFsàLÐügõJð¯íõŠr̬R¬Š £r|oeÑÕˆt“q^ Eh¢ åj|Fµ7@ÿ’†6h(ÿÅKË Ð…u­ḐÈ'h€¤Ý0¹mT0ëP«Ø´€€+õô¹0m‚›‹NŽBöŸö‡ªþÊV ’[ñ@|å‹Äœ€üÛÌÂ[êË<=­²!ÿ¼tN6¬rf¹>I¯…“ê4ÄÏøÞuà€ã×O£×Ê6cÆVE©¿™íÿ˜{ þÛÖ;d…+LéhvS¬ºÚø%&ýBõX §lésätšâ‡=œó' ÜÕ¤*|sóÇ ¥ÙÜë)38^fþñðXcð3Rg«œ©¤ùƒr§?É:˜vNSC& ½•:,¬ŒáÀFòÏ@`Râ¹½^…eš4|3.bä 'È3À š,û2Ä vÉœà¦ÅËj+e¢°bâ_´þºÙÖd"çYê4åíÙ½î2|[sóáWË¡' ¬ÛlãQ/ôb%Õ9ð ™õ§dša rȉ8DÁ?Ûd¹ÿ®?«{¶G ŽútM£œ¿.Ê?W4ÿ¬ÖgôQò;ƒÜ4J®u&VÏX[45s>…:áTµ­c¸{…Á´¼íü¼Ãv¤f(3¾©ŸS&"¼o TÒFCæÍúûÕjͲS@>˜8H*³ºë"¯¥¦s@' ¯².€&yÑŽN Â5L€úÅ$swL0À.ÐÎi…rT h$9Í4ÃyÁ¶"h,”ÛQ´–™å0ës3eÆL’Û‰K)hŠàùw™<È ·Qá¯\ecY" åÿ|†B¬Ö \I“m=|ès8]IÃãîg÷Zûiz–h¶˜y˜¸‰i@´ÿ˜¥Û´qÎÎ.OÒß+ ‚ëÅÞ²þƒEä?ßR8éÏ÷ƒPfô×{Ý5s8ï€Ë¤ ãÿÇ öß#Äô瀀æÌ?ŽY‰Ûô³ˆhRTÎáÒY  ’ÎîqË*Ò)9¿ª ï̇Ð8Óàç18póÓç$>†·¦8 dÂé.öp_¡¾Sõ…Td¦ºÂœàËj+ æ_Y±þûCh"Ï'i6²ä„é÷bþÿãDœ{¸pÀÉpðQ/ ǹt^UXùMÎMÓëÓµQà(ke³þÊþ ÉÝBr‚þU3§n@ùÇ\ÎIÃöWTT¤ÓƒÎð½è[FSÕŽLh,{†Zu˜ª'¨ƒ÷zzö§26=ŒÙ0Úê1œ$Š“@ÿÿ"Ž|#àÇ&—*ÏJ&ÿ  ÛBT“eÖÀá=pš°î`ƒ@ëw[€–6rˆ}Óžk„7%›üHR°Ë˜òý­ð7€eN¼G†~_FU0P¬d²œ6q8@SUØV`$Û"§„%¨ÌØ0Žÿ¿Ñ µ0 `þw÷ŽDÅt­õd=5ÁS¸[àßJcó‹‡7ÃQü»ÊêÆÒRFéºÎFQñ ü»ßl„Éñläð¬€Rªèwoºyöi^íû»“~g¼`ÖŠHî)òOQ¿A°²¬ÂA£¡ñÄšú6Y&"´Ö=ðüÜâÞÚ³Ó°‡I€ý{^1€çÁ@-ØFøÏ0EÐ)§(€ŒÄ¯ê´\€–ILÚ/¢"ÈØôÒ ñ‚†ÞdGðo ÛçÞâ¸/ÂisÙȸ¶Êp.Æ\T èc ^8G ¨Ìþò’^°¦ÔªšÀJF=¯Cs6CøAòö¹˜‘ |Ôãù":B&þÔºZu:€]òo6{Ø(pK¿)?ÆÀ¿,Q"5yLôzêꀮÿ¤† np̯œû—Ý×6(æZÀ ?|â‰×~|ÖðøÈöW,u´··ï#‚ÿc®**ûÉ%Yý¿Ê{ò63ë fÔ {…šåêsîçøñjª#H›A'ÛkºÉþse 'ÎÒ€Ñ8phþ öŸi€yÔóµËž’hŠؼ‰ÐžÁ¹F)ÙWéS÷¨=nPÑ:ÚËËýÃ7æGƒÎ¹ó¤´Žòò]Ÿ¸±œÀ·½öÄßx]YßS;cJÒü÷»ËË»ÚÐkõ,ñ(þÍŒÀ„'éGÉGë· äšÀZ/#´ß¼œSÂæyÀë%€5æWøøÞ¿Bö¿w¼F(cjø€‹É¿•Ðó¨(û< Ž`aŒ7h»Òbï„eÃÊê'À’0A”Ìga G®¤/|©—1E˜jg^¹žµè¶E9ò© |AêøÚO¬ZfŒöé?†¥ùáwÈ)£n­!Ë,?‘‡|yC,pÛ_Šrüo¥‚g¥HøXÉ»ŸÅy矴­«eàO<Á|{ÉÖ ¹DËrþkÿÙÖÀµÕü&=Ä»·îk/ÿËÿ~Àg†ÄhtT<Þö=,k=Ù7 $Ǩ8À“Ÿ5*õ™í‡7 –ßn¸>ΜRÅÈÁü,»É¡¡í^À”½)£FôZ@hÿO(€GàÀ“ùGûßRÔàŠÁ…R±­§›‡ÀžHª¢ÍÏ ˆ™’¦”Åù‰ ÚÄjAÆR†ŽzÆŽ^#\‘’ÚEøLCbùà Åù±2?€ø¢½Ð ˆŠÛK2ª©öõ]¢8Åã/Ì­—mÀú.ŸÌq#ÉÍÇëÒ}Æ©¹‚øÚ”-‡Õlãã?¨ŸgŒæKqãÄÿ…[ÅÑáaqè/9gö\ô2äï9 ûíÌr[,†ø³i¦ ‚ñóû§•œ-2žØ¦ºÍXõÎ nv®¿¹YÈMðü6€@û¿n¯ Üjâðë.¯aþKä˜ög•¤Ã˜á“A÷pÁ¼ 2îç”S™B&ÀGé#”òôt_µC…cxlƒ¦îƒåNˆÑÿ ÈV£3bu€ TCØMl·v~{•ðÖ‹Ç¥¹J‘$xœØ/gL3ö’¨PŒãÛØJbG×á»ÆÉ{â‰!Êî¿û&¬ Ýi¤7ÜŸG•ŒÃwÊÉ¡°°…'šé*æXpšxyBÞ2û¹ßƒxB|éÞµk×¾,&À·‹‡Ã-„D~±OŒÞqï½÷æ'r“ˆÒ©.ÁÙ€ÒȨö =.Dæjæ"Ï…ŽÑð_ìЯõ”e)ÿW¯,˜Xg½pÊ—V*Eûoh€cæ à8œífšóaGšá)³ È'@kZ ŒGÀ röã@ÐùˆùBYýlÓEû?,îÂnì#´B'ñá’*T6~P-‘—ê"·Š#‡ˆ=d罬\OcqÿañèX‚í8Ô€Š{)ûp€4Àß–‹[pɶ%Ú¼»`3Cvw‰Ñ÷Þ»V²ëI«1Fl¿%x˜'ö,cŠ$µÝÄ©C¸ð#âÝ‚vä - ü›w‹Ã/îY»vÇð£øÎÎÑ_=ôÐCÿzŸXŽbOÔ¿è÷w$FwìYû³ÛÅòæÃ͆ø¤Ÿl_%Õöôº{)†£ÁÌ­—ÜüÃ5–fŽ<Â÷[^݈ò¯{¬g`ðŸÌ?áÿ•³PÀè’ŸÊ$Sg³ž×ƒjJ ÃjNæ° Öÿk¨£Íùy Ûü¼]Ù»xhtêÇ |W•—qÜ”¹€ô>0(‹´ëëŸGFv«TÑ6mMŒ~ꡇþ‡ûÄvÄÿJ2†2²ûÍ—:Ó}ù¹‡~î(¬ØÀ‰?AÁ^qôEäò| V¸‡ÀUÑ,#«’³)‚i¶4Ë,„ ,t™Éçö‰å8#ܰ“‚–ºrñ«oÿ桃¿}ü…¬~(n'Ê”Ÿí‚·ÉŒ¼úà—ă‚jDÄ.-Bþi´ü6g6$•KÌPÍ>*O çȦ2ž[1ÅMÜÀµžÚcXÿ‡ ¬xhèøWæVÉ?i€Àäâ$V Êjhž·æi2^#xø‘8:=¦4˜‹8ÿF§êÈg2M©3Ëž¢Ø« â…"5Ç!ìÍÑ"cl5€7œ+ ½ZîtMÐÔ#ÆÃQ>k®5œT~ÞE<|÷Þ»g¬?úþØNXÉ ®pû†x‰ûáá£QVõ‡3nø6qäÞ=ÆJ¶‘õ× Û_Ú¾^Ù„gPΤÞKD‡ïw<àR:7¹ƒ^qËÏÙâgk·ˆ7ŠôøèÀxè‘_‰íoâØpü1ž™ˆ9ï&ð?ØF%RÆa úmæ•옄ŠU;"³¯áZ·gü°¥⳺ë0²`ƒü»zn²4_„ÕÏìÿó¥)=Œf ÉÆèo«‰¥é§UG="N3¸z>ÀžO'&C¬ÿq&ˆñ|‰T޲õ\Ýù æ4e¢Zv€‹f5€ƒ08Üa c{[»¥”zõìÎá·qiyäeâpOghÁ´¯Úî¼òJ®}9;¾,Þí!ñ§ñJb˜qšÃý]þ¹ÜI!ýÔç7±¾ =kå£/ÄÇ¿ òsD óØ#p·ø+¶OÏÿ¨ à•LJ ʤý;Ä}*šx‡éïìæ'† $Ô;÷ µBsøœ÷C¥}G„0€•Ú§À ÆFUF™©EôS†ÀJU¶Çó·³Z þ/j€âr‰€I”x¾Á„úvq"‡EµÎÇùYàÖ›¦±€å}Œ¥(¬´ø0ˆÝ†€G7›5û)Z®h³e¹œK.±³ððí8w$˜±ÍzµÜ¿ í2tàžíâ_‡§åN<¨&Ùwå•üõãÑÂÉû*(KbÊW–µÈ<׌–ïæ´‰úØeÏ ÑdƒÉ!_Ø'Þ±Bý¥÷5;ÏÁMÛ]>Tà¶\;zƒA~,~ꑇÂ×CÜ'özz)ú¶èeqGáŒlI4S,PIKXÏo[ÍŸjßUS¼s¤j¨õS $©’ð§õéàPý/ŽG}ýùÃŽz‹órû¿Ê ªUÉÍ„°c/bÏà/xÒàWÿ1g5•7hÿÃDù‹5cUZEtga9wˆßÐXŒ©Šý?ÀtRA<œæ^Tl]kÐ=íŸXy/Ÿÿ—…nË(F:eä¶±_}% ÄÝa%)Ž;mª® wˆŒÊƒœ¨¿¬ÈÈìMë*µ=V¸ÌäÁ£‰µ!*ÑÁ"ÞWاO‰ßþˆ à¶’ë(œOn¢ìÕGo¹åï§Ú‹4ô#£K §|Õß,*zój 6 €Á©öÃZÁDPN¼Xþè8$çÖaY‘Q¿u™ýg@¢mAýŽ=í˜ÀÍ8ÁTs}û!º|äÅgÝ¢2_÷ê£Ç‡‹ÌÚ4 %9=™/Ôó—Þ²$<¢`Ü?m¤ëÎ! ÆÀø—§Ìè°yBãž8ΫüÿË0€ # ¶~LÔ;t{FR6¸ÈuOå«mÖ¤fì¬~í¶IÂ'´­âö.E[ž*(R:lÃ1“§ Û7¹¾|Z•G $Âû·ìÑ# &©Òâÿ-W¨²Œ¤³Ÿ_•ÏOóüAìšñë®1ާj0ñysõ4ÕѤ¿¡ú¿<%ÃELö •Ì('ƃ ›Æ’ñ«o»Kø¼×Œ$„â­ËAh¾‡Ë/}Ú¥·';P_°»wWbåuVN ‰­ÊošbôÁV¨ÿàörânÆßâËÅq$/ß Zp:僆îíèÝx è,œN¼TdÖ~qôÐúKí~‰'£öÕU›(yUÙ»†Ã–ûÏ ¸4çgÜ–æu¬tj]C³EHjÌv\nÿWap‹  08ŒÄ€ÓÄIŠíäs£ÒhsHb¬%ùÇF8màä7*[™§õ<’X}¸ËÎøk%Ë,ö~ 2ñ+q- êÆçF÷]`ƒAe¤$õ²?ª|¡|¸ÀÚùðsQïÛåŸ'^Z¹tßϼfMùyÉe޶ï6Þùî.Í?nÔÁG>2-ø·Å ˜‡)€?'Zöoî/Þ¶^rÞÌ8tUÀP„‚r+¨_ÄÈœn¶ö³^›¦$9A(3± Íí?s%Ìê9S=ÆsI =‚YŽóŽ!+0ñüÉ>4}:“FùK@ý徆þåó\q.yœýƒ?°°>‡?u0 Ñg¡U¶ô ƒÛ%N¸ïå_xÊUn+€aÏH´øHž­$]g{bkîÊ7Mar ‰—Š hèî7› ·"éÚµ7LlS‡ü7ù×hù§ï<ÍCb×dá¥_ü ªj°Î žÉá`CM^,;l(Hl¬i¶lb¶Bh,‡×µ2çäÿâóW¸b€à˜Áî „éÕ;Ö¨ÜM€Ê¬Ÿªæ˜üg;`"È+_)Ù•]£|ñ(°ÖeÔì,'¢D¬}YúûüìApðOÉ ø£¿”3ðE]ñë—ëÀ/ » àŸ ÷¯p•³ ±?¹Ÿ¿]r™'3 €¶ ÿúè à¶•ƒõ³(Nµ½Ø½îï`× p¶„gK!(ÞU.@cÁ@p6„±Z ,‘ÄÆøAV ˆµ‚PëgÀUì? ¾JAæÐâd ótX§Eu "ÁSµǹÂz&ÿfŠÍc $?øôŠDJ|-æ:^â¹½3’>c;OXR^_¾eùõ3U’T_VÑ!~¡¨/†¾VK¢8ûxtÿŠ·N¿”é úûžwìaÖ³Î`U&Ì…\®ì)ÈI”ôâ<à*R./Õ¹lë”|fŠÿ%¯Òi¤d¾™é÷n¢BF‚QWœŸ' 0ƒf%ÎaN(ÉäÐ'   =Jú×ìÛº—r|·n¢‚*ô—6O§ÑðF£Œˆc†;4V àŠ\LDwÏñ16‡€Q~Xp{i V’àš=wˆWuØìrÊU³Kõo`(­|¢ Ý×Ëf_ï-Àð¡üÕ#„À° )iM“dGçz¿ùE³ø³áÑŠ´êˆ\Q ]ˆ!·K¶¨Ò9onp÷ö ¸ù¥¬Äf å~°7I–ãÊøµX/¥ª'°ê‡Ëv.Gõp·ÚÙ äqÒ·!ÿzöˆØæÓ¸xùhAŸ»j6¤ÎYjÀÊBÐSëSóÖŠ9cõ$æàµŠö¡÷˼2{;6~@|—ucôñk(§Z n™úui,qÇÁÂL¯WR’#ËXKK.óÒÐw Vß+;·°Àoù•øã¨à=ÝJoÿ‹£W!ã æ©Óç¿4ºó^<ˆ{îÚJ…óÉp•Q÷Ü©–º`Ùsó3P‰íüe<*ÎOÀÿj)£J@{‘ì÷Ô²`ÍÕí?ŽúðÕjÿÀ‘Ü €«oD `Î)éIP ªÏ‘6äœDÇFÖã£ÝżÞvÌßñc òÏÙœ$ªRr³Th® ÁËi8ËÙHE‘(Å? /Ò%ÝcöNV:©ú®:=øëâ.öð‰ã%ÝÅ/L±¼¬¤øý«=„'Ï☯<>zK>Ž6÷,¦8¿35¼ÖHÞ°Ñ€·Rté æºžöS¢/GhxèEöÒG)Fµ þË¡ v¶Ÿ+Ämq¦Õí®]ãöîÞMX”ÍÇÁ @€«Û£Ìë²>9™×¼çUäúYVZfÀï·ë˜0$Lù2˜O¤àDDòéÙcüØzÌž Œ|öž;FXY­dN)IsLSNá¸èI8©Ö‰¤†¡4 [æý{ ”ûÙ–b%¢Ï±4à}â·¯i%)ÜÿöÛ/‹ß(¹ûýã£, pðèÕ ½q†¥‘zá2¬¡q3ÖàüP|ùÄj<'Þzö£*ý3âðÐwÛÅDï6ݼtÏ¥;Ä(F¯¶O‰_ï a*ÅðVgZ•clN0!œÕkŽóKàp 9óÿµž2T䊷LÞ º­«úÿ¬,Ædô˜CRçã)lð}§5@+X‚¨n¼hëY£ÌDÁ1*´áË©²çЈX.ô`ëß|}œ×›$XúÕýpÿñ »I5Ùd cgá2k~xíKÅYMÈ­¿&¾ô=òöW‡ÿPgðJ¿±SÅ-mƒ¬Ÿeï¨vwDÅ¡Ñ!1ÑöÏfC"XÿC¸Ê¶* `›WªfY)°Ð³± ‹nO‚¡üG­Ç:Oo¬ñÄÁ ›/­ÿ»L|ºÛógäÏu£+™Ù…@XYÔ´F°i—qDQy^ØèÕÁèN{B‚ïö6AèÞ{‘G‡„·“šq‚pù±Ñ_Ë5ÖWaëÊ ð½}SðYÅÑò­­ËñO#xé¥ûÛ¥TÆÏÂ\™«qÄÙ[”…§‡†Ä¡[/)ÐüJTGEñøW”«jœUc̦|áÖ!~´(çyLkÍ·Âeàûñë7ìöÊðºð÷i,–ç¬BâR¥bë‘ÞR8BجKM?ªìX…àíÇ”Ür=W(Σ‡ÿIªêu ž^wOv〥®(µ‡-5I÷¬ÿOÿ0 € /sJ›7axfÿ|ÎÖ_¶ç±4@ÃikŠfö˲ýÝ šÇ*ðƒ8–œïaÐÔà两ٹ $'Sàl’h ÌÌ`;Π0Øq\Šâ¹G”cÅúî;ïüVVJ½Æ2̳l%§.UŸ»•ÝÿA—A!ïd–æìS«/c¢9úv¬W†“öáÁ kiúî'öµ?ýâ…ô`×ÂupÀ“|GW{×cÜn­ÓTí²‡qnGì%§$“Z‰˜á’NÐü3„–ªì?ç/Â.%1m±¤úu«‡WrM³ B}õ´ÿ:Ëâ (Æ'p £J…@.P%4ÓG%~.£wÓ®fœ¶y ð.!—yÜ:ØûôÑö§ÿ¿ì¨P6™£ôɱwh›f´\ržM¼Èâ9êÐkæÛ»Ê»Ú¸Ý.ÿy¤yLƒÖ˜¨ØÚÑÞþô—Î=èPI¬”Ž]ÖI™D‘ùî'ºÚŸ¾4DŸõÎïøÆßø1¥K®¦²à€ e6õÇO—w=&}³X&„²I­¨xl_û×n ø³Æ°×>óõ/]G9ÇÊ\œU¨+Úöµïëxï‚ 6Qc˜¢-†2ê¢*Æaq«ªxu»¢ÄÈðK k_x°[ „yÛO[xÅû€Ð_ci¾˜ Ðÿ÷a Œ¡2Rú§°üƒ Ž=#9ò2ÆE\pyVßéÐ÷²6EP<žšÁþ§»ÊŸþñƒ p'·Äcy³` HT €6 ­F•ž +(ÿwÎþí»wwO¶ô=ZËÆµxî¼óXþ£¥«¼kß¼ýzVòW¨Õ¿ ïÿî=ÓåP›"Æ+ý…íÛW.ãœ&Åà¿ }ýµ×~x-É kjvþò\Ÿ_NIE ‹>û÷ä“ÜîÝ Ty錘’T¢!û˜+Ĩø]6'À)|óIžÇ!i¦-4)8Û#ð­Ë ŠÖìâyŒÿ-À»‰° mÒs^ÐÐÜ<ÀPäî Àkº©)AÆjî7‚*k_/O—ÅQþiÖw²ÖŸóVTco0È7'Wÿbp\ñéõ39Å;Û¨¨Ñ÷¤ƒþÿúæ“ N $ë/ËØ3>»A«øâî'Mçí6TlèT_ÿ'¹e¦ÿ†¿¬ÎÄÞ¿ò£÷*ADðGýjÞÆ¿{÷[©È 8€—vàÔ”/¬×oÂ-Hu7¹Xñ,„±/:ýsdz–dy2FVHo8hʨR!&–×ïʼn!ø(€Î´â}“…¸0977—ÿÛ‡ã‚ÐŒŒ×•×$ÿ…¾xã}T¨EpFˆCMQfä8ì4±¾P“z )ôˆ“¹{<ãæÁÁ˜î—ñ|#¹Õ8+¬é ,ÓLY¯!ÿ)¹Zÿ§ÿë“p,zè*JR¸óÎÏÞõ?ê<»ÿvƒ¹ ëï“LÕʼn7—úçÒ®$Œ.ô]ëµ®M8Tû\H=Wªˆ,#žwN‘2Ø]I„ Jc}lfÁðœ,-O‘ù €Að }.ªÓ«qŒCORxO­YoÄ€&û>Ìþ”,ö¸Z‰W„˜—9^Ã)‚&ª’qRÚI<ØêSXó­&!0ض¼hâAâpW]úÙÙ8<¤‡¦Õc%K ýÛ¤ä¿; hMp×zišŠ¨9#"x<⼪ßÑíÓrÆ_)_ň“…1UqâÒÓëUVØFf毆ìrª©˜^­BÒ“Â(•<žX¬´Ï§o†è£AJn…|1æ'«‚ ³0Ñ`¯öá\ÄÕjh–:#œ÷,(7ØëÈëÍ?9ïq÷¾éîås\³eü=È'°VýÃüÿÕ^ÍsD^@šŠ´Áv¬:•3èœÎàôW_VŸ;E% óê:¡ß¶Q@™‰z™Ó4`~99ƒ/7>9F¶)þüÎMVV '¯u3Øÿ[þßÓn\¨‰(cÙ¿þ•²Ã/&iäK…ÝÄÚTÙÿ{U°t8p7%—h€,"qsø´Êz–‘íû˜Uð”a^QÒ„æÚÆ%ø¤8¿ØTçãÏSÃ,dzA’€¦WQ¼Ë-¬2@ìrPµê·+k€lH š ƒ©NðÜ¢A~ƒÐÚæ ‹Øó&é¦(léD ÐRúY(&Z!y*ìs`…Ù³}Õ8Xr„äH˜ê7b˜ØdñÀfð³°³ÈãöhKnËDZ -ižå?Ìÿ_­|HăԽM :A/ï8R€°'À5Îú”‘ÿ^s @GoŸY8Λ›Âb l?«¡¥¾†ä?%‡\~çæ8EËßuäÿïëêÝÏÔ˜Î;]D€“.¬ € ¶¡S¶xþ= ÑŸF>€zâ“««´±ÿ˜(öh!SËtÊðö9¾aróÀ>ÆLæø“>$gCœbÅ^«À <ôø>¶!m@¹mÑPXÑ•à/")‡íÀæúR ÈãfÌ8*\ƒä¶4÷kÚ¿ ä[G•p,ÎKÌí³O³*´+Èÿ‹pùrï£ñýR}p5 T'ƒ‹ŽˆŸ’x°Bx» EÓ›IÜÐÇ€õŠ`œ¿0-|²124…Øx ï¬Ó鬞¤Ø\Žî¢@Ò^ÀsÕ¸{9Þ þ8¾@-N©ºVû_Ô¶ +ã[S6Ìtª|é”´DE&ðß߃–ç§e ã\Ó:O¿+„b B ×oEì¿Ô3€*`OzxÃÇ=†ü§äª?¿³™œðíwýÿ{ýÓ§-|Ù^O|ãûˆ7\›Šá¦õ%q§&rýªäÿ=+DHušYÁÕŒ Ž¥#ë¨S8Yå¯6MÓ¼úVS“m¹¢A”Ä¡»'…þP*ôÏ¥3µ<_ÖI¶[ b@#Õ7ó¡öŸêVJ ”Æêót©€>'s:ƒÙ>Yáãš_È]ÂÑ̳V´ÿïÆ=ñ¬~–kV†ÏÄçZññØ,‹ ùóÏ ’—CcmOõ»½9„&ç 2L6´wU1ž/5šfǯÿÏlüå^¿ê’;æ“WÒvUÎgŒ À dÆ—ÆŒŽæ”Ò™½Y€ P$WgN“Hìs?œ… ¸ñ÷Ù‘ÇI›ŸÆ˜`=7aЪ´nß[’(/¡Íå ÀÜC€ð‡Çÿ/Óy„”Ü21úRÈ,ÙŠ„«Þ,³þÜE´ç­'@À—:—k„x‰máˆ4F2ðÉFÐb-[ñÕ>ZåEfê2¼ÿÉ®çôÍ=ÈíÌi3?Bü¯{U¨ÉÖÝɾUKŽâ¤ò¥ÀÜõ€ë@XWéµÎ3†[S»«³ÒtW=ÂÊ&zã7N4l©×7ÖâL:[ ø§ïüäìEù²ÿ.ÂÁêyÇ>¯Än‚02M«öK#£¹žÀu!½RÍ€ š&~Kç4;‹}ÉŒçdGŸy/ÆÁ8 ž7MKK²cAI†½T/¢¤d¼Ïñ¼”|²-+lFNêèžA O_‹ü¯ÄXû€âÍÐðžip'Lv¹ÈÈš;%QÞÿX„´«,ìÓ³5 ¨Ap&æëý8Ñå8Vë]?ÉsËú (y¹ØF«Glj!¹–$q0ÆN`€ð?<|WQMâ‹_ºööÜŠý¿Xø@ \ ùŒ À oÈ4P>ñ £iˆþ|7 €ey1y‰pµ€è4;«ÂI…Cà4/hNØeäìe(R$ ZrØÀÇÿÿ¨%çaqnËÇÇ=ÆâTÿw  y œC.ú Ž#úLÀJ!Ìæýݺ}ä °ÿ<­óɉÈ6A8QÅF±j­±Oÿ6RïZRkCÐËÆ¸G¨E~*©¯YäîÜMöŸ_†óݲ,ÇqãóªÏ¨(Eä\Wàºvù™ª¥Lù-áµØ4¨Nµz/rû`ô±P'8¯ä],_†±éó¡P2͆ƒJ8,3ÿŽü‰„0 {3†ÕÔTåZäߨ oTÂÄöE‰¤ wÈ©TšÊtˆ¢}vS„QÑ“–€wIøLc Ö,(‹ðø*s­ÇS–EP¥I²6hPA¸H ÔÌ&0`JÒóÏÞrµê¨v\ŠVÙÿËÀ¥€Ò ê>ƒ) €ðF úŒ§e_V÷-Fn’è“Õ|Pu€œçVe¾#…Ú Ì Âúj[Œ"Àr4¸¢1̈4J2sr+ôëæmÉ`Œ|ñÊjªÏLWÀ>,íf‚©1ÎÝ”,Ï Ê5ʱ€(„œ” Hãožÿíƒó Ìù©¶[Òðþ¥œ”®@è7ïàÞxmNõB•2•Øt¶¼€ñ8rþ[ý… yôùŒYŸð¶üÿ" ½µà^!4ˆ³ñ"¹—™ú8o*×ytŠlÓ¥àûÈ–Ö|¨b½E¥ÎbCP·Ñ´*MY¤õ¿i1ôýÔ<ü1Ͷ¬Æ8§Yž.T39+©_G· ¹WÄ_ãuä4 €^®¹ÙC’ˆÕ;Õºy£Í–^¿‹ý/xšV‘V—ZêÏ¿Eõ?s $þ€Ñݰyï¥aWÁþDZ¤Üý0nSfCâ59T‰‹ú:xÝ9Œf.i µèœ¸k˜™†vú[›t}äÿ´°GçþÓ‡ãü\ª1Ör7ÅX„uô¯Fäø/\ôûDðjŸM–LÈq]fiY¶¿oåãŽÅRß(ô ÂLÌ8çì¾Ôcå¢(F»È,ƒb¶WæDáþDÿ!õWˆdiÜÁN¥­=!ŠSGßSq‚ÌIJçaû&×¶k´Û1°-ºÒYƒ0DÑZ#c, W;ßÁ"Èü“t™íïa¡#íéÊLïƒ79tëmۈ˰Œ±Žäv¯?Ã\€&‰ª€l%íÿêݸÌ(óW™Þ0£q—ÕÚ‹ÃïNð]s`NDˆ™I*ÉIª¿y1ººü²´>¶ZÉ9[” «†ç/ÀXã›Íšçü¡ [ÛqÏË›ßìEùT°Y®p—Ãê‹åÏz®+þ©H/uÂnµ?X |†ªþ°õ$M'm4z@ý¿¯k…ÍÛß#ð¤Ê‚\·e5Ä$Áöc?ßAvئþ²ZTžž%žÛ­tàY8þ‰»î¼ó¿yP$µ–g7!ЀޛP T-Ëq^¼‹9€ì¤áÜ€Õ(&œÐ™ët¬H˜å¹ðÊ Vâ¤~âÕÉž±9ÚÅèÑíGGÄ(Ï/aǽQ+<»…îŠåÚ†k“ÿ•:€åœÂÚŽ#û`÷oß"&:~î-CñÏ!×DE—˜9rdDmã¶½ï|a+fü±ÖÏHvâa `¡¢­g°K¢‡' òEˆÓHmwîúÂHBìâøcÇÀÿàÅÄМ­˜(̰O 0Öÿ_"ß«€Ù˵^­]ó À܉­ns l¤„‡þòå”0« ¹y1‚AdËõÃ6”j€ˆ’ó]‡6ÆÆPyÆÄŒýü>1úÕ_½øÒxàM8 Rh’¢úÿ.ŽÞ÷©Oýq–Ùúüïø®ÌŠŽ„øÒË;î÷UŒƒ?ßcMb‘p[¹85²ëž)¤4Õ‰Q~ŽƒK7S% Pu“-ðfªú…r1zäÈ8˜‚`ÅÆ9.óÔ=÷Ü“Ëשׂµzz&´æÓ÷w£ÀbzLSnŽÀxlW–]g àº.ÆVäsZA€];cå0€' óï+évìß³çÞCCQ†«±w¸Ò¬ß*n߃·íâðµêüb@C‘Âÿ¤Ö†ÛŽ(H:¼d·‚t FîX³f͇†[›fÀ{S¡‡1­žõ˜ss÷hÐcÄr|øšCQ±\‰d½ 븭£C_xæ™gn¿}DìªÈÍÆù“®Aâ!;Îxp•¤`X=Û„ËðÿeàJ)€Òÿ»åÅ\:6º…2²ê (ÉvÿMŒGâ4w.fœ Jê&/¡ ž •ÐΧ;Ä—>·‡‡Å¶ ìPå󑦹ï ÿæcpû_÷‰Û]¿ó»Êî®=øöÁƒ¿$vaÑoϱV9¥a ø®/ãmD,Ÿ·SWðXgè…\¤pº°9]¤`•W)܇a»Eì_³î Å@/Üó'x»GLcëú…7zêê~4F¤– œõÎߌZ I X˜K8ã¶ë«¸~ÀêNà,9f ó.›$Øì½<ßÀè×õBgŽ+ëÆÀKEqg‘Øeò… jsïŽOÖj–œk«ðª®Îî.ÒóFAüϰðš¶äÿƒÊcËÏAÁçâ‚ðƒ¢û À/§ð ÌRLo4Z¤þ*ñ'êÑ$Ç•£üß~ûíÏܾ3±Uk(ãã rU1‰°€ªWæØÉ (Öÿ_\9°¢.« ´c™{¥‘Àæ¬KqÌ´( &6ÿê&Æ(Ü (–+uu"JK>sÉÍjìÓ©S¦m)ñ’AZû¯ÑáˆÏÁ4åÐHôO?Æn/M}îw[·Ž®}Û Û{yÆ¥Š$0$ÿŸÿò—w‰ ,ã߯ØR>™dœªè@ù§£ó±Kä3™ÇÝEòÿGðux`÷¶ZOüŸêšQ#*‹½7> 9ç"0©û¯\/Àsn‡]WCʼn·}¨ÞЄûŠ.€a¢úÆÙî872Zà^Ý3²óÝl¯6Mc³ey´HÉ=~Í–ÇhìÖ öóŒq{ é‘6Š@Uy5¥õkEþï5»Ä­)9²÷Ä«¼ßH O<[p„ááw¬<|»¸_d.HkIÜ…âO @ëó)¬ŸU”S°ÝÅ€©Dõb û ¸J àê^@6”’qð1Cfµ:¬$m!¶ô73€’âpéDð`¥/À™›ƒ5]E ‰¥Š^Ö; ° És²#/èN»IN¥äsBáþüæ# 7zaè«Lþ'ß~NìC“kDÚ×±;Aúñöå/'†‰¶H £”IdFèb”C`d´È½3nl.âŠä4K<…âO·§¢|÷^Á]W',ñÖlàp‘›P är¨LÞ €:¯\/`Qp@àÅllâm¶ÇjÍòü÷ƒsŠ´àJ€ªÜ&+»VH„Å;6oÚ4^Ûà ©e}#Œ\ÃwHÑ¿­JÎDw­?:Zäv¿c´‹oÚ„A|!>²³Hèhh_…rl¼_°–±Û-ÊüÓ¢ŒÁßݘòY¡ ?4Ô¥++›WÐ|ÁP·ß¾s¸"g+㔤+À‚ßà<_tÀJ4€¬j-WÐÅ¥À|µÀÕ5@PJ©X @€‚ª„¯ÁoLR¹™1ªRUp“î/UwHýí£.ÌâGÈÇ dÌ¡·Ê‡ÿô!F¡ûÈs£_‹Dêé…dúûÄÿõ±Âmøwg5ü„¸¶H•½Üýß¾I“ÿ ?~}ùñÄ –Bm÷8û¢áXá—ZšÜ<µ«ptÖIxÀ?8žsüÑ=£móÎZKÝŸ]¤¸p!pÓò &K@çõ€ëF8 µ¯R¦´((‡À’(P gÀð”Ô¹¢€XþÏ7›Ýì˽”‹¤ø)Uúð/•JÿbõÞ#¿µegñê÷&plÜàâo&FV@¢k7Õqðü }6äW(ŸZóÌʼ€ÝvøbAüo¦|gR™±aÑ8ÐP¹š h<´z]ÿ@ð€+k; ô4Ћdú8# ÇÜܲë‡oÚF^@l% Æ\Qi@¥N`ì¹}pdø‘ßüS$Ñè7Ñö ÊÈ‚žÝ7dظÝwü#(€¢ü¿½jÅŸ|™ h€]b/kæõx@¤ñ›~$‚ÿøÿË`¼ƒFB~«n§Ÿ­;]÷,(€?2 À=b_õ£ºº»ÀÿÕWf§oFgð:W@Póõ€ëF¨Ì'}‹! óØz°Bª‰">{y>æW)] gÀVL8HÈб}èÀ`í¦ÚÚÚ5ð]¢ŽŽ¾aº¦[HžÆZ´÷ì-2ôß1úJØÂÅ…Áò¨AçÇ·uUPÛ_÷±qø:6þ@N?f]šCë??înOùÿŸ:²S–Zº»»¿X‚žÙyk„k +ʼ—}¶bÐ·Š h¹çÒ0È~(¸\¶¢ŽC†ìçáE"9¥>ë02075 ¥RÁ-Ò¸ùKê"JΖO•£j9­x;³úw·²):ˆÝ´ôD89T@ ¶|ð\ À¹)Ÿýô§ÿKs3!€ÏÓŸ‘DØ¡¿v|¼oã€kkãX¾&¡ )Ï#¬qtŽ ýÃ^áø¤ À(Ï=ðég-Önžkq­Ä0p3úpZ°½ˆÌAí×® ï,5Qð‡a3#Œ!(µiÁ³­¬Ø'9Ì·­ Å•2ûó6K{Ë£D.ŽÞûÎè5¾y# Àª€èöCÆÐÏb÷z-Wõ®®‡w—*¨ñ#â{)÷Ô¾[¸ ëÌ«Ó4}4¶ëî[™~Ê¿ÈrÈæœ lhGŠ.€ø;F ±Dˆ>"­Pi'plƒÒ’w\i7JÀ‡E®¨‹ÇT@.ª¯R’æ"UÐÍP"g=¥ðeK0FôPI&Àdx˜cÓ¿!>÷²Öã-Íh£woþ-‹|ŒbßøßÒmC_- ÝxN좓Ü?Äœ§øÄNÄÿäRçe«ñ€@Àv®ëרô'E·Æa„ u^Jvc)rϰý{i ð惛w0Œ0´‘aõê)À×É)À‹y¬¯Ì‡%£Ã$ØUrðñoJ?€K@Ò @#Ž]kà2Uö')(øq¯cÍ©H˜ê¬)õ šŒu²NˆšÂV©™NaÞ¹?¼ï°ÖE”C°Ðn#© ö¤fF®è)€1IçÈý+°t¼Ê8jQb¥v›í¥Xpç+ïðrMscX˜žTêf&QUXÂË¥ßd‹òòý¹\ –HXJ̲JÀSw rÍu8_¦ê8ÃÎXä¬@ö€Zÿoš¸”dÀ§^ À…b¾0éN†,Z5¸Ù9üf+ú"‘á˜Sü|mº €Ì6Ŧ¹î÷°à‹õHµÆnQœÛª'u»ž¼ŽCùà Ö|û»ß>È­î'²=`¦'Ët¹!Z°Ëe%l¤=¢¼YS[¤×oF;r2]ŽÒ_>"À×–P@OºÊX"Žu„|™Ë}½§¸¬LPÒ9U‚{]e(ou“b³Vaذ° €ç¿tZçø˜V†¸æ—:oó`£jUÒ€kÈ–øå4ðbfXx•™¢%€çµÈƒÙ£ÜXZF,ô&çÒÀ8i€¬<f­¢Òà €ÖÍÇ[µÌuqÞ}ô@h¥õ§Í|t>È;MÀÞÃ|éí'½W'­ÿ)öMpý‹‡ðr«}}#(/XVVöN“°àåÜ>ø8—«ó1¨>!Q)û˜”h7`2R>Yô*Výu¿Ë寷o9° è|Ø›¤ï¶ÙºK JH% ^æÞS÷–éþ¹¥’8Ä´ÃÞ9«²»›Ó€Á7eµâD%Ï»ä›ÂÈ𢺌IŒü3$p¼= g"ц…Ã?ñ†¹€· ·òtÇÊpWMDùsy]äùñø 1Y#@8õèIº§kÒÚK¶œoª‡áæM6_iŠLÛ;O BÞžã\hßkÿOõêýîèD…Ò¥Z]"a1¿[ñþ‘j)Û±ip_(hÞ´%D îÖÉ=g‚[°Œ|pï÷ôúÞi&†ó…h/-Êš]ÿ¿xI Í®â Ò}dÔ *Y+)ܳštÆÍÎÐr@z6„?Ù¥r ª™øyÂ$<H‘¢?Øµß¯Ç Íÿ_¹F„'5D2y¢ÙË…ÆW\‡²ù…v–mŸzuûs[ú|¾ûïóF×wÛ^Œuy¸Y˜4Êûº'«ÖÊ/&\–ÛFô`þÇn+…¡e¬ßÛÖo×¥àR­ìÊð2!o›Í§{BWf/Zd鿪ډÐÙ¢ÌÍèÀÚå”Â`¸—C–ÜjKŠƒ¤H@¦{ à ò•䀜ôL`œJd7Ë¥MMMÁ3µrb3êní,š•-®‰˜”—·°é;ÑV…â" Ê]^‘h”N`óQLlîLpÓæ×íýX³mÓ7 RÛЫåû÷þ·Yyz-ªNvXqŸZé4 ˆhxzÐûG*´ xS¨’Öþó?Æ„™–މeÃ1«{î}±©û'… zT‹¡46Ã2gKëÿ¨ Q"4^}¹XVMà4Ð)72€Q¿E‡;¸&í<7Œq"K‚3Ÿ‘ï§£ÏLÒˆt…Né&g(ÖÅ7=9ÝznaÓ¦…ÿiÂØ?å‹ÓôˆðLðãM=oìx¶òLä§MMþjíztþe>tC0¯µþ_O5’'±>ŸÏ.ÁñT%éÜu\ÔÅBQ}oÁ,êä8ç¿ßÔÄî`:áå°§°;ÔP ˜þká™gþkûKýzŸî¤Ž=Ñ»»ÓS“$b Ô7§c'êÅ“Švs|9` [‘)PÒéš@ ò$)‹'gN1`QZ×zVb nÞÙæ?BÄ….LŠÎE£|¥ÚH€,`æJÉdÎFì`ÿ8t9[ o+Å"€»æ )-‘å7lÿë¤%{·­@NIžp†¦{‚% ‚0Ta‘µ–ÉÑ¢¶@”×HI¤(LÃ;ôGÀo±/åFEÔƒÈIçTy¤KëÿåTp-`i€ýVª ŒÚIXù¨Üü™Ïh¥!шt)}„@€Q¢‘DˆqérÈ&Ñü[¡¦d¦ Ì_Lç -ñ(oþæÜutÒL£ý'¦Ý˜ºÙh•oÌ_÷ÆÕÀÎÑßçÿÞZXC€¥B/B¤ª""Ð5%rÌDå$îgë0”1ØÎ>ŸN×çè^HŠ|LWÖY¯Ô¸àL)?ªÌ%Ib1B‡ãÝ”Z šZ‚0€Z$WË!Ë`Ñll5Hq,î 9ê™R”B§X¶Ó<0«$LiñV!œÊ¨ ZÁ<1¼‹Ã´ÞâFïªÆ`à˜w’Œ,…aæÓRx”>@ÿ$•’ bþ}ݶÒY/®M¢5ÇWLJQ1-P Ó µD™cD@@Àq"hÿç«ÀµKóµÖj¶Ÿe†«$6KÀbÚåͨf‚Y_øl94 @N Õ>Ôÿ]jئ¥Q€Â.£xµ` …®c™ Ù‰`-ò±Ö49o:Ðr@µ Ã* &bÝŽ  -Z±Ô~›¦„W 倶óÁ¨3-¥œB,pÏ/ÄÿË…ÀÞü›×ùŸ|æ«:ÝýXÜO\{»õÞüßË8ÂQI %SFOÀ C4ÃüÇÍDùºsˆ´²6>Ùý„Î7RŽÓ Io›¨+Ó#Zø]41ìÑR{ñ4ѵîO2t F…pSÎ`í$ µ,° €t·P¤ÀÇðÓ¢jp˜²‹çT )·(Ž•¢ÿ—år¦ üÝ=šu< k0U.`íxœ3E )qÅt Ö,ªgív»a"ظæï³õ¬±Ùе~žLðlðÀ~V €2Îþן¤y߆òÉElúpÀ¸„cQ°à˜u'ËæLEÈüøT5’‰XÀ”sÔ:5ýjºLý¿q ( à €œ¥¬uGƒ•p'ckˆ¦¨™Èôaß‚ZóiòÆjƒ @Ш]²ì,eEi7±öY·˜ªf"nI˜wšŒJ3‘TŒ»ÜÁåÚ¿,o†Õj_¼ýÞ²“eßzãÔz@-ª øÕü{ «ñ}÷ þ'IÐIä>„H¦5¢‰”t,ØXPŒ±ÇËê|“¨„ãcX]Y1° {Ù3À lÀz;p÷Ï6«›¬Á%57éø2m|¹àÚ€K^PbPÓðGŠX @Ôqkg1¹c¦r›„VWceíB&öu‘ш¶œ©Ðø{ÌX× <€løOOb@ö¯/ÕÌãi޳ã~0ÿâ‡x¿Í¶ÞäAÔî·õ]<¬qdz}€>Ž,ªŠPêW*Ÿ"º D¤H gDõo¸9«¥Káµ ÃÄ?”jåÍð*>Ù«×oÄí†YÌhãô `ñ²ý?¦‰¬³Ê>£ ðÊk'P‘ݦ8ɠ̦Q¾e9€ PÓ*Àƒ, qÝàêâµÇ𘜺ª»ð¥{V=ßà·èºÿÿëF0Ý`þù'¿õÿá€DpIQ ا^÷´O m€¿,xB÷Ä+šÕ|$!‚¾(—0tl„Ó&Q¸v|p€Û1@lÀÈ@WvÿT üîs—Àö.Öû²‘Ñê+Ê%¬nn,²Üøs0ÌÔâK¾) €–¼8  ¤*Å ’ Y‹yÞ¹ÁvEÞ£Ø?î_ηÑC³ÆÄ—™EÂÀxˆï²¸4æ4HLáÄàËAÎÇQÎÐþ‹æ±òGè´ûl½ëÈ+>°~T&‹é—6{ÃDÅY¯ÿ •¥!¬µ”Ä„€Å“$Ì¥ìâÎœØ r3˜FyÝ0p \èÔ÷û«ëP%¸õ8Œ:ùY’`)$õù—èÿ]ŽPpuE€Ÿ‚@«çFY¿Ñ vñxkVÛÍ-Ȩå€7Ò4€‚$ €ÆîžáVˆ;ÆDÊö˜!ÖÒ”£vΘ’°à\•”vÙ €äÿµ›±ùœ}Èÿ·Þ {á0 À=n1î9.åæëÀ»ëí#²ü7>ÝX%ÄÐØ_h¬(j'߳̂ EýäÜ_˜˜Á`ïYào4âN]™}è—¥eeö æ~ïA+PûfYÎÑ÷Z:k¬®ÁìâPUÑ Ž€‰»ñT‡¢/\; Â7ÓneÝh5@!o^$@² W‹òÑh´Ñ Øb”4ÖøµY5³>ˆQX€5tØ¡¶V3Aê GFº4€ ÌÿÁRZƒ%ÏôÛl>êýéãþnXº˜ÛŠ lvôñ½x`Qìëfy~¾¼È‚ñ4 þ8œã£ øÖ¿äBÁr€a3Ž&ü8Lv¶KŒoÑ['ç`92:¤eñý¯Ëd ¸Ú"ÀË#À4Ü] ödkPª©$ éæ]ò9OÓ4€\·bËTfpTtމtnŠÖLT åEafqZí%§šFí²Øÿ‰Sí°|šŸ<ù­7Ò¦—Ðõ )âÀP)ÓÃàÔÙ¤bþ¨HI’~(œDÉ*?ÐÅîÞ~އ—4hj«áå¥(åƒ,ë+Óé…Èݧ(Ö£(¨¾A-Ø("Ñ%æn$@Øwošà—™¸v`U„oÒ«°*ÝDª‚e,„EÅjàÍYjÿ‰)zÿh1é32Íøµ…€‘W¡x€bx«Ã¢-ªÁ\ÀE, RÔTãÀ‡èÿqj+ƒEª÷WÀôAœÌî7l½døG®Í«8 ’Šá,Ù8Ý0'…)uR›4†¬¾~ÉlÀ‘D%ޱ– ŠIxy'ª¯Š‚îäý'H ¨a÷ù\G´æ ôýJ‡üàQ¡x“’{ƒb"Y+F—K®™€á“Ct”T¤˜’±O7eÙ:dsQñ8I¼`jp3ÑèÜŒ¬‡,Ðò0ˆö¨’ Pm>9J>`qªæ’t 8ÜrÜZíz½¿ø;¦÷í#‡—¾åª^X@‘?.””ÚŠ+"þèY¬H2D‡Vò,N5¢Àª ÌöE£ÌHÉ$V0%"$È@ ‘Q,ðÆr’-P¢ÆÞS@´‹ ûÏ8xñ öO8ͼ<½Œ @6˜4¤ €NB2ÏÞÂ@ºÉ¯Ì/ÆšÀE<èq¢ÜŽ•Œb®RëÀZæ¸ èA#©—IQBàËÍ€ÿ7 ó¦Ìw·ât“U5ä¨Ï§“ºï}ú÷˜ ÐÛ{Ûë¸Vß)!|"í²µÝ)>Nûz!ŒÞÓÕÕµiëÿ fiÑï±$Žâ-"ys:ãÚÅóg…d‰Ñ*`¼¤• xæÌî );øÜ‹]m-C–;0Ró_pœ¿ècX"Bã,F¢¸©mus Vj‡H6O" o¡¥­­+¨¥>F*þè餵`@CDóŒX! œ îiknÛ$äÅÇH… “ÌéÕwXÿÚš[>®5&¯lÿjMàìómÍ?Ø ”O/w¹LD?îjnÛ#ä¡âH-‹3=ø–ä²)€Ò@ó‘’h°¥ë`ËÇgˆý'î Õ“AÙ33*ËÀ…$š¨'Zñ_^˜}ó¾û~ôú,ÖבÔÏWZ¦ªjpê“ÔÐXQg1šƒ•VÌœã7­^½ºEßûº|´“*‚èÖƒoiËíúØYXL:‡Ðû¯?1Q4Lñœ ö0F²Ó"á2mÏ”=1+aìÔÿô¯šÛþr&O ¦3µ@˜$<`I>àkwÝwß]‡¯;üú¸¥«mOpùåS×ȲÚ^Óm×L!ÂZlïßëåBaŽ«oÒësŽ’sÿ¹P¬X'd°*A6†G„QÚ/D á ^ú^´4ˆ’Ï­àBÞ0·íNºAìßWpØrš*e Fð÷4Û sòb¤4{âÚ¶0Os¯m$-ó§·‚¨×JI¢ü‹QvG|¦Ç5/¬5ʘ΀óJ¯¾¿-@>ë#WâÿiÓ˜ûË}\ØËq¹SË_ðÉ™¼Mõ‡ý{¦i&µÖ‘&O·&9ÈT€ l„®0ç…Ü UëŠq§K¦¤Ÿ02HÌH€¨!Í×ÄžÇÛæVŒPó/+{çÙÚy©Y7xþ joD¡X»^çÛ;@öBîJ¹¨FIý±€¶½¸L6l?8tbþ˜/¶Nay¯Ò ̰~ì“O=¡óupøt; §` l£m’\x.Ä…[ò&Ó1@ÆÞñlp ~-„·füG×wãÿñ‡^&¼E¾I À™ÍÉ`5­FÑ6²mœwÿÖ [·Àòˆe%Pw—›„˜¹t@`®K2L@V£Aù€Y#rb[núÂxøÅŸýìg‡¸6=!ÿR‚‰Pbf»ÜÁ­wnØ?Àýð,qÿ´Ý[ŸË nݺr+v†’ìÏÐËKz78fç‚54º'†š¹ÜGî¸ã‘휗‰Læ°Ì L x™ýûïÜ—ùãgo[Ó7»¸­‡vÚÂù»å/¹§)zqÃÎC[½(£l8Écâ3Ëã¹%®À2-:¼HîqKÜ“_ü÷oüîI®>jv‹Á¨Ó”À 1¾Ç ¦ONáø4ä&r¨tÕð#®þ‹Ÿüûï> šÐüŸùÖýÕ2‡Vˆ çWV”yÝúÕ¸1·Þ¹%<þœ¢‘„¬†Uû¹%èÆ–Ÿîâ‡U~–°UÕ4~>Ò8e•_b5úò׿þ§_ZÎγúÞ!2êʮ㸰¶lãÚ~K±pqéœ`ˆH48|„ûÊï¾ñ/>À½v= ³G¸'¿ý»ßýììñ,á›Ú4PÏ!kÍs›P¡>î ÒUÖ$Ñà§ O~!ðŒ åJA?€žO•3 õ˜»Ÿñ†W¡ÞË{c/p{1ö'ï+ •Ô †.ÿ ·•¼™Û¹–¬I¡\‹cG±o°p+7ˆ²àO=õ7@êA‡5(f°£;€ò¨q5VÉܽ{ÕªU»qË—¼³÷†7«¼‹Ýô.†Óªgé·*€l¶¦CC’pÄçÚ¸/Q…Ÿ/qm8iñ(ÍWQ ¥öWe%‘5¼ð&÷$½úï¼lùÑ7 k/ãÏ"^jGâ)n6&|rçϲþÒ^ ¬\ý*º*á1ÿ‹™[uŒÙ<…ç9UøñðÎcøLxÃDQzåÊA®…—™ ±€@yÀŠðé›ÿÊõhÈqoïÚõÐC»v}eÙJׯ<ŸQ§ÑºÓ‰{2)À¤Åx½*лs?×63•P"פ5Í8âqÑ™¤¢FZÐO@vÏú›Ñ’³ÁXwHÕ{òæ—ùJòK#€*r„Göˆª9ºs €jOåSÀ+ƒêÓ¹¦G?¼Ó¦äm[Ê;®Ê‚oç¶â”AÿT«Äœ÷UáØí¡/|æMüÍï*úØý"÷ü²»‹Ûº[¹Nx"oœïI“§[”XBŒqq,Ñã£ßá¾¢j|=É}ç´K=Ä%gž,…Ж¨¡ða2£¶ô5äf ¨W›[íÓ“Âþòò`|ɰâéVõÖ<–¥»“kîïg ÃGµŒ#¹Þwß%wóÝ­À*÷/nQÏ œg?!¯™#æš \s,B´p¨ÚSã¹Ò¤\Úl­ÀÕ¦ŒüÙ ã˧Ïq_!ÒJŸ<´kÙ—¹60¶Ä×f²²)Ž;Qt HËüz½¼BÊiáËQʬXô]Ô«£½&¥Ãä¹õiÅ×®ÐrŠn«V«MÅx£6ë1%ÌxèweäÂ÷s-5ÕuÚDB«MünkF¢ø?kÚ˺~»™x…’S ƒB žÓÍšéh£«gorŸ¤UÄ¿°½ÕmC!úKýÊü²uÓáQdÍ®»ŸÚ´¾o–wèÕ_ñš Š*0åðTö u2—ÝV;¼õé;óï×»¾‹P€O¼Ýà¼hôpBQ!²uâŨÛ°%Í´r¸èð¢r¡<‘Å4ó<¨_  ÷UàÓβûêÓðbxSIÇÑ£G‹NH‘ÍGá»"úkx†É9Jÿ\´bIð[ÏÑ¢—‹Žvý@ ¦BmóÇ:êÒÿ\ýÕqt”™©(F‹&÷p¤ Ô¼cfsG™|ÞÆíOÏàÚâU…E‹E—ÀóóžLð¾Ê[.Ê›5—kÑu  NköÕg6løc>…ĩǨķ,¥ àƒæ8È_øi7¾ïH6>ѪÔ,€ÖÌ;g¤F>®UG]mÀ´f÷v^ŽÜÞñ |uld†6¿Òq{‡òk˜ :ðyx.t0½Q9:9œÓÑÑñð_¤³U«¼8ÉzeÂNt,y ks:ÙÒŽêE!àñ€¾øöÛ×wÛÞ•Ê^Xy ô5 s vÐ1ùeÇ’mÕ;póp^]òÅÐ]˾煕 íúÙ (è1g¿RÊLèþEqÌþÌy{q`|çJ5¼~ <%Pr°ÖqÒ R¡N¿UÀø™ÿ™S?~û=¯w޲'Ÿ—ÐŽb©òøû+É4Þìtó\hûNePáAnϾU㺠ðô$…*RÖý8Þ¦&áÚvŒÊò¬»TÑñ§ îÛ3wÚ2]¾ÀgÚ˜jç1Øj;Ñr·rmy"p¥¥é¯æ¡uóîªÜ!å2«¼Þh”Ï9dz¶v sJà‚#.Š J:)™.Øæqßјñ<Þ¥.1a&>¾X#ÄøJ dìùU1€ÜN^”Âõ»xùš¿àæ³?9«@ìH†öqÍg€£œþæØ“åƒ#^–ß=ĵý?7gæçø¨yÍ’¥„·½¦õ'\sÍÜŸR€I@ü ÆN=#ìhËŒ•ônC9Lä¶Ó£Ì%Ó¡´už’™{¹·w¥ó£k–W#h¬já>ÚõÉwúÆwÚõ@èðgŽyþ¢±ÍX؃î?¥ïƒuy{9j\;7l ÿqÅ ÖY­DJ)0°GPêÕà,˜v^9°xÂTôý»Or-•Jð).=XTïuEÒÚºS™òZ¥™ƒÑÆ” OO(0켓ø5¡óqã’U˜ U©s]Üve:p(À0L{6=6$óš•A"+÷sG°'ƒ¼ûR(™vU t–iã¶ì¦9Àñ0êM`?xKç×U‚€¥›;ñ2ïî>ȵÌaˆ…I…<ݺQ¬ìA÷_øayâ¹fN9ëúb(7&%É5A3ÍŒ“@J4c-P\«¥gW‘˜&ÖlNÁ—Øv8m§¦%›3UÖVîáéVØ0ú{Ü (W!ò¿ÚÊÜý.Yo`SŠBXKt×f¯Šfþt…ŸÍÑD…WÀã\ëo7bIzÆÇÓShŽrH¤'Às‘.¶°É¦ èò6w0*šS–e˜2v:7ü³]»v}‰[n q- à2ºã…fÇ)1}-—;z¦‹lÌûI9V&ÕÏ=ÀÕãªlõ†þÂC„ÂcA1J6ĘÕѮº‡Yÿ<︋{ó€_~œkëÇͳ¹W?²±¿› ?rçÊ•û¹fƒ5«±1xQ˜É|KQöŸe¢¿íx¿à_áxwÌáŒÎ~IBÝ:ÕEc¬ªVNIt´‘ZPò© @K|?æ­û6Ÿo5܇z/·ï ™Â”Êì t³Š μ8NJ~·=Ÿ)-ÁëÁ#«âý/ÈVH“Û™2Y(¹ˆ÷³¼ý»ÂÜã¡çÝk³±¨Êtê;KúæÂeÆ9®eŒ¤§ü£ÜÜ[ôýýX&wQ,ºÅÖi¸/’Ùší•Ùý©1@Q -Ëî·ï?àÝþíè.÷,Ë.÷O*C,òó¯­Xqßÿ‘³2¼é¹M]õƒ¯)žÃRõž± s48¿$˜°° x4WßÏ›“Db¬Îj`ýþþnòòêl–µæá9ø©<õ8WbÄü™Ëí}6{žùÿ^Èm0Æõ:l3Ô#¨$ÜúVæq…´Dé×irm€7ËÍ]ñ/ù'óóOàƒzzÒ ‡Z̰JVå à À´¦Ù›åŸð€ ìß¶£é‡ƒ¹+îÊŠÔ³¤+3€ Y/:§ÿñG­xìç³ÙåeØ ç‚]õõÍ-üûîÊZ+J„¢VpRPÌDDhÖ"¿XfbZî™ïÊ lÿùq +Qy„½½ÛfcæZšsaU°2ˆ. *˜eþXBp¶HÜf,Ö÷ö¾µ77ÛÜärñ¢»Ç¨á\e.ÀXEí£ ðòœÏoäæ>ã{`Ý fKà’ä?IøjnGï_üJkÐá -~{G]eRlmIÍÊM±†Ý(a ÁµÈk’É©KÀt[>Ýýåæ^c[󫨤„W€J–ì ‚º¢ø*ÔX/ïK\žÖè\ôý_)2Ä”ÉFÆ ‹nv¦cr‚"³²+ú~[5ƨ"k¨ýcB¿>ok(H#€œèI¹Ñyù¨YS…v;\'[Q_°XÏæÍ0žWBÔŠdk;ù[ŸÑ;’->ÇzYó_¨_5ÇÁ‡º·v쀭fóŸ¢ý•F%øoaIþ‹•ZóO#p Öÿ°YïÉ?é;I8’€8~Å€#ØšHCJzTaÐËçhÖ.«ñD¨€|p x˜¥\rd§![µYe“àþ‰;-Ÿ²€œ9=3G32­žÊQØ<ÉòªrŽŽÅHx«â‰ó1":êàÏéþìvÙ4Â٠sAÒ’jg…¹¹¶—Î d˜„A+“ÆàEI(taÜ/ÀIriÎÑèÍ ïë¥?Ï«’kd“úU°ôþ8à Îà^8m’ï9ùgý6Ýú{–É®žXâóŽ‹Ünë$iÉŪJqŒJj‹í›?4À=<Æ Vgv° ÎGE,'ËŒöÊÀ§ÔAô/”`7/\±›?ù(0|Éf¡ö÷l¡¤DF?ývjI, Fw¯QÞ›µb­ 4xŠja!æƒ*0õp#—ÁðåD>GFX=,õÚ9 E ¶úh¯½“"À´i ú~ŒîK°jž6Â7›Q›ÞÏV%“&¼0ö?{,ÛST ´ADÇœ€âs–š¿´ƒØ?,Ùí:D“l¤Ýæë}+´r+:Ü[– É-ø1^Tjþm€Ûúl·½þh¾Î–ÿôÉRˆ§P*6^ DoÚ8ï)AÅéOcÓÆJ'Æ”k²»3Àþ Å:_7°¹1ò!L¨ò’Ý¿Óÿ4ûWyY/2·§Z`ÛɧhªÛGb’8'(À/I«h¹®ì 9ágqçZyÆn³ÃfÎ16»dY’7X°$¡Ø<ÓXx4§ØNÌ_>թ׿úÄËýö¾4‚BžtO5W ÷ˆzíF²ÀÝÞ“¯ÃxèŸîY¸zà.‰ˆû_£í@ï¿þT¸© ÆZœða§¾@î ÖæáÎ¥”0ˆÑ@]¢”í•—=@÷ŸôÀokQŒ½@à+e‘ÕèQ%hH@š€µÇUÁo%Ö+ç“€Õñî”)4T,j¸€…ÀÅàSUŽ€Ý[1¯pžeÿPשJG“™8&¨ƒp­ Áh㓇ˆŒ,Œº. ;5Û©ï—ªýìT Ҕŵa@„øY-ޱ8  ¸°]ƒb& ±Îq>nûï“x¬¨À.fÃt[|P€þâGóO²@ã"nx½$”cM€Þð"D„FùR@³~à‘=®i¹¨ý†à†/Þ¯Ó£>ÿ1y6 àB;ëççFûl}`Ë THoësÏIð]rÔÏ}€ˆeRÖ‚ùë{‰ùƒÿ·ë7ÅÊ&¿½ïYÚ'ÀLîÍ| ЖàOÝ®Wž°õŽÒù\÷äµ)ÀÉeq€«eFKvGþ¤ Ö£lú+nµÜÂ@>É‹¿½€°d&YÐŽm‘lf±0‚Jb–§G{-cô¢sýW€—Ê+(‡Ù<ê¯Ã2ò,T²D ¬Ä‚Ç,(¹ºŒÊ4]w¾•ðÂ’œ÷Ky€ÙMDøV-†5B982èõ½ÇJ€Š"ÙƒÏW…aiµi‰wcPñáfJþ/׌Eƒ(8`ê@d<?{ Þ8®¶Qá':ÑÊùÈQ"nùZ×T¥âKR`ë³Z•b˜Z>hVXér,€zÿŠBgb-Ì÷ík%wížüw&Y½]ç{X¾pOYÙµr€«ÎhÒ¾Ö¢;r¾Øæë.~Ü%ÔûZ²=Äû‘ @F/ë‡ø(æÅ%öü:y’Á¼˜‚µ—€%=Áèþí¿\[. meغX¨(—®§_QÑ¿E®†írmuZ­ sVBˆR'²=(ޏ*-Ù?lÆyÇ–XPôï“(uz[¯^i@„  z·Mg›¿LóÿŽÖù~€Ã¤ B€—C¨^‰1k’° À÷gœ’q%9‹ˆN<Ö|غ«AeÆÐíº'êÌ$  UàǤˆBs³sF<ô¤j?‹J]få’2 s¸Kómz‰Å<À\0 >*œÅc´YW03Pó@ƒDÊüéÔ….)ZlÇè?!£ÿ·ØMD_2›dU¥Ä¸£Pt ¢8v­{rBQe¤¥A(rŸò”óÑ$P2aR«+»¿ÚsÜzšÿP𖦆¤XOC™3¤Q÷Æÿ`ÿ„ô7vtÛ_ÿ@‘Äk㢊—²c•Ä VG<õXpÁûž]£´Ú"Ï㬳õ€•×ή&xG:¨…ÛCÅ8;T£U°·‡žÃšæYÂ~a°³’”¬Â<'!Á¢á\l<¤Œ´@6dŸä?2¤aR ÀØF¥Ö/)HšÌ @ØÂP!Jú_-ÿÏ~`ÑžHx£¥bH…ìà  ÁøyöjÙË`ñúãy–͹¡}²h¿D>*U Í2’ÿ‡›1›CПgØ"¹Ž /á²ül»? rQ^˜'.Ðçq§ §yÞìR@C7ƒ7 #°Ê›Ì¦òSÅßtêO“–¢›Eê¶Ý&+@??òh~>3g&gíq ñT†ô«\“Ÿ ¾_±~Åü§fqâߨ|œÎ·~6‡¥g1Ù @ õdfpÿ­ðžRüµøÿ%<öB뤑Ö O›ùø„þ]8¯+»{ˆm¯­œ÷/ÄÙ ‰°Ùh0îÔ!êÃíêeiüOµ*õlÅÃÀdµ%óîtþd Þ¿¡BktEpÿÄþ_7EÕ¶´%¬Þæóý ¬È);ym5WÉx§’ÞÁÆ?jþÿ”9QtN•Lö“q ”Vœ ðN7cý©j’HÔ€H;ïlÓç$ú÷h©ý'¬Iš0ñQOciÌ‘‘a¯"ÿàþåjéZýVNbÊåA€@`è– ƒ8ƒagæ¥I¹É^¤ÓÇ6Ãf>œ Òe’†ShÙ‘E9Ûþ_Å-U¬ï—’Çá•l¤²0"(M"¦H¶š°Â,Jæ¿}wœT'º4XóÕwÂÍGi€K{»îÁ㼈b•†YŠ}Ïâ9€û¦2Œþy2×9Ss«l¶jºMóíúÎ ·ŸÌÏgç*åä8 еÃfž_K‹:ÆÊÝÑhÆ÷ù§æ'þ¡ûGþ¿~¶íßOþEæÐÅGMé ž¶§È©èrì?ÀؤHý¾ ò¤h3†ë¬+Ó3ìQùá>›maŽè6`€êb¯¨ÐЉ"xµÚP§Ø?!zf±ÃnK•r˜Z>òX€bþ9…Ñ¿VYìi³èTÂ&`rK(ì…ĵÖ\hß?÷þ§röOÏý_Yr ¬P%L˜íÔ“èßø¸ãÌ &ýfÃü[Œ¤=À×3áûH)“SÝÿ‡„ÿË”Et« @v¨å@(;LÝÿ2ý6ÀC8§¦19,à8ï̉Iyš6ïLÔ\Þ«ï}ljV ƒŸg˜BÕûs’p^Ñ€`õéŠ ™Ì!>ÎÃû2z¶R,½)—Îx–@¥°,ÿ yÿ\4:ÇØm}·!›Õ¸±L úÍ?×Ùbg¢’4ÄÐË6…µçô™ÓÑ›àþ©÷_’¶]šOõÙzÒ @¾ýÑügØ9—\•——S=•¼—„E%ë…Ë© bþ5“tà/¸`¸ÀÿgçYšXÂ*EwF4JÚS®1þ¿ {!‚%€Dã<8&OWfg˜³#}¶¾€¯ÓU°îl¿Mƒˆ‘î¶_ßO4e¤< L§Š ÿGÐשg%-arcº v  ŸÐËücç¹3Hiä‚nðÿØQ£‚.@-GŸÏ‡z†È®%p5p׊p Üö’ü§Þÿ•¥“mTu@šÅz†|ƒ=>áÜÔ·Xºj štÿè!8ôì_K½<Ø?0%?€Ê oÊéW€3(PòhÅb+tÿ$þ·^×¾¶˜°F\4“ÑÅR,%ÃBH-ƒ¡€·ù;1pð%x$Y²¨!¼¿-7Ø×¥ÈFE™„L {sŶñ}=§ú9Ñ©/&£†´~¶|ìtLŽ+}ƒ8QÄõ…Ƕo{Œ&[‡‰pÄ0ù o>67 öß]ócÏkd­Õ¡iý¸ÙËê÷DG†I@þ1P„âÛ5‡ã+Þ¼‘FÿµûöÁrÚâþ—x…, Cn³Û¤1-ÍØõ½§däÌÄ}Ûao!#Iª!¥PnÍ„&Hê¯dR+§Ý‚ø9[1Γ»—ÉdÎLq<ûÇ¿ÿ?v}Ó8h¿€È–08 ×fZš\ · +ñ (Ñàt a)Pws ÀÕ·ÌE¥ÛÔ¯W*E¤MÍÞñm+Þ¬ëTì@1@ã…‡mÀäêÌqr€ž¯½†w˜Ô7±_I”`_'ÖÌwyá#?ú%{®ôHøÃÿ¬êÈX}qŸn=Tâž“e¿ö®ãÛöÝ÷µÏ¾v„xàÉ¡»\Šù_ê (P´é€Ø Ï–Ú;#¬añKm7¸}0Ä5‹N£\3S.ŠqËe 1Ruÿªÿ¢4Ô À…ªí*è‰ó%¤ß +ÿ‰ûGû½þ ,4'ÈHz&ÎüÑËyIƒ“„M¤ù(ú‚&/7>8¸ ï9›b`úõ¹\_: 8h ½ígQ%šÌ4¥’’$ÎS¦k\+4ÃË›ÃØÑI«þHi<»ž'· k¾Pr2Äû¸< ›M”’£”a$ܰ·‡ÂƒšÃËWˆ¾ W0Î=ðä“õÜ‘gÑýƒ¡]lþr–4Ê­ðuÚ ä«Ã\ýÁƒœwS¹uÚ ·2†Õmæ”k:=˜ÿè$ Í«4ù¯ø­|”ewú)Èb.õ @Iþ_·ÿÏÚ بA'‰óщfnü…ƒ/„¹\›\ÀþäL’±ÛW`o‡Œ 8Pß„5ØŽ«/×÷Ò½`£GîèF`M2i XÈŸ{1~áÉ'¸#‡‘ücÕïv¸Z÷x¹í¼Ü¶½Oô¾Žsµ•ÒÉç·qùñÇ9oSq©ŽP< x:— Âî|þú`v_øKíÚµëÛ/p]/óÿàÒ©Y7P¬7Ì‘ï6Ú{sˆ8‚¦™DÑä;À¾=­ÁËY=X°nØíàÑÊiÿ/— %pÓn›vc¦·]9Ø1G…kFÿVùºùÿ¥gƒR4è mÁ÷¾··c9(j6§iC ôÈO=õÔ#ã–à¶7u3‰h” '­¡mTª@ àåA hª#‹dºÆÅØÌDåò ¸Ç*ù™Vÿ¬ —¹óN¸L‡ÃIU \°ÿô^ʰ~ìÐðL.׌WÙpðÆ!Àó\ý7ˆ oØŒ^ÆûSXæ³³ÀFIµætßÓ'Kõxrö_I˜åõûÿ¥< HæÄ‹°ZðÞß]uËÍ‹©“&ª:Ú¸Áý¨€`¨÷§y!ºïñù\jÿ@FJõ,Dþ”Lgbà/r/¼ÆöСð‘y3û»4@:æ>æ¼ûwÂâÂûo¤ùƒWe¯©:Á—Cîþ‚)åÿàÈÆ¼#zþºà5îg»ˆðЮz®ûrÞ_-ú¢ ÄñwÚU"“·&!n¯¤:×ǪzÎÊ\WTq"Xºˆg)ç%ÅýË Åþ«©¢@%ù)i€³„“ÖçÒ&àk?ÿûŒœ öò‹gÒÂ+·ÿÒ‰§‚¨æç®ÜzD „YÆàÇv¡c~¶; |ÖAî9JìúÍ£äC”EH.ÒÞaþ›?áT!åƒÜ^ûc:pÇÒËÁ÷à$÷»Yw²-&%VâÍÎÖ3{ÔËìeT ö…}¢¯Ã0¼¡Pù1.½1·¾NøÚø»ˆêØC»¾Í=Òñ©BtR ‹œâ'Šõ·O·Â·S89as¹17‡Ò²ÉÞmjñT"3Ðg Xª’JôŸöÿ¨°TàÇ"‰óÚÙª«q`Ë5ÜjÚüùùÿtqïl~NK¾îçºÎĤˆkB?€e*D¤ÂZWõKDzb©3N¨“$<ÐRÐ’~¹'å<𦵪¼Þõý[sÒSÈeœ|«ÖâМžËº“û¼’äÆÖ(>>WŸ¾ÌNï‘?'B¼äñ÷®éSótxÝn;eÁ.ñÊ9[þ£oøíù®´8âî-Ü&ø4 +ÔıøÚÍ{(ùG_–qÿjü%ø9p£Õ)$LJ9M¤ïç¤|¾þ_%6ó¼Æ-Ƽ»Ó*â¹1)ïxB˜fªIà: ‚Ëäeïû} ¸ûU½~¡QFð,Þ®d¦(þ>îÛªÈß?àûŸ^cæß?”™o±…û´YÁ{^Q( ø2×ݹا[ŽðïBƒ »Ÿ_'¼É½½ ÞÏ'õG '«?åÑ<뙬öÄbžêÉŠNýÆÉªX°±FHvê‹Ðÿ:cC+Œÿý<Ößµ§•öÂl(Â3—‰%öʘ5¦ÆþW} ^>„…ç±,=èPgìØ7{Cà5UÊÇñ= ®¦Ìgg“%cš”Ë¢ý@–?¸0 rV6òÁÊ ³ð•@A—?”åÅxЭMÜ“òáÍýÍDØ\’Ø’W^4—Vr %Áhk<È›=Yî_–•ü9¸EÒ EˆùÔ´ƒª}þüŸ”A³u_&0àe"žÅ_| ÿÆuŽÆúOQYà…˜ M“,€×›!ã‡å×ûl÷Pªï_€ÅÇ$à©ܱÙQ¡îì…ºídÖ×7à×®¹M’¬B¡ˆÿÕ¢N5A±ý½y&mÝ?—OÅs]tNSÔ~&âÓÙƒçöÀÆT}wßõž ÿ(¦%¾Â=£ó:ëÞ\wI¹¡c>n’-HÓg‹I3%‰*6r±u¤ºÒ)íý\ó†™9ûË¢I7Ï! xö?êRnvm…bÿèÙ§´@*ÓÍ^”,ºùØP¡¬åEIŒ>oÿ~ež7VŠÎºPz(×À©©^ÔÖšE︂´w rM;É<‰Ñ©åwG:HžvÈ¥Ú]9€O+ž`kŽ¿ Ww%§Úu& ÷D3º7鼦ûûs¬=µc§!ÆÝ£ÜɧðNž 1>È2É_µv©›.óÚ ±pO¦§ñ¥‰(‚€œ0kRµ¦žét9 ZãqÊNz°:§k~/—vs/ì¦NôÝ”Y"ž¢*2W©fÊê]=•ðaƒz”ð‹RÅÿc°˜MTàš •ÿŠ Ððÿò$8%œ\u·•¢wØÁRc¬ãš=*×_¹?œ‹õ­Ç6Æçµdí{ˆÆG|}Vk¯ž!»¡Ãf§±šȸm¤/÷â.”ùh×'^oj'TMˆó@ ·©ã¶9Ý¥§çððtîãÐãéA…^‰Õ³s¬Î'Ìñ†èÆ|ê)õê:à ¡z<™Üµë#.·¬¬L‡sP0ª3 ,.=ÇZ€éV1…Yo€ÉI×hKÐjrÉQÚÊ•ûÇÝX3ËÚ×ÌcÍÖ4€L韌=ÁÕþ‰¼j޽דéöÆ€¶")òXúGT€< ðÿX•ÜŠÍ)ÞÄyŸÂ7±x3ÃO›7ù3-\.ž¶>õÔvŽŒƒÆÚYõÚMáý—[GŽ&A*R€Î"×b?)ûa¡ýx~¿sÈÄâ:E€i Œ§/Ó¯·wúQtw>&ÕÞÂw³[ iN¤ùVkð˜yoˆ Àέá}‡o Àîÿˆøÿ]p{ue'ó³A€î>ávV:L­lM«s! ˆÈV+ßóôɇ­»š;øîîUð«žÛ«î¸#äÐ:„PæTÿ+þŸœÀêg=ÐjÀ*gaïUùÿËdøBOë?î o[õîªw·†½t~$øƒ —»™Z:¬ ‘Žg$=…z„Œûþ© Â0Öÿ?Œ5}dSHB˜?ÎÌå>"Æö^=‡C $’G“`§m߀[dÃvnµM§óõ£Ñ(Rç_¦9€Ç¹½1F¯Š6?³‰ÛóܘŸé >»ðÍPøÉ/ýì£z,}²••$ ïÇü…¿ýX]bi-xLyº˜t– 5š`¼5ÈÚKµÃl.7x`ÿ¬¦³±Ø0Ç Šc¦òK-ý£dBRí?Q.4X~Ñi7¸3ÍžÀÈ<t2t@…@56>ç‡Sô˜0Îøí_†ÂÛ·ì?àåêyž GQVgS„ydû8׬”}Œ¢FÀÿüþ6nð‘ý9¯¾ÓH@•I,eðT ©÷îÔ¸Á-[÷rÛvŠDù”!…±MÐà;ð2M ƒÉ ÆãI ¢XÏí;pÇ–Á·÷-£ ùe†•Ä3A/7øCr™çäõx«ÿè‹_üŠ—kcû»}:](ÒŒ¡–¶[­ Š@¤VÜ ¬)€¶ø?r¹·:8έ>ÙÛ@Û¨ÈÊMnÞ…gÿè”MäCÓñ¿¬ ›]BÀl‰© ÐàÿDÙ`ŠªO}m[¨þÅC/ÖsÞMÊB¡nÈÙX=· Ve{(°·Ÿª…¢ Dž€ûþÜ÷Ýëݾ¾×e¬JZ²XÊðˆÞnï,í¨ÿègo?µÄ°ÿ€ÖIy]ܶƒûq6ƒ/ðé|¾þØ À¹pJÁ—¿âVÿ™å)‘0ü™=tc®¢&ì*zž[1 ‡Â](„nÓ¤,0€¤vý)áé(äãZʬIa2,?: Á ܧ¶pˆãÍMoÙl9G‡ðŸ2Tpm>"5$ÕÒ¿ìó?% Íšùr‚õ'QWØIU€Øÿ'Ÿ¿ŽÅ,¢,Pn•WæB\h[ׯ£Qgáqª‹,4 ¸P8°—¡¢ ¤`Ô(í±ñ0 4³à¸‘hKTÄ4Q'„õç,–êõMmxy¸ùüYEô.†C 65Ãóáp>)E Ìw…Îí~Éfc‚@}ð÷š©¹`W˜ pÛ;,߸Ç]ûÆÃáðÀ&"~kÃÓ‡, P˜@Œ4ΈfdÖ:˜xÑtL¾'ÿäƒvÛK{ñvr¹ÏœÌ?ùF9USPf¨çghôߣ™@0’þ_ø™——ìÄ:Ý(ò ÜÿuX& ©v>Þ< …Æ»ZëC§HKBWöB »°M“|i×.ÀªàóÝýöb=ˆX‰h×v`WLC¤Õ9u°l«!°¶úçDR{,‰XO åµx¡pØÛ‚Zû :[p`.`F¦b>èóÙ'*ßÿ¸¶HhßUÌ ¼ªnÀS{ölŠžq¯àìeÏœÔõá~LoùÛs¤Ûh‰ó¦ ¨ ˆzšV,Ð0[Já%àì#?Y½—ªl·Ùn—)4P’¿×,ÊÙö/)Ó1X× ,«¶¤[,+°¾4Aæ`þ¯*{Ë畈#"??IÔLÿðæóÏUå­­àùx”Ož%KÌHyy›Z¶nÚÁ6âŸh38qP‡ïÜÛ"í`ˆtN¿©“—0Eçߪ-µë=0-{[„¼¼dÍ(£:Dð*yyA¸ñt²ÈÐ…:l5Ö3°ÝÏD÷lýþ¿§/-†‘¤ã|e;Ñ蜸wõS³ò}Å»|j#Ë.áÃüõü÷´TP«2ÐXC°¿¼H›eÿg©.Ð4H$>h+àU?a¥©ÿK”\4†íóH[$À=$oWQ;íïFK‰ó#IìjXÿÔþ™l_Ö°ÞIûK†8Ãn|•hgfÄQ@cfTžE±T™vìÊ+*°x„] ˆXR¤è™9T$Âë•'É0=3:ºfzúWŒ¾·ƒ @Œ× ±~Ò®þ’î~ù†?4~Æqõ)Yºvbßý÷üþѧ/ ¢`·-Ìæ£îZ—Uœs¼ót¾ÓUºüoýVLDç”–ôP0Ly ±¦ª&zF¯ÓÙ=5À>Ö2[<1a>%W! À òÿ$0IbN­™$ÿ ŽP°""P0œ3î /ÑœŒŒ TÎÐQ.νdë¯Wšc³ýtLúãHBˆæêFð´Ÿ–×À3vŸ4fÖ¤*0-BIÜF¬BŽaïC€H ÀFæÌógól'óuúgPtI˜ Út}<_YÃøþìÏ&Dœû2¦-µÙúE^óÊïuù'ß¹ûåŽR:d½Óï';°HüÕÌXp"€¾Y\`IitRbmÅ9l废áÜ!&;"UÈù¿‰ê‘ @4Ô•àdylÞ‰MÀ‰Išÿ«“˜Ï9X,Á^/Ô]›"-w¨94AÆÉµZ°"õ?ÀF“%(a¨:OBê ›?l·—j$–R§ïìHG„hi¯Oµ”œ‚¿fPg•=êŠF”2‚þ_S¤‰Ì© €Ú?Œ䃨1Óˈ=¨Ö«o?¥Gp|P‡ö²›ØoÏk´òOxãá7Þy”ÿ£ÿúè£Y‰A@{†ŒØAå°¹ Þ—ŸïÆI]þ;ÖÖÍöŸ|úÑ¿‘e ¤xŽ(;н€çú ?Qi!¼¯N6.!ýã\±„y¾8ú¼æ†ùL¤œD >FcL28¼às€¸èƒèúM©¯»Ÿç[M#|ëîYí«zý¥Ãí~RÆÌ4lÆÀ¤´jÍA§bºó$ñÙÈÚú^>Ë@÷zE¹È@sóÁ$Ñ`­*²ÒøŸŒº£Ö¨TÝ?܃v„ÎÆ ­ÿ ÿîó ¨/XCDnC¬áfíØÇ“ 9Í<Î{’"‹uôáD¬á oÃÁ>R+¢ËîD !IÍoZüì0!ÿ€ý9dx ¥sØó1–Z ôà‡ÄšØµžZ7#Á&²Ïb;Þïöu²å4POØ ÑÓËxÀÏöÝ à"¨d´ ÉJÿ?oïÞFyæ‹Î 4Z»F ìj!ª<’•l›`!/š­dS'Š 6Ú¤q"»ø =Æ% 5§ÁL—V}ºÙs/Þå”-k²íÞó,²Í).mê&åáΪ¾Ûî© µ.3cÉŠ£„º»n›ËÙMOY?‡Þ¹ïû~#YPHG„$VdYóÍûç÷þû½jýÙ­V«ulÃ[ß¿ù¯0!0ûãüão”‘€Í3Ì“C+ Û<^läu@w´ëðåÜu³ _‡~7 B¯ÈiVgàÆþ¿Õ0VF6ßMª_ Á?Ü>ŹQÛ1û(oXsQW–[2d¬ Þ"ý¯›`5ÍRg¯€1Ï1 c&í¡©¤ €tç?öø4ÅÒ¤ÚÖø-W4Xʼn”L)Èã>–’ªÖ¦-éLiJ#-+´»Â22Åá•LEÑîׂŽÚ6ÙÈböØ|[w¹@¾ÊÄ–)Ì¡(`%øbãq<¶ÚÐdQl+â=—Õâ¼+˜a»°"!#'£€NyŽö´ ïפæ«\¸>Ê‹„Ôâܾ…’8ò6àᆧÞøñÿ~ó-wµ˜ma‰AôhˆWV®êŠnm°‚ÍD)¸îafæãL]¢mi޲þœ½‚(¬:@œÿA¤ã4‰€9eü? ”ˆ¾¢DTœ›ËÄ•€@A¬'Ñ® S®:tôXˆdá¼ð?ž†›æñ~}.k7ÖF¤yeadš|,æåiŠ6V+N.R$ê4YsæóYÂe ã\Oq+” °é€^ã©WÁû\TíþÌìEö\Ôa,nŠy†N@¨e1>·µevöŽ›o`»áبÍëÝT“ÖÓÝè÷ i{›¬DAÿ'óH˜}|¹g¸©Í¢Ûp7Ç<ˆôWÏ ØÞ†sÏË~fû-ðÓs0à(»¤ýy@@æ’‡Z kõÿ®â ÈýŸ•ûQ´(`éà“rf2 6MShº—¶ @¢¸éhå·ˆ7(t|0‰}YZÒÖlA^$“% c>þ ÜrKSd{ÂiãäJ ßµÇMê9)H(ætõl ¯m%Js3V¤pp!¨È€½£µ›ËJmi¿¢&)ÜÖ«aˆs“#ˆ&Ój!²`\G(àÕS†qÍÍGðÆonç…¯}œ…#ÔN§‹6\"£à•\¬¡…,ÂØÜS¯mxøYdBâùI”…c­SØã÷BüŸŽÎƒU ã´°k-À8ÿ-F{¡mA’7#AIY§øß A€€ÆýÒk{‡qUÝ₸Too%:·IMÅ’Ë¢,dŠ/\6`´dÔ £<¥ ö‡g Z|Ü2¼¼ à)%¶ŒûŒ•lN¥¿jª¾%¯dµ,Ž¡SDgº]Ư0à‰!XÉ ý¤ááW?-{¬[Óúàg7\Ià0úµ,ær4s øv1€ZÈ·ß„ÛlBwZIÙ†Ìp$»ÆžWô¤wÓ¢ñ-·›Ú€ÿþ×<Þ!]õGç.Ù¶‡œŠþÌiAíŽd4©#g¬¨BûÀ’W!«ç¯X€î¿{b>â7™„P¿¢¯q÷ÕˆÆÌ©»Blæ PÉâ<ÏjïŸ;FUR8&\‘%¬œúî3N5EÒD—.œ8-3&AA¨ì“ú·úJ=ºªÑR[·ÁEÀÓà–^V$çr¿qÛ1ÌÃûÆ—NG^êÓQÌd® — ²‰±0À |l¤ë5MÈÂ[„žž }îÔuÖª̾ññÇbžM]bºîihd]öðŠS˜m˜…øwðx£4ÉÂdQ/Œ‚Ù(¨<Æ‹÷ñ‚ªÈ¾Ì”@ÁŸêáçY%%nýü?¦¸ ÖØ ËŒV^a»ˆ´áuOQÛK“|yGD1ByïJ´ÙWgCá@ ¦Ì Ìü{½ÃÞk Wx>Dм_ðD<¤ÐÊh0ý“œ“þDH0ã (MÁû£dÑó%…§t BýÄípЧ7É}ç #Ëýtd6Í–q1¡a戄ðëw³œ ñ̆×ù«h SÓrNç±v\‹bÀvaô=eÉjpã‘ ¯bÚînkÇ=,º^Øâf‡€-&ç?ëô)NøºX¼ ÿ×2}E‚€Eôê!ûts‹µ¨v9½Lä‹ú?™Q*2à.š¹ÜYDµ*ãÙjñˆ„jÁ0ñ£Þ¡ûÓo\øoQ?\ÆÿqBÇíÂy•ˆ†°õ##ÍW‹€-‰æ W·ªGÑò ïÍG ž›ÉÙ.§«5¶#/€÷jä ŸŒq ²R"hm…Ï:gï| MÀ]7Ó-¸†åþø-Þ»k½w°Báì_ò< 2 t‘6wùôØß™™‚>×/GjáD <øÿÑGHT\¨]Ý섃¥åâÎ$ýEvé¶’Ö¢))Ëë¦ÿ˜d!``³VÙ^…9€’VÓBÚö¨\  @t’Y464p“<‚"ØFGmC÷!`ÚäkÅuÔŠ†ê ÷ÀŠŽÔY3õ£gˆ›A ¾%<£-Kv¥€2 @6@ÇÚB¾87vw𭻬žôêg®l;­Ááöµ¿‡(àvG¿¦0|@ øÂ ›˜\ëÖ{2º9/Š‰Ý¤· ŸÔ2 ÉÏS€“!¾•Uà…ù&Yá¾ãŽæHÓk˜pûçÓM•N@Àæ~L]ÈÿqE*äþç1Õ•—À×.¶ ‚~ZÒÙÞa¦ÿÛ9 ‡ú)•ëÆZP‘¢=»1‡ù`jÐo­}Ðfëåù¿ÚúÒ(PÔ¬ÎãI˜È×¶¡IS¨cäüÝöWðÚAÿ—uòüÊ2¢™’Fty·±ÀiØêô6¼‡D²‘?­¤‘µ•Ã%8ɱ ¯¡³¹*U#H`ð‹pÛÚÃ!‚ú¸† Ìü˜áÿ­Å¥§~ùªµ¥\"ÄB@x *ˆÇŸI¯xÁ8ðØú¢gnì(îÿöÏ›½µå¨;ÚÔ†0 _¡èŸEcï@<-)"ãõóÿ4@´·T¨ P÷OÑïÂ㠲&¯ PÓ~ÊÒš ¯GÐÏ0@~°Ú“ÔÎaݰZãñæÀ”.¥ÑÿËbVæ–Ê`™ò”Ôœ~t3rœnpF„â  ôµÓêòŠ!€‡/ó€Õ}vƒ5vì¶Ï½Â`! å±Ÿì.`€Û]œœu’%üÜVkCKÙ,d B2I”ȈY_y-²‚¨£–š oA§4~<º¦-@‡æÜRz šü'‘ ó*•Uá´ÔRµûÇc ŸF^®÷òÿG/àØ¾Ìè¿€­4’˜W¸ „ý\ŽˆÉ9Dú?5——Ã>Æá<há¬ZÔÉŸ6UrÿŸæmBaÈ&°6‘¶Vl™¨‹L«<ÿùöV·n_,òÔ Ÿ¤áwÄ}˜+ËKÑ # ¸r1€¬»Ú ê¿âW‹]øÓÏkš£Tœìþ¶%k#:uVL¸:Àí¤ÚãEâc×ò$ccŽ™d<#E[ì Òù›¯ÙäõÜþmE+@ ¯þ¦Á*࠸̓{¾yÌ_ŹL!wæL6{ZÑ=ØÂAiíÃqˆ%ëëQl˜u(™Ho¡§¾gI¡å3ë§ÿó8ór‹ øc¾þ,ПæænYåÍÖFì DY°yÕë±A¼1²JÍ›Z9I÷zQÓÑ™óK2f<àÛ‰! ˜|ý¶ß(Y€|Nl¤‹ˆÜé œD) xÁlP–`€€ !Ö|Ìà'¯>fÝêþÌg¯0À̼´L XO!À­‹J‰40hKK; N"+òvlk뎃U°Øx W­×ulwÃÁ?ªXœòÎ}7þ‰a´®ðq2´J8T¯î?´³ÞEÍAôïo,˜·n<°ïœV¯_dþßâç¿ ÀÞŽÑ?ýu3]ž mFS¡ þÛØàSd)ño±m5­jKœÀ˜dŠè 8ЋÂEsqî àëu8š¯ž2°ÿoƒÑTkJÊY ‹XÌ—ža «XéÀ–Z¥?ÈirØE׆QÀ Äà™~ÚX–µc¦¾æñ ñüÊ7üÉú€ì¾Ïf™#Ä( Í0Àw¡€ð’ó«7’Æ·X·Ž Æ>ƒ‰Á§ŸÞ¸ñ€ç›¼~~ iTÝžëvNݱsÿþÌ¿(¶íÿ,²ãO˜üâ¡;áK¿_ÆÛRqö¯Ú·S>“]_ÿ=îJ6ã‚Ð'o7'ªõßøþ-P´-:–Š”lG„:ÕLä 5÷€ÜãÚ@L‚Rß fÏ(½vdÏhTÔù,! ´Fõæ2#¸fUYÆÎ ĤÔE5a4Ñ1–«+1V€®¼¶­oàŸ±ÿoãÆÿãÔE†=›çò1ùRà-‡Ti¼X«,ìÝ&¦¢Øq0ºiP?}B×›\’Ð'Š)±®w_„Ïÿ *ê÷G=ž/>#ЉTêÚWê!ð¾uæ}%uÛãÅÎŒ‚(]î~ñ»)|›#;ê/Æÿ×¥ÿ>3”ü¹Ëµ.ÚzÁ “o¹Òæ2?ÒÿÛl+›Ï‰ ­ÝŽk uÅ¡š˜žn:&ð½u怖˜]áØ&ôkJ¥¾‹þ¿kŠè(棨!ÜŸfõÁ¼’Kçq&|’(-B‹büƒ) νhÏÀ43µ÷5{¼Ãp 1uíú›ÎÜD––MÝf€(Àj¢€‘ý"€l¤¡Ïàšþ¼»‹m„ÓÁç­ÞQ¯Çûvc4” Ðpà>Ýù‰fk¬ùDš‘¬3“ÂNì8+¡ç49›GÊã#׊ qŸ¼¾þÇÓöX *úг€^›su¥  ½Î)F–4yw³-ÙÛ‡7E¬æ±!‰‚¤ÉöM wî'üƒ?x¼·YøÂðëêtS‰ –V21çÈPLRîp×z±3<§K­í6+–­18¹WÒÐp~fJ<ùÿ¼u%€!)QÎ\Iú£ë=±M†…Ó–¦=,÷üTb÷Áƒq†­vgØ„8®Ôûv§8OïN‰;©=¢†ÞæëÿpéÔ„—'vÐüËè*¼üÚy–,€Ÿõ†ýÉCâîC÷ÞûxBÜyÑùßh¥ëþ2¢ÿ5÷Ϻ]4…‹`ÖžFŽËñÿ©°ÆŒ { ˆEt‘ÉÜ¥Z¡ûÒ¡¿Þ)¦Ì#8—U…f $ÄÄã‡p"²Î[Kêñâ UÈóE¡ÖÞØ­v3;סLërVޏ%­Ñ–(X®rp˜dfD˜‹`"4ô1 TÍ›~ '¹Žl·xò#ëmJJ¾’(c€‘r`T*–GÄû>¸û¤X³ÎÀIÒc$¿M<|ë­½õ°–¡¥Åú*ˆ©å©WÞX~º.66ïZu|‡µ‰ë¿çÞ{áÜžÑØø˜®ÉΰëSô±û§/‹GäõôÿØë£ ÀB@6€jý7gáS!FµDÁ(­q¶:¾¶VNˆ»·[œØ)$½Ã»$[Xwæõ’ñH®jVqÁBh©÷`‚P’Éf@Zþn‡èÁ<Ô3 ñÈʘžzÂ~/Ę¼ë®†ìàëÄGN]A!u˜ÒOý·Ÿ2æ0 X¬˜€†Ù;R 6#P?å>N-¾áµ—‘©©ÊO&h^ZˆOµuYŒkâƒO<ñàƒO<˜š`ÃÑlFépèýÉqq}¤5„|ƒØ'øò›¿³S|é¢hí²+Õîß°°¼àâv¡öª€þïýQPaUI¼Ee0ê*æ”@›À¿fÁ¶°âÉòÔ1ü¿BíNÃ"QG_ýãìyã 8Ÿë¸09_TÓÌÎHOçPæ Iö…e\ Qï¢_笹ú) ÍlÇ!p:åDêã ø`*èß÷áÐò”œ6´XˆVÂ3Ø(Ž?7÷‰'ÆÅz{áñãWkÄ[?J²Ô4póçÞ2¾"fOß*ÖÕëÅPt¾©¢$äGgÃðψû–°ó•_ÚÿŸÿw"'ù§Ô¸k½OV± ïàZP­ÿ %˨œ4ŽJ±IA¡Süä'üäƒ~™û1ÐIúM ãâΜ ¡_À €pÐá1™D€÷Ëý.aÐ4g Lå¤`W\˜nÍR°…¶íþhÌzýZVpD3¶QÜEJõÄîž¾`Wä 'K¬Q`Â%Pæn@ ®ÂGö¸ø‡¸ö|paÀ5¢R±¯~¥–u ÆCúOàÁƒò¢wšþzç%îD]#®lÃ]íõ/”©/÷^?qq²³®Ë ®Šþ ‹O"Œ+aÀ}®I3@ÿ¿8’!jb7Eÿ¾ò6·y=«¬Ö Ûqòl_jíx”ƒÉiB]jÎw瀌¬i¬H …x¡ç ½NþuARJGÞ%‡±ŠO+¾·ásXÊ j'@$YExq¨Â=óÝu6®ŒÆQ潼Ǖ0@U@( – 1DA¬›XiÏËò-4<|´¬ÿ`Ïi xöŽßì:\~úVqÇY4ùº? §71^æÄŸ8‡Àƒšâëtþ»IOôGëµÁ|8 ìøä¼»`ý¯¬ÿö Ÿ’Øpv1_‡+LvîíK¬q_§L~ °õukä÷»O^ÜÏ]VPíþ}’‚XÄ^ëß)WÐÿ[ûµ<¼lD£Ÿ&Kô]!MñÝ'«®BýÛ©µ#Hùç,Ä÷S–¦¨¿w.üÆT_6«ôwc€Í |P'ÍBƒ%Mm5©én‘ÿ›K˪ž Ð'¡€†Û©d!˜ Â7TÑ…×=ô÷ëk,ýZÔI™j³7’aꄲ‡ q§{û ø•޼òw­ÂÐÍõÙâG×4ý¿º5fÅA¢§×ìÂGÅïÚ磡4M܈÷ÞY!Ä{sbÒ_Ëåvˆ¿ª” óåî P®TùÿÚÚëÂÑtFb‡CÕݨ_MGŽ&õÇÿJؤ£Ñ-}Bi€‰û5€û£xámóÍq[Jx5°,2U£R?ÜG3‡MG­›1_͞؄=ø]ÏÆb+±†Ù—ÚlÉâî'˜_…ƒÿîDXX hýæ¥c-`ü}N`³Ùìþ_Ö<=hú˜×;êõz›G»fn8(ðŽ {ǼÃ^/}Töiw‹ÿy´ylþûfbW‹øÀ?ŒÒÓÍcÞÄùý ©‹oÁ¼œ™Öúgzÿ~ˆ¼¸ÍØ}1òmM,X¨!¿Uäæþ[é|f?€B€zçG`Ãá-ÛPs³p š\¸ne€®oqJ’¶@…xO¿ƒÜS%¿BëÏITTàåøªA(ЋQ8 Â’tU«" ®ØÌuÅ3a­ ”1Àbu@àAfRH'÷ÆÃG[îxc6‘ú蚦oœ}£e¶å'³Hf½öôáº7îxÿ¡eö³'Ê·)qßh1G×¶”üÁ—ZOj €«Té¿=•DA… ÀTkQ_ž¸õAŒÈ€Ü{=ÃÛXó7ëR9˜Ú÷¦*wǬXe¼ÕgÙ$ÞsgÆ’úáv³ŽÉÉ+xìürf0 @QÈx¬ßÐ0šI&°ƒ'­J\{€a‡°Ø^Ø a€¬™aÀ7ª¤7±Ù#¡=²Ù¯]±xÀSy0[EŸµòrÏ0£YÒ4ëñ”ølùé§Å«€?>ùÖºZ;0t¸}Øžg0×ôݿƹªú‚ðÒÁ6Fá8üEU›¨û$ùÐÿÝ$÷ØèùaÝÉ'«vʼ©k^«‡¶ ™ý˜ë#àŸeسtói¨šÄó :¬…Ãokh)ò V ×¿÷^€ Àb@rÀ¬.Ro¦Y ø/U𾫓?ö%Ú£³aÃɺ'ËÛŠv§¾*CdžlÍ6¼š/;‰'ƽBïPíÍÇ 2@ñ5šõ¡M6|©6Îó{ãegpç=½[Bm]®‹—ÄdŸb­,õ§±‰?@[ÚffÀP·=£ÍØ -¬éç²³®³;.<¾PsŒzý¿Zµ/ sÛö‹Lù¶¨jÏ\öºÅKs>Ÿ¯´y±¢NÍY‚/P8xzÎÇ‘íG FðëWÀ”p­H¤ê„ždÜÅ'×»Tòé@Q@›™LaôNŸ4; €É[nñÄp£Í?Ô‰ÕÀ‹ [­wÝró_V…‡ëpâqëí[Á'ÔMÜX1‰¾€·¸e+@ËâÇA)üÿüËëx­8e9èÓ»9°¦ÿö€¦eªdÍ´#y¥žÌû ÒþO~ò‰[Ep8`6'nX[Þµ³^VcÖcHì&å±kFí{/á0¸þ¨¢Íø0ÌÊÜx†Ä@gá‰À×!€˜ñ9Ÿ“ÅjŽ54ØtÛfèäïÍ@ l;åP²•¦êZdj@MA§^N¬qå÷µ7i%žñˆXÙ¡‘xÈézëÛÂy—{°.Uþ¬O>‚4¨éžèî[ƒËã¢Àǧ¦p2W°•—$îíLPIh2ÔºjY¼ü `-ú·øp0çø%Y< DÀ<›Àúÿ)ÃÐòÑt•û¯` ¸Q¡6Aè ­t–Í;Á›J6h`RøìÞ‰J”~ƒ¸ïgØßz‚+ÂÝ6ºp„p’#ê÷ò) 1¶¼ktÖ>°LœÛU²ºÚ^fÈž :±ŽC ×o«l¡»1ñò:ë?vI9VšªP5–1Àb´À€DxÇj<àý>ïjåÏcZãÓû«’€© ¶¤šôŒöoÿ+±* ¸ÿ_––N;gjyL˜컞ãí?ãä"'d$I<ÿ•U¥û6¯_[à3rqÜ0X­ÿåè¿êaö‚û`P§ŸéÍàƒŸ<ÜiKòªêõ$õåC”øä¸¸#—ïý@DàWÎ"ÆC5Gòþ¿´Yɇ©õ Æê!3ðø·öÖ4­[Uõ•Ä.æ-¯¿GPÙd¡® {zE3# ²€¬ì aé½õ‚5«~0˜’ÿèþß“µòÀoÛÍæA ýXx‡ÅÿF8+ç*ѵû‘ýPÑ[k…Á¹ú}æ<ùä.âv/ B·úfŸxÐ Ó;'ä\Qà‘Óý}Qõ¿‚ãîDwRT‹%Æ:Á-kœ$ûÐÑÈZùè‚YE+8o Ô<ˆ6§Ãë×öÐîÿǺ·IZÉ¡ik½Õ R ¸Ö,ñ>ñ Xçñ4Ò0¿#¯tŠEĈ$m£ç½ØÊ^W1 âC/>U2©"øú#©÷ÒÞ„{È•w'à6Šÿdî)z^<—Í›$âëÑ ,sàù|ºÖŠþ£û?Ññ®3 €Õá^ï]¦$ÁèC¶¹¤·û,÷Õ+…˜UXb!x¿šÎ3ôŸW$Dì¶£žIýy%Þj…λUÞäõòÊXE@º•dxð †Ä‡^¼¢ÀÀ%Àk…€JO :PN“AK¤O§Õä»Ä¿Æ<ÿ+ø§ln@¬ÃF€ÆÅºí78>ŠݳO¬{‹Å‰6Ò¢õðü±ó†¯G&þ#ò’¬OÖšµ;Å#7îÝ»÷ÆgÄmõHÂ2‰ø‹(`V]U•€à%¹ €,Yá*Þ¬¤eµèv¡6DÆÿ·!í¹¬¿Ûý¯a€E§’K×üñ-õæ¬#…-bßX¢îËãXª?´KQÜ5~RL ðñÁóüÖHJŽß³/•:Y×)Š}¼°}1Äø-ysx@ï:)Š=8Ü­«é®Õˆç‡âÉññ”¸Mvrû+ÔßÜ—€wŸŸÑ–"lj[oÕ1IÓbÒ øí@«¦û_ðI²V¥þ„á°·wºˆ€éÿGòúEÜÿšËš:]+l©‘]ã»ÄÔ@Òž-¨Ý“¼pw­ îKjžOHŽÞ `9ÏZ‘üM˪ÂùÀY]ìNÄ+œŒ¥eŽËÊNŸy´9ÃáW‹‡}8:ÃTàAÜîI%à§&®†þcO˜%ªiŠä¬‚åZ€Y h¯ßÑ ÷v×a±s؆»0=±æÁnE˜}ž?|XO7üÆâ·áœàl,^zàˆHÏwîTÖ0ÇçáXÌÚ‰²pRììõG›ŸkF"¬¤šIë|þSÛR©¿%aYc ÂW> 8£8,×ôA™Ôq1Uñ›d^Øå¡*¹zØÃ»§Ä--^bÿõx¿u—Õ ò½ 仸oŬñOÃÝŒ²ïÕUâ‚ÜlД3üïë1I±Áýgc8èA,Ž$J!?ÒPC±ÇšTl žd²w>%îúGø²ëHÂVuí‹f5?úï=½w&Æï9—…ûW(l'²4^ˆwý`ß‘‡^þóÞÜשZF)ÎÏt×éGu;rØîlU‹óÆ÷›=ždï@]ggßÎúúž¹.¦éóçA÷ôt&Ž<ò,Šnv1zM76 …üÔ:R¤Äàjñƒ+Ìý»(õ'ç«ÕŸ°›«»,Mÿ¿ˆLMÕäåï²3>Ðõ‚ÀO©iË}xMõBtAÜ'ൠ¹ý}‰DÝ>¹žX^ƒP(üWÑR -ðÈüíH«[°ò¿~‡5)Z¹Âbå|Ðá;„ÄɃÜ0² àÜwâ»÷WAÿ ‡¬¸ èÉfù*°†Œ&æzuç¶DâÚ²*2#ô¢ °ÙpòWÙ·í¡—Ç7~ö³ ¿ùLë^uœþÙ—+ ´·BYqî¾»¬1›p`[¢óÈNù¿sŸ»Ôÿ±Ûç±/>»¿¯³óåO0;ÂåeeP€\p¿¤8ó`Lý¿HôÏ䆨=@hàó#™/r¢®nØkmi±‘߯EÏ^<¨Û‰L«G†›Y;WDþ_gš@¾ä;ï"5Z8…ð?5ƒDÃy †˜Äîð¥©m^N#…XЭ Gm¶Ú®ðîãñ!ª£—ˆè—f–¥µ48F‘x+¤ª¹‚P{[slð Y® ÷»vÈŒ!ýn#ð3î—†Ñ>Rå$TŠšº¥©ñ󂊬w=.\&â÷…Æ Lâ÷|¾_Îõø‹E–˜^5æáãü£{„Ú6÷‚À) wÙÀù8æ"i¤Ð'CmíªÞõ¡¢ÿ÷zkçeîÀôÿöÐû¹ÿ²pæq.ƒÇ­%Ñ-õ{„B®žhâY%’¦ºZ_Ÿ´ÕŸQ6#Oà1ÃhÇùA¤6·L° é•€œn óÿ†#SqÿpðE ñÄcR8›L7 ‰€b´þÍß^>T7§\tbt,Yî{0À;ÓÄ“{ÓûÃÖÑ6©Q—VlÔ,üÔyæÌˆñý;Z0ôÇ!6ÔŠÁ~Eêªy¸á·È¬­ËK4!¹`?ÉóŸ¯wæÌÒòá[c›ÀtÕvιt”³ÃeÊâHb¾²X'‹[Êýv½Ì{Ü¿¥‘sj²æ „TÝoB\}#ð^Or-9 À ²lƒhôß¶'ÙðÙú\a®áÓ‘¸PY(d‚Oµ›|8øÈòˆà ,úŸÁM5ý„ºfÈ’Q"pFâ´T`ðؘ­y0ùÍÏ^iF rtì\ÄuÕ×Oà-\㥆¶”¥ÙÃ+ƶ"GÞ’ÓOU°Hžr¨ME]HÂ1¬5RË£†ÃµƒìXó è^Ïp-˜¶Õ‘lÞµÐV 4¸¢#S*àúÅyÆ>kå%´·7Ps@ ¿bCÊÌ¢ç!SyYOHlé ÿyFÊf—”"©RV@ǰÂiy'uÉúÌ;cp¥N6ëñA3Çaí¿¬!ø£á“ùF4Öñ; غ-À Ùøò„Ð0+èþpÆk •Z‘GbKZ¬JäÒ%ä¤@…°éþKpvG‰Õàgähž<«8ŒbÖ›£¼µa# 8É+Í`""l†º `V‘â3òº²Æ<|¶Ã°øqr-=/ĉ+ óiß?wµÇc‹‘"±§Aèj"ª_Ê*gU’φ‘¸°~”³‰9ø„üè)õîH›}шð«U5y3üôÙ‹ÊêiÁpÍ.H ¾Çý§ç]¬ð÷žžÑˆ¬[í1ûÿÜ Îj냒Å`‡‘úÍ~¨FÄ•¥QZýsbV€ˆÃÄ`˼=žØ_wÛí*f=…I<Ð6bÝíúÔƒj¸à†ƒçG‡ õ;³HŒyb”K És2S‚É)¥{¯å àÖ‡¬R’´ dˆ02%F-~Ê×{ÓÕG¦XÙÿ†±†o5ŸEÆ –°~܉…ƒr|üá†ÛOè¹mBXAýŒ`,­-)¦÷ÿןG"œL°[8 9áÊù߈dpRðÊ™‹ÄZñ–9Ìk€ÿ¯jý«BþN¸;™€¯Â’SœPp/–êj¬GÁà§©`^hhQ‘ÕX )EÈ݆Ê\f"Þ5j•J8‚éŸ ¢ï!"$¢"Y8Q ±ÄØv‡Aº’WÔ¬!ª\X`=žQ8ä+K+š×Ãs´ \âBüÛÆkƒ¸/ãø Í+èz.‹ù«èvG»,Û…éb?ʼnÐÚ  ¸nDCôÏ4Û¢uY˜é²|›lòl…˜¹hkÍC[VçÚU]½H‰pÍýÛ;.þM{§(xCºíèÿÉýëË]ÐJQ• €:`aˆÅ²‰ 6a€ aÓó{çkh_@Ú˜ Íí²¤áÞKA‰9zÖ6À”?/qÕ~ÐáµÒiA¬0B !8{Š éô屫…$I ìCà|rö‚3D 0‰ÅJ¸°"€Í˜HAðÌ6å³5[Á4ßþqšÎAðXmÒæöÖÖ¼vÍ £´3Eƒ ÿ×Á·ÆƒAÙoÑû÷J%–b[â²IöY‚Q';–‘ ¸r&ÀÎ4 x”Ç’ö{Ü?øþ ¶pV`YÐÉ’DI^Xñz¾V„«ßä+Z[à"b^Æ à!@<”ò» Ÿªç8V`4g”´ËJÞÇ-So€œpÔ ÏqSØD/=áúå&/n ` É¿±>À(ÑæÀYÿÁØ"†±]ˆ»}0#ØZÿÀj&FãvF––„xXËt <5èhäVpüj&úrÑ„¹â˜"¯á×ûÄ|öÕÖ_-`l™_uß÷J-Åm˜˜s¿O^`°Hïñ›Õ :±ó²ÔØ//kSÜq˜E ·Ñüz3='w|p´€8H¨GïvÕÇÐâp¤I !ðcŸÃÙ¹Nôþâ¾Q[2n'c”vßMã=­ÃY9¼ÆÒ/UƒY„}AÀ˜ ôù@ DÛÓb8…©¯,ãÊI}¦ùª!€ ’·S ¾ O 5¦Õv'nê^0î&®t1ÿåŸr€3'êð­Ö®ZŸFz0Üo`Ÿ›ji°Ñ:,€D/ÝemÀ]Çk¶Æ0 “¦ãÞ¤. å‰9× >åF 0% Cp¬\¡t Ïìà ¢ÿ§Á¿êÚ?eý4¸+¾wÁÃHN ôP@¨óz6McÖ{ê´nmi±6ó¶a‚ãHêHÜëĤø¤{! ÞºÃ^ ©—óda!Êüký–ÂA„Y´~êæ¤-z!dÿŦXl˜×‡0Êš¼ãéõAÔ ô^‚xû;«Fp€Ó¢ ˜Œã>ÜÍàûhètŽ¢aZ¡¤ D{E0{!À?Ýͱá ä/î&§>hò6Õäÿs­¶…1«º?27·™Ø÷-Ü\3]ºÚ HÀL V²þCÑÀ»3ÿ¦Ð«ö "ÿvþëšýPÂ"¢Èó§¦ÁLY¦ ü¨Ök­Eîàn· p‰žŽN ‚™+ØlCwƒ1G‰à”ášTs2ÇÉJØ2Ǹ`(øÄa0pÿØ›ä³ÿ“]N°—~‹‹ÂB„¼D<±yëUC.€ ~¸’¯ªLoˆ'Ž µØêTŠža>(žoûÅu74xenâ‰À:Vë9Ú* †¹±1ˆÙ†Ñà ðµ¡ÿÇe@÷Ý‚uÿMúÒé ½#*ÓÞ$&¡˜‰TÑ0¦ Åwã6¡üIrŒ”“ƒø?b¹0ùÚŸÑÊ?ò=ß·¬±^aòæØP‘æA”œ§å(¼¥_¬îMòàµÕž(ÀæF¸ÇËjŒ@Úw QZ˜“ó›-˜ Ê"íAB©ÄႺ| ˆ?ÕÁa58äbãéƒÃÖ˜ †~üô¬M¨¹cÀb€&"ª&ðžCüÿ5°\Æ"€%Äó¸U´ þ‚˃6P.€š}pЛÈBU‰ëj0^(êæÚP ®ÏÀÌ_f¤¢ÿUü_ÕÏ ÿÅt¤¦¸ÂØ—ÀXÞ¾0ˆ²JÀâ*% t‡ZW»°î~â}bÿreŠ“¼pŒ:ÿ#yâø0%c­ ®H„ H]>˜îz*‹@ÕÂJxÀˆ9:bŸTÛ`åZ*Íhñ%°€„rÎ2‹”ëFO #E¨”h,óMÍð#æ·^5€½€† ’[’¹ ô_]QÓ®†°2 ²€x¾7ÍzlÉž~Õÿ[š‡=ÃkK â´Xd#×(Ri 1ôÿ†OŽÑ¬é§œŠŒ4W³ÎuÒ„x3>˜ê/õcÄOI߯’ß1!]Ž ’ÅÁOÎ¥Á©âra!½a ê³w¬SÀج᢮ ÎBGÝ›0™ñ6vÑÀMWdUGÞþ%4¸0`hÃ×' LïsгH¼‰ðÛª±=Yƒ‹>Iÿ,`ĺ¿’·_èÿË ×!Bi\!b¢ Ú¬ãvSÃ@6TÍ0󈌹5›g=ÿï×èβ7Â^äøÂÆ®Œýù ‰½±Æ J?—D-ãí-„I)g³}§­È–¾2 P7›ï9.Ô² €Â,=*¿Ï¾`H8 îÎɬ?×Þý×N×f™Ä%…h:Ž|µnµÞrµ ‡ZQiVÁAGµþƒ,àÖ°bWX^b@à]¸°¶˜´aÝ¿eëk]ݨ±–A—X±š€ë*HI0?n¶9æÁºÿÍ­J¿;ìZ™,,¸ç4,iFé²âìè)„ä«áÌ( ÚÆ@1(­µþ™¾ßð¹Þç¬IÜXk³§ëÞIPO°sxp$HO6ÌÖÖz(lW)E"PLÎÉWöÊJ¦?á·¤á’%ßnäÈòå@R§A˜íèþ(¡Øõã†YÛ±õBfÀXã ú_„í uck<ÜtçYUê7Æqš†ÏÏa0Ô8ŒÕ6ÞÒš ½Ø$ÞCúÏ÷[Ü5Í +›nøIͧÜcût‹WMOÒVy8D­¹$´­Øð#L]YëÅ¿gáš­Ôöó}£C“~†+T|Á¢¤D-AIsæ‰/«l9óy3qÂùæÃpz¿gQЧ±ÝŒjì0ký³42ßAÖï}¾SFQz¦Œ“Ä~T@5/Ŭ^Ö‡² ÈØD€ jš5ª½×(Nâht»‚`û0ÍÐ$¯ä·A¬D{‰ÁžØjÇ!üõBþP­µ ý'…óz†ow8³?³y}:%ù_2¾l”rœòY¦ø_q“h@7%Iã®Ð£5†= ú?\㔑(ˆåëdiÈ´½{ÿG„ ™ZÝŠF@'Â)†í¯[+ BP=0WÄ=*Ä1ZL_|”÷³=<öNo_Ŧ‡è‡ŒpG4c€ú=…ú³Ñÿ  Ö *÷~ÓÞ&ÄC…5 0Ôõ }ýžÏΖ@–¡•§‘É7b2M9äç0+Bl¢7I92F½-©þöꇢ¸‘(שäGæ*YÒÄVsp^É+gê¿ùÃ6@tÈú½a†ÀÿlLXa„¿+ú ;ÚâA¶`Ä^Oó5w4\g4¡ÿñ2?ö˜5öØí( ²„ãV¹5,è Ø7[ì>n†²ƒŠ™À¼ ÊN‚#Ì„@ Œœã9ÆÂ€î¿’õ›û hA>ÞY÷ò€P mŒ×Åæš›À—ï¨'<‹MffWYB]³ЂI!͹ÙQ’Bˆ «çó€qè`å`áÑal:½:­À à´.›“%§VZtšYÓÿãÎ.TòúìþºDâÚÂèlÃÑ¡ÚëúK&ñæãäKq’ÛpG ÖŅɃðØHŒ¯u…שðçaë€5iÑuZ/CSv"ÑÅ€lŽI8:¢TMòئïÌ+l˜©òÝ—_~ùš+áÅ¿xùå#}ç–rTt•‚xWXÖoîC˜°t[öP+pßNÞƒð=‹Ík…k€kÝv46”ÖÙ®b Òô}Ø¿c‰òØõ‡„hõ¹Æ‘5 Žz4Äœ@é´Ÿˆ¶Áðþ fµ'ð4lܘH¼ü½Së‚X œXÓÿ.^x¢€>q‚†ðñÏ® û!‰¾DâJŽE"ÒG]·òü€(ž¬Ãa §ö8ãÏVË`ä½þÿB`öÈjÚ‰6L ªòõR[¦ÍÔŸÙ1ÈJ„Uƒßx_Þ)Öõ¢„bëŸ% ç?¼ÁâXšëxM'1ÿ¯ϪŶM4 ´«.%NôÒ2‡¢ßÄpã»Dqß¼éœ#ˆy^ê*;%™`„Cõ/¹ˆÎY ä—±x"¬”P©®y@LuŽwŠ©¿¸z½€8õfÀR‘…&µ8W‹û:·ÁGê|ºáaªÿÑ»68\¸öp¾ ͳVl }õ3 OÓù ÿÍ£¨þ^á<»9èmü`I°…äÌ‹²¤ç¾ðL~‚,e?šGð‰ÔĶç·M¤¾÷á.ð{'éåâ@€™ÂÙ ‘!òwX„„·HÅa |Úˆù9lÿÁt€µå(=ëÀ1b&— ÇØ’:ñÈ&Ä>üðù’£c#›sÓMψÛø©ç2jc• PæßÉdCçÔªN‡ÊŠópÆI[B|‡éï™ø`r¸Ë@Øfa xªbó.A(*gö#52S\ÿòá fܯøã¬ \¡S£N•æûÇ1 ¤Sè„¹ŠˆèÙÿó@@ÙLé*…ÒT@# $:ïÿùý÷ßÿóŸ?'î˾·ç^>gŽwc8píÄMøòû¿ðœ¸­ÇÎ<¾$­XÎÕïdœ`O2BH»ZŒêªVúé¾òó7$&Š=E•õ*&qqÿd#V*Ül#¨?5°m ޼™p«¡‚*k‚0µ~‡8¾w/ãKÿñjN†#=h@€YRˆÍäj£ªwëg¶M<÷Àë7ÝtÓÏ¥û{(îWW(õiG:it’KÞk(ÃÛêxFxþ`zÔ6ôýw6#Êurºµá–ͲÎ'ê›=îˆØè­éXÂF:s'[‡†ù?ÌŠ2u8ådñ= Z&FÃ3¸Y ó?;r¤Ì öï|ðÕ=2QÞ:ðÛ:³&ë÷.”W¤eþQ¤# ãª|~ç+Ú­â9°‹ò韆ƒs€ž»É<²m2F0™êë³”e­_b98¤‡@álE7x\j¥]·Y=Éñ²Þ#þá: ж( sô5ýïÂͦKçÖ6z\¿«n%—“"`—ä܉¦` ÏÚššæáöÃé­UVqèO¬ç›AN´½¬5ѳùU¿šzÔé÷>9·,ç¢ì¯MM«M¸ˆWUëŽÜo>|åºë®Ûp±_×=ûì†cµ‚ðhßDùå÷ß$~߬Gε¾çgýŽ_ð1ô HAëxö(è°ŸÜö¨ÀOÖl¸ïÙû¾•ªðy_?>!÷—‚UŽ õ¡J¾À²³Ÿˆ*Yÿ›Þç8‘¶ÃR1¦_ÿ;W&\á^@ï´d”h?(££rqµ‰ÍÏìK™Â|ÓëwNô=*Œä‡çÕšM^ïè$È‹/TO‹õö‚°g§h.ˆÀ5Q}9ÿÜiJÄFé ¢º®¦KD‚J_âãù@è|ÿÇ*¼‘X™Ö0±Oíš~Ðãä—+[þxâ&ßÈ¥›GgGZà‡Qÿþ!q ³.U½ÁæñÚF_½îÕMBÝ‘×ËGv/ÂA Zׄc{f4‰¾žYVPX°ïò|Gð¼ŸwDõb!«& ¿B¤ "€r`1½ÆÀì&NÓsk?ûúÇÅ]§wJƒSýMgœôöì)Ë ÅÞz¦£«¬U†­}×C¿È“öžzõkê;·}¡¬Ñ3±ÛÉ/öŸù›ÕZ×YyùýÛêËŸó’:`ñjft[-xìÜ0ž¨bF¯˜L°×ç÷aµ_¦_+l™­àøŒÙ÷¦Qˆ³@_ï© €Ä\pªŸœ0§qQ͹àÎ+¹²,Ìuµ]Y꛸©òè¬ûá°ç·˜í6©ß«þhi±z=ßÜX!³~ð‰ºÎzW®£ý¹ÌF Y­ŸN&ËŽH©Ö{iìäð›À3}ì?”UúÄsÙ÷ý&ö+ËÖŽ˜«Ç.#¤Ú D0·šc€¸w%6QÍŒ¾q=ñüå»sbßj%¨\І}šÙúh^:’óH G£‡JNÍÉžØFñÆ2©þã/¯0{±iõ¸Â:@’’}ÛŒ>ð±{¢›fàÓEÊ„û»Óh ÒØ‘Wôãö#Э*o¹;µ#‡¹Âóþ"ˆ0§¯oI_äQT‹y¶;?­ú™-ÿZenšØx×c¿ûñ?ë:^±}ÿ: ï×o| î Àx4p_2)o¨ÚŽäõzÇÆšÇÆFÿs•x‰‚ðÏ ÿç3ø²Œ®Ê€Oqaˆ¹21À=©«R ää5?å}Šâ‹è•M!ä8 +gžŸ`Ò¼~uÖýƒÁŒyËÐ}8ú+õxÄ'Êà‰ÃÛÎÒ<€ì1ÉKN•^0šÃ¼“þ‚`gûó¢:"\«BàŸ*ý«‰ÿèü €²Áø§ËY³Ð8#.èhLpkâéYóñn0Ûò“‡ñù7ãð\jçi”'É«Ò5å•,]Üw'“>ƒ×™&×¹Œ` úÆÎ—× U鑵q;]|Õ™ç^Jí.¯§¸¾sœËjJÔm‘4¤jñ-Z°5øn—_õ»][T=§ë‰]e©{èz¶[,e9`‰‚Í_Z\·¹,î ~·DøÐ»žÂßáÏMã,kOZ™ø›rð+ñ‹–Ûn»íëï÷ëÅÛ~tÛŸ‹7™/ÿÂsâ.óš„oóÞð¾¿[ºŠõ;ªÂš“u`ä ´ê)[ˆ}àÙ2¯´u½ø£Õ“°‘ÁO¬ø£MzPºÇ™×|ø§I.ø#ªiðÇ” lw³WµªMqæáÝ:ËôîÜ;¾ëÔÕ0¾eçÉF‰ËÊæ2C¶4U •ì§wŠÏ½^‘æC¸ßU®‚ÉÂ\€©±ÙF»ìùÄ Yµ¶x(wúD9?U ÈlDbÌÿ±Xì ÉZ .»CÑ@4,W¿t½ï‹ðZ¤R‡Ÿúr9øƒçÂÃtý®ïÙõüÚޡˈ¨,N¹£KàsG´Nô"×+ɾ ¶£ +¹öŽÔìž`B€ÄsÎRÝåŽì,¹è ˆzð/-ï`²À·ãGÆ¿BÄ$¼ž£UKèß]€u€Ìÿ5+ª 3ÉÛ?ÕäíñºÔ¡ëú8ˆœ¸’ƒðBcÛ >UTCœ”¡F˜Ü@Ù]>yP|d¡H½ƒ˜`>è ;/Úly±$`¥PªÎU|I|¡ ŽtJ¿»/|¡©g‡ø©JÎ0õ÷‹-sɡߜªg·Uö£÷ճėýHeiènñÀ_œHí@%j:$>S訧ͽàg°!ØM´à¸Œ³Ä08–ÿ›b"i)ÑIx8ÉC•I\ ýÇÎ<7>Œ´5›Ú½‹óýZ>s.µÍôg¯?üè~%t ÕIdÁ¸ÛfkŽ(Y. ,Ùf­+9uâpy¥å¸ø;’«e²œQ»AÎÊ4ŽȲ:«P6ªô»îéH0ÚŸ¡±ªþ¾ ¶Iè?üÁÇ>°Njñõï?fŒ»œœ*\§«Fà³ûÄ[Ë U·‡úÕmÂd¡wmÂá„9½ëë<¿S|¡l3;;q¨aÆçZ´s¤þ–JN>]ù ¶Ó‡˜,D±¡Xl±˜¹YïI¤ˆÿȺ Ði¿ZˆP!×éÎ µQ iNV<$v"ÈÝ‹,c`g[„_Â$¬QC®^ôë+DŽkÃ'Ò¯€kc“˜ó –‡Þ]|?`X„«J&Ú6ñ¹/€NÿüþgÄýYùtôýºqZUß|\|áç`1¾pÿ âW.±À|´«gOŸKTÖƒwò­=lþ Ôsf§¸kmm8¶IJ46Ћ{½éÄN&ŽwQ;“ÞŽ­~>—ñN?•¹‚”p_ì§Â‘ÀÙ}œ|‚ C啉‰÷~üÿ뾨â˜(æO€X æ´´ŠjJN;³O|Ë€¯?p8P¯«þ³ŠƒòX=iUXŒ 6›qßèÖÙßf<ô=v‹}ýÁiA8ŽëxfW ™•ç0V÷íÆ¢Ó¼Í‹ï_Xpwp=4:—”¾þs‰#ÊÖˆt~W>.‡ÎÊ¿&sñ§ÛR—qœ%­ß]+–”NÑÌ{ñ¦SË^|OÝÚ†ôÇc+@‡Åë:ñÞnzý¦×_ß&~ÑA J¿Âd¡’\È[È%€!ü%(Ì`”ïYt ,(*/Ó6&Æ™>~¥Öƒ¿3ÿïÀU¥ÔÄ ÓݨïµÉbêñC‡í'Î!0˜ ùí KÌ'13Ì´Õ¶töÜ„¸ûà w‹‰{”îrÝ0ßY—û} Àû"€ 0Àâæ¼¦Â>ÿÜßÜô«#â_XJNíýFCšÚáõ4-</¿éožÛ&öm‰*rø’﻽¨·JÙ;S)¼¦q11üèmó´è[¡= &Øóý/jÞ§±þÑáDj÷¡'íN%vÆA¸›ü”wÔ£xñ pZ`Ñ0wÓcýϵÚÁI˜æäÒzß?'™zæÐ÷>>‘º*môá¬ùIÏ) Ÿ>E)ªÝsM KJB½OÜöÂÏÝ ÇÉŸ‹¸uY NðsrË8Ï×?:kã>¨ÄîܽK¬+æò!î^pjÜ)@šþSÌq1ž±‡£\º˜X°wDAoà½€ÑÆb)/ÿs¯Øù«_ÿé¯ÿxbâK þ”|='Nüêcúë_u¦.g÷8§…_„¶Ó`HÄ[oýä­·¦ÄßÔÁûóԤ晭ÃN [o=,þY-²„zF±wUðXâ3÷>÷Ü â¾Ð)c±Ã‰#³ÊšØ.rêVœŠªi'kçxÖgó ˆºg\¼öEc]rdSý¯#·Ïa£Ù®xÛw†lÉÞ#b*‘ûäp‡“€y½ÑÀ‰ šÒÂ@ž÷‡æ] íªß©œ9×—S)ñHïjÀ§%}mŒÿG.Ta¡‘WšH¥&&ÄÄ}®M€ó½(`qÕ?Ô´hù ^~ò+àv´€å’ï{›Z´„eno^’Ø×›´5OêúY-SÄ6äÎ#ôüŸ­nÑij˜†¡l¶á>ŽLÜGïr…%-—FPloµKË>:þ͈*‘(çÿÐ ávXì4sˆµ€3;àm&R©k¯Ò0ðÈOdå–Û@•CvAº¢ÈþÜ`¹sb"5!N ÛJXª$C¥DG|3¸à6§ ÈIÑ å5¤Òsû;á ÄÔJã 8Ä‚¡¢ªvÛƒ~ 76¿Œ(£F¸(XéˆJ§ËžŸgvë¹GR ÖÓÁR4š°vB|ùrŽÓrZî¨j-%‹]¹ð_Ýz0LðH4ÀkØß*ð]_BàV<±˜ nâÉ ±s½êwÛ±ûØéÔ®eda­¿ôÿ…@¿LDÒœÏné:O¼¼Çš<AO~÷ƒ“A—…°ç çì\£­l"æïË5C´¥jǾÿñÓðïnNÑU¢fë­s¬)¸¼A Ç_sÙ¥ÿvh`ßJ}=á#Òmœÿ‘©ñÒ@Ÿ.•œ¹¿ºoßßz¨¥ÔÅPÀ…ïÚÈÔ-D·×;üµOܳ3bA@ç.ýÆ÷ÀG bß—õXá­µ%Áûç­Dþ‘S{v®´Î©Å)"W\ïÝ9°ïÜ?×ÃYÅe,û[! Õg%3Xì×$—}×!y6ÃÒÚM•J#Ôêëw l]*)·~ãàÆO74ðN×ûƒ™Íà}놆§7þù ç6_^“ÔéÕZáEªç‡_ü¯†=?¤Õàà eœ‰œµílÜx`ONâ5µ‚Í‹ô(±XsñÍ”…ìÏ N+ʲä;eéà2ˆhþâi & rNMûpÀÆ>Èĉ×m֘׳NòÃä‚/`ÿÿY€AiYëŸÑN }OÄx‰x.‘ý>§…Ùñ—…šþáº5³®Ï!CÈ} /cöJqv?ZŸÕ‰¢ƒ¨kNU§-ö¼")ÎKFÌDáÿ< ôMºŒ¿ËþKÜëif.ãÝ(`ažú×R5Õ¾úôb ´Øt©÷Ý]Tç÷ºj¾ù×`¦ Î Åx7©/·oÑ÷ìQõ´ŸEƒê ßk³ mç…–7ý¾pÁ£œÂ‘ã²4á¼’^lo›Áx×ÄHE¤—ÊžÍê¯û#àWZHQÿ?¯Þ80ëta-Py]J·»eQ6ЬpŸ«Ïý¿m,¬V¨õYÅ[^þëæoÁõÞêÛĨ-é- ·;PJðxŠ%”´iK™Â @çÿ•}dUÀ2äp¹.G‡«2À‰[Œ3g±æÜ¾hüfÖ:ÛÐS W$_÷-Þ…eùäÿ½™‚¯ËHàfÉ.c$oó4cÖßÚ<ÃÉ$zy^_²54´Øx¾àmh ˆz 7~ÌãõŒmBÈÕŸàúÍ5áÍϸ‚D ›øˆ}‰Ó”~©ß¬HŽß¯XE%¦k‘VÀ¹Ã=¯õ|ƒ%â(³?Gów+šÓÒÅxnÓjŽ­ÔÅ4ñ¢PzƒG /ˆVsù9¬~Û‘0 aÎLáÌ%½JÍ`ó?%¤=¹t€B‘Å9ŠZÚ&ÐHù˜›Ç³¡|- 0`‚ÿ_˜ýk^—ï2V E€^!ÿ¥[€6µ‚µ¨®FA¯ ëBœö5ð­¸DU”wr³ãXåF®lŒÒQµðý²$*pÐ…6 ÍØ Bs[$LšÊõ/žÕ¸Vôµá’‘o½ªÀíÔ| ­œ&E4ey7$“ÔJFW±€.ë‘ÔÚœÑÍQ‹—¦å%³ïn¼oÔ;ôšaï÷Ej ,!¢¬€v¢ ëNè&ÊHn~±–ñ‘ç_F. `µ{gÛtÚiø ÆÖY/®"–Jïãý9äb—ìÆí´± è *ùËá há! rÚã©5îŠ! ˜Wð"˜ÿïå…«·74ŒRˆ×ZŒŒÅ°-Ê&L÷À‡ …ˆüX)ÒCúÚ§ÐG¤ACazÿ¡Ôa½?žo;F$swY=üÔº1±ù¿ ègvòþØ–¼fÔ6 ÷Ë_Tå³ü(¿S¡HŒþø·ÏÕ€8n0@›¤äÑ0O–ÐèŸ7à™/@49€¶¶*)Aè&r5´Æ÷ñ°fÜ–rêÏ|:-x†mµÔà¨ký öîK¶í4¦âºjó 9…gD/£ü¨m¨Ž/€£q"AßÞGü2>¥ú9\U@v.k²’ï]—´?ë‹Ìiy—®”•½wÔ!)%j¬Â]Qç®"' A‹Ëdì "ÄV¤`¨ˆ‹ít°Û«TT@àªÃ#8/³õP%7‡ “@’6ÀÙÌKJ‘²ˆ©D»bLÆ*.Âa:ïÎk\¶*=;£•ìaäýËaÑ”º?ˆ„™Ì'°ájFjõïÏ9’³Ï"PhˆI n¶ÎæRë#’\ª¥]ÈÍ1›2òq«W° #8(øXCÃQ¯M€}¶avˆAAžOÏoYo¯Å\@ó$–vôœäCËžq¢1#°8ç¤Çe%ë\a «h`rF_»ôbÛ(…ך­}Ãzq²ù î©)us7®pP8ðÿ£ƒàýeuK4­.›yÉÒÜ¿²ànLyÇùÉÜ"Ü…/tg4ƒ¢ÝÈñÂt¿‚¤ÝDk¤çü@p€Ö¶9—á}§™%`9?º˜ P4ç €ê=¦÷'½E+]Ã4MÏjú-€½ˆy{±+ƒ¶Q¿SGhDœC×D1úµ¸ãlñ¹$ÀkqÚ@€n@•³N_T-¾&b.H2ÖSq‚°:`¾é·ª½Ôm8”|+íàK¯"' ϲúïÉÙåèi YÖpmY©«h®yq î]0¸N% ªclÛ‘ =7c¸¦ÀÁÑOoAv@ €h‡3™$r,ñ_ΫªÿôËàXÊ‹íýÈà¹3 2z—ûߌ kB´æ @ƒWm àt¿Kýáã9Kÿáþè.¶ŸâÏ»ôZ¦Z10îó óJÞæïÂ'‡­¸ ùÿj®ÃUÞ¯ƒ³Z›9€xhl*®“œv#ª?Œ2Y\±‚,L™²PCLX5n8$ -‰<†|*w¯ üO,%Ù žãöiðYýwÚš¿ƒë=0#E¬ŸœÏÑ5êFId4e¦õ˜ÙàS´Ì ¸òGY¡ˆå¼0-e@ÝìÅÆFEØIs•ŽKEèþ3Á8ŸÉ¨^ ’BI–ŒA¡0#ž­kÏÌë’ÄE€:—ˆæÔ‚‹-† X6yãvŽú³¸à;˜•&ñIZ\éÆu¡í$F^!PÏ)Ôã`VqÁE¹yTä\ G{›½ìýQýñŒN§ÕtžZ¹«Xz8Á¹nUË>Ò²²¿Í˜N 4Á¹-SÞMgíû'Â>»€MCV–Vlö7Çoì`²Õ¸ÍzÔ£r¡–§“KJewåžÍà79ðP‹LÚÄiÎJÂ$œÍÝç§.9p`=¡€€‚1@,_• ïŸ K +cçšq{ €Yµ„Oý—•˜¢E[=6-;3fmö“÷×uÌÿ©˜û±ÀPœG–蕸ÇóæYa&`2„ƒp¥Ãµ @6«9±ÿw†8 WÁ„°å˜‘BzÈ&ÀÙy‡cVÛàúì ýÇÖ¿ü ¶¶çEcuHÐO‡†l£w£““±;½¨FF\öù wa9`YŠÑV °÷››—ã?mÙ!@¶H¬aȪ_Ëî n£Œë’À"·»±*¹²\4KYÉhz«!ÀÿOÜÛ€µqžéÂ+ÌJ”ô©1Z1(™ºö‡,ÅÔ¨—) Û˜:51oå­›¥Û„N‰¯žÒÓº»_|¶{¼ë’4íî6ÂI>_ ù+µ“3GGg›®YgÑÉÌ !ã±Sº%Ùlv›^Éêâª{æ{žçý€qbº?ó#„4šyß繟¿ûž­¤ÆQe!—tÆŒ¿‚£§šÂ Ç*1E¼r:Ä õF-Âûy85àéÏ"A!MýÊh™€s¬û’ æR2ýªìùY[FiÄvÉfKhîÉ`çô8¸ œ¢hi€àßeVâÀÚ†|%XS=74°íWƒµì8L"ò÷5°p|±ÆyM3e²å .§-;Iä\AŸêóCl×c!Éä–ikML1ùÖ¼@&Q=`D&o!@µÂ\8¶ÀÉðûáü ÆL«¾Š•ƒtrÿMf0IQ“Q˜©ßœþœ÷vý\®…Åþ>Xß~¶’Ã]‡JP°…V\ «o5|ó“Xà.»(+íí›ã¨{àAÐD;/¡ŽÏ ÚÏNÀJMÉ¡a$?¢Œ x $Ç®+C"Š N™k!Hã!°°Êdd%n¦Ø¿ŒVë,Ì¡?Æ n»Ý]ö¡(ÁþÏ„üÈJ—!êM<]wƒ—‹ Bì &-RJGÖïUq÷sJG nòWÔ:°8üüI4ûüØý‡À¢±2}’WæL)UMÇàb©i6ŠÂS«A$ÛVkÌ‹ô[0ošã ’ÔA3õçs!¥ÍŠ@HãÝ#D±bÝl:‘Õ`E¡Œ¾Ø#ihœ˜×è„‹tk1ÅWÖÍcæÓúæ)ÁsÊ5Êмbšš°¦d!âSp©-Y@ZM>R‰"›ꌱ™ÃÎó9€CMot$×±ì¹õ?å´„#[ºšŒ7:ÔìÌÞç,Žõ‹ÕÓÓrí±X$ƒi5‹­»´åä$e`&jª=úÀã›Jni€ÂZÐ0ÛœF®¿Æ‚xälgÜø,æï¹V' &ÿ;ýÌaYc¦õ0ÞMlîYÀÍ}ÎÂ8-ÌÌ?’ m€£¢'ƒ€"€äpÊ«OXr€Ã ®½ÎvQãÚÛë$TGiäÌJT®¯³'ºùÉòp{» i¬3D—¥²:l B#Æ6Ô´`©ÞÚQÀ·™I‹Ï|ðò³V`,ªqÂÐ :82ooç? m@Üÿ Ê`SÔǰ¬ ‡6Ô¼¬T.[Àú‡ Û8ÉøÅBÓV[>‰â„+’®mÃužÑâ4hóc p7…ï>‰YoªÂµMÊêd-\땹¯ð "} îÿ—He+›7Ø3eB€Y3õwÁLÊTƒ€[ÄIJÛçZ hF“V l4idjâ{xÆ‹™@\ÔZøž†£§Oyk£ç@ya¥³Þ€R(‹ØáÇ¢¢\ÂïZŒ@äþ­fÀŠ6™Ý¿Ù~»…bûÍ=’Ãiz\¡.Ìþ3/wG‚@bÇf{VŸ¨@¼À!·ûYc’ãPû3Aÿww“ êˆ pw$ì”ÒPÒO–-S&«-X|¹Ž*40§há( qÀ%ú°¿…_’”×ô(Á µ0­h¼§¾#YXì%ƒ¿_uàäwLüsÜ Äþ5“~cÆpDƒ·£a!¯Æ°nÁR°K»/‡âmš,Ïû¢Æùq48 ÀwoÇ‘Â2>–†]ßȘ²1´8E²Wr:¾R°2ÀÖ?pÿÌÿÏ×MŽ ÌÏs¼€`Æôþ…t`+18oî¨ÐÙ$Kþé¼¢È*0À,va°ŠÉûÑ©+-Jjvþ0YØ¡YÓR:ò¡ë1‚S¨b§£RP Ê—iz(`vÆj_€@×ìLÏÏ{Ò¬þwÒßÇš’’pQ`Ÿ +D. p1­£¦ìCèÿµ–韪•ÓÎèEýˆv?ÈýËÑA…ýV›œv¨“Õ¬ªæÇp@µ8¯Ô`£,@ îÙ- ÷w_³w#€DòQThÌR AZWb>$äGÝÌ\ÿ³þ 4ôçH k%—ë°AÆ:€}½Í!{Lï_ÿ)HØ©[€öFÓüª“°è»K^¨o‡×Oyà"GÀÿ?Æé¸Ý(Ä öÄv¸!bGp¤·WN"«=8à – `Œš9Z¬ ˜fkažeŽ‘P—/ëÄ–PA¨ à<íí¿Oðø[_ø[¶ÿS2“ì}ÑŠ]Yw~ý í^"yÔæT<Ͷ€I 2¹'âg[”X…6[m4¨€ÐœÔ^×vîþ¯£nq´8îúJkƒc… `EJ° ¨ÚŠ3àFû¯J óY3@å·¿pWù'r]Æ’¢ /{¯‘Ú˜¨Øê0uÙØ6Vj»ßR]IvŸ~ºŒz´»OVV.ìܦ„›!"µë©­âÞ4ðCâÖþÙÏ>5&î~t¦eK“CV·ÂýŸxâc½¨xÀXÊ`I¦«gŒhÐÜ4¶—ñº€€…:»Ò¾ÖoÂþgT;í `k—á%Ï;›C¶\ …xÍ!Ö²`3#ÚÞ¶“\_ŽCð–o‹ûÿÞLlZ§9<°ïÌ;ja'—·-EÌýÓ !ÿ?[x56äƒ8ñÑvéàÃU+¼Ãjð›Ýu/ñ¼dÒZº²XôˆÅëˆp˜@ K|ð–-ên~¼”çg7ÂßÚ›§w¦PŒã31:\¦¸NXnQÄ¢ÙéŽ@—¸+†wo /kŠtõHÉÚI4”Äaú]æuÚõa)ƒ|zô9fí£äDweiý[ñSî¿ÿþ/ßàǶþÛüh¼IÓ„…l²#‹{É"1÷msHé,f°é L@e$²7G‰=ú–ï"†XôG)÷Äæ35Ö‰:?Ѱì›]!Ppÿy‘’\ PXTµÄ~×f{âQlI ²ÿf`í–ãï®=þÚ„lJøÕôê:|\A`-; ûŸ]Ä]b×ÊêÝ’Ì[+0Epþ 3ó1Öºj)ä½\ÛÁ@ лO0Ülí-òþæÞŠÕtí„Â{x™w*œÉûÀ倇æé!-Näy G»’ss=–Úï€zàhž‚.Aÿ@{‘Të+9‹uÆ JiÄ€ÈtO'µ­ #pK$"ÕZ;”p³‚ø1—v΄ի‚€%ÀæSM÷Ÿóÿùp#g’q„˜ã|÷JË^²Å”@\­Rœh0¥$g½E¸ñºò³8êàœêmVö[{Â(ãËšvùëy®ÀG> %÷tðÝmL€5¶0cäÁ'.úåz $cÇ–‡AÑù¢à°¦„[i§håGs—iòè‡>i²j1bÝ9T%² LÁC‘_ÜOëíþJ|+Ijö‹LÉ3'3˜qó=€ýýI–nƒpÀk¡6F—Þݟʯ4qÿÏe–Áë@‡ *‰$¥Ô¼Ï!ù+T5z5(¸ÿœÿ_`ÀpP–/mÍkösàKÐTY `€Û×Ú‡ÎÙÏåÉÆ¢iiUI«ƒ"\k¥\yäÎwÒrü$þ 16ÝOÊóΓ‹2`øU€Qâ‰à‘Ñ·ÎF¥Ãá^]Ä6¤Yr‰–"€³õ/çÿû¯P¸1^Ø/%âRjYtuó͇–LäíIl±Î]¿×ä´CRãØXf|`-À¥qÓ]·ˆ‘o9Ö ÀÀÐÏð±ßS6§^Ť)œˆqEïÄóˆá/àVn#Ž?"ú¿sÏ™úú²%YÔ—Á§‘îz¢Xwä¶Ï«;Æ>R€›ŽæˆµüjlJ»ì Lh—[‘'Áß|öË¿ð³±/0A¾4RÀáMNásš®8~7ïwHXúò!a§ê€oþq—¸7÷n‹lýy: «âtŠXò"±b Ì$â´Íò@‘ûÏ‹/ ëæ„ ìÅÒ/Ùo^{Üþ(Ò¾³HÎÞeßòß_³¿»&a¿£'·íg'W'U=n‹ØÐaÜžÜ6HîpûðÃíí€èZ¤ ð‰ë~ëöPóüß¼¹ný°¾ß~[ÁÍüåÏ‚ øuäD ÐI»Êü<Öñ2\0eîAÁà/ðá¿B›¼õ¦ÿ°Ø›7'záèñ£ÝÝŽËóú„ @QQÇSXÄcÁ¾"Y(þˆ7ø¢bß*GµDME:;n!ljý‘âÿÜçìPMŽžlUÕg[¢Óÿϰp£ˆË¯f^-VÃê³·\  ˜z¯"±V, Â2ru\hçVtW@Û‰$Ÿäx¾ÓøQ‘.À#ÇÆªø1v4óŒ)ùs…iñm⮼óØ!z–ÞàYé k ¾FNòàS£Ž.Às[óL¹ÿéªÌkeïgrçþ?D6{Æ\OúÕX¶Ÿ—˜|SëSI¶ýBÅ_ѬÐ<2æÚ«]‘¤œ­Öµ@@Ëx+ €¾".Ë‹ÚÄ — ÖùoÅøIÀ°Ö:Ü B‰©sÇ׿À‡£uE>Xÿ·'åðoÂF’U¤ èÆ€«Œ=±7·Ov‰¡Þ)*P´Ó‚µœD)Ì[ƒù¹ð+Àn‹;ºœÖ Ç>1Òú‚|c· h¯ïqûß1À¿?ðêÑcwœ‚ôɤ¡ÇÛ‘±m•¡pHNÎ+Z †o;”Nüz:™†ÏáNEi ‡ÃI–ñÞ°W–áó$,’ù—ŠdqöŒ½5§¶6*º3€-E°½«)ãÓ­W#€Ù i)¯œ–óÿKêúÓdfå÷ñœkßUÀ9®t^ðv?ÏIaÖ ©ŽIeIàƒó-JÀ”RùuqG^åØ=eéÁ‚·Þ-~ñcP©é_Ž)Þž“ ecˆNN8ÜØèì €)} 89ÕÿrõÇ‚ê ×—e´ìó¡ÚÁ+èMyu­üzìÁ x¥Ã±”·éˆPÑß|ùW>1ö…_¢L76ì[ÂMMM Xšš‚äás0‘@S8 X mi‚ßÓGx,ÆçvXÄo»§k.™œ¼¬èµ*çkgŒV…陨‡Ó?O‘E>PìþóþI€d_’;±ù Ã"5­µééµ8Þ x…•Ø7? Àû0-ç8ŒVuUœˆÞ;äÁ˜’o;SˆãvŒþ…Û-€÷Ü\÷£ò¯…}?u£A‹^wÇíðoH`_ñãŽÍu‚0²n v>:ô/øEäD˜й\:Q .D ÀÝen÷É€òúƒâ¯)%ƒàè|zôÉWUù«OˆGÚ Þ ÜŒ•“¹õÉšé6ßð2j?–Î|3@0Î ‹ –µ²$„»rç±Þüf9Ù”ã~/×NA¼M6‡žmipMÖe Â5gÿÉÿãþ¿«ä{þC”n ^ Rã*€yûg\éæ•ž™\kT(dÞÏ€Ù™+±š%ðÿ>P$x"$˱©2¾¿BÙ&+höU"]â¢U7³%SÊD.–˜{SXŽ<7±Kõ¬=2…Ñ3Ÿ“´©X8IÓÒ[#¦Çm#Ï}89€ÿ"þšùÈ?‹·¬aëG²Ÿÿ!À¯0é$J­a&áãËu‘ÛX kLª–ºsÁÅqµ5›N~îÎÑæJ»í q?‰âhJ|#,V?v† R¢"ƒÿ‚ƒv~ø1ú¯0–ùÿ¢Àœ÷¶ßNóá‡ö—ìíµthþ|`Ë+`Ö¬±Û_nš÷壻´ÔºŠÀE 6~}{Ý>̰٭K*-^-Ô6.6óN8„«„ß'ТÀfö†¨‚ùB9©³ßrë1±ë^o@u8£óÝ@ðØ€câþ9™Ñ)ÓNf@¼S¸ù!bï ƒ»»¬lC‚ŠßGÄ®¶%×NÄ 6ªlì&8¥kºþ•rñ\§WoÛ!~hâÀ?Ÿüúÿ?ˆô>6„k¡ Ö;ÄÊ?Ÿü5V©?1ÖË]Ä>@ûfÅ>x„—$¼ms,'zp†²š|kll׫_=øÄ1q÷e,mJj~®q {³Öqä ‚Eˆš ßú·lÿç€ÂÄõ`Zÿ;·ÛR€ (¸NÎþѰfOzûœý/gE^¿I¼~bÀ Ç÷x‰A^^'> ‘š9¸Îz”4$J#+8îÿÑȶJä?Â,—­Ëüdµ¥‡$ z|!œüîNñè÷ÌF‹¿* GðLú‘0Œ5!„L?ßÖ;ö3|ø>ùâÀ×Ñ øéçÄ£'N<9ŠMH(ë*˜(à&ṉ̃{Έå##¥fG‚©ÈÀ Íà €ëf¯5œ}â’nDZ ì|ëGí9v»æ¸ ¼Ù̸ ãÙÀù‘(õZ‰(-ÉaÂè¡ÌDmZU}ù3QðÿìÕŠ™~Ù,q[Ëøªe Äé6´ oû9œß.ÆôH\·\GàšÀ¥eB`KbXÓÛ7$”éÙs ΘçG¥3²4}ã—'"xÿ=¢¸ÿ‡A»›irBMW ^2&rô@cÍbc‡¦t„¦”r1²çı1±Ë3ÐVäÿå&?㾕PZEKÕÖÀáÝ?…‡o=ñdDüÅÁ?>:ö™O}êI±÷¸ý¾þ:4Û¸™¿)ÂýߨŠ]¡ ÎêTP·oÔRÐ$Œ³Rý‰ÿ6¥¥dºÉßóVWÚÖÑÑÝZ,0åaqÜP§`¢µ´†‰)O&[‚Ê@Ùb÷_ˆÿiÀš÷þ~³`3ú|9¨Ûíw÷EãKOõÊ]ö-XñA…œ,¿´Š$€/Åsý»ë10^nh(…mr¬oa:,¸×—44” ó÷îð՝нw†ÿXãø²©Í\ ÕAšöP–©Š6Fö5‘Ú9&>ùÔSpâwóe΂/à䣘õrÂÀîAþy, *÷[¿ñ©'GG? ^Ç,À…Ÿ<×ÛÛ[~x޳m{`š€S‡Ëψx÷ˆà)eµs”Ád¦(ro5!¹-˜ÌÍZøp<ÐÙŒ“O8Ö¦x_èë=zkÛ€ èÓ'i¹gcÂ6Ä‹f- Ù'³jêP¹æÿ‹&f‹™~ÍY²ýü¸±¤€-@žuÆx¾mi]€HíU:m×°ÍJ¬EÑc8°Õ.v—Ã{Úº3ï©t¯a7·W©\¸Îä=];+›œû¦¦°I?I&©3Üæ4¬ÍŒî#›V/s‡Žõž9¶û¯‡„¡¶Ü5Ç{âÁÁèo¼üd¶÷¿Û3røØ=gî¹éƇxûôï{{‘[Û¾þñ*¤:áµ †Q¶sÏWñþ¸C÷ÉA›#×RE@Òóñ%±ƒ×T‹3º°ýqê Ïòì†ùý‘±ÑH××[3JË¢9#€7=䣉@Bi¢bI†œ6” î¿Èÿ³ÀôþþÂ,e«d©ÄþîÛ›`i€;7w0ÖÿÒÙVÕQpúÑU:ƒ |YÝàp7ú­—÷z¢ëÌXoä07" ñí •´» êßvâ8c}î{km <×"{‡ì…’šî!@—Ùó&ïòBßØØØ=}ÛÀGæ,€y&Ѹ^¨r ú”—1*sû8sæž_G9øº¦­Cƒ™¯üÔƒl=ÖYÓ´ BUó _9"`»b)v)*›Üa€$TCH–*iVæÀøMïþÇœœ–KÉX°òßfPT`ŸÑLR"4ûa9mö”]ÃŒ†e5è7€D!Ïlöÿç€%L¿9€ éå¹óFQ!ÀÙÀ,>xgW–·„–2¿_- SÑQì\™6öáhd2õzìÊÊJ-„9\ž+u¾@S:ß°· …“ªËˆôFë`c€ôv‰ç_W8ìùß ªˆJ^×¶mhþJw)³®Ö°C%nÎ&¿«C‘W§ SxÌÓÆ‡}kãù¡„Gæ×¿â¬B¶£¶}_±þøkîÏ7xxAè-­(øS‘C3¨3ëLãdøÿ¤©÷W圑ýŽï’túß*;ið .¤W¦]‘R½aœ.ÄÙg4bDC²Ü:K$÷_äÿ1h6òl?ùNÀÍ”1L6ÝaÿÒYƒz( ð¹g›¯lú˜c‹}ýÛMŠ賫 ¬@h7èâøgpÿo9½tÉ» TÞˆíßP²932èÆX÷_N5”¼>âöÄ[c 1 ¤dUbC¡±ÆÏ?6ý†a9·h©K’ WÆàÞ2ZüÑ8‹¤ÐTã8õ ›Óˆ‰Æì6Z/\ßZ¸¾qàáŸÇŸ}MÀð׳UžF4²a%œÎ¹YŒ°+ßê æGú¢q9Øì%bhÙ±QQ¼„×ãh ª ¤ÝgXLÖlä•$V`†(th…5@ /jÿ*ÄÿÆL‹ÒѼ„é— +ãZ}8~\J4-³ya#°ýfYZǘ (B+æl¤uŽSLûÿnŒU‡¸ ²‚ó’߀ðƒÃ¼ÆãÃîCØr¤ñœ®1úƒŽ@¸™Æ(ᛳç¿IRQ>'T_7ßÿÌ0ê!Eôd#¾Î¦Lþæÿa Ô7àö<×}w»ÝÞ^‚ÀØTŠ&`€¿ÛXoo÷”4”€£”Z‹4k=ˆlàq7 `Š£Ö"ÿïÂí_¬Ø8“McS¬Í˜Ê(1×L b!7™Žã®‡PÉ[ka IåÁ墵Päÿ1Å› ªEÞßl&柴q¾qÖ„ÕöÄ–MÆívû!ãP¾֘T‹AÂêuwÔžGjXO€ÿ·¬Ë¤¡Îe™ð0nÿö¡çOsH æŸo(Ñ`W¥ý\`Ú‚¾,®Eëä¶?rL†jtœüOÚlZ¦ñEž0øÿùVÃ4!¸ú·€15‰ojKYÿÃÀ5$¼°Qp{$ŒV`SZÁÀe?_ !Ÿ"œv¿B ™Ê¥„è{„äÎ`~ÖüxJgÞ_¶„te‚'²ƒ®!,JÍG&¬~“1ÀÛµ¬œèAŒþRE]z¹þ³)§‰—Îû3>f¾l¦ ÀT2Åó‹Ë7u†u,—Y)0EËTépÂþÒæÈ:r¹Pº¹p'y;R6®áög#{€ðOTµÑÉ]gÓ”ã~j=Iúà]wwP ŒEX'Î%xóµùÒ„EË ß£ÿ_€%Ðv# @ _ö¢Ð`O¸üå+È…ÝHeç×Û݈p…ø©Ô!µN1À•çm£!àh|¾ÿ§í¿\§©Â§¢¬b€€9—L¦‘?Ý‹Oe )„MÓ4-ôÿçŒ{F›—stÅ`RV²\ñö¹ãë €üŒZ¡¡áf´ïâ}‰MÖ¥í¿\ï8€0’ËŽ_y¹á1ØÿV/M1?zn·g§pÊ« n€ÌȰ«0F„˜³™¾ËH‹·ñ6z#Jà©.%ᄆÀ-¡pEó™ÔF.pÁ;‚3Cœ&1a‰”sþž €§-Är™›0ÈL‘]ã¬2lþùx·Gà3~ ž1sØôLÈ,¨ìÖ"LîðΣ°ëÍeu\ÑQ¿†À/Ë8‡6 ÆN;ÃX>ÄÉmUÖ+ùcwÛÏ’€, ›ñ† ¨àáþ ¼@GKÃo®À¹Á 5zm ÐÂ&ókö žNYÕ1¡k#ºæw\.8SˆçpË{MÃîþpŒÈ\P%å²,³dÆ4Ĭ¯NM7Áúž…?(µÁC$¢ÈC=!%¹;kší~-4€\òðûúÙ‚ønW7@€ÃNšÏP‰Ý­ @fJA¹e€",áop ù[ÓEÿMW¿Ï â¹ÅiL#Ȫj.Èf ãYØä¥Mt"=Ý5/Ḉ/ÛZ(ôýÔY‰oyèþn£(¹z;Æ›þA€C% ·ß¸ãxâñö9¸Ë–Ëaš+@¾ÞqkœnñfÀÿkŒE€»¾Ûx¬Ä#…†jذÇ)€Ž9€¼&Ã_qèçin"õ1‚,(±P5úÿYˆ®ç‘ ´Ö8×h¼àtþL6.l¸ƒ<>¿J««×mÖLkzJ) @¸^O6àî „r¸bA+N}¶âÞᦱ èÍNÅ»̯Zg3¬çŽ œøœ€ñZŠ p‰á9²–$57bÐl†w4ì@\)û `8h½*ÿoÌV{ó\+C}ÆÕZ•k­sfóÛWÏŠú$sLh% à"3%´oH¨kDÞ.Mo.ÅüÍK8"Œ ž ÚÆ~›ÏàÄÿBÜðhÊ­ñ6›üÛ¦zFIIrÜ6ÛÏw?ï÷â:N*<¯@q!½µ8Ød¤9éSn÷_•¢ÆÐ>ãÆ €ngÿpƒý1·ÐŽ`¦`á©%º!€† qã4XA»tj­°÷›zòõÿ½ÎìqTS b2'(§±‘à¤ìƒ(¼¿Ô™7’PîqPÚVׯVRÒ²Öâd½¯âÍeÏ<‹´àµoP¥»} ³ðÊ]‰­§í5ÌJ9$Š;Ág‚ó×™¨Hq#H.ûÆÿkfÂè«`û7Ü·™ç½WP< ÞŠ€´}*!€$ì*­Ç  °¦L@§Ó°ÏÿâT 2Àf´q›P¼AÕT‰=æ2ª`1ÍçL €iYÇ9ÍÛ°áïåÕ€ëÍxÚ¬—ÈM@ŒzÏ€õJÕ¢ŽF$Çôe}jÏ,²ÛW»dÕ߬d{rþŸRz¸ÚGã×Hx^|$1·À0ôbÖ•—N2ñ8…Rd°0lA¤–XÚÿ—gú]©7»ÐÊmç9¸’T  Ìdä‹«#Ìì,É,ÇÍŒ™§tÈ3Ðæ£` ›x“\p寭†­Nº[_ DœC.Ї­ÈMpÚ *¬„:–R;®æy,xuºùÌEì~уÙ,Çg,ãB¾@õf|ÍŽ¸Ìÿoó*7(@`ÓyÁUn׿ÒÄñãÆÓý%öX…Ð mÇî "€tV–/.6Ñ€°¹ÿ£×ðþù víYk2Ê8œv"<×ò&@vèĤ`¿?žÄI1gÅTSf eI…0zCª¸ê‰£“îİÍô àé!`…€; §ò0f20G Š;® »@`bmCâ¾³^ŒÏ†‰-wlŠv6®´ÂÒ€¹Qª¡„Kʸ"äê—øn›aƒ5Üqª0ïok&L ÀâpÈÙ TD9QŠã9Ðý?Cà|²Ú±*pÝàXÌ#äŠp[¢S3Â<¹ "©œÎðx_0 X«kä÷˜ñ?+ü]žª BxëBý_¯sÙvÓ±Ôãkð œC²iLGÀjb€ŒÊD!Ã)³)(ÿ³žÀJ+^“d°hõrZ–²W¨Mt¶®]äp)õ.O.Ë,Å3Læ üÿb|8S1 SðÞF°ZÆ¡,à¸ÇýììÔ-”’1–±jLQ ×´ºA–Ó—™8¦¤úXO䋨¡ ëCB¡`¦_´ÙûðÅ’A2n˜ ,€gÁm?¾®Ì3°ŽÚÁ@Š@B °Üh²€EU}~jåaû?v\Óû›ñûåÓIÕំÔIY€Ëè*µ! Ьy³É´Í7oŽó“`•Åç b –Wkt9ù @Hw‚X“ýªìÄjß&ƒò~kJì›áh00{îø9ôcKÅ[¥äõùT€w6—4Üw( Ö»ÛMÛÿqLÙðÜv‹L*Ñ2÷*h¤$’xJiˆ _IJÃþ¹a–°¢´¸†î•â¢æàÊJ¡بx;ÀônG6ynÚ·:pÝIÀCà´ g^@ª¢M†_ç—ÿ·ù˜ú †Ât“MÕ+0›•çåal†G]Tý˜í™A€»[ÎW6ÛJ$Öb^ci«âõZc¸á’Çî«:2½ 5´¯}œúâ±÷8cð¨8ÌÿÁD¦Ý»M‰O0ü–ÜâQ³†+Dï\H*Ié˜Ý¨f@Üì¿ãÔ/bþoÜ"«ÊjÀõ' §NY€d“ÑÌa•ü³@ {‘¨ñ)óʰ0‰þÿÍ\×_‹V<|-@Œî€<ž¥Ù:°¾Žè>ž{f%GÄ…–á>$W©;°x2¨W(2ÿŸŒ±Ôoš¢™Åj²Jj,@Õv8I'‡Ý‡f»ù“ýD}¯hùšr€Õ¶Ñê,v!gZßý?™°MXÑa«='s Y§ÔØTìÿ…:&bÛŒ†\Æ!AÀ,€››|,€ö¿œñ¹öãî>]çn/ip+ZÓù°6±„<Ô ‘„û©î¶ØFpq üWƒM`v| q^Kž‘Ò‚±¸ôIµ§ÁT°ý°Ä¼ŠnñÁ먠)_¶Õf5yÿmÔ ×è¶` `Ü~Üžh¸™,A{à{â¬Q!'—áuV(Xð4$JÊæqû74”Ô=m6øË^ž×’*¡æé;°ÐP‚|Ÿ’€ša ÏÝ £ º®™Þ‘íüÚÒ¸‘úÓ$=§¡%-eÕ@ÔêÕPwx 2è,Ä«×öF óŽ \G€°e¶°+ótÏÌå°<Ò2 ÀS:©ú¬•¿ü¥JúðÕfìrÕbÝ?n˜–«q §ø`¡HsúeJ*ÿíÒçBš^Ó†Ìhœ–ö¿_æN#\B"gûÿÈûk'ý‹…!àkç cžüÏ-nføª´â”ÐJÁÃRbÀe€­tV2NÛŒéý9ì‚°º¦B-”Ø×ZP¸\bÕ8Ïýñ~ÚVÍó‹.ο`u+ ¥4Ñ&ãÁ&¿k‘0‰k ¥1`=LQ ®N0 °*_½î?±$‡¸q€!€+˜hw{ô¦ûàk£EpåWKJ~|Ö5 Uõ¨–èç.]b!°n\MqUºþÀ’Zçb¬Øã‹»³ªÿtéÒ?UvPw é§ÐÇ«ÉK¿¼ôCÃi™§QA³ëÏ¡g£1묨µãò<‰Ôú‚XfØ0aΩ®Åhßxå5;Y…Ûí ƒ›¨:X›×/t\1à9píØöÚþ‰vAû¼“h- =b5gÒB` jØ-Œ”¼@ùS*,0‰Ï°|qÊ‹"…ýïW”é™´ °|ÀÔi…-u†l=ÿôzå€Rb—@ªU€U îëÜž¸Ú³}6£4Vyê73-Ú8ö„ õÏ[ë¡ì’ôÍ®®®/h)UNû/øÙHÒIõEkø“V?ŒS2"æ{S»áY~ü›Jï#ÀÔA]P-?8ÑÕõ“§¯ŒóüBS VÜOÖ ~¸¦Ù+Î ˜~ Œñw{øÛ=ôã¿ÐÄæ„W¸-êÊâ ½ž((v1ì´£øþ'º©owŠ£ÜmÿŠ> ›ŸÕô!]™‚PNj„ȦŒÛÙW^þíí¡O''v"Éoö4Ê*"Dò¹Péf.È«Œc"5Tw¢ Òxjú*»±þ¯1J퀠n‹=1¾‹+ Í€zÓð ,ÿvœ<[' _zë[]]ŸÙ6‡ü>ÊüËàýÙkdh2¶ÂGšöú¶¾®®'wVŒ(õÊi* ^’öwu}ûÆ øÇËÙ\ϱ€Ó?Մݘ:Hú²µ&@T8k¬±£|æì}öãßz衇Ö%Þ­•“'íöµØ‡±|[ø¯C"ðïzhOß ¦AJ8ÿ[Ö†dGEm¸/m2™Ôxn_®ê ¹—¯+ÿö¶ÊÊ4öPçKéã˜9ÍZ(†ûŸ¬P€ó¾á—VgZòš˜­uØeÙKÛººÊ»Ú=õ<µ–ÉòF“~÷÷Ÿ€-ª—»Ë2/ü¹'®TyʈƒÓ{ Ö%6¿P/Œô‰£c£bdÛ\:‹]zÈFÐ&÷jó²ü¡À…à<;œÕXæ#;Ëű3ccb_e® j…ðãÛa×ì<*öžÏìภ.-€]ÍJN‰àBôöVŸª mz¯(–s>+ø´j¬`E[J¹€t¶v\ùÍ·G{#på¸ÿ™b‚ÍÀ’>ð±–psÛ 5e^¶`5°¯w´÷Œ(Fž%©"¤Ò¦+ˆá;¥éø%ÍüÌÙÜh’uBivb.B‹ñi \85‡#âØXDìíü’&`=7 0`<#ŒÜn·ß…*4{ß% @À¨w í 8 œÂI.q ÏO—ôs¦s~ÞßL¿4²¸= пržæLžf!ì““ÒFÊ']Ø+mTŸÛ[©mÄÐI¶øå4 ð$ÖZR @ö¡ÁÄp“ßæ4*¤tÔ¸@u€;ëÄ^\ ½ÿǰ\ô *¸põü¯ë%¿ÿœ‰Åu JÜ·öñhORF mRwLÊìÿV†ŽFËa—ÀZèÒ¼l D_SJË3ÏØJ6Ë"èUŸáJËÖ1ÀfZHvëEø£­âØQ85å˜;›˜<¨¯¬€- Õ·‡Á áø,„ Ul©±izhH¨÷bQ°î+]ⱑæûŒø…õ*zÀTiI&÷o4k+áfbV8ÏéäÔ 8¶ãν{wƒ3D¬¤)XöÝÝbïxö‰}šÕBf+nȸ>PÃs.— s÷1²ÈlÂÊHôZ*¤$(æjåâ‰'n›Ü»c¬W þeý¥p %«ôÎÆW¾MX dUÇŒ«»œš#½÷üçFL ÆPKÕíÓ“pV°É‰‘¼ÄõTN[ó2ðô±P8®Þ{XŒìºmòÕ'¶Šë†$Ê–žºÀDÖ:áÔ9û–:÷ òcBð"3Ϻ=|CÃFDCB¯¸ã‰ƒ“wžbóîÆþÅuÓ‰Û&åÔBNóÁƒð4åÅ},é[Ù%ÞóGôµ?ÚÓ+îLcôÄvmÍU90PV-¶ŠÚ¦ž´»Á-£ƒ…ö3įzmXŽ< {Μù¨5X‚UAëÕÃ?3¾àøèhägÿþ‘üÁ7Äò†Øþ%õaœ^ÃîEK¶Â&H Ûµ†úAS{a}ß¹w×q«’Á¸a@Þ‹¸´âp¦š.`»|€Ö@@ñÎ#¶T9ƒò|ØŒ¦Ùʽcÿü‹ðUP*RO`u€UåŒi%öü°ûT·0âZD©ï²S"€ -ŠÎ Y{À‹Çp¼þGz˜÷7¢“¨1k\ÿÓ‹`¯‡ê/­ŽÈƉ½÷„¸¿’•dHY¸÷Ì­Œ@䘸»R Ì'q´˜èr„÷Ã]9ÞÎÅ›®äÆŒk¡€ŸF| 98¾wð 8ÿÓKªFì~àù—¶ ÚœX ùo"ã?»åÁÑÍl¡–2„þáV'Ò‚‡±GUM×Î.>wD°ÂX×ÑÓŸ[×zOû«·¿0‡æ7¨ °ýž²µ{¢né ®:Ô&é}%/<ù,ãJù”¸¶¿sÈtpª÷.™'¨³‚àõ£&çûÞbÏA ßß³€‘!éÿ©–pF¿±Pm›þÞoØâr-uR¾égmãz꟎2æ>S°˜²1nu`UÂôš;ÜÃð,^e¢µ‹¨©¶‘ÒPýYy¾¿»üLŽëcâ"³ŸA&3ÖÌÿ]kO!À€óLšS¸sï±±Ü|‡±èËQîßzk$h3¢8"mT2ïÃÖW+/™ä(å3âî[ŽˆßoÃÁ•ß¶’Y¼vª:ïí:˜£áw+ÒœªÇ^e)l¨†` {Ï`ä^u‡¸ÿu,ôÅÓ9Ó)r·XÁYRêÏÌÀÚ®P¼UÀoª¯@9ú¯)€¥ž¡}Æ FF› ì;g/Á¶ö9Yv£Þ&€è€[àIËôÿUž¨øà ñ­Û*^Ä+¸ñçól‡wˆ;[gz¨\«EÎÀÞÿ#üø¢¸ÿRº¶õ4‰†2ú’ŠúŠ)e7Ûo¿bµµ†{â4NTbo(éí}„1µ=òEñ¿lO,üШ¥†öåIÙú>üñ×9ºÄ'{KiN¾´lp˜°Áø¿kÌ f`·‡Û'ÕÞ{Lä¹Á]7¥65˜†ÒeÀÿÎæ¸¶P¶!Õp9PÉÏ’¤:&–Áæø¿|F\ÐæV V“@88;èöŒ¨€<Û0 ÉÒç(ÅÛ- ´õ¨ÿøýÅý³Em¶ŠIlI†£6l~Ý8߬ø†à °2|g»)’#ÄDU ®jÍ!¼­Yó@$G"~ˑѿu-ÚÚ‚’:¯+-¶EÛbÅÊÿÃj°øŽ÷ø{÷#oo޵ïǾ»båòÇ”ð5޵Â~“mEb±ëíªÔR¥ûηe¸þókÚÚèã|Ûš}Çu´•jÿöŸÄ/æ_µ·+…yß@HSB‹xìaESOרlÕqU¡ ;ܶÄØÍpM7ŸÑ5íräXŽ9öÃ[•J¬­îfòà€§êåãv·0èÖä¹øzÓ´rnÏ;Év@&áOŽåød"íß°ªW sÞ¨ù/ø4&55¸ËGOq\Õ¡G÷í÷| ·?üÿZïÖ¤Œ äàgà„ÚŠ®S5øÌ ?¿ä6Û7Û`QFm¸[Fàãâž)¸ÿ+‡Åü‹Þz,¢Ðà&°£Ò4¿tètÿ;ù£eÀ.¸ Å•½yößWwíN)SU72GF©§ûésö†R äë»vû¹MØïæqŸ¼™ À¿Ë }ÜéZÂfM!“÷ãâÓÜûyTîNÀí¸È6?|úÚ½°ÄTb"G9ÉüåL£´:NÑäþ¹ù"}‡íV¨üX‘Zñ^»]˜“ÍÛòÕ)'W\¶ôñ˱Ïä$>òë±¾LóãZÀÀÖÀýŒÚ Eöæ4nëz]SÑ®j¯w½j¿z[äÉÕ-LëxÞ•ýx,Ï~[y¹=w€þmÀ×Ê#RÚ‘fÂlë&Ù™ú*ó·ä €ÜêKË…åàxB#Â¡ä «3¹â²¥J_ûÆczßµ×X~ À={s”ï·Œõ½FÎâöŠ›×\g­Ï:S€ÖØZ`k„ÜRè¯=Š\¬ÄÿÿëHWeÈ¥¯¬@ Ð! ù„Dm]F•@ÓÁmp°m›†<ýoô¼%ˆþ#ÏY’€…eu*jsÜõ.BL€qÁÊa¥Ão™º¾i¬Hc÷½Ž_³fÍ¡³ÏEò,â{z·µ4¶¹\SºâU%5ì²]ã–ƒ…\5„Ì)w<ÒÛÇ•-^㈢Ӛ6µâ/œ¶VËçv¢ñ½c]ÊÝÓg·íËp¥¶ó¶ókÏ/®9v:ÃM¬±íS¸ÒFu[!:ºu´K‰M¹^â»k&-ëÂ<ŸwÑ<“<W¥xµËV“Ffº7œãÿ>t9r4¿­NŒmSª«nØÀR°é¯…®Á^"á8›Üj`°~ñ¢ 1€ëQ€s©¾Ñ¼¤Ä⃫|ˆr!@>Òzõ‰Ñ¾{n<ÃZóX@AÀW·*NÿiT’L¦³Î¨ËueeUµ,¹l˜ßAxî¬*YÜÓk?f±åêKŽ\V+­—ÓVk¹t4Ç—|B€mÃÓgmg§RÚÔÙóm^Mò¶·mÎp'Ïž¯âøO”Ö÷ƒânÜà‚{èùn^¯Æ M4—«W‰é×Sñ Œ Õi\‹>U‡_„`b‰,é¿'î®ô7®¬.1/ yÜ#áIRV®v"À$`È(†ÚB\ù(Û[Üú ¸ÿ’ê˜Bfx|‘eó¿×¨´U ‘˜ññ\’ä–½‘J2ÂÔ™o"Œ±x͉pM@ñºZªÜt­N­ÚâY@SîÝ)3ÉnÙ#î¼V o±«ÔX  ÖW“2vÌtÆ“'Ä(ï>e­FZÀâ–6©OØRäž6£özF¼ÄñÍSŠlJ˹Yðuó¥N°œŽÚh0)_&™UvŒé¡nžã¾Ò'îÊ'#•z[p#3`ô 7l·¨ƒnA Z×#6oWç$O{•qW¢]SvŠ'^Í'ÿ~µvFSÌq¾¿í*Ê%ÎÉ€ÑçâM‘ѯ™Àqÿë´¼Úi$båFT[¦näHÏ`úáX€Þ3Ë'×át@‘RÀ’Åy bÀhv2­&w‹?3#€lí­De™Vk“ì˜1f,&iÑ•NV¹PÆß½Ðà‘\Œ‹"Q A€›_â¹É0 ¥YÚ² 7Y„NdÕgµ ›O–ƒ­HAÃATù)”dÁÀgÄïïX-pf¡¿Î=¸é;”¨ò`bY Ž&flÂgw¾ 8 æ_™ÀûÔÿ ·N.Ì$äßxNÌ—ÿ¼5D P© Ÿee€[° ¨1>½ÐÌõJ>۵ʀfÇÙjqHŠ2ŸÀœñ-HÖÌ¿O‰¯ºâµ>y^š¿hiý$¦¹_Å`\ÜÊFïP:—D²ìŠ,4ëLífv‡•ᑜÂñÝHö¤ZóÕ‘~¾ûqÃÀ¹¨´äȶÐ4!zøŸá‘ù©w춃¦NÃîÊ@é y€uþ½{‰\† Õ–söõFA#î:¤Øöp÷v±2髟W™XRø¶øÔ«ñiv‰]éy³cRžû‚Xž/r•LcMi´ú-²*ɾZZ¾jE' ]D‹:'$ø€Ç>öª¶l´×ž@µ“ðUr´Ô °’D`ņIpÌ’£iúœpê7°>¡cZž·-ÓÊ V4óü‹=Tn ¿ÁúîKiö{Üu¥û)!챘u1ïŒ1Ûˆ!oÂi@"4‹‡&0S$xFÊG?tìü3Ï·SKέî#àTƒ×^œWuDÑ÷#es5¾›‡Ä'ŸØ{Û'ĈŠ1[ELå0@A™&;+xÇvÜzëÇŽˆ½ƒ\ÀYÂóœtñ¡2{ä¢Ù•àœÄáhk 7Md!%yލúèØèSðªOû^×Ã7¶PŒžÊþqÈn¯¿PßîѰp{ã¥n÷¾Òö†~äó½Ø(µÎÏÖ÷­¡]#0Ï]kz«xb=Mo»rÑœ ’“—ö‹÷ì`8öV:Ç ¬{Ãm"O,âÏß+°³ÅJ¹††Á9Án_'žAͶ=¢xÜÞÞ°£Š®Æ“–e3¶lOðFÐâ‡7÷7Œ}â×ùì<)~Ò¢Q-ì5° E-óÌ—È€ˆGn½ó–]°¾G8ÍF^×AdÁRˆ@’ä쩱æÂ.‡Œ%5)…ùŽºî¶?~L|ê~ñ‹ï}FÜªé¿ X%h/ÿmÈ=äšíØG€`Òº'HO¨«s{GÄÑȨX¾í±õé¬<ÿsÕͦ+5Ø P£W.l¥g9óɇKÚo6¬-8¢ªÚ/w–Óý÷ü×9ÙWbd1`ù½á@¤ðJa²»T[8âÛˆ|M{{û·FElÄ|ènšÑ´\ëØrÄ€æi ߟL[ZÍÇGûFÅM—Ôd8áü3ú*N4»~ÈÕ¤§Íþ1±÷L¯¸.ò˜[k&NÓNÛš3fÐϪÁ¨ù„Œ–(6Àò@`ña=c|ç7x ÆÄ±Ý)íò©[(FÓ‚0„ôÚ[Þõ¶om=òq“XƆ:HJ@3Õ…^5›‡a÷^~æÏ{×í—æì1`,*:çvï¤:€ž²d1Þ÷›.H¦”Å,P ‹º7CÞ¿TWšÜÈ l“ÝÒœ¦xc¿ XÀ°OÓÛŒ;ÜÃ.ä|ê­†ÍÀsÍÈ´ã©*ã¹äW~to%Ço'û­¶bÿÿÄõÙ¦feÜŸViâ3¥ý˽ßEŠ Ê"S\Ôû݊ç󇦜 Ž)dÔö†qôlÀü2Rk«›¾`÷GiMµk`ÿ ¼Íxs Î}õ£™†Oî¼F Àvÿ$N²¥-~×RÀÒhñ¥“æ2[ÄíÚÑÙàžÃ‘ ×O!ᆅjÖpþý1ZñÓL˜C^[m³fõ?  ±¦_yC¥eCpÉû3ÚÏ$€ÜOëÅ_q7:P@Ó<1Ae·Ø·¼r€_‰ý®7,%À nÏv$Û³ o V;ePÿ ûÿÚXË7ÜLóuUVäÅiA:¾‘‘¯$Á‹¹><Àr4Ýi¬ñ¸×³=2'Ô½iÅ}ô£áÇëÜî¡÷8NSyáîÇÏ¢¦Šù¼×‰M°Ñ ÷21Çfbÿ;Xî¢ >2›BN"wC;†ÚÓ¦q’ã´LU"€¢…jò×âþ4ŠÑdzÑ\N>zv¸¤}m¸ÙWÐXßáûáøÇ}×Sʸ³~ð4qËrD Ïç\#©|vhZé‘°O[u3£€p:®ú@q ¥TðçÉ4¡;Ðbqæéµ@˜eÐÿ‡I, §…JO y<pÉÃÈ7Â¥(gì!Bá— `vœ¬Åx!@hÐÝpܽá4_‰ýxC{ºÖXÚ oOôck“\±jK£è‹~RrÈŽ»Ûë6‘ø²aO]ã»›hÃçYE5„ÁƒÆÃ´ôd e0ÀEÎn­ÈbÇ@{¢dòÐkÇ·“>€5vûíð¦Z‚ò|O…--]•hR}VÚýª¼l÷ÎL³Hf“RІ7Â~‹¯¾¥Öeó©RO(†=ôWýhÖRÂxHöØÊØÝ¹î4êeÁírH#©Mðó–F/3jziý‡¶?ó6džø”ß ¬ ÀÎv£¾}ØiT¤9¡»´ Á?²d†ÝƒðVàZ«#žªÇñûP ØŠñÿõš¦™NÅ«kú¼ +±í·†AÚOUèJçE8GÚœÇ~¹XdÍïÄ«„&@™¨qºi`Ú«»ÓuéI_® |ê,øÿ—qþï 25<¿8[Æw—bÍȲL]T´ mDI%§ë„Lš}.Î\Wý/¿…=#(­SŠnµñß]¬EáŒ(Ëd$ûŸÜt;‘9biaª·}F4;MÐ2åïAî ÔÙÁš°5ß X­è'ÍýO ÔðAèM8šš.÷;,`6®ád ÌxO¾Ý"€™|6S° ›­Ó «[Áçy‹kÀ³†ª=’c_Ie§ÝbØ8f4nîÆxOè·¢tñÖ™ö’̹‡;¥ÿ?29P†‘žåy²@6s\‰½Ÿ£I]J­­¿PUÒÐ.}®êKv^&–su•A@+üY<ë…&¯Ÿm¯sa XhËN°€9~3¹ôši"ÓcÓ®hE£—@sü"¬í2«ÏÎ'%Ùmߌ«ñŽDÉŸÁA²³·åø»ƒX{Ô!Q/R+ÙÁ‰b„8È&n(Ž9|Ô]hžn½Û5»w{§YèîžE6´ÞâòQ7§;7Ûö7ÔºKò‡0=¦ÍíÙ͹í£Ç÷dÝ÷}ÿ3’œ8ä6D’ÙšùÏûñ{¿~o ‚¸7X~ùí:‡9åØŽWÎlBšã6¢ä0ñM ú•™óÖ)ƈp“*ÃçÆÖ.\ °†bîGFì[ˆá¢#lpzë ËE˼“ÌØênº ‰Nǵ Îÿ‘wÑ;(¼ô!kI*à³ÀN´BAǯûh-4øR~ €[Ã|5êÿ±ªªwúÜ[Ž Ý`+ë$ù¢‚€óŠ*§m;DÕÑÁ#*îŸ÷ÊK [¶Dáã$9¹b!À:.kp-WsäkÉ’bÁ¼§¿…LjJu=ðÜC[¶Ü)L“i¿±ê—ß‚છËú}@;çÐè‚ äò6ÊùcÜŸÉû¤ó¬d ˆÀÿ§‘Äß„ä¢ (~dw×B޶„Ò^‹è €Àn±G¾9™"B A!ð¼a%œ`#3¹­ 2~z¦ ¤#ïg€—9TBíRš/2€ ̺ãÚÞŒ±ªwV»ù¤7}ü ëà$’\ñ±˜ L›ëeÙ›¥åãÿk²Êø\‚¢ aÆqœÓ›6޼7º„“Rzà& õΊùFI]¡%JíþÐŒDK6ÂuÀå̘âå¤6c¦ŒI´ ÿÄtDZ›Ê sæûˆ…ÇŠå¯]œ?Cþ%›œ„· áK‹"¤h‰,æp˜#Ñv¦[ížÃz¥¶ eøl×Áø`ÞÄ^¶€ÃmoQÕå°?Ë9Ö\•&’RH…=œNjmâ\nŒW @ÀAÌë÷ õke§]UUn€ä— ÊÝ×€jÝ8ñõ–oÚb™Þôs0·Ð^$ùb*­ð f5 ‡}ø}ÕQw ÉŸÀ=ª9sÖc4¸›”,ˆ¨¼‹eað¥+~]pCúN ܃Á#) ,¾k \Þ±†%™žðCǪnª:vã—–È{e?ÜÝNdƒWÒë÷Ä€”("3í°ÕOÈ´(Z0­&²LÖvÕÔ: ÏzHØrGYVQié9eŽïw ÛCÃ*‰”¤¦ÃÞ%YÁÝ‹ )‰-½F?7BTE…X0©KhúÜmVÇ#xæ,ñß}ÓuðLµÀ£»~kÐå:”Ð$Åöõ¹'ó1á‹KrXÇ/Îÿ'¬y®ÁØê@\˜æ°ÙW£QäQïÎS ©@e“µé$¥ÛR©f~&ÂÁ¤Š¦c­ Ž¿²Òk> b€_p-²2 àÀ"ÿbÜïߘ2æ`©À€Qo D”•u¶8Ê~kà¨d‹ýìÝ‹ÈZMÁ••Èü[;-Ë3 Û }eh*4­¥™ÌJ]’i°N € \oãbæ}ðÑl¢ùÖØ/Ÿ³Èh\å÷r”Zk8d©ªºÿG–c};d)y©%ƒÔþ;ÍtŸÉ¤`ÞVîrñ¡j©Z1µXÅKɤJG®TÉ·p†³¬{J u, ä¶³!^lMŽ¡þÿÈœfY¾_¿SuGÕ—Þ!ŽpääS}ÖÏï̘ˆ_Àž+ÄýóÝçTJ€Ì^•h¦6À•Ö0f&üV6³“ç;Ý ‡“?)L&Ñ qPàØe_fê__FuÍßD[P:Á, ¸äÀ…€…þïO Âñ‚½‰Åž^ë&·«úOû;ÕËÍ]ýàVˆÛütLø»¶oöõIɬË/ÜGÕÀ]¬áá,RƒøëìÏÕ–TU$¸p^3åÿê¹ÿš(¡ÍîÆX/Ad‰è´„¤&gð©Ì;&vìP@»à»«KŘþ97^¼¼Ÿb?¶ Ú!Üó•¦%=æó€˜èAÁº®ÀúÐuÓÂb â¿ûž÷V…~.UI› }il ®cÜ^eÇŽÿíçø©nĽLý« ¢4—eõl´Ž ú ð"÷ůFû¹'¯D¢§ÎÎã-Ñ£àXË@hc½?uŒ>…À¤aËs˜Z«îw¡ˆn‰6üü9^…n?Yƒ ÿ!â‘ÕŽü¢]ç–9× R‘š$ÌÛe4ØÂ¥N$þÜ_aÇ\³Í®®`,@w1²à™Âþ‹lVe­Bò µÿ¹þoyÌGýÀ™ ÊÜËMUUÏ=÷K,¡2ä_ à±u j/-auCbÀi=½ÁÆðA—·ÊÖ°@A’ØÆž¥D(üÍ^×óÏs賂ø/k¸å{ˆÛ±µ£R uã%+LðÇΞÄÜv¶sÞ(WøÊîÉþÎÕ÷.\ˆXüôcñá£ìÅÝ+¸õ–ã^ÇLÊæH<ìJáfrÌSwð´÷^èÙ}™8~îâüÿ@ìÆŠŠÜ@jÊ ÇG7¿²Üçê‡ ž¿ç*øÔÇî.äÌ­Ø%(§½uN„Ùœ’e™_x|áùü·¯Ú=6éÙá²Dû~V[Ð÷ã]H]ñÕ’Šg»ÉgÕ3F¬¯l”  €M–`NY°pÿÖ¾¨dçšoÁøÏIßÔ‹U<Œ£ƒs!99Û<Ž{‰ÄÇÆ{„ÃþG]ýÙ>ÀC¡0å°ZškÒ`cµ“Ymﮊ£q1Òs%g|lwWç{Ü–áµö­ÑB=äÕ늂jõý îp¹ï€(àù øz¤kG¥rr;๠êHÿ}`« ™x0ë¹Hø?€»}퇞ûÒ–-~>õª‡+=Fü騛&Y0µ:Iôù,R°`À»kÞÙ þ¿J$ˆô˜ðoÚŒÿköѪÝlmœÁþÐ`Ø–ÃvþÀb1.‘çÌW€ÿ—’=ƒ`ž†XH˜|íJ{ ¢¶ÀÖtVà‡vú•Bô0sîG*@v÷œzAÊÂP5s@N»Ú„38jÒŒQ<„Û•;ºŽ‚>tíh½|àÛ‰Û¿ÒçobÏÿD™,¿{•Ùóôž£bê?rþÿžçö½ÁuVˆG÷ì‹])Í?yÁü»³§3àV!Ù;ÇÇ Õ³¥“jxè¥BÛsøpDŒ¼QÒëÁ žbv̆ŠÏ=•ô~ZŒ>½g··DÄaÖ'øã£Ã£{žþ#Vñc9ÿUÜ5„Ÿ†[© `öp³€…¬Ã„'¼©P€XB4lý#÷ol4ab"¶æÿßÝânøÔ1œÅ–5V£*ðË{"â6½Õ£¯ÚÀ¸e1o®¡QCl ´.ñh×ÝOÃ|ç×ÿ¯‹‘—_yeÛXüãE\ ÁéÃHψO=uë­O‰ñç¾ÔGü¯ .wÛïª6ÇEúòØ®÷”ŸÅ`]X%ý¿5Ç›Pš ƒÉ\Y´>“ñ"þÏ·JK Ǫn¼fËó`[ß½Ž3|êŽVzˆ²1KK²J²­‚Zjùg¯‰O¢`VTU¹™Y µ¢ß~.ò)ñäi$;®Þ&Äs˜ \ f ÜSëùJ €£Åè^1a ÕÙkJõB%’œu0YpâIÆ“ëLiÈ›•b ^¾×%޾ûî1rê©?ÏM>\†C™c±€’ˆaCñ“ûű;ÿø_‹õ²€Ï{éÝ7¸áeñ/¾ˆàÿ8 ‹¯¢™zäÖ¯à–1ÞΔ#d‹>û,ò¬‹]•žf6pAù?ðÿ8;웣ˆôlÞÊsºs5w«Ý RÇóeâÓ[ïƒ×c}ûü©×¯Y\¼†hí§>*|êû‰àÚkŸÿOê ã¨Oðj1‚k®}bTüÛyl•öƒïß®óqÓV*S¡áÊ¿1€ÈÞ‡µ§Q 6 ÛC† Ðê?8²pÄõ·¼}tŒ>õúQq¥¦ã”ìlmEñ$©Ó«ú¶b7œ‡-(uÔ†¤$î8‰tø‡á¶Þ÷ÄðkŸ´ø#ñåðÁã/EŽþ—¿AYpšûp®ñÓâSŸÃ×­Ãñ;šì’—ŠDoùGñ©OÑë)qWª¥Œ…–/¤¨N¦I~8^k˜K©K»:Z:àŒvÕ{sÕ/¿“¿1>üžÃÖ=âï{s&xˆ+öiò}êæâ”ÞT!îù ¾FÅŠïÉl߸–íh}ñ1ñVý"0¾œIÒ¶aƒˆ®9H‰€œ. ­,œévЧ[q½•À %ì™ÿ϶ѭåB ·\/¾ü䈸#©JìSRªG< ªvàÀ=‘±Î!·04~¤v°²íÀyg-[A‹Øˆ/þAx½02|õå2_·!Ë»ïv‰\齃ÿÈ ¸ºöiñá{ñ&çÀ!„ç÷kÏ"eÇÜBÀÿàÿó3`½­X²9‚¼ÈIËÍ£òÞg0©Ü÷„x÷½¸Î;‹e‚ùœºâ-:§ŽVEƒÿûzñËy–T¸…},®o¸>²{z‰¦|¨×eu`46oÐ R²f…´mFpVÑœúà+èþY÷|ÞÑt‹ÒUà4SVXCY(ždÏP}u©\,À[Zâ=¥:KŽàÓŸ¬þçè¶ÇÀ×/ŒUðLzÝõù¿oýܧ>Gÿˆ ¹¤<[&¸\Õ߈ J=ÿã'ÂêÇ,þ»¹€ðà1nO«vìIûL’½ú¦þ~ sÆl½oxj9 žÀT‡1ø ßè `Y lc±@å~¤Cþ0°_mô²–{ ¿^¸Hqë|‡ÞëgeÀ†y@UÕA@`ƒz €À-ˆ-`ļ•&°äøÿöµ<É[C•«¢~’I1g…3O§ÀÂ2’É—âCõÛUy¹Px°Îg.»«!bˆoc´àþ¯Èk—É|{¸@ByŸx·¾õö­æµHàîèH|œ?­yr‘Ý:ÅÚ³× wU†Úø ºÿŸ÷ªv‡Ó‹¾;ÊÖX+0=„Àí.÷¦¼ãåxKmtL šZ ÚÒ¸¼žÄ!Sòœì~¢@!8ÌÜ¥#çOwÙùžw%K:}õj`ž¶Ië `ƒXÈiƒdÁP `6QèÉlÓ·‡†õÀ×ñÕÂ60G=©lxmÞìÕR1…±‹Ü]Áõ<¦ôZÇ|·ì­Éfý'+·éäFv/~ÂÀ <Àäöñ«ì̬ƒCÖO‹èþÉ<V–ä>aÐÕð—ºk…×­à švò±¹î Xüvs:c= ¥ŸNuT’_C Êu7?÷ËÛ™™£Å—OØM¾Âã7Ér` ` ‘c¥\8æ¯0Á¯|%~è7þáØ7|jì)ã"?%v-ÙÕ´a¡ŽS-¯Ç–Õ4Ÿ”vž P“€>æƒ`ÖCÒY€tÿÁ ]õ™±—/œäŽJÔ~y 9N†·ÞP ?ãryûÒŠé=ÉJ⎄næcïö =â ~iA?ÿàoÄ«/ø±X`v¼aÛîÛo¿éö›nt×—ðÿï‰wò ·7 ýí`g)ÉêØê-æ‰ €,ÿÇȃjìhš5Œ# ©9~Ðu;öØhq_ÀØ.OoYYY/ûõö‚ÂMõ–••WVì.¨Ü⣿£×M¿;¸¹„xì°¯4¯sÛxa+uš5fγ)íŽsfmz$~Š<ˆÚcMßî“ ÷ã"Ÿáµ»#ÜB^"@¹®Ð=c;´ÞÒ›è]Ðoj;§L•s\oŒ‹ï)ò¥^2î»´×U‘ô×/éÇù;‹å®ÝO}JGŸûœ¸Ùr³+j±X¶X* ¾õSŸgÐâŒñ½>ùc‚ÝÿƒMûrI5¥¿ÿûQ7ýÁñ[®f¤ZD=QÆ‹¢PÖ‹q6ÿ/ÓE¡lŠÇà?1ÁÑavé‡\®h´h¥>õÔˆ¯Q ÄUÇ&¸[P"0p.1`!@ž™.Ò6߯@ÈÐÿ5’oƒQàªÈÆIÞ0Ö£¯ÊȈámÜ#îZ˜„+ˆM/Žg¿ƒajˆ õMUŒ +8þóàc_¿<àoÅû Üׇã¸ö ~ÁK¼» CO‹QþÂW´Äì‰ïPrmüÇj)ÿGäAA/ÎlÐÅ­aAÕnwõo‚?ÅŸ.î ÙËóCüG¼öÆGŠ`x³N']UU4Ï^_qÕú‹)Fz&Àq.1 òØôš €õ. ð¸¢´xX€ùÔ ̆(š=qº@ºúp·ØùQ÷ƒY70Œ1ýZ<‚¿ýD Àk#àHEá8«âOÀ§ÄÍâîÍÃEðÔ¶÷”Ú7y¾-Pt±çÏÿ¡ÝLzÁw›ä$jÜ|¹ËM½IMÜ\õËŸâqÞSX®ñtü£ŽŽ¹Süœ¾Gè?}eW}ì9ºøçJ¬Ô­G?Œ_¼˜5Âæ l7c#6"y϶_%À á_XO$b?‰×ÃÃÿ3r,fŠ'ùB¤ëÉ¢Àn›.)õ|ÏeÂËøóAì ‡p/Àã ü[äË—ËÀhÜýörõƒØ>[@×ãzpwýµõBÑ\7É*'×>èø+˜o™v`ݦØÀ ÜvÐÕ€•pû»~ûäýš‚·OLޝr«åÆß'&'Ë–ü/ë1éO§ @/ÌžÝe`Í+±®–WYÀO;AgçX*ÐÆò”Efò>?ðUñºÂÕDF¸\dïÄÂŽR,5ví·ªßÝÇᕯr§á1ÀÜXù~â`Äð[ÜßÅã¼ùw,_@ #€[‡7o—Ž㠥@<ü+‰µr~”>¢Èðÿ`7QÂæ€ª6aisá4 þÿÖªªº} Îô’x}1ŒL,púÃÇÃZå้‰íìA:Êw`,£ñ磖ûïzçþh4ú|)Øí#FÊüz `“WÀ*´è¶žÓ P̘M)Ö2’a_×Ì€6ìe¹ SÌ<0ZŠîþ"§pxÑœ}·€†ÿ‘#«PÞ ¿è“õ<ß×04T„'<ÈÀç?¸\@ÏÜG9€žJOÓÚ÷Èîk ÒÙ9¾üLÞª­ŽrÏo; Áü\ßGgôüŸNþ’®Ëäi^~Ú@æn58?yȵ¯6”e0¹¿ûF~÷ì…µÃؘkÉÊâ*Aäÿæ¶ïdàÇÃ%9€ž“öÀº¯ ÀHX;´õI\¿0[Ï8²Tû7 ¨ÿ1“E€5çM‚’=ãW¦æé"“‘ȵxŽHR áN ÈÌLQ°QJÛÖ”Ù™%9€Ñ£ŸlàÓ¥9€Gž³ ‚òù¾¡.ñS¸Uä†\ý'ß;ù“Íës€‡Ëxþ¸-¹q;]©þc€’ÿà}µl­¥>ƒ%“ù檟ß"'“§âÛîÓwÇ\+þ o 2jGd‡•Òµb-€ZE”ÝÐÿ¯õ{6`š.Ôµ!Ú¾£XýlZ'ðXÜXщ C¼&M¶âs],æàqy1”k^³i£©m“€9£öÏöü?82o>3ó.«ìW)ÉkGñ$AŸ=§¤w•œäÑO‹—š(Ü‹Ñ Fæý‡Kª?ø„«ÃÛ>Ы‘8Nfpãem‹eûŒ*ÀçÄ ·ÛårkKrJpÇŸ*úÖ)¬sµsüö|༕€Vÿc¤ä¿M•5¥Ö¤.µGq -öù•ãfÌ»†© 6à°¸õÔ%lmLËl 9Õã)9Ójš‘UäÞÀ¯ŒŠû9š\ÓTy©û™‚™ºU|îX”ר é:  Súì˜ØómÔˆŸœ!`õÒj¡[ÔùŸ.ߦ¼ÙÊ’¦­ŠÅ“Œ0î@|-½O÷Ñ6ű«òÎ4u0Z M6 5f?$Õ¨·ŠU@„~>±]&ðÙ£‘—Þ=ðî‹]{1Åîö¦T€½Vï  n‡ÆÇ‡©àÙ=â¨õØØ¯ñ¼ß·ø1ù¿¼µ×ಲ[¿ÍǘSomƒ«ŸS²-Ym/Á·ÞwßÃc\6|– tm(±ÀHế&Žb…ýÚ'âÃßv윈áunÓyõp”ÿZ¬Ç!++vTËÁ@á"K1@>“KjJ‡c] Ô­8Àmù9½öÏh@ þ+uàûe•hwÄǮ˹~ØCá<‡D€¶î‘äÝbE3i»i}vÄœiӜӒª~[±âîø¡øòôã|ðÁ #"mjsñ\yƒ0øŒÞð)QŒ¢þ»bAyIPèxÂlk§±6®lÖ.m\ ¨3ü¿Í.%Y#–I²'4\ðQl«3éL€šlï—v}O‹]Krn>_‡ì{É} yÛuŒ,À‘×ÄG©`¸íývÒód¤Èð­ºþW|¡ªª L€æ ù2%`ß¼Nè0!W…y@C sŠç·´ÄëUƒa þɱjU€Ê'÷‹‡ø€dgŠ1ãÍ48|Ãж—ŽÆÿ–< ‚`êlyg‚óã,fÓ R[iô<0"žª»\€W·½òÊáˆØÅq$ȵÚ%FÅÝOßýônqq±‚šÍ2?$ÄÅÝ{ÅA¡þ§³Š–”WyN> f¯9ÝÿÏãÃc”¾¿W§6¢pæ»q[®Ë5èŸI]s‡Ÿ8<*>öß°Éêœ&)•UHûU¤€ù´8¶çѧGÅøK˜šw¾A6 æ¿^}úî=Ãâ×¼Q¬ó)¬÷¹Xjò¶#ŠRBRڽŞÖã‚°¾›ÙTZƨÿ£ÇÀ‚†ú÷NUîñSŠ]4ÒÃs1Ä÷¶“Ûô“¬èÄî³\I`Æ€\&øIåéž¹ŽàÛW¢ðΗ^9<,>2$¸£–h´Ÿøí&ŸÁf:ì´DÝ‚«ßå®Î-+.°z'àfWÃ¯ÃØ˜3AÙÔ†•#ÿgn”™û§h:×”<0érKXÖG" ASk]pIqGãâèÝØùåV»ªzm9ÚêW8;ÀRò M´Ÿ¢‘ý6óÆýy[·ZòÉiŠFp‰@ª­úåmóYV\®ƒßÿ¿v¿ö·,>‡gnÈ]¸ ‚ˆB“à‘[Í[î f|³¥Æš1ûÐkŒÐºŸÊÈæÀÌÒªnpˆËÃ.{÷µªz梵t:À4¤° ‹O\zUû8.3òÿ[ ÍÚý5j ÈIÓñ$‡»N) i¹“Ô(<¼M†#‹‚p´ùà›fÒ:°ÚÕ9!€#id‡ƒ>r,Ž=}jIõf.—€Óü“SEÉ8à/Kth l€µ“ÿÕ‰g9Ú„Uq†”ä Uèÿ~®2Ñ+}í¸ð—ãca/ÚáàzP³Àü]ÉÜ”ïP4»õMžƒUýeý®Û­-ÄŽ9Z~o!|µ}Û< 7U[Ô~"ãžBí7Ô?ŸÿFZþóïl:d*î‰s6O¢¹úùó7™––ù:P|B±ïÒŠ´B8 ´€©‚da"NšN^‡‘mîPZôÀÆž¹Îœö0õÇñeÿ¯[“éñ ÷$2úzÚWÛq° L@÷ûÞßwrÊ^4`¬éBþjÑ£4Q½ÁÏÈÃq8lÒ“J­ž’Ô_ä¯Èë·ß~Ñ~bIE­_e&à ®ÿçýJjyy[Vy,£-H¥¸çŸç¸¡¡!—«>ËvZ´7oËx¸6snþÏŒYWÙ¨ÅÔô4zMHó&«ªnüFP•·ëà>xÇß_Mºèí_†rcâ~ ìA5©&“¾YÓ² üþ‘¯ÖÜHL€p´­ '’0áÞ¡çžãA¾áµ¤›€C Ä‘€2Œ%, ã2ðÃIɘ˜f=èÿñ‰å šÖå`Z>©(5FÿŸ¯§ ä/RÄdCV¸-G|û³óÝ'T°Ø—ˆð+É䉤ֹã{Ñ(’kt€,dœi¹Pd"\BnùÂO¸;äîeY¶_FJ0‡=éÅ5Ë .ÒÒM—Má²:Eó[Û@OŒAGÊqÒÒLŸ{§¹]iªEÊ#ðsóÖ\—¶Ã6ózÿ?@¨I5ý[°õbí¤B´3Ö37ºÜÛÁ­. ºIR´âÆ7s8Ë@€£|¶¥yÖ‹6?g.V°•ê&KTZ.~Ÿ#­µÇ,[܃³±g Žs°¡™ø_0'èœ,±!ÅoŒZ‘Ý·ˆ3gÛaÊêh‡€h)Àÿ'jLûº"g2ª?2zû¶#I™ÊI5xœ8[+›M'W*)@F6š7J‚@+rÒ†¯È*…'\Ö ˆ#µ®Á‘¿B¯NÜ M"ËQ à⸟DݯLWÃ_cY¡õßåâ4βEÑm‚ P v™65OöUU¹)'˜,˜€/Ý\ÝÔÁ.Òú*`Ü7»õ"^pÅЧtñdÉäV4“ÃJÜØþ?Q;ÀO-£„fq*4,K…< dz™eÓ ðÝ)d|²¸ˆB!€ … €éI sÜÉóÚRŠvsî-ž8°Ùzù €Ó®BÏc•çÇÀl1|â”™·Ñ€ïß÷¶Dbˆ§«®wWƒÈ'ÌÕˆBHF½6´„2ÔÿÃÑüÏ mî1Slsæ9ªªƒ@Mpº](ËÛƒ ü߀€ ¥Ôq´7ñÌ’ïWZš­V´üöR†o/a‚Á«xñþ-. ·7ßæ@p‰{Âàd›•¶¾Hݡբ˜U+,„°N¿Âá4àÎ C€µ]Ñ:t6A\ôðÔ1V´¬ß&µ4­å'áÆÄE[Ë3° ©J ½£†`g¾P XôЧe(Y¸Âr‡G'ÁV}WÊ2õÊ<£a¢Þ‚¤p| ,¡Þqª¿«ß̓à–x¡ïõ°´8Ÿ"ØAŒÉ†XþŠ®àµsy[)˜”(1&¯àí‚PÁ‚‹ˆ€¼eKô{þXó5ðà¼u4Â7šZ­>­¡æ’îpkA=~¤CÝu¯ÈÓ¾‡àÇ’SÓVìifž«:ö»‡Ör,Ϙ­¥Âœú‚4ÀšÍÌÿC+á*¯> „™:p˜Ú q2˼?6*—ä3`£p U[•RŒÅŒÆ£òs晤±؞˜‹ ÒÍ2Œ™a2”u—¤%› [¢Óã€W|¸¾´v9?>‡sŒÄþ5 Ú¾Jœçå}BuÞ‘åÂy°B(€Ã•¬0£ã{À6§¡ÿ'"ÎYˆ™ŠýÔŒè] î…U»ÝÕÏi¡õ‚ µšÔ³¹p#”²¾¿ÉyfÙÔ‚³æœª“A;;„ISávÀÞd}nM@lû!vIõtŸàœÜ”Àl-Xæ‚ qšð¶+©‚%Á•?í8 èÔR Oõžx2hò +:ø'ýGƒÆIÉ´ Å} “"eˆN•L‡LáðSw1ã‘F§ Á³¿ @ ÆZ f—Óöó—Ó/÷ËTÓI¹Ozk=špèå¦Yb© ðŸ?ƒøŸ£‚€eË8R]TÃst d;â±áSöš­MSÞxxé?¸u̯ì%—-{Ó´'j|eQù5oÆÀ?ìýÿ¾Q̨¬ðGSøÜ~?‡å[ú—uÎuS"w€ð!|Ö’§ªê½F4ê@  8ö»M¿Æ‹Th!‹GN≷J€¨'À$ãÚ[Šÿóó˜üÿWų8¨C‚0pí‹( `ÐV³7«êŸ7­¬«#Ô¡ê2 P@šg!ØX>ÖÖj@€ ÁñNäc G(/¹Y†V³Ä+š¼p¶•K TkÝŠ} ¨zßæùIG—DIÔò5/¨7òqüî¬PV‰ª¬7QoÖ ¯­[.¡š·ÅD[¾Î.­L;[i0‰Ö ”’õû%XËs3 ümmàÿ5{i_­ë³~D ŠVÁŠ{¡)ö/™ ´éÈèx4:”4Ò±ò‹÷»T“å‚c èTíGzëÝdoÂB­å1  wiF›jÿÍmƒn§9«4›J¢© ¸󈙲‚ú›‰ºXÑZš‚+zŸ)BSe¤&h8m|/E[" P§™ Qï! J´õÑ*.n 2ÉÁéÙi>‘—Iò‚²y„ƒ½\|, Y“å3m aï…¯~ÕnWt‹¥^^îúÌ‹€êk”HÂx~ºÎi^knaô 3¶<Ú× @Þ$[½SW“³«ÄîÑ¡tà,À|¾<µwࡃQÃÿ;8ÉMêo®3ÙéçÊu¾4µâÁ÷5ı»îU|’Ýêë–W«ªª17tº `úÉTàE.¬¢‘¦‡¢¶H DDÕ?v߬âÁI` <á“ØÐnÏÙæóŽPQýóiþc¡CÇI²×O±a;"²k3–Ü‚3œÚê@á•‹kïÀJÖ‚—Xpã N¹2@Í‹«©ÙÞ\`{ ´Û&¢ b³WÆ{Á:•ïs&ÐèŸEbøÒv@[n5)8 æº:]…cŽ–ªjþ&'FêŽo;t¹zÍÇ…Á©d°%_šõ愦0 €0æ ©¿€¤ó䌂ýí–茜¶@þ§÷o¹‘L[ˆÕ) 檓˜ºµ6"GÐåõ™0Ò·± ÝÜ-œÒ²†@·Í©=À Ï UÌÍ1]ý±×iÿö±éˆ òûu“²vp2XdÍòx0k*Ãzƒo”, F¿\¶S6p¦nU¾rI›š¶‚ªkܽ‚NƒÚß„(@ÀÊÏëenK4êvãŽ`—à!ˆßªó¿ ÐP†Ð)Ȳö›¯‰Ö{¦(kB!¢iÖjm%u¦ ß6%këu N³)Zõópþ!·ÿr¸v/0@Ý>i•âþi03ˆät ÎyúÊY¾q±0Á’iªªâ»}ùy»ôv¯Þ --eâ¼€«=Ð 9…]K@ÀâeÐË1 ‘ð®ÈülšDs€‘|"#é‘â=g8[Tÿ¼IUÏZ@ÕJ·ü¹rФÚ}3”äHK˜2iîf'³ z!äc^žEYPtrS:³x’IÌeCñ€š†Õ´í÷`2æ|fàmžŽ‹õœÎ ñi¢¹©"ËÇ1eña9¦×峨k³Êx·^«c/ÝQëÇ@^Ó²ŒèªC9)ÁÍwpý®¹ÜgÂÕOF@¾sþ¸Q3ßv‹B XsIžŠa¯1±)jiÐÛw†ò|¸sgÁ˜Öª)h£JÞ8V>Á/…tbÀ0•ZKh¢ÿÊÒgçˆUy“pGŽÙÇÊ’Š/ñ¦1K:fE_J§ÔÄûyœæ9ÿ ¶€šAOf hÀ&å¤LüÖÞV)hK_¹$Ĺy¯´‚ N‚‡ãáŸëX¢çÿ˘À† NŒ€eKÔåÏ|0À˜¹Þ¼[wÁ{KòPÝ•,Û†‚Ž{Úêp`ë.ÚÖhö,á\çº9Ü7²¯_×'€5päqù»„—ƺœi†”A¦Õ´îø‰Htc ’MÞ`Iõ2t½" ²ißM_å–½¦\ói,kžp‡½L„1 Ú°z“’½†ÂWB6"÷Q²Ä=åDB7í]ýçÏöÿyjuO&±RÆ+é:ˆëêˆ$x•,0xŽùñ–í˜þF Oƒ,4„4l+O1!£<”m—؈-ÍŒt/€Êleùò²†Êeàç1WÊ,€Â»'{Ѧ!˜EÞ8)µn(ôß3gÂãC´gXB²Åßä1èwšUÂ=x‚Ëýúÿ‡ÌË4`€^ñS¦šX¾Í„º¤„×Í¨ÓæB €²‡šÉ’âD)ýÜÿü̶X€þÜÇkÌÕõ ÀóVÐ-Iêl†¦Rø·ðlBa¬ØÊ¢ó§gŽßRMê/ÖB…­þ`ϼd¯ÄZƒšafôštlÖ.w”ó|" úPe­Y14ð?8N i•TÎ1óô•KäÀ7ìšÜB/x¾!w[>s;*>/@0P5€þŸÀÃ,[n¯§| €ìàêÄ ¶Þ{ë0EŽ¢ î›…¿)©®¹}(!oxî²Ä¹)­úåâCîC¤ÿþÁ›©â`ßkòRLâ7çlÝT5`]ú€Îlœ0‘,¼UU59M铽1Áp€gmÓM_å––—%ꦀ—ˆ†ÃIiUß-=§$L”³@šþµ¼îýážZ Ǧž»€²ŽzÉÔåÀ7uc&PÑ!€Üáaì¢ ¼xa̬àè]µGsm±ÀÕB¨¤EFrÝåE²äËû’R#Z€ía,Ïj|¹ùMž¶÷™3¨ó)¶´¶wmn›¾vš ,I«%ûÿÑh{¬¹é´šÒo³S_;DAJJðãÜ®ÛÉÿ£À`SP‡ÓÇXјïG¨ŽÓÅåÒÆ@Êdlr¡8r9¾×Ÿ\Â!šÜ ¢‘Z˜¥ R‡fg»¿ä³IAGnvšO¬€Q)V+Á¸Ëü«¼òZ¿8‰LÑè¡E+¶Àår÷»]–ŸOþŒÀ¬ÎXøƒ·9Á€˜ÍŠËü’Ìi«'‰(1 1&¸U9i¸´6ªÈ1mn—û!RÜúëó‘ïbO/K+*Kùv°þ¾p¡uÃ|6øQ•¾ Ÿ[ÁD>€‡°(v¤UoG{£œlÀÄÜ·nÂEG.n9I›œ  Cˆß6 ÇŒ€‚¬ÅCgù§^RÿD‹Z¨p™6Ò6<'°Êólèe PC ÊöŸH¡ëƒs±fʑҖ¹Š£‰ó¤©Ú!./fB#–´¢àäŽDªr¯,çWñŠbe½j€€*ŸÚ›j ‡·C,S¾³;x†Ëâ_ !-<¿t݇p÷³ FâžBÚ÷ü,×®k£-½ô«½{à 7}¨ÿ ¨I9­) ÏÇBê¼áýYìoŸÕdS döôvË!ç´šnÕÉ`ÊBћͮâ\Cl¢¬WÏÌo‡ˆ+ëÿá”)Ÿ,á7hi³ÐXDó•2¬AdºÕ‡¹ApóÚ„0äŠ~¯\š€C·Ó—«_ÚË­–×cw`uBC 7 ë;‘”õ¥Þª=˜¦ëÐ:0ó•V~ ViIùÉ`ã]Uw\s0zð!òþrÚ0¡ ;8?ø=  M²°ˆk}${®qFÅ 0@1 À‘¶³’œ:­›€y=?|ºwòwÔÔk ’|«©Ô{•ðÌSaÔp¼ØÃ:o —õÞ{'PSÄ©FìoRgœáÿéöØM`O`XN;ÀàË)Ž X”îYLËZ¥çÞsðGZÓ0‡ “ã¦@ÄZºÉð%½‹—@ 6ÓdÊqjOÏ×bøˆúŸÇêúIü%ÚÞ?)©ÁYó¹ùü‡Ä‚ÅûÛÀ<ƒp‘@Áâ]Ì '**¦-ÈzĹXyr.LnZœÀjàÎ]û÷ïßQY)Ù!À/eàŠNHp¯ðuÂ|·Qì¿0žH¨rŠ…'á¢þç½+%\¸4 Ââ ±<À,ç÷ÕXQ‡Åì>ÓN¤¿zwÏ_l­¬°ÿO ×az¹w£øÀ°9íW. € ùóäÁ|[yÿæÍ=Cමe.Àÿ_ÞüH'mŒr ø©I´{·^ÿÊþ‡¥:v ˜ÏÔÉ ªjŠÙ€Ô»1šï°ŸöoÞó×?¯ºù ëàCìÃóGÀÏê_¬ÎïCýGõ'¥Â’ò ØB ²lÄn³]5Mcᮕ!+ߌÄF6N÷!Ý9ö |/xxÏþ]mwÀ­C²:À&ÞSû÷÷<,‘,X ©¿:ɘ6É¥´•geÈb—MZÎQ«É*ÏuF-Cð¦Wqô{«_Û¿ÿkålôbP¨ó–cnP®€ [|v\^0@OŒã ìµ£¢8,Š‘þ!¡ïEfO¹²9¸Ö]Øq-ŠÛvT²Î/øõfÙ Ð_×âcùžFúÎZÿ8T~«±~Ug>Ü8Õ5&‰ñžï1ý·Î`d=ÍÖÅ¢ú—fþK<üï’¸ Àm ez¿ž(fôŸ[´UÆ¿ƒ¶vrßvžûëÝx¯ñmAø¡M6»Œý]vêíã]Zeb'eþ¹U*YxRªÿ j¥1ÚÇO-§”ìZÇÎr‹OS<Í©ù1£‚câ˜8WQ¶–U|&Mˆˆ,€ãÃîKÃ| ^ 6ª]“7ƒ¥œ¼Šda¬Ç=xD+`q]ËØLç3ÖÃÑa’ ¨®ïw¹q¾¾Ó_ª×瘥œµ ŽWc¤é)fØÁÃ1ÁOÚu|3g—Ò 80÷›š|8‚=-¯”Ê.Tµ“XpVPȘƒhfðɲ#Ó &`¥»†à€W–Ép Œ¬(XÇà^+vPÒâälMЉ?{Â#ØU©$fiA¼¾üt\Üuô¿‰Òxš_*¾ØrÝÖ¾ù¶ŽSñðK7ÜpψØÓ×fTü4Ê*æKÀÿºÌ¿'©´ÌùØRýÏϪë—JLðå!ˆ:0J˜0Ï)-ó‹AUÉŠè¥í Ûá$#wçŽ÷—ÁÏw`'æ‚|ˆà…½WÌ`‹à’ÝançûãâžGŸ½îÑ£âæŸœn”©‘ ü¿¥‚æo}JìRÃV7nW\Å·ï{–’r71z«3¸ÛËÜ Ç ÷…•)3xMi*ãcfÇ,Š£[ï£O;º˜ñpaÛI%;×®¥fä[‹eÅ+Ñ „Ù3¤*iFnˆGñ¡?{ݨ¸+Ÿ&iƒèÿ ®[qK ‡•âNì¬ÙÛŸÝ#î?‘¤±o«Ù´Âì¦Ù Ñ,®÷¢Œ»G{¿ø›‘ýúÁ߈]'dR~ˆúÁó·:éxçQýAÎN‰ÒVu\FaÀú<Ào Ј÷Á@@/gZ»UIOúÒÈÕ!¯Lmñ¢€çÄm/ Ÿßã/Œ KIUÓ‹jdì¥Dè¹G `Ôý  <Üœéü›:9¶S„µM»+Dÿög,.9|DQÞë_yüƒøàñWÄgpUoõšëy ¼cÕ“A°†G’N«áËŒXH¸ýÄË¢A ø„øò‰´œ´ÛeŸ#ËU _§ïxTÜOÑöRöÖ\©ÄÎx\qæHË¥ŸïÈ*³àçÔ‡ÅW zÔ‘¹Õ@›¡ÂÀFÞß§SôLÀ´Š4…wZú–0kkÎúX`y&áv7xê²imnGã‘û "Bñáò²=Pç]N.Iz¾ûžFŠ–œ0W‚æsõß)—Ôô,@ùÜŠ¢H>|g–˜à±{Öb¸¤tFá* î/°;_ÿ†²°V§(!džöæpÈò•KøØŒZ£$¯Tî*Ah´àýÞé!*Æv¤4^Z8Í }ì©AW1&%“3&$f¶ÉW-ck­,ÛÓ”r_ïDêK´&žJbþ• ÷ï®Ùn®&gÒz5 3]ŠŒ,€­(!€ÌÕàd( sN/*¬í›@P1ö‚ÎåsCüåKËö4Ô.ñÆ›uà†Häd¨HâcÒS&êGè?¦± ?gqdà ¨÷Ä5–(…€#0XÄïþNµ0èìݲEÐ åÑ8ÈeåîËŒX€* ü*ËÑî4‘N¦ÚæVvÄG ¬ÀG_C~f.ä„X?²ûYã¡Æw|±¬ÖyÛmN§?•hs_MÜBÛmM œöþ¶HŠø±³£É ¦"hM,4}”÷/d0T f0ûJë(d¢ZÀ'ë}F°¾ ‡2í­yóÛw‰Oøg‡»Ô–æM/Þ¶iÎÿ¯»Š¼´÷ ÷ÀE.êÅ›®ÿ¥=ßêÌY»å4ç¿Hi9“w¬ïëpÿ0òZ“â1‡m +Má|ñßWòà½|Ë“ñm;ê»/}mžPGk­¢X?Úûªåa À&Kù’É  ìï`°T‚À-Ÿ¦õ0@59q!Ö=Æ6‚­£qס»:tè®»þ}³Xøò֑׿ìó#ëý?‚‘sö ¾ÜzDÑ$RàݸHÝ‹c¤N @cò”øDþ÷飧Á¤%àÿ%c:!€|à &àûñ–m3I»¾ Qý£Ã›-Æ«”ø©Š(}íüúÑqôuñ®½±ò¾8.¦ÿÎþŠû¯övóœ¨oÿmdO«µ$“à?)©Ý! b&€2šÛ-b˜qG0!ë)øŽ®bEÀgg´B¨ÃÇÅß À+âÏï¸ÿøn-þr‘Ðì ÈžãÿÙUL[‘d¿íà/°Õü}€òÉ÷ºÆ tì/Œìù;÷›,ÇGò­dò8A!{/©ð¢À€~G¹hž¥½Æë‘Ò½¢›ÌñU@}d°Àæfÿq EÚszáï`/ŠüèÃ?$ì\ á€í#½ÿzPG­¿)Y˜ ´º |-T6Ȱ’,@º5ÿ·blÝ/Èwtó˜¡þ[·ëpÀâúV ÀhÜÙñ’W†¥Ãœ§a'@€Ù4€"ïýáøŽÊ¶YeÁ6r‰„ò­RúŠu ¥³2Tø?"Ux¸Ã›¿°…½¾°¹T|áØ–cìëñxáí× IñÏ·Ü¡k rßþÇÇ·­Ûâ€Þ?y^ï_̃ûÖc£`‚ÈŸ@Ý9|å­Tì È;¦™,Àø­øÒtÑ<¿åØ1üîiÁ}ÃKc?4ž¹Dy“üqú|(²¯N¢~^â¤5wcí´óf‹KÓÀ2ŒT :o:f‘ž[Åu4h ¼öK™¾(™¦éú €±=ZpÀô7qZY]U*ÿËpQÓ+Û×¶o_/™ñÂÆ0° ú^ %Áþð:ýzuß{£LS¯EŒã<ðÊð©BcÊd•¦êú›ýx±÷M)Šç‹Xг¹U, ½A·ùL1ÀåƒçäÓÎÔ¥™áü)…LÓîùÖ÷¯ùþ·þé[Õ“}=Efú­c?0Ò ´÷âlýÇ¥GçÂ3€f’ µâ4D Vv8²ã¹ûÕ2òÞ+¤ØÀñCü“]¥ ‡+¿æšz—[à‡ºŒ4Ñu×=*~-˜J¼Ñ¶SÒ<¯×¾>—´Ð«µ¯×¾Ú¡IšÖñzHË6þÅØ Fà·!f0ö—?Îàƒ¬!.cSPi-@/äV‚̘ÎÅSf_7æœ^{0½8|§¿óè5øúÖ5Õ {##ŘUßÖ0Ï*óïÿI¥V¼3ð! `ocs}ñ–šª£^ûŸw¿P@ñ®¡KðQÀt)uá‹B¬ u:¹­¸^k¸BQ´ÄÊL«]Nv ?[…®28²Á¦ºD`P_cØzVZl¾” äÈ{—Òeÿ(Þ£Cªw·!ù=d¾ZE;’þxï_˜C®Óµ’aDz, ýQM¿. p@pƒµ¯؃rjG|Ä` B$x7_[VŽizVØzí}w‹?. Ίÿó%CIgeÞlÂõ—iÇf:ývÌ(5–ñœdû𵈱èz±«²iVQLfìÍå ªW®ësŠv¢°öºgwÇÁˆŸÖ$¸ÔŽÒ½ý|âùWqˆ5µ«˜þ.ØöF€>d7ÁW>¤§g‡Ciœ‡ßfzÿ³øgFà‹ä÷zæÿ‚zßœD«“Ä0 ¤ gàóÍd6̨dH^_ë5™¶Ë©[F"xaìË,[` ÊpÙý[Ãæ×°R´é$¶UJút¦Í!œ 'ÂBmö3×* Á?+®ìÿÞ›²+hu4€fÔéÌåEHMÜŠá_ðv ᶾ궓-´–„*¿ÿ°Ñ>•„vÇ;‰ñ®IQn©Ü?J×üåú ©¡ -ÏEN­ B<¶Lß-~’ì`d|³ zÛ<š1 c€œjãBLäÞ)AØ p®‡6›ädbç{Ä»YpëØîïæÍ¯—ÑØPyÙ—ñë×R¡îµEÝ+"ãõ9þ‡È7Bgj1P½MJ Fp@HQ³üÅÇ­#âŽJ$J¨Áås¬C,ÛLø¨ñį´4Jðéz]¯‡cÌ@ *·Ë€.—»Ïšo³šfT ÁGü€¶}¨rʨ5èGAœAâL7( U ÿ÷ðàÿ1|ÕºÌÝ‹{Í \5RÄ, `M'm/‚0ÛK+Ò%~©ó ÞFˆ°W²Ze§ø2A€>xYüvÞ ôþóîÈ ï² È"€6sv!øŸµ®L×±Ž~€y«T „£´OZ,åÁ¥.‘-}ü¥á ¡ïû–cn;Ö('†ÀŒ '–/!$¼8@u€L7¸³À~1‚«®žØ-îÿ×rNŸÖR{{ÄÝpÄ{[ P_³OýAŽŠ]åN=Cê(­ßg SmŒ¥{W|ì8έ‡Å«æ)hOOƒ÷»õG-× =È!€›,‡^ÄO—W¢%`cŸQWðÉ.qÏ=´ŠK|¤´Ÿ/ÿ=N ]%¾–¾¾ûïu§ˆi˜sõ;(6ÊVöñe †~·(-‹ØÂ€³dª¬ð1³y{µm…~â½DÀ&QŠUtàSíWŒ€ÅX¹ÍxwŒ ?JËàÄ®lˆb¿8!Â,À­bç\o¯¸¬Ò~šu D24óŒ•YRMtÎÄð‰n–š‡x.2üÇÿÇÏð›a¶Á¨û_Œ,PJ'‰MAóÓгv©À€¬œžc_@2¸‚m?·$÷‹Û0%ÿÒ6±§ÚdG²Áé:Û«‡™À¾,~ùŒØçïÿß°°ÎN =`"el?Ô Ê—4—åæº4Á+¼ðÊØîo58ÄÀ³¨Ô5ݘ¾„,àÅ!€ü¬j‡Hu,é½»ââÑŠ11¾ëýÖü¾ÓøÄjúé¯ï#»0¤G@[:ÞÛ㻊ÃÏìåÑÔ©¥º$<º­¬9··3"ŽŽˆbH‚ k9)%›»(û–1ÉSœ2îÓ1À4âP Ý‘-Eg·ÒëõíÄ1èîw#ý?q èûõa„Å/‹Ã‘Q¸×W™_JcX|.þÇ`cWí€Hè’”°”\CF8œ;ëÝÎï}æ(|*œÃÃ)Å hmW$6Œ®#€´tå’‘ Ûš·ýxZÃðpÅ.E ÑDGMëB…(>õ”(Ž C˜Ð&ÀC!{;+àí»Eq[h0#¾ƒ ãÕÛõ)û‘Ô[½Lýµ·MÛ¶mL¼ê³%] vXñ:2…¹–€È§[?jg¡Ï+ÑæŠ×tï®11²mD~dHPä´wV7W?†;,>=¯›|ÄÊÕÿwn;à´—R šæ±cO G[xKôÆqž×`„ë,[\G¯°ÝÃhÐõÈr®û²€‰°(GÜ#¾Ôêþ®Èžë;ùy[üà?©û+*º&v;ƈD Z¥²««¢bÿ©à?¼ëÝ‹¦4U3õWˆK`WW¤âÓ¯/'M$ú-åº@£˜§²!Æ‚CÕR; ó¡Ñc?Zÿî³ @ívôôo† 6šþdÿHE×#<~¬ïxQöj:{*â]Z3ýÚ¼ÿß°`d&²ÈF–ÂUø½)´ÿé,¢Œ²üëû+â»´¤’mpÀ. ]I˜ë¿¢¨¸~z*9އ‡»çîνÈÎæ§5|'’Ä?Ò©èÚµç†x4n÷Š ÊBÏVk¯ànÈØÀyYq5,:f»À§ÊéÙÞA¦þÄ‘÷矾êª\]ôþ­—PýpP­ SùFÀÚsª÷8 €œj:ïtu¦–:Ñ‘¼Ë›û…´¿k¤k?‡$²ÛKXxWW¼¢§“Q_Ñ&à ò_°¡ª“eï Z€”`O íÛÑ$·ÅÅóZúTW<¾@µÐw× 7½`¤Ð|ˆÑ-„QÞÓåF˜Í ÒñÕ*Ú¯ROŽ{qÝå)4Z|y»VY¹w¯¢&“ŒAaµ`ná„'ßO6æß½ê(aµFfßq߬Âëœ&Aà+÷þ‘f{ÓáÄYl ûbt€mE¡ÁF••IS!ÎÍrìöuÃú^€}¨þ;3H[,§•{yB4‚ËUü)îß’V•“f*÷Ân¤ÿë'ÏjŒ1’%afÙÃ,ÄttHHÚø½ŸìMi~ù±.¤du—¯#€+:ÏØW¼ãôTÞä¹÷~{‹³«Ê*µþ÷õ OòCCOî?†ÌÁ™€~Dx•O |¥RûëIAh@VönZß\Q  öw“,P/¹R»®ëïâÀi¢er…<eÀ˜î«ªºæçM¡ÏÏ!ñlK®ƒhFí¹îKï§*‰ö‚æÔôÓðT12ò^€9ƒ'¾ÿÏGT¶  °#-{ïCµá!ˆZ„ð´zBùÂ1a¬èAË·±éi-»V@­²”×’ºH€ ™ÄâS¦ «Æs²Fü.ݪ¼¬Òø4°‡#ËMM«`N#a.„R6íXRÌMð„Cfs9|Jbо+‘Uü\ÌŠL¯˜Âõ֔#3‡¨1Δ=ŽÛ) 7ßlð¥÷¸\Ú˜÷gÖ»æ¤ÂÅXbk<‹”“…Ü^BÛ~Ð…3=Mäsë?fNÎãÖð¨àhôé!d“˜™;ë°Íƒ.ž±hjz.¡I2Kbÿ­—6úzA€›UÀjš±n‰ýÒ 39<²á>PÄ4`éra-Ð^. Éí¤àægÞõ¢UnÌ[cº+Hø‘!Ý|¡ëïÒiPX9@69õ~€Ÿ"pÈòN0v¹uc½¬!õŸ›'ô‘dÈ4@7Y º\S´¡(1£ïÔ¦‹1U­ûá uӪݺX" àà¢Õ.+ǪÌE$ü<7Ž$ä°‚ÅP»gå ãr#€¤b1cùGQQùW¦Ëù Ô.ôZüÛÛÑ¿]NüÀDÏ{h"PSʪ…!ˆš·ü3ÏÇtuö“Áÿ z8Æs Z{HIìäc³&0&â.2(VÞŒCà’ds›X¼ÿù¡uK*‹Y€×·Þ„ûõÞrÚ}JdG² "l@‡Y%û†ÛµÏžRÚ͸ 8Ó´Aüg¶,76›Di‡NIh+’‹µÇx’|±ÞÅ¥(úDfeÁ«³àŠŽ`@këÁ²åZ² ä®Às"ÔüK "Wpß*ÏP€«¼AA%ä·t©=Û¸g½mÒ@‚¡f\‡Ê°‘ÑõWóÿ¯õ‰ÊB˜XO B€ù \Vu¬w9½‘ƒÉ÷ŸbKŒÌui6ˆ˜Ä~Ò÷-@ €Å…°½ü×TẠúÿúB€ªç4$GÉÍѺ½düQ>‡€fªø§ørn ˜í€äÖK˜¾X€ó´ø=%+#˜q@Loõ±A¦ßçÛJð!£FäP›5ý¼Ð÷3»œ YM O™@rÿZx­ºßixS¸6ÆÇ&²J³_ñ¿…ÄŒjpQî¢#€:@ì Ȧ$“Þ|õüôþcCëG‘ô,€îý1—kÞÇrþão'ౄBš"iÚx}ÀE>äv§mØÔ´¡ÿ߸ ¨„øÐQ2;´U'ò™ƒ.ޱåÁ©‡¸£ð_HÿW®`À”SÍÚå$ˆþ”¹ Í™Jk–Ve…œ¿ Lé5¨Å5HÙ7îzbo°v#Ÿ ×Ö€$§ëÖª ¢Ð4ãj=¸˜ºÿÇd0ažóÀ^€ßšä©ªc ²=s^ïOßH?5M=âÉp2ÿjã ¸;õ@Ñú,Çñ›M’Ýcv‘‰Ê:†.pK ünÏ-Ðiñ«nË]æ€Ì«ÂÀ €.çǧX €!€<-$ 7.eþ!RœØd;äå,ÏÕ qæd@^YÀ¨õÃñ—7É*cà)À/Çxa°ÌánV²Ophh¯OSu½›¼?¼‚¯ƒþ7{¿3¡„BàX‚5­ta%»vÑ)ª¢5Dœ‘ÕûXà¶»Žõ%×MPc/À¯kY쿈ԣäû¹òß[3y[·¦tØÆ ®þŸ?£cGV©ÙÔﺈ\WäÜyô??½ò¡B€)Ljñqr9D"X~Â.áD €hL& ËMíJØ®GNÀq€ù+g¿ò›|ÌO; ÛòV4gª„®?9ÃÓ¢(Aˆad°J *°MÒÇ‘äðó†Á¤²MõºhË*‰†è]o“±SåŒÿ/¶P‘!ãb¿ëBiäHÄ27µÌè^Z xÞ­e˸Xˆ¢/äMª}F5]B/àE#€ÎgZ”&«¹¥€èÿÛçhÊì¾ë K–Ò3z¸>(RaÞ‚¸¡]@Ko½àê}Ÿy* ø?öj˜Ëbgœ,ñ\“9ï]±§Õî–‹­7°& ײšs 5P>sÿó7þB*Å}`æü¤þsýz‹õ~úŸ`á»qWt\Ë0À,\è&·ë-RjÝ¡óèÿ@qñáy @v­U\ Ød–þõ›¨ Ÿ©V›h@2ÒÚòޱ\@>éJ&BXXÐ;—½ÐJLg 1˜JÉí dz‡+cÐ 18ð&rºür‡—£L l÷Oö¹Ýƒ½e´-ÛžÃÕz~Îcþƒyÿ’L€Œ 7ÀØ 0·¬UUqg¯ÑS?Ìlé€ì­Ó+~52%PZp]ËN–¾í¸1z×Ü:mÍt±ñ¿ž ¡¾)E[b©Tþm¯ì²ô«Ëe_ªâíZb‚…S½Žê${ZöšÎ"¸ `žÂ5\SìMb+¸1LòpŠlí¾JÖœ/ga_" ðµ3ØÂÇ'„Á«À£}3ƒ 1Œý'ㆩ¬*{à'µÕjJó@ ¬Lø’.{Ð.6 !s”<ø8sX˜¥,ÀmwUýî«ÔJ`Û?¾ïCs[¯Þë·V4â~lÚ#b‡'½Æ0€_éÈ¿êr½˜ŸF&»–óè?>›"î@Ð4§hil%RP‹–4A€ï€È!ãyŽ’ÃcPX¯$1 #‹|j»)á FéEÖw% K´0A…ç:]`øN mË÷A—ËMÀo%oR%nPõ?>B•;Ú•öµf%;gcÞñxáÔ€\?Ü~/ßúØßCêÆì3Í€ï·Oו-›@46GÂõ‚°ÏlöËÁE?é¬v)þŸ|E¹¢59fY3bŠ_à2múR?ݲ%+e’„žÐ€•6›ÒiëeF9¤BïÈ*µ>¤@‡kS±lC$ÖrúùjòÍpÕþµ"V×Ô>ÿÞ0€¡–ÙðªÞ@bÑ7¹)_{ Õ¾–‘¡ cU™€XyÎiSå9ÀÅY½äq]¥)äü¡žNñ‘eÓCØHÓ€9ƒ"c®\I¼}®ï§×‡~ˆGL]lx…òA—»^Óœyœpú( çÑÿ»ôÑýY²~­)]ˆ.ÐDÛ?,Ö»ÊqëQ*‰KrkìFã_\QN¿rR^š€§T‡q”…Vœ÷(äÃßy@Éð›_ÙÁ ¡&¡àÀ¿SÍ“Ô4D®–žË×|žv4wÙµ<àÀ•¤ôWÿBOh[ ÀP Wƒ™×gþýMu¸wTM{ëÎÆoó3ªÏáÕ0T‡MÏ ƒåð·YîÊ4qt¯—¦ÿÈ´Ž›…RÉô ùÿÕ5×hœÅRýÖ—ªêDát!Îe —ȀÎðÑ4sѼ€‰à M´¡ïLXVí!¾Li-,¥t.­*Ä'µ~0]egÀš1@=±²De ì¼R À‰e7‡„Nž9Íÿqoׯyæ‹j"3S"GÁ«:håaVf;(RÂVJ$(`°ŠkÙ‚@œ !ãÃÞ8d,÷¶Uw»÷„þÒí¯.›žÝ I9 ùp¨]ÿrgÕÜdÓËIƒ~ô(nðYÜæì¹õž“£Ë­wç>Ï;£lüOB„±±Œ…æ÷ý?ÿçëÿ4$Åsm•É’ÈW±»,)x·£Ë¿L—u’wiV>½Æðæ¶ÒÊNm‘ “’ «-û¯û>¶‚¤D‚TýÇÇ(õô^m·û`±eQÊYc¨ÛÌp\Ä­(×õsàI¼”“b—®à¦/ÓÔ>yiÒó1ɤLòNWF®!– FG ãר­*$²²l–ò‰Ê"hæ¿°vKVôyÜÏN@ÑãNÉÜb°a~O#îÒÇÔp6î…Ž@‡>Mþ]M jR´àlm‹D²lm&l#û_(û¹: y¾º©ŒÚôúÃRò/owOyrúWi˜Å/é¼+ŽMЫQªÊ¾¯<-=é7¯ñ]Ù…ÄGòÒÒüǪý5Yí%.pï#ÿyÓP ®ÌF‹Yt¯ &Qe³NUUyÍý¡kd`‘—›yLÍ„Þõ&½ÃâÕ{ë´LÉbM˜mCèÚE}×'=$šùïvvúÃáÖ®J çH¡8îÚPÓÑé÷û;•ÐþÁÆÊÞæåÎA¨Oõtâ ݵîsgi¯¡Çj€ºml ‡Ýò2bCh×8a¨Ar!§ZV}½³î €§ƒëê³brž‡­[›þéëáðëÿžO$øÓbÌr‰z„+Ù螎 X‚ &Hü(%›D_=†€ºö†ÃþÎŽšíXs?™Ï‡ü‹ À"|aA€1kõ€go<¿]ÌLÓ=Àu"Äå‘ô‘r0°í×)èî>-d ÓY­è&€IAΆ)nZ1ÛÃ_½°Œ­Î%¡t) gt³lÅÈH”í”ç%Je|¤Y¨“ŽçiªÞ·ÌoZO¶±Œ‹‚wÖ‚ur± š‡¯ Y‹ö‹@žÈÉavøØ=Ãìžë—¬8݉1ÿòx~ÅÅ €ÂRU„}É|Z”ã ™áú÷°þ½ÇüìhÇ|âRµÊV!±å oö vtdïH˜íÜGµa€ÙU/ŽaMYš –}«1{"Q€÷"JöEU`€ '}VÑñôÀ>ÌÿÁölÃ?ØCî|6€[kûé6i‰ x[Ãì‘=·†YÇ>u^f€ øñ®´²£]¿Æ`(žžNž@jæå vøž?yq4ú=5ïOÆ}`ß%#·„¨µ°‚:0^f"Ýìhë±{à `S÷Ð+†a¯åñl´õl© XE ‚]\’(ª VìÈ­GØ0FP(2~b‹Rʈo ±Ö(àÚÀœŽRuÐÇɧ”ãÀ&1ä!À>H»qH.8OÆ9Ýë‚sƧRjEïëdGn|ê)œЪ6ü’^'šêd÷Þ´>ö²ÛÐÔ×“ÃæÆÉ[8ÍŽ:Yl,NX¹º@iM”g…Ú€£þ?óøã›ýÑoïP›Wáô_Æ¦Š…KÜwÂp¯ûÌ8ÀÄmß.ö‡GQ·oÿM~öÑ„§Al³¬šŽ\°^éüóîýðKP™CQ|NQ|Ãì^²d#ì1¬èÅþ‘ V…`M ½ëðqW4ÜA6Cël°œ/œ9sæñÍÃl×#ÓÓ«?ïk@± aö¿ßÝÃþûv2“NÒ%m¿ZJ@x(1Z(TŠÝ(ïþ¥°Ÿ¦Ëǯ•|^×à¥Ñðï·av™çiZJìd¨ÕGF»˜E‹‹2räRÐL¢šæÔZkׯLXz Èçõ g€¦³© ,'}mÚi=£j¦Sè7´‹rEîŸÊ+vÃñ?å›±w¸‹Ý«j nÜ ‡(%áo²µÁ‘ÏI$$è\Sï{i@)PIÀˆ¦í|æY˜þù¨ßÅÁ+€%&N›¼T ±ÊVv·¦Úå÷ƒû»:p^)5û.{L}•ýÇØGX æMc™çO5áD€øqŸP(ü-hþ¢*¦éƒôRˆ(µ˜zhC-œ ™°b Lý؉„ F ×ÃB¨Ñ#xúØŠ}]ŽŽ«ݬޕ‡GùÄb‘ä~®$àûþ—ÔÇ=ìÎJ8þ—³ý¥ @1ŠÙ'™ñŒ”²õñ3ªd¹±]×H^Ž_æ€.‡Å@äùáhQ\‘”WÄE±$ˆ ÀH4ËR©µÖ®ä$³Ú ‘Y¤Ç±VæxsBP'§¢µÇ“K†jÇŒŠ¬ffsã^6?.U£¤dlz £âd^XlcxØîV¯jZýãçSRaÁ˜â×à”Jpå íq=û’&ìvæ¶‹ ž“kôÅàá%pÆMÕ«µMʬgÞzå΂jßþÃì£ó@Ü·_L¿®ì£oÈëÿß½?<<¿m[b~Á2-ÖüäõŠ‚xn´³uBªNÆJ0°ðÐ8$'“l,ã4ccÆ"g ›t‰¦?ðHbS«dø^y€%‡0ஜ§`˜_¢¨~ö»Å»ò’½†è$÷ÀÙàŽv&¼dFÁ•quÉ›2>×"É$»£›µ7ÿø‹@kZ®‘Ü2Zx™{Xáï=B’@•Wˆ« àLMmH†Æô)5³)ø>ÐÀ¬WòÌ5‰5Sèo¸H[ý)pt  j¹aÁÀ(8ÿvÂâĬ m;TQ…‚ÿ×ׇè‘'Höü]¥ÊkÜê%ÔÌ"ø¨~œã«7}ª˜±\>ø[ÔXôwR§PŠ>×8M>ꓼ{ºq•±ÿŒªŸn<7ý×PÅaï`uhƒ}Ú¾ò¡[r=Yú˜Ž+Êvüh"HÑàDþu‰r…IÞŽ!žü¥”J}A•ؘ֘Òã'HŽ"¥LàÐúmX ÛA«@ï±(hF¶×ÖŽEòÇÑ»Ô@ÐA›Íæ?àºÙÍé[ÿÓëààãùøÒ—^ô§<Óö-ö+=r)A‡·´]ŒÕ›I&à×þÖ‚Z8Ø”'÷^["àõá /=8øG gïè½òª‘È’$g›òµqPÈllœý€IàQ™º;ë€x¢¥/'}ð ï/àæ6ÅDrrg(º yQåÜÙÆœ-™ ÝZPçJÆ ÜÇvTP³ª€R þ%Ž áÕNàôÔÕ;¥þÂâˆ[F϶ZkE¥H”ö±â/¥²ú´ú'üþënvÿÆüÑþ(A"¼įü…ñdþâ§‹¿ØûòâŸwßÇ8"±¿V¬ï”ës’dŸ–× à‹ ´§ƒF*h²‚ÿ_5ëŠ؉r°úãÝ£÷ Óc \N ìÅLƒøÿ´ù†Æ¾qWtk  'Àï[ÙÂM9ó¢ÿ¿®‡@ØàïˆùGðÛ0Gˆ¿Ì½Ra¼ÜRpÑ1‘~± ܽy´{ŸA1\8T|™gG·nÊ?¶®˜°a° VRu4 ÎHhs¯>'àÏzRl2âlÜ)Å®›aõõPÉ þøvñ\uu†¢c«vú5ˆ±´â,€oF¿!Ãú3–ΉîÀwG1r:CÞˉ8ù"+ža#<À‡ù÷þÂhדÔrË5Eµ>^|™­ue¿*««ƒ_¥íŒ0Ø!êu©N@žØyµ™pº€kai`›@fHGeí?=–F½+lY—Iþ¾oFñâuø,ÆËëì¡DÅÉ‚üÈèD Œeg?Šþ=Ét§nÚè÷kœFÍ(&žˆLI…>°WéL}Nº¨:òÇì y °™=ð‘$¤P…5ÜÓçÓsÈÎëçÒðkNŸÿ•žs‹¾óøå ð‘ÙtÚ-Vvi¢À8ŒýžNÒ¥}TÌz>=;‡¯ƒ¿Ï¦sBÊ _ÍŸ[ùïk'G 1€áC?Ÿþó?Q¹bÈÚ°,Ö8u]f‚¥ À*H¦õ?ÿ¨zœ¦Zj°‹)Á£×ߣh!1¢»!+È4i H%HA EËíc8?:üÆ]ìÀ¥ø–Œu±»ówåÙhweõú\ÇÑ?)¸þNùìœ6?VI¯~ÓΧÁÁÜ’Æ/êÅ1}³”ÈÊ•­þ‹óBvbÇ5Q€' øøKìkNùDÃ’ÈËtwi  ûI†Æ°‹nZ­=Ë3—¤žÿ5F×ÂLàøÈá¢Ä–IšÒûÓ°Õ ©“<ÕY±-Cï"É»ö8쯙÷B>õ[ÁÂax§¤:à>- pÛÝ^L/¡O“¤©Ѓ/Ä;/P¾,`m¹d@Qæå]­Ç_dy§7EfÇ8s¦|" wÉ,É4’7Ù”õû “;¢wÚ…”œ—ú s—çç–úíÝù`û³ßt͆$ó¶Y$; óTÉÀY,$]Žè1•2€Ù/Dp:“m1Ð=¿Û°ƒ¶1}ô)‹@&eb €VƒÂ`‘LÑÕÊBéÓÏî!Ö=€pà=ÿVb„ w廳a½.dÃèïÔãÿг&ÈàaÁ«³/×eŸ"hE×v€1xéñxæÌƒg`§XðºŒÓ:/’Á¬Ë™ô¨h¹T€– ‰Š†.u€÷þ»¿Éþ%"M³â» ` %\® ÈZ£*—ü¤šÎÿh˜¡Ê8Ä ÂÏù£ê’dŠm§ÁÒº°sÁ‰™€Rðź©öãt°ÏNìÕ8]¾ £ òxC?$Õ@pÞìc°d^mýÀãÏ`ÍÌ­w‘0Àö 8ÿj)0½¯‹m}ðñ1—ÎvÖ¬Û̳¿=9ü;â¼Ï¶âù¦gy¦ô¥Ò€š•M7e”æ¤(VV¶²/Á;Ç©áìÎ$\xË5R|ؘ϶²ýTc¨Øú u0?hùÛ9VkS¹ª=]`8"˜L0s~n À+éH ÀlñðDÿ§‘6,»áü/úÚĤy’úðüc —`ûÍX@‘*û¥avÏc=6†;’K¤cL• ØYÁŽÜwã}ð|?Í'tµÉmg‚0_Ú œ»:‚S¬X(Í XÿK/l~i˜½çcX2¢è¨Ç$I|Âìô«Õ䀲 &*¬Û°£ßÜ}Ó}{ØNà|˜y4^@ì—KÒ[êÛD1æÞ¾ÓÏî=¼ûð^X‚÷"4Å«¢sâéobG`ÉaÁœ»>#,9¥xÎ,ùVø"„­1ѤÇkÄ&½Žû_¥ìPr¬œaäPþÝ€åÛy^ml¥èT ­íc:Ù“˜„Ýá„Zzò ¹+¿†åÜ1·n—rýÉÑ?ùÃyÿv˜'`ö¹ì:)dúKÖ(¤(­GݲÊl+Ûú /¼4Êv=‰âˆåÃ^;˜{‚mÝý,¾ÌÖ²mX$]Ç2y‹Þ #lÅ{6‘b"„B{ëñlä€RÓkœ²`ÜYñD‚oV¼ªjíqÔ´“|¨IŒ™±ÄÐ&Ž•9p|™ôKËd6HKƒX)eY6Ú¹3ÉÏ ¤˜¡øo©3 ÏŸìã@'q—–#Þ€¢ Î¤,MxzJŠ_Åf/V\œ ó»~Ý5…Ÿúz×I$ÔÑÏ(k˜ÊéÌÂ"OÀÕtÁ*ž-0K[fZõ¶dº*àUØðA°måÍ‹p}ÔŠŽç¥µ€,šb¶´R¼ç$¼Êh'ÖÄ{1(ë绳“¼z'öÏ/ŸÛIN4ä—©”X¿€3bÛ8MMÊ™åÙ8ÜÉ1ìiÌH·ƒ¡la@€z+¸ª6<±þL°·–y…îòã•Uħlxp ÿõÜŽƒd9÷€oß‘^·kyþ Ü {nÑ%´(š×®Ÿ5Ùa/hLàBwà|¡ÚfY[ÀäÝ=J®©_õt x ®%ðÓCä¦?SWWÆ€…Lªc"¶|YÝiϼÇq´Ì0"Á*§[ÌZò ŸH¬­p ÀÛ±Lª;•\D }SðTÄÓ"¡ú²WÁö`ÿöÜûàø ²9ñÿIWÇ’\y:Ôž!Í€€úî³Õò¯ùŽƒýËJt#`ýN¨9'ª¦)£>ž,zÄѹ ' (¸J S„²ø_wî~ôÓó>¢½€@q>…ä9«7Úd0…`vÚM–Õøîõ˜Ò†}Ôή®4œ éq<‡+£—œ Zÿ¬Ïšv‹à"o{î;];?ÙGQ6¸½$”bw‚çS½>¸õÛ¯ ŠŽaŒäÅ\À’B’×.”C¼ëp‹(Þ’}J º¤°È;È^eƒ&_UX’³åƒ„ëIÉï ÅÇk‰+wl=ØÏqƒAüwÂl=JU„éèêúÎŽÊí=°œë‡Ê×ÿøùŸàh" $3Ž Òs*×p(2EmÛ¤kß“tÿÁƒ Ç9 ¤Ü±Eé½¶rÀ¹ý]ßùú§\Ù;e"³ŒA€ñ*.°õÿvG ?¡JH}ã1Ñí›Îjô˜h¯1 xõ M*`¥DÜ¢'õ¿ºÙÆ6šrcý¸ûz؈RJ§#ÑYß©1ìh‹9Ͳ¨iœ$ådRÎN¢&ˆÌ‹X:V;ÿDQ™d&>¾Í"¾nô”`·ÒÁçL’|!©¾òõ«<uÒq0š·+d8/°¾ïu)9^=®zÑŒBôw™@€ ×7¥u ž¤"3ˆcD›—òòÇ_Ñ7áÒ¤œ!X›Tî6pì¢}–¸˜m£ƒÿÀÝ`ALL±ÄXN¦o³Tªÿ¼þ€–,‘‡[…ùJð¤ë1ê‡%@äÝ$i¯$¦Ÿ4}.Iûe.À¢E^yűqCµ¨¼´Dsee;+öÑû~$f]ç{Ö•äù¥“ÔÒâìÉ»M¯î…R&GÅzÛz*–· ’«.3ÂÙ(†ÚE¦£•+gÇ®­° þþº÷Å#ž:8îMU7à„%¢«.˜Ûa1åÌd³¢Æ0 B ]ßçÃLxÐì\xþÇíB¼ Ü{ƒ~Š”BM+(FV’°â3ƒÑ@æQÛè4,)jœÉ’*zK\Ïk|£¨Ûª0ft nYæuèìzç–ä’¨¦¯¢' 'ygµ÷}Ѩ°óXX0‹mtpÜ[dÍçÕ¥€`‡¸Q# 'øpßaGèT&Pdz8½ÄM#{œ®"L­q ¼³À¹*]±ÖgE ?ž’E‡·$ÇŒË4-Ëp(&`}ϵ¸p¡&ªX–ÆãˆÕZ&Ä 0_ºë/ 8!Ó›dãmp² _Nà^XZH @¶òóIÈZTét…0@ˆ?gi®G…=\˜~ûûÚ=F«’ñëÌ´Í;ÀIxNüÌi‹ª7& ñ&PdÆ,¼ûv>qÂÁ¡1 \W«êyÏ]+p¼ýNy¦î«¸((×ÿG¿ÚôpeÜ8ƒ½“HÁLykÄÂÈ,L`~nmQÀ«gI˜¾ŽTúOœ»~ŽÞaLaŒY ¸rÄOñ!ñé˜ÆÑ78©“A(G¨ÐÖÜ•‘©Á>¢&¿=–Ú¦/#K’×#vÔ0:/švår ¸ºKEšÞŦ¤CD¨Ç'fâàV¸¦$Þ™óæË¨Èô3ÍИ€Ö  B4ÉL¶Ðê£åìúØ r€f¥4`M¬¢D¬›ˆ¢û/H©Ý‡ŽÎ8ÎY¨*ÇÀ ŠKõ4‹Œ­ÿÌ`S¬f)nV0€Ôâ:Üêô¶z½ÃÆdtউò9Zô¦ˆ¨àm¤iMhIûb"´¸¤…`8ѦE$dðö­7£#0ÄšÁ`#A€/‚, ” V(åY¹kŽ *´_à-›L΋DæŒcd¼°X¯~Y9mQ€ªAyùè;™){çþ×P«_•¹áÏ6QRG ,˜@@ :#¾ÏxVÎ3}\BQ0amÓA®žʾ„×çIȹQg»‘6Ìà,3qF@]?¸Š0X/Š 1Y"]úL¿ Û~ŽFQTuŸ¹& € )@„gêÞ¹¿ª ×ÒÆõ¡(¨LàeŒ‚Å… £E1DÈ‡Í ÆÏXå™\¨DKY”ûL§wèlÏ9qx²×‹¶_"9ŸÌT;@Ó¶‡OÃÉ'“•'ë{Ð^Ê‹<çtR(­Ì¡øï$ì"¦öx øÊÜ6’„x³bÄ´¢˜¹ðjÒS‹—wLùjÈ‹Š›q6ä¤UÔ€âʈ>Ô N›B<"¿=O õµÀt^¢Ècž"î€Jóß Ñ:°Ó»L¾'Αq>Å(ÀEò,Ö‚õ·¸†^rÜ[VVvG•¢ƒ»~sê áS Þ3;c–SvB€}Å^#AÒt§¥«e±¡-fÀ&ý ³I€ÖàÜ ¬]×H(?¹¿.•™ºº¯bRP…CYpDËÙu’¶)ÛÔN„|¡¦tN)Á7 kòe¡|’ã:À‚6_*áÚEN$Ɖ öêð/Ð7¨y@1ù°;+g'wÕˆ&:Û›°nÁ'š}( ÃÔîˆÁ÷¢>¬ÃªãÁ-ÖÍÐAÀ¦‹â[W*ÊIÞôª5hÿ ZPAcÈÙ³-9pfõŒ¢ª˜q¡.€ÞÔ„mX%澎~ €%Ù[MÑÙe/À˜BÜ/D.ÌhÖߢ̺|^âòh?†0à<}§Ì‰,0cq^ͩظڸxÚÀ0¼Ù8N £†ô+|€õ$€ì®µ1USh ³=CïðŠ”&Nÿb:”iZÍöÚç L‡FýÉL= ÿ6ð—á+Ž > è—µ(å¦_2B€‡£XË¿8zD,(¾Í¤#±€ 2ÂzW 8Uw =Û,€Õ±£ Ž>î:‘Ieü.¥—º†¦@”·Ÿ©«Í¢Pká8ŠzgSí¼7À‰5ÖAŽëðÎ’©à@®›æ´T……=Ÿ'‡SŸ£©òéxBvÁ¾yªèLBKøÃ2¤ðp«ªOô/¶É ¹A@D½=Ã8©‡'ÁDê1w5 /i®ÇúZ€€>ˆŒdú¤y\ZŒ¢N¯:`Ûå3ù*€ ‹ÁþǪEMJ%ψ@&†¤S©aÏ…57åCôG À ¸®Òá®ûìœ[‡Àmx2Ò/X™ÀÐÀ¦^o–F^.Í™¯Xj›ð‹qÚæ'‡°qÔ¢èþ`¡œ(¶LïЫaaE:t…­(ò)žë³1å8Ø]–r^a<ÿ¤ ˆÌ|Beÿ˜ÀáyO€Æfp€¿,Ë<à ¥±®zæá ÉM>Y^ª½xà›§¾ \zT@¤)£Q—¸ˆ €]Ý ¼¤*^áeÓ¿¸Ø~¤èû€9ë@˜Ç—dÞÙÔGѱ‰²Ó LôÌ4“A\¯Ïg¿osjmµ€WÉ„m)Œá#0»å„”Kã|³›¦xT-YUO_ ¸$R¤h»/&ËMnµn§~ >°”Ô=|HUŽ¡ˆð\¯C,×L€¡8¡ÌæRI1C€7¹rnh ãÜh¯c'z8Ýì51œ_¯èUG]ÝÆJ‘?ÝÄP”43”Ûú -ÀþK5¬¥7KÆSÒšj¯ þüÑG]ª”‰R¹ØO8ö©Tjþ“®®.x~~M;Îþ„mÁ pÞwvüëý•§›Dm(0½btb€Ñ’…Ã4ëMŠÙ8êÖPf5 “8€ò“owÜ)¶[Vwó/­¤5\ ö_ÙRTï/2Õ J" èQîÈ£¿( P¬p‹n´A¸º²þ”ëò:˜Z¤&h wd+¿óî»ßùäŸ,Eë/ÇÚ ð©œ~’<ªG/¨ Þ ¹Ê2XŒ ÷å6®Ÿ–’;<Øñ£ÅEÙúnƒoŠaà6R($J®oý„çÞ}÷Ç1ìXOèá÷uÀ^èCHá0›ŽAýG¸€¿RAJÈ?Ü_Þ窑iYË#ý@¬1šÃéQ5$# ÜV`*¸þÝ_¿~)½s‘@3‘ n¥Å,E¯¨¡|õ@júÐ7èF'8Ä1Ø+!ÑOß}÷Ýç×Î0 0±(Š‹Èluð[ûé ¿ seCÿ¬LØúû¹Ûg•m° óC)¼à6O=´¦pýëX+=ÚœT̸! έôÑ'Xün]ªkZƉïU@•jÕr'BƒZŽiÞ\ŠˆExÀÐnSðÈâ$‚B{zB@þŒ)‚í|k)­~ôëÍ«Æj/Ý …<+"Í)ο¥à¬`Ê2Ö´Âÿ ݬ˜N%…+ä|‹½YqZß¾PV–Ìf¸ß¼„ ‚q†iQì ,‚Ø×ÑŠï}ôØ\áø£rŒ$„r¦|ò¸ž¼ÃB#”q:øÏÍðY÷Šú2áNº\Çc-€1+¶|J8€‹¢‹ŽÿÀzü©T÷| }Ög:!ªÓºÃjq¿Vì“O÷$Oû»#Ú¤p„y ð¹”ýr €Å«EúßX¬ @ €ÞñeòSýtã •œa$ dT! PPìhå–¯LÙØø$°´àF 3åhÊàyÒëÝðüZ€’¾Ó½^”ƒgêêj÷„¿{ŸÌÓe·Áè›d´ •r> ÃìºQJ¬%+|eø);úÒ ûw·¢T¹ÜÖ`W+¥>Þ9ÊŽ#V-¡\œÎWois:#Š>ð`2Fe2Rž'ÂÙb%"L;røîÝÇFÙG?Ö­rÔ.Ù É®Œ¨ö¿ÄXÁˆPMÊl§ô Ñ8”qe Àˆd©64À±Î¥g(:;ZRƒL­ÅO¤xñ 6 Þ}x„}ýeõø'Qj ˜ÿ¬RrþK€B €P€ãäFFlÙðÞÃ7ÆÊ}Å êÓí°5Ê1hR§Úx×YpnûâŸù—ßúÙn û±òFœŸÿ‰Ÿ=rë]wÝʲ]t¡Ø‡AÍ÷#j×_ç+rüQdóÀó4çPœ¢Ø~öŒô0ƒå@Æ,úš¥‚ˆþf•ÀË´¾ÿ»¯½ßʾµ¾q€ó %Ì ò*aE€e,ÂÔâPi~žâÜ öt0¾šŠKTG˜=öÇ?{ÏèÉë×Ê0 \À„B ¬‚=2r×]{à쪿lh.Ýg›Œ3èÔ«Axtr°q}󚢀W€ëÙÖͿܼù—¿Ä¶&ù¼:ªÜ%xôƧž‚_…GÕaàhãt¾á“ø< ø±ð¸›Ȇ‹5Œ3DÚŒà!˜còãy€ á)©c…*”µÿî@€ø*$à’å@.Õò¿ÂÿG ±$pVR¦§ŸD'`V‹x­x¯³”cØ ÜB‚!I°àPt‹q:›0Ó¥$]óïGýQ&`ÿav„Lºæ%dþy꡽·T½-À ¸ ~Î žTøäMD,åpØOS†A õ€ g¦/f€Š…Îë£ ðûÛ‡zà‡¸‡íª¤‚dŒ¢ÈK ,ÿ?€³~„=¨ZDÕÔ=ªôß­,r€%¦&)KXJu(¹$ޠˆŽ_¬V,c¥Z „p[YM´çOØï­c@R1õì N¢‡S`=€šŒoé*Εò%vrC–mI2Ó›³e¦‚tù¶íþÑPâãñg‡£w®‘`à(fÒ™÷¶²#wåWrWª 6$ÜìÔ:PÃ…# € kÈ _ æ^÷ãù‡ÇÃ÷±~„…¾‰§ÇõVA¯æ1Ô(e§nAmÙÞÉÄ?Ùî±]¸«›U‹Ü *=, —¾M¬ÉÊI!‘Ä ß ¹Vt‚1d R¹£ÃÿM’.&ànÇ/ÀF€Íþ[ÚJ‹ V0Å%’ ¿‡ä` NTY.¥y€j¸Êš–q†½¡PbF÷áŒk!¥;ÆnÔ$~îcT&‰í/ÙYêùÇkúå‚Î÷SOíñcNÛê[äí;J•ìÂ#ÖÙY½>WGØg«Å˜5m!ú{X8œ…çù–Yýœ.‡ïÓ§á"§ì%Zù÷EÿÜ ?µùjËÔÀ¶’6@Íþ+ +fŒ¯`¤'ÀEàã–”àuá¬ö¹Í<˜eË«4i~G«ûÅ-%ìU S|a\ÀÝûýà ³ÇdQfÓpyx‰z œ|ƒÉÕgÈg£ØdQ¿gn´ÌÖÓá‘‚bº8ƒÅ3åJî äøQñ'À*ðŸà­Ñ‚ãÿµÇxè ûT6Æ'[’æ½Q<ü€¿ÝÊö3tÕmN~±õÿ5ùÿoÜÅ$ã Û²(w Å'eæ¨Co 6Í9°Á‹$Œú´qŒšÑ—¬‹^yîÆèæU;Ç®_ È”ts\ ‘å7„˜ó‹íÞ8Á0ŠÔ4SÜloB|ãvŽ‹ éäpAçûñ{N¾¼Fà™€4äºÙ»¾uW~%»p¾bà†ßôÙzB‚o#,^{Ž (jú °ÿ„ ‡#´†ZÀ+Àg_ÈŸÿ_¶†ßã¸{mÜÐW†¾_¢Z¿nºÍI<‡­_#茜|8äÄ¡÷¤É:åtÆÅ¬wÊ‹õB^¯Œõc iq*ÔÊпwÂÎíbÖI1¾><’—Û½ûðèO»° X= ,hö¿4p1Ð2yÿÇw¾P°‚€›’ÞA¦‘ÚçdÏ)$r8¥w0µigâöp½îÞ;*y§œN¯3„Ÿp‰Þü¿Ð”׉=äòé\„¥Ñ¾ŒÓtÍTÕÁÞ§ÿ§nºioø-†l™V{‚‘X á˃຾>ŒàÇ¿öÀCˆšµe_…_ð>Bø?þvktk ð G[Ù¼ôªÿ>I²‚4‘‚ê 2Ü#ØÏE‚ðÓgpt¤Ïa(ý0ìõT;ÿçðŠòp Hm#i„!AöEºŽjS[Õ/o(³†€cNÁYô©Ÿ qµsA:=PùÝ}w­ @y»(ó^›'¸’îP€£Fð|RÈrÇ9΂?˜Äz`…’q6%$|Ÿü˜-€ÍÇÂe…JüiðP¥ìáQ*f½wô”'@óŸÀÊIl&}5èG`ù‰&H˜9%RU¥eM|ìÑŒèÆý»£àøüE$`õ9j@I@Þþ[b+”E.dHç|J ú^±& $€UkXݱœ“ aä'm‘[^c˜ëìÂ'ìî¼ZøþcaÒ‡ÎKD@IZ”´q…_X—ÿÊ$p¸04iïèæ³ú†éÛ¡Ë8Ej± ï¬G%Àë­=þ;Â8S¢Z¿)|D;þð‹ÝZW÷ylªˆäÿ¿q¤¢Ä^`wŸù¿’Æ "oËÿ©=˜W"EøRë†õ­Ès- î©e¬¹ÇêÀ–¬hÚw]5°r x`g«V|ÒàóòD`ÈZNEóZ¡žyaôݵ2Åz]@¶½²5ª©¨£Žb«G‡Mƒf°qAr!º+Ñ ð9€çgï²» 0\AOÜl ƒo¿ýöÍÑ‘ÕúڤνMwÿC 3Øsȉòxú%o³ÝÞÜ Ærd® j^bk! •ž7ГÍÓöf·˜Í™%³}‹g~Ø_0¢‡£?F —[¸ˆ¬ªDªJºòö–ueQá ùœz¸° õöFtˆXP Àô¹zQ–±G`†°}(€åŸ>!ñ˪Z°=]ÎÞ< °%‡Ž.^±ŽOèJ'ÐàÒ¾®§è MíÄ‘ O©0âÇ8A*ëÈæ0‰$8÷[Áõ¨Ø0üÀ×x à‡žÝJ«ãfóGTà.L< VÜp;ÃüÃ^Vݲ¸sÙnQNXê©zÓÁÙ¨à8y.‚Ím¨1WUu¼*HO¼Y…_TõVUõ(j_÷è×ò.À×üo)ëŒy ’Hf©½9¸´¦ïüµýàa¸¡ê =¶ Žå2M…_,Ê…GŸ_3 Ÿ©³Ù†Ž„Ôt¤ I\×Ç0USpÒë18`F'À#]¶ðûÕϾÜy²õáÍ›÷£ð{ࣅ)³@¸æ†h>pc´B³Yþ§?Þú-Ín°IÈO¡èÁ6@³“ÉÆy©}IU‘Iþ¯¨þE;ì‘9Èþö!¼ÏÞíZgà‹àæ< H›yŽËÔ¿É0=z̆à\ ay’¦~ÙÇ µ"¡ÿ3Ã{f×Ìš“º2î?~e”U aŸ‰Ä?œ§e m«µ§}=…àÂI¼r q §LŸ(o±/=L"›‡£K„¾{·g¨à©§FØ.¢3&cW'δ}JÚAS±EAðÌYÕš•j‘(fê$X[wÛëBéBçè$¯27c :Â{T½ÿ0Û™›ªç¤$a X¥'@Å@Áþ[ÆV:«0€|&YïÄÿªCi TŠj sã@Œ8! ŸÐbªÔ`½ÁÖ×ÇtÆýްŸ~˜"tŸGQ‘&1S¯ñõ Ok£8™×1Þ¢ÛŽe%'ßÇç=[p)ì5C ý½X8çBISõ¥Ö¡`îÿñ‡<ô~´Smú¡D^˜çGh àVvke¾ûhJ) †+~Cõ'YvöÒvIß~Ô,²ØPËôÕ’–7^=é­[š²"%fEl þ‹:¼çk~¿,8]ëÌŠ* Ð#p)&Ý¢,Æû˜ÈÌ ®Ä›*ðN}JjÞç!ÓÏ9˜H?ûâ™ü ®k­ @'ÐuusÛFX-+ OôÅ•…l€9As¡ØÇrõº€W€¹ ì}púù‚Ÿ=¸OŽ¡b&/9so±#$á_µ d+Èr¬aWmyþ©Ç*Øn²ED;±x>5ÂVÍ1bDÚ¹¿Ÿàg#8)aº‹Š~ÔÅúoÂ2€c¬ŸLåkG»`œº p±@ä E€û¯¸Å »Š.b…LÖ,:gIÀ#ÅíN U0#f‘øàj3MJ1€>€”©Åò·W*ؽøÞofä£Ý)Ávìÿm3‘J£‹ÊvU|²Øu ¼$`@˜ïd÷’2€vë¿ÚÜPÕuƒÌªí•§M¼wëÒ¨  fÖCðú¨ÿÙ‡àñÛÑQ8°cc”ªí.=J ~0àçešÒ°ê©°:ø.6Üoã8„€¬3Ðâ‚€¸‚1ld8Û8,«¯|M2N_Œ5ø¨ò¯LØÿ>r€÷‡Ù•âéõ…€'qr¾Ô6ÀåZSkB €{—ûJ! cÃD¶²­Ïž 8ƶÎÃnXH›…ŸßûN™¬û½_[Éhø¿*ÛTWFSÀí}XZòQîÛju¤'WÂê§Àç>3ˆŽ¶fOþ'pÛ²§ùOmh;Ʋ{Fö°Ñûððkˆý^§ö|73˜µF"±….€E=¶è$ýU³¥2·Ø¤“d¬-Ûq<¸¯+Ìú÷ŽD±ü¡EΘýpQ9Î//€‚ýG Ÿ ÛŠ/f…Lá:‹sQ0êSB.ÃHÀ$1øà¦ŒÑ†—gÁˆ|q>'P7êëÃI÷Ñ‘½Ãlô0Ém§rXU€…ªÚ°[W>¦©¦9K³3ž’x³³¶”l%`%GF*X¶›š¸NÐÐGöVù°ÔÛåosbª‚\ìzh¼»‡¾ç?ûzÇ>°ÏYÞ}J-êbÙ#GŽÀÝÂMBÿð”…Ùè‘[£pþ‰\&B€ìDÀ¥ÜÎÝ.‘ÄcápF¦9n"&N«²êáwûŒËoÁ+ÝQ¤:ÁOýî0ëïPu%§i] ÐÒR ok¼ƒè±av¦ŠŠKSX“µë!¹þÁAÎÖÍF[½8ÊK`ñv*§_Ÿ¾ã:ÊܾVr®ä6ýêö¯ÔÕÕ¡j6XÑ™íb»rÛ€^"Ù#¤HkëìgpÛŸ‡+^z®¥Èd±==ëò™R$ÐY®xëùópfÅêSÄ ê‰;áùáîŽ'a ²>|>¸ËE9ÜÙE‘)s² ‘€ô…æÀ%öh)€âùâ~QWá* @Y–µ\ÖêŒ^É &6eÁt¼ÛztS²cA -Y’Ön$¥»*X'Ô˜!÷ŠØÑ +vËßÎ6åÇè!ÒÈCC/Êta æ4ó¨DÕlU\AŠÚr¤^æõ[~øŠêõ1ý°þ¶ÚØ’Iœ'5F¯V4Zv€¹ïmû;w§ëÉ$H¹AÉ¡ø ý Ù />š„ œÙHXQû?XßÞÍz1ÙOx”Ü€CQ¾D€LØ 7Ô&fc8v9Û^ßbQæÞ&â@|{¡Zùò‡ü­]5j׊VÑÿuP,ƒŒüOå5jZˆ ÇQtÙQûiS?åÎd 4\¯ƒÏVV‚y¯„sË0ƒ½ 2$:˜E3¥ÅÈ01™ ŒŠ¥Ð `F¤2𓽊îù.{2YÙìJˆ°Ïp¯!H@I:à‚r tÀô(žÿ=—a$O«ñ’Î.,zT]}.>ªsA:8‡ÝL˜Ét§ó ÀZ>¨Ö¿îÛ‡“ìÕ$eRPÿ¿a*!%ˆœþžÒÙ󃊥¹3¤)–šëu2‚éØ<ÍüG÷+\•Ò„JÐC¯}ˆº0ØêkAÙàjµ`žRï6¸Yë¢ à‚wšÅŒ¯Ý)$ëk9îɲMeÉ“°ú 5Ô V†ú°˜¡_ál‘~nh9DG`hº¤€6 ‹åúi¸Ã1pý±ðI3à7(Ö ë¨¤l~žô¾#’ò‰u„€’z•À ôÍ¢’Ô Üq_@@«]Å9n ©“Rq/ÀÕóДݎ[Õ ö‹tÆ«e:IWÅž©£†sÞÙtÇ@¯6múUoˆ è·UýÕ#á‘ô ʳ4c?ÌUw_X°ê攫ˊYl¸;8†§Ë8>eæås4F~Q§ÈÌ$yŒÚ*(ËScÖ<˜Å>aq1·“4.a =‰ë8Ö›VÐþïÂ`ÒhI$)šh Of‰ò‚ `Y‘ȭȘ…MHíÿ#q]¡Õ@1 z:oΩӷM1œÈ Ç#sà+¤He!ÉÀñ·Ùú‚|*†HâÝt –¼`»ˆ±µþ|)œç€u©D~î03,YvjË€ja‘6ì3ÉØzÒƒ`³6T?÷¯å_~_‹6´Ïš>…‘øà¥tʺlÁH öÏñž£Á‘ts(ï@Ä ]³pØ{ÙQ¢nÃwÏÀÂ É YyL?½8{óQ Ϩ:¬´X1h}û(ÿ¿™Ã3yAfÒ™D Ó]?˜[É”- Aš2ÕÀéDÅÓ˜Ààœ‹8‚}}t&K÷ƒùGà(ÆRÊdRJÙõWÅô^az#縿.@q\Õ#ïl šE9À¯ÊÍ‚ CV/¬y_c9G“éì9œŽ}ÕQÀ«üÎÞå†ÊÛEªfüjž.Š“qj`»Ç¬·sÜF“Þúídp! ²C㌬FoÂ6ª†…ÒÀNõŽGjN!çÿMòM’NOTF±¶ÒP_CÃçíæ" X™ ÈI^«6@»hÿK›€¯ÀˆD¨’/­‘œ^!åÒšÝð^%œ‡qö¥˜mÌÆ5 à <þƒ=?s æ ìnÜÑ"xµµÿ¬h ÞRp£Ë"„”Ùëô&`·?‘:¡%)HÝ9E—Wczœ9¡wpÔ‚ê#`<•Ø6F…ªšAÅ)L¼ª²h³´.€ՄkÀn«¯á²½*Ð/Î6ÝßFäQë›·6tq²¼Tý –µ‡X@U-ºÆiJí1 @ËnLîRÉÿ 1Eå5õ,)’‚‚ïu«:dÂú9p%ž I@4ó“4e ÁãörÎñ*q Ï5ÒÁ>Žx>6ŽÖ8/¸ÎçRüåý€0 ‰]ÿxííº:x÷u¶iŒa€p€q CÜ3euv_–D…ŒJÚ FU‡•ðWÝzµP#`ÍyCÀÑ[/ûál¼,ûŠÕ‰Ó3$x`ÿkcÂwCûRR<¨J{P–qàC†²ž ÆfR8V#:Fì'c°Wµÿj—³0ãÁ¹hò<¼¨¡èy6L Ó´lÒ#F¡¤ï×ÉëÔ"Àbüuà  ˜ h‚ƒV¼š: è.`é{Û 6)Fš´1ƒ=ÏÁ…™)¤èÈiÅxŸÊTˆ)ˆ |Ì Hq³3ç•$„P»XCú¦¼(FÑ3NÏ¡–ajÃ8†8.“êB;EÇ0#‘1–õh@hóKÿ{p@¦Á‘kòùõÀ¦ÿѼDÓˆ`óŒìÀpà ‚Dá( xßCàܯ Ÿsøj²¢Jd°Q1ËìC†½†e·KµBjI)ªÏ.»Q”Ú+,®\öá%3P2bC=f Ë( uÜ@:*éèÂñ(}ÚÏóèåëĸ2Ø"…Ê9ÛÏæî¦Œ£ãÿçŸm¢eñ7—î}gÓ¯2óÀÊÊ0À`/襧 Pƒ]Wß|µP¾€çj`öøÐÏLMØÁóíewä’b¬ù„$ {÷ç!UOXgàw‡Æg,HÕQN$[¥G)`Yl°Kfðæq.§—D’—dL` ç{“Xm4¸!oj `i‰ à‡àžÉI@.Q ;³à! Äþ¯l¾(ɾðpµ“ø?UÿFáØštèFMÓ-b¬º‡¦˜Á‰Ÿ‘%h# ðÖT –ÿÈùó¯÷ò!xycóà -àô©3bÖ™sùàmçÒåtP'œŽ0}‹Â´#œ2Áô¡N ˜0`ƒ¡ ªzÓ@H:ãª:ÐúŒt‰c>¢ gJÈ|’°Æç½?ø‘ÛXÞ£þܾùy3FžG¥Üæ1Pøu^Ä/Á x2ê^Έ5õ2‘?l|Óˆw¼öb4 þ¿v7¼f¤›I@}#_hÝX€ÞY22z6%¹`ƒÂ"3’{‚ô vå'1þÓWÞ$`680j Àýý<`¥\àÄ/™(0¯»C%@úål92q:}GÙÑÿãMu"P€@€ Ô½S¸¹öÂŽå¬ ÀÆ`‹™¿Úé W ½$õ±EX¨ ÿ™þ‡œMÎÜ\fÃDk›|¢ãÿ)”%]På-øDí¸†WJ¨‡³K#ÍxNsDÏŒ¨È—@Þþ£Ûßb–Ì‚¹>HO’—4è- ¢¸½~”讇;¢’€’L€IXt¢`s¢àÿ_Ôp>nAû 8q×±)ð,ø-†L˰ÆøÁú6G_NhyÀ*°ÿªg(ënÏ3B @S²¸°8@"“Ç\"4Šu‘8ª\6HgáÃÜ„Wˆ[ô[mïØÈùE´™åµpLŒ±&àSXl 3ë# X €OB·9>„à“šâIØö•MGÁ_+7e—DL0ç‚bÒ¹€Žeë,Q}Cx*h¢vJZL£ÉÙ¬œñ¹E DÜñšvX‚+5]RÜ#¥¼DÛ­‘X5Ú§¤u‚M+XKÏó.cgAÈm§ÀöR”U1fpÐû6T½ƒS2h°©NÀ¶¯@ãJ:—’¤KÕ€YhBÍÔÊê²\û«M”,Nê¯ þèíMˆà,só÷î¿G)4’8QrJW¼J°½¡“ˆ”¯SéEóÎz-Ž)§ÝbÖÁõ;Àâãle°jÞr¸yÁ ެo$êq19éiÉ@Cè¨[þ»zþéO1¶ìµjöŸ$ ¼Šãå¹Ú 10wVeËÜü–e 5H%TPÌäÔþ¸RûQÀò{¹¥huÐP]·XOÔpöT°ö âÀ[ÚR<ÿüv8ì@xûDžàü¿X¾ÆÐ„¥Ú–-Nó¢$Ä[ìS)¬Ô-§IZA"sÚÑrbŽ7›H q†¤s½ S~œŸ%Ô}Ëh09`½ÆZÊñ]%¼z¿¶Éð×ì ×ÀÁ‡ð£Ç&¸~Ø Îû7x:¸kRÎÊÀôau¿Aæçc}ÈHþèaŒ`¨³–h<Ø –„ÉM1Z­!¢ßÐR²+í?C‡ó>åL Û±jpeÖ–ÁiâSëéb=VÖã ^<¤÷—Óå:âûs Ÿ°ûÝ€¾ ¶ëT—@ž?€_ÝÈ3£° ö3pîuu>øÎ&Œ.5(7—•U½ýÎêD¤Ì®Æ&¿:„Úi-`:PI·„ð\Ÿí:;RÎ{¥mŠÒ .çhwŒ)ãÀhÀú®Ö·¤"@'éÔ±YëpL2p³Ä,°ë7zpbð˜7!€cýщ?5F—£¾V³5oÿ1pZ§ü5/tË4ݨ“̧ È6ÎV#  !9Aëv¢½¶¬8ÿ[VË\Ž€@œ"”ÀÅRà°\ošB@zt‰å}àïOµ:€*°Énü§ðZYw³ÆòA@RG¨÷ÅÇy3°gíä¿íÎ/IævRß‚ZóX(îA,§x†£ædŸ6æºp^€ç§Æ.x{á^÷Ûœ"؃­‚ϲíèdÁ#vbåãeà÷4m;Z +ΗmâdÚà–36°øÛÕþ", #èW§ep\¾°ßÑ{G?©”Å7n!¬šÈk^hÿ ÓËmRv/oèNÐ6£XPì ˜KöI¸Ë½d vÏ8=уÁZÎQþ=z<Î=Ã!^t})ä9,dèù€</ÙÁ9Ò˜}G @3Óç¿Rvôeäòfm=¡{”õÃ^ø]°ÉFéjýÁ«e×=-V‹ZsrlÄ›ÿ/!Uø%¹ +¶9Ç” eT@;æ´WŠ@QM¨i=Xµ¥LmðÉD8Z–téÞ15Ãï뛬“¡eCÞþ+[2²´‹[0Ç `Ù |“BP¶€9m²žW!@"…ù‰Áz³ÆzÅùG`õš¨K2uN@þ±MUßó` `Ð,½¢Šâ©ˆÍ68‘ɺ5Àóÿœ 5Îd€˜kÕ,@^ÿK“剙7;K&M` YàEYð‚=ÐÔ£¼¤@3‘EË G ,û?ö1¥ãHg•ëj92)š2ÀÂ-I‚Ë)­ƒ0 ¸úiÁ«23” ·ø#Í|ª¦lS`‰>'‹$þ7Ï£ª1/jµÂ€±ö4Ö’Ù‘Á‰ †dÊi*g%4!Àu´kªÀhÿ{/øÉ`]^IΤ³ @ºìŠ[?g_× 0ߥmµ³5b†¦bXõg냽PË þ³bÒ™áü3Æ*rámcC¥PàŠ>_µ.(ÏtB =G`ãÍuu4@D®¶m½.Pv‡B¼Û¾1Y^˜ù°”Ae«ÍWÛ|µ  NW³K"ñ³HøÇ…]tW™$ög<ê¶,‘éÀ>O,¼Ó7ŽõT¹`°Eiÿ/IY®¬KÙ¨ñXöS““gèL²RðŠ˜9€‚àO}€ã÷À;>N8€Jà4©À/š›± ¯Ã”ø(÷óÿˆ¦™Õ2—e$P]’YÄ@À? 4ˆ§a?c8±^$#p{ŒJCeF-ÂóoűÁÀðeЉœVëVéˆ4’nú"âçÃ`Nšré±´PÖ¹Ám*°OðÑÓJˆ7ëa˜åU€^*yò´ðu4בºâUð~ø±s}Àx˜v8ŽisNºm²]ðü}`S€Ú'‚ÿ_fCñwà.@^¤Ÿkýàó÷Œÿý¼á%™~2Âà38ˆP{/ÿ~øžW*³¤ëgòµ²+ei–Ó´”Êù(ÆqØ 3Êy€€uÈ´‚͉Å} s1+ŸSÅŽ=ÖÙöJŠ7)€Ë ïup¶ŒŒ9Qø6¥PäŠç]ääçx… gû @ïùûß X´ZÛÄšó7£.0"ë{«‰•³¯}EƒRÛîüØ<û™2€Wq˜GvÙ‹Éh[å/ï«WtfflŸØ‘Ì3ŠNÂR8¹zpY>±%í@=Æëúlƒ-??ÐZÑÚ¹ –¥Èüà±WÁÏ©Üy ¢b¸{gŠ*Ø´Û2éG“ߦ젃i°ÄÍoª@"MpÈg0¼–ĉåÓó‰¿zbÃH磉…çÿ’ÀåÀŠL€øhç_Žø;»Õ©cªÀ­{ödWg…×çîÏaÇArJiEº¿³¢bä–—‹¥À– „à´_œµèp¼K sƒRÜ3NSS¨ú^¯;±¯£VøÀ/žv¥$|Pôà¦Vò-¢2KX@?CZíÿÛÖ×7ÜòüçÎ,i/ŸÓÁYh Þ ¾ï¥Šp¸»kŸ-Pv¯Æ,$°*˜Ž7ÄDŠÄ„1K§üöÞ rîyEÅÁH„dðy,ljh;¨.çÅüŸ¬“ ¹æ¼°:)åÒ`–«’Ï è¼ûֆןøég?G€Ä”¿½¥u¸¢»B™&3¯Èpëó`𚞸cA ^@?“‘#\ÿ+ÜÄ‘[®_`>àâþÊ2œÓû޳ÊÛu[;ÃáÎ.ÒÖâ›»£ìè­Ã/> ’¾á^L Ú°Ö*Rùh÷ðÕ-ÁÕf2|BŸvUC\÷(ëÆVŽ&LÜ8°ú6r9z—ÌÊ#ƒzŽ÷1O²'+öÀ·oÉÄb]Ù¥W¶ÃËøqì@ñžÏˆ²r'À©|€ÕwSRj * ˜Uˆ#ßkn¾^a¸u”må%çÿR€+0€‚:† ¾“…79ʆ¿kÑCŽRB¦;7°QÿH˜ÝÓÏ Yñ§eÂø³Ýøíp½»+Éù·ØuqÒ ˜\ÍFaîªAlÒã´0T´¿ÀŠå«.MW,í6½ƒqèÑ èVW,ªŠc¼š‡ŠÜxþ{Ÿ7°À ¡4¶ @í§ô¾®Qv¸–¿¬¼˜õY½@š–°"Ç(ʱã=A NG’‚ ÷ÞÁ 6Þe+š±!÷å“•KìèH«Ÿ=ôÃUì?Ö|Á¦°ƒ«£÷J',(XÐ6 ®À^~‚m}^æúω¿ƒN@àa|že7 Þàù¾‚ÀÙlYÉÑ«Y‚«e-(3 †zQɽ|+;²{ÿþ»oa·Òòâ@GAH¹ô€=îè]žÎ Cuðu³'Q$àÆö a…¤b(¸åväðM7m<<Âvïyƒ(烘Dùo(€Å̇f5Pªc!„ÈÉOFGw?üˇ7ßõÇ¥K™½d2ä2 €ô´ÿ¶m˜ý&*tŽžüß±æpbQðäÀÍñ³ßÜÏßßJ~šË+9Ç*;Ùòí~¶«ûûq˜ ÓÉ«Ñ Ñ×O«^ÛbàÌÓÌ 8.Oh/³‡íšGºqt”ëþëǃ…×òØ"ÝxCîÞS+{Ëç̬(Ò(¤¬–î¥á ;ü™3>û]¶Â&ÆZ—Z nëçh>ç\ Á6Û±ˆxúÃìcß‚Ç;ŒñA RÜDûÙ—6o~xóîÑpÇÌj?Ú#yÏ+^`¡&Ìõ`€(óÕ«$!€°€×Ù?yè‡zßý@w6ìFÒ¤ýÖ0[KÑõºÅÄ£lø±§nÄý]á¸-„COݰÁ±pÙ÷+† 9€2€ã‡tÖ‹€<—v Ðà‡Ø[ÿ·²‡î·2;@œåí°Ñ[U†×UÅш#çWòÊÓ®ºe0®œu¼Mù»WS½he;äl½ÉIÔˆôñ%@€âLL¬’ :XMEø©½ìAŠ^ÂÜ<ÿdlò¼êEá½ê³bAÒg@HÄ- óíBñ›ãyPI’@€¹bôn¢ZòðîRñåË8—g8· :JsÝ4¶⟲$x“âú°“=¬>8úúYµåX'%+¾Ýý;ð Ɇ:¦ÂâìÅÔã/±*c(æAˆ‡ V3¬³Uš_ÂÄ€ Î{8úoáÇ·ÊPÆáÌ0ZïU°»Õ›¸ôÐÙU´$Xq®„ ÛÀíJƒÆc;ì…iEe‰ì D¼ü¡ñúì½€ÿÎŽeZ"}|™¦nSšã£'ULØßßS<4ØÈ³cøÐö=êæüxu œÅº ’!ä*Ð{樭íkвýíÁnP¬mb»å+eG¦(¯³šó­ù}¯¯ ÔÕmͯäÝW^‚«gŠsü/({ ÂÝwŽ8QßKH„fSÂzkneŸW\1Ù·|´ìå]m j±Œjû~àëT?ûbq%¿ü1€Gp^.¦™Î:@î-Šßì©jÃ:_ÑÝÛÛ Æª‚ÀzµÇ›ÁÈD9EUú÷Å‚£ßùwâø˜ØÓ[e Ù¢øýÈÉ7\&— >ÝSê—.Îê´7¹p¹Ì¼y‹i8@5ùG{Làr-?ý—£û5ÝÒ‡_`ÿÂT|™úü׺¼‚ïÿŸ¦vQžÖþó_åº J5ˆ™^·\óFuõ_u{oŠþeM—÷þÍ® oä|ý~Éiw™L&—ÈfN(þ°W‚à1á×>±Ÿ É4]¿k1ØC|ÉËŒì¹áo&(zÌÁq‘Q\1U,ô›Ñ»A{üÍ '÷F)tž¼ósfx].A"àiAüþÁP¶›ãê˱‡B/ ¦·7&6õöVqÜíãÀú:|K=þð=ŒÑàˆ!H¿Ò] ßìßp‰[æt™tR"g² à8»À¸]x—L9œ+0 ßwë}U¼>ý.yû¯õ³úpWÂtp—!2ûüuþœÃþþ7¸O”x¼ŠáÞ *Ù÷g*y­\ öµö—e6u :õoíb;üáÁøêôÿÏÛ»@·q^ç¢Á˜) 6L‰‚Ã1@ŠU(%V@ iJ)‰F¥2ȈQjŠŽäúD¦Foö¶JÏ2{“ºUÛIOc¶Ê&ô«ŒË™ƒòÖiÌÈ!–g†‚TÓ “ªé©Ïr.ïuîÞû€ üˆÛ#zQ bæßo¿¾ ÷¬Ìîûû"ð'7Ö ñ»Þn´Üu›Hþÿ7)ø¿˜$¼á÷—ùŽ>ró€OIù 'î-0÷ß¿Wì7è±Â]ø¹ŸÝ…¶²à‡Ä¿+ˆK’–IœÅë)M^–5‡5öá2í‘‘q(øÄ5š àè3J*­ÓÞÍ«;ÛÑ⑸¿½{I£O§U$” ¯ó®?HÎñ~Ÿ“qØKeß|õXaEÏcxè|áq²G,êÿpe\\W]ôcÆ5Åd$D‡_ØÔHóø†éG Q b|vY¦§Ee òË ®¸síÖÓžzÿ#þÏüÉ\÷–lœ®þ”ìÃyhxŽC¡(¸¥urìRqÄöYaÂ`ÿŒL©ã²?¸LA4l.Ô®)1§bDÅþ8þU~êSŸZÛÉÄž…ßëîäó7-¯&ИdkÞ&³Ý}ôØ+î‹÷ ï;ü=Ø¿h$?êëÃã¥7H<îr»ûá÷š¸ýÑÑëK©¤#XÆšxÒü+C{EŸ…ÿ‚ H:ØpdàÿÉ-˜üéHûÑ5“wö³ì{à $ïó'¥d>à³øý×ðuŽc%ª8ÒÎÑ#±þU©(/Çk¢Ë:^òåGé½8Š–¢÷’¼†tâøªhØ2É û´®9é ÕÂÙ„ ,Žë w<Æ¢}K7pÐB†¢ ð£ð üÂOL¤höóV#¦x®Ènœém»{fü>ÖsÎ…aP a J¸0HbÑ/¹AÀ€¸©¸ib“xñGÎ,Á-¸áLŒ3K‚îÃmCry‡Î?m|n-ÈÂgŸßD@äåÏ´ƒð8è•’7᜚,>´f–cû°Œ)À垌îwˆ=¯°¥ýÒwÄ¢ÜßñPìéϯc\B—`ˆ9üMÓŽŽ€¬^ƒgR²$-¼%IÀÒÙ0¼éá‡_ÿÑtãôtåïÇN<ÿú^-éï—ÜÉ×n–@àÇ€€9*ެ…±lëèµD¶õÉ®s®§[·ºè×K'Õvd ÌX#°ûÐdÇŒ,§Órzt¤(å#£`3Þ¢o%0à4®€gëå#6§Ó/§œNxÉȪñéÙ„ª¾:úôkÆß'þ¹m?Ѥf;œðp”Ü}Þ\Ðgævÿg•À”áîŸh²¬-ÏÎ6Uì5<ý‰áurÏe󹚷ÔÝ%*Ú>ÒoÆìÁ­­ìǶªjÐi¶OÁi7¬ý°fµÎéË(ižŸ­j;|!µ’—yþâÖ ?ÄÌéwÊÛ×ÌËðÇ.^¼¸õÜÅý}|¬ä@üí­F^œ‘p)?6U$¿ßZÝšLˀȳàÚ’«AäHâå Ã6i¨7QÑ#’ûÇ_!b %òºþÏ ¸27Ús5³9Í7‰MÑ<ðO@‹Âß…TÓ|Xë€ñuØÐõ‡âïÐú’ÏÿûçßíY2µ­:çÍÎÿ͇Ù<à39dŠÀ 4ˆÓ!IYûÉÎXÉ¢¬°{EO$e°O¬|m}ÆðÇÛ\æÒ÷‹gr%OذØkoâšÌNÜÝ¡j¥í6Ÿé§GÄ’À'¶^Üðà%žSã¸{©˜ÿøpYkBGV½ã”3îäßß´À| %GÍÛ¥!3D€o|÷ßÜN«{Äî…²š+ŠÇ ]¦F—Åqžë¥LîÜ,NT)î½C$öô•m%º®h!ÉK]ÁÍ.J™-[ZÍSšc’·v &À·K…å Ý¾Wüã¯5L@XZÒ!ð(ú ‘’}®=ãŽ?Ôm,$úôý÷‰·r!3b1‚.ícbqÿM{{¤lfIÉØƒ˜{îHýp»$E¨+m®¬Ûcw‹#ð,85º’V–]×®DM·8uVÜ}UÍõÝØ)ÏhÏ<ËXŽv:h½rP]h*T¨' ýÌçÙ Ó~WÜÍWŠ0åìóÿ›×=£—ºÚ]Äw °hÐx¥r¬€õ»c8&aÏ~Zá! ØT"÷;+ÒÞ6óúžÀÔúñ î¢J`Уáúç$i üm¿ã€¸òŒÝ wÕÌ}76JIíÛO^!ª§”Œ‡¿­°OÛ#GíIÍ4Ž}øù$­Ôh)±ùêDE·ø,Ûa~VÄÔú í}g>TN˜¢EºzŒäQ¡G°ÀÖˆ× B³ƒìùGÅîÖPÎ;á¸ã>V)Æê`;R…•¹Öí@~Mé›áZAë«­üx½ ¤åTÀôµ?Û3^&–X‚(×@öEr@ú¶=VdSˆŒï¹ü¥Q8Û?}ÿí·2È€ta‰“úU;öIfFØÜ7¿ðŒ¸ÿ$È‚ýY¾YS0ÎÕ2N›¨qÑYÌ"ëÇdó–nñ Zl8R‘f{âL>ÿ~ñlaýYZ'  É纡€*dÔ‘ŠÝóùµj kà`ö™õàéárÔ†kd[E6fû–1iΖ‹f´eœ ‘GÙÒöÛO\À’plÊ2Xý¢|?IÔ¥NE‡c$÷ ÿÄÝ(óI¿ý½{ ©Ì!IFè¥î–&jq¼P øþ¤î»ÿ ïk4)XÃå…½Ì÷ˆG®¦‰‰ƒ,¤‰Ï¼fÜÉGoZ  Mº -Ú2ZJS÷dž½ïÓwžK18ª$¦bB$ÚãŽ/s'¼Lì i9Ú0²¢<«BL„;vç£Ã⟶ìâ˜öã­øæ‘dtøV¶0Ó2âŠ_¡ÄE»xöé'Ÿ¼¯]¼o™îÁ˜ ƒb ôæí80TŸÀEã’´-ß¥Žˆúâ^{*²IºÑº¶$Ç»Å3Ï>}ÿÓ;Å3.{a™Ø€¯ †/ÕÃgN£ÍR%ÀÕ8¡G<ó;oþ¯'?#Æ*ÝÈK?ÖÜÆHW´ÀÔlÌNû±K›L€°ÝL`Çöó”÷âBÍ­[„pŒÉ÷qÓ+êgMIޱ£‡-±az>6ü-[ÍÃi¥íà¥ý†ä™®éY“=Êá¤üðŽ¿ñz¹xêž{~óžSby¥Ûáýö̶Ï566JCa|ðÿ°Ø“¦žÛHï 6‡rõ«b;»“ÏÿÚÄ WÁ–¿PÀœ~P‡ÅáÛþæ§ÈÒB&`&åh„[בßÏd[›Wó{xîr¾‹ëáQ~üRåmšžPapßNz™×ýá‚dMÓl¨˜¦ãýH£8“÷.;ÆŽ—&êðÛK1Àá_IîžQqxXŒõà0rÍ }‡óÿY0àñ"}·Âd0¥)W÷·ã›Œus ÿê5x“u3Î2A8¹?†ÏöÀÍßã܃„ˆØáxh9]Ó#x÷/N`J´×µVû§ZÀ ñÉ õ/`kéà,Bˆâ»Ï໿þûÓÛ]/àð§+«»<†OÇï[Ó~||ó¶a:ÝJýgÀ«E‘J¿¢hŽ$˜¥Þ³£â¨(>ÿy{”f#ãpvÍ ]˜nRtì îljqå·ICA¥B‡ÓÂ+ؤéY{Þ¡œ_Е4¸S¸ÍpˆŽà‚gŸWcƒ˜È–ì+lAÏÜPG HÑ«z!iÆãp*Ãðp}©€ä‰}ãï8=ÈD ,9ßÀØ=Q¦ýL÷í£ÃËûñªŽ9îÚ=®m ìÆ©Eˆ¾Ø&VtýåtˆÏã©t&À±Þ…Ø$\k‚T»Š²°ÑÒhéiÇW=òzeåÝ®—?7=ÝÞ§_{%¼É¸“8uÚo¦ùíÛßz¾X¼ð!zB?| *7ÌÀ[úIËä:à¿Ó´{ϳߤò X{2@j2¿ØÜ©êMuꂺÆ—Î%Â[£½b÷þM=û„8§¤’`¿çJSr…Tì>ÞsçÇØ0ûj Ó˜ÅPk=™ŒâuÙ’8XÐBíØŒö @¤4t8¸²Ó¦ãB¼o»%Ì+*šëáŠûæÞ€ïO¢å dÈ áÛÈxÿYýʉžý»‘ß ¸j’·TãëXEâþ#GöïFðÅ‘ú«*a‡¸}GzNü¿…Æ„$ƒeìÍúš6…ìÂëzç›öÈD¥^ïÍynzõÝÇžýó¿0ool<œŠ:Êa("üåŸî=Ò_Y)•h?=>öw›¾xkÕŸMš Rðv’žž/›‹^?v価°&"T½yg“F 12ŽMPÏV¿Ä/ÁgÃi…Ã,G]&-Ðuð¦êÚ±žž?ʤРûÈñ:ØKitSÒŒˆ‡ÅT΀FÌW øJ × îÒñÕŸhüh ¯0Þ…Tö¶6S CnÅ›û0á!¹ $)ôë›6õ„-Ï5Xy,y ‘¯ïùî—^x·YÃýH(½ò«þã='>VÌR |CŒ;U€ïÂ"ðL÷KƒýØ8笲L[¸«òîgŸýʪ¹cGeåŽÆiK˜Ó4Uœý÷öY°ªúŒ¡Ò²fÊ/þcϦ?þ0¡à‡FÎŒbÇ@›œòcÓ ¦üÒ]h¡|p˜ËE`Ãö ¤x™éÀ/³{LØÝ!¬š>$ýÿš ¸0ãÃM:ðqUM(Qqˆãºš3Æ.ƒ&ä ® æLÈK»…Ñ{)@šÔh—ƒhõŠà¹W¤¡Ëù`…*…!B¬Ún±Ä± ZW¿ç?ˆ8Œ´èb °»áÀCŠveü±-ßšæ++OJ–—Áô-ÉdÆ"´yŒpÀáý5H€!9àG¾& 8^MIá“ñ°Åm]4Gø×êx¤2Âá²^÷¯Ü’!f#7N9†-DvR8ÔÕ\˜-é ”«§4GÈþ®¹¸"cà%[ jm9/`Ÿsx|ι6¿i$.ij¨nRµáðÿ8tèdcåë¶)¥À‹•›c®•ço–@F Ÿ¦8·Kî:RGáÌ'íSi=dÃv6äí&TZápLÕƒóïØÿ?ðZØß‚œUž ÎKµ—ÀD[Û2X€ò*´xÄ ¢(˜Òq&Ô:Lֵت½B ÐöòÍdoŒSgý?„ׯO‡ãà@ëŸ –d2ïÞ ߯AnÏYFÆÞLþ†Ð&qüX—„lHX…4gºšu¹pƒí›näHÿ'‡[&‘]¯ ­º¢Ø7üåzÏã a¡ÀˆØÞ°´šð½S†³¥xWB£Km.&Ÿs‡!ö7><”Á©±ÕNâÓˆìšýÆÃ•w¿ËLßr€ Góþ`fӨ殻¢Æ:M1eRpú„4÷?À±Í"“"/é8;ªª`6O€¦DÚ0ÎZ‚ ÐX›gûÀðaä•£î<™¯eA֘䌫`{xΘÞÒïø »o5¿šÕë+§yÞ2ýß6€¨*ÄRÉï2HÌÕ&ðìËZ*9õ>‰AÃ÷kÛC>ã÷pfi-® Ô›6ñœ¶„äÇ ÿ÷Î?G€Ä€&ðN?Çù~Iëxx{uÍ«f°v°Âpx˜Aîíèj—Ý„¢Ò[ œ¥ñõ²6»Ýç÷:–dÁÒ8]YùxíÞžYŽã Òˆôv¼\Yù2Üy–öªÆ¸+¿•èoønƒl:,õ~ÏŒñüŠ#‰ìWÆJK -:3®§ ˆÌbŸ~ÝytÚ¼êõØAU»òf0•C/TðBßV|®´Ô2ý‡Ç.~<”PÓ EͶY5ëU”ÔÉ™ygõ±Á§¦)¼<×…‰Á9å)X€*ÐÿïÒÒÎçÃ4Ùa“,–mOÕ>B?ÿ0ÀE³¸Ú€šæœƒÁÍ[Ðe]]ó_–CŒ®wÁí­OÓX¥BwÄØŸ¦œW°›O –±UœžÐ—IT/ö»á‚FmÂܵŸE˜iµÕé‹ðûAVº±N{>åþÃÛ§¥£¾=”õ3W ~ðíÊ]|¸û£@^ <”t=• QÀ!+Zƒ‰ØÙç²)§dpUL¨¨3^S¯;A€þ…—Üãuªî®Ü¼µægp¬ˆÿ™,˜ûÜe~ÞoÎf pÃѶEWݪŒÖ`f€‘Ÿ°4€ÙSW6ˆþ?߬ÖUà¤ÆÆ `¦ïjP ®êÉâ]Çps²ãÝ9æû!R_5»L‰*Ž %%9~Å;sÚRµK÷Žçí,°yxbÉZë–Øpã>¤Àν&-…²À±:éÖ>÷aä“ÉàÞ¨‡íxDÚÄ@Ûœ! D¤Ì†1 àØQ“JdÁ.ö¡E¬SCߨ|ø¹IÁ2½=ÿ}°/ N39n-A |AH‚ŒŒJ¦ €ïgÈß·è´ûêÎÃRBEç¹³ ¼n–GÀñ—¶Y,C®üf‹4ˆgàþ‡pÉEŸ›ôŸCrÔl\˜pί†»dÁ>_‚”e̸°ü]áÑœ}ÑÙ¥&®pR¿[»¢ þsØÐ®xÏóàý7o_²£²ò^Ô~«uEdƒÁ`¾Mrܧh¶›„Ç•ñ!ÜRòŽ¶Þ špÎ,àV{“–œ vª¸ñ÷š®¶Ö±cÏ’Ot̃¸Týû«È›ßßÑ È¼ï\~õ¿@[¶‹Öƒ£!Ѳ?¤±F¾Ì‚ h™Ç‚<­ÏH¢íáIV^´ Ì?E:ÎNµeëiË÷m1Í—A°mÞ“‡þRýûE€?yËMNdîqà€^ní©›ÄJeý¼™Þ¤9€”GºÞ Ø•_ÕÕ–šN\r€±?\kîˆÓ¢c´ã@åW2^“Ï—L'² „À‰„z)ØJ3€åÄ€¿Íf7!Ào‰ }¶ü†>A`ú??‹2;ùB~.,ÜØŽŒv-BÀ ²þ B€‡·~ä!@ ØåT ´sI#À“ÒLÞåî±#«˜M²¹‡ŒR¨©2€þ:ÛÅAI²ú•¸44ž]š>m®$‹$_©Cý7’¢®ZvíDbŸÃc¦t`À³HÃó¨(“ç¼6E`ÊžAÝQrÎ]ÏÁªêû~åÃgL87¼þøôËf?Ü}Ó/­ëP)‹‘”S” íÇÚ“m5‡ÛZå9þL €«}M¹ßišZÆì%G€¯ßšß?W…ÛNp-2F¦Ï‘þ× "ã!ÒD'ZC¶šæºl(£Ûó&þ@ÎgC r±„3Âyòÿœð6üßÛ>Gêÿ€—²È*+ý/˜GJÈôs€Š‘MŒ.kmù­µáçnf i) W³ RŠœ•Šÿ&® §Øá†Ëi}5¢š¤L«˜ïÝi6÷"`˜²"xNrÕU€®Z7ÆzÆ Óû™È7€×iûck3 #[r€””É„2……³¯Á›¡»Q–XsÆEb¶­§ÃßxÇŠ - 9×vˆp•°¨>\ïv»ë¿;€Å&òý2m5zgCR“39ÐH¸&jV ­Öduu&Ÿÿ9¼ÉÕe¤ìEBÀZ-*³²ÍÅðµ!³ù~D:mDÊ6LâÄÒ2‚GÓ ³ý:nyª÷•Í+»¦êÁÜ”¯%­Öp!8êèsþÿ0¹¬@V&©¸`ó<õÁ¤äA!b~ð•3±ô Ïó`DLá&.ޏ‚!ÈCð\žåÑÔ¦äçoÉo;ü^(¢Õ†6ŠûäûÉûƒoñ;}ç™òëi­ª^Ã`J‹Ž1 ü€Zøz›JôÆ­¶S³-."A¦ß+zÚSÆûüST>rL™ "BlS²-^¶âø§9¢¦ N¹OÁ[æœÛ`è?xxùñŽE×£Ûgö©íO4n§¤«’ÂÍ¡@Î?ò*€ž पž2dÁƒlvD³Áe@û[È›¥4<§‚—Ð,@$š¬•ú#æm Hii:ŒËõÂáÓ ê¹ú ô3ÔLsÄ- &9:30o'Юoe«  8C8CãËïܵM´¯¹• æ!Ø'€×ƒäÍ~°ó9×B57æ…œÕÅHõ¦l‡;¨¿«Í!§¨üÎ-ê´îØw:ÁÕ·Tüû:ÈÚiÀ†__Üp/!îîÀ¯ðÂDG¨;¡ÔºÖ`h².KY%›¹&”iiKˆxXÑ L(Ü_iÐdÿ_åW–®ÕcÝó7̶—(î·ö®nØaXp}Eªò?0kìöh² B€Ó7Õ *qcjWÅœ¼œ§sžÒã )×’ ·f²;gàò.9eF]<Û!Á%³•Ï?vÓšor¾¶d»|Ò@y[&%7ƒ$u`±ªƒ À¾®.ÉLÛ€WGŸ`}ÉÙúA Á'óÖ–„Úœ°—õâê.Q6„ oóB8ç›?üî\€ Aö…0íÏ;ýI€‰ ðéšZ›‡=V%Íù¹ ¾¬U§ P‚¬¡—¼E×ÑŽ®gA$ÿ@Õ]W¦Ê0÷{® Yf˜¢µ)#§p$Iyýš’J€)íêŪèeCÿÉû¶½TÚë÷ƒíÓÓoϳN8ñî† IP×4#™3iÑ9s…1)y ^—B 7Î3)Åd¾ÜËrZb»‚ŸrK‚ìÆe7Èv–]Á;A,`ÎZÀ5’ùu·$à͇»4–ê²a³ØkŒž£Z´JpSVF ú²jMÀ†ü,·4JˆNAöªùÅÈ»PfýÈ Sçµý Ç·¡ŸI±:=Ÿåù­¿8m¡¥ý–°Eѽ|/®B–ˆâ<xÆËÑg¡ã(Äð˜wÕ„UR¢.‘%Y˜ìZ&¤™M?š5žè¸(BÛ_Ÿ¶€ÏŸ[¦ïݸÚ2F¾½³ˆ›/¾Û¨HÈôreå¶è²ŸõKjQ¦nbv9­"ÉÚ|ÜÎäÌw©uÁ:‚¿išlIÇ“€ Úp$c6_4è)Ë^âyÛƒÛoä|íêXCÈ­åhÙ| ¼: ÇÖ––&Ä[HK‘0‡Ë¤R©+¦m)lið:TÚTôÕ@€ûäA&àIbcö8R)Ó\M€P[0ÕÞ+©¥”ƒ!ÿœ™i®[@- ­Ú¢F©¡ ákÀ˜žM¦PÃU}¶%¢ê ½/lY€ó««q&Øêâ`Ñ ê‰Ì•1Œyü2ø&›ƒ9LESEAOÓÊDKú«áV¥1r«Vë"q¡vèÿ Ìûsãe/îBYå¹I›Á5ÿvãôöE‚½r+7f>‚*€¯¢K`þ8’…ÀDçƒY$;0|>­°ímšâò.ƒÛ¶ç›WØ‚¹‚«¶InÕ=¦Ûªò\Þ¡jÝ@)À ÃÊZ `>ôKBN/¦ð±”2…°ÿ¯ï2ëȪ '"€‹ œô„¥>¡¦û1ƒ0û—R)ÿÜâ‹Öµ¾Êúeè•Ð +ZÒ‹MheX&`°m8ö DÀ‹á1œ²‹sc7Ð[‡·aæ[®Ëq[/oˆãBD\Ô‹kÆ…‚|;g™ÈR?9C™º‘4,€·¡«BuKRýFðÿßÏo½ ci_Ý8¦Aû ½ýwôÐȰ¸Ÿã;y·Õœ7uN²”³çÅÑcV'±;WMÏŠÃgOÜ÷è¨øgTøc9]—ÓlJw ¨ÿ>KŠ£^¼ v ñêùòÒQ‡jÀÌ£ÎÎ4A|ç™XàöÁ—ï=ñh»¸ÓaÁC+ðaD˜tüTöw ÜÙ _øìÓÏÂ5 ñ‰q¦þ ý»^¨ð0uÃPc@ˆÌ»#‹7dnuàñÌ¿üÓ“4*çh X5œFCNŽÒGFÝ“i^4öóÈ"‰58ÔÛ.¬€$¸_)DZ¿ßÙ /ÜÀf®S•µÀÀ¹5Ÿ3¹¡óëbtÌQôبxðÄ}{ψå¸If‡ù5½X¼ÃâŸD¸Þ•ÛÁ\LnD }xú”¸A@~5A^5½´{tôìÓO?»S|äh®‹àhg¼l @¡Ù¾ù¼xêS?uJŒa0L‰ÀífÐÿÁ²ªðàü¹{-aéÅZÚ (§ÊÅ åâ—>Yèõcƒ…$*›%ÖY·ÉdSFéwþÎoÿ6Üá',›_m|Õûj¾ëÂî´öˆ]42!•3–…Õ.Ñ3)rÛâÍÊ|s¸ýã?zôãG÷ŠÝÿæ-K¢a߯.ÃMÜ–r˜‹1›‰% ØfLJ¦æ—ˆʉáêvnçõЄ»ï…²Ž¤–±@ë׸¡1Ë\C³ÃdncLü8ýÜ@’xÔ¦Öt8ò>î8 î?Ä"s>[§n²ç/Ä®§LÞLFÃáø qäÓDf0"Þeɹl]D‹Ü?è¿lè¾ …~søÂô2Åî“•Oêj+Ä Ùê¼MW;vñü[z"«Î¶qxž+±á·ßy;Òì|Âd¥”A²þYPg—SNd(ˆ·Çî›zíèÑ£÷ÆÈÖ£\Ž¿hηÙð¿«aÑÀ¦ÖS1 pñ#K~Bü£rÿÍâ>âä2JX“Ç>r÷¹Úó8À €ÕyÀi0½ŠvP:°G<û&>žÜ  l»å^ûÙÞ¤&@­;Jn|›ºÔöÍ`NUK]m¿ñQqÄæ£Þ…ºŠÝâ©âìüÉÞ»Hpj¹Vùãé3o(&L!R¼¶;Öþqx/_þò³âÁŸ²llbí>Ãqo}kó,ö|²hÛP2†þw¸M,p;ˆû¸ÉK|¤•íf°szö-ž©z0œÓ¶¡µ¢°.-À±«l®8õW;‹Â9ü™ˆm÷óŸ?ÓÎ×)"W²ØX˜õÁ‰¦”ŒÙŠoÎ(3¸E8?n+)„ù˽‘}¢Á!øæÎÄ„ú*ݨæiV[«Ñõ¹Kj5å=&6áG BÆ$c3ÒÞä°Ó'£ijÅ™"Þ)qßÂáÓÛÉí×Xµö_Åh;¥$'­‡Ê‡Ÿ|³@g§ÅB~,£K,*gÚœÕ&Xâù-ÞoB<ˆÚ6@Ü®ë5d‘pßs¸ rh(ly¹ À­lB¤O8^d zH<{uY1€ õ†|dÜç5¡Ö- ãê»Åßý öø½ö˜Å"ðV6áK÷¬ål ¶n¬¬–ð0|)ÙÿÉ›”øæðÙ"á&¨.µ.™œ“Œq €£—ðí¹8llç±u6· Ø»FF×8®GWT_¯»o+¥+m6‡Âñeï° kË­ux”þ¨êu¦wÆÖ^æÂ9\Þ]móœ_#Ãû¼Ÿ/Û#YÀ¤WÏŠw¬1µ]Ã;…ïvþÅþ¼ûÄ#[B«fâb²ç3 ±ÓJ Híz‡Øý¯ [}Pÿqb€ÊòÎ1œIã#¶Ö•ØH … NBm¶w³¸|SXàb#Jã£gb\aÂß…×õžG‚ÕÀí‹y[+ï¬+ÜÚ*À'F¿Àȶ>ÿÀ¿Àí$G™0öÅy—ïÏqyL*Ñ{ÀÜš“‘Ûòó~9e2cɇÇ{F kÞ¼O<>رÙrïy%T£fmJ:^‚Ð*ïZíäTGJ¹r}˜þÓ±G~1gsi›ITì[ãÏûM±‡ß³ !ÀÏó‹_:µF¬{&E[Zklsæ_Æ>S¤4í^B3–Æ­·{bs:¶\3`rû©O‘öÃ_ÃåBvü›î—ꎠ߾+ÌÁ6§ u¾üÂÉ$ÎKxý¤7×f[?‚4ïÂꀮÿswûÿÊÿZ€û95±~Cµ©GKµãâ«T ¨¡JÀ/vTZ°î„"^×MÊ|k­ýµåºž]†`®)«Ö›š°˜€ñlÕuã£DZßBÏ'1Vhm 6 :ud²Ú+ì”nL.GM0c&¯ÉdJ¨Y“k.üoéox: ü[‰ní隷„ÁúúÚxùð'ëð¦W†¶Ká¡Z·û;å+†á$«¬ß^_ÿèpq‡Æííݵ«·wr»MööŽïßÕÉq ½»ðÃq]ïœh:!>T´#Ê9¾>³妑‰úúzž÷Á?}¸%ŠúêOî_[#Æ¿¬¾~¿ò†ÇÄD„ð>nq20ÖÞØ’áÉ(²ÿýY?€§Ë.–nmàù3¤þ¿à £G®ÒÀ”× òdJ‚~cÊÌ?iÿRŠ×4…꟧F›ü{ugû›•{r´'>9f sK¯®v™pDd¬ôèñEo”… ‚ŸcˆD„>Û¼ùÕpøs›7.¼©”B»Ü²ãÕÊÊ›7oþ‹»p*F™;ør|þé›ùò3ír p#51°G¯†=šxþ‘ô!Àïûµx¤px;<†Œ¤°tom?vó¿²AÁíÆØy èÅ¥`ÐPCeðÿuºúϱg~£ðøíÑ?Má”Â:[1pã>a„°°‘ €—¦`ž»9`cüì¨J4yTäTˆÅ¿ÙoÕxŽ}¸ö/=bk·wˆûӺƹ…4cúÇiaUYÖh€Ì1´eÆ–¾ö‡ôß-¼ÌcHŠTüpË¥WÊcÿmÍ”ã²Y ýµÆÉІ¨Úq!Á¦a&9(ÿù7ÛŸ¹ÊZ¿¨HŽ­¹ƒ/³§4VÐwÙâWѯž9Sô¹O¶—‡×q"€š¢4DªRròìûäõÏ`Feiw•b€5®üMïæÐ§Ï•€{ÄÇ‹_ÿ¸øäŠ”Æ1y‰­oÀŸ„âI?ýhŽ_A"Tq„hFŸ`5K˜Ä-vKŒáœ¨>¸n/Àþ µ¨&œºÀ-€Š,”èŒþϱÏþÿßø÷Ñï9i>Ða²•&B«Ê¥û„Y`¾k‚€ ¯V6bâtΫ)«7) ൂ|ž …BçÁâwª“ðQs“®&BÆ#¨§›š ÿ -h¦q&„}MFŠdÖg‡ïO«éKƒ‚µ!î#äoîÍ5t©zÈ‹d`ƒ§ü9?þ.ü 3Éù.ŒÜþXa@l?¨èí¨µ'Ë‹‹Ç•ý;î¡»À ñxù…’u =‘mÛÀaóõèèEp¡[UWÔ·.••Áï²²q8‡ÂÇeã:~\·¿`ÜqÇòÇö£¾lB€&z{{'¨eG¨ïåù}k´½·ÀO¾÷ÃÊqõUeVNÜ[¸ÁGÏŽ~9Dþkïÿ XðmÄs9î¶~¿¤pk«·y€mÜùò¿=ºÿ€? ¥¦2Z4'äÅ0[¡Œf2Á©zSÉ(œ%vàIz•éQLþø¶ö/¬íÙã–0¿djaòÿù¼¹µ£jëþ› PiÞäÿöWÄE7sc­fÙTêêËÑ=7âíð:_Ûÿ6Ȉ4ôw%`g;%5BLôr^øA!ã'7Lò|¨!ä‡ï1€O}ª|ôën£ ¹kïÚJß¿ ððÿµƒ`ãc#E z0¶[Këéôù`¨¡’þ¿é€öRpç×òóÔý¨y=æuq€¶\R`À•€ àö—ä° Ùs“rŸ~æ5¢¾ö4­EÈ—U‰}Ȥ¯mß¶+¥Ñš ›Í/S+–꺇‹JQ~àg]ªÚ2áî3#Ó°›ìTü7¨¶b-‘X¿n¬Ððî|u÷ð‰÷HLO-)Èž¡§­åŠû8Κ}éjIn`D\ÉDs晤òÓOK4p‰Ók3…ø2ZÌÿ³Ÿ'ê¸>ZÀqÝ!q¤©@ H¨“¶]Ø©ãdãˆú ÈH"¹Ñòb¸óÝ.‡âµµM%¯œi/ÆXííu͹Œ’Éýkˆ·ÿb ƒA@IàÖ&ÿL|ò§½{ü®x¿âÇÙ@’ t€Ñöû …ÝæÓ’’{Mš“™•ˆÎü@6ÜEïdÂ,ïö±¿øÙÍaInëÀq3€@ êHƒÿLøý&S¾¼ë+´pÜí£å‡´¥¥%d!áöÅN­yú#‡8N—ž°Ä¹}í%9€ò´²tŲ³äHŽîür1é~ÃhM˵à"W×¢•Ÿ´çåÌ©/ À©‘Žm7"üøSµ–°Tûlã–ú‘¨l’ãÝE×ôØcÚϧ½d˜X'߮տֱ,àîÑ/äþH”¯@``e%SJ&<`€µ`Oà]ùjzµÒ¢ÖŒ-vÍ7« øHA€êÂt.í†ÈÛ”´Ú5¿Ö°¨d°ñ…Uægú>\hPëi©zvæXE˜ä'£ZÒÓ©¶ä½D+ÖäÆ5º~Ù;S·°»°Kðö½b÷!NOQSBZn6¶ŽÜ1|FCõÔã¯,]=`<ÿX~'Ó£98£3Ãw’ìÜÿéöõM-Îuõº†u".e©Û°#pˆâî -­&Æy¾ÅFü?ãYïÅ ñ¨KXÊé)–*FÞŸ•ÝŒ“ŠYK-í/@€©½â8'‚¤Ãs¿îX¨ð‹6¥ú^^ƒ·Öœ»pæó€ú¾Í«Í ÐÌ/»¼åT@óþ ”ßé‡(Õ¡!k#îFâÙ—¯v°b î²díÊÙ¦ÜÔR½Ö°•À 4Úµ”ÚMäîÔeÐs¨uJUƒËòÍð/­2Фfi}!Žv,´£¸ýÎñ}ײÐ\»&°)¹[< 7øµŸÅEÍFWqˆ|Ѓzá—ã‚u­ðÏ|K|æ ÀãŸÚ/\¾’òµÉ1#ãù\”B üôÈQs@öødÍ×0ý·<˜çlË X:&î|òËo¾ùå§ÛÅÝKYAXßlé¼Óª‰À§¬³Þe[:±Mù€BÄ2ÐÝ‹‡øé±û Æ©ISÜ£†8%n:I4MáF‹;.­õœí¥ü¦*tÝ}ÞÌ›_8+öP&ú[S›/ ±€Ù—£ €7Iqåâ=F °üä8xýmXùËOx¹Ju˜ ¹qRØr:\.Ž ÞqP¼©ŠÙî y4ù§dšB]¬ G„›–µ¥#âg°ðÿ4ú¥syŸŸúž3v[fJ`îX« ¸+ß…•,x± ÐuÓ†Î=/ž9»wç(y¿8ˆøGÁM/C€BÀÚ<œÑ°Ú…}=âðÈ£GÅr‰éãÚd‡™ìˆ'ò>£÷ËÕJq`Þ&>ÿͼ­7B&Ì¡ý1ñÀ£gGÄáýpæ+ŸŽfä šˆ\O&ý¾œCáâîv16¯.öÄ…=Aõn;‰t ˆ˜mYÕ9gË©¸“ [9š‚ØõxaäÑ‘ØûèÿcûŒ9§u½[}fïÙQñ‘Ÿáè’™qâ4ÿZ àœR¡¶nõ,Ào >ó»¿»SŒ} ‚7› e"Ÿ–φõ@°èΔbøHôß !Ï ¡¬¤So‡w>ûGð2ýqNƒƒÌZÃn.¤Ö!%Øá|µ"—X—CóÎå­9ðÃhÈ,Ò;ÊÅöƒgG†Å\Bj! ƒ\Lc-˜Ÿ™$rŽš±}ìPóû‘Fª³ù’Á9½ÖßÝ‹µoêÿ•$Õ–q¼¼4FËiíî.c·ýY_M&`Hè.mï–Y\EbPz"PÓŒÍÖEŠ$r1öZÛ÷n»kïîÇ…AN—Ójù¿ø5 äÅIXš{„ïÙo’?^~!6úÈ{.è0–h6ó|'Õ¬ïoûÒðÛ¾EÙlþ™÷áž!N­c¼Â€Þ¶–úv ·|à¿ÿ=Üý›Ù§8@3s^ìÿ&&@4øfD‚¹j9`s(8 ÎâlÒñä”qÎO½ŽÏ^ïi¾ð¥yá9!®gO‡¥Uì`³mZ)ð`^†Ün®0cš;<èî»ü[· ÇbÝûOº!RE¹þx¶Ë]¹©<6Û„Iþ0Í]JO4VVNÇ÷±îcW—4¬dò£¾ž£p¸ÇÞ þvÖæ®P-ÐãòaóÞ2`Êñ¼ bGÐÿZ×?Þ/S¾‰ôKýõÄàæ^Ü( •Yy•úy¤ìŽƒ»ºpÛo­ïmmnê4ÆÐ¤åŒÉDá‘cà¿?²ðü÷~Vª\nÖ,¾¼åñol³œÞŠ)¹-¨à¡ÛR²‡q)€uîÊЦªq2S€¨X3ó3ÿªî·EÜõõÌ J¯ÊGµ›¬(Ÿq»sÅv ðþp‚]Jõ??÷µ±}\*u¥ ™³Ì]„àuÿNüük?ôò½p*›[hËc“À®kjZøÑéÙg,?‰€ÐÉו«þ|G99˜ Ð'ñ'uÊpþ^HW[Ú2NÝ!ÿÓº?Dóz—’»ò¿ôñR Œ,E“™®&²z'Ç[{á]Ú7ñÞÚï—‘3/9LjõGÓÏû[#ûo¾¹ƒv} XÜÞØøöŒÜ;ÄGÁ´ññ‡|µòÕãJÆÇ–t! 8¤6ÚÚÕæ×LmÚZüã)„ÿxÁT&ôš®h×ö|‘¸z­2gÕšEÖ X½. ðjÍTæ]/¡ú×)ct*æ=}ýûNòë Ð·ár-KÈ •ëÄ¥IKec¸²²é!t è?Ÿ®Ð-‡SoP󒆵·%ìæ¸Cš|]¾zÍ8V"i8GóbÛ.vqg¦.ñ‘<$4•HÂá;áðŽýKR}~;Xž»àk¬R?H…[ÂçÃCƒ\ÊLÊü òi5­æ}»W±¢:¤‹Ü ÂÓ©%G€*Ú§3$qÈÄG¦Êúо¸fš„°´²¥iî™} ¢"Ö¸%ìúm³ ¼ç¯Ðún׸Æf´²Ífˆê§4Ù± ¸‘ÿÇ7Éñ³}îú—AOù¶îâùq[Íq$ý˜ûÇYªÈe«»v® ùnÈû{ˆÛLð–>pÿZ&iè¿Ñü#¯Û6` ©¤Zß,n¯lÜn‚(ÚbL|„ +þU›ü3 | †jsÍ :Ÿ¾£Zû‚ þNÇœtÁS˜×<` R©h'ÄQVìžT&Yîk2œ€ EH鄉·¢÷çÇ/çÐ*wÌîŠðBœßÕâÂ=J8xCë¸,•ÓäúàMJ  –¸ºÄOã–5=\&‹ãfp[, /¼¾”Z¢%ôh¢™ `¦qaµÇeå;±Ì‘¤¿'8 ‡k_uÀ}@’û©­÷Bìm‡ˆSr[ÿa‚Ìäî[,–¯ޏ'òVwUqª¥)»ÀéEןÖàM²pšŠ¶ )¯¿Íö®ópžæ¡½Þd IJ°S÷L°8€zB—,ûÞh“ÀÉc€ ´a‰¼TÛq×½øä>ެ‘TW& nÈ×â›tÖàÜVœZë¤ýuLû1»ÝŽ)kšÊxsm7n, XùêÄdd°Àú‚l“˜|ÈÛ\us À„QÙÔ¤jàîMXØm)T|Jª4àtÈàæ›H >VÐÖ€ÍkóõaIÕè븢Ø'̪º-ï—SÅÔ+)dÓÌ’úçqË8•ygœ½üXÎ q¶ \v5Ÿ¯"*Ö—j¼ŠÞ/M˜« 8‚ê˜ò×[îuÍ6uRÒ·© Dhqv> Ü“ÄBžöMè RÖŽyçlS‚ò”]eƒîZs¾·¼Å¿T­Ò B#œÏæxÕ ÂWÕ¡HqœFëÑ"«{Ô΃˜Xçû“H0ËèÇl*+þš±5ýG'0õ^Í?æUʼO,€ýC2€²#ô®Â·Ëž¹ó¨ìÅ)`%6å‘£9Q¾hŸ9‡!¼JkàÐ1à b¯òç9Ôݲ-6ÏêÙŽÚÂ,@[! 0ÓŒn’bÿ‰U|¦jO€Ü¿ÇV+L”EØ–Nëtå±TÞ2ôrUŸ¦`ÛÖ·Á€úKnII…+%šÃÄ𻩾NÓy#ÄLa€”ÔÖŽ9§Ï”$îÓÄiiûÖ<.€´¢±â *€0îÿ‚˜Àzi\NŸ¶ÐNÀ™N¤¬2 ê›%`¢5jªÃð|ŒÊîÆçа%Æióø:¨û1E•BçzY(Ì": P‹ Τ¨/-À‡ 1Ó¦¤ofð„ŽTs§šTpÐ3‡Ã@Fà†.²9ÙÆÑý#È-hhÉ n«ë€êkÉ}¡å`PÞ ¾¢hœh'uR³/ˆ£Û¸,Âi÷tò#jPBà>¬àø!Ðb‹hS}xh+NeHƒ{|}nL&o‘r>\R°oÄÆf®ÚaÔRcb£_: 9¦”d={} Všð‡cR¹f>„d_Î ¾Ì¯ds¬ Pˆp«yçÆŒÄñc%‹þéi÷äó½Œ=Šùþ!ƒ~ ;Ô¾Zâÿqêô}{ÿßéxÿœ ZIÜl"à#`Úˆ¦!À,ˆ€’qh&4Ô5Ÿ i&\"‹Ýz¶Âh•æÀ¿öBk ¸'uõÈ`ŽÍÊ•åô}ápýý¥HqÐÈo£s( Î=ˆ"ã/ÚÀó÷ ƒØ ç4!Ür|gnbè&v<¾ã‹`*_î’¥Q" ±mä çÿMyWÈ”Q€Rô«›}A½ÆÿÂ*8ž{éÜéðËãXå÷Ó ïGtÜÑO6dϪ'† þ!ÊAÀ[ÓÌX³]ͳ3ÍH^@þk½ ¶$¢‚äc¥0ƒBCÌ<¥Ú ±1a€«0€À-0¸ù!@ß•+!51“ʈһ¥PXŸÀà¤Ëhrº@r—×qZجßfl»„¦Ê¦]ñ²¹¬Úœwf–q†„ѯ̴ÂQlé`4:Ï¿U§8|3^nœYˆfÀƒÙë @T®×ÁvQµ<8$Ý•ï@2†Oâó—üÞ> :òU„šÑÃg`5l®2Ú^G\ÆìÔQ¡=“ˆšt=;S¾IMŒ©«ÁvÅÞ€Ò…[žÒˆïêì¶_6‹;ukøˆIIÃ+¾Ÿ·º[7&;LÕÅCô£ñÒBf[gQÿÍ&eÙÑö½¿Ä'ý8`ñíéÆ~³[?’½+§kÜ…ä^“6? ›< CX$ ÷‘Æè¼ÚpÈÚ‰îß¿èr,)ž£ßÊ>Æóçí.´ã$]¯]›D `ÇöbSÒ÷Œ÷wQÜ/ôYÕºÙª]ÄÿØ7†ÁýåüøøAxcÓ+nÒĪ» p#€ÞϺ§-“¦.éq £8m¬„›Ãœ­ž\^á×L@š­§GcÌ][ä<ÿ Dwo½œŸ?m™°rõØüO€õ¶ç¿|·‚Ô‚þ×^Ê>oÈwáFäÀã&C5¶Õ–®N4ã%ÚÏÜ.oÏÜ8û1X×aiØ–àX‡Ì^4Iì Àã´R?fÑôMN~#OÑ´>UÇ͸6 «¤…*@þêõÀ*ãýGV«uÂyT¢à ƒQá~p^—­|™OÍÚò>ùŠËF{1õÇeëÀµøB 6˜ÿ ™()A{'oõƒ}ôÃm¬A]¬ªwóçán$sÊ:( >×'¸)_[ë®Ï¿ï:C äÐí±IÌ= “³æüSŒº\Ck¿œe@Q¼«/X‰À² ·uœr‚“³Îü8?©¤Ø_DÌàƒ‡AÇYé/›ÀIÇïšÉvÓ–»2@kY?g©u$Lœ/Ñ9_wf´†ÖçÄYà/>š@>K¥EóâšÔ n,›¼ˆÌ%ä`-vžzÙ2ö®”dx³Š %Îù_­ØËOw–ò õŸDðß)'í‡Ç#ÌÛ—Ó²?°Ô}Âà¹Á*Ü€›ž€Y…¾í€î}¸rÇËãØOX;oûóÎæJ‰VV) 8J7±2‘âËk( H¬|FvXAžº~vÁÛæ\<®åxV(0â8 ‚ˆµTÕ…vAoBiéézç\- J@âóúÉmʆ‹²2ö÷ºÙ¬w_ ES~O¡ƒx‘Ê“ãGózÌóž$ñm À K· ˆOá€wY!Ìïî\d„`èÿg‹A…GÞ–l¼tRâ`~í—Á&üËwàf(™æ:zƒH@4ÏâP~“Çèz©ôY‹!ÙS”@Ji»ˆ©ûê…~ihë Èx Í"úà•å+Ì ÖØƒ…ÕU©hK§ª/S-&Ó`¢m_»zqó{«J@Í6YyuI#ŽÇí}Øë½Ä.«u¸@í2+œÃäYç²q‘ªb2çW×ô߃áñ‡ZY?ß¢Žˆºæóº~€Æ0Ë|$I@Ì6˜²ù8{¿¬ ˜°‚;•Ñö!@´yi‘—²¬€±H–dx]‹œ%'§–1„笨¥|fd¢zý„­†•{°ÕO`¤IÖÞ]‹õxúõßů®CYï'úëI߯í‹•ÿ |òsæmÓòoc°tJ°„Ýò’|¬`ÿNûMa€L1- øÿ-ø‚·d°no8³gV'"`X„mHÒR»¡Þ]o®`ræçÇyLÔi8B«§Y!V“;#ìØÞ¬šÍ5Èçà‚{LõõAÀ¶tºf±.€IHV¹àËæ¢¸Î–[á#.3e³Äà«v–a`Ιã9d©k»!¯‡&mWÇ–‚þš>ä£Pœ,‰~°ý‰Æ0e>€!@@pÙÛÀÜçp-%Ÿ’ 0N€…Þºàužµ ϮȌ% ¯ÇÝesÅ{¥úG&ÏöF8F–(PÖÚ©‘CærŸáþó¸¸ã°¢/Ô?8Àwöý¡0>É!ؼaGåvó½`šÍùÅZðÿØŒ‹’eÁÊz`&0[ ÆE/õ#%6§f ô\ Æö€†_v¾E)‡°åôâs`0`…çãðN!„L ämÍ´x-ëWTL€bø®È ÿ†‘G,M2+ð†<xú«P°Ew\%=^­¬lD ÜßWŽs¢–B°4ऽ àþÉÿϰ¹€õ J| W뢪òB<­r‡Ò.L´±º¿®cÁHfüL¨ÿçÑóSÛ0ˆ…Êw 3«f›Œu¹q67†f¨ Î@°¶Dø>ÆÊ…ÿÉ[~å#— vCÑ¢]„4ÙHÿpÁ@˺:fË{–®^]z#­&"äi¸ºU äÏki€û:1úòù&böŸˆðe×*®â#¿Œ ÿoJ€«¨ö*ŠÊ/—¬fCc„Œ”†þÛËþ¿»6ˆÁds!'8ÿvcc³›?¢*€Ó±ÔG½8zî „qaú'ÈÇÀÆ€…Æzÿ7Šƒ"3QªÙ <@@XÞ¯‘ùIýqABï[„÷yнkÙ‹®¼_Ž¢< ´Íj¶,‚ ŒjÈši Í qQe£´ãàùÍw7Zàó÷bsê6 èÿ’âÔ¦ƒ,¤ B>½€°º ’woàfì,¡*´á8­B*έµ”pØ~ÚRuø÷¯ìÁ>Î:ˆ—¤[qN$4{#Äsš–Éý£ÿOÚ?¤õ7橲™Bc§02˜šrN½ ì`… ¾éÀ—ÍUSe‡NÓȬ0éèþçŠþŸY€u`¾Ï=‘ŸÉÒ!.ìï.ïÞ¿2ÛQÎÖ‘gNÅøPZ„^[F³Ï…ÐlJìMØÅ‡B1XUð*ÿ»©Ý¯ 0Ààwö÷”—ÿ+ŽÙN‘U¤ ëÿVرã^ö1àú‘îî#»+P¿ñykÇ@ΛѮÊðtÏ~Œya°·¢GÀ›}nßãó\„ö©«!ø¾,n´st«ùÒ®ñgÙ‹øÿ³ÿ¿.'¸VÄ<˜ý?(/?ø[ç>`O)I€²R)¹ BˆíéÃs[öÒ^FÜßE±Ú þŸ9 J¬‚ äÛÖžîòžc™†y\ãCêÏv®3íçöõí Â³Os8·þ/¸¹I4nº²¾‚Ù‡‚õÿÊiÌÕÝÿveåËãÇáþ|kqînÀÿØtñs…³©A ]ŒÞPŽuwwïßÇÅ%¶áK×Hû9®gSyy«†q%`øë§-C§-÷hyù¦~7us¾;,-$ú„ÞwÝFrÿ4F‘Ô2¾ÿÀý³ƒGˆ Íù|m ùÔaI›Ì¯LbÛcåã öò±›læ¼jØ2èDÀ\~ ë´+©‚›Gv|tÿyWbA)A|¥  )훉£gFÅÑý]MÊ2Sƒ6éåL ¸—«†ÔGe\Ö+”Ø«³jZéDOì&9ðËKÁZw_•[Äsüeïi©¿\Û/ˆÃ_…s“3^ûʇ?GhŸµ}ªœ1R±ÒM_.vCXQ4 ÚÇxƒbb;ÊA?¥k¹Ë pðå£D±_=­ÖÙ‚qgõþu}kãÅøß A Ã÷ŸSÄõóˆ6ÁüÖ­Ï€Ú/Å++kçæŽbs¿—†öLÄDcì Ô1îÿ½ô½Å\ùz¸mc©…_ïnPáz¹Tsöoÿö>ûìÍ|¹D:þYyOeì“Úé\ViS+å$; æ‰;t®¬JCM¡Ï[`þßÇ×Á‚ÞŸ¦ÓÁøX¶[HõÈÿ? ÓÆæ HhW;/ð­…—MðbLIJþ?Ðþ¿cÝ9¸µb‡ÇXRôfk (ži3›,„ÐË@ àΦ¤Hk*˜¦)5$Ü`þ™÷OíßÈíÏBbì ìZ)@ü¬rÄc´iŒ“uÕÈÃÎȬdôXöß/ P!pIs+ Íxž|ßÁ«ï8¢½Æ_(<ÞcÅÌAtø{Âä¨GB%ÝûïÇ4{ ~#Úš1?qï÷3ðèPد³\º†z" KÂóz ¤ì¿xé–¯/ô9/ZÏ ÂÂ^™M…)]h«>X %¤è:œ_¶µÏ0rÉ} »`I0€€í„Ö1Fåî±Ø•Jd+þ<îgˆm›i†li àÞ¿søŽÿɦæ®;ÑíQº1ÃÌ|þ<™ÅêŠ}ëè%äv[{ ¼þ¼óŒ\¸ƒ•ƒ˜ú'Ÿ¨eÿo@€ÁJ Ù_:S »Ù‹ÎÃ;û^̺™6ïí‹ý<ǪÑó žXºb–eÐvñCî…@+‘„ xÓ‚Üècg™ë´ÿ 3¶–¬Tj‘îr`cŠÜH¬BâÕ¦Ä%àåã¼s%J)Ÿ'+'__€U¼dÎçyÎR¦\^IÖækÁ\5c{Šå¥F1àKÉ$÷PX3¦&'Éà l}^: (öÿ6£ÿ?ÌÜܤUŽå:;/:ÂÇ™ôâù¤<­tMy¹‘nw7Z¢¾8Úa+ã‡ô1W?¥m†ÔO-¯aÅùÒ:-ðñlIÏÀ"·îÉÙXäú×€Â`ª¡â}pj*9wìÕsº aq`|²e›Î%ü³$]=½'')SõÑvªþøiùKL ‘¾£yòÎ\[ ëíríò/_0EsØÞê¼pÁs~åÿbÀOH´y3gå¸ó/“ŸÈí^ÚŽŽbiA$f#$ÅaêS À&ÅéLbû¬w«ÿ~¹ƒq¬èjw·Õ±X©,xŠœ !¬[iæmJÌWÎŒÅJ0ò¹ÖÊíÿÙ1(Ÿ€LØìv¿W¶Ë[Úu—¥ç< HvlRbbÒæ¤Nç°΂»ä\¢ÝœA;Ìy†7'mÆÐ X—ÙCCECD"\Kš†BHþœ36'5èKàe†[”â|Ø£#ïLla˜ºY›D?F`" à‹¤Ä$í™À'ί·¿¦T.|<ÿÿœ?߸0©paúË>yÂ^˜4ÐkBfÏ¿=O¼·?a_uÞ] ¥*‹eâã æ?7#ý&Åþ—üs<À²X)¶ýêâÎÖqeÇò±5G¥Ng»€°<¬øg,ƒ9ã…Ú8ëMôŸ ÐÐ(@âF±òo”Ú\´BÿÏAçþÏÂX 0E€ýÅ0½g“ò<3’´hñ+‡œg`KE ¶W*piãu:ÁyÑóÁŒQü—ÎUêì›–””¥ÓÕk³ïböÿ¥_ü¢Ìt>}ª¬Ëÿ›$¯…Ø<Öìx<ž¾Òû°i—¥Ey1_¾é(ÁÖ|T.9žd>¨¦c>PÂúíJ· %œp¨?YL®7¦cÃnÀRÿXØ7ö‡k?ߦ`î`Á:0LŸ¿L¦(•'šjCH¤]ܳx38åÃó¼1€9Ö¼^I»¼ÿ‹ÌÔÎÅÿoDJ¹“•ÏÊÕÝŸ]I¾îf5™°ñ;PÌšÿƒÅ™YqiÖ~Or”éaÀÈfIá`6I\•ºDo°ö“LŠé–îXÿonšÆãW¬¼Ç﫞žó«ì^EÂm“+}‹[‰÷ê»,zEþ#Åïztý$7Rƒ÷ ÜÌð‹€÷oÍËè?âÁ²þßaôÿx9è]±«íQã ÛLýMçÈiïq¦Ó²nýéNZ˜R<êÀÚ€ü€ý÷†ôWÚ^'ÞbÁ_E»1A§g@™N©Ófóôü Ø tû–bêáŒ:¾GnZ­×élòìò:£›–“Ÿ ú#üb—e9nè …ëåŸÖ%•Z¡_¾C”Úßfž<©€Ÿ<‰Ý»x³Ùh4þÌR&× Å†!ë9.1A¬)L5´åb½? §þ…ÖþŽ$UÞâÂ-¡cK@åóy>žûܬdb3ÿó‡™-ƒÿ߈Hθ‡(0/`¥ãk§ó"ÃÃÓ}}è[Y»ñK¹]_30ná^ìs»/‰âÀ¼¡/®ÖýY †öô‚UxÆíÕè7ìÏOÂY¡±gˆ Öa’¿*ƾ,~`‰þyM Z›m+³ôo00è7ÕѦ¿Kq<á½^ýoîüHC2¦&hÛû×H¹ëÅþÓºÿKB:ñ—}+ö…+ã ®c”ùçõ&ÓúSS1?#vºÒS·o¸ ÛÃöÿÆŠÿ  hûÝz¼ÐbšÄ椇MÕ6Yø¥p‰N ÇÎcZÙy6¡_Ø\:ÞÝÈŒ6æ,¢{WN•Aà'@à¾)ºq-È {}xúÂ;äcýó¶íG¼ àc¹…‘·lWú…€k°õ!"YL•" ÉgKë"üÍ¿RD«/”öß_ަü‹C¹@2µt#{L•3ÁIÇÌÿ³Xb¬øŸ?x÷za„Σ*÷¹ëgÜ<óòtÆfm ”6v;ç ûƒ“«Õj7OÅe`Mð6Û=t6R¬Á¯µ›³EZ¢bóTÊCmzƒ›{&Ú[Œü‰•äånÜXÁî?{Ñã9£Á0Õs1³±Ç ðš¢Ð¯‘­¥ ?\xٯп½¼ðXá– ƒÈõü»Ÿ übž1X!i00áŒÍsZ1r¹ÄêÉUì?MþI ñ¬—y9ë«-eãìÌÁ1¶ÎÉÀ(@–oËÀø'ŸT] †?ìVöW=€`ãï¶ú\€ë»=ûòOÀ̤ÄU åï¶N…y£©0m›b®¦XcˆHÎCE7êNí0¡›³€ÿÄší0Æw/uFàêd×/ä¸ÀÁ¼œÈž?2¾›ŠKA[xÄã¹x\CÏ¿;ü]€å¥mÍ´Š]F~ô“íe{'lÙûo[ôö—~"ì‰,e–)‰ÀS‘ ð7ÿwÿ¿…@á¡q(ô¦[ÁsÑÒ@é˜÷Aƒ€±ØÒ÷þi ›ÛÿÀœ@MfäNZEh‡W,ïîˆþ92ø><œÛ®ÝX*”Žl>á9ûb7+7'eÿOÏÙu>—¹QTvX'TŠ5ïa$ð÷Z\…ç¹MzܲõEõLy}çÁˆKŸ›(%¦;åú߉aÏŸ;6dÒr¢4zŒÎbéñaÝ.XM&¹ÕÏc¯“­©‡×Å XtÜêPº`„aR£ ëàËêõ2oêŸÝÊö+ÿÜmôÿF9L”&—oÙÇ7øñ1ðëË8‚]’&Ï ~¾Ó“ÛG[ëzr5—ÓiÖæ-ì¿7  °R´(ú1HËr¢7Ñ—¾ycXùÉ’>纤 ÿB;ÆíÙÆßÆHCÄ’t\2éó\º½ì™{·é>Þ[ˆUÂ2†pû΀çôÑ„€_üâòæðè&¬¶ÏâÒçÌX§ôØŒ…Œ†}þ<ù±7 Q?©ç‹žó¼paù‰¼ ð–0çÕ/̼h}f½¯eØv¬§¿?YŒ\çY"Ç|{ÿ!ŠÿßTZËZ¾“9À¬Ði =€©}Ýô: -ß ÐKËþ`êßTZGüÿ37ãxÂ×i…‹“–[ÊämÀz² ]»¾8LÑsÐÒh?û`M…õYs5é4‘¦Wby‰îìTl.‚RXc¨ÙàëcË=¹kh:`´Ü¦ë±rr´s¤hkì¶z¬qérý6ûÏXîFtŽV*»†ëå®Ç‹¡\Ù´PÿÓÙ(Šùéz“â˸9ݳ(‚e$Os÷$)1üÇÅ¥9â‰KÒÒóÿ·jûu§²¿³þ-¶ XdçmÀcëp³ÿÈT'Íøã}aéÖ¼8v<í¥ö4ÿÿ¢óVŽ `:`›a½L»_}‡ì¢± ¸8º;öÿ-°¢ù_ÐÍöý…Là‘Îéé>ÑãÞ˜³'M~.ݶ S jXÇR^ç2›?&eÌþ¿dé\ЫýFÀ÷NŒ aÊIl¢v¸F›âNÐæve8[HÉ$æLôX=¾&Ûe°ÝÒ`4š¹Ï*ysÄ€`R šlš+Úð:B¬ü¼bʼ©ìm6nö_Â.W˜ð­RŒ< ÃÙãÎóÄõÒÒ@±çfX¦þ–§÷ûòÿo&`%â 0Sø Mú»c%:ÉÚüTƒ(&çÏÈ»ˆ/Æcû±Yp^¬4 '¶H*@—ê85®gÝ_DÔȉ Xî]©p8¿k]ì鹘_ºI/r³¤ àµhlÑ“TchÛŒÙ?´|úðÂü™4ü3”ŸM»´Ï<³/œìZÿø.žMÏÐlγžìZ š^n·lú ÄʈHCjA÷ºZýͲ˜…xõhßiæR„PA«à„Ñ­ð°‹Î <ÿ[8>ôŸÊI»éÊðXMd\S¶Ð¿a鸰(@M  æÓ3‚°1òÿo€ QS³Š´€ðÖN{õ'X ®§½à  <(p"wƯ¥f<p ~Ñ@%ÌAj¦uÝŒ#‚È}–Qàþ K®(Å ý— Uȧ9.5¦bv¼Þè]^@¹ÝF±PÞ×ÎÀL0š¶àa{Øbü .gßž²;V³¼ªç?ggh‘(,iþ$¨ÿ“v’›].㎬üôfá©2Ö1d;\¶E$ Ô~MÅ!g:0€ÌùtzÍÿ¸Ú”Z²xÊĉkæ‡4¨ÀÓ3”‡a>¬H3ºgâÑ9MOëŸÿ³ %–Âub—®ÄdCd¦»àd±—»éåÿ¹¹#ãuI,æó3úb{ѱïKÏèMD—‘1€|w{ª˜¬‘õ_\–ß„‰ÁVx@ÅT+p0ƒ¾®Mhú¤ÖNvÒ¹nk3Ô æõbÏëy#îù"{D3’E?³k;‰ÅAÈó'>sö|ダõb‡ËExÄ07¡á7æÖ;»¯ÛWá±Ð‘sÏL”Xm#€¦¼n%ÏwªÓ3ÌÎÿÓèïøÌzTµ˜©>)3¼ÿNGªNái]NÐÿØÄðní>N¨¨9̸6{m+p¦…3š3ÁUa^_”˜sy‰,é7uKÿLÛ Í0§‹ÜËrtiŠþ»’éÙAzrèP6G«ä‹ä–¬&ÄNHG”„GC#qæû©ìÔŸ¼éãÆ®ô]X^Oˆ ^ÐËÿÞן ±2¾=î_k¢©ÿøgü¼® .žçw´ ÿôn¸/—­7ùT±„–õKƒ‘@Pâ$ê ø™ÿñôÿe…i‚‘ ¿u0(xXžržSÄÓL€…tß„ž \‚¤ZûÃö_“QGõ³fO bM“»±W:YýÊÜ?á¾¢€ÞBä™v¶!ˆ>eßZbŸ€­Ä(»Nêib'Az7Ö°Í=<ÆõÓ…àDÂô'ôÉB¡õË”hz@æXˆÌ¡äoCÚ*;È=0óŒœøöß|sí×<μ¿þ$¢”ª?ü)ÙºjÕÊ¿üuRª^ß6HqJLŽsΑüUtÊìý?Åð†ÔiCî|IÞˆÀ-L¹..¸Âéhÿ{ œãùe$`víì“ßKã ‡ÐÎç!“Ê¥Õ/íÇ£¿l @šƒ)@·ŠÿI~ùXy½Xª]øÜ éaAàz"kÄä3qÎnàÁzÁZLÉ3fû£M iö#Cç“u4ÐÛµmNd¾×~¨R¬K3ó|Ýt¡4Q:PžRNáÚ©ÞØºˆS’A¹tºtܶ Õl@““ ÏäÓºÒí‹.²JÔ‡Pg¿éq&fé ¥8 ñ|}p›¡rBìÙ|¹"ëÓà_¦§ŸðÐ'”z}¹ë>ï¾Ð>LC•› ¸å˜>PüOÏüü™I5W³ô;R)Na,Þ9€áÜÍÎÎÌ›³¤l·{úg¤Œ&S:¸b›£3Mî¡‘Íëü¢À«TÐC¿În´óƒçt|~Ó"fGµÚ>p‚´ÿJ`ǃßóÓi§]¾vš3‹p§o¡¤Á̱=݉ùµƒ‰‹£v$÷j* ûǺ4MáÂæNgà"›.¹{²¥þ,ÚŸƒ;’tzÏ9AÏì:«—ð- 63M7½·Ï£,—…4»#õPÞEÐÍ™˜sË0Ù7¬ÕÌpžð,ž†µQ:“m/[¨zë`á2ä~5ÍyÎôwëô¢ðM?ÀRÙO(ɱ==’ÀÒ7£?7¿èaåØ3(AÛ?¼ûw- Ãçé±”æÂËh<©yE²^ŸúÐÌ?ÞïŸ`6›a¥%¦wÄ|¿ÈݨA`Øéš”jaXÿ»pɨºÿ-4]§¦,WÐé²Ò©æœ 9éð Îÿ—eŽÕ9#;w¡`ƒÎ¿ŸM÷ÌìbM¯ÕŸjk^Fü.zhQA§KŽøÇ•ºB{¶½Ç½H;˜°ÏêÕUüÔ†=¸eƒ°Ò(L„Æ#´°,†ÿ–¤+IÌNOŸGYmNKv˜‘¨Y‚d=4b²kAáÙE´<ãMæ£v6‹`Žì2nø¨Ë9K…ÈÁþR4þ‚¡­×? ôùÿ öþ3mœÄú¥!XчÝóšY9@tnÿóÙ~m`>–BIsMÿµ·¨ØF<ÉŸ Ž€ÐS€õxÏ{ÂfÄy<²™ÞíŒÅ4ûiŬšæ…`üLBA"Uÿ¦CɆš¦¾î°,lÔ2ÀÈ‚Jê' í‡×;5ë¨j±ÒÏÌ…#Kr±1«®‡/2i*íeŪ #´|è!Ma;;&êÍ©ý4ÊŒÞJ…™?¶–6ïÝŒNÀ4·Û œ_rÑ™×èn<›k½Ø—!I?¸†˜±D§,Œž $º›ž§ñdÌð83ãnCÿqO¹ïL)‡ 37¸º|×߯1T.üÀMËæÓª!©íò‰—nç:<-  …[0êxœžÿÓÀªÖÄ,ç<9¾F¬\ô™søô£À%!èËÿÀÁ‚¢ÅÙféó°ŒOÞ’‘%éì8£â €Ÿ‘®$9ÇdÒ`±fêEºwÄ»/IæÒæ7ÌÅE"n2ºrŽEΑ Ú<~gbžÈþ¿Oú#IúÄÌ‹ÎîòÝ™¨¹X4©iLûŸˆ½|<Ö>°ýšò€ àŸ­rS@¶ÒO¤©lO]„½qš{ÂéœSÀÒ|'„ÒFšVšy&¢õ?6'»u ‘ï÷KZÜ t~– B“eÖrãíOgŸ+5÷{=q3Fò‡8ú“4K^Äf1ˆþ}G†Ãòâ09îHnF"}Qû°­hé!m®• Ì•¤Hvµ2˜Íï­ÃR‘1;†Ýî©Ã=î‹ÍJ*0r¤ƒqÜ,=Ð#ë†ÉÍ0ð‚',¹ÒyKNx 6û·YB’â¬ëš…Q´6npùÎί •û¤ìÀ5S§«8Âáô‹,âp¼ÈbÓëtÿ¸ìl<ÝÿÃ&OO‹ëo^š0(½ dÈùÓT¤‡4iºëh•¯™G†û˜¥‡µÀ"y´zc"mvÀ nv{”Â2ìôå¥#‹l\†çÁósEç… Æ ï~9@m]¼+g8gó±7E¥€þ?Hö?è€.!k'Ê@ÒÖ™ÍCÝé Ý͹žuX.njûö_#“êu3bÇ̤‚¥¥®éarí¿V“ jž‰{=Bé‚~`”q°Ä Nœ?ÏŽ_‚ÊUÎ¥ù?%ì9v¦ ÕÝöÄŒ ·3®Ro¾™)òz˜2A¬)”סa ªag¼ê/¯¤Ÿ™q„¶´»ˆ ,ÿž—̦®sZ¿æJ z}Ͳ ˜^ Œ<Äð¾ô! @ÌÓØlÔ½È{P³ŽöÿK³zBšû_€Ì9R®§ûÄ:F ÂX@Xºu]FÞmÙø€£5âÍ>ú?þU¦Ò¤_Fþ±§JzFüûg=G+8Ý/íݶgÛÞÞ¬¾— ¹4†®@[óDŽÎ(¯£}úîÅô89náù¬`xUì²1•öàí [2#Ofx@0®¯O®ÁÛíçœ3O™@2,Ÿ-;ø‘C=_<íJRÎäb©1,8—!Iңð) Výë¦u*‘Sý6?œguÞîA‡9è4  ãfoÏÿîÃPKr[©|ä£ôë´qžò{èV¸ —0ùß»¶ÿ™éîijK£Ö_Y [0ºˆ/RÏY⡇núSÖ‡µ¬ë¦~d5ŒÕq^r6÷EüÒ“Giaß‘°°ô0ZàL.Ñ©ü<,y|hƒËhè¹d6oâÜ£Ñe4o¢›M]FcN$'4FŠ¢ÄöY´u¬ Pz<Fðà_c2o>ï<ánìsÎÐÄáž@þïõë¿è¸Œ #MWóöEû9-ý.¬Ñr$7k’ÀÞc.lÖ÷Eñyë€Ð^€–æýtNŸÓiÅ¿È^C“˜OûYšS1Øf¨™ ÄôÄ `¨ðjÑ“;«‘bÃò¬ìya¬+سáŒ$í’‚¼¾>ëEÏ t¼áæ4]„õíMiÔêéßchL>À·ù!¬<¡§gáÌ3òY€hÿqò‘ ÿ.ÀŒaÙ&~³‡÷ô± Ž0yqž¾Û>èÔŸÞm¥ÀËÀþ—nÄ&@••ìôÞ†ô[4ƒKÂ0ïðÄ:X ´‹c÷‰ôáØD-†‚±·ÃÓGr‡Ï䆱>¾ /„½·¼€ ‚b`¤ŽßÕÏ€·q¥‡jàº#œý8ð(èg-&˜yä:±"<83¦íÿ!Ú ñ÷‘+Hsœ@ûÿ¯ë¬}¬ÝAÆW ©2øÓL,˜µXdmX|³âiœX,ÝŽË!ò=yÊûGÎ`†­êÙcЋíY|æThò¬}¹aÖn:y‹Î$f Ó½¤î>º£í±b™U¯Íß<5líÐæÏ´rá¸loÚŽù¢ÙÌN¥¥n”zç Q˜ÙîÎd @geúúÜÿû ˜•ÉöÌ zY.€w#Í㼃ƒŽ‰'ºÔ³À>?m4ßÀ€ÓùYöŠ¢P`åy>ÐÆqMxÑ sUDºt Œµ òŸsY^ ±¸Õ× †Âft{ôn`G>„X ª 6€•6usFÁg¬ù›—G5Y@†×œÐŒAüï<¸š‘1FƒÎ;=?Ø`4Ö4c%@ÑÈs›h80FÒä–”MÉ"§@ì¨ÿÁÆ={h@©ú÷ýt^Þã>ïY7›­ù쿟í×ÜÒñ‹‹M6_üÆe¸PÀê}@·d=àå±–CIÙߨdBcÝ=P æÝ`4cˆ˜G`i©óB$ @ ÐÁÆ`|óÿÇ›”œGЛ ¾3-ú+M€•o£œçñÙjû/Z»× “ï’Ñg]W!Ú83À´ÿœ•%f§£Âôf³d}ކ9÷yÜŠíKÿ“óÀâR׎Zÿop_Ês"ŸÝÞ3”™=ðd`ÐÛDþ7Z&c:uë)~:ýˆœýÝÍZ1gÜ49_K7ý˜í), »F¯OM¶ 0!Ñ&6G²˜eâ'0R  œœ]åŸ>ïVÂâä)°:»?§0õÎŒ¹0Y ]Ìþ+‚i?aS§ªˆX‚w©ÇÊØFÜ<‚0}Û—ÐC­?î»c5i–äÃJÈxœ=¸t:½yÏõBN(Èc§0—0/=«5:Ù&P_ØÊ/ù1œ´=OØŒŒ©a̘ è1»øyz³ÞÐÀÓ „ˆ`Žü¾‹wñ6Žåµ= ö?(hÝ]MYõò?KrÇ?&Y)ÑpÙô²ç¼lÿ½ÌŽ6Èx7æD [ñ1õ³‘öÿ¡”,y|&îݹ3³G4¿¤í¾a¬»/,/‚Û-ëAéÄÚÏ©icÆ‘óJnÏÓg”_®Mm¿£O·¬/*êeiN¼Ô‹}^þØ2ˆîE´§ °`5†Uxzô&\™,©÷„ç1_<üoºQÿFôŸÉþZ;!Žç­Ÿ³l9™Ù žÞ azÞzáüoÀ#¬²À¸ÕF­ðWÿ¾§#š™òG¶-i=#wŽèvþɉÃL¢S\Ø€Zÿ´˜ÁŒtjÉ™òƒY¯è<¦‹cÝtBvmès² >z¨YæZþ[¥iõ&1Zaž@ûpÐå0š䕆íDê|ØÅy]GÇ?ÿ¼ ªšÔ¯\Yî ufH®ùOa!œ˜^_ù¦‰¹{Îú˜Þ°ö6Ö;p€"bZyp¥‰Dsœ•¦wOY˜I+Ýö4f.axÌŽ ¡Ú­"¦7®¬'܈<¤=›¿¨u¿¸ñ +­(î¢ÿÒn;ÙU^¾‹8¾Æ¼¹¯¾ü’ØË_½Œ˜¾þìÎ %¾c!-WÞYì ëm²ú»­=Ü¥ý¥mﲓ-ô˜hÝ…¯M¤eþ;;M$EçÒo¢‘ÿðÚN°@  Dº×‡ÑBŠ<³âìV*h³ †tøæ–ÿƵ€KÝJkqË,Àm6Fþ<«ùZhž²€´4®×Ï¿×ë­q¢þßt:žxêÙg±n÷úI^ó/ †“•Ïâ啤hj/Øþ¾€\¿`eÉ.rðE$Ñ8_ž§ó1½{n4À”¤÷ivà*òæñþÕ =©×$ß^ ´_Ó+ã3Íð„ŸNz”?/þ©ÕÇ%Fל4ãgô&_02¸yFn^7£€™ô¤à&bZC³zy¹»éYŽ@³,ŽÕô=½IVýû#Eÿ’èÇßyÅçC¶ÙØá±Ç°lúûwþô·í¦ª@^m‘€“~¥ ?ñ?â$C€Ãq on'Ìåy}dØ:Jìh¾X^Ø0’ttò fÄbæf´cõ—_¾úå ɪn¹ë=PpßîkeAÖq)dñ ¯¾úê—ï8LÖn„ê þÏ_%\0-Á- –¬Vjv‘g}s²\΋y>±NÎõ»}®{€ü1•’çÿD÷z¸ž& ý7ª§fc²m+yóEvûj²êîF€(dzoOÔÎ8’×ÇHÚŒwíJÑá'ìE“Pýq§'=w$éOä²`<»ÖrÑŽÇØ2Ûw½Ã¤\}ÊTßÝ}û¶_y̧ ~üi=-Ù˜&ö¦Ú¹q—C¾ûÇGŠ,¸9^BÆ ëÓ½±Ií…çí«•Šƒ¯“¯»oLï¹#I³NçŸÖ*øÔ³«å"ÚÍœÍRô¢ò*µþK»É+TÿÊÉ۾뇽å‘+·ßq9Â(ûüªkT£Ÿ{¬Ç3‘+FnfS4‡ì‹™jÁ8¢Ÿq^ !½°”kX!‰ó˜Š¼e~aÁbpÿ­¾;•‘%Qôü ÐÈ[”Ý~vNXÖœ°º Ñ&|¯RT+|à$#´po}ÙôëʇRÎ÷1Ð-Ç×ë æ çæÂçmþ)°¯T”åÅ7-%6±25«-¾-k쬈ÎUÊퟴ¯}†+®ˆ¸‰TKœíC©×k/tÇ… Ϲ“êÿgxx@Ÿ?O¼OÌ´+K–y›Èj/¨U>BnyC€Wì¯x×Âô²h_íUû;}údò%ÕgzìÅÑ~¼ ;;»`lÉþKrŠÝ½tËä9ßsÞúg™7þ|n¢ç’_ï7˜ä£ Qá47ëLEÞ¢ïØŸÈŽ¨hgÍ- ¥à=Uk­æñ€ÄÛºç©r‹ŽÊø$¯y/cAìUz›ô/rÐ  ¯×ïЛ胼©èÖ‹«[™‡8–”пŸ±ìòvXmþs|‘wðBoø`ý™<ÆÀq—…7Òžo ï(àÅ•öÖG —àq’"/øÇ²ë1_C•;nLx”¬[yù&¹Z?mÊ7Ö÷ZòB½ðâ å»ÛÍú‰z d¹¯æð—ퟄxdzËÞôeÿ±c½o!’ùU2xîÔcãý€Õ^MßeIKûøHK;ýd¥·ž÷ëŽOÃÂhºôm!^ðéJÇ©©É¥ÎK…Ï1ÿIMµ¼ée׫ÉêeËÚšÇüX†ÿ³lYE½Éë¾<á8È~ã½Î1^yXØAxÊ=O‘ÇÉjå5~Úò¨1€Ç½  ü4®úiÙ p”\cŒÔ¥hWæ-$ÿ)rªŠjÿ5d×·º=³™¬öÀó¡ïœTíu0^xÇñÚ2X„ì}g¾B¶ªwN°ß^þ,µqð‡öí…tøtËÔqçdªÃäµ–õA(K8ÆžeºÕyëÛÁ9UÚŽ¼n;ÔCwÒ‚Oøâlí,úÔ„ô_šíð«<\kW:§Ã§?þôÅÕŽ ºßü‘”?…/~µi]¾Ÿ]í°wvL–9á„ѯ½¡ŸìÀa>|—ªµ ¶z¬á¼©_?o~˜wWÛIgÇxåãœd ³u¬ÛY=ûAup0*jL ÚX»ÍÇ,ˆÚ?x{·ÿvüÆï·QQc­úË!š0µ¿5³r›+íf·ï¿­Ûa¥½=¾C3æ¼µÿê;Ÿa’*ª¨ò­¨ Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š**¨¢Š ê¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢Š ª¨¢€*ª¨¢€*ª¨¢€*ª¨¢€*ª¨¢€*ª¨¢€*ª¨¢€*ª¨¢€*ª¨¢€*ª¨¢€*ª¨¢@²`òî£Qc\ß×÷ßõcìÞ}r0è§ ž<ºû@ë˜×ÞÆcB$ûŽ=p}òÛÁäÃ#0[csÔî1gåfã³`ìë·ó˜ýc?fÁ䣷³0C$­7Yß'a}·?’,¨%“ƒtŒ~oûÃéõðýwõ˜ÁÝp” òÕL.ÃÛ;g¾þÇ2ôcB¤þ7‚(¸î€ë ‚ɇHýgwxe“GÏJ5ΊýpëùdÜn'µ£ÕâÀí=&jìÇ쯵ãZ¿·ÃÜzØŽCS}`Ôõ£lÁî–n\÷8’GxØ_F®L¹öí,“=ð­´;fÁõ+ŽÎ“·ó˜z¸xÂÉâ)×®j!‡ƒz5µ¤eʷצ,&µƒ£³ýÉýèÉíA>&4‚Cð-‚Àµ6Ùn‚ëSæ;ÊÞ{<¬úï­@>LZN]»6e' Ju’úS8>¤#!g“"ù1A‘€ÉÊcªUFžÄµ@ì'ï¥þwù0¹§êÉÑ,Œ,Ø FòÁ€ÁjÓ·Q¾+²ûºÖ2ÓzýZ}gÓ5ØáÓBö,YôòÄùähPKg>»}V ¦Ï&0å(O’?Þ»9ï¬söÛ‹¾£×¿uTŽ1k‡à!’ZrŠ ÿ΀ٚLv²Ë§F-ó›n²˜Ý>ÅÑ`ÿ} ê1-ßñ˜ßV¶~´Ý¾àžÌÕpÇöâÜÙM®°ËW5ý°2’Á­ûûG‰üÆ&®1…¨Ü5ùú·Ž f}²ò†³_Qè‰[:om=;[”ÛwúÃÑûö)³ÞÙz¯&Ýoà¨Öñ|} Ùí?cäÃ#þ³UvÕÏF)—ç“ xw¸I¹}–?ò{࣠̕ó)VyT±` jïÙМT Ùĉõþ6b±oÁ.¸ÉHþö€œ•*ö:}oárÙbïõ–êÁàÃ~`¾ßHÌv\S3%b<Ù®èÐÄ5äð± ŠÌV@g}ò=šó› A«}¾òV'uh“aC@/Ïï\ð0ÀaÇš±fë¤Ü'~縵 ¶ß~E¹}¢?Fù31ˆÇ¼í÷˜úïR˜Ðáµ?Ú^vÏŒÔÕ|¦i7%}tÄ®ù›ú›Œäƒv/TM<åçT úoâ,û­mçNïíSü‚ áõÞËkL·žôÙ¯M,Š6òŠDÛ½“þ£{¸Ùì÷ZzÐtËò7•Idì‘|ˆä&³u”øf¥¥#cù­÷þÕWýÒšÛyLæ*y˜u.—Ž~¸¼ŒýžÅ«[¼ïé[ÇQ?E÷ŽØwõµÒ®ûª¨¯åÓÜ«äT•rýTãLS%» Êc4ÚŽzïå€úA`?Ñbá²ü̶ß+Þ8 üÇ,²Ü- @•‚Ž)(ïເMÌâ`àš ËýÀ7¹‹«ƒïcª®=:Eü€Ü3œ­^\åÕhÇî±`bQø(~ÝßO(ó:1¯Xþ±`Z¿lþü˜Áü[¹Ý# Y”ÇTÉÖRS¸0³xÒ*Å« ΛÉn¿I7ýuÌÞ½ÒÏ-¿ôwîUÐvú‘Í~Ì`quaaá~Äj呬 ’3=ˆ`ò¾ÿÙšÌL:½nª BsOMTÒ_)ø1§ ”b¿ì1PcP kAþìô¹OÞ;OKvqñÕøÓ»Ù>ª¿Æá¬½½u?à°}ûEAàšò 5t18¾S®›¢3 oúóýÚ…íœ{•Ou‹ªG67¹9­²¥ñ£[ÏÖ~Ô¹*ÙÓ:éoTžôÀþ{©2Šûû²W}´æš/>šÔµÊá7WF8 xéUwúÍÖûbe)œ "ÓZíä~ë_€³*9xzëÇü¶ºHù­×üSë3¤ãž Ín…öF³£ÈŒ ÉÛY÷÷öÛ[ä9¿BÖÿÜp‰b@”¼gƒka­›kž6æOk³›QÑ‹ó߇ÇTÉY9uh€ƒ‡™ˆœTȶV¶U×—ýuÑ· xï"¿Êv?¥ŸL·©E±ôI5†M¤E6|WîY 2ÔvNÁ°)‘–Êí^c "̶Æèb( àŽ­ØtxLÑ»£Ê<Æ?Àîݺ‡n §Äýs~Âå­ß‰ßÚr$ÊL×ngÝßG€åÜ‚àvm'I1Û[‰ ”×]\¿ž,þÞÀµÅdÕ?F»› odþ`ûQûÏj¤…[ÙcÖì$«à概ˆã•€&OLtÖ¯8‚™s°öYß!Í2Y–Oõ‡©j†OŽJ oاCðíb’rý#ïUMj4Ù‰Óûm yž¾È} þ†ÊºÒò-ÉÚ‡Sÿ¥ý&´\UW–Ósýœ¡rp¼êT}pQ·Z2aJQnÆl³àcª&ÿ檉SZñô¨};] ÷:)¬~ b×|bIûÈÖT;fQûïpGâ÷°u_5‹t´>à è´×/.rU®3¨¬Í&€sܤ牣¨®§•g›üX@R¶¢ý‰ðm„ðÌV"?¦)ó¬6iE¤(ËÞØ`"¦–"Ó i³7C€p¸½ÅD:žâÎú]ÿs !Û·“`"9jwÐ÷”bt¥iäksS ¶W쎢Åõv Fð"Ñúj"ºøŸ¥X½ý°ô°ÊþR³µk.`VŠZê‰å?ƒzÊår\:õi³1ÛtÛäÇT¼?LcïQý;\ Û‰}ö=š¨2yhtºè` 6`aÆët9òº¿ãÊ{w¨uw‡)ú—%?Oæ]fŽ "¸ŸY¾>Ú²«¼!§Tz6ù±°ýnÅö£MŒ8Ðõ”hxÌ_h6–Š ÿxÍøß¸µáµÁ“µ“µ¦èðÉRb;çöC€yº)·XjïõîÚ‚Ù»,e¯ðú¥¼+m®lÿ †¶ËoÞn‰^¿|’Û͵¡ú·µîå]9;øõ0’µû¥‡X&ÓÙújº.¤¨ÚŽŽðÝé ž±eÛžòðŽðÝþœxï6+†=æè÷Á¾˜·wŒz ÈWö¤ì²DÏþÿîõÐ…÷TõQZ H'Ã-–ðŒBýŸ M®½­u@’2¸™šeBS< À7—À(Íor?Ã5¥þ̘Õ&Ú$ ­Ìü3§¡í׌,l.e7my\&^I(kà Õÿ¬vzí¶¤›ø8ÀÞÕµ÷gü}PˆúȤߘçedößІ×w¸jþ Ô_ †ä¶$ õ?k‡¹+–›Ù+=°'Pº\º˜`~øºnÛ±Q—b¶íqÅ„æ¥zÅÄ Eã!ý×üAéØ6Ý–õÿ®å^À4®Ióž œ1º646!9bZv)¨±Ùµac¤h‹Í^±Þÿ&ŸîâV|'‘ͼkž”ÊÞŸPZ#‚!p©f×ÇñÓÜ\áíðLn!µµM>˜§Ë™cä?º÷Ó`H–ºÌæãFàhÿ+è‹ÜàÊš ê/D†&†wñ[²øšB®8Qz$d4ù(Gwº? ÓMu‰Ùÿ¼ˆ€§ûÒà(°e›nï(ý?&=t(E ‘ßw¡Kèq”Øl‘ MBÓ"Áh4 %5°Ì“"ÀæsP<F-?bû#5ñ.þC€æ2ùšNñ½í\óíZÄþ&È8†[鲤®û½š:~žotÍ;¦Ø ¥TýK/ LCýÿð˜Ù#ù¨ÀXÐ¥ †¤é¶í7ýÇ×Ð%ÝWÍ&@ˆìÿ½X¶@V€–¹6€ŠsîÈÈTåiä7.žsƒ[Pьכš¸ãÙ™MÝ-È?ÛŒúߺAw]’ò0‰•‘¥€Ÿœn0ÆKg9÷íIÓ.€Ï ˜çÊ™‹0÷~@i?R€½xfƒØ&[ F3ª?ç^Ô~©ô¯”Ê×%!”&="põFÌ Bñ¶¸F€òJúï3Œâ Töÿ>0€þ&ÐdP³sÛ´&Ðôˆ6AJz·u@ DÁÍe¾—4µ‰£9>íù Gú¥ ÀÍû•5¢ÐV ˆðÞÜ .Ð0æÍ·¯ h¢`‹ÑËè~1€Ai.P€ï¥¬#/ëRo4×Ü%77p&™êÿ3/=J 8ÀžÑ HÓ}|lÜì?*X¾²û ÀöøÀŸ„Ìþß[x€R€Þÿ!]K?Òü77ñ~$x¹¥‡–ºr8TÈl0T ˜Úæ´ÿ’&Ç•ö~©h«)Ýxìÿq Óÿ;"~ @á”Ü7¬ßÍ›·ô§š®ëèÏm«1ðÆyÚfTæ¸xaš4¯›KG2é‘€9Àà­£7€˜Pê?€Aé~3@äý70€¬Ðéÿ½f¸ldrn0hKçJ…MÜ¥öH¡Rm¢ÑhhÌ<^i+0Àg¬7Aÿ›Z%$p›PÉ5Qó/Û€üÿ΀? `¨#Ò}‹DÂoÕÔñÉ©1 ópß¿NäÁe#ØxWN奌‡Û»N7 án ’ÜKœV½¡ùžfIÚ¶—K¸IíMH–•ŠÆ†¥…ðÓBÉÚk¡Øÿ;‹Œf¸ÀÓÝÀÿlhØ7Ž€õöX×ÿ~ë?öcþŸÞlÞ2·¢F4ƒæþËž¿•¤3"ïâm=\¾”Ê›é†ÅÃhŠ3­zATTëh˜øÇ(€A¶ÒbB«ÿl ä=ÿ2ŽÆ`ôø]øpÏž?¹ýh]fï쬾áxòÑj»ÃÒy¸5ü{ éõkÖfÝÐço:›À&–&$µÙl ÿ»£Ìa·¬Zþ ü'@„X£7òÀüoµX,޲Ã.52ý×ÜͶœs‰—¦F…Û-¤s¼JA·Ö–uvÚ;FâücµÃBªÿ¸üÿæ:šó9ûfW[ˆ½ú(Œ o»TìvGl0×\BxXÀþðN‡3ªƒ^÷7£ö(€ü˜“þ`–І«öêÉ!¶ÿò.X );Í55]2ðK iÚÒC8JLógÁpŽ>·<›ÔÏ?5k§# ¤Y ðß8j‡ÇÌšoò–ÃcI€òp‘èÐê?‹ vÈ+m|†fC`]Õ­Ô~k@‰øÁ4] ±ãZ $Ewî˜ô À`™iÊĉßáæ€šµáäJÊ[ËñþLþ£ïvŒ æˆ&!·¸ö6£1ë“TLóYEÊä•NK |o£§J8ÐV'gJ½åoCžùý¼Ð@°…weI‰¯‘ßÉ·Ç¡ØÖ~{=ïýnâü€•ö¤|ðÜ$ÖÌæ:†ðY¢Hqù¥f¾KJlàÎ^zÀ²˜çw‹G´õ óÍÀGNÊ…»}¡`Agý·rñßè®P¾lø*\.+p*¨â·¬Ƶ¢@8,W'ø¶¾Óô¿DäêÛIJhõ?äpX.ì4ªXóIÐÿçPª¦_fpèösÅÇ—ÄÕÄTM¼VD¢ŽÅ\§Kùôô ý'í-kh7“=/u]–ÆÞ `€=÷ÌqkÆ[¨ËâÎбb… \³f³ìãÑd2i¡r¦˜ý‹£4u¢ {•·‹gÚ¡Âj”?¹v/ %„<p°ƒÍ¿2ßD_NŠàJD`™›v^™_D¢K¸ä4£ €fÕ¾šµxnËû‘6Q47ð©¥¶õľ«¼¼Œ˜6aÙZIœ‹l37¤àc0ûkySÒÝ? €ÁüµvÇâ+W“Îq© ¼ š´\¹²Ó vKªÙŒ'ÿDQ°‰Ñdûö'·ÛI4ÏÓÁ¢`6àõí@™ræñ ÆsóJÝ3¥tÞãŠ5¾Rf¬œ´ÛÙpÒ­«Ö.ÀX¿9ñgwìÄëe'/wQˆ䀓ô1´p·÷àÞm{,¤eþ,:œ¡Ž0¨§ 6|\zO–WZYÔhç×w ±ÿ*Í¥ô)L; €Y¡Ûi& ¸!„€ÐŸ¸:¹£Ó.'nk#J9aß`±»éyP÷oVĤŒ¼̺1@àÚE¤¶Áf0ë*aS´…èõ ø%¸`+±Eþ~é6£am¸Ýbï8úÞ$®én€Ð$@”|ŽË߸ÌÞYvxœúAÿöhµÝÞYKçœ÷›ž0ä.f©À‰MÁnà2·+MŽ îýŠ oˆ*é€ñ:r`oHëx%ÞŸÜÁ¨xIÛÒâ§£þŸŽ¹Jõ¿k›n:öˆˆg¯J[ÐØWÐD€þæ7ÓšþßD¼ëÚe4š 5ÌýÇSïÆÓ]m%‚ˆÝ‘˜9·PbÍH `Ê $Hs2è±4¡?Ÿ1ÿ³x„øÎ@a2@ý¿G…@æÒ.?0w½m½ìö»GW¾ØÑ– ãd4>fæ¸ôX `)^à2¤ uF£‹¯Ür*ðCÁÆ6sJLpK¿? è÷zŒ(é€s) €Ÿÿ¿)¸×ƒ¾ëº¶tÛÃq™ÿo½®ûø-`ð:«¸åº+ŽÀxžðk:›?À/Œ(mww!÷׋ß,öo0£# ·a¯@[ 'Ì‚–ß_¤{œ¾O¶ mKuÆ:,,–FR¼©ø.@f, ðÚÖ㯠í˜&ÕlVÔßPhˆ; z¾n:Õ,”jve%õáÌ€{Ó%á6½ÐÄRüÝÀ›ó€ë#ð‡€¯½™ z#{ÇGÿ#÷Üöǧ¹@é]ÿ?÷#Ÿú³ú?Ðñ¡€@Rª„mAGànYÀøšÿüÄfZ“°Ž¯Pû)W9/͘yz¡vÎf`Á-QH]‘Yò9l"®2/@Ž0À"1ãÃÿï#¸,ïøm;Ý5! Yýßë{÷hMÀ«H¨q÷;ãÔüOj}I6­ÚŠRóýzçÆ¸Œ|ÚC‰P €;ÍÃ… Ü`üù Àö9d—.Á•È‘  ó2¹oÀñ}/Um•‡’è1ÀÂ;GÆXིÿ¬ÒoÅ\4ór\à-O5TîË¢(¸æ1ñl€ QlïŸoCãoNÝclH;‰qÁšŠ6Îql:£''ÖÉM VÁ˜ nmŸÎBÐuzîø8À1™0@#ãeÿï8æµý¥êÿ1Þ è?«ÂjR à×9”:ߌ ùwO”".ù™Ö÷±œ/G oküŒðhû†y7äh@¤ ÒÍ ¸¹ ÜÔiÿ¾K„T #ÒÝ cHzï‘ýßGÉ?¨ÿ1 €`û§OÔ$’ÓhtÔlÞ‘u GÓí>xó¼!ùý F³A¬ã9Çú?If‡¦l‘‰ÒïÑ“:7o‚ÌÜ1È1Á=4OP^ÿŒ0À¢]{€P3^úïŸpo£~ÔöÇá¦ÿWY tÖ`ð4¾Ê«þýînSp|€yÿ£Më4®¸™6ôÒV”–ˆzÙÖ×5DìŠ^þ¥ç*ü‡±É.^àpÿÜÿHö˜|®©M…ʈ¹wƒ”Ð$À{cÿ™ï±ï#´ý:Ð~³¾ œ¼3FB—Î3$ÏÓóüެ„s.¾«ÓÌzQÿ'Õ€·€ XˆÇ&±Q`M['lâB¦Ox˜#cÅ}sZ§° €îh7û?@ í—úã÷Cåú¿òÖ§\˜R€ÀžAw`ÁÿDipThý=®I“tX@ ²ø¶&ÁF7Àpoe ò›–€€Œ|¾ ®ëïƒSlp»AçÛÎàÙÜŒ áÀøãwR‡2$÷$þ Õ?9b Ú~˘–U'ŠØÿ7t»át×`‚!rðÝé4&Èo‘&ÔaÈÃl6xWÖH2 &H‰C04Ú*E&rB …€‡žxyÛì:­èr€}§u§A;s>š Û¿eœüÿûÛ >hû©»/gDÅ\ö׆ë:ê¶Üè2¥ÞZÁL>¼ó¼€q4ÿÓhýoZÿßÇž™©ÜÈJ|V®XQ* ¶R> Æ¡n|ñ/)[õfý7íÀþõb¥PŒÕ›zÚÿ~ëV,¡R‰ÉTèhQpõä“­‡²ï?pr¬ÙúðïRöPpNÇX @Î6]Úߦ|ü·.]ιQö óXO¿Ùõ›ÏÖÉÝéq"W£FÍ eþ˜ÝûÒ‡ ý¸1ôŸÖÿýŠn€üùž”ÿÄYÀ×3HÉQŽ@°Cj(œÉ¼ºµîoÿgwÚ]R* ŒD`¢É®²8,„¤4ð.zbþàú7bî3!Ñð}ƒ¡8³klÇ![éz ÁÇ,Ï\‘”X| àl7óo:àéöŽ`ñœÄÛ‰%åwnîxè‹k-¨µ;:öÙƒŠïá—Ëü±Åb1ÙËv§ͽôD”¾Ž‘ÚË#îýPëßÔÁ?x‚X¢õ‚ÏC÷/‚¡1¯wБÜdƒ+@ 0°±Ù=ðþl»Ýa·×>0¹zÌÙŠ ·wv¬œó&ÂŸŽ™Ž<Æäuö->¥s÷àëeGƒÅ"œ-;I‰—·J×=ÌÊÿ¨ßÝ6Xߎ2{G”ä ý] ÔVÿ_ŽÀ‚µ[ìÕ|€õ 8à7’~ÙÁAh@q Ô>Qbü?ÓOµtų¦œšï°ÿÅá*1ïîp%²«ü•WvË&=Õ~< ·7FãHZýLú[˜9À ¢‰,>…±”À¥ã #€Ô”.ãV‘¢YS¦\©'ÁÍúnReÊ”YEd•;3ôúewÌ?5eÖbÒñÛ¹˜ôËÓä§¥ñe7áom!Ñb¨¿ki|An @ÚKûKÒ»˜´cžžöÀ &ƒÈé¼ l¾!µÎh!‹¯¼uj§Ã²–K†+Gq›Ç-·04;IÙþ]ÿkIËX³u”ÍJ —ÏS8§K¡ý` R¶ùëÿI:̧ZFu &+Ã\™“Êl…Àu³Â ý˶_—ÖU® Ád)~Œ‘¾þ_,÷i6)‚÷t¥O>b€zÿƒiºèÀu/³€¹Gƒ‚v­ æÿ†ÔºÂÇ)¥à9fþ Ü%®©쿉¼ò†|ð÷4 (gä´lú/˜6ìv»‹Üîhù1ÿ?{oWvå‹Î¡¨*_Žùò•CÏ.Šªù”PA*]®qð€‘Õ)“Äe…{;ÄV‘ñÍÍ“Tngš(CÏLA ×Oã‚T;ÓÕÕiþ>o`Ÿ½~ë·Ö^û·ÖÜô38Jl·‡5h¸‹ ß°¯@¿Í5«²©¡¿qï|’œ_?2ëúèXÿPP}º2-rÛÕ´É‹%f!æ>7ý<¿D{K€ŒlÞþŒÖÂq@í’úhµ s•ÕÀ@=ët~ËéüŽÛqÆ|Kwüáj‡‡í¬[º>Imû/§WàeÁÛ’KÜÎðmެ e9A,ˆ7ö/¬…ŸÉ·«©•ŸÎ(™¼L¾F‰°kËÝÊ+§'ÿ[ˆëÞ2yŸ÷ýsySx °H#ýÛ8ï/ïÿEÀ1aÁö¥ €{zÈ‘fW>¢y].SD’ÿð}Gñÿ¢üŒDy¨5O2ÿ°·:§àwuQÐþúëïѽíI•% $:=ça˜}ŒÛˆ=òPN^Ie«¡ÂÎ’¾a´¨¶Õ¤@Ð_&Xß8™ü¾/’`=¨1ÌÂé<\³“n4ŸWè¡ÓÓ*N%WÕÁZ¡ýsP=]yS‚ƒ~Zè|‡Õô~@ÿ‘WtzÎ-æ¸/ó3®!`„¶DÈ>©é’½-YŠ( Š…ö¹€ÄLeãœ`®¤v£MÞHmJåîh˜ÍDí¶³ÐnÙ0Éï#©Ì­9²È~?öm4¼*’Û”§þbìŸlD¤†c“>œÀÀçJ°îÓ6‚i&wœ‚ä_ú‡/yþ¯ê½YM’Z¸£™ò^6…CBIÿ»­ír‡¶Å䛚¾©–© žr 7PÔ¥/Þk¡¢úôMÞz`úò¬}Vê¢$³®DÐDR”^£'’ýÎ}“’r©Ûq¥Ýð™)Š˜T™DhÏç‚ݺ[r­Ó¤2ÁOÝMýäG௦©ö`ÙsU¶LÐ8©Õ«ƒ†"/LÔaÖØ§T¡©óîq½cL²ïФ2”€$r[#&á´ÿÐ6értãAÄ”–74ÊÔQé~ññLW¨ÛkI7IøD Á¨ö Û¢QMÂFIºdò¿}tnYÞTÔâ'‹(³D>)Œj P2Œ“ #­ûK*Š›®òC•.ŒKÿ8>þ7‡ç»uw¨B_Ó¬gH]ÛÞ^ Y5}A€ ®GèF{íÍöÚ+²ÅŠ6ÂíövxœWÆkÇõ¨.Ç!SšW è/Sš?âNúK&o‹;›¾¬§§çtOÏÿû[zMêjâ€[7m6øÐMô l§{NÃßÜìéùU”Zð¯€æ«OßÔëé>'2ÿ5ôËùôú›§Éð6^Á  WJgd²à­ã‚p=›¢(󘃿Y[›¥‰%>þH&@ßèX†¡[¥ö ;«yeÊßVòs²F}Öõã§±SàŒkmÿH”Ññ0­ ¤.lDÍd¹Œvìb þ$‰î_(Fþ¯œ?¤é‹ä}Ö]À‹!åTÿ{RGÿ¸8PŠi4ƒF¡/ ã12Á ¾%KšV"è_Ž;VÈ”æ“ âÊt–Ò(–‡=ÓéMá5:kj¹Ôjüa¬`ãÿ>7Eõ Pã­øþsí[ =Fi±••óH¡+3å€×ŽÇ¢øä2º$XîsˆŠ8Ñ¢øŽ+¹¢Lžèýœ+tnÌ0¼Zh—`ye2é(Òºw®Ë|4&¼Òi¬Ç’Û?üyÜÓa§²+ò ô.¦àO’ãþÅèŸÏÿ?ÁÎÿ8ÿË\$§ÞÕ群Rú*B…ㆷzô%zú#>r\í1TÕ D3€¤þ"ŽFY¿–_L ×YKÏήå®Öè^3I€YÛòóó³É¯ŸÒ…¢üXW~~^‰þx6þÈgU ó¨Gx°ŠQçeçgÿDÞ  ÝÈ/bô%ZÜaC€sÅõ‹ ­VGqÕÈúdÔ¥4HokÝóߦó¦ÉÏŸñ¦ˆÛ²¤Oçæ‹–‹âošzú—-FÓ9-óK3hJW³’3H¾ü'„ƒüK/•ÉÊ\÷zLk„¨þß| n Ç‹UBÐLJí&d `MùüI’Üÿ>ú'ûÿ\oÑ÷"çÿ|«Þ"W!æDôî1‚‹ ¨Òôf¹ýÿ¯L:lí6^SöÒo¸¨ÇìËRKaûŸ_ºMµ}" êg…µ³¢ ñ“ɧ`A]8ù‰ŸHW“ËÊëE!{È< ¾–¯¶kFŸÁç#í¹Ê©’÷ȪTvcÓöfyþ çÖ¾ålêZÎ ³¿3+w ”ÊpLbÝrQüÛ„Òÿ¹LTÄ5ÊEñgd™Ü1±‰Ž<×}[Š6×$x>Y87]Iw\·G¤}ò©RªFÞ Æþ…"@Yz„õ 5²¯{± ¥’)Ø?¨Ì2÷Ö›‹°¼oÇÝOM[Õ^Î^óô¥ôE|æÄ0;Þû©ØàPý ¡ÂÓ÷=7Äw~+š¶ŠªÏÐN!w"óô«¢tüšG ¥O÷¬ k _ÖOÏ  ª½È¸¸ðÇ\u\‘¸­ÖVi«„-&묲٤…ƒ~d»Y©óë¡Rú*šÄ~àtþLé€ISÀÀc©lÿÈt…~ë®ô(cá}÷f“c€ÿõ Ù¢7 åÝÊ…&Th:å ß-2-·J_.{[ÉOdÊÖýD¢)X‹Þª²ÿ§¼*°´ È,@¤Ëíš,FÍ$bAd}»Û| VoXŠþqüoÇÎ?#ߺUïã…Úÿ»åtßi„’¥2ÀfmÇèå“éý4øÊGtÖf¡ötUþI­æÏ0 Bè´…:a~¸U„|ZŽŸb/ÒXR~%ºl#ÓEzÅÏZ&o+aém …¢ÿI§W6A¿/º¥D$@—â—…‹t%×¾ì_}ÿlÉñ'ø_¦Ú`Ug¤õYb_£^Â|m¯:¨×hÑ|Çét®­Ð޲Â}¾ôáÍõº›KíkFx[ž6Y¬bº…þ‘×£¡-Þœa0í)âGø §\Qo Ms)¤ [£½œl½;ׯ±;2ŒÞJÿ|¯ý°`°îÓ—£¦ I˜ßvö/õ@á†'-Õ¤K(€8“úcë:P(™‚}@TôOì_ƒÿï>¯FÌŸåÍßÊå|ƒö4Ö4ºé,-T£àà³ì¼v5c¤]}ÔåBþßvíxÆÿé_ÒôRÛ#M߸qÃE»5ü~b¨> •ßpyÆ`˜µö™IOS__Ý¥ ć»hôøÝv úÿ\:ínìkôÄ®(¾?ær!û7  {êòÇ0¿Ò«Õ=Óˆ|„瀦ÏÙlZ-Î2ê ê/Òž±¾F ýÔ™HŸ,p¿{•KuàßV€[‘´iCYmpÀÞJÍûˆMó;fƒ×¡øLDŒ†>žÎš1+†åÖhwLóˆR¼&ÃôÈ÷Ú,z+ÑTs$f Dû—ç)ãOˆ ­oa ø,€0“Ùé`i ø† ÖÔ’]rÿ¡KšÞ^­&ãÒÙz˜¢íøß]ë­Ë( 8çp8²>@öÚµÛéa' ß×k–¡混Yc ª2tuu¥Ÿ§I±ü–ëˆzs†»»ÚºÒã¾1_ ­-0¡”ÐG&àñòƒ*™›IG_dwEFÒÛÚºÆÿ?€vJðÿƒ¸3S; Ô§ó}•6uU(³»Íb9×ü#=ôVqæQÕªå*ÌXúÌÓ<&X¦’‚.OM&—ú—¯¦ÿò‰¦ÎlCÙ‚ó7:­_0dO‰fpþÿz®1Ðո׏·E¦3~šÁýò:åo«-ÑÛJVR¿•™ÄS0±¼­ÿ—ÈUà+;öÀoðëþÁFÔÙ@4®¶]’ ¸òß,ÖÒå£È¿¹ã¤îÞ(òü¬_7ÚÑÛÛ|R§»Û¢íííÕüHÓ¬ù‘Öñ#´¿"ÃJàÃPí Gþ4 ƒk@L˜‹pÿK8Ü€‘¥:Œ[ˆ“ÿÛ|[»´æÕƒu”ÛÍ=yK>žõ¿<è,ƒc€ù&®Rm3„¸·‹zŸ]|÷. 4‹wß²aá$sÚÿЖ\ƒ–p6ðÁ1xÁgM½kJýÀïçÊ.äù³ÓäOe_Ͻn¸Ž !ò|W/}y—©O^ÆZˆù¤1þ_ØØfÁ µü0‘(}€]LÁ> jޅ-£ÐÅ“òWžßr Îüt\kF,@2^|ã;þÐìí«mWK4' ÞýAìþ{Ðÿ#oša:QÔ¦FÁ1B<ï‰ð~TÀSìÒ•\»%³|ˆë4 ¯FËÙÕçÕPäÈú«‹ü„š:Ø`ô?ïjµÚ»&œ1,‹ä°”ùé«õí?@~c!ÊöqÂÏó}€ÿܘðë|ÅøÿhàÊŽ0ÀgìþÓî ôOŒþqÁâî”}~ÖçͯÙ~tuà+ÄøÑ~Dþbû¬@ò„”Ýk>»UÊÁöÀ=¥Â9ÄýSæú=*ÿ¤äÅg¤ó?ù%ƒ'¡¦poõ¤ÚVÇÐLnÍCðóÞ¯ˆpUíÀ³”¶¤äøeHË" bð*|ëiÙ†¹ÚëQ¶ŸûhîÃì©ø½K¬ÿ›¶ƒ!¼¦ö€´F±sц™Nà!€Üý“‚? "ñKàû·¸¿kÑ^kF^:ûI~Ÿ?ì‹ÿª–Z"mÂà4¦åSJtè£ypæ>Ç5`QˆþíÅó¯“ýóÉþ¹|Èó«{Ô€{!dÿz„ŠÞzDóçTlJØMôl)´i[î^+ÑÞ}ÀUƒU¦?—)|…:!×—s‘çOìá‰þ߈³ÿÎq/†Ĩ„,È’ÿÈùw`ë_b¯nåXóO"ó‡*­ö*vjÀõáO þCÄøYdüØõkî5X½š¡ÉßT-ØQmp‹Ô(§Bî?\¡šø?Odöß º=Ó•èFŽî8²ÿ%dý!.æÏŽ‚ü±€UAu3¤Qô•ùÇK´ˆ °ñ颰Ê~¿lûýà£ëArÒw!±ç—ù±æÌþã2 ’X1€“ú4H¥¤àÜ8öÖ_¾œ·£v´<çâN·z¨Xž¿±Yôßv슡ô¯˜Tû_ÃÎ) \j{Kl6Bù±ß¿Z¢´ÿmú^ a»×Ä›{I‰VOÔ°HÌŒiÑK-΋U ˆh¨"îlo3Øþ{­\Qmn…º ¹î,ûzÙ¿éÚÕK¼ý_ÐÓÓó -Ú^h‚–}ê¸öþ£ïÄþOà†!µ¦‚úºŠû ¦:ãW¸­rªìDÒ¤\_Ù~vÚý¼Zè€ñ‚„_œÿ'ú¿ Aÿ7: $ó—HT¨«‹ˆÑ?럷^êЂ¨ï™æf(õåý>Cü~ f$ž*|ì~sÃVÁ<å•8‹€6\B€6#ŠÿÕ=Í->BÀþíó!îÀø¿ø=íïñ]ã«‹èJ:òja›£³ê¦Úvóä¨ÿ(Û|õÚ{¶àF¥Z]µŒÉ?ãýyø ýk¯è—ξ/Ëõ!¿_–wj*m6üpm¿¬ÂO™ÿ?,°ËyÛæñÈîF‰ÔÕ%ôÿh˜A…P€Õºº„@áÂT«PmˆKLAóŸõëNöBï^Íy\ÃköøˆíkÄ­> òûþß7XI|Z¨ŽRš–"tXGÀÿWfhïr¦ÚÜ ðîŸ{HQw’ïÿ#ã]»)ÿŒˆS;L`WU¤0L[Ö=ê`mgZpxí³0ËÂLNv™›Í`Š‹ýc9€mÍ»'€+àMA½#ÀWÓÛ Àö -êZ•˜§£ûï‘\_npa#h~òüèß;&üÇÿ‡•€*Û¶tÅÇBF §yÏ~¿RwpÏä¸/6ÿ‡gò†QÙÖ烲,2L 0•ã;œ ÐM5+zâm\äל]Ó«Í¢Ý}+}n:‹ÄûÐæIÏÜëÈøM»*»–úÿ•å>:ð€:á­(“R…³CxšcN÷”óSð)žÉšš1Ïä@´ÿ†iSv’á—pÄne,êœâ,ظsR{œD$Æio†í}àü^¤`…ÎêHÐ µ~àÖ¨°ß"+}¢,õøngRÆF\¢ú¯U‡ˆ¨oß-"ŠMîWD&›Üê1bÅ=6™ µÛA<¿újGƽ‡ol[‹ô¹t°…Ы…ôßh¯zÙ?÷e¯ÖjjÒ#ûc³‡üÿØ¿ _×ÎÆr[6r/‘)®"Ö¼ÓLJrá­ž,-å7˜ HŠéM– ëó`Ä"*šŽI"S'’uS×ÁØÊ„$··BŒëù ×wABdDø­¾ì©½¶Dþÿ:¿·Õ™;pàÀ×&ÉLzØœLçÛ-“—MË·›™,•ëɆ©Q0ŒL.¼T†^îiaöïfÈ—JœÛþµ“—Î~þ†ˆ9kj[Éq]ÃÛ;Ô¢Ëè|Q‹fô™Ž; ç´-Ë@–X8ÀØþ?™f¬ ¥@tD6rÅ~^[ԭɪh&³êKHoK‘šç¤\Uæ²d¢ +®ƒ•‰Ð®{@´ö÷ÓV¹€ä ±˜GöÞý¶Ìÿ  ¢ ä‹W "ìà/h¯J&Ú5&“ÿQ8“N" Ú/ðÂÝ #ÃåEAŠdïÿdÇÕ/ªyésTUæZð|™ãVE9B ¢_Í·ªžï<Ùò@§iÙÊÐâSí·Ú‰ý£àîê Þ‹€ôÿÑ*Ë ”` S€¥ãeäqwÃŒÈÔÚûÚÄÛŸˆÒv°vv&¡“2u´FV¥fІÙSä$y¿MK2s~¿¹­Ñ)‰2ÿÒ´Ÿ£ÉRüH[2YðM²à>I~vsV&EØÕ(Ó¥žØÝLÊBÙ0­ ä­eâÂñ²àG’# >"“–­r‘·#Ò®JåÔe€€îòµ^J…÷ÿá ÇY¯õ†Kuþ(eÏ9@ÿ²à’E»•0€„SÀõÓR{Ô<À}¥a"|ìNfRèÈ 2ôù0N‰ ×¾æ‘Å<]¢>ï‘BϾT–³eþÿpj2%}^„î«;@©ÔEö¶ø@»nR×ÍËyöÇÌ$ù»&qcçÎ}/v€a‰ZÊ;--wI!g@a´÷¹´ €Àç-Z 5ü¹Š+uèßêàÆC˜ÿç¸ÿN„`1•¥¿bâLÿü¦<ðßå9€Q_&f&Wòà}ç\¢Lþ»Q޼0 /P­ÁÊ]k‰BN¬}í"×ýDrþ(Ò^Ï©<° ëÞŸ@Sà<¢| Êé5gâ™”åv¦Ÿ^É£l҄Η´ÚÛ.€˜êvFeIû…öÎYÅjª(@à®¶ãY¸Îÿ•àJ@k‹–*aòïààáÿÍ1ÛÅ„™sŒjÏÛ–¥lŸD®­ï†-nAô}LɺOs³Q39±»™œ³ýщ⠑œXsÐ:ºQ 0–@”­I˜ÓÞÿ?œ 'Û›q®(h+IÖ=¯Ð?‘` œ­J¦@Ìö;DÍä0ÝÇkEÃø\"÷r˨þª¨"~¤Ñµïæ Ã“n‚VÑ­†Å¾Ç³ž@d×€À%Vwv©öÿ¡0TMi5'mÁ² *\t€ü?ǦØóôì>Ú¨kw€€¿rA¿oÜÄA˜‚âQŠ:úlæ:…¦ÍœÂ™tîo&#ݘ…";·D)J/\$™°‹²ëì)¿>[ÝÑëjœ&.gͲŸžDQþÿÐŽúÚ :à ®ø#o‹Ÿæ¸)pâ6à>e3‰omŠÎ×À0¤Å¥¢™œà‡ÙlŠÚÂÌt5 vG—²s%`æ$Ý7;[êŽÙ˜ôè±ÒÂÒ1¥¥Oò]€¢Í7[´«* çÿßëÕåø)MoFåÐÂÉÇ<< ú0Ê;zô<í©™]š<µm'(x·™öôÍ®4ÑG*ô¬£P}œ1ÒÆíRærwœIEÖI§›Jgg%‰hñ> ÓHn˜µ”Óî•ÙÙš¸ Ênº Ýï£'3“eÿ‡w p¸nDo¥‰v ò—èm5&Z÷0…ʧ@œÉ˜ýãqt3£’Ý5 †™q¡‹¦‚šg†Ç'iˆÍIDú»Ðí®~åÛ½b"-°V‹÷ÿ¿©ÉX„"ÓíÁP: ú?bþö†b/uô'Ý.íJ10Œ¾WÏ0/€€xMM[εòÞŸò¾“·À¨²h¸ÿ7J×™ÉcṲ̂RÇ},€oÞÈ ÓV~½ÁgÒѧpÅ~/ir|þ?;Úþù¶˜‡ÂÆÛà­üÓœ²“‡‘ò.ôλb]ë´ÑnOŽûö?“ô.fr&Ý•h˜ánXiJÎ7(: ÎLô}-×Íø–w1ÓBPÐg tÜÔé Ó£‚J@Šº£ëÕT1Œf ãÿ‰ùW«Š¼Tx}O™™ºB† s•íµmÈþ“¬~Ô;ýJÎüáfE-Ð&àØ^åG¦A´¿˜x3;z õÿ¢ùÇÚ?z›UA¦êËjBïÿ1ü,nx"`ÿ· ¹µ¦œ0UTA —Þ\Ióÿ/IÈ47 B×só€§o@Y@§¡4Zé4Äÿ±¦FÇY¡!ˆž²Í'ÿ_2ÿxûç¸'Ãü ±€¸t èÿaI÷ƒH‰è>âÿµiiˆp[,U0O…·ÞqýÿKSTÆ"×ã¼ý+K›‘ €6ûÐügíó  Óê‡ÍÒ|òõ‰ùÿ3t+Þþz#`P™)6œQ¦Î ÖVšâý?0=n^¶bÿ_û%W¬-âÞF d§êßXqýÿËST„¡ë1 à"«o@Y€ŽÏàüïèø‡èó75ºÕ DllEÒëÿdÞ?¡ÿ‡ë¹!4póvDïóª‰Èüÿ;£6Fï‡Óú”ÿ9ØשVrМ·ˆÓ×›+iö8E€{F€x0ýʀà Í'çýç ûòVPöÄŠ4z†ÑÜÑ%¹þOîý·ñÿ$À (0SÔêì $û·¾¦lÁªçõ˜WÛ?…µ>3P0~“Ü;ÿµÿÃÝØ} .zu À!çì8p­yTÙÚWEaêì¨æßóµê!=ëM.ÿòþÛú¸–«‚P‚HÀREÎg¬‚ýã}ÿÍÜJn @ ñ?4é Â*À à‰ÿMpïþ Öþ_n/€9@xu3‡ÎT°ý?«þœZª£”ù¤F—`)©üŸ7P¶¼ÛÚ?Ç=5C„+¸GQáÕ`™:¸r¤ê6þ6ЪP kÿGþŸdxÀÍó &o®$øÿ—Ý s€§»È¼Â€Ã€w¨¯«¾ÐP`ÿÚE^ô—{H…회¨H¦þ¬ù¿ÈÿcT7`ÀÍ{YöÝîþi5Ï3½SÞ6þÊPÀÕ/!ÿ¯Ö¼Íñžpª7iÀdÅÿ/5 Œ„bÀ+œ8\ø_›ÿ¬øï©^53TÂò¢¿(Òþ>ÛÜ u8š¥ýùßð°/ù¯Žìhÿ|=øåŸ5Ÿ9ÚPà×Ú ûþ\äW"íÉâ3x“ÜÛÛŠ³ÿÈðp]Ypß&ÑýááaŰÌq·?Š®„ @ä ìx ¸ŽÉ‹ÍÈÿ—°KfÁ7?ÿ¡Ãá¡Fýã}ùÿÌôÉÉÉ6"„.÷þ™¸ß}ÿë»Cžj 0ŒÃÑÔü}v±á.”©Ã0¾ñ.íIý(xÈg¼IîòmMvÿ!&þ¯ënC·û%>Òß…nw)9¸é8†wuÅ­èosÐ.ÙY€W9pxgØjfWÆhDz»h-pn¥Ý·ìËÿ÷Ó–¾ÒÒF‹k&:õ7N»kÐ}ãü÷w4PÄŒx˜>}þ¨·Â¾¤½É kóT™môS§NÑpx0ãÅRwÊH@dœŸ×1~s)¸Êi ~+ôÀu¹ýÏLzÑì»÷©g@†©‰¦Ž¬´&E}Lsº /̘3šx˜YÆ'€Õ7°“quóò9³ÇUVtÿ€ ä0|©Ç²û?ÆË©·6¹ÞZ”eþûé|Ýíø‰‚a¾G7’aÆèóìõîçªÁ2ØpÑН´QÃ6ØYVÃgDÀ½©T~Mðok­‰–SéaºiWèïßÇèî„Ȳ Êú&Le 6F^!@Ç ój€ÃIǦÐuñkrËDYg‰jl/¢Ìú¦ÛBÝ©ÂqIf]‘ÀÊr›|–­Æiª2µƒ·„®3áújŠÕó‰¼I*gèâ[Ù´Èߊԭ¡q?Âb’~S”N¿(¡­¨oˆ¨÷-°4;̃W›ÈŒ'eGˆIQ³—ɬÏÒƒ¼_r™õz˜¿»íÅˬ;y¥ãïSÔ{[!4ÖèSü)}1ìݲ#püI4x“T|ý«k=‘´`¦Ô­am S’Yo• ‘‰XºJ¬(þ%±(“í$ÃL¿Úà°@jŠ¥f/Å_™¼xYó\8]vú4ù%ë^²îù­t?ñ¯²,QeÙÙj¹Ð ·àöoE€(€;ÌnUÛ‚j¡FX`oÒ€{{[ý2Û,(YÞ>\KÔÅú“Û5 T»H3gì‚õIB°¤‹Ã+ž84qãÔìûW³—é£;ÝYW‚ ú æ^qH2ë›#º7„îò?£ÿ„ëŠÃ-~‘GšW‚x”ࣺ¼TC'ìcØ‹¢÷î›jÀ]¿­#–=ªÙ¿ŽÈÚ/ˆçºê¤&:È¢wv52ÏT(S_÷Ai~Á¿ò€ÃfÎ2€=~ÝQ½Õb„.eúžã••ymb£çºÇ¨Ök«ÐͼJtáßø?óЭ—”ü£Ñ"ɬ[¾—g8Yuµ¤Do3ÊB€éÕÔ‰*D–(s4x“Ü%8cšh ¸Í €ˆ5;æ*§D×ÍÛnccp'1x±œ3ªÍB4ð½ò€ÃËHjö²ŽvpË"³=WSàÌŒ“*†RÛJ:.ý?çå×kè ïïÆm6¨¶*î°,ûøÛ’—˜¥ßª÷/>¦4z›zHžø×œ% –¥¬Ñ @e§to¬[Á%S³—7ƦWvÓfa»KÖÈb†þe¹ e•Ù&y# ·Ý4d‡vD)g\›…U©ýμê€Cܨá; FwO=&³s»¢Ð¿ÅÒÍ˃¤[)Ý( ÖgÙpS½6|Ç<ÿ¶à ¬ pÈ—¢ÂȤ—üÛuâ]ªWÿ“%"À DO؆j/- Ò àÌ”÷MPÁåÞ–s3J_蛀<÷ÞÓAòö c®ÊpŸò…²ïáý&܉þo¸©1€íyÀˆGÑÝ&Äl° ðj&pãÐ9Á¿­*´[ß_Wû^¡ÍMÿÅ;ÿl§4Z½ša |ïÃúëÇJsU À€0€bO˜rTÖêQ;²}Šõß«³Tøèya˜&úžôl§ (cÜ›CÁŠ€[ÑÕº™mtã š}Wÿ¾FGÃŒ¡a,’ç~0L€”ö¡•†¹$Û ð€/X°M´#úd”´®”Ö a–_ƒ ÀažsW×Dc  ûcû}¸{Òåj¯ûZ˜òφ)Ö¾Ä.µdT~å#Pî7ªmØæ1Ï®ï…Ãý”½¡h Ú|àÔÑ¿øy<>$8Fß’ÃqÅÏ.ZhÚõÑM F_Ï O³y@àæ)öÍ¡à]¼­òجo]y›Ë5Ù½ßÖ¦¾ò.´¤º£7•¦ó~‹ œvÊ $hº¿QËó€D±ÀH:^˜S1g—ÐZÀ öÕÏîi@n;åøá¤ÀhX!Øòh±êì(úËbÅå»Wo¶Ã~ƒ@ýãÇ,Æ€!Âoÿlu‘j°òXÿÍv5¶rE‹T…Ÿò?•3¼©Lñë©©Óð1ŸœËƒ-ÂÏ Ûí Æ"€ ô:€× æý ßÁRïòv¨Bx€,¼¢Xµ¥ëÐêQP`K¬¼93¤Ö÷ÛQlÐ[2m¯œªT3Aõi†3áEÕÏИ朲 þq¯Í¦Fc¨µõ¸ô·ž¢æÈ ‡z“|.Sv^N æB8â–!0° ˆÓ ä5C¯x­›ÿhqh>L¶èˆQV@p¿È²KìRXsí¦šgW5Î "S¯­:‰ÑAGçӵè }~èC&h€õ`ªG,`I<7èÕAuÇ®(LÝ3SÞùE<}“|U®È À®Ïåuš¸û†ì Fsžä½àõ€˜?ë/æó~r Xe­ö‚’/néQ¦Ÿ!«×«Õ„ ”tP=d¯þ¶žŽg—ô=-K£¸o ç,‹P ` ÿÜÜ¡RS„Ù˜ïÏÛ)o˜ú® ‚Þ¤_¥kj0ongyiƒ†¹ír‚‚FÏ@ðµÈ¼>À{á_ˆÀ>ÿ"|l8,äù¨¥Šj/Õ\‚|y½úæñ«j’ïgô~;&zÍ"ú_óOžxÀq¿¿Ô/šO"˜`—¨a#@W ùC™ŽÑ›4à«Ç²ó„œÀF^ö´ÈbbŸŒðZd^ï/iò Ë´COVüA-á±T5WàNQÙ†Áít;ÎúAŽ_¯hbÃÞŠ³= Ï@ô*ÅêmЀÈРll!z!tÏ[ðƨ^¹œføØ`(«½ž iãÀë‘x= ÚûíÞO‘?þi­¿üŽÎŽ1@g `ýùU°ÕGÜûé_ÕªñÞ¿º—%z4¼¤9@Y°ªºe2ˆp€ ºÜ}1ú‡ÞT¾² &kçæ0Ää¥<f¯Gà5€'$óÏ›µatQðüPéG…Q¬žC^¤j¾"Œî.Q'¾hÁµÂL{O³¦rðÞ¿P€/„LϽy« @%·Á¨Kl6ÍÖSwVS‹E÷(Jõ‡ÞT¾Â×>18‹‹rsƒò:A1²à«¯ 8 8ØiøÌûcÏO>ÄúPäïýçâ‚jÊ+ýW«|»¦gnl½äÒƒwÂìÒãðß¶ I(ÀcÔSá曹•iê`eÃU54 °‡ªÏÎ ld§!‘dOAªÇؼ’ó¸tjP`ü%åÅ<Àõé„€]~¯‘TX 3Ý®Àøð½ñºñ@ Ð="#ÿVdüÅÈóãƒ=¸ß8EyG««1x²ÚpXÒùBck²é^\ lt8Yÿ£z”Z4‡KlÈî?Ì«jQêzŸùï çõCŒž==~aÀfâ²@Àð8@KøÛéGV¹¬¨íÅiÀ‘t45åuÉœ‚Ô¾&Ð7œÞP0ÓÝŒßVúx&,Ì…Æq öÁà‡e 2 x©Èìv8>ʘ‹IÖ•£·’®ø­DúÓ»éû¶þý“tˆtÓ–±¾1zŸ':¶»ú]ž¦¾FÝAÞÿ]¨Ò+.ÚªÅGzqÄO…½£ºùUöØN¢Çû, á¼\\|?aþC‡»¯Ïíq4euy°)hÓ˜U܃O§«ÚquUþåùzo3”Eß@íøàDÅ=j=t Fà:ºoéëk¢ÛdeçõÛWúÒ]–Fôøä±dMAŠ_™ÚÝØç¦»ÄDÒi˜NKátv»Ó™Ž÷ý½æê{øH/¾Xûhõü–d_;O7­ÑñÀï*(8#<µ~o9,XŒ¸ÐM7kkƒAuÕÝ;9ÌÀtNWÕâ:œ4 F Z8|že{m¶“J`5jZF&r´½6`$@Ž>¯5Ñ#ûš‚Fa RÜþ‡]n|0·Ð2y Lç˜2%‰n‹ü´6Æô àl¢a¤Ä Ÿ\}P†|¿äºÜ1z ˬ¸Ò}J ‘_˜³ž®ý @&?󞶺€ Q3©‘>€%Õ(jÉ\„ =üL°}oøýèÇWE¡Bú\ ÉúAÅ·¨±iq@ÑoÇA;‘°ŽÄï¾4¨ñ‘@ø?“A<ˆdèmzH%²ÿ3˳. #Ù6 8. 5Mú’2© Ëš ÇHþèý¼@?(XýÇD…>:s›a«¦û‘  ¿”Ö‚|ŸkLÔQÐÖäy—{S?êÞÇ$a˜$€L}yÓÓô—.Óùsð›|a»÷^µµH•Öõ¹>zˆQÏUÞ'6´" ;ÒÆÑÜ©†‚‚jñ/Ö ›z«iÓ=j¼=0Äc>ºNÑߨ¸ÓÙÇÍQêPæÓ‹·Iú&“!{-Ÿ‚¶åT¶ÿIç{–ÎLöè>±‰Ã‘V%6' ÐGu#X–/ØñmþïƒÎé²B7$y8Ù0å¢ Ñ‘ÆÉˆ4*”ôê÷Nމà…eïSêdêË]IR»¥Fäÿšq…¯÷Ru±Õºµµeµ¢?£~½#ë:PHÛ ÙƒƒƒÙƒ?“lhÓ’¥Ñôj3²³§;z{µ×îfÂÁÎλZý¯ ÉT]éƒùwmj½V£ýÑEüÒ‰nœåçÖw¬ÅèkxÇ:¦î —ÿþòÒû½lkL(°ž‚׸gSø~[=åÉ=S6c; ŸúGú&³Åëbghø„Åa¨…½A¹@lÛÄ'díf]3;ÇÉ’2z¡gï<Žˆáò²÷ý)ÃR‹çŠË—ì·ŽÅ…¼ºøyÌù2_¼ó'ÿÁRG-’d«Å¨&5¿jÆè‘”£ÇWF¨PóÉ?éõÃDÉ‚;fT«£†±„qÙ”²|þ»ð;{ô<Ý*Ó«Þ³ï– Ö¯»Rz' [‚ÝâmÇ/Dõ_Ðç]ÝÙ3‰ÎÒYJ‹¹½ÜiÁ"/šû‚+J28E…:¤¾k ,ZRFwnZÆ÷žo“Ëáw§ˆú¼GjÚx—Ž€ûˆå~1?¨£Ð„o;°æ1‚Õ>Â[€Q—ÚٔŨ‹æ?Ê_Â_ÕW¢dÁøäÆ 4Œ¨ß”uTþ¹y1ìyZ$ G÷»jÄÞ³ž™” 7ÝÝÉ€uq:ûvn#€À)z ð¯±Ïñ" ËÀ!skO’Ö=Ç”X®SôLåûç>‡I2ø\}"Iw'õŸ*âhô>×—ª¢øYP¤*(€ŸEÑ? º%®_JŸ‡Š¡üËS&“LE|¾øþ¥³i¦Kgàtp†îK“/íR‹æ u÷réÖ­wÊôW.™,øÏÓL¦©i›zZG} 9•5×·ß¾„‚?åÇJ_ü̳PÎ#ûHȧ`².•`B4Qç:},٣˔û-;OgdRŠ›SSS·ðÏ©LqX°üÝ„?Éom7dMbnñ7§¦d²÷+ ÚŽŒ{Ö¤,ÔÞQ¼œÏBãÖš#)\·kMLü$9Iš÷<ßIHa·OdsN!Yˆ[^­Ÿ÷µ‰¹Fú  øçœ¯ùÙ%– {! XTøü¢®€ã†—¬°ß$±¾óïÎ?çV{ÔU[,ë5âûèfY=à6Õ€˦è‚öþÒGììb ^âå›ÜÜØdÒÉàrºGšN‹\äúÑ:ß|/Q§Â¦¡å"8%O=Bó[þ­X°»aZ¤²î½7AânóÄ(è^ƒÊdÀð¤{ OE¡§+¹#Ïû)Öá!ý;[›à,ìý’¶Î1úüû ŠkŽ~›æs 5°™ˆË‡üf;E·¸"ó3¨ È yaO/ÓuCxçYìûÔ‰ù'Ù6[¾‘úF²vVèsGY«øY·éœé‚ŒÖû°ÜH:-LýiJ¢|¾¢†þYòGÿ+zWÓY׿^çf`9ŠI4­ñ¾” ã뢅µ¥oŸÎ·@ SI:~œ gã¾jBÊU:±#Ûë0I/ÊœôÔ¬¯öÑŽGyIõþ”FÓkctcáÚzǥȇ.§Óc³kë+z"ÇŒÜzx´¡Þ,ý"í.]_›m¢ÇçÁî½ ÊòÁ;å­Ïá tè–]g¦ØbŽ;æA¸ºà¦Ç8ñ;Dtá£ü0cô¹0Kù¥ÒÐmZ„ŒÐ–45cJ«Å_Ÿø) Ï{S\}dœn*]_ŸuÓÆ`^²Çžš3Ò˜ÎF…ŠòÓ.¼0]]·¢“ .¼`é€"–2ÜFŸ:uêOoÄ”7"\n„•¦°.q¹-ÌõõR÷>ËåºñúFÃì9‘ü³Ãé.P_>§¾’¼·UÖÆ0¶‹“htWºÒ]Ïþ.O¸Ø2C½PuQA±îÏÏ[à¶å‡ÅPÄŽVW{á 2ÿE?T?‡@äD ¬g&ïúWæªx Óa³e„©ÿ= î;¾ý>Ë÷ !WNâjÀ'÷ÐmûÜ‹”OÒhгšRöGPЦéÀ?-äææ%Ûþss?Ä+­­ü¹BÂÜ OÆUP“;©ô­Ôuà œ…‹ò6¼0•îÌNtÁK ì7;×÷>†9ˆÓ€u3Ç2ßêí8d’òÖAéÜ3Ø?UïË<6³‹ä×'ÃÇf„ha«ÜzµŠ ÿåÏ7ѿΌ¬ÜþENŽ+ˆ„½Õf8b„îÕ= ðQÃÛ¿5þµ¨„©ŠýK”^­g)3×Ð| Cvì’0@âjÀöh³Ñø‡ý‡Ã¾_ýä}*Þò°:<22áÒ’¼Xÿm´Òv1u™‰¯ÛÝ0ÃÆ_$X>´ÒvQ³ú £ñ~fø¯¿ÝOÉíAé\îíÍßH àÈü;ÀþÙ} î  žUãA¾[\ÔÙ<ð~P°Ö„ýf lÅçV€€°¬¬,'ACUÌú³x´Ê½ˆíãn#8x N¨ ¨òRìûêà`f7›i7Uh2æSø+­6©0'Õ¨×õ¤h æ§’0Œ!8Ç¥ D2´eûGdþÈ&5ZMÆidÿKlñ~¿°-\ô_M¼u¨`ÙúÖ Wl¡[:8öú½pÀÐÛ0h‚.‡.:O¹â%LªC9¬lÛ_Ìx n@Ÿænm0;¬5}©Ñ4l…_H&0Íå¼Dû\OÊ·’$ÈMIà.k{Ù'`¹0rÿÚŽ/6Àþ£Å7öv±è?TTŒ>¸~sq§Ò…I§\Ûöc~°h>¬$W¡( xjXÊlþ‹ˆ+Hy@s¼6 örmî`r`Š{OÓ²>£¼[là%û¬”B§L°œ¡my®* î#H„¾3:zµwo¦ÌÎ&©ÿö–™•X¾Šæu~¬ Fù«çE%q–od‡—lA~ÍE AFOÙ/ÿ-H……Í* mˆÄ<`mÀ4’ßš40Åm! ÀYÔ÷ŒLµ¼TûÃR€kÚ³œ©ŒÙ# J¿£º rÿ(ônÜcÃIÜܺÅð'Ä…€vœûCfOñüØ€)á sˆè·¸iÈØEQÊ>ï¥Âb—@U›ÔIb¶[P ÀW0%—èI ` I -9°š’A@ÅùöȈØWñZíÉ"Î VÍ/&%ˆbv]Q·úI9N °^]½7̳–µõ,Ñ xç™~ˆA.¨QÝC\çË*¶ìÔ¢€qi@ á“:I  9DtÜ«„Ɉ^6ÿO=0¢ €»Ü«ý‡8ÀîóØûS£oy¢p¹Á"?åMnçM¼#Íž4@ÖÔŒõÙ°ß|Ïooc®B.@—SÛ!1€:`¯+LNž…n|D« ˆ €—›JZªY0øãâ/9ÿ—Š9€Ü¹HjP€Zú»E¢ôë;„ÜïÉlÿU‘zŠ*NöWø6¢X@Á=ç·ŠŠëýaLì½ö0aŒ ì[Ü5ì¸Z®^¤rŠý|ÀêgÅ( ¦°ô$¹•LÀSÎúì† }ÙþÿM`wYàC»AAè;礻ÿPÕõ`Yäm*©À XÄá†ç—c&­EHÀc>)è/ dÈGà„*à ìD`´Ê EU"¦Â[ÜT’ê‚6¼vøãɦÿO*H{UÀçÛËÀY‰D|;–[a¥_(ÊyžÏ»ÿUìÿ‘%9 –„P@yÁz‹ï€íƒðQÖ6tõ(ß-$6q†Ùè±ýËu‘ñ >ø=´"Æy_ÿý i̇T}!€ìÄìãvq?{ kÕJa F>Ÿï WdŸB@€= “öÏqòv35ÛÜߎD¶] «‰sµû±Y%0hkëêÞƒüÉðy€Ìô®¶¶À1EÞŸÛâÝ?ñÿ*ŽÊábY@Ü©@U ƒsì-‡ã\óQ~s ×熘v›Ñáqtu×óy@ ÔâÛÇ]m“YÍß•€Q/Lœ˜©IŸšcéhâÓãê¼3»Û2“<ÀðÝí†IâU× /±|Aç @Ý8Æ·[ûHûIw8&ã 㩉?¿íºO d˜¸#B‘rd„ñ¸ dß8¬…ò¸ãPýØf‡“ú©oe̳‡ãý|8À‘¶4®ô¹_p.$6ù éx÷Ï=…üÞë2à+ªÄ×;T«0  *>jj=ô·ŠGÿÃ\Æ Ñž±45®c_‡Šáƒg²hw_MŸE:Û€#Lmq sÐI?#káKGì4Zèͨqš¾qã ½¸/y 3tÍp züûL¸Ð7\Ó´/¡ÄŒ{&5ü?t#Hô¶ÊiOcM;öLáòø¶ë>!”»`˜¦ØafÚh˜1ÏdŒ786Iß8u#öh"7Œ옒£‰;€¯ˆß·6îø,âx „Òí€ôø{ü¼UpÿØÿWù¸ƒ ¢ú‚ø8@efÏ8,…ü\8>áÅä¼7‡…á›eë¥ô@0˜›‹9äÂôFtƒaÐý`.ýεoý HÀA5 ‘y¿MKwhŸ8²5{SŠìÿq>Y{Y™úŸ¬]KT_ùºwýß;æºäÃôËø…hÐGÆ$íò`Ö ÅûFúˆÌídjö޹ªé´Ý½ø§$ ôŸZž2ïÏ=÷W¨háý?W|°;±Wlu õ],èϘ±êÍæ{è‡Ù\ÿ ©ó b_g½,Ø÷ ÂÝÎälQÔ—0°J—:ÅV*Ž3'îétxüoŠKÍy¤Æñ¡¡ ~ Ÿ. ¿÷ô¶ž*Ãfßà\qLovl¹¼œºÇ8·1=Úã0¢(¾2õ<”JídªìÈr‰g‚uŸ˜Ha_T{q(i¾‰€xÉ€Kºÿ[Ü‚†Ç‹ý2¹üºÇþ¦Ý0ݹ‹¹6ĵã<Ò(cNrórÿÂþ?öŸûTÚ} Uðä'b–îˆÓó_?—Ef¥R³¿þ95ЏÊRÅ×ÎȺĸ³¾ß@úÑ ˆÏX…w/¨: ¸:Ù(öšpT,ËBËrе~yTó,îÙù­o­!hu6uÌFภùîe¡ÑãtsGÕ|´/ Wüå$M†I¨¾hÑ °òpãnR œ±ÚÒh¾ÀýÆV~]:FwÝ>°I§›V k¤ ³iˆ 1€p@ahXN»ñ0Jú¤”ÿ¯ÀokŒ[¢¥wÓM°¾=t4\‰ë>¾æ)a%`: SØÛ÷b‚¶¬à•Ö‹¥Ð¥àM£ÎXë¦wn<ªà,Àp·‹vÑR53€ŒÞž p ²s€(˜OŽ ç¢½Œû—òÿ/'HÀÈXÎ ú  ÈL‡ûYçõ c˜g‰4UQqæœÚÕp’©ŠÊ`ó÷>ÌñSl‰‘ÆúöbAwæ,…‡!µ ŒÃÿO¡©#+ˆæ¿R P.îÀÃäy úwEט¯vNx&á€ú1’Ž5ô¼óéàT³Žóá]qç!p„Éîû±_p?n`ü˜SsFžáXÏÄÍ âÏ…ŽŽëÑ39Œ{ ´ Rtð“á_TFèSêÒ^s/J ®òµ«Ÿ}ð··Ð:EP²~ѰcÜ¿XÿÇq}@ Õ«™3Ÿû%`>É̬ó²Kªìì;˜m¸âûìRóù3Z&xr ŽáuB„1ÿ† ÙÿÝFÿÍÌÛÑ ó–:sþŒÐgPbfªyhˆa˜² †xPDò9Ønhþà/WxNÐ7œaLå!&°‹ÄàêLfDÁé`SÊÙ?|í·gn'€¹eßÌp$Á—¼\7S÷‹ÜøðD€îå}‚‡‰žÌÌ„>Ƚ’»‹¥‰ßÓ á«A±2\­Èæ¶ ._#倗{[L\¨Økc˜ɯǸ¹ÿGžóŽê¥¾ë(í@¨ ‚ÓÀ^"*F0óÈRõCŒ~i4ÇüŒÅ‘zdç./Âé`³Ø7Œäxó/ùpê¡QkÞIð¹°Sï³Ô‰†(=kg3íí £Î®Êe0ÅÚ'é^Þ\ á@î.ƒ;(„àø™{µ.|Ñ1µ˜¦…ܲ§;çBs¹ vùé ¹µh÷¨µ²AÄZ4½š^mOÏi¹ÁmƒÏy pYÛRe?K7% Õ÷/Öÿ‘ \ü²_gÔ|N˜õV{£XÿD@.à¶à@p˜°-Ã_d©gÅR—phámPqÄþ&è·«t,˜‡¶E8'(ƒj1i¯D3^õ¼,xÀ Y€ûË|ÝŸ_T`Nx!H¡ý¿Ý!@ü——Wž€LïÁˆ ¹ÐtçMí ö©ùòR†V«éè8YYUV (1Èg.k;¼ ôýޤ¸%Uþ‹þŸÙà÷߬?¿ü+ŠXýXÝ[·D±a»ÀæÁá—!hà8%Š!  æËíþ)5ÓbçÍÛgª5/8êPM±vio €ÒPˆܯEA@çs¾ûœ°Rl‹&& 3ëbb0²gH•úÿdp€ ¨5íæïzô`ojKû—ÐŒ@ ã^þte™šÉ æªÛ yòŒð*)Ôi5È™Óäû'lE^òâ&‚þyL¾ÙQÃP°*Ä=ãPì¢×üðw¯…ê –%æÏy³Hп¨Ôy+LÍã}žä ?_¨/W 1ÌžÉJB(ÆKgqL'÷¤Jýr8@^\ ²÷bÁ†¹UÈÁ¸=q€¤h¾€0@wùËlC™:Ìe¢ƒ—¯i¿@ä¿WãÿœÜ '&ú'ñÿ†»8Ì3;C€Tý„—Ì@º Ö‡ô7)Çq‹ïÈÚ†Ú?»UEìxHP ü5‡ ÀÀ~ÈO {ƒþ†¢‡ágºãCjÍ5(BÜyQ/e~Os)u¬ $æpbpu— %ó»B€åh 0P¶S`n`a÷[8  1ÀÂÔž“% Êóm†nKuk°’äpb'52ó§4Íâ)t×èí=Y5 äÿ§ÿ’wb/ùbÜdxÞ [™_Ã@¬¼‡a \A˜õ’^¬– NW` 1+¤þXJ£âëŠH#¡4D–^ø}Vð-FŠØÃ”ŸËfÔ½½°³AvU*¡¢æGS†ûøÄ`H9˜ª}…í­ï8øŠËÄ1€= €²†=©.'Qø©òZm‹Îúœ3eN ‰Áb¯¦—ª¸¤m‘\Ýe3tówÏcý™2þ€]°+4õ7èe¡ÂE xÃTýê){Ã"ß0ØÆ´ÿ´Å)ûCøß'tB%`ßH À’õEŸö,eæß Wœ Öê`3eQP]FñÔ¨Fι›J @¸–Ó„-ÂÜm¶x®©¹WÚþù<@l`õE°—-p!ˆ™ö¢ºœ\Yp¨Ôhµ×Z.! XžúÌpºoªõWµÜ–¶EìșߡUÇt “êÿR- @`ÖElˆÕÈŒßÛ€õ¡ÀPd§t „<†;e.Z„¼ >¡3Páÿˆ éÙ«l±”¬ýgÊ´Œ:«’aÔÌi!ˆ§¾¤4Þ'wSl“|°¼òöŸ „‰ÍÄÀÞ‘‡¶]s€¤÷XíÔehz¯i@ 4•ßcCL ˆk•á{ÿ-ùÑ}¥ú²Ùú|«" ØÂíæQ ÕOŸÌ{ çgo õÔâw+@Jœâ7ì÷ D¸§7€AÎÿ°Óa©Œ_÷(ÿ¼¹ñ†E¯£-æB( xOÓòä½T²2pbW Æ2©hH­úÿ$!PùÇcßÞ Â ‚$ÄÂTüL>p\]ùGYYµ½Z„ŸWüE&0d4:²¾÷„þOò5ÚÞ“_¢è5!€o¢;½»¿Ž#ú¿Âª?AOOO/?-A§—¿D ,`ËN-!à­€í€-Nå'‚ ~È~ÿÌÏ/d»H=¦;AÙ#º¢€·¹Ìñ,Gú1èr@ŒzJ<^ÚéTÈûŒ"z"‡|FÝ^Bà¢fl â Á` ¥AŸõ£þáT2‚™ñôôî™&ÌÍ5oduÿA¶SD8@f9z|d9ÎyâaâëZ‡áñ _ê"ÀØ'°`ñ[‰¦#éY¹Öþô[¦àÞ€«µ¹ˆ`bfòXäe@ù$Ý4æ¦h®i{;45Šìó©¯8h—%‹¦§«ª´ÚÜ5ÇTTÿ¼¦oÐôä÷qÿ]õç-´e¬Éwša¤v5Ñ®rî%C@ü ûÃè—ý¦ƒZpó‹óU “å SpžeÃ7ƒ6 ˆ#Ø»]ž¦1 ÝõïóNݬ½KÙw8BÓ WDCŸ¦÷ü´¸â£¶ 1ZJ£½ŒØÔEínrÓ“)cué´glÌC§G›‰¤}è@/ÝϪ•Î î:pÁEß@k!ðÛhûO< èàél›IeðŸ»Ä+¯È À8$ wÈìé'él¨#§O/© d>t““‹…MôO34ÍZm¯æ’5Û~øÖW¿úÃh##,#'ÇTeFþ@ã ÚX%eßi¦±°qkMŒšòí.$ÝÝÜË„¨ ðCT?JQ‹Þ0Ôù)/ ±þ#݇§ÀMŸÇå€ÚÇøñÇYD"ºÐB77E¯*vÜëØ¢Xk @€&ëK5£·16 !•qÓH7ýú;ßùÎj¢ûSdýûº<¥èÞ,õtE™îm¬4ïÜ\¡²³iµrÐùíˆêÿÉs$v˜nº¯O³+…½uXkW&m Ob±}4é¾}e„Ö`¹¹^Ï­ä„™\›µì¬»žl”6Ç\g(*Î õ¶\úÌeAæ®·.ÐF¬'@Nf šÌÈÂ^‡ ¤Rµœë&›D­c/óÍâê@Díý9g¡Ÿ0œBa½Ÿ8/ŠCŒN"êÏ(»:zQPju·}"€ß±”u‡ÏE*ø`ïð½7‚§ Œº™B@5Ócÿö¸þíïèÌÔXþéžBA/J˜* ȩϺŒäì0ÕŸ‰R't[(ÊÐ ©ˆOBM›î¶”2é1QÛ}D–¦€ç¸¡¹½lÍÖƒÚÜ ÃÀuâCFÏóY³t=?\ˆÜ’ªá¹Š·ý{†æZï9ú¯¿Ê_‹5»²¬ô˜¹ ’À•LÙ¼þÛ’R㤬žB&›ÜÔõr_-fˆ˜…Ê?j´Ê,M²)8 ZÖ»UýÌ1#Ö<¥V6(P<6KI€y D `:XûYmð¦œóüoßá/OzJ,þaIJ-Jþ[&rÝGߟþpŽ ÍIj‡§ä’û·Åa6KeÃ,wɦ³?U \RŽõ#! 0"›"ÿ½g 45äÖIää›l”TÄ.ÔIZùGÆÚ:§ÒÒ¦Ò:óßÒ:>z‹·ÿ·.LÞŸºÕ™]ù±šaIßêOo´ÝO#×gïg5‰k³®J/™úòA)_î.ÀB[^8@Ì›)ö/ÝHù³ðÔ|ÑOdráD¬ÙTOùT;É@‚O"¸…£½àt^PÝ õôßýoÿ?hœô¥ÐâÇý<ãÒKL—´ò×]ýSSƒÓœ¤e·ÝiÂããž5i˜Ÿ‰£ü˜÷rp¿)ªÐÕ([°·År@¾]€SùC¼iϰŠ÷r³ $ @¤ü‰(˜¥ûp`˜^wаïx¤†ký /`ðC ›¶ZØÅ¢å"×äqt1I¹ÕcT‹½­ºøK¹Hu`½Š›“C?Þûߟ‘Ë‚ÓäD€–e¿žn•$å»p ·2'¬@ðd+,„ d Þt¤*·¬q?ôWýþí¿¸R"è¶‘©£…ëŠCB÷V‹ñzðúõ…G1pÃ!>4ʆi’îÐ"ÀÝR3yªÚàW`wŒ‰!ÀXÛ')ðêÈ ‰Iÿr°“ÿ1ø3)..¤·î£_i?•9úgÒãã.‘ЮѿnwþÁµQ¥d0&DƒGúp’è–¦÷úÚ{@Ìp÷ƒ¹ƒi8 0CÏŠ4Ü3~¸À¥‹]Œ å©™ ú%û«d°Ïoì=ñSwžÈ$÷Ý]Q™_¡ŽÓ’*qŸ2”½¡hÞNd Ñ\³ #ét#z¹…c¼¡‡òàˆÀ\v9}– :ðIÌ0c0L#ê£Ýx:cêƒRëF ¶-X m$ÅM°ð¦ o}ÓYؘ¶Ÿ €”€Z lD`7¡¯´õ>Wà“Cn&à¢=´+ªnórÇÿÑŒuiË?Òf¨ÀüƒÁÓÓ!AïØÅ-Š€}ÝhÝKî|èq‹îJ©â/„Z^¬äm'»ç-è¥é¬« £‡“,Àûìyí± ©ñRwòkØ +=‘Ja@Êp\YîéЭڠšç†?¢a♩31å“ð'c·éŸOÂKlà þ`š˜ÿ2¯OOÆ…­ýmx˜Øòï‘.ü wû¸¾n•—7“€È8ž<ûɈ»hHˆ:I-šI4ºk|g\9€Ã@ÜÌDù±(z¹CÛa冕û‰öGÚãÈü™öi2küž°he‡€o”÷Ï$øÐ0©Vû P”CªA”jþöÅoŸaß×ó€³a/KýÑxñ ÷]/¥gÔ·¸j¥}ϨE•,rÜ4£Nã*ƒjMòžÿàÜ3Sjb|è%Ž$0Ð:x¹¾hó‡5üc£ñ—· Ó_>’ÀÏgÆ®´”$hÝgJg…rÀºŸÿ&°÷"@¬J1G6¸È š±Û þûŸ |ŽíŸ\ÚŒ“6dþ§§%Û.~¤˜ ò ùro·u;ËÅ¿/Z¸°°ˆ¿©6ø££9\Q dî Ã*‹¤W§F1€©vèæ®XóþßÿH÷JM›`þ’¥/äfs¯ç%"€P˜{}ŠÛ7rÜ}ˆ:ƒÁ]¤>ÿÿ©ø8  îùRö€©§´+²_+ÿáå3Q ˜zǧö.5à-€–­Åmðq€‚gB å@Eí4ú Ôu𠝿Uoþ²È~j!wš{m€h € í½Pø“OqMØ(0e@îÿ!ög˜Ó•škE ÀL-¿ª¯q;B€_컃æ§ÄÄrÀŠüÚ¡^¶‚Ur8&ûiO(u°*Ò¢ÑÝ}…@HýEÉk "àËy˜Þ1ˆLÜýÝQ€¹ÿÇ©?µþ îwZm†)¬ì+È9À¼ÐÿDA»q€%hÔÌñÇÞ'†`íe/µ‹ÆÇ ˆÉÎI9΄b€¶$¨®¤¨­K©¨ øBòSÂ7µ0ðú€ Ì«UàýmDåÈ>€H¸,ù0ÿ¡öéŒk-!îì5­ÄNÈ*H™>ûA€g)¾wÐÿÏÞûÇ´uæy£û€ðcw6gDI`˜›ºM(¿,!B‡k .ÛI‚ªŒS·ªâvØ;C‹´t”tvõšm™íL™;Kß^c6RkÒîzè±qtµGYšVh8J®°%tÿ#A7aXVìíÝsŸïs~ >ö9çÝ÷L'M÷Ø|Ïó|žÏ÷×çlê!M•O†0¼ÊG¾€@QG/èæùÿ/Pã„0ˆ‰ˆy€ä¢iùü'U‹rÞÿ•·È¤@•È~ÌÊ`ïç!i2)"³ƒ‰.Eþ{GYCåíBZ~»~H1 r€ìÑéw÷ô‹|z€èejª_¿vÈ ~»ÅH£Ñƒž=çtœ{þ8Ñ % À(vøœÛ]`T4 +g <j/‚y£Ó`±‹x³WQ­7 d¿CWEó¬ç=Ã/}€-™QµÀÅÄœQíéÐÛÇ,n÷ÔPºjûó‰™u—Vã·÷6g¹Íí]ÐGÛ?p»_²ï!“I.XmòÃàdõÙ?À†×cIÓ ÚïóO tø}—¬¯ÖÁéÿ«ðž¯ñÊÕB€üÔçï˜p3—ÒâŒu3­­þ]ââû/‘^f°µu™2Ð_†=€sŒÿƒ‰æ5ÇùH0#@ €a®€ðý…ã/`§>•ã è¶X넟9hÖÁÒN‹‰<“ÃR=AkÞ°äÁ·9Ü+J2çèÁ¡?y«Xgë@Gº„þ§‰™ŸNÑ!ŸhÎicŸ*ÝÆ×‹v7,…+Œ{W¼¾x/Ø 'cùF7¨uŠ0Y€-‰ ¯Ã’¦€EÔíÛ˜`.½ÃrÅpœ±Q™/œ5ô»Œ:îu›$úëþ)=ÇʨLÈ]ðw_O™¼É2=ñÆo|¯ƒ¹t<ÒÒ‰òÈ1¾BÒ½ÿöæ_ }_B"àÿ‘MÐz€ @ =~ à_¬w ÿYZ-™ÒÙ'Šßç.8»žøôýòö4 ý÷Kö™Ð‡ÕL+èºl“Wb&âܦæ3Òù mð±g͘8F wݧ[ã & Ö%cI³ XÑòie†Ù¶p|^/G„|Y$#·‘1ÿ©+Ò(ŠüúÁ×”¬å³™º²v ùõOÀõuó<:“‡VˆLÀ%EóꊉûyåËfŒÀ&8 jC ñcã¤Êð‚Æ’c™YÄ}ÃïNtú ýÿíÁ^ó>Æuñ=Z2êÂ44b”i{›©+ߎ'~29;¡,X½DNí qÈL«–L(—jú\EµoÛ_Þ¯Ëñ”,Špäö ù_3ª@oŒ(Õ¾|a!®}R׳È=øõâõ÷¹ãŸu’Áà¸_#yõÚ›<_ Qý{ßù@™¤ë´ìït5#µ1€“«§Xêj‡S‚Ì µ´|U×í4óYa¢ïuU@³4 _êÀŠm§tïwzµ‚þ)»ŠB^Ì ‹bUÿðŠva© V·¶{,`tv@Ÿ,=ì¹×¥‡ßzÀèŽW®’Z€¨òн¹ݦ »ñUI7ÊW¬ã¡+jªþgMEžg~-ÀîÊJÛ©ŠÊÊ·++¡P€_¨x»®®®¤N4¨>»Ÿ jQ­, ¸;ÐŽ"¯8Ø bzãlFHäH‹_ôO|ž‹‹ß«KÍ>ékÒ·®Y˜‰÷Öì@Œ ªWw«ò©ë¾÷mÒUòÁÍ „×)¯wOhæaÜÖ Zj5ÂѦ¦O¨—jþ\Uû »/FjôK̳V‡ÇˆêË @UkLq 6ðg™ŸàûL€åð?,Ç]Þ¥{è4þßpŒ öá T¦)ÒÆP(»ž{G£9¼ys:ºZ5û Ó9L“*Öž{ZÇŽV5‡EAÿ/tq)c'Ï›£éËn-ñhäuZ3C÷“€9ÁœÝ—«‚Ý‘ÌôÙ&F¢šAB§ÍײœRGPløg’Y±^gŠ‘´ÐÅï1/¾!À×¹)¹ÚÞqbÀ媪úù™({0ÁâOFcšÔ@5?x‹½£ðmo:,™2Hú¿:ðTø/&,æÀ‚òmÖu0$‰šz â)¹ø©¥¾Ïå«@ /)//xå0”N7(¦þÌÙÉ\oîQ̘ô xu±±ð¡æŒž0?òƒ9½WñB?Åjÿ¦7v`S ú·ÙÀYÀ#„ÖÊû3­ `mþf%û‹ŠŒÏª}_y±íÀ2dw¢¥·(V<˜ÛšƒrfÔCwS‡9!ã•§A™žÊ¼1«.ÌŽ©ÄsD$AÑœ©&hY øæVV¢QøgeZ] O3¿˜Н?°8½ªÇ0ªbþÜCÛÕXÖvBKšè—"¿ Ö~à™+FªÅEBfG˜Ÿ½ÊWãA³DU!û܉ÙÔfkÀ¤Ÿ~æc ?xâ_3¯'õ€k‘ö'ùAF}èvŠ C/Gü%ÅkÚ×â<Qpw  ¡“/#kÇ–ôJ·ÉŒ¹² ?þV­:B°Ñ^enBc4ßûya–ê™%ª —wÈ9g¤½èÍÝÐNHU¡^qÓŽ’y—A÷Ü m/\óÚ=(“©Ä–4F}âš@­ý!‰Lö:Åa‚ÎtÌxî—uz[u%«±ýÅh\ªªã0ëstvð{o`ðÆ‹>§Ò8â¤êÞ°,»\‡x˛ϻâè› §ûóý<˜¶C„wÇPðä1+ö”Û ÎfˆLî,Oߨ˜cŒÄ…N§£’¡ivP\˜›N=TsrÊ/j—!sF•ÛtÄL²zI¦W˜Ï°ó¿\"UîZ$äÕ?÷b7À/Ø™V¯dÉ„àez!ÐmŸ}³ks€I¤ÖþÊ[P8ÚëØÜØlôϦ#p ô ]ºÇL3  ©®@ì,|ôñÇÄ8‰<˜„9ø†O_a žÿIËr”í4<ïö7¸Ïî£ N#€{bã(¯ÝŠ~ã`ßO«%Sº¦™ÑœúÎÐfðôÆFé„ÞºÍ$éà,6s×f£¯W·nêõ7–v9 Õ§LN1ø6ë±ÓltT=×ÂŽTÑ À‚-ÝØXwêwAwÇ„ŽûKŸnKšß 0J„þgJ’Kå€×û÷Ž0ñªî©y·ÞÒ˜_ºáí½©¦¡%–þß áœÔ H®–u½>H¾Ì{Í<¿fuQfíÍüÅçÏÁÛ}–ÏŸŒß(ÏPFjbÙrò¬Á•z®íç˜tZ2•«¸7)sŽMÁOÐ;”ž/ ýø©è<Ð'_ŸŠÁ€êþÙ=·±ÑôâˆiÜ¿#[V…€‡xÁâ/™Äp‡]YÒl»=wïÖaÉttŽŽßÖae©@húÌþ7é[´7ò‹ß Àü\púYñØhªнq¢iRÄ_ü·¿¿tAÙþHÜÿ”õ8Önl- F €£*¬ EÏ=áÒßÿþ;Qd'®P&Nãÿâ˜5æXùßþù¥?¿.dÒ-.NÆœ·ìöŸ§Ïiº]üËá>½j9‹ÃŸß6!ŸÒ”?{Øÿ5Bôçvû°Ô¶«e“ù3LæSwÕÒ|¼ óõXòOŽnq<”Ë«’S2OúZñèýPØ4ðAE<Ñ4¸‰‚Ùg.>QÄÁ#âþç#o^¤XKç;y´Ye«¾sü8ߌ7yQ\…ùä/Bhgw à -YQ;|óÊg…ç³¹{®ùt·ÏõémÀïáÒ4¢@Üÿd.À"íËxG>¤5±€ä`7Š&óÍdi Í`4]6ΣïÂçhÏèöÕóPó8’A‚oÁþ_C‘/_¡ØJŠÍáC>RÛÜ)A@ÝÜÉZ-(r€Ý-Ï–Gjc˜säYáŸn‹s}žñ‚ ‰÷gÚõéE}º%t_Mzöÿð¢8“^®ãhu½icÉÜ/¦€ ¨¨ ”ùðÔ˜vø ËŽèzc=ÝfäsB¤g¿äþ1,É€ÏYàó„‚ž¢¸pW (Òé€w°#°\7÷e'Bµeñ8€:L (1€“è ð„û§X6K¿ú? ÆÓ}Yºøi2»(…óŸ0€žå˜¥Ÿ ØË¤žàÌ(|á0@¯Pã0$Ð$æ0Qo¸YÖ)E ÿ_#¿·R܉p€%²ak‚~õ©* ŽºžZ=Z‚ˆß®8€:¬Ež$¢ÄÚQ¤ÅjÝrð^Uà#€9Nß3΢ÓòMÔýš€5[´#ÆÇ,`8IØæ<°"FÚÒ >€›rl–OiA‘lˆ€‡É@­œÿc©¼OàÌGO£ØWÏSl8û‘t‚VH(o À–×ÉcprPg ;¼T  ÄPhÜz Û0´æâÚî}ú¸»5iV /êÛWið(ü_€¦BiN rÝ©â’c¶½?O4 ör¤€)Ô¤=l@POÿjÅÐüh@‹ ÖíŠC‚Èùj&!ÁÚŠÍYsÑõ0”(†áðΆ[õ,Ç:êPà./@õÔJ%0Ž^&@9º{Š¥²Æ›É@GÆ@’[G`eq8 €æüçÌ/ï]ûIÆöÔˆ>Àäc¢:`ú`R—PãàêŒx&áÇx!4~âÂãÿ3h’ ‹Ö{=ŒÙÿâ\€-5 ¾/©X@œ€¬ úÀ+Wßúí!€¾<€Á@l}1 0rþŸÿÜ}rÚ¿ìàN¬ZYL¼»9‚Bg‚„PäÌÎHý2†€ ì(ÜÔp€“µ PxAªcíhõxåTs‚Çÿg ñµH˜˜çÕ%7cW÷ù¯9˜åÁ ñÖ\,`w/á/ú}€#(¼WE×¥ûsFtäî›xÐ,Åé.6ß{Iñ?e>ýÿ8þò<Š,NDò¾i?Ú€èÉ{¹þËQ•ÖÈ'¼25ì;¼fÀND¬cgPçy8ôC(tf„ýÃOû@š’ïZœ×áj!qvÆØí«}âJKs7ã‡tÂ<€y9€ü)q}ÿeìþoêg°ä ãû»X@tÚogú£ñ\€8–dôZ21ô3­›ÛÛ]§wIe3ƒ¥]Û] ƒÆ4h‹™ŽÒ®\¸MqZº`‹n{hàBèæƒ"(ÄÖŸ(Å[p2êü™5«e;ožc:¾÷Ä?ø5㦸zHâý"NÞg!«ë€KLÇ&XØ©i$“*¤@;v° ñl§Ó’M½þõííÍÖ] qtÖô愱>^ 3°±»±îëM/”$¬ZY4« è¶Ï¹€MSÚÁصû²—Y‹ 0–åƒ"` ˜›b±á7ãlé8u N,éïm2 Å’¨ÆöfLƒÿ¨OR ÙŽmtNòºî›eS·'Ò«cu#¡Pf0U@„Ü–¥»+j î)Þe>"Zao|ìw³Žšž/ÿ2H¢ƒq,2€H0Y³ ¨·Q;ÒwÄéR  ­A!M¾YWˆI—%-þMY4YÛgöM¯sCV$7>C²ªY©ß’VHœè1« hrvp[Vɿߒö8y€],€+5~övVlj ɺ"¥þ)£íUD´O·ßß%Ëmú (¦˜t=!˜Dy€BŽýÊÀý! ÖXœªÖ%¾v)B}ͧ%­À¯_dì— W À'»Ê% d7GÐê™ö†ÂŽ€{P½Mµ&ТÆBàX Þ´[ò¶ªóÝ:Õž¥ñ´¯“Ý+ݪŠxZ•„µ@6zÙœþÔ!I‡df5¨¦QL`†¹ƒ¹éHÕ°ªlÕÈ\ß묰d"ÈWŵbÍQl² º˜Û¤•øaààør=×f  h:IਨK~¦ 'Š´‹§|ðoU¹ð'œnv+;„Ƴ³WŠÎ¬âs5g“«{¡¢²òæÕ‚â²²£láQPŒdw ¥Â÷5Ôi’eÓE•u­ãGÔ×½’ànÊ!¼1UOvÛ™Þà Q-ÐÃEºÊœOÒh^6j˜²F€Ä‚ŧß#:{ÞøbÁ{À˜¢³§C`ýO>–.UlR…÷IUwЈmT’ì2¸vô\ó |£ÀÔ^F€F=·Ñý<ßIæ„£ã˜ïÉûÿë ÷eê|'ŠtvƒÁˆTŒÿÐŒ@$¿øæóëuURO”cØ÷·¢"‘DÕ3%m²à…Ë.­jr·*f½éO9˜^YðX A ‡3« Y3ôA«.nÔXÒ¾«`ï5íWåª÷Híî$eI½@Nnhˆx³lÓ+f]ÇyæôŒæ²ÅYÛu‘ ~”yOüÔM±9ðªöŠhÿÀŸeJU…XM A1ÐÀ7b @´¤x~¦¼ñÆ,ô¶&¥¾žt©Ù¼Î˜× ì[÷*ãü·c¡Ô+Í)z‰£{t€wŸ {³¢%Å÷ž @ÆeIŸ­wú¤W½˜¤žz]^Òë$ÊÔÓm÷ Ü=„nŠÀºóPS|t³ïè_‹bÁ˜8 \lÛRÕ.É© æ›—ÊÅßóÁóio£`¼Ø ÆÆ1|ÑN ±%[53–ÒéHÄUã¨S·ŒÐ8IVZš]!<|Pêèî›óA² à…yM×w[’hû~·œÈ’‡,zã»Ñ¸.y¿aàF÷~AÀmS‚€¾mE >½¡_!z Pf¼ (OLÑ=´(Sú6™ê{˜èCÉOZSf¾ñ"óÚ?²Ž¼ûƒë~³˜ …~åAÿÀéUt¾5|›T@ö# ír³°jÉítYrLôí ÊçS·€ùaåLì®–é`¬Î÷m2ÇI²äý­ƒóp¦4z• àhÂXRö«&é¦g)¦µéìÕÀb>¤Å@—Â9*§½igcã<“x;;ËÅ"@Ø';êÄGq-p{yþ5æ#P âëý½gÎS\ÔûªÓ“›#Æ!ÍwÃ<î׻ݡ ê‘z#ÀοõKhmIkIágÒL±øÅ£Å{:& •Ò€^SÒ€^H¦»0´ê  =W“¯CIæï±$ ƒÂ–ÜÓ¼÷œ”yx¼4àÞ^€!eÏO‚¶së&öŒuçÝ”Õ:Âvf¯XÁ³„Ð(úã/ò瘎Ÿøú‰_ûgG…ì6Îõ¾Á3r×σ›ˆ‡Ò ž@@yðø%¦ns:vÈ;© 1äÕ’Á°dnZ-y½×·Žy”¯ÄÂø¬N´ÍVc…@ýd¥m¯û»Ó.l|P º8\eÖçØ†™ÁÓ€i±ÓHš°%»rs7ZË}h€HàD-L#ÆØ®Ff*^!Kê(®öù ¬Ð¸ìÐ’R)°Û~Ưìõùý¾îôÏ´¯9À0Ü i–{õÃ,kkx‰¶sÈþ`uòü%ŸÏïô1 Ksý¶“Äþ‚gvVdPÛ” »™Í †÷õÆè¤€ÄBÈz>OŠ^™~KNZðG8ýŒ}WýºX ì7 =ÓPtîóYÒ?Øä ÀÄN`M6å#UÒÅq,‰Öjà:[ óÑ~ƒ ì‹W ¯@¶db$ÕÕ 4Óî\à2Ų1p¿øÇn»¥¬Ï³RñtÿtñaL³Ã>À~§|˜£Œx (8.€0‹Oçû3Ó–j²ËV%ÕPñÇUÛÝ?ûß ýGøŠå ›Q¨9 ñ€›˜-d+Ðþ]ôÚ¹—ªwígR €]€šìNd=RÀ!Y2¿º¿æçôž#ëvuÿvÇ£Œy¦¿¿úPæš|H/®ìËúæLÛÿ‹5ÂXµ%ÞSÉÿqAAµèö†i:ajt¨¿(?.ÉXÜÏ’z"):ÛÏðÿ =*œ'f›”pK±®àIᱸÈÔsû:¥ÞÿŽRÿ¢=YÀfþê„„àËŽË#-dÐ×JWß‚‚Ù+å¿Ѐy>Ðó²óŽ_\ýòÞÞpÃ=€dµvjÀa^[ñÉBŽ—뀞`ÓÔ@w÷ÿí^Žœüæ— (bÄëHâÒ /ðVLvs€®­ ¿zµùñxèûç®9ŒVñ"³#ïµÃéYk©%Ŭ7’!ÑÿÎñ‚ØÞŸÝÞ,bÀ™ö›kÐpR†¨" í ÞáùÈ´zн£°$öZ5q^´=6°O°i}»ûÿ÷¦ŠAû÷ë!ýÐÎó=PBWÕabàZ+<ž:ö²ã? £U@øtoÎÅ>dûó«'_FãgDIÚ •§d3¡Y[ò¤¬ö£ð€ˆØÝ@ `ºø31dzF8ǵZdEkGC`ñÆÙì[ôòÃÇ÷ë°Ñ}“æìÿÏÿ(¦S^{{Ò';×0P®/À-p¬ÁìÇâ¡ï›0œ @˜R÷?Ùþ˜¢Ÿ–Pgƒ .ÊD €}€Z2H@ŠîaÀ‹óÀš„DjwÊ÷€Zt³?…Gг+GcÉûØ ‰³¢`¿žàys:&ÜÿZ0Bž‡À'J9š5ŽØ6_ ðx85mñíl4ü-âùÿ•fûËo¢Î2PõËëäCæ&åN@f(ö^^‹Î•r_Cb^€t¡æ%  š·½€> ³ž/"Vë‘€øN@ôqòöËôÐÃfäñ²Tòäx˜:B ÓVL0¨ÈÑp€®M(ÇÀÊ?N€Ž›³¬±!*ÿ·ÿÒJv' ø×¢P5‡0Jä]£ØS+À>@,ô¯ò€f5&¸BXÀxs, ؉ðŸržO„ŽÎ”ñœ€­8‘L½ì£ d3C TÇùà &™*y²  Àn.PŠÍ9¿¬pÌ¢s0x<2ûäê¹6ɳØBòYÚíO$?Á,Kx£ žÌrpWÏH ÚFW}¢‘üU0€TczfGÈ~ ˆ]‰ˆB²ƒü)ÖqBKGhË8NÀM?N>@Ü<€)9€]ú¿‰À@ n€ù°ƒxˆ`@ŸR´ÄÀÚ@…?`¸€oäó_Úþœ/{Dö"¡H¤2‚_8ØœÕv‰”°TPPlÒ DêvN¶„D=ÑHPžVËç°”R+GhKpv…®'+ nÀ5Pü ûŽ:á!€!ÀõIXö€@ ËV¬E 'Àˆ£ ZÈQ· Üòq_†Åüˆ´ý³%·©STô®…2¥r¼a°\)@uçß¹ßáªmÿ=Ä#Á–ò† Ñ TH@‹Ö#%q#é¬C¿âæêLèÖÃÿwÅ„B:Õ<@¼¹i€•â#Vù³9µ… »²TS€Ç"×08àYž²„‚þ<Íé ‚¤*iìÀ‘DÇ/Rì§ßÅ/ p¿«ˆð;B|'DÅú4Þ ’Âb$ èøU‚÷ŽÖ˜{€ÂÇËØ›0c€Îý&MÅaêy€Cb¤Y­óí>–ºCYÿ}DŒ Tq[ñHqš†ú-ýņs©cýKœÚÇhqÿRíTæäW[,Ób©¤‘yp›sЫ˜}µ£øþâ•'ïæQP(矿ä.°üŒý!æÄ ˆAú_ªZã¥HÀä…‚‚‚KgÑQs®½NÀW6Z1³‘Kó´´×èú-©×>+y€Ñ! ^°ä6Fª€È‚ÕÉÿá¶¥À­™°5œZ!õí—ÜÓù‡Œ|ê`Û¬kí™[0^ UÏ.ã¥94Ë N8™nc=ŠqNt0¾Ýíeìe˜+>f¶:Ux&ó&ûÇ„4ëàDÊÀä6N¦ À:NÔÆnèÛ¤@%`¤hå§Œ»›Æ}öÙì2Ì,Ъ{kÌd¥Ðö3AiŒ(€'‹Æz™ÁŽA†ùþ‘Ÿ¡{€÷c ÆLtúo"fÞ{›êYÆw…azS\þrßž ™L‘z'ðí^qÁ¾¤ïüÏ·0n0M¿Æ!H'ô¶v ìúÑÆ|̷Ẓjã)™bÖ·ss·OÝô­TsêmÜwÎßÝþšñðÞýN?3o_pú/4ˆå€mœëî~®“‚r Až¿À –n“NÒé#G€==1>Àd¯±¶×ýSFú{'cž–zõ3W`)<Í̦xÖˆy€~¦µ » y{%e5ÐÛ>'<¼` ôìÿÑn?ˆl72²ôAM_ >@¾ þTocê«Nvò!´ú*`«â(kH(¤žz@´ŠÛªc—óVaÁŽÉ ÆÛ³©?õhï`—¬›®m1œ%Ïœ<öÔð…Ì î—5“@¾†Jµ hZVFÝôìÞþJ @4Hƒ_ÔétGÚ³#(OôvöñV~/Ï <`G¬ä#I¨ä62cG MŽ]™ÿ@ÖÉ-eŒH|ÉOk;v^@1ó´´|)J ‘<@±¬à†ì”;£Ý²þÿº®žè)y’‚,ù~?•<À”sS¾Ítº@¢Ú úÒÆQ'œ‹?#ŒPË’³3ÌQ=®¾¡òûª>܆J£4ß:«Ñ!úƒòпͤ¨‰}€ÿð5ªâSù…©Înò ¨ji/~ge÷®ÈðknEòª”¹ô$”Ía6Å·ì¯Ðp…ð—d}¸ÜÜÁ©£€½N€&0ê[—eãÖ Ì*UŸ–ö6÷§ä³HíÖ‹ÃU“ªÔñó‡úNjU@3ªôDob>y[ÕŸÃ\Òy€Ûªlcªãyô@3¯Eµsg+aÙJ¾8KJè¿¢¸Â:nyä/Pð+ßiU*eÇDUšß^ðýòDX¾z•‡þí§S”a?VeÖ·ýÕ¶Ts3dº‹t›Ý`WÖ‰´B)K  ¼ ˜¦£5`VÐ y€}‚pÝŒì*¯ÈnovN(wYO»Šš.'`d Z…ª½R–ú¯!õiuù¬,…Ÿ«gÁ·¯¤(‚¦ûþÚ§ì¡ÜŽ©”«€$ñêÔE™° I…¤PD¡h‹‚näLº` [ÐZ¦_€Ï·Jê ¬¢ë1‘®ß‰ðßÓªÙ§îhæ)løíœ|±n ¤H€W<¬Ý¯ÑMïõ¤Z4tüzžX¨âöÝÕ ~ÙiÀo!s‚£€ndw•zbæÈ}€==štV¿SU§L]§T#ŠŸÛáæhzXü‡ù¶ Ýߤtë¬>úÚ)¾”sIŽFÐLXØV&,l '[D¡/°íœN7ì H9ö®a pb]P†VljAx×”plV:«ŽwÉmL}@¢Ò¼rQžÅ_yð¥Aý§}—Ú½ë8¼ä,NÕª}긆‰] üdÅ*¥Õ^@4Í@w…Š¡ßC`µ}ÿϸ‰v—Xú@ V¼K©ïè`°E/¯h`¢|Êà…§åX–þwGËzSäš‹ôfÓ«w3)W4œýÅzvîÞ É×I·ñà5½ÔŒB؉¦æÂö]I ‹Ô`¿ ðšƒ«>û<Ó¨Ì èHÝEµ n«^ú…‹=!ëZÍü”†¸Ÿ¯m)K¡f„µê{%1r{ÊZ@Å*Øuù«ŠºxVÕµöv„0K(ûsíˆË”ÃÛºßg¶P×çâ\¨/uµÀ!Fñ´6|Õss5âÿnûŒ»B &ê ·wÊ}ÊYìÕ5''î„…äkÔy±ƒÒ+㨡W˜àðÏ` UÁÑ*l¹:LŠ.*nI)“ºß ôÒ\œŽî3!¦æ¬Ö6<ó®&8x$3ZŠ’½÷¼'À(C4™@_ªÀ²=9;òŠ|®ònöaÂÞÙ/àwaZl£ØÍf'kÛ9•û|W-uU{‚¯+Ãcr˜Ô¡jÒ×êUi^×ÕLU˜zŽ£Ýƒ^eÁÚSV-fä© ƒ:æ£æ«Ãc&Ô1«Içðm¼ñ5¤ ˜ m`êêZ Ú¸¶BÂÀ¸Cïÿýu¦Ud%N#SÞ§ä Òó®]´Ô\yGNù©_aþX^ ýò‘PKYr÷¶a Úß»À` åN`e óÓÿð ñ"’пWÚœ€f´zûŸd ú9À$á÷æ¦Sÿß æ¦eÎsš©6pÿjé6ÞÓ1y¥ÛÌyÿ§m^äîH§wÃéN] 4:%G„[u 5±0 "{×f “ï î—'ô­§|Ú&-(Å>À7Y~à%,›s·2ÐÙ@GV Å…ôdQvfƒa׺ÖÈòœìõúBsî8)0\àù³~æé§!@@¿ Ä2HzXö¦ èÛÒê'ðm¦b‡£iŠ51TúÓ4Š-åwFnVq®ÈŽíö¯waìLÿ$½N@Ì€kMO°ÌìÝle úˆö‹Ok÷mf˜+°žfzS§%t_µ²`ïènR¬®xà`Ä(ÐVHÌßIÖ˜Œw›´@;)*‡ú5L²îW(T …@…P_ÅÕGçl›‡£~ädüNÆg1–¢šì÷1N?Ó=óìE^nz[){áÌë \Î?o÷|ö’Ìtû+®nh¾äìt15СnÆïÇ·‰î>´ŒB9þZ¯hšIùh¢OêY µ$¢^1àú¦éËý¿+ ue«gá›ÎVü|bæ]û>sÃRðõˆ„ÌõÑá1é©üuŸ‘Nà& ^°>FïT†hÿ¬¸¾cÃ)Ž$‘2:-š&uo; È^EKQð¾‚(@Ö2ë€O@p „:–å¨SÇÑߨß3ÎNGß=÷ÚßE…“!QÛ^ç–/ÿâÇvûÄ£Õñæò“+„ˆ0Þ “ÔÑž“cö_^7ª*LŽUW˜"@Õ@èÍ¢b{Á/å·c' £cبMð)»8À™³—νöÇ Òߌu´®ìä»öw‡*›ÀÌM{?õ/ÙÿÌØJ#s‚g·Oçž qE£ÒXÎ3‹Äd´®lºŸýŽIaÞc”ž`ˆdq¦ÍÖY{qÔñ0s@¡AãÄÀÅR³ì4|™GxÀþ1Aí©ùN¹ø`”ÌÛç¯jˆ‚Æ,3Œlkàè‰]J½7²vfˆq4®lº€!ºhüÄ\¤?Ä àV‰ j †€mÐC’¨%ã(ÄDÇNÝÅŒ·‡øÿ¬ã‚rÀy—cœ  ;eõí>Çœ°Ëˆ9Šd& ÕÖWy±N0Îé:B±…mt¸žn»o¶AóÐê~?:ä(î71¯à T4è .4CÜYÇ#b2 M°²Hâ Ø(1%}øû.Ò[?´Àœ%i´¥XÈ:Žñ‘<¼ÿÃ0#Œ:Še{¾Á €7>'@Ë `•{ý²M2à#ÁÑ‹Ç0GÙjcmS‚•±`uŸ!kd8¨öºßŒÖ*Yv\×Íñá¦SôEæ1­ im¿• €PcÈê£m4WÒwÈ9€øpøy€¤€DI?€ 5:(¶ v&†1 =\=v¯ßú¿kÖÆ0Œosì„¿s ¢5+e_ŠL€hèñÇ/¾ùìn °qÛ– ù øü8BÔå]ûŸèVŠ=uOçÝ#xd=öþ»™'Â^È)»ÑF/G•í•N €ñ߯!üCz™îsÐwjâ´º æ ‘:¬ìL£$Ž$Þÿ™ý³_°l=©mPh«b©Ÿ¿dÿ³ï¡OŒ.ÑX÷¯XÅßôcûK‰«¿¢’;püù —.]À| 6&˜ÅÚñ¨2m÷MëtÁnÿ宲-ì¸öwgFõ!v~ò½w/}ÿof—OŽ Å-w›,šùLq ú;»ýw¦'Zd äÛí“DáèÌP3—ÐÃx- o¶%ßµÛÿ:º—G ÿÍÐP~Ôð1¤Zéþ¨p¢€àÊÂÆüEÃøÄfÙœŒ*Wñê2GÜäõ«Q'`À”ãØZä·ýŒÏég¦t Á-Ÿc§“q_àcsƒ¿¿äÓ8À9/Û$úc!àÌÙü²ŸÑÕ=ÑŒîž=GÞ>uûð·´ZìÐØÝ~+un¸íËb€¬ :c´R}ßÀÛðöãŸõ3ý: aó-ñÍüפ¥À¨vy –ôdzäKI5zD‡|°¾»gÒCLÇÂfWi#35 Áø  ƒ }yO?Í0ê™ PÇQí#”]îÑrž5˜ ˆeP˜ýìY·o½´kóô OW øÃ)¦±tcc¡ƒ¹DârL°¾äÓß¾b@O}¿@ÞÁ–ÜØ-©¹þÈ8Oonl®ûuˆÉ gxb‚ Ý&0uÕN1`Ή]í½“½ØÌ]›ØÌvÉ ØŠÝ€øn5ÛÌ"˜a6ÈÂÔEÆ|’™»cÍ\lBSaòÇ¿[²k¯%›”«kKG-ò™NÜ–Õ3ü|ø¯f‹y€¦YŸÒ™(ùgð|±°ðŸJ—¶Ïm0ËH @™SÒAÞžÐÕ oQe.ˆ¢Úüጬ+ò´ÉÚú¤4–$zêZ˜•$Ð7k¨e‘Ƈ­ Ú/‹ÙÄJpÈfÞne†E'€ôËüÛëLµ™_Š£B~|sîw5ù$•©Mg·¶y;_#+p–lŒoI²šṲ̂ ¢ŠÎ÷öiæv½ëå(r²Z£Çbw¼ð oá]ÜþJêë—ΘÇÄÚÃbENyÛ©CJ#¼ÒѽÔZ1à‘_Q»bª°îA)€XKj^5³¡(»&„£rþ5E¨Ëi9Üý¯5§V…oL;Ët‹™HgÝðµªÚ×fž®…ØD-²äàö‚E ~E>k3Ž,& %}*–ÜžèŽjψÓÉh¾_gã ™ ùêWÊõ÷cöÿ‚°r²}¡è¾âæ¶Zîæ°Ž[³š×/ÊÄ0±P£¦ªGO£¾¼€©Düñ =ÉT%å÷qÐHäkÓý lkw¢§Ø)P¨[°ßÙ%ô‚ö€ñ¼¢öT›»E/‘òú¦©â%¤óHÙCøþ:0:; Q‚~(¬Hÿ»¦‘ô Jb~q,©hžÖÁï4·I›&à˜$fM4¨Üm.×;mmøW—VŸ— °ð’ËŲ­V«ûyCM«Z Î(K­Ô÷ⳡƒ¯gZuñ—ÚÚªªÈw·k¥M|èKn¨;]Õ{Ȩ¸PO2;È« ²Ãjàwé9E{[•­¸é·‹ñÿBºïUx{°ß¼¯AÚñɤ(»æ$Vn’¸£—Ìqx¥Ëqá¤/žwWŒ%'’R¹Ítº`[ÕùvÓÇÑ4þ5ÃÐ `9–ŠyÝ¿GÓ:e`£I Æ7ý?ºˆ¾x˜Å#i‹v9í4|wŽcÙtÀ€(èU*£°2e±ÐDÐŽŽ»eÙå\ïæ!Ï àÝ+C¯á0ˆ0¿LÛ5²àæ™YŒ`¶¬âic·.ð*BÓÃòt˜ñOÏFØ’½ªºø†^ðƒØDp[ôáü ¤þõJ[]]]åëZàì~ßÁR••U¬®Lýž7R¤ab@BHñ'>íûo ®–T„,e~„¿à©ºúÊŠ=§yèÌOOÌ™ôTŒˆ–ôîÝ5“>E›1¨µÙd ‹" ;’@³œ|¿”zlt[V­ïò›— ”jòÕ#}{"±¿Üä[W„»fß·É×/L0”Š3¥ZR;F@ñ|·“¹ÂÈÚ× f˼ÔSt—rÍ|‡º‰˜‚:Ëæ|rwuœÒÎîa¦… 2 Ð01  ˜ys;zOƒÑ(÷·úñwWƒ¡OVïÞ}Þ§+¨ÈyêÄÜ=žjóÁMú“ÝòTOï¦V9Òâ”HJ®×i9¸5a%Èóç|j$îþ¡@±ºç˜ÕŠÆ!yºŽ7wbVî (”%÷Eí[ÓŒÅ6@˜«ÀΦž$‰JsÜ4‡åý)Ÿº Wß’Ú@ެùîÕÕ“£¯D˜>]³«e‰þíA7Ƕå ï@0úâY9{i@è¢^9ƒx¦×2¢^™½.´G 8*È# ?á•çDêÙF{å°ÕóÓï’ äÞ|Iù’Œ;ÀR®JŒEFêÁE€’%Å).ƒÚq¶J: ïªüD9tü,3!ƒYg¹à>6§tÐ3vš®Q ™œffäžì¸ý›ò°óÎV¹o–Ó^y¬¯Žž1Fv[cÂk3ê‚ehzñZ‚5–œŽ9$·%‚«K]xÊ¿á589q!…iì‚óù‘ »ù®§’Yáß'õß~ú c‡Ëm}ó,ŸÃB!з¥×ñyx¥î¨ €Áõ̦ˆôÆ€¾8ß7¸ &¢<‘ hÝ0äŸúÓL÷ÏÛ tQQ™ƒ1 Ý` Q‡¶$œÞ¥ƒ±#½†˜ 8A7[d p‘˜ W· ̼F}Îñ@Ÿúù2­BÀmß þJÞ®FÆ]¢4oÑ}dz½7÷´¿Û¼tÅâ°ÜrÔÏ `x÷–vè €W3­›øËlNìÊHô+ ö—‹4@ÀaFgKÆ|œhÉ\lIK’·¹‘6xØÏø;&œL÷ÙH°Äƒ·z&Jͨvf–¹rå ƒ÷?>þËÚ~Ûi¥ ÄF^wÛarh4”º 0…´GÞ¼ÐÍ Ntø™i})¿Ûç„·ŸCoŽ7€t p²½!Ô¹V_’a>øáA¡ •o;Q–2LÖ¶ä ³«M˜ñùÉÏô3!QñÈúü9~{+~{µpè×èCÌÙ?)Ô”h @2³ÏNŽgQ¨îûO ~;^:óö¿B0!™ÍÙ«32fôÍîæMÓ>²ðmæÃ+‡eIçž:æü^ÉÂúÖ÷õ)ØN_êuÌzšF§§¦,ÅÑï𨶬ŽÂÛ¥­p)9ù¾Ýí.°ÃÖ‡>@ü:õvü; ½N¦†µó); #Ø¡ˆ|ëáŒeÊ2­+úµ³Ôü,z­ÀYpî{ åÚ„dvyËçð—¼y²y©(Zø!ü99••©ó€f=2}Ä’3{<÷ÉjË”Ûî:_”(@œ˜—­ØÀî÷Žf4xqÿ”¥_0-|O¥4kö§è~€Û·Ûbb®RósâOÑ}b7a3[†ö‚Ñè{n÷Kâm¢Ž%§úãø|ÅÅÂ:®9{A·¥ß@:8™và¥5Tûù£pÚrPCÛåË„ü‹Û_ü×øE^_®#в 39PAzwg¶¬ rñ»Ñð­xÕežËÿç“DA(ØÜR÷|ñú§NUVV¾õÔ‰¢ä€„€׃*Ö•ói"Œ‰¬"ëyt•º|Ù3/ý5 ÀUiœ³€Ä xhƒÖö¬Ë¦Ê‚Òt‰ù?ÇœæKN 0…•]OJ` ¡`„ÿ"ì p¬«’¥ªØ6¼ýïP"PÒ¯[?BÑž¬oB "b„HÎÿ}ÿá ’0ÐêxìÉs–´q%˜ Œ‹o ¾åM³ºŸ¾UIx@²¹Áf£:½%•c-:ØàñeE¨tXæ2bý ¦5 r’ =Á&+9Ä€Ù dp˜,ÀøeÓ2¢´Û¥_!±ÖcãªêÈ~¿C` Û> ¦Y#˜Ì¥š €Àçÿjâó_Uë?Ó~ðDE9 •“íg 0ȯaf`ÛÂ×^yŠ`À±É†ïœì5²9oHÊ?Ž`&Áª¹ Y5%M8PB€(Þ¨ód>€¹° 'ðpÑè4“ä€ÈÚ|UMowŠb«z(8û% Pò/®^ÀÀ1×€ÖRr$`ãà´Ãçÿ£û_‚“¿=Qèq^£V¶ÓŠðHtnÂOb È©À< O÷.ËÛg@ÉÁVXß*:d„žEV+9XǵŒY„sÚp è„‰s‚³8@*L;J80šá0ÇEÄ$@XŠH\÷)(þeá65 @ɉàsªf{²B(¥ž‘ˆ|þGÚüHV×óiQ˜ ¬}”ã pœ§n©¨ì7Ÿ¾*úºx@YÄ(„*ÎeÍyù 5w8K±¶Ìa{Yá¶aº§‡¦oe™ÉH`®,zï—¼ñX8…´ÑK² ´ð(”MfWG"ü”óŒàÀ)ø‹ Ô? “C¿èLÉ (’'\;8þ§L ã;uœü*ì^LØh8õ$s‚ÍK¯œxêTÄó× 6›0©§Ž£Î^}õ«}ÿ¾­æ­’ç( 8æ2j!ÎiÃYŽaΆ€9m›»cÈJ€‡À ÂtHp²“ @¶‡«ø_¤où*þU ÿØ ‘P@€8ž‹¤’ €Dˆÿ½ Î %¿dXøn ü|aRP‰î>ûû¼—ŸÒ4š ×-ŽºzhFã¿'!€ ®ªÍ0 áÀa™`/€[äh›vŒ˜ÈÂé‰ÄgE80ºHg”4¬„ ÀËž­-¡ÛJ €Íîñ(%%XƒB`F™ì²®¥à€öøñ¿lMÀŸü’»ûü¾šàQ® ÁбW¥ú€DVËô×8¸J”cýjàL-ÞÿV+¨á7@¬ Yx}g‹ãðkf@ÚÀ> à1`0Öè°²Ñ<ª­ç(tüOé6a©‚URœ„ ´e‰Óí)Ì ÀðCÐ؉ÿ[T¯7àw›·í?àTr@B(òÈz5Gäû„èô&¾îU±.d½º_"àY"SϲìÈHæ1 À^þÝr½hž 6°/ÈxPHÓY‡-è“/xD±õOÞýÇËUÙÏZ¥=9@U€UHź^HÀ0² ´PÄ¿y€/:wíÿe ˜Þ€ŸÎÀ^ðTÞM’"Ä'ïÕœܯNðŒá€X³æ¼Z´î†Ê‰PÉRó…\eâBÀü.Î,ût¥dZxyæ¶ æDÉÀfæKoácè÷g ì/ýý/e©€§§žì}»½ÀŽÁu÷G  ìþ[ë“[=]=¦¿ŒcôÝs—޽þý‰–ÿ+yþ¤~ÉÄäk’°€¶ðWE ¡N˜.Ppéuˆ žŠéh*žž®~5˜ñ4G(Ö|UˆÞÆ&Ë@…mžã\ØØî*Õ)x~½Û¿¾¹½]:Á\"ù?%àÇCÆN~•$>Pn„E0Í´nvmo¬ûg‰¼uŒä,̼Þè›2ø«XWä_T 0Ät”b ŸöÏæƒÌîDÖçQÅ`ȨÀè¬ïôyZâ–&=}Ë´[ì´½ÂXbÎËÉ)f¯…Mó@üß}cÀgI“ E'TH,`d†ÄOecÁ«Ø3:ë? ë{"-Mš`¼6c-¦7Z$x-Þ,dÌ„¬kÌg×s,~] qX$²lpKâ÷¹­ºÄa¦ü²àùߍúÚÍŠ9ŸÀPYg—…87ýÎÚU¤Ä§eÅäRÆÁ‹޲6çåHµŠPH×àìì ji€*ޝ„ÌŠD§œ²¤É˜ æìûŒ_PÄï×u©^(f^H—­'RIXÀ0#é:uuh¥|â˜ÀÌkZ–Ã5^~x°„>©¿\àìRt Ä€¿0éaY·FaIT Á5g³ËªQúýÇýÿÜŽn}µýé`âc_t+Z­ ÌØÊçgÆY±+ð¯»1Ls$¯FXÖÚùO2Ptïs7™!H‰~„dX  Xó´¹ãù°Fp÷Šv³hÆ ´êнjò)J°i…’EëKU`(pn+ë¾? Ìóÿ5&Ðè@FM¤í`TîV7GÊ {llÀ­•'¹Áªž‘žIïX¯š½Fi~¹Àw†vÌÎ{œÐ^·ÉÃ¥—DAÿ“íÿ:oý‘j¹^¿†jlåZ¹D&EKò±S7Q(û9«° ШSŸöýçˆtõ¼§Õ^}oD¹ú•³S§Äªf3~ÅÌ]¾¡´üs´Þ\eO]÷ñä›ýý†TlhHÓ\ßpø(àä'W1Ó_P´àO3¥(FÜ`åð F;T‡Ü©VÝù³òtŒÂŽêrD:¢ À{vùÏü¹ê5Ãø¦Šs¡›e"Uå˜s×}PCöyÈäPl¡a1IœLñÛiùŠQ_/P^¾ìVG›èQ³ŸVͼݑÝÞ,ÝpC=éc¦8ĘÀt©Æéø+­Ð„@* <[Á:´jöL@îŽ ¤[À¬Ï+ë é¯N}ôÔ€Þ¬R1³­ wkøÝ£ƒÜ SæÊÕqêÌÎ˱ÎiÀ›»î~ž/:aµŠU5B†ÅzcæôÉW|œòº{QüƒW¿ÙãRc“šu¿¼Æº÷¿úêJÓ˜ÀF;æ^¦Ø÷U5{ï€[dP3Àí’ªÙ­nuG¯ës¼I裧ÄÚ¸d\éë8cü>…˜m;M2 Aô9¦Ÿ!{¯ü±N:yŸÿÖç+¸ª!Ãbš¹ØÈʺEþÉŠqþ2kN~ݲ(þ>W5è ‹ÿ…™ãRdÒºÙ`4Öisª•¹†aU8 7¤'8¶§ß/O1Ûö»/+¢`”[#¹o§r*¥²@»:Çep*±š½SñN̦gÕêLv+£bÆP6ùZU/È”ª¡ØÊµfáåœWwðšR‚€¾s[Z¬èhu”ÌŠÈjö0­¡[}¸×Õñ W˜;[=* *jö­¾ÄùÓQ9æÍ5q¼@Š @°øeôêÒ5‚þݦ?Ù^ÐÿUCf”F§6ÎU4Ê´J°ÜÊþµD`£_¶kç°¬ëmÐò`× C3ÀüNÇñÜëÜ縥ÇH"€¹þº ¿1"ÎÓò¸©MÆòÐŒïôÍëB‘¨¸Í Ⱥ÷îçW—08¬V–%S72* >­½Ó,j°@+b‘çœÖ•4ïg¼ff[0’œ•h™v.Ó Eè¿1Óú}ÒJÓêÿ‡7¤+®b ÒDž¾´ôÁó¢ žõb!O R*À:ê=ú½›ŒÝ£ãkC]Å6ÑÊO—ø½þ,A")Ú9“†ŠŠBÿÞuÓtïK8 ¡% _‘y ¶¿0èû+þ¹<+Z;Fªæ„L‹€<=Ì<Ùõ´F–ÝÌÓO“£À-Æÿ$hêö­o“É…@0™b{™JS¡m @^÷ ±=Ÿ˜ ] 6:&€qØLéH@½îŒ ¼ëfœP¬Ë¾õìçm±!(¦X~‰b—ë·äí~ß{D+8ñššòùñÛ«ÓÕˆM„éYfpÐï›Ú•†Žö3þÁ?c1kaþ†e­‘ÚûR"`*¶p÷ŸDµxó± àâÚHü7Ãz”§¥]&}4]À0>¼”€$2iß®s¸Ã~ŸÌoIW¡} #@7ãtúv×´càõíKS¢2Ú-†M #`J@J`㨵qáÞ³è¯,î‚? \®àQmÒèbö‚»] “ÿ¿U·h·» ^Cß@=Ôåö´¥èzÚÖì¼~­¡~Ëô^?ÿ;.ü3»ð¥Y_ŠTt–I@ˆÎ¸íö­o¡È¸¡ö(Ö&d\ @yZM±û¿ÏAÛÝö‚aZs‰ß^­¿ªg´ÚÒ?Ÿ¶/Ÿ ÀO¥¯…½Ã„¿,¸Ò?Ô”®ï˜ÿ^AÁ{ZÌqÃ%GØy~›K(ò¿—\^ô°âyþUy¯Ÿz‡¥È¼I´ °wXÖSbc/SÿˆšEÀ£w\=&4—ýÿ¬—rü9Ó¾U÷¨'•É倞ËËõÿYQ$t½ ˆKñþ'!4}™Ž¹bædÆ•Ø×3^¾lKë—ÜÕX]H÷õ Œ°Ô§|{ %pÌçÜÅ€\Ò~š]âþ'ÀåRäBKê€!œ¿ !Ž#GýY€ý¯²WᇳªcÌ _uœãªd €iŠÍÃVòPÔ‰YÀ©€8#)cõ4ûŸù9tÏ]Ò,ý>FD<3®93`Ž£Ãi€]âj¦T¤6z±¬…x¾bV\=H„u®VJAÀ§ÈÔ€ qëWV €¿zÇZÁrlݼ@&†9` À—0¢ƒÅ?ÿ f}«[ìò1¾3[(Õ³1M©ç\kø €zR d Àîý?ÌÎ÷јô ØrÐ\}ǶÛ¿/ã À¦¹´®é]LL j<œM‰ãJ8ÖS³„]€GÍç%Òÿœu‘ã?G¬α ÊCq,õjÉ;,×6’ `Þ –ðžcô¬yAî©N´$HµøK† 9ÊjE 8¤f^ `Ïù_ˆO |è÷ôqU˜„9zƒ@¸py˜îÿË,GÀP—6Á¢¸ `®Ï”@ò0ý}Ía ÔCV:Р6ìv‡ŸôïDDeðJ—858g­¿PU׆A¡êT~[pëÈãú+÷÷™‰–Çó³Z•îUÑ[!QË£:|b_G¡ j@¯~J2> îÿ98éKð²­ã°;`î+qÐÃáš-z¸oë}GF±S@ÕpUZ¿ä.PhJ@ `ã<“0 hœ¨}¶ÝÀD†Ö:ÈfoP¸ãârð©…ÀìÛ¿âØÊ»06܆ÉÂw\.üû6˜v´À„À—9Düü•N„ZL ä¡G' (æß¡ÃE.Îu¾­¾l}T×GÕ÷?!ô-ðŒñÆ·Í;0 “CÃ˘„K2‰˜Áj´-½( 6“$’“€¨ÚQ¿D¨]˜ôplÛ ÈÕ­!MšèáþûÛ$#ȲUyø×Ê5ÜyÛZA… XRè8Z0!P[ÉÞis°=µâ¸4svKè„) $ àß+Yöå:f Ö‹U™ þ?ÞTwÀxÐs‡Îúûñ‰õþA€¹-¼÷ߟ /g 0ƒàý™^åà[1pßœ*€ä/ÐBaåIдqø(·ç;àåß‘û¨9X¶¿xí©þË$ª†¿Zï`ÅΡ@UÝÑzÆce‘ –²Qìµ3ȼ<@ƒ+©%xòrŽõÚŠ‡«ûg+ˆo¢àyë±*)É1Èÿ  ÃA³JhØ`xÛ÷Ì‘ÙÁ„8n=(ÉGÀ P˜æà.`†`J`£=+dDhÃlø6ÈDd¹ò\@*Àr¶o<\¸†¸ÿð¢u ÿue%&øoƒo 5zXö9ÀJg0kóF5G˜bçʱ9Lóªè­ÔyR¢îT'rÚV#A+zJªÈä>ÿûÂ$FÐ#ôpdF †Ì‘³À$€£9ÛÊdIf°3àçædåô€r€©@ >’@¢šçƒÎó> `nûû,•òzÚè°ÐÆIµ@.¾ÿ¾ƒÅ_Ù휫²B Æ¢·ÇnOúCÏÿÌþ¾Aà*þ™þÚnÿëì7y2æ¨&(á<ÿü (À?üæ3ûhXWÏ#TÏ:¾2; ùÿpPpËxøõƒÞdbp–È„÷íöaLj0¿ šÆÆòÿ[ß²Û~ßà=ªèªü±13 ÷¹ ^iÿ©9ˆ‡—àc€Õqïã‘0ÀÞÞ9œë¬\ûÇÕc@°‘MN²«/laj`wûün¦ P±àŽ(„ßá¹5íóù}Ú"çønO1n·¯×HãVÙj%pûà6¯ñ#>À¤Ö`áZ2LõäÙãf˜sÇ\ΚÕúèm© scÊþŸë^\‡…Ä®«ˆNÀ™^2Ö‹íÆ¸‡m5¢‚°ÌŸòùý¾î™ÃýÒMxˆ³ÆºN,Ûøòƒª…Ñ™nr›ü= Ö§]°Q³BÉ€þÕ|v]e6¡„n»?ç °%¿¥ØÊhýcÙ³pÂcv]¨N ·~’×p3­ › ~&à‚¬ 3À¯àטîÑC|æÕLÇéÒÒÓŒTagÅÛœ;nÀífJ± zGÅ @øKÉÆÛÁçÿèÅý3µÈº²ž'ñ×LŽ(û¯“>ÌF$(!>€P³ ‘kÌ ˜ l·õAƾ\¨™&4à ®csN¤­4þYàó¯có·2SF ¯ïÓ›¥Ncú5Q 3±P ·Û½`×ÉJ“Ú­°‡> Èöไз&±û[ƒlU>ÿK„0Ë"—èÖ[>Ùñ·»FQwˆ\8vÑ-IAov0ÊåÀ  »%½ÃRgïá `,f¶¥æíÔ›·j/ÚÕÛ\:žràFoŒ ¾©¢·ÊÀ˜œu~üÆo|ýƯýn ¢½*Wdj @ŠÿŠõ omÑŽŒÀœÀAt„9»¤¯°ÝÊØiL0@8ð/eôufúð¾t“¯£KR¶3¢6`ñ-à(7w£Ãgä$ë—”pº:bt…f˜Yt|F 9š5q-9ÀÇzϽ ª‚_GüU8ÿDâü˜ÛW¬V`PA61"NÀñ ŠÄφ¿à2ëðà¿«È1"¥Š@lõa=óh÷„¬ò×êKÕk+[½ªÊ…0Ïó©Ö í2AçÀ«¯…ï½ñ\oü𱳕½ÍR5BÇÔó"aÇ0ð5Ë¢N@¡0©Š\w¸12À3‡Y€[QÖð´(r[§ (ú«Rç]N8¢Þ&F=?:«¬4ICÉfZÈ19¨ã<–ÐZÑËUü€ ç?¦­J«¨ÿÉ:òËB€½Ž}€¶ªûÜЬé€ûu±RuY+ݪ˜âÄ¡Q€1²å¼¢Êrªç—èGªBls‰OÑx¨‘Ôœè½íTÏzóÚìGâþâë7œnl+TPJÍ21 Ùÿ˜ nI•jböúCÑ&±­öwy%û/0ŸÁß®ÕüRU_ß>¼Ã i¶QÕ|O}ëö+úmºdï÷¿Í¶üe4Ú_B±¯TAÂŽa“BÉÀ¼ƒ«‹>‰jk­ ~ðòø§§8êÓ :ËüZÚÿO|=áÆ Pɪ›>ãbÚóгä¡" „še®`p[&N¢†>!#cD8Z\%ƒý‡ ØI9µ®daDÇ^£.®Ÿ3-QV¯,@o3¯ó0ÈöÐuK(òÂ"‡é\SR–ô'8꟪0I­dlŽ‹«¿ "tÏ&Ïr8‰ n±lÖÉï”À¾s• ­Ô&dj fÿÀ'½CP€¢”­~s™ëð!ª’û¥Ì¡•ÜÍwiê€äÃ{¾ oó÷=š˜My;´ún(/ƒº<èÍ«HÀ¡Zá¢/czï Rà-® “ lE%çÈj °”µ6 $‘We€ä1¼ä'¸tœGA¼FÚ—L£¢ù>vhëÕ"žÝÞÜ®T“eTárË`{н†Rí “Yw¹ðAlBükÌ¯ßøZ$Ì…«¿š¡1¼ÿï¨06š»5¿¼/µ0ë0²b£Õ@MȼÃÎLlˆ#b ÕãÛˆÇdÌm®Ï:K , *4« 9Xñp¶FAí©!õ¿•'KH/@˜uÔ±l \ÇQ¯Rœ Öᑚ€ Òà”ñO4¶:™¢ÂN3¨ˆ5à¥ÞÓÆÙg+¼^p˜½£½LÇÀ@ÓjÜqá-y¹¾ߦq‚ñÝÎ^E©÷O3Ή0Áe6‡ï\‚òŠšFPy?6ÙG~æÜE˜ ¨VdX †ÿ­‹óZ0A)u7˜‰‘Y/“—'˜î±Ãüú[&ü>nGVý7³~üJÄûÄÛì /Ø^²`mÃæ5%#,õT„€k¼ÿ×–H/ÀýzºíWÅöTq¶â,4ûÚÜÛwI÷?fF6ðA¯Û]Xì:ƒ· €‡uìp›qä®Vp´xª»{jèFŠÿyÙ*_éb—?}/e·ûzDÒR×Êïïíîý ÖrxtóËö<¡æoþ{ÛÝ]0\¬è,ÅÊÐÆÿဇÀüYCÖ±ùPõ0: ÿ›ß²kÇa`w»g§ª»3ì¶›ÚHº¦k®Ûݾ^‹aìjªÆ_¦À¾¸{ÁÎàÝÓ;DhYr€É€sù«,vàü¯G ؈ sv¯ÜÅßPlÎÿûGᣑ¢¼üV¦a8A:°çÄÚÝ‹‡ýa'‚‚€€l —YöòÖ\Ïòá*„Ü7ÐMõŠ@Ñã wô¡Ð‰DŒôG…,QB9 TR¶ ` ºH ‡ë.S9ªê£™ØuþC ऩzb „îãdP¨Y¦…xÖ/_¦—{Žâ§0S/ÁìfŽãLrÌo€Ç´§Ô»V=J”µä`ÒÃUòꟇó¿Ÿâµ$PHú~¹úÎq>bÅ(R¹ákËÛ+b½ÅÝ Ã¿Øw°£\’‚ÂJåíÔbiÈ~PB’Ž‘ž Ð ÖyÕ¢cïPbØ“bŸÂîy;ê ì ®'àÉžú¹0J–¡ÈyëyžÃèy]Å7—1€]ç¿Pr*ŒöàåÀŒ/Ÿ5·%>V×CˆÚ`ˆ3홊¥²2,°gÿ ¶aX¥U ´kÙÖÑË[´¢b³¯ðX’МãLÝKPcb@€=k^›òþ„_ɵE·`X=·Õûú^p {¬ø«¿‡)Ûæ`OQ ècß!CtØSü“õ„4 `¶x›`Áß×/Cö2Ê"|„@¥„bçvxžŒó ùà(_CÄNßYÅÀø}WDgÉŒEÅ:™Q1€Ýþ¿Ljä* -ŒÐ}ïsªªÝþNÀcHlÙÂÃ}f.ܽ@±dØÄ*€${ÿ?{ïÓV–¥‹Îd¦·¸aU\8wrDaÀ‚Ôðlh‡®I )Têv…®•ëW·=…î£FIî<½ƒæÒ/=E«Dnm”«Ža\éWnW7™ ÑÓq¡ 5B•HØÿB"%\7#^çÍy{íóÓÆÄÇö1?j¼“J%Žs {ïõ­o­½ö·ÊH¿Åá—r€9h`ð#ˆµŠì_-Ç€¤Ë´"hpâûú_Û €b€nñј\8íJ‡¾>æë½Jôžs’¸ïí—$[²@`#k ä Ðr?J °h¾œÒë_^ð¿Ñ«µ@=õ\ ë<]zŒrûý?.L¾ª"mÛÅ!ƒIÁ’Aèà³ìF 'H°¬éuö}@b&ƒFr€Y@|€Æ·}iYMÿ1b–y»[¦qPWÒÓ4(ÿ– @Ó·4é-»ßàb6ÚI\¶²ˆ¬‡„î‡1"öòcADð¸s€)â¡•Ä'›´ÉGÒ%ˆÎD¡°¼#ßþ-¬í\,zÚ&ª¤UO(æ*#ô× ² péú“Ó5Ç&úß),unP'¶-ç®ïÊ¿x]pÂHÀ"¶g6-ót@̦Ä5M¨¯í£°äÄ|­€æÙÙƒN†Ó¼£ßZçL~dÌøwä]®;v7*kž³Á{;‰^å÷, ªz o¨-ÀH?;_B²_sÝQhŽzLäÙQk+±Qþ9K›zÄ+œl¡粓ö[P?&xp riü?g¦ýÄÎÊç•òÛ‰×kqŸ ¾YûÞÀ©@dsCãóGˆÏcï¬H?ÔþIm#iÖÁYX)ì†ø…z^î§ì2¦äÌÞ,]lâ4I¼²ÈAn/ŠÏ’ oO9Ög—‰û?¸åôc<,y„BhC`£»7ß>Á-[I3Ñû«ešl蛂®ë DßúT z ÖIè1}îÿ¤îC\˜£¢m+üÁ‡¢~e¦¼}íõÍ­N ¨2°wÑ7­ñФR´“T³c¿Oñÿhüéf3ròUq¨ýƒÒU=é7£×ëÏžÔ`6Ü+=DG—ˆÃª<ßïÿaµþˆ?ýKŒKg\üÍæŒ‹Q¿Ñ4¾öŒS$“€…ÙÙ…øq¨|M X=;;‘®$Qq&MÚv Q aÊë¥(s²ÿç&t” ½îúœó!j/D÷ô]èí.ªòêÛ¯€€üç ý§Vc›¼p¨•³ÂA@+ˆŠ¥Œî‡Qh% ™À†²{)ϱ[nìµ:ùxÈ "€ ‹ˆ!ð"ZW \ T¡£¼v†Ê¥×A »6÷±ù!ÌO>£Eõè‰z(À×$;ÿ•8ÀQåâ#xUþ6Åþƒüj¹þ#PÔ5Ù®gûaëDfÅT™O.à^DªÑcìTdì˜úÆžÙÆ³öaŠASÎÞ—=WRa&Ñh›PcTÏÒ΋ó#”+Éþoãù;ÛÞÈÄ<ˆûˆ`5I6¢··y]WZ! @Ú°O'¢ñDïÇùì»6CKÒ9€‚t@91 íÐÓ{¨Ùã¶Ü‰Þ3-`ÿ+$šAÈ@¯¤ŽA„jp-P5cÇS@y²'@ØgfÊû?ÿùŸþŒr]å«Ö-¬…{¢€#ÊÄuT×ùK=”y(ÉþÃâjU'QÔajÞÞÅ ý#G©‡L'2 ­ü;âcŽßX3Xç ¤&ú©m˜šT¡ÿ,)À0LžÉ&-/¨€Q­}‰úL l‘Q¬Qà~1¹ÛSðæL[5´ÇÎÌ‘¸†*`È“]°B½O‚Ãå9€6ë?ۜꢎ˜"š›œÀHà1>@YÃc¾žh v…)Èánx‹œã¦6ô 5úï@äüÜë¢W>Že„û¿ÒëCóô‘äDÕúS#Ôß&á‚°Z»]Tœ~뢨¼´E2û”Ì_3˜˜“ss€Uó†ôUq}GúÏ: ³cò¼Ï²ƒ‡ ñ°¤áÚ¨´ÅJÄÛñš¡ŒWx]gß•Tî?ø._ €hÛ‚ó¨¢ç›à @®Jg:Þ£E…¥ÃS Sl«UN'¹LÇç¸îh¬Q€ºn"V#OÁRüep ‘ýÚÞºÒû}AðÏQø…¢rî.´\âÞÑëËü¶ÚÃÿÖ'd)µÏs¥h”D–ËÒ@éJR³GÞ—œúÏq ºä~íÇŒµ' ËiÏæg%ù³kÞ앎ç ŒÈS@)Ó(‡Ââ‚=z‡kjÅ¡Av!c˜ÇUóµBâ²§’ø—A,çÿSPö¿·‡ Á—ˆøêˆè;ò£¦T'ˬ7RÇ+x™ˆ=µ:Iþ$'ä¸x€øMAüŠ~‘§`4ûE‡rÀ9îrK‰}þÝu9ÿä*|Äp¹áHÀŒWS]R:^ç[6ÿ‰t0†%¾äö Ï-†D0¹b¾)ÃIŒjf'ÿ.…VÃÚâAUaYç{$’uJhK ³¼XšOYÛzƒL0I]“USí1q¼Ä¸ ¶0@.žØ€—Ï^åÿE›÷JtCìL/!ØèÕ¸Etýï£D,ý8k—EVw¼ÇkÑQÿ”Ïú³û1÷ëDt&D„Ö›‰+Ê)È~Ñù,@ùÍêÏEøçŸ¹n×4׳ä/çY|'xµáHJ%šµ/¢Õœ§K¤æ˜ ¸h?   _îô‘Sç+žH­¬Ü€°Ï‚I7ý¼R6UV³wÛ]4ÙjÅE°[8g(¬–¹ïB´·…æµÁ±:ä%£ÄTiJþ[¬ÈÏ…ÒŸ(fžšŽ«ì58qßÏWNÖCDlµƒ°÷ä§4¿ÕÂÒeoW¹ìÿ,tû¾·ò;{(,|\Æß ®‚Va‡Îªå&#LP¹Z;èSãËëRúhÛ-i¾ãDhÙÝN)qψ]ÜÇ/$|Cƒj 3»R6Û“ÃÃy Í$LÁq‡ ÜEQ7}7I­}AlX|j„òTO èÜ{†6ɶÐ,cšò;7ˆ'eB‹@Rß¼ƒ Ô|8ÕÆ¶\>è ÍÒñ:ú* ©z'&1øZ$_€Ï¢{åßVÏþ…”,ŸÎMi¾„¦ë[ÍÔÏþß´‡úø¯‰ëÝ@>$ÙOãJÀr¡*øÇs}7j}0Ò#¼Þý¾e'! ý‹úÿFÃÚbUꀌA€Ž‘>~öVÅöèÀ‹Ì´Ôô¡:7xGëÄ|êŽ×eð 6Úò݃bnÁCNOÛs*§-lºé¼õ9¾ÐÄÉ9|°‹o¿AÓÐMA$×6±VhgüÈL1£h Ð ¯Y/÷!¸°Iê‰ûoÂ]¨ <ä(`BX•Tñû…~ô•N{©á„Á¦QÛÔ¿}B ø©ç*‚ñ1á‰chÿë6ƒ11nÛ:à¯h/ŒN#3ɵíOðtÙ)×øÚâaÈևúÙ}úí3—ëâ߀ðoÇú*‚"Šlœ8{õ]»]÷_®œ 8Xg4Ô[/öÇęUôëÃnÓ­Žõ®„;³ºpxø˜•ÖÆbS±2òSh|ìÇç±RîÔMEAó¦ýf—ý³œõí×{,Ù„žüñ.WøÇNšfɪWå}ú2Òï A6¸ ' uø€«N¿*ñ1x½âù›lË“èe…Vþƒ…óí»œáb0<v`5wGÉÁ¸| ‚Í ‰‹hrï: –Nê\.ݤƸ,»§#¨!ÃräëP Gô6? D£ß‹½ýv”xò Mßl~\Fó$ÈæÄˆrn5F„ªøK·¢Ñº×dÃŽÝj_&b½D½³…¤mpZÏÉuø ¼wðŸŸÈm2n=ôW[´±otc/=2ÏÕ–¿t‚°bâ/›Ëhò×ë/à¸ÌÍsì®@è5ñ²a-Þ”¨*:¶}ËUÊÎið‰å€sC†ÁEÖ`;9º× ÅLN€’Lf\9ZmZ¢Û¾C4çü1õ§[ ¶_9Ùijú,³JâÛV¥×ñÓ¹,©‡.‚¿:‚³€×ÆÃ¤±}|Û°µu.» àã¸Íh`ÌÕ”:gb9à €*;xÌ`n€f[¶Z â!ú"ù@ ôƒšî„Ñ' x¿{@ˆ¢Ä…U"ÚÍÕFÑ›,Xù£~3Pzr»ÚšêÉO4y‡¶•rI9n/ºñœlËor€Ò>ý¯KpŸå[s¶¬Œ%?$ôN? ~ÀÄ’~úÓ‡óÐz±÷ñ³ãŸýÎ=e,ÂU¶ªýŒ_ C92ÌK$ª€@ Ž)Š5J´•Ô"pøø›Àš¦Xå^Õ@â‹-‹ušðu?$µ!¢“{Š¢„èKÜU‡ÖG»OÎb?Fö¿YF¾aa,þú“‚< ÕcÝ4²Œd«Zs€n½~P4Qå`êÙÄ—ñ¦ƒ…y¾‹ïUÀ]€òûhÊk˜Ï(VI€ø~˜žØ ôª˜[ÓD»CÈ€¸šö)€¼sVÚ]!B€)žØa¬¢P? @›ÑOHñ:À&Ñc€´ Y†(À ЦÅ|ê4}ζ âÈR-È6ëa/cmwäŠÕåúÓëÐ&è–ÍoE—€ÊõÄ9‡8H³‘"jõàfb³w•ûÁ1â ¹À;f­)]sÛ̱ÓÚUZñž@¶qm|þ¸€ƒ¦yW(r‰\ oI“7ŸèùÞA4ý!  ‘ íq«D¬5¶ÉçËnžœ vƒˆÆÊ?wšHÚ*¤ä:tŽœo’þ[›NúVmgÎ Þ§/縯oÑäkq@W…÷¶NëO‰9–Z¶>`É›}×§bhÎk¾:6@î üš$âib.1žé$à¸æ×\˜× Ôx €€I[9@-r$-jC y™Ä ˆ\<–„œÿ§¸T tæLŒØ[%¢õ€ õ›u'e±/£/¿ùœó¢ç·Ù —œ°²Ð%ÏF$`µ“x˜ã§ÔéDrß)ÎÄ«©è¥gôúò&Ì@g±Å¥Àú¾Óh†{ëÞé;&@EÇ \ Д†3ŸÔ“Äfã¶¾U[»V(ƒ(b6måµáJL Y@ôÉÇ4yŽÆ¥J€©@”xÙÜ §›ÐðÎOßì$¢ÑŽV¾fðmD¢eø–Ðý§'c­kã­[œ’¶ˆ)ˆÕçxÿÏ:‚?@ ·p°õ›oçz¾Yz"€ïè>’‡MÖøOq™;­ï+P‚Áz –«-ç!€ŽE J­'ÒÅ'ó$`Ñf°¤—œ×ÒZÑ„UÍ !0/¸=ªàœšоÚ:ÙåN¾ßIû?¾J€*@ ‚ƒŽ=n5—È›ÿ}B‹Ïö‰Š– Ç'*~}BÔ•:44=Èî#ÿø#ÁÿÏ=w°$Nn–^½úýÜ>Ÿìéõ¿âZPLá÷ûÑ'M±½3„þ:77À®X¡›`G„€MBÈÞ«8²jÙ{?QsH+× ·+&‚û)ó:šævmV«âaÒ4#^~G’l¯˜ˆ§ iò_•ø²aÙçOWoÜ7“YMAîó0.ÊeVFnIšèEQ(ûá&$œfôf¯ë]êibµ«1ô7fa<ó¼óS¡‹ ¡+Ðþ÷G".û{osUN'é'4ß¡½}8B¹Ý‚Ùÿ]Î:D7lFhÛË\^/ãÉIÊèº>GÙs šŠr¹þ–«í%ë¿Öë¿âî"ŒA/£×=3P›]+€5³4ýâöÔd8a¨ÊÌ:e8 Àý‘ -zDw/Å͆¦9ηþ»}?f²0ß*ì{4ÍcÂ×õªÝ].|Û‘ˆ6 Ø‘¦f;’% ½®<ÇD*e¸DX–¥ñ¤—Í,kà¨FqÜç™ÃÕÎÄÒ·îýýH¸zÒ ýÏR§À™ÇjÉñhý­Â¾õ9—˜{F€yNRÿ•Ñ¥ŠF¹ïsNPÏ(à† -¶a~²®žw}$¾lf$ÔÉ<“93€mHM;·Æ$€(ÀÇ4ù× ZÜèý?£±½:"V“ü˜¬EÉAÓw¬ÐŠìHô3ô³ïí þŒ¹&O%}+ …NšÌƒ”¾ü°€_£ßÞSZºëóÇò-Òépº €²9ËÇüš4“÷Ž‚𹮌»ÜçM‹ÕÔ5-\wµÐ³Î]HÀïûþ t/Ær€x ñl—B3·-¯Ð³Mk•r€ñÂ.½¾lÎf rÍðZðîº÷)êV =I7TÚÎÿ­µ|oà°LÞGsO^‹™™Â(GOÈ=®1æ ¢ _õªA•2ó%kôÇ”¤¿ëÍ’ŽÔéõ{×õ}žqORšÞÍï~õ÷•isâLòÚs¨öÏÍx¥ —$~@À,ªü‚Šð„" N³;Ÿ`ŠÕz¡}6ô™¼ïÝhÃÚ`9Àa1óè>5BI€ žÏ¿>ÝŸóUþÿ¥Ì,°ï噼—Íä~ ¶ïlL§}+çâ øŸÄ$À©%êÝ ‚0àµü˜Ü={Ö$gCµ:ºÓuQ b"´BÝÒIɯ—Ÿ/5²4ifÎ ßS[¶ÉòÝøßJ«~C8-«‹oØüâ‰â€ç)ZÌdާbk 5Ÿw¨iá+½¦\­¸Î{Í-ªäu ðBøjòzLÆ}¿MM6±B MÁˆ[dú•Š’æ ªMŒpóÉH†%Ôg”nò¹´ï“fr+›)ȹ@'tlL_î"çV¡  Þ ç$ íìõD£S½Ä™"„—KȪ4RùеI|"<ñ(õwÚoðö~;ßîo„2ó_’}›ÅÁÁµ.ÊlÁpW2)B—g6ÜmÙJÁ®÷éw]¼ØSå’ü?ãï€5½A²PQ!¾œD™ž '­h&_.pcø8Ú€~‡ÝV35½‹EîGe¬2±ãì šÎÙüW˽;BýHûo5.oØaç«Ä)Àûû¼×¥¼૤¶ñ÷ºÄ„óX•ÛÔ ¼è—nPÿ±4í¾OÊû¶G„)P1“¹—C‰ Ü/q€ÒAÒεJ¨þÚî¡> ¾M„P °Š“ðôz[OžúÿÕŒ·«q»‹¡ütî”Mx¨éíÆ;Ø?F€7÷`#Ó~ÊÛ…^iôr0üe=I»¨i<5Ùæ#ëô}å΀ÐÀG.ŠŠ?ôô„MFÍÒõþþ]й¯÷'³íø°8“‡_ x‘²4B¹›šã‡*ÖLyG¶·»¨þd‚TѧÙËäÇ`&„Ç$5)Ñl¼RìûÛÈþÅò|\‹Š¦À5®¸ÖìbÅ}ŸO}¦Ñ0NQxÍ]fƒe}ÿ¾OIq ˜Ì1P—&à Ã,Ö,åGhÒFWRcÿ‹XÍWD,úDð˜ÄóÕ|žÈWêiÖ¤ýíÂà˜}ñ•ã¸)ð M±Ž3Ö!šô›ŠrUúé†ËÈüYdÿWè-pïÒeõEÞJ U$KúªÑÔDt F?›˜ó'-}ÄÛ׉÷>ëg¼ýf²dÿ‚PùÏdN£b-¢gLˆ¯þnÞ>“jÁ‹†‰ Oä¿Zð˜…åÂÜ0®£½€÷½€(hwÝ@ß“Yy§Ñ7d`çtÈLÂù`šÑ`°=ºèñ2ý3è#“í{†é¿Øž~&UäÃòº øìÞë*NDð* Ç¼¹ž¸èþ+¢¼™?ëæ“˜½j’´nZ¡«š‰@ Íä^¹eÜdä/5’ô­^ô¿—¬ÃGúËH:Ñ¡¯'Yhuàt²¤“üèÿÞ¼šýuàÒÓúÓŸðýƒ[Ç+‹?˜¥ƒÜ[Dtêô_Ÿ®¹·UBµì{BóÕ£X»§šÂY€$·§÷ˆAmÂvü˜¹!7Ä+s­Û bÉ?\rZ.½·UÅ*>ì£Á½¼”<Áþëƒ0c‹©ïLþA· @gêýXË2ÛëDÌ¿Ôõ;ËEAÆœö½EÄÞ1¡( ÅðÖÚ ßF“ci'²' ÉçK0(T÷'Ê0ЕÕ#Šˆf/Ò %ý˜T ö/l.#Ë—ðûÎXtªî€4оˡSD9wü‡Q‘&/èhZ/¬ Â%CI Àˆ=Rdÿ+óZÌ–aM±Ðë€îïB€ÈJCe‚01U#:ká2pà±Ð HºŠ ¡õ¶Àb°Þ ýèt:ˆ|²ßIԳνœ Y–lÐ?)£Ñ_Ëi¶!Ô‘ƒ"ÐC€_+ü?¿‹­6º ´àž[ëSD/¢ u¸YpË~8 «¾HÛ„…àñ!Þì!(Èà’EM$ÿŸ·ýÛ’nYÇ÷s€c €×KàäÙUdø«ÄË3 ®»ÌWhɪ¸:‚Xå Ð<Ž@\„¦€qÐÿè~@Ó ÷OóÇd± "Èp@€\3ÑÚš½&àz²¨Púÿ&#˜âúÄNÔĈÞ>¸œŽœ Àkœ\€qÜ Š ñ J¡„ãÍý?ÏÆ5ä…”† hÀ–ˆý×,X¹œÐdÜ€(@`ýy «ýYbVÜÌ9^Ðÿ˜ã¬³÷ ßøìãÓDoHOÒCVhîݰٙƒ&`²È€ÿ¯½ÿ˜?øK„<î×E£/ñÅà4àd0^ðpF{@`Ï,b&ëI€oh¼ þŸ>X3P`ú¬ê±(èk%b{· i¬Tq<ÀQ€ÆgÖôßä¶aýMÏY¤àcýô휙Cà ÜÛ› B9@9Ÿý?öþt‹ cdÙ–&~J£¨¥¡'ƒpÖÃJ&°>4nr€ãç €"(œÿ×:PhàïÄ/8Y^4öòr/QÞ 1@s´·Vë÷(·@Óã+ ›pÒ¤i?òÿÈÜ Dæ^ÞšsÐ~gludžD{CY@iŸ®Jñ-2Ù"GËVÚXçÓ›(V¨ICNÀ€‡5´? À\Àæ\ƒÓ@IHÓø?m×ÁçÚq€‚Öâþ¨2©©¢w5†`J¬Ð0€)Àcd$&Vã<€…v’~–êþÏ â“9!·uüÀÁÒä'Ñè§,t@ŠÆˆ‡Ï²û€nD^n‰öÏÇþ-IvbeY äj{Aìz pBÀâС% ‘rUR&( yvþßv@×Qí8@á £4@ú¡?0ô î@ z…ƒ&€Ö g•Ä!¨!@ €$Yk²yÐÿãJ¿§m6@}ïTtSÇVòPOÓ OpkälÀCDêûoÂÞ?‘š+‡Là"N  ¯ãî¦R€¶@ðð†Öy˜D~Èl­'$§?¨Yü¿VrÐ_jÆ0x à Ò‹ ?0Eôv ‹išh€§Àh-9€œý##âü¶&Wý‘Æ*|¸qú/ãô ÄZ¸§˜„b²4ÅÒÓz}ˆÿ©¿Ô=Aó (@_é> pBT,âÇiœXçÀ"V`0Ïn–ÿÇ(„>>±xH\X¨ÈšûHÚìÿó_ýò¡^¢Ò€±hN• éjŸ™ýÿ ÿç³Àøz€‰……t5Q÷²)9 þÂìgOÈy Ìq?Ù@Bg ë$í¿EÓ7;Ï­ù¢±o½M¼÷ÞfÏñŠ…ÿKOo’¬m°§þéOʰÚÄAÀ\ 8P‘~:³L°ãÿ¨Ácܘí)¯ y€8z9žÿþ^4ÿ4Î=· U8 ûãÿ6ìëgøµþ_D 8€ ˜Ð1Œ—éŸÍbf Äòß½Æz£½S¸?P4ë$@|¬}1̾zq¸˜@1º™ð Úà¯^—º¾a”ûÕVëOè"”‹rýH(¦ÝG oeé²>Ò_ÂÍ¡øßj¤Iýf=k‹¿û/zzD­Bp&‚¾êÝdÿó󶼿„À ') à M'úÎtùj.T»`‚Ây>æÞ0Þ˜ûn ð6©-änô*©ÆØŽS½ZŒ ½}æÑÀ@:Hõÿñ‹¼aUÂ]|–ŸáŸ¼ÞÿK/<L2öí¥óÓÔp^`§ºÏ/x]WÑ@ ƒg»_ƒaá1‘äÍ3ƒµò/Qø"™@€TН'›ú5о§í•w´'ê–â¯Ä•´ qtÇÞš½õísM?]ÿ/ÖÒÚGÓŸn<¹JyÛÐŒuQê$N&ú©‘%ô=Q.?éð³tËëêäP‡OJS²…fÃÔôöùómv¦:ßÇ EÜ¥òz̃§y:õ"i5Þ°ÛÉE.¡ŸBʽ¼ƒóúÕê¢"ã|ÖJ€SÏÿå «ŽoêðÔ´Ù©ñLö¯È¢ø}N*÷ò úÿ;£Þ+`úЊ²|ŒŽ“¤t0&ŠgÜÑT‘pÜûÒëI2y“¢0u›*͘ æ†$ÂG#öïo\£ß8YršƒúúÓ'}´¿ ×D¯¸F_j4âÐv…«ävp‹–GbC?æÄ¦É À ࢠt-¿ö cpGþÖQÈ£ËÓsM@NÙ°»Â†UÊ1”¸(q“4cÚ#Âj©S¤zMc¸øSˆø‚b'`ß›ìÿ¥ kUA#/9ö¢‡ú[G ¶t’àq[j[“’–ÚŽ÷ݳ|[ø™e%€,³þB©¶d$ù¬ ‰Í€6ÒdU-~¼òH²”j¤ã_é$=–”Ÿ¶šhr€&7hz7µÑ´qïIM.–¬µ9ú® u€XÒ~s8/IÇ›_Cþ“8À:T ( .9 PX0ÁŒhÑ~¡uòFó/“õÿ“Û/ÈÝF2Y¼ä~ ³iÓ¨Ž.J ôhµ@1Ø—ÿ«–"wÔÈÃI*s§vU)ÊkÀþ ã¢Ëb“Þ™ÜWKV¬¡|Èÿ¨Ëá1üê2w›ø±®M¾DM6-¾C¿F¹>£|½¢T|{5orXE\…øÌ#ËsRf[ÓŠüez𶛫à¦Wµ§lËb‹Á6ÐgÙ@!©9ͨªáëj^BCÀx(,´ÿܧò“^¼˜¾/@Ö0" ß¡i·BÓâÓ(À.3Ó$ …Äâ°ôêâDDùtM|<5í²=ã €x`þ/Ü“U_¡½€[µ¶{<ï{™`R¡0:;ìGF$ó%×{Q~hÍá1¼üºwe`À†(„2‘‰¢HÒ‰~P*è2fáí6‡Ù+ë|f^ôI¥B¿‹DO‡L ÜBaþÿÿ9ý”( ˆPª?ãâ(;,¨•óµ"ðYçêà$ <) PX €ß|Ä—µéâP!¸b,ÕèZ‡Í¬h/€LT|y%IN]zûÚŠ¬«yj$³†sP^-÷6uË]á@šó?^Üjeï“ô•U%Hò¾v%a㣎ìæÞÅaAÑd›2HƒÅ»8H/'À¸âõÒ^ØÎ¦'õ þ•?€tõ¿Š}¯¢g ç‘;,\S ±ùÖf€õ]F2X® ©xLŸgÙU@ÿIeõ'ó0ÎÍ›lI àÇóóUóoÀ-’4ô:/1ìƒ'Ù‡U€‚T¶|R†…Áhú+<Óæw~JÓ¦ùOÊ>Â>·º¯ï°ðH,"{GAÀ—k284°ãÍýT¤²Ýy?¦BJ ÷çÂÏŸR;r{Ï`iL–µd¸Ñÿ“yñüTÑÅAÃW žßæº àŽ¤ÕÿPî{œ^1¨è° |Iùq€LÐéÉû‹<„‡EÖ úè[ߊ‰IÀhô«ì#™î´ëá_¢W挒6+uÓïq%ó-pgGùú æ EV[B3Os»Üëeþ«' pæ§m_#þ÷9 Á]È1“ dûuçâc×´¸æn5‰]ÙmNí€z€W5P Pn¢% PX ¡o£r/ã©–³MÝËõ)Ayc^ctäž”©tïP³Ïˆw\©m„$w¿Ô×ìššÕ Ë h÷,0¢ ˜¾þo0QéÛ5êQÑ$æ"¥è° ¶›p~g‡Ñr ãy4[­tÓáä­“Ó€ÙiLHe—¨ÎÆøFíb¤Å­l ý¡`‡’O†“2¿‚nú®]MëžY¡ŸrFc·ü š¶rÜÝe–´àJ@ÎÈ’7Iºá‰¾àHt*]jr\“Ô¶[4‡,ÎÅá, Þ½Iè‰r›D Ëäö /ò9Ž÷J -ø‰O'ùÖajGS¦©;C†qÏ÷ÍŠE¬H²¹%·¸ZjÐ V êï¸Å5Ã2 ͧš?‘SŠ}Ÿ9³9-öÊBR>/‚a/npm:¯²1jähåoS£×Ÿr¥˜Ù ŽQ]ø1LøAƒ‚o›e€Dq· ›NQ+4KÚ&ðͤÍ,½îQ’ëï»xÝôQFÍy¶UPè¿tƒ2ÿÏ>GÓp 8ëÿŒHÐ…^w°õõ~R߀ðÈFº¼I®©lP?Lµ=ÚmËΪ€@‰¥þt‹”(pÀ‚Ðw~ÉëɧŽwéÁ –ìýy<&fø™"~ôðm^LSfhÜcIÀ½}Ðç¾$Ø’iÐÿ._”0–Åj]k£*ç`ìx"ÿL â±fœ‘ö½NMËæjAè)+ñ|8@æJÀ`˜i›öR›×棼]m]£ÔûX#h/&ÆY^cÐcFF)—ƒdY–¬/{³…¦móÕPæuãåò#óôÍ¡AGƒÉö‘9¯3TX¹Ó:bWíTÏÈÈ4Qeÿù+©7x…~r>Á Ž~ã`Y#ÔÌ•Ö= W°4b#V Zð#m]^µ©f(;š{¶^×ü3 €tPèJÀÆ;Ý6ÒC…óSPø1ž¼Ôñ3Uü¾$‚·mš¡ÌC£ÏgZ3VLÈW‚¶þ ŠIAe„£húÕhè `Õ2³s‹kãk(XÜŸÿãÍß4'ï{•}/ªñ &oXu°^ àâÕaÕÿîÇy:—‰aO¤_7ù nÇA@–×&f<” Ù9ËÚZæ×Û×òL-?HñWši›“u óGÜœ¸ŠLÒ¼h§\º$Ѿ€àl¸¿ßsñ uv¶\2©óº\æ$m€à …@ì÷Ñ–tbiÀúÀ<ÉÚôï}Ƹ²Ð·¯Ðy"žì ìÑWÖ2w·ü½‘‚ß^ì§\áÙxÞñô÷çý˜ø¤®?âIšæ9Ÿqy5»?xÿö`×dBAÀinž5ØJ*t—+V>zL6«…Ì¡rÜ`ƒ @jþ7ÿÛMÊ}¯öé÷fÐÛ³nîûY€ªÛ€M$;X~óÃ3yoü+Ö \‰å@Y Î-þ>¢ÉÄ9þV>íçëóI„öM&ÖÝyüPP÷&M¯ùpx>À¥Ø3Ô ÆÕÍ—•eh%kã 4í°`‰þgõÓ+F®´îM‰9q]ýiß“ÿF²×cÑoµê;r˜šl€e«/õÄM‘Âm@ŸÕDÎ+¸¥ "É¿]ôá|?ðýec|‘s¼ù—HWkã‰ôù"«2T™ Ó"þ4S*ÿ—½Ž‹›Ë^È9  æHÖWóaÙuöè<Ýãë²»0hæO#ßÖ7>h]Óg±õUñH…Eû Fׇ¨A9o%Éö¿9Uš•9îrÜå^'ý©ÎþàÜßöuü¾î7±èM’>ýøfŸëÿ¤Œfmƒß%¦Ãiæ ?:6õD½ppzU|?ìc6šªŒ–!äûÖî˜|ü5ùË›¿|µÞbHhða ´l0øŒ`ÿ¶à`’ÿÌ¿ý°g W­`ÕÀ]/ËŸÈÐ Ú–˜¨½°^bµ¬&[ºÇKæücI›Åøà%òÀ×Ï4 1?PÒ:e¡õ}Ð!µ-V˲sÜ™æ(á¤MË<ýGäÿhò&Alô­Ð>«^¡Yã·¢Ñ2%om¢°¦üPgCQ&P€C`Çž5ù¬Ë¼ç_[6úÄ/®Ä44nÀæ¯ÖHh‹CÓšaè$ ¾A¥ÿÇæ¿b=ŠÊ‘¨€ÚËpÚ!@Giˆgê4JŒš5°NÓ|üœóƒãgi‡± øÒÔZ;ˆ×Új_]ÿ_ 'bGÖš€¹rÚ±I xZ)9,°Rr|¬_ðüh¬Xø½ÀIÞ_0¥´Žf àkXÆÀT¢ÈÿÁÁŸaÅÔt4s‘[@ÜÐ’à( ;ÆS€Œ×â%<óh©ã'ý|é-iä¿ÝWÖÑÚ×íyZ@†}ð—>áR ’ ûŸÊbЬ4½ÜTÓL±Ö§  È÷!~ÿ©}Ä]NB4kå ë€vÚ* O‰à¯ÑI(i9,À€~¼ç¿cõ5)ðydþ·y«7ä«õÚ@|Ȱf`-@lUkÿÈÓ‘MHN@= pÓ:Ê£j4€ùÕo™¯š¿imÃÎØ".kíÇB:t½þ7? Y€ß6Ç÷P@‡Ð¬0ÿ¿#ˆÐЄþ|èÁd=4úÃ3µ6Öbµ!(2µ€FHxùKn=DL=Å à–Ýè¨ÇµÿfrMrÂïŸðSš?;Žü°°;’Zk$´b`ûðá¦5Qÿƒ'ÿGhþ9r€,@S ÀµnÍÌ^W 0È×ú 8LÖÄç$šbdüÖA²Æ5£¨øw€s6-U߸…ˆ ¾%¼4ë›Ùñäÿ»fÄ.ªZ #¾è„¡tgâtIÂO"0°Aß*€Ãc<ÐëqàßD@¦ý8á—i)É?—*­i׈öbàëÿŽÜûç̲€3f0ØàkêÊúóïêXFÆÏ‚ñ}wÑ¢"¿k‘Wµ ‘L<⸚Î^B{÷ø|$k›{ ¤¤@¶üE×å÷Ñ¿Ùã÷uÀO¿qaä!HÓû„J˜X?¬e7²Ð©j'p„ xþqóûö!ŠÔ_û×. œÿ¼ÿ1`FÙ×f‘ИàR€ô•õÃÖü.¢÷dÂZ…Ýw‰Åú’ûzg‹2zµ¿¹­ÈÏác@Û×ÍD@bÙæÿ_=½ Ñ?úCéjÇ-ß"qÿOœe@±ÿÚ×%(ø†—ªÀþŸ±Žg‡Èø¯4kÛnñxåG}“/³Mñþû¥µmÎÿáÔßÑ{~<»“%Ȇpµz ³¸É¾Óú~áPb~ë£&Þä׿W¸è AÓ …ŒÞ9ô/êß|` ïÇT›fýPá§Hò”8ÀýÇ“ÌßïPô­ZÃ=ȈèÃ3pØwå]¨]½XÚ©Îÿ·Ï@‰ðL»‘…N†—¹õÕŽAaw¹\•<Pî69XÛ-¿Ùƒ_ ýç6ˆ»PàÌ÷,=`±ú” šìþùöy6’V”aBk–ÚK±Îk´™òvm·õPýW¾§ÆÿWG¼Ómp¿2ë›SuÝІoãŠ]¾ ”°˜¾ææh¿p‰2d+é$BO»£|àpsÀ¤m4“º@ÁB€ ·§mÍ~uªçOŸð{ ùßïÿáÒšÕw®ð¥Ÿ‘}·xÐcøE7#¶a’S);Úi£YÝâ+wQhwy™Ym@ÌhN¸_)H¬l£}».ø~dûˆWó ?å´(Üÿ¢÷Î.q²¥ñ­õLò—­Èrïh†Ûç°âö÷Uøÿ†¿îº3J­Ñ@sY,tùË~F¼Ij†úÞWM¿.£×Q²Õ‹âïÕ˜„2à8“r&OdÐÁ—´áoµ"á—Ráwù—Îý°ÿW:AÎOå­ëaª-­Z¸NºU\94$WýQ#»§vñMé£G€;ÔhÒLjÇ´­à”ráÔOë÷CÌïÛ7¼ûÿRáý!õWE+Øÿ#çaM\mg/qÅ5(3çå^®ÙGqz’µîÁ^µ$ü‘6V€…\xÿoň=E ¡õ#ÈxIÒbTuA P!€N’Sï‰ÜMªí½IásÿTóßÿÏJ;­MMSƒªMšN¥­V¨‹›åÔ_;ØÖJ…Ã’îòtF‘¹,`Kc  ™ëqõ¯ XŒƒéâ<äþi›ñ™hþ4kK õÝr°%ÿ·á¯“×É,mý™´¥Nµ©3ª–eæ–¨«g{›ã …/’dÁMAô1srá—¨ÉN"À­BUÃÞÑ0<“îl•ÅŽQ  ¥<°ç”éÃxïoJ-ONµÿxx:+±våÆT ;†êâ.£ÔœsFê.pj$rÔ`B–"ÝÉ({Ÿ%pµŸh™ˆã/Õ-³Ÿt~úæïêVëVÑxœôß;VäþÞ‚?¼ƒëïꬢ?Yiÿ›â»ç‘ÿ³~_N³-è…ºÏz¤EW£²¬Peá}÷ÿySÐý©RO2|n~ž¤àõ+¤HÝ¢€ !8ì€Rv›¹wC€jJê:€œ;”TÛÿZ￲Ïü÷çÿƒ”Ô.àÔHæ+Ô<·™Ÿ%ÑÑ$mQéÕùþi…ü÷ä@µB09£ì}–9³’(>tÆ¢>þÞæ“'‚T`Òˆê4K6lâËC¸æß©>¿pÒNáÝÑ2dÿ7ŸàßoÖ³¤>JœµË2ë×T(ÐËòœ§F+! éÇ*âI²à,¯N§¼>©‹{åˆ@3é÷ juñc³”<û]ý¾¦çœóOçýÓµÖn—¤-Õéó2²úïù$ñôêâ®·Ü2aöˆ i&=Z€‚@9 vY€8/ˆ)í•û½1ôƒÿeCúˆìÏ­¾ß÷öÞ'@u¼õáýß÷¾Dü„¦?áßvÿ&²ÿ/ü›>’®FÏÚ{ tŸÚQŤ®»vóIÚÐTz%~ ôɤ×ßý^¨4DLqoѽ£ÈÄêâÌD!`¥P°+Ùœ*úÔª¿×Ù?€% ÛT0¡Z¢V†Ä‘Ô_Ä%¿îê’™÷è€,{?­Ó¸R€-E¯‰O|ýé:·þ ýàÐïžò¿ŠgÿMèwMV(Ài|õê)~CÜap”âwâó?ßSø§/Ük }WŽÌ¶UH¾Ža=Y· ¯¯£ŸŒBQú}´±âU4m\¾ #ÿ ÚZGÄê¸x/»ñÐsáIŒ|Ú/$(PØ à ®©PS<Ðû§µîyÿtVêë ÿ-LgW$G©²ÃXÿ·Å¿¼²÷nõÙ¦Âè0(ÍäEÍ@Óƒ€YQBÛ½tÀ—*ŸýóçþÊî™U‚`ÿüûkê:B½z’Eà /Fîýo‹ŒH›¤§_Ql–ÔÔç>v ŽÐK~Ýuålwvð½É=0+õ#9ŸGÿ†# âa± ­»+#…á½ÿí´ÊéìÎéÏK;MG¯‚SwJZÿ·ÊS€5) X!¼ð긣ÙÌdÖ9m³ñ0¯áŒˆS8­ÛâÝÿ+ÅÁŸâ#Àÿ#É®ÁßÔ®v„ %°Ùû)¢Dìgº¼UÅŠ«©.Lv§“ú…LD„ó~hN³kÖ¦G4,ˆÔàõÁÙÐcþ`7pè fxüóÞB€Và~ßnMÛ±÷gMé…IRëÿ„ñ…Ø…]eÓv•v:ãaJÜ ÐwÌfN¬†qæ>õÂi?r¨Àõ,x&3ú‚쀶—ƒajzéüRWzdÉýï÷þ˜°çDÿo«ªY-Å Øj]mí£éúæî§3Ôhãù¥6FefvŒÝ^:ßfO© ZqñK—ª’µYH–µYüh嫽øu¨,kåu¸RþàÐë`kò3é)è,`%à$ãm[:¿=šá$ýàØÿ`ÿY€0Õ…ægšÒ©:¦C0݈§s"õ1°æ7ýYà¨R€€aª½}„Q¥4_è± n&smâcŠ¢ú/Æ_ãþÓxޝÀÿÊ·FÓ}ÍØøc¡ÎîšõÕ±YïÇ:™“aôtFµæó‚ŽAoß§Ðýÿ÷£Ç„«­4ðµ€> ¦\ÅpÞ^í é76„k͸èÐÀëgò„@µ†ÑìS¯¯Ö?àÜ?ƒÿǾæ",¢gLåüÄgÓOgü·üdý ŸEfÕ°Ó"ÃíÜq0“ Váör€ÚO4-|޾оõ÷/˜ÿ£}[‘Ïœ9‡âÿ«`üSuPï» ·w:ÎA9 «Ù–ès°¢"ÝÛãà8 -o|0w¾Æàã÷£/ì:IÓe‚Å£ ûrâL>/ðgV ž~ö•ä?í¹FÿÏÏÏó ¦3Þ^Ñþ _»KÄ}wd.Ü‹sÇe<¯¨PÅtrÈh^˜~ Zhäþ¹ q€5©ÞðÁဘÿCš¦oþUè7ÝX]¸ô(àoF&h2ðRÙ©}ò[¸%÷(" $#.½OX&€ãc€Ö#a‡3ŽR0ƒ÷ÏdÿZ ‚ˆ8`Ám•,àŽ\€Ö€;Àý³–¯×6Ú@§1Ž;ÇÒŸlðõ?¾TÅÖón€Ó6 hù…!‚ >Ð%&­MƒÐ°›ˆ" …K P tø9€C€£’K_óŸýk$"íQ¸x‹(BÏÿíWp Pî¾6mìfþL]GÈÉ:áŸtþº=˜¿ ÄßHm ’?@K>€@:Q9díÑMÂÆ ßdp4Ñû'ëÿà¸/€ ½ð k'’äg4ÖØïþ tâ"ÿ,¹/öÚ켌¦ßø§·ÎÑøþŸìý?´hˆ ”‹;ü$}ñw?%šï: |UÂ:ÔIàpà(43Åþªü¿æ q)XüfÀÝT(,÷o³‚ù§zÿ3uX õ9áRî£5Ñÿ‹Þ_ùnžXýæ‹ø"2Ÿ h!¢ÑÍ:nn€å¯&w¡b@cóÏäýUÙ¿Æ!§lË»UuçDærc\í'7 Epòß‘Hõþë5¼ç'ˆ@k] >¨"ÿ/xÿî”}ƒ³š3,Œ8.œ‡@€lЃ¹ßuðQ@7Ýk-†’ÿñŒæ¯Êþ5’OE€„û?‘éÀ p ÚîÙœþ$ï_ûÇå¸ÂˆMu®BÂï¹Ãàôù¯Ê©¿¤¬Úæñ*¨xDÒX¿´¬â4@\îüæÀᆪ¼¿Jû×<H✔lú7ʬyé]¹êo½¶®#ÐËWø•×Õ` @°ÿR0ÿèT÷«4›(@€P`A`¤Ïéð¡àŸè åßÜS€Ã ö+ýæcÿÚ‡)@`')˜+†€ûÇŠû‚ù‹µýPáW§è"¼å`-üýŸuÁüÓ?ÏÄ’sFº€8€¡åMÏ—ôé'›zi€;\Р;»P ´ñþãlfó]ý_¡@ @p²ÕÀÊøß¤¾VûáÍë÷&îiñ5´OLHÑ?nùÍÿLTÛ/{~þí÷æA׿6¸uùWP€ŸŒgU ˜M`™vTùǯž6Ç °Î¼º@\¹úýo&üëxúîÀh5(BŒOL´gCþù·«ôÿÐàN¦d8À¢<¾åd îï“ _Ìx(WD—zÉáú®H$âÉ[þdÖÝ?»f„N<¡ ù‰…Z•žŸƒâ~ôv—ÙOÒ¶ª?½ÖüŒ»Õ_ˆ mâ÷WF(—«ò½o¡??°!øc—×ÅZ¡ÿ(F….’v:`UúgòTà ÷£Çð;-­Òo Z\„·‡'ÕÚÿÚÇŒ§z=8 ÀSàá§@Y \_¿?±PÑןnP)7 ƒaª§ $÷uy­:ÕwºwwF#Ú³°­ÛÔ4VÚí%&  i¯ojû›†³” €ÀD*’q—]8Ÿ×eø ¡+Ãîõ£¡Ì™ÿ ÐFàTU©"þç•'ÒýkƒïKSÐÏOÁÏÞ„E– «ÒP@–eo”¢³ÈþÃýs*RUM-íŠÊkfº^¿…„_ëjí{DR¾ÛaÞ=;Õ ¼˜®Bê´„GwÝ©òë¾i¦v²Q ?9#‘ô°’Œh‚‘¦9ÈÓIn]”ŠÌÿ0õB’|WÁïÆDí©‚ôM˜`ÒLÏb0K¶°:M…€ ¥ Þ ·.þ÷¸øŸÑ„ùÈÐcM@±/€žˆâ„ßÁ5´ÃvIÛ¹‹ù*3c•ûlk/”YÁ4¦“_ÿŒ:<2Øuß$ø-¥PÄE6'nyUvóÄ«PöøQFŸÞMîÔ® ؉{dáîQíW4EÑqFЉŸù*åöÓýñ“ I’¸‡øƒÚæ Àþ¡{$wÞçÝÍ›èŸvÖÕ¾þý‘.…üz…Zxá•4OþŒ)dl{êžäj@”9þ ~±, —ŒxçsÅŸåµlù¾™M´‚×øs«Ò¾Æ}N°u‡^’¦ "ŠR‚VsÅI€ÉdQ|±-ú8õsÌ^ ÈC…ú¹bY–¨Ì‘ÅšÕè|{}ìš3°1¯B~=¬ Ä;’õ6ü&€L¿-ôîÁ›Aˆø†*c¹@Úé<Ø3IìîT[$#ζSçEÅçBȦ÷Kt$¹/€ÌjŽ\xNð¿”­P>3Y…að‚gÿŒÑ/Û*cz·zÀ?_ ^dꨃ X† 3€Ïóo(ó#“é6þi2E¦ÝìòY…š½zoww…·2@£´uÔôȉ\S16ø e÷”9Ù‰n…GÝnžä—U¨µg¦ËÃv Æ»Tð¸Fî Hi~ SA¥Í¥ø¯q÷›•S6B¸§˜fï5Q‡~$wÊ9·˜È¯AÀ­>ðÜ“]_€ìsîSi¦@g?é9€ƒO ö¿ß)@£"©yŒÜ³UUVñÀ] S»è³z”h4#ù¦oÚ)óúS÷©f8ŸéàÚ=­&•8,¶ŒPjOød¥=—BÜ;Ig¿ ‚Zøñ蜴÷K Ñ«$ï:„hüðçy«nñ]ÛÝ Ö®†-ÏðàVÙ†}Œê³¿Sµö ftwéJ:X ‰³û›XP-Ô\¢’Ë*.R#û͇\ODÐtBW†.U.%Bÿ@ÛT°½ 3üN+Hž¾¿Eòˆý–¼áZÀMxøJ@&yšŒþÃö?ŒRº¼*í×ùJ)Õ…3BÁUX]gŒ²4nwQý‰¿*" Tz™äÌ_söM¬œ¥ø½Ð¿ºýaUº(OE~Ó‰+(½ÌoU½½Ý#L³:׊6,Ôœ¢U)ˆ%JS0‘JTFOv% ‚Úßz¼‘þ}w¶ªÃLDƒ‚wþ1ªÃˆIz»jqwPîDú/(ß>ÓÏD"éÛþ‹Yú"u“Ü7nL ËïI±^•|§¹Šû™aµ(ÃÓ¬6ÌŠk´a Où)ˆç¹a!GqÇ7u 8Š£ÅQÅQ€â(Žâ(@qGq 8Š£8ŠPÅQE(Žâ(Ž"GqGŠ£8Š£ÅQÅQ€â(Žâ(@qGq 8Š£8ŠPÅQE(Žâ(Ž"GqGŠ£8Š£ÅQÅQ€â(Žâ(@qGq 8Š£8ŠPÅQE(Žâ(Ž"GqGŠ£8Š£ÅQÅQ€â(Žâ(@qGq 8Š£8ŠPÅQÙŽÿ_€H’_9v¹IEND®B`‚mcl-12-135/img/falkner.ps0000644000402500021140000010621510626763602012050 00000000000000%! %%BoundingBox: 205 205 385 385 % Old, scaling 10. BoundingBox: 206 205 394 394 /edge_width 0.08 def /vertex_border_width 0.05 def /B_test 0 def % set to 1 to test BoundingBox parameters /BBLL [ 205 205 ] def /BBUR [ 385 385 ] def B_test 1 eq { newpath BBLL aload pop moveto BBLL aload pop BBUR aload pop pop exch lineto % this is LR BBUR aload pop lineto BBUR aload pop BBLL aload pop pop exch lineto % this is UL closepath stroke } if 50 200 translate 25 25 scale /radius 0.24 def /proc_circle { gsave %% newpath moveto setgray aload pop moveto % 0.5 0.5 rmoveto currentpoint gsave currentpoint radius 0 360 arc fill grestore newpath radius 0 360 arc 0.0 setgray vertex_border_width setlinewidth stroke grestore } def /proc_line { gsave edge_width setlinewidth setgray aload pop moveto aload pop lineto stroke grestore } def /e {proc_line} def /n {proc_circle} def /unitx 1 def /unity 1 def /v0[4 19]def/v1[5 19]def/v2[7 19]def/v3[8 19]def/v4[10 19]def /v5[11 19]def/v6[16 19]def/v7[17 19]def/v8[18 19]def/v9[3 18]def /v10[4 18]def/v11[6 18]def/v12[7 18]def/v13[11 18]def/v14[15 18]def /v15[16 18]def/v16[17 18]def/v17[4 17]def/v18[5 17]def/v19[6 17]def /v20[7 17]def/v21[8 17]def/v22[10 17]def/v23[14 17]def/v24[15 17]def /v25[17 17]def/v26[18 17]def/v27[19 17]def/v28[1 16]def/v29[2 16]def /v30[10 16]def/v31[12 16]def/v32[13 16]def/v33[15 16]def/v34[16 16]def /v35[18 16]def/v36[19 16]def/v37[4 15]def/v38[5 15]def/v39[8 15]def /v40[9 15]def/v41[11 15]def/v42[12 15]def/v43[3 14]def/v44[7 14]def /v45[9 14]def/v46[10 14]def/v47[12 14]def/v48[13 14]def/v49[15 14]def /v50[18 14]def/v51[1 13]def/v52[4 13]def/v53[12 13]def/v54[13 13]def /v55[14 13]def/v56[16 13]def/v57[17 13]def/v58[18 13]def/v59[19 13]def /v60[3 12]def/v61[4 12]def/v62[5 12]def/v63[6 12]def/v64[7 12]def /v65[14 12]def/v66[15 12]def/v67[19 12]def/v68[3 11]def/v69[5 11]def /v70[9 11]def/v71[11 11]def/v72[14 11]def/v73[15 11]def/v74[16 11]def /v75[19 11]def/v76[1 10]def/v77[2 10]def/v78[5 10]def/v79[14 10]def /v80[15 10]def/v81[17 10]def/v82[19 10]def/v83[3 9]def/v84[6 9]def /v85[7 9]def/v86[10 9]def/v87[13 9]def/v88[15 9]def/v89[18 9]def /v90[1 8]def/v91[2 8]def/v92[3 8]def/v93[7 8]def/v94[9 8]def /v95[10 8]def/v96[15 8]def/v97[16 8]def/v98[18 8]def/v99[2 7]def /v100[3 7]def/v101[4 7]def/v102[6 7]def/v103[12 7]def/v104[13 7]def /v105[17 7]def/v106[4 6]def/v107[5 6]def/v108[10 6]def/v109[13 6]def /v110[16 6]def/v111[17 6]def/v112[1 5]def/v113[2 5]def/v114[3 5]def /v115[6 5]def/v116[14 5]def/v117[17 5]def/v118[2 4]def/v119[4 4]def /v120[5 4]def/v121[8 4]def/v122[12 4]def/v123[13 4]def/v124[14 4]def /v125[17 4]def/v126[18 4]def/v127[19 4]def/v128[1 3]def/v129[4 3]def /v130[7 3]def/v131[8 3]def/v132[9 3]def/v133[10 3]def/v134[12 3]def /v135[14 3]def/v136[16 3]def/v137[5 2]def/v138[9 2]def/v139[11 2]def /v140[12 2]def/v141[13 2]def/v142[19 2]def/v143[1 1]def/v144[2 1]def /v145[5 1]def/v146[7 1]def/v147[9 1]def/v148[13 1]def/v149[14 1]def v20 v1 0.507458 e v18 v2 0.506708 e v26 v6 0.510482 e v24 v7 0.519019 e v32 v14 0.509740 e v35 v15 0.510009 e v33 v16 0.518119 e v2 v18 0.506708 e v1 v20 0.507458 e v40 v20 0.511974 e v42 v22 0.506306 e v7 v24 0.519019 e v6 v26 0.510482 e v47 v30 0.512803 e v46 v31 0.501461 e v14 v32 0.509740 e v16 v33 0.518119 e v48 v33 0.518119 e v15 v35 0.510009 e v20 v40 0.511974 e v22 v42 0.506306 e v31 v46 0.501461 e v30 v47 0.512803 e v65 v47 0.530629 e v33 v48 0.518119 e v72 v53 0.516724 e v72 v56 0.510790 e v73 v57 0.512447 e v74 v58 0.511293 e v78 v60 0.515382 e v47 v65 0.530629 e v80 v65 0.508682 e v83 v69 0.512803 e v53 v72 0.516724 e v56 v72 0.510790 e v57 v73 0.512447 e v58 v74 0.511293 e v60 v78 0.515382 e v92 v78 0.527731 e v97 v79 0.507458 e v65 v80 0.508682 e v96 v81 0.512925 e v69 v83 0.512803 e v106 v91 0.522618 e v78 v92 0.527731 e v107 v92 0.505766 e v81 v96 0.512925 e v111 v96 0.512925 e v79 v97 0.507458 e v113 v101 0.520637 e v91 v106 0.522618 e v92 v107 0.505766 e v124 v110 0.500111 e v96 v111 0.512925 e v101 v113 0.520637 e v134 v116 0.500111 e v139 v123 0.507458 e v110 v124 0.500111 e v140 v124 0.520637 e v116 v134 0.500111 e v123 v139 0.507458 e v124 v140 0.520637 e v11 v0 0.456977 e v18 v0 0.456977 e v19 v0 0.496838 e v12 v1 0.471699 e v17 v1 0.471699 e v19 v1 0.471699 e v19 v2 0.470660 e v21 v2 0.470660 e v19 v3 0.487608 e v22 v3 0.487608 e v21 v4 0.460994 e v23 v6 0.495270 e v24 v6 0.475892 e v25 v6 0.475892 e v14 v7 0.487728 e v26 v7 0.487728 e v27 v7 0.496838 e v19 v10 0.487156 e v0 v11 0.456977 e v17 v11 0.489912 e v21 v11 0.483216 e v1 v12 0.471699 e v18 v12 0.488836 e v32 v13 0.464948 e v7 v14 0.487728 e v25 v14 0.488222 e v34 v14 0.479110 e v23 v15 0.454803 e v26 v15 0.497806 e v33 v15 0.486481 e v24 v16 0.497806 e v27 v16 0.456977 e v34 v16 0.479110 e v35 v16 0.475237 e v36 v16 0.484825 e v1 v17 0.471699 e v11 v17 0.489912 e v0 v18 0.456977 e v12 v18 0.488836 e v0 v19 0.496838 e v1 v19 0.471699 e v2 v19 0.470660 e v3 v19 0.487608 e v10 v19 0.487156 e v37 v19 0.481607 e v39 v19 0.495270 e v38 v20 0.479076 e v39 v20 0.454803 e v2 v21 0.470660 e v4 v21 0.460994 e v11 v21 0.483216 e v30 v21 0.479110 e v40 v21 0.477961 e v3 v22 0.487608 e v31 v22 0.470103 e v39 v22 0.495270 e v40 v22 0.470103 e v41 v22 0.470103 e v6 v23 0.495270 e v15 v23 0.454803 e v31 v23 0.454803 e v34 v23 0.454803 e v42 v23 0.495270 e v6 v24 0.475892 e v16 v24 0.497806 e v32 v24 0.474863 e v6 v25 0.475892 e v14 v25 0.488222 e v33 v25 0.486481 e v7 v26 0.487728 e v15 v26 0.497806 e v34 v26 0.479110 e v7 v27 0.496838 e v16 v27 0.456977 e v21 v30 0.479110 e v39 v30 0.454803 e v42 v30 0.479110 e v45 v30 0.456977 e v22 v31 0.470103 e v23 v31 0.454803 e v48 v31 0.484546 e v13 v32 0.464948 e v24 v32 0.474863 e v41 v32 0.474863 e v47 v32 0.474863 e v49 v32 0.495385 e v15 v33 0.486481 e v25 v33 0.486481 e v14 v34 0.479110 e v16 v34 0.479110 e v23 v34 0.454803 e v26 v34 0.479110 e v49 v34 0.454962 e v50 v34 0.489994 e v16 v35 0.475237 e v16 v36 0.484825 e v19 v37 0.481607 e v20 v38 0.479076 e v19 v39 0.495270 e v20 v39 0.454803 e v22 v39 0.495270 e v30 v39 0.454803 e v46 v39 0.454803 e v21 v40 0.477961 e v22 v40 0.470103 e v22 v41 0.470103 e v32 v41 0.474863 e v45 v41 0.456977 e v48 v41 0.484824 e v53 v41 0.484546 e v23 v42 0.495270 e v30 v42 0.479110 e v46 v42 0.463385 e v54 v42 0.489957 e v62 v43 0.472354 e v62 v44 0.450479 e v30 v45 0.456977 e v41 v45 0.456977 e v64 v45 0.472534 e v39 v46 0.454803 e v42 v46 0.463385 e v53 v46 0.463385 e v32 v47 0.474863 e v55 v47 0.495858 e v31 v48 0.484546 e v41 v48 0.484824 e v65 v48 0.492681 e v32 v49 0.495385 e v34 v49 0.454962 e v54 v49 0.454962 e v57 v49 0.454962 e v65 v49 0.454962 e v34 v50 0.489994 e v63 v52 0.459675 e v68 v52 0.465939 e v69 v52 0.465939 e v41 v53 0.484546 e v46 v53 0.463385 e v65 v53 0.484546 e v42 v54 0.489957 e v49 v54 0.454962 e v66 v54 0.489957 e v72 v54 0.489957 e v47 v55 0.495858 e v73 v55 0.495858 e v65 v56 0.476319 e v73 v56 0.476319 e v49 v57 0.454962 e v66 v57 0.478616 e v67 v57 0.456977 e v74 v57 0.477488 e v75 v57 0.492469 e v75 v58 0.450919 e v69 v60 0.482686 e v76 v60 0.465445 e v77 v61 0.489994 e v43 v62 0.472354 e v44 v62 0.450479 e v68 v62 0.471699 e v52 v63 0.459675 e v45 v64 0.472534 e v78 v64 0.472534 e v48 v65 0.492681 e v49 v65 0.454962 e v53 v65 0.484546 e v56 v65 0.476319 e v74 v65 0.477488 e v54 v66 0.489957 e v57 v66 0.478616 e v79 v66 0.488222 e v57 v67 0.456977 e v81 v67 0.496838 e v52 v68 0.465939 e v62 v68 0.471699 e v52 v69 0.465939 e v60 v69 0.482686 e v85 v69 0.485299 e v54 v72 0.489957 e v88 v72 0.492243 e v55 v73 0.495858 e v56 v73 0.476319 e v87 v73 0.472354 e v57 v74 0.477488 e v65 v74 0.477488 e v79 v74 0.477488 e v88 v74 0.477488 e v89 v74 0.475583 e v57 v75 0.492469 e v58 v75 0.450919 e v60 v76 0.465445 e v92 v76 0.465445 e v61 v77 0.489994 e v64 v78 0.472534 e v93 v78 0.468827 e v66 v79 0.488222 e v74 v79 0.477488 e v96 v79 0.479279 e v97 v80 0.471699 e v67 v81 0.496838 e v99 v83 0.479110 e v101 v83 0.479110 e v101 v84 0.472009 e v69 v85 0.485299 e v73 v87 0.472354 e v72 v88 0.492243 e v74 v88 0.477488 e v104 v88 0.484825 e v105 v88 0.494699 e v74 v89 0.475583 e v101 v91 0.482826 e v76 v92 0.465445 e v106 v92 0.491596 e v78 v93 0.468827 e v107 v93 0.468827 e v79 v96 0.479279 e v105 v96 0.454011 e v109 v96 0.481607 e v110 v96 0.461514 e v80 v97 0.471699 e v111 v97 0.471699 e v110 v98 0.475583 e v83 v99 0.479110 e v106 v99 0.489912 e v114 v99 0.484824 e v107 v100 0.469354 e v112 v100 0.472009 e v113 v100 0.489971 e v83 v101 0.479110 e v84 v101 0.472009 e v91 v101 0.482826 e v114 v101 0.482826 e v115 v101 0.479684 e v116 v103 0.465445 e v88 v104 0.484825 e v88 v105 0.494699 e v96 v105 0.454011 e v92 v106 0.491596 e v99 v106 0.489912 e v113 v106 0.489971 e v118 v106 0.487039 e v120 v106 0.456910 e v93 v107 0.468827 e v100 v107 0.469354 e v114 v107 0.469354 e v119 v107 0.469354 e v96 v109 0.481607 e v96 v110 0.461514 e v98 v110 0.475583 e v116 v110 0.461514 e v125 v110 0.461514 e v126 v110 0.492469 e v97 v111 0.471699 e v126 v111 0.450919 e v127 v111 0.452660 e v100 v112 0.472009 e v100 v113 0.489971 e v106 v113 0.489971 e v119 v113 0.479963 e v129 v113 0.488201 e v99 v114 0.484824 e v101 v114 0.482826 e v107 v114 0.469354 e v120 v114 0.456910 e v101 v115 0.479684 e v129 v115 0.479684 e v131 v115 0.479684 e v103 v116 0.465445 e v110 v116 0.461514 e v122 v116 0.461514 e v106 v118 0.487039 e v107 v119 0.469354 e v113 v119 0.479963 e v106 v120 0.456910 e v114 v120 0.456910 e v130 v120 0.456910 e v116 v122 0.461514 e v133 v122 0.465939 e v135 v122 0.482553 e v139 v122 0.471699 e v141 v122 0.486966 e v140 v123 0.485872 e v134 v124 0.489971 e v141 v124 0.487623 e v110 v125 0.461514 e v110 v126 0.492469 e v111 v126 0.450919 e v111 v127 0.452660 e v113 v129 0.488201 e v115 v129 0.479684 e v120 v130 0.456910 e v138 v130 0.464155 e v147 v130 0.475583 e v115 v131 0.479684 e v139 v132 0.471699 e v146 v132 0.450479 e v122 v133 0.465939 e v140 v133 0.465939 e v124 v134 0.489971 e v149 v134 0.461387 e v122 v135 0.482553 e v140 v135 0.482553 e v130 v138 0.464155 e v122 v139 0.471699 e v132 v139 0.471699 e v123 v140 0.485872 e v133 v140 0.465939 e v135 v140 0.482553 e v122 v141 0.486966 e v124 v141 0.487623 e v132 v146 0.450479 e v130 v147 0.475583 e v134 v149 0.461387 e v9 v1 0.427508 e v10 v1 0.401301 e v11 v1 0.401301 e v18 v1 0.401301 e v11 v3 0.444181 e v20 v3 0.444181 e v14 v6 0.407795 e v16 v6 0.407795 e v15 v7 0.426125 e v25 v7 0.419453 e v15 v8 0.439502 e v25 v8 0.439502 e v27 v8 0.439502 e v1 v9 0.427508 e v18 v9 0.427508 e v1 v10 0.401301 e v11 v10 0.425239 e v18 v10 0.425239 e v29 v10 0.447920 e v1 v11 0.401301 e v3 v11 0.444181 e v10 v11 0.425239 e v18 v11 0.442241 e v20 v11 0.442616 e v19 v12 0.427841 e v21 v12 0.419136 e v30 v13 0.412764 e v31 v13 0.412764 e v6 v14 0.407795 e v16 v14 0.426890 e v33 v14 0.424193 e v7 v15 0.426125 e v8 v15 0.439502 e v24 v15 0.441733 e v25 v15 0.419453 e v34 v15 0.412777 e v6 v16 0.407795 e v14 v16 0.426890 e v26 v16 0.441733 e v19 v17 0.429507 e v38 v17 0.432351 e v1 v18 0.401301 e v9 v18 0.427508 e v10 v18 0.425239 e v11 v18 0.442241 e v20 v18 0.442241 e v37 v18 0.435861 e v12 v19 0.427841 e v17 v19 0.429507 e v21 v19 0.419136 e v38 v19 0.432351 e v3 v20 0.444181 e v11 v20 0.442616 e v18 v20 0.442241 e v12 v21 0.419136 e v19 v21 0.419136 e v15 v24 0.441733 e v25 v24 0.419453 e v34 v24 0.412777 e v7 v25 0.419453 e v8 v25 0.439502 e v15 v25 0.419453 e v24 v25 0.419453 e v34 v25 0.412777 e v35 v25 0.406779 e v36 v25 0.440322 e v16 v26 0.441733 e v8 v27 0.439502 e v10 v29 0.447920 e v13 v30 0.412764 e v31 v30 0.412777 e v40 v30 0.410998 e v41 v30 0.412777 e v13 v31 0.412764 e v30 v31 0.412777 e v41 v31 0.421197 e v47 v31 0.421197 e v33 v32 0.406201 e v42 v32 0.406201 e v48 v32 0.406201 e v14 v33 0.424193 e v32 v33 0.406201 e v15 v34 0.412777 e v24 v34 0.412777 e v25 v34 0.412777 e v35 v34 0.406779 e v25 v35 0.406779 e v34 v35 0.406779 e v25 v36 0.440322 e v50 v36 0.440322 e v18 v37 0.435861 e v17 v38 0.432351 e v19 v38 0.432351 e v43 v38 0.423033 e v52 v38 0.432351 e v30 v40 0.410998 e v41 v40 0.410998 e v30 v41 0.412777 e v31 v41 0.421197 e v40 v41 0.410998 e v47 v41 0.421627 e v32 v42 0.406201 e v48 v42 0.433796 e v53 v42 0.421197 e v38 v43 0.423033 e v61 v43 0.423033 e v31 v47 0.421197 e v41 v47 0.421627 e v54 v47 0.429576 e v32 v48 0.406201 e v42 v48 0.433796 e v53 v48 0.421197 e v55 v48 0.433796 e v36 v50 0.440322 e v56 v50 0.447487 e v67 v50 0.447487 e v38 v52 0.432351 e v42 v53 0.421197 e v48 v53 0.421197 e v55 v53 0.421197 e v47 v54 0.429576 e v65 v54 0.402414 e v48 v55 0.433796 e v53 v55 0.421197 e v56 v55 0.408456 e v66 v55 0.438715 e v72 v55 0.438715 e v50 v56 0.447487 e v55 v56 0.408456 e v58 v56 0.408456 e v66 v56 0.408456 e v74 v56 0.408456 e v56 v58 0.408456 e v62 v60 0.418316 e v77 v60 0.447487 e v43 v61 0.423033 e v68 v61 0.401301 e v69 v61 0.427824 e v78 v61 0.441295 e v60 v62 0.418316 e v78 v63 0.441295 e v69 v64 0.423281 e v54 v65 0.402414 e v73 v65 0.402414 e v79 v65 0.402414 e v55 v66 0.438715 e v56 v66 0.408456 e v72 v66 0.446353 e v74 v66 0.410266 e v80 v66 0.446353 e v50 v67 0.447487 e v61 v68 0.401301 e v69 v68 0.401301 e v76 v68 0.413453 e v78 v68 0.441295 e v83 v68 0.401301 e v61 v69 0.427824 e v64 v69 0.423281 e v68 v69 0.401301 e v84 v69 0.422554 e v55 v72 0.438715 e v66 v72 0.446353 e v74 v72 0.410266 e v80 v72 0.447382 e v87 v72 0.423033 e v65 v73 0.402414 e v79 v73 0.426890 e v81 v73 0.438763 e v88 v73 0.433117 e v56 v74 0.408456 e v66 v74 0.410266 e v72 v74 0.410266 e v80 v74 0.410266 e v81 v75 0.438763 e v89 v75 0.427508 e v68 v76 0.413453 e v83 v76 0.413453 e v91 v76 0.413453 e v60 v77 0.447487 e v90 v77 0.439502 e v92 v77 0.447487 e v61 v78 0.441295 e v63 v78 0.441295 e v68 v78 0.441295 e v83 v78 0.441295 e v85 v78 0.440979 e v65 v79 0.402414 e v73 v79 0.426890 e v88 v79 0.426890 e v66 v80 0.446353 e v72 v80 0.447382 e v74 v80 0.410266 e v87 v80 0.423033 e v96 v80 0.413040 e v73 v81 0.438763 e v75 v81 0.438763 e v88 v81 0.438763 e v97 v81 0.438763 e v98 v81 0.427508 e v98 v82 0.412163 e v68 v83 0.401301 e v76 v83 0.413453 e v78 v83 0.441295 e v90 v83 0.439502 e v91 v83 0.412777 e v100 v83 0.412777 e v69 v84 0.422554 e v78 v85 0.440979 e v94 v85 0.401217 e v102 v85 0.421102 e v103 v86 0.443163 e v72 v87 0.423033 e v80 v87 0.423033 e v96 v87 0.423033 e v103 v87 0.413453 e v73 v88 0.433117 e v79 v88 0.426890 e v81 v88 0.438763 e v97 v88 0.401301 e v75 v89 0.427508 e v97 v89 0.427508 e v105 v89 0.427508 e v77 v90 0.439502 e v83 v90 0.439502 e v100 v90 0.439502 e v76 v91 0.413453 e v83 v91 0.412777 e v100 v91 0.433853 e v77 v92 0.447487 e v99 v92 0.429507 e v101 v92 0.418532 e v85 v94 0.401217 e v103 v95 0.413453 e v80 v96 0.413040 e v87 v96 0.423033 e v104 v96 0.440322 e v81 v97 0.438763 e v88 v97 0.401301 e v89 v97 0.427508 e v81 v98 0.427508 e v82 v98 0.412163 e v111 v98 0.427508 e v92 v99 0.429507 e v101 v99 0.418532 e v112 v99 0.422554 e v113 v99 0.429507 e v83 v100 0.412777 e v90 v100 0.439502 e v91 v100 0.433853 e v106 v100 0.432115 e v114 v100 0.421627 e v92 v101 0.418532 e v99 v101 0.418532 e v85 v102 0.421102 e v106 v102 0.421102 e v86 v103 0.443163 e v87 v103 0.413453 e v95 v103 0.413453 e v96 v104 0.440322 e v116 v104 0.440322 e v89 v105 0.427508 e v100 v106 0.432115 e v102 v106 0.421102 e v114 v106 0.421627 e v115 v106 0.433194 e v119 v106 0.414099 e v122 v109 0.435861 e v124 v109 0.435861 e v98 v111 0.427508 e v99 v112 0.422554 e v99 v113 0.429507 e v100 v114 0.421627 e v106 v114 0.421627 e v119 v114 0.414099 e v128 v114 0.433920 e v129 v114 0.445002 e v106 v115 0.433194 e v119 v115 0.433194 e v121 v115 0.427508 e v130 v115 0.433194 e v104 v116 0.440322 e v136 v116 0.434415 e v129 v118 0.443391 e v106 v119 0.414099 e v114 v119 0.414099 e v115 v119 0.433194 e v137 v119 0.417457 e v115 v121 0.427508 e v133 v121 0.427508 e v138 v121 0.427508 e v109 v122 0.435861 e v124 v122 0.424945 e v140 v122 0.424945 e v134 v123 0.423250 e v135 v123 0.418111 e v141 v123 0.423250 e v109 v124 0.435861 e v122 v124 0.424945 e v114 v128 0.433920 e v114 v129 0.445002 e v118 v129 0.443391 e v115 v130 0.433194 e v137 v130 0.417457 e v145 v130 0.427120 e v138 v131 0.403147 e v147 v131 0.427508 e v121 v133 0.427508 e v147 v133 0.427508 e v123 v134 0.423250 e v135 v134 0.418111 e v139 v134 0.401301 e v141 v134 0.425962 e v148 v134 0.443632 e v123 v135 0.418111 e v134 v135 0.418111 e v141 v135 0.418111 e v148 v135 0.443632 e v116 v136 0.434415 e v149 v136 0.434415 e v119 v137 0.417457 e v130 v137 0.417457 e v121 v138 0.427508 e v131 v138 0.403147 e v139 v138 0.401301 e v134 v139 0.401301 e v138 v139 0.401301 e v141 v139 0.401301 e v147 v139 0.427508 e v148 v139 0.443632 e v122 v140 0.424945 e v149 v140 0.407828 e v123 v141 0.423250 e v134 v141 0.425962 e v135 v141 0.418111 e v139 v141 0.401301 e v130 v145 0.427120 e v131 v147 0.427508 e v133 v147 0.427508 e v139 v147 0.427508 e v134 v148 0.443632 e v135 v148 0.443632 e v139 v148 0.443632 e v136 v149 0.434415 e v140 v149 0.407828 e v17 v0 0.378500 e v2 v1 0.399691 e v1 v2 0.399691 e v11 v2 0.399691 e v20 v2 0.399691 e v12 v3 0.358683 e v21 v3 0.358683 e v22 v5 0.394654 e v8 v6 0.351437 e v6 v8 0.351437 e v16 v8 0.351437 e v26 v8 0.351437 e v28 v9 0.385283 e v29 v9 0.389157 e v2 v11 0.399691 e v3 v12 0.358683 e v23 v14 0.375133 e v8 v16 0.351437 e v0 v17 0.378500 e v29 v17 0.389157 e v2 v20 0.399691 e v3 v21 0.358683 e v22 v21 0.398828 e v39 v21 0.375133 e v5 v22 0.394654 e v21 v22 0.398828 e v14 v23 0.375133 e v32 v23 0.375133 e v33 v23 0.375133 e v27 v25 0.378500 e v8 v26 0.351437 e v36 v26 0.352708 e v25 v27 0.378500 e v35 v27 0.378500 e v9 v28 0.385283 e v43 v28 0.385283 e v9 v29 0.389157 e v17 v29 0.389157 e v37 v29 0.389157 e v43 v29 0.389157 e v46 v30 0.388425 e v23 v32 0.375133 e v23 v33 0.375133 e v49 v33 0.375381 e v27 v35 0.378500 e v50 v35 0.363804 e v26 v36 0.352708 e v29 v37 0.389157 e v44 v38 0.392704 e v21 v39 0.375133 e v45 v39 0.375133 e v44 v40 0.392704 e v46 v40 0.388425 e v46 v41 0.388425 e v28 v43 0.385283 e v29 v43 0.389157 e v38 v44 0.392704 e v40 v44 0.392704 e v63 v44 0.392704 e v39 v45 0.375133 e v30 v46 0.388425 e v40 v46 0.388425 e v41 v46 0.388425 e v47 v46 0.388425 e v46 v47 0.388425 e v49 v48 0.375381 e v33 v49 0.375381 e v48 v49 0.375381 e v55 v49 0.375381 e v56 v49 0.375381 e v66 v49 0.375381 e v35 v50 0.363804 e v57 v50 0.363804 e v59 v50 0.362395 e v60 v52 0.392380 e v62 v52 0.392380 e v71 v54 0.362771 e v49 v55 0.375381 e v49 v56 0.375381 e v50 v57 0.363804 e v59 v57 0.362395 e v67 v58 0.378500 e v50 v59 0.362395 e v57 v59 0.362395 e v75 v59 0.362395 e v52 v60 0.392380 e v63 v61 0.382679 e v52 v62 0.392380 e v78 v62 0.354213 e v44 v63 0.392704 e v61 v63 0.382679 e v69 v63 0.382679 e v49 v66 0.375381 e v58 v67 0.378500 e v77 v68 0.363804 e v63 v69 0.382679 e v54 v71 0.362771 e v87 v71 0.362771 e v81 v74 0.350292 e v59 v75 0.362395 e v68 v77 0.363804 e v83 v77 0.363804 e v91 v77 0.363804 e v62 v78 0.354213 e v81 v80 0.350292 e v74 v81 0.350292 e v80 v81 0.350292 e v77 v83 0.363804 e v71 v87 0.362771 e v92 v90 0.351437 e v99 v90 0.351437 e v77 v91 0.363804 e v90 v92 0.351437 e v105 v97 0.373908 e v110 v97 0.385527 e v90 v99 0.351437 e v107 v101 0.397668 e v97 v105 0.373908 e v110 v105 0.373908 e v117 v105 0.373908 e v101 v107 0.397668 e v120 v107 0.378396 e v121 v108 0.362771 e v122 v108 0.362771 e v97 v110 0.385527 e v105 v110 0.373908 e v117 v110 0.385527 e v125 v111 0.387124 e v128 v113 0.369748 e v118 v114 0.357459 e v123 v116 0.385527 e v135 v116 0.385527 e v105 v117 0.373908 e v110 v117 0.385527 e v126 v117 0.369119 e v127 v117 0.395727 e v136 v117 0.370433 e v114 v118 0.357459 e v119 v118 0.357459 e v118 v119 0.357459 e v107 v120 0.378396 e v129 v120 0.359956 e v108 v121 0.362771 e v108 v122 0.362771 e v116 v123 0.385527 e v136 v124 0.370433 e v111 v125 0.387124 e v117 v126 0.369119 e v136 v126 0.370433 e v117 v127 0.395727 e v113 v128 0.369748 e v120 v129 0.359956 e v144 v129 0.392883 e v145 v129 0.360320 e v132 v130 0.389617 e v133 v131 0.392380 e v146 v131 0.392704 e v130 v132 0.389617 e v131 v133 0.392380 e v134 v133 0.392380 e v138 v133 0.392380 e v139 v133 0.392380 e v133 v134 0.392380 e v116 v135 0.385527 e v117 v136 0.370433 e v124 v136 0.370433 e v126 v136 0.370433 e v146 v137 0.392704 e v133 v138 0.392380 e v146 v138 0.392704 e v133 v139 0.392380 e v148 v140 0.357833 e v129 v144 0.392883 e v129 v145 0.360320 e v131 v146 0.392704 e v137 v146 0.392704 e v138 v146 0.392704 e v140 v148 0.357833 e v9 v0 0.332862 e v4 v3 0.301539 e v3 v4 0.301539 e v13 v4 0.301539 e v22 v4 0.301539 e v0 v9 0.332862 e v17 v9 0.332862 e v4 v13 0.301539 e v22 v13 0.310028 e v16 v15 0.316743 e v15 v16 0.316743 e v9 v17 0.332862 e v37 v17 0.345798 e v38 v18 0.340362 e v4 v22 0.301539 e v13 v22 0.310028 e v17 v37 0.345798 e v43 v37 0.325931 e v52 v37 0.345798 e v18 v38 0.340362 e v37 v43 0.325931 e v52 v43 0.325931 e v60 v43 0.325931 e v37 v52 0.345798 e v43 v52 0.325931 e v43 v60 0.325931 e v64 v62 0.326316 e v62 v64 0.326316 e v73 v66 0.301511 e v82 v67 0.309098 e v85 v70 0.333934 e v73 v72 0.303511 e v66 v73 0.301511 e v72 v73 0.303511 e v80 v73 0.324941 e v90 v76 0.311095 e v84 v78 0.325190 e v87 v79 0.325931 e v73 v80 0.324941 e v82 v81 0.309098 e v89 v81 0.332862 e v67 v82 0.309098 e v81 v82 0.309098 e v89 v82 0.309098 e v78 v84 0.325190 e v93 v84 0.318358 e v102 v84 0.322941 e v70 v85 0.333934 e v79 v87 0.325931 e v88 v87 0.325931 e v104 v87 0.325931 e v87 v88 0.325931 e v81 v89 0.332862 e v82 v89 0.309098 e v76 v90 0.311095 e v84 v93 0.318358 e v102 v93 0.318358 e v98 v97 0.332862 e v97 v98 0.332862 e v105 v98 0.332862 e v102 v101 0.322941 e v84 v102 0.322941 e v93 v102 0.318358 e v101 v102 0.322941 e v107 v102 0.322941 e v115 v102 0.322941 e v109 v103 0.311095 e v87 v104 0.325931 e v98 v105 0.332862 e v102 v107 0.322941 e v115 v107 0.341669 e v103 v109 0.311095 e v116 v109 0.345798 e v123 v109 0.345798 e v114 v112 0.325190 e v118 v112 0.325190 e v112 v114 0.325190 e v102 v115 0.322941 e v107 v115 0.341669 e v120 v115 0.341669 e v109 v116 0.345798 e v112 v118 0.325190 e v115 v120 0.341669 e v137 v120 0.317296 e v130 v121 0.332862 e v132 v121 0.332862 e v109 v123 0.345798 e v144 v128 0.312854 e v137 v129 0.317296 e v121 v130 0.332862 e v121 v132 0.332862 e v147 v132 0.332862 e v149 v135 0.302383 e v120 v137 0.317296 e v129 v137 0.317296 e v149 v141 0.302383 e v128 v144 0.312854 e v132 v147 0.332862 e v135 v149 0.302383 e v141 v149 0.302383 e v16 v7 0.262216 e v17 v10 0.260494 e v12 v11 0.265549 e v19 v11 0.293603 e v11 v12 0.265549 e v20 v12 0.265549 e v15 v14 0.263701 e v24 v14 0.263701 e v14 v15 0.263701 e v7 v16 0.262216 e v10 v17 0.260494 e v18 v17 0.268785 e v17 v18 0.268785 e v19 v18 0.293524 e v11 v19 0.293603 e v18 v19 0.293524 e v20 v19 0.293603 e v12 v20 0.265549 e v19 v20 0.293603 e v14 v24 0.263701 e v33 v24 0.258462 e v42 v31 0.252641 e v24 v33 0.258462 e v44 v39 0.278961 e v42 v41 0.253476 e v31 v42 0.252641 e v41 v42 0.253476 e v47 v42 0.278870 e v39 v44 0.278961 e v45 v44 0.278961 e v64 v44 0.278961 e v44 v45 0.278961 e v42 v47 0.278870 e v48 v47 0.277116 e v53 v47 0.252641 e v47 v48 0.277116 e v54 v48 0.268919 e v47 v53 0.252641 e v54 v53 0.252641 e v71 v53 0.271106 e v48 v54 0.268919 e v53 v54 0.252641 e v55 v54 0.268919 e v54 v55 0.268919 e v62 v61 0.277228 e v61 v62 0.277228 e v69 v62 0.265516 e v44 v64 0.278961 e v62 v69 0.265516 e v53 v71 0.271106 e v86 v71 0.271106 e v79 v72 0.263701 e v72 v79 0.263701 e v80 v79 0.263701 e v79 v80 0.263701 e v88 v80 0.275799 e v71 v86 0.271106 e v94 v86 0.263255 e v80 v88 0.275799 e v92 v91 0.277228 e v99 v91 0.268785 e v91 v92 0.277228 e v100 v92 0.298556 e v94 v93 0.292145 e v86 v94 0.263255 e v93 v94 0.292145 e v108 v94 0.271106 e v91 v99 0.268785 e v100 v99 0.268785 e v92 v100 0.298556 e v99 v100 0.268785 e v108 v103 0.271106 e v94 v108 0.271106 e v103 v108 0.271106 e v114 v113 0.253476 e v113 v114 0.253476 e v123 v122 0.256630 e v134 v122 0.259922 e v122 v123 0.256630 e v124 v123 0.256630 e v123 v124 0.256630 e v127 v125 0.283644 e v142 v125 0.277157 e v125 v127 0.283644 e v146 v130 0.278961 e v122 v134 0.259922 e v140 v134 0.283466 e v134 v140 0.283466 e v141 v140 0.261898 e v140 v141 0.261898 e v125 v142 0.277157 e v130 v146 0.278961 e v147 v146 0.278961 e v146 v147 0.278961 e v12 v2 0.210863 e v7 v6 0.226604 e v15 v6 0.226604 e v6 v7 0.226604 e v2 v12 0.210863 e v6 v15 0.226604 e v25 v16 0.249253 e v21 v20 0.248638 e v20 v21 0.248638 e v30 v22 0.209186 e v16 v25 0.249253 e v26 v25 0.249253 e v25 v26 0.249253 e v35 v26 0.224632 e v22 v30 0.209186 e v32 v31 0.223509 e v31 v32 0.223509 e v34 v33 0.236285 e v33 v34 0.236285 e v26 v35 0.224632 e v68 v51 0.204491 e v65 v55 0.216151 e v57 v56 0.227889 e v56 v57 0.227889 e v58 v57 0.229988 e v57 v58 0.229988 e v61 v60 0.247044 e v68 v60 0.213990 e v60 v61 0.247044 e v70 v64 0.231127 e v55 v65 0.216151 e v66 v65 0.216151 e v72 v65 0.216151 e v65 v66 0.216151 e v51 v68 0.204491 e v60 v68 0.213990 e v64 v70 0.231127 e v86 v70 0.231127 e v65 v72 0.216151 e v74 v73 0.231405 e v73 v74 0.231405 e v92 v83 0.236285 e v70 v86 0.231127 e v96 v88 0.236795 e v83 v92 0.236285 e v88 v96 0.236795 e v97 v96 0.213990 e v96 v97 0.213990 e v101 v100 0.247464 e v100 v101 0.247464 e v106 v101 0.247464 e v101 v106 0.247464 e v107 v106 0.206932 e v106 v107 0.206932 e v128 v112 0.243409 e v128 v118 0.243409 e v135 v124 0.246646 e v136 v125 0.244471 e v112 v128 0.243409 e v118 v128 0.243409 e v132 v131 0.249483 e v131 v132 0.249483 e v138 v132 0.217575 e v124 v135 0.246646 e v136 v135 0.244471 e v125 v136 0.244471 e v135 v136 0.244471 e v132 v138 0.217575 e v140 v139 0.213990 e v139 v140 0.213990 e v146 v145 0.228809 e v145 v146 0.228809 e v1 v0 0.169695 e v10 v0 0.169695 e v0 v1 0.169695 e v0 v10 0.169695 e v24 v23 0.163154 e v23 v24 0.163154 e v27 v26 0.169695 e v26 v27 0.169695 e v40 v39 0.163154 e v39 v40 0.163154 e v45 v40 0.169695 e v40 v45 0.169695 e v46 v45 0.169695 e v45 v46 0.169695 e v61 v52 0.196659 e v52 v61 0.196659 e v63 v62 0.177813 e v62 v63 0.177813 e v75 v67 0.151470 e v67 v75 0.151470 e v111 v105 0.160773 e v111 v110 0.183346 e v105 v111 0.160773 e v110 v111 0.183346 e v117 v111 0.193952 e v124 v116 0.183346 e v111 v117 0.193952 e v125 v117 0.186447 e v120 v119 0.169493 e v119 v120 0.169493 e v116 v124 0.183346 e v117 v125 0.186447 e v126 v125 0.151470 e v125 v126 0.151470 e v142 v126 0.152411 e v143 v128 0.161887 e v131 v130 0.191292 e v130 v131 0.191292 e v133 v132 0.196659 e v132 v133 0.196659 e v126 v142 0.152411 e v128 v143 0.161887 e v3 v2 0.131196 e v2 v3 0.131196 e v8 v7 0.117119 e v7 v8 0.117119 e v36 v27 0.119588 e v36 v35 0.119588 e v27 v36 0.119588 e v35 v36 0.119588 e v58 v50 0.141145 e v50 v58 0.141145 e v59 v58 0.138407 e v58 v59 0.138407 e v67 v59 0.138407 e v59 v67 0.138407 e v78 v69 0.122513 e v69 v78 0.122513 e v91 v90 0.117119 e v90 v91 0.117119 e v109 v104 0.106164 e v104 v109 0.106164 e v118 v113 0.128819 e v113 v118 0.128819 e v129 v119 0.133669 e v119 v129 0.133669 e v148 v141 0.129544 e v141 v148 0.129544 e v10 v9 0.081035 e v9 v10 0.081035 e v38 v37 0.095605 e v37 v38 0.095605 e v51 v43 0.051667 e v43 v51 0.051667 e v60 v51 0.051667 e v51 v60 0.051667 e v64 v63 0.068316 e v63 v64 0.068316 e v85 v84 0.066129 e v84 v85 0.066129 e v93 v85 0.052857 e v98 v89 0.081035 e v85 v93 0.052857 e v108 v95 0.090642 e v89 v98 0.081035 e v95 v108 0.090642 e v113 v112 0.066129 e v112 v113 0.066129 e v131 v121 0.081035 e v121 v131 0.081035 e v147 v138 0.081035 e v138 v147 0.081035 e v71 v70 0.028727 e v70 v71 0.028727 e v82 v75 0.034867 e v77 v76 0.038747 e v76 v77 0.038747 e v75 v82 0.034867 e v95 v94 0.001934 e v94 v95 0.001934 e v104 v103 0.038747 e v103 v104 0.038747 e v149 v148 0.021823 e v148 v149 0.021823 e v5 v4 -0.017811 e v4 v5 -0.017811 e v13 v5 -0.017811 e v5 v13 -0.017811 e v127 v126 -0.014582 e v126 v127 -0.014582 e v95 v86 -0.054192 e v86 v95 -0.054192 e v142 v127 -0.093180 e v127 v142 -0.093180 e v145 v137 -0.121110 e v137 v145 -0.121110 e v29 v28 -0.295619 e v28 v29 -0.295619 e v144 v143 -0.263919 e v143 v144 -0.263919 e v0 0.581546 n v1 0.524546 n v2 0.549511 n v3 0.598261 n v4 0.544925 n v5 0.541982 n v6 0.570532 n v7 0.472799 n v8 0.659760 n v9 0.576977 n v10 0.422198 n v11 0.437913 n v12 0.483941 n v13 0.552187 n v14 0.532198 n v15 0.375332 n v16 0.344589 n v17 0.407450 n v18 0.385459 n v19 0.346427 n v20 0.419215 n v21 0.473870 n v22 0.471713 n v23 0.621629 n v24 0.431294 n v25 0.361226 n v26 0.390696 n v27 0.548887 n v28 0.609660 n v29 0.507276 n v30 0.471835 n v31 0.473967 n v32 0.521125 n v33 0.548897 n v34 0.519209 n v35 0.507721 n v36 0.631548 n v37 0.558457 n v38 0.567272 n v39 0.553632 n v40 0.446232 n v41 0.489190 n v42 0.422871 n v43 0.455099 n v44 0.627956 n v45 0.501296 n v46 0.545298 n v47 0.436983 n v48 0.485497 n v49 0.629199 n v50 0.558145 n v51 0.776337 n v52 0.508481 n v53 0.520576 n v54 0.439350 n v55 0.458171 n v56 0.565300 n v57 0.483444 n v58 0.463721 n v59 0.545155 n v60 0.369783 n v61 0.416384 n v62 0.346287 n v63 0.506732 n v64 0.551255 n v65 0.394047 n v66 0.438288 n v67 0.506858 n v68 0.424081 n v69 0.405122 n v70 0.639217 n v71 0.652449 n v72 0.396755 n v73 0.354777 n v74 0.522318 n v75 0.476351 n v76 0.614533 n v77 0.541569 n v78 0.481495 n v79 0.498663 n v80 0.407954 n v81 0.519132 n v82 0.566577 n v83 0.485387 n v84 0.567410 n v85 0.424921 n v86 0.474802 n v87 0.615930 n v88 0.441617 n v89 0.553047 n v90 0.601098 n v91 0.442251 n v92 0.431175 n v93 0.555504 n v94 0.490444 n v95 0.399644 n v96 0.497917 n v97 0.481794 n v98 0.546625 n v99 0.474713 n v100 0.396048 n v101 0.423658 n v102 0.569271 n v103 0.500285 n v104 0.494140 n v105 0.532968 n v106 0.387508 n v107 0.496152 n v108 0.692670 n v109 0.558109 n v110 0.521170 n v111 0.395399 n v112 0.594159 n v113 0.393716 n v114 0.410750 n v115 0.592390 n v116 0.511143 n v117 0.460369 n v118 0.557301 n v119 0.421122 n v120 0.510552 n v121 0.573567 n v122 0.441674 n v123 0.477888 n v124 0.421878 n v125 0.383757 n v126 0.388152 n v127 0.506438 n v128 0.585930 n v129 0.490773 n v130 0.437226 n v131 0.389423 n v132 0.394569 n v133 0.532359 n v134 0.424528 n v135 0.427765 n v136 0.675898 n v137 0.504077 n v138 0.443971 n v139 0.523133 n v140 0.419784 n v141 0.436056 n v142 0.724758 n v143 0.517180 n v144 0.541253 n v145 0.595409 n v146 0.594567 n v147 0.585015 n v148 0.555668 n v149 0.617555 n /Times-Bold findfont 0.5 scalefont setfont /proc_show { aload pop moveto rmoveto show } def (0) -0.5 0.3 v0 proc_show (1) -0.5 0.3 v1 proc_show (2) -0.5 0.3 v2 proc_show (3) -0.5 0.3 v3 proc_show (4) -0.5 0.3 v4 proc_show (5) -0.5 0.3 v5 proc_show (6) -0.5 0.3 v6 proc_show (7) -0.5 0.3 v7 proc_show (8) -0.5 0.3 v8 proc_show (9) -0.5 0.3 v9 proc_show (11) -0.3 0.3 v11 proc_show (12) 0.3 -0.2 v12 proc_show (13) 0.4 -0.1 v13 proc_show (14) -0.5 0.3 v14 proc_show (16) 0.2 -0.1 v16 proc_show (17) -0.8 -0.1 v17 proc_show (18) -0.2 -0.7 v18 proc_show (19) -0.2 -0.7 v19 proc_show (20) -0.2 -0.7 v20 proc_show (21) 0.2 0.1 v21 proc_show (22) -0.8 0.1 v22 proc_show (23) -0.5 0.3 v23 proc_show (25) -0.2 -0.7 v25 proc_show (26) 0.0 0.3 v26 proc_show (27) 0.2 0.3 v27 proc_show (28) -0.5 0.3 v28 proc_show (29) -0.5 0.3 v29 proc_show (30) -1.0 -0.1 v30 proc_show (31) -0.1 0.3 v31 proc_show (32) 0.3 -0.4 v32 proc_show (33) -0.2 -0.7 v33 proc_show (34) 0.3 -0.4 v34 proc_show (35) -0.2 -0.7 v35 proc_show (36) 0.3 -0.4 v36 proc_show (37) -0.6 0.3 v37 proc_show (38) 0.4 -0.1 v38 proc_show (39) -0.8 -0.1 v39 proc_show (40) 0.2 0.1 v40 proc_show (41) -0.8 0.1 v41 proc_show (42) 0.3 -0.3 v42 proc_show (43) -0.8 -0.1 v43 proc_show (44) -0.8 -0.1 v44 proc_show (45) -0.2 -0.6 v45 proc_show (46) -0.2 -0.6 v46 proc_show (47) -0.8 -0.4 v47 proc_show (48) 0.2 0.1 v48 proc_show (49) 0.4 -0.1 v49 proc_show (50) 0.4 -0.1 v50 proc_show (51) -0.8 -0.1 v51 proc_show (52) 0.4 -0.1 v52 proc_show (53) -0.8 -0.1 v53 proc_show (54) -0.2 -0.7 v54 proc_show (55) -0.2 0.3 v55 proc_show (56) -0.8 0.1 v56 proc_show (57) -0.3 0.3 v57 proc_show (59) 0.2 0.3 v59 proc_show (58) 1.2 0.3 v59 proc_show (60) -0.5 0.3 v60 proc_show (62) -0.5 0.3 v62 proc_show (63) -0.5 0.3 v63 proc_show (64) 0.4 -0.1 v64 proc_show (65) -0.8 -0.3 v65 proc_show (66) 0.4 -0.1 v66 proc_show (67) 0.4 -0.1 v67 proc_show (68) -0.8 -0.1 v68 proc_show (69) 0.5 -0.2 v69 proc_show (70) 0.2 0.1 v70 proc_show (71) -0.8 0.1 v71 proc_show (72) -0.8 -0.1 v72 proc_show (74) 0.3 -0.1 v74 proc_show (75) 0.4 -0.1 v75 proc_show (76) -0.8 -0.1 v76 proc_show (77) 0.4 -0.1 v77 proc_show (78) -0.8 -0.2 v78 proc_show (79) -1.1 -0.1 v79 proc_show (80) 0.3 0.1 v80 proc_show (81) -0.3 0.3 v81 proc_show (82) 0.4 -0.1 v82 proc_show (83) 0.3 -0.2 v83 proc_show (84) -0.8 -0.1 v84 proc_show (85) 0.4 -0.1 v85 proc_show (86) 0.4 -0.1 v86 proc_show (87) -0.8 -0.1 v87 proc_show (88) 0.3 -0.2 v88 proc_show (89) 0.3 -0.3 v89 proc_show (90) -0.8 -0.1 v90 proc_show (92) 0.4 -0.1 v92 proc_show (93) -0.2 -0.6 v93 proc_show (94) -0.6 -0.6 v94 proc_show (95) 0.1 -0.7 v95 proc_show (96) -0.3 -0.7 v96 proc_show (97) 0.3 -0.4 v97 proc_show (98) 0.3 -0.3 v98 proc_show (99) -0.8 -0.1 v99 proc_show (101) 0.2 0.1 v101 proc_show (102) 0.3 -0.4 v102 proc_show (103) -0.4 -0.6 v103 proc_show (104) 0.3 -0.3 v104 proc_show (105) 0.5 -0.3 v105 proc_show (106) -1.1 -0.1 v106 proc_show (107) 0.2 -0.2 v107 proc_show (108) -1.1 -0.1 v108 proc_show (109) -1.1 -0.2 v109 proc_show (110) -1.1 -0.1 v110 proc_show (111) 0.3 -0.2 v111 proc_show (112) -1.1 -0.1 v112 proc_show (114) 0.3 -0.2 v114 proc_show (115) 0.3 -0.2 v115 proc_show (116) 0.3 -0.2 v116 proc_show (117) -1.1 -0.1 v117 proc_show (118) -0.4 -0.6 v118 proc_show (120) 0.3 -0.2 v120 proc_show (121) 0.3 -0.2 v121 proc_show (122) -1.1 -0.1 v122 proc_show (123) -0.5 0.3 v123 proc_show (124) 0.3 -0.2 v124 proc_show (125) -1.1 -0.1 v125 proc_show (126) -0.4 -0.6 v126 proc_show (127) 0.3 -0.2 v127 proc_show (128) -1.1 -0.1 v128 proc_show (129) -1.1 -0.1 v129 proc_show (130) -1.1 -0.1 v130 proc_show (132) 0.0 0.3 v132 proc_show (133) 0.1 0.2 v133 proc_show (134) -1.0 0.1 v134 proc_show (135) 0.1 -0.5 v135 proc_show (136) 0.1 -0.5 v136 proc_show (137) 0.3 -0.2 v137 proc_show (138) -1.1 -0.1 v138 proc_show (139) -0.4 -0.6 v139 proc_show (141) 0.3 -0.2 v141 proc_show (142) -1.1 -0.1 v142 proc_show (143) -1.1 -0.1 v143 proc_show (144) 0.3 -0.2 v144 proc_show (145) -1.1 -0.1 v145 proc_show (146) -0.4 -0.6 v146 proc_show (147) -0.4 -0.6 v147 proc_show (148) -0.6 -0.6 v148 proc_show (149) -0.2 -0.6 v149 proc_show showpage mcl-12-135/img/Makefile.am0000644000402500021140000000046711021510131012071 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.7 2007-01-29 11:35:37 flux Exp $ exampledir = $(datadir)/doc/$(PACKAGE)/examples example_DATA = fa_1024.png fa_400.png fa_600.png fa_large.png fa.ps falkner-bidi.ps falkner.ps small.ps small.png EXTRA_DIST = $(example_DATA) mcl-12-135/img/small.png0000644000402500021140000000236410556367532011704 00000000000000‰PNG  IHDR5ÎwF¨Ç»IDATxœíÙ=Ž#E`£ úô!Ø P ‰µ" t¼ª"äE8Úí  õ"KÛãQÕ¥éêGÕ«¿W?ö4Í ܧ5ó¹þ^uõ«šÕjæµ…9×ùænîæþÇî\þQÜ™Ïý>qË‚»×擱ÄýY:ñºR^Í}Qslžû8ÓgÖ;ÍuñkũЫK_º;éÓ&q÷¥#×?¯f»ÊÄù75©ûP–üÊ|Œ›Ô½a…[™aý|¯…åýÓ~äãò¶t/ñsŸºyΦ¯·÷e›»Q°ÒMßu¹“‚/w£*f~/ÚÒI%s׉®t½s׊~¹ëT±"p!K×*`™cb,WÀS6mV±Ì1YàFØ”ÄM[Y@¤v·n`28 Øû.¸.ô×~YÙ ÝÕ×ûøºé¤ì€8ǃ“ÁMëèÖ– Mpx‹3— ¾°îÌ‚‹yÉ@Êûĺ¤¼õs8rÂð·Ë£ýð®Ö:.+ëÞÔÆ…Žó·[t;µˆÛ„BCâXáÄÈ<ˆŽÎ«»%óªîØv¨::ïOæÇ÷ÑÑçèÁü8Ñçˆ8á¹Äõå乬»ÑübwÁ‘u°²nGÖ!cŒåà×!âȺfÐÔ×µ î`×ʪ£ëî plâºK]Ç’uœ8ú^°jò^¸àt'v—}oéAi€¾·¨ãä=ØàPÇ÷ uô½ºÃÐÅ÷ê%wࢣïýÓ¼÷©£yÄù¶3äÔѼD/ ¼d‰£yÓ°ž8¼‰:š‡ kÅäaÔѼN×Ëäu—ܸÁ¥¬îHÞ©²#¼3q$[t!MÉ‹egÏ‹¯8¸èHÞÞ÷¾)"$4µ}€w~8²¯è¼wûŠEŽì{ÚÑ7E„„°¶òÎï£R÷eÜß—-sqßÈÂi@mœÛ‡¦.ìk5w pûÚe.ì»ÇðP¸}wêÂ>>:·O]8áatçË\8·èÃbáÎ-2çÏA¢sç ™óç*]L·_BÅùsýìîvUsîÜÇ$CcõêJy£ÎÄΛ+åÍv•Þ”ndóÊ“|^?$÷çzS¸½½+]_œ6%׿y‡kŽ unsigned int conversion], [ac_cv_c_void_uint], [AC_RUN_IFELSE( [AC_LANG_SOURCE([[ #include #include unsigned test[] = { 0x00000000, 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000 , 0x0000000f, 0x00000f00, 0x000f0000, 0x00f00000, 0x0f000000 , 0x0000ffff, 0x00ffff00, 0xffff0000, 0x00ff00ff, 0xff00ff00 , 0x00ffffff, 0x00ffffff, 0xffffff00, 0xffff00ff, 0xffffffff , 0x80000000, 0x40000000, 0xc0000000, 0x80000001, 0x40000001 } ; int main ( int argc , char* argv[] ) { int i = 0 ; for (i=0;i void* failed: do not use --abc options. /\/\ Consider contacting the author (http://micans.org/stijn/contact.html \/\/ \/ Please include the file config.log. EOM fi ######################## helpful reminder ##################################### # extra ./configure options AC_ARG_ENABLE(helpful-reminder, AC_HELP_STRING([--enable-helpful-reminder], [output citation reference (default is yes)]), [ case "${enableval}" in yes) helpful_reminder=yes ;; no) helpful_reminder=no ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-helpful-reminder]) ;; esac ], [helpful_reminder=yes] ) if test "$helpful_reminder" = "yes"; then AC_DEFINE(MCL_HELPFUL_REMINDER, [], [output citation reference (default yes)]) fi ######################## tribe package ##################################### ## DEPRECATED. ## PLEASE USE BLAST PACKAGE INSTEAD. ## # extra ./configure options ## AC_ARG_ENABLE(tribe, ## [ --enable-tribe build contributed tribe tools (protein clustering stuff) ], ## [ ## case "${enableval}" in ## yes) tribe=true ;; ## no) tribe=false ;; ## *) AC_MSG_ERROR([bad value ${enableval} for --enable-tribe]) ;; ## esac ## ], [tribe=false] ## ) ## AM_CONDITIONAL(BUILD_TRIBE, test x$tribe = xtrue) ######################## blast package ##################################### AC_ARG_ENABLE(blast, [ --enable-blast build bio-informatics tools ], [ case "${enableval}" in yes) blast=true ;; no) blast=false ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-blast]) ;; esac ], [blast=false] ) AM_CONDITIONAL(BUILD_BLAST, test x$blast = xtrue) ## it would be nice if we'd be able to set ## our default -I compile option here ## AC_SUBST INCLUDES ## CPPFLAGS ### AC_SUBST(mandir) #AC_DEFINE_UNQUOTED(MANPATH, $datarootdir, [ # where to look for manual files #]) #AC_SUBST(datarootdir) # AC_DEFINE_UNQUOTED([DATA_PATH], [@prefix@/share/man], [Description]) # Checks for programs. AC_PROG_AWK AC_PROG_CC AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_RANLIB # Checks for libraries. # FIXME: Replace `main' with a function in `-lm': AC_CHECK_LIB([m], [main]) # Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS([float.h limits.h malloc.h stdlib.h string.h unistd.h]) # Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_TYPE_SIZE_T # Figure out how to build C programs using POSIX threads, and # use the variables given by acx_pthread.m4 in acinclude.m4 ACX_PTHREAD([ LIBS="$PTHREAD_LIBS $LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" CC="$PTHREAD_CC" ]) # Checks for library functions. AC_FUNC_MALLOC AC_FUNC_MEMCMP AC_FUNC_VPRINTF AC_CHECK_FUNCS([floor memset pow rint sqrt strchr strpbrk strstr]) AC_CHECK_VA_COPY # AC_CONFIG_FILES([Makefile]) AC_OUTPUT([ Makefile include/Makefile doc/Makefile testing/Makefile testing/stream/Makefile testing/blast/Makefile testing/setops/Makefile graphs/Makefile img/Makefile scripts/Makefile util/Makefile src/Makefile src/clew/Makefile src/mcl/Makefile src/gryphon/Makefile src/impala/Makefile src/shcl/Makefile src/shmcl/Makefile src/shmx/Makefile src/shmcxquery/Makefile src/shmcx/Makefile src/alien/Makefile src/alien/oxygen/Makefile src/alien/oxygen/doc/Makefile src/alien/oxygen/src/Makefile ]) mcl-12-135/THANKS0000644000402500021140000000257710071623230010211 00000000000000 Thanks to: Joost van Baal, author of the mcl build environment, for autotooling and packaging mcl. setting up and maintaining the CVS tree. regularly catching glitches in the mcl package. Anton Enright for co-implementing threading and his interest and enthousiasm for mcl. Abel Ureta-Vidal for fixes and suggestions for mcxdeblast and mcxassemble. for pointing out a functional bug due to sub-optimal loop weight assignment. for valuable feedback on using/testing MCL on huge graphs. Andreas Kahari for packaging mcl for OpenBSD and pointing out various compile warnings identifying embarassing lines of source code. Jason Stajich for contributing to the parser mcxdeblast. Jan van der Steen for sharing his useful mempool routines and for contributing the smart stuff in the zoem troff macros. Philip Lijnzaad for a useful bug report and giving advice. Rob Koopman for putting heap-selection to my attention, when I was using a less than dumb algorithm. Dinakarpandian Deendayal for fixes and suggestions for mcxdeblast and mcxassemble. Shawn Hoon, Tim Hughes for useful bug reports. Wouter Hanegraaf for making my Debian system run :) The Free Software Community for making the world a better place, software and community wise. mcl-12-135/TODO0000644000402500021140000003454711756416765010020 00000000000000 This is a very messy and svd-centric TODO. The items predominantly relate to other graph-related applications and helper applications, mostly *NOT* to mcl. if (!n_thread_l) is not the right condition: we also need to take into account -t 1 -j 0 -J 10 scenario. Need to check this in all cases. update thread code; check thread-dependent allocs. vger etc. -j 0 -J 5 does not work unless -t is something reasonable. check all dispatchgroup etc. check mcxarray. mcxrand doc check documentation, (new aephea itemize and spacing html definitions) - thread clm info; matrix is read-only, so should be possible. - speed up mcx erdos similar to mcx ctty? mcxarray -data ttt -write-data www -write-tab ttt.tab -o /dev/null -co 0 -skipr 1 -skipc 1 check dimensions / warn / diagnostic etc (labels obtained from rows by default) mcxarray quantile selection in gq() $$$ mcxarray formula mini-language clm meet read stack as clmdist $ enable stack reads with argv type input. mclxStackReadArgv -> clminfo, clmmeet will use this, except when they don't want to hold everything in memory of course. +todo____________________________________________________________________________ | general guidelines | | - code as much as possible in high-level routines, do not micro-optimize. | | do not shun matrix allocations etc. Aim for time/memory-efficient algorithms | within this context. | |____________________________________________________________________________| $$$$ unify tf(), mcxi, mcxsubs languages -> first do mcxarray mini language $$$ vector pair bi-iterator $ mcxdump restrict tab: report intersect and difference (useful sanity-check feedback for user). $ mcxload etc and sif modes; allow value on the source node. allow spaces if tabs are present. $ clm collapse - implement add mode - currently undirected graphs only ?? does mcxload work correctly with e.g. -extend-tabr and -restrict-tabc? strategy for x,y resolution in all cases? - make mcxarray available as library call with callback for pairwise vector comparison - hidden options in clm close should be part of other clm mode. - why are mclxSub and mclxChangeDomains not more alike? (physical moving of column vectors in the latter). ? matrix read on clustering (intra-edges only -- help --force-connected) $$$ enable -j 0-2 [one job takes multiple groups] fff sparse domain matrices can be mapped to canonical domains for certain operations -> keep mapping along with matrix, reinstate at output time $$$$ mcxi modality for strict domain identity / subsumption. $$ matrix compose for canonical domains: test complete vector for direct indexing. parameterize: would it help to divide target into 64K-sized chunks? - mcx erdos stepmx directed graph? $$ clmformat output format $$$ mclExpandVector / mclvKBar should use pval rather than float? $ -tf add loop transformations. #diag(max, sum, center, laplace) $ mcxi uses 'int' for integers. Why not long? $ three-level clustering, use mlminfo. - unoptimized shortest path code. - website 800px minimum. - hierarchical selection based on cluster size. - make mcx alter memclean. -imx dom.hmm.content -tf '#arcsub(), gq(10),#symmcl(2.0)' $$ some programs (diameter?, ctty?) do not work on directed graphs. detect/warn/prevent. $$ proper initialization for streamer. think e.g. of cmax_123 (extend,fail,ignore) $ mclxRead with "w" filehandle does not generate warning. $ mclxWrite with "r" filehandle does not generate warning. $ mclcm revisit coarsening. not a single scheme. $ mcxdump --write-tabc --write-tabr --dump-domc --dump-domr are all mcxsub-y and suspect. - only load connected components of size >= X; which app? mcxload mcxsubs mcx convert $ mclxReadx option to ignore loops. - mcx collect has a peculiar diameter/ctty mode with special format. -> diameter integer mode rubs with floats, right now it can at least use double. - orthomcl type transformations. BRH easy. PP & CO harder. - mcxdump option to output largest edge lists first .. - mcx query option to implement clxdo granularity. - mcx convert: split stack over multiple files. - mcx q or mcx equate -sub -equal -project et cetera (cf. mcxsubs language) f mclvUnionv semaphore $ clean up mclcm, modularize, memclean. $ clean up memory logic and matrix cache/reread/transform in alg.c. -> how much of caching is still needed? Drop some modes? -> simplify mcl/alg.c {stream:1/0} vs {cache:1/0} vs {transforms} framework. $ make mclvaDump static, unify+streamline vector dumping (+ easy macro for dumping) - stress test mcxload (further) - analyze dagginess (lattice characteristics) - mcxerdos directed mode would be interesting for wikipedia type graphs. - check mclvSelectHighest implementation with -R -S and > to >= change. ! make a vector-dump-debug routine that I am happy with. perhaps build on the one in mcxdump - adapt-local: check what it does when mcl iterands become very directed. Only before? - clxdo : $ clm lint (mcl lint options) $ mcxdump optionally do not parenthesize singletons. - visual unify of 'clm -h' and 'clm help ' in clm -h - check referenceable va_list autoconf macro. necessary on x86_64 + gcc ? - tree distance based on average node pair subtree leaf set hamming distance, IYKWIM - mcxrand -gen 1000 -add 2000 | mx/mcxdump | mx/mcxload -abc - --stream-mirror | tee ttt | cl/clm close mcxdump does not dump all nodes, so mcxload reads in a smaller domain with -123 instead of -abc, gaps (except for the last, if present!) are filled. - read in newick format - add env variable for verbosity on non-matching domains - taking submatrix with same domains, is that slow? - test mcxarray pearson, e.g. centering. default formula centers data? $ mcxdump: upper/lower; do this as -tf transformation -> requires new engine for ivp.idx access. $ mcxdump skeleton does not work for cat format, as body is not read/skipped. $ localized inflation: is dissipation the best measure? $ elaborate ENQUIRE_ON_FAIL $ clm info implement clceil for flat clusterings $ compare mlmfifofum and clmframe ?$ mcxdump: --dump-rlines, --dump-lines no-empty option. ? ../mclcm small.mci --dispatch -write stack -b2 "" -- "-if 2 -I 2" (check) $ standalone generator of shadow matrices mcx x?x $ transform to add diagonals in diamonds. (lattice application). $$$ true tree representation $ integrate skeleton read with matrix read .. ? restructure read code? $ cleverer read routines (domainequatinglywise): {stack,tab,io}.h - can scatter distance be fixed? - try to cut back size of impala library - unify select routines. - logical line based clmformat output - move mcxrand code into library. - package enstrict domain checks nesting all in a single interface. - richer binary format (easier stats gathering) $$ readx for domain etc we can use the readDomPart code. $$ readx for nonnegative numbers -> checked io with EQT domain specifications - slink / fibonacci heap single link clustering / skip lists $$ make the mclcm coarsening/shadowing step much more pluggable - optimum spanning tree - annotate map matrices in matrix header, validate at IO time ? use MCLXICFLAGS to specify dump-type behaviour? $ fix mclvMap (error checking) !?$ introduce n_alloc in mclv* ?$ template ivp with float|void* union ->val would become VAL() $ clean up taurus $ clean up matrix.h (order, redo, and document callback equipped functions) $ mclxicflags (see below) ~ extend mcxi with data structures|scripting language. ruby/lua/R. ~ general interchange s-expression type input syntax ~ framework for functions of virtual vectors (meet, join) $ prune vector.h, inline idiosyncratic stuff to place where it is used $ typedef the largest pnum type (use that rather than long) $ embed -tf functionality in read stage - in what other scenarios might we want to optimize mclvBinary? - there is currently no way to have lint without lint-k as k=0 has special meaning internally. - domain checks in clew/*.c; document/code requirements $ buffer mcl interchange input (mcxExpectNum,Integer problematic) ? internally replace tab by hash. - clean up and document tab/streamIn implementation - try to spot/frame siphoning $ look at mcxsubs rand and mcxrand behaviour. mergeable? / visualize mcl process dynamically - stress/test suite-setup @@ mcl libs do not unwind on memory errors. (culprit: vector) ### an option that does both matrix, vector and ivp transforms: include -tf -ceil-nb -knn -perturb |_____________________________________| [ sublanguagues mcxsubs val() spec at the moment takes all tf functions, including #knn. It becomes dodgy when the spec can violate data integrity by transforming the domain, e.g. tp() (because mcxsubs keeps and assumes certain state). Conceivably a scrub() directive could be interesting as well. Note that val() would better be renamed as tf(). This really begs the advent of | mcxi ops, tf() , dom() | unification. ] #ifdef IEEE_754 if (ISNAN(x) || ISNAN(r) || ISNAN(b) || ISNAN(n)) return x + r + b + n; #endif overlap -> reintroduce transient attractor systems .. ? -> when purging dag, consider node-wise [ 1 / (1+total-#-neighbours) ] cutoff. * visualize DAG. piclo - if there is no annotation in a part of the tree, what does mlmimpromptu do? !? coarsening: use efficiency as cluster->node similarity? - mcxsubs foo bar nonsense waits for STDIN; it should check specs first? ?? mcxsubs: specify by label: load a list of labels from file, or read from command line. $$ mcxrand noise interface is cumbersome. ? report n_cls, n_cls - n_meet for both. d mcxdump write-tabc write-tabr d mcxdump --dump-{upper,lower}[i] - implement mcxdump --write-tabr-shadow # residue no longer adapt, s/-mvp/-o/ # clm close no longer -cc # mcxsubs fin(weed) symmetrifies the domains. (introduced weedg) - allow tab-write with empty tab - stress-test clm_split_overlap - mcx ?: reorder cluster sizes. - audit mclxSub implementation and usage, especially NULL argument passing. - mclvUpdate{Meet,Diff} speed gains are at most 25%. worth the complexity? - mlmfifofum/weave should do sth sane with loops. - b 1 matrix, mclcm; does it include the max loops? ! stress-test subreads from binary format. make this a unit test. ~ binary/ascii format: in both write number of entries. - mcxload -restrict-{nc,nr,nd}, -extend-{nc,nr,nd} for 123 format. / readx REMOVE_LOOPS, SET_LOOPS_MAX, FORCE_LOOPS, UPPER, LOWER UPPERINC LOWERINC - write ivp size in binary format and have mcxconvert report it. - CHECK -pp for clminfo and mcl have changed semantics currently. -> both should no longer use mclgMakeSparse - last taurus dependency: expand.[ch], il_levels_* - mcxerdos compute total number of paths (doable in pathmx?) - mcl + stdin + lint: set cache to yes. - some clmapp for custom contraction of matrices (testbed for different strategies) - optify assimilation. - optify mclTabHash with ON_FAIL (duplicate labels); - clxdo: introduce tag which mimics clewCastActors - clxdo: setting loops in various ways - move level_quiet to a global setting in err.[ch] - document clewCastActors transformations on input arguments. - can include libraries LFLAGS be made more finegrained? - mcx max does not work for matrices: it even moans about lt. - mcxdump: optify dumping empty vectors/lines. - clmformat: option to skip small clusters ? mclvCascade ? sum, powsum, max, min - check mclvAdd usage; can it be supplanted by mclvUpdateMeet(,,fltAdd) ? !/ force-connected=y fails with directed graphs. made quick fix I believe to work with transpose as well. ? -dir nm option to make mcl output in nm ? - is mcxassemble fully capable of doing asymmetric domains? - prune usage of ugly mcxResize. - clean up all the interface enums in io.h. some are not used. - generalize addTranspose to mclxMergeTranspose !/ remove exit's from matrix library. ! could copy util ON_ALLOC_FAILURE compile option. - convert stack code in /shmcx/stack.[ch] to generic code using callbacks. -> do better job at type handling. - perhaps remove propagation stuff from vectorUnary, -> make vectorCascade instead. audit status of source code vector.[ch] mclvReplaceIdx mcxRand ? get rid of insanely complicated weight generation. -> option to throw away diagonal entirely or add diagonal (but mcxi can already do it). mclxAddto (changed to accommodate domains) mclxCatVectors (new) - can we establish a way to incorporate a-priori information into mcl, i.e. the clustering must respect a coarse a priori partitioning. this can be done by using the induced subgraphs, but is it possible to consider intra-cluster edges during the mcl process, while ensuring a consistent subclustering, in an elegant way? - mcxload -123-rmax: extend options: -123-cmax fail | ignore | extend -235-cmax -235-rmax (not yet implemented)> - orthology big matrix + species annotation. best reciprocal hits: mutual 1-nn, {species A, species B} - wise putatitve paralogs: s(a,b) > max s(a,x) && s(a,b) > max(b,x) co-orthologs: for BRH .. V verify/document mcx query action on sparsely encoded graphs. include nav.html in all sec_ sections; get rid of javascript. ? binary read: 1) encode version of mcl encode nr of matrix entries or matrix encoding size in header; use this to do sanity check on reads. perhaps also try to stat file and get its size. - mcx query mcx alter - do not crash on non-graph input. - separate graph from arbitrary matrix cases and support all. - easy subselection based on sub-tab files. Possibly exists already. Improve interface / clean-up / make robust /document ? -list option in mcxsubs; should be subset of -tab option. - mcxi maxto, minto operators. - #knn acts on graph, other #modes as well. Can they crash on 2-way domains? more checks and documentation. mcl-12-135/include/0000777000402500021140000000000011756465226011016 500000000000000mcl-12-135/include/include.am0000644000402500021140000000055111754270727012673 00000000000000## $Id: include.am,v 1.7 2006-10-19 12:50:41 flux Exp $ ## vim:syntax=automake ## ## Makefile.am snippet, included in all Makefile.am's in src/ INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir) LDADD = ../mcl/libmcl.a ../clew/libclew.a ../gryphon/libgryphon.a ../impala/libimpala.a ../../util/libutil.a AM_LDFLAGS = -lm # AM_LDFLAGS = -lm -lunwind -ltcmalloc mcl-12-135/include/Makefile.in0000644000402500021140000004003511754271036012771 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ # $Id: Makefile.am,v 1.2 2002/05/27 08:21:45 flux Exp $ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = include DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = . EXTRA_DIST = include.am all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu include/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am check: check-recursive all-am: Makefile installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic ctags \ ctags-recursive distclean distclean-generic distclean-tags \ distdir dvi dvi-am html html-am info info-am install \ install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ installdirs-am maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ tags-recursive uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/include/Makefile.am0000644000402500021140000000013507474366231012763 00000000000000# $Id: Makefile.am,v 1.2 2002/05/27 08:21:45 flux Exp $ SUBDIRS = . EXTRA_DIST = include.am mcl-12-135/ChangeLog0000644000402500021140000021125411756465217011066 00000000000000 Mon May 21 2012 * mcl-12-135 released. * mcx ctty was sped up by trimming the implementation of Brandes' algorithm. * A new transform was added: #n(). Use e.g. as #n(20). This takes the top N (20 in this cases) neighbours for each node by edge (arc) weight. All selected arcs will be converted to (bidirectional) edges. The existing #knn() transform has an identical selection stage, but then removes all arcs for which the reciprocal arc was not selected. * mcx query has a new mode -vary-n utilising the nearest neighbour transform described above. Thu, 8 Mar 2012 * mcl-12-068 released. * Stopgap release to fix a segmentation fault. Triggered in abc mode due to absent initialisation of new SIF functionality. Now fixed. * mcxrand has a new -pa / mode. This uses the standard preferential attachment model to randomly generate a scale-free network. Wed, 7 Dec 2011 * mcl-11-335 released. * For a long time now MCL has shipped with many siblings in what is intended to be a coherent set of network analysis tools. What this collection has lacked is some way of refering to it without creating confusion. This void is now filled, and MCL-edge is the new name. The unadorned name MCL will not go away, and the source code will still be shipped using a name of the format mcl-YY-DDD. * mcxload can now read SIF (Simple Interaction File) format with -sif . The second column (relationship type) is ignored. To ensure that an undirected graph is read, use the --stream-mirror option. * mcxdump can now output SIF format with -dump-sif . The argument indicates the, yes, relationship type. * mcl can now read SIF format with the --sif option. With this option, the input file is assumed to be in SIF format. * mcl can now read etc format with the --etc option. This is similar to SIF format except that the second column, identifying the relationship type, is dropped. * mcx query now can read label format in its default mode. Not yet in other modes. * 'efficiency' criterion added to mcx query -vary-threshold, -vary-knn, et cetera. * minor fix in clm enstrict; on some occassions it would not clean up empty clusters left by the removal of overlap. Fri, 20 Jul 2010 * mcl-10-201 released. * The speed of the clustering program mcl was improved. It now utilises vanilla matrix/vector multiplication where this is faster than sparse matrix/vector multiplication. It chooses between an O(k^2 + N) algorithm with very low hidden constant and an O(k^2) algorithm with significantly higher hidden constant, using the algorithm with least expected run-time. Here k is a constant that bounds the number of resources allocated to a node in the graph. * The speed optimization code acquired a more logical option for adjustment (-sparse) with a sane default setting that should work satisfactorily across a wide range of graphs. * The memory management code for vectors and sets was improved to work better under malloc implementations that do not cope well with high memory churn and large shrinking realloc requests. * mcx query acquired --edges, --edges-sorted, and -edges-hist options. They respectively output an unsorted list, sorted list, and histogram of edge weights. Despite 'edges' being part of the names of these option, the output contains a weight for each arc. For undirected graphs each edge will be represented twice. * mcx query acquired --output-table option. With -vary-threshold or --vary-correlation the output will be a tab-separated table with row names and without key. * Got rid of the version tag (i.e. 1.008). It never acquired any meaning. * Documentation was fixed and upated. Fri, 28 May 2010 * mcl-10-148 released. * mcl has become faster. It chooses between different matrix/vector multiplication algorithms depending on the sparsity level of the vector. * mcx erdos now works for directed graph, requiring the option --is-directed. * clm adjust has a new option --force-connected. If the input clustering does not induce connected subgraphs a subclustering is output that does have that property. * mcx clcf has been parallelized and now accepts -t option. * All -knn and -ceil-nb command line options are gone. The functionality is still available in a more general fashion as new modes to the -tf transformation option. As an example, '-knn 40' is now specified as -tf '#knn(40)'. This is more general since the k-NN transformation can be one among a list of transformations, where the user is free to choose and order. * All -tf style options allow new modes: #max() make a graph symmetric using max #min() make a graph symmetric using min #add() make a graph symmetric using add #arcmax() reduce two arcs to one arc using max $arcsub() compute G[->] - G[<-] #arcmcl() cluster a directed graph with inflation #tug() perturb edge weights to break ties (uses neighbourhood information) #shrug() perturb edge weights to break ties (randomly) #mcl() cluster an undirected graph with inflation #knn() reduce graph using k-Nearest-Neighbour selection #ceilnb() reduce graph using ceil-nb selection #tp() replace graph/matrix by inverse relationship #step() replace graph by -step relation #thread() set thread count for parallelizable transformations (e.g. #knn) Modes that start with the octothorpe (#) operate on entire graphs/matrices. Other modes, e.g. ceil(), lt(), add(), operate on edges. * A bug in clm enstrict was removed. * clm dist has a new mode --index, in which it outputs the Rand index, the adjusted (Hubert Arabie) Rand index, and the Jaccard index. * Esoteric options and logging code were removed from mcl, to improve readability and maintainability of its source. * mcx clcf, mcx diameter, and mcx ctty all output column headers. mcx collect by default expects column headers. mcx --paste concatenates rows from different tables, requiring that the first column is identical. * mcx query --node-attr outputs a table of network node attributes. * mcx diameter, mcx ctty, mcx clcf, and mcxarray all accept the same parallelization interface. Jobs can split over multiple threads as well as over multiple machines. The latter is done by the concept of 'thread group'. - Use -t to specify the number of threads. mcxarray -t 4 will run with 4 threads. - Use -J to specify the number of groups/machines to use, use -j to specify the group index. It is important that all jobs use the same -t value, as all jobs assume all other jobs use the same number while figuring out which tasks they should run. The collection of tasks will only be consistent if the jobs work from the same number of threads and the same number of groups. In the future different jobs will be able to run different numbers of threads by having multiple group IDs. mcxarray: machine 1: mcxarray -t 3 -J 4 -j 0 -o d0.cor machine 2: mcxarray -t 3 -J 4 -j 1 -o d1.cor machine 3: mcxarray -t 3 -J 4 -j 2 -o d2.cor machine 4: mcxarray -t 3 -J 4 -j 3 -o d3.cor mcx collect -o result.cor d0.cor d1.cor d2.cor d3.cor This last command combines the partial results and writes to the file called result.cor . mcx diameter/ctty: machine 1: mcx diameter -t 8 -J 4 -j 0 -o d0.diam machine 2: mcx diameter -t 8 -J 4 -j 1 -o d1.diam machine 3: mcx diameter -t 8 -J 4 -j 2 -o d2.diam machine 4: mcx diameter -t 8 -J 4 -j 3 -o d3.diam mcx collect --two-column -o result.diameter d0.diam d1.diam d2.diam d3.diam - The previous -start and -end options to mcx ctty and mcx diameter have been removed. - By default mcx collect expects matrix arguments. The two-column output generated by mcx diameter/ctty should be specified using the mcx collect --two-column option. * mcxarray has seen many changes and improvements. - It can use multiple cores. It uses pthreads and accepts the option -t to specify that threads/cores should be used. - It only accepts tab characters as separators. Spaces no longer work. - Parse errors are pinpointed precisely within the input file. - It can handle missing data. Missing data is introduced either by 'NA' or 'NaN' or 'inf' values in the tabular data, or by an empty column. When computing correlations, rows are only compared on those positions where neither of them has missing data. - It has a new option --zero-as-na. With this, zeroes are treated as NA (not available/applicable), and during the calculation of correlations vectors are only considered on positions where neither is NA. This works for modes --pearson (default) and --spearman. This mode has very specialized uses. One example is when the input is constructed using mcxload and read in mcxarray with -imx. In this case missing data cannot be specified as 'NA' or empty columns, so other means are necessary. * clm order should write an output tree in its default mode, but it did not. Now fixed. * mcxdump --dump-table would err for graphs with sparse domains. Now fixed. * mcx query has mode -vary-knn, to analyse different levels of knn-selection (k-Nearest-Neighbours). * Code clean-up: the taurus library for integer set manipulation was finally discarded. * A bug in the mcxi max and min operators was fixed, and both max and min can now operate on matrices. Wed, 04 Nov 2009 * mcl-09-308 released. * The mcl cluster interpretation function did not deal correctly with graphs that were encoded in gappy representations. Fixed. This would not have been an issue for normal mcl usage, as mcl itself never constructs such graphs (e.g. from label input). * The 'q' mode to mcx (invoked as 'mcx q') has been renamed as 'mcx query'. The new mode --vary-correlation triggers analysis of a correlation graph at a series of thresholds, e.g. the number of connected components, statistics (median, average, iqr) on node degrees and edge weights, and a graph plotting the log(k) / log(#nodes of degree >=k) R^2 value (high for scale-free-ish networks). * mcl has had many not-so-interesting options removed or hidden. * mcl has a new option, -knn-mutual . This considers the best neighbours for each node, then only keeps edges that occur in both best-neighbour lists for the two incident nodes. * clm has a new mode 'stable', which outputs a (possibly overlapping) clustering derived from a set of input clusterings. Each output cluster has a stability value associated with it. If it is high, it means that the output cluster occurred in some form in many of the input clusterings. Such a matrix can be dumped with inclusion of the stability score using the mcxdump option --dump-vlines. * clm dist has new option --chain and --sort. The first causes only consecutive comparisons to be made, the second sorts the clusterings in order of (descending) granularity. * If automatic naming of output files is employed (by not using the -o option), mcl will only use the trailing part of the input file name. Output will accordingly be written in the current directory, rather than the directory in which the input file resides, as was previously the case. The latter behaviour can be obtained by using the new unary --d option. * clm order and mcxarray have received polishing and upgrades. - mcxarray now preserves negative correlations and makes them available for later transformation (i.e. either discarding or absolute value replacement). - clm order finally outputs sensible output, namely a clustering ordered in a manner consistent with the received set of nesting clusterings, with largest clusters first, recursively, starting from the coarsest clustering. It is possible to halt this procedure at any level in the hierarchy using the new -level option. - clm order used to accept just a cluster hierarchy (such as produced by mclcm or simple concatenating of cluster files). It now accepts multiple separate clusterings as well, and one can even mix hierarchies and clusterings all at the same time. * The mcxplotlines.R script shipped with mcl has been improved and can display a coarse experiment ordering (derived from clustering experiments rather than probes) such as provided by 'clm order' on the expression plots. The script should be regarded as a template for further customization, although it does accept a number of parameters. The expression plots now plot expression for all probes in a given cluster, as well as the median value of expression of all probes across a given experiment. It is possible to let mcxplotlines.R handle a secondary coarser clustering encoded by 'clm order'. The script will group together information for the clusters within each supercluster, and plot the medians of expression for all the subclusters as well as the median of expression across the supercluster. * mcx alter and mcxarray have both acquired the -tf option common in several other programs. Use this option to transform values; e.g. mcxarray -data t.expr -co 0.7 -tf 'abs(),add(-0.7)' -o t.mci takes expression data, computes the pearson correlation coefficient, takes values >= 0.7 and <= -0.7, takes the absolute value, and maps the interval [0.7-1.0] to [0-0.3]. * The mcl options --adapt-smooth and --adapt-local have been turned to no-ops. The implementation of these experimental options was not sufficiently supported and not sufficiently elegant. * Fixed a bug in mcxload, where mcxload -etc-ai would consistently crash. Fri, 18 Sep 2009 * mcl-09-261 released. * And a bug it did have (cf entry Wed 12 Jul 2009). When a resulting clustering contains overlap, mcl tries to split off the overlapping part. However, since the last release it has been doing this in a botched way, causing erratic results. Bug reported by Tao Yue, now fixed. * The mcxarray --transpose option now transposes the input data matrix, rather than the result matrix, and -write-tab finds and writes the correct labels in the presence of --transpose. Bugs were reported by Jose Afonso Guerra Assuncao. The mcxarray --teartp option has been removed. * Added -resource flag to mcl. Throughout the process, each node will only keep track of at most neighbours. Use -ceil-nb if you want to reduce the input graph in the same manner. Wed, 12 Jul 2009 * mcl-09-182 released. * Lint modes have been removed from mcl. Linting can now be achieved using 'clm adjust'. * Analysis modes (and lint modes, now removed) would crash when combined with --abc. Bug reported by David MacIver, now fixed. * The interpretation routines were rewritten to be more compact and at a somewhat higher-level of expressiveness, and should accordingly be more understandable, maintainable, and extensible. They might have new bugs too. * mcl and 'mcx alter' and 'mcx erdos' have acquired the option -ceil-nb to remove edges of lowest weight from highly connected nodes. * volatility measures reported by 'clm dist' were wrong. Fixed. * changed clm dist output to key=value format. * 'mcx erdos' can now read label input with the -abc option. * Added -ceil-nb (cap neighbours) option to remove edges with lowest weight from nodes with more than edges. Consider it a poor man's hub removal. Edges are removed in both directions, starting with nodes that have the most neighbours and going down the list. This option should help in obtaining more balanced clusterings. It reduces the impact of sticky (having many neighbours) nodes, which generally have the effect of pulling in many nodes, contributing to large clusters. Breaking up those clusters otherwise requires increased inflation, which increases cluster granularity throughout the entire graph. The -ceil-nb option encodes a localized approach that should take the stick out of sticky nodes. * The output format of 'mcx erdos' was streamlined to some extent. It is now in a pseudo s-expression syntax. mcx erdos can also read label input with the customary -abc option. In interactive mode it is possible to transform a graph in various ways, and additionally, to reread the graph from file. * Option -pp (simple pre-pruning mode) has been removed seeing that -ceil-nb should do a better job. * mcx has a new mode, 'alter'. Currently supports -ceil-nb similar as above. Fri, 07 Nov 2008 * mcl-08-312 released (fixes bug in mcxdeblast). * Fixed a bug in mcxdeblast, reported by Zhenxiang Xi. * clm and mcx have acquired a help mode, for example clm help info will invoke the manual page for the info mode. It is fully equivalent to 'man clminfo'. All the modes that have a manual page are listed if mcx or clm is invoked without arguments. This does require that the manual pages are installed either in a directory listed in MANPATH or in a standard location known to the 'man' program. * Both mcx ctty (betweenness centrality) and mcx diameter can be run in multiple threads with the -t option. In addition, the computation can be split among different machines (each machine optionally running multiple threads). The correct result is obtained by adding the partial results of all the distributed runs, using 'mcx collect' (for diameter subsequently, the maximum has to be taken over the resulting values). This implies that mcx ctty and mcx diameter can now be sped up arbitrarily by increasing the computation resources. Example: HOST1: mcx ctty -imx graph.mci -t 4 -start 0 -end 1000 > graph.ctty1 HOST2: mcx ctty -imx graph.mci -t 4 -start 1000 -end 2000 > graph.ctty2 HOST3: mcx ctty -imx graph.mci -t 4 -start 2000 -end 3000 > graph.ctty3 HOST4: mcx ctty -imx graph.mci -t 4 -start 3000 -end 4000 > graph.ctty4 mcx collect graph.ctty1 graph.ctty2 graph.ctty3 graph.ctty3 > graph.CTTY * clm close has new modes of output: The number of components, and the list of component sizes. * clm close accepts label type input with the -abc option similar to mcx diameter, mcx ctty, mcx clcf and others. * Added reference to Ulrik Brandes' paper on centrality betweenness update algorithm. * fixed bug in mcxdump that causes --dump-upper, --dump-upperi, --dump-lower, and --dump-loweri to be ignored. * A small R script called mcxplotlines.R was added to the scripts directory. Use it to visualize per-cluster expression profiles for clusterings of networks derived from expression data. * mcxdump in newick mode has a modality to output singleton labels without enclosing parentheses; -newick S. * The layer responsible for handling label input (including the format where each line consists of LABEL1 LABEL2 WEIGHT) was rewritten. It is now in a more maintainable state, although work still needs to be done. Thu, 05 Jun 2008 * mcl-08-057 released. - mcxarray reads in gene expression data in table format and converts it to an mcl input graph. - mcl now uses a simplified way of adding loops to the input graph. The loop edge weight for a node is now set to the maximum of the weights of edges connecting the node to its neighbours. This may cause small changes in clustering results. These changes should generally be of the same (small) magnitude as changes resulting from perturbing the input data (edge weights). - Added a program to compute, in various modes, for each node its clustering coefficient, its eccentricity, and its betweenness centrality. Also, to compute the diameter of a graph (i.e. the maximum eccentricity): mcx clcf, mcx diameter, and mcx ctty. - The number of applications has decreased substantially. See below. - The mcl suite is moving towards a wider focus on general purpose large scale graph utilities, with the emphasis so far on basic measures and transformations. * mcx diameter compute diameter * mcx ctty compute centrality * mcx clcf compute clustering coefficient * mcx erdos compute shortest paths * mcxrand randomly shuffle, add, create, perturb edges * mclcm hierarchical clustering with mcl * clm dist compute cluster distance * clm meet compute maximal joint subclustering * clm close compute (subgraph) connected components * ... and more. * mcxi (formerly mcx) basic matrix operations The binaries installed are mcl mcxarray mcxrand clmformat mclcm mcxassemble mcxsubs clm mcxdump mcx mcxload mcxi mcxmap The scripts installed are mclpipeline, along with mcxdeblast and mclblastline if configure was instructed with --enable-blast. Currently all programs in the mcl suite use one of the three prefixes "mcl", "mcx", or "clm". - first basic support for tree structures in the library. - new --shadow-vl mcl preprocessing option. - new mcl logging framework. - speed ups in many applications. - binary format can now be streamed over STDOUT/STDIN. * Added mclcm, which implements hierarchical clustering with mcl. It supports several modes: contraction progress from fine to coarse subcluster progress from coarse to fine dispatch compute and combine different * The mcl option --shadow-vl aids in creating well-balanced hierarchies by adding dummy (shadow) nodes to a graph, which throttles flow between denser and sparser parts. This prevents rapid absorption of sparse parts by dense parts. Possibly useful in standalone mode as well. * New experimental mcl options --adapt-local and --adapt-smooth. They adapt inflation according to local density characteristics of the input graph. * The number of applications has decreased substantially. Most of the clm**** applications are now dispatched by the new program clm, and most of the mcx**** applications are now dispatched by the program mcx: clm MODE clm encapsulates dist order vol mate meet imac info close residue mcx MODE mcx encapsulates convert clcf diameter Use clm dist [options] clm order [options] mcx convert [options] et cetera. The functionality formerly in mcx is now offered by mcxi. * Interchange format now uses scientific notation except within a limited range around zero (by using the fprintf %g conversion specifier). This makes interchange format less lossy. * binary format can now be streamed over STDOUT/STDIN. implying very fast and lossless communication between mcl programs. Binary format is lossless compared to interchange format in that the text representations used by the latter are currently not garantueed to result in the exact same value when read back. * Lots of optimization work on graph and set related operations. Many operations have been sped up for canonical matrices. These speed ups do not affect mcl itself. Sped up: clmclose. * mcl verbosity output is now largely controlled by a new logging framework. Use the -q option or set environment variable TINGEA_LOG_TAG. Use -q x -V all to thoroughly silence mcl. * mcl emits more graph and cluster-related quantities in its progress/log output. * mcxarray: It can now read flat-file array files with the -data option. + Skipping leading rows and leading columns is supported (-skipr/-skipc). missing data is not yet supported. + Labels can be written to a tab file * Renamed -cache-graph, -cache-graphx, -cache-tab to -write-graph, -write-graphx, -write-tab. This is to avoid terminological confusion with the process-level caching sometimes employed by mcl within a single run to accomodate postprocessing. Similarly the mcxload -cache-xxx options were all renamed to -write-xxx. * mcl is accessible as a C library call. It is very undocumented and lacking is an interface to build up a matrix. There are not yet convenient installation tools. * mcxdump by default read from STDIN and -imx is no longer required. * Fixed bug in mcxassemble where it would crash when presented with a corrupted format. * Added -lint-k and -lint-l options. Either will reread the input matrix and do postprocessing on the clustering, reallocating nodes that seem to have siphoned the wrong way. When applied to networks with inhomogenously distributed edge density characteristics the mcl process will sometimes cause smaller clusters/sparse areas to suck in border nodes which 1) have only few edges to that cluster/area and 2) seem to have been sucked out of a much denser cluster into which they would fit beautifully. This is fully in line with the flow characteristics of mcl but a largely unwanted phenomenon. The postprocessing steps were added to remedy this. -lint-l considers all nodes in clusters of size not exceeding and optionally moves them to a larger cluster. Each node is considered separately. -lint-k will try to have small clusters (up to a given size k) assimilated in their entirety by a larger cluster if a suitable suitor can be found. * Fixed bug in mcxload -etc -etc-ai functionality. Singletons would cause mayhem. * The code underlying the analysis framework was largely reimplemented and reorganized. * --keep-overlap=y/n was removed and replaced by -overlap , remove being the default as before. The split mode is new and causes all maximally consistent overlapping fragments to be put in new clusters. This mode is used in mclcm to cover theoretical fringe cases. * If label data is tab-separated labels may contain spaces. The code switches to tab-separated values if it finds a tab in the input. * Fixed bug in label loading where transformed values set to zero were kept. * Changed default output format in clminfo. * GRATUITOUS. Bumped the gratuitous version tag to 1.007. Mon, 27 Feb 2006 * mcl-06-058 released. * Added scripts/minimcl, a 200-line fully functional mcl implementation in perl. It only accepts label input and has no parameters except inflation. The implementation is hash-based rather than array, which may or may not leverage sparseness properties. Sat, 21 Jan 2006 * mcl-06-021 released. * This release flushes some work before embarking on a big mcxsubs overwrite. Analysis and cache modes have been improved. * mcxsubs excepts path() top-level spec. It sets the domain to all nodes participating in all shortest path between all members of (the comma-separated) . * mcxsubs now works by default on the nil matrix. This makes it easy to create domain templates with mcxsubs, e.g. mcxsubs 'dom(cr, i(2,3,4))' creates an empty matrix on the specified domains. * mcxsubs did not recognize --from-disk and 'ext(disc())' specifications cannot be combined and would dereference a NULL pointer. Fixed. * Fixed weed-related bug in mcxsubs (removing rows/columns). * Cleaned up the postprocess/analysis/caching frameworks. Exceptions, limitations, and user-second-guessing were removed. By default mcl does not append the log (it used to do this *sometimes*). * Analysis modes try to read a cached graph if it exists. * Added -cache-graphx . This caches a graph after transformations have been applied. * Caching of the input graphs is now done before matrix transformations have been applied, but necessarily after stream transformations (if any) have been applied in case input is streamed. * Added -etc option to mcxload to load simple graphs from label-data in a line-based format. Use -etc-ai to load matrices for which the column labels are not specified (e.g. clusterings). mcxload will autoincrement the columns. * Fixed some documentation errors; inserted -abc-tf, --abc-log and --abc-neg-log where -stream-tf, --stream-log and --stream-neg-log were erroneously used. * Added rand() transformation (the -tf and -abc-tf options). Selects each matrix entry with probability . * mcl now prints a helpful reminder to cite the appropriate reference. * Added configure-time check for void* val = (void*) unsigned_number idiom used by the stream interface. Thu 17 Nov 2005 * mcl-05-321 released. * Focus: uniform transformation syntax accross programs, improved documentation, especially mcxio. Previous 'ascii' format is now called interchange format throughout the documentation. * mcl accepts the -abc-tf option to transform the input stream and the -tf option to transform the input matrix (either constructed from a stream with --abc or directly read from a stream). -abc-tf 'pow(2), ceil(200), gt(20)' This squares everything in the input stream, then truncates everything larger than 200 to 200, and removes anything less than or equal to 20. There are two special transform cases that appear as separate options. --abc-log --abc-neg-log indicate that as the first thing to do the log or negative logarirthm should be taken. The reason is that probability scores can get quite low and are best represented as doubles (64 bit values); however mcl's internal floating point representation is by default float (32 bit values). This means that blast clustering can be done from columnar format like this: grep -v '^#' hsfsp.cblast |\ cut -f 1,2,11 |\ mcl - --abc --abc-neg-log -tf 'ceil(460), gt(10)' -o - This will make a few people very happy, and bewilder the rest. For sake of completeness, ceil(460) because 1e-200 (standard BLAST p-value cut-off) corresponds to 1/e/-460.517019 where /e/ is the REAL e, namely 2.718281828. * All of - mcxsubs 'val()' - mcl -tf , -abc-tf - mcxload -tf , -stream-tf - mcxassemble -raw-tf -prm-tf -sym-tf now accept the same syntax, documented in mcxio(5). * The mcxio manual has gained two sections, one on transformation syntax, one on label input. * mcl -cache-graph saves the graph after any transformations have been applied to it. * Throughout the documentation, environment variables, and logging statements, replaced 'ascii' by 'interchange'. MCLXIOASCIIDIGITS is now MCLXIOINTERCHANGEDIGITS. bliss. There is still plenty-o-ascii in the ChangeLog below. Fri, 11 Nov 2005 * mcl-05-314 released - major new features. * GRATUITOUS. Bumped the gratuitous version tag to 1.006 - because of mcl's new label input munging abilities. * mcl can read label input. mcl --abc [options] will read a line based white-space separated label format: label1 label2 [value] The current default is to resolve repeated entries by taking the maximum of the values. --abc or --expect-abc input is expected to be in label format. --abc or --yield-abc cluster output will be done with labels. -cache-tab (assumes label input) the name of the file mcl writes the tab file too. -cache-graph (assumes label input) the name of the file mcl writes the input matrix. -strict-tab (assumes label input) makes MCL use the named tab file and die if labels are not found. -restrict-tab (assumes label input) makes MCL use the named tab file and warn if labels are not found. -extend-tab (assumes label input) makes MCL use the named tab file and extend it if labels are not found. * new utility mcxload with many custom options for reading in label data and transforming the associated numerical values, storing mappings in tab files and saving a graph in native mcl input format. * mcxdeblast acquired --abc-out to stream label input into mcl. Thu 27 Oct 2005 * mcl-05-300 released. * Added Q+A in FAQ on how to get application data into MCL format. * Changed mcxassemble to pick the maximum between repeated entries by default. * clmmate was changed to do something reasonable when presented with overlapping clusterings. * Changed mcxdeblast to put the tab file in occurrence order by default. * Fixed mcxsubs bug, introduced in last release, where selections never materialize unless one mysteriously specifies --rand-merge. * mcxsubs acquired the ext(dist(k)) spec option, where k is a number. It applies to graphs and tells to extend the graph on the current specification by including neighbours reachable in at most k steps. ext(cdisc(k)) and ext(rdisc(k)) exist as well. For example, the spec 'dom(cr, i(0-5)), ext(disc(2)), out(-)' first takes the nodes 0-5 and then adds all nodes reachable in at most 2 steps. * mcxsubs can now also read a domain from a tab file. use -tab with t() in the dom spec, e.g. dom(cr, i(0-5), t()). mcxsubs -imx small.mci -dfac 0.8 'out(-)' will now randomly select about 80 percent of the domains. * mcxdump acquired the -sep-lead option to change the col-rowlist separator. The -sep option was renamed to -sep-field. * mcxdump can now also be used to restrict tab files. mcxdump -imx matrix-file -tab tab-file --dump-tabc mcxdump -imx matrix-file -tab tab-file --dump-tabr The first will output the restriction of the input tab file to the matrix column domain. The second will do the same for the row domain. Thu, 29 Sep 2005 * mcl-05-272 released * sanitized clmimac, its analysis mode for detecting DAG structure in iterands is now functional. * mcl now accepts '-dump lines' to dump simple line-based pairs format. With '-dump cat' it will dump all items to the same stream. The name for the stream is then taken as the argument to the -o option, rather than derived from '-ds dump-stem' option. The -dump option now will simply look for substring occurrences of its known targets in the argument string. An example is the incarnation below. -dump ite,lines,cat -o - -di all will dump all iterands and the result clustering to stdout in a line based format. * fixed bug in mcxassemble/impala; mclsMap{Cols,Rows} would not work due to wrongly set mclpAR->n_ivps. * moved dump code from mcxdump to IO library. * In clmdist and its manual page, replaced erroneous mention of Jacquard index by Mirkin metric or edge hamming distance. * mcl would not correctly read vectors specified in multiple places, now fixed. * mclblastline has changed. By default it now only creates a line-based tab-separated dump file. This means that by default it is not necessary to have zoem installed. zoem *will* be invoked when the --fmt-fancy option is supplied. * mcxdeblast can read from STDIN by setting the filename to '-'. * mcxdeblasts now acts on --score=r as the documentation promises. * clmformat now accepts the --fancy option on top of the -dump option: it will do fancy output as well as dump output. * clmformat will no longer by default output performance measures in dump mode. Use --dump-measures to obtain them. * added grok option to clxdo, to obtain clmformat's node stickiness and cluster cohesion matrices. * mcl accepts the --unchecked option, after which it will omit consistency checks on the input matrix. See below. * Setting the environment variable MCLXIOUNCHECKED causes consistency checks to be skipped during matrix input read. This will speed up applications, but they will likely crash when confronted with nonconforming input. Only use with very large matrices in binary format and when in a hurry. * added scripts/perllib/mcl/matrix.pm for reading/writing/manipulating matrices from perl. It's simple and will not expand into something grand. Thu, 28 Apr 2005 * mcl-05-118 released * fixed matrix read speed problem. Reading a matrix went from O(N^2) to O(E) where E is the number of edges (and N the number of nodes). * mcxassemble accepts --write-binary option to force binary format. * mcxdump now accepts --no-loops and --force-loops options. * Tweaked binary matrix read routine a bit - optimized full reads. * GRATUITOUS. Bumped the gratuitous version tag to 1.005 - because of the input read speed up. Wed, 6 Apr 2005 * mcl-05-096 released * [Joost] added clmorder.azm * Updated mclfamily and mclindex documentation to mention clmclose and clmorder. Thu, 31 Mar 2005 * mcl-05-090 released. * Added options to MCL for dumping submatrices during iteration. Submatrices are, for now, extended principals, that is, all matrix entries for which either the row or the column index hits the specified domain. -dump-subi Specify simple index list -dump-subd Specify index list via union of domains -dump-dom Domain matrix file * Added --abc option to mcxdeblast for per-line ID1 ID2 SCORE format. * Significant clean-up of the matrix IO library. * Large rewrite of mcxsubs. It now takes a sane(r) and more extendible language for submatrix specifications. Its implementation is far less hideous than it used to be. * mcxsubs has --block and --blockc options for taking respectively a block diagonal matrix or its complement. Also, --skin for doing manipulations on domains only, and --extend for computing extended submatrices. * Added -ax option to MCL, which prints the suffix MCL uses to construct the output file name. This is useful in scripts that depend on MCL to create unique (and convenient) filenames. Such as clxcoarse. * Added util scripts clxcoarse and clxdo. clxcoarse will currently do 2-level and 3-level clusterings. clxdo is meant to automate simple tasks. It currently is able to - give a granularity count of (presumably) a cluster file. - test whether a graph/matrix is undirected/symmetric. Both accept the -h option. Not yet installed, copy them if needed. * Replaced setenv in src/impala/io.c by putenv. The latter is POSIX, the former is not. This caused compilation errors on (some) Solaris systems. * Added clmorder which, given a set of input clusterings, computes an ordering that tries to put nodes that share many clusters over the different clusters nearby, and puts nodes in larger clusters earlier in the ordering. It is presumed that the clusterings are successive subclusterings, but it need not be strictly the case - clmorder will convert the input clusterings to a strictly nested sequence. Not yet installed, copy them if needed. Not yet documented. * mcxmap has new --mapi --cmapi --rmapi options to facilitate use of inverted maps. * mcxmap can map tab files with the -tab option. * Added -my-scheme option to mcl for subtly better default output naming capacities. Read the manual for what that means. * Added --lazy-tab to clmformat. Tue, 9 Nov 2004 * mcl-04-314 released, minor fixes. * Some documentation fixes for blast scripts. * Added automatic naming of dumped files. * In automatic output naming, scheme value was not correctly incorporated (off by one error). Mon, 6 Sep 2004 * stopgap release: mcl-04-250 * mclpipeline/mclblastine used stale mcl options (-do log). Fixed. * Moved doc directory one level higher. * Removed shtest directory. * Moved graph directory one level higher. * Rewrote mcx option parsing, GNU-style now accepted. Tue, 17 Aug 2004 * mcl-04-230 released. * Fixed bug in the interpretation function. In rare cases (where an attractor systems had cardinality exceeding one) it would split a cluster. * Fixed some very dumb and slack code in the library. 100-fold speed increase in mcxsubs block extraction - the slack-bugs (slugs?) where *that* slack. Sped up applications doing much vector calculus by replacing cute initializer-callback-equipped mcxNAlloc invocations with plain mcxAlloc. * Fixed mcxdeblast bug surfacing in the combination of --m9 and --tab= options. * 64-bit compatibility testing and auditing. Not exhaustive. * Moved doc directory one level higher. * Signal mcl! Premature exit of the main iteration (and mcl) can be enforced by sending mcl the ALRM signal. It will interpret the last iterand as a clustering. This can be useful in the extremely rare case where an input graph contains the 3x3 flip-flop state as a subgraph (after centering, notably). I recently encountered this when clustering a very sparse homology graph (to arrive at orthology) using -c 4. * Tentative addition to option parsing. GNU-style equivalence of --I=3 and -I 3. Horrors! mcl foo.mci --I=3 --scheme=6 --te=8 thus works. On trial. * Immediately after it has finished a run, mcl can optionally reread the input graph, and generate performance characteristics for the graph/clustering pair. It can also check whether all clusters correspond to connected components in the input graph. * Removed the ugly -do and -dont options. Use Option Default Previous --force-connected=X 0 (new) --check-connected=X 0 (new) --keep-overlap=X 0 -do keep-overlap --append-log=X 1 -do write-log --show-log=X 0 -do show-log --analyze=X 0 -do clm Where X can be any string in 1/y/Y/0/n/N/1. * Added clmclose, for retrieving connected components from a graph, and for testing whether the domains in a cluster file or domain file correspond to connected components in a given graph. * --apropos output looks better. Wed, 7 Jul 2004 * mcl-04-189 released. * Tim Hughes found a bug in mcxassemble, arising from an embarassing typo in the underlying library code - fixed. * Joost van Baal pointed out some issues with the LICENSE. It has been reworded to nicely ask scientists to behave properly. Sat, 3 Jul 2004 * mcl-04-185 released. Mainly fixes for small glitches and documentation updates, and the new general purpose application mcxdump for dumping matrix/tab file combinations. Nothing breathtaking. * Added mcxdump, to do a wider range of dump chores (than clmformat already does). * mcl --apropos now dumps one-line descriptions of *all* options, even the very obscure and never-use-them options. This option will propagate to all siblings in the near future, as a result of a rewrite of the option-parsing module. * Updated THANKS; Enter Andreas Kahari (OpenBSD port, compile warnings), Jason Stajich (mcxdeblast work), and Tim Hughes (bug reports). * Applied mcxdeblast patchlet by Jason Stajich to support parsing WU-BLAST format. * Fixed a bug in the zoem macro definition file output by clmformat, reported by Tim Hughes. * The mcxdeblast --m9 option now actually works with the ncbi blast -m 9 option (i.e. skip comments lines). * Fixed several documentation glitches spotted by Joost van Baal. * Added (somewhat terse and makeshift) remarks on the role of zoem in mclpipeline/mclblastline manuals, after Joost pointed out that the mclblastline/mclpipeline zoem dependency (via clmformat) was not well documented. Tue, 22 Jun 2004 * mcl-04-174 released. * Integrated Jason Stajich's tabular blast format parser. Restructured mcxdeblast to a great extent. Use --m9 to expect tabular BLAST format. With mclblastline, use --blast-m9. * mcxdeblast had its default settings changed to resemble those of tribemcl. * mclblastline explicitly uses the mcxassemble '-r max' option; it can be be overruled e.g. by issuing --ass-r=add. * clmformat.zmm: Get rid of spurious braces, update special rules to pass evaluation. * NOTE mclpipeline was streamlined. All mcl-related options now start with --mcl, e.g. --mcl-I=3.0, --mcl-scheme=6, etc. Consult the manual pages if needed. All format-related options start with --fmt, all assembly related options start with --ass. Any of the --mcl, --ass, --fmt options not recognized by mclpipeline will simply be stripped of the prefix and passed on to the corresponding program. To use the clmformat --dump-pairs option (which is not in the mclpipeline/mclblastline manual) with mclpipeline, use --fmt--dump-pairs. * clmformat acquired the --dump-pairs option, for dumping one cluster/node pair per single line. * mcxsubs syntax accepts 3%5 syntax, implying the list 3,8,13,18 and so on. The syntax can be repeated, e.g. 3%5,6%13 . Use this for quickly thinning out a matrix. mcxsubs also acquired the options -dfac -cfac -rfac --rand-discard --rand-merge --rand-intersect --rand-exclusive for randomizing subdomain selection, and --spec-cols --spec-rows --spec-doms for omitting the final restriction to subdomains of the input matrix. Refer to the manual page for more information. Then, the --reread option was renamed --from-disk. * More jury grades! Wed, 14 Apr 2004 * mcl-04-105 released. * Bumped the gratuitous version tag to 1.004. It has been a long time since the previous release and much work has been done. - clmformat has gotten a pretty zoem face - native binary format was revived and integrated into mcxsubs (making it orders of magnitudes faster if binary format is used) - the MCL IO library has seen a lot of work - the underlying utility libraries have seen much work as well - a bug in the loop weight assignment spotted by Abel Ureta-Vidal was fixed - the mcl '-v clusters' verbosity option is new - so is the '-dump dag' option - mcxsubs now supports simultaneous extraction of (possibly overlapping) blocks - the environment variables MCLXASCIIDIGITS, MCLXIOVERBOSITY, MCLXIOFORMAT, and MCLXASCIIFLAGS have arrived - mcxarray documentation finally got written - and various other fixes for glitches went in, thanks to Joost van Baal for some of those * Revived binary format. Reading matrices is roughly 30 times faster in binary format. For an average MCL run, this may result in a 10% gain in speed or more. Treat with care; binary format is not portable across some subcollection of processors/compilers/filesystems. Both binary and ascii input now support reading subgraphs directly from disk, which is foremost important for mcxsubs. * mcxsubs is now *much* faster if applied to binary format and the --reread option is used. The speed gain may be 400-fold. * Big rewrite of clmformat. All the formatting code was taken out, and clmformat now outputs logical formatting statements. These are in the zoem language, so for using clmformat one needs to install the zoem package, obtainable from http://micans.org/zoem/src/zoem-latest.tar.gz The good thing is that lay-out can now be changed by editing a single zoem macro definition file. * The default of assigning loop weights has changed. It is now set to equal the maximum weight found in the list of neighbours. The old behaviour can be regained by specifying -cma 100. NOTE The new default will, with identical inflation value and compared with the old default, result in slightly more granular (more fine-grained) clusterings. This can optionally be compensated for by increasing the inflation value a little. * The new -cma option accepts a number inbetween 0 and 100. Think of it as a fraction f expressed as a percentage. It sets the loop value to the weighted average f * ctr + (1-f) * max where ctr is the 'center' of a list of entries (the sum of entries squared divided by the squared sum of entries) and max is the maximum of that list. The loop value thus obtained is multiplied by the value given to the -c option (which stands default at 1.0). * Improved interpretation interfaces for overlapping clusterings; Added mcl '-dump dag' option, and some changes to clmimac. Use clmimac to interpret matrices obtained either with '-dump ite' or '-dump dag' as clusterings. For early mcl iterands, such clusterings may possibly contain overlap. * Added mcxarray documentation, it is now installed. * Added clmps utility, which is by default not yet installed and has no manpage yet. It outputs the body of a PostScript file. * Added '-v clusters' for reporting on intermediate clusters. However, if you are *really* interested in intermediate clusterings, you should use '-dump ite' and the clmimac application. * All mcl applications (should) respect the environment variable MCLXASCIIDIGITS, setting the number of digits after the decimal point that should be written for native ascii format. The special value -1 indicates that no value should be written at all (upon further reads the default value 1.0 will be used). This is relevant only for ascii format. * All mcl applications (should) respect the environment variable MCLXIOFORMAT, which regulates whether matrices are written in binary or ascii format. Consult the mcl manual page for how it works. * All mcl applications (should) respect the environment variable MCLXIOVERBOSITY, which regulates whether a progress bar is printed during matrix I/O. Consult the mcl manual page for how it works. * Added 'b:' tag to mcxsubs syntax for retrieving block diagonal matrix (where blocks can optionally overlap). Some groundwork in the library for enabling this. * Added two more pruning schemes; set the default scheme index to four rather than two. * Added mcl -in-gq option, for removing any edges in the input graph whose weight is below . * Fixed bug in clminfo (spotted by Abel Ureta-Vidal), causing the singleton count to be wrong sometimes. Fri, 03 Oct 2003 * mcl-03-276 released. * added clmmate manual page. Use it to find best pairs of clusters between two clusterings (use the -twins option). * fixed mcxmap functional bug. * mcxassemble and mcxdeblast were improved, including fixes and suggestions from (at different stages) Abel Ureta-Vidal and Dinakarpandian Deendayal. * The documentation now uses the zoem manual NAME macro (recently added), so that the troff output is apropos (whatis, man -k) compatible. * fixed trivial bug in mclpipeline. Tue, 02 Sep 2003 * mcl-03-245 released (mainly a maintenance release). * Fixed bug which caused mcl and siblings to crash or go haywire (exit for the wrong reaon) when presented with non-conforming input. The bug was introduced during the previous IO module rewrite that brought raw matrix format and mcxassemble. So versions >= 03-154 probably feature this bug. * Added mcxarray for creating cosine or pearson matrix from microarray data. Not yet installable, no manpage, -h gives manual. * Added speed/complexity section to mclfaq. * Fixed clmmeet, which appeared to be broken since 03-010. * Added mclgraga, a simple script for granularity gauging. Use as in clmformat -icl cluster-fu -dump - | mclgraga --range=0,10,2000 (and in other ways as well). It's not installable though and has no manpage. One has to copy it from the source distribution * Changed mclgrep to be not installable; one has to copy it from the source distribution. It has no manpage either. * clmformat has -dump , -pi , -dump-node-sep options. * clminfo has -pi , -ap (append performance measures), -ag (append granularity measurs), -do/dont options. Fri, 04 Jul 2003 * mcl-03-185 released (maintenance release). * Added mclgrep, which can grep sections from an mcl file. e.g. 'mclgrep clm foo' will display 'clm' section(s) in the file foo, if present. Handy for comparing granularity and performance characteristics. * Behold the mcl '-do clm' option; it will include performance criteria and granularity characteristics in the cluster output file. * Fixed embarassing clminfo bug (introduced in mcl-03-178). * Fixed mcx broken interactive mode (introduced in mcl-03-178). Fri, 27 Jun 2003 * mcl-03-178 released (maintenance release). * Fixed a bug causing the jury marks, the jury synopsis, and the pruning percentages to be wrong. * Added several new features, yet to be documented here (documented in the manual pages though). Look for the mcl -do and -dont options. Tue, 03 Jun 2003 * mcl-03-154 released. * Encouraged the version number up to 1.003. * Added mcxassemble, clmformat, mclpipeline, mclblastline, mcxdeblast. Removed clmconf, its functionality was assimilated by clmformat. * Added -pi option to mcl for skewing input weights. * Added automatic output naming facilities to mcl. By default (if the -o option is not used) it will write to out.fname.suf, where fname is the name of the input file, and suf is automatically constructed. The -ap and -aa options allow further customization. For example: mcl small.mci -I 3 -c 2.5 -pi 0.8 -scheme 5 will result in a file named out.small.mci.I30s5c25pi08 It is possible to obtain the file name corresponding with a given run by using the -az option. * Removed longtime deprecated -a option. * mclpipeline implements a generic pipeline implementing the stages from data file (application-specific input) until formatted output (clusters represented in terms of application-specific labels). * mclblastline implements a particular mcl pipeline tailored to BLAST files. * mcxdeblast added, for parsing BLAST files (beta version). * display results in readable form using clmformat. * Added mcxassemble, which takes as input simple raw cooccurrence data in a very free format, and turns it into mcl matrix format. Options for adding, maxing, multiplying, and discarding repeated entries as well as repeated vectors. Nodes can be relabeled by specifying a map file. This makes it easy and fast e.g. to do a one-pass Blast file parse, write the cooccurrence data and a prefered node labeling, and then construct the final matrix. The setup for transforming application-specific data into raw data is this: - Parse cooccurrence data from some external format. - Transform cooccurrence data to raw mcl data as you parse. - When done, write out required header and domain information to a separate file. The domain information can be built during the parsing stage. - Use mcxassemble to construct a valid matrix from the raw data and the header information. - Nodes can be relabeled as needed using a separate map file, which takes the form of a very thin matrix file. * mcxmap uses the new permutation/relabeling mechanism; permutations are now fully supported. * IO internals underwent major rewrite in order to support mcxassemble raw data munging and mapping functionality (in mcxmap and mcxassemble) * Vector part of impala library was made somewhat safer; new mclpAR* type for dealing with multisets of ivps. * # now acts as a comment within the (mclmatrix ... ) section, onwards from the begin keyword. * MCL should be straigthforward to compile under Wintel using Cygwin, as now verified by SvD (small fix was needed; log2 seems defined as macro under cygwin). * clean-ups in underlying util and impala libraries. * implemented -DVALUE_AS_DOUBLE and -DINDEX_AS_LONG compiler options. The first for matrix entries cq edge weights, the second for matrix indices cq node identifiers. * revamped -DRUNTIME_INTEGRITY compiler option. * clm apps now have --version option. Fri, 10 Jan 2003 * mcl-03-010 released. This is a MAJOR overhaul, with increased power in the MCL libraries and utilities. The mcl family can now deal with a much more general representation of matrices/graphs. This is detailed in several benefits listed below. There is a drawback: mcl itself is now approximately 15-20 percent slower than before (measured on not so large graphs). Some of this loss can perhaps be recouped by forthcoming changes; regardless, the benefits were deemed to far outweigh this minor performance loss. * Increased version number to 1.002. The difference between versions 1.001 and 1.002 is much larger than that between versions 1.001 and 1.002 - the version numbering scheme is very minimalistic. * mcl's input format was extended (existing graphs are still acceptable). See mcx(5) / mcxformat.html. * mcl's internals were rewritten to allow fully sparse matrix/graph representation. Formely, the nodes of a graph had to be indexed sequentially, starting at zero. This is no longer the case. mcl can now internally deal with sparsely indexed graphs. Example: | (mclheader | mcltype matrix | dimensions 12x12 | ) | (mcldoms | 11 22 33 44 55 66 77 88 99 123 456 789 $ | ) | (mclmatrix | begin | 11 22 66 77 123 $ | 22 11 33 55 $ | 33 22 44 55 $ | 44 33 88 99 456 $ | 55 22 33 77 88 $ | 66 11 123 $ | 77 11 55 123 $ | 88 44 55 99 456 $ | 99 44 88 456 789 $ | 123 11 66 77 $ | 456 44 88 99 789 $ | 789 99 456 $ | ) Besides being useful from a user-point of view, this new setup is a first step in enabling mcl for grid or cluster computing. Look at the mcx(5) / mcxformat.html page for more information. * mcl sibling programs are able to handle clusterings in which the clusters have nonconsecutive identifiers. * The low level API is now totally permissive of all kinds of domain combinations. It is up to higher levels to enforce domain identity or subsumption etc. Also, The low level API leaves it up to the caller whether a node is not represented because it is not part of the domain or whether it is not represented because it has no neighbours. It is up to the higher levels to decide. The low level API (and most of the higher level API) allows 0x0, Kx0, and 0xK matrices. mcl will happily cluster a 0x0 graph. * renamed the src/nonema directory to src/impala (permanently). renamed src/intalg to src/taurus (tentatively). * renamed mcximac to clmimac. * added mcxmap * added clmresidue * clmdist can now also compute the Jacquard index and the variance of information measure (the -mode option). Its output looks nicer and can be changed using the -parts, -digits, -width, --nolegend, and --noindex options. * The underlying library code for clminfo was thoroughly cleansed. An untraced FPEfault was reported for earlier versions; hopefully that is now gone. * mcl now accepts -sort revsize (default, large clusters first) -sort size (small clusters first) -sort lex (lexicographical ordering) -sort none (clusters as found by interpretation routine) * mcxsubs now - acts on rectangular matrices as well. - can select on value (being >=/> low and/or <=/< high). - can remap the domain of a selected matrix to range 0-N-1, for only columns, only rows, or both columns and rows. - can make the selected matrix characteristic. - can transpose the final result. - has fairly horrid looking specification strings. It can be used for removing tough nodes from a graph, where toughness is measured according to output resulting from running mcl with '-dump chr'. * fixed problem with documentation in mcl-02-277. verbatim env in html looked rotten under IE. Fri, 4 Oct 2002 * mcl-02-277 released. Mostly a maintenance release. Perhaps the extra FAQ entry is most noteworthy. Read e.g. http://micans.org/mcl/doc/mclfaq.html#checksymmetry A new release featuring support for removal/projection of tough nodes is in the pipeline. That release will be more interesting. * Added faq {How do I check that my graph/matrix is symmetric/undirected?} Please do check this people! * Several additions and fixes in the util library, nothing much affecting mcl. * Added field to '-dump chr' output (loop value before rescaling). * Removed unnecessary 'thou shalt not have values < 0' commandment. * Some small doc additions. Fri, 21 Jun 2002 * mcl-02-172 released. * Fixed --log output format error. * Some autotools fixes, and some changes in documentation generation (immaterial for mcl users). * [Joost] configure.ac.in: added AM_MAINTAINER_MODE: by default, don't rebuild e.g. Makefile.in from Makefile.am. Default users are not maintainers. Thu, 30 May 2002 * mcl-02-150 released. * Applied valgrind to mcl, and fixed all memory leaks thus found. Standard computation paths are clean (if no errors). Inserted several clean-up routines. * Retrofitted this file to include version 02-095. * [Joost] Added acinclude.m4, including acx_pthread.m4 by Steven G. Johnson and Alejandro Forero Cuervo, so that we'll build out-of-the-box on systems like Tru64Unix/OSF1 which need special compiler flags when dealing with pthread stuff. Thanks to Martin Mokrejs for reporting the bug. * Fixed bug present in version 02-095 and 02-116, caused by the computation of the average of inhomogeneity over all vectors and a very buggy mclVectorMaxValue -- it removes all zero entries from vectors. Bug, reported by Martin Mokrejs, manifested itself when inhomogeneity was exactly zero for all vectors, * Compiled mcl with checkergcc, and tested a few computation paths. No errors found. * [Anton] Updated tribe software after bug report by Maring Mokrejs. * [Joost] Separated Zoem from mcl, modularized util and separated it as well. It is still tacked on in the distribution though. * [Joost] Enabled --enable-tribe, the tribe module written by Anton Enright. * [Anton] Inserted tribe software. * Removed -dump att option, added more general -dump chr option. Fri, 26 Apr 2002 * mcl-02-116 released, bumped version number to 1.001. * Added mcximac utility for interpreting MCL iterands as clusterings. * Automated versioning; documents and --version sensitive apps now generate consistent date and version tags. Fri, 05 Apr 2002 * mcl-02-095 released. * Added mclfaq document (supported in html, roff, ps). * Added --log option to mcl, appends a log section to the clustering output. MUST-DO for large graphs. It is not a default because I don't want to scare new users. This option works with --expand-only as well. Logging includes information on kept mass, vector footprints, recoveries, selections, and time taken by expansion. * -nw, -nl, -nj, --log, --show-log, -how-much-ram, --jury-charter are new. * Added extensive window monitoring of mass averages for the worst k instances, k=1,2,5,10,20,50 .. 20000, 50000. * The mcl -h output is now less frightening, or so I hope. * Added 'jury synopsis' remark classifying the pruning quality. It is meant as indication only. Pruning quality is now measured in the following flavours: perfect exceptional superior excellent good acceptable mediocre poor bad lousy miserable awful wretched atrocious * Streamlined command line parsing a lot, using new util/opt.[ch]. Separated parsing from validation; the framework should be usable for setting parameters when calling mcl parts from code. * Modularized the mcl code a lot. It is now close to being usable as shared object code with all the command-line functionality still accessible. moved the lion's part of shmcl/mcl.c to mcl/alg.c. Created mcl/alg.[ch], mcl/proc.[ch], mcl/procinit.[ch] mcl/inflate.[ch], mcl/expand.[ch], removed mcl/params.[ch] mcl/mcl.[ch]. shmcl/mcl.c looks acceptable again. * Added util/opt.[ch] util/err.[ch] mcl/init.[ch], added mcxHashMerge to util/hash.[ch], streamlined error messages in terms of mcxErr, mcxWarn, mcxTell. * Rewrote the mcl manual page so that all pruning-related options are now in a separate section. * Documented existing --dense and --thick flags (unlikely you need them though). * Cleaned up html documentation a lot. It should now look good in most browsers. Moved from
to * Began first ever so slight reworking of taurus. renamed Ilist to mcxIL and its 'list' member to 'L'. Terse! * Compiled zoem util mcl shmcl shcl shmcx shmx nonema with gcc -pedantic -Wall -ansi, and fixed all the nitty gritty stuff thus found, including an erroneous pthread_create argument cast and two functions whose declaration was hidden (not in the header file). Mon, 04 Mar 2002 * mcl-02-063 released. * Fixed the missing '#include ' in taurus/ilist.c, and fixed the bug caused by #defining TRUE and FALSE without checking whether they were previously defined. Wed, 27 Feb 2002 * mcl-02-058 released. * Mcl-related changes are all updates in the documentation, plus small changes in the underlying 'util' library. No functional changes. * Zoem has changed significantly since the previous release. It needs to be separated from mcl. (zoem is the tool with which mcl documentation is generated). Fri, 15 Feb 2002 * mcl-02-047 released. Tue, 5 Feb 2002 * mcl-02-035 released. Wed, 12 Dec 2001 * mcl-20011211 released. mcl-12-135/doc/0000777000402500021140000000000011756465223010135 500000000000000mcl-12-135/doc/mclfamily.70000644000402500021140000000631511754271043012114 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcl" 7 "14 May 2012" "mcl 12-135" "MISCELLANEOUS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mclfamily \- a description of the mcl family of cluster applications\&. \fBmcl\fP is an implementation of the Markov Cluster Algorithm, aka MCL algoritm\&. It is described in the \fBmcl manual\fP\&. Several other applications are part of the MCL distribution\&. This manual pages gives an overview\&. .SH DESCRIPTION .ZI 15m "\fBmcl(1)\fP" the cluster algorithm .in -15m .ZI 15m "\fBmclfaq(7)\fP" MCL Frequently Asked Questions .in -15m .ZI 15m "\fBmcxio(5)\fP" the network/matrix input/output format .in -15m .ZI 15m "\fBmcx(1)\fP" general network/matrix tasks .in -15m .ZI 15m "\fBmcx diameter\fP" compute diameter of an undirected network .in -15m .ZI 15m "\fBmcx ctty\fP" compute betweenness centrality .in -15m .ZI 15m "\fBmcx clcf\fP" compute clustering coefficient .in -15m .ZI 15m "\fBmcx erdos\fP" compute shortest paths in graphs .in -15m .ZI 15m "\fBmcx query\fP" analyse networks at different thresholds .in -15m .ZI 15m "\fBmcx alter\fP" apply network transformations .in -15m .ZI 15m "\fBmcx convert\fP" convert between interchange/binary storage types .in -15m .ZI 15m "\fBmcxarray(1)\fP" transform array data to MCL matrices .in -15m .ZI 15m "\fBmcxdump(1)\fP" dump a matrix optionally with label substitions .in -15m .ZI 15m "\fBmcxload(1)\fP" load label data into matrix and tab files .in -15m .ZI 15m "\fBmcxrand(1)\fP" randomly remove, add, and perturb edge weights .in -15m .ZI 15m "\fBmcxmap(1)\fP" relabel indices in a graph/matrix .in -15m .ZI 15m "\fBmcxsubs(1)\fP" extracting submatrices in various ways .in -15m .ZI 15m "\fBmcxi(1)\fP" general matrix operations .in -15m .ZI 15m "\fBmcxassemble(1)\fP" create matrices from raw data .in -15m .ZI 15m "\fBclm(1)\fP" general graph-clustering related tasks .in -15m .ZI 15m "\fBclm dist\fP" compute split/join distance between clusterings .in -15m .ZI 15m "\fBclm vol\fP" derive node volatility scores from a set of clusterings .in -15m .ZI 15m "\fBclm info\fP" compute performance measure for clusterings .in -15m .ZI 15m "\fBclm meet\fP" compute intersection of clusterings .in -15m .ZI 15m "\fBclm mate\fP" find best matching clusters between clusterings .in -15m .ZI 15m "\fBclm close\fP" fetch connected components from graphs or subgraphs .in -15m .ZI 15m "\fBclm imac\fP" interpret MCL iterand/matrix as clustering .in -15m .ZI 15m "\fBclm order\fP" reorder indices to represent blocks from different clusterings .in -15m .ZI 15m "\fBclm residue\fP" extend subgraph clustering .in -15m .ZI 15m "\fBclmformat(1)\fP" display clusters as html or txt files .in -15m .ZI 15m "\fBmclpipeline(1)\fP" parsing/assembly/clustering/display .in -15m .ZI 15m "\fBmclblastline(1)\fP \fC*\fP" BLAST pipeline .in -15m .ZI 15m "\fBmcxdeblast(1)\fP \fC*\fP" parse BLAST files .in -15m Entries marked \fC*\fP are not available if only a default install is done\&. mcl-12-135/doc/mcxload.10000644000402500021140000004600411754271045011561 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxload" 1 "14 May 2012" "mcxload 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxload \- load matrices and tab files from label format .SH SYNOPSIS \fBmcxload\fP \fB-abc\fP (\fIlabel file\fP) \fB-o\fP (\fIoutput file\fP) \fB[-abc\fP (\fIlabel file\fP)\fB]\fP \fB[-123\fP (\fIidentifier file\fP)\fB]\fP \fB[-o\fP (\fIoutput file\fP)\fB]\fP \fB[--stream-mirror\fP (\fIsymmetrify, same domain\fP)\fB]\fP \fB[--stream-split\fP (\fIassume different domains\fP)\fB]\fP \fB[-re\fP (\fIedge deduplication mode\fP)\fB]\fP \fB[-ri\fP (\fIimage symmetrification mode\fP)\fB]\fP \fB[-sif\fP (\fISIF label file\fP)\fB]\fP \fB[-etc\fP (\fI\&'etc\&' label file\fP)\fB]\fP \fB[-etc-ai\fP (\fIleaderless \&'etc\&' label file\fP)\fB]\fP \fB[--expect-values\fP (\fIexpect label:weight format\fP)\fB]\fP \fB[-235\fP (\fIleader \&'235\&' label file\fP)\fB]\fP \fB[-235-ai\fP (\fIleaderless \&'235\&' label file\fP)\fB]\fP \fB[-write-tab\fP (\fIsave domain tab\fP)\fB]\fP \fB[-write-tabc\fP (\fIsave column tab\fP)\fB]\fP \fB[-write-tabr\fP (\fIsave row tab\fP)\fB]\fP \fB[-strict-tab\fP (\fItab universe\fP)\fB]\fP \fB[-strict-tabc\fP (\fItabc universe\fP)\fB]\fP \fB[-strict-tabr\fP (\fItabr universe\fP)\fB]\fP \fB[-restrict-tab\fP (\fItab world\fP)\fB]\fP \fB[-restrict-tabc\fP (\fItabc world\fP)\fB]\fP \fB[-restrict-tabr\fP (\fItabr world\fP)\fB]\fP \fB[-extend-tab\fP (\fItab launch\fP)\fB]\fP \fB[-extend-tabc\fP (\fItabc launch\fP)\fB]\fP \fB[-extend-tabr\fP (\fItabr launch\fP)\fB]\fP \fB[-123-max\fP (\fIset domain range\fP)\fB]\fP \fB[-123-maxc\fP (\fIset column range\fP)\fB]\fP \fB[-123-maxr\fP (\fIset row range\fP)\fB]\fP \fB[--stream-log\fP (\fIlog transform stream values\fP)\fB]\fP \fB[--stream-neg-log\fP (\fInegative log transform stream values\fP)\fB]\fP \fB[--stream-neg-log10\fP (\fInegative log-10 transform stream values\fP)\fB]\fP \fB[-stream-tf\fP (\fItransform stream values\fP)\fB]\fP \fB[-tf\fP (\fItransform (not so) final matrix\fP)\fB]\fP \fB[--transpose\fP (\fItranspose\fP)\fB]\fP \fB[--write-binary\fP (\fIoutput binary format\fP)\fB]\fP \fB[--debug\fP (\fIdebug\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH GETTING STARTED .di ZV .in 0 .nf \fC mcxload --stream-mirror -abc data1\&.txt -o data1\&.mci -write-tab data1\&.tab mcxload --stream-mirror -etc data2\&.txt -o data2\&.mci -write-tab data2\&.tab mcxload --stream-mirror -sif data3\&.txt -o data3\&.mci -write-tab data3\&.tab .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR When the output should be an undirected graph it is safest to always use the \fC--stream-mirror\fP option\&. Edges are stored bidirectionally as two arcs, and this option instructs \fBmcxload\fP to ensure that both arcs are present\&. In the above examples three different types of format are read\&. In all formats, the basic unit of specification is that of an arc specified by a source node, a destination node, and optionally a weight\&. All formats are line based, with \fB-abc\fP specifying a single arc and \fB-etc\fP and \fB-sif\fP specifying multiple arcs corresponding to a shared source node\&. For \fB-abc\fP the format is .di ZV .in 0 .nf \fC [] .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The last field, specifying the arc weight, is optional\&. If not present the arc weight will be set to the default weight of 1\&.0\&. For \fB-sif\fP the format is .di ZV .in 0 .nf \fC \&.\&.\&. .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR There can be an arbitrary number of destination labels\&. The relation type field in the second column is required but will be ignored\&. As an extension it is possible to specify weights, requiring the use of the \fB--expect-values\fP option\&. Weights are specified by tagging them onto the destination label separated by a colon: .di ZV .in 0 .nf \fC : : \&.\&.\&. .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Finally, the format for the \fB-etc\fP option is the same, except that the relation type column is dropped\&. .SH DESCRIPTION \fBmcxload\fP reads label input from a file\&. The format of the file should be line-based, each line containing two white-space separated strings (labels) and optionally a number separated from the second label by whitespace\&. In the absence of a value, mcxload will use the default value 1\&.0\&. If a tab is present on an input line, mcxload will assume that the tab character is the separator for that line\&. Lines for which the first non-whitespace character is an octothorpe (\&'\fC#\fP\&') are skipped\&. \fBmcxload\fP will transform the labels into mcl numerical identifiers and the pairs of labels into graph edges or equivalently matrix entries\&. The weight of an edge is the value associated with the associated labels\&. mcxload constructs dictionaries (sometimes just one) that map labels onto mcl identifiers as it goes along\&. It can optionally write these to file\&. In MCL (family) parlance, such a dictionary written to file is called a \fItab file\fP\&. It is possible to specify numerical identifiers directly with the \fB-123\fP option\&. In this case \fBmcxload\fP assumes a canonical domain (cf \fBmcxio\fP) and will create the minimal canonical domain that supports the data\&. Also bear in mind the caveat further below\&. It is possible to effectively predeclare labels and thus enforce an a-priori known mapping of labels onto numerical identifiers\&. Labels receive an identifier in the order in which they occur in the input\&. Predeclaring labels can be achieved by having them appear in the desired order and setting the edge weight to zero\&. A major mcxload modality is whether the input refers to a single domain or to two separate domains\&. An example of the first is where labels are names of people and the value is the extent to which they like one another\&. This encodes a \fIlikability\fP graph where all the nodes represent people\&. The reasonable thing to do in this case is to create a single dictionary with all names wherever they occur\&. All \fBtab\fP options (as opposed to \fBtabc\fP and \fBtabr\fP) pertain to this scenario and likewise for the options \fB--graph\fP and \fB--stream-mirror\fP\&. An example of the second mode is where the first label is again the name of a person, the second label is the name of an animal species, and the value is the extent to which that person appreciates the species\&. In this case, the reasonable thing to do is to create two dictionaries, one for persons and one for species\&. All \fBtabc\fP and \fBtabr\fP options pertain to this scenario\&. The \fBtabc\fP options \fIalways refer to the first label\fP and the \fBtabr\fP options \fIalways refer to the second label\fP\&. The letters \fBc\fP and \fBr\fP refer to \fIcolumn\fP and \fIrow\fP respectively\&. The latter are the names of the matrix domains corresponding to the input domains\&. Refer to \fBmcxio(5)\fP\&. A further mcxload modality is whether it constructs dictionaries on the fly, or whether it proceeds from a tab file already available\&. By default mcxload will construct dictionaries on the fly\&. You need to save them with the appropriate \fB-write\fP option(s)\&. All the \fBstrict\fP options read a tab file and require any labels in the \fB-abc\fP\ \&\fIlabel input\fP to be present in the corresponding tab file\&. mcxload will then fail in the face of absent labels\&. All the \fBrestrict\fP options simply ignore labels that are not found in the corresponding tab file\&. The \fBextend\fP options extend the existing tab file with labels that are not found\&. It presumably only makes sense to do so if the corresponding \fB-write\fP options are used as well\&. The input stream is deduplicated on a per-node neighbourhood basis using the \fB-re\fP option\&. mcxload has a few options to transform or select based on the values in the input stream and the values in the constructed matrix\&. These are \fB--stream-log\fP, \fB--stream-neg-log\fP, \fB--stream-neg-log10\fP, \fB-stream-tf\fP and \fB-tf\fP\&. Refer to \fBmcxio(5)\fP for a description of the syntax accepted by the latter two options \- it is a syntax accepted by a few more mcl siblings\&. Finally it is possible to transpose the final result using the \fB--transpose\fP option\&. Keep in mind that mcxload does not accordingly change its idea of row and column domains\&. The final matrix can be symmetrified using the \fB-ri\fP option\&. The \fB-etc\fP, \fB-235\fP and \fB-sif\fP options assume a format where all entries for a given column (or equivalently all neighbours for a given node) are joined onto a single line\&. This can be useful e\&.g\&. to read in externally generated clusterings\&. The \fB-etc\fP and \fB-sif\fP options expect label input, whereas the \fB-235\fP options expects numbers in the input that are mapped directly onto mcl numerical identifiers\&. The SIF format expected by \fB-sif\fP requires a \fIrelationship type\fP in the second field on each line; this is ignored\&. As an extension to the SIF format weights may optionally follow the labels, separated from them with a colon character\&. \fBCAVEAT\fP .br Please note that by feeding the line \&'1000000000 1\&' to \fBmcxload\fP with either of the \fB-235\fP or \fB-123\fP options it will try to allocate a matrix with one billion columns\&. This is most likely not what is wanted\&. Assuming that the input contains fewer than one billion unique labels, one should use the label options as described above and below\&. \fBSTAGES\fP .br Conceptually, input matrix creation consists of the following stages .ZJ 2m 2m "i" Read the input stream, apply \fB-stream-tf\fP transformation specification, and optionally push reverse elements (\fB--stream-mirror\fP)\&. .in -4m .ZJ 2m 2m "ii" Deduplicate edges in the context of all edges/arcs originating from a given node according to the \fB-re\fP option\&. .in -4m .ZJ 2m 2m "iii" Apply transpose symmetrification according to the \fB-ri\fP option, if used\&. .in -4m .ZJ 2m 2m "iv" Apply \fB-tf\fP transformation specification\&. .in -4m .SH OPTIONS .ZI 2m "\fB-abc\fP (\fIlabel file\fP)" \& .br The file to read label data from\&. Labels are separated by white-space\&. The labels may optionally be followed by a value (again separated by white-space), which is taken as the edge weight between the nodes corresponding with the labels\&. If a tab is present on an input line it is presumed to be the separator for that line, including the value if present\&. Lines for which the first non-blank character is the octothorpe (\&'\fC#\fP\&') are skipped\&. .in -2m .ZI 2m "\fB-123\fP (\fIidentifier file\fP)" \& .br The file to read numerical data from\&. The format is the same as for label data, but the identifiers are directly mapped onto mcl identifiers as described earlier\&. .in -2m .ZI 2m "\fB-o\fP (\fIoutput file\fP)" \& .br The output file where the constructed matrix is written\&. .in -2m .ZI 2m "\fB--stream-mirror\fP (\fIsymmetrify, same domain\fP)" \& .br Whenever \fIlabel1\fP \fIlabel2\fP \fIvalue\fP is encountered in the input, mcxload inserts \fIlabel2\fP \fIlabel1\fP \fIvalue\fP in the input stream as well\&. This option implies that both labels belong to the same domain\&. .in -2m .ZI 2m "\fB--stream-split\fP (\fIassume different domains\fP)" \& .br This tells mcxload that the two labels belong to different domains\&. The program will create two tab files, one for columns and one for rows\&. This can be used for example to create a logical mapping of gene identifiers to species identifiers\&. .in -2m .ZI 2m "\fB-re\fP (\fIdeduplication mode\fP)" \& .br This specifies how mcxload should collapse repeated entries, that is edges for which a value is specified multiple times\&. This is done relative to a single node at a time, taking into account all neighbours assembled from the input stream\&. Note that \fB--stream-mirror\fP will result in duplicated entries if the input contains edge specifications in both ways\&. Also note that \fBfirst\fP and \fBlast\fP might not result in symmetric input if only \fB--stream-mirror\fP is used\&. .in -2m .ZI 2m "\fB-write-tab\fP (\fIsave domain tab\fP)" \& .br Write the domain to file\&. It applies to both label types\&. .in -2m .ZI 2m "\fB-write-tabc\fP (\fIsave column tab\fP)" \& .br Write the column domain to file\&. It applies to the first label found on each input line\&. .in -2m .ZI 2m "\fB-write-tabr\fP (\fIsave row tab\fP)" \& .br Write the column domain to file\&. It applies to the second label found on each input line\&. .in -2m .ZI 2m "\fB-strict-tab\fP (\fItab universe\fP)" \& .br Read a dictionary from file and require each label to be present in the dictionary\&. mcxload will exit on absentees\&. .in -2m .ZI 2m "\fB-strict-tabc\fP (\fItabc universe\fP)" \& .br Read a dictionary from file and require the first label on each line to be present in the dictionary\&. mcxload will exit on absentees\&. .in -2m .ZI 2m "\fB-strict-tabr\fP (\fItabr universe\fP)" \& .br Read a dictionary from file and require the second label on each line to be present in the dictionary\&. mcxload will exit on absentees\&. .in -2m .ZI 2m "\fB-restrict-tab\fP (\fItab world\fP)" \& .br Read a dictionary from file and only accept input lines (edges) for which both labels are present in the dictionary\&. mcxload will ignore absentees\&. .in -2m .ZI 2m "\fB-restrict-tabc\fP (\fItabc world\fP)" \& .br Read a dictionary from file and ignore input lines for which the first label is absent from the dictionary\&. .in -2m .ZI 2m "\fB-restrict-tabr\fP (\fItabr world\fP)" \& .br Read a dictionary from file and ignore input lines for which the second label is absent from the dictionary\&. .in -2m .ZI 2m "\fB-extend-tab\fP (\fItab launch\fP)" \& .br Read a dictionary from file and extend it with any label from the input not yet present in the dictionary\&. .in -2m .ZI 2m "\fB-extend-tabc\fP (\fItabc launch\fP)" \& .br Read a dictionary from file and extend it with all first labels from the input not yet present in the dictionary\&. .in -2m .ZI 2m "\fB-extend-tabr\fP (\fItabr launch\fP)" \& .br Read a dictionary from file and extend it with all second labels from the input not yet present in the dictionary\&. .in -2m .ZI 2m "\fB-123-max\fP (\fIset domain range\fP)" \& .br Numbers starting from \fI\fP will be ignored, and the domain (used for both columns and rows) will range from zero up to one less than \fI\fP\&. .in -2m .ZI 2m "\fB-123-maxc\fP (\fIset column range\fP)" \& .br Numbers starting from \fI\fP will be ignored in the column domain, and the column domain will range from zero up to one less than \fI\fP\&. .in -2m .ZI 2m "\fB-123-maxr\fP (\fIset row range\fP)" \& .br Numbers starting from \fI\fP will be ignored in the row domain, and the row domain will range from zero up to one less than \fI\fP\&. .in -2m .ZI 2m "\fB--stream-log\fP (\fIlog transform stream values\fP)" \& .br Replace each entry by its natural logarithm\&. .in -2m .ZI 2m "\fB--stream-neg-log\fP (\fInegative log transform stream values\fP)" \& 'in -2m .ZI 2m "\fB--stream-neg-log10\fP (\fInegative log-10 transform stream values\fP)" \& 'in -2m 'in +2m \& .br Replace each entry by the negative of its natural logarithm and log-10 representation, respectively\&. This is for example useful to convert scores that denote probabilities or p-values such as BLAST scores\&. .in -2m .ZI 2m "\fB-stream-tf\fP (\fItransform stream values\fP)" \& .br Transform the stream values as they are read in according to the syntax described in \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB-tf\fP (\fItransform (not so) final matrix\fP)" \& .br Transform the matrix values after deduplication and symmetrification according to the syntax described in \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB-ri\fP (\fI\fP)" \& .br After the initial matrix has been assembled, it can be symmetrified by either of these options\&. They indicate the operation used to combine the entries of the transposed matrix and the original matrix\&. \fBmul\fP is special in that it treats missing entries (which are normally considered zero in mcl matrix operations) as one\&. .in -2m .ZI 2m "\fB--transpose\fP (\fItranspose\fP)" \& .br Write the transposed matrix to file\&. This is obviously not useful when a symmetric matrix has been generated\&. .in -2m .ZI 2m "\fB-etc\fP (\fI\&'etc\&' label file\fP)" \& 'in -2m .ZI 2m "\fB-etc-ai\fP (\fIleaderless \&'etc\&' label file\fP)" \& 'in -2m .ZI 2m "\fB-235\fP (\fI\&'235\&' label file\fP)" \& 'in -2m .ZI 2m "\fB-235-ai\fP (\fIleaderless \&'235\&' label file\fP)" \& 'in -2m .ZI 2m "\fB-sif\fP (\fISIF label file\fP)" \& 'in -2m .ZI 2m "\fB--expect-values\fP (\fIexpect label:weight format\fP)" \& 'in -2m 'in +2m \& .br The input is read in lines; each line is split on whitespace into labels\&. For \fB-etc\fP the first label is interpreted as the source node\&. All other labels are interpreted as destination nodes\&. Weights may optionally follow the labels, separated from them with a colon character\&. It is in this case necessary to use the \fB--expect-values\fP option\&. The SIF (Simple Interaction File) format expected by \fB-sif\fP is similar except that it contains an additional field\&. In this format the second column denotes the \fIrelationship type\fP\&. It is ignored by \fBmcxload\fP\&. For \fB-etc-ai\fP (\fIauto-increment\fP) all labels are interpreted as destination nodes and mcxload automatically creates a source node for each line it reads\&. This option can be useful to read in files encoding a clustering, where each line represents a cluster of white-space separated labels\&. The \fB-235\fP options are similar except that the input is not interpreted as labels but must consist of numbers that explicitly specify the matrix to be built\&. .in -2m .ZI 2m "\fB--write-binary\fP (\fIoutput binary format\fP)" \& .br The output matrix is written in native binary format \- refer to \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB--debug\fP (\fIdebug\fP)" \& .br Among other things, this turns on warnings when \fBrestrict\fP tab files are used and labels are found to be missing\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmcxio(5)\fP, \fBmcxdump(1)\fP, \fBmcl(1)\fP, \fBmclfaq(7)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmresidue.10000644000402500021140000000532111754271042012260 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm residue" 1 "14 May 2012" "clm residue 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm residue \- extend clustering of subgraph to clustering of graph\&. clmresidue is not in actual fact a program\&. This manual page documents the behaviour and options of the clm program when invoked in mode \fIresidue\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP are accessible in all \fBclm\fP modes\&. They are described in the \fBclm\fP manual page\&. .SH SYNOPSIS \fBclm residue\fP \fB-icl\fP fname (\fIinput clustering\fP) \fB-imx\fP fname (\fIinput graph\fP) \fB[-rpm\fP fname (\fIresidue projection matrix\fP)\fB]\fP \fB[-o\fP fname (\fIoutput clustering file\fP)\fB]\fP .SH DESCRIPTION The cluster file presumably contains a clustering of a subgraph of the graph\ \&\fCG\fP contained by the matrix file, implying that the row domain of that clustering is a subset of the node domain of the graph\&. \fBclm residue\fP will compute a simple upwards projection of that clustering, resulting in a clustering of\ \&\fCG\fP\&. .SH OPTIONS .ZI 2m "\fB-imx\fP fname (\fIinput graph\fP)" \& .br .in -2m .ZI 2m "\fB-icl\fP fname (\fIinput clustering\fP)" \& .br .in -2m .ZI 2m "\fB-rpm\fP fname (\fIresidue projection matrix\fP)" \& .br The name for the file in which the residue projection matrix is stored\&. It contains for each node and for each cluster in the input clustering the combined weight of the (edges to the) neighbours of that node in that cluster\&. The default output file name is \fCout\&.rpm\fP\&. .in -2m .ZI 2m "\fB-o\fP fname (\fIoutput clustering file\fP)" \& .br The name for the file in which the majority vote projection clustering is stored\&. Aka the majority vote projection clustering storage file name\&. This embodies a very crude approach to distributing the missing nodes in the input clustering onto that same cluster\&. For each node, the cluster is taken for which the residue projection is the largest (see above)\&. The residue (i\&.e\&. the set of missing nodes) is initially viewed as a cluster; the set of nodes for which the projection is largest for the residue itself will form a new cluster, if it is not empty\&. By default output is sent to STDOUT\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcxio.html0000644000402500021140000010334711754271045012061 00000000000000 The mcl matrix format specification

14 May 2012    mcxio 12-135

NAME

mcxio — the format specifications for input and output in the mcl family.

DESCRIPTION

The primary objects in the MCL network analysis suite are graphs and clusterings. Graphs can be directed and may have loops. Both graphs and clusterings are represented in a general unified format. This format specifies two domains (a source domain and a destination domain), along with lists of arcs linking pairs of elements from the two domains. For graphs the two domains are simply both equal to the graph node domain, whereas for clusterings one domain is the graph node domain and the other corresponds to the enumeration of clusters. Undirected graphs are a special instance of a directed graph, where an edge from the undirected graph is represented by two arcs of identical weight, one for each possible direction.

The general unified format alluded to above is in fact a simple rectangular sparse matrix representation. Sparse means that zero entries in the matrix are not stored. A zero entry corresponds to an ordered node pair in the graph for which no arc exists from the first to the second node. An undirected graph corresponds with a symmetric matrix.

The MCL suite uses a slight generalisation of the matrix concept, in that the row and column indices (that is, domains) can be arbitrary lists of nonnegative integers. Usually, but not necessarily, a domain of size N will use the common representation of the list of integers starting at 0 and ending at  N-1. The source domain is always associated with the columns of a matrix, and the destination domain is always associated with the rows of a matrix. The matrix format, introduced below, first specifies the two domains. It then represents the nonzero matrix entries (corresponding with graph arc weights) in a column-wise fashion, as a list of lists. For each node from the source domain, it presents the list of all its neighbours in the destination domain along with the corresponding weights. This document describes

native matrix format

The format that can be read in by any mcl application expecting a matrix argument. The native format closely resembles the layout of matrices as residing in computer memory. There are two distinct encodings, respectively interchange and binary. Their relative merits are described further below.

 
concatenated native matrix format

This always pertains to matrices in native format concatenated in a single file, refered to as a cat file. It is used for example to encode hierarchical clusterings as generated by mclcm. A cat file either consists of matrices in interchange format or of matrices in binary format.

 
raw intermediate format

This is read by mcxassemble.

 
tab format

Used by applications such as mcl and mcxdump to convert between meaningful labels describing the input data and the numerical identifiers used internally.

 
label format

The format used when streaming labels directly into mcl or mcxload.

 
transformation syntax

The syntax accepted by mcl, mcxalter and many other programs to transform graphs and matrices.

The interchange format is a portable format that can be transmitted across computers and over networks and will work with any version of mcl or its sibling programs. It is documented (here) and very stable. Applications can easily create matrices in this format. The drawback of interchange format is that for very large graphs matrix encodings grow very big and are slow to read.

The binary format is not garantueed to be portable across machines or different versions of mcl or differently compiled versions of mcl. Its distinct advantage is that for very large graphs the speed advantage over interchange format is dramatic.

Conversion between the two formats is easily achieved with mcxconvert. Both mcl and mcxload can save a matrix in either format after constructing it from label input.

The concatenated format is generated e.g. by mclcm and can be transformed by mcxdump using the -imx-cat option. In cat format matrices are simply concatenated, so it is easily generated from the command line if needed. For native binary format it is imperative that no additional bytes are inserted inbetween the matrix encodings. For native interchange format the only requirement is that the last matrix is followed by nothing but white space.

A remark on the sloppy naming conventions used for mcl and its sibling utilities may be in order here. The prefix mcx is used for generic matrix functionality, the prefix clm is used for generic cluster functionaliy. The utility mcx is a general purpose interpreter for manipulating matrices (and grahps, sets, and clusterings). The set of all mcl siblings (cf. mclfamily) is loosely refered to as the mcl family, which makes use of the mcl libraries (rather than the mcx libraries). The full truth is even more horrible, as the mcl/mcx prefix conventions used in the C source code follow still other rules.

In this document, 'MCL' means 'the mcl setting' or 'the mcl family'. An MCL program is one of the programs in the mcl family. The remainder of this document contains the following sections.

Internal representation of matrices in MCL

There are several aspects to the way in which MCL represents matrices. Internally, indices never act as an ofset in an array, and neither do they participate in ofset computations. This means that they purely act as identifiers. The upshot is that matrices can be handled in which the index domains are non-sequential (more below). Thus one can work with different graphs and matrices all using subsets of the same set of indices/identifiers. This aids in combining data sets in different ways and easily comparing the respective results when experimenting. Secondly, only nonzero values (and their corresponding indices) are stored. Thirdly, MCL stores a matrix as a listing of columns. Iterating over a column is trivial; iterating over a row requires a costly transposition computation. The last two points should matter little to the user of MCL programs.

In textbook expositions and in many matrix manipulation implementations, matrices are represented with sequentially indexed rows and columns, with the indices usually starting at either zero or one. In the MCL setting, the requirement of sequentiality is dropped, and it follows naturally that no requirement is posed on the first index. The only requirement MCL poses on the indices is that they be nonnegative, and can be represented by the integer type used by MCL. On many machines, the largest allowable integer will be 2147483647.

MCL associates two domains with a matrix M, the row domain and column domain. The matrix M can only have entries M[i,j] where i is in the row domain and j is in the column domain. This is vital when specifying a matrix: it is illegal to specify an entry M[i,j] violating this condition. However, it is not necessary to specify all entries M[i,j] for all possible combinations of i and j. One needs only specify those entries for which the value is nonzero, and only nonzero values will be stored internally. In the MCL matrix format, the matrix domains must be specified explicitly if they are not canonical (more below).

Strictly as an aside, the domains primarily exist to ensure data integrity. When combining matrices with addition or multiplication (e.g. using the mcx utility), MCL will happily combine matrices for which the domains do not match, although it will usually issue a warning. Conceptually, matrices auto-expand to the dimensions required for the operation. Alternatively, a matrix can be viewed as an infinite quadrant, with the domains delimiting the parts in which nonzero entries may exist. In the future, facilities could be added to MCL (c.q. mcx) to allow for placing strict domain requirements on matrices when submitted to binary operations such as addition and multiplication.

Specifying matrices

From here on, all statements about matrices and graphs are really statements about matrices and graphs in the MCL setting. The specification of a matrix quite closely matches the internal representation.

A matrix M has two domains: the column domain and the row domain. Both simply take the form of a set (represented as an ordered list) of indices. A canonical domain is a domain of some size K where the indices are simply the first K nonnegative integers 0,1..,K-1. The domains dictate which nonzero entries are allowed to occur in a matrix; only entries M[i,j] are allowed where i is in the row domain and j is in the column domain.

The matrix M is specified in three parts, for which the second is optional. The parts are:

Header specification

This specifies the dimensions K and L of the matrix, where K is the size of the row domain, and L is the size of the column domain. It looks as follows:

(mclheader mcltype matrix dimensions 9x14 )

This dictates that a matrix will be specified for which the row domain has dimension 9 and the column domain has dimension 14.

 
Domain specification

The domain specification can have various forms: if nothing is specified, the matrix will have canonical domains and a canonical representation, similar to the representation encountered in textbooks. Alternatively, the row and column domains can each be specified separately, and it is also possible to specify only one of them; the other will simply be a canonical domain again. Finally, it is possible to declare the two domains identical and specify them simultaneously. It is perfectly legal in each case to explicitly specify a canonical domain. It is required in each case that the number of indices listed in a domain corresponds with the dimension given in the header.

An example where both a row domain and a column domain are specified:

(mclrows 100 200 300 400 500 600 700 800 900 $ ) (mclcols 30 32 34 36 38 40 42 44 46 48 50 52 56 58 $ )

This example combines with the header given above, as the dimensions fit. Had the row domain specification been omitted, the row domain would automatically be set to the integers 0,1,..8. Had the column specification been omitted, it would be set to 0,1,..13.

Suppose now that the header did specify the dimensions 10x10. Because the dimensions are identical, this raises the possibility that the domains be identical. A valid way to specify the row domain and column domain in one go is this.

(mcldoms 11 22 33 44 55 66 77 88 99 100 $ )
 
Matrix specification

The matrix specification starts with the sequence

(mclmatrix begin

The 'begin' keyword in the '(mclmatrix' part is followed by a list of listings, where the primary list ranges over all column indices in M (i.e. indices in the column domain), and where each secondary lists encodes all positive entries in the corresponding column. A secondary list (or matrix column) starts with the index c of the column, and then contains a listing of all row entries in c (these are matrix entries M[r,c] for varying r). The entry M[r,c] is specified either as 'r' or as 'r:f', where f is a float. In the first case, the entry M[r,c] defaults to 1.0, in the second case, it is set to f. The secondary list is closed with the `$' character. A full fledged examples thus looks as follows:

(mclheader mcltype matrix dimensions 12x3 ) (mclrows 11 22 33 44 55 66 77 88 99 123 456 2147483647 $ ) (mclcols 0 1 2 $ ) (mclmatrix begin 0 44 88 99 456 2147483647 $ 1 11 66 77 123 $ 2 22 33 55 $ )

Note that the column domain is canonical; its specifiation could have been omitted. In this example, no values were specified. See below for more.

Specifying graphs

A graph is simply a matrix where the row domain is the same as the column domain. Graphs should have positive entries only. Example:

(mclheader mcltype matrix dimensions 12x12 ) (mcldoms 11 22 33 44 55 66 77 88 99 123 456 2147483647 $ ) (mclmatrix begin 11 22:2 66:3.4 77:3 123:8 $ 22 11:2 33:3.8 55:8.1 $ 33 22:3.8 44:7 55:6.2 $ 44 33:7 88:5.7 99:7.0 456:3 $ 55 22:8.1 33:6.2 77:2.9 88:3.0 $ 66 11:3.4 123:5.1 $ 77 11:3 55:2.9 123:1.5 $ 88 44:5.7 55:3.0 99:3.0 456:4.2 $ 99 44:7.0 88:3.0 456:1.8 2147483647:3.9 $ 123 11:8 66:5.1 77:1.5 $ 456 44:3 88:4.2 99:1.8 2147483647:6.3 $ 2147483647 99:3.9 456:6.3 $ )

Incidentally, clustering this graph with mcl, using default parameters, yields a cluster that is represented by the 12x3 matrix shown earlier.

The following example shows the same graph, now represented on a canonical domain, and with all values implicitly set to 1.0:

(mclheader mcltype matrix dimensions 12x12 ) (mclmatrix begin 0 1 5 6 9 $ 1 0 2 4 $ 2 1 3 4 $ 3 2 7 8 10 $ 4 1 2 6 7 $ 5 0 9 $ 6 0 4 9 $ 7 3 4 8 10 $ 8 3 7 10 11 $ 9 0 5 6 $ 10 3 7 8 11 $ 11 8 10 $ )

Additional notes
There are few restrictions on the format that one might actually expect. Vectors and entries may occur in any order and need not be sorted. Repeated entries and repeated vectors are allowed but are always discarded while an error message is emitted.

If you want functionally interesting behaviour in combining repeated vectors and repeated entries, have a look at the next section and at mcxassemble.

Within the vector listing, the '#' is a token that introduces a comment until the end of line.

Raw format

A file in raw format is simply a listing of vectors without any sectioning structure. No header specification, no domain specification, and no matrix introduction syntax is used - these are supplied to the processing application by other means. The end-of-vector token '$' must still be used, and the comment token '#' is still valid. mcxassemble imports a file in raw format, creates a native matrix from the data therein, and writes the matrix to (a different) file. It allows customizable behaviour in how to combine repeated entries and repeated vectors. This is typically used in the following procedure. A) Do a one-pass-parse on some external cooccurrence file/format, generate raw data during the parse and write it to file (without needing to build a huge data structure in memory). B) mcxassemble takes the raw data and assembles it according to instruction into a native mcl matrix.

Tab format / label information

Several mcl programs accept options such as -tab, -tabc, -tabr, -use-tab, -strict-tab, and -extend-tab. The argument to these options is invariably the name of a so-called tab file. Tab files are used to convert between labels (describing entities in the data) and indices as used in the mcl matrix format. In a tab file each line starts with a unique number which presumably corresponds to an index used in a matrix file. The rest of the line contains a descriptive string associated with the number. It is required that each string is unique, although not all mcl programs enforce this at the time of writing. The string may contain spaces. Lines starting with # are considered comment and are disregarded.

Tab domain
The ordered set of indices found in the tab file is called the tab domain.

Tab files are almost always employed in conjunction with an mcl matrix file. mcxdump and clmformat require by default that the tab domain coincides with the matrix domain (either row or column or both) to which they will be applied. This can be relaxed for either by supplying the --lazy-tab option.

mcl provides explicit modes for dealing with tab structures by means of the -extend-tab, -restrict-tab and -strict-tab options. Refer to the mcl documentation.

Label input

Label input is a line based input where two nodes and an optional value are specified on each line. The nodes should be specified by labels. If the labels contain spaces they should be separated by tabs (and the value if present should be separated from the second label by a tab as well). The parse code will assume tab-separated labels if it sees a tab character in the input, otherwise it will split the input on any kind of whitespace. Any line where the first non-whitespace character is the octothorp (#) is ignored. The following is an example of label input.

---8<------8<------8<------8<------8<--- # the cat and the hat example cat hat 0.2 hat bat 0.16 bat cat 1.0 bat bit 0.125 bit fit 0.25 fit hit 0.5 hit bit 0.16 --->8------>8------>8------>8------>8---

mcl can read in label input and cluster it when it is given the --abc option. It can optionally save the input graph in native format and save the label information in a tab file with the -save-graph and -save-tab options.

Refer to the MCL getting started and MCL manual examples sections for more information on how MCL deals with label input.

mcxload is a general purpose program for reading in label data and other stream formats. It encodes them in native mcl format and tab files. It allows intermediate transformations on the values.

Transformation syntax

mcl, mcxload, mcxsubs, mcxassemble and mcxalter all accept the same transformation language in their respective tf-type options and mcxsub's val specification.

A statement in this language is simply a comma-separated list of functions accepting a single numerical value. The syntax of a function invocation in general is func(arg). The functions exp, log, neglog can also be given an empty parameter list, indicating that e is taken as the exponent base. In this case, the invocation looks like func(). Functions with names that start with # operate on graphs in their entirety. For example, #knn(50) indicates the k-Nearest Neighbour transformation for k=50. All other names encode functions that operate directly on edges. Functions with names that start with #arc operate on directed graphs and yield directed graphs. Most of the other # functions either expect an undirected graph (such as #knn()) or yield an undirected graph (such as #add() and #max(). The following are supported.

lt
Filter out values greater than or equal to arg.
lq
Filter out values greater than arg.
gq
Filter out values less than arg.
gt
Filter out values less than or equal to arg.
ceil
Set everything higher than arg to arg.
floor
Set everything lower than arg to arg.
mul
Multiply by arg.
add
Add arg to it.
power
Raise to power arg.
exp
Raise arg (e if omitted) to value.
log
Take log in base arg (e if omitted).
neglog
Take minus log in base arg (e if omitted).
#knn
k-Nearest Neighbour reduction with k=arg.
#ceilnb
Cap neighbours at arg at most.
#mcl
Cluster with inflation=arg, use induced graph.
#add
Convert two arcs to one edge using addition.
#min
Convert two arcs to one edge using minimum.
#max
Convert two arcs to one edge using maximum.
#mul
Convert two arcs to one edge using multiplication.
#rev
Encode graph in reverse direction.
#tp
Same as above in matrix speak (transpose).
#tug
Perturb edge weights with factor arg.
#shrug
Randomly perturb edge weights with factor arg.
#step
Use the k-step relation, where k=arg.
#thread
Set thread pool size to arg.
#arcmax
Only keep largest arc between two nodes.
#arcsub
Replace G by G - G^T.
#arcmcl
As #mcl, use symmetrised graph for clustering.

NOTE
mcl accepts --abc-neg-log and --abc-neg-log10 to specify log transformations. Similarly, mcxload accepts --stream-log, --stream-neg-log, and --stream-neg-log10. The reason is that probabilities are sometimes encoded below the precision dictated by the IEEE (32 bit) float specification. This poses a problem as the mcl applications encode values by default as floats, and the transformation specifications are always applied to the mcl encoding. The options just mentioned are applied after a value has been read from an input stream and before it is converted to the native encoding.

SEE ALSO

mcxassemble, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

AUTHOR

Stijn van Dongen.

mcl-12-135/doc/mcxsubs.10000644000402500021140000004641111754271045011620 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxsubs" 1 "14 May 2012" "mcxsubs 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxsubs \- extract submatrices (subgraphs) of a matrix (graph)\&. \fBmcxsubs\fP can be used to inspect local cluster structure in a graph, for example by looking at the subgraph induced by a single cluster or a couple of clusterings, or the edge set where all tail nodes are from a set of domains and all head nodes are from the complement of this set, and many other variants and refinements\&. Additionally, mcxsubs enables .ZI 2m "\(bu" selecting matrix entries based on value\&. .in -2m .ZI 2m "\(bu" making the result characteristic (set all nonzero values to 1\&.0)\&. .in -2m .ZI 2m "\(bu" pruning empty columns and empty rows\&. .in -2m .ZI 2m "\(bu" transposing the result\&. .in -2m .ZI 2m "\(bu" remapping the indices of the result to consecutive indices\&. .in -2m .ZI 2m "\(bu" and other miscellaneous operations\&. .in -2m .SH SYNOPSIS \fBmcxsubs\fP \fB-imx\fP [options] + \fBmcxsubs\fP \fB-imx\fP (\fIinput matrix\fP) \fB[-dom\fP (\fIdomain matrix\fP)\fB]\fP \fB[-tf\fP spec (\fIapply tf-spec to input matrix\fP)\fB]\fP \fB[--block\fP (\fIuse block matrix\fP)\fB]\fP \fB[--blockc\fP (\fIuse complement of block matrix\fP)\fB]\fP \fB[--skin-read\fP (\fIread domain structure without entries\fP)\fB]\fP \fB[--extend\fP (\fIread extended submatrices\fP)\fB]\fP \fB[-tab\fP (\fIread tab file\fP)\fB]\fP \fB[--from-disk\fP (\fIspace/speed optimizer\fP)\fB]\fP \fB[-out\fP (\fIspecial purpose output file name\fP)\fB]\fP \fB[-efac\fP (\fIrandom edge selection\fP)\fB]\fP \fB[-dfac\fP (\fIrandom domain selection\fP)\fB]\fP \fB[-rfac\fP (\fIrandom column selection\fP)\fB]\fP \fB[-cfac\fP (\fIrandom row selection\fP)\fB]\fP \fB[--rand-discard\fP (\fIremove random selections\fP)\fB]\fP \fB[--rand-merge\fP (\fImerge random selections\fP)\fB]\fP \fB[--rand-intersect\fP (\fIintersect random selections\fP)\fB]\fP \fB[--rand-exclusive\fP (\fIonly random selections\fP)\fB]\fP \fB[-tag-digits\fP k (\fIset precision\fP)\fB]\fP \fB[--tag\fP (\fItag nodes\fP)\fB]\fP + If you are a frequent \fBmcxsubs\fP user with very large graphs, consider converting the input matrix into binary format using \fBmcxconvert\fP and then using the mcxsubs \fB--from-disk\fP option\&. This should give you a 400-fold speed gain\&. .SH DESCRIPTION \fBmcxsubs\fP lets you extract submatrices/subgraphs corresponding with index sets and (possibly) sets of domains from a given domain matrix (e\&.g\&. a matrix representing a clustering)\&. Columns and rows of the target submatrix can be specified both independently and simultaneously, and can be specified as unions of simple index and domain ranges and complements of these\&. Because a submatrix or subgraph specification is composed of type, location, column, row, index, and set specifications, the word specification is abbreviated as spec\&. Multiple submatrices can be specified simultaneously\&. A submatrix is created for each submatrix spec\&. Everything encountered after the \fBmcxsubs\fP options are exhausted should be a spec\&. The syntax of specs is described in the \fBSUBMATRIX SPECIFICATIONS\fP section\&. By default, the domains of the submatrix will be set to the domains as described in the specification\&. This can be changed using the \fIuni\fP directives from the \fBfin\fP part\&. .SH OPTIONS .ZI 2m "\fB-imx\fP (\fIinput matrix\fP)" \& .br Submatrices will all be selected from the matrix in file \fC\fP\&. This option is obligatory, and throughout this manual its argument is called the \fIsource matrix\fP\&. .in -2m .ZI 2m "\fB-dom\fP (\fIdomain matrix\fP)" \& .br Submatrices are specified in terms of sets (or domains) of indices\&. These sets are specified by (the label of) the vectors from the matrix given by this options\&. .in -2m .ZI 2m "\fB--block\fP (\fIuse block matrix\fP)" \& .br This replaces the input matrix by the block diagonal matrix induced by the domain matrix specified by the \fB-dom\fP option\&. It works by including a block for each domain in the domain matrix, and will work if there are overlapping domains\&. That is, it will not include overlapping parts more than once\&. The output file name can either be specified in the submatrix specification language using the \fBout\fP(\fIfname\fP) directive, or with the \fB-out\fP option\&. .in -2m .ZI 2m "\fB--blockc\fP (\fIuse complement of block matrix\fP)" \& .br This replaces the input matrix by the complement of the block diagonal matrix described above, and selection of the output name is exactly the same\&. .in -2m .ZI 2m "\fB--skin-read\fP (\fIread domain structure without entries\fP)" \& .br This reads a skeleton matrix by only considering its domain structure and not reading any entries, pertaining to the matrix specified by the \fB-imx\fP option\&. Transform the input matrix values according to the syntax described in \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB-tab\fP (\fIread tab file\fP)" \& .br Read a tab file\&. Its domain can be used by the \fCt\fP and \fCT\fP indicators\&. .in -2m .ZI 2m "\fB--extend\fP (\fIread extended submatrices\fP)" \& .br This causes the selection of submatrices where either a row index is in the selected row domain or a columns index is in the selected column domain or both\&. Equivalently it only excludes matrix entries for which neither the column nor row index is in the selected domains\&. The resulting matrix has both domains equal to the source matrix\&. .in -2m .ZI 2m "\fB-out\fP (\fIspecial purpose output file name\fP)" \& .br This specifies an output name that can be used for special purposes\&. Normally, output file names are specified in the submatrix specification using the \fBout\fP(\fIfname\fP) directive\&. .in -2m .ZI 2m "\fB-efac\fP (\fIrandom edge selection\fP)" \& .br \fInum\fP should be inbetween zero and one\&. It denotes the probability with which each edge is selected\&. .in -2m .ZI 2m "\fB-dfac\fP (\fIrandom domain selection\fP)" \& .br \fInum\fP should be inbetween zero and one\&. It denotes the probability with which entries in the domains will make it into the randomized selection used for subsequent processing\&. By default the randomized selection is intersected with whatever the other selection criteria (if any) yield, i\&.e\&. the behaviour under the \fB--rand-intersect\fP option\&. If the column and row domain are identical, they are submitted to the same selection process and will end up identical\&. If you don\&'t want this, use \fB-rfac\fP and \fB-cfac\fP separately\&. If you just want a randomized selection, doing .di ZV .in 0 .nf \fC mcxsubs -imx foo -dfac 0\&.5 \&'out(foo\&.rnd)\&' .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR will not yield the expected result\&. Randomized selections only work if a domain has explicitly been specified\&. The minimal way to achieve this is the following: .di ZV .in 0 .nf \fC mcxsubs -imx foo -dfac 0\&.5 \&'dom(cr), out(foo\&.rnd)\&' .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .in -2m .ZI 2m "\fB-rfac\fP (\fIrandom column selection\fP)" \& .br As \fB-dfac\fP, limited to the column domain\&. .in -2m .ZI 2m "\fB-cfac\fP (\fIrandom row selection\fP)" \& .br As \fB-dfac\fP, limited to the row domain\&. .in -2m .ZI 2m "\fB--rand-merge\fP (\fImerge random selections\fP)" \& .br The random selection(s) of domains identify parts of the matrix that will be merged with the result of the main selection process (default)\&. .in -2m .ZI 2m "\fB--rand-discard\fP (\fIremove random selections\fP)" \& .br The random selection(s) of domains identify parts of the matrix that will be removed from the result of the main selection process\&. .in -2m .ZI 2m "\fB--rand-intersect\fP (\fIintersect random selections\fP)" \& .br The random selection(s) of domains identify parts of the matrix that will be intersected with the result of the main selection process\&. This is the default\&. .in -2m .ZI 2m "\fB--rand-exclusive\fP (\fIonly random selections\fP)" \& .br The random selection(s) of domains identify parts of the matrix from which the result of the main selection process will be removed\&. .in -2m .ZI 2m "\fB-tag-digits\fP k (\fIset precision\fP)" \& .br Sets the precision for tagged output\&. Setting it to \fB-tag-digits\fP\ \&\fB-1\fP disables the output of values altogether \- only the node indices and the cluster indices are written\&. .in -2m .ZI 2m "\fB--tag\fP (\fItag nodes\fP)" \& .br Each node in the column (tail node) listing of the matrix (graph) spec is tagged with the domain it is in\&. This requires the use of the \fB-dom\fP option\&. This output mode, called \fItagged matrix\fP, is currently not recognized by any of the \fBmcl\fP/\fBmcx\fP input routines\&. It is present to facilitate easier visual inspection of clustering results\&. .in -2m .ZI 2m "\fB--from-disk\fP (\fIspace/speed optimizer\fP)" \& .br Use this if the input graph is in binary format, or if the input graph is very large and the subgraph(s) to extract are small in comparison, or if the available memory does not comfortably exceed the size of the graph\&. The effect of this option is that the subgraph will be read directly from disk, without reading in the entire graph in advance\&. This will be done repeatedly for all subgraphs that are specified\&. This option reduces memory consumption to the size of the subgraph(s) to be extracted\&. For graphs in interchange format, the speed gain is not dramatic\&. If more than one subgraph is specified, there will most likely be a loss in speed\&. With input graphs in binary format, \fBmcxsubs\fP will be *very* much faster, to the extent of 400-fold speed gains\&. It does not matter whether more than one subgraph is specified\&. .in -2m .SH SUBMATRIX SPECIFICATIONS A submatrix or subgraph spec may contain a number of spec parts\&. Each part is specified in a function-style notation\&. Different parts are separated by commas\&. Parts may occur multiple times, but for most parts only the last one specified will be effective\&. The spec parts are the following: \fBdom\fP, \fBext\fP, \fBval\fP, \fBsize\fP, \fBfin\fP, and \fBout\fP\&. These are described below in the sections DOMAINS, EXTENSION, VALUES, SIZE, FINALIZE and OUTPUT\&. \fBDOMAINS\fP .br The domain part is specified as \fBdom\fP(\fIX\fP <, \fIY\fP(\fIispec\fP) >+) Here \fIX\fP is the row/column indicator\&. Rows are indicated with either \fCr\fP or \fCR\fP, columns are indicated with either \fCc\fP or \fCC\fP\&. \fIX\fP may contain one or two indicators, with a single indicator per column domain and row domain allowed\&. Uppercase indicators indicate that the complement is being specified relative to the corresponding domain in the target matrix\&. \fIY\fP is the type indicator, it is exactly one of \fCi\fP, \fCI\fP, \fCd\fP, \fCD\fP, \fCc\fP, \fCr\fP, \fCt\fP, or \fCT\fP\&. The \fCi/I\fP indicators specify that \fIispec\fP contains a simple index specifation\&. The \fCd/D\fP specify that \fIispec\fP contains domain indices\&. \fIispec\fP must contain a comma-separated list of integers or integer ranges (e\&.g\&. 2, 5, 4-8)\&. \fCc\fP and \fCr\fP are restricted indicators that refer to the domains in the \fIdomain matrix\fP\&. \fCt\fP and \fCT\fP are restricted indicators that refer to the domain encoded in the tab file as specified by the \fB-tab\fP option\&. Their usage is described further below\&. For domain specifications (\fCd/D\fP) the columns indexed by these integers in the matrix specified in the \fB-dom\fP option will be fetched and merged\&. If \fB-dom\fP was not used the target matrix itself (as specified by the \fB-imx\fP option) will be used\&. For simple specifications (\fCi/I\fP) the result is simply the list of integers itself\&. Uppercase indicators indicate that the complement is being specified\&. Examples: .ZI 2m "\fCdom(cr, i(0-6,10,11-14))\fP" \& .br Principal submatrix on indices 0-6, 10, and 11-14 \- all column and row indices are from this set\&. Equivalently, this encodes the subgraph on nodes 0-6, 10, 11-14\&. The \&'c\&' stands for column, the \&'r\&' for row, and the \&'i\&' for index\&. It is also possible to specify a \&'d\&' part (standing for domain), this is shown further below\&. .in -2m .ZI 2m "\fCdom(c, i(0-6,10,11-14)), dom(r, i(1-6,10,11-14))\fP" \& .br Equivalent (but less clear) spec of the above\&. .in -2m .ZI 2m "\fCdom(cR, i(0-6,10,11-14))\fP" \& .br Matrix with column indices in 0-6, 10, 11-14, and row indices in the complement of this set\&. Corresponds with all edges going \fIout\fP from the set 0-6, 10, 11-14\&. Complements are triggered by the use of a capital; see the next examples\&. .in -2m .ZI 2m "\fCdom(c, i(0-6,10,11-14)), dom(R, i(1-6,10,11-14))\fP" \& 'in -2m .ZI 2m "\fCdom(c, i(0-6,10,11-14)), dom(r, I(1-6,10,11-14))\fP" \& 'in -2m 'in +2m \& .br Both these examples are equivalent to the previous one\&. In the last example, the capital \&'I\&' indicates that the complement should be taken\&. In this example, \&'r\&' combined with \&'I\&' has the same effect as \&'R\&' combined with \&'i\&'\&. .in -2m .ZI 2m "\fCdom(c, d(3,5-9)), dom(r, d(8-14), i(10-30))\fP" \& .br Column indices are taken from the domains 3, 5-9 (from the domain matrix specified by \fB-dom\fP), row indices are taken from domains 8-14 plus the indices 10-30\&. .in -2m .ZI 2m "\fCdom(cR, d(0-2))\fP" \& .br Column indices are all indices from domains 0-2, row indices are all other indices\&. This gives all edges going \fIout\fP from domains 0-2\&. The use of \&'D\&' is analogous to that of \&'C\&', \&'R\&', and \&'I\&'\&. Thus, \fCD(0-3,8,21-30)\fP specifies all indices which are in the complement of the set formed by taking the union of domains 0-3,8,21-30\&. .in -2m The \fCc\fP and \fCr\fP indicators must be followed by a pair of matching parentheses\&. They specify to take respectively the column domain and the row domain of the domain matrix (cf\&. \fB-dom\fP)\&. The \fCt\fP and \fCT\fP indicators must be followed by a pair of matching parentheses\&. They specify to take the domain found in the tab file or its complement\&. As seen above, indices (either representing themselves or domains) are entered as comma-separated lists of single indices, ranges of indices (which may overlap), or staircases of indices (lists of indices with a fixed increment inbetween successive indices)\&. The union of the corresponding elements is taken and passed along\&. Before anything else, the result set is replaced by its complement if \&'I\&' is specified (for simple indices) or \&'D\&' is specified (for domains)\&. If there is both an index and a set spec string, the union of the results of both is taken and passed along\&. If the latter result is passed to either \&'C\&' or \&'R\&', it is replaced by its complement\&. A range is specified e\&.g\&. as \fC10-14\fP and it is inclusive, denoting in this case the indices \fC{10,11,12,13,14}\fP\&. \fBEXTENSION\fP .br The extension part is specified as \fBext\fP( < \fBdisc\fP(\fIk\fP) | \fBcdisc\fP(\fIk\fP) | \fBrdisc\fP(\fIk\fP) >) This option requires the input matrix to be held in memory\&. This implies it will not work with the \fB--from-disk\fP option\&. This \fIassumes that the input matrix encodes a graph\fP, so the column and row domains must be equal\&. It will take the currently selected domain (column domain for \fBdisc\fP and \fBcdisc\fP, row domain for \fBrdisc\fP), and add all nodes to it that are reachable in \fIk\fP steps\&. The \fBdisc\fP variant replaces both column and row domains by the extended domain, the other variants just change a single domain\&. Setting \fIk\fP to \fC-1\fP results in adding \fIall\fP nodes that can be reached from the start domain\&. \fBVALUES\fP .br The value part is specified as \fBval\fP() It transforms or removes values according to \fI\fP\&. Refer to \fBmcxio(5)\fP for a description of the transformation specification syntax and the available transformation primitives\&. \fBSIZE\fP .br The size part is specified as \fBsize\fP( < \fBlt\fP(\fIx\fP) | \fBceil\fP(\fIx\fP) | \fBgq\fP(\fIx\fP) | \fBrmgq\fP(\fIx\fP) > + ) Where \fIx\fP is a nonnegative integer, and multiple specifications are separated by commas\&. The strings \&'lt\&', \&'lq\&', \&'gq\&', \&'gt\&', respectively denote \fIless than\fP, \fIless than or equal to\fP, \fIgreater than or equal to\fP, and \fIgreater than\fP\&. This prunes or removes column vectors based on their size\&. If \fBlt\fP is used, column vectors are removed if the number of entries exceeds the specified bound\&. If \fBgq\fP is used, vectors are discarded if the number of entries is smaller than the specified bound\&. If a column vector has an excess of entries over the bound specified by \fBceil\fP, the smallest entries are removed\&. Ties are not arbitrarily broken, implying that the resulting vector may still have more entries than the specified bound\&. \fBFINALIZE\fP .br The finalize part is specified as \fBfin\fP( < \fIkey\fP > ) where \fIkey\fP is a string and multiple keys are separated by commas\&. The corresponding actions are generally applied to the matrix that was extracted according to the domain and value specifications\&. Exceptions are indicated below\&. Currently, there is a fixed order in which actions are considered, corresponding with the order in which they are listed below\&. .ZI 2m "skel" \& .br This creates an empty submatrix on the specified domains, and does \fInot\fP fill it with the corresponding entries from the source matrix\&. Options from the \fBfin\fP part that affect the column and row domains of a matrix will still be in effect\&. .in -2m .ZI 2m "uni" \& 'in -2m .ZI 2m "unir" \& 'in -2m .ZI 2m "unic" \& 'in -2m 'in +2m \& .br After the submatrix is selected from the source matrix, its domains are changed to mirror one or both of the domains of the source matrix\&. .in -2m .ZI 2m "tp" \& .br The resulting submatrix is replaced by its transpose\&. .in -2m .ZI 2m "cc" \& .br The resulting submatrix is made characteristic\&. .in -2m .ZI 2m "scrubc" \& 'in -2m .ZI 2m "scrubr" \& 'in -2m .ZI 2m "scrubg" \& 'in -2m .ZI 2m "scrub" \& 'in -2m 'in +2m \& .br Domains are shrunk if there are no corresponding entries in the matrix\&. This is done for both domains if \fCscrub\fP is specified, for the column domain if \fCscrubc\fP is specified, and for the row domain if \fCscrubr\fP is specified\&. Thus, with \fCscrubc\fP columns are removed from the domain and the matrix if they are empty\&. With \fCscrubg\fP the union of the resulting domains is taken\&. .in -2m .ZI 2m "mapc" \& 'in -2m .ZI 2m "mapr" \& 'in -2m .ZI 2m "map" \& 'in -2m 'in +2m \& .br The appropriate domains are mapped onto consecutive indices starting at zero\&. .in -2m \fBOUTPUT\fP .br The output part is specified as \fBout\fP( \fIfname\fP <, \fIkey\fP >* ) that is, the \fIfname\fP option is obligatory if the \fBout\fP part is specified\&. Currently, key can be a single directive, namely \fBwb\fP specifying that the resulting matrix should be output in binary format\&. .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmcx(1)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmprotocols2.50000644000402500021140000003406111754271042012735 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clmprotocols" 5 "14 May 2012" "clmprotocols 12-135" "FILE FORMATS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .de ZT .\" Zoem Faq (Toc) macro. .nr xb \\n(.k .nr xb -1m .nr xa \\$1 .nr xa -\\n(.k .nr xa -\\n(.i \h'\\n(xau'\\$2\l'|\\n(xbu.'\h'1m'\\ .. .de ZB .\" Zoem Faq (Body) macro. .nr xb \\n(.k .nr xa \\$1 .nr xa -\\n(.k .nr xa -\\n(.i \h'\\n(xau'\\$2\h'|\\n(xbu'\\ .. .am SH .ie n .in 8m .el .in 8m .. .ZJ 3m 1m "1\&." NAME .in -4m .ZJ 3m 1m "2\&." DESCRIPTION .in -4m .ZJ 3m 1m "3\&." TOC .in -4m .ZJ 3m 1m "4\&." FAQ .in -4m .ZJ 3m 1m "5\&." Network representation .in -4m .ZJ 3m 1m "6\&." Loading large networks .in -4m .ZJ 3m 1m "7\&." Converting between formats .in -4m .ZJ 3m 1m "8\&." Clustering similarity graphs encoded in BLAST results .in -4m .ZJ 3m 1m "9\&." Clustering expression data .in -4m .ZJ 3m 1m "10\&." Reducing node degrees in the graph .in -4m .ZJ 3m 1m "11\&." SEE ALSO .in -4m .ZJ 3m 1m "12\&." AUTHOR .in -4m .SH NAME clmprotocols \- Work flows and protocols for mcl and friends .SH DESCRIPTION A guide to doing analysis with mcl and its helper programs\&. .SH TOC .ZT 0m \fB1\fP \s+1\fBGeneral pardon\fP\s-1 .br .ZT 1m \fB1\&.1\fP For whom is mcl and for whom is this FAQ? .br .ZT 1m \fB1\&.2\fP For whom is mcl and for whom is this FAQ? .ZT 0m \fB2\fP \s+1\fBGeneral questions\fP\s-1 .br .ZT 1m \fB2\&.1\fP For whom is mcl and for whom is this FAQ? .br .ZT 1m \fB2\&.2\fP For whom is mcl and for whom is this FAQ? .SH FAQ .ce \s+2\fBGeneral pardon\fP\s-2 .ZB 1m \fB1\&.1\fP \s+1\fBFor whom is mcl and for whom is this FAQ?\fP\s-1 For everybody with an appetite for graph clustering\&. .ZB 1m \fB1\&.2\fP \s+1\fBFor whom is mcl and for whom is this FAQ?\fP\s-1 For everybody with an appetite for graph clustering\&. .ce \s+2\fBGeneral questions\fP\s-2 .ZB 1m \fB2\&.1\fP \s+1\fBFor whom is mcl and for whom is this FAQ?\fP\s-1 For everybody with an appetite for graph clustering\&. .ZB 1m \fB2\&.2\fP \s+1\fBFor whom is mcl and for whom is this FAQ?\fP\s-1 For everybody with an appetite for graph clustering\&. .SH Network representation The clustering program \fBmcl\fP expects the name of file as its first argument\&. If the \fB--abc\fP option is used, the file is assumed to adhere to a simple format where a network is specified edge by edge, one line and one edge at a time\&. Each line describes an edge as two labels and a numerical value, all separated by white space\&. The labels and the value respectively identify the two nodes and the edge weight\&. The format is called ABC-format, where \&'A\&' and \&'B\&' represent the two labels and \&'C\&' represents the edge weight\&. The latter is optional; if omitted the edge weight is set to one\&. If ABC-format is used, the output is returned as a listing of clusters, each cluster given as a line of white-space separated labels\&. MCL can also utilize a second representation, which is a stringent and unambiguous format for both input and output\&. This is called \fImatrix format\fP and it is required when using other programs in the mcl suite, for example when comparing and analysing clusterings using \fBclm(1)\fP or when extracting and transforming networks using \fBmcx(1)\fP\&. Native mode (matrix format) is entered simply by \fInot\fP specifying \fB--abc\fP\&. The recommended approach using \fBmcl\fP is to convert an external format to ABC-format\&. The program \fBmcxload(1)\fP reads the latter and creates a native network file and a dictionary file that maps network nodes to labels\&. All applications in the MCL suite, including \fBmcl\fP itself, can read this native network file format\&. Label output can be obtained using \fBmcxdump(1)\fP\&. The workflow is thus: .di ZV .in 0 .nf \fC # External format has been converted to file data\&.abc (abc format) mcxload -abc data\&.abc --stream-mirror -write-tab data\&.tab -o data\&.mci mcl data\&.mci -I 1\&.4 mcl data\&.mci -I 2 mcl data\&.mci -I 4 mcxdump -icl out\&.data\&.mci\&.I14 -tabr data\&.tab -o dump\&.data\&.mci\&.I14 mcxdump -icl out\&.data\&.mci\&.I20 -tabr data\&.tab -o dump\&.data\&.mci\&.I20 mcxdump -icl out\&.data\&.mci\&.I40 -tabr data\&.tab -o dump\&.data\&.mci\&.I40 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR In this example the cluster output is stored in native format and dumped to labels using mcxdump\&. The stored output can now be used to learn more about the clusterings\&. An example is the following, where \fBclm(1)\fP is applied in mode\ \&\fBdist\fP to gauge the distance between different clusterings\&. .di ZV .in 0 .nf \fC clm dist --chain out\&.data\&.mci\&.I{14,20,40} .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .SH Loading large networks If you deal with very large networks (say with hundreds of millions of edges), it is recommended to use binary format (cf \fBmcxio(5)\fP)\&. This is simply achieved by adding \fC--write-binary\fP to the mcxload command line\&. The resulting file is no longer human-readable but will be faster to read by a factor between ten- or twenty-fold compared to standard MCL-edge network format, and a factor around fifty-fold compared to label format\&. All MCL-edge programs are able to read binary format, and speed of reading will be somewhere in the order of millions of edges per second, compared to, for example, roughly 100K edges per second for label format\&. Memory usage for mcxload can be lowered by replacing the option \fC--stream-mirror\fP with \fC-ri\ \&max\fP\&. .SH Converting between formats \fBConverting label format to tabular format\fP .br Label format, two or three (including weight) columns: .di ZV .in 0 .nf \fC mcxload -abc data\&.abc --stream-mirror -write-tab data\&.tab -o data\&.mci mcxdump -imx data\&.mci -tab data\&.tab --dump-table .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Simple Interaction File (SIF) format: .di ZV .in 0 .nf \fC mcxload -sif data\&.sif --stream-mirror -write-tab data\&.tab -o data\&.mci mcxdump -imx data\&.mci -tab data\&.tab --dump-table .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR It can be noted that these two examples are very similar, and differ only in the way the input to \fBmcxload\fP is specified\&. .SH Clustering similarity graphs encoded in BLAST results A specific instance of the workflow above is the clustering of proteins based on their sequence similarities\&. In the most typical scenario the external format is BLAST output, which needs to be transformed to ABC format\&. In the examples below the input is in columnar blast format obtained with the blast -m8 option\&. It requires a version of \fBmcl\fP at least as recent as \fC09-061\fP\&. First we create an ABC-formatted file using the external columnar BLAST format, which is assumed to be in a file called \fCseq\&.cblast\fP\&. .di ZV .in 0 .nf \fC cut -f 1,2,11 seq\&.cblast > seq\&.abc .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The columnar format in the file \fCseq\&.cblast\fP has, for a given BLAST hit, the sequence labels in the first two columns and the asssociated E-value in column\ \&11\&. It is parsed by the standard UNIX cut(1) utility\&. The format must have been created with the BLAST -m8 option so that no comment lines are present\&. Alternatively these can be filtered out using grep\&. The newly created \fCseq\&.abc\fP file is loaded by \fBmcxload(1)\fP, which writes both a network file \fCseq\&.mci\fP and a dictionary file \fCseq\&.tab\fP\&. .di ZV .in 0 .nf \fC mcxload -abc seq\&.abc --stream-mirror --stream-neg-log10 -stream-tf \&'ceil(200)\&' -o seq\&.mci -write-tab seq\&.tab .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The \fC--stream-mirror\fP option ensures that the resulting network will be undirected, as recommended when using \fBmcl\fP\&. Omitting this option would result in a directed network as BLAST E-values generally differ between two sequences\&. The default course of action for \fBmcxload(1)\fP is to use the best value found between a pair of labels\&. The next option, \fC--abc-neg-log10\fP tranforms the numerical values in the input (the BLAST E-values) by taking the logarithm in base\ \&10 and subsequently negating the sign\&. Finally, the transformed values are capped so that any E-value below 1e-200 is set to a maximum allowed edge weight of\ \&200\&. To obtain clusterings from \fCseq\&.mci\fP and \fCseq\&.tab\fP one has two choices\&. The first is to generate an abstract clustering representation and from that obtain the label output, as follows\&. Below the \fB-o\fP option is not used, so mcl will create meaningful and unique output names by itself\&. The default way of doing this is to preprend the prefix \fCout\&.\fP and to append a suffix encoding the inflation value used, with inflation encoded using two digits of precision and the decimal separator removed\&. .di ZV .in 0 .nf \fC mcl seq\&.mci -I 1\&.4 mcl seq\&.mci -I 2 mcl seq\&.mci -I 4 mcl seq\&.mci -I 6 mcxdump -icl out\&.seq\&.mci\&.I14 -tabr seq\&.tab -o dump\&.seq\&.mci\&.I14 mcxdump -icl out\&.seq\&.mci\&.I20 -tabr seq\&.tab -o dump\&.seq\&.mci\&.I20 mcxdump -icl out\&.seq\&.mci\&.I40 -tabr seq\&.tab -o dump\&.seq\&.mci\&.I40 mcxdump -icl out\&.seq\&.mci\&.I60 -tabr seq\&.tab -o dump\&.seq\&.mci\&.I60 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Now the file \fCout\&.seq\&.tab\&.I14\fP and its associates can be used for example to compute the distances between the encoded clusterings with \fBclm dist\fP, to compute a set of strictly reconciled nested clusterings with \fBclm order\fP, or to compute an efficiency criterion with \fBclm info\fP\&. Alternatively, label output can be obtained directly from \fBmcl\fP as follows\&. .di ZV .in 0 .nf \fC mcl seq\&.mci -I 1\&.4 -use-tab seq\&.tab mcl seq\&.mci -I 2 -use-tab seq\&.tab mcl seq\&.mci -I 4 -use-tab seq\&.tab mcl seq\&.mci -I 6 -use-tab seq\&.tab .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .SH Clustering expression data The clustering of expression data constitutes another workflow\&. In this case the external format usually is a tabular file format containing labels for genes or probes and numerical values measuring the expression values or fold changes across a series of conditions or experiments\&. Such tabular files can be processed by \fBmcxarray(1)\fP, which comes installed with \fBmcl\fP\&. The program computes correlations (either Pearson or Spearmann) between genes, and creates an edge between genes if their correlation exceeds the specified cutoff\&. From this \fBmcxarray(1)\fP creates both a network file and a dictionary file\&. In the example below, the file \fCexpr\&.data\fP is in tabular format with one row of column headers (e\&.g\&. tags for experiments) and one column of row identifiers (e\&.g\&. probe or gene identifiers)\&. .di ZV .in 0 .nf \fC mcxarray -data expr\&.data -skipr 1 -skipc 1 -o expr\&.mci -write-tab expr\&.tab --pearson -co 0\&.7 -tf \&'abs(),add(-0\&.7)\&' .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR This uses the Pearson correlation, ignoring values below 0\&.7\&. The remaining values in the interval \fC[0\&.7-1]\fP are remapped to the interval \fC[0-0\&.3]\fP\&. This is recommended so that the edge weights will have increased contrast between them, as \fBmcl\fP is affected by relative differences (ratios) between edge weights rather than absolute differences\&. To illustrate this, values\ \&0\&.75 and\ \&0\&.95 are mapped to\ \&0\&.05 and\ \&0\&.25, with respective ratios\ \&0\&.79 and\ \&0\&.25\&. The network file \fCexpr\&.mci\fP and the dictionary file \fCexpr\&.tab\fP can now be used as before\&. It is possible to investigate the effect of the correlation cutoff as follows\&. First a network is generated at a very low threshold, and this network is analysed using \fBmcxquery\fP\&. .di ZV .in 0 .nf \fC mcxarray -data expr\&.data -skipr 1 -skipc 1 -o expr20\&.mcx --write-binary --pearson -co 0\&.2 -tf \&'abs()\&' mcx query -imx expr20\&.mcx --vary-correlation .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The output is in a tabular format describing the properties of the network at increasing correlation thresholds\&. Examples are the size of the biggest component, the number of orphan nodes (not connected to any other node), and the mean and median node degrees\&. A good way to choose the cutoff is to balance the number of singletons and the median node degree\&. Both should preferably not be too high\&. For example the number of orphan nodes should be less than ten percent of the total number of nodes, and the median node degree should be at most one hundred neighbours\&. .SH Reducing node degrees in the graph A good way to lower node degrees in a network is to require that an edge is among the best \fIk\fP edges (those of highest weight) for \fIboth\fP nodes incident to the edge, for some value of \fIk\fP\&. This is achieved by using \fCknn(k)\fP in the argument to the \fB-tf\fP option to mcl or \fBmcx alter\fP\&. To give an example, a graph was formed on translations in Ensembl release 57 on 2\&.6M nodes\&. The similarities were obtained from BLAST scores, leading to a graph with a total edge count of 300M, with best-connected nodes of degree respectively 11148, 9083, 9070, 9019 and 8988, and with mean node degree 233\&. These degrees are unreasonable\&. The graph was subjected to \fBmcx query\fP to investigate the effect of varying k-NN parameters\&. A good heuristic is to choose a value that does not significantly change the number of singletons in the input graph\&. In the example it meant that \fB-tf\fP\ \&\fB\&'knn(160)\&'\fP was feasible, leading to a mean node degree of 98\&. A second approach to reduce node degrees is to employ the \fB-ceil-nb\fP option\&. This ranks nodes by node degree, highest first\&. Nodes are considered in order of rank, and edges of low weight are removed from the graph until a node satisfies the node degree threshold specified by \fB-ceil-nb\fP\&. .SH SEE ALSO \fBmcxio(5)\fP\&. .SH AUTHOR Stijn van Dongen\&. mcl-12-135/doc/mcx.html0000644000402500021140000002041211754271044011517 00000000000000 The mcx manual

14 May 2012    mcx 12-135

NAME

mcx — perform various computations on graphs and matrices

SYNOPSIS

mcx <mode> [mode-options] [mode-files]

DESCRIPTION

mcx implements a variety of computations on graphs and matrices. The first argument to mcx should be a mode, which is a string establishing the type of computation to invoke. Each mode mode is described in the mcxmode manual page. The currently available modes are convert, diameter, clcf, q and ctty. The convert mode is thus described in the mcxconvert manual page.

Invoking mcx without arguments causes it to print out a list of available modes with a short description of the type of command line expected by that mode.

Invoking mcx with just a mode will print out a longer listing of options available for that particular mode. Modes that are able to function normally without arguments can be invoked by adding the --nop argument.

Several options are shared between all mcx modes. Note that these options are specified after the mode. See OPTIONS.

The --version causes mcx to print out version and license information.

Issuing mcx help mode will cause mcx to look for a manual page describing mode and display it if found. This requires that the MANPATH environment variable contains the directory in which the MCL-edge manual pages were installed. This will usually be PREFIX/share, where PREFIX is the path with which the software was configured.

OPTIONS

These are options that pertain to all modes. They should be specified after the mode argument.

-h (synopsis)
--help (synopsis)

List available options.

 
--nop (no-op)

Not an option. This option has no effect then to increment the argument count. This can be useful for mcx modes which are able to function without any options. Such a mode typically reads from STDIN, writes to STDOUT, and uses default settings. However, simply specifying a mode without options leads mcx to output a list of available options for that mode. This can be prevented by using the --nop option.

 
-set (key=val)

Sets the key key to value val in the environment. Some modes allow adjustment of settings in this manner.

 
-progress <num> (progress interval size)

Defines the interval that defines the progress frequency.

 
--debug (turn on debugging)

Turn debugging on.

 
--version (show version)

Show version.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/clmimac.ps0000644000402500021140000003212611754271041012015 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:13 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 1 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE /Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d20696d6163283129>20 48 Q <5553455220434f4d4d414e4453>140.675 E<636c6d20696d6163283129>143.175 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<636c6d20696d 616320ad20496e74657270726574204d617472696365732028632e712e204d434c206974 6572616e6473206f7574707574206279>100 96 Q/F2 10/Times-Bold@0 SF<6d636c> 2.5 E F0 2.5<2941>C 2.5<7343>-2.5 G<6c7573746572696e67732e>-2.5 E .261 <636c6d696d6163206973206e6f7420696e2061637475616c2066>100 120 R .261<61 637420612070726f6772616d2e2054686973206d616e75616c207061676520646f63756d 656e7473207468652062656861>-.1 F .26<76696f757220616e64206f7074696f6e73> -.2 F 1.498<6f662074686520636c6d2070726f6772616d207768656e20696e>100 132 R -.2<766f>-.4 G -.1<6b65>.2 G 3.998<6469>.1 G 3.998<6e6d>-3.998 G <6f6465>-3.998 E/F3 10/Times-Italic@0 SF<696d6163>3.998 E F0 3.998<2e54> C 1.498<6865206f7074696f6e73>-3.998 F F2<2d68>3.998 E F0<2c>A F2 <2d2d617072>3.998 E<6f706f73>-.18 E F0<2c>A F2<2d2d76>3.998 E <657273696f6e>-.1 E F0<2c>A F2<2d736574>3.998 E F0<2c>A F2<2d2d6e6f70> 100 144 Q F0<6172652061636365737369626c6520696e20616c6c>2.5 E F2<636c6d> 2.5 E F0<6d6f6465732e20546865>2.5 E 2.5<7961>-.15 G <72652064657363726962656420696e20746865>-2.5 E F2<636c6d>2.5 E F0 <6d616e75616c20706167652e>2.5 E F1<53594e4f50534953>20 160.8 Q F2 <636c6d20696d6163>100 172.8 Q F0 <2d696d78203c666e616d653e205b6f7074696f6e735d>2.5 E F2 .27 <636c6d20696d6163202d696d78>100 196.8 R F0 .27<666e616d652028>2.77 F F3 .27<696e707574208c6c65>B F0<29>A F2<5b2d6f>2.77 E F0 .27<666e616d652028> 2.77 F F3 .27<6e616d652f7374656d20666f72206f7574707574>B F0<29>A F2 2.77 <5d5b>C<2d646167>-2.77 E F0 .27<666e616d652028>2.77 F F3 .27 <6f75747075742044>B -.35<4147>-.35 G F0<29>.35 E F2<5d>A<5b2d6f>100 208.8 Q -.1<7665>-.1 G<726c6170>.1 E F0 .674<7374722028>3.174 F F3 -.1 <6f76>C .674<65726c6170206d6f6465>.1 F F0<29>A F2 3.174<5d5b>C <2d736f7274>-3.174 E F0 .674<7374722028>3.174 F F3<73697a657c72>A -.15 <6576>-.37 G<73697a657c6c65>.15 E<787c6e6f6e65>-.2 E F0<29>A F2 3.174 <5d5b>C<2d737472696374>-3.174 E F0 .674<6e756d2028>3.174 F F3 .674 <696e20302e2e31>B F0<29>A F2 3.175<5d5b>C<2d68>-3.175 E F0<28>3.175 E F3 <7072696e74>A<73796e6f707369732c2065>100 220.8 Q<786974>-.2 E F0<29>A F2 2.5<5d5b>C<2d2d617072>-2.5 E<6f706f73>-.18 E F0<28>2.5 E F3 <7072696e742073796e6f707369732c2065>A<786974>-.2 E F0<29>A F2 2.5<5d5b>C <2d2d76>-2.5 E<657273696f6e>-.1 E F0<28>2.5 E F3<7072696e7420766572>A <73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F2<5d>A F1 <4445534352495054494f4e>20 237.6 Q F0<557365>100 249.6 Q F2 .218 <636c6d20696d6163>2.718 F F0 .217<746f20696e74657270726574206d6174726963 65732028617320636c7573746572696e677329206f7574707574206279>2.717 F F2 <6d636c>2.717 E F0<7573696e67>2.717 E F2<6d636c>2.717 E F0 -.55<2773>C F2<2d64756d7020697465>3.267 E F0<6f7074696f6e2e>2.717 E<557365>100 273.6 Q F2 .427<636c6d20696d6163>2.927 F F0 .428<6f6e6c7920696620796f75206861> 2.928 F .728 -.15<766520612073>-.2 H .428 <70656369616c20726561736f6e3b20746865206e6f726d616c207573616765206f66> .15 F F2<6d636c>2.928 E F0 .428 <697320746f20646f206d756c7469706c652072756e73>2.928 F .605<666f722076> 100 285.6 R<617279696e67>-.25 E F2<2d49>3.105 E F0 .604<706172616d657465 727320616e64207573652074686520636c7573746572696e6773206f7574707574206279> 3.104 F F2<6d636c>3.104 E F0 3.104<697473656c662e204f6e65>3.104 F .604 <726561736f6e20697320696620796f7520617265>3.104 F .582 <696e746572657374656420696e20636c7573746572696e67732077697468206f>100 297.6 R -.15<7665>-.15 G .583<726c61703b206561726c79204d434c206974657261 6e64732067656e6572616c6c7920696e6475636520636c7573746572696e677320706f73 736573732d>.15 F .42<696e67206f>100 309.6 R -.15<7665>-.15 G 2.92 <726c61702e20416e6f74686572>.15 F .419<726561736f6e20697320746f20696e> 2.92 F -.15<7665>-.4 G<73746967>.15 E .419<61746520686f>-.05 F 2.919 <7774>-.25 G .419<686520636c757374657220737472756374757265206173736f6369 61746564207769746820746865204d434c>-2.919 F<70726f636573732065>100 321.6 Q -.2<766f>-.25 G<6c76>.2 E<6573206f>-.15 E -.15<7665>-.15 G 2.5<7274> .15 G<696d652e>-2.5 E F1<4f5054494f4e53>20 338.4 Q F2<2d696d78>100 350.4 Q F0<666e616d652028>2.5 E F3<696e707574208c6c65>A F0<29>A<54686520696e70 7574208c6c652069732070726573756d61626c7920616e204d434c2069746572616e6420 726573756c74696e672066726f6d20746865206d636c206f7074696f6e>120 362.4 Q F2<2d64756d7020697465>2.5 E F0<2e>A F2<2d737472696374>100 386.4 Q F0 <6e756d2028>2.5 E F3<696e20302e2e31>A F0<29>A 1.502<4869676865722076>120 398.4 R 1.502<616c7565732028757020756e74696c2031292077696c6c207468696e20 6f7574207468652044>-.25 F 2.302 -.4<41472063>-.4 H 1.502 <6f6e7374727563746564206279>.4 F F2 1.502<636c6d20696d6163>4.002 F F0 4.002<2e54>C 1.502<686520646566>-4.002 F<61756c74>-.1 E -.25<7661>120 410.4 S <6c756520697320302e30303030312c207969656c64696e67207468652066756c6c2044> .25 E -.4<4147>-.4 G<2e>.4 E F2<2d6f>100 434.4 Q F0<666e616d652028>2.5 E F3<8c6c65206e616d652f7374656d>A F0<29>A <577269746520746f208c6c65206e616d6564>120 446.4 Q F3<666e616d65>2.5 E F0 <2e>A F2<2d646167>100 470.4 Q F0<666e616d652028>2.5 E F3 <6f75747075742044>A -.35<4147>-.35 G F0<29>.35 E .026 <5772697465207468652044>120 482.4 R .826 -.4<41472028>-.4 H .026 <6469726563746564206163>.4 F .025<79636c69632067726170682920636f6e737472 75637465642066726f6d2074686520696e70757420746f208c6c652e20546869732044> -.15 F .825 -.4<41472069>-.4 H 2.525<7363>.4 G<6f6e2d>-2.525 E .789<7374 727563746564206163636f7264696e6720746f2074686520737472756374757265206173 736f636961746564207769746820646961676f6e616c6c7920706f73697469>120 494.4 R 1.089 -.15<76652073>-.25 H .789<656d692d64658c6e697465206d617472692d> .15 F .736 <6365732061732064657363726962656420696e207468652050684420746865736973> 120 506.4 R F3<4772>3.235 E .735 <61706820636c7573746572696e67206279208d6f772073696d756c6174696f6e>-.15 F F0 5.735<2e43>C<6f6e73756c74>-5.735 E F2<6d636c66616d2d>3.235 E <696c79283729>120 518.4 Q F0<666f72207265666572656e6365732e>2.5 E F2 <2d736f7274>100 542.4 Q F0<7374722028>2.5 E F3<73697a657c72>A -.15<6576> -.37 G<73697a657c6c65>.15 E<787c6e6f6e65>-.2 E F0<29>A .5<536f7274207468 6520636c7573746572732065697468657220627920696e6372656173696e672073697a65 2c2064656372656173696e672073697a652c206c65>120 554.4 R .5 <7869636f67726170686963616c6c792062792074686520696e6469636573>-.15 F <746865>120 566.4 Q 2.5<7963>-.15 G <6f6e7461696e2c206f72207573652074686520636c7573746572696e672065>-2.5 E< 786163746c79206173206f627461696e65642066726f6d2074686520696e746572707265 746174696f6e20726f7574696e652e>-.15 E F2<2d6f>100 590.4 Q -.1<7665>-.1 G <726c6170>.1 E F0<6d6f64652028>2.5 E F3 -.1<6f76>C<65726c6170206d6f6465> .1 E F0<29>A -.4<5769>120 602.4 S<7468>.4 E F3<6d6f6465>3.84 E F0 1.34 <73657420746f>3.84 F F3<637574>3.84 E F0 3.84<2c72>C<656d6f>-3.84 E 1.64 -.15<76652061>-.15 H 1.64 -.15<6e79206f7665>.15 H 1.34 <726c617020627920616c6c6f636174696e6720746865206e6f64657320696e206f>.15 F -.15<7665>-.15 G 1.34<726c617020746f20746865208c727374>.15 F 1.438 <636c757374657220696e20776869636820746865>120 614.4 R 3.938<7977>-.15 G 1.438<65726520666f756e642e204d6f6465>-3.938 F F3 -.1<6b65>3.938 G<6570> .1 E F0<6c6561>3.939 E -.15<7665>-.2 G 3.939<736f>.15 G -.15<7665>-4.089 G 1.439<726c617020756e6368616e6765642c20616e64206d6f6465>.15 F F3 <73706c6974>3.939 E F0<726573756c747320696e206f>120 626.4 Q -.15<7665> -.15 G<726c617070696e672070617274732065>.15 E<78636973656420616e6420696e 74726f647563656420617320636c75737465727320696e207468656972206f>-.15 E <776e2072696768742e>-.25 E F1 -.548<4155>20 643.2 S<54484f52>.548 E F0 <5374696a6e2076>100 655.2 Q<616e20446f6e67656e2e>-.25 E F1 <53454520414c534f>20 672 Q F2<6d636c66616d696c79283729>100 684 Q F0 <666f7220616e206f>2.5 E -.15<7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c2074686520646f63756d656e746174696f6e20616e6420746865 207574696c697469657320696e20746865206d636c2066>-2.5 E<616d696c792e>-.1 E <636c6d20696d61632031322d313335>20 768 Q<3134204d61792032303132>139.565 E<31>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mclfaq.txt0000644000402500021140000015245511754271043012062 00000000000000MCL FAQ(7) MISCELLANEOUS MCL FAQ(7) NAME mclfaq - faqs and facts about the MCL cluster algorithm. MCL refers to the generic MCL algorithm and the MCL process on which the algorithm is based. mcl refers to the implementation. This FAQ answers questions related to both. In some places MCL is written where MCL or mcl can be read. This is the case for example in sec- tion 3, What kind of graphs. It should in general be obvious from the context. This FAQ does not begin to attempt to explain the motivation and mathematics behind the MCL algorithm - the internals are not explained. A broad view is given in faq 1.2, and see also faq 1.5 and section REFERENCES. Some additional sections preceed the actual faq entries. The TOC section contains a listing of all questions. RESOURCES The manual pages for all the utilities that come with mcl; refer to mclfamily(7) for an overview. See the REFERENCES Section for publications detailing the mathemat- ics behind the MCL algorithm. TOC 1...... General questions 1.1... For whom is mcl and for whom is this FAQ? 1.2... What is the relationship between the MCL process, the MCL algorithm, and the 'mcl' implementation? 1.3... What do the letters MCL stand for? 1.4... How could you be so feebleminded to use MCL as abbreviation? Why is it labeled 'Markov cluster' anyway? 1.5... Where can I learn about the innards of the MCL algorithm/process? 1.6... For which platforms is mcl available? 1.7... How does mcl's versioning scheme work? 2...... Input format 2.1... How can I get my data into the MCL matrix format? 3...... What kind of graphs 3.1... What is legal input for MCL? 3.2... What is sensible input for MCL? 3.3... Does MCL work for weighted graphs? 3.4... Does MCL work for directed graphs? 3.5... Can MCL work for lattices / directed acyclic graphs / DAGs? 3.6... Does MCL work for tree graphs? 3.7... For what kind of graphs does MCL work well and for which does it not? 3.8... What makes a good input graph? How do I construct the similarities? How to make them satisfy this Markov condition? 3.9... My input graph is directed. Is that bad? 3.10.. Why does mcl like undirected graphs and why does it dislike uni- directed graphs so much? 3.11.. How do I check that my graph/matrix is symmetric/undirected? 4...... Speed and complexity 4.1... How fast is mcl/MCL? 4.2... What statistics are available? 4.3... Does this implementation need to sort vectors? 4.4... mcl does not compute the ideal MCL process! 5...... Comparison with other algorithms 5.1... I've read someplace that XYZ is much better than MCL 5.2... I've read someplace that MCL is slow [compared with XYZ] 6...... Resource tuning / accuracy 6.1... What do you mean by resource tuning? 6.2... How do I compute the maximum amount of RAM needed by mcl? 6.3... How much does the mcl clustering differ from the clustering result- ing from a perfectly computed MCL process? 6.4... How do I know that I am using enough resources? 6.5... Where is the mathematical analysis of this mcl pruning strategy? 6.6... What qualitative statements can be made about the effect of pruning? 6.7... At different high resource levels my clusterings are not identical. How can I trust the output clustering? 7...... Tuning cluster granularity 7.1... How do I tune cluster granularity? 7.2... The effect of inflation on cluster granularity. 7.3... The effect of node degrees on cluster granularity. 7.4... The effect of edge weight differentiation on cluster granularity. 8...... Implementing the MCL algorithm 8.1... How easy is it to implement the MCL algorithm? 9...... Cluster overlap / MCL iterand cluster interpretation 9.1... Introduction 9.2... Can the clusterings returned by mcl contain overlap? 9.3... How do I obtain the clusterings associated with MCL iterands? 10..... Miscellaneous 10.1.. How do I find the default settings of mcl? 10.2.. What's next? FAQ General questions 1.1 For whom is mcl and for whom is this FAQ? For everybody with an appetite for graph clustering. Regarding the FAQ, I have kept the amount of mathematics as low as possible, as far as matrix analysis is concerned. Inevitably, some terminology pops up and some references are made to the innards of the MCL algo- rithm, especially in the section on resources and accuracy. Graph terminology is used somewhat more carelessly though. The future might bring definition entries, right now you have to do without. Mathematically inclined people may be interested in the pointers found in the REFERENCES section. Given this mention of mathematics, let me point out this one time only that using mcl is extremely straightforward anyway. You need only mcl and an input graph (refer to the mcl manual page), and many people trained in something else than mathematics are using mcl hap- pily. 1.2 What is the relationship between the MCL process, the MCL algorithm, and the 'mcl' implementation? mcl is what you use for clustering. It implements the MCL algorithm, which is a cluster algorithm for graphs. The MCL algorithm is basi- cally a shell in which the MCL process is computed and interpreted. I will describe them in the natural, reverse, order. The MCL process generates a sequence of stochastic matrices given some initial stochastic matrix. The elements with even index are obtained by expanding the previous element, and the elements with odd index are obtained by inflating the previous element given some inflation constant. Expansion is nothing but normal matrix squaring, and inflation is a particular way of rescaling the entries of a stochastic matrix such that it remains stochastic. The sequence of MCL elements (from the MCL process) is in principle without end, but what happens is that the elements converge to some specific kind of matrix, called the limit of the process. The heuristic underlying MCL predicts that the interaction of expansion with inflation will lead to a limit exhibiting cluster structure in the graph associated with the initial matrix. This is indeed the case, and several mathematical results tie MCL iterands and limits and the MCL interpretation together (REFERENCES). The MCL algorithm is simply a shell around the MCL process. It transforms an input graph into an initial matrix suitable for start- ing the process. It sets inflation parameters and stops the MCL pro- cess once a limit is reached, i.e. convergence is detected. The result is then interpreted as a clustering. The mcl implementation supplies the functionality of the MCL algo- rithm, with some extra facilities for manipulation of the input graph, interpreting the result, manipulating resources while comput- ing the process, and monitoring the state of these manipulations. 1.3 What do the letters MCL stand for? For Markov Cluster. The MCL algorithm is a cluster algorithm that is basically a shell in which an algebraic process is computed. This process iteratively generates stochastic matrices, also known as Markov matrices, named after the famous Russian mathematician Andrei Markov. 1.4 How could you be so feebleminded to use MCL as abbreviation? Why is it labeled 'Markov cluster' anyway? Sigh. It is a widely known fact that a TLA or Three-Letter-Acronym is the canonical self-describing abbreviation for the name of a species with which computing terminology is infested (quoted from the Free Online Dictionary of Computing). Back when I was thinking of a nice tag for this cute algorithm, I was totally unaware of this. I naturally dismissed MC (and would still do that today). Then MCL occurred to me, and without giving it much thought I started using it. A Google search (or was I still using Alta-Vista back then?) might have kept me from going astray. Indeed, MCL is used as a tag for Macintosh Common Lisp, Mission Critical Linux, Monte Carlo Localization, MUD Client for Linux, Movement for Canadian Literacy, and a gazillion other things - refer to the file mclmcl.txt. Confusing. It seems that the three charac- ters MCL possess otherworldly magical powers making them an ever so strange and strong attractor in the space of TLAs. It probably helps that Em-See-Ell (Em-Say-Ell in Dutch) has some rhythm to it as well. Anyway MCL stuck, and it's here to stay. On a more general level, the label Markov Cluster is not an entirely fortunate choice either. Although phrased in the language of stochastic matrices, MCL theory bears very little relation to Markov theory, and is much closer to matrix analysis (including Hilbert's distance) and the theory of dynamical systems. No results have been derived in the latter framework, but many conjectures are naturally posed in the language of dynamical systems. 1.5 Where can I learn about the innards of the MCL algorithm/process? Currently, the most basic explanation of the MCL algorithm is found in the technical report [2]. It contains sections on several other (related) subjects though, and it assumes some working knowledge on graphs, matrix arithmetic, and stochastic matrices. 1.6 For which platforms is mcl available? It should compile and run on virtually any flavour of UNIX (includ- ing Linux and the BSD variants of course). Following the instruc- tions in the INSTALL file shipped with mcl should be straightforward and sufficient. Courtesy to Joost van Baal who completely autofooled mcl. Building MCL on Wintel (Windows on Intel chip) should be straight- forward if you use the full suite of cygwin tools. Install cygwin if you do not have it yet. In the cygwin shell, unpack mcl and simply issue the commands ./configure, make, make install, i.e. follow the instructions in INSTALL. This MCL implementation should also build successfully on Mac OS X. 1.7 How does mcl's versioning scheme work? The current setup, which I hope to continue, is this. All releases are identified by a date stamp. For example 02-095 denotes day 95 in the year 2002. This date stamp agrees (as of April 2000) with the (differently presented) date stamp used in all manual pages shipped with that release. For example, the date stamp of the FAQ you are reading is 14 May 2012, which corresponds with the MCL stamp 12-135. The Changelog file contains a list of what's changed/added with each release. Currently, the date stamp is the primary way of identifying an mcl release. When asked for its version by using --version, mcl outputs both the date stamp and a version tag (see below). Input format 2.1 How can I get my data into the MCL matrix format? This is described in the protocols manual page. What kind of graphs 3.1 What is legal input for MCL? Any graph (encoded as a matrix of similarities) that is nonnegative, i.e. all similarities are greater than or equal to zero. 3.2 What is sensible input for MCL? Graphs can be weighted, and they should preferably be symmetric. Weights should carry the meaning of similarity, not distance. These weights or similarities are incorporated into the MCL algorithm in a meaningful way. Graphs should certainly not contain parts that are (almost) cyclic, although nothing stops you from experimenting with such input. 3.3 Does MCL work for weighted graphs? Yes, unequivocally. They should preferably be symmetric/undirected though. See entries 3.7 and 3.8. 3.4 Does MCL work for directed graphs? Maybe, with a big caveat. See entries 3.8 and 3.9. 3.5 Can MCL work for lattices / directed acyclic graphs / DAGs? Such graphs [term] can surely exhibit clear cluster structure. If they do, there is only one way for mcl to find out. You have to change all arcs to edges, i.e. if there is an arc from i to j with similarity s(i,j) - by the DAG property this implies s(j,i) = 0 - then make s(j,i) equal to s(i,j). This may feel like throwing away valuable information, but in truth the information that is thrown away (direction) is not informative with respect to the presence of cluster structure. This may well deserve a longer discussion than would be justified here. If your graph is directed and acyclic (or parts of it are), you can transform it before clustering with mcl by using -tf '#max()', e.g. mcl YOUR-GRAPH -I 3.0 -tf '#max()' 3.6 Does MCL work for tree graphs? Nah, I don't think so. More info at entry 3.7. You could consider the Strahler number, which is numerical measure of branching com- plexity. 3.7 For what kind of graphs does MCL work well and for which does it not? Graphs in which the diameter [term] of (subgraphs induced by) natu- ral clusters is not too large. Additionally, graphs should prefer- ably be (almost) undirected (see entry below) and not so sparse that the cardinality of the edge set is close to the number of nodes. A class of such very sparse graphs is that of tree graphs. You might look into graph visualization software and research if you are interested in decomposing trees into 'tight' subtrees. The diameter criterion could be violated by neighbourhood graphs derived from vector data. In the specific case of 2 and 3 dimen- sional data, you might be interested in image segmentation and boundary detection, and for the general case there is a host of other algorithms out there. [add] In case of weighted graphs, the notion of diameter is sometimes not applicable. Generalizing this notion requires inspecting the mixing properties of a subgraph induced by a natural cluster in terms of its spectrum. However, the diameter statement is something grounded on heuristic considerations (confirmed by practical evidence [4]) to begin with, so you should probably forget about mixing properties. 3.8 What makes a good input graph? How do I construct the similarities? How to make them satisfy this Markov condition? To begin with the last one: you need not and must not make the input graph such that it is stochastic aka Markovian [term]. What you need to do is make a graph that is preferably symmetric/undirected, i.e. where s(i,j) = s(j,i) for all nodes i and j. It need not be per- fectly undirected, see the following faq for a discussion of that. mcl will work with the graph of random walks that is associated with your input graph, and that is the natural state of affairs. The input graph should preferably be honest in the sense that if s(x,y)=N and s(x,z)=200N (i.e. the similarities differ by a factor 200), then this should really reflect that the similarity of y to x is neglectible compared with the similarity of z to x. For the rest, anything goes. Try to get a feeling by experimenting. Sometimes it is a good idea to filter out high-frequency and/or low- frequency data, i.e. nodes with either very many neighbours or extremely few neighbours. 3.9 My input graph is directed. Is that bad? It depends. The class of directed graphs can be viewed as a spectrum going from undirected graphs to uni-directed graphs. Uni-directed is terminology I am inventing here, which I define as the property that for all node pairs i, j, at least one of s(i,j) or s(j,i) is zero. In other words, if there is an arc going from i to j in a uni- directed graph, then there is no arc going from j to i. I call a node pair i, j, almost uni-directed if s(i,j) << s(j,i) or vice versa, i.e. if the similarities differ by an order of magnitude. If a graph does not have (large) subparts that are (almost) uni- directed, have a go with mcl. Otherwise, try to make your graph less uni-directed. You are in charge, so do anything with your graph as you see fit, but preferably abstain from feeding mcl uni-directed graphs. 3.10 Why does mcl like undirected graphs and why does it dislike uni- directed graphs so much? Mathematically, the mcl iterands will be nice when the input graph is symmetric, where nice is in this case diagonally symmetric to a semi-positive definite matrix (ignore as needed). For one thing, such nice matrices can be interpreted as clusterings in a way that generalizes the interpretation of the mcl limit as a clustering (if you are curious to these intermediate clusterings, see faq entry 9.3). See the REFERENCES section for pointers to mathematical publications. The reason that mcl dislikes uni-directed graphs is not very mcl specific, it has more to do with the clustering problem itself. Somehow, directionality thwarts the notion of cluster structure. [add]. 3.11 How do I check that my graph/matrix is symmetric/undirected? Whether your graph is created by third-party software or by custom sofware written by someone you know (e.g. yourself), it is advisable to test whether the software generates symmetric matrices. This can be done as follows using the mcxi utility, assuming that you want to test the matrix stored in file matrix.mci. The mcxi utility should be available on your system if mcl was installed in the normal way. mcxi /matrix.mci lm tp -1 mul add /check wm This loads the graph/matrix stored in matrix.mci into mcxi's memory with the mcxi lm primitive. - the leading slash is how strings are introduced in the stack language interpreted by mcxi. The transpose of that matrix is then pushed on the stack with the tp primitive and multiplied by minus one. The two matrices are added, and the result is written to the file check. The transposed matrix is the mirrored version of the original matrix stored in matrix.mci. If a graph/matrix is undirected/symmetric, the mirrored image is neces- sarily the same, so if you subtract one from the other it should yield an all zero matrix. Thus, the file check should look like this: (mclheader mcltype matrix dimensions x ) (mclmatrix begin ) Where is the same as in the file matrix.mci. If this is not the case, find out what's prohibiting you from feeding mcl symmetric matrices. Note that any nonzero entries found in the matrix stored as check correspond to node pairs for which the arcs in the two pos- sible directions have different weight. Speed and complexity 4.1 How fast is mcl/MCL? It's fast - here is how and why. Let N be the number of nodes in the input graph. A straigtforward implementation of MCL will have time and space complexity respecively O(N^3) (i.e. cubic in N) and O(N^2) (quadratic in N). So you don't want one of those. mcl implements a slightly perturbed version of the MCL process, as discussed in section Resource tuning / accuracy. Refer to that sec- tion for a more extensive discussion of all the aspects involved. This section is only concerned with the high-level view of things and the nitty gritty complexity details. While computing the square of a matrix (the product of that matrix with itself), mcl keeps the matrix sparse by allowing a certain max- imum number of nonzero entries per stochastic column. The maximum is one of the mcl parameters, and it is typically set somewhere between 500 and 1500. Call the maximum K. mcl's time complexity is governed by the complexity of matrix squar- ing. There are two sub-algorithms to consider. The first is the algorithm responsible for assembling a new vector during matrix mul- tiplication. This algorithm has worst case complexity O(K^2). The pruning algorithm (which uses heap selection) has worst case com- plexity O(L*log(K)), where L is how large a newly computed matrix column can get before it is reduced to at most K entries. L is bound by the smallest of the two numbers N and K^2 (the square of K), but on average L will be much smaller than that, as the presence of cluster structure aids in keeping the factor L low. [Related to this is the fact that clustering algorithms are actually used to compute matrix splittings that minimize the number of cross-computations when carrying out matrix multiplication among multiple processors.] In actual cases of heavy usage, L is of order in the tens of thou- sands, and K is in the order of several hundreds up to a thousand. It is safe to say that in general the worst case complexity of mcl is of order O(N*K^2); for extremely tight and dense graphs this might become O(N*N*log(K)). Still, these are worst case estimates, and observed running times for actual usage are much better than that. (refer to faq 4.2). In this analysis, the number of iterations required by mcl was not included. It is nearly always far below 100. Only the first few (less than ten) iterations are genuinely time consuming, and they are usually responsible for more than 95 percent of the running time. The process of removing the smallest entries of a vector is called pruning. mcl outputs a summary of this once it is done. More infor- mation is provided in the pruning section of the mcl manual and Sec- tion 6 in this FAQ. The space complexity is of order O(N*K). 4.2 What statistics are available? Few. Some experiments are described in [4], and [5] mentions large graphs being clustered in very reasonable time. In protein cluster- ing, mcl has been applied to graphs with up to one million nodes, and on high-end hardware such graphs can be clustered within a few hours. 4.3 Does this implementation need to sort vectors? No, it does not. You might expect that one needs to sort a vector in order to obtain the K largest entries, but a simpler mechanism called heap selection does the job nicely. Selecting the K largest entries from a set of L by sorting would require O(L*log(L)) opera- tions; heap selection requires O(L*log(K)) operations. Alterna- tively, the K largest entries can be also be determined in O(N) + O(K log(K)) asymptotic time by using partition selection (more here and there). It is possible to enable this mode of operaton in mcl with the option --partition-selection. However, benchmarking so far has shown this to be equivalent in speed to heap selection. This is explained by the bounded nature of K and L in practice. 4.4 mcl does not compute the ideal MCL process! Indeed it does not. What are the ramifications? Several entries in section Resource tuning / accuracy discuss this issue. For a synop- sis, consider two ends of a spectrum. On the one end, a graph that has very strong cluster structure, with clearly (and not necessarity fully) separated clusters. This mcl implementation will certainly retrieve those clusters if the graphs falls into the category of graphs for which mcl is applicable. On the other end, consider a graph that has only weak cluster structure superimposed on a background of a more or less random graph. There might sooner be a difference between the clustering that should ide- ally result and the one computed by mcl. Such a graph will have a large number of whimsical nodes that might end up either here or there, nodes that are of a peripheral nature, and for which the (cluster) destination is very sensitive to fluctutations in edge weights or algorithm parametrizations (any algorithm, not just mcl). In short, the perturbation effect of the pruning process applied by mcl is a source of noise. It is small compared to the effect of changing the inflation parametrization or perturbing the edge weights. If the change is larger, this is because the computed pro- cess tends to converge prematurely, leading to finer-grained clus- terings. As a result the clustering will be close to a subclustering of the clustering resulting from more conservative resource set- tings, and in that respect be consistent. All this can be measured using the program clm dist. It is possible to offset such a change by slightly lowering the inflation parameter. There is the issue of very large and very dense graphs. The act of pruning will have a larger impact as graphs grow larger and denser. Obviously, mcl will have trouble dealing with such very large and very dense graphs - so will other methods. Finally, there is the engineering approach, which offers the possi- bility of pruning a whole lot of speculation. Do the experiments with mcl, try it out, and see what's there to like and dislike. Comparison with other algorithms 5.1 I've read someplace that XYZ is much better than MCL XYZ might well be the bees knees of all things clustering. Bear in mind though that comparing cluster algorithms is a very tricky affair. One particular trap is the following. Sometimes a new clus- ter algorithm is proposed based on some optimization criterion. The algorithm is then compared with previous algorithms (e.g. MCL). But how to compare? Quite often the comparison will be done by computing a criterion and astoundingly, quite often the chosen criterion is simply the optimization criterion again. Of course XYZ will do very well. It would be a very poor algorithm it if did not score well on its own optimization criterion, and it would be a very poor algo- rithm if it did not perform better than other algorithms which are built on different principles. There are some further issues that have to be considered here. First, there is not a single optimization criterion that fully cap- tures the notion of cluster structure, let alone best cluster struc- ture. Second, leaving optimization approaches aside, it is not pos- sible to speak of a best clustering. Best always depends on context - application field, data characteristics, scale (granularity), and practitioner to name but a few aspects. Accordingly, the best a clustering algorithm can hope for is to be a good fit for a certain class of problems. The class should not be too narrow, but no algo- rithm can cater for the broad spectre of problems for which cluster- ing solutions are sought. The class of problems to which MCL is applicable is discussed in section What kind of graphs. 5.2 I've read someplace that MCL is slow [compared with XYZ] Presumably, they did not know mcl, and did not read the parts in [1] and [2] that discuss implementation. Perhaps they assume or insist that the only way to implement MCL is to implement the ideal pro- cess. And there is always the genuine possibility of a really stupi- fyingly fast algorithm. It is certainly not the case that MCL has a time complexity of O(N^3) as is sometimes erroneously stated. Resource tuning / accuracy 6.1 What do you mean by resource tuning? mcl computes a process in which stochastic matrices are alternately expanded and inflated. Expansion is nothing but standard matrix mul- tiplication, inflation is a particular way of rescaling the matrix entries. Expansion causes problems in terms of both time and space. mcl works with matrices of dimension N, where N is the number of nodes in the input graph. If no precautions are taken, the number of entries in the mcl iterands (which are stochastic matrices) will soon approach the square of N. The time it takes to compute such a matrix will be proportional to the cube of N. If your input graph has 100.000 nodes, the memory requirements become infeasible and the time requirements become impossible. What mcl does is perturbing the process it computes a little by removing the smallest entries - it keeps its matrices sparse. This is a natural thing to do, because the matrices are sparse in a weighted sense (a very high proportion of the stochastic mass is contained in relatively few entries), and the process converges to matrices that are extremely sparse, with usually no more than N entries. It is thus known that the MCL iterands are sparse in a weighted sense and are usually very close to truly sparse matrices. The way mcl perturbs its matrices is by the strategy of pruning, selection, and recovery that is extensively described in the mcl manual page. The question then is: What is the effect of this per- turbation on the resulting clustering, i.e. how would the clustering resulting from a perfectly computed mcl process compare with the clustering I have on disk? Faq entry 6.3 discusses this issue. The amount of resources used by mcl is bounded in terms of the maxi- mum number of neighbours a node is allowed to have during all compu- tations. Equivalently, this is the maximum number of nonzero entries a matrix column can possibly have. This number, finally, is the maximum of the the values corresponding with the -S and -R options. The latter two are listed when using the -z option (see faq 10.1). 6.2 How do I compute the maximum amount of RAM needed by mcl? It is rougly equal to 2 * s * K * N bytes, where 2 is the number of matrices held in memory by mcl, s is the size of a single cell (c.q. matrix entry or node/arc specifica- tion), N is the number of nodes in the input graph, and where K is the maximum of the values corresponding with the -S and -R options (and this assumes that the average node degree in the input graph does not exceed K either). The value of s can be found by using the -z option. It is listed in one of the first lines of the resulting output. s equals the size of an int plus the size of a float, which will be 8 on most systems. The estimate above will in most cases be way too pessimistic (meaning you do not need that amount of memory). The -how-much-ram option is provided by mcl for computing the bound given above. This options takes as argument the number of nodes in the input graph. The theoretically more precise upper bound is slightly larger due to overhead. It is something like ( 2 * s * (K + c)) * N where c is 5 or so, but one should not pay attention to such a small difference anyway. 6.3 How much does the mcl clustering differ from the clustering result- ing from a perfectly computed MCL process? For graphs with up until a few thousand nodes a perfectly computed MCL process can be achieved by abstaining from pruning and doing full-blown matrix arithmetic. Of course, this still leaves the issue of machine precision, but let us wholeheartedly ignore that. Such experiments give evidence (albeit incidental) that pruning is indeed really what it is thought to be - a small perturbation. In many cases, the 'approximated' clustering is identical to the 'exact' clustering. In other cases, they are very close to each other in terms of the metric split/join distance as computed by clm dist. Some experiments with randomly generated test graphs, clus- tering, and pruning are described in [4]. On a different level of abstraction, note that perturbations of the inflation parameter will also lead to perturbations in the resulting clusterings, and surely, large changes in the inflation parameter will in general lead to large shifts in the clusterings. Node/clus- ter pairs that are different for the approximated and the exact clustering will very likely correspond with nodes that are in a boundary region between two or more clusters anyway, as the pertur- bation is not likely to move a node from one core of attraction to another. Faq entry 6.6 has more to say about this subject. 6.4 How do I know that I am using enough resources? In mcl parlance, this becomes how do I know that my -scheme parame- ter is high enough or more elaborately how do I know that the values of the {-P, -S, -R, -pct} combo are high enough? There are several aspects. First, watch the jury marks reported by mcl when it's done. The jury marks are three grades, each out of 100. They indicate how well pruning went. If the marks are in the seventies, eighties, or nineties, mcl is probably doing fine. If they are in the eighties or lower, try to see if you can get the marks higher by spending more resources (e.g. increase the parameter to the -scheme option). Second, you can do multiple mcl runs for different resource schemes, and compare the resulting clusterings using clm dist. See the clmdist manual for a case study. 6.5 Where is the mathematical analysis of this mcl pruning strategy? There is none. [add] Ok, the next entry gives an engineer's rule of thumb. 6.6 What qualitative statements can be made about the effect of pruning? The more severe pruning is, the more the computed process will tend to converge prematurely. This will generally lead to finer-grained clusterings. In cases where pruning was severe, the mcl clustering will likely be closer to a clustering ideally resulting from another MCL process with higher inflation value, than to the clustering ide- ally resulting from the same MCL process. Strong support for this is found in a general observation illustrated by the following example. Suppose u is a stochastic vector resulting from expansion: u = 0.300 0.200 0.200 0.100 0.050 0.050 0.050 0.050 Applying inflation with inflation value 2.0 to u gives v = 0.474 0.211 0.211 0.053 0.013 0.013 0.013 0.013 Now suppose we first apply pruning to u such that the 3 largest entries 0.300, 0.200 and 0.200 survive, throwing away 30 percent of the stochastic mass (which is quite a lot by all means). We rescale those three entries and obtain u' = 0.429 0.286 0.286 0.000 0.000 0.000 0.000 0.000 Applying inflation with inflation value 2.0 to u' gives v' = 0.529 0.235 0.235 0.000 0.000 0.000 0.000 0.000 If we had applied inflation with inflation value 2.5 to u, we would have obtained v'' = 0.531 0.201 0.201 0.038 0.007 0.007 0.007 0.007 The vectors v' and v'' are much closer to each other than the vec- tors v' and v, illustrating the general idea. In practice, mcl should (on average) do much better than in this example. 6.7 At different high resource levels my clusterings are not identical. How can I trust the output clustering? Did you read all other entries in this section? That should have reassured you somewhat, except perhaps for Faq answer 6.5. You need not feel uncomfortable with the clusterings still being different at high resource levels, if ever so slightly. In all like- lihood, there are anyway nodes which are not in any core of attrac- tion, and that are on the boundary between two or more clusterings. They may go one way or another, and these are the nodes which will go different ways even at high resource levels. Such nodes may be stable in clusterings obtained for lower inflation values (i.e. coarser clusterings), in which the different clusters to which they are attracted are merged. By the way, you do know all about clm dist, don't you? Because the statement that clusterings are not identical should be quantified: How much do they differ? This issue is discussed in the clm dist manual page - clm dist gives you a robust measure for the distance (dissimilarity) between two clusterings. There are other means of gaining trust in a clustering, and there are different issues at play. There is the matter of how accurately this mcl computed the mcl process, and there is the matter of how well the chosen inflation parameter fits the data. The first can be judged by looking at the jury marks (faq 6.4) and applying clm dist to different clusterings. The second can be judged by measurement (e.g. use clm info) and/or inspection (use your judgment). Tuning cluster granularity 7.1 How do I tune cluster granularity? There are several ways for influencing cluster granularity. These ways and their relative merits are successively discussed below. Reading clmprotocols(5) is also a good idea. 7.2 The effect of inflation on cluster granularity. The main handle for changing inflation is the -I option. This is also the principal handle for regulating cluster granularity. Unless you are mangling huge graphs it could be the only mcl option you ever need besides the output redirection option -o. Increasing the value of -I will increase cluster granularity. Con- ceivable values are from 1.1 to 10.0 or so, but the range of suit- able values will certainly depend on your input graph. For many graphs, 1.1 will be far too low, and for many other graphs, 8.0 will be far too high. You will have to find the right value or range of values by experimenting, using your judgment, and using measurement tools such as clm dist and clm info. A good set of values to start with is 1.4, 2 and 6. 7.3 The effect of node degrees on cluster granularity. Preferably the network should not have nodes of very high degree, that is, with exorbitantly many neighbours. Such nodes tend to obscure cluster structure and contribute to coarse clusters. The ways to combat this using mcl and sibling programs are documented in clmprotocols(5). Briefly, they are the transformations #knn() and #ceilnb() available to mcl, mcx alter and several more programs. 7.4 The effect of edge weight differentiation on cluster granularity. How similarities in the input graph were derived, constructed, adapted, filtered (et cetera) will affect cluster granularity. It is important that the similarities are honest; refer to faq 3.8. Another issue is that homogeneous similarities tend to result in more coarse-grained clusterings. You can make a set of similarities more homogeneous by applying some function to all of them, e.g. for all pairs of nodes (x y) replace S(x,y) by the square root, the log- arithm, or some other convex function. Note that you need not worry about scaling, i.e. the possibly large changes in magnitude of the similarities. MCL is not affected by absolute magnitudes, it is only affected by magnitudes taken relative to each other. As of version 03-154, mcl supports the pre-inflation -pi f option. Make a graph more homogeneous with respect to the weight function by using -pi with argument f somewhere in the interval [0,1] - 0.5 can be considered a reasonable first try. Make it less homogeneous by setting f somewhere in the interval [1,10]. In this case 3 is a reasonable starting point. Implementing the MCL algorithm 8.1 How easy is it to implement the MCL algorithm? Very easy, if you will be doing small graphs only, say up to a few thousand entries at most. These are the basic ingredients: o Adding loops to the input graph, conversion to a stochastic matrix. o Matrix multiplication and matrix inflation. o The interpretation function mapping MCL limits onto clusterings. These must be wrapped in a program that does graph input and cluster output, alternates multiplication (i.e. expansion) and inflation in a loop, monitors the matrix iterands thus found, quits the loop when convergence is detected, and interprets the last iterand. Implementing matrix muliplication is a standard exercise. Implement- ing inflation is nearly trivial. The hardest part may actually be the interpretation function, because you need to cover the corner cases of overlap and attractor systems of cardinality greater than one. Note that MCL does not use intricate and expensive operations such as matrix inversion or matrix reductions. In Mathematica or Maple, mcl should be doable in at most 100 lines of code. For perl you may need twice that amount. In lower level languages such as C or Fortran a basic MCL program may need a few hundred lines, but the largest part will probably be input/output and interpretation. To illustrate all these points, mcl now ships with minimcl, a small perl script that implements mcl for educational purposes. Its structure is very simple and should be easy to follow. Implementing the basic MCL algorithm makes a nice programming exer- cise. However, if you need an implementation that scales to several hundreds of thousands of nodes and possibly beyond, then your duties become much heavier. This is because one needs to prune MCL iterands (c.q. matrices) such that they remain sparse. This must be done carefully and preferably in such a way that a trade-off between speed, memory usage, and potential losses or gains in accuracy can be controlled via monitoring and logging of relevant characteris- tics. Some other points are i) support for threading via pthreads, openMP, or some other parallel programming API. ii) a robust and generic interpretation function is written in terms of weakly con- nected components. Cluster overlap / MCL iterand cluster interpretation 9.1 Introduction A natural mapping exists of MCL iterands to DAGs (directed acyclic graphs). This is because MCL iterands are generally diagonally posi- tive semi-definite - see [3]. Such a DAG can be interpreted as a clustering, simply by taking as cores all endnodes (sinks) of the DAG, and by attaching to each core all the nodes that reach it. This procedure may result in clusterings containing overlap. In the MCL limit, the associated DAG has in general a very degener- ated form, which induces overlap only on very rare occasions (see faq entry 9.2). Interpreting mcl iterands as clusterings may well be interesting. Few experiments have been done so far. It is clear though that early iterands generally contain the most overlap (when interpreted as clusterings). Overlap dissappears soon as the iterand index increases. For more information, consult the other entries in this section and the clmimac manual page. 9.2 Can the clusterings returned by mcl contain overlap? No. Clusterings resulting from the abstract MCL algorithm may in theory contain overlap, but the default behaviour in mcl is to remove it should it occur, by allocating the nodes in overlap to the first cluster in which they are seen. mcl will warn you if this occurs. This behaviour is switched off by supplying --keep-over- lap=yes. Do note that overlap is mostly a theoretical possibility. It is conjectured that it requires the presence of very strong symmetries in the input graph, to the extent that there exists an automorphism of the input graph mapping the overlapping part onto itself. It is possible to construct (highly symmetric) input graphs leading to cluster overlap. Examples of overlap in which a few nodes are involved are easy to construct; examples with many nodes are excep- tionally hard to construct. Clusterings associated with intermediate/early MCL iterands may very well contain overlap, see the introduction in this section and other entries. 9.3 How do I obtain the clusterings associated with MCL iterands? There are two options. If you are interested in clusterings contain- ing overlap, you should go for the second. If not, use the first, but beware that the resulting clusterings may contain overlap. The first solution is to use -dump cls (probably in conjunction with either -L or -dumpi in order to limit the number of matrices writ- ten). This will cause mcl to write the clustering generically asso- ciated with each iterand to file. The -dumpstem option may be conve- nient as well. The second solution is to use the -dump ite option (-dumpi and -dumpstem may be of use again). This will cause mcl to write the intermediate iterands to file. After that, you can apply clm imac (interpret matrix as clustering) to those iterands. clm imac has a -strict parameter which affects the mapping of matrices to cluster- ings. It takes a value between 0.0 and 1.0 as argument. The default is 0.001 and corresponds with promoting overlap. Increasing the -strict value will generally result in clusterings containing less overlap. This will have the largest effect for early iterands; its effect will diminish as the iterand index increases. When set to 0, the -strict parameter results in the clustering asso- ciated with the DAG associated with an MCL iterand as described in [3]. This DAG is pruned (thus possibly resulting in less overlap in the clustering) by increasing the -strict parameter. [add] Miscellaneous 10.1 How do I find the default settings of mcl? Use -z to find out the actual settings - it shows the settings as resulting from the command line options (e.g. the default settings if no other options are given). 10.2 What's next? I'd like to port MCL to cluster computing, using one of the PVM, MPI, or openMP frameworks. For the 1.002 release, mcl's internals were rewritten to allow more general matrix computations. Among other things, mcl's data structures and primitive operations are now more suited to be employed in a distributed computing environment. However, much remains to be done before mcl can operate in such an environment. If you feel that mcl should support some other standard matrix for- mat, let us know. BUGS This FAQ tries to compromise between being concise and comprehen- sive. The collection of answers should preferably cover the universe of questions at a pleasant level of semantic granularity without too much overlap. It should offer value to people interested in cluster- ing but without sound mathematical training. Therefore, if this FAQ has not failed somewhere, it must have failed. Send criticism and missing questions for consideration to mcl-faq at micans.org. AUTHOR Stijn van Dongen. SEE ALSO mclfamily(7) for an overview of all the documentation and the utili- ties in the mcl family. mcl's home at http://micans.org/mcl/. REFERENCES [1] Stijn van Dongen. Graph Clustering by Flow Simulation. PhD the- sis, University of Utrecht, May 2000. http://www.library.uu.nl/digiarchief/dip/diss/1895620/inhoud.htm [2] Stijn van Dongen. A cluster algorithm for graphs. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000. http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z [3] Stijn van Dongen. A stochastic uncoupling process for graphs. Technical Report INS-R0011, National Research Institute for Mathe- matics and Computer Science in the Netherlands, Amsterdam, May 2000. http://www.cwi.nl/ftp/CWIreports/INS/INS-R0011.ps.Z [4] Stijn van Dongen. Performance criteria for graph clustering and Markov cluster experiments. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000. http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z [5] Enright A.J., Van Dongen S., Ouzounis C.A. An efficient algo- rithm for large-scale detection of protein families, Nucleic Acids Research 30(7):1575-1584 (2002). NOTES This page was generated from ZOEM manual macros, http://micans.org/zoem. Both html and roff pages can be created from the same source without having to bother with all the usual conver- sion problems, while keeping some level of sophistication in the typesetting. MCL FAQ 12-135 14 May 2012 MCL FAQ(7) mcl-12-135/doc/clmresidue.azm0000644000402500021140000000455611322637753012726 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm residue} {html_title}{The clm residue manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{clm residue}{extend clustering of subgraph to clustering of graph.} \disclaim_clm{residue} \sec{synopsis}{SYNOPSIS} \par{ \clm{residue} \synreqopt{-icl}{fname}{input clustering} \synreqopt{-imx}{fname}{input graph} \synoptopt{-rpm}{fname}{residue projection matrix} \synoptopt{-o}{fname}{output clustering file} } \sec{description}{DESCRIPTION} \par{ The cluster file presumably contains a clustering of a subgraph of the graph\~\v{G} contained by the matrix file, implying that the row domain of that clustering is a subset of the node domain of the graph. \clm{residue} will compute a simple upwards projection of that clustering, resulting in a clustering of\~\v{G}. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-imx}{fname}{input graph}} \item{\defopt{-icl}{fname}{input clustering}} \item{\defopt{-rpm}{fname}{residue projection matrix}} \car{ The name for the file in which the residue projection matrix is stored. It contains for each node and for each cluster in the input clustering the combined weight of the (edges to the) neighbours of that node in that cluster. } \car{ The default output file name is \v{out.rpm}. } \item{\defopt{-o}{fname}{output clustering file}} \car{ The name for the file in which the majority vote projection clustering is stored. Aka the majority vote projection clustering storage file name. } \par{ This embodies a very crude approach to distributing the missing nodes in the input clustering onto that same cluster. For each node, the cluster is taken for which the residue projection is the largest (see above). The residue (i.e. the set of missing nodes) is initially viewed as a cluster; the set of nodes for which the projection is largest for the residue itself will form a new cluster, if it is not empty. } \par{ By default output is sent to STDOUT. } \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/stamp.stamp0000644000402500021140000000000711754270104012226 0000000000000012-135 mcl-12-135/doc/clmmate.html0000644000402500021140000002077111754271041012357 00000000000000 The clm mate manual

14 May 2012    clm mate 12-135

NAME

clm mate — compute best matches between two clusterings

clmmate is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode mate. The options -h, --apropos, --version, -set, --nop are accessible in all clm modes. They are described in the clm manual page.

SYNOPSIS

clm mate [-o fname (output file name)] [-b (omit headers)] [--one-to-many (require multiple hits in <clfile1>)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)] <clfile1> <clfile2>

DESCRIPTION

clm mate computes for each cluster X in clfile1 all clusters Y in clfile2 that have non-empty intersection and outputs a line with the data points listed below.

overlap(X,Y) # 2 * size(meet(X,Y)) / (size(X)+size(Y)) index(X) # name of cluster index(Y) # name of cluster size(meet(X,Y)) size(X-Y) # size of left difference size(Y-X) # size of right difference size(X) size(Y) projection(X, clfile2) # see below projection(Y, clfile1) # see below

The projected size of a cluster X relative to a clustering K is simply the sum of all the nodes shared between any cluster Y in K and X, duplications allowed. For example, the projected size of (0,1) relative to {(0,2,4), (1,4,9), (1,3,5)} equals 3.

The overlap between X and Y is exactly 1.0 if the two clusters are identical, and for nearly identical clusterings the score will be close to 1.0.

All of this information can also be obtained from the contingency matrix defined for two clusterings. The [i,j] row-column entry in a contigency matrix between to clusterings gives the number of entries in the intersection between cluster i and cluster j from the respective clusterings. The other information is implicitly present; the total number of nodes in clusters i and j for example can be obtained as the sum of entries in row i and column j respectively, and the difference counts can then be obtained by substracting the intersection count. The contingency matrix can easily be computed using mcx; e.g.

mcx /clfile2 lm /clfile1 lm tp mul /ting wm

will create the contingency matrix in mcl matrix format in the file ting, where columns range over the clusters in clfile1.

The output can be put to good use by sorting it numerically on that first score field. It is advisable to use a stable sort routine (use the -s option for UNIX sort) From this information one can quickly extract the closest clusters between two clusterings.

OPTIONS

-o fname (output file name)

Specify the name of the output file.

 
-b (omit headers)

Batch mode, omit column names.

 
--one-to-many (require multiple hits in <clfile1>)

Do not output information for clusters in the first file that are subset of a cluster in the second file.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcxalter.azm0000644000402500021140000000327111330077557012401 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxalter} {html_title}{The mcxalter manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcxalter}{various network transformations} \sec{synopsis}{SYNOPSIS} \par{ \mcxalter \synoptopt{-imx}{}{specify matrix input} \synoptopt{-abc}{}{specify label input} \synoptopt{-tab}{}{use tab file} \synoptopt{-o}{}{output} \shared_synoptopt{-tf} } \sec{description}{DESCRIPTION} \par{ This utility supplies various transformations of networks. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-abc}{}{label input}} \car{ The file name for input that is in label format.} \item{\defopt{-imx}{}{input matrix}} \car{ The file name for input that is in mcl native matrix format.} \item{\defopt{-tab}{}{use tab file}} \car{ This option causes the output to be printed with the labels found in the tab file. With \genopt{-abc} this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with \genopt{-imx} the tab domain and the matrix domain are required to be identical. } \shared_itemopt{-tf} \car{\shared_defopt{-tf}} \item{\defopt{-o}{fname}{output file}} \car{ Output file.} \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mcxio}, \mysib{mcx}, \mysib{mcxsubs}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/clmformat.azm0000644000402500021140000005342611322637753012556 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clmformat} {html_title}{The clmformat manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{*}{name}{NAME} \NAME{clm format}{display cluster results in readable form} \par{ (optionally with labels and/or cohesion and stickiness measures attached). } \par{ Unless used with the \genopt{-dump}{fname} or \genopt{--dump} option, \clmformat depends on the presence of the macro processor \bf{zoem}, as described further below. } \par{ The \genopt{-icl}{fname} input clustering option is always required. The \genopt{-imx}{fname} input matrix option is required in fancy mode. The tab file option \genopt{-tab}{fname} is needed if you want label information in the output rather than mcl identifiers. } \sec{synopsis}{SYNOPSIS} \par{ \clmformat has two different modes of output: \it{dump} and \it{fancy}. If neither is specified, \it{fancy} is used. In this mode, \clmformat generates a large arrary of performance measures related to nodes and clusters in both interlinked html output and plain text files. The files will be contained in an output directory that is newly created if not yet existing. In fancy mode the \genopt{-imx} option is required and the macro processor \bf{zoem} must be available (\httpref{http://micans.org/zoem}). } \par{ If \it{dump} is specified (see below how to do this) \clmformat just generates a dump file where each line contains a cluster in the form of tab-separated indices, or tab-separated labels in case the \genopt{-tab} option is used. This dump is easy to parse with a simple or even quick-and-dirty script. You can include some very simple performance measures in this dump file by supplying \genopt{--dump-measures}. Use \genopt{-dump}{fname} to specify the name of the file to dump to, rather than having \clmformat construct a file name by itself. } \par{ \clmformat can combine the both modes by using either \genopt{--dump} or \genopt{-dump}{fname} \it{and} \genopt{--fancy}. In this case the dump file will be created in the output directory that is used by \it{fancy} mode. } \par{\clmformat} \par{ \: begin{spacing}{{left}{12}} \synreqopt{-icl}{fname}{input cluster file} \synreqopt{-imx}{fname}{input matrix/graph file} \synoptopt{-tf}{spec}{apply tf-spec to input matrix} \synoptopt{-pi}{num}{apply pre-inflation to matrix} \synoptopt{-tab}{fname}{read tab file} \synoptopt{--lazy-tab}{allow mismatched tab-file} \synoptopt{-lump-count}{n}{node threshold} \synoptopt{--dump}{write dump to dump.} \synoptopt{-dump}{fname}{write dump to file} \synoptopt{--dump-pairs}{write cluster/node pair per line} \synoptopt{--dump-measures}{write simple performance measures} \synoptopt{-dump-node-sep}{str}{separate entries with str} \synoptopt{--fancy}{spawn information blizzard} \synoptopt{-dir}{dirname}{write results to directory} \synoptopt{-infix}{str}{use after base name/directory} \synoptopt{-nsm}{fname}{output node stickiness file} \synoptopt{-ccm}{fname}{output cluster cohesion file} \synoptopt{--adapt}{allow domain mismatch} \synoptopt{--subgraph}{take subgraph with --adapt} \synoptopt{-zmm}{fname}{assume macro definitions are in fname} \synoptopt{-fmt}{fname}{write to encoding file fname} \stdsynopt \: end{spacing} } \par{Consult the option descriptions and the introduction above for interdependencies of options.} \par{ \clmformat generates in fancy mode a logical description of the to-be-formatted content in a very small vocabulary of format-specific zoem macros. The appearance of the output can be easily changed by adapting a zoem macro definition file (also output by \clmformat) that is used by the zoem interpreter to interpret the logical elements. } \par{ The output format is apt to change over subsequent releases, as a result of user feedback. Such changes will most likely be confined to the zoem macro definition file. } \par{ The \ref{xpl}{cap} section further below is likely to be of interest. } \sec{description}{DESCRIPTION} \par{ The primary function of \clmformat is to display cluster results and associated confidence measures in a readable form, by listing clusters in terms of the labels associated with the indices that are used in the mcl matrix. The labels must be stored in a so called \it{tab} file; see the \optref{-tab}{\genopt{-tab}} option for more information. } \cpar{NOTE}{ \clmformat output is in the form of \it{zoem} macros. You need to have zoem installed in your system if you want \clmformat to be of use. Zoem will not be necessary if you are using the \genopt{-dump} option. } \par{ The \optref{-imx}{\genopt{-imx}{mx}} option is required unless the \genopt{-dump} option is used. The latter option results in special behaviour described under the \optref{-dump}{\genopt{-dump}{fname}} entry. } \par{ Output is by default written in a directory that is newly created if it does not yet exist (normally several files will be created, for which the directory acts as a natural container). It is possible to simply output to the current directory, for that you need to specify \useopt{-dir}{./}. If \useopt{-dir} is not specified, the output directory \v{fmt.} will be used, where \v{} is the argument to the \genopt{-cl} option. In the output directory, \clmformat will normally write two files. One contains zoem macros encoding formatted output (the encoding file), and the second (the definition file) contains zoem macro definitions which are used by the former. } \par{ The encoding file is by default called \v{fmt.azm} (cf. the \optref{-fmt}{\genopt{-fmt}{fname}} option). It contains \it{zoem} macros. It imports the macro definition file called \v{clmformat.zmm} that is normally also written by \clmformat. Another macro definition file can be specified by using the \optref{-zmm}{\genopt{-zmm}{}} option. In this case \clmformat will refrain from writing the definition file and replace mentions of \v{clmformat.zmm} in the encoding file by \v{}. } \par{ The encoding file needs to be processed by issuing one of the following commands from within the directory where the file is located. } \verbatim{\:/ zoem -i fmt -d html zoem -i fmt -d txt} \car{ The first will result in HTML formatted output, the second in plain text format. Obviously, you need to have installed zoem (e.g. from \httpref{http://micans.org/zoem/src/}) for this to work. } \par{ For each cluster a paragraph is output. First comes a listing of other clusters (in order of relevance, possibly empty) for which a significant amount of edges exists between the other and the current cluster. Second comes a listing of the nodes in the current cluster. For each node a small sublist is made (in order of relevance, possibly empty) of other clusters in which the node has neighbours and for which the total sum of corresponding edge weights is significant. Several quantities are output for each node/cluster pair that is deemed relevant. These are explained in the section \ref{xpl}{cap}. } \par{ Clusters will by default be output to file until the total node count has exceeded a threshold (refer to the \optref{-lump-count}{\genopt{-lump-count} option}). } \par{ \clmformat also shows how well each node fits in the cluster it is in and how cohesive each cluster is, using simple but effective measures (described in section \ref{xpl}{cap}). This enables you to compare the quality of the clusters in a clustering relative to each other, and may help in identifying both interesting areas and areas for which cluster structure is hard to find or perhaps absent. } \sec{options}{OPTIONS} \'begin{itemize}{\mcx_itemopts} \item{\defopt{-icl}{fname}{input cluster file}} \car{ Name of the clustering file. } \item{\defopt{-imx}{fname}{input matrix/graph file}} \car{ Name of the graph/matrix file. } \item{\defopt{-tf}{spec}{apply tf-spec to input matrix}} \car{ Transform the input matrix values according to the syntax described in \mysib{mcxio}. } \item{\defopt{-tab}{fname}{read tab file}} \car{ The file \v{fname} should be in \it{tab format}. Refer to \mysib{mcxio}. } \item{\defopt{--lazy-tab}{allow mismatched tab-file}} \car{ Allow missing and spurious entries in the tab file. } \item{\defopt{-dump}{fname}{write dump to file}} \car{ Clusters are written to file. For each cluster a single line is written containing all indices of all nodes in that cluster. The indices are separated by tabs. If a tab file is specified, the indices are replaced by the corresponding tab file entry. } \item{\defopt{--dump}{write dump to file}} \car{ As \genopt{-dump}{fname} except that \clmformat writes to the file named \v{dump.} where \v{} is the argument to the \genopt{-icl} option. } \item{\defopt{-infix}{str}{incorporate in base name}} \car{ \genarg{str} is included in the output file names. This can be used to store the results of different \clmformat runs (e.g. with differing \genopt{-tf} arguments) in the same directory. } \item{\defopt{--fancy}{force fancy mode}} \car{ This enforces fancy mode if either of \genopt{-dump} or \genopt{--dump} is given. The dump file will be created in the output directory. } \item{\defopt{--dump-pairs}{write cluster/node pair per line}} \car{ Rather than writing a single cluster on each line, write a single cluster index/node (either tab entry or index) pair per line. Works in conjunction with the \optref{-tab}{\genopt{-tab}} and \optref{-imx}{\genopt{-imx}} options. } \item{\defopt{--dump-measures}{write simple performance measures}} \car{ If an input matrix is specified with \genopt{-imx}{fname}, three measures of efficiency are prepended, respectively the simple projection score, efficiency or coverage, and the max-efficiency or max-coverage. } \item{\defopt{-dump-node-sep}{str}{separate entries with str}} \car{ Separate entries in the dump file with \genopt{str}. } \item{\defopt{-pi}{num}{apply pre-inflation to matrix}} \car{ Apply pre-inflation to the matrix specified with the \genopt{-imx} option. This will cause the efficiency scores to place a higher reward on high-weight edges being covered by a clustering (assuming that \genarg{num} is larger than one). } \par{ This option is also useful when \mcl itself was instructed to use pre-inflation when clustering a graph. } \item{\defopt{-lump-count}{n}{node threshold}} \car{ The zoem file is created such that during zoem processing clusters are formatted and output within a single file until the node threshold has been exceeded. A new file is then opened and the procedure repeats itself. } \item{\defopt{--adapt}{allow domain mismatch}} \car{ Allow the cluster domain to differ from the graph domain. Presumably the clustering is a clustering of a subgraph. The cohesion and stickiness measures will pertain to the relevant part of the graph only. } \""{Refer also to the --subgraph option described below.} \item{\defopt{--subgraph}{use restriction}} \car{ If the cluster domain is a subset of the graph domain, the cohesion and stickiness measures will by default still pertain to the entire graph. By setting this option, the measures will pertain to the subgraph induced by the cluster domain. } \item{\defopt{-dir}{dirname}{write results to directory}} \car{ Use \usearg{dirname} as output directory. It will be created if it does not exist already. } \item{\defopt{-fmt}{fname}{write to encoding file fname}} \car{ Write to encoding file \usearg{fname} rather than the default \v{fmt.azm}. It is best to supply fname with the standard zoem suffix \v{.azm}. Zoem will process file of any name, but those lacking the \v{.azm} suffix must be specified using the zoem \genopt{-I}{fname} option. } \item{\defopt{-zmm}{defsname}{assume macro definitions are in fname}} \car{ If this option is used, \clmformat will not output the definition file, and mentions of the definition file in the encoding file will use the file name \v{defsname}. This option assumes that a valid definition file by the name of \v{defsname} does exist. } \item{\defopt{-nsm}{fname}{output node stickiness file}} \car{ This option specifies the name in which to store (optionally) the \bf{node stickiness matrix}. It has the following structure. The columns range over all elements in the graph as specified by the \genopt{-imx} option. The rows range over the clusters as specified by the \genopt{-icl} option. The entries contain the projection value of that particular node onto that particular clusters, i.e. the sum of the weights of all arcs going out from the node to some node in that cluster, written as a fraction relative to the sum of weights of all outgoing arcs. } \item{\defopt{-ccm}{fname}{output cluster cohesion file}} \car{ This option specifies the name of the file in which to store (optionally) the \bf{cluster cohesion matrix}. It has the following structure. Both columns and rows range over all clusters in the clustering as specified by the \genopt{-icl} option. An entry specifies the projection of one cluster onto another cluster, which is simply the average of the projection value onto the second cluster of all nodes in the first cluster. } \stddefopt \end{itemize} \sec{xpl}{OUTPUT EXPLAINED} \par{ What follows is an explanation of the output provided by the standard zoem macros. The output comes in a pretty terse number-packed format. The decision was made not to include headers and captions in the output in order to keep it readable. You might want to print out the following annotated examples. At the same side of the equation, the following is probably tough reading unless you have an actual example of clmformatted output at hand. } \${roff}{\par{ If you are reading this in a terminal, you might need to resize it to have width larger than 80 columns, as the examples below are formatted in verbatim mode.} } \par{ Below mention is made of the projection value for a node/cluster pair. This is simply the total amount of edge weights for that node in that cluster (corresponding to neighbours of the node in the cluster) relative to the overall amount of edge weights for that node (corresponding to all its neighbours). The coverage measure (refered to as \bf{cov}) is also used. This is similar to the projection value, except that a) the coverage measure rewards the inclusion of large edge weights (and penalizes the inclusion of insignificant edge weights) and b) rewards node/cluster pairs for which the neighbour set of the node is very similar to the cluster. The maximum coverage measure (refered to as \bf{maxcov}) is similar to the normal coverage measure except that it rewards inclusion of large edge weights even more. The cov and maxcov performance measures have several nice continuity and monotonicity properties and are described in \refer{pcfgcmce}. } \cpar{Example cluster header}{} \verbatim{\ Cluster 0 sz 15 self 0.82 cov 0.43-0.26 10: 0.11 18: 0.05 12: 0.02} \cpar{explanation}{} \verbatim{\ Cluster 0 sz 15 self 0.82 cov 0.43-0.26 | | | | | clid count proj cov covmax 10: 0.11 | | clidx1 projx1 18: 0.05 | | clidx2 projx2 clid Numeric cluster identifier (arbitrarily) assigned by MCL. count The size of cluster clid. proj Projection value for cluster clid [d]. cov Coverage measure for cluster clid [d]. maxcov Max-coverage measure for cluster clid [d]. clidx1 Index of other cluster sharing relatively many edges. projx1 Projection value for the clid/clidx1 pair of clusters [e]. clidx2 : projx2 : as clidx1 and projx1} \cpar{Example inner node}{ An inner node is listed under a cluster, and it is simply a member of that cluster. The name is as opposed to 'outer node', described below. } \verbatim{\ [foo bar zut] 21 7-5 0.73 0.420-0.331 0.282-0.047 0.071-0.035 <3.54> 10 6/3 0.16 0.071-0.047 0.268-0.442 12 4/2 0.11 0.071-0.035 0.296-0.515} \cpar{explanation}{} \verbatim{\ [label] 21 7-5 0.73 0.420-0.331 0.282-0.047 0.071-0.035 <3.54> | | | | | | | | | | | idx nbi nbo proj cov covmax max_i min_i max_o-min_o SUM 10 6/3 0.16 0.268-0.442 0.071-0.047 | | | | | | | | clusid sz nb proj cov covmax max_i min_i label Optional; with -tab option. idx Numeric (mcl) identifier. nbi Count of the neighbours of node idx within its cluster. nbo Count of the neighbours of node idx outside its cluster. proj Projection value [a] of nbi edges. cov Skewed projection [b], rewards inclusion of large edge weights. covmax As cov above, rewarding large edge weights even more. max_i Largest edge weight in the nbi set, normalized [c]. min_i Smallest edge weight in the nbi set [c]. max_o Largest edge weight outside the nbi set [c] min_o Smallest edge weight outside the nbi set [c]. SUM The sum of all edges leaving node idx. clusid Index of other cluster that is relevant for node idx. sz Size of that cluster. nb Count of neighbours of node idx in cluster clusid. proj Projection value of edges from node idx to cluster clusid. cov Skewed projection of edges from node idx to cluster clusid. covmax Maximally skewed projection, as above. max_o Largest edge weight for node idx to cluster clusid [c]. min_o Smallest edge weight for node idx to cluster clusid [c].} \cpar{Example outer node}{ An outer node is listed under a cluster. The node is not part of that cluster, but seems to have substantial connections to that cluster. } \verbatim{\ [zoo eek few] 29 18#2 2-5 0.65 0.883-0.815 0.436-0.218 0.073-0.055 /4 0.27 0.070-0.109 0.073-0.055} \cpar{explanation}{} \verbatim{\ [label] 29 18#2 2-5 0.65 0.883-0.815 0.436-0.218 0.073-0.055 | | | | | | | | | | | | idx cl sz nbi nbo proj cov maxcov max_i min_i max_o min_o id /4 0.27 0.070-0.109 0.073-0.055 <2.29> | | | | | | | nb proj cov maxcov max_i min_i SUM label Optional; with -tab option. idx Numeric (mcl) identifier clid Index of the cluster that node idx belongs to sz Size of the cluster that node idx belongs to proj : cov : All these entries are the same as described above covmax : for inner nodes, pertaining to cluster clid, max_i : i.e. the native cluster for node idx min_i : (it is a member of that cluster). max_o : min_o : nb The count of neighbours of node idx in the current cluster proj Projection value for node idx relative to current cluster. cov Skewed projection (rewards large edge weights), as above. covmax Maximally skewed projection, as above. max_o Largest edge weight for node idx in current cluster [c]. min_o smallest edge weight for node idx in current cluster [c]. SUM The sum of *all* edges leaving node idx.} \begin{itemize}{ {textindent}{3} {itemmargin}{1} {align}{right} {interitem}{1} {flow}{compact} } \item{[a]} \car{ The projection value for a node relative to some subset of its neighbours is the sum of edge weights of all edges to that subset. The sum is witten as a fraction relative to the sum of edge weights of all neighbours. } \item{[b]} \car{ cov and covmax stand for coverage and maximal coverage. The coverage measure of a node/cluster pair is a generalized and skewed projection value [a] that rewards the presence of large edge weights in the cluster, relative to the collection of weights of all edges departing from the node. The maxcov measure is a projection value skewed even further, correspondingly rewarding the inclusion of large edge weights. The cov and maxcov performance measures have several nice continuity properties and are described in \refer{pcfgcmce}. } \item{[c]} \car{ All edge weights are written as the fraction of the sum SUM of all edge weights of edges leaving node idx. } \item{[d]} \car{ For clusters the projection value and the coverage measures are simply the averages of all projection values [a], respectively coverage measures [b], taken over all nodes in the cluster. The cluster projection value simply measures the sum of edge weights internal to the cluster, relative to the total sum of edge weights of all edges where at least one node in the edge is part of the cluster. } \item{[e]} \car{ The projection value for start cluster x and end cluster y is the sum of edge weights of edges between x and y as a fraction of the sum of all edge weights of edges leaving x. } \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{references}{REFERENCES} \par{ \reference{pcfgcmce} Stijn van Dongen. \it{Performance criteria for graph clustering and Markov cluster experiments}. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.\| \httpref{http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z} } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/mclblastline.ps0000644000402500021140000004137411754271040013065 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:12 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 126.225 <6d636c626c6173746c696e652831292055534552>20 48 R 128.725 <434f4d4d414e4453206d636c626c6173746c696e65283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d636c626c6173746c69 6e6520ad206120706970656c696e6520666f7220636c7573746572696e672066726f6d20 424c415354208c6c65732e>100 96 Q F1<53594e4f50534953>20 112.8 Q/F2 10 /Times-Bold@0 SF<6d636c626c6173746c696e65>100 124.8 Q F0 <8c6c652d6e616d65>2.5 E F2<6d636c626c6173746c696e65>100 148.8 Q F0<5b64 65626c617374206f7074696f6e735d205b706970656c696e65206f7074696f6e735d208c 6c652d6e616d65>2.5 E F2<4e4f>100 172.8 Q<5445>-.4 E<6d636c>100 184.8 Q F0 2.064<68617320616371756972656420746865206162696c69747920746f2070726f 636565642066726f6d206c6162656c20696e7075742061732070726f6475636564206279> 4.564 F F2<6d63786465626c617374>4.563 E F0 4.563<2e54>C<686973>-4.563 E .727<656e61626c657320612076>100 196.8 R .727<657279206c6967687477656967 6874206d656368616e69736d206f662067656e65726174696e6720636c7573746572696e 67732066726f6d20424c415354208c6c65732e>-.15 F -1.1<596f>5.728 G 3.228 <756d>1.1 G<69676874>-3.228 E -.1<7761>100 208.8 S<6e7420746f2075736520 74686973206d656368616e69736d2c20646f63756d656e74656420696e20746865>.1 E F2<6d636c206d616e75616c>2.5 E F0<2e>A F2<4e4f>100 232.8 Q<5445>-.4 E F0 .599<6d636c626c6173746c696e65207573656420746f207265717569726520286769> 100 244.8 R -.15<7665>-.25 G 3.099<6e64>.15 G<6566>-3.099 E .598<61756c 7420706172616d657465727329207468652070726573656e6365206f6620746865>-.1 F F2<7a6f656d>3.098 E F0 .598<6d6163726f2070726f6365732d>3.098 F .265 <736f7220746f2070726f647563652064657461696c6564206f75747075742e>100 256.8 R .265 <54686973206973206e6f206c6f6e6765722074686520636173652e20427920646566> 5.265 F .265<61756c74206d636c626c6173746c696e65206e6f>-.1 F 2.765<7763> -.25 G .265<7265617465732061>-2.765 F .928 <6c696e652d6261736564207461622d7365706172617465642064756d70208c6c652e> 100 268.8 R<5a6f656d>5.928 E/F3 10/Times-Italic@0 SF<77696c6c>3.428 E F0 .928<626520696e>3.428 F -.2<766f>-.4 G -.1<6b65>.2 G 3.428<6477>.1 G .928<68656e20746865202d2d666d742d66>-3.428 F<616e63>-.1 E 3.427<796f> -.15 G .927<7074696f6e206973207375702d>-3.427 F 2.5<706c6965642e20496e> 100 280.8 R<7468617420636173652c207a6f656d206f62>2.5 E <76696f75736c792068617320746f20626520696e7374616c6c65642e>-.15 E F1 <4445534352495054494f4e>20 297.6 Q F2<6d636c626c6173746c696e65>100 309.6 Q F0 2.521<77726170732061726f756e64>5.021 F F2<6d636c706970656c696e65> 5.021 E F0 5.021<2e49>C 5.021<7473>-5.021 G 2.521 <7570706c69657320746865>-5.021 F F2<2d2d706172736572>5.021 E F0<3d>A F3 <617070>A F0<616e64>5.021 E F2<2d2d706172736572>5.022 E<2d746167>-.37 E F0<3d>A F3<737472>A F0 .284 <6f7074696f6e732c2073657474696e67207468656d207265737065637469>100 321.6 R -.15<7665>-.25 G .284<6c7920746f>.15 F F3<6d63786465626c617374>2.784 E F0<616e64>2.784 E F3<626c617374>2.784 E F0 2.784<2e54>C .284 <6869732074656c6c73>-2.784 F F2<6d636c706970656c696e65>2.784 E F0 .283 <746f20757365>2.784 F F2<6d637864652d>2.783 E<626c617374>100 333.6 Q F0 .563<6173207468652070617273652073637269707420696e2069747320706970656c69 6e652e>3.062 F .563<546865207369676e698c63616e6365206f6620746865>5.563 F F3<626c617374>3.063 E F0 .563<746167206973207468617420616e>3.063 F 3.063 <796d>-.15 G<63786465626c617374>-3.063 E .592<6f7074696f6e2063616e206265 20706173736564207468726f756768206d636c626c6173746c696e6520616e64206d636c 706970656c696e6520627920696e73657274696e6720746869732074616720696e746f20 746865206f7074696f6e2e>100 345.6 R -.15<466f>100 357.6 S 2.926<7265>.15 G .426<78616d706c652c206d63786465626c617374206163636570747320746865> -3.076 F F2<2d2d73636f72>2.927 E<65>-.18 E F0<3d>A F3<78>A F0 2.927 <6f7074696f6e2e205768656e>2.927 F .427 <7573696e67206d636c626c6173746c696e652c20796f752073706563696679206974> 2.927 F<6173>100 369.6 Q F2<2d2d626c6173742d73636f72>4.21 E<65>-.18 E F0 <3d>A F3<78>A F0 6.71<2e54>C 1.71<6865726520617265207477>-6.71 F 4.21 <6f65>-.1 G 1.71 <7863657074696f6e7320746f20746869732072756c652c206e616d656c7920746865> -4.36 F F2<2d2d78692d646174>4.21 E F0<3d>A F3<737472>A F0<616e64>4.21 E F2<2d2d786f2d>4.21 E<646174>100 381.6 Q F0<3d>A F3<737472>A F0 <6f7074696f6e732e20526566657220746f20746865>2.5 E F2 <6d636c706970656c696e65>2.5 E F0 <6d616e75616c20666f72206d6f726520696e666f726d6174696f6e2e>2.5 E <4164646974696f6e616c6c79>100 405.6 Q 2.891<2c61>-.65 G .391<6c6c206d63 6c706970656c696e65206f7074696f6e73206172652061636365707461626c6520746f> -2.891 F F2<6d63786465626c617374>2.892 E F0 .392 <61732077656c6c2e20546865>2.892 F F2<2d2d776861746966>2.892 E F0 .392 <6973207573652d>2.892 F .01<66756c20666f722067657474696e672061206665656c 20666f722074686520706970656c696e652e>100 417.6 R<546865>5.009 E F2 <2d2d6d636c2d49>2.509 E F0<3d>A F3<66>A F0 .009 <696e8d6174696f6e206f7074696f6e20616e64>2.509 F F2 <2d2d6d636c2d736368656d65>2.509 E F0<3d>A F3<69>A F0<736368656d65>2.509 E<696e6465>100 429.6 Q 2.709<786f>-.15 G .209<7074696f6e732061726520796f 7572206261736963206d65616e7320666f72207265737065637469>-2.709 F -.15 <7665>-.25 G .209<6c79206d616e6970756c6174696e6720636c757374657220677261 6e756c617269747920616e6420616c6c6f6361742d>.15 F 2.542 <696e67207265736f75726365732e205265616420746865>100 441.6 R F2<6d636c> 5.042 E F0 2.541<6d616e75616c20656e747269657320666f72206120646573637269 7074696f6e206f662074686520636f72726573706f6e64696e67>5.042 F F2<2d49> 5.041 E F0<616e64>5.041 E F2<2d736368656d65>100 453.6 Q F0 <6d636c206f7074696f6e732e>2.5 E .246 <54686520626573742061647669636520697320746f20676c616e6365206f>100 477.6 R -.15<7665>-.15 G 2.746<7274>.15 G<6865>-2.746 E F2 <6d63786465626c617374>2.746 E F0<616e64>2.746 E F2 <6d636c706970656c696e65>2.747 E F0 .247 <6f7074696f6e7320696e206f7264657220746f206765742061206665656c2d>2.747 F .618<696e6720666f72207768696368206f662074686f7365206d617920636f6d652069 6e2068616e647920666f7220796f752e205468656e2073746172742065>100 489.6 R .617<78706572696d656e74696e672e2055736520746865>-.15 F F2 <2d2d776861746966>3.117 E F0 <6f7074696f6e2c2069742077696c6c2074656c6c20796f7520776861742077>100 501.6 Q<6f756c642068617070656e20776974686f75742061637475616c6c7920646f69 6e672069742e>-.1 E F1<4f5054494f4e53>20 518.4 Q F0<416c6c>100 530.4 Q F2 <6d63786465626c617374>2.89 E F0<616e64>2.89 E F2<6d636c706970656c696e65> 2.89 E F0 2.89<6f7074696f6e732e206d63786465626c617374>2.89 F .39<6f7074 696f6e73206d75737420626520706173736564207573696e6720746865206d656368612d> 2.89 F<6e69736d206465736372696265642061626f>100 542.4 Q -.15<7665>-.15 G <2e>.15 E F1<4558414d504c4553>20 559.2 Q/F4 10/Courier@0 SF <6d636c626c6173746c696e65202d2d626c6173742d73636f72653d62>118 571.2 Q<2d 2d626c6173742d736f72743d61202d2d626c6173742d626375743d35202d2d6d636c2d49 3d322e35206d79626c61737466696c65>136 583.2 Q F0 .131<546869732077696c6c 20757365206269742073636f7265732c20736f727420636c757374657220696e64696365 73207375636820746861742074686520636f72726573706f6e64696e67206c6162656c73 20617265206f72646572656420616c7068612d>100 607.2 R<6265746963616c6c79> 100 619.2 Q 3.259<2c69>-.65 G .759 <676e6f7265206269742073636f726573206e6f742065>-3.259 F .759 <7863656564696e6720352c20616e642075736520696e8d6174696f6e2076>-.15 F .76 <616c756520322e352e20496e207468697320636173652c20746865206f7574707574> -.25 F .384 <636c7573746572696e672077696c6c20626520696e20746865208c6c65206e616d6564> 100 631.2 R F4<6d79626c61737466696c652e4932357332>2.883 E F0 .383 <28493235206964656e74696679696e672074686520696e8d6174696f6e2076>2.883 F <616c7565>-.25 E .466<616e64207332206964656e74696679696e6720746865207265 736f7572636520736368656d652920616e642074686520666f726d6174746564206f7574 7075742077696c6c20626520696e20746865208c6c65>100 643.2 R F4 <6d79626c6173742d>2.966 E<66696c652e49323573322e666d74>100 655.2 Q F0 <2e>A F4<6d636c626c6173746c696e65202d2d707265706172652d6d636c206d79626c 61737466696c65>118 679.2 Q<6d636c626c6173746c696e65202d2d73746172742d6d 636c202d2d6d636c2d493d312e32206d79626c61737466696c65>118 691.2 Q<6d636c 626c6173746c696e65202d2d73746172742d6d636c202d2d6d636c2d493d312e36206d79 626c61737466696c65>118 703.2 Q<6d636c626c6173746c696e65202d2d7374617274 2d6d636c202d2d6d636c2d493d322e30206d79626c61737466696c65>118 715.2 Q<6d 636c626c6173746c696e65202d2d73746172742d6d636c202d2d6d636c2d493d322e3420 6d79626c61737466696c65>118 727.2 Q F0 <6d636c626c6173746c696e652031322d313335>20 768 Q<3134204d61792032303132> 127.615 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 126.225 <6d636c626c6173746c696e652831292055534552>20 48 R 128.725 <434f4d4d414e4453206d636c626c6173746c696e65283129>2.5 F/F1 10/Courier@0 SF<6d636c626c6173746c696e65202d2d73746172742d6d636c202d2d6d636c2d493d32 2e38206d79626c61737466696c65>118 84 Q<657463202e2e>118 96 Q F0 1.433<54 6865208c7273742072756e20707265706172657320616e20696e707574206d6174726978 20746f2062652072656164206279>100 120 R/F2 10/Times-Bold@0 SF<6d636c> 3.933 E F0 6.433<2e49>C 3.932<6e74>-6.433 G 1.432 <686973206361736520697473208c6c652077696c6c206265206e616d6564>-3.932 F F1<6d79626c61737466696c652e73796d>100 132 Q F0 5.62<2e54>C .62 <68652073756273657175656e742072756e73207573652074686973206d61747269782e> -5.62 F F2<4341>5.62 E<564541>-1.45 E<54>-.95 E F0 .62 <74686572652061726520736f6d65206f7074696f6e73>3.12 F 1.53 <7468617420796f75206e65656420746f20726570656174207768656e2065>100 144 R -.15<7865>-.15 G 1.53 <637574696e672073756368206120726573756d65642072756e2e20546865>.15 F 4.03 <7961>-.15 G 1.53<726520636c6561726c79206d61726b>-4.03 F 1.53 <656420696e20746865>-.1 F F2<6d636c706970656c696e65>100 156 Q F0 2.334< 6d616e75616c202d206e616d656c792074686f7365206f7074696f6e7320746861742061 66>4.834 F 2.334<66656374206e616d6573206f662028696e7465726d656469617465 29208c6c65732e204d6f7374>-.25 F<696d706f7274616e746c79>100 168 Q 2.5 <2c74>-.65 G<68697320636f6e6365726e7320746865206d636c706970656c696e6520 6f7074696f6e732074686174206861>-2.5 E .3 -.15<76652070>-.2 H<72658c78> .15 E F2<2d2d786f>2.5 E F0<6f72>2.5 E F2<2d2d7869>2.5 E F0 2.5<2e46>C <6f722065>-2.65 E<78616d706c652c>-.15 E F1<6d636c626c6173746c696e65202d 2d707265706172652d6d636c202d2d626c6173742d73636f72653d62202d2d786f2d6461 743d62206d79626c61737466696c65>118 192 Q<6d636c626c6173746c696e65202d2d 73746172742d6d636c202d2d786f2d6461743d62202d2d6d636c2d493d312e32206d7962 6c61737466696c65>118 204 Q<6d636c626c6173746c696e65202d2d73746172742d6d 636c202d2d786f2d6461743d62202d2d6d636c2d493d312e36206d79626c61737466696c 65>118 216 Q<6d636c626c6173746c696e65202d2d73746172742d6d636c202d2d786f 2d6461743d62202d2d6d636c2d493d322e30206d79626c61737466696c65>118 228 Q< 6d636c626c6173746c696e65202d2d73746172742d6d636c202d2d786f2d6461743d6220 2d2d6d636c2d493d322e34206d79626c61737466696c65>118 240 Q<6d636c626c6173 746c696e65202d2d73746172742d6d636c202d2d786f2d6461743d62202d2d6d636c2d49 3d322e38206d79626c61737466696c65>118 252 Q<657463202e2e>118 264 Q F0 1.212<496e207468697320636173652c20746865206d6174726978208c6c652077696c6c 206265206e616d6564>100 288 R F1<6d79626c61737466696c652e622e73796d>3.711 E F0 3.711<2c61>C 1.211<6e6420746865>-3.711 F F2<2d2d786f2d646174>3.711 E F0<6f7074696f6e73>3.711 E<6d75737420626520726570656174656420696e20616c 6c2072756e7320736f20746861742074686520706970656c696e65207265636f6e737472 756374732074686520636f7272656374208c6c65206e616d652873292e>100 300 Q/F3 10.95/Times-Bold@0 SF -.548<4155>20 316.8 S<54484f52>.548 E F0 <5374696a6e2076>100 328.8 Q<616e20446f6e67656e>-.25 E F3 <53454520414c534f>20 345.6 Q F2<6d63786465626c617374>100 357.6 Q F0<2c>A F2<6d636c706970656c696e65>2.5 E F0<2c>A F2<6d6378617373656d626c65>2.5 E F0<2e>A<6d636c626c6173746c696e652031322d313335>20 768 Q <3134204d61792032303132>127.615 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxdiameter.html0000644000402500021140000002407611754271044013244 00000000000000 The mcx diameter manual

14 May 2012    mcx diameter 12-135

NAME

mcx diameter — compute the diameter of a graph

SYNOPSIS

mcx diameter [options]

mcxdiameter is not in actual fact a program. This manual page documents the behaviour and options of the mcx program when invoked in mode diameter. The options -h, --apropos, --version, -set, --nop, -progress <num> are accessible in all mcx modes. They are described in the mcx manual page.

mcx diameter [-abc <fname> (specify label input)] [-imx <fname> (specify matrix input)] [-o <fname> (output file name)] [-tab <fname> (use tab file)] [-t <int> (use <int> threads)] [-J <intJ> (a total of <intJ> jobs are used)] [-j <intj> (this job has index <intj>)] [--summary (output diameter and average shortest path length)] [--list (list eccentricity for all nodes)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

mcx diameter computes the diameter of a graph. The input graph should be symmetric. Results will be unpredictable for directed graphs. For label input this is irrelevant as mcx diameter will create a symmetric graph from the input.

The input graph/matrix, if specified with the -imx option, has to be in mcl matrix/graph format. You can use label input instead by using the -abc option. Refer to mcxio for a description of these two input formats. By default mcx diameter reads from STDIN and expects matrix format. To specify label input from STDIN use -abc -.

OPTIONS

-abc <fname> (label input)

The file name for input that is in label format.

 
-imx <fname> (input matrix)

The file name for input that is in mcl native matrix format.

 
-o <fname> (output file name)

The name of the file to write output to.

 
-tab <fname> (use tab file)

This option causes the output to be printed with the labels found in the tab file. With -abc this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with -imx the tab domain and the matrix domain are required to be identical.

 
-t <int> (use <int> threads)
-J <intJ> (a total of <intJ> jobs are used)
-j <intj> (this job has index <intj>)

Computing the diameter of a graph is time-intensive. If you have multiple CPUs available consider using as many threads. Additionally it is possible to spread the computation over multiple jobs/machines. Conceptually, each job takes a number of threads from the total thread pool. If job control is used (the -J option is used) then the number of jobs should not exceed the number of threads. The total number of threads divided by the total number of jobs defines the number of threads that will be used by the current job. Additionally, the number of threads specified signifies the total added amount of all threads across all machines and must be the same for all jobs. This number is used by each job to infer its own set of tasks. The following set of options, if given to as many commands, defines three jobs, each running four threads.

-t 12 -G 3 -g 0 -t 12 -G 3 -g 1 -t 12 -G 3 -g 2
 
--list (list eccentricity for all nodes)
--summary (output diameter and average eccentricity)

The default mode is --list, which results in output of the eccentricity of all nodes. The eccentricity of a node is the distance to any node that is the furthest away from it. The diameter of a graph is the maximum of the eccentricity taken over all nodes in a graph. In this mode mcx diameter will not output the diameter itself. Use --summary to output just the diameter and the average eccentricity.

SEE ALSO

mcxio, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/clmvol.azm0000644000402500021140000000375511322637753012066 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm vol} {html_title}{The clm vol manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{clm vol}{compute volatile nodes from a set of clusterings} \disclaim_clm{vol} \sec{synopsis}{SYNOPSIS} \par{ \clm{vol} \synoptopt{-fraction}{num}{nff factor} \synoptopt{-o}{fname}{output file} + } \sec{description}{DESCRIPTION} \par{ \clm{vol} computes a score for each node, which at a minimum is equal to one. The output is in the form of a matrix containing a single column. The score correlates with what is deemed to be volatile behaviour. For all pairs of clusterings the set of all intersections is computed, and these are considered in turn. An intersection is deemed to be volatile if the size of the intersection is less than half the size of the smallest of the two clusters. In that case, for each node in the intersection its volatility score is incremented by one over the size of the intersection. The size comparison can be made more stringent by increasing the \genopt{-fraction}{} option, which is by default set to \v{0.5}. Volatility occurs if the size of the intersection is less than \usearg{} times the size of the smallest cluster. If the \genopt{-fraction} value is increased all the way up to 1.0, the implication is that an intersection is considered volatile unless one of the two clusteres considered is a subset of the other. } \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{options}{OPTIONS} \'begin{itemize}{\mcx_itemopts} \item{\defopt{-fraction}{num}{nff factor}} \car{See the discussion at \secref{description}. } \item{\defopt{-o}{fname}{output file}} \end{itemize} \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/clmimac.10000644000402500021140000000675311754271041011542 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm imac" 1 "14 May 2012" "clm imac 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm imac \- Interpret Matrices (c\&.q\&. MCL iterands output by \fBmcl\fP) As Clusterings\&. clmimac is not in actual fact a program\&. This manual page documents the behaviour and options of the clm program when invoked in mode \fIimac\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP are accessible in all \fBclm\fP modes\&. They are described in the \fBclm\fP manual page\&. .SH SYNOPSIS \fBclm imac\fP -imx [options] \fBclm imac\fP \fB-imx\fP fname (\fIinput file\fP) \fB[-o\fP fname (\fIname/stem for output\fP)\fB]\fP \fB[-dag\fP fname (\fIoutput DAG\fP)\fB]\fP \fB[-overlap\fP str (\fIoverlap mode\fP)\fB]\fP \fB[-sort\fP str (\fIsize|revsize|lex|none\fP)\fB]\fP \fB[-strict\fP num (\fIin 0\&.\&.1\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION Use \fBclm imac\fP to interpret matrices (as clusterings) output by \fBmcl\fP using \fBmcl\fP\&'s \fB-dump\fP\ \&\fBite\fP option\&. Use \fBclm imac\fP only if you have a special reason; the normal usage of \fBmcl\fP is to do multiple runs for varying \fB-I\fP parameters and use the clusterings output by \fBmcl\fP itself\&. One reason is if you are interested in clusterings with overlap; early MCL iterands generally induce clusterings possessing overlap\&. Another reason is to investigate how the cluster structure associated with the MCL process evolves over time\&. .SH OPTIONS .ZI 2m "\fB-imx\fP fname (\fIinput file\fP)" \& .br The input file is presumably an MCL iterand resulting from the mcl option \fB-dump\fP\ \&\fBite\fP\&. .in -2m .ZI 2m "\fB-strict\fP num (\fIin 0\&.\&.1\fP)" \& .br Higher values (up until 1) will thin out the DAG constructed by \fBclm imac\fP\&. The default value is 0\&.00001, yielding the full DAG\&. .in -2m .ZI 2m "\fB-o\fP fname (\fIfile name/stem\fP)" \& .br Write to file named \fIfname\fP\&. .in -2m .ZI 2m "\fB-dag\fP fname (\fIoutput DAG\fP)" \& .br Write the DAG (directed acyclic graph) constructed from the input to file\&. This DAG is constructed according to the structure associated with diagonally positive semi-definite matrices as described in the PhD thesis \fIGraph clustering by flow simulation\fP\&. Consult \fBmclfamily(7)\fP for references\&. .in -2m .ZI 2m "\fB-sort\fP str (\fIsize|revsize|lex|none\fP)" \& .br Sort the clusters either by increasing size, decreasing size, lexicographically by the indices they contain, or use the clustering exactly as obtained from the interpretation routine\&. .in -2m .ZI 2m "\fB-overlap\fP mode (\fIoverlap mode\fP)" \& .br With \fImode\fP set to \fIcut\fP, remove any overlap by allocating the nodes in overlap to the first cluster in which they were found\&. Mode \fIkeep\fP leaves overlap unchanged, and mode \fIsplit\fP results in overlapping parts excised and introduced as clusters in their own right\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcxerdos.html0000644000402500021140000002701611754271044012563 00000000000000 The mcx erdos manual

14 May 2012    mcx erdos 12-135

NAME

mcx erdos — compute shortest paths in a graph

SYNOPSIS

mcx erdos [options]

mcxerdos is not in actual fact a program. This manual page documents the behaviour and options of the mcx program when invoked in mode erdos. The options -h, --apropos, --version, -set, --nop, -progress <num> are accessible in all mcx modes. They are described in the mcx manual page.

mcx erdos [-query <fname> (query input stream)] [-abc <fname> (specify label input)] [-imx <fname> (specify matrix input)] [-tab <fname> (use tab file)] [-o <fname> (output file name)] [--is-directed (input graph is directed)] [--is-undirected (input graph is directed)] [-write-path <fname> (path matrix file)] [-write-step <fname> (step matrix file)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

mcx erdos computes shortest paths in graphs. It can read a graph either in label format with -abc or in native format with -imx. It reads pairs of node indices from an input stream, and for each pair outputs a data structure describing the full set of shortest paths between the two nodes. Edge weights are not taken into account, so an edge always represents a unit step size between two nodes irrespective of its weight. A mode to compute shortest paths while taking into account edge weights will be implemented later as mcx dijkstra.

Note that the full set of shortest paths between two nodes in a graph can be described as a directed acyclic graph (DAG), and this is how mcx erdos operates. It is easy to construct graphs and node pairs for which the number of shortest paths between the two nodes becomes exponential in the size of the graph, whereas the lattice description is always garantueed to map to a subset of the graph edge set.

By default it is assumed that the input graph should be treated as undirected. To this end a transformation step is applied to ensure that the graph in memory is undirected. It is possible to compute shortest paths in directed graphs by using --is-directed, and it is possible to omit the transformation step by using --is-undirected. If the latter is specified while the input graph is in native format and in fact directed, results will be erroneous. This could in theory be mitigated by checking that the input graph is undirected. However, the reason to use --is-undirected is simply to increase speed of operation, whereas such a check would be equally expensive as the transformation step that is omitted with --is-undirected.

The input graph/matrix, if specified with the -imx option, has to be in mcl matrix/graph format. You can use label input instead by using the -abc option. Refer to mcxio for a description of these two input formats. By default mcx erdos reads from STDIN and expects matrix format. To specify label input from STDIN use -abc -.

OPTIONS

-query <fname> (query input)

The name for the file from which queries are read. A query consists of two white-space separated node indices or two white-space separated labels. Labels can only be used if either -abc or -tab is specified.

 
-abc <fname> (label input)

The file name for input that is in label format.

 
-imx <fname> (input matrix)

The file name for input that is in mcl native matrix format.

 
-o <fname> (output file name)

The name of the file to write output to.

 
-tab <fname> (use tab file)

This option causes the output to be printed with the labels found in the tab file. With -abc this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with -imx the tab domain and the matrix domain are required to be identical.

 
--is-directed (compute directed shortest paths)

The input graph is not transformed and assumed to be directed. Shortest paths are computed taking this into account.

 
--is-undirected (skip symmetrification step)

The input graph is not transformed and assumed to be undirected. Shortest paths are computed on the assumption that the input is undirected. Use this option only if you are sure the input is undirected and need to have faster execution.

 
-write-path <fname> (path matrix file)
-write-step <fname> (step matrix file)

The path matrix enumerates the nodes that take part in all shortest paths. The first list contains those nodes that lie at distance 1 of the source node, the second list contains nodes lying at distance 2, and so on. The step matrix contains all the edges that make up the lattice of shortest paths between the two query nodes.

SEE ALSO

mcxio, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mclcm.html0000644000402500021140000005210211754271043012023 00000000000000 The mclcm manual

14 May 2012    mclcm 12-135

NAME

mclcm — hierarchical clustering of graphs with mcl

SYNOPSIS

mclcm <-|fname> [mclcm-options] [-- "mcl options"*]

mclcm <-|fname> -a "-I 4 --shadow=vl" mclcm <-|fname> -a "-I 3" -- "-I 5" mclcm <-|fname> -a "-I 3" -b1 "" -- "-ph 3 --shadow=vl -I 5"

mclcm <-fname> [--contract (contraction mode)] [--dispatch (dispatch mode)] [--integrate (integrate mode)] [--subcluster (subcluster mode)] [-a <opts> (shared mcl options)] [-b1 <opts> (dedicated base 1 mcl options)] [-b2 <opts> (dedicated base 2 mcl options)] [-tf spec (apply tf-spec to input matrix)] [-c <fname> (input clustering)] [-n <num> (iteration limit)] [--root (ensure universe root clustering)] [-cone <fname> (nested cluster stack file)] [-stack <fname> (expanded cluster stack file)] [-coarse <fname> (coarsened graphs file)] [-write (stack,cone,coarse,steps)] [-write-base <fname> (write base matrix)] [-stem <str> (prefix for all outputs)] [--mplex=y/n (write clusterings separately)] [-annot str (dummy annotation option)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)] [-q spec (log levels)] [-z (show default shared options)] [-- "mcl options"*]

DESCRIPTION

The mclcm options may be followed by a number of trailing arguments. The trailing arguments should be separated from the mclcm options by the separator --. Normally each trailing argument should consist of a set of zero, one, or more mcl arguments enclosed in quotes or double quotes to group them together. These arguments are passed to the successive stages of hierarchical clustering. They are combined with the default options. If an option is specified both in the default options list and in a trailing options list the latter specification overrides the former. When the --integrate option is specified the trailing arguments must be names of files containing mcl clusterings; see further below. mclcm has four major modes of operation, namely contraction (default), integration, dispatch, and subcluster. Each mode is described a little below. Note though that dispatch mode is not the best mode to use for hierarchical clustering. It is mostly useful to generate multiple mcl clusterings in a single run.

In all modes mclcm will generate a file, by default called mcl.cone. This is a representation of a hierarchical clustering that is particular to mcl. It can be converted to newick format like this:

mcxdump -imx-tree mcl.cone --newick -o NEWICKFILE OR mcxdump -imx-tree mcl.cone --newick -o NEWICKFILE -tab TABFILE

In the last example, TABFILE should be a file containing a mapping from mcl labels to application labels. Refer to mcxio for more information about tab files and mcl input/ouput formats.

OPTIONS

--contract (repeated contraction mode)

This is the default mode of operation. At each successive step of constructing the hierarchy on top of the first level mcl clustering, mclcm uses a matrix derived from the input matrix and the last computed clustering to compute a contracted graph. The contracted graph is a graph where the nodes represent the clusters of the last clustering. The matrix derived from the input graph that is used to construct the contracted graph is called the base matrix. The base matrix can be either the start matrix or the expansion matrix. The start matrix is the input matrix after transformations have been applied to it (if any). The expansion matrix is the first expanded matrix of some mcl process applied to the input graph.

By default the base matrix is constructed from either the start matrix or the expansion matrix obtained from the first mcl process. It is possible to use a start matrix derived from special purpose mcl transformation parameters (such as -ph and -tf) or an expansion matrix derived from a special purpose mcl process. The -b1 and -b2 parameters provide the interfaces to this functionality.

You are advised to start with a high inflation value for the input graph and to use shadowing, e.g. include --shadow=vl in the -a argument. This generally leads to hierarchies that are better balanced. Shadowing is a transformation where nodes are added to the graph, preventing relatively distant nodes from unwanted chaining. For more information refer to the mcl manual. The invocations in SYNOPSIS are a good starting point.

 
--dispatch (different mcl processes)

In this mode each trailing argument is specified as a set of options to pass to an mcl process. For each trailing argument an mcl process is thus computed. The set of resulting clusterings is integrated into a hierarchy.

 
--integrate (existing clusterings)

This mode is similar to dispatch mode. The difference is that with this option mclcm simply integrates a set of already existing clusterings. Each trailing argument must be the name of a file containing a clustering. The set of clusterings thus specified is integrated into a hierarchy.

 
--subcluster (repeated sub-clustering)

In this mode each trailing argument specifies a set of options to pass to an mcl process. The second clustering process is applied to the graph of components induced by the first clustering, resulting in a further subdivision of the first clustering. This approach is repeated with each further trailing argument. With this approach, the first clustering will be the most coarse clustering. Hence, subsequent trailing arguments will typically specify increasingly higher inflation values, pre-inflation values, and optionally more stringent transformation parameters in order to achieve further subdivsions.

 
-a <opts> (shared mcl options)

Use this to change and/or set the default mcl options for all iterations. Use quotes if necessary. Example of usage: -a "-I 5".

 
-b1 <opts> (dedicated base 1 mcl options)

This will apply the mcl options opts to the input matrix. The resulting start matrix is used as the base matrix for constructing contracted graphs.

 
-b2 <opts> (dedicated base 2 mcl options)

This will apply the mcl options opts to the input matrix and compute the first iterand of the corresponding mcl process. The first iterand, aka the expansion matrix, is used as the base matrix for constructing contracted graphs.

 
-tf <tf-spec> (transform input matrix values)

Transform the input matrix values according to the syntax described in mcxio.

 
-c <fname> (input clustering)

The hierarchical clustering process will be kicked off by the clustering found in <fname>.

 
-n <num> (iteration limit)

This puts an upper bound to the number of contractions that will be performed.

 
--root (ensure universe root clustering)

In case the graph consists of different connected components, the last clustering computed by the mclcm process will correspond with those connected components. This option simply adds an artificial clustering where all nodes have been joined into a single cluster.

 
-cone <fname> (nested cluster stack file)

File to write the nested cluster stack to. The nested cluster stack contains a sequence of clusterings, each written as an MCL matrix. The first (bottom) clustering is a clustering of the nodes in the input graph. Each subsequent clustering is a clustering where the nodes are the clusters of the previous clustering. mcxdump can dump this format if the file name is given as the -imx-stack option. The explanation for the cone/stack discrepancy is simple. To mcxdump the contents are simply a stack of matrices. It does not care whether the stack is cone shaped, cylindrical, or yet another shape.

 
-stack <fname> (expanded cluster stack file)

File to write the expanded cluster stack to. The expanded cluster stack is similar to the nested cluster stack except that each cluster lists all the nodes in the input graph it contains. mcxdump can dump this format if the file name is given as the -imx-stack option.

 
-coarse <fname> (coarsened graphs file)

File to write the sequence of coarsened graphs to. Each clustering induces a coarsened graph where the nodes represent the clusters and an edge between two nodes represents the connectivity between the corresponding two clusters. The computation of this connectivity takes into account all edges between the two clusters in in the original graph.

 
-write <tag> (select output modes)

Use this option to explicitly specify all of the output types you want written in a comma-separated string. <tag> may contain any of the strings stack, cone, coarse, steps. The current default is to write all of these except coarse. The latter dumps the intermediate coarsened (aka contracted) graphs to a single file.

 
-write-base <fname> (write base matrix)

Write the base matrix to file. This can be useful for debugging expectations.

 
-stem <str> (prefix for all outputs)

All output files share the same prefix. The default is mcl and can be changed with this option.

 
--mplex=y/n (write clusterings separately)

If turned on each clustering is written in a separate file. The first clustering is written to the file <stem>.3 where <stem> is determined by the -stem option. For each subsequent clustering the index is incremented by two, so clusterings are written to files for which the name ends with an odd index.

 
-annot str (dummy annotation option)

mclcm writes the command line with which it was invoked to the output file (either of the cone or stack files). Use this option to include any additional information. mclcm does nothing with this option except copying it as just described.

 
-q spec (log levels)

Set the quiet level. Read tingea.log for syntax and semantics.

 
-z (show default shared options)

Show the default mcl options. These are used for each mcl invocation as successively applied to the input graph and succeeding contracted graphs.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcxarray.ps0000644000402500021140000007315111754271044012244 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:16 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 4 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 137.355<6d637861727261792831292055534552>20 48 R 139.855<434f4d4d414e4453206d63786172726179283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0 <6d6378617272617920ad2054>100 96 Q <72616e73666f726d206172726179206461746120746f204d434c206d61747269636573> -.35 E F1<53594e4f50534953>20 112.8 Q/F2 10/Times-Bold@0 SF <6d63786172726179>100 124.8 Q F0<5b6f7074696f6e735d>2.5 E F2 .644 <6d63786172726179205b2d64617461>100 148.8 R F0 .643<666e616d652028>3.143 F/F3 10/Times-Italic@0 SF .643<696e7075742064617461208c6c65>B F0<29>A F2 3.143<5d5b>C<2d696d78>-3.143 E F0 .643<666e616d652028>3.143 F F3 .643 <696e707574206d6174726978208c6c65>B F0<29>A F2 3.143<5d5b>C<2d636f> -3.143 E F0 .643<6e756d2028>3.143 F F3<286162736f6c75746529>A <6375746f66>100 160.8 Q 4.062<6666>-.18 G 1.562 <6f72206f75747075742076616c756573202872>-4.062 F<6571756972>-.37 E <656429>-.37 E F0<29>A F2 4.062<5d5b>C<2d2d70656172736f6e>-4.062 E F0 <28>4.062 E F3 1.562<7573652050>B<656172>-.8 E 1.562<736f6e20636f7272> -.1 F 1.562<656c6174696f6e202864656661756c7429>-.37 F F0<29>A F2 4.062 <5d5b>C<2d2d7370656172>-4.062 E<2d>-.37 E<6d616e>100 172.8 Q F0<28>3.38 E F3 .88<7573652053706561726d616e2072>B .879<616e6b20636f7272>-.15 F <656c6174696f6e>-.37 E F0<29>A F2 3.379<5d5b>C<2d6670>-3.379 E F0 .879 <3c6d6f64653e2028>3.379 F F3 .879<757365208c6e67>B .879 <65727072696e74206d6561737572>-.1 F<65>-.37 E F0<29>A F2 3.379<5d5b>C <2d2d646f74>-3.379 E F0<28>3.379 E F3 .879<75736520646f74>B<7072>100 184.8 Q<6f64756374>-.45 E F0<29>A F2 3.064<5d5b>C<2d2d636f73696e65> -3.064 E F0<28>3.064 E F3 .564<75736520636f73696e65>B F0<29>A F2 3.064 <5d5b>C<2d736b697072>-3.064 E F0 .564<3c6e756d3e2028>3.064 F F3 .564 <736b6970203c6e756d3e20646174612072>B<6f7773>-.45 E F0<29>A F2 3.064 <5d5b>C<2d736b697063>-3.064 E F0 .565<3c6e756d3e2028>3.065 F F3 <736b6970>A .394<3c6e756d3e206461746120636f6c756d6e73>100 196.8 R F0<29> A F2 2.894<5d5b>C<2d6f>-2.894 E F0 .394<666e616d652028>2.894 F F3 .394 <6f7574707574208c6c6520666e616d65>B F0<29>A F2 2.894<5d5b>C <2d77726974652d746162>-2.894 E F0 .394<3c666e616d653e2028>2.894 F F3 .394<77726974652072>B .393<6f77206c6162656c7320746f>-.45 F<8c6c65>100 208.8 Q F0<29>A F2 2.882<5d5b>C<2d6c>-2.882 E F0 .382<3c6e756d3e2028> 2.882 F F3<74616b>A 2.882<656c>-.1 G .382<6162656c73206672>-2.882 F .382 <6f6d20636f6c756d6e203c6e756d3e>-.45 F F0<29>A F2 2.883<5d5b>C <2d646967697473>-2.883 E F0 .383<3c6e756d3e2028>2.883 F F3 .383 <6f7574707574207072>B<65636973696f6e>-.37 E F0<29>A F2 2.883<5d5b>C <2d2d77726974652d>-2.883 E<62696e617279>100 220.8 Q F0<28>4.154 E F3 1.654<7772697465206f757470757420696e2062696e61727920666f726d6174>B F0 <29>A F2 4.154<5d5b>C<2d74>-4.154 E F0 1.654<3c696e743e2028>4.154 F F3 1.654<757365203c696e743e20746872>B<65616473>-.37 E F0<29>A F2 4.154 <5d5b>C<2d4a>-4.154 E F0 1.654<3c696e744a3e2028>4.154 F F3 4.154<6174>C 1.654<6f74616c206f66>-4.154 F 1.732<3c696e744a3e206a6f6273206172>100 232.8 R 4.232<6575>-.37 G<736564>-4.232 E F0<29>A F2 4.232<5d5b>C<2d6a> -4.232 E F0 1.732<3c696e746a3e2028>4.232 F F3 1.732 <74686973206a6f622068617320696e6465>B 4.232<783c>-.2 G<696e746a3e>-4.232 E F0<29>A F2 4.232<5d5b>C<2d7374617274>-4.232 E F0 1.732<3c696e743e2028> 4.232 F F3 1.732<737461727420617420636f6c756d6e>B 1.508 <3c696e743e20696e636c7573697665>100 244.8 R F0<29>A F2 4.008<5d5b>C <2d656e64>-4.008 E F0 1.508<3c696e743e2028>4.008 F F3 1.508 <656e6420617420636f6c756d6e203c696e743e204558636c7573697665>B F0<29>A F2 4.007<5d5b>C<2d2d7472616e73706f7365>-4.007 E F0<28>4.007 E F3 1.507 <776f726b207769746820746865>B<7472>100 256.8 Q .237 <616e73706f7365642064617461206d6174726978>-.15 F F0<29>A F2 2.737<5d5b>C <2d2d72616e6b2d7472616e7366>-2.737 E<6f726d>-.25 E F0<28>2.737 E F3 -.15 <7261>C .237<6e6b207472>.15 F .237 <616e73666f726d207468652064617461208c72>-.15 F<7374>-.1 E F0<29>A F2 2.738<5d5b>C<2d7466>-2.738 E F0 .238<737065632028>2.738 F F3<7472>A <616e73666f726d>-.15 E -.37<7265>100 268.8 S .728 <73756c74206e6574776f726b>.37 F F0<29>A F2 3.228<5d5b>C <2d7461626c652d7466>-3.228 E F0 .727<737065632028>3.228 F F3<7472>A .727 <616e73666f726d20696e707574207461626c65206265666f72>-.15 F 3.227<6570> -.37 G -.45<726f>-3.227 G<63657373696e67>.45 E F0<29>A F2 3.227<5d5b>C <2d6e>-3.227 E F0 .727<6d6f64652028>3.227 F F3<6e6f726d616c697a65>A <696e707574>100 280.8 Q F0<29>A F2 3.334<5d5b>C<2d2d7a6572>-3.334 E <6f2d61732d6e61>-.18 E F0<28>3.334 E F3<7472>A .834<656174207a6572>-.37 F .834<6f6573206173206d697373696e672064617461>-.45 F F0<29>A F2 3.334 <5d5b>C<2d77726974652d64617461>-3.334 E F0 .834<3c666e616d653e2028>3.334 F F3 .835<7772697465206461746120746f208c6c65>B F0<29>A F2<5d>A <5b2d77726974652d6e61>100 292.8 Q F0 2.07<3c666e616d653e2028>4.57 F F3 2.07<7772697465204e>B 4.569<416d>-.27 G 2.069<617472697820746f208c6c65> -4.569 F F0<29>A F2 4.569<5d5b>C<2d2d6a6f622d696e66>-4.569 E<6f>-.25 E F0<28>4.569 E F3 2.069<7072696e7420696e6465>B 4.569<7872>-.2 G<616e67> -4.719 E 2.069<657320666f722074686973206a6f62>-.1 F F0<29>A F2<5d>A <5b2d2d68656c70>100 304.8 Q F0<28>2.5 E F3 <7072696e7420746869732068656c70>A F0<29>A F2 2.5<5d5b>C<2d68>-2.5 E F0 <28>2.5 E F3<7072696e7420746869732068656c70>A F0<29>A F2 2.5<5d5b>C <2d2d76>-2.5 E<657273696f6e>-.1 E F0<28>2.5 E F3<7072696e7420766572>A <73696f6e20696e666f726d6174696f6e>-.1 E F0<29>A F2<5d>A F1 <4445534352495054494f4e>20 321.6 Q F2<6d63786172726179>100 333.6 Q F0 .714<63616e2065697468657220726561642061208d6174208c6c6520636f6e7461696e 696e6720617272617920646174612028>3.213 F F2<2d64617461>A F0 3.214<296f>C 3.214<72616d>-3.214 G .714 <6174726978208c6c652073617469736679696e6720746865>-3.214 F .106 <6d636c20696e70757420666f726d61742028>100 345.6 R F2<2d696d78>A F0 .106< 292e20496e2074686520666f726d657220636173652069742077696c6c20627920646566> B .106<61756c742077>-.1 F .106<6f726b20776974682074686520726f>-.1 F .105 <77732061732074686520646174612076>-.25 F<65632d>-.15 E .267<746f72732e20 496e20746865206c617474657220636173652069742077696c6c20627920646566>100 357.6 R .267<61756c742077>-.1 F .267 <6f726b20776974682074686520636f6c756d6e732061732074686520646174612076> -.1 F .267<6563746f727320286e6f74652074686174206d636c>-.15 F .332<6d6174 7269636573206172652070726573656e7465642061732061206c697374696e67206f6620 636f6c756d6e73292e>100 369.6 R .331<546869732063616e206265206368616e6765 6420666f7220626f7468207573696e6720746865>5.331 F F2<2d2d7472616e732d> 2.831 E<706f7365>100 381.6 Q F0<6f7074696f6e2e>2.5 E .863<54686520696e70 75742064617461206d617920636f6e7461696e206d697373696e67206461746120696e20 74686520666f726d206f6620656d70747920636f6c756d6e732c204e>100 405.6 R 3.363<4176>-.35 G .864<616c75657320286e6f742061>-3.613 F -.25<7661>-.2 G <696c2d>.25 E 1.08<61626c652f6170706c696361626c65292c206f72204e614e2076> 100 417.6 R 1.08<616c75657320286e6f742061206e756d626572292e>-.25 F 1.08 <5468652070726f6772616d206b>6.08 F 1.08 <6565707320747261636b206f662074686573652c20616e64207768656e>-.1 F .571< 636f6d707574696e672074686520636f7272656c6174696f6e206265747765656e207477> 100 429.6 R 3.071<6f72>-.1 G -.25<6f77>-3.071 G 3.071<736f>.25 G 3.071 <7263>-3.071 G .572<6f6c756d6e732069676e6f72657320616c6c20706f736974696f 6e7320776865726520616e>-3.071 F 3.072<796f>-.15 G .572<6e65206f66>-3.072 F<746865207477>100 441.6 Q 2.5<6f68>-.1 G <6173206d697373696e6720646174612e>-2.5 E F1<4f5054494f4e53>20 458.4 Q F2 <2d64617461>100 470.4 Q F0<666e616d652028>2.5 E F3 <696e7075742064617461208c6c65>A F0<29>A<53706563696679207468652064617461 208c6c6520636f6e7461696e696e67207468652065>120 482.4 Q <787072657373696f6e2076>-.15 E 2.5<616c7565732e204974>-.25 F <73686f756c64206265207461622d7365706172617465642e>2.5 E F2<2d696d78>100 506.4 Q F0<666e616d652028>2.5 E F3<696e707574206d6174726978208c6c65>A F0 <29>A<5468652065>120 518.4 Q<787072657373696f6e2076>-.15 E<616c75657320 61726520726561642066726f6d2061208c6c6520696e206d636c206d617472697820666f 726d61742e>-.25 E F2<2d2d70656172736f6e>100 542.4 Q F0<28>2.5 E F3 <7573652050>A<656172>-.8 E<736f6e20636f7272>-.1 E <656c6174696f6e202864656661756c7429>-.37 E F0<29>A F2 <2d2d73706561726d616e>100 554.4 Q F0<28>2.5 E F3 <7573652053706561726d616e2072>A<616e6b20636f7272>-.15 E<656c6174696f6e> -.37 E F0<29>A F2<2d2d636f73696e65>100 566.4 Q F0<28>2.5 E F3 <75736520636f73696e65>A F0<29>A F2<2d2d646f74>100 578.4 Q F0<28>2.5 E F3 <7573652074686520646f74207072>A<6f64756374>-.45 E F0<29>A .951<55736520 6f6e65206f6620746865736520746f20737065636966792074686520636f7272656c6174 696f6e206d6561737572652e204e6f746520746861742074686520646f742070726f6475 6374206973206e6f74206e6f72>120 590.4 R<2d>-.2 E<6d616c6973656420616e6420 73686f756c64206f6e6c79206265207573656420776974682076>120 602.4 Q <65727920676f6f6420726561736f6e2e>-.15 E F2<2d6670>100 626.4 Q F0 <3c6d6f64653e2028>2.5 E F3<73706563696679208c6e67>A <65727072696e74206d6561737572>-.1 E<65>-.37 E F0<29>A .961<46696e676572 7072696e747320617265207573656420746f2064658c6e6520616e20656e746974792069 6e207465726d73206f66206974206861>120 638.4 R .962 <76696e67206f72206e6f74206861>-.2 F .962 <76696e67206365727461696e207472616974732e>-.2 F .986<54686973206d65616e 7320746861742061208c6e6765727072696e742063616e20626520726570726573656e74 6564206279206120626f6f6c65616e2076>120 650.4 R<6563746f72>-.15 E 3.486 <2c61>-.4 G .986<6e64206120736574206f66208c6e676572>-3.486 F<2d>-.2 E 1.098<7072696e74732063616e20626520726570726573656e74656420627920616e2061 72726179206f6620737563682076>120 662.4 R 1.098 <6563746f72732e20496e207468652070726573656e6365206f66206d616e>-.15 F 3.599<7974>-.15 G 1.099<726169747320616e64>-3.599 F .991<656e7469746965 73207468652064696d656e73696f6e73206f6620737563682061206d6174726978206361 6e2067726f>120 674.4 R 3.491<776c>-.25 G<6172>-3.491 E .99 <67652e20546865207370617273652073746f7261676520656d706c6f>-.18 F .99 <796564206279>-.1 F .387<4d434c2d6564676520697320696465616c6c7920737569 74656420746f20746869732c20616e64206d6378617272617920697320696465616c6c79 2073756974656420746f2074686520636f6d7075746174696f6e206f6620616c6c>120 686.4 R .933<706169727769736520636f6d70617269736f6e73206265747765656e20 73756368208c6e6765727072696e74732e>120 698.4 R .932 <43757272656e746c79206d6378617272617920737570706f727473208c76>5.932 F 3.432<6564>-.15 G<6966>-3.432 E<666572>-.25 E<2d>-.2 E 2.121<656e742074 79706573206f66208c6e6765727072696e742c206465736372696265642062656c6f>120 710.4 R 4.622<772e204769>-.25 F -.15<7665>-.25 G 4.622<6e74>.15 G 2.322 -.1<776f208c>-4.622 H 2.122 <6e6765727072696e74732c20746865206e756d626572206f6620747261697473>.1 F .087<756e6971756520746f20746865208c7273742069732064656e6f746564206279> 120 722.4 R F3<61>2.586 E F0 2.586<2c74>C .086<6865206e756d62657220756e 6971756520746f20746865207365636f6e642069732064656e6f746564206279>-2.586 F F3<62>2.586 E F0 2.586<2c61>C .086<6e6420746865>-2.586 F <6d637861727261792031322d313335>20 768 Q<3134204d61792032303132>138.745 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 137.355<6d637861727261792831292055534552>20 48 R 139.855<434f4d4d414e4453206d63786172726179283129>2.5 F <6e756d626572207468617420746865>120 84 Q 2.5<7968>-.15 G -2.25 -.2 <61762065>-2.5 H<696e20636f6d6d6f6e2069732064656e6f746564206279>2.7 E/F1 10/Times-Italic@0 SF<63>2.5 E F0<2e>A<68616d6d696e67>120 108 Q <5468652048616d6d696e672064697374616e63652c2064658c6e6564206173>140 120 Q F1<61>2.5 E F0<2b>A F1<62>A F0<2e>A<74616e696d6f746f>120 144 Q <5468652054>140 156 Q <616e696d6f746f2073696d696c6172697479206d6561737572652c>-.8 E F1<63>2.5 E F0<2f28>A F1<61>A F0<2b>A F1<62>A F0<2b>A F1<63>A F0<292e>A <636f73696e65>120 180 Q <54686520636f73696e652073696d696c6172697479206d6561737572652c>140 192 Q F1<63>2.5 E F0<2f737172742828>A F1<61>A F0<2b>A F1<63>A F0<292a28>A F1 <62>A F0<2b>A F1<63>A F0<29292e>A<6d656574>120 216 Q<53696d706c79207468 65206e756d626572206f6620736861726564207472616974732c206964656e746963616c 20746f>140 228 Q F1<63>2.5 E F0<2e>A<636f>120 252 Q -.15<7665>-.15 G<72> .15 E 2.611<416e>140 264 S .111<6f726d616c6973656420616e64206e6f6e2d7379 6d6d65747269632073696d696c6172697479206d6561737572652c20726570726573656e 74696e6720746865206672616374696f6e206f6620747261697473>-2.611 F .583 <7368617265642072656c617469>140 276 R .883 -.15<76652074>-.25 H 3.083 <6f74>.15 G .583<6865206e756d626572206f66207472616974732062792061207369 6e676c6520656e746974792e>-3.083 F .582<54686973206769>5.582 F -.15<7665> -.25 G 3.082<7374>.15 G .582<68652076>-3.082 F<616c7565>-.25 E F1<63> 3.082 E F0<2f28>A F1<61>A F0<2b>A F1<63>A F0<29>A <696e206f6e6520646972656374696f6e2c20616e64207468652076>140 288 Q <616c7565>-.25 E F1<63>2.5 E F0<2f28>A F1<62>A F0<2b>A F1<63>A F0 2.5 <2969>C 2.5<6e74>-2.5 G<6865206f746865722e>-2.5 E/F2 10/Times-Bold@0 SF <2d736b697072>100 312 Q F0<3c6e756d3e2028>2.5 E F1 <736b6970203c6e756d3e20646174612072>A<6f7773>-.45 E F0<29>A <536b697020746865208c727374>120 324 Q F1<3c6e756d3e>2.5 E F0 <6461746120726f>2.5 E<77732e>-.25 E F2<2d736b697063>100 348 Q F0 <3c6e756d3e2028>2.5 E F1<736b6970203c6e756d3e206461746120636f6c756d6e73> A F0<29>A<49676e6f726520746865208c727374>120 360 Q F1<3c6e756d3e>2.5 E F0<6461746120636f6c756d6e732e>2.5 E F2<2d6c>100 384 Q F0<3c6e756d3e2028> 2.5 E F1<74616b>A 2.5<656c>-.1 G<6162656c73206672>-2.5 E <6f6d20636f6c756d6e203c6e756d3e>-.45 E F0<29>A .653<53706563698c65732074 6f20636f6e737472756374206120746162206f66206c6162656c732066726f6d20746869 73206461746120636f6c756d6e2e>120 396 R .653 <546865207461622063616e206265207772697474656e20746f208c6c65>5.653 F <7573696e67>120 408 Q F2<2d77726974652d746162>2.5 E F1<666e616d65>2.5 E F0<2e>A F2<2d77726974652d746162>100 432 Q F0<3c666e616d653e2028>2.5 E F1 <77726974652072>A<6f77206c6162656c7320746f208c6c65>-.45 E F0<29>A .729< 5772697465206120746162208c6c652e20496e207468652073696d706c65206361736520 776865726520746865206c6162656c732061726520696e20746865208c72737420646174 6120636f6c756d6e20697420697320737566>120 444 R<8c2d>-.25 E .508 <6369656e7420746f206973737565>120 456 R F2<2d736b6970632031>3.008 E F0 5.508<2e49>C 3.008<666d>-5.508 G .509<6f7265206461746120636f6c756d6e7320 6e65656420746f20626520736b6970706564206f6e65206d7573742065>-3.008 F .509 <78706c696369746c7920737065632d>-.15 F <69667920746865206461746120636f6c756d6e20746f2074616b>120 468 Q 2.5 <656c>-.1 G<6162656c732066726f6d2077697468>-2.5 E F2<2d6c>2.5 E F1<6c> 2.5 E F0<2e>A F2<2d74>100 492 Q F0<3c696e743e2028>2.5 E F1 <757365203c696e743e20746872>A<65616473>-.37 E F0<29>A F2<2d4a>100 504 Q F0<3c696e744a3e2028>2.5 E F1 2.5<6174>C <6f74616c206f66203c696e744a3e206a6f6273206172>-2.5 E 2.5<6575>-.37 G <736564>-2.5 E F0<29>A F2<2d6a>100 516 Q F0<3c696e746a3e2028>2.5 E F1 <74686973206a6f622068617320696e6465>A 2.5<783c>-.2 G<696e746a3e>-2.5 E F0<29>A .654<436f6d707574696e6720616c6c20706169727769736520636f7272656c 6174696f6e732069732074696d652d696e74656e7369>120 528 R .954 -.15 <76652066>-.25 H .654<6f72206c6172>.15 F .654<676520696e7075742e>-.18 F .654<496620796f75206861>5.654 F .954 -.15<7665206d>-.2 H<756c7469706c65> .15 E 1.346<435055732061>120 540 R -.25<7661>-.2 G 1.347 <696c61626c6520636f6e7369646572207573696e67206173206d616e>.25 F 3.847 <7974>-.15 G 1.347<6872656164732e204164646974696f6e616c6c79206974206973 20706f737369626c6520746f2073707265616420746865>-3.847 F 2.992 <636f6d7075746174696f6e206f>120 552 R -.15<7665>-.15 G 5.492<726d>.15 G 2.992<756c7469706c65206a6f62732f6d616368696e65732e>-5.492 F <436f6e6365707475616c6c79>7.992 E 5.492<2c65>-.65 G 2.992 <616368206a6f622074616b>-5.492 F 2.992<65732061206e756d626572206f66>-.1 F .523 <746872656164732066726f6d2074686520746f74616c2074687265616420706f6f6c2e> 120 564 R<4164646974696f6e616c6c79>5.523 E 3.023<2c74>-.65 G .523<686520 6e756d626572206f662074687265616473202861732073706563698c6564206279> -3.023 F F2<2d74>3.023 E F0<29>A<63757272656e746c79>120 576 Q F1 .09 <6d757374206265207468652073616d6520666f7220616c6c206a6f6273>2.59 F F0 2.59<2c61>C 2.59<7369>-2.59 G 2.59<7469>-2.59 G 2.59<7375>-2.59 G .09 <7365642062792065616368206a6f6220746f20696e66657220697473206f>-2.59 F .09<776e20736574206f66207461736b732e>-.25 F .7<54686520666f6c6c6f>120 588 R .7<77696e6720736574206f66206f7074696f6e732c206966206769>-.25 F -.15<7665>-.25 G 3.201<6e74>.15 G 3.201<6f61>-3.201 G 3.201<736d>-3.201 G<616e>-3.201 E 3.201<7963>-.15 G .701<6f6d6d616e64732c2064658c6e657320 7468726565206a6f62732c20656163682072756e2d>-3.201 F <6e696e6720666f757220746872656164732e>120 600 Q/F3 10/Courier@0 SF <2d742034202d4a2033202d6a2030>120 624 Q<2d742034202d4a2033202d6a2031>120 636 Q<2d742034202d4a2033202d6a2032>120 648 Q F2<2d2d6a6f622d696e66>100 684 Q<6f>-.25 E F0<28>2.5 E F1<7072696e7420696e6465>A 2.5<7872>-.2 G <616e67>-2.65 E<657320666f722074686973206a6f62>-.1 E F0<29>A F2 <2d7374617274>100 696 Q F0<3c696e743e2028>2.5 E F1 <737461727420617420636f6c756d6e203c696e743e20696e636c7573697665>A F0<29> A F2<2d656e64>100 708 Q F0<3c696e743e2028>2.5 E F1 <656e6420617420636f6c756d6e203c696e743e204558636c7573697665>A F0<29>A F2 <2d2d6a6f622d696e66>120 720 Q<6f>-.25 E F0 .218<63616e206265207573656420 746f206c6973742074686520736574206f6620636f6c756d6e2072616e67657320746f20 62652070726f63657373656420627920746865206a6f62206173206120726573756c74> 2.718 F<6d637861727261792031322d313335>20 768 Q<3134204d61792032303132> 138.745 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 137.355<6d637861727261792831292055534552>20 48 R 139.855<434f4d4d414e4453206d63786172726179283129>2.5 F .955 <6f662074686520636f6d6d616e64206c696e65206f7074696f6e73>120 84 R/F1 10 /Times-Bold@0 SF<2d74>3.455 E F0<2c>A F1<2d4a>3.455 E F0 3.455<2c61>C <6e64>-3.455 E F1<2d6a>3.455 E F0 5.955<2e49>C 3.455<66616a>-5.955 G .955<6f62206861732066>-3.455 F .956 <61696c65642c2074686973206f7074696f6e2063616e206265207573656420746f>-.1 F .406<6d616e75616c6c792073706c69742074686f73652072616e67657320696e746f 208c6e6572206368756e6b732c206561636820746f2062652070726f6365737365642061 732061206e65>120 96 R 2.906<7773>-.25 G .406<75622d6a6f622073706563692d> -2.906 F .197<8c65642077697468>120 108 R F1<2d7374617274>2.697 E F0 <616e64>2.697 E F1<2d656e64>2.697 E F0 5.197<2e57>C .197 <69746820746865206c6174746572207477>-5.597 F 2.697<6f6f>-.1 G .198<7074 696f6e732c20697420697320696d706f737369626c6520746f2075736520706172616c6c 656c697a6174696f6e>-2.697 F<6f6620616e>120 120 Q 2.5<796b>-.15 G <696e642028692e652e20616e>-2.5 E 2.5<796f>-.15 G 2.5<6674>-2.5 G<6865> -2.5 E F1<2d74>2.5 E F0<2c>A F1<2d4a>2.5 E F0 2.5<2c61>C<6e64>-2.5 E F1 <2d6a>2.5 E F0<6f7074696f6e73292e>2.5 E F1<2d6f>100 144 Q F0 <666e616d652028>2.5 E/F2 10/Times-Italic@0 SF <6f7574707574208c6c6520666e616d65>A F0<29>A <4f7574707574208c6c65206e616d652e>120 156 Q F1<2d646967697473>100 180 Q F0<3c6e756d3e2028>2.5 E F2<6f7574707574207072>A<65636973696f6e>-.37 E F0 <29>A<537065636966792074686520707265636973696f6e20746f2075736520696e206e 617469>120 192 Q .3 -.15<76652069>-.25 H <6e7465726368616e676520666f726d61742e>.15 E F1 <2d2d77726974652d62696e617279>100 216 Q F0<28>2.5 E F2 <7772697465206f757470757420696e2062696e61727920666f726d6174>A F0<29>A <5772697465206f7574707574206d6174726963657320696e206e617469>120 228 Q .3 -.15<76652062>-.25 H<696e61727920666f726d61742e>.15 E F1<2d636f>100 252 Q F0<6e756d2028>2.5 E F2<286162736f6c75746529206375746f66>A 2.5<6666> -.18 G<6f72206f75747075742076616c756573>-2.5 E F0<29>A 1.35 <4f75747075742076>120 264 R 1.35 <616c756573206f66206d61676e697475646520736d616c6c6572207468616e>-.25 F F2<6e756d>3.85 E F0 1.35<6172652072656d6f>3.85 F -.15<7665>-.15 G 3.85 <6428>.15 G 1.35<73657420746f207a65726f292e>-3.85 F 1.35 <546875732c206e65>6.35 F -.05<6761>-.15 G<7469>.05 E -.15<7665>-.25 G -.25<7661>120 276 S<6c756573206172652072656d6f>.25 E -.15<7665>-.15 G 2.5<646f>.15 G<6e6c7920696620746865697220706f73697469>-2.5 E .3 -.15 <76652063>-.25 H<6f756e7465727061727420697320736d616c6c6572207468616e> .15 E F2<6e756d>2.5 E F0<2e>A F1<2d2d7472616e73706f7365>100 300 Q F0<28> 2.5 E F2<776f726b207769746820746865207472>A<616e73706f7365>-.15 E F0<29> A -.8<576f>120 312 S<726b207769746820746865207472616e73706f7365206f6620 74686520696e7075742064617461206d61747269782e>.8 E F1 <2d2d72616e6b2d7472616e7366>100 336 Q<6f726d>-.25 E F0<28>2.5 E F2 -.15 <7261>C<6e6b207472>.15 E<616e73666f726d207468652064617461208c72>-.15 E <7374>-.1 E F0<29>A<54686520646174612069732072616e6b2d7472616e73666f726d 6564207072696f7220746f2074686520636f6d7075746174696f6e206f66207061697277 697365206d656173757265732e>120 348 Q F1<2d77726974652d64617461>100 372 Q F0<3c666e616d653e2028>2.5 E F2<7772697465206461746120746f208c6c65>A F0 <29>A 1.28<546869732077726974657320746865206461746120746861742077>120 384 R 1.28<6173207265616420696e20746f208c6c652e>-.1 F<4966>6.28 E F1 <2d2d73706561726d616e>3.78 E F0 1.28 <69732073706563698c65642074686520646174612077696c6c206265>3.78 F <72616e6b2d7472616e73666f726d65642e>120 396 Q F1<2d77726974652d6e61>100 420 Q F0<3c666e616d653e2028>2.5 E F2<7772697465204e>A 2.5<416d>-.27 G <617472697820746f208c6c65>-2.5 E F0<29>A<546869732077726974657320616c6c 20706f736974696f6e7320666f72207768696368206e6f20646174612077>120 432 Q <617320666f756e6420746f208c6c652c20696e206e617469>-.1 E .3 -.15 <7665206d>-.25 H<636c206d617472697820666f726d61742e>.15 E F1<2d2d7a6572> 100 456 Q<6f2d61732d6e61>-.18 E F0<28>2.5 E F2<7472>A<656174207a6572> -.37 E<6f6573206173206d697373696e672064617461>-.45 E F0<29>A .531<546869 73206f7074696f6e2063616e2062652075736566756c207768656e2072656164696e6720 64617461207769746820746865>120 468 R F1<2d696d78>3.031 E F0 .53 <6f7074696f6e2c20666f722065>3.03 F .53 <78616d706c6520616674657220697420686173>-.15 F 1.134 <6265656e206c6f616465642066726f6d206c6162656c20696e707574206279>120 480 R F1<6d63786c6f6164>3.634 E F0 6.134<2e41>C 3.634<6e65>-6.134 G 1.134<78 616d706c652063617365206973207468652070726f63657373696e67206f662061206c61 72>-3.784 F<6765>-.18 E 1.155<6e756d626572206f662070726f62652072616e6b69 6e67732c207768657265206e6f7420616c6c2072616e6b696e677320636f6e7461696e20 616c6c2070726f6265206e616d65732e205468652072616e6b696e6773>120 492 R 1.036<63616e206265206c6f61646564207573696e67>120 504 R F1 <6d63786c6f6164>3.536 E F0 1.037<77697468206120746162208c6c6520636f6e74 61696e696e6720616c6c2070726f6265206e616d65732e>3.536 F 1.037 <50726f626573207468617420617265>6.037 F .058 <70726573656e7420696e207468652072616e6b696e6720617265206769>120 516 R -.15<7665>-.25 G 2.558<6e6170>.15 G<6f73697469>-2.558 E .358 -.15 <7665206f>-.25 H .058<7264696e616c206e756d6265722072658d656374696e672074 68652072616e6b696e672c20616e642070726f626573>.15 F 1.028 <746861742061726520616273656e742061726520696d706c696369746c79206769>120 528 R -.15<7665>-.25 G 3.528<6e74>.15 G 1.028<68652076>-3.528 F 1.028 <616c7565207a65726f2e2057>-.25 F 1.028<697468207468652070726573656e7420 6f7074696f6e206d637861727261792077696c6c>-.4 F<68616e646c65207468652063 6f7272656c6174696f6e20636f6d7075746174696f6e20696e206120726561736f6e6162 6c652077>120 540 Q<61792e>-.1 E F1<2d6e>100 564 Q F0<6d6f64652028>2.5 E F2<6e6f726d616c697a6174696f6e206d6f6465>A F0<29>A<4966>120 576 Q F2 <6d6f6465>3.316 E F0 .816<69732073657420746f>3.316 F F1<7a>3.316 E F0 .815<74686520646174612077696c6c206265206e6f726d616c697a6564206261736564 206f6e207a2d73636f72652e204e6f206f74686572206d6f6465732061726520637572> 3.316 F<2d>-.2 E<72656e746c7920737570706f727465642e>120 588 Q F1<2d7466> 100 612 Q F0<737065632028>2.5 E F2<7472>A<616e73666f726d2072>-.15 E <6573756c74206e6574776f726b>-.37 E F0<29>A F1<2d7461626c652d7466>100 624 Q F0<737065632028>2.5 E F2<7472>A <616e73666f726d20696e707574207461626c65206265666f72>-.15 E 2.5<6570>-.37 G -.45<726f>-2.5 G<63657373696e67>.45 E F0<29>A<546865207472616e73666f72 6d6174696f6e2073796e7461782069732064657363726962656420696e>120 636 Q F1 <6d6378696f283529>2.5 E F0<2e>A F1<2d2d68656c70>100 660 Q F0<28>2.5 E F2 <7072696e742068656c70>A F0<29>A F1<2d68>100 672 Q F0<28>2.5 E F2 <7072696e742068656c70>A F0<29>A F1<2d2d76>100 696 Q<657273696f6e>-.1 E F0<28>2.5 E F2<7072696e7420766572>A<73696f6e20696e666f726d6174696f6e>-.1 E F0<29>A<6d637861727261792031322d313335>20 768 Q <3134204d61792032303132>138.745 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 137.355<6d637861727261792831292055534552>20 48 R 139.855<434f4d4d414e4453206d63786172726179283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.548<4155>20 84 S<54484f52>.548 E F0<5374696a6e2076> 100 96 Q<616e20446f6e67656e2e>-.25 E F1<53454520414c534f>20 112.8 Q/F2 10/Times-Bold@0 SF<6d636c283129>100 124.8 Q F0<2c>A F2 <6d636c666171283729>3.184 E F0 3.184<2c61>C<6e64>-3.184 E F2 <6d636c66616d696c79283729>3.184 E F0 .684<666f7220616e206f>3.184 F -.15 <7665>-.15 G<72766965>.15 E 3.185<776f>-.25 G 3.185<6661>-3.185 G .685< 6c6c2074686520646f63756d656e746174696f6e20616e6420746865207574696c697469 6573>-3.185 F<696e20746865206d636c2066>100 136.8 Q<616d696c792e>-.1 E <6d637861727261792031322d313335>20 768 Q<3134204d61792032303132>138.745 E<34>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clmprotocols2.azm0000644000402500021140000003566411666240142013371 00000000000000\import{aephea/ref.zmm} \import{mcx.zmm} \import{pud/faq.zmm} \: ~/local/bin/mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci \: ~/local/bin/mcxdump -imx data.mci -tab data.tab --dump-table \begin{pud::man}{ {name}{clmprotocols} {html_title}{Work flows and protocols for mcl and friends} {author}{Stijn van Dongen} {section}{5} {synstyle}{long} {defstyle}{long} \man_share } \"faq::preamble" \${html}{\"pud::man::maketoc"} \"pud::man::maketoc" \:${html}{\"pud::man::maketoc"} \${html}{\def{cont}{\@e{nbsp}\@e{crarr}}} \${roff}{\def{cont}{}} \sec{}{name}{NAME} \NAME{clmprotocols}{Work flows and protocols for mcl and friends} \sec{}{description}{DESCRIPTION} \car{ A guide to doing analysis with mcl and its helper programs. } \sec{toc}{TOC} \"faq::maketoc" \sec{faq}{FAQ} \begin{faqsec}{ {ref}{general2} {cap}{General pardon} } \faq{}{For whom is mcl and for whom is this FAQ?} \car{ For everybody with an appetite for graph clustering.} \faq{}{For whom is mcl and for whom is this FAQ?} \car{ For everybody with an appetite for graph clustering.} \end{faqsec} \begin{faqsec}{ {ref}{general} {cap}{General questions} } \faq{}{For whom is mcl and for whom is this FAQ?} \car{ For everybody with an appetite for graph clustering.} \faq{}{For whom is mcl and for whom is this FAQ?} \car{ For everybody with an appetite for graph clustering.} \end{faqsec} \sec{internal}{Network representation} \par{ The clustering program \mcl expects the name of file as its first argument. If the \genopt{--abc} option is used, the file is assumed to adhere to a simple format where a network is specified edge by edge, one line and one edge at a time. Each line describes an edge as two labels and a numerical value, all separated by white space. The labels and the value respectively identify the two nodes and the edge weight. The format is called \abc-format, where '\sc{A}' and '\sc{B}' represent the two labels and '\sc{C}' represents the edge weight. The latter is optional; if omitted the edge weight is set to one. If \abc-format is used, the output is returned as a listing of clusters, each cluster given as a line of white-space separated labels. } \par{ MCL can also utilize a second representation, which is a stringent and unambiguous format for both input and output. This is called \it{matrix format} and it is required when using other programs in the mcl suite, for example when comparing and analysing clusterings using \mysib{clm} or when extracting and transforming networks using \mysib{mcx}. Native mode (matrix format) is entered simply by \it{not} specifying \genopt{--abc}. } \par{ The recommended approach using \mcl is to convert an external format to \abc-format. The program \mysib{mcxload} reads the latter and creates a native network file and a dictionary file that maps network nodes to labels. All applications in the MCL suite, including \mcl itself, can read this native network file format. Label output can be obtained using \mysib{mcxdump}. The workflow is thus: } \verbatim{\:/ # External format has been converted to file data.abc (abc format) mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci mcl data.mci -I 1.4 mcl data.mci -I 2 mcl data.mci -I 4 mcxdump -icl out.data.mci.I14 -tabr data.tab -o dump.data.mci.I14 mcxdump -icl out.data.mci.I20 -tabr data.tab -o dump.data.mci.I20 mcxdump -icl out.data.mci.I40 -tabr data.tab -o dump.data.mci.I40} \car{ In this example the cluster output is stored in native format and dumped to labels using mcxdump. The stored output can now be used to learn more about the clusterings. An example is the following, where \mysib{clm} is applied in mode\~\bf{dist} to gauge the distance between different clusterings. } \verbatim{\:/ clm dist --chain out.data.mci.I{14,20,40}} \sec{large}{Loading large networks} \par{ If you deal with very large networks (say with hundreds of millions of edges), it is recommended to use binary format (cf \mysib{mcxio}). This is simply achieved by adding \tt{--write-binary} to the mcxload command line. The resulting file is no longer human-readable but will be faster to read by a factor between ten- or twenty-fold compared to standard \MCL-edge network format, and a factor around fifty-fold compared to label format. All \MCL-edge programs are able to read binary format, and speed of reading will be somewhere in the order of millions of edges per second, compared to, for example, roughly 100K edges per second for label format. } \par{ Memory usage for mcxload can be lowered by replacing the option \tt{--stream-mirror} with \tt{-ri\~max}. } \sec{formatconversion}{Converting between formats} \par{ \bf{Converting label format to tabular format}\| Label format, two or three (including weight) columns: } \verbatim{\:/ mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci mcxdump -imx data.mci -tab data.tab --dump-table} \car{Simple Interaction File (SIF) format:} \verbatim{\:/ mcxload -sif data.sif --stream-mirror -write-tab data.tab -o data.mci mcxdump -imx data.mci -tab data.tab --dump-table} \car{ It can be noted that these two examples are very similar, and differ only in the way the input to \mcxload is specified. } \sec{blast}{Clustering similarity graphs encoded in BLAST results} \par{ A specific instance of the workflow above is the clustering of proteins based on their sequence similarities. In the most typical scenario the external format is BLAST output, which needs to be transformed to \abc format. In the examples below the input is in columnar blast format obtained with the blast -m8 option. It requires a version of \mcl at least as recent as \v{09-061}. First we create an \abc-formatted file using the external columnar BLAST format, which is assumed to be in a file called \v{seq.cblast}. } \verbatim{\:/ cut -f 1,2,11 seq.cblast > seq.abc} \car{ The columnar format in the file \v{seq.cblast} has, for a given BLAST hit, the sequence labels in the first two columns and the asssociated E-value in column\~11. It is parsed by the standard UNIX cut(1) utility. The format must have been created with the BLAST -m8 option so that no comment lines are present. Alternatively these can be filtered out using grep. } \car{ The newly created \v{seq.abc} file is loaded by \mysib{mcxload}, which writes both a network file \v{seq.mci} and a dictionary file \v{seq.tab}. } \verbatim{\:/ mcxload -abc seq.abc --stream-mirror --stream-neg-log10 -stream-tf 'ceil(200)' -o seq.mci -write-tab seq.tab} \car{ The \v{--stream-mirror} option ensures that the resulting network will be undirected, as recommended when using \mcl. Omitting this option would result in a directed network as BLAST E-values generally differ between two sequences. The default course of action for \mysib{mcxload} is to use the best value found between a pair of labels. The next option, \v{--abc-neg-log10} tranforms the numerical values in the input (the BLAST E-values) by taking the logarithm in base\~10 and subsequently negating the sign. Finally, the transformed values are capped so that any E-value below 1e-200 is set to a maximum allowed edge weight of\~200. } \par{ To obtain clusterings from \v{seq.mci} and \v{seq.tab} one has two choices. The first is to generate an abstract clustering representation and from that obtain the label output, as follows. Below the \genopt{-o} option is not used, so mcl will create meaningful and unique output names by itself. The default way of doing this is to preprend the prefix \v{out.} and to append a suffix encoding the inflation value used, with inflation encoded using two digits of precision and the decimal separator removed. } \verbatim{\:/ mcl seq.mci -I 1.4 mcl seq.mci -I 2 mcl seq.mci -I 4 mcl seq.mci -I 6 mcxdump -icl out.seq.mci.I14 -tabr seq.tab -o dump.seq.mci.I14 mcxdump -icl out.seq.mci.I20 -tabr seq.tab -o dump.seq.mci.I20 mcxdump -icl out.seq.mci.I40 -tabr seq.tab -o dump.seq.mci.I40 mcxdump -icl out.seq.mci.I60 -tabr seq.tab -o dump.seq.mci.I60} \car{ Now the file \v{out.seq.tab.I14} and its associates can be used for example to compute the distances between the encoded clusterings with \clmdist, to compute a set of strictly reconciled nested clusterings with \clmorder, or to compute an efficiency criterion with \clminfo. } \par{ Alternatively, label output can be obtained directly from \mcl as follows.} \verbatim{\:/ mcl seq.mci -I 1.4 -use-tab seq.tab mcl seq.mci -I 2 -use-tab seq.tab mcl seq.mci -I 4 -use-tab seq.tab mcl seq.mci -I 6 -use-tab seq.tab} \sec{array}{Clustering expression data} \par{ The clustering of expression data constitutes another workflow. In this case the external format usually is a tabular file format containing labels for genes or probes and numerical values measuring the expression values or fold changes across a series of conditions or experiments. Such tabular files can be processed by \mysib{mcxarray}, which comes installed with \mcl. The program computes correlations (either Pearson or Spearmann) between genes, and creates an edge between genes if their correlation exceeds the specified cutoff. From this \mysib{mcxarray} creates both a network file and a dictionary file. In the example below, the file \v{expr.data} is in tabular format with one row of column headers (e.g. tags for experiments) and one column of row identifiers (e.g. probe or gene identifiers). } \verbatim{\:/ mcxarray -data expr.data -skipr 1 -skipc 1 -o expr.mci -write-tab expr.tab --pearson -co 0.7 -tf 'abs(),add(-0.7)' } \car{ This uses the Pearson correlation, ignoring values below 0.7. The remaining values in the interval \v{[0.7-1]} are remapped to the interval \v{[0-0.3]}. This is recommended so that the edge weights will have increased contrast between them, as \mcl is affected by relative differences (ratios) between edge weights rather than absolute differences. To illustrate this, values\~0.75 and\~0.95 are mapped to\~0.05 and\~0.25, with respective ratios\~0.79 and\~0.25. The network file \v{expr.mci} and the dictionary file \v{expr.tab} can now be used as before. } \par{ It is possible to investigate the effect of the correlation cutoff as follows. First a network is generated at a very low threshold, and this network is analysed using \mcxquery. } \verbatim{\:/ mcxarray -data expr.data -skipr 1 -skipc 1 -o expr20.mcx --write-binary --pearson -co 0.2 -tf 'abs()' mcx query -imx expr20.mcx --vary-correlation } \car{ The output is in a tabular format describing the properties of the network at increasing correlation thresholds. Examples are the size of the biggest component, the number of orphan nodes (not connected to any other node), and the mean and median node degrees. A good way to choose the cutoff is to balance the number of singletons and the median node degree. Both should preferably not be too high. For example the number of orphan nodes should be less than ten percent of the total number of nodes, and the median node degree should be at most one hundred neighbours. } \""{ Label mode is very convenient for easy and fast exploration. A decided advantage of full native mode (where both graph input and cluster output are in matrix format) is that the data can easily be analyzed and subjected to further processing. Second, input that is stored in native binary format loads much faster than label data when the input data size grows large. If neither of these is of concern then label mode may be entirely sufficient. For more information on label mode and native mode refer to examples in this manual and \mysib{mcxio}.} \sec{degree}{Reducing node degrees in the graph} \car{ A good way to lower node degrees in a network is to require that an edge is among the best \it{k} edges (those of highest weight) for \it{both} nodes incident to the edge, for some value of \it{k}. This is achieved by using \v{knn(k)} in the argument to the \genopt{-tf} option to mcl or \mcx{alter}. To give an example, a graph was formed on translations in Ensembl release 57 on 2.6M nodes. The similarities were obtained from BLAST scores, leading to a graph with a total edge count of 300M, with best-connected nodes of degree respectively 11148, 9083, 9070, 9019 and 8988, and with mean node degree 233. These degrees are unreasonable. The graph was subjected to \mcx{query} to investigate the effect of varying k-NN parameters. A good heuristic is to choose a value that does not significantly change the number of singletons in the input graph. In the example it meant that \useopt{-tf}{'knn(160)'} was feasible, leading to a mean node degree of 98. } \par{ A second approach to reduce node degrees is to employ the \genopt{-ceil-nb} option. This ranks nodes by node degree, highest first. Nodes are considered in order of rank, and edges of low weight are removed from the graph until a node satisfies the node degree threshold specified by \genopt{-ceil-nb}. } \par{ } \sec{seealso}{SEE ALSO} \car{ \mysib{mcxio}. } \sec{author}{AUTHOR} \car{ Stijn van Dongen.} \end{pud::man} \done \par{ Using \mcl is as simple as typing (assuming a file \it{proteins} contains a matrix/graph in native matrix format)} \verbatim{mcl proteins -I 2.0} \car{ The above will result in a clustering written to the file named \it{out.proteins.I20s2}. It is - of course - possible to explicitly specify the name of the output file using the \genoptref{-o}{fname} option. Refer to the \genoptref{-ap} option for a description of mcl's procedure in automatically constructing file names from it parameters.} \par{ In native mode clusterings are stored as matrices - this is discussed in the \mysib{mcxio} section. You presumably want to convert the output to something that is easier to interpret. You can use} \verbatim{mcl proteins -I 2.0 -use-tab proteins.tab} \car{ to get a line/tab based output format, each line containing a cluster in the form of tab-separated labels. Here \usearg{proteins.tab} should be a tab file previously created by \mysib{mcxdeblast} or mcl. Refer to \mysib{mcxio} for more information on tab files, and the entries grouped under \genoptref{--abc} for an extensive discussion of the various ways in which mcl can combine label format and matrix format in input and output.} \""{ 1. mcxdeblast --line-mode=abc --out=- seq.blast | mcxload -abc - --stream-mirror -write-tab seq.tab -o seq.mci 2. mcxdeblast --m9 --line-mode=abc --out=- seq.cblast | mxload -abc - --stream-mirror -write-tab seq.tab -o seq.mci } mcl-12-135/doc/mcxdiameter.ps0000644000402500021140000004076211754271044012722 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:16 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d6378206469616d65746572283129>20 48 Q <5553455220434f4d4d414e4453>122.905 E<6d6378206469616d65746572283129> 125.405 E/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d 6378206469616d6574657220ad20636f6d7075746520746865206469616d65746572206f 662061206772617068>100 96 Q F1<53594e4f50534953>20 112.8 Q/F2 10 /Times-Bold@0 SF<6d6378206469616d65746572>100 124.8 Q F0 <5b6f7074696f6e735d>2.5 E 1.292 <6d63786469616d65746572206973206e6f7420696e2061637475616c2066>100 148.8 R 1.292<61637420612070726f6772616d2e2054686973206d616e75616c207061676520 646f63756d656e7473207468652062656861>-.1 F 1.292<76696f757220616e64>-.2 F .532 <6f7074696f6e73206f6620746865206d63782070726f6772616d207768656e20696e> 100 160.8 R -.2<766f>-.4 G -.1<6b65>.2 G 3.032<6469>.1 G 3.032<6e6d> -3.032 G<6f6465>-3.032 E/F3 10/Times-Italic@0 SF<6469616d65746572>3.032 E F0 3.032<2e54>C .532<6865206f7074696f6e73>-3.032 F F2<2d68>3.032 E F0 <2c>A F2<2d2d617072>3.033 E<6f706f73>-.18 E F0<2c>A F2<2d2d76>3.033 E <6572>-.1 E<2d>-.37 E<73696f6e>100 172.8 Q F0<2c>A F2<2d736574>3.201 E F0<2c>A F2<2d2d6e6f70>3.201 E F0<2c>A F2<2d7072>3.201 E<6f6772>-.18 E <657373>-.18 E F3<3c6e756d3e>2.5 E F0 .701 <6172652061636365737369626c6520696e20616c6c>3.201 F F2<6d6378>3.201 E F0 .701<6d6f6465732e20546865>3.201 F 3.2<7961>-.15 G .7 <72652064657363726962656420696e20746865>-3.2 F F2<6d6378>100 184.8 Q F0 <6d616e75616c20706167652e>2.5 E F2 .877 <6d6378206469616d65746572205b2d616263>100 208.8 R F0 .877 <3c666e616d653e2028>3.377 F F3 .877 <73706563696679206c6162656c20696e707574>B F0<29>A F2 3.378<5d5b>C <2d696d78>-3.378 E F0 .878<3c666e616d653e2028>3.378 F F3 .878 <73706563696679206d617472697820696e707574>B F0<29>A F2 3.378<5d5b>C <2d6f>-3.378 E F0 1.548<3c666e616d653e2028>100 220.8 R F3 1.548 <6f7574707574208c6c65206e616d65>B F0<29>A F2 4.047<5d5b>C<2d746162> -4.047 E F0 1.547<3c666e616d653e2028>4.047 F F3 1.547 <75736520746162208c6c65>B F0<29>A F2 4.047<5d5b>C<2d74>-4.047 E F0 1.547 <3c696e743e2028>4.047 F F3 1.547<757365203c696e743e20746872>B<65616473> -.37 E F0<29>A F2 4.047<5d5b>C<2d4a>-4.047 E F0 .043<3c696e744a3e2028> 100 232.8 R F3 2.543<6174>C .043 <6f74616c206f66203c696e744a3e206a6f6273206172>-2.543 F 2.544<6575>-.37 G <736564>-2.544 E F0<29>A F2 2.544<5d5b>C<2d6a>-2.544 E F0 .044 <3c696e746a3e2028>2.544 F F3 .044<74686973206a6f622068617320696e6465>B 2.544<783c>-.2 G<696e746a3e>-2.544 E F0<29>A F2 2.544<5d5b>C <2d2d73756d6d617279>-2.544 E F0<28>2.544 E F3<6f75742d>A .322 <707574206469616d6574657220616e642061766572>100 244.8 R .522 -.1 <6167652073>-.15 H .322<686f72746573742070617468206c656e677468>.1 F F0 <29>A F2 2.821<5d5b>C<2d2d6c697374>-2.821 E F0<28>2.821 E F3 .321 <6c69737420656363656e7472696369747920666f7220616c6c206e6f646573>B F0<29> A F2 2.821<5d5b>C<2d68>-2.821 E F0<28>2.821 E F3<7072696e74>A <73796e6f707369732c2065>100 256.8 Q<786974>-.2 E F0<29>A F2 2.5<5d5b>C <2d2d617072>-2.5 E<6f706f73>-.18 E F0<28>2.5 E F3 <7072696e742073796e6f707369732c2065>A<786974>-.2 E F0<29>A F2 2.5<5d5b>C <2d2d76>-2.5 E<657273696f6e>-.1 E F0<28>2.5 E F3<7072696e7420766572>A <73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F2<5d>A F1 <4445534352495054494f4e>20 273.6 Q F2 .297<6d6378206469616d65746572>100 285.6 R F0 .298<636f6d707574657320746865206469616d65746572206f6620612067 726170682e2054686520696e7075742067726170682073686f756c642062652073796d6d 65747269632e20526573756c7473>2.797 F .192<77696c6c20626520756e7072656469 637461626c6520666f72206469726563746564206772617068732e>100 297.6 R -.15 <466f>5.192 G 2.692<726c>.15 G .192 <6162656c20696e707574207468697320697320697272656c65>-2.692 F -.25<7661> -.25 G .192<6e74206173>.25 F F2 .192<6d6378206469616d65746572>2.692 F F0 <77696c6c>2.692 E<63726561746520612073796d6d6574726963206772617068206672 6f6d2074686520696e7075742e>100 309.6 Q .461<54686520696e7075742067726170 682f6d61747269782c2069662073706563698c6564207769746820746865>100 333.6 R F2<2d696d78>2.961 E F0 .462<6f7074696f6e2c2068617320746f20626520696e206d 636c206d61747269782f677261706820666f726d61742e>2.961 F -1.1<596f>100 345.6 S 2.794<7563>1.1 G .294<616e20757365206c6162656c20696e70757420696e 7374656164206279207573696e6720746865>-2.794 F F2<2d616263>2.794 E F0 2.793<6f7074696f6e2e205265666572>2.793 F<746f>2.793 E F2 <6d6378696f283529>2.793 E F0 .293 <666f722061206465736372697074696f6e206f66>2.793 F .777<7468657365207477> 100 357.6 R 3.277<6f69>-.1 G .778<6e70757420666f726d6174732e>-3.277 F .778<427920646566>5.778 F<61756c74>-.1 E F2 .778 <6d6378206469616d65746572>3.278 F F0 .778 <72656164732066726f6d20535444494e>3.278 F F3 .778<616e642065>3.278 F .778<787065637473206d617472697820666f72>-.2 F<2d>-.2 E<6d6174>100 369.6 Q F0 5<2e54>C 2.5<6f73>-5.8 G <706563696679206c6162656c20696e7075742066726f6d20535444494e20757365>-2.5 E F2<2d616263202d>2.5 E F0<2e>A F1<4f5054494f4e53>20 386.4 Q F2 <2d616263>100 398.4 Q F0<3c666e616d653e2028>2.5 E F3 <6c6162656c20696e707574>A F0<29>A<546865208c6c65206e616d6520666f7220696e 707574207468617420697320696e206c6162656c20666f726d61742e>120 410.4 Q F2 <2d696d78>100 434.4 Q F0<3c666e616d653e2028>2.5 E F3 <696e707574206d6174726978>A F0<29>A<546865208c6c65206e616d6520666f722069 6e707574207468617420697320696e206d636c206e617469>120 446.4 Q .3 -.15 <7665206d>-.25 H<617472697820666f726d61742e>.15 E F2<2d6f>100 470.4 Q F0 <3c666e616d653e2028>2.5 E F3<6f7574707574208c6c65206e616d65>A F0<29>A<54 6865206e616d65206f6620746865208c6c6520746f207772697465206f75747075742074 6f2e>120 482.4 Q F2<2d746162>100 506.4 Q F0<3c666e616d653e2028>2.5 E F3 <75736520746162208c6c65>A F0<29>A .479<54686973206f7074696f6e2063617573 657320746865206f757470757420746f206265207072696e746564207769746820746865 206c6162656c7320666f756e6420696e2074686520746162208c6c652e>120 518.4 R -.4<5769>5.478 G<7468>.4 E F2<2d616263>2.978 E F0 .819 <74686973206f7074696f6e2077696c6c2c206164646974696f6e616c6c79>120 530.4 R 3.319<2c63>-.65 G .819<6f6e7374727563742061206772617068206f6e6c79206f 6e20746865206c6162656c7320666f756e6420696e2074686520746162208c6c652e> -3.319 F<4966>5.82 E 1.59<74686973206f7074696f6e206973207573656420696e20 636f6e6a756e6374696f6e2077697468>120 542.4 R F2<2d696d78>4.09 E F0 1.59< 7468652074616220646f6d61696e20616e6420746865206d617472697820646f6d61696e 20617265>4.09 F<726571756972656420746f206265206964656e746963616c2e>120 554.4 Q F2<2d74>100 578.4 Q F0<3c696e743e2028>2.5 E F3 <757365203c696e743e20746872>A<65616473>-.37 E F0<29>A F2<2d4a>100 590.4 Q F0<3c696e744a3e2028>2.5 E F3 2.5<6174>C <6f74616c206f66203c696e744a3e206a6f6273206172>-2.5 E 2.5<6575>-.37 G <736564>-2.5 E F0<29>A F2<2d6a>100 602.4 Q F0<3c696e746a3e2028>2.5 E F3 <74686973206a6f622068617320696e6465>A 2.5<783c>-.2 G<696e746a3e>-2.5 E F0<29>A .517<436f6d707574696e6720746865206469616d65746572206f6620612067 726170682069732074696d652d696e74656e7369>120 614.4 R -.15<7665>-.25 G 5.518<2e49>.15 G 3.018<6679>-5.518 G .518<6f75206861>-3.018 F .818 -.15 <7665206d>-.2 H .518<756c7469706c6520435055732061>.15 F -.25<7661>-.2 G <696c61626c65>.25 E .695<636f6e7369646572207573696e67206173206d616e>120 626.4 R 3.195<7974>-.15 G .694<6872656164732e204164646974696f6e616c6c79 20697420697320706f737369626c6520746f207370726561642074686520636f6d707574 6174696f6e206f>-3.195 F -.15<7665>-.15 G<72>.15 E 1.172 <6d756c7469706c65206a6f62732f6d616368696e65732e>120 638.4 R <436f6e6365707475616c6c79>6.172 E 3.672<2c65>-.65 G 1.172 <616368206a6f622074616b>-3.672 F 1.173<65732061206e756d626572206f662074 6872656164732066726f6d2074686520746f74616c>-.1 F .153<74687265616420706f 6f6c2e204966206a6f6220636f6e74726f6c20697320757365642028746865>120 650.4 R F2<2d4a>2.653 E F0 .153<6f7074696f6e206973207573656429207468656e207468 65206e756d626572206f66206a6f62732073686f756c64206e6f74>2.653 F -.15 <6578>120 662.4 S .712<6365656420746865206e756d626572206f66207468726561 64732e2054686520746f74616c206e756d626572206f662074687265616473206469>.15 F .713<76696465642062792074686520746f74616c206e756d626572206f66>-.25 F .949<6a6f62732064658c6e657320746865206e756d626572206f662074687265616473 20746861742077696c6c2062652075736564206279207468652063757272656e74206a6f 622e>120 674.4 R<4164646974696f6e616c6c79>5.949 E 3.449<2c74>-.65 G <6865>-3.449 E 2.521<6e756d626572206f6620746872656164732073706563698c65 64207369676e698c65732074686520746f74616c20616464656420616d6f756e74206f66 20616c6c2074687265616473206163726f737320616c6c>120 686.4 R 1.018 <6d616368696e657320616e64>120 698.4 R F3<6d757374>3.518 E F0 1.018<6265 207468652073616d6520666f7220616c6c206a6f62732e2054686973206e756d62657220 697320757365642062792065616368206a6f6220746f20696e66657220697473>3.518 F -.25<6f77>120 710.4 S 2.546<6e73>.25 G .046<6574206f66207461736b732e> -2.546 F .047<54686520666f6c6c6f>5.047 F .047 <77696e6720736574206f66206f7074696f6e732c206966206769>-.25 F -.15<7665> -.25 G 2.547<6e74>.15 G 2.547<6f61>-2.547 G 2.547<736d>-2.547 G<616e> -2.547 E 2.547<7963>-.15 G .047 <6f6d6d616e64732c2064658c6e6573207468726565>-2.547 F <6a6f62732c20656163682072756e6e696e6720666f757220746872656164732e>120 722.4 Q<6d6378206469616d657465722031322d313335>20 768 Q <3134204d61792032303132>121.795 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d6378206469616d65746572283129>20 48 Q <5553455220434f4d4d414e4453>122.905 E<6d6378206469616d65746572283129> 125.405 E/F1 10/Courier@0 SF<2d74203132202d472033202d672030>120 84 Q <2d74203132202d472033202d672031>120 96 Q<2d74203132202d472033202d672032> 120 108 Q/F2 10/Times-Bold@0 SF<2d2d6c697374>100 144 Q F0<28>2.5 E/F3 10 /Times-Italic@0 SF <6c69737420656363656e7472696369747920666f7220616c6c206e6f646573>A F0<29> A F2<2d2d73756d6d617279>100 156 Q F0<28>2.5 E F3 <6f7574707574206469616d6574657220616e642061766572>A .2 -.1<6167652065> -.15 H<6363656e74726963697479>.1 E F0<29>A 1.71<54686520646566>120 168 R 1.71<61756c74206d6f6465206973>-.1 F F2<2d2d6c697374>4.21 E F0 4.21<2c77> C 1.71<6869636820726573756c747320696e206f7574707574206f6620746865206563 63656e74726963697479206f6620616c6c206e6f6465732e20546865>-4.21 F 1.478< 656363656e74726963697479206f662061206e6f6465206973207468652064697374616e 636520746f20616e>120 180 R 3.978<796e>-.15 G 1.478 <6f64652074686174206973207468652066757274686573742061>-3.978 F -.1<7761> -.15 G 3.979<7966>.1 G 1.479<726f6d2069742e20546865>-3.979 F .45<646961 6d65746572206f66206120677261706820697320746865206d6178696d756d206f662074 686520656363656e747269636974792074616b>120 192 R .449<656e206f>-.1 F -.15<7665>-.15 G 2.949<7261>.15 G .449 <6c6c206e6f64657320696e20612067726170682e>-2.949 F<496e>5.449 E .434 <74686973206d6f6465>120 204 R F2 .434<6d6378206469616d65746572>2.934 F F0 .434<77696c6c206e6f74206f757470757420746865206469616d6574657220697473 656c662e20557365>2.934 F F2<2d2d73756d6d617279>2.935 E F0 .435 <746f206f7574707574206a757374>2.935 F <746865206469616d6574657220616e64207468652061>120 216 Q -.15<7665>-.2 G <7261676520656363656e747269636974792e>.15 E/F4 10.95/Times-Bold@0 SF <53454520414c534f>20 232.8 Q F2<6d6378696f283529>100 244.8 Q F0 2.667 <2c61>C<6e64>-2.667 E F2<6d636c66616d696c79283729>2.667 E F0 .167 <666f7220616e206f>2.667 F -.15<7665>-.15 G<72766965>.15 E 2.667<776f> -.25 G 2.667<6661>-2.667 G .166<6c6c2074686520646f63756d656e746174696f6e 20616e6420746865207574696c697469657320696e20746865206d636c>-2.667 F -.1 <6661>100 256.8 S<6d696c792e>.1 E <6d6378206469616d657465722031322d313335>20 768 Q<3134204d61792032303132> 121.795 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxclcf.10000644000402500021140000001046711754271044011554 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcx clcf" 1 "14 May 2012" "mcx clcf 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcx clcf \- compute the clustering coefficient of a graph .SH SYNOPSIS \fBmcx clcf\fP [options] [matrix-file] mcxclcf is not in actual fact a program\&. This manual page documents the behaviour and options of the mcx program when invoked in mode \fIclcf\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP, \fB-progress\fP\ \&\fI\fP are accessible in all \fBmcx\fP modes\&. They are described in the \fBmcx\fP manual page\&. \fBmcx clcf\fP \fB[-abc\fP (\fIspecify label input\fP)\fB]\fP \fB[-imx\fP (\fIspecify matrix input\fP)\fB]\fP \fB[-tab\fP (\fIuse tab file\fP)\fB]\fP \fB[-o\fP (\fIwrite to this file\fP)\fB]\fP \fB[-t\fP (\fIuse threads\fP)\fB]\fP \fB[-J\fP (\fIa total of jobs are used\fP)\fB]\fP \fB[-j\fP (\fIthis job has index \fP)\fB]\fP \fB[--summary\fP (\fIreturn mean clustering coefficient\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION \fBmcx clcf\fP computes the clustering coefficient of a graph\&. The input graph/matrix, if specified with the \fB-imx\fP option, has to be in mcl matrix/graph format\&. You can use label input instead by using the \fB-abc\fP option\&. Refer to \fBmcxio(5)\fP for a description of these two input formats\&. By default \fBmcx diameter\fP reads from STDIN \fIand expects matrix format\fP\&. To specify label input from STDIN use \fB-abc\fP\ \&\fB-\fP\&. .SH OPTIONS .ZI 2m "\fB-abc\fP (\fIlabel input\fP)" \& .br The file name for input that is in label format\&. .in -2m .ZI 2m "\fB-imx\fP (\fIinput matrix\fP)" \& .br The file name for input\&. STDIN is assumed if not specified\&. .in -2m .ZI 2m "\fB-o\fP (\fIoutput file\fP)" \& .br The file name for output\&. STDOUT is the default output stream\&. .in -2m .ZI 2m "\fB-tab\fP (\fIuse tab file\fP)" \& .br This option causes the output to be printed with the labels found in the tab file\&. With \fB-abc\fP this option will, additionally, construct a graph only on the labels found in the tab file\&. If this option is used in conjunction with \fB-imx\fP the tab domain and the matrix domain are required to be identical\&. .in -2m .ZI 2m "\fB--summary\fP (\fIreturn mean clustering coefficient\fP)" \& .br By the default a 1-column table (with row names included) is output, one row for each node\&. This option causes the output of the average clustering coefficient only\&. .in -2m .ZI 2m "\fB-t\fP (\fIuse threads\fP)" \& 'in -2m .ZI 2m "\fB-J\fP (\fIa total of jobs are used\fP)" \& 'in -2m .ZI 2m "\fB-j\fP (\fIthis job has index \fP)" \& 'in -2m 'in +2m \& .br Computing clustering coefficients is time-intensive for large graphs\&. If you have multiple CPUs available consider using as many threads\&. Additionally it is possible to spread the computation over multiple jobs/machines\&. Conceptually, each job takes a number of threads from the total thread pool\&. If job control is used (the \fB-J\fP option is used) then the number of jobs should not exceed the number of threads\&. The total number of threads divided by the total number of jobs defines the number of threads that will be used by the current job\&. Additionally, the number of threads specified signifies the total added amount of all threads across all machines and \fImust\fP be the same for all jobs\&. This number is used by each job to infer its own set of tasks\&. The following set of options, if given to as many commands, defines three jobs, each running four threads\&. .di ZV .in 0 .nf \fC -t 12 -G 3 -g 0 -t 12 -G 3 -g 1 -t 12 -G 3 -g 2 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .in -2m .SH SEE ALSO \fBmcxio(5)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcxquery.ps0000644000402500021140000006754611754271045012307 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:17 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 3 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE /Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d63782071283129>20 48 Q <5553455220434f4d4d414e4453>152.895 E<6d63782071283129>155.395 E/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d63787175657279 20ad20636f6d707574652073696d706c652067726170682073746174697374696373>100 96 Q F1<53594e4f50534953>20 112.8 Q F0 .332 <6d637871206973206e6f7420696e2061637475616c2066>100 124.8 R .331<616374 20612070726f6772616d2e2054686973206d616e75616c207061676520646f63756d656e 7473207468652062656861>-.1 F .331 <76696f757220616e64206f7074696f6e73206f66>-.2 F 1.16 <746865206d63782070726f6772616d207768656e20696e>100 136.8 R -.2<766f>-.4 G -.1<6b65>.2 G 3.66<6469>.1 G 3.66<6e6d>-3.66 G<6f6465>-3.66 E/F2 10 /Times-Italic@0 SF<71>3.66 E F0 3.66<2e54>C 1.16<6865206f7074696f6e73> -3.66 F/F3 10/Times-Bold@0 SF<2d68>3.66 E F0<2c>A F3<2d2d617072>3.66 E <6f706f73>-.18 E F0<2c>A F3<2d2d76>3.66 E<657273696f6e>-.1 E F0<2c>A F3 <2d736574>3.66 E F0<2c>A F3<2d2d6e6f70>3.66 E F0<2c>A F3<2d7072>100 148.8 Q<6f6772>-.18 E<657373>-.18 E F2<3c6e756d3e>2.5 E F0 .266 <6172652061636365737369626c6520696e20616c6c>2.766 F F3<6d6378>2.766 E F0 .266<6d6f6465732e20546865>2.766 F 2.766<7961>-.15 G .266 <72652064657363726962656420696e20746865>-2.766 F F3<6d6378>2.765 E F0 .265<6d616e75616c20706167652e>2.765 F F3 2.395 <6d63787175657279205b2d616263>100 172.8 R F0 2.395<3c666e616d653e2028> 4.895 F F2 2.395<73706563696679206c6162656c20696e707574>B F0<29>A F3 4.895<5d5b>C<2d696d78>-4.895 E F0 2.396<3c666e616d653e2028>4.896 F F2 2.396<73706563696679206d617472697820696e707574>B F0<29>A F3 4.896<5d5b>C <2d6f>-4.896 E F0 .378<3c666e616d653e2028>100 184.8 R F2 .378 <6f7574707574208c6c65206e616d65>B F0<29>A F3 2.878<5d5b>C<2d746162> -2.878 E F0 .378<3c666e616d653e2028>2.878 F F2 .378 <75736520746162208c6c65>B F0<29>A F3 2.878<5d5b>C <2d2d6e6f64652d61747472>-2.878 E F0<28>2.877 E F2 .377 <6f7574707574206e6f6465206465>B<6772>-.4 E .377<656520616e64>-.37 F .423 <77656967687420617474726962>100 196.8 R<75746573>-.2 E F0<29>A F3 2.923 <5d5b>C<2d76>-2.923 E<6172792d746872>-.1 E<6573686f6c64>-.18 E F0 .424 <3c73746172742c656e642c737465702c7363616c653e2028>2.924 F F2 .424 <616e616c797a65206772>B .424 <6170682061742073696d696c6172697479206375746f66>-.15 F<6673>-.18 E F0 <29>A F3<5d>A<5b2d76>100 208.8 Q<6172792d6b6e6e>-.1 E F0 9.51 <3c73746172742c656e642c737465702c7363616c653e2028>12.01 F F2 9.51 <616e616c797a65206772>B 9.51<61706820666f722076617279696e67206b2d4e4e> -.15 F F0<29>A F3 12.01<5d5b>C<2d76>-12.01 E<6172792d6365696c>-.1 E F0 .825<3c73746172742c656e642c737465702c7363616c653e2028>100 220.8 R F2 .825<616e616c797a65206772>B .825 <61706820666f722076617279696e67206365696c2072>-.15 F<6564756374696f6e73> -.37 E F0<29>A F3 3.326<5d5b>C<2d72>-3.326 E<65706f72742d7363616c65>-.18 E F0 .826<3c6e756d3e2028>3.326 F F2<656467>A<65>-.1 E <7765696768742f746872>100 232.8 Q 2.669<6573686f6c64207363616c696e67> -.37 F F0<29>A F3 5.169<5d5b>C<2d2d6e6f2d6c6567656e64>-5.169 E F0<28> 5.169 E F2 2.669<646f206e6f74206f75747075742065>B 2.669 <78706c616e61746f7279206c65>-.2 F -.1<6765>-.4 G<6e64>.1 E F0<29>A F3 5.169<5d5b>C<2d2d72>-5.169 E<6564756365>-.18 E F0<28>5.168 E F2<757365>A -.37<7265>100 244.8 S 3.03<6475636564206d6174726978>.37 F F0<29>A F3 5.53<5d5b>C<2d2d746573742d6d6574726963>-5.53 E F0<28>5.53 E F2 3.03 <746573742077686574686572206772>B 3.03 <6170682064697374616e6365206973206d6574726963>-.15 F F0<29>A F3 5.53 <5d5b>C<2d2d746573742d6379636c65>-5.53 E F0<28>5.53 E F2<74657374>A .404 <77686574686572206772>100 256.8 R .404 <61706820636f6e7461696e73206379636c6573>-.15 F F0<29>A F3 2.904<5d5b>C <2d746573742d6379636c65>-2.904 E F0 .404<3c6e756d3e2028>2.904 F F2 .404 <74657374206379636c65732c2072>B .404<65706f7274206379636c656573>-.37 F F0<29>A F3 2.904<5d5b>C<2d2d76>-2.904 E<6172792d636f7272>-.1 E<652d>-.18 E<6c6174696f6e>100 268.8 Q F0<28>4.226 E F2 1.726<616e616c797a65206772>B 1.726<61706820617420636f7272>-.15 F 1.726<656c6174696f6e206375746f66> -.37 F<6673>-.18 E F0<29>A F3 4.226<5d5b>C<2d2d636c6366>-4.226 E F0<28> 4.226 E F2 1.726<696e636c75646520636c7573746572696e6720636f6566>B 1.726 <8c6369656e7420616e616c79736973>-.18 F F0<29>A F3<5d>A<5b2d2d656666>100 280.8 Q F0<28>3.166 E F2 .666<696e636c756465206566>B .666 <8c6369656e637920637269746572696f6e>-.18 F F0<29>A F3 3.166<5d5b>C <2d6469>-3.166 E<76>-.1 E F0 .665<3c6e756d3e2028>3.166 F F2 .665 <636c75737465722073697a65207365706172>B .665<6174696e672076616c7565>-.15 F F0<29>A F3 3.165<5d5b>C<2d2d64696d>-3.165 E F0<28>3.165 E F2 -.37 <7265>C<706f7274>.37 E 2.147 <6e617469766520666f726d617420616e642064696d656e73696f6e73>100 292.8 R F0 <29>A F3 4.647<5d5b>C<2d2d6564676573>-4.647 E F0<28>4.647 E F2 2.147 <6f757470757420616c6c206172>B 4.647<6377>-.37 G 2.147 <6569676874732c20756e736f72746564>-4.647 F F0<29>A F3 4.647<5d5b>C <2d2d65646765732d736f72746564>-4.647 E F0<28>100 304.8 Q F2 .06 <6f757470757420616c6c206172>B 2.56<6377>-.37 G .06 <6569676874732c20736f72746564>-2.56 F F0<29>A F3 2.56<5d5b>C <2d65646765732d68697374>-2.56 E F0 .06 <3c73746172742c656e642c737465702c7363616c652028>2.56 F F2 .06 <6f7574707574206172>B 2.56<6377>-.37 G .06<656967687420686973746f>-2.56 F<6772>-.1 E<616d>-.15 E F0<29>A F3<5d>A<5b2d2d6f75747075742d7461626c65> 100 316.8 Q F0<28>3.055 E F2 .555<6f7574707574206c6f>B .555 <676963616c20746162207365706172>-.1 F .555 <61746564207461626c6520776974686f7574206b>-.15 F -.3<6579>-.1 G F0<29>.3 E F3 3.055<5d5b>C<2d74>-3.055 E F0 .555<3c6e756d3e2028>3.055 F F2 .555 <6e756d626572206f6620746872>B<65616473>-.37 E .212<746f20757365>100 328.8 R F0<29>A F3 2.712<5d5b>C<2d69636c>-2.712 E F0 .212 <3c666e616d653e2028>2.712 F F2 .212<696e70757420636c7573746572696e67>B F0<29>A F3 2.712<5d5b>C<2d7466>-2.712 E F0 .212<737065632028>2.712 F F2 .212<6170706c792074662d7370656320746f20696e707574206d6174726978>B F0<29> A F3 2.712<5d5b>C<2d68>-2.712 E F0<28>2.712 E F2 .212 <7072696e742073796e2d>B<6f707369732c2065>100 340.8 Q<786974>-.2 E F0<29> A F3 2.5<5d5b>C<2d2d617072>-2.5 E<6f706f73>-.18 E F0<28>2.5 E F2 <7072696e742073796e6f707369732c2065>A<786974>-.2 E F0<29>A F3 2.5<5d5b>C <2d2d76>-2.5 E<657273696f6e>-.1 E F0<28>2.5 E F2<7072696e7420766572>A <73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F3<5d>A F1 <4445534352495054494f4e>20 357.6 Q F0 .463 <546865206d61696e20757365206f66>100 369.6 R F3<6d63787175657279>2.963 E F0 .463<697320746f20616e616c797a65206120677261706820617420646966>2.963 F .463<666572656e742073696d696c6172697479206375746f66>-.25 F .463 <66732e2054>-.25 F .464<79706963616c6c792074686973206973>-.8 F .985<646f 6e65206f6e206120677261706820636f6e7374727563746564207573696e6720612076> 100 381.6 R .985<657279207065726d69737369>-.15 F 1.285 -.15<76652074> -.25 H .985<68726573686f6c642e2046>.15 F .984<6f722065>-.15 F .984 <78616d706c652c206f6e652063616e206372656174652061>-.15 F 1.347 <67726170682066726f6d2061727261792065>100 393.6 R 1.347 <787072657373696f6e2064617461207573696e67>-.15 F F3<6d63786172726179> 3.847 E F0 1.347<7769746820612076>3.847 F 1.347<657279206c6f>-.15 F 3.847<7770>-.25 G 1.347 <656172736f6e20636f7272656c6174696f6e206375746f66>-3.847 F<66>-.25 E 1.153<73756368206173>100 405.6 R 1.153<302e32206f72>2.5 F 1.152 <302e332e205468656e>2.5 F F3<6d63787175657279>3.652 E F0 1.152<63616e20 6265207573656420746f20616e616c797a652074686520677261706820617420696e6372 656173696e676c7920737472696e67656e74>3.652 F 2.266 <7468726573686f6c6473206f66>100 417.6 R 2.266 <302e32352c20302e33302c20302e3335>2.5 F<2e2e20302e39352e>2.5 E <417474726962>7.266 E 2.266 <7574657320737570706c696564206163726f737320646966>-.2 F 2.266 <666572656e74207468726573686f6c64732061726520746865>-.25 F .146<6e756d62 6572206f6620636f6e6e656374656420636f6d706f6e656e74732c20746865206e756d62 6572206f662073696e676c65746f6e732c2061646e207374617469737469637320286d65 6469616e2c2061>100 429.6 R -.15<7665>-.2 G .145<726167652c2069717229>.15 F<6f6e206e6f6465206465>100 441.6 Q <677265657320616e64206564676520776569676874732e>-.15 E F1 <4f5054494f4e53>20 458.4 Q F3<2d616263>100 470.4 Q F0 <3c666e616d653e2028>2.5 E F2<6c6162656c20696e707574>A F0<29>A<546865208c 6c65206e616d6520666f7220696e707574207468617420697320696e206c6162656c2066 6f726d61742e>120 482.4 Q F3<2d696d78>100 506.4 Q F0<3c666e616d653e2028> 2.5 E F2<696e707574206d6174726978>A F0<29>A<546865208c6c65206e616d652066 6f7220696e707574207468617420697320696e206d636c206e617469>120 518.4 Q .3 -.15<7665206d>-.25 H<617472697820666f726d61742e>.15 E F3<2d6f>100 542.4 Q F0<3c666e616d653e2028>2.5 E F2<6f7574707574208c6c65206e616d65>A F0<29> A<53657420746865206e616d65206f6620746865208c6c65207768657265206f75747075 742073686f756c64206265207772697474656e20746f2e>120 554.4 Q F3<2d746162> 100 578.4 Q F0<3c666e616d653e2028>2.5 E F2<75736520746162208c6c65>A F0 <29>A<54686973206f7074696f6e2063617573657320746865206f757470757420746f20 6265207072696e746564207769746820746865206c6162656c7320666f756e6420696e20 74686520746162208c6c652e>120 590.4 Q F3<2d2d64696d>100 614.4 Q F0<28>2.5 E F2 -.37<7265>C <706f7274206e617469766520666f726d617420616e642064696d656e73696f6e73>.37 E F0<29>A .192<546869732077696c6c207265706f727420746865206d617472697820 666f726d6174202865697468657220696e7465726368616e6765206f722062696e617279 2920616e6420746865206d61747269782064696d656e73696f6e732e>120 626.4 R -.15<466f>120 638.4 S 2.5<726167>.15 G<7261706820746865207477>-2.5 E 2.5 <6f72>-.1 G <65706f727465642064696d656e73696f6e732073686f756c6420626520657175616c2e> -2.5 E F3<2d2d6564676573>100 662.4 Q F0<28>2.5 E F2 <6f757470757420616c6c206172>A 2.5<6377>-.37 G <6569676874732c20756e736f72746564>-2.5 E F0<29>A F3 <2d2d65646765732d736f72746564>100 674.4 Q F0<28>2.5 E F2 <6f757470757420616c6c206172>A 2.5<6377>-.37 G <6569676874732c20736f72746564>-2.5 E F0<29>A F3<2d65646765732d68697374> 100 686.4 Q F0<3c73746172742c656e642c737465702c7363616c652028>2.5 E F2 <6f7574707574206172>A 2.5<6377>-.37 G<656967687420686973746f>-2.5 E <6772>-.1 E<616d>-.15 E F0<29>A .326 <5468657365206f7074696f6e73206172652066>120 698.4 R .326<6169726c792073 656c6620646f63756d656e74696e672e2054686520726573756c74206f66>-.1 F F3 <2d65646765732d68697374>2.826 E F0 .325 <697320612074616220736570617261746564207461626c65>2.826 F <6f662062696e206f66>120 710.4 Q <667365747320616e642062696e20636f756e74732e>-.25 E <6d637820712031322d313335>20 768 Q<3134204d61792032303132>151.785 E<31> 202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d63782071283129>20 48 Q <5553455220434f4d4d414e4453>152.895 E<6d63782071283129>155.395 E/F1 10 /Times-Bold@0 SF<2d2d6f75747075742d7461626c65>100 84 Q F0<28>2.5 E/F2 10 /Times-Italic@0 SF<6f7574707574206c6f>A<676963616c20746162207365706172> -.1 E<61746564207461626c6520776974686f7574206b>-.15 E -.3<6579>-.1 G F0 <29>.3 E 1.081<54686973206f7074696f6e20636175736573207461626c65206f7574 70757420737563682061732070726f>120 96 R 1.081<7669646564206279>-.15 F F1 <2d2d76>3.582 E<6172792d636f7272>-.1 E<656c6174696f6e>-.18 E F0 1.082 <746f206265206f757470757420696e2061>3.582 F<6c6f676963616c207461622d7365 7061726174656420666f726d617420726174686572207468616e207072657474792d7072 696e7465642e>120 108 Q F1<2d76>100 132 Q<6172792d746872>-.1 E <6573686f6c64>-.18 E F0 <3c73746172742c656e642c737465702c7363616c653e2028>2.5 E F2 <616e616c797a65206772>A <617068732061742073696d696c6172697479206375746f66>-.15 E<6673>-.18 E F0 <29>A .645<416c6c206f66>120 144 R F2<7374617274>3.145 E F0<2c>A F2 <656e64>3.144 E F0<2c>A F2<73746570>3.144 E F0<616e64>3.144 E F2 <7363616c65>3.144 E F0 .644<6d75737420626520696e7465>3.144 F .644<676572 206e756d626572732e2046726f6d2074686573652061206c697374206f66207468726573 686f6c64206973>-.15 F .282 <636f6e73747275637465642c207374617274696e672066726f6d>120 156 R F2 .282 <7374617274202f207363616c65>2.782 F F0<2c>A F2 .282 <287374617274202b207374657029202f207363616c65>2.782 F F0<2c>A F2 .282 <287374617274202b2032207374657029202f207363616c65>2.782 F F0 2.783<2c61> C .283<6e6420736f>-2.783 F<6f6e20756e74696c20612076>120 168 Q <616c7565206c6172>-.25 E<676572207468616e206f7220657175616c20746f>-.18 E F2<656e64202f207363616c65>2.5 E F0<697320726561636865642e>2.5 E F1 <2d2d76>100 192 Q<6172792d636f7272>-.1 E<656c6174696f6e>-.18 E F0<28>2.5 E F2<616e616c797a65206772>A<6170687320617420636f7272>-.15 E <656c6174696f6e206375746f66>-.37 E<6673>-.18 E F0<29>A 1.072 <5468697320696e73747275637473>120 204 R F1<6d63787175657279>3.572 E F0 1.072<746f207573652061207468726573686f6c64206c697374207375697461626c6520 666f722075736520776974682067726170687320696e20776869636820746865>3.572 F .296<65646765207765696768742073696d696c617269746965732061726520636f7272 656c6174696f6e732e>120 216 R .296<546865206c6973742073746172747320617420 302e3220616e6420656e647320617420302e3935207573696e6720696e6372652d>5.296 F .71<6d656e7473206f6620302e30352e>120 228 R .71<4966206120646966>5.71 F .709<666572656e74207374617274206f7220696e6372656d656e742069732072657175 697265642069742063616e206265206163686965>-.25 F -.15<7665>-.25 G 3.209 <6462>.15 G 3.209<7975>-3.209 G .709<73696e6720746865>-3.209 F F1<2d76> 120 240 Q<6172792d746872>-.1 E<6573686f6c64>-.18 E F0 2.687 <6f7074696f6e2e2046>2.687 F .187<6f722065>-.15 F .187 <78616d706c652c2061207374617274206f66>-.15 F .188 <302e313020616e6420616e20696e6372656d656e74206f66>2.5 F .188 <302e303220617265206f627461696e6564>2.5 F<62792069737375696e67>120 252 Q F1<2d76>2.5 E<6172792d746872>-.1 E <6573686f6c642031302c3130302c322c313030>-.18 E F0<2e>A <6465666f70747b2d2d6e6f2d6c65>100 276 Q <67656e647d7b646f206e6f74206f75747075742065>-.15 E <78706c616e61746f7279206c65>-.15 E<67656e647d>-.15 E -.15<466f>120 288 S 2.5<726166>.15 G <756c6c7920706172736561626c65206f757470757420666f726d617420757365>-2.5 E F1<2d2d6f75747075742d7461626c65>2.5 E F0<2e>A F1<2d2d636c6366>100 312 Q F0<28>2.5 E F2<696e636c75646520636c7573746572696e6720636f6566>A <8c6369656e7420616e616c79736973>-.18 E F0<29>A F1<2d2d656666>100 324 Q F0<28>2.5 E F2<696e636c756465206566>A <8c6369656e637920637269746572696f6e>-.18 E F0<29>A .983<5468657365206f70 74696f6e732063616e206265207573656420746f20636f6d70757465206164646974696f 6e616c2063686172616374657269737469637320696e2074686520616e616c7973697320 6f66207468726573682d>120 336 R .26<6f6c646564206772617068732077697468> 120 348 R F1<2d2d76>2.761 E<6172792d636f7272>-.1 E<656c6174696f6e>-.18 E F0<616e64>2.761 E F1<2d76>2.761 E<6172792d746872>-.1 E<6573686f6c64>-.18 E F0 2.761<2e46>C .261<6f72206c6172>-2.911 F .261 <676520677261706873207468657365206172652072656c612d>-.18 F<7469>120 360 Q -.15<7665>-.25 G .347<6c792074696d652d636f6e73756d696e6720746f20636f6d 707574652e204d6f726520696e666f726d6174696f6e20616e642061207265666572656e 636520666f7220746865206566>.15 F<8c6369656e63>-.25 E 2.846<7963>-.15 G <72692d>-2.846 E<746572696f6e2063616e20626520666f756e6420696e>120 372 Q F1<636c6d696e66>2.5 E<6f283129>-.25 E F0<2e>A F1<2d76>100 396 Q <6172792d6b6e6e>-.1 E F0 <3c73746172742c656e642c737465702c7363616c653e2028>2.5 E F2 <616e616c797a65206772>A<6170687320666f722076617279696e67206b2d4e4e>-.15 E F0<29>A F1<2d76>100 408 Q<6172792d6365696c>-.1 E F0 <3c73746172742c656e642c737465702c7363616c653e2028>2.5 E F2 <616e616c797a65206772>A<6170687320666f722076617279696e67206365696c2072> -.15 E<6564756374696f6e73>-.37 E F0<29>A F1<2d2d72>100 420 Q<6564756365> -.18 E F0<28>2.5 E F2<7573652072>A<656475636564206d6174726978>-.37 E F0 <29>A 1.06<5468657365206f7074696f6e7320636175736520616e616c79736973206f 662061206772617068206173206974206973207375626a656374656420746f2072656475 6374696f6e73206163726f737320612072616e6765206f66>120 432 R .815 <706172616d65746572732e20526566657220746f>120 444 R F1<6d6378696f283529> 3.315 E F0 .814<666f722061206465736372697074696f6e206f662074686573652072 6564756374696f6e732e2054686520616e616c7973657320737461727473206174>3.315 F<746865>120 456 Q F2<656e64>2.726 E F0<6172>2.726 E .226 <67756d656e742c20616e642070726f6772657373657320746f>-.18 F -.1<7761>-.25 G .226<72647320746865>.1 F F2<7374617274>2.726 E F0<6172>2.726 E .226 <67756d656e74207573696e672064656372656d656e7473206f662073697a65>-.18 F F2<73746570>2.727 E F0<2e>A .064<427920646566>120 468 R .064 <61756c742074686520726564756374696f6e20697320616c>-.1 F -.1<7761>-.1 G .064<797320636f6d70757465642072656c617469>.1 F .364 -.15<76652074>-.25 H 2.564<6f74>.15 G .064<6865207374617274206d61747269782c20692e652e20746865 20696e707574206d6174726978>-2.564 F<6166746572>120 480 Q F1<2d7466>3.635 E F0 1.135<7472616e73666f726d6174696f6e73206861>3.635 F 1.435 -.15 <7665206f>-.2 H 1.135 <7074696f6e616c6c79206265656e206170706c6965642e2053706563696679696e67> .15 F F1<2d2d72>3.636 E<6564756365>-.18 E F0 1.136 <636175736573207468697320746f>3.636 F <6368616e676520736f20746861742065616368206e65>120 492 Q 2.5<7772>-.25 G <6564756374696f6e2069732063616c63756c617465642072656c617469>-2.5 E .3 -.15<76652074>-.25 H 2.5<6f74>.15 G <686520726564756374696f6e206a75737420636f6d70757465642e>-2.5 E -.15 <466f>120 516 S 2.874<7267>.15 G .373<7261706873207769746820746965732061 6d6f6e6720656467652077656967687473206974206d61792062652075736566756c2074 6f20757365>-2.874 F F1<2d7466202723747567282927>2.873 E F0 2.873<2e54>C .373<6869732077696c6c20616464>-2.873 F .061<736d616c6c207065727475726261 74696f6e7320746f207468652065646765207765696768747320616e64206861>120 528 R .361 -.15<76652074>-.2 H .061<6865206566>.15 F .062 <66656374206f6620627265616b696e6720746965732e>-.25 F .062<427920646566> 5.062 F .062<61756c7420706572>-.1 F<2d>-.2 E 1.686<747572626174696f6e73 2061726520636f6d7075746564207573696e672074686520636f73696e65206265747765 656e207468652076>120 540 R 1.686 <6563746f7273206f66206e65696768626f757273206f6620746865207477>-.15 F<6f> -.1 E .299<6e6f64657320696e636964656e7420746f20616e20656467652e>120 552 R .299<546869732063616e206265206368616e67656420746f20612072616e646f6d20 706572747572626174696f6e2077697468>5.299 F F1<2d7466202723727567282927> 2.8 E F0<2e>A F1<2d2d746573742d6379636c65>100 576 Q F0<28>2.5 E F2 <746573742077686574686572206772>A <61706820636f6e7461696e73206379636c6573>-.15 E F0<29>A F1 <2d746573742d6379636c65>100 588 Q F0<3c6e756d3e2028>2.5 E F2 <74657374206379636c65732c2072>A<65706f7274206379636c656573>-.37 E F0<29> A -.7<5465>120 600 S .399<737420776865746865722074686520696e707574206772 61706820636f6e7461696e732063>.7 F .399<79636c65732e2057>-.15 F .398<6974 6820746865207365636f6e64206f7074696f6e206e6f6465732074686174206172652070 617274206f66>-.4 F 3.298<6163>120 612 S .798 <79636c6520617265206f75747075742c20757020746f2061206d6178696d756d206f66> -3.448 F F2<3c6e756d3e>3.298 E F0 .798<6e6f6465732e20557365>3.298 F F2 <3c6e756d3e>3.298 E F0<3d>A F1<2d31>A F0 .799 <746f206f757470757420616c6c2073756368>3.298 F<6e6f6465732e>120 624 Q F1 <2d2d746573742d6d6574726963>100 648 Q F0<28>2.5 E F2 <746573742077686574686572206772>A <6170682064697374616e6365206973206d6574726963>-.15 E F0<29>A<5468697320 746573747320616c6c20706f737369626c6520747269616e676c652072656c6174696f6e 73686970732e>120 660 Q F1<2d72>100 684 Q<65706f72742d7363616c65>-.18 E F0<3c6e756d3e2028>2.5 E F2<656467>A 2.5<6577>-.1 G <6569676874202f20746872>-2.5 E<6573686f6c64207363616c696e67>-.37 E F0 <29>A .3<54686520656467652077656967687473206d65616e2c2061>120 696 R -.15 <7665>-.2 G .3<726167652c20616e6420696e746572>.15 F .3 <2d7175617274696c652072616e67652c2061732077656c6c2061732074686520646966> -.2 F .3<666572656e74207468726573686f6c64>-.25 F 1.034<7374657073206172 6520616c6c2072657363616c656420696e20746865207265706f72746564206f75747075 7420746f2061>120 708 R -.2<766f>-.2 G 1.035 <6964207072696e74696e67206f66206672616374696f6e616c20706172742e>.2 F <4966>6.035 E F1<2d76>3.535 E<6172792d>-.1 E<746872>120 720 Q <6573686f6c64>-.18 E F0 -.1<7761>2.88 G 2.88<7373>.1 G .38 <7570706c696564207468656e207363616c696e672066>-2.88 F .38 <6163746f722073706563698c656420696e20746865206172>-.1 F .38 <67756d656e7420697320757365642e>-.18 F -.4<5769>5.38 G<7468>.4 E F1 <2d2d76>2.88 E<6172792d>-.1 E F0<6d637820712031322d313335>20 768 Q <3134204d61792032303132>151.785 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d63782071283129>20 48 Q <5553455220434f4d4d414e4453>152.895 E<6d63782071283129>155.395 E/F1 10 /Times-Bold@0 SF<636f7272>120 84 Q<656c6174696f6e>-.18 E F0 3.435<6173> 3.435 G .935<63616c696e672066>-3.435 F .935<6163746f72206f66>-.1 F .936 <31303020697320757365642e204569746865722063616e206265206f>2.5 F -.15 <7665>-.15 G .936 <7272696464656e206279207573696e67207468652070726573656e74>.15 F <6f7074696f6e2e>120 96 Q F1<2d6469>100 120 Q<76>-.1 E F0<3c6e756d3e2028> 2.5 E/F2 10/Times-Italic@0 SF<636c75737465722073697a65207365706172>A <6174696e672076616c7565>-.15 E F0<29>A 1.25 <5768656e20616e616c797a696e672067726170687320617420646966>120 132 R 1.25 <666572656e74207468726573686f6c64732077697468206f6e65206f6620746865206f 7074696f6e732061626f>-.25 F -.15<7665>-.15 G<2c>.15 E F1 <6d63787175657279>3.75 E F0 1.701<7265706f727473207468652070657263656e74 616765206f66206e6f64657320636f6e7461696e656420696e20636c757374657273206e 6f742065>120 144 R 1.702 <7863656564696e6720612073706563698c65642073697a652c206279>-.15 F<646566> 120 156 Q<61756c7420332e>-.1 E<54686973206e756d6265722063616e2062652063 68616e676564207573696e6720746865>5 E F1<2d6469>2.5 E<76>-.1 E F0 <6f7074696f6e2e>2.5 E F1<2d7466>100 180 Q F0<3c74662d737065633e2028>2.5 E F2<7472>A<616e73666f726d20696e707574206d61747269782076616c756573>-.15 E F0<29>A -.35<5472>120 192 S <616e73666f726d2074686520696e707574206d61747269782076>.35 E<616c75657320 6163636f7264696e6720746f207468652073796e7461782064657363726962656420696e> -.25 E F1<6d6378696f283529>2.5 E F0<2e>A F1<2d74>100 216 Q F0 <3c6e756d3e2028>2.5 E F2<6e756d626572206f6620746872>A <6561647320746f20757365>-.37 E F0<29>A .41<546869732068617320616e206566> 120 228 R .41<66656374206f6e6c79207768656e207573696e6720746865>-.25 F F1 <2d76>2.909 E<6172792d6b6e6e>-.1 E F0 .409<6f7074696f6e2c20616e64206973 206f6e6c792075736566756c206f6e206d756c74692d435055>2.909 F <6d616368696e65732e>120 240 Q F1<2d2d6e6f64652d61747472>100 264 Q F0<28> 2.5 E F2<6f7574707574206e6f6465206465>A<6772>-.4 E <656520616e642077656967687420617474726962>-.37 E<75746573>-.2 E F0<29>A< 4f757470757420697320696e2074686520666f726d206f66206120746162207365706172 61746564208c6c652e>120 276 Q<546865206f7074696f6e>5 E F1<2d69636c>2.5 E F0<63616e206265207573656420696e20636f6e6a756374696f6e2e>2.5 E F1 <2d69636c>100 300 Q F0<3c666e616d653e2028>2.5 E F2 <696e70757420636c7573746572696e67>A F0<29>A .323<4f757470757420666f7220 65616368206e6f6465207468652073697a65206f662074686520636c7573746572206974 20697320696e2e>120 312 R .324<54686973206f7074696f6e2063616e206265207573 656420696e20636f6e6a756e6374696f6e>5.323 F<77697468>120 324 Q F1 <2d2d6e6f64652d61747472>2.5 E F0<2e>A/F3 10.95/Times-Bold@0 SF <53454520414c534f>20 340.8 Q F1<6d6378696f283529>100 352.8 Q F0 2.667 <2c61>C<6e64>-2.667 E F1<6d636c66616d696c79283729>2.667 E F0 .167 <666f7220616e206f>2.667 F -.15<7665>-.15 G<72766965>.15 E 2.667<776f> -.25 G 2.667<6661>-2.667 G .166<6c6c2074686520646f63756d656e746174696f6e 20616e6420746865207574696c697469657320696e20746865206d636c>-2.667 F -.1 <6661>100 364.8 S<6d696c792e>.1 E<6d637820712031322d313335>20 768 Q <3134204d61792032303132>151.785 E<33>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcl.html0000644000402500021140000026266111754271042011517 00000000000000 The mcl manual

14 May 2012    mcl 12-135

NAME

mcl — The Markov Cluster Algorithm, aka the MCL algorithm.

This program implements mcl, a cluster algorithm for graphs. A single parameter controls the granularity of the output clustering, namely the -I inflation option described further below. In standard usage of the program this parameter is the only one that may require changing. By default it is set to 2.0 and this is a good way to start. If you want to explore cluster structure in graphs with MCL, vary this parameter to obtain clusterings at different levels of granularity. A good set of starting values is 1.4, 2, 4, and 6.

The program has a rather large set of options. Except for -I none affects the clustering method itself. The other options are for a variety of aspects, such as study of the underlying MCL process (i.e. dumping of iterands), network preprocessing (incorporated for efficiency), resource allocation options (for large-scale analyses), output naming and placement, output formatting, setting of verbosity levels, and so on.

Network construction and reduction techniques should not be considered as part of a clustering algorithm. Nevertheless particular techniques may benefit particular methods or applications. In mcl many transformations are accessible through the -tf option. It can be used for edge weight transformations and selection, as well as transformations that act on a graph as a whole. It is for example possible to remove edges with weight below 0.7 by issuing -tf 'gq(0.7)', where the quotes are necessary to prevent the shell from interpreting the parentheses. The option accepts more complicated sequences, such as -tf 'gq(0.7),add(-0.7)'. This causes all remaining edge weights to be shifted to the range [0-0.3], assuming that the input contains correlations. Many more transformations are supported, as documented in mcxio. Examples of graph-wide transformations are '#knn(<num>)' and '#ceilnb(<num>)'. The first only keeps those edges that occur in the list of top-<num> edges of highest weight in both of its incident nodes. The second removes edges from nodes of highest degree first, proceeding until all node degrees satisfy the given threshold. The -pi (pre-inflation) option can be used to increase the contrast in edge weights. This may be useful when clusterings are coarse and fine-grained clusterings are difficult to obtain.

GETTING STARTED

There are two main modes of invocation. The most accessible is label mode which assumes a format alternatively called label input or ABC-format. The input is then a file or stream in which each line encodes an edge in terms of two labels (the 'A' and the 'B') and a numerical value (the 'C'), all separated by white space. The most basic example of usage is this:

mcl <-|fname> --abc -o fname-out

The output is then a file where each line is a cluster of tab-separated labels. If clustering is part of a larger workflow where it is desirable to analyse and compare multiple clusterings, then it is a good idea to use native mode rather than ABC mode. The reason for this is that native mode is understood by all programs in the mcl suite. It is a more stringent and unambiguous format, and hence more suitable for data exchange. The reader is refered to clmprotocols for more information.

SYNOPSIS

The example invocation below assumes matrix input, as explained above and described in the mcxio section. Switching to label mode requires the input file to be in ABC-format and the addition of the --abc option.

mcl <-|fname> [-I <num> (inflation)] [-o <str> (fname)]

These options are sufficient in 95 percent of the cases or more. The first argument must be the name of a file containing a graph/matrix in the mcl input format, or a hyphen to read from STDIN. With respect to clustering, the -I option is foremost relevant.

The full listing of mcl options is shown further below, separated into parts corresponding with functional aspects such as clustering, threading, verbosity, network preprocessing, pruning and resource management, automatic output naming, and dumping.

Baseline clustering options
[-I <num> (inflation)] [-o <fname> (fname)]

Output options
[-odir <dname> (directory)] [--d (use input directory for output)]

Input options
[--abc (expect/write labels)] [--sif (expect/write labels)] [--etc (expect/write labels)] [--expect-values (sif or etc stream contains values)] [-use-tab <fname> (use mapping to write)]

Transform options
[-tf <tf-spec> (transform input matrix values)] [-abc-tf <tf-spec> (transform input stream values)] [--abc-neg-log10 (take log10 of stream values, negate sign)] [--abc-neg-log (take log of stream values, negate sign)]

Cache options
[-write-graph <fname> (write graph)] [-write-graphx <fname> (write transformed graph)] [-write-expanded <fname> (write expanded graph)] [--write-limit (write mcl process limit)]

Input manipulation options
[-pi <num> (pre-inflation)] [-ph <num> (pre-inflation, max-bound)] [-if <num> (start-inflation)] [--discard-loops=<y/n> (discard y/n loops in input)] [--sum-loops (set loops to sum of other arcs weights)] [-c <num> (reweight loops)]

Clustering processing options
[-sort <str> (sort mode)] [-overlap <str> (overlap mode)] [--force-connected=<y/n> (analyze components)] [--check-connected=<y/n> (analyze components)] [--analyze=<y/n> (performance criteria)] [--show-log=<y/n> (show log)]

Verbosity options
[-q <spec> (log levels)] [-v <str> (verbosity type on)] [-V <str> (verbosity type off)] [--show (print (small) matrices to screen)]

Thread options
[-te <int> (#expansion threads)]

Output file name and annotation options
[-o <str> (fname)] [-ap <str> (use str as file name prefix)] [-aa <str> (append str to suffix)] [-az (show output file name and exit)] [-ax (show output suffix and exit)] [-annot <str> (dummy annotation option)]

Dump options
[-dump-interval <i:j> (dump interval)] [-dump-modulo <int> (dump modulo)] [-dump-stem <stem> (dump file stem)] [-dump <str> (type)] [-digits <int> (printing precision)] [--write-binary (write matrices in binary format)]

Info options
[--jury-charter (explains jury)] [--version (show version)] [-how-much-ram k (RAM upper bound)] [-h (most important options)] [--help (one-line description for all options)] [-z (show current settings)] [-az (show output file name and exit)] [-ax (show output suffix and exit)] [--show-schemes (show resource schemes)]

Implementation options
[-sparse <int> (sparse matrix multiplication threshold)]

Pruning options
The following options all pertain to the various pruning strategies that can be employed by mcl. They are described in the PRUNING OPTIONS section, accompanied by a description of the mcl pruning strategy. If your graphs are huge and you have an appetite for tuning, have a look at the following:

[-scheme <int> (resource scheme)] [-resource <int> (per-node resource maximum)] [-p <num> (cutoff)] [-P <int> (1/cutoff)] [-S <int> (selection number)] [-R <int> (recovery number)] [-pct <int> (recover percentage)] [-warn-pct <int> (prune warn percentage)] [-warn-factor <int> (prune warn factor)]

The first argument of mcl must be a file name, but some options are allowed to appear as the first argument instead. These are the options that cause mcl to print out information of some kind, after which it will gracefully exit. The full list of these options is

-z, -h, --help, --version, --show-settings, --show-schemes, --jury-charter.

DESCRIPTION

mcl implements the MCL algorithm, short for the Markov cluster algorithm, a cluster algorithm for graphs developed by Stijn van Dongen at the Centre for Mathematics and Computer Science in Amsterdam, the Netherlands. The algorithm simulates flow using two simple algebraic operations on matrices. The inception of this flow process and the theory behind it are described elsewhere (see REFERENCES). Frequently asked questions are answered in the mclfaq section. The program described here is a fast threaded implementation written by the algorithm's creator with contributions by several others. Anton Enright co-implemented threading; see the HISTORY/CREDITS section for a complete account. See the APPLICABILITY section for a description of the type of graph mcl likes best, and for a qualitative assessment of its speed. mcl is accompanied by several other utilities for analyzing clusterings and performing matrix and graph operations; see the SEE ALSO section.

The first argument is the input file name, or a single hyphen to read from stdin. The rationale for making the name of the input file a fixed parameter is that you typically do several runs with different parameters. In command line mode it is pleasant if you do not have to skip over an immutable parameter all the time.

The -I f option is the main control, affecting cluster granularity. In finding good mcl parameter settings for a particular domain, or in finding cluster structure at different levels of granularity, one typically runs mcl multiple times for varying values of f (refer to the -I inflation option for further information).

NOTE MCL interprets the matrix entries or graph edge weights as similarities, and it likes undirected input graphs best. It can handle directed graphs, but any node pair (i,j) for which w(i,j) is much smaller than w(j,i) or vice versa will presumably have a slightly negative effect on the clusterings output by mcl. Many such node pairs will have a distinctly negative effect, so try to make your input graphs undirected. How your edge weights are computed may affect mcl's performance. In protein clustering, one way to go is to choose the negated logarithm of the BLAST probabilities (see REFERENCES).

mcl's default parameters should make it quite fast under almost all circumstances. Taking default parameters, mcl has been used to generate good protein clusters on 133k proteins, taking 10 minutes running time on a Compaq ES40 system with four alpha EV6.7 processors. It has been applied (with good results) to graphs with two million nodes, and if you have the memory (and preferably CPUs as well) nothing should stop you from going further.

For large graphs, there are several groups of parameters available for tuning the mcl computing process, should it be necessary. The easiest thing to do is just vary the -scheme option. This triggers different settings for the group of pruning parameters -p/-P, -R, -S, and -pct. The default setting corresponds with -scheme 6. When doing multiple mcl runs for the same graphs with different -I settings (for obtaining clusterings at different levels of granularity), it can be useful to factor out the first bit of computation that is common to all runs, by using the -write-expanded option one time and then using -if inflation for each run in the set. Whether mcl considers a graph large depends mainly on the graph connectivity; a highly connected graph on 50,000 nodes is large to mcl (so that you might want to tune resources) whereas a sparsely connected graph on 500,000 nodes may be business as usual.

mcl is a memory munger. Its precise appetite depends on the resource settings. You can get a rough (and usually much too pessimistic) upper bound for the amount of RAM that is needed by using the -how-much-ram option. The corresponding entry in this manual page contains the simple formula via which the upper bound is computed.

Other options of interest are the option to specify threads -te, and the verbosity-related options -v and -V. The actual settings are shown with -z, and for graphs with at most 12 nodes or so you can view the MCL matrix iterands on screen by supplying --show (this may give some more feeling).

MCL iterands allow a generic interpretation as clusterings as well. The clusterings associated with early iterands may contain a fair amount of overlap. Refer to the -dump option, the mclfaq manual, and the clm imac utility (Interpret Matrices As Clusterings). Use clm imac only if you have a special reason; the normal usage of mcl is to do multiple runs for varying -I parameters and use the clusterings output by mcl itself.

Under very rare circumstances, mcl might get stuck in a seemingly infinite loop. If the number of iterations exceeds a hundred and the chaos indicator remains nearly constant (presumably around value 0.37), you can force mcl to stop by sending it the ALRM signal (usually done by kill -s ALRM pid). It will finish the current iteration, and interpret the last iterand as a clustering. Alternatively, you can wait and mcl might converge by itself or it will certainly stop after 10,000 iterations. The most probable explanation for such an infinite loop is that the input graph contains the flip-flop graph of node size three as a subgraph.

The creator of this page feels that manual pages are a valuable resource, that online html documentation is also a good thing to have, and that info pages are way way ahead of their time. The NOTES section explains how this page was created.

In the OPTIONS section options are listed in order of importance, with related options grouped together.

OPTIONS

-I <num> (inflation)

Sets the main inflation value to <num>. This value is the main handle for affecting cluster granularity. It is usually chosen somewhere in the range [1.2-5.0]. -I 5.0 will tend to result in fine-grained clusterings, and -I 1.2 will tend to result in very coarse grained clusterings. Your mileage will vary depending on the characteristics of your data. That is why it is a good idea to test the quality and coherency of your clusterings using clm dist and clm info. This will most likely reveal that certain values of -I are simply not right for your data. The clm dist section contains a discussion of how to use the cluster validation tools shipped with mcl (see the SEE ALSO section).

With low values for -I, like -I 1.2, you should be prepared to use more resources in order to maintain quality of clusterings, i.e. increase the argument to the -scheme option.

 
-o <fname> (output file name)
-odir <dname> (output directory name)
--d (use input directory for output)

The default mode of output creation for mcl is to create a file name that uses the input file name stripped of any leading path components, augmented with a prefix 'out.' and a suffix encoding pivotal mcl parameters. This will usually be the inflation value which is the argument to the -I option. By default the output file is written in the current directory. For example, if the input is named data/small.mci for example and inflation is set to three, the output file will be named out.small.mci.I30.

This behaviour can be overridden in various ways. The -o option simply specifies the output file name, which may include path components that should exist. It is possible to send the clustering to STDOUT by supplying -o -. With the -odir <dname> option mcl constructs the output file name as before, but writes the file in the directory <dname>. Finally, the option --d is similar but more specific in that mcl will write the output in the directory specified by the path component of the input file, that is, the directory in which the input file resides.

If either one of --abc, --sif, --etc or -use-tab tab-file is used the output will be in label format. Otherwise the clustering is output in the mcl matrix format; see the mcxio section for more information on this. Refer also to the group of options discussed at --abc.

Look at the -ap prefix option and its siblings for the automatic naming constructions employed by mcl if the -o option is not used.

 
-c <num> (reweight loops)
--sum-loops (set loops to sum of other arcs weights)

With the -c <num> option, as the final step of loop computation (i.e. after initialization and shadowing) all loop weights are multiplied by <num>, if supplied.

 
--discard-loops=<y/n> (discard loops in input)

By default mcl will remove any loops that are present in the input. Use --discard-loops=n to turn this off. Bear in mind that loops will still be modified in all cases where the loop weight is not maximal among the list of edge weights for a given node.

 
--abc (expect/write labels)
--sif (expect/write labels)
--etc (expect/write labels)
--expect-values (expect label:weight format)
-use-tab <fname> (use mapping to write)

These items all relate to label input and/or label output. --abc tells mcl to expect label input and output clusters in terms of those labels. This simple format expects two or three fields separated by white space on each line. The first and second fields are interpreted as labels specifying source and destination node respectively. The third field, if present, specifies the weight of the arc connecting the two nodes.

The option --sif tells mcl to expect SIF (Simple Interaction File) format. This format is line based. The first two fields specify the source node (as a label) and the relationship type. An arbitrary number of fields may follow, each containing a label identifying a destination node. The second field is simply ignored by mcl. As an extension to the SIF format weights may optionally follow the labels, separated from them with a colon character. It is in this case necessary to use the --expect-values option. The --etc option expects a format identical in all respects except that the relationship type is not present, so that all fields after the first are interpreted as destination labels.

-use-tab is only useful when matrix input is used. It will use the tab file to convert the output to labels; it does not fail on indices missing from the tab file, but will bind these to generated dummy labels.

 
-tf <tf-spec> (transform input matrix values)
-abc-tf <tf-spec> (transform input stream values)
--abc-neg-log10 (take log10 of stream values, negate sign)
--abc-neg-log (take log of stream values, negate sign)

-tf transforms the values of the input matrix according to <tf-spec>. -abc-tf transforms the stream values (when --abc is used) according to <tf-spec>. --abc-neg-log and --abc-neg-log10 imply that the stream input values are replaced by the negation of their log or log10 values, respectively. The reason for their existence is documented in mcxio. For a description of the transform language excpected/accepted in <tf-spec> refer to the same.

 
-write-graph <fname> (write graph)
-write-graphx <fname> (write transformed graph)
-write-expanded <fname> (write expanded graph)
--write-limit (write mcl process limit)

The first two options are somewhat outdated, in that the prefered way of loading networks is by using mcxload. The option -write-expanded can be useful for exploring more complicated input transformations that incorporate an expansion step, but is not really relevant for production use. The last option is mainly educational and for analyzing the mcl process itself.

 
-scheme <num> (use a preset resource scheme)
-resource <num> (allow n neighbours throughout)

There are currently seven different resource schemes, indexed 1..7. High schemes result in more expensive computations that may possibly be more accurate. The default scheme is 4. When mcl is done, it will give a grade (the so called jury synopsis) to the appropriateness of the scheme used. A low grade does not necessarily imply that the resulting clustering is bad - but anyway, a low grade should be reason to try for a higher scheme.

Use the -resource <num> option to cap for each nodes the number of neighbours tracked during computation at <num> nodes.

The PRUNING OPTIONS section contains an elaborate description of the way mcl manages resources, should you be interested. In case you are worried about the validation of the resulting clusterings, the mclfaq section has several entries discussing this issue. The bottom line is that you have to compare the clusterings resulting from different schemes (and otherwise identical parameters) using utilities such as clm dist, clm info on the one hand, and your own sound judgment on the other hand.

If your input graph is extremely dense, with an average node degree (i.e. the number of neighbours per node) that is somewhere above 500, you may need to filter the input graph by removing edges, for example by using one of -tf '#ceilnb()' or -tf '#knn()'.

 
--show-schemes (show preset resource schemes)

Shows the explicit settings to which the different preset schemes correspond.

The characteristics are written in the same format (more or less) as the output triggered by -v pruning.

 
-V <str> (verbosity type off)

See the -v option below.

 
-v <str> (verbosity type on)

These are the different verbosity modes:

pruning
explain
cls
all

 
-q <spec> (log levels)

To make mcl as quiet as can be, add -q x -V all to the command line.

The -q option governs a general logging mechanism. The format accepted is described in the tingea.log manual page.

The other options govern verbosity levels specific to mcl. -v all turns them all on, -V all turns them all off. -v str and -V str turn on/off the single mode str (for str equal to one of pruning, cls, or explain). Each verbosity mode is given its own entry below.

 
-v explain

This mode causes the output of explanatory headers illuminating the output generated with the pruning verbosity mode.

 
-v pruning

This mode causes output of resource-related quantities. It has a separate entry in the PRUNING OPTIONS section.

 
-v cls

This mode (on by default) prints a terse list of characteristics of the clusterings associated with intermediate iterands. The characteristics are E/V, cls, olap, and dd. They respectively stand for the number of outgoing arcs per node (as an average), the number of clusters in the overlapping clustering associated with the iterand, the number of nodes in overlap, and the dag depth associated with the DAG (directed acyclic graph) associated with the iterand. For more information on this DAG refer to the -dump option description in this manual and also mclfaq.

Standard log information

expa
This gives the ratio of (1) the number of edges after initial expansion, before pruning, to (2) the number of edges before initial expansion.
expb
This gives the ratio of (1) the number of edges after expansion and pruning, to (2) the number of edges before initial expansion.
expc
This gives the ratio of (1) the number of edges after expansion and pruning, to (2) the number of edges of the original input graph.
fmv
This gives the percentage of nodes (matrix columns) for which full matrix/vector computation was used (as opposed to using a sparse technique).
 
-aa <str> (append <str> to suffix)

See the -ap option below.

 
-ap <str> (use <str> as file name prefix)

If the -o fname option is not used, mcl will create a file name (for writing output to) that should uniquely characterize the important parameters used in the current invocation of mcl. The default format is out.fname.suf, where out is simply the literal string out, fname is the first argument containing the name of the file (with the graph) to be clustered, and where suf is the suffix encoding a set of parameters (described further below).

The -ap str option specifies a prefix to use rather than out.fname as sketched above. However, mcl will interpret the character '=', if present in str, as a placeholder for the input file name.

If the -aa str option is used, mcl will append str to the suffix suf created by itself. You can use this if you need to encode some extra information in the file name suffix.

The suffix is constructed as follows. The -I f and -scheme parameter are always encoded. Other options, such as -pi f and -knn are only encoded if they are used. Any real argument f is encoded using exactly one trailing digit behind the decimal separator (which itself is not written). The setting -I 3.14 is thus encoded as I31. The -scheme option is encoded using the letter 's', all other options mentioned here are encoded as themselves (stripped of the hyphen). For example

mcl small.mci -I 3 -c 2.5 -pi 0.8 -scheme 5

results in the file name out.small.mci.I30s5c25pi08. If you want to know beforehand what file name will be produced, use the -az option.

 
-az (show output file name and exit)
-ax (show output suffix and exit)
If mcl automatically constructs a file name, it can be helpful to known beforehand what that file name will be. Use -az and mcl will write the file name to STDOUT and exit. This can be used if mcl is integrated into other software for which the automatic creation of unique file names is convenient.

By default mcl incorporates the input file name into the output file name and appends a short suffix describing the most important option settings. Use -ax to find out what that suffix is. This can be useful in wrapper pipeline scripts such as clxcoarse.

 
-annot <str> (dummy annotation option)

mcl writes the command line with which it was invoked to the output clustering file. Use this option to include any additional information. MCL does nothing with this option except copying it as just described.

 
-te <int> (#expansion threads)

Threading is useful if you have a multi-processor system. mcl will spawn k threads of computation. If these are computed in parallel (this depends on the number of CPUs available to the mcl process) it will speed up the process accordingly.

When threading, it is best not to turn on pruning verbosity mode if you are letting mcl run unattended, unless you want to scrutinize its output later. This is because it makes mcl run somewhat slower, although the difference is not dramatic.

 
-pi <num> (pre-inflation)
-ph <num> (pre-inflation, max-bound)

If used, mcl will apply inflation one time to the input graph before entering the main process. This can be useful for making the edge weights in a graph either more homogeneous (which may result in less granular clusterings) or more heterogeneous (which may result in more granular clusterings). Homogeneity is achieved for values <num> less than one, heterogeneity for values larger than one. Values to try are normally in the range [2.0,10.0].

The -ph option is special in that it does not rescale columns to be stochastic. Instead, it rescales columns so that the maximum value found in the column stays the same after inflation was applied. There is little significance to this, and what little there is is undocumented.

 
-if <num> (start-inflation)

If used, mcl will apply inflation one time to the input graph before entering the main process. The difference with -pi is that with the latter option mcl may apply certain transformations after reading in the matrix such as adding or modifying loops. The purpose of the -if (mnemonic for inflation-first) option is to use it on graphs saved with the --write-expanded option and convey to mcl that it should not apply those transformations.

 
-dump-interval <i:j> (dump interval)
-dump-interval all

Dump during iterations i..j-1. Use all to dump in all iterations. See the -dump str option below.

 
-dump-modulo <int> (dump i+0..i+<int>..)

Sampling rate: select only these iterations in the dump interval. See the -dump str option below.

 
-dump-stem <stem> (file stem)

Set the the stem for file names of dumped objects (default mcl). See the -dump str option below.

 
-dump <str> (type)

str is checked for substring occurrences of the following entries. Repeated use of -dump is also allowed.

ite
dag
cls
chr
lines
cat

lines and cat change the mode of dumping. The first changes the dump format to a line based pairwise format rather than the default mcl matrix format. The second causes all dumped items to be dumped to the default stream used for the output clustering, which is appended at the end.

The ite option writes mcl iterands to file. The cls option writes clusterings associated with mcl iterands to file. These clusters are obtained from a particular directed acyclic graph (abbreviated as DAG) associated with each iterand. The dag option writes that DAG to file. The DAG can optionally be further pruned and then again be interpreted as a clustering using clm imac, and clm imac can also work with the matrices written using the ite option. It should be noted that clusterings associated with intermediate iterands may contain overlap, which is interesting in many applications. For more information refer to mclfaq and the REFERENCES section below.

The result option dumps the usual MCL clustering.

The chr option says, for each iterand I, to output a matrix C with characteristics of I. C has the same number of columns as I. For each column k in C, row entry 0 is the diagonal or 'loop' value of column k in I after expansion and pruning, and before inflation and rescaling. Entry 1 is the loop value after inflation and rescaling. Entry 2 is the center of column k (the sum of its entries squared) computed after expansion and before pruning, entry 3 is the maximum value found in that column at the same time. Entry 4 is the amount of mass kept for that column after pruning.

The -ds option sets the stem for file names of dumped objects (default mcl). The -di and -dm options allow a selection of iterands to be made.

 
-digits <int> (printing precision)

This has two completely different uses. It sets the number of decimals used for pretty-printing mcl iterands when using the --show option (see below), and it sets the number of decimals used for writing the expanded matrix when using the -write-expanded option.

 
--show (print matrices to screen)

Print matrices to screen. The number of significant digits to be printed can be tuned with -digits n. An 80-column screen allows graphs (matrices) of size up to 12(x12) to be printed with three digits precision (behind the comma), and of size up to 14(x14) with two digits. This can give you an idea of how mcl operates, and what the effect of pruning is. Use e.g. -S 6 for such a small graph and view the MCL matrix iterands with --show.

 
--write-binary (output format)

Write matrix dump output in binary mcl format rather than interchange mcl format (the default). Note that mcxconvert can be used to convert each one into the other. See mcxio and mcx for more information.

 
-sort <str> (sort mode)

str can be one of lex, size, revsize, or none. The default is 'revsize', in which the largest clusters come first. If the mode is 'size', smallest clusters come first, if the mode is 'lex', clusters are ordered lexicographically, and if the mode is 'none', the order is the same as produced by the procedure used by mcl to map matrices onto clusterings.

 
-overlap <str> (overlap mode)

Mode keep causes mcl to retain overlap should this improbable event occur. In theory, mcl may generate a clustering that contains overlap, although this almost never happens in practice, as it requires some particular type of symmetry to be present in the input graph (not just any symmetry will do). Mathematically speaking, this is a conjecture and not a theorem, but the present author wil eat his shoe if it fails to be true (for marzipan values of shoe). It is easy though to construct an input graph for which certain mcl settings result in overlap - for example a line graph on an odd number of nodes. The default is to excise overlapping parts and introduce them as clusters in their own right. It is possible to allocate nodes in overlap to the first cluster in which they occur (i.e. rather arbitrarily), corresponding with mode cut.

In mode split mcl will put all nodes in overlap into separate clusters. These clusters are chosen such that two nodes are put in the same new cluster if and only if they always occur paired in the clusters of the overlapping clustering.

This option has no effect on the clusterings that are output when using -dump cls - the default for those is that overlap is not touched, and this default can not yet be overridden.

 
--force-connected=<y/n> (analyze components)
--check-connected=<y/n> (analyze components)

If the input graph has strong bipartite characteristics, mcl may yield clusters that do not correspond to connected components in the input graph. Turn one of these modes on to analyze the resultant clustering.

If loose clusters are found they will be split into subclusters corresponding to connected components. With --force-connected=y mcl will write the corrected clustering to the normal output file, and the old clustering to the same file with suffix orig. With --check-connected=y mcl will write the loose clustering to the normal output file, and the corrected clustering to the same file with suffix coco.

These options are not on by default, as the analysis is currently (overly) time-consuming and mcl's behaviour actually makes some sense (when taking bipartite characteristics into account).

 
--analyze=<y/n> (performance criteria)

With this mode turned on, mcl will reread the input matrix and compute a few performance criteria and attach them to the output file. Off by default.

 
--show-log=<y/n> (show log)

Shows the log with process characteristics on STDOUT. By default, this mode is off.

 
--jury-charter (explains jury)

Explains how the jury synopsis is computed from the jury marks.

 
--version (show version)

Show version.

 
-how-much-ram <int> (RAM upper bound)

<int> is interpreted as the number of nodes of an input graph. mcl will print the maximum amount of RAM it needs for its computations. The formula for this number in bytes is:

2 * c * k * <int> 2 : two matrices are concurrently held in memory. c : mcl cell size (as shown by -z). <int>: graph cardinality (number of nodes). k : MAX(s, r). s : select number (-S, -scheme options). r : recover number (-R, -scheme options).

This estimate will usually be too pessimistic. It does assume though that the average node degree of the input graph does not exceed k. The -how-much-ram option takes other command-line arguments into account (such as -S and -R), and it expresses the amount of RAM in megabyte units.

 
-h (show help)

Shows a selection of the most important mcl options.

 
--help (show help)

Gives a one-line description for all options.

 
-z (show settings)

Show current settings for tunable parameters. --show-settings is a synonym.

PRUNING OPTIONS

-p <num> (cutoff)
-P <int> (1/cutoff)
-S <int> (selection number)
-R <int> (recover number)
-pct <pct> (recover percentage)
After computing a new (column stochastic) matrix vector during expansion (which is matrix multiplication c.q. squaring), the vector is successively exposed to different pruning strategies. The intent of pruning is that many small entries are removed while retaining much of the stochastic mass of the original vector. After pruning, vectors are rescaled to be stochastic again. MCL iterands are theoretically known to be sparse in a weighted sense, and this manoever effectively perturbs the MCL process a little in order to obtain matrices that are genuinely sparse, thus keeping the computation tractable. An example of monitoring pruning can be found in the discussion of -v pruning at the end of this section.

mcl proceeds as follows. First, entries that are smaller than cutoff are removed, resulting in a vector with at most 1/cutoff entries. The cutoff can be supplied either by -p, or as the inverse value by -P. The latter is more intuitive, if your intuition is like mine (P stands for precision or pruning). The cutoff just described is rigid; it is the same for all vectors. The --adapt option causes the computation of a cutoff that depends on a vector's homogeneity properties, and this option may or may not speed up mcl.

Second, if the remaining stochastic mass (i.e. the sum of all remaining entries) is less than <pct>/100 and the number of remaining entries is less than <r> (as specified by the -R flag), mcl will try to regain ground by recovering the largest discarded entries. The total number of entries is not allowed to grow larger than <r>. If recovery was not necessary, mcl tries to prune the vector further down to at most s entries (if applicable), as specified by the -S flag. If this results in a vector that satisfies the recovery condition then recovery is attempted, exactly as described above. The latter will not occur of course if <r> <= <s>.

The default setting is something like -P 4000 -S 500 -R 600. Check the -z flag to be sure. There is a set of precomposed settings, which can be triggered with the -scheme k option. k=4 is the default scheme; higher values for k result in costlier and more accurate computations (vice versa for lower, cheaper, and less accurate). The schemes are listed using the --show-schemes option. It is advisable to use the -scheme option only in interactive mode, and to use the explicit expressions when doing batch processing. The reason is that there is no guarantee whatsoever that the schemes will not change between different releases. This is because the scheme options should reflect good general purpose settings, and it may become appararent that other schemes are better.

Note that 'less accurate' or 'more accurate' computations may still generate the same output clusterings. Use clm dist to compare output clusterings for different resource parameters. Refer to clm dist for a discussion of this issue.

 
-warn-pct <int> (prune warn percentage)
-warn-factor <int> (prune warn factor)
The two options -warn-pct and -warn-factor relate to warnings that may be triggered once the initial pruning of a vector is completed. The idea is to issue warnings if initial pruning almost completely destroys a computed vector, as this may be a sign that the pruning parameters should be changed. It depends on the mass remaining after initial pruning whether a warning will be issued. If that mass is less than warn-pct or if the number of remaining entries is smaller by a factor warn-factor than both the number of entries originally computed and the recovery number, in that case, mcl will issue a warning.

-warn-pct takes an integer between 0 and 100 as parameter, -warn-factor takes a real positive number. They default to something like 30 and 50.0. If you want to see less warnings, decrease warn-pct and increase warn-factor. Set warn-factor to zero if you want no warnings.

 
-v pruning
Pruning verbosity mode causes mcl to emit several statistics related to the pruning process, each of which is described below. Use -v explain to get explanatory headers in the output as well (or simply use -v all).

IMPLEMENTATION OPTIONS

-sparse <int> (sparse matrix multiplication threshold)

This value (by default set to 10) determines when mcl switches to sparse matrix/vector multiplication. For a given column stochastic vector (corresponding with all the neighbours of a given node v according to the current mcl iterand) the sum S of neighbour counts of all neighbours of v is computed, counting duplicates. This is exactly the number of matrix entries involved in the computation of the new column vector for the matrix product. If S times <int> does not exceed the number of nodes in the graph (equal to both column and row dimension of the matrices used) then a sparse implementation is used. Otherwise an optimized regular implementation is used. Intuitively, this option can be thought of as the estimated overhead per matrix floating point operation incurred by the sparse implementation compared with the regular implementation. MCL uses this estimated overhead to determine which implementation is likely to be quicker. Testing has shown this strategy works very well for graphs of a wide range of sizes, including graphs with up to 3 million nodes and 500 million edges.

NOTE
The effectiveness of this option is influenced by hardware-specific properties such as the CPU L2 cache size. The default value should work reasonably well across a wide variety of scenarios, but it may be possible to squeeze faster run times out of mcl by tuning this parameter to the graphs that are specific for your application domain.

EXAMPLES

The following is an example of label input

---8<------8<------8<------8<------8<--- cat hat 0.2 hat bat 0.16 bat cat 1.0 bat bit 0.125 bit fit 0.25 fit hit 0.5 hit bit 0.16 --->8------>8------>8------>8------>8---

It can be clustered like this:

mcl cathat --abc -o out.cathat

The file out.cathat should now like like this

---8<------8<------8<------8<------8<--- cat hat bat bit fit hit --->8------>8------>8------>8------>8---

A few things to note. First, MCL will symmetrize any arrow it finds. If it sees bat cat 1.0 it will act as if it also saw cat bat 1.0. You can explicitly specify cat bat 1.0, mcl will in the first parse stage simply end up with duplicate entries. Second, MCL deduplicates repeated edges by taking the one with the maximum value. So,

---8<------8<------8<------8<------8<--- cat hat 0.2 hat cat 0.16 hat cat 0.8 --->8------>8------>8------>8------>8---

Will result in two arrows cat-hat and hat-cat both with value 0.8.

APPLICABILITY

mcl will work very well for graphs in which the diameter of the natural clusters is not too large. The presence of many edges between different clusters is not problematic; as long as there is cluster structure, mcl will find it. It is less likely to work well for graphs with clusters (inducing subgraphs) of large diameter, e.g. grid-like graphs derived from Euclidean data. So mcl in its canonical form is certainly not fit for boundary detection or image segmentation. I experimented with a modified mcl and boundary detection in the thesis pointed to below (see REFERENCES). This was fun and not entirely unsuccesful, but not something to be pursued further.

mcl likes undirected input graphs best, and it really dislikes graphs with node pairs (i,j) for which an arc going from i to j is present and the counter-arc from j to i is absent. Try to make your input graph undirected. Furthermore, mcl interprets edge weights in graphs as similarities. If you are used to working with dissimilarities, you will have to convert those to similarities using some conversion formula. The most important thing is that you feel confident that the similarities are reasonable, i.e. if X is similar to Y with weight 2, and X is similar to Z with weight 200, then this should mean that the similarity of Y (to X) is neglectible compared with the similarity of Z (to X).

mcl is probably not suited for clustering tree graphs. This is because mcl works best if there are multiple paths between different nodes in the natural clusters, but in tree graphs there is only one path between any pair of nodes. Trees are too sparse a structure for mcl to work on.

mcl may well be suited for clustering lattices. It will depend on the density characteristics of the lattice, and the conditions for success are the same as those for clustering graphs in general: The diameter of the natural clusters should not be too large. NOTE when clustering a lattice, you have to cluster the underlying undirected graph, and not the directed graph that represents the lattice itself. The reason is that one has to allow mcl (or any other cluster algorithm) to 'look back in time', so to speak. Clustering and directionality bite each other (long discussion omitted).

mcl has a worst-case time complexity O(N*k^2), where N is the number of nodes in the graph, and k is the maximum number of neighbours tracked during computations. k depends on the -P and -S options. If the -S option is used (which is the default setting) then k equals the value corresponding with this option. Typical values for k are in the range 500..1000. The average case is much better than the worst case though, as cluster structure itself has the effect of helping mcl's pruning schemes, certainly if the diameter of natural clusters is not large.

FILES

There are currently no resource nor configuration files. The mcl matrix format is described in the mcxio section.

ENVIRONMENT

MCLXIODIGITS

When writing matrices in interchange format, mcl will use this variable (if present) as the precision (number of digits) for printing the fractional part of values.

 
MCLXIOVERBOSITY

MCL and its sibling applications will usually report about matrix input/output from/to disk. The verbosity level can be regulated via MCLXIOVERBOSITY. These are the levels it can currently be set to.

1
Silent but applications may alter this.
2
Silent and applications can not alter this.
4
Verbose but applications may alter this.
8
Verbose and applications can not alter this (default).
 
MCLXIOFORMAT

MCL and its sibling applications will by default output matrices in interchange format rather than binary format (cf. mcxio). The desired format can be controlled via the variable MCLXIOFORMAT. These are the levels it can currently be set to.

1
Interchange format but applications may alter this.
2
Interchange format and applications can not alter this (default).
4
Binary format but applications may alter this.
8
Binary format and applications can not alter this.
 
MCLXICFLAGS

If matrices are output in interchange format, by default empty vectors will not be listed. Equivalently (during input time), vectors for which no listing is present are understood to be empty - note that the presence of a vector is established using the domain information found in the header part. It is possible to enforce listing of empty vectors by setting bit '1' in the variable MCLXICFLAGS.

 
MCLXIOUNCHECKED

MCL and its sibling applications will always check a matrix for consistency while it is being read. If this variable is set, the consistency check is omitted. For large graphs the speed up can be considerable. However, if the input graph is not conforming it will likely crash the application that is using it.

DIAGNOSTICS

If mcl issues a diagnostic error, it will most likely be because the input matrix could not be parsed succesfully. mcl tries to be helpful in describing the kind of parse error. The mcl matrix format is described in the mcxio section.

BUGS

No known bugs at this time.

AUTHOR

Stijn van Dongen.

HISTORY/CREDITS

The MCL algorithm was conceived in spring 1996 by the present author. The first implementation of the MCL algorithm followed that spring and summer. It was written in Perl and proved the viability of the algorithm. The implementation described here began its life in autumn 1997. The first versions of the vital matrix library were designed jointly by Stijn van Dongen and Annius Groenink in the period Oktober 1997 - May 1999. The efficient matrix-vector multiplication routine was written by Annius. This routine is without significant changes still one of the cornerstones of this MCL implementation.

Since May 1999 all MCL libraries have seen much development and redesign by the present author. Matrix-matrix multiplication has been rewritten several times to take full advantage of the sparseness properties of the stochastic matrices brought forth by the MCL algorithm. This mostly concerns the issue of pruning — removal of small elements in a stochastic column in order to keep matrices sparse.

Very instructive was that around April 2001 Rob Koopman pointed out that selecting the k largest elements out of a collection of n is best done using a min-heap. This was the key to the second major rewrite (now counting three) of the MCL pruning schemes, resulting in much faster code, generally producing a more accurate computation of the MCL process.

In May 2001 Anton Enright initiated the parallellization of the mcl code and threaded inflation. From this example, Stijn threaded expansion. This was great, as the MCL data structures and operands (normal matrix multiplication and Hadamard multiplication) just beg for parallellization.

Onwards. The January 2003 03-010 release introduced support for sparsely enumerated (i.e. indices need not be sequential) graphs and matrices, the result of a major overhaul of the matrix library and most higher layers. Conceptually, the library now sees matrices as infinite quadrants of which only finite subsections happen to have nonzero entries.

The June 2003 03-154 release introduced unix-type pipelines for clustering, including the BLAST parser mcxdeblast and the mclblastline script. The April 2004 04-105 release revived binary format, which has been a first class citizen every since.

With the March 2005 05-090 release mcxsubs finally acquired a sane specification syntax. The November 2005 05-314 release brought the ability to stream label input directly into mcl. The subsequent release introduced a transformation language shared by various mcl siblings that allows arbitrary progressions of transformations to be applied to either stream values or matrix values.

Joost van Baal set up the mcl CVS tree and packaged mcl for Debian GNU/Linux. He completely autotooled the sources, so much so that at first I found it hard to find them back amidst bootstrap, aclocal.m4, depcomp, and other beauties.

Jan van der Steen shared his elegant mempool code. Philip Lijnzaad gave useful comments. Philip, Shawn Hoon, Abel Ureta-Vidal, and Martin Mokrejs sent helpful bug reports.

Abel Ureta-Vidal and Dinakarpandian Deendayal commented on and contributed to mcxdeblast and mcxassemble.

Tim Hughes contributed several good bug reports for mcxassemble, mcxdeblast and zoem (a workhorse for clm format).

SEE ALSO

mclfaq - Frequently Asked Questions.

mcxio - a description of the mcl matrix format.

There are many more utilities. Consult mclfamily for an overview of and links to all the documentation and the utilities in the mcl family.

minimcl is a 200-line perl implementation of mcl. It is shipped in the mcl distribution and can be found online at http://micans.org/mcl.

mcl's home at http://micans.org/mcl/.

REFERENCES

[1] Stijn van Dongen, Graph Clustering by Flow Simulation. PhD thesis, University of Utrecht, May 2000.
http://www.library.uu.nl/digiarchief/dip/diss/1895620/inhoud.htm

[2] Stijn van Dongen, Graph Clustering Via a Discrete Uncoupling Process, SIAM Journal on Matrix Analysis and Applications, 30(1):121-141, 2008. http://link.aip.org/link/?SJMAEL/30/121/1

[3] Stijn van Dongen. A cluster algorithm for graphs. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.
http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z

[4] Stijn van Dongen. A stochastic uncoupling process for graphs. Technical Report INS-R0011, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.
http://www.cwi.nl/ftp/CWIreports/INS/INS-R0011.ps.Z

[5] Stijn van Dongen. Performance criteria for graph clustering and Markov cluster experiments. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.
http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z

[6] Enright A.J., Van Dongen S., Ouzounis C.A. An efficient algorithm for large-scale detection of protein families, Nucleic Acids Research 30(7):1575-1584 (2002).

NOTES

This page was generated from ZOEM manual macros, http://micans.org/zoem. Both html and roff pages can be created from the same source without having to bother with all the usual conversion problems, while keeping some level of sophistication in the typesetting. This is the PostScript derived from the zoem troff output.

mcl-12-135/doc/mcx.azm0000644000402500021140000000642111667703211011345 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcx} {html_title}{The mcx manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcx}{perform various computations on graphs and matrices} \sec{synopsis}{SYNOPSIS} \verbatim{\:/ \mcx [mode-options] [mode-files]} \sec{description}{DESCRIPTION} \par{ \mcx implements a variety of computations on graphs and matrices. The first argument to \mcx should be a \it{mode}, which is a string establishing the type of computation to invoke. Each mode \it{mode} is described in the mcx\it{mode} manual page. The currently available modes are \bf{convert}, \bf{diameter}, \bf{clcf}, \bf{q} and \bf{ctty}. The \bf{convert} mode is thus described in the \sibref{mcxconvert} manual page. } \par{ Invoking \mcx without arguments causes it to print out a list of available modes with a short description of the type of command line expected by that mode. } \par{ Invoking \mcx with just a mode will print out a longer listing of options available for that particular mode. Modes that are able to function normally without arguments can be invoked by adding the \genarg{--nop} argument. } \par{ Several options are shared between all \mcx modes. Note that these options are specified after the \bf{mode}. See \secref{options}. } \par{ The \genopt{--version} causes \mcx to print out version and license information. } \par{ Issuing \it{mcx help mode} will cause \mcx to look for a manual page describing \it{mode} and display it if found. This requires that the MANPATH environment variable contains the directory in which the MCL-edge manual pages were installed. This will usually be \v{PREFIX/share}, where \v{PREFIX} is the path with which the software was configured. } \sec{options}{OPTIONS} \par{ These are options that pertain to all modes. They should be specified \it{after} the mode argument. } \'begin{itemize}{\mcx_itemopts} \items{ {\defopt{-h}{synopsis}} {\defopt{--help}{synopsis}} } \car{ List available options. } \item{\defopt{--nop}{no-op}} \car{ Not an option. This option has no effect then to increment the argument count. This can be useful for \mcx modes which are able to function without any options. Such a mode typically reads from STDIN, writes to STDOUT, and uses default settings. However, simply specifying a mode without options leads \mcx to output a list of available options for that mode. This can be prevented by using the \genopt{--nop} option. } \item{\defopt{-set}{key=val}} \car{ Sets the key\~\bf{key} to value\~\bf{val} in the environment. Some modes allow adjustment of settings in this manner. } \item{\defopt{-progress}{}{progress interval size}} \car{ Defines the interval that defines the progress frequency.} \item{\defopt{--debug}{turn on debugging}} \car{ Turn debugging on.} \item{\defopt{--version}{show version}} \car{ Show version.} \'end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/index.in.azm0000644000402500021140000001061611322637753012300 00000000000000 \: what's with the funny name index.in.azm ? \: this document is a regular manual page in the roff edition; \: the html edition is not however, as it uses tables (coded ad hoc). \: as a result the macro code below looks messy - more so \: becaues the html edition is split into two incarnations, \: a 'distribution index' and an 'installed index'. \: the incarnations correspond with the keys dist#0 and install#0. \import{mcx.zmm} \if{\defined{key}{dist}}{ \set{modal}{Install with} \set{subtitle}{Distribution index \"mcx::stamp", \"mcx::tag"} }{} \if{\defined{key}{install}}{ \set{modal}{Documentation only available if installed with} \set{subtitle}{Installation index \"mcx::stamp", \"mcx::tag"} }{} \${html}{ \set{mkentry#3}{\@{
}} \set{mkheader#3}{\@{}} \set{utsection#1}{\@{

}\1\@{

\1 - \3 html ps
} \bf{\1} - \2 \bf{\3} \@{
}} \set{modsection#1}{\@{

}\1\@{

}} \set{utend}{\@{
}} \set{modend}{\@{}} \@{\w} \@{ MCL manuals } \@{

MCL user manuals

\&{\subtitle}


} } \${roff}{ \begin{pud::man}{ {name}{mclindex} {author}{Stijn van Dongen} {section}{7} \man_share } \sec{name}{NAME} \NAME{mclindex}{a list of the utilities and modules present in the MCL distribution.} \par For more information, consult \mysib{mclfamily}. \set{utsection#1}{\par\sec{}{\1} \par \begin{itemize}{{compact}{1}{contiguous}{1}{w1}{14}{w2}{1}} } \set{modsection#1}{\par\sec{}{\1} \~\par \begin{itemize}{{compact}{1}{contiguous}{1}{w1}{18}{w2}{1}} } \set{mkentry#3}{\item{\bf{\1(\2)}} \3} \set{mkheader#3}{\bf{\1} - \2 \bf{\3}\|} \set{utend}{\end{itemize}} \set{modend}{\end{itemize}} } \utsection{Generic stuff} \mkentry{mcl}{1}{the mcl manual page} \mkentry{mclfaq}{7}{the mcl FAQ} \mkentry{mcxio}{5}{the mcl matrix format specification} \mkentry{mclpipeline}{1}{generic pipeline (parsing/matrix creation/clustering/display)} \mkentry{mcx}{1}{interface to basic matrix operations} \mkentry{mcxassemble}{1}{prepare input matrix from cooccurrence scores} \mkentry{mcxdump}{1}{dump matrices, optionally map indices to labels} \mkentry{mcxarray}{1}{transform array data to MCL matrices} \mkentry{mcxconvert}{1}{convert between ascii/binary storage types} \utend \utsection{Dealing with clustering results} \mkentry{clmformat}{1}{display clusterings in browsable format} \mkentry{clmdist}{1}{compute distances between clusterings} \mkentry{clminfo}{1}{performance measures for clusterings} \mkentry{clmmeet}{1}{compute intersection of clusterings} \mkentry{clmmate}{1}{compute best matches between two clusterings} \mkentry{clmimac}{1}{Interpret Matrices (c.q. MCL iterands) As Clusterings} \mkentry{clmresidue}{1}{extend subgraph clusterings onto encompassing graph} \mkentry{clmorder}{1}{reorder indices to represent blocks from different clusterings} \mkentry{clmclose}{1}{fetch connected components from graphs or subgraphs} \utend \utsection{Dealing with matrices} \mkentry{mcxio}{5}{the mcl matrix format specification} \mkentry{mcx}{1}{interface to basic matrix operations} \mkentry{mcxsubs}{1}{extract submatrices by specifiying sets of nodes and clusters} \mkentry{mcxmap}{1}{remap matrix indices / relabel graph nodes} \mkentry{mcxassemble}{1}{prepare input matrix from cooccurrence scores} \utend \modsection{Application specific parsers and wrappers} \mkheader{BLAST package}{\modal}{--enable-blast} \${roff}{\v{__________________}\|} \mkentry{mclblastline}{1}{pipeline for clustering from blast files} \mkentry{mcxdeblast}{1}{prepare input from blast files} \modend \${html}{\@{ }} \${roff}{\end{pud::man}} mcl-12-135/doc/minimcl0000755000402500021140000001457410400433455011425 00000000000000#!/usr/local/bin/perl -w # (C) Copyright 2006 Stijn van Dongen # # This file is part of MCL. You can redistribute and/or modify MCL under the # terms of the GNU General Public License; either version 2 of the License or # (at your option) any later version. You should have received a copy of the # GPL along with MCL, in the file COPYING. sub explain { print <] [--verbose] LABEL-INPUT This means --I= is optional (with 2.0 the default) and so is --verbose. LABEL-INPUT should be a file name or stream (STDIN) where each line is of the form LABEL1 LABEL2 NUMBER or LABEL1 LABEL2 EOH } use strict; use Getopt::Long; $::verbose = 0; my $I = 2.0; my $help = 0; if (!@ARGV) { print STDERR "issue 'minimcl --help' for help\n"; print STDERR "expecting STDIN now\n"; } if (! GetOptions ( "verbose" => \$::verbose , "I=f" => \$I , "help" => \$help ) ) { print STDERR "option processing failed\n"; exit(1); } &explain && exit(0) if $help; my $mx = {}; while (<>) { next if /^\s*#/; if (/(\S+)\s+(\S+)\s+(\S+)/) { my ($x, $y, $val) = ($1, $2, $3); $val = 1.0 if $val !~ /^[0-9]/; $mx->{$x}{$y} = $val+0; $mx->{$y}{$x} = $val+0; } elsif (/(\S+)\s+(\S+)/) { $mx->{$1}{$2} = 1.0; $mx->{$2}{$1} = 1.0; } } matrix_add_loops($mx); matrix_make_stochastic($mx); matrix_dump($mx, 3, "start") if $::verbose; my ($cl, $limit) = mcl($mx, $I); matrix_dump($limit, 1, "limit") if $::verbose; matrix_dump($cl, 0, "clustering"); sub mcl { my ($mx, $I) = @_; my $chaos = 1; my $ite = 1; while ($chaos > 0.001) { my $sq = matrix_square($mx); my $progress = sprintf "chaos %.5f ite %d", $chaos, $ite; matrix_dump($sq, 3, "X $progress") if $::verbose; $chaos = matrix_inflate($sq, $I); matrix_dump($sq, 3, sprintf "I $progress") if $::verbose; print STDERR "$progress\n" if !$::verbose; $mx = $sq; $ite++; } my $cl = matrix_interpret($mx); return ($cl, $mx); } # dangersign: # can this yield a < b < c < a ? sub cmpany { local $^W = 0; $a <=> $b || $a cmp $b } sub matrix_dump { my ($mx, $modes, $msg) = @_; print "($msg\n"; for my $n (sort cmpany keys %$mx) { my @nb = $modes & 2 ? map { sprintf "%s:%.3f", $_, $mx->{$n}{$_}; } sort cmpany keys %{$mx->{$n}} : map { sprintf "%s", $_; } sort cmpany keys %{$mx->{$n}}; local $" = "\t"; if ($modes & 1) { printf "%-20s%s\n", $n, "@nb"; } else { print "@nb\n"; } } print ")\n"; } sub matrix_square { my ($mx) = @_; my $sq = {}; my @nodes = keys %$mx; for my $n (@nodes) { $sq->{$n} = matrix_multiply_vector($mx, $mx->{$n}); } return $sq; } sub matrix_multiply_vector { my ($mx, $v) = @_; my $w = {}; for my $e (keys %$v) { my $val = $v->{$e}; for my $f (keys %{$mx->{$e}}) { $w->{$f} += $val * $mx->{$e}{$f}; } } return $w; } sub matrix_make_stochastic { my ($mx) = @_; matrix_inflate($mx, 1); # return value chaos is meaningless for # non stochastic input. } sub matrix_add_loops { my ($mx) = @_; for my $n (keys %$mx) { my $max = vector_max($mx->{$n}); $mx->{$n}{$n} = $max ? $max : 1; } } sub vector_max { my ($v) = (@_); my $max = 0; for my $n (keys %$v) { $max = $v->{$n} if $v->{$n} > $max; } return $max; } sub vector_sum { my ($v, $p) = (@_); my $sum = 0; for my $n (keys %$v) { $sum += $v->{$n} ** $p; } return $sum; } sub matrix_inflate { # prunes small elements as well. my ($mx, $I) = @_; my @nodes = keys %$mx; my $chaos = 0; for my $n (@nodes) { my $sum = 0; my $sumsq = 0; my $max = 0; for my $nb (keys %{$mx->{$n}}) { if ($mx->{$n}{$nb} < 0.00001) { delete($mx->{$n}{$nb}); next; } $mx->{$n}{$nb} **= $I; $sum += $mx->{$n}{$nb}; } if ($sum) { for my $nb (keys %{$mx->{$n}}) { $mx->{$n}{$nb} /= $sum; $sumsq += $mx->{$n}{$nb} ** 2; # sum x_i^2 over stochastic vector x $max = $mx->{$n}{$nb} if $max < $mx->{$n}{$nb}; } } $chaos = $max - $sumsq if $max - $sumsq > $chaos; } return $chaos; # only meaningful if input is stochastic } # assumes but does not check doubly idempotent matrix. # can handle attractor systems of size < 10. sub matrix_interpret { # recognizes/preserves overlap. my ($limit) = @_; my $clusters= {}; # hash of arrayrefs. my $attrid = {}; my $clid = 0; for my $n (keys %$limit) { # crude removal of small elements. for my $nb (keys %{$limit->{$n}}) { delete $limit->{$n}{$nb} if $limit->{$n}{$nb} < 0.1; } } my $attr = { map { ($_, 1) } grep { $limit->{$_}{$_} } keys %$limit }; # _ contract 'connected attractors', assign cluster id. for my $a (keys %$attr) { next if defined($attrid->{$a}); my @aa = ($a); while (@aa) { my @bb = (); for my $aa (@aa) { $attrid->{$aa} = $clid; push @bb, grep { defined($attr->{$_}) } keys %{$limit->{$aa}}; } @aa = grep { !defined($attrid->{$_}) } @bb; } $clid++; } for my $n (keys %$limit) { if (!defined($attr->{$n})) { # look at attractors for my $a (grep { defined($attr->{$_}) } keys %{$limit->{$n}}) { $clusters->{$attrid->{$a}}{$n}++; } } else { $clusters->{$attrid->{$n}}{$n}++; } } return $clusters; } mcl-12-135/doc/mcxmap.azm0000644000402500021140000001173411322637753012053 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxmap} {html_title}{The mcxmap manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcxmap}{permute or remap the indices of graphs and matrices.} \sec{synopsis}{SYNOPSIS} \par{ \mcxmap \synreqopt{-imx}{fname}{input}} \synoptopt{-o}{fname}{output} \synoptopt{-make-map}{output map file name} \synoptopt{-make-mapc}{output map file name} \synoptopt{-make-mapr}{output map file name} \synoptopt{-cmul}{a}{coefficient} \synoptopt{-cshift}{b}{translate} \synoptopt{-rmul}{c}{coefficient} \synoptopt{-rshift}{d}{translate} \synoptopt{-mul}{e}{coefficient} \synoptopt{-shift}{f}{translate} \synoptopt{-map}{fname}{row/col map file} \synoptopt{-rmap}{fname}{row map file} \synoptopt{-cmap}{fname}{column map file} \synoptopt{-mapi}{fname}{row/col map file (use inverse)} \synoptopt{-rmapi}{fname}{row map file (use inverse)} \synoptopt{-cmapi}{fname}{column map file (use inverse)} \synoptopt{-tab}{fname}{read (and map) tab file} \sec{description}{DESCRIPTION} \par{ This utility relabels graphs or matrices. Its main use is in applying a \it{map file} to a given matrix or graph. A map file contains a so called \it{map matrix} in mcl format that has some special properties (given further below). The functionality of mcxmap can also be provided by \mcx, as a mapped matrix (i.e. the result of applying a map matrix to another matrix) is simply the usual matrix product of a matrix and a map matrix. However, \mcx will construct a new matrix and leave the original matrix to be mapped alone. When dealing with huge matrices, considerable gains in efficiency memory-wise and time-wise can be achieved by doing the mapping in-place. This is what mcxmap does. In the future, its functionality may be embedded in \mcx with new mcx operators.} \par{ The special properties of a map matrix are} \begin{itemize}{ {mark}{\*{itembullet}} {flow}{compact} {align}{right} {interitem}{0} } \item \car{ The column domain and row domain are of the same cardinality.} \item \car{ Each column has exactly one entry.} \item \car{ Each row domain index occurs in exactly one column.} \end{itemize} \par{ These properties imply that the matrix can be used as a map from the column domain onto the row domain. An example map matrix is found in the \secref{examples} Section.} \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-o}{fname}{output file}} \car{ Output file.} \item{\defopt{-imx}{fname}{input file}} \car{ Input file.} \items{ {\defopt{-map}{fname}{row/col map file)}} {\defopt{-rmap}{fname}{row map file}} {\defopt{-cmap}{fname}{column map file}} {\defopt{-mapi}{fname}{row/col map file (use inverse)}} {\defopt{-rmapi}{fname}{row map fil (use inverse)}} {\defopt{-cmapi}{fname}{column map fil (use inverse)}} } \car{ Different ways to specify map files.} \items{ {\defopt{-make-map}{output map file name}} {\defopt{-make-mapc}{output map file name}} {\defopt{-make-mapr}{output map file name}} } \car{ Generate a map that maps the specified domain onto the appropriate canonical domain and write the map matrix to file.} \items{ {\defopt{-cmul}{a}{coefficient}} {\defopt{-cshift}{b}{translate}} } \car{ These options have affect if neither a column map file nor column canonification is specified. If any of the first two options is used, column indices\~\v{i} are mapped to\~\v{a*i+b}.} \items{ {\defopt{-rmul}{c}{coefficient}} {\defopt{-rshift}{d}{translate}} } \car{ These options have affect if neither a row map file nor row canonification is specified. If any of the first two options is used, indices\~\v{i} are mapped to\~\v{c*i+d}.} \items{ {\defopt{-mul}{e}{coefficient}} {\defopt{-shift}{f}{translate}} } \car{ If a map file is specified for a given domain, neither a map file nor canonification is specified. If any of the first two options is used, the indices\~\v{i} will be mapped to\~\v{e*i+f}.} \item{\defopt{-tab}{fname}{read (and map) tab file}} \car{ This option requires the \genopt{-map} option. \mcxmap will output the mapped tab definition. } \end{itemize} \sec{examples}{EXAMPLES} \par{ The matrix below has two canonical domains which are identical. It denotes a map of the canonical domain onto itself, in which node 0 is relabeled to 8, node 1 is relabeled to 5, et cetera. } \verbatix{\ (mclheader mcltype matrix dimensions 12x12 ) (mclmatrix begin 0 8 $ 1 5 $ 2 3 $ 3 2 $ 4 4 $ 5 6 $ 6 7 $ 7 9 $ 8 1 $ 9 10 $ 10 11 $ 11 0 $ ) } \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mcxio}, \mysib{mcx}, \mysib{mcxsubs}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/clmorder.html0000644000402500021140000001500511754271042012537 00000000000000 The clm order manual

14 May 2012    clm order 12-135

NAME

clm order — reorder clusterings conformal to inclusion structure

clmorder is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode order. The options -h, --apropos, --version, -set, --nop are accessible in all clm modes. They are described in the clm manual page.

SYNOPSIS

clm order [-prefix <string> (file multiplex prefix)] [-o <fname> (concatenated output in single file)] <cluster|stack>+

DESCRIPTION

Given a set of input clusterings clm order first transform it into a stack of strictly nesting clusterings. It does this by splitting clusters where necessary. It then reorders the coarsest (i.e. level-one) clustering, from large to small clusters. After that it reorders the second coarsest clustering conformally such that the first batch among its reordered clusters covers the level-one largest cluster, the second batch covers the level-one second largest cluster, and so on. Within these constraints, each batch of second-level clusters (corresponding to a single first-level cluster) is again ordered from larger to smaller clusters. This process is applied recursively throughout the entire stack of input clusters.

The input can be specified in multiple files, and a single file may contain multiple clusterings. The output is by default written as a concatenation of matrix files, the so-called stack format. Use the -o option to specify the output file. The stacked format can be converted to Newick format using mcxdump. The output can be written to multiple files, one for each projected clustering, by using the -prefix option. By example, -prefix P leads to output in files named P1, P2, ..PN, where N is the number of clusters in the input, P1 is the most fine-grained ordered clustering, and PN is the coarsest clustering.

OPTIONS

-prefix (<string>)
-o (<fname>)

As decribed above.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/clmclose.ps0000644000402500021140000003504411754271041012213 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:13 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE /Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d20636c6f7365283129>20 48 Q <5553455220434f4d4d414e4453>139.565 E<636c6d20636c6f7365283129>142.065 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<636c6d20636c 6f736520ad20466574636820636f6e6e656374656420636f6d706f6e656e74732066726f 6d20677261706873206f7220737562677261706873>100 96 Q .187 <636c6d636c6f7365206973206e6f7420696e2061637475616c2066>100 120 R .187< 61637420612070726f6772616d2e2054686973206d616e75616c207061676520646f6375 6d656e7473207468652062656861>-.1 F .186 <76696f757220616e64206f7074696f6e73>-.2 F 1.418 <6f662074686520636c6d2070726f6772616d207768656e20696e>100 132 R -.2 <766f>-.4 G -.1<6b65>.2 G 3.918<6469>.1 G 3.919<6e6d>-3.918 G<6f6465> -3.919 E/F2 10/Times-Italic@0 SF<636c6f7365>3.919 E F0 3.919<2e54>C 1.419<6865206f7074696f6e73>-3.919 F/F3 10/Times-Bold@0 SF<2d68>3.919 E F0<2c>A F3<2d2d617072>3.919 E<6f706f73>-.18 E F0<2c>A F3<2d2d76>3.919 E <657273696f6e>-.1 E F0<2c>A F3<2d736574>3.919 E F0<2c>A F3<2d2d6e6f70> 100 144 Q F0<6172652061636365737369626c6520696e20616c6c>2.5 E F3<636c6d> 2.5 E F0<6d6f6465732e20546865>2.5 E 2.5<7961>-.15 G <72652064657363726962656420696e20746865>-2.5 E F3<636c6d>2.5 E F0 <6d616e75616c20706167652e>2.5 E F1<53594e4f50534953>20 160.8 Q F3 <636c6d20636c6f7365>100 172.8 Q F0 <2d696d78203c666e616d653e205b6f7074696f6e735d>2.5 E F3 .14 <636c6d20636c6f7365202d696d78>100 196.8 R F0 .14<666e616d652028>2.64 F F2 .14<73706563696679206d617472697820696e707574>B F0<29>A F3<2d616263> 2.64 E F0 .14<666e616d652028>2.64 F F2 .14 <73706563696679206c6162656c20696e707574>B F0<29>A F3<2d646f6d>2.64 E F0 .14<666e616d652028>2.64 F F2<696e707574>A 2.317 <646f6d61696e2f636c7573746572208c6c65>100 208.8 R F0<29>A F3<5b2d6f> 4.817 E F0 2.317<666e616d652028>4.817 F F2 2.317<6f7574707574208c6c65>B F0<29>A F3 4.817<5d5b>C<2d2d69732d756e646972>-4.817 E<6563746564>-.18 E F0<28>4.818 E F2 2.318<747275737420696e707574206772>B 2.318 <61706820746f20626520756e64692d>-.15 F -.37<7265>100 220.8 S<63746564> .37 E F0<29>A F3 6.128<5d5b>C<2d2d77726974652d636f756e74>-6.128 E F0<28> 6.128 E F2 3.628<6f757470757420636f6d706f6e656e7420636f756e74>B F0<29>A F3 6.127<5d5b>C<2d2d77726974652d73697a6573>-6.127 E F0<28>6.127 E F2 3.627<6f757470757420636f6d706f6e656e742073697a6573>B<2864656661756c7429> 100 232.8 Q F0<29>A F3 7.347<5d5b>C<2d2d77726974652d6363>-7.347 E F0<28> 7.347 E F2 4.847 <6f757470757420636f6d706f6e656e747320617320636c7573746572696e67>B F0<29> A F3 7.348<5d5b>C<2d2d77726974652d626c6f636b>-7.348 E F0<28>7.348 E F2 4.848<6f7574707574206772>B<617068>-.15 E -.37<7265>100 244.8 S 1.488 <737472696374656420746f202d646f6d206172>.37 F<67756d656e74>-.37 E F0<29> A F3 3.988<5d5b>C<2d2d77726974652d626c6f636b63>-3.988 E F0<28>3.988 E F2 1.488<6f7574707574206772>B 1.488 <61706820636f6d706c656d656e74206f66202d646f6d206172>-.15 F<67756d656e74> -.37 E F0<29>A F3<5d>A<5b2d63632d626f756e64>100 256.8 Q F0 1.487 <6e756d2028>3.987 F F2 1.487<73656c65637420636f6d706f6e656e747320776974 682073697a65206174206c65617374206e756d>B F0<29>A F3 3.987<5d5b>C<2d7466> -3.987 E F0 1.487<737065632028>3.987 F F2 1.488 <6170706c792074662d7370656320746f20696e707574>B<6d6174726978>100 268.8 Q F0<29>A F3 3.909<5d5b>C<2d68>-3.909 E F0<28>3.909 E F2 1.408 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F3 3.908 <5d5b>C<2d2d617072>-3.908 E<6f706f73>-.18 E F0<28>3.908 E F2 1.408 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F3 3.908 <5d5b>C<2d2d76>-3.908 E<657273696f6e>-.1 E F0<28>3.908 E F2 1.408 <7072696e7420766572>B<73696f6e2c>-.1 E -.2<6578>100 280.8 S<6974>.2 E F0 <29>A F3<5d>A F1<4445534352495054494f4e>20 297.6 Q F0<557365>100 309.6 Q F3 .222<636c6d20636c6f7365>2.722 F F0 .223<746f206665746368207468652063 6f6e6e656374656420636f6d706f6e656e74732066726f6d20612067726170682e204469 66>2.722 F .223 <666572656e74206f7574707574206d6f64657320617265207375702d>-.25 F .222 <706f7274656420287365652062656c6f>100 321.6 R .222 <77292e20496e206d6174726978206d6f64652028692e652e207573696e6720746865> -.25 F F3<2d696d78>2.721 E F0 .221 <6f7074696f6e2920746865206f75747075742072657475726e65642077697468>2.721 F F3<2d2d77726974652d>2.721 E<6363>100 333.6 Q F0 .904 <63616e206265207573656420696e20636f6e6a756e6374696f6e2077697468>3.403 F F3<6d637873756273>3.404 E F0 .904<746f20726574726965>3.404 F 1.204 -.15 <76652069>-.25 H<6e6469>.15 E .904 <76696475616c2073756267726170687320636f72726573706f6e64696e6720746f>-.25 F<636f6e6e656374656420636f6d706f6e656e74732e>100 345.6 Q F1 <4f5054494f4e53>20 362.4 Q F3<2d616263>100 374.4 Q F0 <3c666e616d653e2028>2.5 E F2<6c6162656c20696e707574>A F0<29>A<546865208c 6c65206e616d6520666f7220696e707574207468617420697320696e206c6162656c2066 6f726d61742e>120 386.4 Q F3<2d696d78>100 410.4 Q F0<3c666e616d653e2028> 2.5 E F2<696e707574206d6174726978>A F0<29>A<546865208c6c65206e616d652066 6f7220696e707574207468617420697320696e206d636c206e617469>120 422.4 Q .3 -.15<7665206d>-.25 H<617472697820666f726d61742e>.15 E F3<2d6f>100 446.4 Q F0<666e616d652028>2.5 E F2<6f7574707574208c6c65>A F0<29>A<537065636966 7920746865208c6c65207768657265206f75747075742069732073656e7420746f2e2054 686520646566>120 458.4 Q<61756c74206973205354444f55542e>-.1 E F3 <2d646f6d>100 482.4 Q F0<666e616d652028>2.5 E F2 <696e70757420646f6d61696e2f636c7573746572208c6c65>A F0<29>A .909<496620 74686973206f7074696f6e20697320757365642c20636c6d20636c6f73652077696c6c2c 2061732061208c72737420737465702c20666f722065616368206f662074686520646f6d 61696e7320696e208c6c65>120 494.4 R F2<666e616d65>2.5 E F0<726574726965> 120 506.4 Q 1.123 -.15<76652074>-.25 H .823<6865206173736f63696174656420 73756267726170682066726f6d2074686520696e7075742067726170682e205468657365 20617265207468656e2066757274686572206465636f6d706f736564>.15 F<696e746f 20636f6e6e656374656420636f6d706f6e656e74732c20616e64207468652070726f6772 616d2077696c6c2070726f6365737320746865736520696e20746865206e6f726d616c20 6d616e6e65722e>120 518.4 Q F3<2d2d77726974652d636f756e74>100 542.4 Q F0 <28>2.5 E F2<6f757470757420636f6d706f6e656e7420636f756e74>A F0<29>A F3 <2d2d77726974652d73697a6573>100 554.4 Q F0<28>2.5 E F2 <6f757470757420636f6d706f6e656e742073697a6573202864656661756c7429>A F0 <29>A F3<2d2d77726974652d6363>100 566.4 Q F0<28>2.5 E F2 <6f757470757420636f6d706f6e656e747320617320636c7573746572696e67>A F0<29> A F3<2d2d77726974652d626c6f636b>100 578.4 Q F0<28>2.5 E F2 <6f7574707574206772>A<6170682072>-.15 E <65737472696374656420746f202d646f6d206172>-.37 E<67756d656e74>-.37 E F0 <29>A F3<2d2d77726974652d626c6f636b63>100 590.4 Q F0<28>2.5 E F2 <6f7574707574206772>A <61706820636f6d706c656d656e74206f66202d646f6d206172>-.15 E<67756d656e74> -.37 E F0<29>A 1.252<54686520646566>120 602.4 R 1.252 <61756c742062656861>-.1 F 1.251<76696f75722069732063757272656e746c792074 6f206f7574707574207468652073697a6573206f662074686520636f6e6e656374656420 636f6d706f6e656e74732e204974206973>-.2 F .097<616c736f20706f737369626c65 20746f2073696d706c79206f757470757420746865206e756d626572206f6620636f6d70 6f6e656e74732077697468>120 614.4 R F3<2d2d77726974652d636f756e74>2.597 E F0 .098<6f7220746f20777269746520746865>2.597 F .075<636f6d706f6e656e7473 206173206120636c7573746572696e6720696e206d636c20666f726d61742077697468> 120 626.4 R F3<2d77726974652d6363>2.575 E F0 2.575<2e45>C -.15<7665> -2.575 G 2.575<6e6d>.15 G .074<6f7265206f7074696f6e732065>-2.575 F .074 <786973743a20697420697320706f732d>-.15 F .014<7369626c6520746f206f757470 757420746865207265737472696374696f6e206f662074686520696e7075742067726170 6820746f206120646f6d61696e2c206f7220746f206f75747075742074686520636f6d70 6c656d656e74206f66>120 638.4 R<74686973207265737472696374696f6e2e>120 650.4 Q F3<2d2d69732d756e646972>100 674.4 Q<6563746564>-.18 E F0<28>2.5 E F2<6f6d6974206772>A<61706820756e646972>-.15 E<65637465642063>-.37 E <686563>-.15 E<6b>-.2 E F0<29>A -.4<5769>120 686.4 S 1.422<746820746869 73206f7074696f6e20746865207472616e73666f726d6174696f6e20746f206d616b>.4 F 3.921<6573>-.1 G 1.421<75726520746861742074686520696e7075742069732075 6e6469726563746564206973206f6d69747465642e>-3.921 F .143 <546869732077696c6c20626520736c696768746c792066>120 698.4 R .143<617374 65722e205573696e672074686973206f7074696f6e207768696c652074686520696e7075 74206973206469726563746564206d6179206c65616420746f206572726f6e652d>-.1 F <6e6f757320726573756c74732e>120 710.4 Q <636c6d20636c6f73652031322d313335>20 768 Q<3134204d61792032303132> 138.455 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d20636c6f7365283129>20 48 Q <5553455220434f4d4d414e4453>139.565 E<636c6d20636c6f7365283129>142.065 E /F1 10/Times-Bold@0 SF<2d63632d626f756e64>100 84 Q F0<6e756d2028>2.5 E /F2 10/Times-Italic@0 SF<73656c65637420636f6d706f6e656e7473207769746820 73697a65206174206c65617374206e756d>A F0<29>A -.35<5472>120 96 S <616e73666f726d2074686520696e707574206d61747269782076>.35 E<616c75657320 6163636f7264696e6720746f207468652073796e7461782064657363726962656420696e> -.25 E F1<6d6378696f283529>2.5 E F0<2e>A/F3 10.95/Times-Bold@0 SF -.548 <4155>20 112.8 S<54484f52>.548 E F0<5374696a6e2076>100 124.8 Q <616e20446f6e67656e2e>-.25 E F3<53454520414c534f>20 141.6 Q F1 <6d636c66616d696c79283729>100 153.6 Q F0<666f7220616e206f>2.5 E -.15 <7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c20746865 20646f63756d656e746174696f6e20616e6420746865207574696c697469657320696e20 746865206d636c2066>-2.5 E<616d696c792e>-.1 E <636c6d20636c6f73652031322d313335>20 768 Q<3134204d61792032303132> 138.455 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clmvol.html0000644000402500021140000001426211754271042012230 00000000000000 The clm vol manual

14 May 2012    clm vol 12-135

NAME

clm vol — compute volatile nodes from a set of clusterings

clmvol is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode vol. The options -h, --apropos, --version, -set, --nop are accessible in all clm modes. They are described in the clm manual page.

SYNOPSIS

clm vol [-fraction num (nff factor)] [-o fname (output file)] <cl file>+

DESCRIPTION

clm vol computes a score for each node, which at a minimum is equal to one. The output is in the form of a matrix containing a single column. The score correlates with what is deemed to be volatile behaviour. For all pairs of clusterings the set of all intersections is computed, and these are considered in turn. An intersection is deemed to be volatile if the size of the intersection is less than half the size of the smallest of the two clusters. In that case, for each node in the intersection its volatility score is incremented by one over the size of the intersection. The size comparison can be made more stringent by increasing the -fraction <frac> option, which is by default set to 0.5. Volatility occurs if the size of the intersection is less than <frac> times the size of the smallest cluster. If the -fraction value is increased all the way up to 1.0, the implication is that an intersection is considered volatile unless one of the two clusteres considered is a subset of the other.

AUTHOR

Stijn van Dongen.

OPTIONS

-fraction num (nff factor)

See the discussion at DESCRIPTION.

 
-o fname (output file)

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mclpipeline.azm0000644000402500021140000004411111322637753013062 00000000000000\: setx{__searchpath__}{\__searchpath__\!{}{../../../zoem/mac}} \import{mcx.zmm} \begin{pud::man}{ {name}{mclpipeline} {html_title}{The mclpipeline manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \'${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mclpipeline}{a generic pipeline for generating and scrutinizing mcl clusterings.} \cpar{NOTE}{ \mcl has acquired the ability to manipulate label input directly. This enables a very lightweight mechanism of generating clusterings by teaming up mcl with a lightweight parser. You might want to use this mechanism. Example invocations using the \mcxdeblast BLAST parser are documented in the \sibref{mcl}{mcl manual}.} \sec{synopsis}{SYNOPSIS} \par{ \mclpipeline [options] \| } \par{ where is either the name of the data input file, or its base name. In the latter case the \genopt{--xi-dat} option is required. In case mclpipeline is indeed used to control all stages from the data input file onwards, usage will often be like this: } \verbatix{\ mclpipeline [prepare options] --prepare-mcl mclpipeline [cluster options 1] --start-mcl mclpipeline [cluster options 2] --start-mcl .. etc } \par{ \mclpipeline can also be used to control shorter pipelines, i.e. in case the input matrix was already created or in case pre-assembled parts of the input matrix were already created. In this case, usage will often be like this: } \verbatix{\ mclpipeline [cluster options 1] --start-mcl= mclpipeline [cluster options 2] --start-mcl= or mclpipeline [assembly options] --start-assemble= --prepare-mcl } \cpar{NOTE}{ It is possible to make mclpipeline output a large arrary of performance measures related to nodes and clusters in hyperlinked output by supplying the \genopt{--fmt-fancy} option. This can be useful if one wants to scrutinize a clustering in greater detail and navigate within the clustering. The output then includes listings of external nodes that are relevant/close to a given cluster, and vice versa, listings of external clusters that are relevant/close to a given node.} \par{ Generating this more intricate output requires the presence of the \zoem macro processor. Refer to the \secref{seealso} section and the \sibref{clmformat}{clmformat manual} for more information on zoem. By default zoem is not required, and the return result is a file where each line contains a clustering consisting of tab-separated labels.} \par{ If this program does not work as expected, please file a bug report with the developer and/or subscribe to mcl-devel as indicated on \httpref{http://micans.org/mcl/}. The problem will then be fixed. } \par{ The full list of pipeline options is given below. Start simple, and if you need some behaviour, try to see if there is an option that fits your needs. If you use a wrapper pipeline such as \mysib{mclblastline}, you can ignore the \genopt{--parser} and \genopt{--parser-tag} options as they are provided by the wrapper. } \par{ \mclpipeline \synreqkvp{--parser}{application}{data parser} \synreqkvp{--parser-tag}{str}{parse option transporter} } \par{ \synoptopt{--whatif}{do not execute}\| \synoptopt{--start-assemble}{skip parse stage}\| \synoptopt{--start-mcl}{skip earlier stages}\| \synoptopt{--start-format}{skip earlier stages}\| \synoptopt{--prepare-mcl}{do preparatory stages}\| \synoptopt{--help}{summary of options}\| \synoptkvp{--xi}{suf}{strip suf from input file}\| \synoptkvp{--xo-dat}{suf}{attach suf to parse output}\| \synoptkvp{--xo-ass}{suf}{attach suf to assembly output}\| \synoptkvp{--xi-mcl}{suf}{use with --start-mcl}\| \synoptkvp{--xo-mcl}{suf}{replace mcl output suffix}\| \synoptkvp{--xa-mcl}{str}{append to mcl output suffix}\| \synoptkvp{--xe-mcl}{suf}{append to mcl output}\| \synoptkvp{--xo-fmt}{suf}{attach suf to clmformat output}\| \synoptkvp{--ass-repeat}{str}{assembly repeat option}\| \synoptopt{--ass-nomap}{ignore map file}\| \synoptkvp{--ass-opt}{val}{assembly option transporter}\| \synoptkvp{--mcl-te}{num}{#expansion threads}\| \synoptkvp{--mcl-I}{float}{mcl inflation value}\| \synoptkvp{--mcl-i}{float}{mcl initial inflation value}\| \synoptkvp{--mcl-l}{float}{mcl initial loop length}\| \synoptkvp{--mcl-c}{float}{mcl center value}\| \synoptkvp{--mcl-pi}{float}{mcl pre-inflation value}\| \synoptkvp{--mcl-scheme}{i}{mcl scheme index}\| \synoptkvp{--mcl-o}{fname}{do not use}\| \synoptkvp{--mcl-opt}{val}{mcl option transporter}\| \synoptkvp{--fmt-lump-count}{num}{collect formatted output}\| \synoptopt{--fmt-opt}{val}{clmformat option transporter}\| \synoptopt{--fmt-tab}{fname}{use this tab file}\| \synoptopt{--fmt-notab}{ignore tab file}\| \: \synoptopt{--fmt-noscores}{omit scores}\| } \sec{description}{DESCRIPTION} \par{ \mclpipeline encapsulates a sequence of programs to be run on some input data in order to obtain clusterings and formatted output representing the clusterings, while maintaining unique file names and file name ensembles corresponding with differently parametrized runs. } \par{ The script can behave in several ways. By default, the pipeline consists of the stages of \it{parsing}, \it{assembly}, \it{clustering}, and \it{formatting}. The parsing stage is to be represented by some parser script obeying the interface rules described below. The assembly stage is done by \mysib{mcxassemble}, the clustering stage is done by \mysib{mcl}, and the formatting stage is done by \mysib{clmformat}. } \par{ The script can also be put to simpler uses, e.g. letting the script take care of unique file names for differently parametrized mcl runs. In this case there is no need to specify either the parser or the data file, and subsequent invocations might look like this: } \verbatix{ mclpipeline --start-mcl= --mcl-I=1.6 --mcl-scheme=4 mclpipeline --start-mcl= --mcl-I=2.0 --mcl-scheme=4 mclpipeline --start-mcl= --mcl-I=2.4 --mcl-scheme=4 .. etc } \par{ It is easiest if for each parser a wrapper script is written encapsulating the parser and \mclpipeline. A mechanism is provided through which mclpipeline can recognize options that are meant to be passed to the parser. An example of such a wrapper script is the BLAST pipeline \bf{mclblastline} that basically calls mclpipeline with the parameters \usekvp{--parser}{mcxdeblast} \usekvp{--parser-tag}{blast}. In this case the parser is \bf{mcxdeblast}, and mclpipeline will pass any options of the forms \bf{--blast-foo} and \bf{--blast-bar=zut} to the parser (respectively as \bf{--foo} and \bf{--bar=zut}). } \par{ For a given data set the stages of parsing and assembling will often not need to be repeated, especially if there is a well established way of creating a matrix from the input data. In this case, usage will look like } \verbatix{ mclpipeline [parse/assembly options] --prepare-mcl mclpipeline [cluster options 1] --start-mcl mclpipeline [cluster options 2] --start-mcl mclpipeline [cluster options 3] --start-mcl ... } \par{ Note that \mclpipeline will store the output of those runs in unique file names derived from the parametrizations. } \par{ There are some options that affect the file names of intermediate results. In the above setup of repeated runs, if used in one run, they must be used in all runs, as \mclpipeline uses them to compute the file names it needs. For the setup above, these options are \genkvp{--xi}{suf}, \genkvp{--xo-dat}{suf}, and \genkvp{--xo-ass}{suf}. } \par{ There are other ways of resuming the pipeline, and one must always take care that options starting with \bf{--xi-}, \bf{--xo-}, \bf{--xa}, or \bf{--xe} are repeated among preparatory and subsequent runs. These tags respectively mnemonize \it{extension in}, \it{extension out}, \it{extension append}, and \it{extension extra}. } \par{ Should one want to experiment with various ways of creating input matrices, then \mclpipeline supplies options to create unique file names and file name ensembles corresponding with different setups and parametrizations. These are \genkvp{--xo-dat}{suf} for the parsing stage and \genkvp{--xo-ass}{suf} for the assembly stage. mclpipeline \it{automatically} generates unique file names for the cluster results, but it does not do so for the parse and assembly results. } \cpar{Parser interface requirements}{ The parser should recognize its last argument as a file name or as the base name of a file. It should produce the files \v{base.raw}, \v{base.hdr}, and preferably \v{base.tab} and \v{base.map}, where the base name \v{base} is determined as described below. } \par{ \mclpipeline will pass its last argument to the parser. The parser should recognize the \genkvp{--xi-dat}{suf} and \genkvp{--xo-dat}{suf} options. If the first is present, it should try to strip of the suffix specified in the value and use the result as the initial part of the base name for the files it constructs. If stripping does not succeed, it must interpret as the base name and append the suffix in order to construct the name of the file it will try to read. If the \genkvp{--xo-dat}{suf} option is present, it must append the suffix specified in the value to the base part as described above. The result is then the full base name to which the \v{raw}, \v{hdr}, and other suffixes will be appended. } \cpar{Parser interface examples}{} \verbatix{\ --xi-dat=abc --xo-dat=xyz foo * parser reads foo.abc, writes foo.xyz.raw, foo.xyz.hdr et cetera. --xi-dat=abc --xo-dat=xyz foo.abc * idem --xo-dat=xyz foo.abc * parser reads foo.abc, writes foo.abc.xyz.raw et cetera. --xi-dat=abc foo.abc * parser reads foo.abc, writes foo.raw, foo.hdr et cetera. foo.abc * parser reads foo.abc, writes foo.abc.raw, foo.abc.hdr et cetera. } \cpar{Output file names construction}{ The files of primary interest are the mcl output file and the formatted output produced by clmformat. The pipeline constructs a file name for the mcl output in which several parameters are encoded. The first part of the file name is either the base name for the assembly stage, or simply the name of the input file, depending on whether the option \genkvp{--xo-ass}{suf} was used or not. } \par{ A suffix encoding key-value pairs is appended. By default it has the form \v{I..s.}, e.g. \v{I20s2}. The latter examples denotes primary inflation value 2.0 and scheme 2. The pipeline will automatically append several other mcl parameters if they are used. These correspond with the pipeline options \genkvp{--mcl-i}{f}, \genkvp{--mcl-l}{i}, \genkvp{--mcl-c}{f}, and \genkvp{--mcl-pi}{f}, which in turn correspond with the mcl options \genopt{-i}{f}, \genopt{-l}{i}, \genopt{-c}{f}, and \genopt{-pi}{f}. The order of appending is alphabetical with capitals preceding lowercase, so a full example is \v{I25c30i35l2pi28s3}. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{--whatif}{do not execute}} \car{ Shows only what would be done without executing it. Hugely useful! } \item{\defopt{--start-assemble}{skip parse stage}} \car{ Skip the parse stage, assume the necessary files have been created in a previous run. } \item{\defopt{--prepare-mcl}{do preparatory stages}} \car{ Do the parsing and assembly stage, then quit. Useful if you want to do multiple cluster runs for a given graph - use \genopt{--start-mcl} } \item{\defopt{--start-mcl}{skip earlier stages}} \car{ Immediately start the mcl stage. Assume the necessary files have been created in a previous run. } \cpar{NOTE}{ This option can be used as \genkvp{--start-mcl}{fname}. In this case, no final file name argument need be given, and mcl will use \genarg{fname} as the file name for its input. } \par{ The difference with \genopt{--start-mcl} is that the latter will assume it is picking up the results of a previous run. The names of those results might include suffixes corresponding with the parse and assembly stage (cf. \genopt{--xo-dat} and \genopt{--xo-ass}). If you are not clear on this (and you should not be), exercise the \genopt{--whatif} option to be sure. } \item{\defopt{--start-format}{skip earlier stages}} \car{ Immediately start the format stage. Assume the necessary files have been created in a previous run. } \item{\defopt{--help}{summary of options}} \car{ Print a terse summary of options. } \item{\defopt{--xi}{suf}{strip suffix from data file}} \car{ In normal usage, this will strip the specified suffix from the data file to obtain the base name for further output. When used with \genkvp{--start-mcl}{fname} the same behaviour is applied to the mcl input file name specified in \genarg{fname}. } \item{\defopt{--xo-dat}{suf}{attach suf to parse output}} \car{ This suffix will be attached to the base name of the parse output. It can be used to distinguish between different parse parametrizations if this is applicable. } \item{\defopt{--xo-ass}{suf}{attach suf to assembly output}} \car{ This suffix will be attached to the base name of the assembly output. It can be used to distinguish between different assembly parametrizations if this is applicable. } \item{\defopt{--xo-mcl}{suf}{replace mcl output suffix}} \car{ This suffix will be used instead of the suffix by default created by the pipeline. } \item{\defopt{--xa-mcl}{str}{append to mcl output suffix}} \car{ This string will be appended to the suffix by default created by the pipeline. } \item{\defopt{--xe-mcl}{suf}{append to mcl output}} \car{ This string will be appended as a single suffix to the output base name before mclpipeline appends its own suffix. } \item{\defopt{--xo-fmt}{suf}{attach suf to clmformat output}} \car{ This suffix will be used instead of the suffix by default used by the formatting stage. } \item{\defopt{--ass-repeat}{str}{assembly repeat option}} \car{ Corresponds with the \mcxassemble \genopt{-r}{mode} option. Refer to the \mysib{mcxassemble} manual. } \item{\defopt{--ass-opt}{val}{assembly option transporter}} \car{ Transfer \genopt{-opt}{val} to \mcxassemble. } \item{\defopt{--ass-nomap}{ignore map file}} \car{ Either no map file is present or it should be ignored. For parsers that don't write map files. } \item{\defopt{--mcl-I}{float}{mcl inflation value}} \car{ The (main) inflation value mcl should use. \it{This is the primary mcl option}. } \item{\defopt{--mcl-scheme}{i}{mcl scheme index}} \car{ The scheme index to use. This options is also important. Refer to the \mysib{mcl} manual. } \item{\defopt{--mcl-te}{num}{#expansion threads}} \car{ The number of threads \mcl should use. } \item{\defopt{--mcl-i}{float}{mcl initial inflation value}} \car{ The initial inflation value mcl should use. Only for fine-tuning or testing. } \item{\defopt{--mcl-l}{float}{mcl initial loop length}} \car{ The length of the loop in which initial inflation is applied. By default zero. } \item{\defopt{--mcl-c}{float}{mcl center value}} \car{ The center value. One may attempt to affect granularity by exercising this option, which controls the loop weights in the input matrix. Refer to the \mysib{mcl} manual. } \item{\defopt{--mcl-pi}{float}{mcl pre-inflation value}} \car{ Pre-inflation, another option which may possibly affect granularity by changing the input matrix. It makes the edge weight distribution either more or less homogeneous. Refer to the \mysib{mcl} manual. } \item{\defopt{--mcl-o}{fname}{do not use}} \car{ Set the mcl output name. } \item{\defopt{--mcl-opt}{val}{mcl option transporter}} \car{ Transfer \genopt{-opt}{val} to \mcl. } \item{\defopt{--fmt-dump-stats}{add simple measures to dump file}} \car{ This adds some simple performance measures to the dump file. For each cluster, five columns proceed the label listing. These are the cluster ID, the number of elements in the cluster, the projection (percentage of within-cluster edge weight relative to total outgoing edge weight), the efficiency of the cluster (which is the average of the efficiency of all its nodes), and the maximum efficiency (average of the max-efficiency of all the nodes). Look into the \sibref{clmformat}{clmformat manual} for more information on and references to the efficiency measures. } \item{\defopt{--fmt-fancy}{create detailed output (requires zoem)}} \car{ Creates extensive description of node/cluster and cluster/cluster relationships. } \item{\defopt{--fmt-lump-count}{num}{collect formatted output}} \car{ Collect clusters in the same file until the total number of nodes has exceeded \genarg{num} (in the formatted output). Only meaninful when \genopt{--fmt-fancy} is given. } \item{\defopt{--fmt-tab}{use this tab file}} \car{ Explicitly specify the tab file to use. } \item{\defopt{--fmt-notab}{ignore tab file}} \car{ Either no tab file is present or it should be ignored. For parsers that don't write tab files. } \item{\defopt{--fmt-opt}{val}{clmformat option transporter}} \car{ Transfer \genopt{-opt}{val} to \clmformat. } \: \item{\defopt{--fmt-noscores}{omit scores}} \: Do not write cohesion and stickiness scores in the formatted output. \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen } \sec{seealso}{SEE ALSO} \par{ \mysib{mcxdeblast}, \mysib{mclblastline}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \par{ With default settings, \mclpipeline depends on the presence of \zoem. It can be obtained from \httpref{http://micans.org/zoem/} . } \end{pud::man} mcl-12-135/doc/distindex.html0000644000402500021140000000064311754271042012725 00000000000000 MCL manuals

MCL user manuals

mcl-12-135/doc/mcxmap.html0000644000402500021140000003120411754271045012217 00000000000000 The mcxmap manual

14 May 2012    mcxmap 12-135

NAME

mcxmap — permute or remap the indices of graphs and matrices.

SYNOPSIS

mcxmap -imx fname (input)

[-o fname (output)] [-make-map (output map file name)] [-make-mapc (output map file name)] [-make-mapr (output map file name)] [-cmul a (coefficient)] [-cshift b (translate)] [-rmul c (coefficient)] [-rshift d (translate)] [-mul e (coefficient)] [-shift f (translate)] [-map fname (row/col map file)] [-rmap fname (row map file)] [-cmap fname (column map file)] [-mapi fname (row/col map file (use inverse))] [-rmapi fname (row map file (use inverse))] [-cmapi fname (column map file (use inverse))] [-tab fname (read (and map) tab file)]

DESCRIPTION

This utility relabels graphs or matrices. Its main use is in applying a map file to a given matrix or graph. A map file contains a so called map matrix in mcl format that has some special properties (given further below). The functionality of mcxmap can also be provided by mcx, as a mapped matrix (i.e. the result of applying a map matrix to another matrix) is simply the usual matrix product of a matrix and a map matrix. However, mcx will construct a new matrix and leave the original matrix to be mapped alone. When dealing with huge matrices, considerable gains in efficiency memory-wise and time-wise can be achieved by doing the mapping in-place. This is what mcxmap does. In the future, its functionality may be embedded in mcx with new mcx operators.

The special properties of a map matrix are

The column domain and row domain are of the same cardinality.

Each column has exactly one entry.

Each row domain index occurs in exactly one column.

These properties imply that the matrix can be used as a map from the column domain onto the row domain. An example map matrix is found in the EXAMPLES Section.

OPTIONS

-o fname (output file)

Output file.

 
-imx fname (input file)

Input file.

 
-map fname (row/col map file))
-rmap fname (row map file)
-cmap fname (column map file)
-mapi fname (row/col map file (use inverse))
-rmapi fname (row map fil (use inverse))
-cmapi fname (column map fil (use inverse))

Different ways to specify map files.

 
-make-map (output map file name)
-make-mapc (output map file name)
-make-mapr (output map file name)

Generate a map that maps the specified domain onto the appropriate canonical domain and write the map matrix to file.

 
-cmul a (coefficient)
-cshift b (translate)

These options have affect if neither a column map file nor column canonification is specified. If any of the first two options is used, column indices i are mapped to a*i+b.

 
-rmul c (coefficient)
-rshift d (translate)

These options have affect if neither a row map file nor row canonification is specified. If any of the first two options is used, indices i are mapped to c*i+d.

 
-mul e (coefficient)
-shift f (translate)

If a map file is specified for a given domain, neither a map file nor canonification is specified. If any of the first two options is used, the indices i will be mapped to e*i+f.

 
-tab fname (read (and map) tab file)

This option requires the -map option. mcxmap will output the mapped tab definition.

EXAMPLES

The matrix below has two canonical domains which are identical. It denotes a map of the canonical domain onto itself, in which node 0 is relabeled to 8, node 1 is relabeled to 5, et cetera.

(mclheader mcltype matrix dimensions 12x12 ) (mclmatrix begin 0 8 $ 1 5 $ 2 3 $ 3 2 $ 4 4 $ 5 6 $ 6 7 $ 7 9 $ 8 1 $ 9 10 $ 10 11 $ 11 0 $ )

AUTHOR

Stijn van Dongen.

SEE ALSO

mcxio, mcx, mcxsubs, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/clmorder.ps0000644000402500021140000002657011754271042012226 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:14 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 1 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d206f72646572283129>20 48 Q <5553455220434f4d4d414e4453>139.015 E<636c6d206f72646572283129>141.515 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<636c6d206f72 64657220ad2072656f7264657220636c7573746572696e677320636f6e666f726d616c20 746f20696e636c7573696f6e20737472756374757265>100 96 Q .15 <636c6d6f72646572206973206e6f7420696e2061637475616c2066>100 120 R .15<61 637420612070726f6772616d2e2054686973206d616e75616c207061676520646f63756d 656e7473207468652062656861>-.1 F .15<76696f757220616e64206f7074696f6e73> -.2 F 1.325<6f662074686520636c6d2070726f6772616d207768656e20696e>100 132 R -.2<766f>-.4 G -.1<6b65>.2 G 3.826<6469>.1 G 3.826<6e6d>-3.826 G <6f6465>-3.826 E/F2 10/Times-Italic@0 SF<6f72>3.826 E<646572>-.37 E F0 3.826<2e54>C 1.326<6865206f7074696f6e73>-3.826 F/F3 10/Times-Bold@0 SF <2d68>3.826 E F0<2c>A F3<2d2d617072>3.826 E<6f706f73>-.18 E F0<2c>A F3 <2d2d76>3.826 E<657273696f6e>-.1 E F0<2c>A F3<2d736574>3.826 E F0<2c>A F3<2d2d6e6f70>100 144 Q F0<6172652061636365737369626c6520696e20616c6c> 2.5 E F3<636c6d>2.5 E F0<6d6f6465732e20546865>2.5 E 2.5<7961>-.15 G <72652064657363726962656420696e20746865>-2.5 E F3<636c6d>2.5 E F0 <6d616e75616c20706167652e>2.5 E F1<53594e4f50534953>20 160.8 Q F3 .8 <636c6d206f72646572205b2d7072>100 172.8 R<658c78>-.18 E F0 .799 <3c737472696e673e2028>3.299 F F2 .799<8c6c65206d756c7469706c65>B 3.299 <7870>-.2 G -.37<7265>-3.299 G<8c78>.37 E F0<29>A F3 3.299<5d5b>C<2d6f> -3.299 E F0 .799<3c666e616d653e2028>3.299 F F2 .799 <636f6e636174656e61746564206f757470757420696e2073696e676c65>B<8c6c65>100 184.8 Q F0<29>A F3<5d>A F0<3c636c75737465727c737461636b3e2b>2.5 E F1 <4445534352495054494f4e>20 201.6 Q F0<4769>100 213.6 Q -.15<7665>-.25 G 3.045<6e6173>.15 G .545<6574206f6620696e70757420636c7573746572696e6773> -3.045 F F3 .545<636c6d206f72646572>3.045 F F0 .546<8c727374207472616e73 666f726d20697420696e746f206120737461636b206f66207374726963746c79206e6573 74696e6720636c75732d>3.045 F .121<746572696e67732e20497420646f6573207468 69732062792073706c697474696e6720636c757374657273207768657265206e65636573 736172792e>100 225.6 R .12<4974207468656e2072656f7264657273207468652063 6f6172736573742028692e652e206c65>5.121 F -.15<7665>-.25 G<6c2d>.15 E .391<6f6e652920636c7573746572696e672c2066726f6d206c6172>100 237.6 R .392 <676520746f20736d616c6c20636c7573746572732e2041667465722074686174206974 2072656f726465727320746865207365636f6e6420636f61727365737420636c75737465 72696e67>-.18 F 1.309<636f6e666f726d616c6c792073756368207468617420746865 208c72737420626174636820616d6f6e67206974732072656f72646572656420636c7573 7465727320636f>100 249.6 R -.15<7665>-.15 G 1.308<727320746865206c65>.15 F -.15<7665>-.25 G 1.308<6c2d6f6e65206c6172>.15 F<67657374>-.18 E <636c7573746572>100 261.6 Q 2.548<2c74>-.4 G .048 <6865207365636f6e6420626174636820636f>-2.548 F -.15<7665>-.15 G .048 <727320746865206c65>.15 F -.15<7665>-.25 G .048 <6c2d6f6e65207365636f6e64206c6172>.15 F .048<6765737420636c7573746572> -.18 F 2.548<2c61>-.4 G .048<6e6420736f206f6e2e2057>-2.548 F .048 <697468696e20746865736520636f6e2d>-.4 F .174 <73747261696e74732c2065616368206261746368206f66207365636f6e642d6c65>100 273.6 R -.15<7665>-.25 G 2.674<6c63>.15 G .174<6c7573746572732028636f72 726573706f6e64696e6720746f20612073696e676c65208c7273742d6c65>-2.674 F -.15<7665>-.25 G 2.674<6c63>.15 G .173<6c757374657229206973206167>-2.674 F<61696e>-.05 E .409<6f7264657265642066726f6d206c6172>100 285.6 R .409< 67657220746f20736d616c6c657220636c7573746572732e20546869732070726f636573 73206973206170706c6965642072656375727369>-.18 F -.15<7665>-.25 G .41 <6c79207468726f7567686f75742074686520656e74697265>.15 F <737461636b206f6620696e70757420636c7573746572732e>100 297.6 Q .923<5468 6520696e7075742063616e2062652073706563698c656420696e206d756c7469706c6520 8c6c65732c20616e6420612073696e676c65208c6c65206d617920636f6e7461696e206d 756c7469706c6520636c7573746572696e67732e>100 321.6 R 1.118 <546865206f757470757420697320627920646566>100 333.6 R 1.118<61756c742077 72697474656e206173206120636f6e636174656e6174696f6e206f66206d617472697820 8c6c65732c2074686520736f2d63616c6c656420737461636b20666f726d61742e>-.1 F .377<55736520746865>100 345.6 R F3<2d6f>2.877 E F0 .377<6f7074696f6e2074 6f207370656369667920746865206f7574707574208c6c652e2054686520737461636b> 2.877 F .376<656420666f726d61742063616e20626520636f6e>-.1 F -.15<7665> -.4 G .376<7274656420746f204e65>.15 F .376<7769636b20666f72>-.25 F<2d> -.2 E .184<6d6174207573696e67>100 357.6 R F3<6d637864756d70283129>2.684 E F0 2.684<2e54>C .185<6865206f75747075742063616e206265207772697474656e 20746f206d756c7469706c65208c6c65732c206f6e6520666f7220656163682070726f6a 656374656420636c75732d>-2.684 F .214 <746572696e672c206279207573696e6720746865>100 369.6 R F3<2d7072>2.713 E <658c78>-.18 E F0 .213<6f7074696f6e2e2042792065>2.713 F<78616d706c652c> -.15 E F3<2d7072>2.713 E<658c782050>-.18 E F0 .213 <6c6561647320746f206f757470757420696e208c6c6573206e616d6564>2.713 F/F4 10/Courier@0 SF<5031>2.713 E F0<2c>A F4<5032>2.713 E F0<2c>A<2e2e>100 381.6 Q F4<504e>A F0 2.805<2c77>C<68657265>-2.805 E F4<4e>2.805 E F0 .306<697320746865206e756d626572206f6620636c75737465727320696e2074686520 696e7075742c>2.806 F F4<5031>2.806 E F0 .306<697320746865206d6f7374208c 6e652d677261696e6564206f72646572656420636c7573746572>2.806 F<2d>-.2 E <696e672c20616e64>100 393.6 Q F4<504e>2.5 E F0 <69732074686520636f61727365737420636c7573746572696e672e>2.5 E F1 <4f5054494f4e53>20 410.4 Q F3<2d7072>100 422.4 Q<658c78>-.18 E F0<28>2.5 E F2<3c737472696e673e>A F0<29>A F3<2d6f>100 434.4 Q F0<28>2.5 E F2 <3c666e616d653e>A F0<29>A<41732064656372696265642061626f>120 446.4 Q -.15<7665>-.15 G<2e>.15 E F1 -.548<4155>20 463.2 S<54484f52>.548 E F0 <5374696a6e2076>100 475.2 Q<616e20446f6e67656e2e>-.25 E F1 <53454520414c534f>20 492 Q F3<6d636c66616d696c79283729>100 504 Q F0 <666f7220616e206f>2.5 E -.15<7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c2074686520646f63756d656e746174696f6e20616e6420746865 207574696c697469657320696e20746865206d636c2066>-2.5 E<616d696c792e>-.1 E <636c6d206f726465722031322d313335>20 768 Q<3134204d61792032303132> 137.905 E<31>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxassemble.azm0000644000402500021140000004021711327303364013060 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxassemble} {html_title}{The mcxassemble manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcxassemble}{transform raw cooccurrence data to mcl matrix format.} \sec{synopsis}{SYNOPSIS} \par{ \mcxassemble \synreqopt{-b}{base}{base name} \synoptopt{-o}{fname}{write to file fname} \synoptopt{--write-binary}{write output in binary format} \synoptopt{--map}{apply base.map} \synoptopt{-raw-tf}{apply transform spec to input} \synoptopt{-rv}{MODE}{repeated vectors} \synoptopt{-re}{MODE}{repeated entries} \synoptopt{-ri}{MODE}{adding mirror image} \synoptopt{-r}{MODE}{repeated entries/vectors/images} \synoptopt{-prm-tf}{apply transform spec to primary matrix} \synoptopt{-sym-tf}{apply transform spec to symmetrified matrix} \synoptopt{-q}{quiet mode} } \par{ The options above embody the default setup when using mcxassemble. There are many more options which mostly provide subtly different ways of doing input/output, set warning levels, or regulate how repeated entries and vectors should be treated. The full list of options is shown below. Read \secref{description} for learning about mcxassemble input/output and the functionality it provides. } \cpar{NOTE}{ As of release 05-314 \mysib{mcl} is able to cluster label-type input on the fly. In most cases, this will be sufficient. Alternatively, \mysib{mcxload} can be used to map label-type input onto mcl matrices. Consequently, there are likely fewer scenarios nowadays where \mcxassemble is the best solution. Consider first whether \mcl in label mode or \mcxload can do the job as well.} \par{ \mcxassemble \synoptopt{-b}{base}{base name} \synoptopt{-hdr}{fname}{read header file} \synoptopt{-raw}{fname}{read raw file} \synoptopt{--map}{apply base.map} \synoptopt{--cmap}{apply base.cmap} \synoptopt{--rmap}{apply base.rmap} \synoptopt{-map}{fname}{apply fname} \synoptopt{-rmap}{fname}{apply fname} \synoptopt{-cmap}{fname}{apply fname} \synoptopt{-tag}{tag}{apply base.tag} \synoptopt{-rtag}{tag}{apply base.tag} \synoptopt{-ctag}{tag}{apply base.tag} \synoptopt{-skw}{fname}{write skew matrix} \synoptopt{-prm}{fname}{write primary result matrix} \synoptopt{--skw}{write base.skw} \synoptopt{--prm}{write base.prm} \synoptopt{-xo}{suf}{write base.suf} \synoptopt{-o}{fname}{write to file fname} \synoptopt{-n}{do not write default symmetrized result} \synoptopt{-i}{read from single data file} \synoptopt{-digits}{int}{digits width} \synoptopt{-s}{check for symmetry} \synoptopt{-raw-tf}{apply transform spec to input} \synoptopt{-rv}{}{action for repeated vectors} \synoptopt{-re}{}{action for repeated entries} \synoptopt{-ri}{}{adding mirror image} \synoptopt{-r}{}{same for entries and vectors} \synoptopt{-prm-tf}{apply transform spec to primary matrix} \synoptopt{-sym-tf}{apply transform spec to symmetrified matrix} \synoptopt{--quiet-re}{quiet for repeated entries} \synoptopt{--quiet-rv}{quiet for repeated vectors} \synoptopt{-q}{the two above combined} \stdsynopt } \sec{description}{DESCRIPTION} \par{ \mcxassemble enables easy matrix creation from an intermediate raw matrix format that can easily be constructed from a one-pass-parse of cooccurrence data. The basic setup is as follows. } \begin{itemize}{ {mark}{\*{itembullet}} {flow}{compact} {interitem}{0} {align}{right} } \item \car{ Parse cooccurrence data from some external format. } \item \car{ Transform cooccurrence data to raw mcl data as you parse. } \item \car{ When done, write out required header and domain information to a separate file. The domain information can be built during the parsing stage. } \item \car{ Use mcxassemble to construct a valid matrix from the raw data and the header information. } \item \car{ Nodes can optionally be relabeled by writing a separate map file to be read by \mcxassemble, which takes the form of a very thin matrix file. } \end{itemize} \par{ The easiest thing to do is to group all input/output files under the same base name, say\~\bf{base}. A standard way of proceeding, which will lead to a concise \mcxassemble command line, is by creating the input files \bf{base.raw} and \bf{base.hdr}, and optionally the file \bf{base.map}. The default behaviour of mcxassemble is then to create \bf{base.sym} as the resulting matrix file, containing the symmetrized matrix constructed from the raw input. } \cpar{Example}{ Suppose \v{blastresult} is a file containing blast results. The following two commands construct an mcl matrix file from the file. } \verbatim{\ mcxdeblast --score=e --sort=a blastresult mcxassemble -b blastresult -r max --map} \car{ \mcxdeblast will generate the files \v{blastresult.hdr}, \v{blastresult.raw}, and \v{blastresult.map}. The \useopt{--sort=a} option will create a map file corresponding with alphabetic ordering. These files are processed by \mcxassemble and it will generate the file \v{blastresult.sym}. The \useopt{-r} option tells \mcxassemble that repeated entries should be maxed; each time the largest entry seen thus far will be taken. } \cpar{Header file}{ This file contains a header as usually found in generic mcl matrix files, i.e. the required \it{header} part, and optionally the \it{domain} part(s) if not all domains are canonical. Refer to \mysib{mcxio} for more information. The domain information in the header file will be used to pre-construct a skeleton matrix and to validate the entries in the raw data file as they fill the skeleton matrix. } \cpar{Raw input format}{ The file from which raw input is read should have the raw format as described in \mysib{mcxio}. Simply put; no header specification, no domain specification, and no matrix introduction syntax is used. The file just contains a listing of vectors. An example fragment is the following: } \verbatix{\ 2 4:0.34 1:2.8838 4:2.328 1:4.238 1:12 $ 1 2:7.8 $ 2 1:0.01 4:20.3 3:2 $} \car{ The listing of vectors need not be sorted, and neither does a vector itself need to be sorted - the mcl generic matrix format is actually not different in this respect. Furthermore, duplicate entries and duplicate vectors are allowed. This is in fact again allowed in the generic format, except that where applications expect generic format warnings will be issued and duplicate entries will be disregarded. \mcxassemble allows customizable behaviour dictating how to merge repeated entries. Refer to the \optref{-re}{\genopt{-re},\~\genopt{-rv},\~\genopt{-r}} options below. } \par{ The vectors read by \mcxassemble do have to match the domains specified in the header file. The leading index that specifies the column index has to be present in the column domain; all subsequent indices that specify column entries have to be present in the row domain. } \par{ \it{If one concatenates the contents of the header file and the data file}, the result is \it{almost but not quite} a file containing a matrix in syntactically correct mcl generic matrix format. The parts missing are the \v{(mclmatrix} introduction token, (followed by) the \v{begin} token, and the closing \v{)} token. } \cpar{Map file}{ This file must contain a map matrix, which is a matrix with the following properties: } \begin{itemize}{ {mark}{\*{itembullet}} {flow}{compact} {interitem}{0} {align}{right} } \item \car{ The column domain and row domain are of the same cardinality. } \item \car{ Each column has exactly one entry. } \item \car{ Each row domain index occurs in exactly one column. } \end{itemize} \par{ Such a matrix is used to relabel the nodes as found in the raw data. A situation that might occur when parsing some external format (and producing raw matrix format), is that ID's (indices) are handed out on the fly during the parse. Afterwards, one may want to relabel the IDs such that they correspond with an alphabetic listing of the quantity that is represented by the node domain, or by some other sort criterion. A map file is then typically generated by the parser, as that is the utility in charge of the IDs. A small example of a map file for a graph containing five nodes is the following: } \verbatim{\ (mclheader mcltype matrix dimensions 5x5 ) (mclmatrix begin 0 4 $ # mno 1 2 $ # ghi 2 1 $ # def 3 3 $ # jkl 4 0 $ # abc )} \car{ This corresponds to a relabeling such that the associated strings will be ordered alphabetically. Note that comments can be used to link string identifiers with indices. This map file says e.g. that the string identifier "mno" is represented by index 0 in the raw data, and by index 4 in the matrix output by \mcxassemble. } \sec{options}{OPTIONS} \begin{itemize}{ {flow}{cascade} {interitem}{1} \mcx_itemopts } \items{ {\defopt{-b}{base}{base name}} } \car{ Base name of files to be processed and output. Refer to \secref{description} above and the entries of other options below. } \items{ {\defopt{-hdr}{fname}{read header file}} {\defopt{-raw}{fname}{read raw file}} } \car{ Explicitly specify the header file and the data file (rather than constructing the file names from a base name and suffixes). } \items{ {\defopt{--map}{apply base.map}} {\defopt{--cmap}{apply base.cmap}} {\defopt{--rmap}{apply base.rmap}} {\defopt{-map}{fname}{apply fname}} {\defopt{-rmap}{fname}{apply fname}} {\defopt{-cmap}{fname}{apply fname}} {\defopt{-tag}{tag}{apply base.tag}} {\defopt{-rtag}{tag}{apply base.tag}} {\defopt{-ctag}{tag}{apply base.tag}} } \car{ Map options. \useopt{--cmap} combines with the \useopt{-b}\~option, and says that the map file in \bf{base}.\v{cmap} (where \bf{base} was specified with \useopt{-b}{base}) should be applied to the column domain only. \useopt{--rmap} works the same for the row domain, and \useopt{--map} can be used to apply the same map to both the column and row domains. } \par{ \useopt{-cmap} and its siblings are used to explicitly specify the map file to be used, rather than combining a base name with a fixed suffix. \useopt{-tag} and its siblings work in conjuction with the \useopt{-b}\~option, and require that a tag be specified from which to construct the map file (by appending it to the base name). } \items{ {\defopt{-skw}{fname}{write skew matrix}} {\defopt{-prm}{fname}{write primary result matrix}} {\defopt{--prm}{write base.prm}} {\defopt{--skw}{write base.skw}} {\defopt{-n}{do not write default symmetrized result}} } \car{ Options for writing matrices other than the default symmetrized result. The primary result matrix is the matrix constructed from reading in the raw data and adding entries to the skeleton matrix as specified with the \optref{-r}{\useopt{-r}, \useopt{-re}, and \useopt{-rv} options}. This matrix can be written using one of the \bf{prm} options. Calling the primary matrix A, the skew matrix (as defined here) is the matrix \v{A\~-\~A^T}, i.e. A minus its transposed matrix. It can be written using one of the \bf{skw} options. } \par{ If for some reason the symmetrized result is not needed, its output can be prevented using the \genopt{-n}\~option. } \items{ {\defopt{-xo}{suf}{write base.suf}} {\defopt{-o}{fname}{write to file fname}} {\defopt{-i}{read from single data file}} {\defopt{-digits}{int}{digits width}} {\defopt{--write-binary}{write output in binary format}} } \car{ The \useopt{-xo}\~option is used in conjunction with the \useopt{-b}\~option in order to change the suffix for the file in which the symmetrized result matrix is written. Use e.g. \useopt{-xo}{mci} to change the suffix from the default value \v{sym} to \v{mci}. Use \useopt{-o} to explicitly specify the filename in full. Use \useopt{-digits} to set the number of digits written for matrix entries (c.q. edge weights). } \par{ The \useopt{-i} option is special. It causes \mcxassemble to read both the header information and the raw data from the same file, where the syntax should be fully conforming to generic mcl matrix format. } \item{\defopt{-s}{check for symmetry}} \car{ This will check whether the primary result matrix was symmetric. It reports the number of failing (or \it{skew}) edges. } \items{ {\defopt{-raw-tf}{}{apply transform spec to input}} {\defopt{-prm-tf}{apply transform spec to primary matrix}} {\defopt{-sym-tf}{apply transform spec to symmetrified matrix}} } \car{ The first applies its transformation spec to the values as found in the raw data. The second applies its transformation spec to the primary matrix. The third applies its transformation step to the symmetrified matrix. Refer to \mysib{mcxio} for documentation on the transformation spec syntax.} \items{ {\defopt{-rv}{add|max|min|mul|left|right}{action for repeated vectors}} {\defopt{-re}{add|max|min|mul|left|right}{action for repeated entries}} {\defopt{-ri}{add|max|min|mul}{adding mirror image}} {\defopt{-r}{add|max|min|mul|left|right}{same for entries and vectors}} } \car{ Merge options, dictating the behaviour when repeated entries are found. A distinction is made between entries that are repeated within the same column listing, and entries that are repeated between different column listings. An entry can be a repeat of both kinds simultaneously as well. Additionally, the final result is by default symmetrized by combining with the mirror image (in matrix terminology, the \it{transposed} matrix). This symmetrization can be done in the same variety of ways. } \par{ The \bf{re} option, for repeats within the same column, is carried out first. It is applied \it{after} the column has its entries sorted, so the \v{left} and \v{right} options are not garantueed to follow the order found in the raw input. The \bf{rv} option, for repeats over different columns, is carried out second. } \par{ The option \useopt{-ri}{min} can assist in implementing a (top-list) best reciprocal hit criterion. } \cpar{Examples}{ The column } \verbatim{0 1:30 1:50 2:60 4:70 3:20 1:40 2:40 $} \car{ is encountered in the input, listing entries for the vector labeled with index\~\m{0}. If \useopt{-re}{add} or \useopt{-r}{add} is used, it will transform to the vector } \verbatim{0 1:120 2:60 3:20 4:70 $} \car{ If \useopt{-re}{max} or \useopt{-r}{add} is used instead, it will transform to the vector } \verbatim{0 1:40 2:60 3:20 4:70 $} \car{ Suppose \genarg{add} mode is used, and that later on another vector specification for the index\~\m{0} is found, leading to this transformed vector: } \verbatim{0 1:60 2:80 4:40 $} \car{ If \useopt{-rv}{max} was specified, this new vector is combined with the previous vector by taking the entry wise maximum: } \verbatim{\ 0 1:120 2:60 3:20 4:70 $ # first (transformed) vector 0 1:60 2:80 4:40 $ # second vector 0 1:120 2:80 3:20 4:70 $ # entry wise maximum} \car{ Finally, suppose that somewhere one or more vector listings were specified for index\~\m{3}, which eventually led to an entry \m{0:50}. The final symmetrization step will take the \m{[0,3]} entry of weight\~\m{20} and combine it with the \m{[3,0]} entry of weight\~\m{50}. The resulting matrix will then have the \m{[0,3]} and the \m{[3,0]} entry both equal to either the maximum, the sum, or the product of the two quantities\~\m{50} and\~\m{20}. } \items{ {\defopt{--quiet-re}{quiet for repeated entries}} {\defopt{--quiet-rv}{quiet for repeated vectors}} {\defopt{-q}{the two above combined}} } \car{ Warning options. Turn these on if you expect the raw data to be free of repeats. } \stddefopt \end{itemize} \sec{author}{AUTHOR} Stijn van Dongen. \sec{seealso}{SEE ALSO} \car{ \mysib{mcxio}, \mysib{mcl}, \mysib{mcxload} and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/clmmate.10000644000402500021140000001001411754271041011540 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm mate" 1 "14 May 2012" "clm mate 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm mate \- compute best matches between two clusterings clmmate is not in actual fact a program\&. This manual page documents the behaviour and options of the clm program when invoked in mode \fImate\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP are accessible in all \fBclm\fP modes\&. They are described in the \fBclm\fP manual page\&. .SH SYNOPSIS \fBclm mate\fP \fB[-o\fP fname (\fIoutput file name\fP)\fB]\fP \fB[-b\fP (\fIomit headers\fP)\fB]\fP \fB[--one-to-many\fP (\fIrequire multiple hits in \fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION \fBclm mate\fP computes for each cluster \fCX\fP in \fCclfile1\fP all clusters \fCY\fP in \fCclfile2\fP that have non-empty intersection and outputs a line with the data points listed below\&. .di ZV .in 0 .nf \fC overlap(X,Y) # 2 * size(meet(X,Y)) / (size(X)+size(Y)) index(X) # name of cluster index(Y) # name of cluster size(meet(X,Y)) size(X-Y) # size of left difference size(Y-X) # size of right difference size(X) size(Y) projection(X, clfile2) # see below projection(Y, clfile1) # see below .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The projected size of a cluster \fCX\fP relative to a clustering \fCK\fP is simply the sum of all the nodes shared between any cluster \fCY\fP in \fCK\fP and \fCX\fP, duplications allowed\&. For example, the projected size of \fC(0,1)\fP relative to \fC{(0,2,4), (1,4,9), (1,3,5)}\fP equals \fC3\fP\&. The overlap between \fCX\fP and \fCY\fP is exactly 1\&.0 if the two clusters are identical, and for nearly identical clusterings the score will be close to 1\&.0\&. All of this information can also be obtained from the contingency matrix defined for two clusterings\&. The \fC[i,j]\fP row-column entry in a contigency matrix between to clusterings gives the number of entries in the intersection between cluster\ \&\fCi\fP and cluster\ \&\fCj\fP from the respective clusterings\&. The other information is implicitly present; the total number of nodes in clusters\ \&\fCi\fP and\ \&\fCj\fP for example can be obtained as the sum of entries in row\ \&\fCi\fP and column\ \&\fCj\fP respectively, and the difference counts can then be obtained by substracting the intersection count\&. The contingency matrix can easily be computed using \fBmcx\fP; e\&.g\&. .di ZV .in 0 .nf \fC mcx /clfile2 lm /clfile1 lm tp mul /ting wm .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR will create the contingency matrix in mcl matrix format in the file \fCting\fP, where columns range over the clusters in \fCclfile1\fP\&. The output can be put to good use by sorting it numerically on that first score field\&. It is advisable to use a stable sort routine (use the \fB-s\fP option for UNIX sort) From this information one can quickly extract the closest clusters between two clusterings\&. .SH OPTIONS .ZI 2m "\fB-o\fP fname (\fIoutput file name\fP)" \& .br Specify the name of the output file\&. .in -2m .ZI 2m "\fB-b\fP (\fIomit headers\fP)" \& .br Batch mode, omit column names\&. .in -2m .ZI 2m "\fB--one-to-many\fP (\fIrequire multiple hits in \fP)" \& .br Do not output information for clusters in the first file that are subset of a cluster in the second file\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mclpipeline.10000644000402500021140000004403711754271043012435 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mclpipeline" 1 "14 May 2012" "mclpipeline 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mclpipeline \- a generic pipeline for generating and scrutinizing mcl clusterings\&. \fBNOTE\fP .br \fBmcl\fP has acquired the ability to manipulate label input directly\&. This enables a very lightweight mechanism of generating clusterings by teaming up mcl with a lightweight parser\&. You might want to use this mechanism\&. Example invocations using the \fBmcxdeblast\fP BLAST parser are documented in the \fBmcl manual\fP\&. .SH SYNOPSIS \fBmclpipeline\fP [options] .br where is either the name of the data input file, or its base name\&. In the latter case the \fB--xi-dat\fP option is required\&. In case mclpipeline is indeed used to control all stages from the data input file onwards, usage will often be like this: .nf \fC mclpipeline [prepare options] --prepare-mcl mclpipeline [cluster options 1] --start-mcl mclpipeline [cluster options 2] --start-mcl \&.\&. etc .fi \fR \fBmclpipeline\fP can also be used to control shorter pipelines, i\&.e\&. in case the input matrix was already created or in case pre-assembled parts of the input matrix were already created\&. In this case, usage will often be like this: .nf \fC mclpipeline [cluster options 1] --start-mcl= mclpipeline [cluster options 2] --start-mcl= or mclpipeline [assembly options] --start-assemble= --prepare-mcl .fi \fR \fBNOTE\fP .br It is possible to make mclpipeline output a large arrary of performance measures related to nodes and clusters in hyperlinked output by supplying the \fB--fmt-fancy\fP option\&. This can be useful if one wants to scrutinize a clustering in greater detail and navigate within the clustering\&. The output then includes listings of external nodes that are relevant/close to a given cluster, and vice versa, listings of external clusters that are relevant/close to a given node\&. Generating this more intricate output requires the presence of the \fBzoem\fP macro processor\&. Refer to the \fBSEE ALSO\fP section and the \fBclmformat manual\fP for more information on zoem\&. By default zoem is not required, and the return result is a file where each line contains a clustering consisting of tab-separated labels\&. If this program does not work as expected, please file a bug report with the developer and/or subscribe to mcl-devel as indicated on http://micans\&.org/mcl/\&. The problem will then be fixed\&. The full list of pipeline options is given below\&. Start simple, and if you need some behaviour, try to see if there is an option that fits your needs\&. If you use a wrapper pipeline such as \fBmclblastline(1)\fP, you can ignore the \fB--parser\fP and \fB--parser-tag\fP options as they are provided by the wrapper\&. \fBmclpipeline\fP \fB--parser=\fPapplication (\fIdata parser\fP) \fB--parser-tag=\fPstr (\fIparse option transporter\fP) \fB[--whatif\fP (\fIdo not execute\fP)\fB]\fP .br \fB[--start-assemble\fP (\fIskip parse stage\fP)\fB]\fP .br \fB[--start-mcl\fP (\fIskip earlier stages\fP)\fB]\fP .br \fB[--start-format\fP (\fIskip earlier stages\fP)\fB]\fP .br \fB[--prepare-mcl\fP (\fIdo preparatory stages\fP)\fB]\fP .br \fB[--help\fP (\fIsummary of options\fP)\fB]\fP .br \fB[--xi=\fPsuf (\fIstrip suf from input file\fP)\fB]\fP .br \fB[--xo-dat=\fPsuf (\fIattach suf to parse output\fP)\fB]\fP .br \fB[--xo-ass=\fPsuf (\fIattach suf to assembly output\fP)\fB]\fP .br \fB[--xi-mcl=\fPsuf (\fIuse with --start-mcl\fP)\fB]\fP .br \fB[--xo-mcl=\fPsuf (\fIreplace mcl output suffix\fP)\fB]\fP .br \fB[--xa-mcl=\fPstr (\fIappend to mcl output suffix\fP)\fB]\fP .br \fB[--xe-mcl=\fPsuf (\fIappend to mcl output\fP)\fB]\fP .br \fB[--xo-fmt=\fPsuf (\fIattach suf to clmformat output\fP)\fB]\fP .br \fB[--ass-repeat=\fPstr (\fIassembly repeat option\fP)\fB]\fP .br \fB[--ass-nomap\fP (\fIignore map file\fP)\fB]\fP .br \fB[--ass-opt=\fPval (\fIassembly option transporter\fP)\fB]\fP .br \fB[--mcl-te=\fPnum (\fI#expansion threads\fP)\fB]\fP .br \fB[--mcl-I=\fPfloat (\fImcl inflation value\fP)\fB]\fP .br \fB[--mcl-i=\fPfloat (\fImcl initial inflation value\fP)\fB]\fP .br \fB[--mcl-l=\fPfloat (\fImcl initial loop length\fP)\fB]\fP .br \fB[--mcl-c=\fPfloat (\fImcl center value\fP)\fB]\fP .br \fB[--mcl-pi=\fPfloat (\fImcl pre-inflation value\fP)\fB]\fP .br \fB[--mcl-scheme=\fPi (\fImcl scheme index\fP)\fB]\fP .br \fB[--mcl-o=\fPfname (\fIdo not use\fP)\fB]\fP .br \fB[--mcl-opt=\fPval (\fImcl option transporter\fP)\fB]\fP .br \fB[--fmt-lump-count=\fPnum (\fIcollect formatted output\fP)\fB]\fP .br \fB[--fmt-opt\fP val (\fIclmformat option transporter\fP)\fB]\fP .br \fB[--fmt-tab\fP fname (\fIuse this tab file\fP)\fB]\fP .br \fB[--fmt-notab\fP (\fIignore tab file\fP)\fB]\fP .br .SH DESCRIPTION \fBmclpipeline\fP encapsulates a sequence of programs to be run on some input data in order to obtain clusterings and formatted output representing the clusterings, while maintaining unique file names and file name ensembles corresponding with differently parametrized runs\&. The script can behave in several ways\&. By default, the pipeline consists of the stages of \fIparsing\fP, \fIassembly\fP, \fIclustering\fP, and \fIformatting\fP\&. The parsing stage is to be represented by some parser script obeying the interface rules described below\&. The assembly stage is done by \fBmcxassemble(1)\fP, the clustering stage is done by \fBmcl(1)\fP, and the formatting stage is done by \fBclmformat(1)\fP\&. The script can also be put to simpler uses, e\&.g\&. letting the script take care of unique file names for differently parametrized mcl runs\&. In this case there is no need to specify either the parser or the data file, and subsequent invocations might look like this: .nf \fC mclpipeline --start-mcl= --mcl-I=1\&.6 --mcl-scheme=4 mclpipeline --start-mcl= --mcl-I=2\&.0 --mcl-scheme=4 mclpipeline --start-mcl= --mcl-I=2\&.4 --mcl-scheme=4 \&.\&. etc .fi \fR It is easiest if for each parser a wrapper script is written encapsulating the parser and \fBmclpipeline\fP\&. A mechanism is provided through which mclpipeline can recognize options that are meant to be passed to the parser\&. An example of such a wrapper script is the BLAST pipeline \fBmclblastline\fP that basically calls mclpipeline with the parameters \fB--parser\fP=\fBmcxdeblast\fP \fB--parser-tag\fP=\fBblast\fP\&. In this case the parser is \fBmcxdeblast\fP, and mclpipeline will pass any options of the forms \fB--blast-foo\fP and \fB--blast-bar=zut\fP to the parser (respectively as \fB--foo\fP and \fB--bar=zut\fP)\&. For a given data set the stages of parsing and assembling will often not need to be repeated, especially if there is a well established way of creating a matrix from the input data\&. In this case, usage will look like .nf \fC mclpipeline [parse/assembly options] --prepare-mcl mclpipeline [cluster options 1] --start-mcl mclpipeline [cluster options 2] --start-mcl mclpipeline [cluster options 3] --start-mcl \&.\&.\&. .fi \fR Note that \fBmclpipeline\fP will store the output of those runs in unique file names derived from the parametrizations\&. There are some options that affect the file names of intermediate results\&. In the above setup of repeated runs, if used in one run, they must be used in all runs, as \fBmclpipeline\fP uses them to compute the file names it needs\&. For the setup above, these options are \fB--xi\fP=\fIsuf\fP, \fB--xo-dat\fP=\fIsuf\fP, and \fB--xo-ass\fP=\fIsuf\fP\&. There are other ways of resuming the pipeline, and one must always take care that options starting with \fB--xi-\fP, \fB--xo-\fP, \fB--xa\fP, or \fB--xe\fP are repeated among preparatory and subsequent runs\&. These tags respectively mnemonize \fIextension in\fP, \fIextension out\fP, \fIextension append\fP, and \fIextension extra\fP\&. Should one want to experiment with various ways of creating input matrices, then \fBmclpipeline\fP supplies options to create unique file names and file name ensembles corresponding with different setups and parametrizations\&. These are \fB--xo-dat\fP=\fIsuf\fP for the parsing stage and \fB--xo-ass\fP=\fIsuf\fP for the assembly stage\&. mclpipeline \fIautomatically\fP generates unique file names for the cluster results, but it does not do so for the parse and assembly results\&. \fBParser interface requirements\fP .br The parser should recognize its last argument as a file name or as the base name of a file\&. It should produce the files \fCbase\&.raw\fP, \fCbase\&.hdr\fP, and preferably \fCbase\&.tab\fP and \fCbase\&.map\fP, where the base name \fCbase\fP is determined as described below\&. \fBmclpipeline\fP will pass its last argument to the parser\&. The parser should recognize the \fB--xi-dat\fP=\fIsuf\fP and \fB--xo-dat\fP=\fIsuf\fP options\&. If the first is present, it should try to strip of the suffix specified in the value and use the result as the initial part of the base name for the files it constructs\&. If stripping does not succeed, it must interpret as the base name and append the suffix in order to construct the name of the file it will try to read\&. If the \fB--xo-dat\fP=\fIsuf\fP option is present, it must append the suffix specified in the value to the base part as described above\&. The result is then the full base name to which the \fCraw\fP, \fChdr\fP, and other suffixes will be appended\&. \fBParser interface examples\fP .br .nf \fC --xi-dat=abc --xo-dat=xyz foo * parser reads foo\&.abc, writes foo\&.xyz\&.raw, foo\&.xyz\&.hdr et cetera\&. --xi-dat=abc --xo-dat=xyz foo\&.abc * idem --xo-dat=xyz foo\&.abc * parser reads foo\&.abc, writes foo\&.abc\&.xyz\&.raw et cetera\&. --xi-dat=abc foo\&.abc * parser reads foo\&.abc, writes foo\&.raw, foo\&.hdr et cetera\&. foo\&.abc * parser reads foo\&.abc, writes foo\&.abc\&.raw, foo\&.abc\&.hdr et cetera\&. .fi \fR \fBOutput file names construction\fP .br The files of primary interest are the mcl output file and the formatted output produced by clmformat\&. The pipeline constructs a file name for the mcl output in which several parameters are encoded\&. The first part of the file name is either the base name for the assembly stage, or simply the name of the input file, depending on whether the option \fB--xo-ass\fP=\fIsuf\fP was used or not\&. A suffix encoding key-value pairs is appended\&. By default it has the form \fCI\&.\&.s\&.\fP, e\&.g\&. \fCI20s2\fP\&. The latter examples denotes primary inflation value 2\&.0 and scheme 2\&. The pipeline will automatically append several other mcl parameters if they are used\&. These correspond with the pipeline options \fB--mcl-i\fP=\fIf\fP, \fB--mcl-l\fP=\fIi\fP, \fB--mcl-c\fP=\fIf\fP, and \fB--mcl-pi\fP=\fIf\fP, which in turn correspond with the mcl options \fB-i\fP\ \&\fIf\fP, \fB-l\fP\ \&\fIi\fP, \fB-c\fP\ \&\fIf\fP, and \fB-pi\fP\ \&\fIf\fP\&. The order of appending is alphabetical with capitals preceding lowercase, so a full example is \fCI25c30i35l2pi28s3\fP\&. .SH OPTIONS .ZI 2m "\fB--whatif\fP (\fIdo not execute\fP)" \& .br Shows only what would be done without executing it\&. Hugely useful! .in -2m .ZI 2m "\fB--start-assemble\fP (\fIskip parse stage\fP)" \& .br Skip the parse stage, assume the necessary files have been created in a previous run\&. .in -2m .ZI 2m "\fB--prepare-mcl\fP (\fIdo preparatory stages\fP)" \& .br Do the parsing and assembly stage, then quit\&. Useful if you want to do multiple cluster runs for a given graph - use \fB--start-mcl\fP .in -2m .ZI 2m "\fB--start-mcl\fP (\fIskip earlier stages\fP)" \& .br Immediately start the mcl stage\&. Assume the necessary files have been created in a previous run\&. \fBNOTE\fP .br This option can be used as \fB--start-mcl\fP=\fIfname\fP\&. In this case, no final file name argument need be given, and mcl will use \fIfname\fP as the file name for its input\&. The difference with \fB--start-mcl\fP is that the latter will assume it is picking up the results of a previous run\&. The names of those results might include suffixes corresponding with the parse and assembly stage (cf\&. \fB--xo-dat\fP and \fB--xo-ass\fP)\&. If you are not clear on this (and you should not be), exercise the \fB--whatif\fP option to be sure\&. .in -2m .ZI 2m "\fB--start-format\fP (\fIskip earlier stages\fP)" \& .br Immediately start the format stage\&. Assume the necessary files have been created in a previous run\&. .in -2m .ZI 2m "\fB--help\fP (\fIsummary of options\fP)" \& .br Print a terse summary of options\&. .in -2m .ZI 2m "\fB--xi\fP suf (\fIstrip suffix from data file\fP)" \& .br In normal usage, this will strip the specified suffix from the data file to obtain the base name for further output\&. When used with \fB--start-mcl\fP=\fIfname\fP the same behaviour is applied to the mcl input file name specified in \fIfname\fP\&. .in -2m .ZI 2m "\fB--xo-dat\fP suf (\fIattach suf to parse output\fP)" \& .br This suffix will be attached to the base name of the parse output\&. It can be used to distinguish between different parse parametrizations if this is applicable\&. .in -2m .ZI 2m "\fB--xo-ass\fP suf (\fIattach suf to assembly output\fP)" \& .br This suffix will be attached to the base name of the assembly output\&. It can be used to distinguish between different assembly parametrizations if this is applicable\&. .in -2m .ZI 2m "\fB--xo-mcl\fP suf (\fIreplace mcl output suffix\fP)" \& .br This suffix will be used instead of the suffix by default created by the pipeline\&. .in -2m .ZI 2m "\fB--xa-mcl\fP str (\fIappend to mcl output suffix\fP)" \& .br This string will be appended to the suffix by default created by the pipeline\&. .in -2m .ZI 2m "\fB--xe-mcl\fP suf (\fIappend to mcl output\fP)" \& .br This string will be appended as a single suffix to the output base name before mclpipeline appends its own suffix\&. .in -2m .ZI 2m "\fB--xo-fmt\fP suf (\fIattach suf to clmformat output\fP)" \& .br This suffix will be used instead of the suffix by default used by the formatting stage\&. .in -2m .ZI 2m "\fB--ass-repeat\fP str (\fIassembly repeat option\fP)" \& .br Corresponds with the \fBmcxassemble\fP \fB-r\fP\ \&\fImode\fP option\&. Refer to the \fBmcxassemble(1)\fP manual\&. .in -2m .ZI 2m "\fB--ass-opt\fP val (\fIassembly option transporter\fP)" \& .br Transfer \fB-opt\fP\ \&\fIval\fP to \fBmcxassemble\fP\&. .in -2m .ZI 2m "\fB--ass-nomap\fP (\fIignore map file\fP)" \& .br Either no map file is present or it should be ignored\&. For parsers that don\&'t write map files\&. .in -2m .ZI 2m "\fB--mcl-I\fP float (\fImcl inflation value\fP)" \& .br The (main) inflation value mcl should use\&. \fIThis is the primary mcl option\fP\&. .in -2m .ZI 2m "\fB--mcl-scheme\fP i (\fImcl scheme index\fP)" \& .br The scheme index to use\&. This options is also important\&. Refer to the \fBmcl(1)\fP manual\&. .in -2m .ZI 2m "\fB--mcl-te\fP num (\fI#expansion threads\fP)" \& .br The number of threads \fBmcl\fP should use\&. .in -2m .ZI 2m "\fB--mcl-i\fP float (\fImcl initial inflation value\fP)" \& .br The initial inflation value mcl should use\&. Only for fine-tuning or testing\&. .in -2m .ZI 2m "\fB--mcl-l\fP float (\fImcl initial loop length\fP)" \& .br The length of the loop in which initial inflation is applied\&. By default zero\&. .in -2m .ZI 2m "\fB--mcl-c\fP float (\fImcl center value\fP)" \& .br The center value\&. One may attempt to affect granularity by exercising this option, which controls the loop weights in the input matrix\&. Refer to the \fBmcl(1)\fP manual\&. .in -2m .ZI 2m "\fB--mcl-pi\fP float (\fImcl pre-inflation value\fP)" \& .br Pre-inflation, another option which may possibly affect granularity by changing the input matrix\&. It makes the edge weight distribution either more or less homogeneous\&. Refer to the \fBmcl(1)\fP manual\&. .in -2m .ZI 2m "\fB--mcl-o\fP fname (\fIdo not use\fP)" \& .br Set the mcl output name\&. .in -2m .ZI 2m "\fB--mcl-opt\fP val (\fImcl option transporter\fP)" \& .br Transfer \fB-opt\fP\ \&\fIval\fP to \fBmcl\fP\&. .in -2m .ZI 2m "\fB--fmt-dump-stats\fP (\fIadd simple measures to dump file\fP)" \& .br This adds some simple performance measures to the dump file\&. For each cluster, five columns proceed the label listing\&. These are the cluster ID, the number of elements in the cluster, the projection (percentage of within-cluster edge weight relative to total outgoing edge weight), the efficiency of the cluster (which is the average of the efficiency of all its nodes), and the maximum efficiency (average of the max-efficiency of all the nodes)\&. Look into the \fBclmformat manual\fP for more information on and references to the efficiency measures\&. .in -2m .ZI 2m "\fB--fmt-fancy\fP (\fIcreate detailed output (requires zoem)\fP)" \& .br Creates extensive description of node/cluster and cluster/cluster relationships\&. .in -2m .ZI 2m "\fB--fmt-lump-count\fP num (\fIcollect formatted output\fP)" \& .br Collect clusters in the same file until the total number of nodes has exceeded \fInum\fP (in the formatted output)\&. Only meaninful when \fB--fmt-fancy\fP is given\&. .in -2m .ZI 2m "\fB--fmt-tab\fP (\fIuse this tab file\fP)" \& .br Explicitly specify the tab file to use\&. .in -2m .ZI 2m "\fB--fmt-notab\fP (\fIignore tab file\fP)" \& .br Either no tab file is present or it should be ignored\&. For parsers that don\&'t write tab files\&. .in -2m .ZI 2m "\fB--fmt-opt\fP val (\fIclmformat option transporter\fP)" \& .br Transfer \fB-opt\fP\ \&\fIval\fP to \fBclm format\fP\&. .in -2m .SH AUTHOR Stijn van Dongen .SH SEE ALSO \fBmcxdeblast(1)\fP, \fBmclblastline(1)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. With default settings, \fBmclpipeline\fP depends on the presence of \fBzoem\fP\&. It can be obtained from http://micans\&.org/zoem/ \&. mcl-12-135/doc/mcl.ps0000644000402500021140000045165111754271042011174 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:14 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 17 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F/F1 10.95/Times-Bold@0 SF -.219 <4e41>20 84 S<4d45>.219 E F0<6d636c20ad20546865204d61726b>100 96 Q .3 -.15<6f762043>-.1 H<6c757374657220416c676f726974686d2c20616b612074686520 4d434c20616c676f726974686d2e>.15 E .984 <546869732070726f6772616d20696d706c656d656e7473>100 120 R/F2 10 /Times-Bold@0 SF<6d636c>3.483 E F0 3.483<2c6163>C .983<6c75737465722061 6c676f726974686d20666f72206772617068732e20412073696e676c6520706172616d65 74657220636f6e74726f6c7320746865>-3.483 F 1.061<6772616e756c617269747920 6f6620746865206f757470757420636c7573746572696e672c206e616d656c7920746865> 100 132 R F2<2d49>3.562 E/F3 10/Times-Italic@0 SF<696e8d6174696f6e>2.5 E F0 1.062<6f7074696f6e2064657363726962656420667572746865722062656c6f> 3.562 F 3.562<772e20496e>-.25 F 1.501<7374616e64617264207573616765206f66 207468652070726f6772616d207468697320706172616d6574657220697320746865206f 6e6c79206f6e652074686174206d61792072657175697265206368616e67696e672e2042 79>100 144 R<646566>100 156 Q .605<61756c742069742069732073657420746f> -.1 F .605<322e3020616e642074686973206973206120676f6f642077>2.5 F .605 <617920746f2073746172742e20496620796f752077>-.1 F .605<616e7420746f2065> -.1 F .605<78706c6f726520636c75737465722073747275637475726520696e>-.15 F .72<6772617068732077697468204d434c2c2076>100 168 R .719<6172792074686973 20706172616d6574657220746f206f627461696e20636c7573746572696e677320617420 646966>-.25 F .719<666572656e74206c65>-.25 F -.15<7665>-.25 G .719 <6c73206f66206772616e756c61726974792e2041>.15 F <676f6f6420736574206f66207374617274696e672076>100 180 Q <616c75657320697320312e342c20322c20342c20616e6420362e>-.25 E .758 <5468652070726f6772616d20686173206120726174686572206c6172>100 204 R .758 <676520736574206f66206f7074696f6e732e2045786365707420666f72>-.18 F F2 <2d49>3.258 E F0 .758<6e6f6e65206166>3.258 F .759 <66656374732074686520636c7573746572696e67206d6574686f64>-.25 F .669<6974 73656c662e20546865206f74686572206f7074696f6e732061726520666f7220612076> 100 216 R .669<617269657479206f6620617370656374732c20737563682061732073 74756479206f662074686520756e6465726c79696e67204d434c2070726f2d>-.25 F 1.444<636573732028692e652e>100 228 R 1.444 <64756d70696e67206f662069746572616e6473292c206e657477>6.444 F 1.444<6f72 6b2070726570726f63657373696e672028696e636f72706f726174656420666f72206566> -.1 F<8c6369656e63>-.25 E 1.444<79292c207265736f75726365>-.15 F 1.24 <616c6c6f636174696f6e206f7074696f6e732028666f72206c6172>100 240 R 1.24< 67652d7363616c6520616e616c79736573292c206f7574707574206e616d696e6720616e 6420706c6163656d656e742c206f757470757420666f726d617474696e672c>-.18 F <73657474696e67206f662076>100 252 Q<6572626f73697479206c65>-.15 E -.15 <7665>-.25 G<6c732c20616e6420736f206f6e2e>.15 E<4e657477>100 276 Q .607< 6f726b20636f6e737472756374696f6e20616e6420726564756374696f6e20746563686e 69717565732073686f756c64206e6f7420626520636f6e73696465726564206173207061 7274206f66206120636c7573746572696e67>-.1 F .513 <616c676f726974686d2e204e65>100 288 R -.15<7665>-.25 G .513<727468656c65 737320706172746963756c617220746563686e6971756573206d61792062656e658c7420 706172746963756c6172206d6574686f6473206f72206170706c69636174696f6e732e20 496e>.15 F .734<6d636c206d616e>100 300 R 3.234<7974>-.15 G .734<72616e73 666f726d6174696f6e73206172652061636365737369626c65207468726f756768207468 65>-3.234 F F2<2d7466>3.234 E F0 .734<6f7074696f6e2e2049742063616e206265 207573656420666f72206564676520776569676874>3.234 F .181<7472616e73666f72 6d6174696f6e7320616e642073656c656374696f6e2c2061732077656c6c206173207472 616e73666f726d6174696f6e73207468617420616374206f6e2061206772617068206173 20612077686f6c652e>100 312 R .18<497420697320666f72>5.18 F -.15<6578>100 324 S 1.592<616d706c6520706f737369626c6520746f2072656d6f>.15 F 1.892 -.15<76652065>-.15 H 1.592<646765732077697468207765696768742062656c6f> .15 F 4.092<7730>-.25 G 1.592<2e372062792069737375696e67>-4.092 F F2 <2d74662027677128302e372927>4.093 E F0 4.093<2c77>C 1.593 <6865726520746865>-4.093 F .91 <71756f74657320617265206e656365737361727920746f20707265>100 336 R -.15 <7665>-.25 G .909<6e7420746865207368656c6c2066726f6d20696e74657270726574 696e672074686520706172656e7468657365732e20546865206f7074696f6e2061636365 707473>.15 F 1.808 <6d6f726520636f6d706c6963617465642073657175656e6365732c2073756368206173> 100 348 R F2<2d74662027677128302e37292c616464282d302e372927>4.308 E F0 4.308<2e54>C 1.808 <6869732063617573657320616c6c2072656d61696e696e672065646765>-4.308 F .962<7765696768747320746f206265207368696674656420746f207468652072616e67 65205b302d302e335d2c20617373756d696e6720746861742074686520696e7075742063 6f6e7461696e7320636f7272656c6174696f6e732e204d616e>100 360 R<79>-.15 E .204<6d6f7265207472616e73666f726d6174696f6e732061726520737570706f727465 642c20617320646f63756d656e74656420696e>100 372 R F2<6d6378696f283529> 2.705 E F0 2.705<2e45>C .205 <78616d706c6573206f662067726170682d77696465207472616e732d>-2.705 F .108 <666f726d6174696f6e7320617265>100 384 R/F4 10/Courier@0 SF <27236b6e6e283c6e756d3e2927>2.608 E F0<616e64>2.608 E F4 <27236365696c6e62283c6e756d3e2927>2.608 E F0 2.608<2e54>C .108 <6865208c727374206f6e6c79206b>-2.608 F .108 <656570732074686f7365206564676573>-.1 F 1.027 <74686174206f6363757220696e20746865206c697374206f6620746f702d>100 396 R F4<3c6e756d3e>A F0 1.028<6564676573206f66206869676865737420776569676874 20696e20626f7468206f662069747320696e636964656e74206e6f6465732e20546865> 3.528 F .521<7365636f6e642072656d6f>100 408 R -.15<7665>-.15 G 3.021 <7365>.15 G .521 <646765732066726f6d206e6f646573206f662068696768657374206465>-3.021 F .521<67726565208c7273742c2070726f63656564696e6720756e74696c20616c6c206e 6f6465206465>-.15 F .52<6772656573207361742d>-.15 F 1.1 <6973667920746865206769>100 420 R -.15<7665>-.25 G 3.6<6e74>.15 G 3.6 <68726573686f6c642e20546865>-3.6 F F2<2d7069>3.6 E F0 1.101<287072652d69 6e8d6174696f6e29206f7074696f6e2063616e206265207573656420746f20696e637265 6173652074686520636f6e747261737420696e>3.601 F 1.007<656467652077656967 6874732e2054686973206d61792062652075736566756c207768656e20636c7573746572 696e67732061726520636f6172736520616e64208c6e652d677261696e656420636c7573 746572696e677320617265>100 432 R<646966>100 444 Q <8c63756c7420746f206f627461696e2e>-.25 E F1<47455454494e47205354>20 460.8 Q<4152>-.986 E<544544>-.438 E F0 1.028<546865726520617265207477> 100 472.8 R 3.528<6f6d>-.1 G 1.028<61696e206d6f646573206f6620696e>-3.528 F -.2<766f>-.4 G 1.029 <636174696f6e2e20546865206d6f73742061636365737369626c65206973>.2 F F3 1.029<6c6162656c206d6f6465>3.529 F F0 1.029 <776869636820617373756d65732061>3.529 F 1.767 <666f726d617420616c7465726e617469>100 484.8 R -.15<7665>-.25 G 1.767<6c 792063616c6c6564206c6162656c20696e707574206f72204142432d666f726d61742e> .15 F 1.766<54686520696e707574206973207468656e2061208c6c65206f7220737472 65616d20696e>6.767 F .918<77686963682065616368206c696e6520656e636f646573 20616e206564676520696e207465726d73206f66207477>100 496.8 R 3.418<6f6c> -.1 G .919<6162656c7320287468652027412720616e6420746865202742272920616e 642061206e756d65726963616c>-3.418 F -.25<7661>100 508.8 S<6c756520287468 6520274327292c20616c6c20736570617261746564206279207768697465207370616365 2e20546865206d6f73742062617369632065>.25 E <78616d706c65206f6620757361676520697320746869733a>-.15 E F2<6d636c>118 532.8 Q F4<3c2d7c666e616d653e>6 E F2 3.5<2d2d616263202d6f>6 F F3 <666e616d652d6f7574>6 E F0 .387<546865206f7574707574206973207468656e2061 208c6c652077686572652065616368206c696e65206973206120636c7573746572206f66 207461622d736570617261746564206c6162656c732e>100 556.8 R .387 <496620636c7573746572696e672069732070617274>5.387 F .38 <6f662061206c6172>100 568.8 R .38<6765722077>-.18 F<6f726b8d6f>-.1 E 2.88<7777>-.25 G .381<6865726520697420697320646573697261626c6520746f2061 6e616c79736520616e6420636f6d70617265206d756c7469706c6520636c757374657269 6e67732c207468656e206974206973>-2.88 F 2.575<6167>100 580.8 S .075 <6f6f64206964656120746f20757365206e617469>-2.575 F .375 -.15<7665206d> -.25 H .075<6f646520726174686572207468616e20414243>.15 F 2.575 <6d6f64652e20546865>2.5 F .075 <726561736f6e20666f7220746869732069732074686174206e617469>2.575 F .375 -.15<7665206d>-.25 H .075<6f6465206973>.15 F .294<756e64657273746f6f6420 627920616c6c2070726f6772616d7320696e20746865206d636c2073756974652e204974 2069732061206d6f726520737472696e67656e7420616e6420756e616d626967756f7573 20666f726d61742c20616e64>100 592.8 R .182 <68656e6365206d6f7265207375697461626c6520666f7220646174612065>100 604.8 R 2.682<786368616e67652e20546865>-.15 F .182 <726561646572206973207265666572656420746f>2.682 F F2<636c6d7072>2.682 E <6f746f636f6c73283529>-.18 E F0 .182<666f72206d6f726520696e666f72>2.682 F<2d>-.2 E<6d6174696f6e2e>100 616.8 Q F1<53594e4f50534953>20 633.6 Q F0 1.116<5468652065>100 645.6 R 1.116<78616d706c6520696e>-.15 F -.2<766f> -.4 G 1.116<636174696f6e2062656c6f>.2 F 3.616<7761>-.25 G 1.116 <7373756d6573206d617472697820696e7075742c2061732065>-3.616 F 1.116 <78706c61696e65642061626f>-.15 F 1.416 -.15<76652061>-.15 H 1.117 <6e642064657363726962656420696e20746865>.15 F F2<6d6378696f283529>100 657.6 Q F0 .832<73656374696f6e2e20537769746368696e6720746f206c6162656c20 6d6f64652072657175697265732074686520696e707574208c6c6520746f20626520696e 204142432d666f726d617420616e6420746865>3.332 F <6164646974696f6e206f6620746865>100 669.6 Q F2<2d2d616263>2.5 E F0 <6f7074696f6e2e>2.5 E F2<6d636c>100 693.6 Q F0<3c2d7c666e616d653e>2.5 E F2<5b2d49>2.5 E F0<3c6e756d3e2028>2.5 E F3<696e8d6174696f6e>A F0<29>A F2 2.5<5d5b>C<2d6f>-2.5 E F0<3c7374723e2028>2.5 E F3<666e616d65>A F0<29>A F2<5d>A F0 .761<5468657365206f7074696f6e732061726520737566>100 717.6 R .761<8c6369656e7420696e2039352070657263656e74206f6620746865206361736573 206f72206d6f72652e20546865208c727374206172>-.25 F .762 <67756d656e74206d75737420626520746865>-.18 F 1.686<6e616d65206f66206120 8c6c6520636f6e7461696e696e6720612067726170682f6d617472697820696e20746865 206d636c20696e70757420666f726d61742c206f7220612068>100 729.6 R 1.685 <797068656e20746f20726561642066726f6d>-.05 F<6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F<535444494e2e2057>100 84 Q <697468207265737065637420746f20636c7573746572696e672c20746865>-.4 E/F1 10/Times-Bold@0 SF<2d49>2.5 E F0 <6f7074696f6e20697320666f72656d6f73742072656c65>2.5 E -.25<7661>-.25 G <6e742e>.25 E .835<5468652066756c6c206c697374696e67206f66>100 108 R F1 <6d636c>3.335 E F0 .835<6f7074696f6e732069732073686f>3.335 F .835 <776e20667572746865722062656c6f>-.25 F 2.135 -.65<772c2073>-.25 H .835< 657061726174656420696e746f20706172747320636f72726573706f6e64696e67207769 7468>.65 F .952<66756e6374696f6e616c206173706563747320737563682061732063 6c7573746572696e672c20746872656164696e672c2076>100 120 R <6572626f73697479>-.15 E 3.452<2c6e>-.65 G<657477>-3.452 E .952 <6f726b2070726570726f63657373696e672c207072756e696e6720616e64>-.1 F<7265 736f75726365206d616e6167656d656e742c206175746f6d61746963206f757470757420 6e616d696e672c20616e642064756d70696e672e>100 132 Q F1 <426173656c696e6520636c7573746572696e67206f7074696f6e73>100 156 Q <5b2d49>100 168 Q F0<3c6e756d3e2028>2.5 E/F2 10/Times-Italic@0 SF <696e8d6174696f6e>A F0<29>A F1 2.5<5d5b>C<2d6f>-2.5 E F0 <3c666e616d653e2028>2.5 E F2<666e616d65>A F0<29>A F1<5d>A <4f7574707574206f7074696f6e73>100 192 Q<5b2d6f646972>100 204 Q F0 <3c646e616d653e2028>2.5 E F2<646972>A<6563746f7279>-.37 E F0<29>A F1 2.5 <5d5b>C<2d2d64>-2.5 E F0<28>2.5 E F2<75736520696e70757420646972>A <6563746f727920666f72206f7574707574>-.37 E F0<29>A F1<5d>A <496e707574206f7074696f6e73>100 228 Q<5b2d2d616263>100 240 Q F0<28>3.623 E F2 -.2<6578>C 1.123<706563742f7772697465206c6162656c73>.2 F F0<29>A F1 3.623<5d5b>C<2d2d736966>-3.623 E F0<28>3.623 E F2 -.2<6578>C 1.123 <706563742f7772697465206c6162656c73>.2 F F0<29>A F1 3.623<5d5b>C <2d2d657463>-3.623 E F0<28>3.624 E F2 -.2<6578>C 1.124 <706563742f7772697465206c6162656c73>.2 F F0<29>A F1 3.624<5d5b>C <2d2d6578706563742d>-3.624 E -.1<7661>100 252 S<6c756573>.1 E F0<28>2.5 E F2<736966206f722065746320737472>A <65616d20636f6e7461696e732076616c756573>-.37 E F0<29>A F1 2.5<5d5b>C <2d7573652d746162>-2.5 E F0<3c666e616d653e2028>2.5 E F2 <757365206d617070696e6720746f207772697465>A F0<29>A F1<5d>A -.74<5472> 100 276 S<616e7366>.74 E<6f726d206f7074696f6e73>-.25 E<5b2d7466>100 288 Q F0 1.041<3c74662d737065633e2028>3.541 F F2<7472>A 1.041 <616e73666f726d20696e707574206d61747269782076616c756573>-.15 F F0<29>A F1 3.541<5d5b>C<2d6162632d7466>-3.541 E F0 1.041<3c74662d737065633e2028> 3.541 F F2<7472>A 1.041<616e73666f726d20696e70757420737472>-.15 F 1.04 <65616d2076616c2d>-.37 F<756573>100 300 Q F0<29>A F1 3.663<5d5b>C <2d2d6162632d6e65672d6c6f673130>-3.663 E F0<28>3.663 E F2<74616b>A 3.663 <656c>-.1 G -.1<6f67>-3.663 G 1.163<3130206f6620737472>.1 F 1.163 <65616d2076616c7565732c206e65>-.37 F 1.163<67617465207369676e>-.4 F F0 <29>A F1 3.664<5d5b>C<2d2d6162632d6e65672d6c6f67>-3.664 E F0<28>3.664 E F2<74616b>A 3.664<656c>-.1 G 1.364 -.1<6f67206f>-3.664 H<66>.1 E<737472> 100 312 Q<65616d2076616c7565732c206e65>-.37 E<67617465207369676e>-.4 E F0<29>A F1<5d>A<4361636865206f7074696f6e73>100 336 Q <5b2d77726974652d6772617068>100 348 Q F0 2.203<3c666e616d653e2028>4.703 F F2 2.203<7772697465206772>B<617068>-.15 E F0<29>A F1 4.703<5d5b>C <2d77726974652d677261706878>-4.703 E F0 2.202<3c666e616d653e2028>4.702 F F2 2.202<7772697465207472>B 2.202<616e73666f726d6564206772>-.15 F <617068>-.15 E F0<29>A F1<5d>A<5b2d77726974652d657870616e646564>100 360 Q F0<3c666e616d653e2028>2.5 E F2<77726974652065>A<7870616e646564206772> -.2 E<617068>-.15 E F0<29>A F1 2.5<5d5b>C<2d2d77726974652d6c696d6974> -2.5 E F0<28>2.5 E F2<7772697465206d636c207072>A<6f63657373206c696d6974> -.45 E F0<29>A F1<5d>A <496e707574206d616e6970756c6174696f6e206f7074696f6e73>100 384 Q <5b2d7069>100 396 Q F0 .115<3c6e756d3e2028>2.615 F F2<7072>A <652d696e8d6174696f6e>-.37 E F0<29>A F1 2.615<5d5b>C<2d7068>-2.615 E F0 .116<3c6e756d3e2028>2.615 F F2<7072>A .116 <652d696e8d6174696f6e2c206d61782d626f756e64>-.37 F F0<29>A F1 2.616 <5d5b>C<2d6966>-2.616 E F0 .116<3c6e756d3e2028>2.616 F F2 <73746172742d696e8d6174696f6e>A F0<29>A F1<5d>A <5b2d2d646973636172642d6c6f6f70733d>100 408 Q F0 1.413<3c792f6e3e2028>B F2<646973636172>A 3.913<6479>-.37 G 1.413 <2f6e206c6f6f707320696e20696e707574>-3.913 F F0<29>A F1 3.913<5d5b>C <2d2d73756d2d6c6f6f7073>-3.913 E F0<28>3.912 E F2 1.412 <736574206c6f6f707320746f2073756d206f66206f74686572>B<6172>100 420 Q <63732077656967687473>-.37 E F0<29>A F1 2.5<5d5b>C<2d63>-2.5 E F0 <3c6e756d3e2028>2.5 E F2 -1.91 -.37<72652077>D<6569676874206c6f6f7073> .37 E F0<29>A F1<5d>A<436c7573746572696e67207072>100 444 Q <6f63657373696e67206f7074696f6e73>-.18 E<5b2d736f7274>100 456 Q F0 1.186 <3c7374723e2028>3.686 F F2 1.186<736f7274206d6f6465>B F0<29>A F1 3.687 <5d5b>C<2d6f>-3.687 E -.1<7665>-.1 G<726c6170>.1 E F0 1.187 <3c7374723e2028>3.687 F F2 -.1<6f76>C 1.187<65726c6170206d6f6465>.1 F F0 <29>A F1 3.687<5d5b>C<2d2d66>-3.687 E<6f72>-.25 E <63652d636f6e6e65637465643d>-.18 E F0 1.187<3c792f6e3e2028>B F2 <616e616c797a65>A<636f6d706f6e656e7473>100 468 Q F0<29>A F1 6.308<5d5b>C <2d2d636865636b2d636f6e6e65637465643d>-6.308 E F0 3.808<3c792f6e3e2028>B F2 3.808<616e616c797a6520636f6d706f6e656e7473>B F0<29>A F1 6.308<5d5b>C <2d2d616e616c797a653d>-6.308 E F0 3.808<3c792f6e3e2028>B F2 <706572666f72>A<2d>-.2 E<6d616e6365206372697465726961>100 480 Q F0<29>A F1 2.5<5d5b>C<2d2d73686f>-2.5 E<772d6c6f673d>-.1 E F0<3c792f6e3e2028>A F2<73686f77206c6f>A<67>-.1 E F0<29>A F1<5d>A -1<5665>100 504 S <72626f73697479206f7074696f6e73>1 E<5b2d71>100 516 Q F0 1.412 <3c737065633e2028>3.912 F F2<6c6f>A 3.913<676c>-.1 G -.15<6576>-3.913 G <656c73>.15 E F0<29>A F1 3.913<5d5b>C<2d76>-3.913 E F0 1.413 <3c7374723e2028>3.913 F F2 1.413<766572626f736974792074797065206f6e>B F0 <29>A F1 3.913<5d5b>C<2d56>-3.913 E F0 1.413<3c7374723e2028>3.913 F F2 1.413<766572626f736974792074797065206f66>B<66>-.18 E F0<29>A F1 3.913 <5d5b>C<2d2d73686f>-3.913 E<77>-.1 E F0<28>100 528 Q F2 <7072696e742028736d616c6c29206d6174726963657320746f20736372>A<65656e> -.37 E F0<29>A F1<5d>A<546872>100 552 Q<656164206f7074696f6e73>-.18 E <5b2d7465>100 564 Q F0<3c696e743e2028>2.5 E F2<2365>A <7870616e73696f6e20746872>-.2 E<65616473>-.37 E F0<29>A F1<5d>A<4f757470 7574208c6c65206e616d6520616e6420616e6e6f746174696f6e206f7074696f6e73>100 588 Q<5b2d6f>100 600 Q F0 .462<3c7374723e2028>2.962 F F2<666e616d65>A F0 <29>A F1 2.962<5d5b>C<2d6170>-2.962 E F0 .461<3c7374723e2028>2.961 F F2 .461<75736520737472206173208c6c65206e616d65207072>B<658c78>-.37 E F0<29> A F1 2.961<5d5b>C<2d6161>-2.961 E F0 .461<3c7374723e2028>2.961 F F2 .461 <617070656e642073747220746f20737566>B<8c78>-.18 E F0<29>A F1 2.961<5d5b> C<2d617a>-2.961 E F0<28>100 612 Q F2 .026 <73686f77206f7574707574208c6c65206e616d6520616e642065>B<786974>-.2 E F0 <29>A F1 2.527<5d5b>C<2d6178>-2.527 E F0<28>2.527 E F2 .027 <73686f77206f757470757420737566>B .027<8c7820616e642065>-.18 F<786974> -.2 E F0<29>A F1 2.527<5d5b>C<2d616e6e6f74>-2.527 E F0 .027 <3c7374723e2028>2.527 F F2 .027<64756d6d7920616e6e6f2d>B <746174696f6e206f7074696f6e>100 624 Q F0<29>A F1<5d>A <44756d70206f7074696f6e73>100 648 Q<5b2d64756d702d696e746572>100 660 Q -.1<7661>-.1 G<6c>.1 E F0 1.333<3c693a6a3e2028>3.833 F F2 1.333 <64756d7020696e74657276616c>B F0<29>A F1 3.833<5d5b>C <2d64756d702d6d6f64756c6f>-3.833 E F0 1.332<3c696e743e2028>3.832 F F2 1.332<64756d70206d6f64756c6f>B F0<29>A F1 3.832<5d5b>C <2d64756d702d7374656d>-3.832 E F0 1.957<3c7374656d3e2028>100 672 R F2 1.957<64756d70208c6c65207374656d>B F0<29>A F1 4.457<5d5b>C<2d64756d70> -4.457 E F0 1.957<3c7374723e2028>4.457 F F2<74797065>A F0<29>A F1 4.457 <5d5b>C<2d646967697473>-4.457 E F0 1.958<3c696e743e2028>4.457 F F2 1.958 <7072696e74696e67207072>B<65636973696f6e>-.37 E F0<29>A F1 4.458<5d5b>C <2d2d77726974652d>-4.458 E<62696e617279>100 684 Q F0<28>2.5 E F2 <7772697465206d6174726963657320696e2062696e61727920666f726d6174>A F0<29> A F1<5d>A<496e66>100 708 Q 2.5<6f6f>-.25 G<7074696f6e73>-2.5 E <5b2d2d6a7572792d63686172746572>100 720 Q F0<28>4.413 E F2 -.2<6578>C 1.913<706c61696e73206a757279>.2 F F0<29>A F1 4.412<5d5b>C<2d2d76>-4.412 E<657273696f6e>-.1 E F0<28>4.412 E F2 1.912<73686f7720766572>B<73696f6e> -.1 E F0<29>A F1 4.412<5d5b>C<2d686f>-4.412 E<772d6d7563682d72616d>-.1 E F0 4.412<6b28>4.412 G F2 1.912<52414d207570706572>-4.412 F F0 <6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<32> 202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F/F1 10/Times-Italic@0 SF <626f756e64>100 84 Q F0<29>A/F2 10/Times-Bold@0 SF 3.631<5d5b>C<2d68> -3.631 E F0<28>3.631 E F1 1.131 <6d6f737420696d706f7274616e74206f7074696f6e73>B F0<29>A F2 3.632<5d5b>C <2d2d68656c70>-3.632 E F0<28>3.632 E F1 1.132<6f6e652d6c696e652064657363 72697074696f6e20666f7220616c6c206f7074696f6e73>B F0<29>A F2 3.632<5d5b>C <2d7a>-3.632 E F0<28>3.632 E F1<73686f77>A<63757272>100 96 Q 2.032 <656e742073657474696e6773>-.37 F F0<29>A F2 4.532<5d5b>C<2d617a>-4.532 E F0<28>4.532 E F1 2.032 <73686f77206f7574707574208c6c65206e616d6520616e642065>B<786974>-.2 E F0 <29>A F2 4.531<5d5b>C<2d6178>-4.531 E F0<28>4.531 E F1 2.031 <73686f77206f757470757420737566>B 2.031<8c7820616e642065>-.18 F<786974> -.2 E F0<29>A F2<5d>A<5b2d2d73686f>100 108 Q<772d736368656d6573>-.1 E F0 <28>2.5 E F1<73686f772072>A<65736f7572>-.37 E<6365207363>-.37 E <68656d6573>-.15 E F0<29>A F2<5d>A <496d706c656d656e746174696f6e206f7074696f6e73>100 132 Q <5b2d737061727365>100 144 Q F0<3c696e743e2028>2.5 E F1<73706172>A <7365206d6174726978206d756c7469706c69636174696f6e20746872>-.1 E <6573686f6c64>-.37 E F0<29>A F2<5d>A<5072756e696e67206f7074696f6e73>100 168 Q F0 .364<54686520666f6c6c6f>100 180 R .364 <77696e67206f7074696f6e7320616c6c207065727461696e20746f207468652076>-.25 F .364<6172696f7573207072756e696e6720737472617465>-.25 F .364 <6769657320746861742063616e20626520656d706c6f>-.15 F .364<796564206279> -.1 F F2<6d636c>2.864 E F0<2e>A<546865>100 192 Q 3.284<7961>-.15 G .783 <72652064657363726962656420696e20746865>-3.284 F F2<5052>3.283 E .783 <554e494e47204f5054494f4e53>-.3 F F0 .783<73656374696f6e2c206163636f6d70 616e6965642062792061206465736372697074696f6e206f6620746865>3.283 F .017 <6d636c207072756e696e6720737472617465>100 204 R 2.517<67792e204966>-.15 F .018<796f75722067726170687320617265206875676520616e6420796f75206861> 2.517 F .318 -.15<76652061>-.2 H 2.518<6e61>.15 G .018 <7070657469746520666f722074756e696e672c206861>-2.518 F .318 -.15 <76652061206c>-.2 H .018<6f6f6b206174>.15 F<74686520666f6c6c6f>100 216 Q <77696e673a>-.25 E F2<5b2d736368656d65>100 240 Q F0 .479<3c696e743e2028> 2.979 F F1 -.37<7265>C<736f7572>.37 E .479<6365207363>-.37 F<68656d65> -.15 E F0<29>A F2 2.979<5d5b>C<2d72>-2.979 E<65736f7572>-.18 E<6365>-.18 E F0 .479<3c696e743e2028>2.979 F F1<706572>A .479<2d6e6f64652072>-.2 F <65736f7572>-.37 E .479<6365206d6178696d756d>-.37 F F0<29>A F2 2.979 <5d5b>C<2d70>-2.979 E F0<3c6e756d3e>2.979 E<28>100 252 Q F1<6375746f66>A <66>-.18 E F0<29>A F2 3.293<5d5b>C<2d50>-3.293 E F0 .793<3c696e743e2028> 3.293 F F1<312f6375746f66>A<66>-.18 E F0<29>A F2 3.293<5d5b>C<2d53> -3.293 E F0 .793<3c696e743e2028>3.293 F F1 .793 <73656c656374696f6e206e756d626572>B F0<29>A F2 3.293<5d5b>C<2d52>-3.293 E F0 .794<3c696e743e2028>3.294 F F1 -.37<7265>C<636f>.37 E .794 <76657279206e756d626572>-.1 F F0<29>A F2 3.294<5d5b>C<2d706374>-3.294 E F0 1.704<3c696e743e2028>100 264 R F1 -.37<7265>C<636f>.37 E 1.704 <76657220706572>-.1 F<63656e7461>-.37 E -.1<6765>-.1 G F0<29>.1 E F2 4.204<5d5b>C<2d776172>-4.204 E<6e2d706374>-.15 E F0 1.703 <3c696e743e2028>4.203 F F1 1.703<7072756e65207761726e20706572>B <63656e7461>-.37 E -.1<6765>-.1 G F0<29>.1 E F2 4.203<5d5b>C<2d776172> -4.203 E<6e2d666163746f72>-.15 E F0<3c696e743e>4.203 E<28>100 276 Q F1 <7072756e65207761726e20666163746f72>A F0<29>A F2<5d>A F0 .018 <546865208c727374206172>100 300 R .018<67756d656e74206f66>-.18 F F2 <6d636c>2.518 E F0 .018<6d7573742062652061208c6c65206e616d652c2062>2.518 F .019<757420736f6d65206f7074696f6e732061726520616c6c6f>-.2 F .019 <77656420746f2061707065617220617320746865208c727374>-.25 F<6172>100 312 Q 1.048<67756d656e7420696e73746561642e2054686573652061726520746865206f70 74696f6e732074686174206361757365206d636c20746f207072696e74206f757420696e 666f726d6174696f6e206f6620736f6d65206b696e642c>-.18 F <61667465722077686963682069742077696c6c20677261636566756c6c792065>100 324 Q<7869742e205468652066756c6c206c697374206f66207468657365206f7074696f 6e73206973>-.15 E F2<2d7a>100 348 Q F0<2c>A F2<2d68>2.5 E F0<2c>A F2 <2d2d68656c70>2.5 E F0<2c>A F2<2d2d76>2.5 E<657273696f6e>-.1 E F0<2c>A F2<2d2d73686f>2.5 E<772d73657474696e6773>-.1 E F0<2c>A F2<2d2d73686f>2.5 E<772d736368656d6573>-.1 E F0<2c>A F2<2d2d6a7572792d63686172746572>2.5 E F0<2e>A/F3 10.95/Times-Bold@0 SF<4445534352495054494f4e>20 364.8 Q F2 <6d636c>100 376.8 Q F0 .745<696d706c656d656e747320746865>3.245 F F2 .745 <4d434c20616c676f726974686d>3.245 F F0 3.245<2c73>C .745 <686f727420666f7220746865>-3.245 F F2<4d61726b>3.245 E .946 -.1 <6f762063>-.15 H .746<6c757374657220616c676f726974686d>.1 F F0 3.246 <2c6163>C .746<6c757374657220616c676f2d>-3.246 F .979 <726974686d20666f7220677261706873206465>100 388.8 R -.15<7665>-.25 G .979<6c6f706564206279205374696a6e2076>.15 F .978<616e20446f6e67656e2061 74207468652043656e74726520666f72204d617468656d617469637320616e6420436f6d 7075746572>-.25 F 1.161<536369656e636520696e20416d7374657264616d2c207468 65204e65746865726c616e64732e2054686520616c676f726974686d2073696d756c6174 6573208d6f>100 400.8 R 3.662<7775>-.25 G 1.162<73696e67207477>-3.662 F 3.662<6f73>-.1 G 1.162<696d706c6520616c67652d>-3.662 F 1.314 <6272616963206f7065726174696f6e73206f6e206d617472696365732e>100 412.8 R 1.313<54686520696e63657074696f6e206f662074686973208d6f>6.314 F 3.813 <7770>-.25 G 1.313 <726f6365737320616e6420746865207468656f727920626568696e6420697420617265> -3.813 F 2.204<64657363726962656420656c7365>100 424.8 R 2.204 <77686572652028736565>-.25 F F2<5245464552454e434553>4.704 E F0 2.204 <292e204672657175656e746c792061736b>B 2.204 <6564207175657374696f6e732061726520616e73776572656420696e20746865>-.1 F F2<6d636c666171283729>100 436.8 Q F0 2.723<73656374696f6e2e20546865> 2.724 F .223<70726f6772616d20646573637269626564206865726520697320612066> 2.723 F .223<61737420746872656164656420696d706c656d656e746174696f6e2077 72697474656e20627920746865>-.1 F<616c676f726974686d27>100 448.8 Q 3.115 <7363>-.55 G .615<726561746f72207769746820636f6e74726962>-3.115 F .615 <7574696f6e73206279207365>-.2 F -.15<7665>-.25 G .615<72616c206f74686572 732e20416e746f6e20456e726967687420636f2d696d706c656d656e7465642074687265 61642d>.15 F .349<696e673b2073656520746865>100 460.8 R F2<48495354>2.848 E<4f52>-.18 E<592f43524544495453>-.35 E F0 .348 <73656374696f6e20666f72206120636f6d706c657465206163636f756e742e>2.848 F .348<53656520746865>5.348 F F2<4150504c49434142494c495459>2.848 E F0 .602<73656374696f6e20666f722061206465736372697074696f6e206f662074686520 74797065206f66206772617068206d636c206c696b>100 472.8 R .602 <657320626573742c20616e6420666f722061207175616c6974617469>-.1 F .902 -.15<76652061>-.25 H .602<73736573736d656e74206f66>.15 F .117 <6974732073706565642e>100 484.8 R F2<6d636c>5.117 E F0 .117 <6973206163636f6d70616e696564206279207365>2.617 F -.15<7665>-.25 G .117< 72616c206f74686572207574696c697469657320666f7220616e616c797a696e6720636c 7573746572696e677320616e6420706572666f726d696e67>.15 F<6d61747269782061 6e64206772617068206f7065726174696f6e733b2073656520746865>100 496.8 Q F2 <53454520414c534f>2.5 E F0<73656374696f6e2e>2.5 E .182 <546865208c727374206172>100 520.8 R .182<67756d656e74206973207468652069 6e707574208c6c65206e616d652c206f7220612073696e676c652068>-.18 F .183<79 7068656e20746f20726561642066726f6d20737464696e2e2054686520726174696f6e61 6c6520666f72>-.05 F .108<6d616b696e6720746865206e616d65206f662074686520 696e707574208c6c652061208c78>100 532.8 R .107<656420706172616d6574657220 6973207468617420796f75207479706963616c6c7920646f207365>-.15 F -.15<7665> -.25 G .107<72616c2072756e732077697468206469662d>.15 F 1.885<666572656e 7420706172616d65746572732e20496e20636f6d6d616e64206c696e65206d6f64652069 7420697320706c656173616e7420696620796f7520646f206e6f74206861>100 544.8 R 2.185 -.15<76652074>-.2 H 4.385<6f73>.15 G 1.885<6b6970206f>-4.385 F -.15<7665>-.15 G 4.385<7261>.15 G<6e>-4.385 E <696d6d757461626c6520706172616d6574657220616c6c207468652074696d652e>100 556.8 Q<546865>100 580.8 Q F2<2d49>2.975 E F1<66>2.5 E F0 .474 <6f7074696f6e20697320746865206d61696e20636f6e74726f6c2c206166>2.975 F .474<66656374696e6720636c7573746572206772616e756c61726974792e>-.25 F .474<496e208c6e64696e6720676f6f64>5.474 F F2<6d636c>2.974 E F0 <706172616d65746572>2.974 E .788<73657474696e677320666f7220612070617274 6963756c617220646f6d61696e2c206f7220696e208c6e64696e6720636c757374657220 73747275637475726520617420646966>100 592.8 R .788<666572656e74206c65> -.25 F -.15<7665>-.25 G .788<6c73206f66206772616e756c6172697479>.15 F <2c>-.65 E .621<6f6e65207479706963616c6c792072756e73206d636c206d756c7469 706c652074696d657320666f722076>100 604.8 R .621<617279696e672076>-.25 F .62<616c756573206f6620662028726566657220746f20746865>-.25 F F2<2d49>3.12 E F1<696e8d6174696f6e>2.5 E F0 .62<6f7074696f6e20666f72>3.12 F <6675727468657220696e666f726d6174696f6e292e>100 616.8 Q F2<4e4f>100 640.8 Q<5445>-.4 E F0 1.621<4d434c20696e746572707265747320746865206d6174 72697820656e7472696573206f7220677261706820656467652077656967687473206173> 4.121 F F2<73696d696c61726974696573>4.122 E F0 4.122<2c61>C 1.622 <6e64206974206c696b>-4.122 F<6573>-.1 E F2<756e646972>100 652.8 Q .868 <656374656420696e70757420677261706873>-.18 F F0 .868<626573742e20497420 63616e2068616e646c65206469726563746564206772617068732c2062>3.368 F .868 <757420616e>-.2 F 3.368<796e>-.15 G .868 <6f646520706169722028692c6a2920666f72207768696368>-3.368 F .102<7728692c 6a29206973206d75636820736d616c6c6572207468616e2077286a2c6929206f72207669 63652076>100 664.8 R .103 <657273612077696c6c2070726573756d61626c79206861>-.15 F .403 -.15 <766520612073>-.2 H .103<6c696768746c79206e65>.15 F -.05<6761>-.15 G <7469>.05 E .403 -.15<76652065>-.25 H -.25<6666>.15 G .103<656374206f6e> .25 F .31 <74686520636c7573746572696e6773206f7574707574206279206d636c2e204d616e> 100 676.8 R 2.81<7973>-.15 G .309 <756368206e6f64652070616972732077696c6c206861>-2.81 F .609 -.15 <766520612064>-.2 H .309<697374696e63746c79206e65>.15 F -.05<6761>-.15 G <7469>.05 E .609 -.15<76652065>-.25 H -.25<6666>.15 G .309 <6563742c20736f20747279>.25 F .917<746f206d616b>100 688.8 R 3.417<6579> -.1 G .917 <6f757220696e7075742067726170687320756e64697265637465642e20486f>-3.417 F 3.417<7779>-.25 G .917<6f7572206564676520776569676874732061726520636f6d 7075746564206d6179206166>-3.417 F .918<66656374206d636c27>-.25 F<73>-.55 E 1.691<706572666f726d616e63652e20496e2070726f7465696e20636c757374657269 6e672c206f6e652077>100 700.8 R 1.691 <617920746f20676f20697320746f2063686f6f736520746865206e65>-.1 F -.05 <6761>-.15 G 1.69<746564206c6f67>.05 F 1.69<61726974686d206f6620746865> -.05 F<424c4153542070726f626162696c69746965732028736565>100 712.8 Q F2 <5245464552454e434553>2.5 E F0<292e>A<6d636c2031322d313335>20 768 Q <3134204d61792032303132>161.505 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F/F1 10/Times-Bold@0 SF<6d636c>100 84 Q F0 3.599 -.55<27732064>D<6566>.55 E 2.499 <61756c7420706172616d65746572732073686f756c64206d616b>-.1 F 4.999<6569> -.1 G 4.999<7471>-4.999 G 2.499<756974652066>-4.999 F 2.499<61737420756e 64657220616c6d6f737420616c6c2063697263756d7374616e6365732e2054>-.1 F <616b696e67>-.8 E<646566>100 96 Q .226<61756c7420706172616d65746572732c 206d636c20686173206265656e207573656420746f2067656e657261746520676f6f6420 70726f7465696e20636c757374657273206f6e203133336b2070726f7465696e732c2074 616b696e67>-.1 F 1.072<3130206d696e757465732072756e6e696e672074696d6520 6f6e206120436f6d70617120455334302073797374656d207769746820666f757220616c 706861204556362e372070726f636573736f72732e20497420686173>100 108 R .478< 6265656e206170706c69656420287769746820676f6f6420726573756c74732920746f20 6772617068732077697468207477>100 120 R 2.978<6f6d>-.1 G .478 <696c6c696f6e206e6f6465732c20616e6420696620796f75206861>-2.978 F .778 -.15<76652074>-.2 H .478<6865206d656d6f7279>.15 F<28616e6420707265666572 61626c7920435055732061732077656c6c29206e6f7468696e672073686f756c64207374 6f7020796f752066726f6d20676f696e6720667572746865722e>100 132 Q -.15 <466f>100 156 S 3.062<726c>.15 G<6172>-3.062 E .563 <6765206772617068732c20746865726520617265207365>-.18 F -.15<7665>-.25 G .563<72616c2067726f757073206f6620706172616d65746572732061>.15 F -.25 <7661>-.2 G .563 <696c61626c6520666f722074756e696e6720746865206d636c20636f6d707574696e67> .25 F .063<70726f636573732c2073686f756c64206974206265206e65636573736172 792e205468652065617369657374207468696e6720746f20646f206973206a7573742076> 100 168 R .063<61727920746865>-.25 F F1<2d736368656d65>2.563 E F0 .063 <6f7074696f6e2e205468697320747269672d>2.563 F .914<6765727320646966>100 180 R .914<666572656e742073657474696e677320666f72207468652067726f757020 6f66207072756e696e6720706172616d6574657273>-.25 F F1<2d702f2d50>3.414 E F0<2c>A F1<2d52>3.414 E F0<2c>A F1<2d53>3.414 E F0 3.414<2c61>C<6e64> -3.414 E F1<2d706374>3.414 E F0 3.414<2e54>C .914<686520646566>-3.414 F <61756c74>-.1 E 1.132<73657474696e6720636f72726573706f6e64732077697468> 100 192 R F1<2d736368656d652036>3.632 E F0 6.132<2e57>C 1.131<68656e2064 6f696e67206d756c7469706c65206d636c2072756e7320666f72207468652073616d6520 6772617068732077697468>-6.132 F<646966>100 204 Q<666572656e74>-.25 E F1 <2d49>3.16 E F0 .661<73657474696e67732028666f72206f627461696e696e672063 6c7573746572696e677320617420646966>3.16 F .661<666572656e74206c65>-.25 F -.15<7665>-.25 G .661<6c73206f66206772616e756c6172697479292c206974206361 6e2062652075736566756c>.15 F 2.243<746f2066>100 216 R 2.242<6163746f7220 6f757420746865208c72737420626974206f6620636f6d7075746174696f6e2074686174 20697320636f6d6d6f6e20746f20616c6c2072756e732c206279207573696e6720746865> -.1 F F1<2d77726974652d>4.742 E<657870616e646564>100 228 Q F0 .242 <6f7074696f6e206f6e652074696d6520616e64207468656e207573696e67>2.741 F F1 <2d6966>2.742 E/F2 10/Times-Italic@0 SF<696e8d6174696f6e>2.5 E F0 .242 <666f7220656163682072756e20696e20746865207365742e>2.742 F .242 <57686574686572206d636c20636f6e2d>5.242 F 1.56 <7369646572732061206772617068206c6172>100 240 R 1.559<676520646570656e64 73206d61696e6c79206f6e2074686520677261706820636f6e6e65637469>-.18 F 1.559 <766974793b206120686967686c7920636f6e6e6563746564206772617068206f6e>-.25 F .393<35302c303030206e6f646573206973206c6172>100 252 R .393 <676520746f206d636c2028736f207468617420796f75206d696768742077>-.18 F .393<616e7420746f2074756e65207265736f7572636573292077686572656173206120 7370617273656c7920636f6e2d>-.1 F<6e6563746564206772617068206f6e20353030 2c303030206e6f646573206d61792062652062>100 264 Q <7573696e65737320617320757375616c2e>-.2 E F1<6d636c>100 288 Q F0 1.025< 69732061206d656d6f7279206d756e6765722e2049747320707265636973652061707065 7469746520646570656e6473206f6e20746865207265736f757263652073657474696e67 732e2059>3.525 F 1.025<6f752063616e206765742061>-1.1 F .155<726f75676820 28616e6420757375616c6c79206d75636820746f6f2070657373696d6973746963292075 7070657220626f756e6420666f722074686520616d6f756e74206f662052414d20746861 74206973206e6565646564206279>100 300 R 1.443<7573696e6720746865>100 312 R F1<2d686f>3.943 E<772d6d7563682d72616d>-.1 E F0 1.442<6f7074696f6e2e20 54686520636f72726573706f6e64696e6720656e74727920696e2074686973206d616e75 616c207061676520636f6e7461696e7320746865>3.943 F<73696d706c6520666f726d 756c61207669612077686963682074686520757070657220626f756e6420697320636f6d 70757465642e>100 324 Q .726<4f74686572206f7074696f6e73206f6620696e746572 6573742061726520746865206f7074696f6e20746f207370656369667920746872656164 73>100 348 R F1<2d7465>3.226 E F0 3.226<2c61>C .726<6e64207468652076> -3.226 F .726<6572626f736974792d72656c61746564206f7074696f6e73>-.15 F F1 <2d76>100 360 Q F0<616e64>2.541 E F1<2d56>2.541 E F0 5.041<2e54>C .041 <68652061637475616c2073657474696e6773206172652073686f>-5.041 F .041 <776e2077697468>-.25 F F1<2d7a>2.541 E F0 2.541<2c61>C .04<6e6420666f72 206772617068732077697468206174206d6f7374203132206e6f646573206f7220736f20 796f75>-2.541 F 1.271<63616e20766965>100 372 R 3.771<7774>-.25 G 1.271< 6865204d434c206d61747269782069746572616e6473206f6e2073637265656e20627920 737570706c79696e67>-3.771 F F1<2d2d73686f>3.771 E<77>-.1 E F0 1.272 <2874686973206d6179206769>3.772 F 1.572 -.15<76652073>-.25 H 1.272 <6f6d65206d6f7265>.15 F<6665656c696e67292e>100 384 Q 1.272 <4d434c2069746572616e647320616c6c6f>100 408 R 3.772<776167>-.25 G 1.272< 656e6572696320696e746572707265746174696f6e20617320636c7573746572696e6773 2061732077656c6c2e2054686520636c7573746572696e6773206173736f636961746564> -3.772 F 2.322 <77697468206561726c792069746572616e6473206d617920636f6e7461696e20612066> 100 420 R 2.323<61697220616d6f756e74206f66206f>-.1 F -.15<7665>-.15 G 2.323<726c61702e20526566657220746f20746865>.15 F F1<2d64756d70>4.823 E F0 2.323<6f7074696f6e2c20746865>4.823 F F1<6d636c666171283729>100 432 Q F0 .493<6d616e75616c2c20616e6420746865>2.993 F F1 .492<636c6d20696d6163> 2.993 F F0 .492<7574696c6974792028496e74657270726574204d6174726963657320 417320436c7573746572696e6773292e>2.992 F<557365>5.492 E F1 .492 <636c6d20696d6163>2.992 F F0 .557<6f6e6c7920696620796f75206861>100 444 R .858 -.15<766520612073>-.2 H .558 <70656369616c20726561736f6e3b20746865206e6f726d616c207573616765206f66> .15 F F1<6d636c>3.058 E F0 .558 <697320746f20646f206d756c7469706c652072756e7320666f722076>3.058 F <617279696e67>-.25 E F1<2d49>3.058 E F0<706172616d657465727320616e642075 73652074686520636c7573746572696e6773206f7574707574206279206d636c20697473 656c662e>100 456 Q .64<556e6465722076>100 480 R .64 <65727920726172652063697263756d7374616e6365732c>-.15 F F1<6d636c>3.14 E F0 .64<6d696768742067657420737475636b20696e2061207365656d696e676c792069 6e8c6e697465206c6f6f702e20496620746865206e756d626572>3.14 F 1.531 <6f6620697465726174696f6e732065>100 492 R 1.531 <78636565647320612068756e6472656420616e6420746865>-.15 F F2 -.15<6368> 4.032 G<616f73>.15 E F0 1.532<696e64696361746f722072656d61696e73206e6561 726c7920636f6e7374616e74202870726573756d61626c79>4.032 F .635 <61726f756e642076>100 504 R .635<616c756520302e3337292c20796f752063616e 20666f726365206d636c20746f2073746f702062792073656e64696e6720697420746865 20414c524d207369676e616c2028757375616c6c7920646f6e65206279>-.25 F F1 .599<6b696c6c202d7320414c524d>100 516 R F2<706964>3.099 E F0 .599<292e20 49742077696c6c208c6e697368207468652063757272656e7420697465726174696f6e2c 20616e6420696e7465727072657420746865206c6173742069746572616e642061732061 20636c7573746572>B<2d>-.2 E .899<696e672e20416c7465726e617469>100 528 R -.15<7665>-.25 G<6c79>.15 E 3.399<2c79>-.65 G .898<6f752063616e2077> -3.399 F .898<61697420616e64206d636c206d6967687420636f6e>-.1 F -.15 <7665>-.4 G -.18<7267>.15 G 3.398<6562>.18 G 3.398<7969>-3.398 G .898<74 73656c66206f722069742077696c6c206365727461696e6c792073746f70206166746572> -3.398 F .267<31302c30303020697465726174696f6e732e20546865206d6f73742070 726f6261626c652065>100 540 R .267<78706c616e6174696f6e20666f722073756368 20616e20696e8c6e697465206c6f6f7020697320746861742074686520696e7075742067 72617068>-.15 F<636f6e7461696e7320746865208d69702d8d6f70206772617068206f 66206e6f64652073697a6520746872656520617320612073756267726170682e>100 552 Q .574<5468652063726561746f72206f6620746869732070616765206665656c732074 686174206d616e75616c2070616765732061726520612076>100 576 R .573<616c7561 626c65207265736f757263652c2074686174206f6e6c696e652068746d6c20646f63752d> -.25 F .258<6d656e746174696f6e20697320616c736f206120676f6f64207468696e67 20746f206861>100 588 R -.15<7665>-.2 G 2.758<2c61>.15 G .258 <6e64207468617420696e666f207061676573206172652077>-2.758 F<6179>-.1 E F2 <776179>2.758 E F0 .258 <6168656164206f662074686569722074696d652e20546865>2.758 F F1<4e4f>100 600 Q<544553>-.4 E F0<73656374696f6e2065>2.5 E<78706c61696e7320686f>-.15 E 2.5<7774>-.25 G<68697320706167652077>-2.5 E<617320637265617465642e>-.1 E .277<496e20746865>100 624 R F1<4f5054494f4e53>2.777 E F0 .276<73656374 696f6e206f7074696f6e7320617265206c697374656420696e206f72646572206f662069 6d706f7274616e63652c20776974682072656c61746564206f7074696f6e732067726f75 706564>2.777 F<746f6765746865722e>100 636 Q/F3 10.95/Times-Bold@0 SF <4f5054494f4e53>20 652.8 Q F1<2d49>100 664.8 Q F0<3c6e756d3e2028>2.5 E F2<696e8d6174696f6e>A F0<29>A .5 <5365747320746865206d61696e20696e8d6174696f6e2076>120 676.8 R .5 <616c756520746f>-.25 F F2<3c6e756d3e>3.001 E F0 3.001<2e54>C .501 <6869732076>-3.001 F .501 <616c756520697320746865206d61696e2068616e646c6520666f72206166>-.25 F .501<66656374696e6720636c7573746572>-.25 F .514<6772616e756c61726974792e 20497420697320757375616c6c792063686f73656e20736f6d65>120 688.8 R .514 <776865726520696e207468652072616e6765205b312e322d352e305d2e>-.25 F F1 <2d4920352e30>3.013 E F0 .513<77696c6c2074656e6420746f20726573756c74> 3.013 F .567 <696e208c6e652d677261696e656420636c7573746572696e67732c20616e64>120 700.8 R F1<2d4920312e32>3.067 E F0 .567 <77696c6c2074656e6420746f20726573756c7420696e2076>3.067 F .567 <65727920636f6172736520677261696e656420636c7573746572696e67732e>-.15 F -1.1<596f>120 712.8 S 1.13<7572206d696c656167652077696c6c2076>1.1 F 1.129<61727920646570656e64696e67206f6e2074686520636861726163746572697374 696373206f6620796f757220646174612e2054686174206973207768>-.25 F 3.629 <7969>-.05 G 3.629<7469>-3.629 G 3.629<7361>-3.629 G .163<676f6f64206964 656120746f207465737420746865207175616c69747920616e6420636f686572656e63> 120 724.8 R 2.663<796f>-.15 G 2.663<6679>-2.663 G .163 <6f757220636c7573746572696e6773207573696e67>-2.663 F F1 .163 <636c6d2064697374>2.663 F F0<616e64>2.663 E F1 .164<636c6d20696e66>2.664 F<6f>-.25 E F0<2e>A<6d636c2031322d313335>20 768 Q <3134204d61792032303132>161.505 E<34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F .42 <546869732077696c6c206d6f7374206c696b>120 84 R .42<656c79207265>-.1 F -.15<7665>-.25 G .42<616c2074686174206365727461696e2076>.15 F .419 <616c756573206f66>-.25 F/F1 10/Times-Bold@0 SF<2d49>2.919 E F0 .419<6172 652073696d706c79206e6f7420726967687420666f7220796f757220646174612e205468 65>2.919 F F1 1.322<636c6d2064697374>120 96 R F0 1.323 <73656374696f6e20636f6e7461696e7320612064697363757373696f6e206f6620686f> 3.822 F 3.823<7774>-.25 G 3.823<6f75>-3.823 G 1.323 <73652074686520636c75737465722076>-3.823 F 1.323 <616c69646174696f6e20746f6f6c732073686970706564>-.25 F<77697468>120 108 Q F1<6d636c>2.5 E F0<2873656520746865>2.5 E F1<53454520414c534f>2.5 E F0 <73656374696f6e292e>2.5 E -.4<5769>120 132 S .158<7468206c6f>.4 F 2.658 <7776>-.25 G .158<616c75657320666f72>-2.908 F F1<2d49>2.658 E F0 2.658 <2c6c>C<696b>-2.658 E<65>-.1 E F1<2d4920312e32>2.658 E F0 2.658<2c79>C .157<6f752073686f756c6420626520707265706172656420746f20757365206d6f7265 207265736f757263657320696e206f7264657220746f>-2.658 F<6d61696e7461696e20 7175616c697479206f6620636c7573746572696e67732c20692e652e20696e6372656173 6520746865206172>120 144 Q<67756d656e7420746f20746865>-.18 E F1 <2d736368656d65>2.5 E F0<6f7074696f6e2e>2.5 E F1<2d6f>100 168 Q F0 <3c666e616d653e2028>2.5 E/F2 10/Times-Italic@0 SF <6f7574707574208c6c65206e616d65>A F0<29>A F1<2d6f646972>100 180 Q F0 <3c646e616d653e2028>2.5 E F2<6f757470757420646972>A <6563746f7279206e616d65>-.37 E F0<29>A F1<2d2d64>100 192 Q F0<28>2.5 E F2<75736520696e70757420646972>A<6563746f727920666f72206f7574707574>-.37 E F0<29>A .515<54686520646566>120 204 R .515 <61756c74206d6f6465206f66206f7574707574206372656174696f6e20666f72>-.1 F F1<6d636c>3.015 E F0 .515<697320746f206372656174652061208c6c65206e616d65 207468617420757365732074686520696e707574208c6c65>3.015 F .321 <6e616d65207374726970706564206f6620616e>120 216 R 2.821<796c>-.15 G .321 <656164696e67207061746820636f6d706f6e656e74732c206175676d656e7465642077 6974682061207072658c782027>-2.821 F/F3 10/Courier@0 SF<6f75742e>A F0 2.82<2761>C .32<6e642061207375662d>-2.82 F .861 <8c7820656e636f64696e67207069>120 228 R -.2<766f>-.25 G<74616c>.2 E F1 <6d636c>3.361 E F0 3.361<706172616d65746572732e2054686973>3.361 F .862 <77696c6c20757375616c6c792062652074686520696e8d6174696f6e2076>3.361 F .862<616c756520776869636820697320746865>-.25 F<6172>120 240 Q .442 <67756d656e7420746f20746865>-.18 F F1<2d49>2.942 E F0 .442 <6f7074696f6e2e20427920646566>2.942 F .442<61756c7420746865206f75747075 74208c6c65206973207772697474656e20696e207468652063757272656e742064697265 63746f72792e>-.1 F -.15<466f>5.441 G<72>.15 E -.15<6578>120 252 S 1.87 <616d706c652c2069662074686520696e707574206973206e616d6564>.15 F F3 <646174612f736d616c6c2e6d6369>4.371 E F0 1.871<666f722065>4.371 F 1.871 <78616d706c6520616e6420696e8d6174696f6e2069732073657420746f>-.15 F <74687265652c20746865206f7574707574208c6c652077696c6c206265206e616d6564> 120 264 Q F3<6f75742e736d616c6c2e6d63692e493330>2.5 E F0<2e>A .02 <546869732062656861>120 288 R .02<76696f75722063616e206265206f>-.2 F -.15<7665>-.15 G .02<7272696464656e20696e2076>.15 F .02 <6172696f75732077>-.25 F .02<6179732e20546865>-.1 F F1<2d6f>2.52 E F0 .02<6f7074696f6e2073696d706c792073706563698c657320746865206f7574707574> 2.52 F .674<8c6c65206e616d652c207768696368206d617920696e636c756465207061 746820636f6d706f6e656e747320746861742073686f756c642065>120 300 R .674 <786973742e20497420697320706f737369626c6520746f2073656e6420746865>-.15 F .953<636c7573746572696e6720746f205354444f555420627920737570706c79696e67> 120 312 R F1<2d6f202d>3.453 E F0 3.453<2e57>C .953<69746820746865>-3.853 F F1<2d6f646972>3.453 E F2<3c646e616d653e>2.5 E F0<6f7074696f6e>3.452 E F1<6d636c>3.452 E F0<636f6e73747275637473>3.452 E 1.081 <746865206f7574707574208c6c65206e616d65206173206265666f72652c2062>120 324 R 1.081 <75742077726974657320746865208c6c6520696e20746865206469726563746f7279> -.2 F F2<3c646e616d653e>3.582 E F0 6.082<2e46>C<696e616c6c79>-6.082 E 3.582<2c74>-.65 G<6865>-3.582 E<6f7074696f6e>120 336 Q F1<2d2d64>2.51 E F0 .01<69732073696d696c61722062>2.51 F .01 <7574206d6f72652073706563698c6320696e2074686174>-.2 F F1<6d636c>2.51 E F0 .01<77696c6c20777269746520746865206f757470757420696e2074686520646972 6563746f727920737065632d>2.51 F 1.011<698c656420627920746865207061746820 636f6d706f6e656e74206f662074686520696e707574208c6c652c20746861742069732c 20746865206469726563746f727920696e2077686963682074686520696e707574208c6c 65>120 348 R<726573696465732e>120 360 Q .455 <496620656974686572206f6e65206f66>120 384 R F1<2d2d616263>2.954 E F0<2c> A F1<2d2d736966>2.954 E F0<2c>A F1<2d2d657463>2.954 E F0<6f72>2.954 E F1 <2d7573652d746162>2.954 E F2<7461622d8c6c65>2.5 E F0 .454<69732075736564 20746865206f75747075742077696c6c20626520696e206c6162656c20666f72>2.954 F <2d>-.2 E 2.995<6d61742e204f7468657277697365>120 396 R .495<74686520636c 7573746572696e67206973206f757470757420696e20746865206d636c206d6174726978 20666f726d61743b2073656520746865>2.995 F F1<6d6378696f283529>2.995 E F0 <73656374696f6e>2.995 E<666f72206d6f726520696e666f726d6174696f6e206f6e20 746869732e20526566657220616c736f20746f207468652067726f7570206f66206f7074 696f6e7320646973637573736564206174>120 408 Q F1<2d2d616263>2.5 E F0<2e>A 2.62<4c6f6f6b20617420746865>120 432 R F1<2d6170>5.12 E F2<7072>2.5 E <658c78>-.37 E F0 2.62<6f7074696f6e20616e6420697473207369626c696e677320 666f7220746865206175746f6d61746963206e616d696e6720636f6e737472756374696f 6e73>5.12 F<656d706c6f>120 444 Q<796564206279>-.1 E F1<6d636c>2.5 E F0 <696620746865>2.5 E F1<2d6f>2.5 E F0 <6f7074696f6e206973206e6f7420757365642e>2.5 E F1<2d63>100 468 Q F0 <3c6e756d3e2028>2.5 E F2 -1.91 -.37<72652077>D<6569676874206c6f6f7073> .37 E F0<29>A F1<2d2d73756d2d6c6f6f7073>100 480 Q F0<28>2.5 E F2 <736574206c6f6f707320746f2073756d206f66206f74686572206172>A <63732077656967687473>-.37 E F0<29>A -.4<5769>120 492 S .193 <746820746865>.4 F F1<2d63>2.693 E F2<3c6e756d3e>2.5 E F0 .194<6f707469 6f6e2c20617320746865208c6e616c2073746570206f66206c6f6f7020636f6d70757461 74696f6e2028692e652e20616674657220696e697469616c697a6174696f6e20616e64> 2.693 F<736861646f>120 504 Q<77696e672920616c6c206c6f6f7020776569676874 7320617265206d756c7469706c696564206279>-.25 E F1<3c6e756d3e>2.5 E F0 2.5 <2c69>C 2.5<6673>-2.5 G<7570706c6965642e>-2.5 E F1 <2d2d646973636172642d6c6f6f7073>100 528 Q F0<3d3c792f6e3e2028>A F2 <646973636172>A 2.5<646c>-.37 G<6f6f707320696e20696e707574>-2.5 E F0<29> A .508<427920646566>120 540 R<61756c74>-.1 E F1<6d636c>3.008 E F0 .508 <77696c6c2072656d6f>3.008 F .808 -.15<76652061>-.15 H .808 -.15 <6e79206c>.15 H .508<6f6f70732074686174206172652070726573656e7420696e20 74686520696e7075742e20557365>.15 F F1<2d2d646973636172642d6c6f6f7073> 3.007 E F0<3d>A F1<6e>A F0 .998<746f207475726e2074686973206f66>120 552 R .999<662e204265617220696e206d696e642074686174206c6f6f70732077696c6c2073 74696c6c206265206d6f64698c656420696e20616c6c2063617365732077686572652074 6865206c6f6f70>-.25 F<776569676874206973206e6f74206d6178696d616c20616d6f 6e6720746865206c697374206f662065646765207765696768747320666f722061206769> 120 564 Q -.15<7665>-.25 G 2.5<6e6e>.15 G<6f64652e>-2.5 E F1<2d2d616263> 100 588 Q F0<28>2.5 E F2 -.2<6578>C<706563742f7772697465206c6162656c73> .2 E F0<29>A F1<2d2d736966>100 600 Q F0<28>2.5 E F2 -.2<6578>C <706563742f7772697465206c6162656c73>.2 E F0<29>A F1<2d2d657463>100 612 Q F0<28>2.5 E F2 -.2<6578>C<706563742f7772697465206c6162656c73>.2 E F0<29> A F1<2d2d6578706563742d76>100 624 Q<616c756573>-.1 E F0<28>2.5 E F2 -.2 <6578>C<70656374206c6162656c3a77656967687420666f726d6174>.2 E F0<29>A F1 <2d7573652d746162>100 636 Q F0<3c666e616d653e2028>2.5 E F2 <757365206d617070696e6720746f207772697465>A F0<29>A 1.491<54686573652069 74656d7320616c6c2072656c61746520746f206c6162656c20696e70757420616e642f6f 72206c6162656c206f75747075742e>120 648 R F1<2d2d616263>6.491 E F0 <74656c6c73>3.99 E F1<6d636c>3.99 E F0 1.49<746f2065>3.99 F 1.49 <7870656374206c6162656c>-.15 F .663<696e70757420616e64206f75747075742063 6c75737465727320696e207465726d73206f662074686f7365206c6162656c732e205468 69732073696d706c6520666f726d61742065>120 660 R .664<787065637473207477> -.15 F 3.164<6f6f>-.1 G 3.164<7274>-3.164 G<68726565>-3.164 E .632<8c65 6c647320736570617261746564206279207768697465207370616365206f6e2065616368 206c696e652e>120 672 R .631<546865208c72737420616e64207365636f6e64208c65 6c64732061726520696e746572707265746564206173>5.631 F .219<6c6162656c7320 73706563696679696e6720736f7572636520616e642064657374696e6174696f6e206e6f 6465207265737065637469>120 684 R -.15<7665>-.25 G .219<6c792e2054686520 7468697264208c656c642c2069662070726573656e742c2073706563692d>.15 F<8c65 732074686520776569676874206f66207468652061726320636f6e6e656374696e672074 6865207477>120 696 Q 2.5<6f6e>-.1 G<6f6465732e>-2.5 E .212 <546865206f7074696f6e>120 720 R F1<2d2d736966>2.712 E F0<74656c6c73> 2.712 E F1<6d636c>2.712 E F0 .212<746f2065>2.712 F .212<7870656374205349 46202853696d706c6520496e746572616374696f6e2046696c652920666f726d61742e20 5468697320666f726d6174206973206c696e65>-.15 F<6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<35>202.335 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F .232 <62617365642e20546865208c727374207477>120 84 R 2.732<6f8c>-.1 G .233<65 6c647320737065636966792074686520736f75726365206e6f6465202861732061206c61 62656c2920616e64207468652072656c6174696f6e7368697020747970652e20416e> -2.732 F 1.788 <617262697472617279206e756d626572206f66208c656c6473206d617920666f6c6c6f> 120 96 R 3.088 -.65<772c2065>-.25 H 1.787<61636820636f6e7461696e696e6720 61206c6162656c206964656e74696679696e6720612064657374696e6174696f6e>.65 F 4.508<6e6f64652e20546865>120 108 R 2.008 <7365636f6e64208c656c642069732073696d706c792069676e6f726564206279>4.508 F/F1 10/Times-Bold@0 SF<6d636c>4.508 E F0 7.008<2e41>C 4.508<7361>-7.008 G 4.508<6e65>-4.508 G 2.008 <7874656e73696f6e20746f207468652053494620666f726d6174>-4.658 F .296 <77656967687473206d6179206f7074696f6e616c6c7920666f6c6c6f>120 120 R 2.796<7774>-.25 G .296<6865206c6162656c732c207365706172617465642066726f 6d207468656d2077697468206120636f6c6f6e206368617261637465722e>-2.796 F .295<4974206973>5.295 F .436 <696e20746869732063617365206e656365737361727920746f2075736520746865>120 132 R F1<2d2d6578706563742d76>2.936 E<616c756573>-.1 E F0 2.937 <6f7074696f6e2e20546865>2.936 F F1<2d2d657463>2.937 E F0 .437 <6f7074696f6e2065>2.937 F .437<787065637473206120666f726d6174>-.15 F .079<6964656e746963616c20696e20616c6c2072657370656374732065>120 144 R .078<78636570742074686174207468652072656c6174696f6e73686970207479706520 6973206e6f742070726573656e742c20736f207468617420616c6c208c656c6473206166 746572>-.15 F<746865208c7273742061726520696e7465727072657465642061732064 657374696e6174696f6e206c6162656c732e>120 156 Q F1<2d7573652d746162>120 180 Q F0 .198<6973206f6e6c792075736566756c207768656e206d617472697820696e 70757420697320757365642e>2.698 F .199 <49742077696c6c207573652074686520746162208c6c6520746f20636f6e>5.198 F -.15<7665>-.4 G .199<727420746865206f75742d>.15 F .174 <70757420746f206c6162656c733b20697420646f6573206e6f742066>120 192 R .174 <61696c206f6e20696e6469636573206d697373696e672066726f6d2074686520746162 208c6c652c2062>-.1 F .173 <75742077696c6c2062696e6420746865736520746f2067656e2d>-.2 F <6572617465642064756d6d79206c6162656c732e>120 204 Q F1<2d7466>100 228 Q F0<3c74662d737065633e2028>2.5 E/F2 10/Times-Italic@0 SF<7472>A <616e73666f726d20696e707574206d61747269782076616c756573>-.15 E F0<29>A F1<2d6162632d7466>100 240 Q F0<3c74662d737065633e2028>2.5 E F2<7472>A <616e73666f726d20696e70757420737472>-.15 E<65616d2076616c756573>-.37 E F0<29>A F1<2d2d6162632d6e65672d6c6f673130>100 252 Q F0<28>2.5 E F2 <74616b>A 2.5<656c>-.1 G -.1<6f67>-2.5 G<3130206f6620737472>.1 E <65616d2076616c7565732c206e65>-.37 E<67617465207369676e>-.4 E F0<29>A F1 <2d2d6162632d6e65672d6c6f67>100 264 Q F0<28>2.5 E F2<74616b>A 2.5<656c> -.1 G .2 -.1<6f67206f>-2.5 H 2.5<6673>.1 G<7472>-2.5 E <65616d2076616c7565732c206e65>-.37 E<67617465207369676e>-.4 E F0<29>A F1 <2d7466>120 276 Q F0 .404<7472616e73666f726d73207468652076>2.904 F .405< 616c756573206f662074686520696e707574206d6174726978206163636f7264696e6720 746f>-.25 F F1<3c74662d737065633e>2.905 E F0<2e>A F1<2d6162632d7466> 2.905 E F0 .405<7472616e73666f726d7320746865>2.905 F .707 <73747265616d2076>120 288 R .707<616c75657320287768656e>-.25 F F1 <2d2d616263>3.207 E F0 .706<6973207573656429206163636f7264696e6720746f> 3.207 F F1<3c74662d737065633e>3.206 E F0<2e>A F1 <2d2d6162632d6e65672d6c6f67>5.706 E F0<616e64>3.206 E F1 <2d2d6162632d6e65672d>3.206 E<6c6f673130>120 300 Q F0 .565 <696d706c792074686174207468652073747265616d20696e7075742076>3.065 F .566 <616c75657320617265207265706c6163656420627920746865206e65>-.25 F -.05 <6761>-.15 G .566<74696f6e206f66207468656972206c6f67206f72206c6f673130> .05 F -.25<7661>120 312 S 2.072<6c7565732c207265737065637469>.25 F -.15 <7665>-.25 G 4.572<6c792e20546865>.15 F 2.072 <726561736f6e20666f722074686569722065>4.572 F 2.072 <78697374656e636520697320646f63756d656e74656420696e>-.15 F F1 <6d6378696f283529>4.571 E F0 7.071<2e46>C 2.071<6f722061>-7.221 F<646573 6372697074696f6e206f6620746865207472616e73666f726d206c616e67756167652065> 120 324 Q<78637065637465642f616363657074656420696e>-.15 E F1 <3c74662d737065633e>2.5 E F0<726566657220746f207468652073616d652e>2.5 E F1<2d77726974652d6772617068>100 348 Q F0<3c666e616d653e2028>2.5 E F2 <7772697465206772>A<617068>-.15 E F0<29>A F1<2d77726974652d677261706878> 100 360 Q F0<3c666e616d653e2028>2.5 E F2<7772697465207472>A <616e73666f726d6564206772>-.15 E<617068>-.15 E F0<29>A F1 <2d77726974652d657870616e646564>100 372 Q F0<3c666e616d653e2028>2.5 E F2 <77726974652065>A<7870616e646564206772>-.2 E<617068>-.15 E F0<29>A F1 <2d2d77726974652d6c696d6974>100 384 Q F0<28>2.5 E F2 <7772697465206d636c207072>A<6f63657373206c696d6974>-.45 E F0<29>A .595 <546865208c727374207477>120 396 R 3.095<6f6f>-.1 G .595 <7074696f6e732061726520736f6d65>-3.095 F .595<77686174206f75746461746564 2c20696e2074686174207468652070726566657265642077>-.25 F .595 <6179206f66206c6f6164696e67206e657477>-.1 F<6f726b73>-.1 E 1.679 <6973206279207573696e67>120 408 R F1<6d63786c6f6164283129>4.179 E F0 4.179<2e54>C 1.678<6865206f7074696f6e>-4.179 F F1 <2d77726974652d657870616e646564>4.178 E F0 1.678 <63616e2062652075736566756c20666f722065>4.178 F 1.678 <78706c6f72696e67206d6f7265>-.15 F .306<636f6d706c69636174656420696e7075 74207472616e73666f726d6174696f6e73207468617420696e636f72706f726174652061 6e2065>120 420 R .307<7870616e73696f6e20737465702c2062>-.15 F .307 <7574206973206e6f74207265616c6c792072656c652d>-.2 F -.25<7661>120 432 S 1.208<6e7420666f722070726f64756374696f6e207573652e20546865206c617374206f 7074696f6e206973206d61696e6c7920656475636174696f6e616c20616e6420666f7220 616e616c797a696e6720746865>.25 F F1<6d636c>3.707 E F0 <70726f6365737320697473656c662e>120 444 Q F1<2d736368656d65>100 468 Q F0 <3c6e756d3e2028>2.5 E F2<7573652061207072>A<657365742072>-.37 E <65736f7572>-.37 E<6365207363>-.37 E<68656d65>-.15 E F0<29>A F1<2d72>100 480 Q<65736f7572>-.18 E<6365>-.18 E F0<3c6e756d3e2028>2.5 E F2 <616c6c6f77206e206e65696768626f7572>A 2.5<7374>-.1 G<6872>-2.5 E <6f7567686f7574>-.45 E F0<29>A .36 <5468657265206172652063757272656e746c79207365>120 492 R -.15<7665>-.25 G 2.861<6e64>.15 G<6966>-2.861 E .361 <666572656e74207265736f7572636520736368656d65732c20696e6465>-.25 F -.15 <7865>-.15 G 2.861<6431>.15 G 2.861<2e2e372e2048696768>-2.861 F .361 <736368656d657320726573756c7420696e>2.861 F .222<6d6f72652065>120 504 R <7870656e7369>-.15 E .522 -.15<76652063>-.25 H .222<6f6d7075746174696f6e 732074686174206d617920706f737369626c79206265206d6f7265206163637572617465 2e2054686520646566>.15 F .221<61756c7420736368656d6520697320342e>-.1 F <5768656e>120 516 Q F1<6d636c>2.507 E F0 .007 <697320646f6e652c2069742077696c6c206769>2.507 F .308 -.15<766520612067> -.25 H .008<72616465202874686520736f2063616c6c6564>.15 F F2 .008 <6a7572792073796e6f70736973>2.508 F F0 2.508<2974>C 2.508<6f74>-2.508 G .008<686520617070726f7072696174656e657373206f66>-2.508 F .051 <74686520736368656d6520757365642e>120 528 R F2 2.551<416c>2.551 G .051 <6f77206772>-2.551 F .051<61646520646f6573206e6f74206e65636573736172696c 7920696d706c792074686174207468652072>-.15 F .05 <6573756c74696e6720636c7573746572696e6720697320626164>-.37 F F0 2.5 <2d62>120 540 S<757420616e>-2.7 E<7977>-.15 E<6179>-.1 E 2.5<2c616c>-.65 G .5 -.25<6f772067>-2.5 H<726164652073686f756c6420626520726561736f6e2074 6f2074727920666f7220612068696768657220736368656d652e>.25 E .73 <55736520746865>120 564 R F1<2d72>3.23 E<65736f7572>-.18 E<6365>-.18 E F2<3c6e756d3e>2.5 E F0 .73<6f7074696f6e20746f2063617020666f722065616368 206e6f64657320746865206e756d626572206f66206e65696768626f7572732074726163 6b>3.23 F<6564>-.1 E<647572696e6720636f6d7075746174696f6e206174>120 576 Q F2<3c6e756d3e>2.5 E F0<6e6f6465732e>2.5 E<546865>120 600 Q F1<5052> 2.974 E .474<554e494e47204f5054494f4e53>-.3 F F0 .473<73656374696f6e2063 6f6e7461696e7320616e20656c61626f72617465206465736372697074696f6e206f6620 7468652077>2.974 F<6179>-.1 E F1<6d636c>2.973 E F0<6d616e2d>2.973 E .979 <61676573207265736f75726365732c2073686f756c6420796f7520626520696e746572 65737465642e>120 612 R .979<496e206361736520796f75206172652077>5.979 F .98<6f72726965642061626f7574207468652076>-.1 F .98 <616c69646174696f6e206f66>-.25 F .102 <74686520726573756c74696e6720636c7573746572696e67732c20746865>120 624 R F1<6d636c666171283729>2.602 E F0 .102<73656374696f6e20686173207365>2.602 F -.15<7665>-.25 G .101<72616c20656e74726965732064697363757373696e672074 6869732069737375652e20546865>.15 F 1.284 <626f74746f6d206c696e65206973207468617420796f75206861>120 636 R 1.585 -.15<76652074>-.2 H 3.785<6f63>.15 G 1.285<6f6d706172652074686520636c75 73746572696e677320726573756c74696e672066726f6d20646966>-3.785 F 1.285 <666572656e7420736368656d6573>-.25 F 1.01<28616e64206f746865727769736520 6964656e746963616c20706172616d657465727329207573696e67207574696c69746965 732073756368206173>120 648 R F1 1.009<636c6d2064697374>3.509 F F0<2c>A F1 1.009<636c6d20696e66>3.509 F<6f>-.25 E F0 1.009<6f6e20746865206f6e65> 3.509 F<68616e642c20616e6420796f7572206f>120 660 Q<776e20736f756e64206a 7564676d656e74206f6e20746865206f746865722068616e642e>-.25 E 1.323 <496620796f757220696e7075742067726170682069732065>120 684 R 1.323 <787472656d656c792064656e73652c207769746820616e2061>-.15 F -.15<7665>-.2 G 1.323<72616765206e6f6465206465>.15 F 1.324 <677265652028692e652e20746865206e756d626572206f66>-.15 F .611 <6e65696768626f75727320706572206e6f646529207468617420697320736f6d65>120 696 R .611<77686572652061626f>-.25 F .911 -.15<76652035>-.15 H .61<3030 2c20796f75206d6179206e65656420746f208c6c7465722074686520696e707574206772 617068>.15 F<62792072656d6f>120 708 Q <76696e672065646765732c20666f722065>-.15 E <78616d706c65206279207573696e67206f6e65206f66>-.15 E F1 <2d74662027236365696c6e62282927>2.5 E F0<6f72>2.5 E F1 <2d74662027236b6e6e282927>2.5 E F0<2e>A<6d636c2031322d313335>20 768 Q <3134204d61792032303132>161.505 E<36>202.335 E 0 Cg EP %%Page: 7 7 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F/F1 10/Times-Bold@0 SF<2d2d73686f> 100 84 Q<772d736368656d6573>-.1 E F0<28>2.5 E/F2 10/Times-Italic@0 SF <73686f77207072>A<657365742072>-.37 E<65736f7572>-.37 E<6365207363>-.37 E<68656d6573>-.15 E F0<29>A<53686f>120 96 Q<7773207468652065>-.25 E <78706c696369742073657474696e677320746f2077686963682074686520646966>-.15 E<666572656e742070726573657420736368656d657320636f72726573706f6e642e> -.25 E .483<546865206368617261637465726973746963732061726520777269747465 6e20696e207468652073616d6520666f726d617420286d6f7265206f72206c6573732920 617320746865206f757470757420747269676765726564206279>120 120 R F1 <2d76207072756e696e67>120 132 Q F0<2e>A F1<2d56>100 156 Q F0 <3c7374723e2028>2.5 E F2<766572626f736974792074797065206f66>A<66>-.18 E F0<29>A<53656520746865>120 168 Q F1<2d76>2.5 E F0 <6f7074696f6e2062656c6f>2.5 E<772e>-.25 E F1<2d76>100 192 Q F0 <3c7374723e2028>2.5 E F2<766572626f736974792074797065206f6e>A F0<29>A <5468657365206172652074686520646966>120 204 Q<666572656e742076>-.25 E <6572626f73697479206d6f6465733a>-.15 E F1<7072756e696e67>120 228 Q <6578706c61696e>120 240 Q<636c73>120 252 Q<616c6c>120 264 Q<2d71>100 288 Q F0<3c737065633e2028>2.5 E F2<6c6f>A 2.5<676c>-.1 G -.15<6576>-2.5 G <656c73>.15 E F0<29>A 1.6 -.8<546f206d>120 312 T<616b>.8 E 2.5<656d>-.1 G<636c2061732071756965742061732063616e2062652c20616464>-2.5 E F1 <2d712078202d5620616c6c>2.5 E F0 <746f2074686520636f6d6d616e64206c696e652e>2.5 E<546865>120 336 Q F1 <2d71>3.208 E F0 .708<6f7074696f6e20676f>3.208 F -.15<7665>-.15 G .708 <726e7320612067656e6572616c206c6f6767696e67206d656368616e69736d2e>.15 F .707 <54686520666f726d61742061636365707465642069732064657363726962656420696e> 5.708 F<746865>120 348 Q F1<74696e6765612e6c6f67283729>2.5 E F0 <6d616e75616c20706167652e>2.5 E 1.189 <546865206f74686572206f7074696f6e7320676f>120 372 R -.15<7665>-.15 G 1.189<726e2076>.15 F 1.189<6572626f73697479206c65>-.15 F -.15<7665>-.25 G 1.189<6c732073706563698c6320746f206d636c2e>.15 F F1<2d7620616c6c>3.689 E F0 1.19<7475726e73207468656d20616c6c206f6e2c>3.689 F F1<2d5620616c6c> 3.69 E F0 .706<7475726e73207468656d20616c6c206f66>120 384 R<662e>-.25 E F1<2d76>3.206 E F2<737472>2.5 E F0<616e64>3.206 E F1<2d56>3.206 E F2 <737472>2.5 E F0 .706<7475726e206f6e2f6f66>3.206 F 3.206<6674>-.25 G .706<68652073696e676c65206d6f6465>-3.206 F F2<737472>3.205 E F0 <28666f72>3.205 E F2<737472>3.205 E F0 .705 <657175616c20746f206f6e65206f66>3.205 F F1<7072756e696e67>120 396 Q F0 <2c>A F1<636c73>2.5 E F0 2.5<2c6f>C<72>-2.5 E F1<6578706c61696e>2.5 E F0 <292e20456163682076>A<6572626f73697479206d6f6465206973206769>-.15 E -.15 <7665>-.25 G 2.5<6e69>.15 G<7473206f>-2.5 E<776e20656e7472792062656c6f> -.25 E<772e>-.25 E F1<2d76206578706c61696e>100 420 Q F0 .405 <54686973206d6f64652063617573657320746865206f7574707574206f662065>120 432 R .405<78706c616e61746f7279206865616465727320696c6c756d696e6174696e 6720746865206f75747075742067656e6572617465642077697468>-.15 F<746865>120 444 Q F1<7072756e696e67>2.5 E F0 -.15<7665>2.5 G <72626f73697479206d6f64652e>.15 E F1<2d76207072756e696e67>100 468 Q F0 .03<54686973206d6f646520636175736573206f7574707574206f66207265736f757263 652d72656c61746564207175616e7469746965732e204974206861732061207365706172 61746520656e74727920696e20746865205052>120 480 R<554e2d>-.4 E <494e47204f5054494f4e532073656374696f6e2e>120 492 Q F1<2d7620636c73>100 516 Q F0 .702<54686973206d6f646520286f6e20627920646566>120 528 R .702<61 756c7429207072696e74732061207465727365206c697374206f66206368617261637465 72697374696373206f662074686520636c7573746572696e6773206173736f6369617465 64>-.1 F .093<7769746820696e7465726d6564696174652069746572616e64732e2054 68652063686172616374657269737469637320617265>120 540 R F1<452f56>2.593 E F0<2c>A F1<636c73>2.592 E F0<2c>A F1<6f6c6170>2.592 E F0 2.592<2c61>C <6e64>-2.592 E F1<6464>2.592 E F0 2.592<2e54>C<6865>-2.592 E 2.592<7972> -.15 G<65737065637469>-2.592 E -.15<7665>-.25 G<6c79>.15 E .822<7374616e 6420666f7220746865206e756d626572206f66206f7574676f696e672061726373207065 72206e6f64652028617320616e2061>120 552 R -.15<7665>-.2 G .823 <72616765292c20746865206e756d626572206f6620636c75737465727320696e>.15 F .474<746865206f>120 564 R -.15<7665>-.15 G .474<726c617070696e6720636c75 73746572696e67206173736f6369617465642077697468207468652069746572616e642c 20746865206e756d626572206f66206e6f64657320696e206f>.15 F -.15<7665>-.15 G .473<726c61702c20616e64>.15 F<746865>120 576 Q F2<6461>2.732 E 2.732 <6764>-.1 G<65707468>-2.732 E F0 .232 <6173736f6369617465642077697468207468652044>2.732 F 1.032 -.4<41472028> -.4 H .232<6469726563746564206163>.4 F .233<79636c6963206772617068292061 73736f6369617465642077697468207468652069746572616e642e>-.15 F -.15<466f> 120 588 S 2.524<726d>.15 G .024 <6f726520696e666f726d6174696f6e206f6e20746869732044>-2.524 F .824 -.4 <41472072>-.4 H .024<6566657220746f20746865>.4 F F1<2d64756d70>2.524 E F0 .024<6f7074696f6e206465736372697074696f6e20696e2074686973206d616e7561 6c20616e64>2.524 F<616c736f>120 600 Q F1<6d636c666171283729>2.5 E F0<2e> A F1<5374616e64617264206c6f6720696e66>120 624 Q<6f726d6174696f6e>-.25 E F0 -.15<6578>120 648 S 28.77<70612054686973>.15 F<6769>3.461 E -.15 <7665>-.25 G 3.461<7374>.15 G .962<686520726174696f206f6620283129207468 65206e756d626572206f6620656467657320616674657220696e697469616c2065> -3.461 F .962<7870616e73696f6e2c206265666f7265>-.15 F<7072756e696e672c20 746f2028322920746865206e756d626572206f66206564676573206265666f726520696e 697469616c2065>170 660 Q<7870616e73696f6e2e>-.15 E -.15<6578>120 672 S 28.21<70622054686973>.15 F<6769>2.897 E -.15<7665>-.25 G 2.897<7374>.15 G .396<686520726174696f206f662028312920746865206e756d626572206f66206564 6765732061667465722065>-2.897 F .396 <7870616e73696f6e20616e64207072756e696e672c20746f>-.15 F<28322920746865 206e756d626572206f66206564676573206265666f726520696e697469616c2065>170 684 Q<7870616e73696f6e2e>-.15 E -.15<6578>120 696 S 28.77 <70632054686973>.15 F<6769>2.896 E -.15<7665>-.25 G 2.896<7374>.15 G .396<686520726174696f206f662028312920746865206e756d626572206f6620656467 65732061667465722065>-2.896 F .397 <7870616e73696f6e20616e64207072756e696e672c20746f>-.15 F<28322920746865 206e756d626572206f66206564676573206f6620746865206f726967696e616c20696e70 75742067726170682e>170 708 Q 31.39<666d762054686973>120 720 R<6769>7.567 E -.15<7665>-.25 G 7.567<7374>.15 G 5.067<68652070657263656e74616765206f 66206e6f64657320286d617472697820636f6c756d6e732920666f722077686963682066 756c6c>-7.567 F<6d636c2031322d313335>20 768 Q<3134204d61792032303132> 161.505 E<37>202.335 E 0 Cg EP %%Page: 8 8 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F<6d61747269782f76>170 84 Q <6563746f7220636f6d7075746174696f6e2077>-.15 E<617320757365642028617320 6f70706f73656420746f207573696e6720612073706172736520746563686e6971756529 2e>-.1 E/F1 10/Times-Bold@0 SF<2d6161>100 108 Q F0<3c7374723e2028>2.5 E /F2 10/Times-Italic@0 SF<617070656e64203c7374723e20746f20737566>A<8c78> -.18 E F0<29>A<53656520746865>120 120 Q F1<2d6170>2.5 E F0 <6f7074696f6e2062656c6f>2.5 E<772e>-.25 E F1<2d6170>100 144 Q F0 <3c7374723e2028>2.5 E F2 <757365203c7374723e206173208c6c65206e616d65207072>A<658c78>-.37 E F0<29> A .947<496620746865>120 156 R F1<2d6f>3.447 E F2<666e616d65>2.5 E F0 .947<6f7074696f6e206973206e6f7420757365642c>3.447 F F1<6d636c>3.447 E F0 .947<77696c6c206372656174652061208c6c65206e616d652028666f72207772697469 6e67206f757470757420746f292074686174>3.447 F 1.723<73686f756c6420756e69 7175656c7920636861726163746572697a652074686520696d706f7274616e7420706172 616d6574657273207573656420696e207468652063757272656e7420696e>120 168 R -.2<766f>-.4 G 1.722<636174696f6e206f66>.2 F .029 <6d636c2e2054686520646566>120 180 R .029<61756c7420666f726d6174206973> -.1 F F1<6f75742e666e616d652e737566>2.529 E F0 2.529<2c77>C<68657265> -2.529 E F1<6f7574>2.529 E F0 .029 <69732073696d706c7920746865206c69746572616c20737472696e67>2.529 F/F3 10 /Courier@0 SF<6f7574>2.53 E F0<2c>A F1<666e616d65>2.53 E F0 1.053 <697320746865208c727374206172>120 192 R 1.052<67756d656e7420636f6e746169 6e696e6720746865206e616d65206f6620746865208c6c65202877697468207468652067 726170682920746f20626520636c757374657265642c20616e64>-.18 F<7768657265> 120 204 Q F1<737566>2.5 E F0<69732074686520737566>2.5 E<8c7820656e636f64 696e67206120736574206f6620706172616d657465727320286465736372696265642066 7572746865722062656c6f>-.25 E<77292e>-.25 E<546865>120 228 Q F1<2d6170> 2.765 E F2<737472>2.5 E F0 .265<6f7074696f6e2073706563698c65732061207072 658c7820746f2075736520726174686572207468616e>2.765 F F1 <6f75742e666e616d65>2.765 E F0 .265<617320736b>2.765 F .265 <6574636865642061626f>-.1 F -.15<7665>-.15 G 5.265<2e48>.15 G -.25<6f77> -5.265 G<2d>.25 E -2.15 -.25<65762065>120 240 T -.4<722c>.25 G F1 <6d636c>3.222 E F0 .322<77696c6c20696e7465727072657420746865206368617261 6374657220273d272c2069662070726573656e7420696e>2.822 F F2<737472>2.822 E F0 2.822<2c61>C 2.822<736170>-2.822 G .321 <6c616365686f6c64657220666f722074686520696e707574208c6c65>-2.822 F <6e616d652e>120 252 Q .213<496620746865>120 276 R F1<2d6161>2.713 E F2 <737472>2.5 E F0 .213<6f7074696f6e20697320757365642c>2.713 F F1<6d636c> 2.713 E F0 .213<77696c6c20617070656e64>2.713 F F1<737472>2.713 E F0 .213 <746f2074686520737566>2.713 F<8c78>-.25 E F1<737566>2.714 E F0 .214 <6372656174656420627920697473656c662e>2.714 F -1.1<596f>5.214 G 2.714 <7563>1.1 G<616e>-2.714 E<757365207468697320696620796f75206e65656420746f 20656e636f646520736f6d652065>120 288 Q<7874726120696e666f726d6174696f6e 20696e20746865208c6c65206e616d6520737566>-.15 E<8c782e>-.25 E .89 <54686520737566>120 312 R .89 <8c7820697320636f6e737472756374656420617320666f6c6c6f>-.25 F .89 <77732e20546865>-.25 F F1<2d49>3.39 E F2<66>2.5 E F0<616e64>3.39 E F1 <2d736368656d65>3.39 E F0 .89<706172616d657465722061726520616c>3.39 F -.1<7761>-.1 G .89<797320656e636f6465642e>.1 F .044 <4f74686572206f7074696f6e732c2073756368206173>120 324 R F1<2d7069>2.544 E F2<66>2.5 E F0<616e64>2.544 E F1<2d6b6e6e>2.545 E F0 .045 <617265206f6e6c7920656e636f64656420696620746865>2.545 F 2.545<7961>-.15 G .045<726520757365642e20416e>-2.545 F 2.545<7972>-.15 G .045 <65616c206172>-2.545 F<67756d656e74>-.18 E F2<66>2.545 E F0 .47 <697320656e636f646564207573696e67>120 336 R F2 -.2<6578>2.97 G .47 <6163746c79206f6e65>.2 F F0 .47<747261696c696e6720646967697420626568696e 642074686520646563696d616c20736570617261746f722028776869636820697473656c 66206973206e6f74>2.97 F .812<7772697474656e292e205468652073657474696e67> 120 348 R F1<2d4920332e3134>3.313 E F0 .813 <6973207468757320656e636f646564206173204933312e20546865>3.313 F F1 <2d736368656d65>3.313 E F0 .813 <6f7074696f6e20697320656e636f646564207573696e67>3.313 F 1.004 <746865206c65747465722027>120 360 R 1.004<73272c20616c6c206f74686572206f 7074696f6e73206d656e74696f6e656420686572652061726520656e636f646564206173 207468656d73656c76>-.55 F 1.003<657320287374726970706564206f6620746865> -.15 F -.05<6879>120 372 S<7068656e292e2046>.05 E<6f722065>-.15 E <78616d706c65>-.15 E F3<6d636c20736d616c6c2e6d6369202d492033202d6320322e 35202d706920302e38202d736368656d652035>120 396 Q F0 3.07 <726573756c747320696e20746865208c6c65206e616d65>120 420 R F3 <6f75742e736d616c6c2e6d63692e493330733563323570693038>5.57 E F0 8.07 <2e49>C 5.57<6679>-8.07 G 3.07<6f752077>-5.57 F 3.07 <616e7420746f206b6e6f>-.1 F<77>-.25 E<6265666f726568616e642077686174208c 6c65206e616d652077696c6c2062652070726f64756365642c2075736520746865>120 432 Q F1<2d617a>2.5 E F0<6f7074696f6e2e>2.5 E F1<2d617a>100 456 Q F0<28> 2.5 E F2<73686f77206f7574707574208c6c65206e616d6520616e642065>A<786974> -.2 E F0<29>A F1<2d6178>100 468 Q F0<28>2.5 E F2 <73686f77206f757470757420737566>A<8c7820616e642065>-.18 E<786974>-.2 E F0<29>A<4966>120 480 Q F1<6d636c>2.536 E F0 .036<6175746f6d61746963616c 6c7920636f6e737472756374732061208c6c65206e616d652c2069742063616e20626520 68656c7066756c20746f206b6e6f>2.536 F .036 <776e206265666f726568616e6420776861742074686174>-.25 F .547 <8c6c65206e616d652077696c6c2062652e20557365>120 492 R F1<2d617a>3.048 E F0 .548<616e64206d636c2077696c6c20777269746520746865208c6c65206e616d6520 746f205354444f555420616e642065>3.048 F .548<7869742e20546869732063616e> -.15 F .61<62652075736564206966206d636c20697320696e7465>120 504 R .61 <67726174656420696e746f206f7468657220736f667477>-.15 F .61<61726520666f 7220776869636820746865206175746f6d61746963206372656174696f6e206f6620756e 69717565>-.1 F<8c6c65206e616d657320697320636f6e>120 516 Q -.15<7665>-.4 G<6e69656e742e>.15 E 1.338<427920646566>120 540 R 1.339<61756c74206d636c 20696e636f72706f72617465732074686520696e707574208c6c65206e616d6520696e74 6f20746865206f7574707574208c6c65206e616d6520616e6420617070656e64732061> -.1 F .143<73686f727420737566>120 552 R .143<8c782064657363726962696e67 20746865206d6f737420696d706f7274616e74206f7074696f6e2073657474696e67732e 20557365>-.25 F F1<2d6178>2.643 E F0 .142 <746f208c6e64206f757420776861742074686174207375662d>2.643 F <8c782069732e>120 564 Q<546869732063616e2062652075736566756c20696e207772 617070657220706970656c696e652073637269707473207375636820617320636c78636f 617273652e>5 E F1<2d616e6e6f74>100 588 Q F0<3c7374723e2028>2.5 E F2 <64756d6d7920616e6e6f746174696f6e206f7074696f6e>A F0<29>A F1<6d636c>120 600 Q F0 .884<7772697465732074686520636f6d6d616e64206c696e65207769746820 77686963682069742077>3.384 F .885<617320696e>-.1 F -.2<766f>-.4 G -.1 <6b65>.2 G 3.385<6474>.1 G 3.385<6f74>-3.385 G .885 <6865206f757470757420636c7573746572696e67208c6c652e20557365>-3.385 F 2.368<74686973206f7074696f6e20746f20696e636c75646520616e>120 612 R 4.868 <7961>-.15 G 2.367<64646974696f6e616c20696e666f726d6174696f6e2e204d434c 20646f6573206e6f7468696e6720776974682074686973206f7074696f6e>-4.868 F -.15<6578>120 624 S<6365707420636f70>.15 E <79696e67206974206173206a757374206465736372696265642e>-.1 E F1<2d7465> 100 648 Q F0<3c696e743e2028>2.5 E F2<2365>A<7870616e73696f6e20746872>-.2 E<65616473>-.37 E F0<29>A .163 <546872656164696e672069732075736566756c20696620796f75206861>120 660 R .463 -.15<76652061206d>-.2 H .163 <756c74692d70726f636573736f722073797374656d2e>.15 F F1<6d636c>2.663 E F0 .164<77696c6c20737061>2.663 F<776e>-.15 E F2<6b>2.664 E F0 .164 <74687265616473206f6620636f6d2d>2.664 F .011<7075746174696f6e2e20496620 74686573652061726520636f6d707574656420696e20706172616c6c656c202874686973 20646570656e6473206f6e20746865206e756d626572206f6620435055732061>120 672 R -.25<7661>-.2 G .011<696c61626c6520746f>.25 F<746865206d636c2070726f63 657373292069742077696c6c207370656564207570207468652070726f63657373206163 636f7264696e676c792e>120 684 Q .513<5768656e20746872656164696e672c206974 2069732062657374206e6f7420746f207475726e206f6e207072756e696e672076>120 708 R .514<6572626f73697479206d6f646520696620796f7520617265206c65747469 6e67206d636c2072756e>-.15 F .457 <756e617474656e6465642c20756e6c65737320796f752077>120 720 R .457<616e74 20746f207363727574696e697a6520697473206f7574707574206c617465722e20546869 732069732062656361757365206974206d616b>-.1 F<6573>-.1 E F1<6d636c>2.956 E F0<72756e>2.956 E<6d636c2031322d313335>20 768 Q <3134204d61792032303132>161.505 E<38>202.335 E 0 Cg EP %%Page: 9 9 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F<736f6d65>120 84 Q <7768617420736c6f>-.25 E<776572>-.25 E 2.5<2c61>-.4 G <6c74686f7567682074686520646966>-2.5 E <666572656e6365206973206e6f74206472616d617469632e>-.25 E/F1 10 /Times-Bold@0 SF<2d7069>100 108 Q F0<3c6e756d3e2028>2.5 E/F2 10 /Times-Italic@0 SF<7072>A<652d696e8d6174696f6e>-.37 E F0<29>A F1<2d7068> 100 120 Q F0<3c6e756d3e2028>2.5 E F2<7072>A <652d696e8d6174696f6e2c206d61782d626f756e64>-.37 E F0<29>A .693 <496620757365642c>120 132 R F1<6d636c>3.193 E F0 .694<77696c6c206170706c 7920696e8d6174696f6e206f6e652074696d6520746f2074686520696e70757420677261 7068206265666f726520656e746572696e6720746865206d61696e2070726f2d>3.193 F .538<636573732e20546869732063616e2062652075736566756c20666f72206d616b69 6e67207468652065646765207765696768747320696e2061206772617068206569746865 72206d6f726520686f6d6f67656e656f7573>120 144 R .3<287768696368206d617920 726573756c7420696e206c657373206772616e756c617220636c7573746572696e677329 206f72206d6f72652068657465726f67656e656f757320287768696368206d6179207265 73756c7420696e>120 156 R .32 <6d6f7265206772616e756c617220636c7573746572696e6773292e>120 168 R .319 <486f6d6f67656e65697479206973206163686965>5.319 F -.15<7665>-.25 G 2.819 <6466>.15 G .319<6f722076>-2.819 F<616c756573>-.25 E F2<3c6e756d3e>2.819 E F0 .319<6c657373207468616e206f6e652c206865742d>2.819 F 4.65 <65726f67656e6569747920666f722076>120 180 R 4.65<616c756573206c6172>-.25 F 4.65<676572207468616e206f6e652e>-.18 F -1.11<5661>9.65 G 4.65<6c756573 20746f2074727920617265206e6f726d616c6c7920696e207468652072616e6765>1.11 F/F3 10/Courier@0 SF<5b322e302c31302e305d>120 192 Q F0<2e>A<546865>120 216 Q F1<2d7068>3.8 E F0 1.3<6f7074696f6e206973207370656369616c20696e20 7468617420697420646f6573206e6f742072657363616c6520636f6c756d6e7320746f20 62652073746f636861737469632e20496e73746561642c206974>3.8 F .09<72657363 616c657320636f6c756d6e7320736f207468617420746865206d6178696d756d2076>120 228 R .09<616c756520666f756e6420696e2074686520636f6c756d6e20737461797320 7468652073616d6520616674657220696e8d612d>-.25 F 1.894<74696f6e2077>120 240 R 1.893<6173206170706c6965642e205468657265206973206c6974746c65207369 676e698c63616e636520746f20746869732c20616e642077686174206c6974746c652074 6865726520697320697320756e646f63752d>-.1 F<6d656e7465642e>120 252 Q F1 <2d6966>100 276 Q F0<3c6e756d3e2028>2.5 E F2 <73746172742d696e8d6174696f6e>A F0<29>A .693<496620757365642c>120 288 R F1<6d636c>3.193 E F0 .694<77696c6c206170706c7920696e8d6174696f6e206f6e65 2074696d6520746f2074686520696e707574206772617068206265666f726520656e7465 72696e6720746865206d61696e2070726f2d>3.193 F .827 <636573732e2054686520646966>120 300 R .827<666572656e63652077697468>-.25 F F1<2d7069>3.327 E F0 .827<69732074686174207769746820746865206c61747465 72206f7074696f6e206d636c206d6179206170706c79206365727461696e207472616e73 666f72>3.327 F<2d>-.2 E .573<6d6174696f6e732061667465722072656164696e67 20696e20746865206d6174726978207375636820617320616464696e67206f72206d6f64 696679696e67206c6f6f70732e2054686520707572706f7365206f6620746865>120 312 R F1<2d6966>120 324 Q F0 2.194<286d6e656d6f6e696320666f72>4.694 F F2 <696e8d6174696f6e2d8c72>4.694 E<7374>-.1 E F0 4.694<296f>C 2.194 <7074696f6e20697320746f20757365206974206f6e20677261706873207361>-4.694 F -.15<7665>-.2 G 4.693<6477>.15 G 2.193<69746820746865>-4.693 F F1 <2d2d77726974652d>4.693 E<657870616e646564>120 336 Q F0 <6f7074696f6e20616e6420636f6e>2.5 E .3 -.15<7665792074>-.4 H 2.5<6f6d> .15 G<636c20746861742069742073686f756c64206e6f74206170706c792074686f7365 207472616e73666f726d6174696f6e732e>-2.5 E F1<2d64756d702d696e746572>100 360 Q -.1<7661>-.1 G<6c>.1 E F0<3c693a6a3e2028>2.5 E F2 <64756d7020696e74657276616c>A F0<29>A F1<2d64756d702d696e746572>100 372 Q -.1<7661>-.1 G<6c>.1 E F2<616c6c>2.5 E F0 1.106 <44756d7020647572696e6720697465726174696f6e7320692e2e6a2d312e20557365> 120 384 R F2<616c6c>3.606 E F0 1.107 <746f2064756d7020696e20616c6c20697465726174696f6e732e2053656520746865> 3.606 F F1<2d64756d70>3.607 E F2<737472>2.5 E F0<6f7074696f6e>3.607 E <62656c6f>120 396 Q<772e>-.25 E F1<2d64756d702d6d6f64756c6f>100 420 Q F0 <3c696e743e2028>2.5 E F2<64756d7020692b302e2e692b3c696e743e2e2e>A F0<29> A .721<53616d706c696e6720726174653a2073656c656374206f6e6c79207468657365 20697465726174696f6e7320696e207468652064756d7020696e74657276>120 432 R 3.221<616c2e20536565>-.25 F<746865>3.22 E F1<2d64756d70>3.22 E F2 <737472>2.5 E F0<6f7074696f6e>3.22 E<62656c6f>120 444 Q<772e>-.25 E F1 <2d64756d702d7374656d>100 468 Q F0<3c7374656d3e2028>2.5 E F2 <8c6c65207374656d>A F0<29>A .708<5365742074686520746865207374656d20666f 72208c6c65206e616d6573206f662064756d706564206f626a656374732028646566>120 480 R<61756c74>-.1 E F2<6d636c>3.209 E F0 .709<292e2053656520746865>B F1 <2d64756d70>3.209 E F2<737472>2.5 E F0<6f7074696f6e>3.209 E<62656c6f>120 492 Q<772e>-.25 E F1<2d64756d70>100 516 Q F0<3c7374723e2028>2.5 E F2 <74797065>A F0<29>A F2<737472>120 528 Q F0 .165<697320636865636b>2.665 F .164<656420666f7220737562737472696e67206f6363757272656e636573206f662074 686520666f6c6c6f>-.1 F .164<77696e6720656e74726965732e>-.25 F .164 <526570656174656420757365206f66>5.164 F F1<2d64756d70>2.664 E F0<6973> 2.664 E<616c736f20616c6c6f>120 540 Q<7765642e>-.25 E F1<697465>120 564 Q <646167>120 576 Q<636c73>120 588 Q<636872>120 600 Q<6c696e6573>120 612 Q <636174>120 624 Q<6c696e6573>120 648 Q F0<616e64>3.749 E F1<636174>3.749 E F0 1.249<6368616e676520746865206d6f6465206f662064756d70696e672e205468 65208c727374206368616e676573207468652064756d7020666f726d617420746f206120 6c696e65>3.749 F 1.698<626173656420706169727769736520666f726d6174207261 74686572207468616e2074686520646566>120 660 R 1.697<61756c74206d636c206d 617472697820666f726d61742e20546865207365636f6e642063617573657320616c6c> -.1 F .801<64756d706564206974656d7320746f2062652064756d70656420746f2074 686520646566>120 672 R .802<61756c742073747265616d207573656420666f722074 6865206f757470757420636c7573746572696e672c207768696368206973>-.1 F <617070656e6465642061742074686520656e642e>120 684 Q<546865>120 708 Q F1 <697465>3.055 E F0 .555<6f7074696f6e20777269746573>3.055 F F1<6d636c> 3.055 E F0 .554<69746572616e647320746f208c6c652e20546865>3.054 F F1 <636c73>3.054 E F0 .554<6f7074696f6e2077726974657320636c7573746572696e67 73206173736f6369617465642077697468>3.054 F 1.296 <6d636c2069746572616e647320746f208c6c652e>120 720 R 1.296<54686573652063 6c75737465727320617265206f627461696e65642066726f6d206120706172746963756c 6172206469726563746564206163>6.296 F 1.297<79636c6963206772617068>-.15 F <6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<39> 202.335 E 0 Cg EP %%Page: 10 10 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F<286162627265>120 84 Q .233 <7669617465642061732044>-.25 F -.4<4147>-.4 G 2.732<2961>.4 G .232 <73736f636961746564207769746820656163682069746572616e642e20546865>-2.732 F/F1 10/Times-Bold@0 SF<646167>2.732 E F0 .232 <6f7074696f6e2077726974657320746861742044>2.732 F 1.032 -.4<41472074>-.4 H 2.732<6f8c>.4 G<6c652e>-2.732 E 1.392<5468652044>120 96 R 2.192 -.4 <41472063>-.4 H 1.392<616e206f7074696f6e616c6c79206265206675727468657220 7072756e656420616e64207468656e206167>.4 F 1.392 <61696e20626520696e746572707265746564206173206120636c7573746572696e67> -.05 F<7573696e67>120 108 Q F1 .128<636c6d20696d6163>2.628 F F0 2.628 <2c61>C<6e64>-2.628 E F1 .128<636c6d20696d6163>2.628 F F0 .128 <63616e20616c736f2077>2.628 F .127<6f726b207769746820746865206d61747269 636573207772697474656e207573696e6720746865>-.1 F F1<697465>2.627 E F0 <6f7074696f6e2e>2.627 E .62<49742073686f756c64206265206e6f74656420746861 7420636c7573746572696e6773206173736f636961746564207769746820696e7465726d 6564696174652069746572616e6473206d617920636f6e7461696e206f>120 120 R -.15<7665>-.15 G -.2<722d>.15 G .236 <6c61702c20776869636820697320696e746572657374696e6720696e206d616e>120 132 R 2.736<7961>-.15 G .236<70706c69636174696f6e732e2046>-2.736 F .236 <6f72206d6f726520696e666f726d6174696f6e20726566657220746f>-.15 F F1 <6d636c666171283729>2.736 E F0<616e64>2.736 E<746865>120 144 Q F1 <5245464552454e434553>2.5 E F0<73656374696f6e2062656c6f>2.5 E<772e>-.25 E<546865>120 168 Q F1 -.18<7265>2.5 G<73756c74>.18 E F0<6f7074696f6e2064 756d70732074686520757375616c204d434c20636c7573746572696e672e>2.5 E <546865>120 192 Q F1<636872>2.747 E F0 .247<6f7074696f6e20736179732c2066 6f7220656163682069746572616e6420492c20746f206f75747075742061206d61747269 782043207769746820636861726163746572697374696373206f6620492e204320686173> 2.747 F .752 <7468652073616d65206e756d626572206f6620636f6c756d6e7320617320492e2046> 120 204 R .752<6f72206561636820636f6c756d6e206b20696e20432c20726f>-.15 F 3.251<7765>-.25 G .751 <6e74727920302069732074686520646961676f6e616c206f72>-3.251 F -.1<276c> 120 216 S .594<6f6f70272076>.1 F .594 <616c7565206f6620636f6c756d6e206b20696e2049>-.25 F/F2 10/Times-Italic@0 SF<6166746572>3.095 E F0 -.15<6578>3.095 G .595 <70616e73696f6e20616e64207072756e696e672c20616e64>.15 F F2<6265666f72> 3.095 E<65>-.37 E F0 .595<696e8d6174696f6e20616e642072657363616c2d>3.095 F .044<696e672e20456e747279203120697320746865206c6f6f702076>120 228 R <616c7565>-.25 E F2<6166746572>2.543 E F0 .043 <696e8d6174696f6e20616e642072657363616c696e672e>2.543 F .043 <456e7472792032206973207468652063656e746572206f6620636f6c756d6e206b> 5.043 F .2<287468652073756d206f662069747320656e747269657320737175617265 642920636f6d7075746564>120 240 R F2<6166746572>2.701 E F0 -.15<6578> 2.701 G .201<70616e73696f6e20616e64>.15 F F2<6265666f72>2.701 E<65>-.37 E F0 .201<7072756e696e672c20656e747279203320697320746865>2.701 F .329 <6d6178696d756d2076>120 252 R .329<616c756520666f756e6420696e2074686174 20636f6c756d6e206174207468652073616d652074696d652e20456e7472792034206973 2074686520616d6f756e74206f66206d617373206b>-.25 F<657074>-.1 E <666f72207468617420636f6c756d6e>120 264 Q F2<6166746572207072756e696e67> 2.5 E F0<2e>A<546865>120 288 Q F1<2d6473>3.512 E F0 1.012<6f7074696f6e20 7365747320746865207374656d20666f72208c6c65206e616d6573206f662064756d7065 64206f626a656374732028646566>3.512 F<61756c74>-.1 E F2<6d636c>3.513 E F0 1.013<292e20546865>B F1<2d6469>3.513 E F0<616e64>3.513 E F1<2d646d>120 300 Q F0<6f7074696f6e7320616c6c6f>2.5 E 2.5<776173>-.25 G <656c656374696f6e206f662069746572616e647320746f206265206d6164652e>-2.5 E F1<2d646967697473>100 324 Q F0<3c696e743e2028>2.5 E F2 <7072696e74696e67207072>A<65636973696f6e>-.37 E F0<29>A .145 <5468697320686173207477>120 336 R 2.645<6f63>-.1 G .145 <6f6d706c6574656c7920646966>-2.645 F .144<666572656e7420757365732e204974 207365747320746865206e756d626572206f6620646563696d616c73207573656420666f 72207072657474792d7072696e742d>-.25 F<696e67>120 348 Q F1<6d636c>2.903 E F0 .403<69746572616e6473207768656e207573696e6720746865>2.903 F F1 <2d2d73686f>2.904 E<77>-.1 E F0 .404<6f7074696f6e20287365652062656c6f> 2.904 F .404 <77292c20616e64206974207365747320746865206e756d626572206f6620646563692d> -.25 F<6d616c73207573656420666f722077726974696e67207468652065>120 360 Q <7870616e646564206d6174726978207768656e207573696e6720746865>-.15 E F1 <2d77726974652d657870616e646564>2.5 E F0<6f7074696f6e2e>2.5 E F1 <2d2d73686f>100 384 Q<77>-.1 E F0<28>2.5 E F2 <7072696e74206d6174726963657320746f20736372>A<65656e>-.37 E F0<29>A .943 <5072696e74206d6174726963657320746f2073637265656e2e20546865206e756d6265 72206f66207369676e698c63616e742064696769747320746f206265207072696e746564 2063616e2062652074756e65642077697468>120 396 R F1<2d646967697473>120 408 Q F2<6e>2.5 E F0 2.736<2e41>C 2.736<6e38>-2.736 G .236 <302d636f6c756d6e2073637265656e20616c6c6f>-2.736 F .237<7773206772617068 7320286d6174726963657329206f662073697a6520757020746f20313228783132292074 6f206265207072696e746564>-.25 F .709<7769746820746872656520646967697473 20707265636973696f6e2028626568696e642074686520636f6d6d61292c20616e64206f 662073697a6520757020746f20313428783134292077697468207477>120 420 R 3.208 <6f64>-.1 G<69676974732e>-3.208 E .391<546869732063616e206769>120 432 R .691 -.15<76652079>-.25 H .391<6f7520616e2069646561206f6620686f>.15 F <77>-.25 E F1<6d636c>2.891 E F0 .391 <6f706572617465732c20616e64207768617420746865206566>2.891 F .391 <66656374206f66207072756e696e672069732e>-.25 F .392<55736520652e672e> 5.392 F F1<2d532036>120 444 Q F0 <666f722073756368206120736d616c6c20677261706820616e6420766965>2.5 E 2.5 <7774>-.25 G<6865204d434c206d61747269782069746572616e64732077697468>-2.5 E F1<2d2d73686f>2.5 E<77>-.1 E F0<2e>A F1<2d2d77726974652d62696e617279> 100 468 Q F0<28>2.5 E F2<6f757470757420666f726d6174>A F0<29>A 1.453<5772 697465206d61747269782064756d70206f757470757420696e2062696e617279206d636c 20666f726d617420726174686572207468616e20696e7465726368616e6765206d636c20 666f726d61742028746865>120 480 R<646566>120 492 Q 2.584 <61756c74292e204e6f74652074686174>-.1 F F1<6d6378636f6e>5.084 E -.1 <7665>-.4 G<7274>.1 E F0 2.584<63616e206265207573656420746f20636f6e> 5.084 F -.15<7665>-.4 G 2.585 <72742065616368206f6e6520696e746f20746865206f746865722e>.15 F<536565> 7.585 E F1<6d6378696f283529>120 504 Q F0<616e64>2.5 E F1<6d6378283129> 2.5 E F0<666f72206d6f726520696e666f726d6174696f6e2e>2.5 E F1<2d736f7274> 100 528 Q F0<3c7374723e2028>2.5 E F2<736f7274206d6f6465>A F0<29>A F2 <737472>120 540 Q F0 .915<63616e206265206f6e65206f66>3.415 F F1<6c6578> 3.415 E F0<2c>A F1<73697a65>3.415 E F0<2c>A F1 -2.29 -.18<72652076>3.415 H<73697a65>.18 E F0 3.415<2c6f>C<72>-3.415 E F1<6e6f6e65>3.415 E F0 3.415<2e54>C .915<686520646566>-3.415 F .915<61756c742069732027>-.1 F <7265>-.5 E .914<7673697a65272c20696e20776869636820746865206c6172>-.25 F <67657374>-.18 E .9<636c75737465727320636f6d65208c7273742e20496620746865 206d6f64652069732027>120 552 R .9<73697a65272c20736d616c6c65737420636c75 737465727320636f6d65208c7273742c20696620746865206d6f64652069732027>-.55 F<6c65>-.1 E<78272c>-.15 E .982 <636c75737465727320617265206f726465726564206c65>120 564 R <7869636f67726170686963616c6c79>-.15 E 3.482<2c61>-.65 G .981<6e64206966 20746865206d6f646520697320276e6f6e65272c20746865206f72646572206973207468 652073616d65206173>-3.482 F<70726f6475636564206279207468652070726f636564 7572652075736564206279206d636c20746f206d6170206d61747269636573206f6e746f 20636c7573746572696e67732e>120 576 Q F1<2d6f>100 600 Q -.1<7665>-.1 G <726c6170>.1 E F0<3c7374723e2028>2.5 E F2 -.1<6f76>C <65726c6170206d6f6465>.1 E F0<29>A<4d6f6465>120 612 Q F2 -.1<6b65>2.942 G<6570>.1 E F0 .442<636175736573206d636c20746f2072657461696e206f>2.942 F -.15<7665>-.15 G .442 <726c61702073686f756c64207468697320696d70726f6261626c652065>.15 F -.15 <7665>-.25 G .442<6e74206f636375722e20496e207468656f7279>.15 F<2c>-.65 E F1<6d636c>2.943 E F0 .076<6d61792067656e6572617465206120636c757374657269 6e67207468617420636f6e7461696e73206f>120 624 R -.15<7665>-.15 G .076 <726c61702c20616c74686f756768207468697320616c6d6f7374206e65>.15 F -.15 <7665>-.25 G 2.576<7268>.15 G .076<617070656e7320696e20707261632d>-2.576 F .902<746963652c20617320697420726571756972657320736f6d6520706172746963 756c61722074797065206f662073796d6d6574727920746f2062652070726573656e7420 696e2074686520696e70757420677261706820286e6f74>120 636 R .903 <6a75737420616e>120 648 R 3.403<7973>-.15 G .902<796d6d657472792077696c 6c20646f292e204d617468656d61746963616c6c7920737065616b696e672c2074686973 206973206120636f6e6a65637475726520616e64206e6f742061207468656f2d>-3.403 F 1.327<72656d2c2062>120 660 R 1.327<7574207468652070726573656e74206175 74686f722077696c20656174206869732073686f652069662069742066>-.2 F 1.327 <61696c7320746f20626520747275652028666f72206d61727a6970616e2076>-.1 F 1.328<616c756573206f66>-.25 F .589<73686f65292e204974206973206561737920 74686f75676820746f20636f6e73747275637420616e20696e7075742067726170682066 6f72207768696368206365727461696e206d636c2073657474696e677320726573756c74 20696e>120 672 R -.15<6f7665>120 684 S .006<726c6170202d20666f722065>.15 F .007<78616d706c652061206c696e65206772617068206f6e20616e206f6464206e75 6d626572206f66206e6f6465732e2054686520646566>-.15 F .007 <61756c7420697320746f2065>-.1 F .007<7863697365206f>-.15 F -.15<7665> -.15 G -.2<722d>.15 G 1.404<6c617070696e6720706172747320616e6420696e7472 6f64756365207468656d20617320636c75737465727320696e207468656972206f>120 696 R 1.404<776e2072696768742e20497420697320706f737369626c6520746f20616c 6c6f63617465>-.25 F .43<6e6f64657320696e206f>120 708 R -.15<7665>-.15 G .431<726c617020746f20746865208c72737420636c757374657220696e207768696368 20746865>.15 F 2.931<796f>-.15 G .431<636375722028692e652e20726174686572 206172626974726172696c79292c20636f72726573706f6e642d>-2.931 F <696e672077697468206d6f6465>120 720 Q F2<637574>2.5 E F0<2e>A <6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<3130> 197.335 E 0 Cg EP %%Page: 11 11 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F .019<496e206d6f6465>120 84 R/F1 10 /Times-Italic@0 SF<73706c6974>2.519 E F0 .019 <6d636c2077696c6c2070757420616c6c206e6f64657320696e206f>2.519 F -.15 <7665>-.15 G .018<726c617020696e746f20736570617261746520636c757374657273 2e20546865736520636c757374657273206172652063686f2d>.15 F 1.011 <73656e20737563682074686174207477>120 96 R 3.511<6f6e>-.1 G 1.012 <6f646573206172652070757420696e207468652073616d65206e65>-3.511 F 3.512 <7763>-.25 G 1.012<6c757374657220696620616e64206f6e6c7920696620746865> -3.512 F 3.512<7961>-.15 G -.1<6c7761>-3.512 G 1.012<7973206f63637572>.1 F<70616972656420696e2074686520636c757374657273206f6620746865206f>120 108 Q -.15<7665>-.15 G<726c617070696e6720636c7573746572696e672e>.15 E 1.478 <54686973206f7074696f6e20686173206e6f206566>120 132 R 1.478<66656374206f 6e2074686520636c7573746572696e6773207468617420617265206f7574707574207768 656e207573696e67>-.25 F/F2 10/Times-Bold@0 SF<2d64756d70>3.978 E F1 <636c73>2.5 E F0 3.978<2d74>3.978 G<6865>-3.978 E<646566>120 144 Q <61756c7420666f722074686f73652069732074686174206f>-.1 E -.15<7665>-.15 G <726c6170206973206e6f7420746f75636865642c20616e64207468697320646566>.15 E<61756c742063616e206e6f7420796574206265206f>-.1 E -.15<7665>-.15 G <7272696464656e2e>.15 E F2<2d2d66>100 168 Q<6f72>-.25 E <63652d636f6e6e6563746564>-.18 E F0<3d3c792f6e3e2028>A F1 <616e616c797a6520636f6d706f6e656e7473>A F0<29>A F2 <2d2d636865636b2d636f6e6e6563746564>100 180 Q F0<3d3c792f6e3e2028>A F1 <616e616c797a6520636f6d706f6e656e7473>A F0<29>A .032<49662074686520696e 70757420677261706820686173207374726f6e6720626970617274697465206368617261 637465726973746963732c206d636c206d6179207969656c6420636c7573746572732074 68617420646f206e6f7420636f72>120 192 R<2d>-.2 E .864<726573706f6e642074 6f20636f6e6e656374656420636f6d706f6e656e747320696e2074686520696e70757420 67726170682e2054>120 204 R .863 <75726e206f6e65206f66207468657365206d6f646573206f6e20746f20616e612d>-.45 F<6c797a652074686520726573756c74616e7420636c7573746572696e672e>120 216 Q 1.293<4966206c6f6f736520636c7573746572732061726520666f756e6420746865>120 240 R 3.793<7977>-.15 G 1.293<696c6c2062652073706c697420696e746f20737562 636c75737465727320636f72726573706f6e64696e6720746f20636f6e6e6563746564> -3.793 F 3.144<636f6d706f6e656e74732e2057>120 252 R<697468>-.4 E F2 <2d2d66>3.144 E<6f72>-.25 E<63652d636f6e6e6563746564>-.18 E F0<3d>A F1 <79>A F0 .644<6d636c2077696c6c2077726974652074686520636f7272656374656420 636c7573746572696e6720746f20746865206e6f72>3.144 F<2d>-.2 E .052<6d616c 206f7574707574208c6c652c20616e6420746865206f6c6420636c7573746572696e6720 746f207468652073616d65208c6c65207769746820737566>120 264 R<8c78>-.25 E /F3 10/Courier@0 SF<6f726967>2.552 E F0 5.052<2e57>C<697468>-5.452 E F2 <2d2d636865636b2d636f6e2d>2.552 E<6e6563746564>120 276 Q F0<3d>A F1<79>A F0 1.303<6d636c2077696c6c20777269746520746865206c6f6f736520636c75737465 72696e6720746f20746865206e6f726d616c206f7574707574208c6c652c20616e642074 686520636f72726563746564>3.803 F <636c7573746572696e6720746f207468652073616d65208c6c65207769746820737566> 120 288 Q<8c78>-.25 E F3<636f636f>2.5 E F0<2e>A 1.12 <5468657365206f7074696f6e7320617265206e6f74206f6e20627920646566>120 312 R 1.12<61756c742c2061732074686520616e616c797369732069732063757272656e74 6c7920286f>-.1 F -.15<7665>-.15 G 1.12 <726c79292074696d652d636f6e73756d696e67>.15 F .786<616e64206d636c27>120 324 R 3.286<7362>-.55 G<656861>-3.286 E .786 <76696f75722061637475616c6c79206d616b>-.2 F .785<657320736f6d652073656e 736520287768656e2074616b696e67206269706172746974652063686172616374657269 737469637320696e746f>-.1 F<6163636f756e74292e>120 336 Q F2 <2d2d616e616c797a65>100 360 Q F0<3d3c792f6e3e2028>A F1 <706572666f726d616e6365206372697465726961>A F0<29>A -.4<5769>120 372 S .174<74682074686973206d6f6465207475726e6564206f6e2c>.4 F F2<6d636c>2.674 E F0 .174<77696c6c207265726561642074686520696e707574206d617472697820616e 6420636f6d707574652061206665>2.674 F 2.674<7770>-.25 G <6572666f726d616e6365>-2.674 E<637269746572696120616e642061747461636820 7468656d20746f20746865206f7574707574208c6c652e204f66>120 384 Q 2.5<6662> -.25 G 2.5<7964>-2.5 G<6566>-2.5 E<61756c742e>-.1 E F2<2d2d73686f>100 408 Q<772d6c6f67>-.1 E F0<3d3c792f6e3e2028>A F1<73686f77206c6f>A<67>-.1 E F0<29>A<53686f>120 420 Q<777320746865206c6f6720776974682070726f636573 7320636861726163746572697374696373206f6e205354444f55542e>-.25 E <427920646566>5 E<61756c742c2074686973206d6f6465206973206f66>-.1 E<662e> -.25 E F2<2d2d6a7572792d63686172746572>100 444 Q F0<28>2.5 E F1 -.2 <6578>C<706c61696e73206a757279>.2 E F0<29>A<4578706c61696e7320686f>120 456 Q 2.5<7774>-.25 G<6865206a7572792073796e6f7073697320697320636f6d7075 7465642066726f6d20746865206a757279206d61726b732e>-2.5 E F2<2d2d76>100 480 Q<657273696f6e>-.1 E F0<28>2.5 E F1<73686f7720766572>A<73696f6e>-.1 E F0<29>A<53686f>120 492 Q 2.5<7776>-.25 G<657273696f6e2e>-2.65 E F2 <2d686f>100 516 Q<772d6d7563682d72616d>-.1 E F0<3c696e743e2028>2.5 E F1 <52414d20757070657220626f756e64>A F0<29>A F2<3c696e743e>120 528 Q F0 .241<697320696e74657270726574656420617320746865206e756d626572206f66206e 6f646573206f6620616e20696e7075742067726170682e>2.741 F .24 <6d636c2077696c6c207072696e7420746865206d6178696d756d>5.24 F<616d6f756e 74206f662052414d206974206e6565647320666f722069747320636f6d7075746174696f 6e732e>120 540 Q<54686520666f726d756c6120666f722074686973206e756d626572 20696e2062797465732069733a>5 E F3 6<322a632a6b2a3c>138 564 S<696e743e>-6 E 12<323a74>138 588 S<776f206d617472696365732061726520636f6e63757272656e 746c792068656c6420696e206d656d6f72792e>-12 E 12<633a6d>138 600 S <636c2063656c6c2073697a65202861732073686f776e206279202d7a292e>-12 E 6 <3c696e743e3a206772617068>126 612 R <63617264696e616c69747920286e756d626572206f66206e6f646573292e>6 E 12 <6b3a4d>138 624 S<415828732c2072292e>-12 E 12<733a73>138 636 S <656c656374206e756d62657220282d532c202d736368656d65206f7074696f6e73292e> -12 E 12<723a72>138 648 S<65636f766572206e756d62657220282d522c202d736368 656d65206f7074696f6e73292e>-12 E F0 .658<5468697320657374696d6174652077 696c6c20757375616c6c7920626520746f6f2070657373696d69737469632e2049742064 6f657320617373756d652074686f7567682074686174207468652061>120 672 R -.15 <7665>-.2 G .658<72616765206e6f6465>.15 F<6465>120 684 Q .315 <67726565206f662074686520696e70757420677261706820646f6573206e6f742065> -.15 F .315<7863656564206b2e20546865>-.15 F F2<2d686f>2.815 E <772d6d7563682d72616d>-.1 E F0 .315<6f7074696f6e2074616b>2.815 F .315 <6573206f7468657220636f6d2d>-.1 F .04<6d616e642d6c696e65206172>120 696 R .04<67756d656e747320696e746f206163636f756e74202873756368206173>-.18 F F2 <2d53>2.541 E F0<616e64>2.541 E F2<2d52>2.541 E F0 .041 <292c20616e642069742065>B .041 <78707265737365732074686520616d6f756e74206f662052414d>-.15 F<696e206d65> 120 708 Q -.05<6761>-.15 G<6279746520756e6974732e>.05 E <6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<3131> 197.335 E 0 Cg EP %%Page: 12 12 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F/F1 10/Times-Bold@0 SF<2d68>100 84 Q F0<28>2.5 E/F2 10/Times-Italic@0 SF<73686f772068656c70>A F0<29>A <53686f>120 96 Q<777320612073656c656374696f6e206f6620746865206d6f737420 696d706f7274616e74>-.25 E F1<6d636c>2.5 E F0<6f7074696f6e732e>2.5 E F1 <2d2d68656c70>100 120 Q F0<28>2.5 E F2<73686f772068656c70>A F0<29>A <4769>120 132 Q -.15<7665>-.25 G 2.5<73616f>.15 G<6e652d6c696e6520646573 6372697074696f6e20666f7220616c6c206f7074696f6e732e>-2.5 E F1<2d7a>100 156 Q F0<28>2.5 E F2<73686f772073657474696e6773>A F0<29>A<53686f>120 168 Q 2.5<7763>-.25 G<757272656e742073657474696e677320666f722074756e61626c65 20706172616d65746572732e>-2.5 E F1<2d2d73686f>5 E<772d73657474696e6773> -.1 E F0<697320612073796e6f6e>2.5 E<796d2e>-.15 E/F3 10.95/Times-Bold@0 SF<5052>20 184.8 Q<554e494e47204f5054494f4e53>-.329 E F1<2d70>100 196.8 Q F0<3c6e756d3e2028>2.5 E F2<6375746f66>A<66>-.18 E F0<29>A F1<2d50>100 208.8 Q F0<3c696e743e2028>2.5 E F2<312f6375746f66>A<66>-.18 E F0<29>A F1 <2d53>100 220.8 Q F0<3c696e743e2028>2.5 E F2 <73656c656374696f6e206e756d626572>A F0<29>A F1<2d52>100 232.8 Q F0 <3c696e743e2028>2.5 E F2 -.37<7265>C<636f>.37 E<766572206e756d626572>-.1 E F0<29>A F1<2d706374>100 244.8 Q F0<3c7063743e2028>2.5 E F2 -.37<7265>C <636f>.37 E<76657220706572>-.1 E<63656e7461>-.37 E -.1<6765>-.1 G F0<29> .1 E 2.525<416674657220636f6d707574696e672061206e65>120 256.8 R 5.025 <7728>-.25 G 2.525 <636f6c756d6e2073746f6368617374696329206d61747269782076>-5.025 F 2.524 <6563746f7220647572696e672065>-.15 F 2.524 <7870616e73696f6e20287768696368206973>-.15 F .413<6d6174726978206d756c74 69706c69636174696f6e20632e712e207371756172696e67292c207468652076>120 268.8 R .414<6563746f72206973207375636365737369>-.15 F -.15<7665>-.25 G .414<6c792065>.15 F .414<78706f73656420746f20646966>-.15 F .414 <666572656e74207072756e696e67>-.25 F<737472617465>120 280.8 Q 1.606<6769 65732e2054686520696e74656e74206f66207072756e696e672069732074686174206d61 6e>-.15 F 4.105<7973>-.15 G 1.605 <6d616c6c20656e7472696573206172652072656d6f>-4.105 F -.15<7665>-.15 G 4.105<6477>.15 G 1.605<68696c652072657461696e696e67>-4.105 F .244<6d7563 68206f66207468652073746f63686173746963206d617373206f6620746865206f726967 696e616c2076>120 292.8 R .244 <6563746f722e204166746572207072756e696e672c2076>-.15 F .244 <6563746f7273206172652072657363616c656420746f206265>-.15 F 1.093 <73746f63686173746963206167>120 304.8 R 1.093<61696e2e204d434c2069746572 616e647320617265207468656f7265746963616c6c79206b6e6f>-.05 F 1.092<776e20 746f2062652073706172736520696e20612077656967687465642073656e73652c>-.25 F .571<616e642074686973206d616e6f65>120 316.8 R -.15<7665>-.25 G 3.071 <7265>.15 G -.25<6666>-3.071 G<65637469>.25 E -.15<7665>-.25 G .572<6c79 20706572747572627320746865204d434c2070726f636573732061206c6974746c652069 6e206f7264657220746f206f627461696e206d61747269636573>.15 F .617 <74686174206172652067656e75696e656c79207370617273652c2074687573206b>120 328.8 R .617<656570696e672074686520636f6d7075746174696f6e20747261637461 626c652e20416e2065>-.1 F .616<78616d706c65206f66206d6f6e69746f72>-.15 F <2d>-.2 E<696e67207072756e696e672063616e20626520666f756e6420696e20746865 2064697363757373696f6e206f66>120 340.8 Q F1<2d76207072756e696e67>2.5 E F0<61742074686520656e64206f6620746869732073656374696f6e2e>2.5 E F1 <6d636c>120 364.8 Q F0 .37<70726f636565647320617320666f6c6c6f>2.87 F .37 <77732e2046697273742c20656e747269657320746861742061726520736d616c6c6572 207468616e>-.25 F F2<6375746f66>2.87 E<66>-.18 E F0 .37 <6172652072656d6f>2.87 F -.15<7665>-.15 G .37 <642c20726573756c74696e6720696e>.15 F 3.842<6176>120 376.8 S 1.342 <6563746f722077697468206174206d6f7374>-3.992 F F2<312f6375746f66>3.841 E <66>-.18 E F0 1.341<656e74726965732e20546865206375746f66>3.841 F 3.841 <6663>-.25 G 1.341<616e20626520737570706c69656420656974686572206279> -3.841 F F1<2d70>3.841 E F0 3.841<2c6f>C 3.841<7261>-3.841 G 3.841<7374> -3.841 G<6865>-3.841 E<696e>120 388.8 Q -.15<7665>-.4 G .564<7273652076> .15 F .564<616c7565206279>-.25 F F1<2d50>3.064 E F0 3.064<2e54>C .565 <6865206c6174746572206973206d6f726520696e7475697469>-3.064 F -.15<7665> -.25 G 3.065<2c69>.15 G 3.065<6679>-3.065 G .565 <6f757220696e74756974696f6e206973206c696b>-3.065 F 3.065<656d>-.1 G .565 <696e65202850207374616e647320666f72>-3.065 F .615 <707265636973696f6e206f72207072756e696e67292e>120 400.8 R .615 <546865206375746f66>5.615 F 3.115<666a>-.25 G .615<75737420646573637269 6265642069732072696769643b206974206973207468652073616d6520666f7220616c6c 2076>-3.115 F .615<6563746f72732e20546865>-.15 F F1<2d2d6164617074>120 412.8 Q F0 .628<6f7074696f6e206361757365732074686520636f6d7075746174696f 6e206f662061206375746f66>3.128 F 3.129<6674>-.25 G .629 <68617420646570656e6473206f6e20612076>-3.129 F<6563746f7227>-.15 E 3.129 <7368>-.55 G<6f6d6f67656e65697479>-3.129 E<70726f706572746965732c20616e 642074686973206f7074696f6e206d6179206f72206d6179206e6f742073706565642075 70206d636c2e>120 424.8 Q .536<5365636f6e642c206966207468652072656d61696e 696e672073746f63686173746963206d6173732028692e652e207468652073756d206f66 20616c6c2072656d61696e696e6720656e747269657329206973206c657373207468616e> 120 448.8 R F2<3c7063743e>120 460.8 Q F0 1.199<2f31303020616e6420746865 206e756d626572206f662072656d61696e696e6720656e7472696573206973206c657373 207468616e>B F2<3c723e>3.699 E F0 1.2 <2861732073706563698c656420627920746865>3.7 F F1<2d52>3.7 E F0 <8d6167292c>120 472.8 Q F1<6d636c>3.72 E F0 1.22 <77696c6c2074727920746f207265>3.72 F -.05<6761>-.15 G 1.22 <696e2067726f756e64206279207265636f>.05 F -.15<7665>-.15 G 1.22 <72696e6720746865206c6172>.15 F 1.22 <676573742064697363617264656420656e74726965732e2054686520746f74616c>-.18 F .865<6e756d626572206f6620656e7472696573206973206e6f7420616c6c6f>120 484.8 R .865<77656420746f2067726f>-.25 F 3.365<776c>-.25 G<6172>-3.365 E .865<676572207468616e>-.18 F F2<3c723e>3.365 E F0 5.866<2e49>C 3.366 <6672>-5.866 G<65636f>-3.366 E -.15<7665>-.15 G .866<72792077>.15 F .866 <6173206e6f74206e6563657373617279>-.1 F<2c>-.65 E .073 <6d636c20747269657320746f207072756e65207468652076>120 496.8 R .073 <6563746f72206675727468657220646f>-.15 F .073 <776e20746f206174206d6f7374>-.25 F F2<73>2.573 E F0 .073<656e7472696573 20286966206170706c696361626c65292c2061732073706563698c6564206279>2.573 F <746865>120 508.8 Q F1<2d53>3.449 E F0 .949 <8d61672e204966207468697320726573756c747320696e20612076>3.449 F .949 <6563746f7220746861742073617469738c657320746865207265636f>-.15 F -.15 <7665>-.15 G .95<727920636f6e646974696f6e207468656e207265636f>.15 F -.15 <7665>-.15 G .95<7279206973>.15 F<617474656d707465642c2065>120 520.8 Q <786163746c79206173206465736372696265642061626f>-.15 E -.15<7665>-.15 G 2.5<2e54>.15 G<6865206c61747465722077696c6c206e6f74206f63637572206f6620 636f75727365206966>-2.5 E F2<3c723e>2.5 E F0<3c3d>2.5 E F2<3c733e>2.5 E F0<2e>A .772<54686520646566>120 544.8 R .772 <61756c742073657474696e6720697320736f6d657468696e67206c696b>-.1 F<65>-.1 E F1<2d502034303030>3.271 E<2d5320353030>3.271 E<2d5220363030>3.271 E F0 3.271<2e43>C .771<6865636b20746865>-3.271 F F1<2d7a>3.271 E F0 .771 <8d616720746f20626520737572652e>3.271 F .676<54686572652069732061207365 74206f6620707265636f6d706f7365642073657474696e67732c2077686963682063616e 20626520747269676765726564207769746820746865>120 556.8 R F1 <2d736368656d65>3.176 E F2<6b>2.5 E F0<6f7074696f6e2e>3.176 E F2<6b>120 568.8 Q F0 .242<3d342069732074686520646566>B .242 <61756c7420736368656d653b206869676865722076>-.1 F .242 <616c75657320666f72>-.25 F F2<6b>2.742 E F0 .242<726573756c7420696e2063 6f73746c69657220616e64206d6f726520616363757261746520636f6d707574612d> 2.742 F 1.061<74696f6e732028766963652076>120 580.8 R 1.061 <6572736120666f72206c6f>-.15 F<776572>-.25 E 3.561<2c63>-.4 G <686561706572>-3.561 E 3.561<2c61>-.4 G 1.061 <6e64206c657373206163637572617465292e>-3.561 F 1.062 <54686520736368656d657320617265206c6973746564207573696e6720746865>6.062 F F1<2d2d73686f>120 592.8 Q<772d736368656d6573>-.1 E F0 .379 <6f7074696f6e2e20497420697320616476697361626c6520746f2075736520746865> 2.88 F F1<2d736368656d65>2.879 E F0 .379 <6f7074696f6e206f6e6c7920696e20696e74657261637469>2.879 F .679 -.15 <7665206d>-.25 H<6f64652c>.15 E .334<616e6420746f20757365207468652065> 120 604.8 R .334<78706c696369742065>-.15 F .335<787072657373696f6e732077 68656e20646f696e672062617463682070726f63657373696e672e205468652072656173 6f6e2069732074686174207468657265206973>-.15 F F2 .418<6e6f2067756172>120 616.8 R .418<616e7465652077686174736f65>-.15 F<766572>-.15 E F0 .417<74 6861742074686520736368656d65732077696c6c206e6f74206368616e67652062657477 65656e20646966>2.918 F .417<666572656e742072656c65617365732e2054686973> -.25 F 1.73<697320626563617573652074686520736368656d65206f7074696f6e7320 73686f756c642072658d65637420676f6f642067656e6572616c20707572706f73652073 657474696e67732c20616e64206974206d6179>120 628.8 R<6265636f6d6520617070 61726172656e742074686174206f7468657220736368656d657320617265206265747465 722e>120 640.8 Q .652<4e6f746520746861742027>120 664.8 R .651<6c65737320 616363757261746527206f7220276d6f72652061636375726174652720636f6d70757461 74696f6e73206d6179207374696c6c2067656e6572617465207468652073616d65206f75 742d>-.1 F .763<70757420636c7573746572696e67732e20557365>120 676.8 R F1 .763<636c6d2064697374>3.263 F F0 .763<746f20636f6d70617265206f7574707574 20636c7573746572696e677320666f7220646966>3.263 F .764 <666572656e74207265736f7572636520706172616d652d>-.25 F <746572732e20526566657220746f>120 688.8 Q F1<636c6d2064697374>2.5 E F0 <666f7220612064697363757373696f6e206f6620746869732069737375652e>2.5 E F1 <2d776172>100 712.8 Q<6e2d706374>-.15 E F0<3c696e743e2028>2.5 E F2 <7072756e65207761726e20706572>A<63656e7461>-.37 E -.1<6765>-.1 G F0<29> .1 E F1<2d776172>100 724.8 Q<6e2d666163746f72>-.15 E F0<3c696e743e2028> 2.5 E F2<7072756e65207761726e20666163746f72>A F0<29>A <6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<3132> 197.335 E 0 Cg EP %%Page: 13 13 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F .127<546865207477>120 84 R 2.627 <6f6f>-.1 G<7074696f6e73>-2.627 E/F1 10/Times-Bold@0 SF<2d776172>2.626 E <6e2d706374>-.15 E F0<616e64>2.626 E F1<2d776172>2.626 E <6e2d666163746f72>-.15 E F0 .126<72656c61746520746f2077>2.626 F .126 <61726e696e67732074686174206d617920626520747269676765726564206f6e6365> -.1 F<746865>120 96 Q/F2 10/Times-Italic@0 SF<696e697469616c>3.034 E F0 .534<7072756e696e67206f6620612076>3.034 F .534<6563746f7220697320636f6d 706c657465642e20546865206964656120697320746f2069737375652077>-.15 F .535 <61726e696e677320696620696e697469616c207072756e696e67>-.1 F 2.069 <616c6d6f737420636f6d706c6574656c792064657374726f>120 108 R 2.069 <7973206120636f6d70757465642076>-.1 F<6563746f72>-.15 E 4.569<2c61>-.4 G 4.569<7374>-4.569 G 2.068 <686973206d61792062652061207369676e207468617420746865207072756e696e67> -4.569 F 2.315<706172616d65746572732073686f756c64206265206368616e676564 2e20497420646570656e6473206f6e20746865206d6173732072656d61696e696e672061 6674657220696e697469616c207072756e696e67>120 120 R 1.264 <7768657468657220612077>120 132 R 1.264<61726e696e672077696c6c2062652069 73737565642e2049662074686174206d617373206973206c657373207468616e>-.1 F F2<7761726e2d706374>3.763 E F0 1.263 <6f7220696620746865206e756d626572206f66>3.763 F .661 <72656d61696e696e6720656e747269657320697320736d616c6c657220627920612066> 120 144 R<6163746f72>-.1 E F2<7761726e2d666163746f72>3.161 E F0 .662<74 68616e20626f746820746865206e756d626572206f6620656e7472696573206f72696769 2d>3.161 F<6e616c6c7920636f6d7075746564>120 156 Q F2<616e64>2.5 E F0 <746865207265636f>2.5 E -.15<7665>-.15 G<7279206e756d626572>.15 E 2.5 <2c69>-.4 G 2.5<6e74>-2.5 G<68617420636173652c>-2.5 E F1<6d636c>2.5 E F0 <77696c6c20697373756520612077>2.5 E<61726e696e672e>-.1 E F1<2d776172>120 180 Q<6e2d706374>-.15 E F0<74616b>2.58 E .08<657320616e20696e7465>-.1 F .079 <676572206265747765656e203020616e642031303020617320706172616d65746572> -.15 F<2c>-.4 E F1<2d776172>2.579 E<6e2d666163746f72>-.15 E F0<74616b> 2.579 E .079<65732061207265616c20706f73692d>-.1 F<7469>120 192 Q .792 -.15<7665206e>-.25 H .492<756d6265722e20546865>.15 F 2.992<7964>-.15 G <6566>-2.992 E .492<61756c7420746f20736f6d657468696e67206c696b>-.1 F 2.992<6533>-.1 G 2.992<3061>-2.992 G .493 <6e642035302e302e20496620796f752077>-2.992 F .493 <616e7420746f20736565206c6573732077>-.1 F<61726e696e67732c>-.1 E <6465637265617365>120 204 Q F2<7761726e2d706374>3.137 E F0 .636 <616e6420696e637265617365>3.137 F F2<7761726e2d666163746f72>3.136 E F0 3.136<2e53>C<6574>-3.136 E F2<7761726e2d666163746f72>3.136 E F0 .636 <746f207a65726f20696620796f752077>3.136 F .636<616e74206e6f2077>-.1 F <61726e2d>-.1 E<696e67732e>120 216 Q F1<2d76207072756e696e67>100 240 Q F0 .319<5072756e696e672076>120 252 R .319 <6572626f73697479206d6f646520636175736573>-.15 F F1<6d636c>2.819 E F0 .319<746f20656d6974207365>2.819 F -.15<7665>-.25 G .319<72616c2073746174 6973746963732072656c6174656420746f20746865207072756e696e672070726f636573 732c>.15 F .684 <65616368206f66207768696368206973206465736372696265642062656c6f>120 264 R .684<772e20557365>-.25 F F1<2d76206578706c61696e>3.184 E F0 .683 <746f206765742065>3.184 F .683 <78706c616e61746f7279206865616465727320696e20746865206f7574707574>-.15 F <61732077656c6c20286f722073696d706c7920757365>120 276 Q F1<2d7620616c6c> 2.5 E F0<292e>A/F3 10.95/Times-Bold@0 SF<494d504c454d454e54>20 292.8 Q -1.04<4154>-.986 G<494f4e204f5054494f4e53>1.04 E F1<2d737061727365>100 304.8 Q F0<3c696e743e2028>2.5 E F2<73706172>A <7365206d6174726978206d756c7469706c69636174696f6e20746872>-.1 E <6573686f6c64>-.37 E F0<29>A .015<546869732076>120 316.8 R .015 <616c75652028627920646566>-.25 F .016<61756c742073657420746f203130292064 657465726d696e6573207768656e206d636c20737769746368657320746f207370617273 65206d61747269782f76>-.1 F .016<6563746f72206d756c2d>-.15 F 2.905 <7469706c69636174696f6e2e2046>120 328.8 R .405<6f722061206769>-.15 F -.15<7665>-.25 G 2.904<6e63>.15 G .404 <6f6c756d6e2073746f636861737469632076>-2.904 F .404<6563746f722028636f72 726573706f6e64696e67207769746820616c6c20746865206e65696768626f757273206f 66>-.15 F 3.19<6167>120 340.8 S -2.15 -.25<69762065>-3.19 H 3.19<6e6e> .25 G<6f6465>-3.19 E/F4 10/Courier@0 SF<76>3.19 E F0 .691<6163636f726469 6e6720746f207468652063757272656e74206d636c2069746572616e6429207468652073 756d>3.19 F F4<53>3.191 E F0 .691 <6f66206e65696768626f757220636f756e7473206f6620616c6c>3.191 F 1.514 <6e65696768626f757273206f66>120 352.8 R F4<76>4.014 E F0 1.514<69732063 6f6d70757465642c20636f756e74696e67206475706c6963617465732e20546869732069 732065>4.014 F 1.514 <786163746c7920746865206e756d626572206f66206d6174726978>-.15 F .806 <656e747269657320696e>120 364.8 R -.2<766f>-.4 G<6c76>.2 E .806 <656420696e2074686520636f6d7075746174696f6e206f6620746865206e65>-.15 F 3.306<7763>-.25 G .806<6f6c756d6e2076>-3.306 F .806 <6563746f7220666f7220746865206d61747269782070726f647563742e204966>-.15 F F4<53>3.306 E F0<74696d6573>120 376.8 Q F2<3c696e743e>3.21 E F0 .71 <646f6573206e6f742065>3.21 F .71<786365656420746865206e756d626572206f66 206e6f64657320696e207468652067726170682028657175616c20746f20626f74682063 6f6c756d6e20616e64>-.15 F<726f>120 388.8 Q 3.651<7764>-.25 G 1.152<696d 656e73696f6e206f6620746865206d61747269636573207573656429207468656e206120 73706172736520696d706c656d656e746174696f6e20697320757365642e204f74686572 7769736520616e>-3.651 F .859<6f7074696d697a6564207265>120 400.8 R .859< 67756c617220696d706c656d656e746174696f6e20697320757365642e20496e74756974 69>-.15 F -.15<7665>-.25 G<6c79>.15 E 3.359<2c74>-.65 G .858 <686973206f7074696f6e2063616e2062652074686f75676874206f6620617320746865> -3.359 F .633<657374696d61746564206f>120 412.8 R -.15<7665>-.15 G .634< 726865616420706572206d6174726978208d6f6174696e6720706f696e74206f70657261 74696f6e20696e637572726564206279207468652073706172736520696d706c656d656e 74612d>.15 F 2.16<74696f6e20636f6d7061726564207769746820746865207265>120 424.8 R 2.16<67756c617220696d706c656d656e746174696f6e2e>-.15 F 2.16 <4d434c2075736573207468697320657374696d61746564206f>7.16 F -.15<7665> -.15 G 2.16<726865616420746f>.15 F 1.448<64657465726d696e65207768696368 20696d706c656d656e746174696f6e206973206c696b>120 436.8 R 1.448 <656c7920746f20626520717569636b>-.1 F 1.448<65722e2054>-.1 F 1.449 <657374696e67206861732073686f>-.7 F 1.449<776e207468697320737472617465> -.25 F<6779>-.15 E -.1<776f>120 448.8 S .554<726b732076>.1 F .554<657279 2077656c6c20666f7220677261706873206f66206120776964652072616e6765206f6620 73697a65732c20696e636c7564696e6720677261706873207769746820757020746f2033 206d696c6c696f6e>-.15 F <6e6f64657320616e6420353030206d696c6c696f6e2065646765732e>120 460.8 Q F1 <4e4f>120 484.8 Q<5445>-.4 E F0 1.198<546865206566>120 496.8 R <6665637469>-.25 E -.15<7665>-.25 G 1.198<6e657373206f662074686973206f70 74696f6e20697320696e8d75656e636564206279206861726477>.15 F 1.199 <6172652d73706563698c632070726f70657274696573207375636820617320746865> -.1 F .142<435055204c322063616368652073697a652e2054686520646566>120 508.8 R .141<61756c742076>-.1 F .141<616c75652073686f756c642077>-.25 F .141 <6f726b20726561736f6e61626c792077656c6c206163726f7373206120776964652076> -.1 F .141<617269657479206f66>-.25 F 1.753<7363656e6172696f732c2062>120 520.8 R 1.753 <7574206974206d617920626520706f737369626c6520746f2073717565657a652066> -.2 F 1.753<61737465722072756e2074696d6573206f7574206f66206d636c20627920 74756e696e672074686973>-.1 F<706172616d6574657220746f207468652067726170 68732074686174206172652073706563698c6320666f7220796f7572206170706c696361 74696f6e20646f6d61696e2e>120 532.8 Q F3<4558414d504c4553>20 549.6 Q F0 <54686520666f6c6c6f>100 561.6 Q<77696e6720697320616e2065>-.25 E <78616d706c65206f66206c6162656c20696e707574>-.15 E F4<2d2d2d383c2d2d2d2d 2d2d383c2d2d2d2d2d2d383c2d2d2d2d2d2d383c2d2d2d2d2d2d383c2d2d2d>100 585.6 Q<63617420686174>100 597.6 Q<302e32>12 E<68617420626174>100 609.6 Q <302e3136>12 E<62617420636174>100 621.6 Q<312e30>12 E<62617420626974>100 633.6 Q<302e313235>12 E<62697420666974>100 645.6 Q<302e3235>12 E <66697420686974>100 657.6 Q<302e35>12 E<68697420626974>100 669.6 Q <302e3136>12 E<2d2d2d3e382d2d2d2d2d2d3e382d2d2d2d2d2d3e382d2d2d2d2d2d3e 382d2d2d2d2d2d3e382d2d2d>100 681.6 Q F0 <49742063616e20626520636c75737465726564206c696b>100 705.6 Q 2.5<6574>-.1 G<6869733a>-2.5 E<6d636c2031322d313335>20 768 Q<3134204d61792032303132> 161.505 E<3133>197.335 E 0 Cg EP %%Page: 14 14 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F/F1 10/Courier@0 SF <6d636c20636174686174202d2d616263202d6f206f75742e636174686174>100 84 Q F0<546865208c6c65206f75742e6361746861742073686f756c64206e6f>100 108 Q 2.5<776c>-.25 G<696b>-2.5 E 2.5<656c>-.1 G<696b>-2.5 E 2.5<6574>-.1 G <686973>-2.5 E F1<2d2d2d383c2d2d2d2d2d2d383c2d2d2d2d2d2d383c2d2d2d2d2d2d 383c2d2d2d2d2d2d383c2d2d2d>100 132 Q<6361742068617420626174>100 144 Q <6269742066697420686974>100 156 Q<2d2d2d3e382d2d2d2d2d2d3e382d2d2d2d2d2d 3e382d2d2d2d2d2d3e382d2d2d2d2d2d3e382d2d2d>100 168 Q F0 2.582<4166>100 192 S .582 -.25<65772074>-2.582 H .082<68696e677320746f206e6f74652e2046 697273742c204d434c2077696c6c2073796d6d657472697a6520616e>.25 F 2.582 <7961>-.15 G<72726f>-2.582 E 2.582<7769>-.25 G 2.581<748c>-2.582 G .081 <6e64732e2049662069742073656573>-2.581 F F1 .081<6261742063617420312e30> 2.581 F F0<6974>2.581 E .566 <77696c6c2061637420617320696620697420616c736f207361>100 204 R<77>-.15 E F1 .567<6361742062617420312e30>3.067 F F0 3.067<2e59>C .567 <6f752063616e2065>-4.167 F .567<78706c696369746c792073706563696679>-.15 F F1 .567<6361742062617420312e30>3.067 F F0 3.067<2c6d>C .567 <636c2077696c6c>-3.067 F .218<696e20746865208c72737420706172736520737461 67652073696d706c7920656e642075702077697468206475706c696361746520656e7472 6965732e205365636f6e642c204d434c2064656475706c69636174657320726570656174 6564>100 216 R<65646765732062792074616b696e6720746865206f6e652077697468 20746865206d6178696d756d2076>100 228 Q<616c75652e20536f2c>-.25 E F1<2d2d 2d383c2d2d2d2d2d2d383c2d2d2d2d2d2d383c2d2d2d2d2d2d383c2d2d2d2d2d2d383c2d 2d2d>100 252 Q<63617420686174>100 264 Q<302e32>12 E<68617420636174>100 276 Q<302e3136>12 E<68617420636174>100 288 Q<302e38>12 E<2d2d2d3e382d2d 2d2d2d2d3e382d2d2d2d2d2d3e382d2d2d2d2d2d3e382d2d2d2d2d2d3e382d2d2d>100 300 Q F0 -.4<5769>100 324 S<6c6c20726573756c7420696e207477>.4 E 2.5 <6f61>-.1 G<72726f>-2.5 E<7773>-.25 E F1<6361742d686174>2.5 E F0<616e64> 2.5 E F1<6861742d636174>2.5 E F0<626f746820776974682076>2.5 E <616c756520302e382e>-.25 E/F2 10.95/Times-Bold@0 SF <4150504c49434142494c495459>20 340.8 Q/F3 10/Times-Bold@0 SF<6d636c>100 352.8 Q F0 .302<77696c6c2077>2.802 F .302<6f726b2076>-.1 F .302<65727920 77656c6c20666f722067726170687320696e20776869636820746865206469616d657465 72206f6620746865206e61747572616c20636c757374657273206973206e6f7420746f6f 206c6172>-.15 F<67652e>-.18 E 1.177 <5468652070726573656e6365206f66206d616e>100 364.8 R 3.677<7965>-.15 G 1.177<64676573206265747765656e20646966>-3.677 F 1.176<666572656e7420636c 757374657273206973206e6f742070726f626c656d617469633b206173206c6f6e672061 73207468657265206973>-.25 F .369<636c7573746572207374727563747572652c20 6d636c2077696c6c208c6e642069742e204974206973206c657373206c696b>100 376.8 R .369<656c7920746f2077>-.1 F .37<6f726b2077656c6c20666f7220677261706873 207769746820636c7573746572732028696e647563696e67>-.1 F 1.249 <73756267726170687329206f66206c6172>100 388.8 R 1.249 <6765206469616d65746572>-.18 F 3.749<2c65>-.4 G 1.249 <2e672e20677269642d6c696b>-3.749 F 3.749<6567>-.1 G 1.249 <72617068732064657269>-3.749 F -.15<7665>-.25 G 3.749<6466>.15 G 1.248 <726f6d204575636c696465616e20646174612e20536f206d636c20696e20697473> -3.749 F .216<63616e6f6e6963616c20666f726d206973206365727461696e6c79206e 6f74208c7420666f7220626f756e6461727920646574656374696f6e206f7220696d6167 65207365>100 400.8 R .217<676d656e746174696f6e2e20492065>-.15 F <78706572696d656e746564>-.15 E 2.377<776974682061206d6f64698c6564206d63 6c20616e6420626f756e6461727920646574656374696f6e20696e207468652074686573 697320706f696e74656420746f2062656c6f>100 412.8 R 4.877<7728>-.25 G <736565>-4.877 E F3<52454645522d>4.877 E<454e434553>100 424.8 Q F0 <292e20546869732077>A<61732066756e20616e64206e6f7420656e746972656c792075 6e73756363657366756c2c2062>-.1 E<7574206e6f7420736f6d657468696e6720746f 206265207075727375656420667572746865722e>-.2 E F3<6d636c>100 448.8 Q F0 <6c696b>4.102 E<6573>-.1 E/F4 10/Times-Italic@0 SF<756e646972>4.102 E 1.602<656374656420696e707574206772>-.37 F 1.602<617068732062657374>-.15 F F0 4.102<2c61>C 1.602<6e64206974207265616c6c79206469736c696b>-4.102 F 1.602 <6573206772617068732077697468206e6f64652070616972732028692c6a2920666f72> -.1 F .733<776869636820616e2061726320676f696e672066726f6d206920746f206a 2069732070726573656e7420616e642074686520636f756e746572>100 460.8 R .732 <2d6172632066726f6d206a20746f206920697320616273656e742e2054>-.2 F .732 <727920746f206d616b>-.35 F<65>-.1 E .346 <796f757220696e70757420677261706820756e64697265637465642e>100 472.8 R .347<467572746865726d6f72652c206d636c20696e7465727072657473206564676520 7765696768747320696e206772617068732061732073696d696c617269746965732e> 5.346 F 1.416<496620796f7520617265207573656420746f2077>100 484.8 R 1.416 <6f726b696e6720776974682064697373696d696c617269746965732c20796f75207769 6c6c206861>-.1 F 1.716 -.15<76652074>-.2 H 3.916<6f63>.15 G<6f6e>-3.916 E -.15<7665>-.4 G 1.416 <72742074686f736520746f2073696d696c61726974696573>.15 F .126 <7573696e6720736f6d6520636f6e>100 496.8 R -.15<7665>-.4 G .127<7273696f 6e20666f726d756c612e20546865206d6f737420696d706f7274616e74207468696e6720 6973207468617420796f75206665656c20636f6e8c64656e742074686174207468652073 696d2d>.15 F .402<696c617269746965732061726520726561736f6e61626c652c2069 2e652e20696620582069732073696d696c617220746f2059207769746820776569676874 20322c20616e6420582069732073696d696c617220746f205a2077697468207765696768 74>100 508.8 R .285<3230302c207468656e20746869732073686f756c64206d65616e 2074686174207468652073696d696c6172697479206f6620592028746f20582920697320 6e65>100 520.8 R .285 <676c65637469626c6520636f6d70617265642077697468207468652073696d692d>-.15 F<6c6172697479206f66205a2028746f2058292e>100 532.8 Q F3<6d636c>100 556.8 Q F0 .282<69732070726f6261626c79206e6f742073756974656420666f7220636c7573 746572696e67>2.782 F F4<7472>2.782 E .282<6565206772>-.37 F<61706873> -.15 E F0 2.782<2e54>C .282<6869732069732062656361757365206d636c2077> -2.782 F .281<6f726b73206265737420696620746865726520617265>-.1 F .063 <6d756c7469706c65207061746873206265747765656e20646966>100 568.8 R .063< 666572656e74206e6f64657320696e20746865206e61747572616c20636c757374657273 2c2062>-.25 F .063 <757420696e207472656520677261706873207468657265206973206f6e6c79206f6e65> -.2 F<70617468206265747765656e20616e>100 580.8 Q 2.5<7970>-.15 G <616972206f66206e6f6465732e2054>-2.5 E<726565732061726520746f6f20737061 72736520612073747275637475726520666f72206d636c20746f2077>-.35 E <6f726b206f6e2e>-.1 E F3<6d636c>100 604.8 Q F0 .174 <6d61792077656c6c2062652073756974656420666f7220636c7573746572696e67> 2.674 F F4<6c61747469636573>2.674 E F0 2.674<2e49>C 2.674<7477>-2.674 G .173<696c6c20646570656e64206f6e207468652064656e736974792063686172616374 6572697374696373206f6620746865>-2.674 F .21<6c6174746963652c20616e642074 686520636f6e646974696f6e7320666f7220737563636573732061726520746865207361 6d652061732074686f736520666f7220636c7573746572696e672067726170687320696e 2067656e6572616c3a20546865>100 616.8 R .983<6469616d65746572206f66207468 65206e61747572616c20636c7573746572732073686f756c64206e6f7420626520746f6f 206c6172>100 628.8 R<67652e>-.18 E F3<4e4f>5.983 E<5445>-.4 E F0 .982 <7768656e20636c7573746572696e672061206c6174746963652c20796f75>3.482 F F4 <68617665>100 640.8 Q F0 1.034<746f20636c75737465722074686520756e646572 6c79696e6720756e64697265637465642067726170682c20616e64206e6f742074686520 6469726563746564206772617068207468617420726570726573656e747320746865> 3.533 F 1.091<6c61747469636520697473656c662e2054686520726561736f6e206973 2074686174206f6e652068617320746f20616c6c6f>100 652.8 R 3.591<776d>-.25 G 1.091<636c20286f7220616e>-3.591 F 3.591<796f>-.15 G 1.091 <7468657220636c757374657220616c676f726974686d2920746f2027>-3.591 F <6c6f6f6b>-.1 E .931<6261636b20696e2074696d65272c20736f20746f2073706561 6b2e20436c7573746572696e6720616e6420646972656374696f6e616c69747920626974 652065616368206f7468657220286c6f6e672064697363757373696f6e206f6d69742d> 100 664.8 R<746564292e>100 676.8 Q F3<6d636c>100 700.8 Q F0 .59 <68617320612077>3.09 F .59<6f7273742d636173652074696d6520636f6d706c65> -.1 F .59<78697479204f284e2a6b5e32292c207768657265204e20697320746865206e 756d626572206f66206e6f64657320696e207468652067726170682c>-.15 F .468<61 6e64206b20697320746865206d6178696d756d206e756d626572206f66206e6569676862 6f75727320747261636b>100 712.8 R .469<656420647572696e6720636f6d70757461 74696f6e732e206b20646570656e6473206f6e20746865>-.1 F F3<2d50>2.969 E F0 <616e64>100 724.8 Q F3<2d53>3.815 E F0 1.315 <6f7074696f6e732e20496620746865>3.815 F F3<2d53>3.815 E F0 1.314 <6f7074696f6e2069732075736564202877686963682069732074686520646566>3.815 F 1.314 <61756c742073657474696e6729207468656e206b20657175616c73207468652076>-.1 F<616c7565>-.25 E<6d636c2031322d313335>20 768 Q<3134204d61792032303132> 161.505 E<3134>197.335 E 0 Cg EP %%Page: 15 15 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F .058 <636f72726573706f6e64696e6720776974682074686973206f7074696f6e2e2054>100 84 R .058<79706963616c2076>-.8 F .058<616c75657320666f72206b206172652069 6e207468652072616e6765203530302e2e313030302e205468652061>-.25 F -.15 <7665>-.2 G .058<726167652063617365>.15 F 1.308 <6973206d75636820626574746572207468616e207468652077>100 96 R 1.307<6f72 737420636173652074686f7567682c20617320636c757374657220737472756374757265 20697473656c662068617320746865206566>-.1 F 1.307 <66656374206f662068656c70696e67>-.25 F<6d636c27>100 108 Q 2.5<7370>-.55 G<72756e696e6720736368656d65732c206365727461696e6c7920696620746865206469 616d65746572206f66206e61747572616c20636c757374657273206973206e6f74206c61 72>-2.5 E<67652e>-.18 E/F1 10.95/Times-Bold@0 SF<46494c4553>20 124.8 Q F0 .934<5468657265206172652063757272656e746c79206e6f207265736f7572636520 6e6f7220636f6e8c6775726174696f6e208c6c65732e>100 136.8 R .935<546865206d 636c206d617472697820666f726d61742069732064657363726962656420696e>5.934 F <746865>100 148.8 Q/F2 10/Times-Bold@0 SF<6d6378696f283529>2.5 E F0 <73656374696f6e2e>2.5 E F1<454e564952>20 165.6 Q<4f4e4d454e54>-.329 E F0 <4d434c58494f444947495453>100 177.6 Q .733<5768656e2077726974696e67206d 6174726963657320696e20696e7465726368616e676520666f726d61742c206d636c2077 696c6c2075736520746869732076>120 189.6 R .733 <61726961626c65202869662070726573656e742920617320746865>-.25 F<70726563 6973696f6e20286e756d626572206f66206469676974732920666f72207072696e74696e 6720746865206672616374696f6e616c2070617274206f662076>120 201.6 Q <616c7565732e>-.25 E<4d434c58494f>100 225.6 Q<564552424f53495459>-.5 E .179<4d434c20616e6420697473207369626c696e67206170706c69636174696f6e7320 77696c6c20757375616c6c79207265706f72742061626f7574206d617472697820696e70 75742f6f75747075742066726f6d2f746f206469736b2e>120 237.6 R .232 <5468652076>120 249.6 R .232<6572626f73697479206c65>-.15 F -.15<7665> -.25 G 2.732<6c63>.15 G .232<616e206265207265>-2.732 F .232 <67756c6174656420766961204d434c58494f>-.15 F .231 <564552424f534954592e2054686573652061726520746865206c65>-.5 F -.15<7665> -.25 G .231<6c732069742063616e>.15 F <63757272656e746c792062652073657420746f2e>120 261.6 Q 10<3153>125 285.6 S<696c656e742062>-10 E <7574206170706c69636174696f6e73206d617920616c74657220746869732e>-.2 E 10 <3253>125 297.6 S<696c656e7420616e64206170706c69636174696f6e732063616e20 6e6f7420616c74657220746869732e>-10 E 10<3456>125 309.6 S <6572626f73652062>-11.11 E <7574206170706c69636174696f6e73206d617920616c74657220746869732e>-.2 E 10 <3856>125 321.6 S<6572626f736520616e64206170706c69636174696f6e732063616e 206e6f7420616c74657220746869732028646566>-11.11 E<61756c74292e>-.1 E <4d434c58494f464f524d41>100 345.6 Q<54>-1.11 E 1.926<4d434c20616e642069 7473207369626c696e67206170706c69636174696f6e732077696c6c20627920646566> 120 357.6 R 1.927<61756c74206f7574707574206d6174726963657320696e20696e74 65726368616e676520666f726d6174>-.1 F .22 <726174686572207468616e2062696e61727920666f726d6174202863662e>120 369.6 R F2<6d6378696f283529>2.72 E F0 2.72<292e20546865>B .22<6465736972656420 666f726d61742063616e20626520636f6e74726f6c6c656420766961207468652076> 2.72 F<6172692d>-.25 E<61626c65204d434c58494f464f524d41>120 381.6 Q <542e2054686573652061726520746865206c65>-1.11 E -.15<7665>-.25 G <6c732069742063616e2063757272656e746c792062652073657420746f2e>.15 E 10 <3149>125 405.6 S<6e7465726368616e676520666f726d61742062>-10 E <7574206170706c69636174696f6e73206d617920616c74657220746869732e>-.2 E 10 <3249>125 417.6 S<6e7465726368616e676520666f726d617420616e64206170706c69 636174696f6e732063616e206e6f7420616c74657220746869732028646566>-10 E <61756c74292e>-.1 E 10<3442>125 429.6 S<696e61727920666f726d61742062>-10 E<7574206170706c69636174696f6e73206d617920616c74657220746869732e>-.2 E 10<3842>125 441.6 S<696e61727920666f726d617420616e64206170706c6963617469 6f6e732063616e206e6f7420616c74657220746869732e>-10 E<4d434c584943464c41> 100 465.6 Q<4753>-.4 E 1.268<4966206d6174726963657320617265206f75747075 7420696e20696e7465726368616e676520666f726d61742c20627920646566>120 477.6 R 1.268<61756c7420656d7074792076>-.1 F 1.268 <6563746f72732077696c6c206e6f74206265206c69737465642e>-.15 F<45717569> 120 489.6 Q -.25<7661>-.25 G .882 <6c656e746c792028647572696e6720696e7075742074696d65292c2076>.25 F .881< 6563746f727320666f72207768696368206e6f206c697374696e67206973207072657365 6e742061726520756e64657273746f6f6420746f>-.15 F .886 <626520656d707479202d206e6f7465207468617420746865>120 501.6 R/F3 10 /Times-Italic@0 SF<7072>3.386 E<6573656e6365>-.37 E F0 .886 <6f6620612076>3.386 F .886<6563746f722069732065737461626c69736865642075 73696e672074686520646f6d61696e20696e666f726d6174696f6e>-.15 F .335 <666f756e6420696e207468652068656164657220706172742e>120 513.6 R .335<49 7420697320706f737369626c6520746f20656e666f726365206c697374696e67206f6620 656d7074792076>5.335 F .334 <6563746f72732062792073657474696e672062697420273127>-.15 F <696e207468652076>120 525.6 Q<61726961626c65204d434c584943464c41>-.25 E <47532e>-.4 E<4d434c58494f554e434845434b4544>100 549.6 Q 1.59<4d434c2061 6e6420697473207369626c696e67206170706c69636174696f6e732077696c6c20616c> 120 561.6 R -.1<7761>-.1 G 1.59 <797320636865636b2061206d617472697820666f7220636f6e73697374656e63>.1 F 4.09<7977>-.15 G 1.59<68696c65206974206973>-4.09 F 1.401 <6265696e6720726561642e20496620746869732076>120 573.6 R 1.401 <61726961626c65206973207365742c2074686520636f6e73697374656e63>-.25 F 3.901<7963>-.15 G 1.4<6865636b206973206f6d69747465642e2046>-3.901 F 1.4 <6f72206c6172>-.15 F 1.4<67652067726170687320746865>-.18 F .78 <73706565642075702063616e20626520636f6e736964657261626c652e20486f>120 585.6 R<7765>-.25 E -.15<7665>-.25 G 1.58 -.4<722c2069>.15 H 3.28<6674> .4 G .78<686520696e707574206772617068206973206e6f7420636f6e666f726d696e 672069742077696c6c206c696b>-3.28 F<656c79>-.1 E<637261736820746865206170 706c69636174696f6e2074686174206973207573696e672069742e>120 597.6 Q F1 <444941>20 614.4 Q<474e4f5354494353>-.602 E F0<4966>100 626.4 Q F2 <6d636c>3.95 E F0 1.45 <697373756573206120646961676e6f73746963206572726f72>3.95 F 3.95<2c69>-.4 G 3.95<7477>-3.95 G 1.45<696c6c206d6f7374206c696b>-3.95 F 1.45<656c7920 626520626563617573652074686520696e707574206d617472697820636f756c64206e6f 74206265>-.1 F .226<7061727365642073756363657366756c6c792e>100 638.4 R F2<6d636c>5.226 E F0 .227<747269657320746f2062652068656c7066756c20696e20 64657363726962696e6720746865206b696e64206f66207061727365206572726f722e> 2.727 F .227<546865206d636c206d6174726978>5.227 F <666f726d61742069732064657363726962656420696e20746865>100 650.4 Q F2 <6d6378696f283529>2.5 E F0<73656374696f6e2e>2.5 E F1 -.11<4255>20 667.2 S<4753>.11 E F0<4e6f206b6e6f>100 679.2 Q<776e2062>-.25 E <75677320617420746869732074696d652e>-.2 E F1 -.548<4155>20 696 S <54484f52>.548 E F0<5374696a6e2076>100 708 Q<616e20446f6e67656e2e>-.25 E <6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<3135> 197.335 E 0 Cg EP %%Page: 16 16 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F/F1 10.95/Times-Bold@0 SF<48495354> 20 84 Q<4f52>-.197 E<592f43524544495453>-.383 E F0 .373 <546865204d434c20616c676f726974686d2077>100 96 R .372 <617320636f6e636569>-.1 F -.15<7665>-.25 G 2.872<6469>.15 G 2.872<6e73> -2.872 G .372 <7072696e672031393936206279207468652070726573656e7420617574686f722e> -2.872 F .372<546865208c72737420696d706c656d656e74612d>5.372 F .698 <74696f6e206f6620746865204d434c20616c676f726974686d20666f6c6c6f>100 108 R .699<776564207468617420737072696e6720616e642073756d6d65722e2049742077> -.25 F .699<6173207772697474656e20696e205065726c20616e642070726f>-.1 F -.15<7665>-.15 G<64>.15 E .35<7468652076696162696c697479206f662074686520 616c676f726974686d2e2054686520696d706c656d656e746174696f6e20646573637269 6265642068657265206265>100 120 R -.05<6761>-.15 G 2.85<6e69>.05 G .35 <7473206c69666520696e20617574756d6e20313939372e>-2.85 F 1.654 <546865208c7273742076>100 132 R 1.655<657273696f6e73206f6620746865207669 74616c206d6174726978206c69627261727920776572652064657369676e6564206a6f69 6e746c79206279205374696a6e2076>-.15 F 1.655<616e20446f6e67656e20616e64> -.25 F .009<416e6e6975732047726f656e696e6b20696e2074686520706572696f6420 4f6b746f6265722031393937202d204d617920313939392e20546865206566>100 144 R .009<8c6369656e74206d61747269782d76>-.25 F .009 <6563746f72206d756c7469706c6963612d>-.15 F .948 <74696f6e20726f7574696e652077>100 156 R .948<6173207772697474656e206279 20416e6e6975732e205468697320726f7574696e6520697320776974686f757420736967 6e698c63616e74206368616e676573207374696c6c206f6e65206f6620746865>-.1 F< 636f726e657273746f6e6573206f662074686973204d434c20696d706c656d656e746174 696f6e2e>100 168 Q 1.344 <53696e6365204d6179203139393920616c6c204d434c206c6962726172696573206861> 100 192 R 1.644 -.15<76652073>-.2 H 1.344<65656e206d756368206465>.15 F -.15<7665>-.25 G 1.343 <6c6f706d656e7420616e6420726564657369676e206279207468652070726573656e74> .15 F 1.056<617574686f722e204d61747269782d6d6174726978206d756c7469706c69 636174696f6e20686173206265656e207265>100 204 R 1.056 <7772697474656e207365>-.25 F -.15<7665>-.25 G 1.056 <72616c2074696d657320746f2074616b>.15 F 3.556<6566>-.1 G 1.056 <756c6c20616476>-3.556 F 1.056<616e74616765206f66>-.25 F 1.046<74686520 7370617273656e6573732070726f70657274696573206f66207468652073746f63686173 746963206d617472696365732062726f7567687420666f72746820627920746865204d43 4c20616c676f726974686d2e2054686973>100 216 R 1.538<6d6f73746c7920636f6e 6365726e7320746865206973737565206f66207072756e696e6720ad2072656d6f>100 228 R -.25<7661>-.15 G 4.038<6c6f>.25 G 4.038<6673>-4.038 G 1.538<6d616c 6c20656c656d656e747320696e20612073746f6368617374696320636f6c756d6e20696e> -4.038 F<6f7264657220746f206b>100 240 Q <656570206d61747269636573207370617273652e>-.1 E -1.11<5665>100 264 S 1.905<727920696e73747275637469>1.11 F 2.205 -.15<76652077>-.25 H 1.904 <617320746861742061726f756e6420417072696c203230303120526f62204b>.05 F 1.904<6f6f706d616e20706f696e746564206f757420746861742073656c656374696e67 20746865206b>-.35 F<6c6172>100 276 Q .627<6765737420656c656d656e7473206f 7574206f66206120636f6c6c656374696f6e206f66206e206973206265737420646f6e65 207573696e672061206d696e2d686561702e20546869732077>-.18 F .627 <617320746865206b>-.1 F .927 -.15<65792074>-.1 H 3.127<6f74>.15 G<6865> -3.127 E 1.77<7365636f6e64206d616a6f72207265>100 288 R 1.77 <777269746520286e6f>-.25 F 4.269<7763>-.25 G 1.769<6f756e74696e67207468 72656529206f6620746865204d434c207072756e696e6720736368656d65732c20726573 756c74696e6720696e206d756368>-4.269 F -.1<6661>100 300 S<7374657220636f 64652c2067656e6572616c6c792070726f647563696e672061206d6f7265206163637572 61746520636f6d7075746174696f6e206f6620746865204d434c2070726f636573732e> .1 E .476<496e204d6179203230303120416e746f6e20456e726967687420696e697469 617465642074686520706172616c6c656c6c697a6174696f6e206f6620746865>100 324 R/F2 10/Times-Bold@0 SF<6d636c>2.976 E F0 .476 <636f646520616e6420746872656164656420696e8d6174696f6e2e>2.976 F 1.179 <46726f6d20746869732065>100 336 R 1.179 <78616d706c652c205374696a6e2074687265616465642065>-.15 F 1.179 <7870616e73696f6e2e20546869732077>-.15 F 1.178<61732067726561742c206173 20746865204d434c2064617461207374727563747572657320616e64>-.1 F .931<6f70 6572616e647320286e6f726d616c206d6174726978206d756c7469706c69636174696f6e 20616e6420486164616d617264206d756c7469706c69636174696f6e29206a7573742062 65>100 348 R 3.431<6766>-.15 G .931<6f7220706172616c6c656c6c697a612d> -3.431 F<74696f6e2e>100 360 Q<4f6e77>100 384 Q 4.079<617264732e20546865> -.1 F 1.578<4a616e7561727920323030332030332d3031302072656c6561736520696e 74726f647563656420737570706f727420666f72207370617273656c7920656e756d6572 617465642028692e652e>4.079 F .332<696e6469636573206e656564206e6f74206265 2073657175656e7469616c292067726170687320616e64206d617472696365732c207468 6520726573756c74206f662061206d616a6f72206f>100 396 R -.15<7665>-.15 G .333<726861756c206f6620746865206d6174726978>.15 F .262 <6c69627261727920616e64206d6f737420686967686572206c61796572732e>100 408 R<436f6e6365707475616c6c79>5.262 E 2.762<2c74>-.65 G .262 <6865206c696272617279206e6f>-2.762 F 2.761<7773>-.25 G .261 <656573206d6174726963657320617320696e8c6e697465207175616472616e7473> -2.761 F<6f66207768696368206f6e6c79208c6e6974652073756273656374696f6e73 2068617070656e20746f206861>100 420 Q .3 -.15<7665206e>-.2 H <6f6e7a65726f20656e74726965732e>.15 E 2.702<546865204a756e65203230303320 30332d3135342072656c6561736520696e74726f647563656420756e69782d7479706520 706970656c696e657320666f7220636c7573746572696e672c20696e636c7564696e6720 746865>100 444 R .958<424c41535420706172736572206d63786465626c6173742061 6e6420746865206d636c626c6173746c696e65207363726970742e>100 456 R .957 <54686520417072696c20323030342030342d3130352072656c65617365207265>5.957 F<7669>-.25 E -.15<7665>-.25 G<64>.15 E<62696e61727920666f726d61742c2077 6869636820686173206265656e2061208c72737420636c61737320636974697a656e2065> 100 468 Q -.15<7665>-.25 G<72792073696e63652e>.15 E -.4<5769>100 492 S .737<746820746865204d6172636820323030352030352d3039302072656c6561736520 6d637873756273208c6e616c6c7920616371756972656420612073616e65207370656369 8c636174696f6e2073796e7461782e20546865>.4 F<4e6f>100 504 Q -.15<7665> -.15 G .894<6d62657220323030352030352d3331342072656c656173652062726f7567 687420746865206162696c69747920746f2073747265616d206c6162656c20696e707574 206469726563746c7920696e746f206d636c2e20546865>.15 F 1.791<737562736571 75656e742072656c6561736520696e74726f64756365642061207472616e73666f726d61 74696f6e206c616e6775616765207368617265642062792076>100 516 R 1.791 <6172696f7573206d636c207369626c696e67732074686174>-.25 F<616c6c6f>100 528 Q .765<7773206172626974726172792070726f6772657373696f6e73206f662074 72616e73666f726d6174696f6e7320746f206265206170706c69656420746f2065697468 65722073747265616d2076>-.25 F .765<616c756573206f72206d6174726978>-.25 F -.25<7661>100 540 S<6c7565732e>.25 E 1.335<4a6f6f73742076>100 564 R 1.336<616e204261616c2073657420757020746865206d636c2043565320747265652061 6e64207061636b61676564206d636c20666f722044656269616e20474e552f4c696e7578 2e20486520636f6d2d>-.25 F .677<706c6574656c79206175746f746f6f6c65642074 686520736f75726365732c20736f206d75636820736f2074686174206174208c72737420 4920666f756e64206974206861726420746f208c6e64207468656d206261636b20616d69 647374>100 576 R<626f6f7473747261702c2061636c6f63616c2e6d342c2064657063 6f6d702c20616e64206f746865722062656175746965732e>100 588 Q 1.689 <4a616e2076>100 612 R 1.689 <616e2064657220537465656e207368617265642068697320656c65>-.25 F -.05 <6761>-.15 G 1.689 <6e74206d656d706f6f6c20636f64652e205068696c6970204c696a6e7a6161642067> .05 F -2.25 -.2<61762065>-.05 H 1.69<75736566756c20636f6d6d656e74732e> 4.39 F<5068696c69702c20536861>100 624 Q <776e20486f6f6e2c204162656c2055726574612d56>-.15 E<6964616c2c20616e6420 4d617274696e204d6f6b72656a732073656e742068656c7066756c2062>-.6 E <7567207265706f7274732e>-.2 E .555<4162656c2055726574612d56>100 648 R .555<6964616c20616e642044696e616b617270616e6469616e204465656e646179616c 20636f6d6d656e746564206f6e20616e6420636f6e74726962>-.6 F .555 <7574656420746f206d63786465626c617374>-.2 F <616e64206d6378617373656d626c652e>100 660 Q -.35<5469>100 684 S 3.985 <6d48>.35 G 1.485<756768657320636f6e74726962>-3.985 F 1.486 <75746564207365>-.2 F -.15<7665>-.25 G 1.486<72616c20676f6f642062>.15 F 1.486<7567207265706f72747320666f72206d6378617373656d626c652c206d63786465 626c61737420616e64207a6f656d202861>-.2 F -.1<776f>100 696 S <726b686f72736520666f72>.1 E F2<636c6d2066>2.5 E<6f726d6174>-.25 E F0 <292e>A<6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E <3136>197.335 E 0 Cg EP %%Page: 17 17 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<6d636c2831292055534552>20 48 R 162.615 <434f4d4d414e4453206d636c283129>2.5 F/F1 10.95/Times-Bold@0 SF <53454520414c534f>20 84 Q/F2 10/Times-Bold@0 SF<6d636c666171283729>100 96 Q F0 2.5<2d46>2.5 G<72657175656e746c792041736b>-2.5 E <6564205175657374696f6e732e>-.1 E F2<6d6378696f283529>100 120 Q F0 2.5 <2d6164>2.5 G<65736372697074696f6e206f6620746865206d636c206d617472697820 666f726d61742e>-2.5 E .253<546865726520617265206d616e>100 144 R 2.753 <796d>-.15 G .253<6f7265207574696c69746965732e20436f6e73756c74>-2.753 F F2<6d636c66616d696c79283729>2.753 E F0 .253<666f7220616e206f>2.753 F -.15<7665>-.15 G<72766965>.15 E 2.752<776f>-.25 G 2.752<6661>-2.752 G .252<6e64206c696e6b7320746f20616c6c2074686520646f632d>-2.752 F<756d656e 746174696f6e20616e6420746865207574696c697469657320696e20746865206d636c20 66>100 156 Q<616d696c792e>-.1 E F2<6d696e696d636c>100 180 Q F0 .704<6973 2061203230302d6c696e65207065726c20696d706c656d656e746174696f6e206f66206d 636c2e204974206973207368697070656420696e20746865206d636c2064697374726962> 3.204 F .705<7574696f6e20616e642063616e>-.2 F <626520666f756e64206f6e6c696e6520617420687474703a2f2f6d6963616e732e6f72> 100 192 Q<672f6d636c2e>-.18 E<6d636c27>100 216 Q 2.5<7368>-.55 G <6f6d6520617420687474703a2f2f6d6963616e732e6f72>-2.5 E<672f6d636c2f2e> -.18 E F1<5245464552454e434553>20 232.8 Q F0 .336 <5b315d205374696a6e2076>100 244.8 R .336<616e20446f6e67656e2c>-.25 F/F3 10/Times-Italic@0 SF<4772>2.836 E .335 <61706820436c7573746572696e6720627920466c6f772053696d756c6174696f6e>-.15 F F0 5.335<2e50>C .335<6844207468657369732c20556e69>-5.335 F -.15<7665> -.25 G .335<7273697479206f6620557472656368742c>.15 F<4d617920323030302e> 100 256.8 Q<687474703a2f2f7777772e6c6962726172792e75752e6e6c2f6469676961 7263686965662f6469702f646973732f313839353632302f696e686f75642e68746d>100 268.8 Q .874<5b325d205374696a6e2076>100 292.8 R .874 <616e20446f6e67656e2c>-.25 F F3<4772>3.374 E .874 <61706820436c7573746572696e672056>-.15 F .875<69612061204469736372>-.74 F .875<65746520556e636f75706c696e67205072>-.37 F<6f63657373>-.45 E F0 3.375<2c53>C .875<49414d204a6f75726e616c206f6e>-3.375 F 32.492<4d617472 697820416e616c7973697320616e64204170706c69636174696f6e732c2033302831293a 3132312d3134312c20323030382e>100 304.8 R <687474703a2f2f6c696e6b2e6169702e6f72>100 316.8 Q <672f6c696e6b2f3f534a4d41454c2f33302f3132312f31>-.18 E 1.084 <5b335d205374696a6e2076>100 340.8 R 1.084<616e20446f6e67656e2e>-.25 F F3 3.584<4163>3.584 G 1.084<6c757374657220616c676f726974686d20666f72206772> -3.584 F<61706873>-.15 E F0 6.084<2e54>C 1.085 <6563686e6963616c205265706f727420494e532d52303031302c204e6174696f6e616c> -6.784 F .355<526573656172636820496e7374697475746520666f72204d617468656d 617469637320616e6420436f6d707574657220536369656e636520696e20746865204e65 746865726c616e64732c20416d7374657264616d2c204d6179>100 352.8 R <323030302e>100 364.8 Q<687474703a2f2f7777772e6377692e6e6c2f6674702f4357 497265706f7274732f494e532f494e532d52303031302e70732e5a>100 376.8 Q 2.361 <5b345d205374696a6e2076>100 400.8 R 2.361<616e20446f6e67656e2e>-.25 F F3 4.862<4173>4.861 G<746f63>-4.862 E 2.362 <68617374696320756e636f75706c696e67207072>-.15 F 2.362 <6f6365737320666f72206772>-.45 F<61706873>-.15 E F0 7.362<2e54>C 2.362 <6563686e6963616c205265706f727420494e532d>-8.062 F .707<52303031312c204e 6174696f6e616c20526573656172636820496e7374697475746520666f72204d61746865 6d617469637320616e6420436f6d707574657220536369656e636520696e20746865204e 65746865726c616e64732c>100 412.8 R <416d7374657264616d2c204d617920323030302e>100 424.8 Q<687474703a2f2f7777 772e6377692e6e6c2f6674702f4357497265706f7274732f494e532f494e532d52303031 312e70732e5a>100 436.8 Q 1.752<5b355d205374696a6e2076>100 460.8 R 1.752 <616e20446f6e67656e2e>-.25 F F3 -.8<5065>4.252 G 1.752 <72666f726d616e636520637269746572696120666f72206772>.8 F 1.753 <61706820636c7573746572696e6720616e64204d61726b>-.15 F 1.953 -.1 <6f762063>-.1 H 1.753<6c75737465722065>.1 F<78706572692d>-.2 E <6d656e7473>100 472.8 Q F0 2.598<2e54>C .098<6563686e6963616c205265706f 727420494e532d52303031322c204e6174696f6e616c20526573656172636820496e7374 697475746520666f72204d617468656d617469637320616e6420436f6d7075746572> -3.298 F<536369656e636520696e20746865204e65746865726c616e64732c20416d73 74657264616d2c204d617920323030302e>100 484.8 Q<687474703a2f2f7777772e63 77692e6e6c2f6674702f4357497265706f7274732f494e532f494e532d52303031322e70 732e5a>100 496.8 Q .219<5b365d20456e726967687420412e4a2e2c2056>100 520.8 R .219<616e20446f6e67656e20532e2c204f757a6f756e697320432e412e>-1.11 F F3 .219<416e206566>5.219 F .22 <8c6369656e7420616c676f726974686d20666f72206c6172>-.18 F -.1<6765>-.37 G .22<2d7363616c6520646574656374696f6e>.1 F<6f66207072>100 532.8 Q <6f7465696e2066616d696c696573>-.45 E F0 2.5<2c4e>C<75636c65696320416369 64732052657365617263682033302837293a313537352d31353834202832303032292e> -2.5 E F1<4e4f>20 549.6 Q<544553>-.438 E F0 1.06<5468697320706167652077> 100 561.6 R 1.059<61732067656e6572617465642066726f6d>-.1 F F2<5a4f454d> 3.559 E F0 1.059 <6d616e75616c206d6163726f732c20687474703a2f2f6d6963616e732e6f72>3.559 F 1.059<672f7a6f656d2e20426f74682068746d6c20616e64>-.18 F<726f66>100 573.6 Q 2.952<6670>-.25 G .453<616765732063616e20626520637265617465642066726f 6d207468652073616d6520736f7572636520776974686f7574206861>-2.952 F .453< 76696e6720746f20626f74686572207769746820616c6c2074686520757375616c20636f 6e2d>-.2 F -.15<7665>100 585.6 S <7273696f6e2070726f626c656d732c207768696c65206b>.15 E <656570696e6720736f6d65206c65>-.1 E -.15<7665>-.25 G 2.5<6c6f>.15 G 2.5 <6673>-2.5 G <6f706869737469636174696f6e20696e20746865207479706573657474696e672e>-2.5 E<6d636c2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<3137> 197.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxdeblast.html0000644000402500021140000003343111754271040013057 00000000000000 The mcxdeblast manual

14 May 2012    mcxdeblast 12-135

NAME

mcxdeblast — parse BLAST files and stream output directly into mcl or write mcxassemble input.

SYNOPSIS

mcxdeblast file-name

mcxdeblast [--score=<b|e|r> (bit scores|e-values|normalize bit score)] [--m9 (expect BLAST column format)] [--out <fname> (output file)] [--line-mode abc (write ID1 ID2 score format)] [--sort=<a|o> (alphabetic|occurrence sorting)] [--xi-dat=<suf> (strip <suf> from file-name)] [--xo-dat=<suf> (add <suf> to base name)] [--bcut=<val> (bit score cutoff)] [--ecut=<val> (E-value cutoff)] [--rcut=<val> (raw value cutoff)] [--tab=<fname> (tab file)] <file-name>

DESCRIPTION

mcxdeblast parses BLAST files.

In stream mode mcxdeblast output can be directly streamed to mcl by using the mcxdeblast --line-mode=abc option and equipping mcl with either --abc or --expect-abc. This can be considered the easy, lightweight and fast track. This functionality was recently acquired by mcl.

In the classic and slightly more heavy-handed assemble mode, mcxdeblast creates output files suitable for use by mcxassemble. The latter can in turn create input suitable for mcl. This is the mode in which mcxdeblast is employed by mclblastline.

STREAM MODE

Enter stream mode by specifiying --line-mode=abc. Use --m9 if the input is in columnar output. Pipe the result to a file or directly to mcl. Example invocations can be found in the mcl manual.

ASSEMBLE MODE

If the input file is named iput, mcxdeblast will by default create files iput.hdr, iput.raw, iput.tab, iput.map, and iput.err. The hdr file contains information about the number of nodes found. It will be read by mcxassemble. The raw file contains the co-occurrence scores between different nodes (peptides), also to be read by mcxassemble. The co-occurrence scores are in terms of mcl indentiers, which are subjected to rearranging by mcxassemble in order to correctly align them with the tab file. The tab file contains bindings between mcl identifiers (after rearranging as specified in the map file) and the BLAST labels (peptide identifiers). Refer to the manual of mcxassemble for the syntax of a tab file. The err file contains a list of any errors encountered.

If the --tab=fname option is used mcxdeblast changes its behaviour. It will read the file fname, and use the bindings found therein. It will no longer output any of the hdr, map, or tab files. The hdr file should be provided by the same application that generated the specified tab file, and the map file should no longer be necessary (it might be convenient though and perhaps the future will bring a new --map option).

The --tab=fname option can be convenient e.g. if you split a BLAST job over multiple machines and want to apply mcxdeblast to each of the subresults. You do this by generating a single central tab file in advance. Then provide each instance of mcxdeblast with this tab file. Each instance will generate a raw file. The respective raw files can simply be concatenated and fed to mcxassemble using its -raw option. Additionally, a hdr file has to be specified for mcxassemble using its -hdr option. The syntax of hdr files is described in the mcxassemble manual. Currently there is usually only one variable in the hdr file, which is the number of bindings listed in the tab file. This number, in turn, should equal the total number of different peptides encountered in the BLAST input.

OPTIONS

--tab=<fname> (tab file)

Specify a tab file to use, rather than automatically generating one.

 
--out <fname> (output file)

Specify the name for the output file.

 
--score=<b|e|r> (bit scores|e-values|norm bit score)

Specify whether to use bit scores, E-values, or bit scores normalized by length of the HSP.

 
--sort=<a|o> (alphabetic|occurrence sorting)

Specify how to sort labels.

 
--m9 (expect BLAST column format)

Use this option to parse BLAST output formatted with the -m 9 option.

 
--line-mode=abc (write ID1 ID2 SCORE format)

Use this to stream output directly into mcl. Here abc is a literal; --line-mode may acquire other line output modes.

 
--xi-dat=<suf> (strip <suf> from <file-name>)

If set, the suffix <suf> is stripped from file-name in order to obtain the base name for output. If <file-name> does not end with suffix, it is assumed to be the base name, and <suf> is added in order to obtain the (real) file-name.

 
--xo-dat=<suf> (add <suf> to base name)

Attaches the suffix to the base name. Use this to distinguish between different parses. One might for example use --score=b --bcut=5 --xo-dat=b.

 
--bcut=<val> (bit score cutoff)

Bit scores below the cutoff value are ignored. This triggers the output of bit scores and ignores all other values.

 
--ecut=<val> (E-value cutoff)

E-values below the cutoff value are ignored. This triggers the output of E-values and ignores all other values.

 
--rcut=<val> (raw value cutoff)

Raw values below the cutoff value are ignored. This triggers the output of raw values and ignores all other values.

AUTHOR

Stijn van Dongen. Jason Stajich implemented the --m9 option. Abel Ureta-Vidal and Dinakarpandian Deendayal contributed helpful comments and fixes.

SEE ALSO

mclblastline, mcxassemble, mcl, clmformat. mcl-12-135/doc/clm.10000644000402500021140000000727711754271040010711 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm" 1 "14 May 2012" "clm 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm \- perform various computations on graphs and clusterings .SH SYNOPSIS .di ZV .in 0 .nf \fC \fBclm\fP [mode-options] [mode-files] .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .SH DESCRIPTION \fBclm\fP implements a variety of computations on graphs and clusterings\&. The first argument to \fBclm\fP should be a \fImode\fP, which is a string establishing the type of computation to invoke\&. Each mode \fImode\fP is described in the clm\fImode\fP manual page\&. The currently available modes are \fBclm dist\fP, \fBclm info\fP, \fBclm meet\fP, \fBclm mate\fP, \fBclm close\fP, \fBclm order\fP, \fBclm imac\fP, \fBclm vol\fP, and \fBclm residue\fP\&. The \fBdist\fP mode is thus described in the \fBclmdist\fP manual page\&. Invoking \fBclm\fP without arguments causes it to print out a list of available modes with a short description of the type of command line expected by that mode\&. Invoking \fBclm\fP with just a mode will print out a longer listing of options available for that particular mode\&. Modes that are able to function normally without arguments can be invoked by adding the \fI--nop\fP argument\&. Several options are shared between all \fBclm\fP modes\&. Note that these options are specified after the \fBmode\fP\&. See \fBOPTIONS\fP\&. The \fB--version\fP option causes \fBclm\fP to print out version and license information\&. Issuing \fIclm help mode\fP will cause \fBclm\fP to look for a manual page describing \fImode\fP and display it if found\&. This requires that the MANPATH environment variable contains the directory in which the MCL-edge manual pages were installed\&. This will usually be \fCPREFIX/share\fP, where \fCPREFIX\fP is the path with which the software was configured\&. .SH OPTIONS These are options that pertain to all modes\&. They should be specified \fIafter\fP the mode argument\&. .ZI 2m "\fB-h\fP (\fIsynopsis\fP)" \& 'in -2m .ZI 2m "\fB--help\fP (\fIsynopsis\fP)" \& 'in -2m 'in +2m \& .br List available options\&. .in -2m .ZI 2m "\fB--nop\fP (\fIno-op\fP)" \& .br Not an option\&. This option has no effect then to increment the argument count\&. This can be useful for \fBclm\fP modes which are able to function without any options\&. Such a mode typically reads from STDIN, writes to STDOUT, and uses default settings\&. However, simply specifying a mode without options leads \fBclm\fP to output a list of available options for that mode\&. This can be averted by using the \fB--nop\fP option\&. .in -2m .ZI 2m "\fB-set\fP key=val (\fIset key-value pair\fP)" \& .br Sets the key\ \&\fBkey\fP to value\ \&\fBval\fP in the environment\&. Some modes allow adjustment of settings in this manner\&. .in -2m .ZI 2m "\fB-debug\fP (\fIset debug level/flags\fP)" \& 'in -2m .ZI 2m "\fB--debug\fP (\fIturn default debugging on\fP)" \& 'in -2m .ZI 2m "\fB--test\fP (\fIturn default testing on\fP)" \& 'in -2m 'in +2m \& .br The first two turn on debugging, the last is for testing\&. The effect of these options is otherwise undocumented\&. .in -2m .ZI 2m "\fB--progress\fP (\fIenable progress reporting\fP)" \& .br This will enable some kind of progress reporting, by writing to STDERR\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mclmcl.txt0000644000402500021140000001022111177671513012053 00000000000000 120+ uses for the three-letter string "MCL". Science and computing: * Markov Cluster (process, algorithm) * [Sporadic] McLaughlin Group * MetaClifford [Algebra] * Modal Change Logic * Monte Carlo Localization [a version of Markov Localization] * Monte Carlo Likelihood * Multinomial Conditional Logistic [Regression] * MUD Client for Linux * Multi-item Capacitated Lot [sizing problem with setup times] * Mike's Command Line * Menu Command Language * Maximum Capacity Learning * Macintosh Common Lisp * Mucocutaneous Leishmaniasis * Microfluidic chemiluminescence * Microsoft Compatibility Labs * Minimum Coupling Loss [International mobile telephony acronym (?)] * Motion Control Language * Merlin Control Language * Machine Control Language * Midas Control Language * Mission Critical Linux * Maximum Chlorophyll Layer * Mark-Compact-Lazy [Allocate] * Mesh Connectivity Layer * Machine Congestion Level * Midclavicular Line * Module Creation Language Highlights: * Movement for Canadian Literacy * Movement for Compassionate Living "aims: To spread the vegan message and promote simple living (..)" * Moving Contact Lubricant * Mothers for Community Life * Macrophage C-type Lectin (gene, mouse) * Myeloid Cell Leukemia (sequence 1) * Mantle Cell Lymphoma * Multiple Cutaneous Leiomyomatosis * Medial Collateral Ligament * Modern and Classical Languages * Management, Communication [and] Leadership [program at Concordia University] * Maximum Contaminant Level * Marine Corps League * Militant Clerics League * Music Cognition Lab * Microbial Colony Language * Manual for Complex Litigation * Marie-Christine Lefebvre ("MCL miniatures") * Multi Carousel Loader * Mini Club Luzern (Mini Cooper) * Model Car List * Musical Chain Letters Dutch: * Medisch Centrum Leeuwarden * Motor Center Landgraaf * Media Centrum Letteren * Meest Comfortabele Luisterniveau Religious (?): * Movement for Christian Liberation * Movimento Cristiano Lavoratori Other: * Mathematics Computing Lab * MixCastLive * Mon Culture and Literature Survival Project * Materials Characterization Laboratory * Multicurricular Computer Lab * MultiCast Library * Multimedia Conversion Library * Materials & Chemistry Laboratory * Medical Centers of [Greater] Lowell * Macromolecular Crystallography Laboratory * Manchester City Library * Medical Center Libraries * Mid Columbia Library (district) * Mobilization Cross-Leveling [System] * Montreal Children's Library * Morris County Library * Multi Cultural Library * Middlebury Community Library * Macomb County Library * Measurement [and] Controls Ltd * Management Control Layer * Laboratorio Multimediale [di] Comunicazione * Microwave Characterization Lab * Mid Continent League * Maximum Concentration Level * Medical Care Law * Michigan Compiled Laws * Masters of Comparative Law * Master Of Common Law * Microprocessor Controlled Laser * Milliken's Creek Lodge * MultiChannel Learning (Center) * MultiChannel Logger * My Country Lane * Mathes Computer Lab * Microwave Cavity Laboratories * Mobile Computing Lab * Multimedia Communications Lab * Multimedia Computer Labs * McCullough Campbell & Lane * Merrydown Controlware Limited * Marine Communications Limited * Mechanical Components Limited * Mortgage Credit Link * Medical College of London * Mitsubishi Colt Lancer IG * Madras Cements Limited * Marin Conservation League * Midwest Council of La Raza * Micro Computer Lab * Moore Corp Ltd * Michigan Lemon Law * MBK Construction Limited * Multipurpose Classroom Laboratory * MacKeen Consultants Limited * Maruti Computers Limited * Maruti Configuration Language * McKenzie Cooper Limited * McLaurin Consulting Limited * Media Conversion Limited * Mercury Communications Limited * MicroComputer Limited * Micronetic Company Limited * Montgomery Consultants Limited * Mahendra Commercial Limited * Mahanadi Coalfields Limited * Mid Canada Line * Mainstream Communications Limited * Mercy Clinical Laboratory * Multnomah County Library * Materials Center Leoben * M\'{e}thode du Cadre Logique * La Maison des Collectivit\'{e}s Locales * Monte Carlo Limousine mcl-12-135/doc/clmimac.azm0000644000402500021140000000567711322637753012204 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm imac} {html_title}{The clm imac manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{clm imac}{Interpret Matrices (c.q. MCL iterands output by \mcl)\ As Clusterings.} \disclaim_clm{imac} \sec{synopsis}{SYNOPSIS} \par{ \clm{imac} -imx [options] } \par{ \clm{imac} \synreqopt{-imx}{fname}{input file} \synoptopt{-o}{fname}{name/stem for output} \synoptopt{-dag}{fname}{output DAG} \synoptopt{-overlap}{str}{overlap mode} \synoptopt{-sort}{str}{size|revsize|lex|none} \synoptopt{-strict}{num}{in 0..1} \stdsynopt } \sec{description}{DESCRIPTION} \par{ Use \clm{imac} to interpret matrices (as clusterings) output by \mcl using \mcl's \useopt{-dump}{ite} option.} \par{ Use \clm{imac} only if you have a special reason; the normal usage of \mcl is to do multiple runs for varying \genopt{-I} parameters and use the clusterings output by \mcl itself. One reason is if you are interested in clusterings with overlap; early MCL iterands generally induce clusterings possessing overlap. Another reason is to investigate how the cluster structure associated with the MCL process evolves over time.} \sec{options}{OPTIONS} \'begin{itemize}{\mcx_itemopts} \item{\defopt{-imx}{fname}{input file}} \car{ The input file is presumably an MCL iterand resulting from the mcl option \useopt{-dump}{ite}.} \item{\defopt{-strict}{num}{in 0..1}} \car{ Higher values (up until 1) will thin out the DAG constructed by \clmimac. The default value is 0.00001, yielding the full DAG. } \item{\defopt{-o}{fname}{file name/stem}} \car{ Write to file named \genarg{fname}.} \item{\defopt{-dag}{fname}{output DAG}} \car{ Write the DAG (directed acyclic graph) constructed from the input to file. This DAG is constructed according to the structure associated with diagonally positive semi-definite matrices as described in the PhD thesis \it{Graph clustering by flow simulation}. Consult \mysib{mclfamily} for references.} \item{\defopt{-sort}{str}{size|revsize|lex|none}} \car{ Sort the clusters either by increasing size, decreasing size, lexicographically by the indices they contain, or use the clustering exactly as obtained from the interpretation routine.} \item{\defopt{-overlap}{mode}{overlap mode}} \car{ With \genarg{mode} set to \it{cut}, remove any overlap by allocating the nodes in overlap to the first cluster in which they were found. Mode \it{keep} leaves overlap unchanged, and mode \it{split} results in overlapping parts excised and introduced as clusters in their own right. } \stddefopt \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen.} \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \end{pud::man} mcl-12-135/doc/mcxdump.10000644000402500021140000003350311754271044011606 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxdump" 1 "14 May 2012" "mcxdump 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxdump \- dump matrices, optionally map indices to labels .SH SYNOPSIS \fBmcxdump\fP \fB[-imx\fP (\fImatrix file\fP)\fB]\fP \fB[-icl\fP (\fIcluster file to be dumped line-wise\fP)\fB]\fP \fB[-imx-cat\fP (\fIconcatenation matrix file\fP)\fB]\fP \fB[-imx-tree\fP (\fIconcatenation cone file\fP)\fB]\fP \fB[--skeleton\fP (\fIread empty matrix, honour domains\fP)\fB]\fP \fB[-o\fP (\fIoutput file name (\&'-\&' for stdout)\fP)\fB]\fP \fB[-digits\fP (\fIoutput precision\fP)\fB]\fP \fB[-tab\fP (\fIrow/column tab (label) file\fP)\fB]\fP \fB[-tabc\fP (\fIcolumn tab file\fP)\fB]\fP \fB[-tabr\fP (\fIrow tab file\fP)\fB]\fP \fB[--lazy-tab\fP (\fIallow tab/domain mismatch\fP)\fB]\fP \fB[--transpose\fP (\fIwork with the transpose\fP)\fB]\fP \fB[--no-values\fP (\fIomit values\fP)\fB]\fP \fB[--omit-empty\fP (\fIomit empty columns\fP)\fB]\fP \fB[--no-loops\fP (\fIomit loops\fP)\fB]\fP \fB[--force-loops\fP (\fIforce loops\fP)\fB]\fP \fB[--dump-pairs\fP (\fIemit pairs per line\fP)\fB]\fP \fB[--dump-table\fP (\fIdump table format\fP)\fB]\fP \fB[-dump-sif\fP (\fIdump sif format\fP)\fB]\fP \fB[-dump-sifx\fP (\fIdump extended sif format with weights\fP)\fB]\fP \fB[--dump-lines\fP (\fIemit rows per line\fP)\fB]\fP \fB[--dump-rlines\fP (\fIomit leading identifier\fP)\fB]\fP \fB[--dump-vlines\fP (\fIadd leading identifier values\fP)\fB]\fP \fB[--dump-lead-off\fP (\fIomit leading identifier\fP)\fB]\fP \fB[--dump-lower\fP (\fIdump lower part excluding diagonal\fP)\fB]\fP \fB[--dump-loweri\fP (\fIdump lower part including diagonal\fP)\fB]\fP \fB[--dump-upper\fP (\fIdump upper part excluding diagonal\fP)\fB]\fP \fB[--dump-upperi\fP (\fIdump upper part including diagonal\fP)\fB]\fP \fB[--write-tabc\fP (\fIdump tab file on column domain\fP)\fB]\fP \fB[--write-tabr\fP (\fIdump tab file on row domain\fP)\fB]\fP \fB[--dump-domc\fP (\fIdump column domain\fP)\fB]\fP \fB[--dump-domr\fP (\fIdump row domain\fP)\fB]\fP \fB[-table-nfields\fP (\fIoutput first fields\fP)\fB]\fP \fB[-table-nlines\fP (\fIoutput first lines\fP)\fB]\fP \fB[--newick\fP (\fIoutput newick format\fP)\fB]\fP \fB[-newick\fP [NBI]+ (\fIexclude Number|Branch-length|Indent\fP)\fB]\fP \fB[--write-matrix\fP (\fI(deconcatenate) write matrices\fP)\fB]\fP \fB[-split-stem\fP (\fI(deconcatenate) matrices file name stem\fP)\fB]\fP \fB[-cat-max\fP (\fI(deconcatenate) write first matrices\fP)\fB]\fP \fB[-sep-value\fP (\fInode/value separator\fP)\fB]\fP \fB[-sep-field\fP (\fIfield separator\fP)\fB]\fP \fB[-sep-lead\fP (\fIlead separator\fP)\fB]\fP \fB[-sep-cat\fP (\fIconcatenation separator\fP)\fB]\fP \fB[-prefixc\fP (\fIprefix column indices with \fP)\fB]\fP \fB[-sort\fP size-{ascending,descending} (\fIvector sort mode\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION \fBmcxdump\fP reads a data file satisfying the mcl input format (refer to \fBmcxio(5)\fP)\&. It outputs a line-based format\&. The \fB--dump-pairs\fP option yields a single matrix entry per line, identified by the respective column and row identifiers (either index or label) separated by the field separator\&. The \fB--dump-lines\fP and \fB--dump-rlines\fP result in the joining of all row entries on a single line, separated by the field separator\&. For both formats, the matrix value corresponding with a particular entry is by default output as well\&. \fBmcxdump\fP can also act on files that contain concatenated matrices\&. Refer to the group of options headed by \fB-imx-cat\fP\ \&\fIfname\fP\&. .SH OPTIONS .ZI 2m "\fB-imx\fP (\fImatrix file\fP)" \& .br Input matrix\&. .in -2m .ZI 2m "\fB-icl\fP (\fIcluster file\fP)" \& .br This specifies the input matrix, and sets up a cluster-wise line-based label dump\&. This option is fully equivalent to the combination of \fB--dump-rlines\fP and \fB--no-values\fP\&. .in -2m .ZI 2m "\fB--transpose\fP (\fIwork with the transpose\fP)" \& .br Work with the tranpsose of the input matrix\&. .in -2m .ZI 2m "\fB--skeleton\fP (\fIread empty matrix, honour domains\fP)" \& .br No entries are read, only domains\&. .in -2m .ZI 2m "\fB-o\fP (\fIoutput file name\fP)" \& .br Output stream\&. Use \fC-\fP for STDOUT\&. .in -2m .ZI 2m "\fB-digits\fP (\fIoutput precision\fP)" \& .br Specify the precision to use in native interchange format\&. .in -2m .ZI 2m "\fB-tab\fP (\fIrow/column tab (label) file\fP)" \& .br Substitute column indices and row indices by labels from the tab file\&. Since the same tab file is used for both, this implies that the matrix domains are identical\&. .in -2m .ZI 2m "\fB-tabc\fP (\fIcolumn tab file\fP)" \& .br Substitute column indices by labels from the tab file\&. .in -2m .ZI 2m "\fB-tabr\fP (\fIrow tab file\fP)" \& .br Substitute row indices by labels from the tab file\&. .in -2m .ZI 2m "\fB--lazy-tab\fP (\fIallow tab/domain mismatch\fP)" \& .br If used, the tab file domain(s) do not necessarily need to match the corresponding domain in the input matrix\&. Entries missing in the tab files will be replaced by a question mark\&. .in -2m .ZI 2m "\fB--no-values\fP (\fIomit values\fP)" \& .br Do not emit values\&. .in -2m .ZI 2m "\fB--omit-empty\fP (\fIomit empty columns\fP)" \& .br Do not output line data (with \fB--dump-table\fP or \fB--dump-lines\fP or related options) for those columns that are empty\&. .in -2m .ZI 2m "\fB--no-loops\fP (\fIomit loops\fP)" \& .br Do not output entries for which the row index equals the column index, if present\&. Applies only to matrices for which column and row domains are equal\&. .in -2m .ZI 2m "\fB--force-loops\fP (\fIforce loops\fP)" \& .br For each column, force output of a row entry that matches the column index\&. Applies only to matrices for which column and row domains are equal\&. .in -2m .ZI 2m "\fB--dump-pairs\fP (\fIemit pairs per line\fP)" \& 'in -2m .ZI 2m "\fB-dump-sif\fP (\fIdump sif format\fP)" \& 'in -2m .ZI 2m "\fB-dump-sifx\fP (\fIdump extended sif format with weights\fP)" \& 'in -2m .ZI 2m "\fB--dump-lines\fP (\fIemit rows per line\fP)" \& 'in -2m .ZI 2m "\fB--dump-rlines\fP (\fIomit leading column node\fP)" \& 'in -2m .ZI 2m "\fB--dump-vlines\fP (\fIadd leading column values\fP)" \& 'in -2m .ZI 2m "\fB--dump-lead-off\fP (\fIdo not dump leading identifiers\fP)" \& 'in -2m .ZI 2m "\fB--dump-lower\fP (\fIdump lower part excluding diagonal\fP)" \& 'in -2m .ZI 2m "\fB--dump-loweri\fP (\fIdump lower part including diagonal\fP)" \& 'in -2m .ZI 2m "\fB--dump-upper\fP (\fIdump upper part excluding diagonal\fP)" \& 'in -2m .ZI 2m "\fB--dump-upperi\fP (\fIdump upper part including diagonal\fP)" \& 'in -2m 'in +2m \& .br \fB--dump-pairs\fP is the default mode of output\&. Each matrix entry is output as a single pair of column-identifier and row-identifier per line, optionally followed by the value of the corresponding matrix entry\&. All fields are separated by the field separator\&. Use \fB-dump-sif\fP\ \&\fI\fP to dump SIF format\&. The argument \fI\fP will be used as the edge type (the second column in SIF format)\&. The option \fB-dump-sifx\fP\ \&\fI\fP is similar except that an extended format is produced where the label is followed by the colon character and the edge weight\&. With \fB--dump-lines\fP, each matrix column is output on a single line, with row identifiers separated by the field separator and values attached to the row identifier by the node/value separator\&. In this format, the column identifier is output as the leading field\&. \fB--dump-rlines\fP is as \fB--dump-lines\fP, except that the column identifier is not output\&. Use \fB--dump-lead-off\fP to preclude the output of the leading identifiers (for line-based outputs)\&. \fB--dump-vlines\fP is as \fB--dump-lines\fP\&. The leading identifiers are followed by a value associated with the entire column\&. This can be used to dump the output given by \fBclm vol\fP\&. The value provided is a measure for the stability of the cluster that follows\&. The options pertaining to \fIlower\fP and \fIupper\fP dumps currently only work with \fB--dump-pairs\fP\&. They act to only output the specified part of the matrix\&. .in -2m .ZI 2m "\fB--dump-table\fP (\fIdump table format\fP)" \& 'in -2m .ZI 2m "\fB-table-nfields\fP (\fIfield limit\fP)" \& 'in -2m .ZI 2m "\fB-table-nlines\fP (\fIline/row limit\fP)" \& 'in -2m 'in +2m \& .br Output table format\&. In table format no indices are printed by default and all values are printed including zeroes\&. The options \fB-table-nfields\fP and \fB-table-nlines\fP can be used to limit the number of fields and lines to be printed\&. Note that fields correspond to MCL matrix rows and that lines correspond to MCL matrix columns, as MCL calls its primary indices column indices\&. Use \fB--dump-lead-off\fP to preclude the output of the leading identifiers (for line-based outputs)\&. .in -2m .ZI 2m "\fB--newick\fP (\fIoutput newick format\fP)" \& 'in -2m .ZI 2m "\fB-newick\fP [NBI]+ (\fInewick, exclude Number|Branch-length|Indent\fP)" \& 'in -2m 'in +2m \& .br Output a hierarchical clustering specified by \fB-imx-tree\fP in Newick tree format\&. .in -2m .ZI 2m "\fB--write-tabc\fP (\fIdump tab file on column domain\fP)" \& 'in -2m .ZI 2m "\fB--write-tabr\fP (\fIdump tab file on row domain\fP)" \& 'in -2m .ZI 2m "\fB--dump-domc\fP (\fIdump column domain\fP)" \& 'in -2m .ZI 2m "\fB--dump-domr\fP (\fIdump row domain\fP)" \& 'in -2m 'in +2m \& .br These options work in conjunction with the \fB-ixm\fP\ \&\fIfname\fP option\&. Only the domains from the input matrix are read as if \fB--skeleton\fP was specified\&. \fB--write-tabc\fP assumes the input tab file envelopes the matrix column domain, and it outputs a new tab file restricted to that domain\&. \fB--write-tabr\fP acts analogously for the row domain\&. \fB--dump-domc\fP and \fB--dump-domr\fP respectively dump the column or row domain as a regular dump, outputting labels in case a tab file is specified\&. These options are implemented as ensembles of other options\&. For example, \fB--dump-domr\fP \fB-imx\fP\ \&\fIfname\fP corresponds with \fB--dump-lines\fP \fB--transpose\fP \fB--skeleton\fP\&. .in -2m .ZI 2m "\fB-imx-cat\fP (\fIconcatenation matrix file\fP)" \& 'in -2m .ZI 2m "\fB-imx-tree\fP (\fIconcatenation cone file\fP)" \& 'in -2m .ZI 2m "\fB--write-matrix\fP (\fI(deconcatenate) write matrices\fP)" \& 'in -2m .ZI 2m "\fB-split-stem\fP (\fI(deconcatenate) matrices file name stem\fP)" \& 'in -2m .ZI 2m "\fB-cat-max\fP (\fI(deconcatenate) write first matrices\fP)" \& 'in -2m 'in +2m \& .br \fB-imx-cat\fP is like \fB-imx\fP except that the input is assumed to contain multiple concatenated matrices\&. The matrices are dumped separated by the \fIcat separator\fP (cf\&. \fB-sep-cat\fP)\&. Alternatively, the matrices can be written to different files using the \fB-split-stem\fP option\&. In this case it is possible to output each matrix in native format rather than as a dump by specifying \fB--write-matrix\fP\&. This makes mcxdump effectively act as a deconcatenator\&. In all cases (respectively dumping and writing matrices to either the same stream or multiple files) the number of matrices to be dumped can be limited with \fB-cat-max\fP\&. \fB-imx-tree\fP is like \fB-imx-cat\fP except that the input is assumed to be in cone format (the format output by \fBmclcm\fP)\&. This format encodes a tree as a concatenation of matrices with nested domains\&. \fBmcxdump\fP will project all levels of this tree so that all row domains are the same as the bottom row domain\&. This implies that a set of nested clusterings (on different node sets, as the set of clusters of a given level is the node set of the next level) is transformed into a set of flattened clusterings, all on the same node set\&. If you do not want this to happen, simply use \fB-imx-cat\fP\&. .in -2m .ZI 2m "\fB-sep-value\fP (\fInode/value separator\fP)" \& .br Set the node/value separator for line based row ensemble output\&. .in -2m .ZI 2m "\fB-sep-field\fP (\fIfield separator\fP)" \& .br Set the field separator for different row indices in a given column\&. .in -2m .ZI 2m "\fB-sep-lead\fP (\fIlead separator\fP)" \& .br Set the lead separator\&. In the \fB--dump-lines\fP format it separates the leading column index from the following ensembl of row indices\&. It can be useful to make this different from the field separator\&. One can for example grep for columns that have more than one entry in a matrix mapping nodes to clusters\&. This will find nodes in overlap\&. .in -2m .ZI 2m "\fB-sep-cat\fP (\fIconcatenation separator\fP)" \& .br Set the separator that is used between matrix dumps when a concatenation of matrices is dumped\&. .in -2m .ZI 2m "\fB-prefixc\fP (\fIprefix column indices with \fP)" \& .br This can be useful when external row names cannot be numbers and when a label dictionary is not available or not appropriate\&. .in -2m .ZI 2m "\fB-sort\fP size-{ascending,descending} (\fIconcatenation separator\fP)" \& .br Reorder the matrix columns prior to dumping, based on the number of nonzero entries in each column\&. Do not use this in conjunction with a tab file for the column domain\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmcxload(1)\fP, \fBmcl(1)\fP, \fBmclfaq(7)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmresidue.ps0000644000402500021140000002604311754271042012546 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:14 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 1 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d2072657369647565283129>20 48 Q <5553455220434f4d4d414e4453>131.235 E<636c6d2072657369647565283129> 133.735 E/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0 <636c6d207265736964756520ad2065>100 96 Q<7874656e6420636c7573746572696e 67206f6620737562677261706820746f20636c7573746572696e67206f66206772617068 2e>-.15 E 1.887 <636c6d72657369647565206973206e6f7420696e2061637475616c2066>100 120 R 1.887<61637420612070726f6772616d2e2054686973206d616e75616c20706167652064 6f63756d656e7473207468652062656861>-.1 F 1.887<76696f757220616e64>-.2 F 1.153 <6f7074696f6e73206f662074686520636c6d2070726f6772616d207768656e20696e> 100 132 R -.2<766f>-.4 G -.1<6b65>.2 G 3.654<6469>.1 G 3.654<6e6d>-3.654 G<6f6465>-3.654 E/F2 10/Times-Italic@0 SF -.37<7265>3.654 G<7369647565> .37 E F0 3.654<2e54>C 1.154<6865206f7074696f6e73>-3.654 F/F3 10 /Times-Bold@0 SF<2d68>3.654 E F0<2c>A F3<2d2d617072>3.654 E<6f706f73> -.18 E F0<2c>A F3<2d2d76>3.654 E<6572>-.1 E<2d>-.37 E<73696f6e>100 144 Q F0<2c>A F3<2d736574>2.5 E F0<2c>A F3<2d2d6e6f70>2.5 E F0 <6172652061636365737369626c6520696e20616c6c>2.5 E F3<636c6d>2.5 E F0 <6d6f6465732e20546865>2.5 E 2.5<7961>-.15 G <72652064657363726962656420696e20746865>-2.5 E F3<636c6d>2.5 E F0 <6d616e75616c20706167652e>2.5 E F1<53594e4f50534953>20 160.8 Q F3 .696 <636c6d2072>100 172.8 R .696<657369647565202d69636c>-.18 F F0 .696 <666e616d652028>3.196 F F2 .696<696e70757420636c7573746572696e67>B F0 <29>A F3<2d696d78>3.195 E F0 .695<666e616d652028>3.195 F F2 .695 <696e707574206772>B<617068>-.15 E F0<29>A F3<5b2d72>3.195 E<706d>-.1 E F0 .695<666e616d652028>3.195 F F2 -.37<7265>C .695<7369647565207072>.37 F<6f2d>-.45 E<6a656374696f6e206d6174726978>100 184.8 Q F0<29>A F3 2.5 <5d5b>C<2d6f>-2.5 E F0<666e616d652028>2.5 E F2 <6f757470757420636c7573746572696e67208c6c65>A F0<29>A F3<5d>A F1 <4445534352495054494f4e>20 201.6 Q F0 .619<54686520636c7573746572208c6c 652070726573756d61626c7920636f6e7461696e73206120636c7573746572696e67206f 662061207375626772617068206f6620746865206772617068>100 213.6 R/F4 10 /Courier@0 SF<47>2.5 E F0 .62<636f6e7461696e656420627920746865>3.12 F .198<6d6174726978208c6c652c20696d706c79696e6720746861742074686520726f> 100 225.6 R 2.697<7764>-.25 G .197<6f6d61696e206f66207468617420636c7573 746572696e67206973206120737562736574206f6620746865206e6f646520646f6d6169 6e206f6620746865>-2.697 F<67726170682e>100 237.6 Q F3 .951<636c6d2072> 3.451 F<657369647565>-.18 E F0 .951 <77696c6c20636f6d7075746520612073696d706c6520757077>3.451 F .952<617264 732070726f6a656374696f6e206f66207468617420636c7573746572696e672c20726573 756c74696e6720696e2061>-.1 F<636c7573746572696e67206f66>100 249.6 Q F4 <47>2.5 E F0<2e>A F1<4f5054494f4e53>20 266.4 Q F3<2d696d78>100 278.4 Q F0<666e616d652028>2.5 E F2<696e707574206772>A<617068>-.15 E F0<29>A F3 <2d69636c>100 302.4 Q F0<666e616d652028>2.5 E F2 <696e70757420636c7573746572696e67>A F0<29>A F3<2d72>100 326.4 Q<706d>-.1 E F0<666e616d652028>2.5 E F2 -.37<7265>C<7369647565207072>.37 E <6f6a656374696f6e206d6174726978>-.45 E F0<29>A .539<546865206e616d652066 6f7220746865208c6c6520696e2077686963682074686520726573696475652070726f6a 656374696f6e206d61747269782069732073746f7265642e>120 338.4 R .538 <497420636f6e7461696e7320666f722065616368>5.538 F .539<6e6f646520616e64 20666f72206561636820636c757374657220696e2074686520696e70757420636c757374 6572696e672074686520636f6d62696e656420776569676874206f662074686520286564 67657320746f2074686529>120 350.4 R<6e65696768626f757273206f662074686174 206e6f646520696e207468617420636c75737465722e>120 362.4 Q<54686520646566> 5 E<61756c74206f7574707574208c6c65206e616d65206973>-.1 E F4 <6f75742e72706d>2.5 E F0<2e>A F3<2d6f>100 386.4 Q F0<666e616d652028>2.5 E F2<6f757470757420636c7573746572696e67208c6c65>A F0<29>A 1.254<54686520 6e616d6520666f7220746865208c6c6520696e20776869636820746865206d616a6f7269 74792076>120 398.4 R 1.253<6f74652070726f6a656374696f6e20636c7573746572 696e672069732073746f7265642e20416b6120746865>-.2 F<6d616a6f726974792076> 120 410.4 Q<6f74652070726f6a656374696f6e20636c7573746572696e672073746f72 616765208c6c65206e616d652e>-.2 E .375 <5468697320656d626f6469657320612076>120 434.4 R .375 <65727920637275646520617070726f61636820746f2064697374726962>-.15 F .375< 7574696e6720746865206d697373696e67206e6f64657320696e2074686520696e707574 20636c7573746572>-.2 F<2d>-.2 E .382 <696e67206f6e746f20746861742073616d6520636c75737465722e2046>120 446.4 R .381<6f722065616368206e6f64652c2074686520636c75737465722069732074616b> -.15 F .381 <656e20666f722077686963682074686520726573696475652070726f6a65632d>-.1 F .357<74696f6e20697320746865206c6172>120 458.4 R .357 <6765737420287365652061626f>-.18 F -.15<7665>-.15 G .358<292e2054686520 726573696475652028692e652e2074686520736574206f66206d697373696e67206e6f64 65732920697320696e697469616c6c7920766965>.15 F<776564>-.25 E 1.057<6173 206120636c75737465723b2074686520736574206f66206e6f64657320666f7220776869 6368207468652070726f6a656374696f6e206973206c6172>120 470.4 R 1.056 <6765737420666f7220746865207265736964756520697473656c662077696c6c>-.18 F <666f726d2061206e65>120 482.4 Q 2.5<7763>-.25 G<6c7573746572>-2.5 E 2.5 <2c69>-.4 G 2.5<6669>-2.5 G 2.5<7469>-2.5 G 2.5<736e>-2.5 G <6f7420656d7074792e>-2.5 E<427920646566>120 506.4 Q <61756c74206f75747075742069732073656e7420746f205354444f55542e>-.1 E F1 -.548<4155>20 523.2 S<54484f52>.548 E F0<5374696a6e2076>100 535.2 Q <616e20446f6e67656e2e>-.25 E F1<53454520414c534f>20 552 Q F3 <6d636c66616d696c79283729>100 564 Q F0<666f7220616e206f>2.5 E -.15<7665> -.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c2074686520646f 63756d656e746174696f6e20616e6420746865207574696c697469657320696e20746865 206d636c2066>-2.5 E<616d696c792e>-.1 E <636c6d20726573696475652031322d313335>20 768 Q<3134204d61792032303132> 130.125 E<31>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxsubs.html0000644000402500021140000010214411754271046012421 00000000000000 The mcxsubs manual

14 May 2012    mcxsubs 12-135

NAME

mcxsubs — extract submatrices (subgraphs) of a matrix (graph).

mcxsubs can be used to inspect local cluster structure in a graph, for example by looking at the subgraph induced by a single cluster or a couple of clusterings, or the edge set where all tail nodes are from a set of domains and all head nodes are from the complement of this set, and many other variants and refinements.

Additionally, mcxsubs enables

selecting matrix entries based on value.

making the result characteristic (set all nonzero values to 1.0).

pruning empty columns and empty rows.

transposing the result.

remapping the indices of the result to consecutive indices.

and other miscellaneous operations.

SYNOPSIS

mcxsubs -imx <fname> [options] <specs>+

mcxsubs -imx <fname> (input matrix) [-dom <fname> (domain matrix)] [-tf spec (apply tf-spec to input matrix)] [--block (use block matrix)] [--blockc (use complement of block matrix)] [--skin-read (read domain structure without entries)] [--extend (read extended submatrices)] [-tab (read tab file)] [--from-disk (space/speed optimizer)] [-out <fname> (special purpose output file name)] [-efac <num> (random edge selection)] [-dfac <num> (random domain selection)] [-rfac <num> (random column selection)] [-cfac <num> (random row selection)] [--rand-discard (remove random selections)] [--rand-merge (merge random selections)] [--rand-intersect (intersect random selections)] [--rand-exclusive (only random selections)] [-tag-digits k (set precision)] [--tag (tag nodes)] <specs>+

If you are a frequent mcxsubs user with very large graphs, consider converting the input matrix into binary format using mcxconvert and then using the mcxsubs --from-disk option. This should give you a 400-fold speed gain.

DESCRIPTION

mcxsubs lets you extract submatrices/subgraphs corresponding with index sets and (possibly) sets of domains from a given domain matrix (e.g. a matrix representing a clustering). Columns and rows of the target submatrix can be specified both independently and simultaneously, and can be specified as unions of simple index and domain ranges and complements of these.

Because a submatrix or subgraph specification is composed of type, location, column, row, index, and set specifications, the word specification is abbreviated as spec. Multiple submatrices can be specified simultaneously. A submatrix is created for each submatrix spec. Everything encountered after the mcxsubs options are exhausted should be a spec. The syntax of specs is described in the SUBMATRIX SPECIFICATIONS section. By default, the domains of the submatrix will be set to the domains as described in the specification. This can be changed using the uni directives from the fin part.

OPTIONS

-imx <fname> (input matrix)

Submatrices will all be selected from the matrix in file <fname>. This option is obligatory, and throughout this manual its argument is called the source matrix.

 
-dom <fname> (domain matrix)

Submatrices are specified in terms of sets (or domains) of indices. These sets are specified by (the label of) the vectors from the matrix given by this options.

 
--block (use block matrix)

This replaces the input matrix by the block diagonal matrix induced by the domain matrix specified by the -dom option. It works by including a block for each domain in the domain matrix, and will work if there are overlapping domains. That is, it will not include overlapping parts more than once. The output file name can either be specified in the submatrix specification language using the out(fname) directive, or with the -out option.

 
--blockc (use complement of block matrix)

This replaces the input matrix by the complement of the block diagonal matrix described above, and selection of the output name is exactly the same.

 
--skin-read (read domain structure without entries)

This reads a skeleton matrix by only considering its domain structure and not reading any entries, pertaining to the matrix specified by the -imx option.

Transform the input matrix values according to the syntax described in mcxio.
 
-tab (read tab file)

Read a tab file. Its domain can be used by the t and T indicators.

 
--extend (read extended submatrices)

This causes the selection of submatrices where either a row index is in the selected row domain or a columns index is in the selected column domain or both. Equivalently it only excludes matrix entries for which neither the column nor row index is in the selected domains. The resulting matrix has both domains equal to the source matrix.

 
-out <fname> (special purpose output file name)

This specifies an output name that can be used for special purposes. Normally, output file names are specified in the submatrix specification using the out(fname) directive.

 
-efac <num> (random edge selection)

num should be inbetween zero and one. It denotes the probability with which each edge is selected.

 
-dfac <num> (random domain selection)

num should be inbetween zero and one. It denotes the probability with which entries in the domains will make it into the randomized selection used for subsequent processing. By default the randomized selection is intersected with whatever the other selection criteria (if any) yield, i.e. the behaviour under the --rand-intersect option.

If the column and row domain are identical, they are submitted to the same selection process and will end up identical. If you don't want this, use -rfac and -cfac separately.

If you just want a randomized selection, doing

mcxsubs -imx foo -dfac 0.5 'out(foo.rnd)'

will not yield the expected result. Randomized selections only work if a domain has explicitly been specified. The minimal way to achieve this is the following:

mcxsubs -imx foo -dfac 0.5 'dom(cr), out(foo.rnd)'
 
-rfac <num> (random column selection)

As -dfac, limited to the column domain.

 
-cfac <num> (random row selection)

As -dfac, limited to the row domain.

 
--rand-merge (merge random selections)

The random selection(s) of domains identify parts of the matrix that will be merged with the result of the main selection process (default).

 
--rand-discard (remove random selections)

The random selection(s) of domains identify parts of the matrix that will be removed from the result of the main selection process.

 
--rand-intersect (intersect random selections)

The random selection(s) of domains identify parts of the matrix that will be intersected with the result of the main selection process. This is the default.

 
--rand-exclusive (only random selections)

The random selection(s) of domains identify parts of the matrix from which the result of the main selection process will be removed.

 
-tag-digits k (set precision)

Sets the precision for tagged output. Setting it to -tag-digits -1 disables the output of values altogether — only the node indices and the cluster indices are written.

 
--tag (tag nodes)

Each node in the column (tail node) listing of the matrix (graph) spec is tagged with the domain it is in. This requires the use of the -dom option. This output mode, called tagged matrix, is currently not recognized by any of the mcl/mcx input routines. It is present to facilitate easier visual inspection of clustering results.

 
--from-disk (space/speed optimizer)

Use this if the input graph is in binary format, or if the input graph is very large and the subgraph(s) to extract are small in comparison, or if the available memory does not comfortably exceed the size of the graph.

The effect of this option is that the subgraph will be read directly from disk, without reading in the entire graph in advance. This will be done repeatedly for all subgraphs that are specified.

This option reduces memory consumption to the size of the subgraph(s) to be extracted.

For graphs in interchange format, the speed gain is not dramatic. If more than one subgraph is specified, there will most likely be a loss in speed.

With input graphs in binary format, mcxsubs will be *very* much faster, to the extent of 400-fold speed gains. It does not matter whether more than one subgraph is specified.

SUBMATRIX SPECIFICATIONS

A submatrix or subgraph spec may contain a number of spec parts. Each part is specified in a function-style notation. Different parts are separated by commas. Parts may occur multiple times, but for most parts only the last one specified will be effective. The spec parts are the following: dom, ext, val, size, fin, and out. These are described below in the sections DOMAINS, EXTENSION, VALUES, SIZE, FINALIZE and OUTPUT.

DOMAINS
The domain part is specified as

dom(X <, Y(ispec) >+)

Here X is the row/column indicator. Rows are indicated with either r or R, columns are indicated with either c or C. X may contain one or two indicators, with a single indicator per column domain and row domain allowed. Uppercase indicators indicate that the complement is being specified relative to the corresponding domain in the target matrix.

Y is the type indicator, it is exactly one of i, I, d, D, c, r, t, or T. The i/I indicators specify that ispec contains a simple index specifation. The d/D specify that ispec contains domain indices. ispec must contain a comma-separated list of integers or integer ranges (e.g. 2, 5, 4-8). c and r are restricted indicators that refer to the domains in the domain matrix. t and T are restricted indicators that refer to the domain encoded in the tab file as specified by the -tab option. Their usage is described further below.

For domain specifications (d/D) the columns indexed by these integers in the matrix specified in the -dom option will be fetched and merged. If -dom was not used the target matrix itself (as specified by the -imx option) will be used. For simple specifications (i/I) the result is simply the list of integers itself. Uppercase indicators indicate that the complement is being specified.

Examples:

dom(cr, i(0-6,10,11-14))

Principal submatrix on indices 0-6, 10, and 11-14 — all column and row indices are from this set. Equivalently, this encodes the subgraph on nodes 0-6, 10, 11-14. The 'c' stands for column, the 'r' for row, and the 'i' for index. It is also possible to specify a 'd' part (standing for domain), this is shown further below.

 
dom(c, i(0-6,10,11-14)), dom(r, i(1-6,10,11-14))

Equivalent (but less clear) spec of the above.

 
dom(cR, i(0-6,10,11-14))

Matrix with column indices in 0-6, 10, 11-14, and row indices in the complement of this set. Corresponds with all edges going out from the set 0-6, 10, 11-14. Complements are triggered by the use of a capital; see the next examples.

 
dom(c, i(0-6,10,11-14)), dom(R, i(1-6,10,11-14))
dom(c, i(0-6,10,11-14)), dom(r, I(1-6,10,11-14))

Both these examples are equivalent to the previous one. In the last example, the capital 'I' indicates that the complement should be taken. In this example, 'r' combined with 'I' has the same effect as 'R' combined with 'i'.

 
dom(c, d(3,5-9)), dom(r, d(8-14), i(10-30))

Column indices are taken from the domains 3, 5-9 (from the domain matrix specified by -dom), row indices are taken from domains 8-14 plus the indices 10-30.

 
dom(cR, d(0-2))

Column indices are all indices from domains 0-2, row indices are all other indices. This gives all edges going out from domains 0-2.

The use of 'D' is analogous to that of 'C', 'R', and 'I'. Thus, D(0-3,8,21-30) specifies all indices which are in the complement of the set formed by taking the union of domains 0-3,8,21-30.

The c and r indicators must be followed by a pair of matching parentheses. They specify to take respectively the column domain and the row domain of the domain matrix (cf. -dom).

The t and T indicators must be followed by a pair of matching parentheses. They specify to take the domain found in the tab file or its complement.

As seen above, indices (either representing themselves or domains) are entered as comma-separated lists of single indices, ranges of indices (which may overlap), or staircases of indices (lists of indices with a fixed increment inbetween successive indices). The union of the corresponding elements is taken and passed along. Before anything else, the result set is replaced by its complement if 'I' is specified (for simple indices) or 'D' is specified (for domains). If there is both an index and a set spec string, the union of the results of both is taken and passed along. If the latter result is passed to either 'C' or 'R', it is replaced by its complement.

A range is specified e.g. as 10-14 and it is inclusive, denoting in this case the indices {10,11,12,13,14}.

EXTENSION
The extension part is specified as

ext( < disc(k) | cdisc(k) | rdisc(k) >)

This option requires the input matrix to be held in memory. This implies it will not work with the --from-disk option.

This assumes that the input matrix encodes a graph, so the column and row domains must be equal. It will take the currently selected domain (column domain for disc and cdisc, row domain for rdisc), and add all nodes to it that are reachable in k steps. The disc variant replaces both column and row domains by the extended domain, the other variants just change a single domain.

Setting k to -1 results in adding all nodes that can be reached from the start domain.

VALUES
The value part is specified as

val(<tf-spec>)

It transforms or removes values according to <tf-spec>. Refer to mcxio for a description of the transformation specification syntax and the available transformation primitives.

SIZE
The size part is specified as

size( < lt(x) | ceil(x) | gq(x) | rmgq(x) > + )

Where x is a nonnegative integer, and multiple specifications are separated by commas. The strings 'lt', 'lq', 'gq', 'gt', respectively denote less than, less than or equal to, greater than or equal to, and greater than.

This prunes or removes column vectors based on their size. If lt is used, column vectors are removed if the number of entries exceeds the specified bound. If gq is used, vectors are discarded if the number of entries is smaller than the specified bound. If a column vector has an excess of entries over the bound specified by ceil, the smallest entries are removed. Ties are not arbitrarily broken, implying that the resulting vector may still have more entries than the specified bound.

FINALIZE
The finalize part is specified as fin( < key > ) where key is a string and multiple keys are separated by commas. The corresponding actions are generally applied to the matrix that was extracted according to the domain and value specifications. Exceptions are indicated below. Currently, there is a fixed order in which actions are considered, corresponding with the order in which they are listed below.

skel
This creates an empty submatrix on the specified domains, and does not fill it with the corresponding entries from the source matrix. Options from the fin part that affect the column and row domains of a matrix will still be in effect.
 
uni
unir
unic
After the submatrix is selected from the source matrix, its domains are changed to mirror one or both of the domains of the source matrix.
 
tp
The resulting submatrix is replaced by its transpose.
 
cc
The resulting submatrix is made characteristic.
 
scrubc
scrubr
scrubg
scrub
Domains are shrunk if there are no corresponding entries in the matrix. This is done for both domains if scrub is specified, for the column domain if scrubc is specified, and for the row domain if scrubr is specified. Thus, with scrubc columns are removed from the domain and the matrix if they are empty. With scrubg the union of the resulting domains is taken.
 
mapc
mapr
map
The appropriate domains are mapped onto consecutive indices starting at zero.

OUTPUT
The output part is specified as out( fname <, key >* ) that is, the fname option is obligatory if the out part is specified. Currently, key can be a single directive, namely wb specifying that the resulting matrix should be output in binary format.

AUTHOR

Stijn van Dongen.

SEE ALSO

mcx, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/index.html0000644000402500021140000000064311754271042012041 00000000000000 MCL manuals

MCL user manuals

mcl-12-135/doc/mcxassemble.10000644000402500021140000004217211754271044012436 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxassemble" 1 "14 May 2012" "mcxassemble 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxassemble \- transform raw cooccurrence data to mcl matrix format\&. .SH SYNOPSIS \fBmcxassemble\fP \fB-b\fP base (\fIbase name\fP) \fB[-o\fP fname (\fIwrite to file fname\fP)\fB]\fP \fB[--write-binary\fP (\fIwrite output in binary format\fP)\fB]\fP \fB[--map\fP (\fIapply base\&.map\fP)\fB]\fP \fB[-raw-tf\fP (\fIapply transform spec to input\fP)\fB]\fP \fB[-rv\fP MODE (\fIrepeated vectors\fP)\fB]\fP \fB[-re\fP MODE (\fIrepeated entries\fP)\fB]\fP \fB[-ri\fP MODE (\fIadding mirror image\fP)\fB]\fP \fB[-r\fP MODE (\fIrepeated entries/vectors/images\fP)\fB]\fP \fB[-prm-tf\fP (\fIapply transform spec to primary matrix\fP)\fB]\fP \fB[-sym-tf\fP (\fIapply transform spec to symmetrified matrix\fP)\fB]\fP \fB[-q\fP (\fIquiet mode\fP)\fB]\fP The options above embody the default setup when using mcxassemble\&. There are many more options which mostly provide subtly different ways of doing input/output, set warning levels, or regulate how repeated entries and vectors should be treated\&. The full list of options is shown below\&. Read \fBDESCRIPTION\fP for learning about mcxassemble input/output and the functionality it provides\&. \fBNOTE\fP .br As of release 05-314 \fBmcl(1)\fP is able to cluster label-type input on the fly\&. In most cases, this will be sufficient\&. Alternatively, \fBmcxload(1)\fP can be used to map label-type input onto mcl matrices\&. Consequently, there are likely fewer scenarios nowadays where \fBmcxassemble\fP is the best solution\&. Consider first whether \fBmcl\fP in label mode or \fBmcxload\fP can do the job as well\&. \fBmcxassemble\fP \fB[-b\fP base (\fIbase name\fP)\fB]\fP \fB[-hdr\fP fname (\fIread header file\fP)\fB]\fP \fB[-raw\fP fname (\fIread raw file\fP)\fB]\fP \fB[--map\fP (\fIapply base\&.map\fP)\fB]\fP \fB[--cmap\fP (\fIapply base\&.cmap\fP)\fB]\fP \fB[--rmap\fP (\fIapply base\&.rmap\fP)\fB]\fP \fB[-map\fP fname (\fIapply fname\fP)\fB]\fP \fB[-rmap\fP fname (\fIapply fname\fP)\fB]\fP \fB[-cmap\fP fname (\fIapply fname\fP)\fB]\fP \fB[-tag\fP tag (\fIapply base\&.tag\fP)\fB]\fP \fB[-rtag\fP tag (\fIapply base\&.tag\fP)\fB]\fP \fB[-ctag\fP tag (\fIapply base\&.tag\fP)\fB]\fP \fB[-skw\fP fname (\fIwrite skew matrix\fP)\fB]\fP \fB[-prm\fP fname (\fIwrite primary result matrix\fP)\fB]\fP \fB[--skw\fP (\fIwrite base\&.skw\fP)\fB]\fP \fB[--prm\fP (\fIwrite base\&.prm\fP)\fB]\fP \fB[-xo\fP suf (\fIwrite base\&.suf\fP)\fB]\fP \fB[-o\fP fname (\fIwrite to file fname\fP)\fB]\fP \fB[-n\fP (\fIdo not write default symmetrized result\fP)\fB]\fP \fB[-i\fP (\fIread from single data file\fP)\fB]\fP \fB[-digits\fP int (\fIdigits width\fP)\fB]\fP \fB[-s\fP (\fIcheck for symmetry\fP)\fB]\fP \fB[-raw-tf\fP (\fIapply transform spec to input\fP)\fB]\fP \fB[-rv\fP (\fIaction for repeated vectors\fP)\fB]\fP \fB[-re\fP (\fIaction for repeated entries\fP)\fB]\fP \fB[-ri\fP (\fIadding mirror image\fP)\fB]\fP \fB[-r\fP (\fIsame for entries and vectors\fP)\fB]\fP \fB[-prm-tf\fP (\fIapply transform spec to primary matrix\fP)\fB]\fP \fB[-sym-tf\fP (\fIapply transform spec to symmetrified matrix\fP)\fB]\fP \fB[--quiet-re\fP (\fIquiet for repeated entries\fP)\fB]\fP \fB[--quiet-rv\fP (\fIquiet for repeated vectors\fP)\fB]\fP \fB[-q\fP (\fIthe two above combined\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION \fBmcxassemble\fP enables easy matrix creation from an intermediate raw matrix format that can easily be constructed from a one-pass-parse of cooccurrence data\&. The basic setup is as follows\&. .ZJ 1m 1m "\(bu" Parse cooccurrence data from some external format\&. .in -2m .ZJ 1m 1m "\(bu" Transform cooccurrence data to raw mcl data as you parse\&. .in -2m .ZJ 1m 1m "\(bu" When done, write out required header and domain information to a separate file\&. The domain information can be built during the parsing stage\&. .in -2m .ZJ 1m 1m "\(bu" Use mcxassemble to construct a valid matrix from the raw data and the header information\&. .in -2m .ZJ 1m 1m "\(bu" Nodes can optionally be relabeled by writing a separate map file to be read by \fBmcxassemble\fP, which takes the form of a very thin matrix file\&. .in -2m The easiest thing to do is to group all input/output files under the same base name, say\ \&\fBbase\fP\&. A standard way of proceeding, which will lead to a concise \fBmcxassemble\fP command line, is by creating the input files \fBbase\&.raw\fP and \fBbase\&.hdr\fP, and optionally the file \fBbase\&.map\fP\&. The default behaviour of mcxassemble is then to create \fBbase\&.sym\fP as the resulting matrix file, containing the symmetrized matrix constructed from the raw input\&. \fBExample\fP .br Suppose \fCblastresult\fP is a file containing blast results\&. The following two commands construct an mcl matrix file from the file\&. .di ZV .in 0 .nf \fC mcxdeblast --score=e --sort=a blastresult mcxassemble -b blastresult -r max --map .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR \fBmcxdeblast\fP will generate the files \fCblastresult\&.hdr\fP, \fCblastresult\&.raw\fP, and \fCblastresult\&.map\fP\&. The \fB--sort=a\fP option will create a map file corresponding with alphabetic ordering\&. These files are processed by \fBmcxassemble\fP and it will generate the file \fCblastresult\&.sym\fP\&. The \fB-r\fP option tells \fBmcxassemble\fP that repeated entries should be maxed; each time the largest entry seen thus far will be taken\&. \fBHeader file\fP .br This file contains a header as usually found in generic mcl matrix files, i\&.e\&. the required \fIheader\fP part, and optionally the \fIdomain\fP part(s) if not all domains are canonical\&. Refer to \fBmcxio(5)\fP for more information\&. The domain information in the header file will be used to pre-construct a skeleton matrix and to validate the entries in the raw data file as they fill the skeleton matrix\&. \fBRaw input format\fP .br The file from which raw input is read should have the raw format as described in \fBmcxio(5)\fP\&. Simply put; no header specification, no domain specification, and no matrix introduction syntax is used\&. The file just contains a listing of vectors\&. An example fragment is the following: .nf \fC 2 4:0\&.34 1:2\&.8838 4:2\&.328 1:4\&.238 1:12 $ 1 2:7\&.8 $ 2 1:0\&.01 4:20\&.3 3:2 $ .fi \fR The listing of vectors need not be sorted, and neither does a vector itself need to be sorted - the mcl generic matrix format is actually not different in this respect\&. Furthermore, duplicate entries and duplicate vectors are allowed\&. This is in fact again allowed in the generic format, except that where applications expect generic format warnings will be issued and duplicate entries will be disregarded\&. \fBmcxassemble\fP allows customizable behaviour dictating how to merge repeated entries\&. Refer to the \fB-re\fP,\ \&\fB-rv\fP,\ \&\fB-r\fP options below\&. The vectors read by \fBmcxassemble\fP do have to match the domains specified in the header file\&. The leading index that specifies the column index has to be present in the column domain; all subsequent indices that specify column entries have to be present in the row domain\&. \fIIf one concatenates the contents of the header file and the data file\fP, the result is \fIalmost but not quite\fP a file containing a matrix in syntactically correct mcl generic matrix format\&. The parts missing are the \fC(mclmatrix\fP introduction token, (followed by) the \fCbegin\fP token, and the closing \fC)\fP token\&. \fBMap file\fP .br This file must contain a map matrix, which is a matrix with the following properties: .ZJ 1m 1m "\(bu" The column domain and row domain are of the same cardinality\&. .in -2m .ZJ 1m 1m "\(bu" Each column has exactly one entry\&. .in -2m .ZJ 1m 1m "\(bu" Each row domain index occurs in exactly one column\&. .in -2m Such a matrix is used to relabel the nodes as found in the raw data\&. A situation that might occur when parsing some external format (and producing raw matrix format), is that ID\&'s (indices) are handed out on the fly during the parse\&. Afterwards, one may want to relabel the IDs such that they correspond with an alphabetic listing of the quantity that is represented by the node domain, or by some other sort criterion\&. A map file is then typically generated by the parser, as that is the utility in charge of the IDs\&. A small example of a map file for a graph containing five nodes is the following: .di ZV .in 0 .nf \fC (mclheader mcltype matrix dimensions 5x5 ) (mclmatrix begin 0 4 $ # mno 1 2 $ # ghi 2 1 $ # def 3 3 $ # jkl 4 0 $ # abc ) .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR This corresponds to a relabeling such that the associated strings will be ordered alphabetically\&. Note that comments can be used to link string identifiers with indices\&. This map file says e\&.g\&. that the string identifier "mno" is represented by index 0 in the raw data, and by index 4 in the matrix output by \fBmcxassemble\fP\&. .SH OPTIONS .ZI 2m "\fB-b\fP base (\fIbase name\fP)" \& 'in -2m 'in +2m \& .br Base name of files to be processed and output\&. Refer to \fBDESCRIPTION\fP above and the entries of other options below\&. .in -2m .ZI 2m "\fB-hdr\fP fname (\fIread header file\fP)" \& 'in -2m .ZI 2m "\fB-raw\fP fname (\fIread raw file\fP)" \& 'in -2m 'in +2m \& .br Explicitly specify the header file and the data file (rather than constructing the file names from a base name and suffixes)\&. .in -2m .ZI 2m "\fB--map\fP (\fIapply base\&.map\fP)" \& 'in -2m .ZI 2m "\fB--cmap\fP (\fIapply base\&.cmap\fP)" \& 'in -2m .ZI 2m "\fB--rmap\fP (\fIapply base\&.rmap\fP)" \& 'in -2m .ZI 2m "\fB-map\fP fname (\fIapply fname\fP)" \& 'in -2m .ZI 2m "\fB-rmap\fP fname (\fIapply fname\fP)" \& 'in -2m .ZI 2m "\fB-cmap\fP fname (\fIapply fname\fP)" \& 'in -2m .ZI 2m "\fB-tag\fP tag (\fIapply base\&.tag\fP)" \& 'in -2m .ZI 2m "\fB-rtag\fP tag (\fIapply base\&.tag\fP)" \& 'in -2m .ZI 2m "\fB-ctag\fP tag (\fIapply base\&.tag\fP)" \& 'in -2m 'in +2m \& .br Map options\&. \fB--cmap\fP combines with the \fB-b\fP\ \&option, and says that the map file in \fBbase\fP\&.\fCcmap\fP (where \fBbase\fP was specified with \fB-b\fP\ \&\fBbase\fP) should be applied to the column domain only\&. \fB--rmap\fP works the same for the row domain, and \fB--map\fP can be used to apply the same map to both the column and row domains\&. \fB-cmap\fP and its siblings are used to explicitly specify the map file to be used, rather than combining a base name with a fixed suffix\&. \fB-tag\fP and its siblings work in conjuction with the \fB-b\fP\ \&option, and require that a tag be specified from which to construct the map file (by appending it to the base name)\&. .in -2m .ZI 2m "\fB-skw\fP fname (\fIwrite skew matrix\fP)" \& 'in -2m .ZI 2m "\fB-prm\fP fname (\fIwrite primary result matrix\fP)" \& 'in -2m .ZI 2m "\fB--prm\fP (\fIwrite base\&.prm\fP)" \& 'in -2m .ZI 2m "\fB--skw\fP (\fIwrite base\&.skw\fP)" \& 'in -2m .ZI 2m "\fB-n\fP (\fIdo not write default symmetrized result\fP)" \& 'in -2m 'in +2m \& .br Options for writing matrices other than the default symmetrized result\&. The primary result matrix is the matrix constructed from reading in the raw data and adding entries to the skeleton matrix as specified with the \fB-r\fP, \fB-re\fP, and \fB-rv\fP options\&. This matrix can be written using one of the \fBprm\fP options\&. Calling the primary matrix A, the skew matrix (as defined here) is the matrix \fCA\ \&-\ \&A^T\fP, i\&.e\&. A minus its transposed matrix\&. It can be written using one of the \fBskw\fP options\&. If for some reason the symmetrized result is not needed, its output can be prevented using the \fB-n\fP\ \&option\&. .in -2m .ZI 2m "\fB-xo\fP suf (\fIwrite base\&.suf\fP)" \& 'in -2m .ZI 2m "\fB-o\fP fname (\fIwrite to file fname\fP)" \& 'in -2m .ZI 2m "\fB-i\fP (\fIread from single data file\fP)" \& 'in -2m .ZI 2m "\fB-digits\fP int (\fIdigits width\fP)" \& 'in -2m .ZI 2m "\fB--write-binary\fP (\fIwrite output in binary format\fP)" \& 'in -2m 'in +2m \& .br The \fB-xo\fP\ \&option is used in conjunction with the \fB-b\fP\ \&option in order to change the suffix for the file in which the symmetrized result matrix is written\&. Use e\&.g\&. \fB-xo\fP\ \&\fBmci\fP to change the suffix from the default value \fCsym\fP to \fCmci\fP\&. Use \fB-o\fP to explicitly specify the filename in full\&. Use \fB-digits\fP to set the number of digits written for matrix entries (c\&.q\&. edge weights)\&. The \fB-i\fP option is special\&. It causes \fBmcxassemble\fP to read both the header information and the raw data from the same file, where the syntax should be fully conforming to generic mcl matrix format\&. .in -2m .ZI 2m "\fB-s\fP (\fIcheck for symmetry\fP)" \& .br This will check whether the primary result matrix was symmetric\&. It reports the number of failing (or \fIskew\fP) edges\&. .in -2m .ZI 2m "\fB-raw-tf\fP (\fIapply transform spec to input\fP)" \& 'in -2m .ZI 2m "\fB-prm-tf\fP (\fIapply transform spec to primary matrix\fP)" \& 'in -2m .ZI 2m "\fB-sym-tf\fP (\fIapply transform spec to symmetrified matrix\fP)" \& 'in -2m 'in +2m \& .br The first applies its transformation spec to the values as found in the raw data\&. The second applies its transformation spec to the primary matrix\&. The third applies its transformation step to the symmetrified matrix\&. Refer to \fBmcxio(5)\fP for documentation on the transformation spec syntax\&. .in -2m .ZI 2m "\fB-rv\fP add|max|min|mul|left|right (\fIaction for repeated vectors\fP)" \& 'in -2m .ZI 2m "\fB-re\fP add|max|min|mul|left|right (\fIaction for repeated entries\fP)" \& 'in -2m .ZI 2m "\fB-ri\fP add|max|min|mul (\fIadding mirror image\fP)" \& 'in -2m .ZI 2m "\fB-r\fP add|max|min|mul|left|right (\fIsame for entries and vectors\fP)" \& 'in -2m 'in +2m \& .br Merge options, dictating the behaviour when repeated entries are found\&. A distinction is made between entries that are repeated within the same column listing, and entries that are repeated between different column listings\&. An entry can be a repeat of both kinds simultaneously as well\&. Additionally, the final result is by default symmetrized by combining with the mirror image (in matrix terminology, the \fItransposed\fP matrix)\&. This symmetrization can be done in the same variety of ways\&. The \fBre\fP option, for repeats within the same column, is carried out first\&. It is applied \fIafter\fP the column has its entries sorted, so the \fCleft\fP and \fCright\fP options are not garantueed to follow the order found in the raw input\&. The \fBrv\fP option, for repeats over different columns, is carried out second\&. The option \fB-ri\fP\ \&\fBmin\fP can assist in implementing a (top-list) best reciprocal hit criterion\&. \fBExamples\fP .br The column .di ZV .in 0 .nf \fC 0 1:30 1:50 2:60 4:70 3:20 1:40 2:40 $ .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR is encountered in the input, listing entries for the vector labeled with index\ \&\fC0\fP\&. If \fB-re\fP\ \&\fBadd\fP or \fB-r\fP\ \&\fBadd\fP is used, it will transform to the vector .di ZV .in 0 .nf \fC 0 1:120 2:60 3:20 4:70 $ .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR If \fB-re\fP\ \&\fBmax\fP or \fB-r\fP\ \&\fBadd\fP is used instead, it will transform to the vector .di ZV .in 0 .nf \fC 0 1:40 2:60 3:20 4:70 $ .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Suppose \fIadd\fP mode is used, and that later on another vector specification for the index\ \&\fC0\fP is found, leading to this transformed vector: .di ZV .in 0 .nf \fC 0 1:60 2:80 4:40 $ .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR If \fB-rv\fP\ \&\fBmax\fP was specified, this new vector is combined with the previous vector by taking the entry wise maximum: .di ZV .in 0 .nf \fC 0 1:120 2:60 3:20 4:70 $ # first (transformed) vector 0 1:60 2:80 4:40 $ # second vector 0 1:120 2:80 3:20 4:70 $ # entry wise maximum .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Finally, suppose that somewhere one or more vector listings were specified for index\ \&\fC3\fP, which eventually led to an entry \fC0:50\fP\&. The final symmetrization step will take the \fC[0,3]\fP entry of weight\ \&\fC20\fP and combine it with the \fC[3,0]\fP entry of weight\ \&\fC50\fP\&. The resulting matrix will then have the \fC[0,3]\fP and the \fC[3,0]\fP entry both equal to either the maximum, the sum, or the product of the two quantities\ \&\fC50\fP and\ \&\fC20\fP\&. .in -2m .ZI 2m "\fB--quiet-re\fP (\fIquiet for repeated entries\fP)" \& 'in -2m .ZI 2m "\fB--quiet-rv\fP (\fIquiet for repeated vectors\fP)" \& 'in -2m .ZI 2m "\fB-q\fP (\fIthe two above combined\fP)" \& 'in -2m 'in +2m \& .br Warning options\&. Turn these on if you expect the raw data to be free of repeats\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmcxio(5)\fP, \fBmcl(1)\fP, \fBmcxload(1)\fP and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mclindex.70000644000402500021140000000561111754271042011737 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mclindex" 7 "14 May 2012" "mclindex 12-135" "MISCELLANEOUS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mclindex \- a list of the utilities and modules present in the MCL distribution\&. For more information, consult \fBmclfamily(7)\fP\&. .SH Generic stuff .ZI 2m "\fBmcl(1)\fP" \& .br the mcl manual page .in -2m .ZI 2m "\fBmclfaq(7)\fP" \& .br the mcl FAQ .in -2m .ZI 2m "\fBmcxio(5)\fP" \& .br the mcl matrix format specification .in -2m .ZI 2m "\fBmclpipeline(1)\fP" \& .br generic pipeline (parsing/matrix creation/clustering/display) .in -2m .ZI 2m "\fBmcx(1)\fP" \& .br interface to basic matrix operations .in -2m .ZI 2m "\fBmcxassemble(1)\fP" \& .br prepare input matrix from cooccurrence scores .in -2m .ZI 2m "\fBmcxdump(1)\fP" \& .br dump matrices, optionally map indices to labels .in -2m .ZI 2m "\fBmcxarray(1)\fP" \& .br transform array data to MCL matrices .in -2m .ZI 2m "\fBmcxconvert(1)\fP" \& .br convert between ascii/binary storage types .in -2m .SH Dealing with clustering results .ZI 2m "\fBclmformat(1)\fP" \& .br display clusterings in browsable format .in -2m .ZI 2m "\fBclmdist(1)\fP" \& .br compute distances between clusterings .in -2m .ZI 2m "\fBclminfo(1)\fP" \& .br performance measures for clusterings .in -2m .ZI 2m "\fBclmmeet(1)\fP" \& .br compute intersection of clusterings .in -2m .ZI 2m "\fBclmmate(1)\fP" \& .br compute best matches between two clusterings .in -2m .ZI 2m "\fBclmimac(1)\fP" \& .br Interpret Matrices (c\&.q\&. MCL iterands) As Clusterings .in -2m .ZI 2m "\fBclmresidue(1)\fP" \& .br extend subgraph clusterings onto encompassing graph .in -2m .ZI 2m "\fBclmorder(1)\fP" \& .br reorder indices to represent blocks from different clusterings .in -2m .ZI 2m "\fBclmclose(1)\fP" \& .br fetch connected components from graphs or subgraphs .in -2m .SH Dealing with matrices .ZI 2m "\fBmcxio(5)\fP" \& .br the mcl matrix format specification .in -2m .ZI 2m "\fBmcx(1)\fP" \& .br interface to basic matrix operations .in -2m .ZI 2m "\fBmcxsubs(1)\fP" \& .br extract submatrices by specifiying sets of nodes and clusters .in -2m .ZI 2m "\fBmcxmap(1)\fP" \& .br remap matrix indices / relabel graph nodes .in -2m .ZI 2m "\fBmcxassemble(1)\fP" \& .br prepare input matrix from cooccurrence scores .in -2m .SH Application specific parsers and wrappers \ \& \fBBLAST package\fP - Documentation only available if installed with \fB--enable-blast\fP .br \fC__________________\fP .br .ZI 2m "\fBmclblastline(1)\fP" \& .br pipeline for clustering from blast files .in -2m .ZI 2m "\fBmcxdeblast(1)\fP" \& .br prepare input from blast files .in -2m mcl-12-135/doc/mcxalter.html0000644000402500021140000001522111754271043012550 00000000000000 The mcxalter manual

14 May 2012    mcxalter 12-135

NAME

mcxalter — various network transformations

SYNOPSIS

mcxalter [-imx <fname> (specify matrix input)] [-abc <fname> (specify label input)] [-tab <fname> (use tab file)] [-o <fname> (output)] [-tf spec (apply tf-spec to input matrix)]

DESCRIPTION

This utility supplies various transformations of networks.

OPTIONS

-abc <fname> (label input)

The file name for input that is in label format.

 
-imx <fname> (input matrix)

The file name for input that is in mcl native matrix format.

 
-tab <fname> (use tab file)

This option causes the output to be printed with the labels found in the tab file. With -abc this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with -imx the tab domain and the matrix domain are required to be identical.

 
-tf <tf-spec> (transform input matrix values)

Transform the input matrix values according to the syntax described in mcxio.

 
-o fname (output file)

Output file.

AUTHOR

Stijn van Dongen.

SEE ALSO

mcxio, mcx, mcxsubs, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcl.txt0000644000402500021140000016354711754271042011375 00000000000000mcl(1) USER COMMANDS mcl(1) NAME mcl - The Markov Cluster Algorithm, aka the MCL algorithm. This program implements mcl, a cluster algorithm for graphs. A single parameter controls the granularity of the output clustering, namely the -I inflation option described further below. In standard usage of the program this parameter is the only one that may require changing. By default it is set to 2.0 and this is a good way to start. If you want to explore cluster structure in graphs with MCL, vary this parameter to obtain clusterings at different levels of granularity. A good set of starting values is 1.4, 2, 4, and 6. The program has a rather large set of options. Except for -I none affects the clustering method itself. The other options are for a vari- ety of aspects, such as study of the underlying MCL process (i.e. dump- ing of iterands), network preprocessing (incorporated for efficiency), resource allocation options (for large-scale analyses), output naming and placement, output formatting, setting of verbosity levels, and so on. Network construction and reduction techniques should not be considered as part of a clustering algorithm. Nevertheless particular techniques may benefit particular methods or applications. In mcl many transforma- tions are accessible through the -tf option. It can be used for edge weight transformations and selection, as well as transformations that act on a graph as a whole. It is for example possible to remove edges with weight below 0.7 by issuing -tf 'gq(0.7)', where the quotes are necessary to prevent the shell from interpreting the parentheses. The option accepts more complicated sequences, such as -tf 'gq(0.7),add(-0.7)'. This causes all remaining edge weights to be shifted to the range [0-0.3], assuming that the input contains correla- tions. Many more transformations are supported, as documented in mcxio(5). Examples of graph-wide transformations are '#knn()' and '#ceilnb()'. The first only keeps those edges that occur in the list of top- edges of highest weight in both of its incident nodes. The second removes edges from nodes of highest degree first, proceeding until all node degrees satisfy the given threshold. The -pi (pre-infla- tion) option can be used to increase the contrast in edge weights. This may be useful when clusterings are coarse and fine-grained clusterings are difficult to obtain. GETTING STARTED There are two main modes of invocation. The most accessible is label mode which assumes a format alternatively called label input or ABC-for- mat. The input is then a file or stream in which each line encodes an edge in terms of two labels (the 'A' and the 'B') and a numerical value (the 'C'), all separated by white space. The most basic example of usage is this: mcl <-|fname> --abc -o fname-out The output is then a file where each line is a cluster of tab-separated labels. If clustering is part of a larger workflow where it is desir- able to analyse and compare multiple clusterings, then it is a good idea to use native mode rather than ABC mode. The reason for this is that native mode is understood by all programs in the mcl suite. It is a more stringent and unambiguous format, and hence more suitable for data exchange. The reader is refered to clmprotocols(5) for more informa- tion. SYNOPSIS The example invocation below assumes matrix input, as explained above and described in the mcxio(5) section. Switching to label mode requires the input file to be in ABC-format and the addition of the --abc option. mcl <-|fname> [-I (inflation)] [-o (fname)] These options are sufficient in 95 percent of the cases or more. The first argument must be the name of a file containing a graph/matrix in the mcl input format, or a hyphen to read from STDIN. With respect to clustering, the -I option is foremost relevant. The full listing of mcl options is shown further below, separated into parts corresponding with functional aspects such as clustering, thread- ing, verbosity, network preprocessing, pruning and resource management, automatic output naming, and dumping. Baseline clustering options [-I (inflation)] [-o (fname)] Output options [-odir (directory)] [--d (use input directory for output)] Input options [--abc (expect/write labels)] [--sif (expect/write labels)] [--etc (expect/write labels)] [--expect-values (sif or etc stream contains val- ues)] [-use-tab (use mapping to write)] Transform options [-tf (transform input matrix values)] [-abc-tf (transform input stream values)] [--abc-neg-log10 (take log10 of stream values, negate sign)] [--abc-neg-log (take log of stream values, negate sign)] Cache options [-write-graph (write graph)] [-write-graphx (write transformed graph)] [-write-expanded (write expanded graph)] [--write-limit (write mcl process limit)] Input manipulation options [-pi (pre-inflation)] [-ph (pre-inflation, max-bound)] [-if (start-inflation)] [--discard-loops= (discard y/n loops in input)] [--sum-loops (set loops to sum of other arcs weights)] [-c (reweight loops)] Clustering processing options [-sort (sort mode)] [-overlap (overlap mode)] [--force-con- nected= (analyze components)] [--check-connected= (analyze components)] [--analyze= (performance criteria)] [--show-log= (show log)] Verbosity options [-q (log levels)] [-v (verbosity type on)] [-V (ver- bosity type off)] [--show (print (small) matrices to screen)] Thread options [-te (#expansion threads)] Output file name and annotation options [-o (fname)] [-ap (use str as file name prefix)] [-aa (append str to suffix)] [-az (show output file name and exit)] [-ax (show output suffix and exit)] [-annot (dummy annotation option)] Dump options [-dump-interval (dump interval)] [-dump-modulo (dump mod- ulo)] [-dump-stem (dump file stem)] [-dump (type)] [-digits (printing precision)] [--write-binary (write matrices in binary format)] Info options [--jury-charter (explains jury)] [--version (show version)] [-how-much- ram k (RAM upper bound)] [-h (most important options)] [--help (one-line description for all options)] [-z (show current settings)] [-az (show output file name and exit)] [-ax (show output suffix and exit)] [--show- schemes (show resource schemes)] Implementation options [-sparse (sparse matrix multiplication threshold)] Pruning options The following options all pertain to the various pruning strategies that can be employed by mcl. They are described in the PRUNING OPTIONS sec- tion, accompanied by a description of the mcl pruning strategy. If your graphs are huge and you have an appetite for tuning, have a look at the following: [-scheme (resource scheme)] [-resource (per-node resource maximum)] [-p (cutoff)] [-P (1/cutoff)] [-S (selection number)] [-R (recovery number)] [-pct (recover percentage)] [-warn-pct (prune warn percentage)] [-warn-factor (prune warn factor)] The first argument of mcl must be a file name, but some options are allowed to appear as the first argument instead. These are the options that cause mcl to print out information of some kind, after which it will gracefully exit. The full list of these options is -z, -h, --help, --version, --show-settings, --show-schemes, --jury-char- ter. DESCRIPTION mcl implements the MCL algorithm, short for the Markov cluster algo- rithm, a cluster algorithm for graphs developed by Stijn van Dongen at the Centre for Mathematics and Computer Science in Amsterdam, the Netherlands. The algorithm simulates flow using two simple algebraic operations on matrices. The inception of this flow process and the the- ory behind it are described elsewhere (see REFERENCES). Frequently asked questions are answered in the mclfaq(7) section. The program described here is a fast threaded implementation written by the algorithm's cre- ator with contributions by several others. Anton Enright co-implemented threading; see the HISTORY/CREDITS section for a complete account. See the APPLICABILITY section for a description of the type of graph mcl likes best, and for a qualitative assessment of its speed. mcl is accompanied by several other utilities for analyzing clusterings and performing matrix and graph operations; see the SEE ALSO section. The first argument is the input file name, or a single hyphen to read from stdin. The rationale for making the name of the input file a fixed parameter is that you typically do several runs with different parame- ters. In command line mode it is pleasant if you do not have to skip over an immutable parameter all the time. The -I f option is the main control, affecting cluster granularity. In finding good mcl parameter settings for a particular domain, or in find- ing cluster structure at different levels of granularity, one typically runs mcl multiple times for varying values of f (refer to the -I infla- tion option for further information). NOTE MCL interprets the matrix entries or graph edge weights as similar- ities, and it likes undirected input graphs best. It can handle directed graphs, but any node pair (i,j) for which w(i,j) is much smaller than w(j,i) or vice versa will presumably have a slightly negative effect on the clusterings output by mcl. Many such node pairs will have a dis- tinctly negative effect, so try to make your input graphs undirected. How your edge weights are computed may affect mcl's performance. In pro- tein clustering, one way to go is to choose the negated logarithm of the BLAST probabilities (see REFERENCES). mcl's default parameters should make it quite fast under almost all cir- cumstances. Taking default parameters, mcl has been used to generate good protein clusters on 133k proteins, taking 10 minutes running time on a Compaq ES40 system with four alpha EV6.7 processors. It has been applied (with good results) to graphs with two million nodes, and if you have the memory (and preferably CPUs as well) nothing should stop you from going further. For large graphs, there are several groups of parameters available for tuning the mcl computing process, should it be necessary. The easiest thing to do is just vary the -scheme option. This triggers different settings for the group of pruning parameters -p/-P, -R, -S, and -pct. The default setting corresponds with -scheme 6. When doing multiple mcl runs for the same graphs with different -I settings (for obtaining clus- terings at different levels of granularity), it can be useful to factor out the first bit of computation that is common to all runs, by using the -write-expanded option one time and then using -if inflation for each run in the set. Whether mcl considers a graph large depends mainly on the graph connectivity; a highly connected graph on 50,000 nodes is large to mcl (so that you might want to tune resources) whereas a sparsely connected graph on 500,000 nodes may be business as usual. mcl is a memory munger. Its precise appetite depends on the resource settings. You can get a rough (and usually much too pessimistic) upper bound for the amount of RAM that is needed by using the -how-much-ram option. The corresponding entry in this manual page contains the simple formula via which the upper bound is computed. Other options of interest are the option to specify threads -te, and the verbosity-related options -v and -V. The actual settings are shown with -z, and for graphs with at most 12 nodes or so you can view the MCL matrix iterands on screen by supplying --show (this may give some more feeling). MCL iterands allow a generic interpretation as clusterings as well. The clusterings associated with early iterands may contain a fair amount of overlap. Refer to the -dump option, the mclfaq(7) manual, and the clm imac utility (Interpret Matrices As Clusterings). Use clm imac only if you have a special reason; the normal usage of mcl is to do multiple runs for varying -I parameters and use the clusterings output by mcl itself. Under very rare circumstances, mcl might get stuck in a seemingly infi- nite loop. If the number of iterations exceeds a hundred and the chaos indicator remains nearly constant (presumably around value 0.37), you can force mcl to stop by sending it the ALRM signal (usually done by kill -s ALRM pid). It will finish the current iteration, and interpret the last iterand as a clustering. Alternatively, you can wait and mcl might converge by itself or it will certainly stop after 10,000 itera- tions. The most probable explanation for such an infinite loop is that the input graph contains the flip-flop graph of node size three as a subgraph. The creator of this page feels that manual pages are a valuable resource, that online html documentation is also a good thing to have, and that info pages are way way ahead of their time. The NOTES section explains how this page was created. In the OPTIONS section options are listed in order of importance, with related options grouped together. OPTIONS -I (inflation) Sets the main inflation value to . This value is the main handle for affecting cluster granularity. It is usually chosen somewhere in the range [1.2-5.0]. -I 5.0 will tend to result in fine-grained clusterings, and -I 1.2 will tend to result in very coarse grained clusterings. Your mileage will vary depending on the characteristics of your data. That is why it is a good idea to test the quality and coherency of your clusterings using clm dist and clm info. This will most likely reveal that certain values of -I are simply not right for your data. The clm dist section contains a discussion of how to use the cluster validation tools shipped with mcl (see the SEE ALSO sec- tion). With low values for -I, like -I 1.2, you should be prepared to use more resources in order to maintain quality of clusterings, i.e. increase the argument to the -scheme option. -o (output file name) -odir (output directory name) --d (use input directory for output) The default mode of output creation for mcl is to create a file name that uses the input file name stripped of any leading path components, augmented with a prefix 'out.' and a suffix encoding pivotal mcl parameters. This will usually be the inflation value which is the argument to the -I option. By default the output file is written in the current directory. For example, if the input is named data/small.mci for example and inflation is set to three, the output file will be named out.small.mci.I30. This behaviour can be overridden in various ways. The -o option simply specifies the output file name, which may include path components that should exist. It is possible to send the clustering to STDOUT by sup- plying -o -. With the -odir option mcl constructs the output file name as before, but writes the file in the directory . Finally, the option --d is similar but more specific in that mcl will write the output in the directory specified by the path component of the input file, that is, the directory in which the input file resides. If either one of --abc, --sif, --etc or -use-tab tab-file is used the output will be in label format. Otherwise the clustering is output in the mcl matrix format; see the mcxio(5) section for more information on this. Refer also to the group of options discussed at --abc. Look at the -ap prefix option and its siblings for the automatic nam- ing constructions employed by mcl if the -o option is not used. -c (reweight loops) --sum-loops (set loops to sum of other arcs weights) With the -c option, as the final step of loop computation (i.e. after initialization and shadowing) all loop weights are multiplied by , if supplied. --discard-loops= (discard loops in input) By default mcl will remove any loops that are present in the input. Use --discard-loops=n to turn this off. Bear in mind that loops will still be modified in all cases where the loop weight is not maximal among the list of edge weights for a given node. --abc (expect/write labels) --sif (expect/write labels) --etc (expect/write labels) --expect-values (expect label:weight format) -use-tab (use mapping to write) These items all relate to label input and/or label output. --abc tells mcl to expect label input and output clusters in terms of those labels. This simple format expects two or three fields separated by white space on each line. The first and second fields are interpreted as labels specifying source and destination node respectively. The third field, if present, specifies the weight of the arc connecting the two nodes. The option --sif tells mcl to expect SIF (Simple Interaction File) format. This format is line based. The first two fields specify the source node (as a label) and the relationship type. An arbitrary num- ber of fields may follow, each containing a label identifying a desti- nation node. The second field is simply ignored by mcl. As an exten- sion to the SIF format weights may optionally follow the labels, sepa- rated from them with a colon character. It is in this case necessary to use the --expect-values option. The --etc option expects a format identical in all respects except that the relationship type is not present, so that all fields after the first are interpreted as desti- nation labels. -use-tab is only useful when matrix input is used. It will use the tab file to convert the output to labels; it does not fail on indices missing from the tab file, but will bind these to generated dummy labels. -tf (transform input matrix values) -abc-tf (transform input stream values) --abc-neg-log10 (take log10 of stream values, negate sign) --abc-neg-log (take log of stream values, negate sign) -tf transforms the values of the input matrix according to . -abc-tf transforms the stream values (when --abc is used) according to . --abc-neg-log and --abc-neg-log10 imply that the stream input values are replaced by the negation of their log or log10 val- ues, respectively. The reason for their existence is documented in mcxio(5). For a description of the transform language excpected/accepted in refer to the same. -write-graph (write graph) -write-graphx (write transformed graph) -write-expanded (write expanded graph) --write-limit (write mcl process limit) The first two options are somewhat outdated, in that the prefered way of loading networks is by using mcxload(1). The option -write-expanded can be useful for exploring more complicated input transformations that incorporate an expansion step, but is not really relevant for production use. The last option is mainly educational and for analyz- ing the mcl process itself. -scheme (use a preset resource scheme) -resource (allow n neighbours throughout) There are currently seven different resource schemes, indexed 1..7. High schemes result in more expensive computations that may possibly be more accurate. The default scheme is 4. When mcl is done, it will give a grade (the so called jury synopsis) to the appropriateness of the scheme used. A low grade does not necessarily imply that the resulting clustering is bad - but anyway, a low grade should be reason to try for a higher scheme. Use the -resource option to cap for each nodes the number of neighbours tracked during computation at nodes. The PRUNING OPTIONS section contains an elaborate description of the way mcl manages resources, should you be interested. In case you are worried about the validation of the resulting clusterings, the mclfaq(7) section has several entries discussing this issue. The bot- tom line is that you have to compare the clusterings resulting from different schemes (and otherwise identical parameters) using utilities such as clm dist, clm info on the one hand, and your own sound judg- ment on the other hand. If your input graph is extremely dense, with an average node degree (i.e. the number of neighbours per node) that is somewhere above 500, you may need to filter the input graph by removing edges, for example by using one of -tf '#ceilnb()' or -tf '#knn()'. --show-schemes (show preset resource schemes) Shows the explicit settings to which the different preset schemes cor- respond. The characteristics are written in the same format (more or less) as the output triggered by -v pruning. -V (verbosity type off) See the -v option below. -v (verbosity type on) These are the different verbosity modes: pruning explain cls all -q (log levels) To make mcl as quiet as can be, add -q x -V all to the command line. The -q option governs a general logging mechanism. The format accepted is described in the tingea.log(7) manual page. The other options govern verbosity levels specific to mcl. -v all turns them all on, -V all turns them all off. -v str and -V str turn on/off the single mode str (for str equal to one of pruning, cls, or explain). Each verbosity mode is given its own entry below. -v explain This mode causes the output of explanatory headers illuminating the output generated with the pruning verbosity mode. -v pruning This mode causes output of resource-related quantities. It has a sepa- rate entry in the PRUNING OPTIONS section. -v cls This mode (on by default) prints a terse list of characteristics of the clusterings associated with intermediate iterands. The character- istics are E/V, cls, olap, and dd. They respectively stand for the number of outgoing arcs per node (as an average), the number of clus- ters in the overlapping clustering associated with the iterand, the number of nodes in overlap, and the dag depth associated with the DAG (directed acyclic graph) associated with the iterand. For more infor- mation on this DAG refer to the -dump option description in this man- ual and also mclfaq(7). Standard log information expa This gives the ratio of (1) the number of edges after initial expansion, before pruning, to (2) the number of edges before ini- tial expansion. expb This gives the ratio of (1) the number of edges after expansion and pruning, to (2) the number of edges before initial expansion. expc This gives the ratio of (1) the number of edges after expansion and pruning, to (2) the number of edges of the original input graph. fmv This gives the percentage of nodes (matrix columns) for which full matrix/vector computation was used (as opposed to using a sparse technique). -aa (append to suffix) See the -ap option below. -ap (use as file name prefix) If the -o fname option is not used, mcl will create a file name (for writing output to) that should uniquely characterize the important parameters used in the current invocation of mcl. The default format is out.fname.suf, where out is simply the literal string out, fname is the first argument containing the name of the file (with the graph) to be clustered, and where suf is the suffix encoding a set of parameters (described further below). The -ap str option specifies a prefix to use rather than out.fname as sketched above. However, mcl will interpret the character '=', if present in str, as a placeholder for the input file name. If the -aa str option is used, mcl will append str to the suffix suf created by itself. You can use this if you need to encode some extra information in the file name suffix. The suffix is constructed as follows. The -I f and -scheme parameter are always encoded. Other options, such as -pi f and -knn are only encoded if they are used. Any real argument f is encoded using exactly one trailing digit behind the decimal separator (which itself is not written). The setting -I 3.14 is thus encoded as I31. The -scheme option is encoded using the letter 's', all other options mentioned here are encoded as themselves (stripped of the hyphen). For example mcl small.mci -I 3 -c 2.5 -pi 0.8 -scheme 5 results in the file name out.small.mci.I30s5c25pi08. If you want to know beforehand what file name will be produced, use the -az option. -az (show output file name and exit) -ax (show output suffix and exit) If mcl automatically constructs a file name, it can be helpful to known beforehand what that file name will be. Use -az and mcl will write the file name to STDOUT and exit. This can be used if mcl is integrated into other software for which the automatic creation of unique file names is convenient. By default mcl incorporates the input file name into the output file name and appends a short suffix describing the most important option settings. Use -ax to find out what that suffix is. This can be useful in wrapper pipeline scripts such as clxcoarse. -annot (dummy annotation option) mcl writes the command line with which it was invoked to the output clustering file. Use this option to include any additional informa- tion. MCL does nothing with this option except copying it as just described. -te (#expansion threads) Threading is useful if you have a multi-processor system. mcl will spawn k threads of computation. If these are computed in parallel (this depends on the number of CPUs available to the mcl process) it will speed up the process accordingly. When threading, it is best not to turn on pruning verbosity mode if you are letting mcl run unattended, unless you want to scrutinize its output later. This is because it makes mcl run somewhat slower, although the difference is not dramatic. -pi (pre-inflation) -ph (pre-inflation, max-bound) If used, mcl will apply inflation one time to the input graph before entering the main process. This can be useful for making the edge weights in a graph either more homogeneous (which may result in less granular clusterings) or more heterogeneous (which may result in more granular clusterings). Homogeneity is achieved for values less than one, heterogeneity for values larger than one. Values to try are normally in the range [2.0,10.0]. The -ph option is special in that it does not rescale columns to be stochastic. Instead, it rescales columns so that the maximum value found in the column stays the same after inflation was applied. There is little significance to this, and what little there is is undocu- mented. -if (start-inflation) If used, mcl will apply inflation one time to the input graph before entering the main process. The difference with -pi is that with the latter option mcl may apply certain transformations after reading in the matrix such as adding or modifying loops. The purpose of the -if (mnemonic for inflation-first) option is to use it on graphs saved with the --write-expanded option and convey to mcl that it should not apply those transformations. -dump-interval (dump interval) -dump-interval all Dump during iterations i..j-1. Use all to dump in all iterations. See the -dump str option below. -dump-modulo (dump i+0..i+..) Sampling rate: select only these iterations in the dump interval. See the -dump str option below. -dump-stem (file stem) Set the the stem for file names of dumped objects (default mcl). See the -dump str option below. -dump (type) str is checked for substring occurrences of the following entries. Repeated use of -dump is also allowed. ite dag cls chr lines cat lines and cat change the mode of dumping. The first changes the dump format to a line based pairwise format rather than the default mcl matrix format. The second causes all dumped items to be dumped to the default stream used for the output clustering, which is appended at the end. The ite option writes mcl iterands to file. The cls option writes clusterings associated with mcl iterands to file. These clusters are obtained from a particular directed acyclic graph (abbreviated as DAG) associated with each iterand. The dag option writes that DAG to file. The DAG can optionally be further pruned and then again be interpreted as a clustering using clm imac, and clm imac can also work with the matrices written using the ite option. It should be noted that clus- terings associated with intermediate iterands may contain overlap, which is interesting in many applications. For more information refer to mclfaq(7) and the REFERENCES section below. The result option dumps the usual MCL clustering. The chr option says, for each iterand I, to output a matrix C with characteristics of I. C has the same number of columns as I. For each column k in C, row entry 0 is the diagonal or 'loop' value of column k in I after expansion and pruning, and before inflation and rescaling. Entry 1 is the loop value after inflation and rescaling. Entry 2 is the center of column k (the sum of its entries squared) computed after expansion and before pruning, entry 3 is the maximum value found in that column at the same time. Entry 4 is the amount of mass kept for that column after pruning. The -ds option sets the stem for file names of dumped objects (default mcl). The -di and -dm options allow a selection of iterands to be made. -digits (printing precision) This has two completely different uses. It sets the number of decimals used for pretty-printing mcl iterands when using the --show option (see below), and it sets the number of decimals used for writing the expanded matrix when using the -write-expanded option. --show (print matrices to screen) Print matrices to screen. The number of significant digits to be printed can be tuned with -digits n. An 80-column screen allows graphs (matrices) of size up to 12(x12) to be printed with three digits pre- cision (behind the comma), and of size up to 14(x14) with two digits. This can give you an idea of how mcl operates, and what the effect of pruning is. Use e.g. -S 6 for such a small graph and view the MCL matrix iterands with --show. --write-binary (output format) Write matrix dump output in binary mcl format rather than interchange mcl format (the default). Note that mcxconvert can be used to convert each one into the other. See mcxio(5) and mcx(1) for more informa- tion. -sort (sort mode) str can be one of lex, size, revsize, or none. The default is 'rev- size', in which the largest clusters come first. If the mode is 'size', smallest clusters come first, if the mode is 'lex', clusters are ordered lexicographically, and if the mode is 'none', the order is the same as produced by the procedure used by mcl to map matrices onto clusterings. -overlap (overlap mode) Mode keep causes mcl to retain overlap should this improbable event occur. In theory, mcl may generate a clustering that contains overlap, although this almost never happens in practice, as it requires some particular type of symmetry to be present in the input graph (not just any symmetry will do). Mathematically speaking, this is a conjecture and not a theorem, but the present author wil eat his shoe if it fails to be true (for marzipan values of shoe). It is easy though to con- struct an input graph for which certain mcl settings result in overlap - for example a line graph on an odd number of nodes. The default is to excise overlapping parts and introduce them as clusters in their own right. It is possible to allocate nodes in overlap to the first cluster in which they occur (i.e. rather arbitrarily), corresponding with mode cut. In mode split mcl will put all nodes in overlap into separate clus- ters. These clusters are chosen such that two nodes are put in the same new cluster if and only if they always occur paired in the clus- ters of the overlapping clustering. This option has no effect on the clusterings that are output when using -dump cls - the default for those is that overlap is not touched, and this default can not yet be overridden. --force-connected= (analyze components) --check-connected= (analyze components) If the input graph has strong bipartite characteristics, mcl may yield clusters that do not correspond to connected components in the input graph. Turn one of these modes on to analyze the resultant clustering. If loose clusters are found they will be split into subclusters corre- sponding to connected components. With --force-connected=y mcl will write the corrected clustering to the normal output file, and the old clustering to the same file with suffix orig. With --check-con- nected=y mcl will write the loose clustering to the normal output file, and the corrected clustering to the same file with suffix coco. These options are not on by default, as the analysis is currently (overly) time-consuming and mcl's behaviour actually makes some sense (when taking bipartite characteristics into account). --analyze= (performance criteria) With this mode turned on, mcl will reread the input matrix and compute a few performance criteria and attach them to the output file. Off by default. --show-log= (show log) Shows the log with process characteristics on STDOUT. By default, this mode is off. --jury-charter (explains jury) Explains how the jury synopsis is computed from the jury marks. --version (show version) Show version. -how-much-ram (RAM upper bound) is interpreted as the number of nodes of an input graph. mcl will print the maximum amount of RAM it needs for its computations. The formula for this number in bytes is: 2 * c * k * 2 : two matrices are concurrently held in memory. c : mcl cell size (as shown by -z). : graph cardinality (number of nodes). k : MAX(s, r). s : select number (-S, -scheme options). r : recover number (-R, -scheme options). This estimate will usually be too pessimistic. It does assume though that the average node degree of the input graph does not exceed k. The -how-much-ram option takes other command-line arguments into account (such as -S and -R), and it expresses the amount of RAM in megabyte units. -h (show help) Shows a selection of the most important mcl options. --help (show help) Gives a one-line description for all options. -z (show settings) Show current settings for tunable parameters. --show-settings is a synonym. PRUNING OPTIONS -p (cutoff) -P (1/cutoff) -S (selection number) -R (recover number) -pct (recover percentage) After computing a new (column stochastic) matrix vector during expan- sion (which is matrix multiplication c.q. squaring), the vector is successively exposed to different pruning strategies. The intent of pruning is that many small entries are removed while retaining much of the stochastic mass of the original vector. After pruning, vectors are rescaled to be stochastic again. MCL iterands are theoretically known to be sparse in a weighted sense, and this manoever effectively per- turbs the MCL process a little in order to obtain matrices that are genuinely sparse, thus keeping the computation tractable. An example of monitoring pruning can be found in the discussion of -v pruning at the end of this section. mcl proceeds as follows. First, entries that are smaller than cutoff are removed, resulting in a vector with at most 1/cutoff entries. The cutoff can be supplied either by -p, or as the inverse value by -P. The latter is more intuitive, if your intuition is like mine (P stands for precision or pruning). The cutoff just described is rigid; it is the same for all vectors. The --adapt option causes the computation of a cutoff that depends on a vector's homogeneity properties, and this option may or may not speed up mcl. Second, if the remaining stochastic mass (i.e. the sum of all remain- ing entries) is less than /100 and the number of remaining entries is less than (as specified by the -R flag), mcl will try to regain ground by recovering the largest discarded entries. The total number of entries is not allowed to grow larger than . If recovery was not necessary, mcl tries to prune the vector further down to at most s entries (if applicable), as specified by the -S flag. If this results in a vector that satisfies the recovery condition then recovery is attempted, exactly as described above. The latter will not occur of course if <= . The default setting is something like -P 4000 -S 500 -R 600. Check the -z flag to be sure. There is a set of precomposed settings, which can be triggered with the -scheme k option. k=4 is the default scheme; higher values for k result in costlier and more accurate computations (vice versa for lower, cheaper, and less accurate). The schemes are listed using the --show-schemes option. It is advisable to use the -scheme option only in interactive mode, and to use the explicit expressions when doing batch processing. The reason is that there is no guarantee whatsoever that the schemes will not change between dif- ferent releases. This is because the scheme options should reflect good general purpose settings, and it may become appararent that other schemes are better. Note that 'less accurate' or 'more accurate' computations may still generate the same output clusterings. Use clm dist to compare output clusterings for different resource parameters. Refer to clm dist for a discussion of this issue. -warn-pct (prune warn percentage) -warn-factor (prune warn factor) The two options -warn-pct and -warn-factor relate to warnings that may be triggered once the initial pruning of a vector is completed. The idea is to issue warnings if initial pruning almost completely destroys a computed vector, as this may be a sign that the pruning parameters should be changed. It depends on the mass remaining after initial pruning whether a warning will be issued. If that mass is less than warn-pct or if the number of remaining entries is smaller by a factor warn-factor than both the number of entries originally computed and the recovery number, in that case, mcl will issue a warning. -warn-pct takes an integer between 0 and 100 as parameter, -warn-fac- tor takes a real positive number. They default to something like 30 and 50.0. If you want to see less warnings, decrease warn-pct and increase warn-factor. Set warn-factor to zero if you want no warnings. -v pruning Pruning verbosity mode causes mcl to emit several statistics related to the pruning process, each of which is described below. Use -v explain to get explanatory headers in the output as well (or simply use -v all). IMPLEMENTATION OPTIONS -sparse (sparse matrix multiplication threshold) This value (by default set to 10) determines when mcl switches to sparse matrix/vector multiplication. For a given column stochastic vector (corresponding with all the neighbours of a given node v according to the current mcl iterand) the sum S of neighbour counts of all neighbours of v is computed, counting duplicates. This is exactly the number of matrix entries involved in the computation of the new column vector for the matrix product. If S times does not exceed the number of nodes in the graph (equal to both column and row dimen- sion of the matrices used) then a sparse implementation is used. Oth- erwise an optimized regular implementation is used. Intuitively, this option can be thought of as the estimated overhead per matrix floating point operation incurred by the sparse implementation compared with the regular implementation. MCL uses this estimated overhead to determine which implementation is likely to be quicker. Testing has shown this strategy works very well for graphs of a wide range of sizes, including graphs with up to 3 million nodes and 500 million edges. NOTE The effectiveness of this option is influenced by hardware-specific properties such as the CPU L2 cache size. The default value should work reasonably well across a wide variety of scenarios, but it may be possible to squeeze faster run times out of mcl by tuning this parame- ter to the graphs that are specific for your application domain. EXAMPLES The following is an example of label input ---8<------8<------8<------8<------8<--- cat hat 0.2 hat bat 0.16 bat cat 1.0 bat bit 0.125 bit fit 0.25 fit hit 0.5 hit bit 0.16 --->8------>8------>8------>8------>8--- It can be clustered like this: mcl cathat --abc -o out.cathat The file out.cathat should now like like this ---8<------8<------8<------8<------8<--- cat hat bat bit fit hit --->8------>8------>8------>8------>8--- A few things to note. First, MCL will symmetrize any arrow it finds. If it sees bat cat 1.0 it will act as if it also saw cat bat 1.0. You can explicitly specify cat bat 1.0, mcl will in the first parse stage simply end up with duplicate entries. Second, MCL deduplicates repeated edges by taking the one with the maximum value. So, ---8<------8<------8<------8<------8<--- cat hat 0.2 hat cat 0.16 hat cat 0.8 --->8------>8------>8------>8------>8--- Will result in two arrows cat-hat and hat-cat both with value 0.8. APPLICABILITY mcl will work very well for graphs in which the diameter of the natural clusters is not too large. The presence of many edges between different clusters is not problematic; as long as there is cluster structure, mcl will find it. It is less likely to work well for graphs with clusters (inducing subgraphs) of large diameter, e.g. grid-like graphs derived from Euclidean data. So mcl in its canonical form is certainly not fit for boundary detection or image segmentation. I experimented with a mod- ified mcl and boundary detection in the thesis pointed to below (see REFERENCES). This was fun and not entirely unsuccesful, but not some- thing to be pursued further. mcl likes undirected input graphs best, and it really dislikes graphs with node pairs (i,j) for which an arc going from i to j is present and the counter-arc from j to i is absent. Try to make your input graph undirected. Furthermore, mcl interprets edge weights in graphs as simi- larities. If you are used to working with dissimilarities, you will have to convert those to similarities using some conversion formula. The most important thing is that you feel confident that the similarities are reasonable, i.e. if X is similar to Y with weight 2, and X is similar to Z with weight 200, then this should mean that the similarity of Y (to X) is neglectible compared with the similarity of Z (to X). mcl is probably not suited for clustering tree graphs. This is because mcl works best if there are multiple paths between different nodes in the natural clusters, but in tree graphs there is only one path between any pair of nodes. Trees are too sparse a structure for mcl to work on. mcl may well be suited for clustering lattices. It will depend on the density characteristics of the lattice, and the conditions for success are the same as those for clustering graphs in general: The diameter of the natural clusters should not be too large. NOTE when clustering a lattice, you have to cluster the underlying undirected graph, and not the directed graph that represents the lattice itself. The reason is that one has to allow mcl (or any other cluster algorithm) to 'look back in time', so to speak. Clustering and directionality bite each other (long discussion omitted). mcl has a worst-case time complexity O(N*k^2), where N is the number of nodes in the graph, and k is the maximum number of neighbours tracked during computations. k depends on the -P and -S options. If the -S option is used (which is the default setting) then k equals the value corresponding with this option. Typical values for k are in the range 500..1000. The average case is much better than the worst case though, as cluster structure itself has the effect of helping mcl's pruning schemes, certainly if the diameter of natural clusters is not large. FILES There are currently no resource nor configuration files. The mcl matrix format is described in the mcxio(5) section. ENVIRONMENT MCLXIODIGITS When writing matrices in interchange format, mcl will use this vari- able (if present) as the precision (number of digits) for printing the fractional part of values. MCLXIOVERBOSITY MCL and its sibling applications will usually report about matrix input/output from/to disk. The verbosity level can be regulated via MCLXIOVERBOSITY. These are the levels it can currently be set to. 1 Silent but applications may alter this. 2 Silent and applications can not alter this. 4 Verbose but applications may alter this. 8 Verbose and applications can not alter this (default). MCLXIOFORMAT MCL and its sibling applications will by default output matrices in interchange format rather than binary format (cf. mcxio(5)). The desired format can be controlled via the variable MCLXIOFORMAT. These are the levels it can currently be set to. 1 Interchange format but applications may alter this. 2 Interchange format and applications can not alter this (default). 4 Binary format but applications may alter this. 8 Binary format and applications can not alter this. MCLXICFLAGS If matrices are output in interchange format, by default empty vectors will not be listed. Equivalently (during input time), vectors for which no listing is present are understood to be empty - note that the presence of a vector is established using the domain information found in the header part. It is possible to enforce listing of empty vec- tors by setting bit '1' in the variable MCLXICFLAGS. MCLXIOUNCHECKED MCL and its sibling applications will always check a matrix for con- sistency while it is being read. If this variable is set, the consis- tency check is omitted. For large graphs the speed up can be consider- able. However, if the input graph is not conforming it will likely crash the application that is using it. DIAGNOSTICS If mcl issues a diagnostic error, it will most likely be because the input matrix could not be parsed succesfully. mcl tries to be helpful in describing the kind of parse error. The mcl matrix format is described in the mcxio(5) section. BUGS No known bugs at this time. AUTHOR Stijn van Dongen. HISTORY/CREDITS The MCL algorithm was conceived in spring 1996 by the present author. The first implementation of the MCL algorithm followed that spring and summer. It was written in Perl and proved the viability of the algo- rithm. The implementation described here began its life in autumn 1997. The first versions of the vital matrix library were designed jointly by Stijn van Dongen and Annius Groenink in the period Oktober 1997 - May 1999. The efficient matrix-vector multiplication routine was written by Annius. This routine is without significant changes still one of the cornerstones of this MCL implementation. Since May 1999 all MCL libraries have seen much development and redesign by the present author. Matrix-matrix multiplication has been rewritten several times to take full advantage of the sparseness properties of the stochastic matrices brought forth by the MCL algorithm. This mostly con- cerns the issue of pruning - removal of small elements in a stochastic column in order to keep matrices sparse. Very instructive was that around April 2001 Rob Koopman pointed out that selecting the k largest elements out of a collection of n is best done using a min-heap. This was the key to the second major rewrite (now counting three) of the MCL pruning schemes, resulting in much faster code, generally producing a more accurate computation of the MCL pro- cess. In May 2001 Anton Enright initiated the parallellization of the mcl code and threaded inflation. From this example, Stijn threaded expansion. This was great, as the MCL data structures and operands (normal matrix multiplication and Hadamard multiplication) just beg for parallelliza- tion. Onwards. The January 2003 03-010 release introduced support for sparsely enumerated (i.e. indices need not be sequential) graphs and matrices, the result of a major overhaul of the matrix library and most higher layers. Conceptually, the library now sees matrices as infinite quadrants of which only finite subsections happen to have nonzero entries. The June 2003 03-154 release introduced unix-type pipelines for cluster- ing, including the BLAST parser mcxdeblast and the mclblastline script. The April 2004 04-105 release revived binary format, which has been a first class citizen every since. With the March 2005 05-090 release mcxsubs finally acquired a sane spec- ification syntax. The November 2005 05-314 release brought the ability to stream label input directly into mcl. The subsequent release intro- duced a transformation language shared by various mcl siblings that allows arbitrary progressions of transformations to be applied to either stream values or matrix values. Joost van Baal set up the mcl CVS tree and packaged mcl for Debian GNU/Linux. He completely autotooled the sources, so much so that at first I found it hard to find them back amidst bootstrap, aclocal.m4, depcomp, and other beauties. Jan van der Steen shared his elegant mempool code. Philip Lijnzaad gave useful comments. Philip, Shawn Hoon, Abel Ureta-Vidal, and Martin Mokrejs sent helpful bug reports. Abel Ureta-Vidal and Dinakarpandian Deendayal commented on and con- tributed to mcxdeblast and mcxassemble. Tim Hughes contributed several good bug reports for mcxassemble, mcxde- blast and zoem (a workhorse for clm format). SEE ALSO mclfaq(7) - Frequently Asked Questions. mcxio(5) - a description of the mcl matrix format. There are many more utilities. Consult mclfamily(7) for an overview of and links to all the documentation and the utilities in the mcl family. minimcl is a 200-line perl implementation of mcl. It is shipped in the mcl distribution and can be found online at http://micans.org/mcl. mcl's home at http://micans.org/mcl/. REFERENCES [1] Stijn van Dongen, Graph Clustering by Flow Simulation. PhD thesis, University of Utrecht, May 2000. http://www.library.uu.nl/digiarchief/dip/diss/1895620/inhoud.htm [2] Stijn van Dongen, Graph Clustering Via a Discrete Uncoupling Pro- cess, SIAM Journal on Matrix Analysis and Applications, 30(1):121-141, 2008. http://link.aip.org/link/?SJMAEL/30/121/1 [3] Stijn van Dongen. A cluster algorithm for graphs. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Sci- ence in the Netherlands, Amsterdam, May 2000. http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z [4] Stijn van Dongen. A stochastic uncoupling process for graphs. Tech- nical Report INS-R0011, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000. http://www.cwi.nl/ftp/CWIreports/INS/INS-R0011.ps.Z [5] Stijn van Dongen. Performance criteria for graph clustering and Markov cluster experiments. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Nether- lands, Amsterdam, May 2000. http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z [6] Enright A.J., Van Dongen S., Ouzounis C.A. An efficient algorithm for large-scale detection of protein families, Nucleic Acids Research 30(7):1575-1584 (2002). NOTES This page was generated from ZOEM manual macros, http://micans.org/zoem. Both html and roff pages can be created from the same source without having to bother with all the usual conversion problems, while keeping some level of sophistication in the typesetting. mcl 12-135 14 May 2012 mcl(1) mcl-12-135/doc/mcxmap.10000644000402500021140000001243311754271045011416 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxmap" 1 "14 May 2012" "mcxmap 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxmap \- permute or remap the indices of graphs and matrices\&. .SH SYNOPSIS \fBmcxmap\fP \fB-imx\fP fname (\fIinput\fP) \fB[-o\fP fname (\fIoutput\fP)\fB]\fP \fB[-make-map\fP (\fIoutput map file name\fP)\fB]\fP \fB[-make-mapc\fP (\fIoutput map file name\fP)\fB]\fP \fB[-make-mapr\fP (\fIoutput map file name\fP)\fB]\fP \fB[-cmul\fP a (\fIcoefficient\fP)\fB]\fP \fB[-cshift\fP b (\fItranslate\fP)\fB]\fP \fB[-rmul\fP c (\fIcoefficient\fP)\fB]\fP \fB[-rshift\fP d (\fItranslate\fP)\fB]\fP \fB[-mul\fP e (\fIcoefficient\fP)\fB]\fP \fB[-shift\fP f (\fItranslate\fP)\fB]\fP \fB[-map\fP fname (\fIrow/col map file\fP)\fB]\fP \fB[-rmap\fP fname (\fIrow map file\fP)\fB]\fP \fB[-cmap\fP fname (\fIcolumn map file\fP)\fB]\fP \fB[-mapi\fP fname (\fIrow/col map file (use inverse)\fP)\fB]\fP \fB[-rmapi\fP fname (\fIrow map file (use inverse)\fP)\fB]\fP \fB[-cmapi\fP fname (\fIcolumn map file (use inverse)\fP)\fB]\fP \fB[-tab\fP fname (\fIread (and map) tab file\fP)\fB]\fP .SH DESCRIPTION This utility relabels graphs or matrices\&. Its main use is in applying a \fImap file\fP to a given matrix or graph\&. A map file contains a so called \fImap matrix\fP in mcl format that has some special properties (given further below)\&. The functionality of mcxmap can also be provided by \fBmcx\fP, as a mapped matrix (i\&.e\&. the result of applying a map matrix to another matrix) is simply the usual matrix product of a matrix and a map matrix\&. However, \fBmcx\fP will construct a new matrix and leave the original matrix to be mapped alone\&. When dealing with huge matrices, considerable gains in efficiency memory-wise and time-wise can be achieved by doing the mapping in-place\&. This is what mcxmap does\&. In the future, its functionality may be embedded in \fBmcx\fP with new mcx operators\&. The special properties of a map matrix are .ZJ 1m 1m "\(bu" The column domain and row domain are of the same cardinality\&. .in -2m .ZJ 1m 1m "\(bu" Each column has exactly one entry\&. .in -2m .ZJ 1m 1m "\(bu" Each row domain index occurs in exactly one column\&. .in -2m These properties imply that the matrix can be used as a map from the column domain onto the row domain\&. An example map matrix is found in the \fBEXAMPLES\fP Section\&. .SH OPTIONS .ZI 2m "\fB-o\fP fname (\fIoutput file\fP)" \& .br Output file\&. .in -2m .ZI 2m "\fB-imx\fP fname (\fIinput file\fP)" \& .br Input file\&. .in -2m .ZI 2m "\fB-map\fP fname (\fIrow/col map file)\fP)" \& 'in -2m .ZI 2m "\fB-rmap\fP fname (\fIrow map file\fP)" \& 'in -2m .ZI 2m "\fB-cmap\fP fname (\fIcolumn map file\fP)" \& 'in -2m .ZI 2m "\fB-mapi\fP fname (\fIrow/col map file (use inverse)\fP)" \& 'in -2m .ZI 2m "\fB-rmapi\fP fname (\fIrow map fil (use inverse)\fP)" \& 'in -2m .ZI 2m "\fB-cmapi\fP fname (\fIcolumn map fil (use inverse)\fP)" \& 'in -2m 'in +2m \& .br Different ways to specify map files\&. .in -2m .ZI 2m "\fB-make-map\fP (\fIoutput map file name\fP)" \& 'in -2m .ZI 2m "\fB-make-mapc\fP (\fIoutput map file name\fP)" \& 'in -2m .ZI 2m "\fB-make-mapr\fP (\fIoutput map file name\fP)" \& 'in -2m 'in +2m \& .br Generate a map that maps the specified domain onto the appropriate canonical domain and write the map matrix to file\&. .in -2m .ZI 2m "\fB-cmul\fP a (\fIcoefficient\fP)" \& 'in -2m .ZI 2m "\fB-cshift\fP b (\fItranslate\fP)" \& 'in -2m 'in +2m \& .br These options have affect if neither a column map file nor column canonification is specified\&. If any of the first two options is used, column indices\ \&\fCi\fP are mapped to\ \&\fCa*i+b\fP\&. .in -2m .ZI 2m "\fB-rmul\fP c (\fIcoefficient\fP)" \& 'in -2m .ZI 2m "\fB-rshift\fP d (\fItranslate\fP)" \& 'in -2m 'in +2m \& .br These options have affect if neither a row map file nor row canonification is specified\&. If any of the first two options is used, indices\ \&\fCi\fP are mapped to\ \&\fCc*i+d\fP\&. .in -2m .ZI 2m "\fB-mul\fP e (\fIcoefficient\fP)" \& 'in -2m .ZI 2m "\fB-shift\fP f (\fItranslate\fP)" \& 'in -2m 'in +2m \& .br If a map file is specified for a given domain, neither a map file nor canonification is specified\&. If any of the first two options is used, the indices\ \&\fCi\fP will be mapped to\ \&\fCe*i+f\fP\&. .in -2m .ZI 2m "\fB-tab\fP fname (\fIread (and map) tab file\fP)" \& .br This option requires the \fB-map\fP option\&. \fBmcxmap\fP will output the mapped tab definition\&. .in -2m .SH EXAMPLES The matrix below has two canonical domains which are identical\&. It denotes a map of the canonical domain onto itself, in which node 0 is relabeled to 8, node 1 is relabeled to 5, et cetera\&. .nf \fC (mclheader mcltype matrix dimensions 12x12 ) (mclmatrix begin 0 8 $ 1 5 $ 2 3 $ 3 2 $ 4 4 $ 5 6 $ 6 7 $ 7 9 $ 8 1 $ 9 10 $ 10 11 $ 11 0 $ ) .fi \fR .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmcxio(5)\fP, \fBmcx(1)\fP, \fBmcxsubs(1)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clm.azm0000644000402500021140000001334011667703143011333 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm} {html_title}{The clm manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{clm}{perform various computations on graphs and clusterings} \sec{synopsis}{SYNOPSIS} \verbatim{\:/ \clm [mode-options] [mode-files]} \sec{description}{DESCRIPTION} \par{ \clm implements a variety of computations on graphs and clusterings. The first argument to \clm should be a \it{mode}, which is a string establishing the type of computation to invoke. Each mode \it{mode} is described in the clm\it{mode} manual page. The currently available modes are \clmref{dist}, \clmref{info}, \clmref{meet}, \clmref{mate}, \clmref{close}, \clmref{order}, \clmref{imac}, \clmref{vol}, and \clmref{residue}. The \bf{dist} mode is thus described in the \sibref{clmdist} manual page. } \par{ Invoking \clm without arguments causes it to print out a list of available modes with a short description of the type of command line expected by that mode. } \par{ Invoking \clm with just a mode will print out a longer listing of options available for that particular mode. Modes that are able to function normally without arguments can be invoked by adding the \genarg{--nop} argument. } \par{ Several options are shared between all \clm modes. Note that these options are specified after the \bf{mode}. See \secref{options}. } \par{ The \genopt{--version} option causes \clm to print out version and license information. } \par{ Issuing \it{clm help mode} will cause \clm to look for a manual page describing \it{mode} and display it if found. This requires that the MANPATH environment variable contains the directory in which the MCL-edge manual pages were installed. This will usually be \v{PREFIX/share}, where \v{PREFIX} is the path with which the software was configured. } \sec{options}{OPTIONS} \par{ These are options that pertain to all modes. They should be specified \it{after} the mode argument. } \'begin{itemize}{\mcx_itemopts} \items{ {\defopt{-h}{synopsis}} {\defopt{--help}{synopsis}} } \car{ List available options. } \item{\defopt{--nop}{no-op}} \car{ Not an option. This option has no effect then to increment the argument count. This can be useful for \clm modes which are able to function without any options. Such a mode typically reads from STDIN, writes to STDOUT, and uses default settings. However, simply specifying a mode without options leads \clm to output a list of available options for that mode. This can be averted by using the \genopt{--nop} option. } \item{\defopt{-set}{key=val}{set key-value pair}} \car{ Sets the key\~\bf{key} to value\~\bf{val} in the environment. Some modes allow adjustment of settings in this manner. } \items{ {\defopt{-debug}{}{set debug level/flags}} {\defopt{--debug}{turn default debugging on}} {\defopt{--test}{turn default testing on}} } \car{ The first two turn on debugging, the last is for testing. The effect of these options is otherwise undocumented. } \item{\defopt{--progress}{enable progress reporting}} \car{ This will enable some kind of progress reporting, by writing to STDERR. } \'end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} \done \synoptopt{-lint-k}{}{assimilate small clusters entirely} \synoptopt{-lint-l}{}{try to pry nodes from small clusters} \items{ {\defopt{-lint-k}{}{cluster size assimilation threshold}} {\defopt{-lint-l}{}{cluster size pry threshold}} } \car{ These options will result in postprocessing on the clustering, reallocating nodes that seems to have siphoned the wrong way. The input matrix will be reread for this. } \par{ When applied to networks with inhomogenously distributed edge density characteristics the mcl process will sometimes cause smaller clusters/sparse areas to suck in border nodes which 1) have only few edges to that cluster/area and 2) seem to have been sucked out of a much denser cluster into which they would fit beautifully. This is fully in line with the flow characteristics of mcl but a largely unwanted phenomenon. The postprocessing step was added as a remedy for this problem should it manifest itself. It is based on the efficiency criterion described in \refer{gcbfs} and \refer{pcfgcmce} (there called \it{coverage}). } \par{ With \genopt{-lint-l} a node is tentatively reallocated if this will improve its effiency, and if it is initially in a cluster of size at most \genarg{numl}. After all nodes that are candidate for reallocation have been identified the proposed new clustering is accepted if it increases the total edge weight captured. This procedure is iterated until no further reallocations are possible. The efficiency measure is a conservative criterion in that it does not unduly favour larger clusters over smaller clusters. For example, if a node has 4 neighbours in a cluster of size 8 and it has a further 8 neighbours in a cluster of size 100 the efficiency for the first cluster (relative to that node) will generally be higher than the efficiency for the second cluster. } \par{ With \genopt{-lint-k} clusters up to the given size \genarg{numk} are assimilated by a larger cluster if a suitable candidate is found. This is based on the same criteria as described above, except that a cluster is absorbed in its entirety. } mcl-12-135/doc/mcxconvert.ps0000644000402500021140000003264311754271044012607 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:16 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 1 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE /Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d637820636f6e>20 48 Q -.15<7665>-.4 G 125.955 <72742831292055534552>.15 F 128.455<434f4d4d414e4453206d6378>2.5 F <636f6e>2.5 E -.15<7665>-.4 G<7274283129>.15 E/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d637820636f6e>100 96 Q -.15<7665>-.4 G<727420ad20636f6e>.15 E -.15<7665>-.4 G <7274206265747765656e206d63782073746f72616765207479706573>.15 E F1 <53594e4f50534953>20 112.8 Q/F2 10/Times-Bold@0 SF<6d637820636f6e>100 124.8 Q -.1<7665>-.4 G<7274>.1 E F0 <3c6d61747269782d8c6c652d696e3e203c6d61747269782d8c6c652d6f75743e>2.5 E F2<6d637820636f6e>100 136.8 Q -.1<7665>-.4 G<7274>.1 E F0<5b2d2d77726974 652d62696e6172795d202d2d636f6e652d746f2d737461636b203c6361742d8c6c652d69 6e3e203c6361742d8c6c652d6f75743e>2.5 E F2<6d637820636f6e>100 148.8 Q -.1 <7665>-.4 G<7274>.1 E F0<5b2d2d77726974652d62696e6172795d202d2d73746163 6b2d746f2d636f6e65203c6361742d8c6c652d696e3e203c6361742d8c6c652d6f75743e> 2.5 E<6d6378636f6e>100 172.8 Q -.15<7665>-.4 G 1.689 <7274206973206e6f7420696e2061637475616c2066>.15 F 1.688<6163742061207072 6f6772616d2e2054686973206d616e75616c207061676520646f63756d656e7473207468 652062656861>-.1 F 1.688<76696f757220616e64>-.2 F .958 <6f7074696f6e73206f6620746865206d63782070726f6772616d207768656e20696e> 100 184.8 R -.2<766f>-.4 G -.1<6b65>.2 G 3.458<6469>.1 G 3.458<6e6d> -3.458 G<6f6465>-3.458 E/F3 10/Times-Italic@0 SF<636f6e>3.458 E <76657274>-.4 E F0 3.458<2e54>C .958<6865206f7074696f6e73>-3.458 F F2 <2d68>3.458 E F0<2c>A F2<2d2d617072>3.458 E<6f706f73>-.18 E F0<2c>A F2 <2d2d76>3.458 E<6572>-.1 E<2d>-.37 E<73696f6e>100 196.8 Q F0<2c>A F2 <2d736574>3.201 E F0<2c>A F2<2d2d6e6f70>3.201 E F0<2c>A F2<2d7072>3.201 E<6f6772>-.18 E<657373>-.18 E F3<3c6e756d3e>2.5 E F0 .701 <6172652061636365737369626c6520696e20616c6c>3.201 F F2<6d6378>3.201 E F0 .701<6d6f6465732e20546865>3.201 F 3.2<7961>-.15 G .7 <72652064657363726962656420696e20746865>-3.2 F F2<6d6378>100 208.8 Q F0 <6d616e75616c20706167652e>2.5 E F2 1.687<6d637820636f6e>100 232.8 R -.1 <7665>-.4 G 1.687<7274205b2d2d636f6e652d746f2d737461636b>.1 F F0<28> 4.187 E F3<7472>A 1.687 <616e73666f726d20636f6e65208c6c6520746f2073746163>-.15 F 4.187<6b8c>-.2 G<6c65>-4.187 E F0<29>A F2 4.187<5d5b>C<2d2d737461636b2d746f2d636f6e65> -4.187 E F0<28>4.187 E F3<7472>A<616e73666f726d>-.15 E<73746163>100 244.8 Q 2.959<6b8c>-.2 G .459<6c6520746f20636f6e65208c6c65>-2.959 F F0 <29>A F2 2.959<5d5b>C<2d2d77726974652d62696e617279>-2.959 E F0<28>2.959 E F3 .459<6f7574707574206e61746976652062696e61727920666f726d6174>B F0 <29>A F2 2.958<5d5b>C<2d2d636174>-2.958 E F0<28>2.958 E F3 -.37<7265>C .458<616420616e6420777269746520636174>.37 F<666f726d6174>100 256.8 Q F0 <29>A F2 2.5<5d5b>C<2d6361742d6d6178>-2.5 E F0<3c6e756d3e2028>2.5 E F3 <6c696d6974207468652073746163>A 2.5<6b63>-.2 G<6f6e>-2.5 E<766572>-.4 E <73696f6e20746f203c6e756d3e206d61747269636573>-.1 E F0<29>A F2<5d>A F0 1.227<496e20746865207477>100 280.8 R<6f2d6172>-.1 E 1.227 <67756d656e7420696e>-.18 F -.2<766f>-.4 G 1.227 <636174696f6e20776974686f7574206164646974696f6e616c206172>.2 F <67756d656e74732c>-.18 E F2 1.227<6d637820636f6e>3.727 F -.1<7665>-.4 G <7274>.1 E F0<636f6e>3.728 E -.15<7665>-.4 G 1.228 <7274732066726f6d20746865>.15 F .027<666f726d617420666f756e6420696e2074 6865208c727374208c6c6520746f20746865206f7468657220666f726d61742c20692e65 2e>100 292.8 R .026<66726f6d206e617469>5.026 F .326 -.15<76652069>-.25 H .026<6e7465726368616e676520746f206e617469>.15 F .326 -.15<76652062>-.25 H .026<696e61727920666f72>.15 F<2d>-.2 E 1.291 <6d6174206f7220746865206f746865722077>100 304.8 R 1.291 <61792061726f756e642e205768656e207175657279696e67207769746820746865>-.1 F F2<2d71>3.791 E F0 1.292<6f7074696f6e2c206d63787b636f6e>3.792 F -.15 <7665>-.4 G 1.292<72747d2077696c6c206f75747075742061>.15 F 1.457<6f6e65 2d6c696e652073796e6f707369732064657363726962696e6720746865206d6174726978 20696e20746865206172>100 316.8 R 1.457<67756d656e742e20546865>-.18 F F2 <2d2d636f6e652d746f2d737461636b>3.957 E F0<616e64>3.957 E F2 <2d2d737461636b2d746f2d>3.957 E<636f6e65>100 328.8 Q F0 <6f7074696f6e7320636f6e>2.5 E -.15<7665>-.4 G <7274206265747765656e20746865207477>.15 E 2.5<6f74>-.1 G <79706573206f6620636f6e636174656e61746564206f75747075742070726f>-2.5 E <7669646564206279>-.15 E F2<6d636c636d>2.5 E F0<2e>A F1 <4445534352495054494f4e>20 345.6 Q F0<546865>100 357.6 Q F2<6d636c>3.045 E F0 .545<6c6962726172696573206d616b>3.045 F 3.045<6565>-.1 G <7874656e7369>-3.195 E .846 -.15<76652075>-.25 H .546<7365206f66206d6174 72696365732e204d6174726963657320617265207573656420746f20656e636f64652067 72617068732c206d61747269636573>.15 F .115 <616e6420636c7573746572696e67732e>100 369.6 R<546865>5.115 E 2.615<7963> -.15 G .115<616e2062652073746f7265642065697468657220696e20696e7465726368 616e6765206f7220696e2062696e61727920666f726d61742e20546865206c6174746572 20697320736f6d652d>-2.615 F 1.221<77686174206d6f7265206566>100 381.6 R 1.221<8c6369656e7420696e2073746f7261676520616e64206d7563682066>-.25 F 1.221<617374657220696e20626f74682072656164696e6720616e642077726974696e67 2c2062>-.1 F 1.222<75742074686520646566>-.2 F 1.222<61756c74206973>-.1 F <696e7465726368616e676520666f726d61742e>100 393.6 Q<546865>100 417.6 Q F2<6d636c>3.121 E F0 .621<696e70757420726f7574696e6573207265636f676e697a 65207468652074797065206f662073746f7261676520746865>3.121 F 3.121<7961> -.15 G .62<7265206465616c696e6720776974682e20496620796f752077>-3.121 F .62<616e7420746f20636f6e2d>-.1 F -.15<7665>100 429.6 S .908<72742061206d 617472697820746f20746865206f746865722073746f7261676520747970652c2073696d 706c79207370656369667920746865208c6c65206e616d65206f6620746865206d617472 697820796f752077>.15 F .909<616e7420746f>-.1 F<636f6e>100 441.6 Q -.15 <7665>-.4 G<72742e>.15 E F2 .243<6d637820636f6e>5.243 F -.1<7665>-.4 G <7274>.1 E F0 .242<77696c6c207265636f676e697a652069747320747970652c2061 6e6420777269746520746865206f74686572207479706520746f20746865208c6c652073 706563698c656420617320746865>2.743 F<7365636f6e64206172>100 453.6 Q <67756d656e742e>-.18 E F1<4f5054494f4e53>20 470.4 Q F2 <2d2d636f6e652d746f2d737461636b>100 482.4 Q F0<28>2.5 E F3<7472>A <616e73666f726d20636f6e65208c6c6520746f2073746163>-.15 E 2.5<6b8c>-.2 G <6c65>-2.5 E F0<29>A .233 <54686973206f7074696f6e207265717569726573207477>120 494.4 R 2.733<6f74> -.1 G .234<7261696c696e67206f7074696f6e732c20746865206e616d6573206f6620 7265737065637469>-2.733 F -.15<7665>-.25 G .234 <6c792074686520736f7572636520636f6e65208c6c6520616e64>.15 F <74686520746172>120 506.4 Q<67657420737461636b208c6c652e>-.18 E F2 <2d2d737461636b2d746f2d636f6e65>100 530.4 Q F0<28>2.5 E F3<7472>A <616e73666f726d2073746163>-.15 E 2.5<6b8c>-.2 G <6c6520746f20636f6e65208c6c65>-2.5 E F0<29>A .115 <54686973206f7074696f6e207265717569726573207477>120 542.4 R 2.615<6f74> -.1 G .114<7261696c696e67206f7074696f6e732c20746865206e616d6573206f6620 7265737065637469>-2.615 F -.15<7665>-.25 G .114 <6c792074686520736f7572636520737461636b208c6c6520616e64>.15 F <74686520746172>120 554.4 Q<67657420636f6e65208c6c652e>-.18 E F2 <2d2d636174>100 578.4 Q F0<28>2.5 E F3 -.37<7265>C <616420616e642077726974652063617420666f726d6174>.37 E F0<29>A F2 <2d6361742d6d6178>100 602.4 Q F0<3c6e756d3e2028>2.5 E F3 <6c696d6974207468652073746163>A 2.5<6b63>-.2 G<6f6e>-2.5 E<766572>-.4 E <73696f6e20746f203c6e756d3e206d61747269636573>-.1 E F0<29>A F2 <2d2d77726974652d62696e617279>100 626.4 Q F0<28>2.5 E F3 <6f7574707574206e61746976652062696e61727920666f726d6174>A F0<29>A 1.272< 54686973206f7074696f6e206973206f6e6c792075736566756c20776974682065697468 6572206f6620746865206f7074696f6e73>120 638.4 R F2 <2d2d636f6e652d746f2d737461636b>3.773 E F0<2c>A F2 <2d2d737461636b2d746f2d636f6e65>3.773 E F0 3.773<2c6f>C<72>-3.773 E F2 <2d2d636174>120 650.4 Q F0<2e>A F1 -.548<4155>20 667.2 S<54484f52>.548 E F0<5374696a6e2076>100 679.2 Q<616e20446f6e67656e2e>-.25 E F1 <53454520414c534f>20 696 Q F2<6d6378696f283529>100 708 Q F0 2.667<2c61>C <6e64>-2.667 E F2<6d636c66616d696c79283729>2.667 E F0 .167 <666f7220616e206f>2.667 F -.15<7665>-.15 G<72766965>.15 E 2.667<776f> -.25 G 2.667<6661>-2.667 G .166<6c6c2074686520646f63756d656e746174696f6e 20616e6420746865207574696c697469657320696e20746865206d636c>-2.667 F -.1 <6661>100 720 S<6d696c792e>.1 E<6d637820636f6e>20 768 Q -.15<7665>-.4 G <72742031322d313335>.15 E<3134204d61792032303132>127.345 E<31>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxctty.10000644000402500021140000001122711754271044011623 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcx ctty" 1 "14 May 2012" "mcx ctty 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcx ctty \- compute betweenness centrality for network nodes .SH SYNOPSIS \fBmcx ctty\fP [options] [matrix-file] mcxctty is not in actual fact a program\&. This manual page documents the behaviour and options of the mcx program when invoked in mode \fIctty\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP, \fB-progress\fP\ \&\fI\fP are accessible in all \fBmcx\fP modes\&. They are described in the \fBmcx\fP manual page\&. \fBmcx ctty\fP \fB[-abc\fP (\fIspecify label input\fP)\fB]\fP \fB[-imx\fP (\fIspecify matrix input\fP)\fB]\fP \fB[-extent\fP (\fIonly consider paths of length at most \fP)\fB]\fP \fB[-o\fP (\fIoutput file name\fP)\fB]\fP \fB[-tab\fP (\fIuse tab file\fP)\fB]\fP \fB[-t\fP (\fIuse threads\fP)\fB]\fP \fB[-J\fP (\fIa total of jobs are used\fP)\fB]\fP \fB[-j\fP (\fIthis job has index \fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION \fBmcx ctty\fP computes betweenness centrality for all nodes in a graph, using the between centrality update algorithm from [1]\&. The input graph/matrix, if specified with the \fB-imx\fP option, has to be in mcl matrix/graph format\&. You can use label input instead by using the \fB-abc\fP option\&. Refer to \fBmcxio(5)\fP for a description of these two input formats\&. By default \fBmcx diameter\fP reads from STDIN \fIand expects matrix format\fP\&. To specify label input from STDIN use \fB-abc\fP\ \&\fB-\fP\&. .SH OPTIONS .ZI 2m "\fB-abc\fP (\fIlabel input\fP)" \& .br The file name for input that is in label format\&. .in -2m .ZI 2m "\fB-imx\fP (\fIinput matrix\fP)" \& .br The file name for input\&. STDIN is assumed if not specified\&. .in -2m .ZI 2m "\fB-o\fP (\fIoutput file name\fP)" \& .br The name of the file to write output to\&. .in -2m .ZI 2m "\fB-extent\fP (\fIonly consider paths of length at most \fP)" \& .br This option will lead to different results\&. Results will still be informative however, being representative for the local context in which nodes reside\&. It does probably not make sense to use values smaller than four or five\&. .in -2m .ZI 2m "\fB-tab\fP (\fIuse tab file\fP)" \& .br This option causes the output to be printed with the labels found in the tab file\&. With \fB-abc\fP this option will, additionally, construct a graph only on the labels found in the tab file\&. If this option is used in conjunction with \fB-imx\fP the tab domain and the matrix domain are required to be identical\&. .in -2m .ZI 2m "\fB-t\fP (\fIuse threads\fP)" \& 'in -2m .ZI 2m "\fB-J\fP (\fIa total of jobs are used\fP)" \& 'in -2m .ZI 2m "\fB-j\fP (\fIthis job has index \fP)" \& 'in -2m 'in +2m \& .br Computing centrality scores in a graph is time-intensive\&. If you have multiple CPUs available consider using as many threads\&. Additionally it is possible to spread the computation over multiple jobs/machines\&. Conceptually, each job takes a number of threads from the total thread pool\&. If job control is used (the \fB-J\fP option is used) then the number of jobs should not exceed the number of threads\&. The total number of threads divided by the total number of jobs defines the number of threads that will be used by the current job\&. Additionally, the number of threads specified signifies the total added amount of all threads across all machines and \fImust\fP be the same for all jobs\&. This number is used by each job to infer its own set of tasks\&. The following set of options, if given to as many commands, defines three jobs, each running four threads\&. .di ZV .in 0 .nf \fC -t 12 -G 3 -g 0 -t 12 -G 3 -g 1 -t 12 -G 3 -g 2 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .in -2m .SH REFERENCES [1] Ulrik Brandes, \fIA Faster Algorithm for Betweenness Centrality\fP\&. Journal of Mathematical Sociology 25(2): 163-177, (2001)\&. http://citeseerx\&.ist\&.psu\&.edu/viewdoc/summary?doi=10\&.1\&.1\&.11\&.2024 .SH SEE ALSO \fBmcxio(5)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcxrand.ps0000644000402500021140000007042411754271045012053 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:17 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Courier %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 3 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Courier %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Courier@0 ENC0/Courier RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.125<6d637872616e642831292055534552>20 48 R 142.625<434f4d4d414e4453206d637872616e64283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0 <6d637872616e6420ad2072616e646f6d2073687566>100 96 Q <8d696e672c2072656d6f>-.25 E -.25<7661>-.15 G<6c2c206164646974696f6e2c20 616e6420706572747572626174696f6e206f66206564676573206f6620677261706873> .25 E F1<53594e4f50534953>20 112.8 Q/F2 10/Times-Bold@0 SF <6d637872616e64>100 124.8 Q F0<5b6f7074696f6e735d>2.5 E/F3 10/Courier@0 SF <6d637872616e64202d67656e204b202d616464204e202d6e65772d672d6d65616e2066> 100 148.8 Q 6<2372>24 G <616e646f6d206772617068206f6e204b206e6f6465732c204e206564676573>-6 E<6d 637872616e64202d696d78203c6e616d653e202d72656d6f7665204e202d616464204e> 100 160.8 Q 6<2372>18 G<656d6f7665207468656e20616464206564676573>-6 E <6d637872616e64202d696d78203c6e616d653e202d73687566666c65204e>100 172.8 Q 6<2373>54 G<687566666c65204e2065646765207061697273>-6 E <6d637872616e64202d696d78203c6e616d653e202d6e6f6973652d7261646975732066> 100 184.8 Q 6<2361>24 G<6464206e6f69736520746f206164642077656967687473> -6 E F0<6d637872616e64202d7061204e2f6d202320707265666572656e7469616c2061 74746163686d656e742067656e65726174696f6e>100 208.8 Q F2 1.421 <6d637872616e64205b2d696d78>100 232.8 R F0 1.421<3c666e616d653e2028> 3.921 F/F4 10/Times-Italic@0 SF 1.421<696e707574206d6174726978>B F0<29>A F2 3.921<5d5b>C<2d6f>-3.921 E F0 1.421<3c666e616d653e2028>3.921 F F4 1.421<6f7574707574206d617472697820746f203c666e616d653e>B F0<29>A F2 3.92 <5d5b>C<2d2d77726974652d>-3.92 E<62696e617279>100 244.8 Q F0<28>4.19 E F4 1.69<7772697465206f757470757420696e2062696e61727920666f726d6174>B F0 <29>A F2 4.19<5d5b>C<2d67656e>-4.19 E F0 1.69<3c6e756d3e2028>4.19 F F4 -.1<6765>C<6e6572>.1 E 1.69<617465206e65>-.15 F 4.19<7767>-.15 G -.15 <7261>-4.19 G<7068>.15 E F0<29>A F2 4.19<5d5b>C<2d7061>-4.19 E F0 <3c4e3e2f3c6d3e>4.19 E<28>100 256.8 Q F4<7072>A<65666572>-.37 E .202 <656e7469616c206174746163>-.37 F<686d656e74>-.15 E F0<29>A F2 2.702 <5d5b>C<2d72>-2.702 E<656d6f>-.18 E -.1<7665>-.1 G F0 .202 <3c6e756d3e2028>2.802 F F4 -.37<7265>C<6d6f>.37 E .202 <7665203c6e756d3e20656467>-.1 F<6573>-.1 E F0<29>A F2 2.702<5d5b>C <2d616464>-2.702 E F0 .202<3c6e756d3e2028>2.702 F F4 .202 <616464203c6e756d3e>B<656467>100 268.8 Q 2.864 <6573206e6f7420796574207072>-.1 F<6573656e74>-.37 E F0<29>A F2 5.364 <5d5b>C<2d736875668d65>-5.364 E F0 2.865<3c6e756d3e2028>5.364 F F4 <73687566>A 2.865<8d6520656467>-.18 F 5.365<6570>-.1 G 2.865 <616972203c6e756d3e2074696d6573>-5.365 F F0<29>A F2 5.365<5d5b>C <2d6e6f6973652d726164697573>-5.365 E F0 1.071<3c6e756d3e2028>100 280.8 R F4 1.071<6d6178696d756d20737072>B 1.071 <65616420746f20616464206e6f6973652077697468>-.37 F F0<29>A F2 3.571 <5d5b>C<2d6e6f6973652d736465>-3.571 E<76>-.15 E F0 1.071<3c6e756d3e2028> 3.571 F F4 1.071<6e6f697365207374616e646172>B 3.57<6464>-.37 G -.15 <6576>-3.57 G<696174696f6e>.15 E F0<29>A F2<5d>A <5b2d6e6f6973652d72616e6765>100 292.8 Q F0 2.083<3c6e756d3e2028>4.583 F F4 2.083<6e6f6973652072>B<616e67>-.15 E 4.583<6566>-.1 G<6163746f72> -4.583 E F0<29>A F2 4.583<5d5b>C<2d656467652d6d696e>-4.583 E F0 2.083 <3c6e756d3e2028>4.583 F F4 2.083<6162736f6c75746520656467>B 4.583<6577> -.1 G 2.083<6569676874206d696e692d>-4.583 F<6d756d>100 304.8 Q F0<29>A F2 3.228<5d5b>C<2d656467652d6d6178>-3.228 E F0 .728<3c6e756d3e2028>3.228 F F4 .728<6162736f6c75746520656467>B 3.228<6577>-.1 G .728 <6569676874206d6178696d756d>-3.228 F F0<29>A F2 3.228<5d5b>C <2d6e65772d672d6d65616e>-3.228 E F0 .728<3c6e756d3e2028>3.228 F F4 .728 <6d65616e20666f72>B<6e65>100 316.8 Q 3.794<7765>-.15 G<6467>-3.794 E 1.294<65732028476175737369616e29>-.1 F F0<29>A F2 3.794<5d5b>C <2d6e65772d672d736465>-3.794 E<76>-.15 E F0 1.294<3c6e756d3e2028>3.794 F F4<7374616e646172>A 3.794<6464>-.37 G -.15<6576>-3.794 G 1.294 <696174696f6e20666f72206e65>.15 F 3.794<7765>-.15 G<6467>-3.794 E 1.294 <65732028476175737369616e29>-.1 F F0<29>A F2<5d>A <5b2d6e65772d672d726164697573>100 328.8 Q F0 2.438<3c6e756d3e2028>4.938 F F4 2.438<6d6178696d756d20737072>B 2.438<65616420666f72206e65>-.37 F 4.938<7765>-.15 G<6467>-4.938 E 2.438<65732028476175737369616e29>-.1 F F0<29>A F2 4.937<5d5b>C<2d6e65772d672d6d696e>-4.937 E F0<3c6e756d3e> 4.937 E<28>100 340.8 Q F4 .722 <6c6f77657220626f756e642073656c656374696f6e2028476175737369616e29>B F0 <29>A F2 3.222<5d5b>C<2d6e65772d672d6d6178>-3.222 E F0 .722 <3c6e756d3e2028>3.222 F F4 .723 <757070657220626f756e642073656c656374696f6e2028476175737369616e29>B F0 <29>A F2<5d>A<5b2d736b>100 352.8 Q<6577>-.1 E F0 .113<3c6e756d3e2028> 2.613 F F4<736b>A .413 -.15<65772074>-.1 H<6f776172>.15 E .112 <6473206d696e206f72206d6178>-.37 F F0<29>A F2 2.612<5d5b>C<2d68>-2.612 E F0<28>2.612 E F4 .112<7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2 2.612<5d5b>C<2d2d617072>-2.612 E<6f706f73>-.18 E F0<28>2.612 E F4 .112<7072696e742073796e6f707369732c>B -.2<6578>100 364.8 S<6974>.2 E F0<29>A F2 2.5<5d5b>C<2d2d76>-2.5 E<657273696f6e>-.1 E F0<28>2.5 E F4 <7072696e7420766572>A<73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F2<5d>A F1<4445534352495054494f4e>20 381.6 Q F0 .616<54686973207574696c69747920 6973206120726563656e74206164646974696f6e20746f20746865206d636c2073756974 6520616e642074686520736368656d65732065>100 393.6 R .616 <78706c61696e65642062656c6f>-.15 F 3.116<7777>-.25 G .616 <696c6c206c696b>-3.116 F .616<656c79206265>-.1 F -2.2 -.25<6576206f>100 405.6 T<6c76>.25 E<65642c2073696d706c698c65642c20616e642065>-.15 E <7874656e6465642077697468206675747572652072656c65617365732e>-.15 E <546865>100 429.6 Q F2<2d2d736875668d65>3.416 E F0<2c>A F2<2d67656e> 3.416 E F0<616e64>3.416 E F2<2d7061>3.416 E F0 .915<6f7074696f6e73206361 6e206265206465656d656e6420737461626c6520616e6420726f62>3.416 F .915 <7573742e20546865206f7074696f6e732074686174206465746572>-.2 F<2d>-.2 E< 6d696e6520656467652077656967687420706572747572626174696f6e20616e64206765 6e65726174696f6e20617265206c696b>100 441.6 Q <656c7920746f206265207375626a65637420746f207265>-.1 E <766973696f6e20696e20746865206675747572652e>-.25 E .461<54686520696e7075 742067726170682f6d61747269782c2069662073706563698c6564207769746820746865> 100 465.6 R F2<2d696d78>2.961 E F0 .462<6f7074696f6e2c2068617320746f2062 6520696e206d636c206d61747269782f677261706820666f726d61742e>2.961 F -1.1 <596f>100 477.6 S 2.5<7563>1.1 G<616e20757365206c6162656c20696e70757420 696e73746561642062792070726570726f63657373696e6720746865206c6162656c2069 6e7075742077697468>-2.5 E F2<6d63786c6f6164283129>2.5 E F0 2.5<2c69>C <2e652e>-2.5 E F3<6d63786c6f6164202d616263203c6c6162656c2d66696c653e207c 206d637872616e64205b6f7074696f6e735d>118 501.6 Q F0 .311 <526566657220746f>100 525.6 R F2<6d6378696f283529>2.811 E F0 .311 <666f722061206465736372697074696f6e206f66207468657365207477>2.811 F 2.811<6f69>-.1 G .311<6e70757420666f726d6174732e>-2.811 F .31 <427920646566>5.31 F<61756c74>-.1 E F2<6d637872616e64>2.81 E F0 .31 <72656164732066726f6d>2.81 F <535444494e2e204368616e67652074686973207769746820746865>100 537.6 Q F2 <2d696d78>2.5 E F0<6f7074696f6e2e>2.5 E F2<6d637872616e64>100 561.6 Q F0 1.342<63616e2072616e646f6d6c792072656d6f>3.842 F 1.642 -.15<76652061> -.15 H 1.342 <6e642061646420656467657320746f20612067726170682c206f72206164642067>.15 F 1.343<6175737369616e206e6f69736520746f207468652065646765>-.05 F 1.07< 77656967687473206f6620612067726170682e2049742063616e20616c736f2073687566> 100 573.6 R 1.069<8d652065646765207061697273207768696c652070726573657276 696e6720746865206465>-.25 F 1.069 <677265652073657175656e6365206f6620746865>-.15 F 4.858 <67726170682e20496e>100 585.6 R F4 -.37<7265>4.858 G<6d6f>.37 E 2.358 <76616c206d6f6465>-.1 F F0<28>4.858 E F2<2d72>A<656d6f>-.18 E -.1<7665> -.1 G F4<3c6e756d3e>2.6 E F0 4.858<2961>C 2.358<6e6420696e>-4.858 F F4 2.358<6164646974696f6e206d6f6465>4.858 F F0<28>4.858 E F2<2d616464>A F4 <3c6e756d3e>2.5 E F0<29>A F2<6d637872616e64>4.858 E F0 1.279 <656e666f72636573206172632073796d6d65747279206279206f6e6c792077>100 597.6 R 1.279<6f726b696e672077697468206564676573>-.1 F F4<7728692c6a29> 3.779 E F0<7768657265>3.779 E F4 3.778<693c6a>3.779 G F0 1.278 <616e642073796d6d657472696679696e6720746865>B <726573756c7420616e6420616464696e6720616e>100 609.6 Q 2.5<796c>-.15 G<6f 6f7073207468617420776572652070726573656e7420696e2074686520696e7075742067 72617068206a757374206265666f726520746865206f75747075742073746167652e> -2.5 E<496e>100 633.6 Q F4<706572747572626174696f6e206d6f6465>2.5 E F0 <28>2.5 E F2<2d6e6f6973652d726164697573>A F0 2.5<2c77>C<697468206e6f206f 74686572206d6f64652073706563698c6564292074686520696e7075742063616e206265 20616e>-2.5 E 2.5<7967>-.15 G<726170682e>-2.5 E F4<53687566>100 657.6 Q .657<8d65206d6f6465>-.18 F F0<28>3.157 E F2<2d736875668d65>A F4 <3c6e756d3e>2.5 E F0 3.157<2972>C .657 <6571756972657320616e20756e64697265637465642067726170682062>-3.157 F .657<75742077696c6c206f6e6c792066>-.2 F .657 <61696c207768656e206974207069636b7320616e>-.1 F .137 <61726320666f72207768696368207468652061726320696e20746865207265>100 669.6 R -.15<7665>-.25 G .137<72736520646972656374696f6e206973206e6f7420 70726573656e742e2054686973206d65616e73206974206d6179206f72206d6179206e6f 742066>.15 F .137<61696c206f6e>-.1 F 2.026<646972656374656420696e707574 20646570656e64696e67206f6e207468652072616e646f6d2063686f696365732e204974 20646f6573206e6f7420636865636b20657175616c697479206f6620746865207477>100 681.6 R 4.526<6f61>-.1 G<7263>-4.526 E<7765696768747320616e642072616e64 6f6d6c79207069636b73206f6e6520746f20726570726573656e74207468652065646765 207765696768742e>100 693.6 Q .011<456467652072656d6f>100 717.6 R -.25 <7661>-.15 G .011<6c2c2065646765206372656174696f6e2c20616e64206564676520 706572747572626174696f6e20617265206170706c69656420696e2074686973206f7264 657220696620626f7468206172652073706563698c65642e>.25 F <456467652073687566>100 729.6 Q<8d696e672070726573656e746c792063616e6e6f 7420626520636f6d62696e65642077697468206f6e65206f662074686520707265>-.25 E<76696f7573206d6f6465732e>-.25 E<6d637872616e642031322d313335>20 768 Q <3134204d61792032303132>141.515 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.125<6d637872616e642831292055534552>20 48 R 142.625<434f4d4d414e4453206d637872616e64283129>2.5 F 3.428<4172>100 84 S .928<616e646f6d2067726170682063616e2062652067656e6572617465642077697468> -3.428 F/F1 10/Times-Bold@0 SF<2d67656e>3.428 E/F2 10/Times-Italic@0 SF <6b>2.5 E F0 3.428<2c77>C .928<686963682073706563698c657320746865206e75 6d626572206f66206e6f64657320746865206772617068>-3.428 F .688 <73686f756c64206861>100 96 R -.15<7665>-.2 G 3.187<2e49>.15 G 3.187 <7469>-3.187 G 3.187<7365>-3.187 G<717569>-3.187 E -.25<7661>-.25 G .687 <6c656e74207769746820706173696e672028746865208c6c65206e616d65206f662920 616e20656d707479206772617068206f66207468652073616d652064696d656e2d>.25 F <73696f6e7320617320746865206172>100 108 Q<67756d656e7420746f>-.18 E F1 <2d696d78>2.5 E F0<2e>A 1.204<5768656e20616464696e672028692e652e20637265 6174696e67292065646765732c2074686520646566>100 132 R 1.204 <61756c7420697320746f207573652074686520756e69666f726d2064697374726962> -.1 F 1.204<7574696f6e20666f72206e65>-.2 F 3.704<7765>-.25 G<646765> -3.704 E 1.206 <776569676874732072616e67696e6720696e20736f6d6520696e74657276>100 144 R 3.706<616c2e20546865>-.25 F<646566>3.706 E 1.206<61756c7420696e74657276> -.1 F 1.206<616c206973205b302c315d20616e642063616e206265206d6f64698c6564 207573696e6720746865>-.25 F F1<2d656467652d6d696e>100 156 Q F2<6d696e> 2.5 E F0<616e64>5.603 E F1<2d656467652d6d6178>5.603 E F2<6d6178>2.5 E F0 5.603<6f7074696f6e732e2041>5.603 F 3.103 <476175737369616e2065646765207765696768742064697374726962>5.603 F 3.103 <7574696f6e2063616e206265>-.2 F .819 <6f627461696e65642062792073706563696679696e67>100 168 R F1 <2d6e65772d672d6d65616e>3.319 E F2<6e756d>2.5 E F0 3.319<2e54>C .819 <6865207374616e64617264206465>-3.319 F .818 <76696174696f6e20697320627920646566>-.25 F .818 <61756c7420312e3020616e642063616e206265>-.1 F 1.83 <616c74657265642077697468>100 180 R F1<2d6e65772d672d736465>4.331 E<76> -.15 E F2<6e756d>2.5 E F0 6.831<2e43>C 1.831<757272656e746c792074686520 656467652077656967746873206172652067656e6572617465642077697468696e207468 6520696e74657276>-6.831 F<616c>-.25 E<5b>100 192 Q F2<6d65616e2d72>A <6164697573>-.15 E F0<2c>A F2<6d65616e2b72>4.302 E<6164697573>-.15 E F0 4.302<5d77>C<68657265>-4.302 E F2 -.15<7261>4.302 G<64697573>.15 E F0 1.802<69732073706563698c65642077697468>4.302 F F1 <2d6e65772d672d726164697573>4.302 E F0 4.302<2e54>C<6865>-4.302 E 4.302 <7961>-.15 G 1.802<72652066757274686572>-4.302 F 1.391 <73656c656374656420746f206c69652077697468696e2074686520696e74657276>100 204 R<616c>-.25 E F2<5b4c2c525d>3.891 E F0 1.392 <696620616e64206f6e6c79206966>3.891 F F1<2d6e65772d672d6d696e>3.892 E F2 <4c>2.5 E F0<616e64>3.892 E F1<2d6e65772d672d6d6178>3.892 E F2<52>2.5 E F0<6861>3.892 E -.15<7665>-.2 G<6265656e2073706563698c65642e>100 216 Q -.15<466f>100 240 S 3.773<7262>.15 G 1.273<6f746820756e69666f726d20616e 6420476175737369616e2065646765206372656174696f6e207468652065646765207765 69676874732063616e20626520736b>-3.773 F -.25<6577>-.1 G 1.272 <656420746f>.25 F -.1<7761>-.25 G 1.272<72647320656974686572>.1 F 1.226 <73696465206f66207468652064697374726962>100 252 R 1.226 <7574696f6e2077697468>-.2 F F1<2d736b>3.726 E<6577>-.1 E F2<63>2.5 E F0 3.726<2e53>C -.1<6b65>-3.726 G 1.226<77696e67206973206170706c6965642062 79206d617070696e67207468652065646765207765696768747320746f20746865>-.15 F<696e74657276>100 264 Q 1.006 <616c205b302c315d2c206170706c79696e67207468652066756e6374696f6e>-.25 F F2<785e63>3.506 E F0 3.505<2c61>C 1.005 <6e642072656d617070696e672074686520726573756c74696e67206e756d6265722e> -3.505 F -.15<466f>6.005 G 3.505<7276>.15 G<616c756573>-3.755 E F2 <633c31>3.505 E F0 1.412<7468697320736b>100 276 R -.25<6577>-.1 G 3.912 <7374>.25 G 1.412<68652065646765207765696768747320746f>-3.912 F -.1 <7761>-.25 G 1.412 <7264732074686520726967687420626f756e6420616e6420666f722076>.1 F <616c756573>-.25 E F2<633e31>3.913 E F0 1.413<7468697320736b>3.913 F -.25<6577>-.1 G 3.913<7374>.25 G 1.413<68652065646765>-3.913 F .028 <7765696768747320746f>100 288 R -.1<7761>-.25 G .027 <72647320746865206c65667420626f756e642e>.1 F .027<5468697320697320612072 617468657220637275646520617070726f61636820746861742077696c6c206c696b> 5.027 F .027<656c79206265206368616e67656420696e20746865>-.1 F <6675747572652e>100 300 Q .259<4564676520776569676874732063616e20626520 7065727475726265642062792073706563696679696e67>100 324 R F1 <2d6e6f6973652d726164697573>2.759 E F2 -.15<7261>2.5 G<64697573>.15 E F0 5.259<2e54>C .259<686973207365747320746865206d6178696d756d20706572> -5.259 F<2d>-.2 E .68<747572626174696f6e20616c6c6f>100 336 R .68<776564 2e204e6f6973652069732067656e65726174656420776974682061207374616e64617264 206465>-.25 F .679<76696174696f6e207468617420697320627920646566>-.25 F .679<61756c742073657420746f20302e3520616e64>-.1 F .285 <63616e20626520616c7465726564207573696e67>100 348 R F1 <2d6e6f6973652d736465>2.785 E<76>-.15 E F2<6e756d>2.5 E F0 5.285<2e56>C .285<616c756573206172652067656e65726174656420696e2074686520696e74657276> -6.395 F<616c>-.25 E F2<5b2d6661632a736465>2.785 E 1.765 -.74<762c2066> -.15 H<61632a736465>.74 E<765d>-.15 E F0<7768657265>100 360 Q F2<666163> 3.012 E F0 .512<6973207365742077697468>3.012 F F1 <2d6e6f6973652d72616e6765>3.012 E F2<666163>2.5 E F0 5.512<2e54>C .511 <68697320696e74657276>-5.512 F .511 <616c206973206d617070656420746f2074686520696e74657276>-.25 F<616c>-.25 E F2<5b2d72>3.011 E .511<61646975732c2072>-.15 F<61646975735d>-.15 E F0 .258<6265666f72652074686520726573756c74696e672076>100 372 R .258<616c75 6520697320616464656420746f207468652061637475616c206564676520776569676874 2e>-.25 F .258<54686973206265636f6d657320746865206e65>5.258 F 2.759 <7776>-.25 G .259<616c75652e20496620616e>-3.009 F<696e74657276>100 384 Q <616c>-.25 E F2<5b4c2c525d>2.547 E F0 .046<69732065>2.547 F .046 <78706c696369746c792073706563698c6564207573696e67>-.15 F F1 <2d656467652d6d696e>2.546 E F2<4c>2.5 E F0<616e64>2.546 E F1 <2d656467652d6d6178>2.546 E F2<52>2.5 E F0 .046<7468656e20746865206e65> 2.546 F 2.546<7776>-.25 G .046<616c75652077696c6c>-2.796 F<626520616363 6570746564206f6e6c79206966206974206c6965732077697468696e2074686520696e74 657276>100 396 Q<616c2c206f74686572776973652074686520656467652077696c6c 206e6f74206265207065727475726265642e>-.25 E/F3 10.95/Times-Bold@0 SF <4f5054494f4e53>20 412.8 Q F1<2d696d78>100 424.8 Q F0 <3c666e616d653e2028>2.5 E F2<696e707574206d6174726978>A F0<29>A<54686520 8c6c65206e616d6520666f7220696e7075742e20535444494e20697320617373756d6564 206966206e656974686572>120 436.8 Q F1<2d696d78>2.5 E F0<6e6f72>2.5 E F1 <2d67656e>2.5 E F2<6e756d>2.5 E F0<69732073706563698c65642e>2.5 E F1 <2d6f>100 460.8 Q F0<3c666e616d653e2028>2.5 E F2 <6f7574707574206d617472697820746f203c666e616d653e>A F0<29>A<546865208c6c 6520746f20777269746520746865207472616e73666f726d6564206d617472697820746f 2e>120 472.8 Q F1<2d2d77726974652d62696e617279>100 496.8 Q F0<28>2.5 E F2<7772697465206f757470757420696e2062696e61727920666f726d6174>A F0<29>A <577269746520746865206f7574707574206d617472697820696e206e617469>120 508.8 Q .3 -.15<76652062>-.25 H<696e61727920666f726d61742e>.15 E F1 <2d736875668d65>100 532.8 Q F0<3c6e756d3e2028>2.5 E F2<73687566>A <8d6520656467>-.18 E 2.5<6570>-.1 G<616972203c6e756d3e2074696d6573>-2.5 E F0<29>A<53687566>120 544.8 Q .467<8d6520656467652070616972203c6e756d3e 2074696d65732e20416e20656467652073687566>-.25 F .467 <8d652061637473206f6e207477>-.25 F 2.967<6f72>-.1 G .468 <616e646f6d6c792063686f73656e206564676573206564676573>-2.967 F F2 <7728612c6229>120 556.8 Q F0<616e64>4.184 E F2<7728632c6429>4.184 E F0 1.684<776865726520616c6c20746865206e6f646573206d75737420626520646966> 4.184 F 1.683<666572656e742e20496620656974686572206e6f6e65206f6620746865 20656467657320696e>-.25 F F2<7728612c6329>120 568.8 Q F0<2c>A F2 <7728622c6429>4.406 E F0 1.906 <6f72206e6f6e65206f662074686520656467657320696e>4.406 F F2<7728612c6429> 4.406 E F0<2c>A F2<7728622c6329>4.406 E F0 -.15<6578>4.406 G 1.906 <6973747320746865206f726967696e616c207477>.15 F 4.406<6f65>-.1 G 1.906 <6467657320617265>-4.406 F<72656d6f>120 580.8 Q -.15<7665>-.15 G 2.5 <6461>.15 G<6e64206973207265706c6163656420627920616e20656467652070616972 20666f7220776869636820626f746820656467657320646964206e6f742065>-2.5 E <78697374206265666f72652e>-.15 E F1<2d7061>100 604.8 Q F0 <3c4e3e2f3c6d3e2028>2.5 E F2<7072>A<65666572>-.37 E <656e7469616c206174746163>-.37 E<686d656e74>-.15 E F0<29>A .449<54686973 2067656e65726174657320612072616e646f6d206772617068207573696e672070726566 6572656e7469616c206174746163686d656e742e>120 616.8 R .448 <496e2074686973206d6f64656c206e65>5.448 F 2.948<776e>-.25 G .448 <6f64657320617265>-2.948 F .09 <73657175656e7469616c6c7920616464656420746f20612067726170682e>120 628.8 R .09<45616368206e65>5.09 F 2.59<776e>-.25 G .09 <6f646520697320636f6e6e65637465642077697468>-2.59 F F2<3c6d3e>2.59 E F0 .09<6f66207468652065>2.59 F .09<78697374696e67206e6f646573>-.15 F .017 <28696e636c7564696e67206e6f64657320707265>120 640.8 R .016 <76696f75736c79206164646564292c20776865726520746865206c696b>-.25 F .016 <656c69686f6f64206f66207069636b696e6720616e2065>-.1 F .016 <78697374696e67206e6f64652069732070726f2d>-.15 F .51 <706f7274696f6e616c20746f207468652065646765206465>120 652.8 R .511<6772 6565206f662074686174206e6f64652e20447572696e6720636f6e737472756374696f6e 206d756c7469706c65206564676573206265747765656e207477>-.15 F<6f>-.1 E .536<6e6f6465732061726520616c6c6f>120 664.8 R .536<77656420286561636820 7769746820776569676874206f6e65292c20616e642074686573652061726520636f6c6c 617073656420627920616464696e672074686569722077656967687473>-.25 F <6265666f7265206f75747075742e>120 676.8 Q F1<2d72>100 700.8 Q<656d6f> -.18 E -.1<7665>-.1 G F0<3c6e756d3e2028>2.6 E F2 -.37<7265>C<6d6f>.37 E <7665203c6e756d3e20656467>-.1 E<6573>-.1 E F0<29>A<52656d6f>120 712.8 Q .3 -.15<76652074>-.15 H<686973206d616e>.15 E 2.5<7965>-.15 G <646765732066726f6d2074686520696e7075742067726170682e>-2.5 E <6d637872616e642031322d313335>20 768 Q<3134204d61792032303132>141.515 E <32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.125<6d637872616e642831292055534552>20 48 R 142.625<434f4d4d414e4453206d637872616e64283129>2.5 F/F1 10/Times-Bold@0 SF<2d616464>100 84 Q F0<3c6e756d3e2028>2.5 E/F2 10/Times-Italic@0 SF <616464203c6e756d3e20656467>A<6573206e6f7420796574207072>-.1 E <6573656e74>-.37 E F0<29>A<4372656174652074686973206d616e>120 96 Q 2.5 <796e>-.15 G .5 -.25<65772065>-2.5 H<646765732e>.25 E F1<2d67656e>100 120 Q F0<3c6e756d3e2028>2.5 E F2<6e6f6465206e756d626572>A F0<29>A <55736520696e20636f6e6a756e6374696f6e2077697468>120 132 Q F1<2d616464> 2.5 E F0<746f2067656e657261746520612072616e646f6d206772617068206f6e>2.5 E F2<3c6e756d3e>2.5 E F0<6e6f6465732e>2.5 E F1 <2d6e6f6973652d726164697573>100 156 Q F0<3c6e756d3e2028>2.5 E F2 <6d6178696d756d20737072>A<65616420746f20616464206e6f6973652077697468> -.37 E F0<29>A F1<2d6e6f6973652d736465>100 168 Q<76>-.15 E F0 <3c6e756d3e2028>2.5 E F2<7374616e646172>A 2.5<6464>-.37 G -.15<6576>-2.5 G<696174696f6e>.15 E F0<29>A F1<2d6e6f6973652d72616e6765>100 180 Q F0 <3c66>2.5 E<61633e2028>-.1 E F2<6e756d626572206f66207374616e646172>A 2.5 <6464>-.37 G -.15<6576>-2.5 G<696174696f6e7320616c6c6f776564>.15 E F0 <29>A<536565207468652064697363757373696f6e20696e>120 192 Q F1 <4445534352495054494f4e>2.5 E F0<2e>A F1<2d656467652d6d696e>100 216 Q F0 <3c6e756d3e2028>2.5 E F2<676c6f62616c20656467>A 2.5<6577>-.1 G <6569676874206d696e696d756d>-2.5 E F0<29>A F1<2d656467652d6d6178>100 228 Q F0<3c6e756d3e2028>2.5 E F2<676c6f62616c20656467>A 2.5<6577>-.1 G <6569676874206d6178696d756d>-2.5 E F0<29>A <536565207468652064697363757373696f6e20696e>120 240 Q F1 <4445534352495054494f4e>2.5 E F0<2e>A F1<2d736b>100 264 Q<6577>-.1 E F0 <3c6e756d3e2028>2.5 E F2<736b>A .3 -.15<65772074>-.1 H<6f776172>.15 E <6473206d696e206f72206d6178>-.37 E F0<29>A <536565207468652064697363757373696f6e20696e>120 276 Q F1 <4445534352495054494f4e>2.5 E F0<2e>A F1<2d6e65772d672d6d65616e>100 300 Q F0<3c6e756d3e2028>2.5 E F2<6d65616e20746f2067>A<656e6572>-.1 E <617465206e65>-.15 E 2.5<7765>-.15 G<6467>-2.5 E<65732077697468>-.1 E F0 <29>A F1<2d6e65772d672d736465>100 312 Q<76>-.15 E F0<3c6e756d3e2028>2.5 E F2<7374616e646172>A 2.5<6464>-.37 G -.15<6576>-2.5 G <696174696f6e20746f2067>.15 E<656e6572>-.1 E<617465206e65>-.15 E 2.5 <7765>-.15 G<6467>-2.5 E<65732077697468>-.1 E F0<29>A F1 <2d6e65772d672d726164697573>100 324 Q F0<3c6e756d3e2028>2.5 E F2 <6d6178696d756d20737072>A<65616420746f2067>-.37 E<656e6572>-.1 E <617465206e65>-.15 E 2.5<7765>-.15 G<6467>-2.5 E<65732077697468>-.1 E F0 <29>A F1<2d6e65772d672d6d696e>100 336 Q F0<3c6e756d3e2028>2.5 E F2 <6c6f77657220626f756e642073656c656374696f6e2028476175737369616e29>A F0 <29>A F1<2d6e65772d672d6d6178>100 348 Q F0<3c6e756d3e2028>2.5 E F2 <757070657220626f756e642073656c656374696f6e2028476175737369616e29>A F0 <29>A<536565207468652064697363757373696f6e20696e>120 360 Q F1 <4445534352495054494f4e>2.5 E F0<2e>A/F3 10.95/Times-Bold@0 SF <53454520414c534f>20 376.8 Q F1<6d6378696f283529>100 388.8 Q F0 2.666 <2c61>C<6e64>-2.666 E F1<6d636c66616d696c79283729>2.666 E F0 .166 <666f7220616e206f>2.666 F -.15<7665>-.15 G<72766965>.15 E 2.667<776f> -.25 G 2.667<6661>-2.667 G .167<6c6c2074686520646f63756d656e746174696f6e 20616e6420746865207574696c697469657320696e20746865206d636c>-2.667 F -.1 <6661>100 400.8 S<6d696c792e>.1 E<6d637872616e642031322d313335>20 768 Q <3134204d61792032303132>141.515 E<33>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxrand.10000644000402500021140000002327111754271045011567 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxrand" 1 "14 May 2012" "mcxrand 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxrand \- random shuffling, removal, addition, and perturbation of edges of graphs .SH SYNOPSIS \fBmcxrand\fP [options] .di ZV .in 0 .nf \fC mcxrand -gen K -add N -new-g-mean f # random graph on K nodes, N edges mcxrand -imx -remove N -add N # remove then add edges mcxrand -imx -shuffle N # shuffle N edge pairs mcxrand -imx -noise-radius f # add noise to add weights .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR mcxrand -pa N/m # preferential attachment generation \fBmcxrand\fP \fB[-imx\fP (\fIinput matrix\fP)\fB]\fP \fB[-o\fP (\fIoutput matrix to \fP)\fB]\fP \fB[--write-binary\fP (\fIwrite output in binary format\fP)\fB]\fP \fB[-gen\fP (\fIgenerate new graph\fP)\fB]\fP \fB[-pa\fP / (\fIpreferential attachment\fP)\fB]\fP \fB[-remove\fP (\fIremove edges\fP)\fB]\fP \fB[-add\fP (\fIadd edges not yet present\fP)\fB]\fP \fB[-shuffle\fP (\fIshuffle edge pair times\fP)\fB]\fP \fB[-noise-radius\fP (\fImaximum spread to add noise with\fP)\fB]\fP \fB[-noise-sdev\fP (\fInoise standard deviation\fP)\fB]\fP \fB[-noise-range\fP (\fInoise range factor\fP)\fB]\fP \fB[-edge-min\fP (\fIabsolute edge weight minimum\fP)\fB]\fP \fB[-edge-max\fP (\fIabsolute edge weight maximum\fP)\fB]\fP \fB[-new-g-mean\fP (\fImean for new edges (Gaussian)\fP)\fB]\fP \fB[-new-g-sdev\fP (\fIstandard deviation for new edges (Gaussian)\fP)\fB]\fP \fB[-new-g-radius\fP (\fImaximum spread for new edges (Gaussian)\fP)\fB]\fP \fB[-new-g-min\fP (\fIlower bound selection (Gaussian)\fP)\fB]\fP \fB[-new-g-max\fP (\fIupper bound selection (Gaussian)\fP)\fB]\fP \fB[-skew\fP (\fIskew towards min or max\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION This utility is a recent addition to the mcl suite and the schemes explained below will likely be evolved, simplified, and extended with future releases\&. The \fB--shuffle\fP, \fB-gen\fP and \fB-pa\fP options can be deemend stable and robust\&. The options that determine edge weight perturbation and generation are likely to be subject to revision in the future\&. The input graph/matrix, if specified with the \fB-imx\fP option, has to be in mcl matrix/graph format\&. You can use label input instead by preprocessing the label input with \fBmcxload(1)\fP, i\&.e\&. .di ZV .in 0 .nf \fC mcxload -abc | mcxrand [options] .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Refer to \fBmcxio(5)\fP for a description of these two input formats\&. By default \fBmcxrand\fP reads from STDIN\&. Change this with the \fB-imx\fP option\&. \fBmcxrand\fP can randomly remove and add edges to a graph, or add gaussian noise to the edge weights of a graph\&. It can also shuffle edge pairs while preserving the degree sequence of the graph\&. In \fIremoval mode\fP (\fB-remove\fP\ \&\fI\fP) and in \fIaddition mode\fP (\fB-add\fP\ \&\fI\fP) \fBmcxrand\fP enforces arc symmetry by only working with edges \fIw(i,j)\fP where \fIi < j\fP and symmetrifying the result and adding any loops that were present in the input graph just before the output stage\&. In \fIperturbation mode\fP (\fB-noise-radius\fP, with no other mode specified) the input can be any graph\&. \fIShuffle mode\fP (\fB-shuffle\fP\ \&\fI\fP) requires an undirected graph but will only fail when it picks an arc for which the arc in the reverse direction is not present\&. This means it may or may not fail on directed input depending on the random choices\&. It does not check equality of the two arc weights and randomly picks one to represent the edge weight\&. Edge removal, edge creation, and edge perturbation are applied in this order if both are specified\&. Edge shuffling presently cannot be combined with one of the previous modes\&. A random graph can be generated with \fB-gen\fP\ \&\fIk\fP, which specifies the number of nodes the graph should have\&. It is equivalent with pasing (the file name of) an empty graph of the same dimensions as the argument to \fB-imx\fP\&. When adding (i\&.e\&. creating) edges, the default is to use the uniform distribution for new edge weights ranging in some interval\&. The default interval is [0,1] and can be modified using the \fB-edge-min\fP\ \&\fImin\fP and \fB-edge-max\fP\ \&\fImax\fP options\&. A Gaussian edge weight distribution can be obtained by specifying \fB-new-g-mean\fP\ \&\fInum\fP\&. The standard deviation is by default 1\&.0 and can be altered with \fB-new-g-sdev\fP\ \&\fInum\fP\&. Currently the edge weigths are generated within the interval [\fImean-radius\fP, \fImean+radius\fP] where \fIradius\fP is specified with \fB-new-g-radius\fP\&. They are further selected to lie within the interval \fI[L,R]\fP if and only if \fB-new-g-min\fP\ \&\fIL\fP and \fB-new-g-max\fP\ \&\fIR\fP have been specified\&. For both uniform and Gaussian edge creation the edge weights can be skewed towards either side of the distribution with \fB-skew\fP\ \&\fIc\fP\&. Skewing is applied by mapping the edge weights to the interval [0,1], applying the function \fIx^c\fP, and remapping the resulting number\&. For values \fIc<1\fP this skews the edge weights towards the right bound and for values \fIc>1\fP this skews the edge weights towards the left bound\&. This is a rather crude approach that will likely be changed in the future\&. Edge weights can be perturbed by specifying \fB-noise-radius\fP\ \&\fIradius\fP\&. This sets the maximum perturbation allowed\&. Noise is generated with a standard deviation that is by default set to 0\&.5 and can be altered using \fB-noise-sdev\fP\ \&\fInum\fP\&. Values are generated in the interval \fI[-fac*sdev, fac*sdev]\fP where \fIfac\fP is set with \fB-noise-range\fP\ \&\fIfac\fP\&. This interval is mapped to the interval \fI[-radius, radius]\fP before the resulting value is added to the actual edge weight\&. This becomes the new value\&. If an interval \fI[L,R]\fP is explicitly specified using \fB-edge-min\fP\ \&\fIL\fP and \fB-edge-max\fP\ \&\fIR\fP then the new value will be accepted only if it lies within the interval, otherwise the edge will not be perturbed\&. .SH OPTIONS .ZI 2m "\fB-imx\fP (\fIinput matrix\fP)" \& .br The file name for input\&. STDIN is assumed if neither \fB-imx\fP nor \fB-gen\fP\ \&\fInum\fP is specified\&. .in -2m .ZI 2m "\fB-o\fP (\fIoutput matrix to \fP)" \& .br The file to write the transformed matrix to\&. .in -2m .ZI 2m "\fB--write-binary\fP (\fIwrite output in binary format\fP)" \& .br Write the output matrix in native binary format\&. .in -2m .ZI 2m "\fB-shuffle\fP (\fIshuffle edge pair times\fP)" \& .br Shuffle edge pair times\&. An edge shuffle acts on two randomly chosen edges edges \fIw(a,b)\fP and \fIw(c,d)\fP where all the nodes must be different\&. If either none of the edges in \fIw(a,c)\fP, \fIw(b,d)\fP or none of the edges in \fIw(a,d)\fP, \fIw(b,c)\fP exists the original two edges are removed and is replaced by an edge pair for which both edges did not exist before\&. .in -2m .ZI 2m "\fB-pa\fP / (\fIpreferential attachment\fP)" \& .br This generates a random graph using preferential attachment\&. In this model new nodes are sequentially added to a graph\&. Each new node is connected with \fI\fP of the existing nodes (including nodes previously added), where the likelihood of picking an existing node is proportional to the edge degree of that node\&. During construction multiple edges between two nodes are allowed (each with weight one), and these are collapsed by adding their weights before output\&. .in -2m .ZI 2m "\fB-remove\fP (\fIremove edges\fP)" \& .br Remove this many edges from the input graph\&. .in -2m .ZI 2m "\fB-add\fP (\fIadd edges not yet present\fP)" \& .br Create this many new edges\&. .in -2m .ZI 2m "\fB-gen\fP (\fInode number\fP)" \& .br Use in conjunction with \fB-add\fP to generate a random graph on \fI\fP nodes\&. .in -2m .ZI 2m "\fB-noise-radius\fP (\fImaximum spread to add noise with\fP)" \& 'in -2m .ZI 2m "\fB-noise-sdev\fP (\fIstandard deviation\fP)" \& 'in -2m .ZI 2m "\fB-noise-range\fP (\fInumber of standard deviations allowed\fP)" \& 'in -2m 'in +2m \& .br See the discussion in \fBDESCRIPTION\fP\&. .in -2m .ZI 2m "\fB-edge-min\fP (\fIglobal edge weight minimum\fP)" \& 'in -2m .ZI 2m "\fB-edge-max\fP (\fIglobal edge weight maximum\fP)" \& 'in -2m 'in +2m \& .br See the discussion in \fBDESCRIPTION\fP\&. .in -2m .ZI 2m "\fB-skew\fP (\fIskew towards min or max\fP)" \& .br See the discussion in \fBDESCRIPTION\fP\&. .in -2m .ZI 2m "\fB-new-g-mean\fP (\fImean to generate new edges with\fP)" \& 'in -2m .ZI 2m "\fB-new-g-sdev\fP (\fIstandard deviation to generate new edges with\fP)" \& 'in -2m .ZI 2m "\fB-new-g-radius\fP (\fImaximum spread to generate new edges with\fP)" \& 'in -2m .ZI 2m "\fB-new-g-min\fP (\fIlower bound selection (Gaussian)\fP)" \& 'in -2m .ZI 2m "\fB-new-g-max\fP (\fIupper bound selection (Gaussian)\fP)" \& 'in -2m 'in +2m \& .br See the discussion in \fBDESCRIPTION\fP\&. .in -2m .SH SEE ALSO \fBmcxio(5)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmprotocols.ps0000644000402500021140000010611711754271042013133 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:14 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 4 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 131.505 <636c6d70726f746f636f6c732835292046494c45>20 48 R<464f524d41>2.5 E 134.005<545320636c6d70726f746f636f6c73283529>-1.11 F 7.5<312e204e>42.5 84 R<414d45>-.35 E 7.5<322e204445534352495054494f4e>42.5 96 R 7.5 <332e204e657477>42.5 108 R<6f726b20726570726573656e746174696f6e>-.1 E 7.5<342e204c6f6164696e67>42.5 120 R<6c6172>2.5 E<6765206e657477>-.18 E <6f726b73>-.1 E 7.5<352e20436f6e>42.5 132 R -.15<7665>-.4 G <7274696e67206265747765656e20666f726d617473>.15 E 7.5 <362e20436c7573746572696e67>42.5 144 R<73696d696c6172697479206772617068 7320656e636f64656420696e20424c41535420726573756c7473>2.5 E 7.5 <372e20436c7573746572696e67>42.5 156 R -.15<6578>2.5 G <7072657373696f6e2064617461>.15 E 7.5<382e205265647563696e67>42.5 168 R <6e6f6465206465>2.5 E<677265657320696e20746865206772617068>-.15 E 7.5 <392e20534545>42.5 180 R<414c534f>2.5 E 7.5<31302e2041>37.5 192 R <5554484f52>-.55 E/F1 10.95/Times-Bold@0 SF -.219<4e41>20 208.8 S<4d45> .219 E F0<636c6d70726f746f636f6c7320ad2057>100 220.8 Q<6f726b208d6f>-.8 E<777320616e642070726f746f636f6c7320666f72206d636c20616e6420667269656e64 73>-.25 E F1<4445534352495054494f4e>20 237.6 Q F0 2.5<4167>100 249.6 S< 7569646520746f20646f696e6720616e616c797369732077697468206d636c20616e6420 6974732068656c7065722070726f6772616d732e>-2.5 E F1<4e657477>20 266.4 Q <6f726b2072>-.11 E<657072>-.197 E<6573656e746174696f6e>-.197 E F0 .445 <54686520636c7573746572696e672070726f6772616d>100 278.4 R/F2 10 /Times-Bold@0 SF<6d636c>2.944 E F0 -.15<6578>2.944 G .444<70656374732074 6865206e616d65206f66208c6c6520617320697473208c727374206172>.15 F 2.944 <67756d656e742e204966>-.18 F<746865>2.944 E F2<2d2d616263>2.944 E F0 .444<6f7074696f6e206973>2.944 F .114<757365642c20746865208c6c6520697320 617373756d656420746f2061646865726520746f20612073696d706c6520666f726d6174 2077686572652061206e657477>100 290.4 R .115 <6f726b2069732073706563698c6564206564676520627920656467652c>-.1 F 1.412 <6f6e65206c696e6520616e64206f6e65206564676520617420612074696d652e>100 302.4 R 1.412 <45616368206c696e652064657363726962657320616e2065646765206173207477> 6.412 F 3.911<6f6c>-.1 G 1.411 <6162656c7320616e642061206e756d65726963616c>-3.911 F -.25<7661>100 314.4 S .364<6c75652c20616c6c207365706172617465642062792077686974652073706163 652e20546865206c6162656c7320616e64207468652076>.25 F .365 <616c7565207265737065637469>-.25 F -.15<7665>-.25 G .365 <6c79206964656e7469667920746865207477>.15 F 2.865<6f6e>-.1 G<6f646573> -2.865 E 1.305<616e64207468652065646765207765696768742e2054686520666f72 6d61742069732063616c6c6564204142432d666f726d61742c2077686572652027412720 616e642027422720726570726573656e7420746865207477>100 326.4 R<6f>-.1 E .114<6c6162656c7320616e642027432720726570726573656e74732074686520656467 65207765696768742e20546865206c6174746572206973206f7074696f6e616c3b206966 206f6d69747465642074686520656467652077656967687420697320736574>100 338.4 R .579<746f206f6e652e>100 350.4 R .579<4966204142432d666f726d6174206973 20757365642c20746865206f75747075742069732072657475726e65642061732061206c 697374696e67206f6620636c7573746572732c206561636820636c7573746572206769> 5.579 F -.15<7665>-.25 G<6e>.15 E<61732061206c696e65206f662077686974652d 737061636520736570617261746564206c6162656c732e>100 362.4 Q .556<4d434c20 63616e20616c736f207574696c697a652061207365636f6e6420726570726573656e7461 74696f6e2c207768696368206973206120737472696e67656e7420616e6420756e616d62 6967756f757320666f726d617420666f72>100 386.4 R .12 <626f746820696e70757420616e64206f75747075742e>100 398.4 R .12 <546869732069732063616c6c6564>5.12 F/F3 10/Times-Italic@0 SF .119 <6d617472697820666f726d6174>2.619 F F0 .119<616e642069742069732072657175 69726564207768656e207573696e67206f746865722070726f6772616d73>2.619 F .844<696e20746865206d636c2073756974652c20666f722065>100 410.4 R .844<78 616d706c65207768656e20636f6d706172696e6720616e6420616e616c7973696e672063 6c7573746572696e6773207573696e67>-.15 F F2<636c6d283129>3.345 E F0 .845 <6f72207768656e>3.345 F -.15<6578>100 422.4 S 1.627 <7472616374696e6720616e64207472616e73666f726d696e67206e657477>.15 F 1.627<6f726b73207573696e67>-.1 F F2<6d6378283129>4.126 E F0 6.626<2e4e>C <617469>-6.626 E 1.926 -.15<7665206d>-.25 H 1.626 <6f646520286d617472697820666f726d61742920697320656e7465726564>.15 F <73696d706c79206279>100 434.4 Q F3<6e6f74>2.5 E F0<73706563696679696e67> 2.5 E F2<2d2d616263>2.5 E F0<2e>A .131 <546865207265636f6d6d656e64656420617070726f616368207573696e67>100 458.4 R F2<6d636c>2.631 E F0 .131<697320746f20636f6e>2.631 F -.15<7665>-.4 G .131<727420616e2065>.15 F .132<787465726e616c20666f726d617420746f204142 432d666f726d61742e205468652070726f2d>-.15 F<6772616d>100 470.4 Q F2 <6d63786c6f6164283129>2.585 E F0 .085 <726561647320746865206c617474657220616e6420637265617465732061206e617469> 2.585 F .385 -.15<7665206e>-.25 H<657477>.15 E .085<6f726b208c6c6520616e 6420612064696374696f6e617279208c6c652074686174206d617073>-.1 F<6e657477> 100 482.4 Q 1.023<6f726b206e6f64657320746f206c6162656c732e20416c6c206170 706c69636174696f6e7320696e20746865204d434c2073756974652c20696e636c756469 6e67>-.1 F F2<6d636c>3.524 E F0 1.024 <697473656c662c2063616e20726561642074686973>3.524 F<6e617469>100 494.4 Q 1.22 -.15<7665206e>-.25 H<657477>.15 E .919<6f726b208c6c6520666f726d6174 2e204c6162656c206f75747075742063616e206265206f627461696e6564207573696e67> -.1 F F2<6d637864756d70283129>3.419 E F0 3.419<2e54>C .919<68652077> -3.419 F<6f726b8d6f>-.1 E 3.419<7769>-.25 G<73>-3.419 E<746875733a>100 506.4 Q/F4 10/Courier@0 SF 12<2345>118 530.4 S<787465726e616c20666f726d 617420686173206265656e20636f6e76657274656420746f2066696c6520646174612e61 6263202861626320666f726d617429>-12 E<6d63786c6f6164202d6162632064617461 2e616263202d2d73747265616d2d6d6972726f72202d77726974652d7461622064617461 2e746162202d6f20646174612e6d6369>118 554.4 Q <6d636c20646174612e6d6369202d4920312e34>118 578.4 Q <6d636c20646174612e6d6369202d492032>118 590.4 Q <6d636c20646174612e6d6369202d492034>118 602.4 Q<6d637864756d70202d69636c 206f75742e646174612e6d63692e493134202d7461627220646174612e746162202d6f20 64756d702e646174612e6d63692e493134>118 626.4 Q<6d637864756d70202d69636c 206f75742e646174612e6d63692e493230202d7461627220646174612e746162202d6f20 64756d702e646174612e6d63692e493230>118 638.4 Q<6d637864756d70202d69636c 206f75742e646174612e6d63692e493430202d7461627220646174612e746162202d6f20 64756d702e646174612e6d63692e493430>118 650.4 Q F0 1.091 <496e20746869732065>100 674.4 R 1.092<78616d706c652074686520636c75737465 72206f75747075742069732073746f72656420696e206e617469>-.15 F 1.392 -.15 <76652066>-.25 H 1.092<6f726d617420616e642064756d70656420746f206c616265 6c73207573696e67206d63782d>.15 F .154 <64756d702e205468652073746f726564206f75747075742063616e206e6f>100 686.4 R 2.654<7762>-.25 G 2.654<6575>-2.654 G .154<73656420746f206c6561726e20 6d6f72652061626f75742074686520636c7573746572696e67732e20416e2065>-2.654 F .154<78616d706c6520697320746865>-.15 F<666f6c6c6f>100 698.4 Q .358 <77696e672c207768657265>-.25 F F2<636c6d283129>2.858 E F0 .358 <6973206170706c69656420696e206d6f6465>2.858 F F2<64697374>2.5 E F0 .359 <746f2067>2.858 F .359 <61756765207468652064697374616e6365206265747765656e20646966>-.05 F .359 <666572656e7420636c7573746572>-.25 F<2d>-.2 E<696e67732e>100 710.4 Q <636c6d70726f746f636f6c732031322d313335>20 768 Q<3134204d61792032303132> 124.285 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 131.505 <636c6d70726f746f636f6c732835292046494c45>20 48 R<464f524d41>2.5 E 134.005<545320636c6d70726f746f636f6c73283529>-1.11 F/F1 10/Courier@0 SF< 636c6d2064697374202d2d636861696e206f75742e646174612e6d63692e497b31342c32 302c34307d>118 84 Q/F2 10.95/Times-Bold@0 SF<4c6f6164696e67206c6172>20 112.8 Q<6765206e657477>-.11 E<6f726b73>-.11 E F0 1.764 <496620796f75206465616c20776974682076>100 124.8 R 1.763<657279206c6172> -.15 F 1.763<6765206e657477>-.18 F 1.763<6f726b732028736179207769746820 68756e6472656473206f66206d696c6c696f6e73206f66206564676573292c2069742069 73207265636f6d2d>-.1 F 1.68 <6d656e64656420746f207573652062696e61727920666f726d617420286366>100 136.8 R/F3 10/Times-Bold@0 SF<6d6378696f283529>4.18 E F0 4.18 <292e2054686973>B 1.68<69732073696d706c79206163686965>4.18 F -.15<7665> -.25 G 4.18<6462>.15 G 4.18<7961>-4.18 G<6464696e67>-4.18 E F1 <2d2d77726974652d>4.18 E<62696e617279>100 148.8 Q F0 .536<746f2074686520 6d63786c6f616420636f6d6d616e64206c696e652e2054686520726573756c74696e6720 8c6c65206973206e6f206c6f6e6765722068756d616e2d7265616461626c652062>3.037 F .536<75742077696c6c>-.2 F .794<62652066>100 160.8 R .794 <617374657220746f207265616420627920612066>-.1 F .795<6163746f7220626574 7765656e2074656e2d206f72207477656e74792d666f6c6420636f6d706172656420746f 207374616e64617264204d434c2d65646765206e65742d>-.1 F -.1<776f>100 172.8 S .552<726b20666f726d61742c20616e6420612066>.1 F .552<6163746f722061726f 756e64208c6674792d666f6c6420636f6d706172656420746f206c6162656c20666f726d 61742e>-.1 F .551<416c6c204d434c2d656467652070726f6772616d73>5.551 F .523<6172652061626c6520746f20726561642062696e61727920666f726d61742c2061 6e64207370656564206f662072656164696e672077696c6c20626520736f6d65>100 184.8 R .523 <776865726520696e20746865206f72646572206f66206d696c6c696f6e73>-.25 F .124<6f6620656467657320706572207365636f6e642c20636f6d706172656420746f2c 20666f722065>100 196.8 R .124<78616d706c652c20726f7567686c79203130304b20 656467657320706572207365636f6e6420666f72206c6162656c20666f726d61742e> -.15 F .553 <4d656d6f727920757361676520666f72206d63786c6f61642063616e206265206c6f> 100 220.8 R .553 <7765726564206279207265706c6163696e6720746865206f7074696f6e>-.25 F F1 <2d2d73747265616d2d6d6972726f72>3.054 E F0<77697468>3.054 E F1 <2d7269206d6178>100 232.8 Q F0<2e>A F2<436f6e>20 249.6 Q -.11<7665>-.438 G<7274696e67206265747765656e2066>.11 E<6f726d617473>-.274 E F3<436f6e> 100 261.6 Q -.1<7665>-.4 G<7274696e67206c6162656c2066>.1 E <6f726d617420746f20746162>-.25 E<756c61722066>-.2 E<6f726d6174>-.25 E F0 <4c6162656c20666f726d61742c207477>100 273.6 Q 2.5<6f6f>-.1 G 2.5<7274> -2.5 G<687265652028696e636c7564696e67207765696768742920636f6c756d6e733a> -2.5 E F1<6d63786c6f6164202d61626320646174612e616263202d2d73747265616d2d 6d6972726f72202d77726974652d74616220646174612e746162202d6f20646174612e6d 6369>118 297.6 Q<6d637864756d70202d696d7820646174612e6d6369202d74616220 646174612e746162202d2d64756d702d7461626c65>118 309.6 Q F0<53696d706c6520 496e746572616374696f6e2046696c6520285349462920666f726d61743a>100 333.6 Q F1<6d63786c6f6164202d73696620646174612e736966202d2d73747265616d2d6d6972 726f72202d77726974652d74616220646174612e746162202d6f20646174612e6d6369> 118 357.6 Q<6d637864756d70202d696d7820646174612e6d6369202d74616220646174 612e746162202d2d64756d702d7461626c65>118 369.6 Q F0 .515 <49742063616e206265206e6f7465642074686174207468657365207477>100 393.6 R 3.014<6f65>-.1 G .514<78616d706c6573206172652076>-3.164 F .514 <6572792073696d696c6172>-.15 F 3.014<2c61>-.4 G .514<6e6420646966>-3.014 F .514<666572206f6e6c7920696e207468652077>-.25 F .514 <61792074686520696e70757420746f>-.1 F F3<6d63786c6f6164>100 405.6 Q F0 <69732073706563698c65642e>2.5 E F2<436c7573746572696e672073696d696c6172 6974792067726170687320656e636f64656420696e20424c4153542072>20 422.4 Q <6573756c7473>-.197 E F0 3.248<4173>100 434.4 S .748 <706563698c6320696e7374616e6365206f66207468652077>-3.248 F<6f726b8d6f> -.1 E 3.248<7761>-.25 G<626f>-3.248 E 1.048 -.15<76652069>-.15 H 3.248 <7374>.15 G .748<686520636c7573746572696e67206f662070726f7465696e732062 61736564206f6e2074686569722073657175656e6365>-3.248 F .083<73696d696c61 7269746965732e20496e20746865206d6f7374207479706963616c207363656e6172696f 207468652065>100 446.4 R .082<787465726e616c20666f726d617420697320424c41 5354206f75747075742c207768696368206e6565647320746f206265>-.15 F 2.269 <7472616e73666f726d656420746f2041424320666f726d61742e>100 458.4 R 2.269 <496e207468652065>7.269 F 2.269<78616d706c65732062656c6f>-.15 F 4.769 <7774>-.25 G 2.27<686520696e70757420697320696e20636f6c756d6e617220626c61 737420666f726d6174>-4.769 F .849 <6f627461696e656420776974682074686520626c617374202d6d38206f7074696f6e2e> 100 470.4 R .849<497420726571756972657320612076>5.849 F .849 <657273696f6e206f66>-.15 F F3<6d636c>3.349 E F0 .849 <6174206c6561737420617320726563656e74206173>3.349 F F1<30392d303631> 3.348 E F0<2e>A 1.614<46697273742077652063726561746520616e204142432d666f 726d6174746564208c6c65207573696e67207468652065>100 482.4 R 1.614<787465 726e616c20636f6c756d6e617220424c41535420666f726d61742c207768696368206973> -.15 F<617373756d656420746f20626520696e2061208c6c652063616c6c6564>100 494.4 Q F1<7365712e63626c617374>2.5 E F0<2e>A F1 <637574202d6620312c322c3131207365712e63626c617374203e207365712e616263> 118 518.4 Q F0 .471 <54686520636f6c756d6e617220666f726d617420696e20746865208c6c65>100 542.4 R F1<7365712e63626c617374>2.971 E F0 .471<6861732c20666f722061206769> 2.971 F -.15<7665>-.25 G 2.97<6e42>.15 G .47 <4c415354206869742c207468652073657175656e6365206c6162656c73>-2.97 F .836 <696e20746865208c727374207477>100 554.4 R 3.337<6f63>-.1 G .837 <6f6c756d6e7320616e642074686520617373736f63696174656420452d76>-3.337 F .837<616c756520696e20636f6c756d6e>-.25 F .837 <31312e2049742069732070617273656420627920746865207374616e64617264>2.5 F .473<554e495820637574283129207574696c6974792e2054686520666f726d6174206d 757374206861>100 566.4 R .773 -.15<76652062>-.2 H .472<65656e2063726561 74656420776974682074686520424c415354202d6d38206f7074696f6e20736f20746861 74206e6f>.15 F .207<636f6d6d656e74206c696e6573206172652070726573656e742e 20416c7465726e617469>100 578.4 R -.15<7665>-.25 G .207<6c79207468657365 2063616e206265208c6c7465726564206f7574207573696e6720677265702e>.15 F .208<546865206e65>5.207 F .208<776c792063726561746564>-.25 F F1 <7365712e616263>100 590.4 Q F0 .61<8c6c65206973206c6f61646564206279>3.11 F F3<6d63786c6f6164283129>3.11 E F0 3.109<2c77>C .609 <686963682077726974657320626f74682061206e657477>-3.109 F .609 <6f726b208c6c65>-.1 F F1<7365712e6d6369>3.109 E F0 .609 <616e642061206469632d>3.109 F<74696f6e617279208c6c65>100 602.4 Q F1 <7365712e746162>2.5 E F0<2e>A F1<6d63786c6f6164202d616263207365712e6162 63202d2d73747265616d2d6d6972726f72202d2d73747265616d2d6e65672d6c6f673130 202d73747265616d2d746620276365696c283230302927>118 626.4 Q <2d6f207365712e6d6369202d77726974652d746162207365712e746162>154 638.4 Q F0<546865>100 662.4 Q F1<2d2d73747265616d2d6d6972726f72>3.202 E F0 .702< 6f7074696f6e20656e737572657320746861742074686520726573756c74696e67206e65 7477>3.202 F .703 <6f726b2077696c6c20626520756e64697265637465642c206173207265632d>-.1 F .488<6f6d6d656e646564207768656e207573696e67>100 674.4 R F3<6d636c>2.988 E F0 2.988<2e4f>C .488<6d697474696e672074686973206f7074696f6e2077>-2.988 F .488<6f756c6420726573756c7420696e2061206469726563746564206e657477>-.1 F .487<6f726b20617320424c415354>-.1 F<452d76>100 686.4 Q .164 <616c7565732067656e6572616c6c7920646966>-.25 F .164 <666572206265747765656e207477>-.25 F 2.664<6f73>-.1 G .165 <657175656e6365732e2054686520646566>-2.664 F .165 <61756c7420636f75727365206f6620616374696f6e20666f72>-.1 F F3 <6d63786c6f6164283129>2.665 E F0<6973>2.665 E 1.477 <746f207573652074686520626573742076>100 698.4 R 1.476<616c756520666f756e 64206265747765656e20612070616972206f66206c6162656c732e20546865206e65> -.25 F 1.476<7874206f7074696f6e2c>-.15 F F1 <2d2d6162632d6e65672d6c6f673130>3.976 E F0 1.208 <7472616e666f726d7320746865206e756d65726963616c2076>100 710.4 R 1.208 <616c75657320696e2074686520696e707574202874686520424c41535420452d76>-.25 F 1.209<616c756573292062792074616b696e6720746865206c6f67>-.25 F 1.209 <61726974686d20696e>-.05 F<62617365203130>100 722.4 Q .961 <616e642073756273657175656e746c79206e65>3.461 F -.05<6761>-.15 G .961 <74696e6720746865207369676e2e2046696e616c6c79>.05 F 3.461<2c74>-.65 G .961<6865207472616e73666f726d65642076>-3.461 F .96 <616c756573206172652063617070656420736f2074686174>-.25 F <636c6d70726f746f636f6c732031322d313335>20 768 Q<3134204d61792032303132> 124.285 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 131.505 <636c6d70726f746f636f6c732835292046494c45>20 48 R<464f524d41>2.5 E 134.005<545320636c6d70726f746f636f6c73283529>-1.11 F<616e>100 84 Q 2.5 <7945>-.15 G<2d76>-2.5 E<616c75652062656c6f>-.25 E 2.5<7731>-.25 G <652d3230302069732073657420746f2061206d6178696d756d20616c6c6f>-2.5 E <776564206564676520776569676874206f66203230302e>-.25 E 2.128 -.8 <546f206f>100 108 T .528<627461696e20636c7573746572696e67732066726f6d>.8 F/F1 10/Courier@0 SF<7365712e6d6369>3.028 E F0<616e64>3.028 E F1 <7365712e746162>3.028 E F0 .528<6f6e6520686173207477>3.028 F 3.028<6f63> -.1 G .528<686f696365732e20546865208c72737420697320746f2067656e6572> -3.028 F<2d>-.2 E .155<61746520616e20616273747261637420636c757374657269 6e6720726570726573656e746174696f6e20616e642066726f6d2074686174206f627461 696e20746865206c6162656c206f75747075742c20617320666f6c6c6f>100 120 R 2.655<77732e2042656c6f>-.25 F<77>-.25 E<746865>100 132 Q/F2 10 /Times-Bold@0 SF<2d6f>3.054 E F0 .554<6f7074696f6e206973206e6f7420757365 642c20736f206d636c2077696c6c20637265617465206d65616e696e6766756c20616e64 20756e69717565206f7574707574206e616d657320627920697473656c662e20546865> 3.054 F<646566>100 144 Q 1.131<61756c742077>-.1 F 1.131<6179206f6620646f 696e67207468697320697320746f207072657072656e6420746865207072658c78>-.1 F F1<6f75742e>3.631 E F0 1.13<616e6420746f20617070656e64206120737566>3.63 F 1.13<8c7820656e636f64696e6720746865>-.25 F .142<696e8d6174696f6e2076> 100 156 R .143<616c756520757365642c207769746820696e8d6174696f6e20656e63 6f646564207573696e67207477>-.25 F 2.643<6f64>-.1 G .143<6967697473206f66 20707265636973696f6e20616e642074686520646563696d616c207365706172612d> -2.643 F<746f722072656d6f>100 168 Q -.15<7665>-.15 G<642e>.15 E F1 <6d636c207365712e6d6369202d4920312e34>118 192 Q <6d636c207365712e6d6369202d492032>118 204 Q <6d636c207365712e6d6369202d492034>118 216 Q <6d636c207365712e6d6369202d492036>118 228 Q<6d637864756d70202d69636c206f 75742e7365712e6d63692e493134202d74616272207365712e746162202d6f2064756d70 2e7365712e6d63692e493134>118 252 Q<6d637864756d70202d69636c206f75742e73 65712e6d63692e493230202d74616272207365712e746162202d6f2064756d702e736571 2e6d63692e493230>118 264 Q<6d637864756d70202d69636c206f75742e7365712e6d 63692e493430202d74616272207365712e746162202d6f2064756d702e7365712e6d6369 2e493430>118 276 Q<6d637864756d70202d69636c206f75742e7365712e6d63692e49 3630202d74616272207365712e746162202d6f2064756d702e7365712e6d63692e493630> 118 288 Q F0<4e6f>100 312 Q 3.461<7774>-.25 G .961<6865208c6c65>-3.461 F F1<6f75742e7365712e7461622e493134>3.461 E F0 .961<616e642069747320617373 6f6369617465732063616e206265207573656420666f722065>3.461 F .96 <78616d706c6520746f20636f6d7075746520746865>-.15 F .516<64697374616e6365 73206265747765656e2074686520656e636f64656420636c7573746572696e6773207769 7468>100 324 R F2 .516<636c6d2064697374>3.016 F F0 3.016<2c74>C 3.017 <6f63>-3.016 G .517 <6f6d70757465206120736574206f66207374726963746c79207265636f6e63696c6564> -3.017 F<6e657374656420636c7573746572696e67732077697468>100 336 Q F2 <636c6d206f72646572>2.5 E F0 2.5<2c6f>C 2.5<7274>-2.5 G 2.5<6f63>-2.5 G <6f6d7075746520616e206566>-2.5 E<8c6369656e63>-.25 E 2.5<7963>-.15 G <7269746572696f6e2077697468>-2.5 E F2<636c6d20696e66>2.5 E<6f>-.25 E F0 <2e>A<416c7465726e617469>100 360 Q -.15<7665>-.25 G<6c79>.15 E 2.5<2c6c> -.65 G<6162656c206f75747075742063616e206265206f627461696e65642064697265 63746c792066726f6d>-2.5 E F2<6d636c>2.5 E F0<617320666f6c6c6f>2.5 E <77732e>-.25 E F1<6d636c207365712e6d6369202d4920312e34>118 384 Q <2d7573652d746162207365712e746162>12 E<6d636c207365712e6d6369202d492032> 118 396 Q<2d7573652d746162207365712e746162>12 E <6d636c207365712e6d6369202d492034>118 408 Q <2d7573652d746162207365712e746162>12 E<6d636c207365712e6d6369202d492036> 118 420 Q<2d7573652d746162207365712e746162>12 E/F3 10.95/Times-Bold@0 SF <436c7573746572696e672065787072>20 448.8 Q<657373696f6e2064617461>-.197 E F0 .671<54686520636c7573746572696e67206f662065>100 460.8 R .671<787072 657373696f6e206461746120636f6e737469747574657320616e6f746865722077>-.15 F<6f726b8d6f>-.1 E .671<772e20496e20746869732063617365207468652065>-.25 F .67<787465726e616c20666f726d6174>-.15 F .586 <757375616c6c79206973206120746162>100 472.8 R .587<756c6172208c6c652066 6f726d617420636f6e7461696e696e67206c6162656c7320666f722067656e6573206f72 2070726f62657320616e64206e756d65726963616c2076>-.2 F .587 <616c756573206d65612d>-.25 F .675<737572696e67207468652065>100 484.8 R .675<787072657373696f6e2076>-.15 F .675<616c756573206f7220666f6c64206368 616e676573206163726f7373206120736572696573206f6620636f6e646974696f6e7320 6f722065>-.25 F .675<78706572696d656e74732e2053756368>-.15 F<746162>100 496.8 Q 1.043 <756c6172208c6c65732063616e2062652070726f636573736564206279>-.2 F F2 <6d63786172726179283129>3.543 E F0 3.543<2c77>C 1.043 <6869636820636f6d657320696e7374616c6c65642077697468>-3.543 F F2<6d636c> 3.543 E F0 3.543<2e54>C 1.044<68652070726f6772616d>-3.543 F 2.858<636f6d 707574657320636f7272656c6174696f6e7320286569746865722050656172736f6e206f 722053706561726d616e6e29206265747765656e2067656e65732c20616e642063726561 74657320616e2065646765>100 508.8 R .963<6265747765656e2067656e6573206966 20746865697220636f7272656c6174696f6e2065>100 520.8 R .963 <786365656473207468652073706563698c6564206375746f66>-.15 F .964 <662e2046726f6d2074686973>-.25 F F2<6d63786172726179283129>3.464 E F0 <63726561746573>3.464 E .105<626f74682061206e657477>100 532.8 R .105<6f 726b208c6c6520616e6420612064696374696f6e617279208c6c652e20496e2074686520 65>-.1 F .105<78616d706c652062656c6f>-.15 F 1.405 -.65<772c2074>-.25 H .104<6865208c6c65>.65 F F1<657870722e64617461>2.604 E F0 .104 <697320696e20746162>2.604 F<756c6172>-.2 E .268 <666f726d61742077697468206f6e6520726f>100 544.8 R 2.768<776f>-.25 G 2.768<6663>-2.768 G .268 <6f6c756d6e20686561646572732028652e672e207461677320666f722065>-2.768 F .268<78706572696d656e74732920616e64206f6e6520636f6c756d6e206f6620726f> -.15 F 2.769<7769>-.25 G<64656e2d>-2.769 E<74698c6572732028652e672e2070 726f6265206f722067656e65206964656e74698c657273292e>100 556.8 Q F1<6d6378 6172726179202d6461746120657870722e64617461202d736b6970722031202d736b6970 632031202d6f20657870722e6d6369202d77726974652d74616220657870722e74616220 2d2d70656172736f6e202d636f20302e37202d7466202761627328292c616464282d302e 372927>118 580.8 Q F0 .326<546869732075736573207468652050656172736f6e20 636f7272656c6174696f6e2c2069676e6f72696e672076>100 616.8 R .326 <616c7565732062656c6f>-.25 F 2.826<7730>-.25 G 2.826<2e372e20546865> -2.826 F .325<72656d61696e696e672076>2.826 F .325 <616c75657320696e2074686520696e746572>-.25 F<2d>-.2 E -.25<7661>100 628.8 S<6c>.25 E F1<5b302e372d315d>3.678 E F0 1.178 <6172652072656d617070656420746f2074686520696e74657276>3.678 F<616c>-.25 E F1<5b302d302e335d>3.679 E F0 3.679<2e54>C 1.179 <686973206973207265636f6d6d656e64656420736f2074686174207468652065646765> -3.679 F 1.447<776569676874732077696c6c206861>100 640.8 R 1.746 -.15 <76652069>-.2 H 1.446 <6e6372656173656420636f6e7472617374206265747765656e207468656d2c206173> .15 F F2<6d636c>3.946 E F0 1.446<6973206166>3.946 F 1.446 <6665637465642062792072656c617469>-.25 F 1.746 -.15<76652064>-.25 H <6966>.15 E<666572656e636573>-.25 E 1.837<28726174696f732920626574776565 6e2065646765207765696768747320726174686572207468616e206162736f6c75746520 646966>100 652.8 R 1.837<666572656e6365732e2054>-.25 F 4.338<6f69>-.8 G 1.838<6c6c7573747261746520746869732c2076>-4.338 F<616c75657320302e3735> -.25 E<616e6420302e3935>100 664.8 Q 1.536<617265206d617070656420746f> 4.036 F 1.536<302e303520616e64>2.5 F 1.536 <302e32352c2077697468207265737065637469>2.5 F 1.835 -.15<76652072>-.25 H <6174696f7320302e3739>.15 E<616e6420302e32352e>4.035 E 1.535 <546865206e657477>6.535 F 1.535<6f726b208c6c65>-.1 F F1 <657870722e6d6369>100 676.8 Q F0 <616e64207468652064696374696f6e617279208c6c65>2.5 E F1<657870722e746162> 2.5 E F0<63616e206e6f>2.5 E 2.5<7762>-.25 G 2.5<6575>-2.5 G <736564206173206265666f72652e>-2.5 E .248 <497420697320706f737369626c6520746f20696e>100 700.8 R -.15<7665>-.4 G <73746967>.15 E .249<61746520746865206566>-.05 F .249 <66656374206f662074686520636f7272656c6174696f6e206375746f66>-.25 F 2.749 <6661>-.25 G 2.749<7366>-2.749 G<6f6c6c6f>-2.749 E 2.749 <77732e204669727374>-.25 F 2.749<616e>2.749 G<657477>-2.749 E .249 <6f726b2069732067656e2d>-.1 F<65726174656420617420612076>100 712.8 Q <657279206c6f>-.15 E 2.5<7774>-.25 G <68726573686f6c642c20616e642074686973206e657477>-2.5 E <6f726b20697320616e616c79736564207573696e67>-.1 E F2<6d63787175657279> 2.5 E F0<2e>A<636c6d70726f746f636f6c732031322d313335>20 768 Q <3134204d61792032303132>124.285 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 131.505 <636c6d70726f746f636f6c732835292046494c45>20 48 R<464f524d41>2.5 E 134.005<545320636c6d70726f746f636f6c73283529>-1.11 F/F1 10/Courier@0 SF< 6d63786172726179202d6461746120657870722e64617461202d736b6970722031202d73 6b6970632031202d6f206578707232302e6d6378202d2d77726974652d62696e61727920 2d2d70656172736f6e202d636f20302e32202d74662027616273282927>118 84 Q<6d63 78207175657279202d696d78206578707232302e6d6378202d2d766172792d636f727265 6c6174696f6e>118 96 Q F0 .652 <546865206f757470757420697320696e206120746162>100 132 R .651<756c617220 666f726d61742064657363726962696e67207468652070726f70657274696573206f6620 746865206e657477>-.2 F .651 <6f726b20617420696e6372656173696e6720636f7272656c612d>-.1 F 1.131<74696f 6e207468726573686f6c64732e204578616d706c657320617265207468652073697a6520 6f6620746865206269676765737420636f6d706f6e656e742c20746865206e756d626572 206f66206f727068616e206e6f646573>100 144 R 1.555 <286e6f7420636f6e6e656374656420746f20616e>100 156 R 4.055<796f>-.15 G 1.554<74686572206e6f6465292c20616e6420746865206d65616e20616e64206d656469 616e206e6f6465206465>-4.055 F 4.054<67726565732e2041>-.15 F 1.554 <676f6f642077>4.054 F 1.554<617920746f>-.1 F 1.749 <63686f6f736520746865206375746f66>100 168 R 4.249<6669>-.25 G 4.249 <7374>-4.249 G 4.249<6f62>-4.249 G 1.749<616c616e636520746865206e756d62 6572206f662073696e676c65746f6e7320616e6420746865206d656469616e206e6f6465 206465>-4.249 F 1.75<677265652e20426f7468>-.15 F .279 <73686f756c642070726566657261626c79206e6f7420626520746f6f20686967682e> 100 180 R -.15<466f>5.279 G 2.779<7265>.15 G .279<78616d706c652074686520 6e756d626572206f66206f727068616e206e6f6465732073686f756c64206265206c6573 73207468616e>-2.929 F .04<74656e2070657263656e74206f662074686520746f7461 6c206e756d626572206f66206e6f6465732c20616e6420746865206d656469616e206e6f 6465206465>100 192 R .04 <677265652073686f756c64206265206174206d6f7374206f6e652068756e2d>-.15 F <64726564206e65696768626f7572732e>100 204 Q/F2 10.95/Times-Bold@0 SF <5265647563696e67206e6f64652064656772>20 220.8 Q <65657320696e20746865206772617068>-.197 E F0 3.323<4167>100 232.8 S .823 <6f6f642077>-3.323 F .823<617920746f206c6f>-.1 F .823 <776572206e6f6465206465>-.25 F .823<677265657320696e2061206e657477>-.15 F .822<6f726b20697320746f2072657175697265207468617420616e20656467652069 7320616d6f6e67207468652062657374>-.1 F/F3 10/Times-Italic@0 SF<6b>3.322 E F0 .43 <6564676573202874686f7365206f662068696768657374207765696768742920666f72> 100 244.8 R F3<626f7468>2.93 E F0 .431<6e6f64657320696e636964656e742074 6f2074686520656467652c20666f7220736f6d652076>2.93 F .431<616c7565206f66> -.25 F F3<6b>2.931 E F0 2.931<2e54>C .431<686973206973>-2.931 F <6163686965>100 256.8 Q -.15<7665>-.25 G 3.423<6462>.15 G 3.423<7975> -3.423 G<73696e67>-3.423 E F1<6b6e6e286b29>3.423 E F0 .923 <696e20746865206172>3.423 F .923<67756d656e7420746f20746865>-.18 F/F4 10 /Times-Bold@0 SF<2d7466>3.423 E F0 .923 <6f7074696f6e20746f206d636c206f72>3.423 F F4 .922<6d637820616c746572> 3.423 F F0 5.922<2e54>C 3.422<6f67>-6.722 G -2.15 -.25<69762065>-3.422 H <616e>3.672 E -.15<6578>100 268.8 S .683 <616d706c652c20612067726170682077>.15 F .683<617320666f726d6564206f6e20 7472616e736c6174696f6e7320696e20456e73656d626c2072656c65617365203537206f 6e20322e364d206e6f6465732e>-.1 F .684<5468652073696d692d>5.684 F .504<6c 617269746965732077657265206f627461696e65642066726f6d20424c4153542073636f 7265732c206c656164696e6720746f20612067726170682077697468206120746f74616c 206564676520636f756e74206f66203330304d2c>100 280.8 R .769 <7769746820626573742d636f6e6e6563746564206e6f646573206f66206465>100 292.8 R .769<67726565207265737065637469>-.15 F -.15<7665>-.25 G .769<6c 792031313134382c20393038332c20393037302c203930313920616e6420383938382c20 616e642077697468>.15 F 2.044<6d65616e206e6f6465206465>100 304.8 R 2.044 <67726565203233332e>-.15 F 2.044<5468657365206465>7.044 F 2.044 <67726565732061726520756e726561736f6e61626c652e>-.15 F 2.044 <5468652067726170682077>7.044 F 2.044<6173207375626a656374656420746f>-.1 F F4<6d6378>4.543 E<7175657279>100 316.8 Q F0 .016<746f20696e>2.516 F -.15<7665>-.4 G<73746967>.15 E .016<61746520746865206566>-.05 F .016 <66656374206f662076>-.25 F .016<617279696e67206b2d4e4e20706172616d657465 72732e204120676f6f642068657572697374696320697320746f2063686f6f7365206120 76>-.25 F<616c7565>-.25 E .268<7468617420646f6573206e6f74207369676e698c 63616e746c79206368616e676520746865206e756d626572206f662073696e676c65746f 6e7320696e2074686520696e7075742067726170682e>100 328.8 R .268 <496e207468652065>5.268 F .268<78616d706c65206974>-.15 F <6d65616e742074686174>100 340.8 Q F4<2d746620276b6e6e283136302927>2.5 E F0 -.1<7761>2.5 G 2.5<7366>.1 G <65617369626c652c206c656164696e6720746f2061206d65616e206e6f6465206465> -2.5 E<67726565206f662039382e>-.15 E 3.332<4173>100 364.8 S .832 <65636f6e6420617070726f61636820746f20726564756365206e6f6465206465>-3.332 F .832<677265657320697320746f20656d706c6f>-.15 F 3.332<7974>-.1 G<6865> -3.332 E F4<2d6365696c2d6e62>3.332 E F0 3.332<6f7074696f6e2e2054686973> 3.332 F .832<72616e6b73206e6f646573>3.332 F .108<6279206e6f6465206465> 100 376.8 R .108<677265652c2068696768657374208c7273742e204e6f6465732061 726520636f6e7369646572656420696e206f72646572206f662072616e6b2c20616e6420 6564676573206f66206c6f>-.15 F 2.607<7777>-.25 G .107<656967687420617265> -2.607 F<72656d6f>100 388.8 Q -.15<7665>-.15 G 2.5<6466>.15 G<726f6d2074 686520677261706820756e74696c2061206e6f64652073617469738c657320746865206e 6f6465206465>-2.5 E <67726565207468726573686f6c642073706563698c6564206279>-.15 E F4 <2d6365696c2d6e62>2.5 E F0<2e>A F2<53454520414c534f>20 417.6 Q F4 <6d6378696f283529>100 429.6 Q F0<2e>A F2 -.548<4155>20 446.4 S<54484f52> .548 E F0<5374696a6e2076>100 458.4 Q<616e20446f6e67656e2e>-.25 E <636c6d70726f746f636f6c732031322d313335>20 768 Q<3134204d61792032303132> 124.285 E<34>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/stamp.day0000644000402500021140000000000311754270104011653 0000000000000014 mcl-12-135/doc/mcxarray.html0000644000402500021140000005402511754271043012564 00000000000000 The mcxarray manual

14 May 2012    mcxarray 12-135

NAME

mcxarray — Transform array data to MCL matrices

SYNOPSIS

mcxarray [options]

mcxarray [-data fname (input data file)] [-imx fname (input matrix file)] [-co num ((absolute) cutoff for output values (required))] [--pearson (use Pearson correlation (default))] [--spearman (use Spearman rank correlation)] [-fp <mode> (use fingerprint measure)] [--dot (use dot product)] [--cosine (use cosine)] [-skipr <num> (skip <num> data rows)] [-skipc <num> (skip <num> data columns)] [-o fname (output file fname)] [-write-tab <fname> (write row labels to file)] [-l <num> (take labels from column <num>)] [-digits <num> (output precision)] [--write-binary (write output in binary format)] [-t <int> (use <int> threads)] [-J <intJ> (a total of <intJ> jobs are used)] [-j <intj> (this job has index <intj>)] [-start <int> (start at column <int> inclusive)] [-end <int> (end at column <int> EXclusive)] [--transpose (work with the transposed data matrix)] [--rank-transform (rank transform the data first)] [-tf spec (transform result network)] [-table-tf spec (transform input table before processing)] [-n mode (normalize input)] [--zero-as-na (treat zeroes as missing data)] [-write-data <fname> (write data to file)] [-write-na <fname> (write NA matrix to file)] [--job-info (print index ranges for this job)] [--help (print this help)] [-h (print this help)] [--version (print version information)]

DESCRIPTION

mcxarray can either read a flat file containing array data (-data) or a matrix file satisfying the mcl input format (-imx). In the former case it will by default work with the rows as the data vectors. In the latter case it will by default work with the columns as the data vectors (note that mcl matrices are presented as a listing of columns). This can be changed for both using the --transpose option.

The input data may contain missing data in the form of empty columns, NA values (not available/applicable), or NaN values (not a number). The program keeps track of these, and when computing the correlation between two rows or columns ignores all positions where any one of the two has missing data.

OPTIONS

-data fname (input data file)

Specify the data file containing the expression values. It should be tab-separated.

 
-imx fname (input matrix file)

The expression values are read from a file in mcl matrix format.

 
--pearson (use Pearson correlation (default))
--spearman (use Spearman rank correlation)
--cosine (use cosine)
--dot (use the dot product)

Use one of these to specify the correlation measure. Note that the dot product is not normalised and should only be used with very good reason.

 
-fp <mode> (specify fingerprint measure)

Fingerprints are used to define an entity in terms of it having or not having certain traits. This means that a fingerprint can be represented by a boolean vector, and a set of fingerprints can be represented by an array of such vectors. In the presence of many traits and entities the dimensions of such a matrix can grow large. The sparse storage employed by MCL-edge is ideally suited to this, and mcxarray is ideally suited to the computation of all pairwise comparisons between such fingerprints. Currently mcxarray supports five different types of fingerprint, described below. Given two fingerprints, the number of traits unique to the first is denoted by a, the number unique to the second is denoted by b, and the number that they have in common is denoted by c.

hamming

The Hamming distance, defined as a+b.

 
tanimoto

The Tanimoto similarity measure, c/(a+b+c).

 
cosine

The cosine similarity measure, c/sqrt((a+c)*(b+c)).

 
meet

Simply the number of shared traits, identical to c.

 
cover

A normalised and non-symmetric similarity measure, representing the fraction of traits shared relative to the number of traits by a single entity. This gives the value c/(a+c) in one direction, and the value c/(b+c) in the other.

 
-skipr <num> (skip <num> data rows)

Skip the first <num> data rows.

 
-skipc <num> (skip <num> data columns)

Ignore the first <num> data columns.

 
-l <num> (take labels from column <num>)

Specifies to construct a tab of labels from this data column. The tab can be written to file using -write-tab fname.

 
-write-tab <fname> (write row labels to file)

Write a tab file. In the simple case where the labels are in the first data column it is sufficient to issue -skipc 1. If more data columns need to be skipped one must explicitly specify the data column to take labels from with -l l.

 
-t <int> (use <int> threads)
-J <intJ> (a total of <intJ> jobs are used)
-j <intj> (this job has index <intj>)

Computing all pairwise correlations is time-intensive for large input. If you have multiple CPUs available consider using as many threads. Additionally it is possible to spread the computation over multiple jobs/machines. Conceptually, each job takes a number of threads from the total thread pool. Additionally, the number of threads (as specified by -t) currently must be the same for all jobs, as it is used by each job to infer its own set of tasks. The following set of options, if given to as many commands, defines three jobs, each running four threads.

-t 4 -J 3 -j 0 -t 4 -J 3 -j 1 -t 4 -J 3 -j 2
 
--job-info (print index ranges for this job)
-start <int> (start at column <int> inclusive)
-end <int> (end at column <int> EXclusive)

--job-info can be used to list the set of column ranges to be processed by the job as a result of the command line options -t, -J, and -j. If a job has failed, this option can be used to manually split those ranges into finer chunks, each to be processed as a new sub-job specified with -start and -end. With the latter two options, it is impossible to use parallelization of any kind (i.e. any of the -t, -J, and -j options).

 
-o fname (output file fname)

Output file name.

 
-digits <num> (output precision)

Specify the precision to use in native interchange format.

 
--write-binary (write output in binary format)

Write output matrices in native binary format.

 
-co num ((absolute) cutoff for output values)

Output values of magnitude smaller than num are removed (set to zero). Thus, negative values are removed only if their positive counterpart is smaller than num.

 
--transpose (work with the transpose)

Work with the transpose of the input data matrix.

 
--rank-transform (rank transform the data first)

The data is rank-transformed prior to the computation of pairwise measures.

 
-write-data <fname> (write data to file)

This writes the data that was read in to file. If --spearman is specified the data will be rank-transformed.

 
-write-na <fname> (write NA matrix to file)

This writes all positions for which no data was found to file, in native mcl matrix format.

 
--zero-as-na (treat zeroes as missing data)

This option can be useful when reading data with the -imx option, for example after it has been loaded from label input by mcxload. An example case is the processing of a large number of probe rankings, where not all rankings contain all probe names. The rankings can be loaded using mcxload with a tab file containing all probe names. Probes that are present in the ranking are given a positive ordinal number reflecting the ranking, and probes that are absent are implicitly given the value zero. With the present option mcxarray will handle the correlation computation in a reasonable way.

 
-n mode (normalization mode)

If mode is set to z the data will be normalized based on z-score. No other modes are currently supported.

 
-tf spec (transform result network)
-table-tf spec (transform input table before processing)

The transformation syntax is described in mcxio.

 
--help (print help)
-h (print help)
 
--version (print version information)

AUTHOR

Stijn van Dongen.

SEE ALSO

mcl, mclfaq, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mclindex.ps0000644000402500021140000002451011754271042012212 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:14 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d636c696e6465>20 48 Q 139.855 <78283729204d495343454c4c414e454f5553>-.15 F<6d636c696e6465>144.855 E <78283729>-.15 E/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d636c696e6465>100 96 Q 2.5<78ad616c>-.15 G<697374206f66207468652075 74696c697469657320616e64206d6f64756c65732070726573656e7420696e2074686520 4d434c2064697374726962>-2.5 E<7574696f6e2e>-.2 E -.15<466f>100 120 S 2.5 <726d>.15 G<6f726520696e666f726d6174696f6e2c20636f6e73756c74>-2.5 E/F2 10/Times-Bold@0 SF<6d636c66616d696c79283729>2.5 E F0<2e>A F1 <47656e65726963207374756666>20 148.8 Q F2<6d636c283129>100 160.8 Q F0 <746865206d636c206d616e75616c2070616765>120 172.8 Q F2 <6d636c666171283729>100 184.8 Q F0<746865206d636c2046>120 196.8 Q -.55 <4151>-.74 G F2<6d6378696f283529>100 208.8 Q F0 <746865206d636c206d617472697820666f726d61742073706563698c636174696f6e> 120 220.8 Q F2<6d636c706970656c696e65283129>100 232.8 Q F0<67656e657269 6320706970656c696e65202870617273696e672f6d6174726978206372656174696f6e2f 636c7573746572696e672f646973706c617929>120 244.8 Q F2<6d6378283129>100 256.8 Q F0<696e74657266>120 268.8 Q <61636520746f206261736963206d6174726978206f7065726174696f6e73>-.1 E F2 <6d6378617373656d626c65283129>100 280.8 Q F0<7072657061726520696e707574 206d61747269782066726f6d20636f6f6363757272656e63652073636f726573>120 292.8 Q F2<6d637864756d70283129>100 304.8 Q F0<64756d70206d617472696365 732c206f7074696f6e616c6c79206d617020696e646963657320746f206c6162656c73> 120 316.8 Q F2<6d63786172726179283129>100 328.8 Q F0<7472616e73666f726d 206172726179206461746120746f204d434c206d61747269636573>120 340.8 Q F2 <6d6378636f6e>100 352.8 Q -.1<7665>-.4 G<7274283129>.1 E F0<636f6e>120 364.8 Q -.15<7665>-.4 G<7274206265747765656e2061736369692f62696e61727920 73746f72616765207479706573>.15 E F1 <4465616c696e67207769746820636c7573746572696e672072>20 393.6 Q <6573756c7473>-.197 E F2<636c6d66>100 405.6 Q<6f726d6174283129>-.25 E F0 <646973706c617920636c7573746572696e677320696e2062726f>120 417.6 Q <777361626c6520666f726d6174>-.25 E F2<636c6d64697374283129>100 429.6 Q F0<636f6d707574652064697374616e636573206265747765656e20636c757374657269 6e6773>120 441.6 Q F2<636c6d696e66>100 453.6 Q<6f283129>-.25 E F0<706572 666f726d616e6365206d6561737572657320666f7220636c7573746572696e6773>120 465.6 Q F2<636c6d6d656574283129>100 477.6 Q F0 <636f6d7075746520696e74657273656374696f6e206f6620636c7573746572696e6773> 120 489.6 Q F2<636c6d6d617465283129>100 501.6 Q F0 <636f6d707574652062657374206d617463686573206265747765656e207477>120 513.6 Q 2.5<6f63>-.1 G<6c7573746572696e6773>-2.5 E F2 <636c6d696d6163283129>100 525.6 Q F0<496e74657270726574204d617472696365 732028632e712e204d434c2069746572616e64732920417320436c7573746572696e6773> 120 537.6 Q F2<636c6d72>100 549.6 Q<657369647565283129>-.18 E F0 -.15 <6578>120 561.6 S<74656e6420737562677261706820636c7573746572696e6773206f 6e746f20656e636f6d70617373696e67206772617068>.15 E F2 <636c6d6f72646572283129>100 573.6 Q F0<72656f7264657220696e646963657320 746f20726570726573656e7420626c6f636b732066726f6d20646966>120 585.6 Q <666572656e7420636c7573746572696e6773>-.25 E F2<636c6d636c6f7365283129> 100 597.6 Q F0<666574636820636f6e6e656374656420636f6d706f6e656e74732066 726f6d20677261706873206f7220737562677261706873>120 609.6 Q F1 <4465616c696e672077697468206d61747269636573>20 638.4 Q F2 <6d6378696f283529>100 650.4 Q F0 <746865206d636c206d617472697820666f726d61742073706563698c636174696f6e> 120 662.4 Q F2<6d6378283129>100 674.4 Q F0<696e74657266>120 686.4 Q <61636520746f206261736963206d6174726978206f7065726174696f6e73>-.1 E F2 <6d637873756273283129>100 698.4 Q F0 -.15<6578>120 710.4 S<747261637420 7375626d617472696365732062792073706563698c79696e672073657473206f66206e6f 64657320616e6420636c757374657273>.15 E F2<6d63786d6170283129>100 722.4 Q F0<6d636c696e6465>20 768 Q 2.5<7831>-.15 G 136.935<322d313335203134>-2.5 F<4d61792032303132>2.5 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d636c696e6465>20 48 Q 139.855 <78283729204d495343454c4c414e454f5553>-.15 F<6d636c696e6465>144.855 E <78283729>-.15 E<72656d6170206d617472697820696e6469636573202f2072656c61 62656c206772617068206e6f646573>120 84 Q/F1 10/Times-Bold@0 SF <6d6378617373656d626c65283129>100 96 Q F0<7072657061726520696e707574206d 61747269782066726f6d20636f6f6363757272656e63652073636f726573>120 108 Q /F2 10.95/Times-Bold@0 SF -.274<4170>20 136.8 S<706c69636174696f6e207370 6563698c63207061727365727320616e64207772617070657273>.274 E F1 <424c415354207061636b616765>100 172.8 Q F0 2.5<2d44>2.5 G <6f63756d656e746174696f6e206f6e6c792061>-2.5 E -.25<7661>-.2 G <696c61626c6520696620696e7374616c6c65642077697468>.25 E F1 <2d2d656e61626c652d626c617374>2.5 E/F3 10/Courier@0 SF <5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f>100 184.8 Q F1 <6d636c626c6173746c696e65283129>100 196.8 Q F0<706970656c696e6520666f72 20636c7573746572696e672066726f6d20626c617374208c6c6573>120 208.8 Q F1 <6d63786465626c617374283129>100 220.8 Q F0 <7072657061726520696e7075742066726f6d20626c617374208c6c6573>120 232.8 Q <6d636c696e6465>20 768 Q 2.5<7831>-.15 G 136.935<322d313335203134>-2.5 F <4d61792032303132>2.5 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxrand.html0000644000402500021140000004510711754271045012375 00000000000000 The mcxrand manual

14 May 2012    mcxrand 12-135

NAME

mcxrand — random shuffling, removal, addition, and perturbation of edges of graphs

SYNOPSIS

mcxrand [options]

mcxrand -gen K -add N -new-g-mean f # random graph on K nodes, N edges mcxrand -imx <name> -remove N -add N # remove then add edges mcxrand -imx <name> -shuffle N # shuffle N edge pairs mcxrand -imx <name> -noise-radius f # add noise to add weights
mcxrand -pa N/m # preferential attachment generation

mcxrand [-imx <fname> (input matrix)] [-o <fname> (output matrix to <fname>)] [--write-binary (write output in binary format)] [-gen <num> (generate new graph)] [-pa <N>/<m> (preferential attachment)] [-remove <num> (remove <num> edges)] [-add <num> (add <num> edges not yet present)] [-shuffle <num> (shuffle edge pair <num> times)] [-noise-radius <num> (maximum spread to add noise with)] [-noise-sdev <num> (noise standard deviation)] [-noise-range <num> (noise range factor)] [-edge-min <num> (absolute edge weight minimum)] [-edge-max <num> (absolute edge weight maximum)] [-new-g-mean <num> (mean for new edges (Gaussian))] [-new-g-sdev <num> (standard deviation for new edges (Gaussian))] [-new-g-radius <num> (maximum spread for new edges (Gaussian))] [-new-g-min <num> (lower bound selection (Gaussian))] [-new-g-max <num> (upper bound selection (Gaussian))] [-skew <num> (skew towards min or max)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

This utility is a recent addition to the mcl suite and the schemes explained below will likely be evolved, simplified, and extended with future releases.

The --shuffle, -gen and -pa options can be deemend stable and robust. The options that determine edge weight perturbation and generation are likely to be subject to revision in the future.

The input graph/matrix, if specified with the -imx option, has to be in mcl matrix/graph format. You can use label input instead by preprocessing the label input with mcxload, i.e.

mcxload -abc <label-file> | mcxrand [options]

Refer to mcxio for a description of these two input formats. By default mcxrand reads from STDIN. Change this with the -imx option.

mcxrand can randomly remove and add edges to a graph, or add gaussian noise to the edge weights of a graph. It can also shuffle edge pairs while preserving the degree sequence of the graph. In removal mode (-remove <num>) and in addition mode (-add <num>) mcxrand enforces arc symmetry by only working with edges w(i,j) where i < j and symmetrifying the result and adding any loops that were present in the input graph just before the output stage.

In perturbation mode (-noise-radius, with no other mode specified) the input can be any graph.

Shuffle mode (-shuffle <num>) requires an undirected graph but will only fail when it picks an arc for which the arc in the reverse direction is not present. This means it may or may not fail on directed input depending on the random choices. It does not check equality of the two arc weights and randomly picks one to represent the edge weight.

Edge removal, edge creation, and edge perturbation are applied in this order if both are specified. Edge shuffling presently cannot be combined with one of the previous modes.

A random graph can be generated with -gen k, which specifies the number of nodes the graph should have. It is equivalent with pasing (the file name of) an empty graph of the same dimensions as the argument to -imx.

When adding (i.e. creating) edges, the default is to use the uniform distribution for new edge weights ranging in some interval. The default interval is [0,1] and can be modified using the -edge-min min and -edge-max max options. A Gaussian edge weight distribution can be obtained by specifying -new-g-mean num. The standard deviation is by default 1.0 and can be altered with -new-g-sdev num. Currently the edge weigths are generated within the interval [mean-radius, mean+radius] where radius is specified with -new-g-radius. They are further selected to lie within the interval [L,R] if and only if -new-g-min L and -new-g-max R have been specified.

For both uniform and Gaussian edge creation the edge weights can be skewed towards either side of the distribution with -skew c. Skewing is applied by mapping the edge weights to the interval [0,1], applying the function x^c, and remapping the resulting number. For values c<1 this skews the edge weights towards the right bound and for values c>1 this skews the edge weights towards the left bound. This is a rather crude approach that will likely be changed in the future.

Edge weights can be perturbed by specifying -noise-radius radius. This sets the maximum perturbation allowed. Noise is generated with a standard deviation that is by default set to 0.5 and can be altered using -noise-sdev num. Values are generated in the interval [-fac*sdev, fac*sdev] where fac is set with -noise-range fac. This interval is mapped to the interval [-radius, radius] before the resulting value is added to the actual edge weight. This becomes the new value. If an interval [L,R] is explicitly specified using -edge-min L and -edge-max R then the new value will be accepted only if it lies within the interval, otherwise the edge will not be perturbed.

OPTIONS

-imx <fname> (input matrix)

The file name for input. STDIN is assumed if neither -imx nor -gen num is specified.

 
-o <fname> (output matrix to <fname>)

The file to write the transformed matrix to.

 
--write-binary (write output in binary format)

Write the output matrix in native binary format.

 
-shuffle <num> (shuffle edge pair <num> times)

Shuffle edge pair <num> times. An edge shuffle acts on two randomly chosen edges edges w(a,b) and w(c,d) where all the nodes must be different. If either none of the edges in w(a,c), w(b,d) or none of the edges in w(a,d), w(b,c) exists the original two edges are removed and is replaced by an edge pair for which both edges did not exist before.

 
-pa <N>/<m> (preferential attachment)

This generates a random graph using preferential attachment. In this model new nodes are sequentially added to a graph. Each new node is connected with <m> of the existing nodes (including nodes previously added), where the likelihood of picking an existing node is proportional to the edge degree of that node. During construction multiple edges between two nodes are allowed (each with weight one), and these are collapsed by adding their weights before output.

 
-remove <num> (remove <num> edges)

Remove this many edges from the input graph.

 
-add <num> (add <num> edges not yet present)

Create this many new edges.

 
-gen <num> (node number)

Use in conjunction with -add to generate a random graph on <num> nodes.

 
-noise-radius <num> (maximum spread to add noise with)
-noise-sdev <num> (standard deviation)
-noise-range <fac> (number of standard deviations allowed)

See the discussion in DESCRIPTION.

 
-edge-min <num> (global edge weight minimum)
-edge-max <num> (global edge weight maximum)

See the discussion in DESCRIPTION.

 
-skew <num> (skew towards min or max)

See the discussion in DESCRIPTION.

 
-new-g-mean <num> (mean to generate new edges with)
-new-g-sdev <num> (standard deviation to generate new edges with)
-new-g-radius <num> (maximum spread to generate new edges with)
-new-g-min <num> (lower bound selection (Gaussian))
-new-g-max <num> (upper bound selection (Gaussian))

See the discussion in DESCRIPTION.

SEE ALSO

mcxio, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/tingea.log.html0000644000402500021140000001753511754271046012775 00000000000000 How to set the Tingea log parameters

14 May 2012    tingea.log 12-135

NAME

tingea.log — How to set the Tingea log parameters

DESCRIPTION

The Tingea logging framework is part of the Tingea library. In this context logging means that a pgrogram issues statements about what it is doing. It can do so for different purposes and at different levels of verbosity. By default logging statements are written on STDERR.

Tingea logging provides a quick and easy way for programmers to associate verbosity levels with logging statements. Only logging statements for which the verbosity level does not exceed the user-imposed threshold will be executed. Users can easily regulate the verbosity level by setting the environment variable TINGEA_LOG_TAG. Alternatively, programs may accept a command line argument. The format accepted by both environment variable and command line argument is identical. For the command line the programmer is free in choosing the option name. It is customarily named -q. The availability of such an option may vary from program to program. However, any program that makes use of the Tingea logging facilities can be regulated with the TINGEA_LOG_TAG environment variable. If a -q type option is present and the environment variable is set, then the environment variable is interpreted first followed by the -q argument.

Tingea logging allows a programmer to assign categories to logging statements. The categories FUNCTION and DATA have a subdivision ranging from fine-grained to coarse-grained. The categorie MONITORING has a subdivision ranging from low priority to high priority. The other categories are unimodal. These are IO, THREAD, PROCESS, and GAUGE. Three unspecified unimodal categories are SLOT1, SLOT2, and SLOT3. They can be used to encode program-specific semantics.

The programmer may assign multiple categories to a single logging statement. It is unusual for more than two categories to be specified. For example, IO and DATA at the LIST level may be combined to indicate a logging statement that provides data summaries for a certain IO related information. In order of granularity the DATA levels are CELL, LIST, and AGGREGRATE. If the user accepts IO logging and accepts DATA logging at level CELL or LIST the statement will be executed. If no IO logging is accepted or DATA logging is only accepted at the AGGREGRATE level, the statement will be skipped.

By default, all categories that are specified by the programmer need to pass the threshold specified by the user for that category. The user may relax this requirement so that only one category needs to pass the user threshold. In the above example, the statement categorized as both IO and DATA at LIST level will be accepted if the user specifies IO and DATA at AGGR level with OR semantics.

SYNTAX

The syntax of the TINGEA_LOG_TAG environment variable is described by

[[189x]]{<[dfgimpstABC][1-9]>*,[V]}

which translates to the following. An optional lead tag is followed by a concatenation of units. A unit is either a pair in [dfgimpstABC] x [1-9x] or the single character V. The leading tag semantics are described further below. The single character V, if present, specifies that OR semantics should be used rather than the default AND semantics. The semantics for the other units are given below.

d DATA 1 CELL 2 LIST 3 AGGR x turned off f FUNCTION 1 LINE 2 FUNCTION 3 MODULE 4 APPLICATION x turned off m MONITORING 1 DEBUG 2 INFO 3 WARNING 4 ERROR 5 PANIC x turned off g GAUGE | i IO | n NETWORK | p PROCESS | (Inter Process really) t THREAD |______ 1 on | x off A SLOT1 | B SLOT2 | C SLOT3 |

The leading tag can be used to set levels for all categories at once. Subsequent units may then alter this intial setting. The lead tag settings and their meaning are these:

1 d1f1m1g1i1p1s1t1A1B1C1 # very yappy 9 d3f4m5gxixpxsxtxAxBxCx # very terse, only d f m 8 d3f4m5g1i1p1s1t1A1B1C1 # less terse x dxfxmxgxixpxsxtxAxBxCx # silent

All categories accept values between 1 and 9 in addition to the value x. As seen above, only a few categories contain more than one level and no category contains more than five levels. The rule is that if a level exceeds the maximul level available for a category it is simply interpreted as the maximum level.

The GAUGE category, if set, indicates that a program may write line based progress bars or other output in which a single line is accumulated over multiple statements. This implies that a single GAUGE logging statement may not result in newline-terminated output. This is undesirable in case the logging stream is directed to a file that is written to by other applications as well. In that case, turn off GAUGE. All other categories are garantueed to result in line-terminated output, by virtue of the programmer contract.

AUTHOR

Stijn van Dongen.

mcl-12-135/doc/TODO0000644000402500021140000000423310521401747010531 00000000000000 - move shade1 and leader to webindex.azm; remove style.css dependency. Improve css classes etc. instead of use

etcetc. o faq.zmm: there is a
at the end of \ans. Doing this with

inside the element failed miserably in NS -- at an unexpected place, namely too much ws at *beginning* of the faqsec-table. o zoemtut: there is a double
in html itemize env. single sufficient? instead of the

to create paragraph skips between dt entries, wrap each dt entry in a div, give it a class, and set its margin-bottom attribute. Well, try at least. o can I use .ns and .rs in troff for verbatim environment? o after vbt env, no need to enter \par for html. How is that for troff? * TP not good voor toc in nroff -> paragraphs skip. need sth else. using tab positions now: it will not wrap. can copy the solution made for faq.zmm. o A space at EOL could be unpleasant in troff. Confirm/refute. o netscape sfcks because it does not correctly remember the align setting if you do X, where X is probably setting the aligning locally somewhere between
tags. o should try to modularize the html macro's as much as possible. did this for and (\_htmlanch and \_htmlhref). Same for roff, but less urgent as roff support is not as complex as html support. * [ when using \fB in the \bf{} definition, no \n should occur in [ the argument. [ ? is that true ? [ how can I prevent this from happening? [ how about a directive: forbid char X until revoke? (mmm. heavy) It is only partially true. It may lead to unwanted paragraph skips in troff if the '\fB' or '\fP' part ends up on a line by itself. This would be cured by escaping the newline. * Related: How to prevent context sensitive stuff like "\n." in troff. Right now I map '.' always to '\&.' -- which is ok I guess. o consistent typesetting of symbols and arguments in docs. clmdist uses bf. Should be sth else? italic for generic arguments 'k'. typeface for actual argument, '5'. ???? for mathematical symbol. mcl-12-135/doc/mcxclcf.ps0000644000402500021140000003611711754271044012036 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:16 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d637820636c6366283129>20 48 Q <5553455220434f4d4d414e4453>142.905 E<6d637820636c6366283129>145.405 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d637820636c 636620ad20636f6d707574652074686520636c7573746572696e6720636f6566>100 96 Q<8c6369656e74206f662061206772617068>-.25 E F1<53594e4f50534953>20 112.8 Q/F2 10/Times-Bold@0 SF<6d637820636c6366>100 124.8 Q F0 <5b6f7074696f6e735d205b6d61747269782d8c6c655d>2.5 E .41 <6d6378636c6366206973206e6f7420696e2061637475616c2066>100 148.8 R .409< 61637420612070726f6772616d2e2054686973206d616e75616c207061676520646f6375 6d656e7473207468652062656861>-.1 F .409 <76696f757220616e64206f7074696f6e73>-.2 F 1.696 <6f6620746865206d63782070726f6772616d207768656e20696e>100 160.8 R -.2 <766f>-.4 G -.1<6b65>.2 G 4.196<6469>.1 G 4.196<6e6d>-4.196 G<6f6465> -4.196 E/F3 10/Times-Italic@0 SF<636c6366>4.196 E F0 4.197<2e54>C 1.697 <6865206f7074696f6e73>-4.197 F F2<2d68>4.197 E F0<2c>A F2<2d2d617072> 4.197 E<6f706f73>-.18 E F0<2c>A F2<2d2d76>4.197 E<657273696f6e>-.1 E F0 <2c>A F2<2d736574>4.197 E F0<2c>A F2<2d2d6e6f70>100 172.8 Q F0<2c>A F2 <2d7072>3.123 E<6f6772>-.18 E<657373>-.18 E F3<3c6e756d3e>2.5 E F0 .622 <6172652061636365737369626c6520696e20616c6c>3.123 F F2<6d6378>3.122 E F0 .622<6d6f6465732e20546865>3.122 F 3.122<7961>-.15 G .622 <72652064657363726962656420696e20746865>-3.122 F F2<6d6378>3.122 E F0 <6d616e2d>3.122 E<75616c20706167652e>100 184.8 Q F2 2.08 <6d637820636c6366205b2d616263>100 208.8 R F0 2.081<3c666e616d653e2028> 4.581 F F3 2.081<73706563696679206c6162656c20696e707574>B F0<29>A F2 4.581<5d5b>C<2d696d78>-4.581 E F0 2.081<3c666e616d653e2028>4.581 F F3 2.081<73706563696679206d617472697820696e707574>B F0<29>A F2 4.581<5d5b>C <2d746162>-4.581 E F0 .266<3c666e616d653e2028>100 220.8 R F3 .266 <75736520746162208c6c65>B F0<29>A F2 2.766<5d5b>C<2d6f>-2.766 E F0 .266 <3c666e616d653e2028>2.766 F F3 .266<777269746520746f2074686973208c6c65>B F0<29>A F2 2.766<5d5b>C<2d74>-2.766 E F0 .265<3c696e743e2028>2.765 F F3 .265<757365203c696e743e20746872>B<65616473>-.37 E F0<29>A F2 2.765<5d5b> C<2d4a>-2.765 E F0<3c696e744a3e>2.765 E<28>100 232.8 Q F3 3.86<6174>C 1.36<6f74616c206f66203c696e744a3e206a6f6273206172>-3.86 F 3.861<6575> -.37 G<736564>-3.861 E F0<29>A F2 3.861<5d5b>C<2d6a>-3.861 E F0 1.361 <3c696e746a3e2028>3.861 F F3 1.361<74686973206a6f622068617320696e6465>B 3.861<783c>-.2 G<696e746a3e>-3.861 E F0<29>A F2 3.861<5d5b>C <2d2d73756d6d617279>-3.861 E F0<28>3.861 E F3 -.37<7265>C<7475726e>.37 E .72<6d65616e20636c7573746572696e6720636f6566>100 244.8 R<8c6369656e74> -.18 E F0<29>A F2 3.219<5d5b>C<2d68>-3.219 E F0<28>3.219 E F3 .719 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2 3.219 <5d5b>C<2d2d617072>-3.219 E<6f706f73>-.18 E F0<28>3.219 E F3 .719 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2 3.219 <5d5b>C<2d2d76>-3.219 E<6572>-.1 E<2d>-.37 E<73696f6e>100 256.8 Q F0<28> 2.5 E F3<7072696e7420766572>A<73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F2<5d>A F1<4445534352495054494f4e>20 273.6 Q F2<6d637820636c6366>100 285.6 Q F0<636f6d70757465732074686520636c7573746572696e6720636f6566>2.5 E<8c6369656e74206f6620612067726170682e>-.25 E .461<54686520696e70757420 67726170682f6d61747269782c2069662073706563698c6564207769746820746865>100 309.6 R F2<2d696d78>2.961 E F0 .462<6f7074696f6e2c2068617320746f20626520 696e206d636c206d61747269782f677261706820666f726d61742e>2.961 F -1.1 <596f>100 321.6 S 2.794<7563>1.1 G .294<616e20757365206c6162656c20696e70 757420696e7374656164206279207573696e6720746865>-2.794 F F2<2d616263> 2.794 E F0 2.793<6f7074696f6e2e205265666572>2.793 F<746f>2.793 E F2 <6d6378696f283529>2.793 E F0 .293 <666f722061206465736372697074696f6e206f66>2.793 F .777<7468657365207477> 100 333.6 R 3.277<6f69>-.1 G .778<6e70757420666f726d6174732e>-3.277 F .778<427920646566>5.778 F<61756c74>-.1 E F2 .778 <6d6378206469616d65746572>3.278 F F0 .778 <72656164732066726f6d20535444494e>3.278 F F3 .778<616e642065>3.278 F .778<787065637473206d617472697820666f72>-.2 F<2d>-.2 E<6d6174>100 345.6 Q F0 5<2e54>C 2.5<6f73>-5.8 G <706563696679206c6162656c20696e7075742066726f6d20535444494e20757365>-2.5 E F2<2d616263202d>2.5 E F0<2e>A F1<4f5054494f4e53>20 362.4 Q F2 <2d616263>100 374.4 Q F0<3c666e616d653e2028>2.5 E F3 <6c6162656c20696e707574>A F0<29>A<546865208c6c65206e616d6520666f7220696e 707574207468617420697320696e206c6162656c20666f726d61742e>120 386.4 Q F2 <2d696d78>100 410.4 Q F0<3c666e616d653e2028>2.5 E F3 <696e707574206d6174726978>A F0<29>A<546865208c6c65206e616d6520666f722069 6e7075742e20535444494e20697320617373756d6564206966206e6f742073706563698c 65642e>120 422.4 Q F2<2d6f>100 446.4 Q F0<3c666e616d653e2028>2.5 E F3 <6f7574707574208c6c65>A F0<29>A<546865208c6c65206e616d6520666f72206f7574 7075742e205354444f55542069732074686520646566>120 458.4 Q <61756c74206f75747075742073747265616d2e>-.1 E F2<2d746162>100 482.4 Q F0 <3c666e616d653e2028>2.5 E F3<75736520746162208c6c65>A F0<29>A .479<5468 6973206f7074696f6e2063617573657320746865206f757470757420746f206265207072 696e746564207769746820746865206c6162656c7320666f756e6420696e207468652074 6162208c6c652e>120 494.4 R -.4<5769>5.478 G<7468>.4 E F2<2d616263>2.978 E F0 .819<74686973206f7074696f6e2077696c6c2c206164646974696f6e616c6c79> 120 506.4 R 3.319<2c63>-.65 G .819<6f6e7374727563742061206772617068206f 6e6c79206f6e20746865206c6162656c7320666f756e6420696e2074686520746162208c 6c652e>-3.319 F<4966>5.82 E 1.59<74686973206f7074696f6e2069732075736564 20696e20636f6e6a756e6374696f6e2077697468>120 518.4 R F2<2d696d78>4.09 E F0 1.59<7468652074616220646f6d61696e20616e6420746865206d617472697820646f 6d61696e20617265>4.09 F <726571756972656420746f206265206964656e746963616c2e>120 530.4 Q F2 <2d2d73756d6d617279>100 554.4 Q F0<28>2.5 E F3 -.37<7265>C <7475726e206d65616e20636c7573746572696e6720636f6566>.37 E<8c6369656e74> -.18 E F0<29>A 1.503<42792074686520646566>120 566.4 R 1.503 <61756c74206120312d636f6c756d6e207461626c6520287769746820726f>-.1 F 4.003<776e>-.25 G 1.504 <616d657320696e636c7564656429206973206f75747075742c206f6e6520726f>-4.003 F 4.004<7766>-.25 G 1.504<6f722065616368>-4.004 F<6e6f64652e205468697320 6f7074696f6e2063617573657320746865206f7574707574206f66207468652061>120 578.4 Q -.15<7665>-.2 G<7261676520636c7573746572696e6720636f6566>.15 E <8c6369656e74206f6e6c792e>-.25 E F2<2d74>100 602.4 Q F0<3c696e743e2028> 2.5 E F3<757365203c696e743e20746872>A<65616473>-.37 E F0<29>A F2<2d4a> 100 614.4 Q F0<3c696e744a3e2028>2.5 E F3 2.5<6174>C <6f74616c206f66203c696e744a3e206a6f6273206172>-2.5 E 2.5<6575>-.37 G <736564>-2.5 E F0<29>A F2<2d6a>100 626.4 Q F0<3c696e746a3e2028>2.5 E F3 <74686973206a6f622068617320696e6465>A 2.5<783c>-.2 G<696e746a3e>-2.5 E F0<29>A 1.141<436f6d707574696e6720636c7573746572696e6720636f6566>120 638.4 R 1.141<8c6369656e74732069732074696d652d696e74656e7369>-.25 F 1.441 -.15<76652066>-.25 H 1.141<6f72206c6172>.15 F 1.141 <6765206772617068732e20496620796f75206861>-.18 F 1.44 -.15<7665206d>-.2 H<756c7469706c65>.15 E 1.346<435055732061>120 650.4 R -.25<7661>-.2 G 1.347<696c61626c6520636f6e7369646572207573696e67206173206d616e>.25 F 3.847<7974>-.15 G 1.347<6872656164732e204164646974696f6e616c6c7920697420 697320706f737369626c6520746f2073707265616420746865>-3.847 F .095 <636f6d7075746174696f6e206f>120 662.4 R -.15<7665>-.15 G 2.595<726d>.15 G .095 <756c7469706c65206a6f62732f6d616368696e65732e20436f6e6365707475616c6c79> -2.595 F 2.595<2c65>-.65 G .095<616368206a6f622074616b>-2.595 F .094 <65732061206e756d626572206f662074687265616473>-.1 F .524<66726f6d207468 6520746f74616c2074687265616420706f6f6c2e204966206a6f6220636f6e74726f6c20 697320757365642028746865>120 674.4 R F2<2d4a>3.024 E F0 .524 <6f7074696f6e206973207573656429207468656e20746865206e756d626572206f66> 3.024 F .582<6a6f62732073686f756c64206e6f742065>120 686.4 R .582 <786365656420746865206e756d626572206f6620746872656164732e>-.15 F .582 <54686520746f74616c206e756d626572206f662074687265616473206469>5.582 F .582<766964656420627920746865>-.25 F 1.388<746f74616c206e756d626572206f 66206a6f62732064658c6e657320746865206e756d626572206f66207468726561647320 746861742077696c6c2062652075736564206279207468652063757272656e74206a6f62 2e>120 698.4 R<4164646974696f6e616c6c79>120 710.4 Q 2.741<2c74>-.65 G .241<6865206e756d626572206f6620746872656164732073706563698c656420736967 6e698c65732074686520746f74616c20616464656420616d6f756e74206f6620616c6c20 74687265616473>-2.741 F .647 <6163726f737320616c6c206d616368696e657320616e64>120 722.4 R F3<6d757374> 3.147 E F0 .648<6265207468652073616d6520666f7220616c6c206a6f62732e205468 6973206e756d62657220697320757365642062792065616368206a6f6220746f>3.148 F <6d637820636c63662031322d313335>20 768 Q<3134204d61792032303132>141.795 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d637820636c6366283129>20 48 Q <5553455220434f4d4d414e4453>142.905 E<6d637820636c6366283129>145.405 E 1.453<696e66657220697473206f>120 84 R 1.453 <776e20736574206f66207461736b732e2054686520666f6c6c6f>-.25 F 1.452 <77696e6720736574206f66206f7074696f6e732c206966206769>-.25 F -.15<7665> -.25 G 3.952<6e74>.15 G 3.952<6f61>-3.952 G 3.952<736d>-3.952 G<616e> -3.952 E 3.952<7963>-.15 G<6f6d6d616e64732c>-3.952 E<64658c6e6573207468 726565206a6f62732c20656163682072756e6e696e6720666f757220746872656164732e> 120 96 Q/F1 10/Courier@0 SF<2d74203132202d472033202d672030>120 120 Q <2d74203132202d472033202d672031>120 132 Q <2d74203132202d472033202d672032>120 144 Q/F2 10.95/Times-Bold@0 SF <53454520414c534f>20 172.8 Q/F3 10/Times-Bold@0 SF<6d6378696f283529>100 184.8 Q F0 2.666<2c61>C<6e64>-2.666 E F3<6d636c66616d696c79283729>2.666 E F0 .166<666f7220616e206f>2.666 F -.15<7665>-.15 G<72766965>.15 E 2.667 <776f>-.25 G 2.667<6661>-2.667 G .167<6c6c2074686520646f63756d656e746174 696f6e20616e6420746865207574696c697469657320696e20746865206d636c>-2.667 F -.1<6661>100 196.8 S<6d696c792e>.1 E<6d637820636c63662031322d313335>20 768 Q<3134204d61792032303132>141.795 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mclfaq.html0000644000402500021140000025355511754271043012212 00000000000000 The MCL FAQ

14 May 2012    MCL FAQ 12-135

1.
2.
3.
TOC
4.
FAQ
5.
6.
7.
8.
9.

NAME

mclfaq — faqs and facts about the MCL cluster algorithm.

MCL refers to the generic MCL algorithm and the MCL process on which the algorithm is based. mcl refers to the implementation. This FAQ answers questions related to both. In some places MCL is written where MCL or mcl can be read. This is the case for example in section 3, What kind of graphs. It should in general be obvious from the context.

This FAQ does not begin to attempt to explain the motivation and mathematics behind the MCL algorithm - the internals are not explained. A broad view is given in faq 1.2, and see also faq 1.5 and section REFERENCES.

Some additional sections preceed the actual faq entries. The TOC section contains a listing of all questions. Clicking on the number of a question (where it is answered) will take you to the corresponding section of the table of contents.

RESOURCES

The manual pages for all the utilities that come with mcl; refer to mclfamily for an overview.

See the REFERENCES Section for publications detailing the mathematics behind the MCL algorithm.

TOC













FAQ

1
General questions

For whom is mcl and for whom is this FAQ?

For everybody with an appetite for graph clustering. Regarding the FAQ, I have kept the amount of mathematics as low as possible, as far as matrix analysis is concerned. Inevitably, some terminology pops up and some references are made to the innards of the MCL algorithm, especially in the section on resources and accuracy. Graph terminology is used somewhat more carelessly though. The future might bring definition entries, right now you have to do without. Mathematically inclined people may be interested in the pointers found in the REFERENCES section.

Given this mention of mathematics, let me point out this one time only that using mcl is extremely straightforward anyway. You need only mcl and an input graph (refer to the mcl manual page), and many people trained in something else than mathematics are using mcl happily.

 
What is the relationship between the MCL process, the MCL algorithm, and the 'mcl' implementation?

mcl is what you use for clustering. It implements the MCL algorithm, which is a cluster algorithm for graphs. The MCL algorithm is basically a shell in which the MCL process is computed and interpreted. I will describe them in the natural, reverse, order.

The MCL process generates a sequence of stochastic matrices given some initial stochastic matrix. The elements with even index are obtained by expanding the previous element, and the elements with odd index are obtained by inflating the previous element given some inflation constant. Expansion is nothing but normal matrix squaring, and inflation is a particular way of rescaling the entries of a stochastic matrix such that it remains stochastic.

The sequence of MCL elements (from the MCL process) is in principle without end, but what happens is that the elements converge to some specific kind of matrix, called the limit of the process. The heuristic underlying MCL predicts that the interaction of expansion with inflation will lead to a limit exhibiting cluster structure in the graph associated with the initial matrix. This is indeed the case, and several mathematical results tie MCL iterands and limits and the MCL interpretation together (REFERENCES).

The MCL algorithm is simply a shell around the MCL process. It transforms an input graph into an initial matrix suitable for starting the process. It sets inflation parameters and stops the MCL process once a limit is reached, i.e. convergence is detected. The result is then interpreted as a clustering.

The mcl implementation supplies the functionality of the MCL algorithm, with some extra facilities for manipulation of the input graph, interpreting the result, manipulating resources while computing the process, and monitoring the state of these manipulations.

 
What do the letters MCL stand for?

For Markov Cluster. The MCL algorithm is a cluster algorithm that is basically a shell in which an algebraic process is computed. This process iteratively generates stochastic matrices, also known as Markov matrices, named after the famous Russian mathematician Andrei Markov.

 
How could you be so feebleminded to use MCL as abbreviation? Why is it labeled 'Markov cluster' anyway?

Sigh. It is a widely known fact that a TLA or Three-Letter-Acronym is the canonical self-describing abbreviation for the name of a species with which computing terminology is infested (quoted from the Free Online Dictionary of Computing). Back when I was thinking of a nice tag for this cute algorithm, I was totally unaware of this. I naturally dismissed MC (and would still do that today). Then MCL occurred to me, and without giving it much thought I started using it. A Google search (or was I still using Alta-Vista back then?) might have kept me from going astray.

Indeed, MCL is used as a tag for Macintosh Common Lisp, Mission Critical Linux, Monte Carlo Localization, MUD Client for Linux, Movement for Canadian Literacy, and a gazillion other things — refer to the file mclmcl.txt. Confusing. It seems that the three characters MCL possess otherworldly magical powers making them an ever so strange and strong attractor in the space of TLAs. It probably helps that Em-See-Ell (Em-Say-Ell in Dutch) has some rhythm to it as well. Anyway MCL stuck, and it's here to stay.

On a more general level, the label Markov Cluster is not an entirely fortunate choice either. Although phrased in the language of stochastic matrices, MCL theory bears very little relation to Markov theory, and is much closer to matrix analysis (including Hilbert's distance) and the theory of dynamical systems. No results have been derived in the latter framework, but many conjectures are naturally posed in the language of dynamical systems.

 
Where can I learn about the innards of the MCL algorithm/process?

Currently, the most basic explanation of the MCL algorithm is found in the technical report [2]. It contains sections on several other (related) subjects though, and it assumes some working knowledge on graphs, matrix arithmetic, and stochastic matrices.

 
For which platforms is mcl available?

It should compile and run on virtually any flavour of UNIX (including Linux and the BSD variants of course). Following the instructions in the INSTALL file shipped with mcl should be straightforward and sufficient. Courtesy to Joost van Baal who completely autofooled mcl.

Building MCL on Wintel (Windows on Intel chip) should be straightforward if you use the full suite of cygwin tools. Install cygwin if you do not have it yet. In the cygwin shell, unpack mcl and simply issue the commands ./configure, make, make install, i.e. follow the instructions in INSTALL.

This MCL implementation should also build successfully on Mac OS X.

 
How does mcl's versioning scheme work?

The current setup, which I hope to continue, is this. All releases are identified by a date stamp. For example 02-095 denotes day 95 in the year 2002. This date stamp agrees (as of April 2000) with the (differently presented) date stamp used in all manual pages shipped with that release. For example, the date stamp of the FAQ you are reading is 14 May 2012, which corresponds with the MCL stamp 12-135. The Changelog file contains a list of what's changed/added with each release. Currently, the date stamp is the primary way of identifying an mcl release. When asked for its version by using --version, mcl outputs both the date stamp and a version tag (see below).

2
Input format

How can I get my data into the MCL matrix format?

This is described in the protocols manual page.

3
What kind of graphs

What is legal input for MCL?

Any graph (encoded as a matrix of similarities) that is nonnegative, i.e. all similarities are greater than or equal to zero.

 
What is sensible input for MCL?

Graphs can be weighted, and they should preferably be symmetric. Weights should carry the meaning of similarity, not distance. These weights or similarities are incorporated into the MCL algorithm in a meaningful way. Graphs should certainly not contain parts that are (almost) cyclic, although nothing stops you from experimenting with such input.

 
Does MCL work for weighted graphs?

Yes, unequivocally. They should preferably be symmetric/undirected though. See entries 3.7 and 3.8.

 
Does MCL work for directed graphs?

Maybe, with a big caveat. See entries 3.8 and 3.9.

 
Can MCL work for lattices / directed acyclic graphs / DAGs?

Such graphs [term] can surely exhibit clear cluster structure. If they do, there is only one way for mcl to find out. You have to change all arcs to edges, i.e. if there is an arc from i to j with similarity s(i,j) — by the DAG property this implies s(j,i) = 0 — then make s(j,i) equal to s(i,j).

This may feel like throwing away valuable information, but in truth the information that is thrown away (direction) is not informative with respect to the presence of cluster structure. This may well deserve a longer discussion than would be justified here.

If your graph is directed and acyclic (or parts of it are), you can transform it before clustering with mcl by using -tf '#max()', e.g.

mcl YOUR-GRAPH -I 3.0 -tf '#max()'
 
Does MCL work for tree graphs?

Nah, I don't think so. More info at entry 3.7. You could consider the Strahler number, which is numerical measure of branching complexity.

 
For what kind of graphs does MCL work well and for which does it not?

Graphs in which the diameter [term] of (subgraphs induced by) natural clusters is not too large. Additionally, graphs should preferably be (almost) undirected (see entry below) and not so sparse that the cardinality of the edge set is close to the number of nodes.

A class of such very sparse graphs is that of tree graphs. You might look into graph visualization software and research if you are interested in decomposing trees into 'tight' subtrees.

The diameter criterion could be violated by neighbourhood graphs derived from vector data. In the specific case of 2 and 3 dimensional data, you might be interested in image segmentation and boundary detection, and for the general case there is a host of other algorithms out there. [add]

In case of weighted graphs, the notion of diameter is sometimes not applicable. Generalizing this notion requires inspecting the mixing properties of a subgraph induced by a natural cluster in terms of its spectrum. However, the diameter statement is something grounded on heuristic considerations (confirmed by practical evidence [4]) to begin with, so you should probably forget about mixing properties.

 
What makes a good input graph? How do I construct the similarities? How to make them satisfy this Markov condition?

To begin with the last one: you need not and must not make the input graph such that it is stochastic aka Markovian [term]. What you need to do is make a graph that is preferably symmetric/undirected, i.e. where s(i,j) = s(j,i) for all nodes i and j. It need not be perfectly undirected, see the following faq for a discussion of that. mcl will work with the graph of random walks that is associated with your input graph, and that is the natural state of affairs.

The input graph should preferably be honest in the sense that if s(x,y)=N and s(x,z)=200N (i.e. the similarities differ by a factor 200), then this should really reflect that the similarity of y to x is neglectible compared with the similarity of z to x.

For the rest, anything goes. Try to get a feeling by experimenting. Sometimes it is a good idea to filter out high-frequency and/or low-frequency data, i.e. nodes with either very many neighbours or extremely few neighbours.

 
My input graph is directed. Is that bad?

It depends. The class of directed graphs can be viewed as a spectrum going from undirected graphs to uni-directed graphs. Uni-directed is terminology I am inventing here, which I define as the property that for all node pairs i, j, at least one of s(i,j) or s(j,i) is zero. In other words, if there is an arc going from i to j in a uni-directed graph, then there is no arc going from j to i. I call a node pair i, j, almost uni-directed if s(i,j) << s(j,i) or vice versa, i.e. if the similarities differ by an order of magnitude.

If a graph does not have (large) subparts that are (almost) uni-directed, have a go with mcl. Otherwise, try to make your graph less uni-directed. You are in charge, so do anything with your graph as you see fit, but preferably abstain from feeding mcl uni-directed graphs.

 
Why does mcl like undirected graphs and why does it dislike uni-directed graphs so much?

Mathematically, the mcl iterands will be nice when the input graph is symmetric, where nice is in this case diagonally symmetric to a semi-positive definite matrix (ignore as needed). For one thing, such nice matrices can be interpreted as clusterings in a way that generalizes the interpretation of the mcl limit as a clustering (if you are curious to these intermediate clusterings, see faq entry 9.3). See the REFERENCES section for pointers to mathematical publications.

The reason that mcl dislikes uni-directed graphs is not very mcl specific, it has more to do with the clustering problem itself. Somehow, directionality thwarts the notion of cluster structure. [add].

 
How do I check that my graph/matrix is symmetric/undirected?

Whether your graph is created by third-party software or by custom sofware written by someone you know (e.g. yourself), it is advisable to test whether the software generates symmetric matrices. This can be done as follows using the mcxi utility, assuming that you want to test the matrix stored in file matrix.mci. The mcxi utility should be available on your system if mcl was installed in the normal way.

mcxi /matrix.mci lm tp -1 mul add /check wm

This loads the graph/matrix stored in matrix.mci into mcxi's memory with the mcxi lm primitive. — the leading slash is how strings are introduced in the stack language interpreted by mcxi. The transpose of that matrix is then pushed on the stack with the tp primitive and multiplied by minus one. The two matrices are added, and the result is written to the file check. The transposed matrix is the mirrored version of the original matrix stored in matrix.mci. If a graph/matrix is undirected/symmetric, the mirrored image is necessarily the same, so if you subtract one from the other it should yield an all zero matrix.

Thus, the file check should look like this:

(mclheader mcltype matrix dimensions <num>x<num> ) (mclmatrix begin )

Where <num> is the same as in the file matrix.mci. If this is not the case, find out what's prohibiting you from feeding mcl symmetric matrices. Note that any nonzero entries found in the matrix stored as check correspond to node pairs for which the arcs in the two possible directions have different weight.

4
Speed and complexity

How fast is mcl/MCL?

It's fast - here is how and why. Let N be the number of nodes in the input graph. A straigtforward implementation of MCL will have time and space complexity respecively O(N^3) (i.e. cubic in N) and O(N^2) (quadratic in N). So you don't want one of those.

mcl implements a slightly perturbed version of the MCL process, as discussed in section Resource tuning / accuracy. Refer to that section for a more extensive discussion of all the aspects involved. This section is only concerned with the high-level view of things and the nitty gritty complexity details.

While computing the square of a matrix (the product of that matrix with itself), mcl keeps the matrix sparse by allowing a certain maximum number of nonzero entries per stochastic column. The maximum is one of the mcl parameters, and it is typically set somewhere between 500 and 1500. Call the maximum K.

mcl's time complexity is governed by the complexity of matrix squaring. There are two sub-algorithms to consider. The first is the algorithm responsible for assembling a new vector during matrix multiplication. This algorithm has worst case complexity O(K^2). The pruning algorithm (which uses heap selection) has worst case complexity O(L*log(K)), where L is how large a newly computed matrix column can get before it is reduced to at most K entries. L is bound by the smallest of the two numbers N and K^2 (the square of K), but on average L will be much smaller than that, as the presence of cluster structure aids in keeping the factor L low. [Related to this is the fact that clustering algorithms are actually used to compute matrix splittings that minimize the number of cross-computations when carrying out matrix multiplication among multiple processors.] In actual cases of heavy usage, L is of order in the tens of thousands, and K is in the order of several hundreds up to a thousand.

It is safe to say that in general the worst case complexity of mcl is of order O(N*K^2); for extremely tight and dense graphs this might become O(N*N*log(K)). Still, these are worst case estimates, and observed running times for actual usage are much better than that. (refer to faq 4.2).

In this analysis, the number of iterations required by mcl was not included. It is nearly always far below 100. Only the first few (less than ten) iterations are genuinely time consuming, and they are usually responsible for more than 95 percent of the running time.

The process of removing the smallest entries of a vector is called pruning. mcl outputs a summary of this once it is done. More information is provided in the pruning section of the mcl manual and Section 6 in this FAQ.

The space complexity is of order O(N*K).

 
What statistics are available?

Few. Some experiments are described in [4], and [5] mentions large graphs being clustered in very reasonable time. In protein clustering, mcl has been applied to graphs with up to one million nodes, and on high-end hardware such graphs can be clustered within a few hours.

 
Does this implementation need to sort vectors?

No, it does not. You might expect that one needs to sort a vector in order to obtain the K largest entries, but a simpler mechanism called heap selection does the job nicely. Selecting the K largest entries from a set of L by sorting would require O(L*log(L)) operations; heap selection requires O(L*log(K)) operations. Alternatively, the K largest entries can be also be determined in O(N) + O(K log(K)) asymptotic time by using partition selection (more here and there). It is possible to enable this mode of operaton in mcl with the option --partition-selection. However, benchmarking so far has shown this to be equivalent in speed to heap selection. This is explained by the bounded nature of K and L in practice.

 
mcl does not compute the ideal MCL process!

Indeed it does not. What are the ramifications? Several entries in section Resource tuning / accuracy discuss this issue. For a synopsis, consider two ends of a spectrum.

On the one end, a graph that has very strong cluster structure, with clearly (and not necessarity fully) separated clusters. This mcl implementation will certainly retrieve those clusters if the graphs falls into the category of graphs for which mcl is applicable. On the other end, consider a graph that has only weak cluster structure superimposed on a background of a more or less random graph. There might sooner be a difference between the clustering that should ideally result and the one computed by mcl. Such a graph will have a large number of whimsical nodes that might end up either here or there, nodes that are of a peripheral nature, and for which the (cluster) destination is very sensitive to fluctutations in edge weights or algorithm parametrizations (any algorithm, not just mcl).

In short, the perturbation effect of the pruning process applied by mcl is a source of noise. It is small compared to the effect of changing the inflation parametrization or perturbing the edge weights. If the change is larger, this is because the computed process tends to converge prematurely, leading to finer-grained clusterings. As a result the clustering will be close to a subclustering of the clustering resulting from more conservative resource settings, and in that respect be consistent. All this can be measured using the program clm dist. It is possible to offset such a change by slightly lowering the inflation parameter.

There is the issue of very large and very dense graphs. The act of pruning will have a larger impact as graphs grow larger and denser. Obviously, mcl will have trouble dealing with such very large and very dense graphs — so will other methods.

Finally, there is the engineering approach, which offers the possibility of pruning a whole lot of speculation. Do the experiments with mcl, try it out, and see what's there to like and dislike.

5
Comparison with other algorithms

I've read someplace that XYZ is much better than MCL

XYZ might well be the bees knees of all things clustering. Bear in mind though that comparing cluster algorithms is a very tricky affair. One particular trap is the following. Sometimes a new cluster algorithm is proposed based on some optimization criterion. The algorithm is then compared with previous algorithms (e.g. MCL). But how to compare? Quite often the comparison will be done by computing a criterion and astoundingly, quite often the chosen criterion is simply the optimization criterion again. Of course XYZ will do very well. It would be a very poor algorithm it if did not score well on its own optimization criterion, and it would be a very poor algorithm if it did not perform better than other algorithms which are built on different principles.

There are some further issues that have to be considered here. First, there is not a single optimization criterion that fully captures the notion of cluster structure, let alone best cluster structure. Second, leaving optimization approaches aside, it is not possible to speak of a best clustering. Best always depends on context - application field, data characteristics, scale (granularity), and practitioner to name but a few aspects. Accordingly, the best a clustering algorithm can hope for is to be a good fit for a certain class of problems. The class should not be too narrow, but no algorithm can cater for the broad spectre of problems for which clustering solutions are sought. The class of problems to which MCL is applicable is discussed in section What kind of graphs.

 
I've read someplace that MCL is slow [compared with XYZ]

Presumably, they did not know mcl, and did not read the parts in [1] and [2] that discuss implementation. Perhaps they assume or insist that the only way to implement MCL is to implement the ideal process. And there is always the genuine possibility of a really stupifyingly fast algorithm. It is certainly not the case that MCL has a time complexity of O(N^3) as is sometimes erroneously stated.

6
Resource tuning / accuracy

What do you mean by resource tuning?

mcl computes a process in which stochastic matrices are alternately expanded and inflated. Expansion is nothing but standard matrix multiplication, inflation is a particular way of rescaling the matrix entries.

Expansion causes problems in terms of both time and space. mcl works with matrices of dimension N, where N is the number of nodes in the input graph. If no precautions are taken, the number of entries in the mcl iterands (which are stochastic matrices) will soon approach the square of N. The time it takes to compute such a matrix will be proportional to the cube of N. If your input graph has 100.000 nodes, the memory requirements become infeasible and the time requirements become impossible.

What mcl does is perturbing the process it computes a little by removing the smallest entries — it keeps its matrices sparse. This is a natural thing to do, because the matrices are sparse in a weighted sense (a very high proportion of the stochastic mass is contained in relatively few entries), and the process converges to matrices that are extremely sparse, with usually no more than N entries. It is thus known that the MCL iterands are sparse in a weighted sense and are usually very close to truly sparse matrices. The way mcl perturbs its matrices is by the strategy of pruning, selection, and recovery that is extensively described in the mcl manual page. The question then is: What is the effect of this perturbation on the resulting clustering, i.e. how would the clustering resulting from a perfectly computed mcl process compare with the clustering I have on disk? Faq entry 6.3 discusses this issue.

The amount of resources used by mcl is bounded in terms of the maximum number of neighbours a node is allowed to have during all computations. Equivalently, this is the maximum number of nonzero entries a matrix column can possibly have. This number, finally, is the maximum of the the values corresponding with the -S and -R options. The latter two are listed when using the -z option (see faq 10.1).

 
How do I compute the maximum amount of RAM needed by mcl?

It is rougly equal to

2 * s * K * N

bytes, where 2 is the number of matrices held in memory by mcl, s is the size of a single cell (c.q. matrix entry or node/arc specification), N is the number of nodes in the input graph, and where K is the maximum of the values corresponding with the -S and -R options (and this assumes that the average node degree in the input graph does not exceed K either). The value of s can be found by using the -z option. It is listed in one of the first lines of the resulting output. s equals the size of an int plus the size of a float, which will be 8 on most systems. The estimate above will in most cases be way too pessimistic (meaning you do not need that amount of memory).

The -how-much-ram option is provided by mcl for computing the bound given above. This options takes as argument the number of nodes in the input graph.

The theoretically more precise upper bound is slightly larger due to overhead. It is something like

( 2 * s * (K + c)) * N
where c is 5 or so, but one should not pay attention to such a small difference anyway.
 
How much does the mcl clustering differ from the clustering resulting from a perfectly computed MCL process?

For graphs with up until a few thousand nodes a perfectly computed MCL process can be achieved by abstaining from pruning and doing full-blown matrix arithmetic. Of course, this still leaves the issue of machine precision, but let us wholeheartedly ignore that.

Such experiments give evidence (albeit incidental) that pruning is indeed really what it is thought to be - a small perturbation. In many cases, the 'approximated' clustering is identical to the 'exact' clustering. In other cases, they are very close to each other in terms of the metric split/join distance as computed by clm dist. Some experiments with randomly generated test graphs, clustering, and pruning are described in [4].

On a different level of abstraction, note that perturbations of the inflation parameter will also lead to perturbations in the resulting clusterings, and surely, large changes in the inflation parameter will in general lead to large shifts in the clusterings. Node/cluster pairs that are different for the approximated and the exact clustering will very likely correspond with nodes that are in a boundary region between two or more clusters anyway, as the perturbation is not likely to move a node from one core of attraction to another.

Faq entry 6.6 has more to say about this subject.

 
How do I know that I am using enough resources?

In mcl parlance, this becomes how do I know that my -scheme parameter is high enough or more elaborately how do I know that the values of the {-P, -S, -R, -pct} combo are high enough?

There are several aspects. First, watch the jury marks reported by mcl when it's done. The jury marks are three grades, each out of 100. They indicate how well pruning went. If the marks are in the seventies, eighties, or nineties, mcl is probably doing fine. If they are in the eighties or lower, try to see if you can get the marks higher by spending more resources (e.g. increase the parameter to the -scheme option).

Second, you can do multiple mcl runs for different resource schemes, and compare the resulting clusterings using clm dist. See the clmdist manual for a case study.

 
Where is the mathematical analysis of this mcl pruning strategy?

There is none. [add]

Ok, the next entry gives an engineer's rule of thumb.

 
What qualitative statements can be made about the effect of pruning?

The more severe pruning is, the more the computed process will tend to converge prematurely. This will generally lead to finer-grained clusterings. In cases where pruning was severe, the mcl clustering will likely be closer to a clustering ideally resulting from another MCL process with higher inflation value, than to the clustering ideally resulting from the same MCL process. Strong support for this is found in a general observation illustrated by the following example. Suppose u is a stochastic vector resulting from expansion:

u = 0.300 0.200 0.200 0.100 0.050 0.050 0.050 0.050

Applying inflation with inflation value 2.0 to u gives

v = 0.474 0.211 0.211 0.053 0.013 0.013 0.013 0.013

Now suppose we first apply pruning to u such that the 3 largest entries 0.300, 0.200 and 0.200 survive, throwing away 30 percent of the stochastic mass (which is quite a lot by all means). We rescale those three entries and obtain

u' = 0.429 0.286 0.286 0.000 0.000 0.000 0.000 0.000

Applying inflation with inflation value 2.0 to u' gives

v' = 0.529 0.235 0.235 0.000 0.000 0.000 0.000 0.000

If we had applied inflation with inflation value 2.5 to u, we would have obtained

v'' = 0.531 0.201 0.201 0.038 0.007 0.007 0.007 0.007

The vectors v' and v'' are much closer to each other than the vectors v' and v, illustrating the general idea.

In practice, mcl should (on average) do much better than in this example.

 
At different high resource levels my clusterings are not identical. How can I trust the output clustering?

Did you read all other entries in this section? That should have reassured you somewhat, except perhaps for Faq answer 6.5.

You need not feel uncomfortable with the clusterings still being different at high resource levels, if ever so slightly. In all likelihood, there are anyway nodes which are not in any core of attraction, and that are on the boundary between two or more clusterings. They may go one way or another, and these are the nodes which will go different ways even at high resource levels. Such nodes may be stable in clusterings obtained for lower inflation values (i.e. coarser clusterings), in which the different clusters to which they are attracted are merged.

By the way, you do know all about clm dist, don't you? Because the statement that clusterings are not identical should be quantified: How much do they differ? This issue is discussed in the clm dist manual page — clm dist gives you a robust measure for the distance (dissimilarity) between two clusterings.

There are other means of gaining trust in a clustering, and there are different issues at play. There is the matter of how accurately this mcl computed the mcl process, and there is the matter of how well the chosen inflation parameter fits the data. The first can be judged by looking at the jury marks (faq 6.4) and applying clm dist to different clusterings. The second can be judged by measurement (e.g. use clm info) and/or inspection (use your judgment).

7
Tuning cluster granularity

How do I tune cluster granularity?

There are several ways for influencing cluster granularity. These ways and their relative merits are successively discussed below. Reading clmprotocols is also a good idea.

 
The effect of inflation on cluster granularity.

The main handle for changing inflation is the -I option. This is also the principal handle for regulating cluster granularity. Unless you are mangling huge graphs it could be the only mcl option you ever need besides the output redirection option -o.

Increasing the value of -I will increase cluster granularity. Conceivable values are from 1.1 to 10.0 or so, but the range of suitable values will certainly depend on your input graph. For many graphs, 1.1 will be far too low, and for many other graphs, 8.0 will be far too high. You will have to find the right value or range of values by experimenting, using your judgment, and using measurement tools such as clm dist and clm info. A good set of values to start with is 1.4, 2 and 6.

 
The effect of node degrees on cluster granularity.

Preferably the network should not have nodes of very high degree, that is, with exorbitantly many neighbours. Such nodes tend to obscure cluster structure and contribute to coarse clusters. The ways to combat this using mcl and sibling programs are documented in clmprotocols. Briefly, they are the transformations #knn() and #ceilnb() available to mcl, mcx alter and several more programs.

 
The effect of edge weight differentiation on cluster granularity.

How similarities in the input graph were derived, constructed, adapted, filtered (et cetera) will affect cluster granularity. It is important that the similarities are honest; refer to faq 3.8.

Another issue is that homogeneous similarities tend to result in more coarse-grained clusterings. You can make a set of similarities more homogeneous by applying some function to all of them, e.g. for all pairs of nodes (x y) replace S(x,y) by the square root, the logarithm, or some other convex function. Note that you need not worry about scaling, i.e. the possibly large changes in magnitude of the similarities. MCL is not affected by absolute magnitudes, it is only affected by magnitudes taken relative to each other.

As of version 03-154, mcl supports the pre-inflation -pi f option. Make a graph more homogeneous with respect to the weight function by using -pi with argument f somewhere in the interval [0,1] — 0.5 can be considered a reasonable first try. Make it less homogeneous by setting f somewhere in the interval [1,10]. In this case 3 is a reasonable starting point.

8
Implementing the MCL algorithm

How easy is it to implement the MCL algorithm?

Very easy, if you will be doing small graphs only, say up to a few thousand entries at most. These are the basic ingredients:

o

Adding loops to the input graph, conversion to a stochastic matrix.

o

Matrix multiplication and matrix inflation.

o

The interpretation function mapping MCL limits onto clusterings.

These must be wrapped in a program that does graph input and cluster output, alternates multiplication (i.e. expansion) and inflation in a loop, monitors the matrix iterands thus found, quits the loop when convergence is detected, and interprets the last iterand.

Implementing matrix muliplication is a standard exercise. Implementing inflation is nearly trivial. The hardest part may actually be the interpretation function, because you need to cover the corner cases of overlap and attractor systems of cardinality greater than one. Note that MCL does not use intricate and expensive operations such as matrix inversion or matrix reductions.

In Mathematica or Maple, mcl should be doable in at most 100 lines of code. For perl you may need twice that amount. In lower level languages such as C or Fortran a basic MCL program may need a few hundred lines, but the largest part will probably be input/output and interpretation.

To illustrate all these points, mcl now ships with minimcl, a small perl script that implements mcl for educational purposes. Its structure is very simple and should be easy to follow.

Implementing the basic MCL algorithm makes a nice programming exercise. However, if you need an implementation that scales to several hundreds of thousands of nodes and possibly beyond, then your duties become much heavier. This is because one needs to prune MCL iterands (c.q. matrices) such that they remain sparse. This must be done carefully and preferably in such a way that a trade-off between speed, memory usage, and potential losses or gains in accuracy can be controlled via monitoring and logging of relevant characteristics. Some other points are i) support for threading via pthreads, openMP, or some other parallel programming API. ii) a robust and generic interpretation function is written in terms of weakly connected components.

9
Cluster overlap / MCL iterand cluster interpretation

Introduction A natural mapping exists of MCL iterands to DAGs (directed acyclic graphs). This is because MCL iterands are generally diagonally positive semi-definite — see [3]. Such a DAG can be interpreted as a clustering, simply by taking as cores all endnodes (sinks) of the DAG, and by attaching to each core all the nodes that reach it. This procedure may result in clusterings containing overlap.

In the MCL limit, the associated DAG has in general a very degenerated form, which induces overlap only on very rare occasions (see faq entry 9.2).

Interpreting mcl iterands as clusterings may well be interesting. Few experiments have been done so far. It is clear though that early iterands generally contain the most overlap (when interpreted as clusterings). Overlap dissappears soon as the iterand index increases. For more information, consult the other entries in this section and the clmimac manual page.

 
Can the clusterings returned by mcl contain overlap?

No. Clusterings resulting from the abstract MCL algorithm may in theory contain overlap, but the default behaviour in mcl is to remove it should it occur, by allocating the nodes in overlap to the first cluster in which they are seen. mcl will warn you if this occurs. This behaviour is switched off by supplying --keep-overlap=yes.

Do note that overlap is mostly a theoretical possibility. It is conjectured that it requires the presence of very strong symmetries in the input graph, to the extent that there exists an automorphism of the input graph mapping the overlapping part onto itself.

It is possible to construct (highly symmetric) input graphs leading to cluster overlap. Examples of overlap in which a few nodes are involved are easy to construct; examples with many nodes are exceptionally hard to construct.

Clusterings associated with intermediate/early MCL iterands may very well contain overlap, see the introduction in this section and other entries.

 
How do I obtain the clusterings associated with MCL iterands?

There are two options. If you are interested in clusterings containing overlap, you should go for the second. If not, use the first, but beware that the resulting clusterings may contain overlap.

The first solution is to use -dump cls (probably in conjunction with either -L or -dumpi in order to limit the number of matrices written). This will cause mcl to write the clustering generically associated with each iterand to file. The -dumpstem option may be convenient as well.

The second solution is to use the -dump ite option (-dumpi and -dumpstem may be of use again). This will cause mcl to write the intermediate iterands to file. After that, you can apply clm imac (interpret matrix as clustering) to those iterands. clm imac has a -strict parameter which affects the mapping of matrices to clusterings. It takes a value between 0.0 and 1.0 as argument. The default is 0.001 and corresponds with promoting overlap. Increasing the -strict value will generally result in clusterings containing less overlap. This will have the largest effect for early iterands; its effect will diminish as the iterand index increases.

When set to 0, the -strict parameter results in the clustering associated with the DAG associated with an MCL iterand as described in [3]. This DAG is pruned (thus possibly resulting in less overlap in the clustering) by increasing the -strict parameter. [add]

10
Miscellaneous

How do I find the default settings of mcl?

Use -z to find out the actual settings - it shows the settings as resulting from the command line options (e.g. the default settings if no other options are given).

 
What's next?

I'd like to port MCL to cluster computing, using one of the PVM, MPI, or openMP frameworks. For the 1.002 release, mcl's internals were rewritten to allow more general matrix computations. Among other things, mcl's data structures and primitive operations are now more suited to be employed in a distributed computing environment. However, much remains to be done before mcl can operate in such an environment.

If you feel that mcl should support some other standard matrix format, let us know.

BUGS

This FAQ tries to compromise between being concise and comprehensive. The collection of answers should preferably cover the universe of questions at a pleasant level of semantic granularity without too much overlap. It should offer value to people interested in clustering but without sound mathematical training. Therefore, if this FAQ has not failed somewhere, it must have failed.

Send criticism and missing questions for consideration to mcl-faq at micans.org.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl's home at http://micans.org/mcl/.

REFERENCES

[1] Stijn van Dongen. Graph Clustering by Flow Simulation. PhD thesis, University of Utrecht, May 2000.
http://www.library.uu.nl/digiarchief/dip/diss/1895620/inhoud.htm

[2] Stijn van Dongen. A cluster algorithm for graphs. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.
http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z

[3] Stijn van Dongen. A stochastic uncoupling process for graphs. Technical Report INS-R0011, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.
http://www.cwi.nl/ftp/CWIreports/INS/INS-R0011.ps.Z

[4] Stijn van Dongen. Performance criteria for graph clustering and Markov cluster experiments. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.
http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z

[5] Enright A.J., Van Dongen S., Ouzounis C.A. An efficient algorithm for large-scale detection of protein families, Nucleic Acids Research 30(7):1575-1584 (2002).

NOTES

This page was generated from ZOEM manual macros, http://micans.org/zoem. Both html and roff pages can be created from the same source without having to bother with all the usual conversion problems, while keeping some level of sophistication in the typesetting. This is the PostScript derived from the zoem troff output.

mcl-12-135/doc/clmprotocols2.html0000644000402500021140000006060511754271042013540 00000000000000 Work flows and protocols for mcl and friends

14 May 2012    clmprotocols 12-135

NAME

clmprotocols — Work flows and protocols for mcl and friends

DESCRIPTION

A guide to doing analysis with mcl and its helper programs.

TOC





FAQ

1
General pardon

For whom is mcl and for whom is this FAQ?

For everybody with an appetite for graph clustering.

 
For whom is mcl and for whom is this FAQ?

For everybody with an appetite for graph clustering.

2
General questions

For whom is mcl and for whom is this FAQ?

For everybody with an appetite for graph clustering.

 
For whom is mcl and for whom is this FAQ?

For everybody with an appetite for graph clustering.

Network representation

The clustering program mcl expects the name of file as its first argument. If the --abc option is used, the file is assumed to adhere to a simple format where a network is specified edge by edge, one line and one edge at a time. Each line describes an edge as two labels and a numerical value, all separated by white space. The labels and the value respectively identify the two nodes and the edge weight. The format is called ABC-format, where 'A' and 'B' represent the two labels and 'C' represents the edge weight. The latter is optional; if omitted the edge weight is set to one. If ABC-format is used, the output is returned as a listing of clusters, each cluster given as a line of white-space separated labels.

MCL can also utilize a second representation, which is a stringent and unambiguous format for both input and output. This is called matrix format and it is required when using other programs in the mcl suite, for example when comparing and analysing clusterings using clm or when extracting and transforming networks using mcx. Native mode (matrix format) is entered simply by not specifying --abc.

The recommended approach using mcl is to convert an external format to ABC-format. The program mcxload reads the latter and creates a native network file and a dictionary file that maps network nodes to labels. All applications in the MCL suite, including mcl itself, can read this native network file format. Label output can be obtained using mcxdump. The workflow is thus:

# External format has been converted to file data.abc (abc format) mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci mcl data.mci -I 1.4 mcl data.mci -I 2 mcl data.mci -I 4 mcxdump -icl out.data.mci.I14 -tabr data.tab -o dump.data.mci.I14 mcxdump -icl out.data.mci.I20 -tabr data.tab -o dump.data.mci.I20 mcxdump -icl out.data.mci.I40 -tabr data.tab -o dump.data.mci.I40

In this example the cluster output is stored in native format and dumped to labels using mcxdump. The stored output can now be used to learn more about the clusterings. An example is the following, where clm is applied in mode dist to gauge the distance between different clusterings.

clm dist --chain out.data.mci.I{14,20,40}

Loading large networks

If you deal with very large networks (say with hundreds of millions of edges), it is recommended to use binary format (cf mcxio). This is simply achieved by adding --write-binary to the mcxload command line. The resulting file is no longer human-readable but will be faster to read by a factor between ten- or twenty-fold compared to standard MCL-edge network format, and a factor around fifty-fold compared to label format. All MCL-edge programs are able to read binary format, and speed of reading will be somewhere in the order of millions of edges per second, compared to, for example, roughly 100K edges per second for label format.

Memory usage for mcxload can be lowered by replacing the option --stream-mirror with -ri max.

Converting between formats

Converting label format to tabular format
Label format, two or three (including weight) columns:

mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci mcxdump -imx data.mci -tab data.tab --dump-table

Simple Interaction File (SIF) format:

mcxload -sif data.sif --stream-mirror -write-tab data.tab -o data.mci mcxdump -imx data.mci -tab data.tab --dump-table

It can be noted that these two examples are very similar, and differ only in the way the input to mcxload is specified.

Clustering similarity graphs encoded in BLAST results

A specific instance of the workflow above is the clustering of proteins based on their sequence similarities. In the most typical scenario the external format is BLAST output, which needs to be transformed to ABC format. In the examples below the input is in columnar blast format obtained with the blast -m8 option. It requires a version of mcl at least as recent as 09-061. First we create an ABC-formatted file using the external columnar BLAST format, which is assumed to be in a file called seq.cblast.

cut -f 1,2,11 seq.cblast > seq.abc

The columnar format in the file seq.cblast has, for a given BLAST hit, the sequence labels in the first two columns and the asssociated E-value in column 11. It is parsed by the standard UNIX cut(1) utility. The format must have been created with the BLAST -m8 option so that no comment lines are present. Alternatively these can be filtered out using grep.

The newly created seq.abc file is loaded by mcxload, which writes both a network file seq.mci and a dictionary file seq.tab.

mcxload -abc seq.abc --stream-mirror --stream-neg-log10 -stream-tf 'ceil(200)' -o seq.mci -write-tab seq.tab

The --stream-mirror option ensures that the resulting network will be undirected, as recommended when using mcl. Omitting this option would result in a directed network as BLAST E-values generally differ between two sequences. The default course of action for mcxload is to use the best value found between a pair of labels. The next option, --abc-neg-log10 tranforms the numerical values in the input (the BLAST E-values) by taking the logarithm in base 10 and subsequently negating the sign. Finally, the transformed values are capped so that any E-value below 1e-200 is set to a maximum allowed edge weight of 200.

To obtain clusterings from seq.mci and seq.tab one has two choices. The first is to generate an abstract clustering representation and from that obtain the label output, as follows. Below the -o option is not used, so mcl will create meaningful and unique output names by itself. The default way of doing this is to preprend the prefix out. and to append a suffix encoding the inflation value used, with inflation encoded using two digits of precision and the decimal separator removed.

mcl seq.mci -I 1.4 mcl seq.mci -I 2 mcl seq.mci -I 4 mcl seq.mci -I 6 mcxdump -icl out.seq.mci.I14 -tabr seq.tab -o dump.seq.mci.I14 mcxdump -icl out.seq.mci.I20 -tabr seq.tab -o dump.seq.mci.I20 mcxdump -icl out.seq.mci.I40 -tabr seq.tab -o dump.seq.mci.I40 mcxdump -icl out.seq.mci.I60 -tabr seq.tab -o dump.seq.mci.I60

Now the file out.seq.tab.I14 and its associates can be used for example to compute the distances between the encoded clusterings with clm dist, to compute a set of strictly reconciled nested clusterings with clm order, or to compute an efficiency criterion with clm info.

Alternatively, label output can be obtained directly from mcl as follows.

mcl seq.mci -I 1.4 -use-tab seq.tab mcl seq.mci -I 2 -use-tab seq.tab mcl seq.mci -I 4 -use-tab seq.tab mcl seq.mci -I 6 -use-tab seq.tab

Clustering expression data

The clustering of expression data constitutes another workflow. In this case the external format usually is a tabular file format containing labels for genes or probes and numerical values measuring the expression values or fold changes across a series of conditions or experiments. Such tabular files can be processed by mcxarray, which comes installed with mcl. The program computes correlations (either Pearson or Spearmann) between genes, and creates an edge between genes if their correlation exceeds the specified cutoff. From this mcxarray creates both a network file and a dictionary file. In the example below, the file expr.data is in tabular format with one row of column headers (e.g. tags for experiments) and one column of row identifiers (e.g. probe or gene identifiers).

mcxarray -data expr.data -skipr 1 -skipc 1 -o expr.mci -write-tab expr.tab --pearson -co 0.7 -tf 'abs(),add(-0.7)'

This uses the Pearson correlation, ignoring values below 0.7. The remaining values in the interval [0.7-1] are remapped to the interval [0-0.3]. This is recommended so that the edge weights will have increased contrast between them, as mcl is affected by relative differences (ratios) between edge weights rather than absolute differences. To illustrate this, values 0.75 and 0.95 are mapped to 0.05 and 0.25, with respective ratios 0.79 and 0.25. The network file expr.mci and the dictionary file expr.tab can now be used as before.

It is possible to investigate the effect of the correlation cutoff as follows. First a network is generated at a very low threshold, and this network is analysed using mcxquery.

mcxarray -data expr.data -skipr 1 -skipc 1 -o expr20.mcx --write-binary --pearson -co 0.2 -tf 'abs()' mcx query -imx expr20.mcx --vary-correlation

The output is in a tabular format describing the properties of the network at increasing correlation thresholds. Examples are the size of the biggest component, the number of orphan nodes (not connected to any other node), and the mean and median node degrees. A good way to choose the cutoff is to balance the number of singletons and the median node degree. Both should preferably not be too high. For example the number of orphan nodes should be less than ten percent of the total number of nodes, and the median node degree should be at most one hundred neighbours.

Reducing node degrees in the graph

A good way to lower node degrees in a network is to require that an edge is among the best k edges (those of highest weight) for both nodes incident to the edge, for some value of k. This is achieved by using knn(k) in the argument to the -tf option to mcl or mcx alter. To give an example, a graph was formed on translations in Ensembl release 57 on 2.6M nodes. The similarities were obtained from BLAST scores, leading to a graph with a total edge count of 300M, with best-connected nodes of degree respectively 11148, 9083, 9070, 9019 and 8988, and with mean node degree 233. These degrees are unreasonable. The graph was subjected to mcx query to investigate the effect of varying k-NN parameters. A good heuristic is to choose a value that does not significantly change the number of singletons in the input graph. In the example it meant that -tf 'knn(160)' was feasible, leading to a mean node degree of 98.

A second approach to reduce node degrees is to employ the -ceil-nb option. This ranks nodes by node degree, highest first. Nodes are considered in order of rank, and edges of low weight are removed from the graph until a node satisfies the node degree threshold specified by -ceil-nb.

SEE ALSO

mcxio.

AUTHOR

Stijn van Dongen.

mcl-12-135/doc/mcxconvert.10000644000402500021140000000702111754271044012315 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcx convert" 1 "14 May 2012" "mcx convert 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcx convert \- convert between mcx storage types .SH SYNOPSIS \fBmcx convert\fP .br \fBmcx convert\fP [--write-binary] --cone-to-stack .br \fBmcx convert\fP [--write-binary] --stack-to-cone mcxconvert is not in actual fact a program\&. This manual page documents the behaviour and options of the mcx program when invoked in mode \fIconvert\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP, \fB-progress\fP\ \&\fI\fP are accessible in all \fBmcx\fP modes\&. They are described in the \fBmcx\fP manual page\&. \fBmcx convert\fP \fB[--cone-to-stack\fP (\fItransform cone file to stack file\fP)\fB]\fP \fB[--stack-to-cone\fP (\fItransform stack file to cone file\fP)\fB]\fP \fB[--write-binary\fP (\fIoutput native binary format\fP)\fB]\fP \fB[--cat\fP (\fIread and write cat format\fP)\fB]\fP \fB[-cat-max\fP (\fIlimit the stack conversion to matrices\fP)\fB]\fP In the two-argument invocation without additional arguments, \fBmcx convert\fP converts from the format found in the first file to the other format, i\&.e\&. from native interchange to native binary format or the other way around\&. When querying with the \fB-q\fP option, mcx{convert} will output a one-line synopsis describing the matrix in the argument\&. The \fB--cone-to-stack\fP and \fB--stack-to-cone\fP options convert between the two types of concatenated output provided by \fBmclcm\fP\&. .SH DESCRIPTION The \fBmcl\fP libraries make extensive use of matrices\&. Matrices are used to encode graphs, matrices and clusterings\&. They can be stored either in interchange or in binary format\&. The latter is somewhat more efficient in storage and much faster in both reading and writing, but the default is interchange format\&. The \fBmcl\fP input routines recognize the type of storage they are dealing with\&. If you want to convert a matrix to the other storage type, simply specify the file name of the matrix you want to convert\&. \fBmcx convert\fP will recognize its type, and write the other type to the file specified as the second argument\&. .SH OPTIONS .ZI 2m "\fB--cone-to-stack\fP (\fItransform cone file to stack file\fP)" \& .br This option requires two trailing options, the names of respectively the source cone file and the target stack file\&. .in -2m .ZI 2m "\fB--stack-to-cone\fP (\fItransform stack file to cone file\fP)" \& .br This option requires two trailing options, the names of respectively the source stack file and the target cone file\&. .in -2m .ZI 2m "\fB--cat\fP (\fIread and write cat format\fP)" \& .br .in -2m .ZI 2m "\fB-cat-max\fP (\fIlimit the stack conversion to matrices\fP)" \& .br .in -2m .ZI 2m "\fB--write-binary\fP (\fIoutput native binary format\fP)" \& .br This option is only useful with either of the options \fB--cone-to-stack\fP, \fB--stack-to-cone\fP, or \fB--cat\fP\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmcxio(5)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcxquery.azm0000644000402500021140000002370411706023063012430 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcx q} {html_title}{The mcx q manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcxquery}{compute simple graph statistics} \sec{synopsis}{SYNOPSIS} \disclaim_mcx{q} \par{ \mcxquery \synoptopt{-abc}{}{specify label input} \synoptopt{-imx}{}{specify matrix input} \synoptopt{-o}{}{output file name} \synoptopt{-tab}{}{use tab file} \synoptopt{--node-attr}{output node degree and weight attributes} \synoptopt{-vary-threshold}{}{analyze graph at similarity cutoffs} \synoptopt{-vary-knn}{}{analyze graph for varying k-NN} \synoptopt{-vary-ceil}{}{analyze graph for varying ceil reductions} \synoptopt{-report-scale}{}{edge weight/threshold scaling} \synoptopt{--no-legend}{do not output explanatory legend} \synoptopt{--reduce}{use reduced matrix} \synoptopt{--test-metric}{test whether graph distance is metric} \synoptopt{--test-cycle}{test whether graph contains cycles} \synoptopt{-test-cycle}{}{test cycles, report cyclees} \synoptopt{--vary-correlation}{analyze graph at correlation cutoffs} \synoptopt{--clcf}{include clustering coefficient analysis} \synoptopt{--eff}{include efficiency criterion} \synoptopt{-div}{}{cluster size separating value} \: kynoptopt{-digits}{}{width of fractional part} \synoptopt{--dim}{report native format and dimensions} \synoptopt{--edges}{output all arc weights, unsorted} \synoptopt{--edges-sorted}{output all arc weights, sorted} \synoptopt{-edges-hist}{}{number of threads to use} \synoptopt{-icl}{}{input clustering} \shared_synoptopt{-tf} \stdsynopt } \sec{description}{DESCRIPTION} \par{ The main use of \mcxquery is to analyze a graph at different similarity cutoffs. Typically this is done on a graph constructed using a very permissive threshold. For example, one can create a graph from array expression data using \mcxarray with a very low pearson correlation cutoff such as\~0.2 or\~0.3. Then \mcxquery can be used to analyze the graph at increasingly stringent thresholds of\~0.25, 0.30, 0.35\~..\~0.95. Attributes supplied across different thresholds are the number of connected components, the number of singletons, adn statistics (median, average, iqr) on node degrees and edge weights. } \""{ and a graph plotting the R^2 value of the relationship of log(k) versus the logarithm of the number of nodes of degree at least k (for the graph at a given threshold). Scale-free networks are defined by having a high R^2 value. It should be noted however that in many applications graphs will not be scale-free. Additionally, for the purpose of clustering scale-free networks are to be avoided or transformed, as the highly-connected nodes in scale-free networks obfuscate cluster structure. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-abc}{}{label input}} \car{ The file name for input that is in label format.} \item{\defopt{-imx}{}{input matrix}} \car{ The file name for input that is in mcl native matrix format. } \item{\defopt{-o}{}{output file name}} \car{ Set the name of the file where output should be written to. } \item{\defopt{-tab}{}{use tab file}} \car{ This option causes the output to be printed with the labels found in the tab file. } \: With \genopt{-abc} this option will, additionally, construct \: a graph only on the labels found in the tab file. \: If this option is used in conjunction with \genopt{-imx} the \: tab domain and the matrix domain are required to be identical. \item{\defopt{--dim}{report native format and dimensions}} \car{ This will report the matrix format (either interchange or binary) and the matrix dimensions. For a graph the two reported dimensions should be equal. } \items{ {\defopt{--edges}{output all arc weights, unsorted}} {\defopt{--edges-sorted}{output all arc weights, sorted}} {\defopt{-edges-hist}{}{analyze graphs at similarity cutoffs}} \car{ All of \genarg{start}, \genarg{end}, \genarg{step} and \genarg{scale} must be integer numbers. From these a list of threshold is constructed, starting from \it{start / scale}, \it{(start + step) / scale}, \it{(start + 2 step) / scale}, and so on until a value larger than or equal to \it{end / scale} is reached. } \item{\defopt{--vary-correlation}{analyze graphs at correlation cutoffs}} \car{ This instructs \mcxquery to use a threshold list suitable for use with graphs in which the edge weight similarities are correlations. The list starts at 0.2 and ends at 0.95 using increments of 0.05. If a different start or increment is required it can be achieved by using the \genopt{-vary-threshold} option. For example, a start of\~0.10 and an increment of\~0.02 are obtained by issuing \useopt{-vary-threshold}{10,100,2,100}. } \item{defopt{--no-legend}{do not output explanatory legend}} \car{ For a fully parseable output format use \genoptref{--output-table}. } \items{ {\defopt{--clcf}{include clustering coefficient analysis}} {\defopt{--eff}{include efficiency criterion}} } \car{ These options can be used to compute additional characteristics in the analysis of thresholded graphs with \genopt{--vary-correlation} and \genopt{-vary-threshold}. For large graphs these are relatively time-consuming to compute. More information and a reference for the efficiency criterion can be found in \mysib{clminfo}. } \items{ {\defopt{-vary-knn}{}{analyze graphs for varying k-NN}} {\defopt{-vary-ceil}{}{analyze graphs for varying ceil reductions}} {\defopt{--reduce}{use reduced matrix}} } \car{ These options cause analysis of a graph as it is subjected to reductions across a range of parameters. Refer to \mysib{mcxio} for a description of these reductions. The analyses starts at the \it{end} argument, and progresses towards the \it{start} argument using decrements of size \it{step}. By default the reduction is always computed relative to the start matrix, i.e. the input matrix after \genopt{-tf} transformations have optionally been applied. Specifying \genopt{--reduce} causes this to change so that each new reduction is calculated relative to the reduction just computed. } \par{ For graphs with ties among edge weights it may be useful to use \useopt{-tf}{'#tug()'}. This will add small perturbations to the edge weights and have the effect of breaking ties. By default perturbations are computed using the cosine between the vectors of neighbours of the two nodes incident to an edge. This can be changed to a random perturbation with \useopt{-tf}{'#rug()'}. } \items{ {\defopt{--test-cycle}{test whether graph contains cycles}} {\defopt{-test-cycle}{}{test cycles, report cyclees}} } \car{ Test whether the input graph contains cycles. With the second option nodes that are part of a cycle are output, up to a maximum of \genarg{} nodes. Use \genarg{}=\usearg{-1} to output all such nodes. } \item{\defopt{--test-metric}{test whether graph distance is metric}} \car{ This tests all possible triangle relationships. } \""{ \item{\kefopt{-digits}{}{width of fractional part}} \car{ In the output graph and table, the thresholds are by default printed with two digits for the fractional part. This can be changed using this option. }} \item{\defopt{-report-scale}{}{edge weight / threshold scaling}} \car{ The edge weights mean, average, and inter-quartile range, as well as the different threshold steps are all rescaled in the reported output to avoid printing of fractional part. If \genopt{-vary-threshold} was supplied then scaling factor specified in the argument is used. With \genopt{--vary-correlation} a scaling factor of\~100 is used. Either can be overridden by using the present option. } \item{\defopt{-div}{}{cluster size separating value}} \car{ When analyzing graphs at different thresholds with one of the options above, \mcxquery reports the percentage of nodes contained in clusters not exceeding a specified size, by default\~3. This number can be changed using the \genopt{-div} option. } \shared_itemopt{-tf} \car{\shared_defopt{-tf}} \item{\defopt{-t}{}{number of threads to use}} \car{ This has an effect only when using the \genopt{-vary-knn} option, and is only useful on multi-CPU machines. } \item{\defopt{--node-attr}{output node degree and weight attributes}} \car{ Output is in the form of a tab separated file. The option \genopt{-icl} can be used in conjuction. } \item{\defopt{-icl}{}{input clustering}} \car{ Output for each node the size of the cluster it is in. This option can be used in conjunction with \genopt{--node-attr}. } \stddefopt \end{itemize} \sec{seealso}{SEE ALSO} \par{ \mysib{mcxio}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \end{pud::man} mcl-12-135/doc/mcxclcf.azm0000644000402500021140000000727011362162464012201 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcx clcf} {html_title}{The mcx clcf manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcx clcf}{compute the clustering coefficient of a graph} \sec{synopsis}{SYNOPSIS} \par{ \mcx{clcf} [options] [matrix-file]} \disclaim_mcx{clcf} \par{ \mcx{clcf} \synoptopt{-abc}{}{specify label input} \synoptopt{-imx}{}{specify matrix input} \synoptopt{-tab}{}{use tab file} \synoptopt{-o}{}{write to this file} \synoptopt{-t}{}{use threads} \synoptopt{-J}{}{a total of jobs are used} \synoptopt{-j}{}{this job has index } \synoptopt{--summary}{return mean clustering coefficient} \stdsynopt } \sec{description}{DESCRIPTION} \par{ \mcx{clcf} computes the clustering coefficient of a graph.} \par{ The input graph/matrix, if specified with the \genopt{-imx} option, has to be in mcl matrix/graph format. You can use label input instead by using the \genopt{-abc} option. Refer to \mysib{mcxio} for a description of these two input formats. By default \mcx{diameter} reads from STDIN \it{and expects matrix format}. To specify label input from STDIN use \useopt{-abc}{-}.} \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-abc}{}{label input}} \car{ The file name for input that is in label format.} \item{\defopt{-imx}{}{input matrix}} \car{ The file name for input. STDIN is assumed if not specified.} \item{\defopt{-o}{}{output file}} \car{ The file name for output. STDOUT is the default output stream. } \item{\defopt{-tab}{}{use tab file}} \car{ This option causes the output to be printed with the labels found in the tab file. With \genopt{-abc} this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with \genopt{-imx} the tab domain and the matrix domain are required to be identical. } \item{\defopt{--summary}{return mean clustering coefficient}} \car{ By the default a 1-column table (with row names included) is output, one row for each node. This option causes the output of the average clustering coefficient only. } \items{ {\defopt{-t}{}{use threads}} {\defopt{-J}{}{a total of jobs are used}} {\defopt{-j}{}{this job has index }} } \car{ Computing clustering coefficients is time-intensive for large graphs. If you have multiple CPUs available consider using as many threads. Additionally it is possible to spread the computation over multiple jobs/machines. Conceptually, each job takes a number of threads from the total thread pool. If job control is used (the \genopt{-J} option is used) then the number of jobs should not exceed the number of threads. The total number of threads divided by the total number of jobs defines the number of threads that will be used by the current job. Additionally, the number of threads specified signifies the total added amount of all threads across all machines and \it{must} be the same for all jobs. This number is used by each job to infer its own set of tasks. The following set of options, if given to as many commands, defines three jobs, each running four threads. } \verbatim{-t 12 -G 3 -g 0 -t 12 -G 3 -g 1 -t 12 -G 3 -g 2} \stddefopt \end{itemize} \sec{seealso}{SEE ALSO} \par{ \mysib{mcxio}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \end{pud::man} mcl-12-135/doc/clmprotocols2.ps0000644000402500021140000011361111754271042013212 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:14 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 5 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 131.505 <636c6d70726f746f636f6c732835292046494c45>20 48 R<464f524d41>2.5 E 134.005<545320636c6d70726f746f636f6c73283529>-1.11 F 7.5<312e204e>42.5 84 R<414d45>-.35 E 7.5<322e204445534352495054494f4e>42.5 96 R 7.5 <332e2054>42.5 108 R<4f43>-.18 E 7.5<342e2046>42.5 120 R -.55<4151>-.74 G 7.5<352e204e657477>42.5 132 R<6f726b20726570726573656e746174696f6e>-.1 E 7.5<362e204c6f6164696e67>42.5 144 R<6c6172>2.5 E<6765206e657477>-.18 E <6f726b73>-.1 E 7.5<372e20436f6e>42.5 156 R -.15<7665>-.4 G <7274696e67206265747765656e20666f726d617473>.15 E 7.5 <382e20436c7573746572696e67>42.5 168 R<73696d696c6172697479206772617068 7320656e636f64656420696e20424c41535420726573756c7473>2.5 E 7.5 <392e20436c7573746572696e67>42.5 180 R -.15<6578>2.5 G <7072657373696f6e2064617461>.15 E 7.5<31302e205265647563696e67>37.5 192 R<6e6f6465206465>2.5 E<677265657320696e20746865206772617068>-.15 E 7.5 <31312e20534545>37.5 204 R<414c534f>2.5 E 7.5<31322e2041>37.5 216 R <5554484f52>-.55 E/F1 10.95/Times-Bold@0 SF -.219<4e41>20 232.8 S<4d45> .219 E F0<636c6d70726f746f636f6c7320ad2057>100 244.8 Q<6f726b208d6f>-.8 E<777320616e642070726f746f636f6c7320666f72206d636c20616e6420667269656e64 73>-.25 E F1<4445534352495054494f4e>20 261.6 Q F0 2.5<4167>100 273.6 S< 7569646520746f20646f696e6720616e616c797369732077697468206d636c20616e6420 6974732068656c7065722070726f6772616d732e>-2.5 E F1 -.197<544f>20 290.4 S <43>.197 E/F2 10/Times-Bold@0 SF<31>20 302.4 Q F0 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A/F3 11 /Times-Bold@0 SF<47656e6572616c20706172646f6e>10 E F2<312e31>30 314.4 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2046>B<6f722077686f6d206973 206d636c20616e6420666f722077686f6d20697320746869732046>-.15 E -.55<4151> -.74 G<3f>.55 E F2<312e32>30 326.4 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2046>B<6f722077686f6d206973206d63 6c20616e6420666f722077686f6d20697320746869732046>-.15 E -.55<4151>-.74 G <3f>.55 E F2<32>20 350.4 Q F0 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A F3 <47656e6572616c207175657374696f6e73>10 E F2<322e31>30 362.4 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2046>B<6f722077686f6d206973206d63 6c20616e6420666f722077686f6d20697320746869732046>-.15 E -.55<4151>-.74 G <3f>.55 E F2<322e32>30 374.4 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2046>B<6f722077686f6d206973206d63 6c20616e6420666f722077686f6d20697320746869732046>-.15 E -.55<4151>-.74 G <3f>.55 E F1 -1.259 -.986<46412051>20 391.2 T/F4 12/Times-Bold@0 SF <47656e6572616c20706172646f6e>253.164 403.2 Q F2<312e31>30 427.2 Q F3 -.275<466f>57.5 G 2.75<7277>.275 G<686f6d206973206d636c20616e642066> -2.75 E<6f722077686f6d20697320746869732046>-.275 E -.495<4151>-.99 G<3f> .495 E F0 -.15<466f>100 451.2 S 2.5<7265>.15 G -.15<7665>-2.75 G<727962 6f6479207769746820616e20617070657469746520666f7220677261706820636c757374 6572696e672e>.15 E F2<312e32>30 475.2 Q F3 -.275<466f>57.5 G 2.75<7277> .275 G<686f6d206973206d636c20616e642066>-2.75 E <6f722077686f6d20697320746869732046>-.275 E -.495<4151>-.99 G<3f>.495 E F0 -.15<466f>100 499.2 S 2.5<7265>.15 G -.15<7665>-2.75 G<7279626f647920 7769746820616e20617070657469746520666f7220677261706820636c7573746572696e 672e>.15 E F4<47656e6572616c207175657374696f6e73>247.83 523.2 Q F2 <322e31>30 547.2 Q F3 -.275<466f>57.5 G 2.75<7277>.275 G <686f6d206973206d636c20616e642066>-2.75 E <6f722077686f6d20697320746869732046>-.275 E -.495<4151>-.99 G<3f>.495 E F0 -.15<466f>100 571.2 S 2.5<7265>.15 G -.15<7665>-2.75 G<7279626f647920 7769746820616e20617070657469746520666f7220677261706820636c7573746572696e 672e>.15 E F2<322e32>30 595.2 Q F3 -.275<466f>57.5 G 2.75<7277>.275 G <686f6d206973206d636c20616e642066>-2.75 E <6f722077686f6d20697320746869732046>-.275 E -.495<4151>-.99 G<3f>.495 E F0 -.15<466f>100 619.2 S 2.5<7265>.15 G -.15<7665>-2.75 G<7279626f647920 7769746820616e20617070657469746520666f7220677261706820636c7573746572696e 672e>.15 E F1<4e657477>20 636 Q<6f726b2072>-.11 E<657072>-.197 E <6573656e746174696f6e>-.197 E F0 .445 <54686520636c7573746572696e672070726f6772616d>100 648 R F2<6d636c>2.944 E F0 -.15<6578>2.944 G .444<706563747320746865206e616d65206f66208c6c6520 617320697473208c727374206172>.15 F 2.944<67756d656e742e204966>-.18 F <746865>2.944 E F2<2d2d616263>2.944 E F0 .444<6f7074696f6e206973>2.944 F .114<757365642c20746865208c6c6520697320617373756d656420746f206164686572 6520746f20612073696d706c6520666f726d61742077686572652061206e657477>100 660 R .115<6f726b2069732073706563698c6564206564676520627920656467652c> -.1 F 1.412 <6f6e65206c696e6520616e64206f6e65206564676520617420612074696d652e>100 672 R 1.412 <45616368206c696e652064657363726962657320616e2065646765206173207477> 6.412 F 3.911<6f6c>-.1 G 1.411 <6162656c7320616e642061206e756d65726963616c>-3.911 F -.25<7661>100 684 S .364<6c75652c20616c6c20736570617261746564206279207768697465207370616365 2e20546865206c6162656c7320616e64207468652076>.25 F .365 <616c7565207265737065637469>-.25 F -.15<7665>-.25 G .365 <6c79206964656e7469667920746865207477>.15 F 2.865<6f6e>-.1 G<6f646573> -2.865 E 1.305<616e64207468652065646765207765696768742e2054686520666f72 6d61742069732063616c6c6564204142432d666f726d61742c2077686572652027412720 616e642027422720726570726573656e7420746865207477>100 696 R<6f>-.1 E .114 <6c6162656c7320616e642027432720726570726573656e747320746865206564676520 7765696768742e20546865206c6174746572206973206f7074696f6e616c3b206966206f 6d69747465642074686520656467652077656967687420697320736574>100 708 R .579<746f206f6e652e>100 720 R .579<4966204142432d666f726d61742069732075 7365642c20746865206f75747075742069732072657475726e65642061732061206c6973 74696e67206f6620636c7573746572732c206561636820636c7573746572206769>5.579 F -.15<7665>-.25 G<6e>.15 E<636c6d70726f746f636f6c732031322d313335>20 768 Q<3134204d61792032303132>124.285 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 131.505 <636c6d70726f746f636f6c732835292046494c45>20 48 R<464f524d41>2.5 E 134.005<545320636c6d70726f746f636f6c73283529>-1.11 F<61732061206c696e65 206f662077686974652d737061636520736570617261746564206c6162656c732e>100 84 Q .556<4d434c2063616e20616c736f207574696c697a652061207365636f6e642072 6570726573656e746174696f6e2c207768696368206973206120737472696e67656e7420 616e6420756e616d626967756f757320666f726d617420666f72>100 108 R .12 <626f746820696e70757420616e64206f75747075742e>100 120 R .12 <546869732069732063616c6c6564>5.12 F/F1 10/Times-Italic@0 SF .119 <6d617472697820666f726d6174>2.619 F F0 .119<616e642069742069732072657175 69726564207768656e207573696e67206f746865722070726f6772616d73>2.619 F .844<696e20746865206d636c2073756974652c20666f722065>100 132 R .844<7861 6d706c65207768656e20636f6d706172696e6720616e6420616e616c7973696e6720636c 7573746572696e6773207573696e67>-.15 F/F2 10/Times-Bold@0 SF <636c6d283129>3.345 E F0 .845<6f72207768656e>3.345 F -.15<6578>100 144 S 1.627<7472616374696e6720616e64207472616e73666f726d696e67206e657477>.15 F 1.627<6f726b73207573696e67>-.1 F F2<6d6378283129>4.126 E F0 6.626<2e4e>C <617469>-6.626 E 1.926 -.15<7665206d>-.25 H 1.626 <6f646520286d617472697820666f726d61742920697320656e7465726564>.15 F <73696d706c79206279>100 156 Q F1<6e6f74>2.5 E F0<73706563696679696e67> 2.5 E F2<2d2d616263>2.5 E F0<2e>A .131 <546865207265636f6d6d656e64656420617070726f616368207573696e67>100 180 R F2<6d636c>2.631 E F0 .131<697320746f20636f6e>2.631 F -.15<7665>-.4 G .131<727420616e2065>.15 F .132<787465726e616c20666f726d617420746f204142 432d666f726d61742e205468652070726f2d>-.15 F<6772616d>100 192 Q F2 <6d63786c6f6164283129>2.585 E F0 .085 <726561647320746865206c617474657220616e6420637265617465732061206e617469> 2.585 F .385 -.15<7665206e>-.25 H<657477>.15 E .085<6f726b208c6c6520616e 6420612064696374696f6e617279208c6c652074686174206d617073>-.1 F<6e657477> 100 204 Q 1.023<6f726b206e6f64657320746f206c6162656c732e20416c6c20617070 6c69636174696f6e7320696e20746865204d434c2073756974652c20696e636c7564696e 67>-.1 F F2<6d636c>3.524 E F0 1.024 <697473656c662c2063616e20726561642074686973>3.524 F<6e617469>100 216 Q 1.22 -.15<7665206e>-.25 H<657477>.15 E .919<6f726b208c6c6520666f726d6174 2e204c6162656c206f75747075742063616e206265206f627461696e6564207573696e67> -.1 F F2<6d637864756d70283129>3.419 E F0 3.419<2e54>C .919<68652077> -3.419 F<6f726b8d6f>-.1 E 3.419<7769>-.25 G<73>-3.419 E<746875733a>100 228 Q/F3 10/Courier@0 SF 12<2345>118 252 S<787465726e616c20666f726d6174 20686173206265656e20636f6e76657274656420746f2066696c6520646174612e616263 202861626320666f726d617429>-12 E<6d63786c6f6164202d61626320646174612e61 6263202d2d73747265616d2d6d6972726f72202d77726974652d74616220646174612e74 6162202d6f20646174612e6d6369>118 276 Q <6d636c20646174612e6d6369202d4920312e34>118 300 Q <6d636c20646174612e6d6369202d492032>118 312 Q <6d636c20646174612e6d6369202d492034>118 324 Q<6d637864756d70202d69636c20 6f75742e646174612e6d63692e493134202d7461627220646174612e746162202d6f2064 756d702e646174612e6d63692e493134>118 348 Q<6d637864756d70202d69636c206f 75742e646174612e6d63692e493230202d7461627220646174612e746162202d6f206475 6d702e646174612e6d63692e493230>118 360 Q<6d637864756d70202d69636c206f75 742e646174612e6d63692e493430202d7461627220646174612e746162202d6f2064756d 702e646174612e6d63692e493430>118 372 Q F0 1.091<496e20746869732065>100 396 R 1.092<78616d706c652074686520636c7573746572206f75747075742069732073 746f72656420696e206e617469>-.15 F 1.392 -.15<76652066>-.25 H 1.092<6f72 6d617420616e642064756d70656420746f206c6162656c73207573696e67206d63782d> .15 F .154<64756d702e205468652073746f726564206f75747075742063616e206e6f> 100 408 R 2.654<7762>-.25 G 2.654<6575>-2.654 G .154<73656420746f206c65 61726e206d6f72652061626f75742074686520636c7573746572696e67732e20416e2065> -2.654 F .154<78616d706c6520697320746865>-.15 F<666f6c6c6f>100 420 Q .358<77696e672c207768657265>-.25 F F2<636c6d283129>2.858 E F0 .358 <6973206170706c69656420696e206d6f6465>2.858 F F2<64697374>2.5 E F0 .359 <746f2067>2.858 F .359 <61756765207468652064697374616e6365206265747765656e20646966>-.05 F .359 <666572656e7420636c7573746572>-.25 F<2d>-.2 E<696e67732e>100 432 Q F3<63 6c6d2064697374202d2d636861696e206f75742e646174612e6d63692e497b31342c3230 2c34307d>118 456 Q/F4 10.95/Times-Bold@0 SF<4c6f6164696e67206c6172>20 484.8 Q<6765206e657477>-.11 E<6f726b73>-.11 E F0 1.764 <496620796f75206465616c20776974682076>100 496.8 R 1.763<657279206c6172> -.15 F 1.763<6765206e657477>-.18 F 1.763<6f726b732028736179207769746820 68756e6472656473206f66206d696c6c696f6e73206f66206564676573292c2069742069 73207265636f6d2d>-.1 F 1.68 <6d656e64656420746f207573652062696e61727920666f726d617420286366>100 508.8 R F2<6d6378696f283529>4.18 E F0 4.18<292e2054686973>B 1.68 <69732073696d706c79206163686965>4.18 F -.15<7665>-.25 G 4.18<6462>.15 G 4.18<7961>-4.18 G<6464696e67>-4.18 E F3<2d2d77726974652d>4.18 E <62696e617279>100 520.8 Q F0 .536<746f20746865206d63786c6f616420636f6d6d 616e64206c696e652e2054686520726573756c74696e67208c6c65206973206e6f206c6f 6e6765722068756d616e2d7265616461626c652062>3.037 F .536<75742077696c6c> -.2 F .794<62652066>100 532.8 R .794 <617374657220746f207265616420627920612066>-.1 F .795<6163746f7220626574 7765656e2074656e2d206f72207477656e74792d666f6c6420636f6d706172656420746f 207374616e64617264204d434c2d65646765206e65742d>-.1 F -.1<776f>100 544.8 S .552<726b20666f726d61742c20616e6420612066>.1 F .552<6163746f722061726f 756e64208c6674792d666f6c6420636f6d706172656420746f206c6162656c20666f726d 61742e>-.1 F .551<416c6c204d434c2d656467652070726f6772616d73>5.551 F .523<6172652061626c6520746f20726561642062696e61727920666f726d61742c2061 6e64207370656564206f662072656164696e672077696c6c20626520736f6d65>100 556.8 R .523 <776865726520696e20746865206f72646572206f66206d696c6c696f6e73>-.25 F .124<6f6620656467657320706572207365636f6e642c20636f6d706172656420746f2c 20666f722065>100 568.8 R .124<78616d706c652c20726f7567686c79203130304b20 656467657320706572207365636f6e6420666f72206c6162656c20666f726d61742e> -.15 F .553 <4d656d6f727920757361676520666f72206d63786c6f61642063616e206265206c6f> 100 592.8 R .553 <7765726564206279207265706c6163696e6720746865206f7074696f6e>-.25 F F3 <2d2d73747265616d2d6d6972726f72>3.054 E F0<77697468>3.054 E F3 <2d7269206d6178>100 604.8 Q F0<2e>A F4<436f6e>20 621.6 Q -.11<7665>-.438 G<7274696e67206265747765656e2066>.11 E<6f726d617473>-.274 E F2<436f6e> 100 633.6 Q -.1<7665>-.4 G<7274696e67206c6162656c2066>.1 E <6f726d617420746f20746162>-.25 E<756c61722066>-.2 E<6f726d6174>-.25 E F0 <4c6162656c20666f726d61742c207477>100 645.6 Q 2.5<6f6f>-.1 G 2.5<7274> -2.5 G<687265652028696e636c7564696e67207765696768742920636f6c756d6e733a> -2.5 E F3<6d63786c6f6164202d61626320646174612e616263202d2d73747265616d2d 6d6972726f72202d77726974652d74616220646174612e746162202d6f20646174612e6d 6369>118 669.6 Q<6d637864756d70202d696d7820646174612e6d6369202d74616220 646174612e746162202d2d64756d702d7461626c65>118 681.6 Q F0<53696d706c6520 496e746572616374696f6e2046696c6520285349462920666f726d61743a>100 705.6 Q <636c6d70726f746f636f6c732031322d313335>20 768 Q<3134204d61792032303132> 124.285 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 131.505 <636c6d70726f746f636f6c732835292046494c45>20 48 R<464f524d41>2.5 E 134.005<545320636c6d70726f746f636f6c73283529>-1.11 F/F1 10/Courier@0 SF< 6d63786c6f6164202d73696620646174612e736966202d2d73747265616d2d6d6972726f 72202d77726974652d74616220646174612e746162202d6f20646174612e6d6369>118 84 Q<6d637864756d70202d696d7820646174612e6d6369202d74616220646174612e74 6162202d2d64756d702d7461626c65>118 96 Q F0 .515 <49742063616e206265206e6f7465642074686174207468657365207477>100 120 R 3.014<6f65>-.1 G .514<78616d706c6573206172652076>-3.164 F .514 <6572792073696d696c6172>-.15 F 3.014<2c61>-.4 G .514<6e6420646966>-3.014 F .514<666572206f6e6c7920696e207468652077>-.25 F .514 <61792074686520696e70757420746f>-.1 F/F2 10/Times-Bold@0 SF <6d63786c6f6164>100 132 Q F0<69732073706563698c65642e>2.5 E/F3 10.95 /Times-Bold@0 SF<436c7573746572696e672073696d696c6172697479206772617068 7320656e636f64656420696e20424c4153542072>20 148.8 Q<6573756c7473>-.197 E F0 3.248<4173>100 160.8 S .748 <706563698c6320696e7374616e6365206f66207468652077>-3.248 F<6f726b8d6f> -.1 E 3.248<7761>-.25 G<626f>-3.248 E 1.048 -.15<76652069>-.15 H 3.248 <7374>.15 G .748<686520636c7573746572696e67206f662070726f7465696e732062 61736564206f6e2074686569722073657175656e6365>-3.248 F .083<73696d696c61 7269746965732e20496e20746865206d6f7374207479706963616c207363656e6172696f 207468652065>100 172.8 R .082<787465726e616c20666f726d617420697320424c41 5354206f75747075742c207768696368206e6565647320746f206265>-.15 F 2.269 <7472616e73666f726d656420746f2041424320666f726d61742e>100 184.8 R 2.269 <496e207468652065>7.269 F 2.269<78616d706c65732062656c6f>-.15 F 4.769 <7774>-.25 G 2.27<686520696e70757420697320696e20636f6c756d6e617220626c61 737420666f726d6174>-4.769 F .849 <6f627461696e656420776974682074686520626c617374202d6d38206f7074696f6e2e> 100 196.8 R .849<497420726571756972657320612076>5.849 F .849 <657273696f6e206f66>-.15 F F2<6d636c>3.349 E F0 .849 <6174206c6561737420617320726563656e74206173>3.349 F F1<30392d303631> 3.348 E F0<2e>A 1.614<46697273742077652063726561746520616e204142432d666f 726d6174746564208c6c65207573696e67207468652065>100 208.8 R 1.614<787465 726e616c20636f6c756d6e617220424c41535420666f726d61742c207768696368206973> -.15 F<617373756d656420746f20626520696e2061208c6c652063616c6c6564>100 220.8 Q F1<7365712e63626c617374>2.5 E F0<2e>A F1 <637574202d6620312c322c3131207365712e63626c617374203e207365712e616263> 118 244.8 Q F0 .471 <54686520636f6c756d6e617220666f726d617420696e20746865208c6c65>100 268.8 R F1<7365712e63626c617374>2.971 E F0 .471<6861732c20666f722061206769> 2.971 F -.15<7665>-.25 G 2.97<6e42>.15 G .47 <4c415354206869742c207468652073657175656e6365206c6162656c73>-2.97 F .836 <696e20746865208c727374207477>100 280.8 R 3.337<6f63>-.1 G .837 <6f6c756d6e7320616e642074686520617373736f63696174656420452d76>-3.337 F .837<616c756520696e20636f6c756d6e>-.25 F .837 <31312e2049742069732070617273656420627920746865207374616e64617264>2.5 F .473<554e495820637574283129207574696c6974792e2054686520666f726d6174206d 757374206861>100 292.8 R .773 -.15<76652062>-.2 H .472<65656e2063726561 74656420776974682074686520424c415354202d6d38206f7074696f6e20736f20746861 74206e6f>.15 F .207<636f6d6d656e74206c696e6573206172652070726573656e742e 20416c7465726e617469>100 304.8 R -.15<7665>-.25 G .207<6c79207468657365 2063616e206265208c6c7465726564206f7574207573696e6720677265702e>.15 F .208<546865206e65>5.207 F .208<776c792063726561746564>-.25 F F1 <7365712e616263>100 316.8 Q F0 .61<8c6c65206973206c6f61646564206279>3.11 F F2<6d63786c6f6164283129>3.11 E F0 3.109<2c77>C .609 <686963682077726974657320626f74682061206e657477>-3.109 F .609 <6f726b208c6c65>-.1 F F1<7365712e6d6369>3.109 E F0 .609 <616e642061206469632d>3.109 F<74696f6e617279208c6c65>100 328.8 Q F1 <7365712e746162>2.5 E F0<2e>A F1<6d63786c6f6164202d616263207365712e6162 63202d2d73747265616d2d6d6972726f72202d2d73747265616d2d6e65672d6c6f673130 202d73747265616d2d746620276365696c283230302927>118 352.8 Q <2d6f207365712e6d6369202d77726974652d746162207365712e746162>154 364.8 Q F0<546865>100 388.8 Q F1<2d2d73747265616d2d6d6972726f72>3.202 E F0 .702< 6f7074696f6e20656e737572657320746861742074686520726573756c74696e67206e65 7477>3.202 F .703 <6f726b2077696c6c20626520756e64697265637465642c206173207265632d>-.1 F .488<6f6d6d656e646564207768656e207573696e67>100 400.8 R F2<6d636c>2.988 E F0 2.988<2e4f>C .488<6d697474696e672074686973206f7074696f6e2077>-2.988 F .488<6f756c6420726573756c7420696e2061206469726563746564206e657477>-.1 F .487<6f726b20617320424c415354>-.1 F<452d76>100 412.8 Q .164 <616c7565732067656e6572616c6c7920646966>-.25 F .164 <666572206265747765656e207477>-.25 F 2.664<6f73>-.1 G .165 <657175656e6365732e2054686520646566>-2.664 F .165 <61756c7420636f75727365206f6620616374696f6e20666f72>-.1 F F2 <6d63786c6f6164283129>2.665 E F0<6973>2.665 E 1.477 <746f207573652074686520626573742076>100 424.8 R 1.476<616c756520666f756e 64206265747765656e20612070616972206f66206c6162656c732e20546865206e65> -.25 F 1.476<7874206f7074696f6e2c>-.15 F F1 <2d2d6162632d6e65672d6c6f673130>3.976 E F0 1.208 <7472616e666f726d7320746865206e756d65726963616c2076>100 436.8 R 1.208 <616c75657320696e2074686520696e707574202874686520424c41535420452d76>-.25 F 1.209<616c756573292062792074616b696e6720746865206c6f67>-.25 F 1.209 <61726974686d20696e>-.05 F<62617365203130>100 448.8 Q .961 <616e642073756273657175656e746c79206e65>3.461 F -.05<6761>-.15 G .961 <74696e6720746865207369676e2e2046696e616c6c79>.05 F 3.461<2c74>-.65 G .961<6865207472616e73666f726d65642076>-3.461 F .96 <616c756573206172652063617070656420736f2074686174>-.25 F<616e>100 460.8 Q 2.5<7945>-.15 G<2d76>-2.5 E<616c75652062656c6f>-.25 E 2.5<7731>-.25 G <652d3230302069732073657420746f2061206d6178696d756d20616c6c6f>-2.5 E <776564206564676520776569676874206f66203230302e>-.25 E 2.128 -.8 <546f206f>100 484.8 T .528<627461696e20636c7573746572696e67732066726f6d> .8 F F1<7365712e6d6369>3.028 E F0<616e64>3.028 E F1<7365712e746162>3.028 E F0 .528<6f6e6520686173207477>3.028 F 3.028<6f63>-.1 G .528 <686f696365732e20546865208c72737420697320746f2067656e6572>-3.028 F<2d> -.2 E .155<61746520616e20616273747261637420636c7573746572696e6720726570 726573656e746174696f6e20616e642066726f6d2074686174206f627461696e20746865 206c6162656c206f75747075742c20617320666f6c6c6f>100 496.8 R 2.655 <77732e2042656c6f>-.25 F<77>-.25 E<746865>100 508.8 Q F2<2d6f>3.054 E F0 .554<6f7074696f6e206973206e6f7420757365642c20736f206d636c2077696c6c2063 7265617465206d65616e696e6766756c20616e6420756e69717565206f7574707574206e 616d657320627920697473656c662e20546865>3.054 F<646566>100 520.8 Q 1.131 <61756c742077>-.1 F 1.131<6179206f6620646f696e67207468697320697320746f20 7072657072656e6420746865207072658c78>-.1 F F1<6f75742e>3.631 E F0 1.13 <616e6420746f20617070656e64206120737566>3.63 F 1.13 <8c7820656e636f64696e6720746865>-.25 F .142<696e8d6174696f6e2076>100 532.8 R .143<616c756520757365642c207769746820696e8d6174696f6e20656e636f 646564207573696e67207477>-.25 F 2.643<6f64>-.1 G .143<6967697473206f6620 707265636973696f6e20616e642074686520646563696d616c207365706172612d> -2.643 F<746f722072656d6f>100 544.8 Q -.15<7665>-.15 G<642e>.15 E F1 <6d636c207365712e6d6369202d4920312e34>118 568.8 Q <6d636c207365712e6d6369202d492032>118 580.8 Q <6d636c207365712e6d6369202d492034>118 592.8 Q <6d636c207365712e6d6369202d492036>118 604.8 Q<6d637864756d70202d69636c20 6f75742e7365712e6d63692e493134202d74616272207365712e746162202d6f2064756d 702e7365712e6d63692e493134>118 628.8 Q<6d637864756d70202d69636c206f7574 2e7365712e6d63692e493230202d74616272207365712e746162202d6f2064756d702e73 65712e6d63692e493230>118 640.8 Q<6d637864756d70202d69636c206f75742e7365 712e6d63692e493430202d74616272207365712e746162202d6f2064756d702e7365712e 6d63692e493430>118 652.8 Q<6d637864756d70202d69636c206f75742e7365712e6d 63692e493630202d74616272207365712e746162202d6f2064756d702e7365712e6d6369 2e493630>118 664.8 Q F0<4e6f>100 688.8 Q 3.461<7774>-.25 G .961 <6865208c6c65>-3.461 F F1<6f75742e7365712e7461622e493134>3.461 E F0 .961 <616e6420697473206173736f6369617465732063616e206265207573656420666f7220 65>3.461 F .96<78616d706c6520746f20636f6d7075746520746865>-.15 F .516<64 697374616e636573206265747765656e2074686520656e636f64656420636c7573746572 696e67732077697468>100 700.8 R F2 .516<636c6d2064697374>3.016 F F0 3.016 <2c74>C 3.017<6f63>-3.016 G .517 <6f6d70757465206120736574206f66207374726963746c79207265636f6e63696c6564> -3.017 F<6e657374656420636c7573746572696e67732077697468>100 712.8 Q F2 <636c6d206f72646572>2.5 E F0 2.5<2c6f>C 2.5<7274>-2.5 G 2.5<6f63>-2.5 G <6f6d7075746520616e206566>-2.5 E<8c6369656e63>-.25 E 2.5<7963>-.15 G <7269746572696f6e2077697468>-2.5 E F2<636c6d20696e66>2.5 E<6f>-.25 E F0 <2e>A<636c6d70726f746f636f6c732031322d313335>20 768 Q <3134204d61792032303132>124.285 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 131.505 <636c6d70726f746f636f6c732835292046494c45>20 48 R<464f524d41>2.5 E 134.005<545320636c6d70726f746f636f6c73283529>-1.11 F<416c7465726e617469> 100 84 Q -.15<7665>-.25 G<6c79>.15 E 2.5<2c6c>-.65 G<6162656c206f757470 75742063616e206265206f627461696e6564206469726563746c792066726f6d>-2.5 E /F1 10/Times-Bold@0 SF<6d636c>2.5 E F0<617320666f6c6c6f>2.5 E<77732e> -.25 E/F2 10/Courier@0 SF<6d636c207365712e6d6369202d4920312e34>118 108 Q <2d7573652d746162207365712e746162>12 E<6d636c207365712e6d6369202d492032> 118 120 Q<2d7573652d746162207365712e746162>12 E <6d636c207365712e6d6369202d492034>118 132 Q <2d7573652d746162207365712e746162>12 E<6d636c207365712e6d6369202d492036> 118 144 Q<2d7573652d746162207365712e746162>12 E/F3 10.95/Times-Bold@0 SF <436c7573746572696e672065787072>20 172.8 Q<657373696f6e2064617461>-.197 E F0 .671<54686520636c7573746572696e67206f662065>100 184.8 R .671<787072 657373696f6e206461746120636f6e737469747574657320616e6f746865722077>-.15 F<6f726b8d6f>-.1 E .671<772e20496e20746869732063617365207468652065>-.25 F .67<787465726e616c20666f726d6174>-.15 F .586 <757375616c6c79206973206120746162>100 196.8 R .587<756c6172208c6c652066 6f726d617420636f6e7461696e696e67206c6162656c7320666f722067656e6573206f72 2070726f62657320616e64206e756d65726963616c2076>-.2 F .587 <616c756573206d65612d>-.25 F .675<737572696e67207468652065>100 208.8 R .675<787072657373696f6e2076>-.15 F .675<616c756573206f7220666f6c64206368 616e676573206163726f7373206120736572696573206f6620636f6e646974696f6e7320 6f722065>-.25 F .675<78706572696d656e74732e2053756368>-.15 F<746162>100 220.8 Q 1.043 <756c6172208c6c65732063616e2062652070726f636573736564206279>-.2 F F1 <6d63786172726179283129>3.543 E F0 3.543<2c77>C 1.043 <6869636820636f6d657320696e7374616c6c65642077697468>-3.543 F F1<6d636c> 3.543 E F0 3.543<2e54>C 1.044<68652070726f6772616d>-3.543 F 2.858<636f6d 707574657320636f7272656c6174696f6e7320286569746865722050656172736f6e206f 722053706561726d616e6e29206265747765656e2067656e65732c20616e642063726561 74657320616e2065646765>100 232.8 R .963<6265747765656e2067656e6573206966 20746865697220636f7272656c6174696f6e2065>100 244.8 R .963 <786365656473207468652073706563698c6564206375746f66>-.15 F .964 <662e2046726f6d2074686973>-.25 F F1<6d63786172726179283129>3.464 E F0 <63726561746573>3.464 E .105<626f74682061206e657477>100 256.8 R .105<6f 726b208c6c6520616e6420612064696374696f6e617279208c6c652e20496e2074686520 65>-.1 F .105<78616d706c652062656c6f>-.15 F 1.405 -.65<772c2074>-.25 H .104<6865208c6c65>.65 F F2<657870722e64617461>2.604 E F0 .104 <697320696e20746162>2.604 F<756c6172>-.2 E .268 <666f726d61742077697468206f6e6520726f>100 268.8 R 2.768<776f>-.25 G 2.768<6663>-2.768 G .268 <6f6c756d6e20686561646572732028652e672e207461677320666f722065>-2.768 F .268<78706572696d656e74732920616e64206f6e6520636f6c756d6e206f6620726f> -.15 F 2.769<7769>-.25 G<64656e2d>-2.769 E<74698c6572732028652e672e2070 726f6265206f722067656e65206964656e74698c657273292e>100 280.8 Q F2<6d6378 6172726179202d6461746120657870722e64617461202d736b6970722031202d736b6970 632031202d6f20657870722e6d6369202d77726974652d74616220657870722e74616220 2d2d70656172736f6e202d636f20302e37202d7466202761627328292c616464282d302e 372927>118 304.8 Q F0 .326<546869732075736573207468652050656172736f6e20 636f7272656c6174696f6e2c2069676e6f72696e672076>100 340.8 R .326 <616c7565732062656c6f>-.25 F 2.826<7730>-.25 G 2.826<2e372e20546865> -2.826 F .325<72656d61696e696e672076>2.826 F .325 <616c75657320696e2074686520696e746572>-.25 F<2d>-.2 E -.25<7661>100 352.8 S<6c>.25 E F2<5b302e372d315d>3.678 E F0 1.178 <6172652072656d617070656420746f2074686520696e74657276>3.678 F<616c>-.25 E F2<5b302d302e335d>3.679 E F0 3.679<2e54>C 1.179 <686973206973207265636f6d6d656e64656420736f2074686174207468652065646765> -3.679 F 1.447<776569676874732077696c6c206861>100 364.8 R 1.746 -.15 <76652069>-.2 H 1.446 <6e6372656173656420636f6e7472617374206265747765656e207468656d2c206173> .15 F F1<6d636c>3.946 E F0 1.446<6973206166>3.946 F 1.446 <6665637465642062792072656c617469>-.25 F 1.746 -.15<76652064>-.25 H <6966>.15 E<666572656e636573>-.25 E 1.837<28726174696f732920626574776565 6e2065646765207765696768747320726174686572207468616e206162736f6c75746520 646966>100 376.8 R 1.837<666572656e6365732e2054>-.25 F 4.338<6f69>-.8 G 1.838<6c6c7573747261746520746869732c2076>-4.338 F<616c75657320302e3735> -.25 E<616e6420302e3935>100 388.8 Q 1.536<617265206d617070656420746f> 4.036 F 1.536<302e303520616e64>2.5 F 1.536 <302e32352c2077697468207265737065637469>2.5 F 1.835 -.15<76652072>-.25 H <6174696f7320302e3739>.15 E<616e6420302e32352e>4.035 E 1.535 <546865206e657477>6.535 F 1.535<6f726b208c6c65>-.1 F F2 <657870722e6d6369>100 400.8 Q F0 <616e64207468652064696374696f6e617279208c6c65>2.5 E F2<657870722e746162> 2.5 E F0<63616e206e6f>2.5 E 2.5<7762>-.25 G 2.5<6575>-2.5 G <736564206173206265666f72652e>-2.5 E .248 <497420697320706f737369626c6520746f20696e>100 424.8 R -.15<7665>-.4 G <73746967>.15 E .249<61746520746865206566>-.05 F .249 <66656374206f662074686520636f7272656c6174696f6e206375746f66>-.25 F 2.749 <6661>-.25 G 2.749<7366>-2.749 G<6f6c6c6f>-2.749 E 2.749 <77732e204669727374>-.25 F 2.749<616e>2.749 G<657477>-2.749 E .249 <6f726b2069732067656e2d>-.1 F<65726174656420617420612076>100 436.8 Q <657279206c6f>-.15 E 2.5<7774>-.25 G <68726573686f6c642c20616e642074686973206e657477>-2.5 E <6f726b20697320616e616c79736564207573696e67>-.1 E F1<6d63787175657279> 2.5 E F0<2e>A F2<6d63786172726179202d6461746120657870722e64617461202d73 6b6970722031202d736b6970632031202d6f206578707232302e6d6378202d2d77726974 652d62696e617279202d2d70656172736f6e202d636f20302e32202d7466202761627328 2927>118 460.8 Q<6d6378207175657279202d696d78206578707232302e6d6378202d 2d766172792d636f7272656c6174696f6e>118 472.8 Q F0 .652 <546865206f757470757420697320696e206120746162>100 508.8 R .651<756c6172 20666f726d61742064657363726962696e67207468652070726f70657274696573206f66 20746865206e657477>-.2 F .651 <6f726b20617420696e6372656173696e6720636f7272656c612d>-.1 F 1.131<74696f 6e207468726573686f6c64732e204578616d706c657320617265207468652073697a6520 6f6620746865206269676765737420636f6d706f6e656e742c20746865206e756d626572 206f66206f727068616e206e6f646573>100 520.8 R 1.555 <286e6f7420636f6e6e656374656420746f20616e>100 532.8 R 4.055<796f>-.15 G 1.554<74686572206e6f6465292c20616e6420746865206d65616e20616e64206d656469 616e206e6f6465206465>-4.055 F 4.054<67726565732e2041>-.15 F 1.554 <676f6f642077>4.054 F 1.554<617920746f>-.1 F 1.749 <63686f6f736520746865206375746f66>100 544.8 R 4.249<6669>-.25 G 4.249 <7374>-4.249 G 4.249<6f62>-4.249 G 1.749<616c616e636520746865206e756d62 6572206f662073696e676c65746f6e7320616e6420746865206d656469616e206e6f6465 206465>-4.249 F 1.75<677265652e20426f7468>-.15 F .279 <73686f756c642070726566657261626c79206e6f7420626520746f6f20686967682e> 100 556.8 R -.15<466f>5.279 G 2.779<7265>.15 G .279<78616d706c6520746865 206e756d626572206f66206f727068616e206e6f6465732073686f756c64206265206c65 7373207468616e>-2.929 F .04<74656e2070657263656e74206f662074686520746f74 616c206e756d626572206f66206e6f6465732c20616e6420746865206d656469616e206e 6f6465206465>100 568.8 R .04 <677265652073686f756c64206265206174206d6f7374206f6e652068756e2d>-.15 F <64726564206e65696768626f7572732e>100 580.8 Q F3 <5265647563696e67206e6f64652064656772>20 597.6 Q <65657320696e20746865206772617068>-.197 E F0 3.323<4167>100 609.6 S .823 <6f6f642077>-3.323 F .823<617920746f206c6f>-.1 F .823 <776572206e6f6465206465>-.25 F .823<677265657320696e2061206e657477>-.15 F .822<6f726b20697320746f2072657175697265207468617420616e20656467652069 7320616d6f6e67207468652062657374>-.1 F/F4 10/Times-Italic@0 SF<6b>3.322 E F0 .43 <6564676573202874686f7365206f662068696768657374207765696768742920666f72> 100 621.6 R F4<626f7468>2.93 E F0 .431<6e6f64657320696e636964656e742074 6f2074686520656467652c20666f7220736f6d652076>2.93 F .431<616c7565206f66> -.25 F F4<6b>2.931 E F0 2.931<2e54>C .431<686973206973>-2.931 F <6163686965>100 633.6 Q -.15<7665>-.25 G 3.423<6462>.15 G 3.423<7975> -3.423 G<73696e67>-3.423 E F2<6b6e6e286b29>3.423 E F0 .923 <696e20746865206172>3.423 F .923<67756d656e7420746f20746865>-.18 F F1 <2d7466>3.423 E F0 .923<6f7074696f6e20746f206d636c206f72>3.423 F F1 .922 <6d637820616c746572>3.423 F F0 5.922<2e54>C 3.422<6f67>-6.722 G -2.15 -.25<69762065>-3.422 H<616e>3.672 E -.15<6578>100 645.6 S .683 <616d706c652c20612067726170682077>.15 F .683<617320666f726d6564206f6e20 7472616e736c6174696f6e7320696e20456e73656d626c2072656c65617365203537206f 6e20322e364d206e6f6465732e>-.1 F .684<5468652073696d692d>5.684 F .504<6c 617269746965732077657265206f627461696e65642066726f6d20424c4153542073636f 7265732c206c656164696e6720746f20612067726170682077697468206120746f74616c 206564676520636f756e74206f66203330304d2c>100 657.6 R .769 <7769746820626573742d636f6e6e6563746564206e6f646573206f66206465>100 669.6 R .769<67726565207265737065637469>-.15 F -.15<7665>-.25 G .769<6c 792031313134382c20393038332c20393037302c203930313920616e6420383938382c20 616e642077697468>.15 F 2.044<6d65616e206e6f6465206465>100 681.6 R 2.044 <67726565203233332e>-.15 F 2.044<5468657365206465>7.044 F 2.044 <67726565732061726520756e726561736f6e61626c652e>-.15 F 2.044 <5468652067726170682077>7.044 F 2.044<6173207375626a656374656420746f>-.1 F F1<6d6378>4.543 E<7175657279>100 693.6 Q F0 .016<746f20696e>2.516 F -.15<7665>-.4 G<73746967>.15 E .016<61746520746865206566>-.05 F .016 <66656374206f662076>-.25 F .016<617279696e67206b2d4e4e20706172616d657465 72732e204120676f6f642068657572697374696320697320746f2063686f6f7365206120 76>-.25 F<616c7565>-.25 E .268<7468617420646f6573206e6f74207369676e698c 63616e746c79206368616e676520746865206e756d626572206f662073696e676c65746f 6e7320696e2074686520696e7075742067726170682e>100 705.6 R .268 <496e207468652065>5.268 F .268<78616d706c65206974>-.15 F <6d65616e742074686174>100 717.6 Q F1<2d746620276b6e6e283136302927>2.5 E F0 -.1<7761>2.5 G 2.5<7366>.1 G <65617369626c652c206c656164696e6720746f2061206d65616e206e6f6465206465> -2.5 E<67726565206f662039382e>-.15 E <636c6d70726f746f636f6c732031322d313335>20 768 Q<3134204d61792032303132> 124.285 E<34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 131.505 <636c6d70726f746f636f6c732835292046494c45>20 48 R<464f524d41>2.5 E 134.005<545320636c6d70726f746f636f6c73283529>-1.11 F 3.332<4173>100 84 S .832<65636f6e6420617070726f61636820746f20726564756365206e6f6465206465> -3.332 F .832<677265657320697320746f20656d706c6f>-.15 F 3.332<7974>-.1 G <6865>-3.332 E/F1 10/Times-Bold@0 SF<2d6365696c2d6e62>3.332 E F0 3.332 <6f7074696f6e2e2054686973>3.332 F .832<72616e6b73206e6f646573>3.332 F .108<6279206e6f6465206465>100 96 R .108<677265652c2068696768657374208c72 73742e204e6f6465732061726520636f6e7369646572656420696e206f72646572206f66 2072616e6b2c20616e64206564676573206f66206c6f>-.15 F 2.607<7777>-.25 G .107<656967687420617265>-2.607 F<72656d6f>100 108 Q -.15<7665>-.15 G 2.5 <6466>.15 G<726f6d2074686520677261706820756e74696c2061206e6f646520736174 69738c657320746865206e6f6465206465>-2.5 E <67726565207468726573686f6c642073706563698c6564206279>-.15 E F1 <2d6365696c2d6e62>2.5 E F0<2e>A/F2 10.95/Times-Bold@0 SF <53454520414c534f>20 136.8 Q F1<6d6378696f283529>100 148.8 Q F0<2e>A F2 -.548<4155>20 165.6 S<54484f52>.548 E F0<5374696a6e2076>100 177.6 Q <616e20446f6e67656e2e>-.25 E<636c6d70726f746f636f6c732031322d313335>20 768 Q<3134204d61792032303132>124.285 E<35>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mclpipeline.ps0000644000402500021140000013661111754271043012717 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:15 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Courier %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 6 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Courier %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Courier@0 ENC0/Courier RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 127.895<6d636c706970656c696e652831292055534552> 20 48 R 130.395<434f4d4d414e4453206d636c706970656c696e65283129>2.5 F/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d636c706970656c 696e6520ad20612067656e6572696320706970656c696e6520666f722067656e65726174 696e6720616e64207363727574696e697a696e67206d636c20636c7573746572696e6773 2e>100 96 Q/F2 10/Times-Bold@0 SF<4e4f>100 120 Q<5445>-.4 E<6d636c>100 132 Q F0 .804<68617320616371756972656420746865206162696c69747920746f206d 616e6970756c617465206c6162656c20696e707574206469726563746c792e2054686973 20656e61626c657320612076>3.304 F .803<657279206c69676874776569676874> -.15 F 1.13<6d656368616e69736d206f662067656e65726174696e6720636c75737465 72696e6773206279207465616d696e67207570206d636c20776974682061206c69676874 776569676874207061727365722e2059>100 144 R 1.13<6f75206d69676874>-1.1 F -.1<7761>100 156 S .053 <6e7420746f207573652074686973206d656368616e69736d2e>.1 F .053 <4578616d706c6520696e>5.053 F -.2<766f>-.4 G .053 <636174696f6e73207573696e6720746865>.2 F F2<6d63786465626c617374>2.553 E F0 .053<424c415354207061727365722061726520646f632d>2.553 F <756d656e74656420696e20746865>100 168 Q F2<6d636c206d616e75616c>2.5 E F0 <2e>A F1<53594e4f50534953>20 184.8 Q F2<6d636c706970656c696e65>100 196.8 Q F0<5b6f7074696f6e735d203c8c6c652d6e616d653e>2.5 E .022<7768657265203c 8c6c652d6e616d653e2069732065697468657220746865206e616d65206f662074686520 6461746120696e707574208c6c652c206f72206974732062617365206e616d652e20496e 20746865206c6174746572206361736520746865>100 220.8 R F2 <2d2d78692d646174>100 232.8 Q F0 .312<6f7074696f6e2069732072657175697265 642e20496e2063617365206d636c706970656c696e6520697320696e6465656420757365 6420746f20636f6e74726f6c20616c6c207374616765732066726f6d2074686520646174 61>2.813 F<696e707574208c6c65206f6e77>100 244.8 Q <617264732c2075736167652077696c6c206f6674656e206265206c696b>-.1 E 2.5 <6574>-.1 G<6869733a>-2.5 E/F3 10/Courier@0 SF<6d636c706970656c696e6520 5b70726570617265206f7074696f6e735d202d2d707265706172652d6d636c203c66696c 652d6e616d653e>118 268.8 Q<6d636c706970656c696e65205b636c7573746572206f 7074696f6e7320315d202d2d73746172742d6d636c203c66696c652d6e616d653e>118 280.8 Q<6d636c706970656c696e65205b636c7573746572206f7074696f6e7320325d20 2d2d73746172742d6d636c203c66696c652d6e616d653e>118 292.8 Q<2e2e20657463> 118 304.8 Q F2<6d636c706970656c696e65>100 328.8 Q F0 1.95<63616e20616c73 6f206265207573656420746f20636f6e74726f6c2073686f7274657220706970656c696e 65732c20692e652e20696e20636173652074686520696e707574206d61747269782077> 4.45 F<6173>-.1 E .763<616c72656164792063726561746564206f7220696e206361 7365207072652d617373656d626c6564207061727473206f662074686520696e70757420 6d6174726978207765726520616c726561647920637265617465642e20496e2074686973> 100 340.8 R<636173652c2075736167652077696c6c206f6674656e206265206c696b> 100 352.8 Q 2.5<6574>-.1 G<6869733a>-2.5 E F3<6d636c706970656c696e65205b 636c7573746572206f7074696f6e7320315d202d2d73746172742d6d636c3d3c666e616d 653e>118 376.8 Q<6d636c706970656c696e65205b636c7573746572206f7074696f6e 7320325d202d2d73746172742d6d636c3d3c666e616d653e>118 388.8 Q<6f72>100 400.8 Q<6d636c706970656c696e65205b617373656d626c79206f7074696f6e735d202d 2d73746172742d617373656d626c653d3c666e616d653e202d2d707265706172652d6d63 6c>118 412.8 Q F2<4e4f>100 436.8 Q<5445>-.4 E F0 .02 <497420697320706f737369626c6520746f206d616b>100 448.8 R 2.52<656d>-.1 G .021<636c706970656c696e65206f75747075742061206c6172>-2.52 F .021<676520 617272617279206f6620706572666f726d616e6365206d656173757265732072656c6174 656420746f206e6f646573>-.18 F 1.062<616e6420636c75737465727320696e2068> 100 460.8 R<797065726c696e6b>-.05 E 1.062 <6564206f757470757420627920737570706c79696e6720746865>-.1 F F2 <2d2d666d742d66616e6379>3.561 E F0 3.561<6f7074696f6e2e2054686973>3.561 F 1.061<63616e2062652075736566756c206966>3.561 F .338<6f6e652077>100 472.8 R .339<616e747320746f207363727574696e697a65206120636c757374657269 6e6720696e20677265617465722064657461696c20616e64206e61>-.1 F<766967>-.2 E .339 <6174652077697468696e2074686520636c7573746572696e672e20546865206f75742d> -.05 F 1.227 <707574207468656e20696e636c75646573206c697374696e6773206f662065>100 484.8 R 1.227<787465726e616c206e6f6465732074686174206172652072656c65> -.15 F -.25<7661>-.25 G 1.226<6e742f636c6f736520746f2061206769>.25 F -.15<7665>-.25 G 3.726<6e63>.15 G<6c7573746572>-3.726 E 3.726<2c61>-.4 G 1.226<6e642076696365>-3.726 F -.15<7665>100 496.8 S <7273612c206c697374696e6773206f662065>.15 E <787465726e616c20636c7573746572732074686174206172652072656c65>-.15 E -.25<7661>-.25 G<6e742f636c6f736520746f2061206769>.25 E -.15<7665>-.25 G 2.5<6e6e>.15 G<6f64652e>-2.5 E .581<47656e65726174696e672074686973206d6f 726520696e74726963617465206f75747075742072657175697265732074686520707265 73656e6365206f6620746865>100 520.8 R F2<7a6f656d>3.081 E F0 .581 <6d6163726f2070726f636573736f722e205265666572>3.081 F 2.119 <746f20746865>100 532.8 R F2 2.119<53454520414c534f>4.619 F F0 2.119 <73656374696f6e20616e6420746865>4.619 F F2<636c6d66>4.619 E 2.119 <6f726d6174206d616e75616c>-.25 F F0 2.118 <666f72206d6f726520696e666f726d6174696f6e206f6e207a6f656d2e204279>4.618 F<646566>100 544.8 Q .546<61756c74207a6f656d206973206e6f7420726571756972 65642c20616e64207468652072657475726e20726573756c742069732061208c6c652077 686572652065616368206c696e6520636f6e7461696e73206120636c7573746572696e67> -.1 F <636f6e73697374696e67206f66207461622d736570617261746564206c6162656c732e> 100 556.8 Q .003<496620746869732070726f6772616d20646f6573206e6f742077> 100 580.8 R .003<6f726b2061732065>-.1 F .002 <787065637465642c20706c65617365208c6c6520612062>-.15 F .002 <7567207265706f7274207769746820746865206465>-.2 F -.15<7665>-.25 G .002 <6c6f70657220616e642f6f72207375622d>.15 F <73637269626520746f206d636c2d6465>100 592.8 Q -.15<7665>-.25 G 2.5<6c61> .15 G 2.5<7369>-2.5 G <6e64696361746564206f6e20687474703a2f2f6d6963616e732e6f72>-2.5 E <672f6d636c2f2e205468652070726f626c656d2077696c6c207468656e206265208c78> -.18 E<65642e>-.15 E .12<5468652066756c6c206c697374206f6620706970656c69 6e65206f7074696f6e73206973206769>100 616.8 R -.15<7665>-.25 G 2.621 <6e62>.15 G<656c6f>-2.621 E .121<772e2053746172742073696d706c652c20616e 6420696620796f75206e65656420736f6d652062656861>-.25 F<76696f7572>-.2 E 2.621<2c74>-.4 G<7279>-2.621 E .439<746f20736565206966207468657265206973 20616e206f7074696f6e2074686174208c747320796f7572206e656564732e>100 628.8 R .439<496620796f75207573652061207772617070657220706970656c696e65207375 6368206173>5.439 F F2<6d636c626c6173742d>2.938 E<6c696e65283129>100 640.8 Q F0 2.936<2c79>C .436<6f752063616e2069676e6f726520746865>-2.936 F F2<2d2d706172736572>2.936 E F0<616e64>2.936 E F2<2d2d706172736572>2.936 E<2d746167>-.37 E F0 .436<6f7074696f6e7320617320746865>2.936 F 2.936 <7961>-.15 G .436<72652070726f>-2.936 F .436 <76696465642062792074686520777261702d>-.15 F<7065722e>100 652.8 Q F2 <6d636c706970656c696e65202d2d7061727365723d>100 676.8 Q F0 <6170706c69636174696f6e2028>A/F4 10/Times-Italic@0 SF<6461746120706172>A <736572>-.1 E F0<29>A F2<2d2d706172736572>2.5 E<2d7461673d>-.37 E F0 <7374722028>A F4<706172>A<7365206f7074696f6e207472>-.1 E <616e73706f72746572>-.15 E F0<29>A F2<5b2d2d776861746966>100 700.8 Q F0 <28>2.5 E F4<646f206e6f742065>A<786563757465>-.2 E F0<29>A F2<5d>A <5b2d2d73746172742d617373656d626c65>100 712.8 Q F0<28>2.5 E F4 <736b697020706172>A<736520737461>-.1 E -.1<6765>-.1 G F0<29>.1 E F2<5d>A <5b2d2d73746172742d6d636c>100 724.8 Q F0<28>2.5 E F4 <736b6970206561726c69657220737461>A -.1<6765>-.1 G<73>.1 E F0<29>A F2 <5d>A F0<6d636c706970656c696e652031322d313335>20 768 Q <3134204d61792032303132>129.285 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 127.895<6d636c706970656c696e652831292055534552> 20 48 R 130.395<434f4d4d414e4453206d636c706970656c696e65283129>2.5 F/F1 10/Times-Bold@0 SF<5b2d2d73746172742d66>100 84 Q<6f726d6174>-.25 E F0 <28>2.5 E/F2 10/Times-Italic@0 SF<736b6970206561726c69657220737461>A -.1 <6765>-.1 G<73>.1 E F0<29>A F1<5d>A<5b2d2d7072>100 96 Q<65706172>-.18 E <652d6d636c>-.18 E F0<28>2.5 E F2<646f207072>A<65706172>-.37 E <61746f727920737461>-.15 E -.1<6765>-.1 G<73>.1 E F0<29>A F1<5d>A <5b2d2d68656c70>100 108 Q F0<28>2.5 E F2 <73756d6d617279206f66206f7074696f6e73>A F0<29>A F1<5d>A<5b2d2d78693d>100 120 Q F0<7375662028>A F2<737472697020737566206672>A <6f6d20696e707574208c6c65>-.45 E F0<29>A F1<5d>A<5b2d2d786f2d6461743d> 100 132 Q F0<7375662028>A F2<6174746163>A 2.5<6873>-.15 G <756620746f20706172>-2.5 E<7365206f7574707574>-.1 E F0<29>A F1<5d>A <5b2d2d786f2d6173733d>100 144 Q F0<7375662028>A F2<6174746163>A 2.5 <6873>-.15 G<756620746f20617373656d626c79206f7574707574>-2.5 E F0<29>A F1<5d>A<5b2d2d78692d6d636c3d>100 156 Q F0<7375662028>A F2 <7573652077697468202d2d73746172742d6d636c>A F0<29>A F1<5d>A <5b2d2d786f2d6d636c3d>100 168 Q F0<7375662028>A F2 -.37<7265>C <706c616365206d636c206f757470757420737566>.37 E<8c78>-.18 E F0<29>A F1 <5d>A<5b2d2d78612d6d636c3d>100 180 Q F0<7374722028>A F2 <617070656e6420746f206d636c206f757470757420737566>A<8c78>-.18 E F0<29>A F1<5d>A<5b2d2d78652d6d636c3d>100 192 Q F0<7375662028>A F2 <617070656e6420746f206d636c206f7574707574>A F0<29>A F1<5d>A <5b2d2d786f2d666d743d>100 204 Q F0<7375662028>A F2<6174746163>A 2.5 <6873>-.15 G<756620746f20636c6d666f726d6174206f7574707574>-2.5 E F0<29>A F1<5d>A<5b2d2d6173732d72>100 216 Q<65706561743d>-.18 E F0<7374722028>A F2<617373656d626c792072>A<6570656174206f7074696f6e>-.37 E F0<29>A F1<5d> A<5b2d2d6173732d6e6f6d6170>100 228 Q F0<28>2.5 E F2<69676e6f72>A 2.5 <656d>-.37 G<6170208c6c65>-2.5 E F0<29>A F1<5d>A<5b2d2d6173732d6f70743d> 100 240 Q F0 -.25<7661>C 2.5<6c28>.25 G F2 <617373656d626c79206f7074696f6e207472>-2.5 E<616e73706f72746572>-.15 E F0<29>A F1<5d>A<5b2d2d6d636c2d74653d>100 252 Q F0<6e756d2028>A F2<2365>A <7870616e73696f6e20746872>-.2 E<65616473>-.37 E F0<29>A F1<5d>A <5b2d2d6d636c2d493d>100 264 Q F0<8d6f61742028>A F2 <6d636c20696e8d6174696f6e2076616c7565>A F0<29>A F1<5d>A <5b2d2d6d636c2d693d>100 276 Q F0<8d6f61742028>A F2 <6d636c20696e697469616c20696e8d6174696f6e2076616c7565>A F0<29>A F1<5d>A <5b2d2d6d636c2d6c3d>100 288 Q F0<8d6f61742028>A F2 <6d636c20696e697469616c206c6f6f70206c656e677468>A F0<29>A F1<5d>A <5b2d2d6d636c2d633d>100 300 Q F0<8d6f61742028>A F2 <6d636c2063656e7465722076616c7565>A F0<29>A F1<5d>A <5b2d2d6d636c2d70693d>100 312 Q F0<8d6f61742028>A F2<6d636c207072>A <652d696e8d6174696f6e2076616c7565>-.37 E F0<29>A F1<5d>A <5b2d2d6d636c2d736368656d653d>100 324 Q F0 2.5<6928>C F2<6d636c207363> -2.5 E<68656d6520696e6465>-.15 E<78>-.2 E F0<29>A F1<5d>A <5b2d2d6d636c2d6f3d>100 336 Q F0<666e616d652028>A F2 <646f206e6f7420757365>A F0<29>A F1<5d>A<5b2d2d6d636c2d6f70743d>100 348 Q F0 -.25<7661>C 2.5<6c28>.25 G F2<6d636c206f7074696f6e207472>-2.5 E <616e73706f72746572>-.15 E F0<29>A F1<5d>A <5b2d2d666d742d6c756d702d636f756e743d>100 360 Q F0<6e756d2028>A F2 <636f6c6c65637420666f726d6174746564206f7574707574>A F0<29>A F1<5d>A <5b2d2d666d742d6f7074>100 372 Q F0 -.25<7661>2.5 G 2.5<6c28>.25 G F2 <636c6d666f726d6174206f7074696f6e207472>-2.5 E<616e73706f72746572>-.15 E F0<29>A F1<5d>A<5b2d2d666d742d746162>100 384 Q F0<666e616d652028>2.5 E F2<757365207468697320746162208c6c65>A F0<29>A F1<5d>A <5b2d2d666d742d6e6f746162>100 396 Q F0<28>2.5 E F2<69676e6f72>A 2.5 <6574>-.37 G<6162208c6c65>-2.5 E F0<29>A F1<5d>A F0 <3c8c6c652d6e616d653e>100 408 Q/F3 10.95/Times-Bold@0 SF <4445534352495054494f4e>20 424.8 Q F1<6d636c706970656c696e65>100 436.8 Q F0 .017<656e63617073756c6174657320612073657175656e6365206f662070726f6772 616d7320746f2062652072756e206f6e20736f6d6520696e707574206461746120696e20 6f7264657220746f206f627461696e>2.518 F 2.331<636c7573746572696e67732061 6e6420666f726d6174746564206f757470757420726570726573656e74696e6720746865 20636c7573746572696e67732c207768696c65206d61696e7461696e696e6720756e6971 7565208c6c65>100 448.8 R<6e616d657320616e64208c6c65206e616d6520656e7365 6d626c657320636f72726573706f6e64696e67207769746820646966>100 460.8 Q <666572656e746c7920706172616d657472697a65642072756e732e>-.25 E .344 <546865207363726970742063616e2062656861>100 484.8 R .644 -.15<76652069> -.2 H 2.844<6e73>.15 G -2.15 -.25<65762065>-2.844 H .344<72616c2077>.25 F .344<6179732e20427920646566>-.1 F .344<61756c742c2074686520706970656c 696e6520636f6e7369737473206f662074686520737461676573206f66>-.1 F F2 <706172>2.843 E<73696e67>-.1 E F0<2c>A F2<617373656d626c79>100 496.8 Q F0<2c>A F2<636c7573746572696e67>4.123 E F0 4.123<2c61>C<6e64>-4.123 E F2 <666f726d617474696e67>4.124 E F0 6.624<2e54>C 1.624<68652070617273696e67 20737461676520697320746f20626520726570726573656e74656420627920736f6d6520 706172736572>-6.624 F 1.045<736372697074206f6265>100 508.8 R 1.045 <79696e672074686520696e74657266>-.15 F 1.045 <6163652072756c6573206465736372696265642062656c6f>-.1 F 1.044 <772e2054686520617373656d626c7920737461676520697320646f6e65206279>-.25 F F1<6d6378617373656d2d>3.544 E<626c65283129>100 520.8 Q F0 2.573<2c74>C .073<686520636c7573746572696e6720737461676520697320646f6e65206279>-2.573 F F1<6d636c283129>2.573 E F0 2.573<2c61>C .074 <6e642074686520666f726d617474696e6720737461676520697320646f6e65206279> -2.573 F F1<636c6d66>2.574 E<6f726d6174283129>-.25 E F0<2e>A .777<546865 207363726970742063616e20616c736f2062652070757420746f2073696d706c65722075 7365732c20652e672e206c657474696e6720746865207363726970742074616b>100 544.8 R 3.277<6563>-.1 G .777 <617265206f6620756e69717565208c6c65206e616d6573>-3.277 F .295 <666f7220646966>100 556.8 R .295<666572656e746c7920706172616d657472697a 6564206d636c2072756e732e20496e20746869732063617365207468657265206973206e 6f206e65656420746f207370656369667920656974686572207468652070617273657220 6f72>-.25 F <7468652064617461208c6c652c20616e642073756273657175656e7420696e>100 568.8 Q -.2<766f>-.4 G<636174696f6e73206d69676874206c6f6f6b206c696b>.2 E 2.5<6574>-.1 G<6869733a>-2.5 E/F4 10/Courier@0 SF<6d636c706970656c696e65 202d2d73746172742d6d636c3d3c666e616d653e202d2d6d636c2d493d312e36202d2d6d 636c2d736368656d653d34>118 604.8 Q<6d636c706970656c696e65202d2d73746172 742d6d636c3d3c666e616d653e202d2d6d636c2d493d322e30202d2d6d636c2d73636865 6d653d34>118 616.8 Q<6d636c706970656c696e65202d2d73746172742d6d636c3d3c 666e616d653e202d2d6d636c2d493d322e34202d2d6d636c2d736368656d653d34>118 628.8 Q<2e2e20657463>118 640.8 Q F0 3.336<497420697320656173696573742069 6620666f7220656163682070617273657220612077726170706572207363726970742069 73207772697474656e20656e63617073756c6174696e6720746865207061727365722061 6e64>100 664.8 R F1<6d636c706970656c696e65>100 676.8 Q F0 3.749<2e416d>C 1.249<656368616e69736d2069732070726f>-3.749 F 1.249<7669646564207468726f 756768207768696368206d636c706970656c696e652063616e207265636f676e697a6520 6f7074696f6e732074686174>-.15 F .041<617265206d65616e7420746f2062652070 617373656420746f20746865207061727365722e20416e2065>100 688.8 R .04<7861 6d706c65206f662073756368206120777261707065722073637269707420697320746865 20424c41535420706970656c696e65>-.15 F F1<6d636c626c6173746c696e65>100 700.8 Q F0 4.745<74686174206261736963616c6c792063616c6c73206d636c706970 656c696e6520776974682074686520706172616d6574657273>7.245 F F1 <2d2d706172736572>7.245 E F0<3d>A F1<6d63786465626c617374>A <2d2d706172736572>100 712.8 Q<2d746167>-.37 E F0<3d>A F1<626c617374>A F0 5.097<2e49>C 2.597<6e74>-5.097 G .097 <68697320636173652074686520706172736572206973>-2.597 F F1 <6d63786465626c617374>2.597 E F0 2.597<2c61>C .097 <6e64206d636c706970656c696e652077696c6c207061737320616e>-2.597 F 2.596 <796f>-.15 G<7074696f6e73>-2.596 E .327<6f662074686520666f726d73>100 724.8 R F1<2d2d626c6173742d66>2.827 E<6f6f>-.25 E F0<616e64>2.827 E F1 <2d2d626c6173742d6261723d7a7574>2.828 E F0 .328 <746f207468652070617273657220287265737065637469>2.828 F -.15<7665>-.25 G .328<6c79206173>.15 F F1<2d2d66>2.828 E<6f6f>-.25 E F0<616e64>2.828 E F1 <2d2d6261723d7a7574>2.828 E F0<292e>A <6d636c706970656c696e652031322d313335>20 768 Q<3134204d61792032303132> 129.285 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 127.895<6d636c706970656c696e652831292055534552> 20 48 R 130.395<434f4d4d414e4453206d636c706970656c696e65283129>2.5 F -.15<466f>100 84 S 3.824<726167>.15 G -2.15 -.25<69762065>-3.824 H 3.824 <6e64>.25 G 1.323<617461207365742074686520737461676573206f66207061727369 6e6720616e6420617373656d626c696e672077696c6c206f6674656e206e6f74206e6565 6420746f2062652072657065617465642c>-3.824 F .145<657370656369616c6c7920 696620746865726520697320612077656c6c2065737461626c69736865642077>100 96 R .146<6179206f66206372656174696e672061206d61747269782066726f6d20746865 20696e70757420646174612e20496e207468697320636173652c>-.1 F <75736167652077696c6c206c6f6f6b206c696b>100 108 Q<65>-.1 E/F1 10 /Courier@0 SF<6d636c706970656c696e65205b70617273652f617373656d626c79206f 7074696f6e735d202d2d707265706172652d6d636c203c66696c652d6e616d653e>118 144 Q<6d636c706970656c696e65205b636c7573746572206f7074696f6e7320315d202d 2d73746172742d6d636c203c66696c652d6e616d653e>118 156 Q<6d636c706970656c 696e65205b636c7573746572206f7074696f6e7320325d202d2d73746172742d6d636c20 3c66696c652d6e616d653e>118 168 Q<6d636c706970656c696e65205b636c75737465 72206f7074696f6e7320335d202d2d73746172742d6d636c203c66696c652d6e616d653e> 118 180 Q<2e2e2e>118 192 Q F0 .631<4e6f74652074686174>100 216 R/F2 10 /Times-Bold@0 SF<6d636c706970656c696e65>3.131 E F0 .631<77696c6c2073746f 726520746865206f7574707574206f662074686f73652072756e7320696e20756e697175 65208c6c65206e616d65732064657269>3.131 F -.15<7665>-.25 G 3.13<6466>.15 G .63<726f6d20746865>-3.13 F<706172616d657472697a6174696f6e732e>100 228 Q .834<54686572652061726520736f6d65206f7074696f6e732074686174206166>100 252 R .834<6665637420746865208c6c65206e616d6573206f6620696e7465726d6564 6961746520726573756c74732e20496e207468652061626f>-.25 F 1.135 -.15 <76652073>-.15 H .835<65747570206f66>.15 F 1.242<7265706561746564207275 6e732c206966207573656420696e206f6e652072756e2c20746865>100 264 R 3.742 <796d>-.15 G 1.242 <757374206265207573656420696e20616c6c2072756e732c206173>-3.742 F F2 <6d636c706970656c696e65>3.741 E F0 1.241<75736573207468656d20746f>3.741 F .813<636f6d7075746520746865208c6c65206e616d6573206974206e656564732e> 100 276 R -.15<466f>5.813 G 3.313<7274>.15 G .813 <68652073657475702061626f>-3.313 F -.15<7665>-.15 G 3.313<2c74>.15 G .813<68657365206f7074696f6e7320617265>-3.313 F F2<2d2d7869>3.313 E F0 <3d>A/F3 10/Times-Italic@0 SF<737566>A F0<2c>A F2<2d2d786f2d646174>3.313 E F0<3d>A F3<737566>A F0<2c>A<616e64>100 288 Q F2<2d2d786f2d617373>2.5 E F0<3d>A F3<737566>A F0<2e>A .305<546865726520617265206f746865722077>100 312 R .304<617973206f6620726573756d696e672074686520706970656c696e652c20 616e64206f6e65206d75737420616c>-.1 F -.1<7761>-.1 G .304<79732074616b>.1 F 2.804<6563>-.1 G .304<6172652074686174206f7074696f6e732073746172742d> -2.804 F .837<696e672077697468>100 324 R F2<2d2d78692d>3.337 E F0<2c>A F2<2d2d786f2d>3.337 E F0<2c>A F2<2d2d7861>3.337 E F0 3.337<2c6f>C<72> -3.337 E F2<2d2d7865>3.337 E F0 .837<61726520726570656174656420616d6f6e 672070726570617261746f727920616e642073756273657175656e742072756e732e> 3.337 F<5468657365>5.838 E .445<74616773207265737065637469>100 336 R -.15<7665>-.25 G .445<6c79206d6e656d6f6e697a65>.15 F F3 -.2<6578>2.945 G .445<74656e73696f6e20696e>.2 F F0<2c>A F3 -.2<6578>2.945 G .445 <74656e73696f6e206f7574>.2 F F0<2c>A F3 -.2<6578>2.944 G .444 <74656e73696f6e20617070656e64>.2 F F0 2.944<2c61>C<6e64>-2.944 E F3 -.2 <6578>2.944 G .444<74656e73696f6e2065>.2 F<787472>-.2 E<61>-.15 E F0<2e> A .706<53686f756c64206f6e652077>100 360 R .707<616e7420746f2065>-.1 F .707<78706572696d656e7420776974682076>-.15 F .707<6172696f75732077>-.25 F .707<617973206f66206372656174696e6720696e707574206d617472696365732c20 7468656e>-.1 F F2<6d636c706970656c696e65>3.207 E F0 .419<737570706c6965 73206f7074696f6e7320746f2063726561746520756e69717565208c6c65206e616d6573 20616e64208c6c65206e616d6520656e73656d626c657320636f72726573706f6e64696e 67207769746820646966>100 372 R<666572>-.25 E<2d>-.2 E .96<656e7420736574 75707320616e6420706172616d657472697a6174696f6e732e20546865736520617265> 100 384 R F2<2d2d786f2d646174>3.46 E F0<3d>A F3<737566>A F0 .96 <666f72207468652070617273696e6720737461676520616e64>3.46 F F2 <2d2d786f2d617373>3.46 E F0<3d>A F3<737566>A F0 1.482 <666f722074686520617373656d626c792073746167652e206d636c706970656c696e65> 100 396 R F3<6175746f6d61746963616c6c79>3.982 E F0 1.481<67656e65726174 657320756e69717565208c6c65206e616d657320666f722074686520636c7573746572> 3.982 F<726573756c74732c2062>100 408 Q<757420697420646f6573206e6f742064 6f20736f20666f722074686520706172736520616e6420617373656d626c792072657375 6c74732e>-.2 E F2 -.1<5061>100 432 S<7273657220696e746572666163652072>.1 E<6571756972>-.18 E<656d656e7473>-.18 E F0 1.151<5468652070617273657220 73686f756c64207265636f676e697a6520697473206c617374206172>100 444 R 1.151 <67756d656e742061732061208c6c65206e616d65206f72206173207468652062617365 206e616d65206f662061208c6c652e>-.18 F<4974>6.152 E .576 <73686f756c642070726f6475636520746865208c6c6573>100 456 R F1 <626173652e726177>3.076 E F0<2c>A F1<626173652e686472>3.076 E F0 3.076 <2c61>C .576<6e642070726566657261626c79>-3.076 F F1<626173652e746162> 3.076 E F0<616e64>3.076 E F1<626173652e6d6170>3.076 E F0<2c>A <7768657265207468652062617365206e616d65>100 468 Q F1<62617365>2.5 E F0 <69732064657465726d696e6564206173206465736372696265642062656c6f>2.5 E <772e>-.25 E F2<6d636c706970656c696e65>100 492 Q F0 .641 <77696c6c207061737320697473206c617374206172>3.141 F .642 <67756d656e74203c8c6c652d6e616d653e20746f20746865207061727365722e>-.18 F .642<546865207061727365722073686f756c64207265636f676e697a65>5.642 F <746865>100 504 Q F2<2d2d78692d646174>2.586 E F0<3d>A F3<737566>A F0 <616e64>2.586 E F2<2d2d786f2d646174>2.586 E F0<3d>A F3<737566>A F0 .086< 6f7074696f6e732e20496620746865208c7273742069732070726573656e742c20697420 73686f756c642074727920746f207374726970203c8c6c652d6e616d653e>2.586 F .622<6f662074686520737566>100 516 R .622 <8c782073706563698c656420696e207468652076>-.25 F .623<616c756520616e6420 7573652074686520726573756c742061732074686520696e697469616c2070617274206f 66207468652062617365206e616d6520666f7220746865>-.25 F .655<8c6c65732069 7420636f6e737472756374732e20496620737472697070696e6720646f6573206e6f7420 737563636565642c206974206d75737420696e74657270726574203c8c6c652d6e616d65 3e206173207468652062617365206e616d65>100 528 R .915 <616e6420617070656e642074686520737566>100 540 R .915<8c7820696e206f7264 657220746f20636f6e73747275637420746865206e616d65206f6620746865208c6c6520 69742077696c6c2074727920746f20726561642e>-.25 F .916<496620746865>5.916 F F2<2d2d786f2d>3.416 E<646174>100 552 Q F0<3d>A F3<737566>A F0 1.379<6f 7074696f6e2069732070726573656e742c206974206d75737420617070656e6420746865 20737566>3.879 F 1.379<8c782073706563698c656420696e207468652076>-.25 F 1.378<616c756520746f2074686520626173652070617274206173>-.25 F .015 <6465736372696265642061626f>100 564 R -.15<7665>-.15 G 5.015<2e54>.15 G .015<686520726573756c74206973207468656e207468652066756c6c2062617365206e 616d6520746f20776869636820746865>-5.015 F F1<726177>2.516 E F0<2c>A F1 <686472>2.516 E F0 2.516<2c61>C .016<6e64206f7468657220737566>-2.516 F <8c78>-.25 E<6573>-.15 E<77696c6c20626520617070656e6465642e>100 576 Q F2 -.1<5061>100 600 S<7273657220696e74657266616365206578616d706c6573>.1 E F1<3c7061727365723e202d2d78692d6461743d616263202d2d786f2d6461743d78797a 20666f6f>100 624 Q 12<2a70>106 636 S<617273657220726561647320666f6f2e61 62632c2077726974657320666f6f2e78797a2e7261772c20666f6f2e78797a2e68647220 6574206365746572612e>-12 E<3c7061727365723e202d2d78692d6461743d61626320 2d2d786f2d6461743d78797a20666f6f2e616263>100 648 Q 12<2a69>106 660 S <64656d>-12 E <3c7061727365723e202d2d786f2d6461743d78797a20666f6f2e616263>100 672 Q 12 <2a70>106 684 S<617273657220726561647320666f6f2e6162632c2077726974657320 666f6f2e6162632e78797a2e726177206574206365746572612e>-12 E <3c7061727365723e202d2d78692d6461743d61626320666f6f2e616263>100 696 Q 12 <2a70>106 708 S<617273657220726561647320666f6f2e6162632c2077726974657320 666f6f2e7261772c20666f6f2e686472206574206365746572612e>-12 E <3c7061727365723e20666f6f2e616263>100 720 Q F0 <6d636c706970656c696e652031322d313335>20 768 Q<3134204d61792032303132> 129.285 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 127.895<6d636c706970656c696e652831292055534552> 20 48 R 130.395<434f4d4d414e4453206d636c706970656c696e65283129>2.5 F/F1 10/Courier@0 SF 12<2a70>106 84 S<617273657220726561647320666f6f2e616263 2c2077726974657320666f6f2e6162632e7261772c20666f6f2e6162632e686472206574 206365746572612e>-12 E/F2 10/Times-Bold@0 SF <4f7574707574208c6c65206e616d657320636f6e737472756374696f6e>100 108 Q F0 .03<546865208c6c6573206f66207072696d61727920696e746572657374206172652074 6865206d636c206f7574707574208c6c6520616e642074686520666f726d617474656420 6f75747075742070726f647563656420627920636c6d666f72>100 120 R<2d>-.2 E 4.009<6d61742e20546865>100 132 R 1.509<706970656c696e6520636f6e73747275 6374732061208c6c65206e616d6520666f7220746865206d636c206f757470757420696e 207768696368207365>4.009 F -.15<7665>-.25 G 1.51 <72616c20706172616d657465727320617265>.15 F .263<656e636f6465642e205468 65208c7273742070617274206f6620746865208c6c65206e616d65206973206569746865 72207468652062617365206e616d6520666f722074686520617373656d626c7920737461 67652c206f722073696d706c79>100 144 R<746865206e616d65206f66207468652069 6e707574208c6c652c20646570656e64696e67206f6e207768657468657220746865206f 7074696f6e>100 156 Q F2<2d2d786f2d617373>2.5 E F0<3d>A/F3 10 /Times-Italic@0 SF<737566>A F0 -.1<7761>2.5 G 2.5<7375>.1 G <736564206f72206e6f742e>-2.5 E 3.093<4173>100 180 S<7566>-3.093 E .593 <8c7820656e636f64696e67206b>-.25 F -.15<6579>-.1 G<2d76>.15 E .593 <616c756520706169727320697320617070656e6465642e20427920646566>-.25 F .593<61756c74206974206861732074686520666f726d>-.1 F F1<492e2e732e>3.094 E F0 3.094<2c65>C<2e672e>-3.094 E F1<4932307332>3.094 E F0<2e>A .823 <546865206c61747465722065>100 192 R .822 <78616d706c65732064656e6f746573207072696d61727920696e8d6174696f6e2076> -.15 F .822<616c756520322e3020616e6420736368656d6520322e>-.25 F .822 <54686520706970656c696e652077696c6c206175746f2d>5.822 F 2.117 <6d61746963616c6c7920617070656e64207365>100 204 R -.15<7665>-.25 G 2.118 <72616c206f74686572206d636c20706172616d657465727320696620746865>.15 F 4.618<7961>-.15 G 2.118 <726520757365642e20546865736520636f72726573706f6e64207769746820746865> -4.618 F .88<706970656c696e65206f7074696f6e73>100 216 R F2 <2d2d6d636c2d69>3.379 E F0<3d>A F3<66>A F0<2c>A F2<2d2d6d636c2d6c>3.379 E F0<3d>A F3<69>A F0<2c>A F2<2d2d6d636c2d63>3.379 E F0<3d>A F3<66>A F0 3.379<2c61>C<6e64>-3.379 E F2<2d2d6d636c2d7069>3.379 E F0<3d>A F3<66>A F0 3.379<2c77>C .879 <6869636820696e207475726e20636f72726573706f6e642077697468>-3.379 F .346 <746865206d636c206f7074696f6e73>100 228 R F2<2d69>2.847 E F3<66>2.5 E F0 <2c>A F2<2d6c>2.847 E F3<69>2.5 E F0<2c>A F2<2d63>2.847 E F3<66>2.5 E F0 2.847<2c61>C<6e64>-2.847 E F2<2d7069>2.847 E F3<66>2.5 E F0 5.347<2e54>C .347<6865206f72646572206f6620617070656e64696e6720697320616c706861626574 6963616c2077697468206361706974616c73207072652d>-5.347 F <636564696e67206c6f>100 240 Q<776572636173652c20736f20612066756c6c2065> -.25 E<78616d706c65206973>-.15 E F1<4932356333306933356c32706932387333> 2.5 E F0<2e>A/F4 10.95/Times-Bold@0 SF<4f5054494f4e53>20 256.8 Q F2 <2d2d776861746966>100 268.8 Q F0<28>2.5 E F3<646f206e6f742065>A <786563757465>-.2 E F0<29>A<53686f>120 280.8 Q <7773206f6e6c7920776861742077>-.25 E <6f756c6420626520646f6e6520776974686f75742065>-.1 E -.15<7865>-.15 G <637574696e672069742e>.15 E<487567656c792075736566756c21>5 E F2 <2d2d73746172742d617373656d626c65>100 304.8 Q F0<28>2.5 E F3 <736b697020706172>A<736520737461>-.1 E -.1<6765>-.1 G F0<29>.1 E<536b69 70207468652070617273652073746167652c20617373756d6520746865206e6563657373 617279208c6c6573206861>120 316.8 Q .3 -.15<76652062>-.2 H <65656e206372656174656420696e206120707265>.15 E<76696f75732072756e2e> -.25 E F2<2d2d7072>100 340.8 Q<65706172>-.18 E<652d6d636c>-.18 E F0<28> 2.5 E F3<646f207072>A<65706172>-.37 E<61746f727920737461>-.15 E -.1 <6765>-.1 G<73>.1 E F0<29>A .126<446f207468652070617273696e6720616e6420 617373656d626c792073746167652c207468656e20717569742e2055736566756c206966 20796f752077>120 352.8 R .126 <616e7420746f20646f206d756c7469706c6520636c75737465722072756e73>-.1 F <666f722061206769>120 364.8 Q -.15<7665>-.25 G 2.5<6e67>.15 G <72617068202d20757365>-2.5 E F2<2d2d73746172742d6d636c>2.5 E <2d2d73746172742d6d636c>100 388.8 Q F0<28>2.5 E F3 <736b6970206561726c69657220737461>A -.1<6765>-.1 G<73>.1 E F0<29>A .739 <496d6d6564696174656c7920737461727420746865206d636c2073746167652e>120 400.8 R .739<417373756d6520746865206e6563657373617279208c6c6573206861> 5.739 F 1.039 -.15<76652062>-.2 H .74 <65656e206372656174656420696e206120707265>.15 F<76692d>-.25 E <6f75732072756e2e>120 412.8 Q F2<4e4f>120 436.8 Q<5445>-.4 E F0 1.198 <54686973206f7074696f6e2063616e2062652075736564206173>120 448.8 R F2 <2d2d73746172742d6d636c>3.698 E F0<3d>A F3<666e616d65>A F0 6.198<2e49>C 3.698<6e74>-6.198 G 1.198 <68697320636173652c206e6f208c6e616c208c6c65206e616d65206172>-3.698 F <67756d656e74>-.18 E<6e656564206265206769>120 460.8 Q -.15<7665>-.25 G <6e2c20616e64206d636c2077696c6c20757365>.15 E F3<666e616d65>2.5 E F0 <617320746865208c6c65206e616d6520666f722069747320696e7075742e>2.5 E .211 <54686520646966>120 484.8 R .211<666572656e63652077697468>-.25 F F2 <2d2d73746172742d6d636c>2.711 E F0 .211<6973207468617420746865206c617474 65722077696c6c20617373756d65206974206973207069636b696e672075702074686520 726573756c7473206f662061>2.711 F<707265>120 496.8 Q 1.511 <76696f75732072756e2e>-.25 F 1.511<546865206e616d6573206f662074686f7365 20726573756c7473206d6967687420696e636c75646520737566>6.511 F<8c78>-.25 E 1.51<657320636f72726573706f6e64696e67207769746820746865>-.15 F .523 <706172736520616e6420617373656d626c79207374616765202863662e>120 508.8 R F2<2d2d786f2d646174>3.023 E F0<616e64>3.023 E F2<2d2d786f2d617373>3.023 E F0 3.023<292e204966>B .523 <796f7520617265206e6f7420636c656172206f6e20746869732028616e6420796f75> 3.023 F<73686f756c64206e6f74206265292c2065>120 520.8 Q -.15<7865>-.15 G <726369736520746865>.15 E F2<2d2d776861746966>2.5 E F0 <6f7074696f6e20746f20626520737572652e>2.5 E F2<2d2d73746172742d66>100 544.8 Q<6f726d6174>-.25 E F0<28>2.5 E F3 <736b6970206561726c69657220737461>A -.1<6765>-.1 G<73>.1 E F0<29>A .445 <496d6d6564696174656c792073746172742074686520666f726d61742073746167652e> 120 556.8 R .444 <417373756d6520746865206e6563657373617279208c6c6573206861>5.444 F .744 -.15<76652062>-.2 H .444<65656e206372656174656420696e2061207072652d>.15 F<76696f75732072756e2e>120 568.8 Q F2<2d2d68656c70>100 592.8 Q F0<28>2.5 E F3<73756d6d617279206f66206f7074696f6e73>A F0<29>A <5072696e7420612074657273652073756d6d617279206f66206f7074696f6e732e>120 604.8 Q F2<2d2d7869>100 628.8 Q F0<7375662028>2.5 E F3 <737472697020737566>A<8c78206672>-.18 E<6f6d2064617461208c6c65>-.45 E F0 <29>A 1.507<496e206e6f726d616c2075736167652c20746869732077696c6c20737472 6970207468652073706563698c656420737566>120 640.8 R 1.507<8c782066726f6d 207468652064617461208c6c6520746f206f627461696e207468652062617365>-.25 F .22<6e616d6520666f722066757274686572206f75747075742e>120 652.8 R .22 <5768656e20757365642077697468>5.22 F F2<2d2d73746172742d6d636c>2.72 E F0 <3d>A F3<666e616d65>A F0 .22<7468652073616d652062656861>2.72 F .22 <76696f7572206973206170706c696564>-.2 F<746f20746865206d636c20696e707574 208c6c65206e616d652073706563698c656420696e>120 664.8 Q F3<666e616d65>2.5 E F0<2e>A F2<2d2d786f2d646174>100 688.8 Q F0<7375662028>2.5 E F3 <6174746163>A 2.5<6873>-.15 G<756620746f20706172>-2.5 E <7365206f7574707574>-.1 E F0<29>A .646<5468697320737566>120 700.8 R .646 <8c782077696c6c20626520617474616368656420746f207468652062617365206e616d 65206f6620746865207061727365206f75747075742e>-.25 F .646 <49742063616e206265207573656420746f2064697374696e2d>5.646 F <6775697368206265747765656e20646966>120 712.8 Q<666572656e74207061727365 20706172616d657472697a6174696f6e732069662074686973206973206170706c696361 626c652e>-.25 E<6d636c706970656c696e652031322d313335>20 768 Q <3134204d61792032303132>129.285 E<34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 127.895<6d636c706970656c696e652831292055534552> 20 48 R 130.395<434f4d4d414e4453206d636c706970656c696e65283129>2.5 F/F1 10/Times-Bold@0 SF<2d2d786f2d617373>100 84 Q F0<7375662028>2.5 E/F2 10 /Times-Italic@0 SF<6174746163>A 2.5<6873>-.15 G <756620746f20617373656d626c79206f7574707574>-2.5 E F0<29>A .338 <5468697320737566>120 96 R .337<8c782077696c6c20626520617474616368656420 746f207468652062617365206e616d65206f662074686520617373656d626c79206f7574 7075742e>-.25 F .337<49742063616e206265207573656420746f206469732d>5.337 F<74696e6775697368206265747765656e20646966>120 108 Q<666572656e74206173 73656d626c7920706172616d657472697a6174696f6e7320696620746869732069732061 70706c696361626c652e>-.25 E F1<2d2d786f2d6d636c>100 132 Q F0<7375662028> 2.5 E F2 -.37<7265>C<706c616365206d636c206f757470757420737566>.37 E <8c78>-.18 E F0<29>A<5468697320737566>120 144 Q <8c782077696c6c206265207573656420696e7374656164206f662074686520737566> -.25 E<8c7820627920646566>-.25 E <61756c7420637265617465642062792074686520706970656c696e652e>-.1 E F1 <2d2d78612d6d636c>100 168 Q F0<7374722028>2.5 E F2 <617070656e6420746f206d636c206f757470757420737566>A<8c78>-.18 E F0<29>A< 5468697320737472696e672077696c6c20626520617070656e64656420746f2074686520 737566>120 180 Q<8c7820627920646566>-.25 E <61756c7420637265617465642062792074686520706970656c696e652e>-.1 E F1 <2d2d78652d6d636c>100 204 Q F0<7375662028>2.5 E F2 <617070656e6420746f206d636c206f7574707574>A F0<29>A .645<54686973207374 72696e672077696c6c20626520617070656e64656420617320612073696e676c65207375 66>120 216 R .646<8c7820746f20746865206f75747075742062617365206e616d6520 6265666f7265206d636c706970656c696e65>-.25 F<617070656e647320697473206f> 120 228 Q<776e20737566>-.25 E<8c782e>-.25 E F1<2d2d786f2d666d74>100 252 Q F0<7375662028>2.5 E F2<6174746163>A 2.5<6873>-.15 G <756620746f20636c6d666f726d6174206f7574707574>-2.5 E F0<29>A <5468697320737566>120 264 Q <8c782077696c6c206265207573656420696e7374656164206f662074686520737566> -.25 E<8c7820627920646566>-.25 E <61756c7420757365642062792074686520666f726d617474696e672073746167652e> -.1 E F1<2d2d6173732d72>100 288 Q<6570656174>-.18 E F0<7374722028>2.5 E F2<617373656d626c792072>A<6570656174206f7074696f6e>-.37 E F0<29>A .195 <436f72726573706f6e6473207769746820746865>120 300 R F1 .195 <6d6378617373656d626c65202d72>2.695 F F2<6d6f6465>2.5 E F0 2.695 <6f7074696f6e2e205265666572>2.695 F .195<746f20746865>2.695 F F1 <6d6378617373656d626c65283129>2.695 E F0<6d616e75616c2e>2.695 E F1 <2d2d6173732d6f7074>100 324 Q F0 -.25<7661>2.5 G 2.5<6c28>.25 G F2 <617373656d626c79206f7074696f6e207472>-2.5 E<616e73706f72746572>-.15 E F0<29>A -.35<5472>120 336 S<616e73666572>.35 E F1<2d6f7074>2.5 E F2 <76616c>2.5 E F0<746f>2.5 E F1<6d6378617373656d626c65>2.5 E F0<2e>A F1 <2d2d6173732d6e6f6d6170>100 360 Q F0<28>2.5 E F2<69676e6f72>A 2.5<656d> -.37 G<6170208c6c65>-2.5 E F0<29>A<456974686572206e6f206d6170208c6c6520 69732070726573656e74206f722069742073686f756c642062652069676e6f7265642e> 120 372 Q -.15<466f>5 G 2.5<7270>.15 G<617273657273207468617420646f6e27> -2.5 E 2.5<7477>-.18 G<72697465206d6170208c6c65732e>-2.5 E F1 <2d2d6d636c2d49>100 396 Q F0<8d6f61742028>2.5 E F2 <6d636c20696e8d6174696f6e2076616c7565>A F0<29>A <54686520286d61696e2920696e8d6174696f6e2076>120 408 Q <616c7565206d636c2073686f756c64207573652e>-.25 E F2 <5468697320697320746865207072696d617279206d636c206f7074696f6e>5 E F0<2e> A F1<2d2d6d636c2d736368656d65>100 432 Q F0 2.5<6928>2.5 G F2 <6d636c207363>-2.5 E<68656d6520696e6465>-.15 E<78>-.2 E F0<29>A <54686520736368656d6520696e6465>120 444 Q 2.5<7874>-.15 G 2.5<6f75>-2.5 G <73652e2054686973206f7074696f6e7320697320616c736f20696d706f7274616e742e> -2.5 E<526566657220746f20746865>5 E F1<6d636c283129>2.5 E F0 <6d616e75616c2e>2.5 E F1<2d2d6d636c2d7465>100 468 Q F0<6e756d2028>2.5 E F2<2365>A<7870616e73696f6e20746872>-.2 E<65616473>-.37 E F0<29>A <546865206e756d626572206f662074687265616473>120 480 Q F1<6d636c>2.5 E F0 <73686f756c64207573652e>2.5 E F1<2d2d6d636c2d69>100 504 Q F0 <8d6f61742028>2.5 E F2 <6d636c20696e697469616c20696e8d6174696f6e2076616c7565>A F0<29>A <54686520696e697469616c20696e8d6174696f6e2076>120 516 Q <616c7565206d636c2073686f756c64207573652e>-.25 E <4f6e6c7920666f72208c6e652d74756e696e67206f722074657374696e672e>5 E F1 <2d2d6d636c2d6c>100 540 Q F0<8d6f61742028>2.5 E F2 <6d636c20696e697469616c206c6f6f70206c656e677468>A F0<29>A<546865206c656e 677468206f6620746865206c6f6f7020696e20776869636820696e697469616c20696e8d 6174696f6e206973206170706c6965642e20427920646566>120 552 Q <61756c74207a65726f2e>-.1 E F1<2d2d6d636c2d63>100 576 Q F0<8d6f61742028> 2.5 E F2<6d636c2063656e7465722076616c7565>A F0<29>A 1.216 <5468652063656e7465722076>120 588 R 1.216 <616c75652e204f6e65206d617920617474656d707420746f206166>-.25 F 1.216 <66656374206772616e756c61726974792062792065>-.25 F -.15<7865>-.15 G 1.217<72636973696e672074686973206f7074696f6e2c207768696368>.15 F<636f6e 74726f6c7320746865206c6f6f70207765696768747320696e2074686520696e70757420 6d61747269782e20526566657220746f20746865>120 600 Q F1<6d636c283129>2.5 E F0<6d616e75616c2e>2.5 E F1<2d2d6d636c2d7069>100 624 Q F0<8d6f61742028> 2.5 E F2<6d636c207072>A<652d696e8d6174696f6e2076616c7565>-.37 E F0<29>A 1.057<5072652d696e8d6174696f6e2c20616e6f74686572206f7074696f6e2077686963 68206d617920706f737369626c79206166>120 636 R 1.056<66656374206772616e75 6c6172697479206279206368616e67696e672074686520696e707574>-.25 F 1.069 <6d61747269782e204974206d616b>120 648 R 1.069 <6573207468652065646765207765696768742064697374726962>-.1 F 1.069<757469 6f6e20656974686572206d6f7265206f72206c65737320686f6d6f67656e656f75732e> -.2 F 1.07<526566657220746f>6.07 F<746865>120 660 Q F1<6d636c283129>2.5 E F0<6d616e75616c2e>2.5 E F1<2d2d6d636c2d6f>100 684 Q F0<666e616d652028> 2.5 E F2<646f206e6f7420757365>A F0<29>A <53657420746865206d636c206f7574707574206e616d652e>120 696 Q F1 <2d2d6d636c2d6f7074>100 720 Q F0 -.25<7661>2.5 G 2.5<6c28>.25 G F2 <6d636c206f7074696f6e207472>-2.5 E<616e73706f72746572>-.15 E F0<29>A <6d636c706970656c696e652031322d313335>20 768 Q<3134204d61792032303132> 129.285 E<35>202.335 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 127.895<6d636c706970656c696e652831292055534552> 20 48 R 130.395<434f4d4d414e4453206d636c706970656c696e65283129>2.5 F -.35<5472>120 84 S<616e73666572>.35 E/F1 10/Times-Bold@0 SF<2d6f7074>2.5 E/F2 10/Times-Italic@0 SF<76616c>2.5 E F0<746f>2.5 E F1<6d636c>2.5 E F0 <2e>A F1<2d2d666d742d64756d702d7374617473>100 108 Q F0<28>2.5 E F2 <6164642073696d706c65206d6561737572>A<657320746f2064756d70208c6c65>-.37 E F0<29>A 2.319<54686973206164647320736f6d652073696d706c6520706572666f72 6d616e6365206d6561737572657320746f207468652064756d70208c6c652e2046>120 120 R 2.318<6f72206561636820636c7573746572>-.15 F 4.818<2c8c>-.4 G -.15 <7665>-4.818 G .741<636f6c756d6e732070726f6365656420746865206c6162656c20 6c697374696e672e205468657365206172652074686520636c75737465722049442c2074 6865206e756d626572206f6620656c656d656e747320696e20746865>120 132 R <636c7573746572>120 144 Q 3.559<2c74>-.4 G 1.058<68652070726f6a65637469 6f6e202870657263656e74616765206f662077697468696e2d636c757374657220656467 65207765696768742072656c617469>-3.559 F 1.358 -.15<76652074>-.25 H 3.558 <6f74>.15 G 1.058<6f74616c206f7574676f696e67>-3.558 F .803 <6564676520776569676874292c20746865206566>120 156 R<8c6369656e63>-.25 E 3.303<796f>-.15 G 3.303<6674>-3.303 G .803 <686520636c757374657220287768696368206973207468652061>-3.303 F -.15 <7665>-.2 G .803<72616765206f6620746865206566>.15 F<8c6369656e63>-.25 E 3.303<796f>-.15 G 3.304<6661>-3.303 G .804<6c6c20697473>-3.304 F .39 <6e6f646573292c20616e6420746865206d6178696d756d206566>120 168 R <8c6369656e63>-.25 E 2.89<7928>-.15 G -2.25 -.2<61762065>-2.89 H .39 <72616765206f6620746865206d61782d6566>.2 F<8c6369656e63>-.25 E 2.89 <796f>-.15 G 2.89<6661>-2.89 G .39 <6c6c20746865206e6f646573292e204c6f6f6b>-2.89 F .522<696e746f20746865> 120 180 R F1<636c6d66>3.022 E .522<6f726d6174206d616e75616c>-.25 F F0 .522<666f72206d6f726520696e666f726d6174696f6e206f6e20616e64207265666572 656e63657320746f20746865206566>3.022 F<8c6369656e63>-.25 E 3.023<796d> -.15 G<65612d>-3.023 E<73757265732e>120 192 Q F1<2d2d666d742d66616e6379> 100 216 Q F0<28>2.5 E F2<6372>A <656174652064657461696c6564206f7574707574202872>-.37 E<6571756972>-.37 E <6573207a6f656d29>-.37 E F0<29>A<437265617465732065>120 228 Q <7874656e7369>-.15 E .3 -.15<76652064>-.25 H<65736372697074696f6e206f66 206e6f64652f636c757374657220616e6420636c75737465722f636c7573746572207265 6c6174696f6e73686970732e>.15 E F1<2d2d666d742d6c756d702d636f756e74>100 252 Q F0<6e756d2028>2.5 E F2 <636f6c6c65637420666f726d6174746564206f7574707574>A F0<29>A .859<436f6c 6c65637420636c75737465727320696e207468652073616d65208c6c6520756e74696c20 74686520746f74616c206e756d626572206f66206e6f646573206861732065>120 264 R <78636565646564>-.15 E F2<6e756d>3.359 E F0 .859<28696e20746865>3.359 F <666f726d6174746564206f7574707574292e>120 276 Q <4f6e6c79206d65616e696e66756c207768656e>5 E F1<2d2d666d742d66616e6379> 2.5 E F0<6973206769>2.5 E -.15<7665>-.25 G<6e2e>.15 E F1 <2d2d666d742d746162>100 300 Q F0<28>2.5 E F2 <757365207468697320746162208c6c65>A F0<29>A<4578706c696369746c7920737065 636966792074686520746162208c6c6520746f207573652e>120 312 Q F1 <2d2d666d742d6e6f746162>100 336 Q F0<28>2.5 E F2<69676e6f72>A 2.5<6574> -.37 G<6162208c6c65>-2.5 E F0<29>A<456974686572206e6f20746162208c6c6520 69732070726573656e74206f722069742073686f756c642062652069676e6f7265642e> 120 348 Q -.15<466f>5 G 2.5<7270>.15 G<617273657273207468617420646f6e27> -2.5 E 2.5<7477>-.18 G<7269746520746162208c6c65732e>-2.5 E F1 <2d2d666d742d6f7074>100 372 Q F0 -.25<7661>2.5 G 2.5<6c28>.25 G F2 <636c6d666f726d6174206f7074696f6e207472>-2.5 E<616e73706f72746572>-.15 E F0<29>A -.35<5472>120 384 S<616e73666572>.35 E F1<2d6f7074>2.5 E F2 <76616c>2.5 E F0<746f>2.5 E F1<636c6d2066>2.5 E<6f726d6174>-.25 E F0<2e> A/F3 10.95/Times-Bold@0 SF -.548<4155>20 400.8 S<54484f52>.548 E F0 <5374696a6e2076>100 412.8 Q<616e20446f6e67656e>-.25 E F3 <53454520414c534f>20 429.6 Q F1<6d63786465626c617374283129>100 441.6 Q F0<2c>A F1<6d636c626c6173746c696e65283129>2.601 E F0 2.601<2c61>C<6e64> -2.601 E F1<6d636c66616d696c79283729>2.602 E F0 .102<666f7220616e206f> 2.602 F -.15<7665>-.15 G<72766965>.15 E 2.602<776f>-.25 G 2.602<6661> -2.602 G .102<6c6c2074686520646f63756d656e746174696f6e20616e64>-2.602 F <746865207574696c697469657320696e20746865206d636c2066>100 453.6 Q <616d696c792e>-.1 E -.4<5769>100 477.6 S 1.208<746820646566>.4 F 1.208 <61756c742073657474696e67732c>-.1 F F1<6d636c706970656c696e65>3.707 E F0 1.207<646570656e6473206f6e207468652070726573656e6365206f66>3.707 F F1 <7a6f656d>3.707 E F0 3.707<2e49>C 3.707<7463>-3.707 G 1.207 <616e206265206f627461696e65642066726f6d>-3.707 F <687474703a2f2f6d6963616e732e6f72>100 489.6 Q<672f7a6f656d2f202e>-.18 E <6d636c706970656c696e652031322d313335>20 768 Q<3134204d61792032303132> 129.285 E<36>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clmorder.10000644000402500021140000000535211754271041011736 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm order" 1 "14 May 2012" "clm order 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm order \- reorder clusterings conformal to inclusion structure clmorder is not in actual fact a program\&. This manual page documents the behaviour and options of the clm program when invoked in mode \fIorder\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP are accessible in all \fBclm\fP modes\&. They are described in the \fBclm\fP manual page\&. .SH SYNOPSIS \fBclm order\fP \fB[-prefix\fP (\fIfile multiplex prefix\fP)\fB]\fP \fB[-o\fP (\fIconcatenated output in single file\fP)\fB]\fP + .SH DESCRIPTION Given a set of input clusterings \fBclm order\fP first transform it into a stack of strictly nesting clusterings\&. It does this by splitting clusters where necessary\&. It then reorders the coarsest (i\&.e\&. level-one) clustering, from large to small clusters\&. After that it reorders the second coarsest clustering conformally such that the first batch among its reordered clusters covers the level-one largest cluster, the second batch covers the level-one second largest cluster, and so on\&. Within these constraints, each batch of second-level clusters (corresponding to a single first-level cluster) is again ordered from larger to smaller clusters\&. This process is applied recursively throughout the entire stack of input clusters\&. The input can be specified in multiple files, and a single file may contain multiple clusterings\&. The output is by default written as a concatenation of matrix files, the so-called stack format\&. Use the \fB-o\fP option to specify the output file\&. The stacked format can be converted to Newick format using \fBmcxdump(1)\fP\&. The output can be written to multiple files, one for each projected clustering, by using the \fB-prefix\fP option\&. By example, \fB-prefix\fP\ \&\fBP\fP leads to output in files named \fCP1\fP, \fCP2\fP, \&.\&.\fCPN\fP, where \fCN\fP is the number of clusters in the input, \fCP1\fP is the most fine-grained ordered clustering, and \fCPN\fP is the coarsest clustering\&. .SH OPTIONS .ZI 2m "\fB-prefix\fP (\fI\fP)" \& 'in -2m .ZI 2m "\fB-o\fP (\fI\fP)" \& 'in -2m 'in +2m \& .br As decribed above\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmformat.ps0000644000402500021140000016060511754271041012400 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:13 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 8 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 133.455<636c6d666f726d61742831292055534552>20 48 R 135.955<434f4d4d414e445320636c6d666f726d6174283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<636c6d20666f726d6174 20ad20646973706c617920636c757374657220726573756c747320696e20726561646162 6c6520666f726d>100 96 Q<286f7074696f6e616c6c792077697468206c6162656c7320 616e642f6f7220636f686573696f6e20616e6420737469636b696e657373206d65617375 726573206174746163686564292e>100 120 Q .792 <556e6c6573732075736564207769746820746865>100 144 R/F2 10/Times-Bold@0 SF<2d64756d70>3.292 E/F3 10/Times-Italic@0 SF<666e616d65>2.5 E F0<6f72> 3.292 E F2<2d2d64756d70>3.292 E F0<6f7074696f6e2c>3.291 E F2 .791 <636c6d2066>3.291 F<6f726d6174>-.25 E F0 .791 <646570656e6473206f6e207468652070726573656e6365206f66>3.291 F <746865206d6163726f2070726f636573736f72>100 156 Q F2<7a6f656d>2.5 E F0 2.5<2c61>C 2.5<7364>-2.5 G<657363726962656420667572746865722062656c6f> -2.5 E<772e>-.25 E<546865>100 180 Q F2<2d69636c>2.748 E F3<666e616d65> 2.5 E F0 .248 <696e70757420636c7573746572696e67206f7074696f6e20697320616c>2.748 F -.1 <7761>-.1 G .248<79732072657175697265642e20546865>.1 F F2<2d696d78>2.749 E F3<666e616d65>2.5 E F0 .249 <696e707574206d6174726978206f7074696f6e206973>2.749 F .005 <726571756972656420696e2066>100 192 R<616e63>-.1 E 2.505<796d>-.15 G .005<6f64652e2054686520746162208c6c65206f7074696f6e>-2.505 F F2 <2d746162>2.504 E F3<666e616d65>2.5 E F0 .004 <6973206e656564656420696620796f752077>2.504 F .004 <616e74206c6162656c20696e666f726d6174696f6e20696e>-.1 F<746865206f757470 757420726174686572207468616e206d636c206964656e74698c6572732e>100 204 Q F1<53594e4f50534953>20 220.8 Q F2 .455<636c6d2066>100 232.8 R <6f726d6174>-.25 E F0 .455<686173207477>2.955 F 2.955<6f64>-.1 G<6966> -2.955 E .455<666572656e74206d6f646573206f66206f75747075743a>-.25 F F3 <64756d70>2.955 E F0<616e64>2.955 E F3<66616e6379>2.955 E F0 5.455<2e49> C 2.955<666e>-5.455 G .455<6569746865722069732073706563698c65642c>-2.955 F F3<66616e6379>2.955 E F0<6973>2.955 E 1.643 <757365642e20496e2074686973206d6f64652c>100 244.8 R F2 1.643<636c6d2066> 4.143 F<6f726d6174>-.25 E F0 1.643<67656e6572617465732061206c6172>4.143 F 1.643<676520617272617279206f6620706572666f726d616e6365206d656173757265 732072656c6174656420746f>-.18 F .152<6e6f64657320616e6420636c7573746572 7320696e20626f746820696e7465726c696e6b>100 256.8 R .152 <65642068746d6c206f757470757420616e6420706c61696e207465>-.1 F .152 <7874208c6c65732e20546865208c6c65732077696c6c20626520636f6e7461696e6564> -.15 F .437 <696e20616e206f7574707574206469726563746f72792074686174206973206e65>100 268.8 R .437<776c792063726561746564206966206e6f74207965742065>-.25 F .437<78697374696e672e20496e2066>-.15 F<616e63>-.1 E 2.936<796d>-.15 G .436<6f646520746865>-2.936 F F2<2d696d78>2.936 E F0 .436 <6f7074696f6e206973>2.936 F <726571756972656420616e6420746865206d6163726f2070726f636573736f72>100 280.8 Q F2<7a6f656d>2.5 E F0<6d7573742062652061>2.5 E -.25<7661>-.2 G <696c61626c652028687474703a2f2f6d6963616e732e6f72>.25 E <672f7a6f656d292e>-.18 E<4966>100 304.8 Q F3<64756d70>3.688 E F0 1.189 <69732073706563698c656420287365652062656c6f>3.688 F 3.689<7768>-.25 G 1.689 -.25<6f772074>-3.689 H 3.689<6f64>.25 G 3.689<6f74>-3.689 G <68697329>-3.689 E F2 1.189<636c6d2066>3.689 F<6f726d6174>-.25 E F0 1.189<6a7573742067656e65726174657320612064756d70208c6c65207768657265> 3.689 F .725<65616368206c696e6520636f6e7461696e73206120636c757374657220 696e2074686520666f726d206f66207461622d73657061726174656420696e6469636573 2c206f72207461622d736570617261746564206c6162656c7320696e2063617365>100 316.8 R<746865>100 328.8 Q F2<2d746162>2.881 E F0 .382<6f7074696f6e2069 7320757365642e20546869732064756d70206973206561737920746f2070617273652077 69746820612073696d706c65206f722065>2.881 F -.15<7665>-.25 G 2.882<6e71> .15 G .382<7569636b2d616e642d6469727479207363726970742e>-2.882 F -1.1 <596f>100 340.8 S 5.245<7563>1.1 G 2.745 <616e20696e636c75646520736f6d652076>-5.245 F 2.744<6572792073696d706c65 20706572666f726d616e6365206d6561737572657320696e20746869732064756d70208c 6c6520627920737570706c79696e67>-.15 F F2<2d2d64756d702d6d6561737572>100 352.8 Q<6573>-.18 E F0 3.9<2e55>C<7365>-3.9 E F2<2d64756d70>3.9 E F3 <666e616d65>2.5 E F0 1.401<746f207370656369667920746865206e616d65206f66 20746865208c6c6520746f2064756d7020746f2c20726174686572207468616e>3.9 F <6861>100 364.8 Q<76696e67>-.2 E F2<636c6d2066>2.5 E<6f726d6174>-.25 E F0<636f6e7374727563742061208c6c65206e616d6520627920697473656c662e>2.5 E F2 .474<636c6d2066>100 388.8 R<6f726d6174>-.25 E F0 .474<63616e20636f6d 62696e652074686520626f7468206d6f646573206279207573696e6720656974686572> 2.974 F F2<2d2d64756d70>2.973 E F0<6f72>2.973 E F2<2d64756d70>2.973 E F3 .473<666e616d6520616e64>2.5 F F2<2d2d66616e6379>2.973 E F0<2e>A<496e2074 6869732063617365207468652064756d70208c6c652077696c6c20626520637265617465 6420696e20746865206f7574707574206469726563746f72792074686174206973207573 6564206279>100 400.8 Q F3<66616e6379>2.5 E F0<6d6f64652e>2.5 E F2 <636c6d2066>100 424.8 Q<6f726d6174>-.25 E<2d69636c>100 448.8 Q F0 1.46 <666e616d652028>3.96 F F3 1.46<696e70757420636c7573746572208c6c65>B F0 <29>A F2<2d696d78>3.96 E F0 1.46<666e616d652028>3.96 F F3 1.46 <696e707574206d61747269782f6772>B 1.46<617068208c6c65>-.15 F F0<29>A F2 <5b2d7466>3.96 E F0 1.46<737065632028>3.96 F F3 1.46 <6170706c792074662d7370656320746f>B .827<696e707574206d6174726978>100 460.8 R F0<29>A F2 3.327<5d5b>C<2d7069>-3.327 E F0 .826<6e756d2028>3.326 F F3 .826<6170706c79207072>B .826 <652d696e8d6174696f6e20746f206d6174726978>-.37 F F0<29>A F2 3.326<5d5b>C <2d746162>-3.326 E F0 .826<666e616d652028>3.326 F F3 -.37<7265>C .826 <616420746162208c6c65>.37 F F0<29>A F2 3.326<5d5b>C <2d2d6c617a792d746162>-3.326 E F0<28>100 472.8 Q F3 3.799 <616c6c6f77206d69736d617463>B 3.799<686564207461622d8c6c65>-.15 F F0<29> A F2 6.299<5d5b>C<2d6c756d702d636f756e74>-6.299 E F0 6.299<6e28>6.299 G F3 3.799<6e6f646520746872>-6.299 F<6573686f6c64>-.37 E F0<29>A F2 6.299 <5d5b>C<2d2d64756d70>-6.299 E F0<28>6.299 E F3 3.799 <77726974652064756d7020746f>B<64756d702e3c69636c2d6e616d653e>100 484.8 Q F0<29>A F2 2.87<5d5b>C<2d64756d70>-2.87 E F0 .37<666e616d652028>2.87 F F3 .37<77726974652064756d7020746f208c6c65>B F0<29>A F2 2.87<5d5b>C <2d2d64756d702d7061697273>-2.87 E F0<28>2.87 E F3 .37 <777269746520636c75737465722f6e6f64652070616972>B .493<706572206c696e65> 100 496.8 R F0<29>A F2 2.993<5d5b>C<2d2d64756d702d6d6561737572>-2.993 E <6573>-.18 E F0<28>2.993 E F3 .493 <77726974652073696d706c6520706572666f726d616e6365206d6561737572>B<6573> -.37 E F0<29>A F2 2.994<5d5b>C<2d64756d702d6e6f64652d736570>-2.994 E F0 .494<7374722028>2.994 F F3<7365702d>A<6172>100 508.8 Q 1.436 <61746520656e7472696573207769746820737472>-.15 F F0<29>A F2 3.936<5d5b>C <2d2d66616e6379>-3.936 E F0<28>3.936 E F3 1.436 <737061776e20696e666f726d6174696f6e20626c697a7a6172>B<64>-.37 E F0<29>A F2 3.936<5d5b>C<2d646972>-3.936 E F0 1.436<6469726e616d652028>3.936 F F3 1.435<77726974652072>B 1.435<6573756c747320746f>-.37 F<646972>100 520.8 Q<6563746f7279>-.37 E F0<29>A F2 2.787<5d5b>C<2d696e8c78>-2.787 E F0 .287<7374722028>2.787 F F3 .287 <7573652061667465722062617365206e616d652f646972>B<6563746f7279>-.37 E F0 <29>A F2 2.788<5d5b>C<2d6e736d>-2.788 E F0 .288<666e616d652028>2.788 F F3 .288<6f7574707574206e6f64652073746963>B .288<6b696e657373208c6c65>-.2 F F0<29>A F2<5d>A<5b2d63636d>100 532.8 Q F0 1.82<666e616d652028>4.32 F F3 1.82<6f757470757420636c757374657220636f686573696f6e208c6c65>B F0<29>A F2 4.32<5d5b>C<2d2d6164617074>-4.32 E F0<28>4.32 E F3 1.82 <616c6c6f7720646f6d61696e206d69736d617463>B<68>-.15 E F0<29>A F2 4.32 <5d5b>C<2d2d7375626772617068>-4.32 E F0<28>100 544.8 Q F3<74616b>A 4.28 <6573>-.1 G<75626772>-4.28 E 1.78<6170682077697468202d2d6164617074>-.15 F F0<29>A F2 4.281<5d5b>C<2d7a6d6d>-4.281 E F0 1.781<666e616d652028> 4.281 F F3 1.781<617373756d65206d616372>B 4.281<6f64>-.45 G 1.781 <658c6e6974696f6e73206172>-4.281 F 4.281<6569>-.37 G 4.281<6e66>-4.281 G <6e616d65>-4.281 E F0<29>A F2 4.281<5d5b>C<2d666d74>-4.281 E F0 .173 <666e616d652028>100 556.8 R F3 .173 <777269746520746f20656e636f64696e67208c6c6520666e616d65>B F0<29>A F2 2.672<5d5b>C<2d68>-2.672 E F0<28>2.672 E F3 .172 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2 2.672 <5d5b>C<2d2d617072>-2.672 E<6f706f73>-.18 E F0<28>2.672 E F3 .172 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2<5d>A <5b2d2d76>100 568.8 Q<657273696f6e>-.1 E F0<28>2.5 E F3 <7072696e7420766572>A<73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F2<5d>A F0<436f6e73756c7420746865206f7074696f6e206465736372697074696f6e7320616e 642074686520696e74726f64756374696f6e2061626f>100 592.8 Q .3 -.15 <76652066>-.15 H <6f7220696e746572646570656e64656e63696573206f66206f7074696f6e732e>.15 E F2 1.248<636c6d2066>100 616.8 R<6f726d6174>-.25 E F0 1.248 <67656e65726174657320696e2066>3.748 F<616e63>-.1 E 3.748<796d>-.15 G 1.249<6f64652061206c6f676963616c206465736372697074696f6e206f662074686520 746f2d62652d666f726d617474656420636f6e74656e7420696e2061>-3.748 F -.15 <7665>100 628.8 S .123<727920736d616c6c2076>.15 F<6f636162>-.2 E .123<75 6c617279206f6620666f726d61742d73706563698c63207a6f656d206d6163726f732e20 54686520617070656172616e6365206f6620746865206f75747075742063616e20626520 6561732d>-.2 F .112<696c79206368616e676564206279206164617074696e67206120 7a6f656d206d6163726f2064658c6e6974696f6e208c6c652028616c736f206f75747075 74206279>100 640.8 R F2 .113<636c6d2066>2.613 F<6f726d6174>-.25 E F0 2.613<2974>C .113<6861742069732075736564206279>-2.613 F<746865207a6f656d 20696e74657270726574657220746f20696e7465727072657420746865206c6f67696361 6c20656c656d656e74732e>100 652.8 Q .663<546865206f757470757420666f726d61 742069732061707420746f206368616e6765206f>100 676.8 R -.15<7665>-.15 G 3.163<7273>.15 G .663<756273657175656e742072656c65617365732c206173206120 726573756c74206f66207573657220666565646261636b2e2053756368>-3.163 F <6368616e6765732077696c6c206d6f7374206c696b>100 688.8 Q<656c792062652063 6f6e8c6e656420746f20746865207a6f656d206d6163726f2064658c6e6974696f6e208c 6c652e>-.1 E<546865204f5554505554204558504c41494e45442073656374696f6e20 667572746865722062656c6f>100 712.8 Q 2.5<7769>-.25 G 2.5<736c>-2.5 G <696b>-2.5 E<656c7920746f206265206f6620696e7465726573742e>-.1 E <636c6d666f726d61742031322d313335>20 768 Q<3134204d61792032303132> 134.845 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 133.455<636c6d666f726d61742831292055534552>20 48 R 135.955<434f4d4d414e445320636c6d666f726d6174283129>2.5 F/F1 10.95 /Times-Bold@0 SF<4445534352495054494f4e>20 84 Q F0 .317 <546865207072696d6172792066756e6374696f6e206f66>100 96 R/F2 10 /Times-Bold@0 SF .317<636c6d2066>2.817 F<6f726d6174>-.25 E F0 .317<6973 20746f20646973706c617920636c757374657220726573756c747320616e64206173736f 63696174656420636f6e8c64656e6365206d65612d>2.817 F .179<737572657320696e 2061207265616461626c6520666f726d2c206279206c697374696e6720636c7573746572 7320696e207465726d73206f6620746865206c6162656c73206173736f63696174656420 776974682074686520696e64696365732074686174>100 108 R .527<61726520757365 6420696e20746865206d636c206d61747269782e20546865206c6162656c73206d757374 2062652073746f72656420696e206120736f2063616c6c6564>100 120 R/F3 10 /Times-Italic@0 SF<746162>3.027 E F0 .527<8c6c653b2073656520746865>3.027 F F2<2d746162>3.027 E F0<6f7074696f6e>3.027 E <666f72206d6f726520696e666f726d6174696f6e2e>100 132 Q F2<4e4f>100 156 Q <5445>-.4 E .265<636c6d2066>100 168 R<6f726d6174>-.25 E F0 .265 <6f757470757420697320696e2074686520666f726d206f66>2.765 F F3<7a6f656d> 2.765 E F0 2.764<6d6163726f732e2059>2.764 F .264 <6f75206e65656420746f206861>-1.1 F .564 -.15<7665207a>-.2 H .264 <6f656d20696e7374616c6c656420696e20796f7572207379732d>.15 F .045 <74656d20696620796f752077>100 180 R<616e74>-.1 E F2 .045<636c6d2066> 2.545 F<6f726d6174>-.25 E F0 .046<746f206265206f66207573652e205a6f656d20 77696c6c206e6f74206265206e656365737361727920696620796f752061726520757369 6e6720746865>2.545 F F2<2d64756d70>2.546 E F0<6f7074696f6e2e>100 192 Q <546865>100 216 Q F2<2d696d78>2.655 E F3<6d78>2.5 E F0 .155 <6f7074696f6e20697320726571756972656420756e6c65737320746865>2.655 F F2 <2d64756d70>2.654 E F0 .154<6f7074696f6e20697320757365642e20546865206c61 74746572206f7074696f6e20726573756c747320696e207370652d>2.654 F <6369616c2062656861>100 228 Q <76696f75722064657363726962656420756e64657220746865>-.2 E F2<2d64756d70> 2.5 E F3<666e616d65>2.5 E F0<656e7472792e>2.5 E .351 <4f757470757420697320627920646566>100 252 R .351<61756c7420777269747465 6e20696e2061206469726563746f72792074686174206973206e65>-.1 F .351 <776c79206372656174656420696620697420646f6573206e6f74207965742065>-.25 F .352<7869737420286e6f726d616c6c79>-.15 F<7365>100 264 Q -.15<7665>-.25 G .303<72616c208c6c65732077696c6c20626520637265617465642c20666f7220776869 636820746865206469726563746f727920616374732061732061206e61747572616c2063 6f6e7461696e6572292e>.15 F .303<497420697320706f737369626c6520746f>5.303 F .151<73696d706c79206f757470757420746f207468652063757272656e7420646972 6563746f7279>100 276 R 2.652<2c66>-.65 G .152 <6f72207468617420796f75206e65656420746f2073706563696679>-2.652 F F2 <2d646972202e2f>2.652 E F0 2.652<2e49>C<66>-2.652 E F2<2d646972>2.652 E F0 .152<6973206e6f742073706563698c65642c>2.652 F .131 <746865206f7574707574206469726563746f7279>100 288 R/F4 10/Courier@0 SF <666d742e3c636c6e616d653e>2.631 E F0 .131 <77696c6c20626520757365642c207768657265>2.631 F F4<3c636c6e616d653e> 2.631 E F0 .131<697320746865206172>2.631 F .13 <67756d656e7420746f20746865>-.18 F F2<2d636c>2.63 E F0 1.3 <6f7074696f6e2e20496e20746865206f7574707574206469726563746f7279>100 300 R<2c>-.65 E F2 1.301<636c6d2066>3.801 F<6f726d6174>-.25 E F0 1.301 <77696c6c206e6f726d616c6c79207772697465207477>3.801 F 3.801<6f8c>-.1 G 1.301<6c65732e204f6e6520636f6e7461696e73207a6f656d>-3.801 F .962<6d6163 726f7320656e636f64696e6720666f726d6174746564206f757470757420287468652065 6e636f64696e67208c6c65292c20616e6420746865207365636f6e642028746865206465 8c6e6974696f6e208c6c652920636f6e2d>100 312 R<7461696e73207a6f656d206d61 63726f2064658c6e6974696f6e7320776869636820617265207573656420627920746865 20666f726d65722e>100 324 Q .916 <54686520656e636f64696e67208c6c6520697320627920646566>100 348 R .916 <61756c742063616c6c6564>-.1 F F4<666d742e617a6d>3.416 E F0 .917 <2863662e20746865>3.416 F F2<2d666d74>3.417 E F3<666e616d65>2.5 E F0 3.417<6f7074696f6e292e204974>3.417 F<636f6e7461696e73>3.417 E F3 <7a6f656d>3.417 E F0 .301<6d6163726f732e20497420696d706f7274732074686520 6d6163726f2064658c6e6974696f6e208c6c652063616c6c6564>100 360 R F4 <636c6d666f726d61742e7a6d6d>2.801 E F0 .3 <74686174206973206e6f726d616c6c7920616c736f20777269742d>2.801 F 1.342 <74656e206279>100 372 R F2 1.342<636c6d2066>3.842 F<6f726d6174>-.25 E F0 3.842<2e41>C 1.342<6e6f74686572206d6163726f2064658c6e6974696f6e208c6c65 2063616e2062652073706563698c6564206279207573696e6720746865>-3.842 F F2 <2d7a6d6d>3.843 E F3<3c646566732d>2.5 E<6e616d653e>100 384 Q F0 .808 <6f7074696f6e2e20496e20746869732063617365>3.308 F F2 .808<636c6d2066> 3.308 F<6f726d6174>-.25 E F0 .808<77696c6c207265667261696e2066726f6d2077 726974696e67207468652064658c6e6974696f6e208c6c6520616e64207265706c616365> 3.308 F<6d656e74696f6e73206f66>100 396 Q F4<636c6d666f726d61742e7a6d6d> 2.5 E F0<696e2074686520656e636f64696e67208c6c65206279>2.5 E F4 <3c646566736e616d653e>2.5 E F0<2e>A .386<54686520656e636f64696e67208c6c 65206e6565647320746f2062652070726f6365737365642062792069737375696e67206f 6e65206f662074686520666f6c6c6f>100 420 R .386 <77696e6720636f6d6d616e64732066726f6d2077697468696e>-.25 F<746865206469 726563746f727920776865726520746865208c6c65206973206c6f63617465642e>100 432 Q F4<7a6f656d202d6920666d74202d642068746d6c>118 456 Q <7a6f656d202d6920666d74202d6420747874>118 468 Q F0 .561<546865208c727374 2077696c6c20726573756c7420696e2048544d4c20666f726d6174746564206f75747075 742c20746865207365636f6e6420696e20706c61696e207465>100 492 R .56 <787420666f726d61742e204f62>-.15 F<76696f75736c79>-.15 E 3.06<2c79>-.65 G<6f75>-3.06 E<6e65656420746f206861>100 504 Q .3 -.15<76652069>-.2 H<6e 7374616c6c6564207a6f656d2028652e672e2066726f6d20687474703a2f2f6d6963616e 732e6f72>.15 E<672f7a6f656d2f7372632f2920666f72207468697320746f2077>-.18 E<6f726b2e>-.1 E -.15<466f>100 528 S 3.441<7265>.15 G .941<61636820636c 7573746572206120706172616772617068206973206f75747075742e2046697273742063 6f6d65732061206c697374696e67206f66206f7468657220636c7573746572732028696e 206f72646572206f662072656c652d>-3.441 F -.25<7661>100 540 S .305<6e6365 2c20706f737369626c7920656d7074792920666f722077686963682061207369676e698c 63616e7420616d6f756e74206f662065646765732065>.25 F .304 <7869737473206265747765656e20746865206f7468657220616e6420746865>-.15 F .271<63757272656e7420636c75737465722e205365636f6e6420636f6d65732061206c 697374696e67206f6620746865206e6f64657320696e207468652063757272656e742063 6c75737465722e2046>100 552 R .272 <6f722065616368206e6f6465206120736d616c6c>-.15 F .9 <7375626c697374206973206d6164652028696e206f72646572206f662072656c65>100 564 R -.25<7661>-.25 G .899<6e63652c20706f737369626c7920656d70747929206f 66206f7468657220636c75737465727320696e20776869636820746865206e6f64652068 6173>.25 F 1.184<6e65696768626f75727320616e6420666f72207768696368207468 6520746f74616c2073756d206f6620636f72726573706f6e64696e672065646765207765 6967687473206973207369676e698c63616e742e>100 576 R<5365>6.184 E -.15 <7665>-.25 G<72616c>.15 E .882<7175616e74697469657320617265206f75747075 7420666f722065616368206e6f64652f636c757374657220706169722074686174206973 206465656d65642072656c65>100 588 R -.25<7661>-.25 G .882 <6e742e205468657365206172652065>.25 F .882<78706c61696e656420696e>-.15 F <7468652073656374696f6e204f5554505554204558504c41494e45442e>100 600 Q 1.524<436c7573746572732077696c6c20627920646566>100 624 R 1.524<61756c74 206265206f757470757420746f208c6c6520756e74696c2074686520746f74616c206e6f 646520636f756e74206861732065>-.1 F 1.525 <786365656465642061207468726573686f6c64>-.15 F <28726566657220746f20746865>100 636 Q F2<2d6c756d702d636f756e74>2.5 E F0 <6f7074696f6e292e>2.5 E F2 .016<636c6d2066>100 660 R<6f726d6174>-.25 E F0 .016<616c736f2073686f>2.516 F .016<777320686f>-.25 F 2.516<7777>-.25 G .016<656c6c2065616368206e6f6465208c747320696e2074686520636c7573746572 20697420697320696e20616e6420686f>-2.516 F 2.515<7763>-.25 G<6f68657369> -2.515 E .315 -.15<76652065>-.25 H .015<61636820636c75732d>.15 F .534 <7465722069732c207573696e672073696d706c652062>100 672 R .534<7574206566> -.2 F<6665637469>-.25 E .834 -.15<7665206d>-.25 H .534<6561737572657320 2864657363726962656420696e2073656374696f6e204f5554505554204558504c41494e 4544292e>.15 F<54686973>5.535 E .326<656e61626c657320796f7520746f20636f 6d7061726520746865207175616c697479206f662074686520636c75737465727320696e 206120636c7573746572696e672072656c617469>100 684 R .626 -.15<76652074> -.25 H 2.826<6f65>.15 G .326<616368206f74686572>-2.826 F 2.825<2c61>-.4 G .325<6e64206d6179>-2.825 F .608<68656c7020696e206964656e74696679696e67 20626f746820696e746572657374696e6720617265617320616e6420617265617320666f 7220776869636820636c757374657220737472756374757265206973206861726420746f 208c6e64206f72>100 696 R<7065726861707320616273656e742e>100 708 Q <636c6d666f726d61742031322d313335>20 768 Q<3134204d61792032303132> 134.845 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 133.455<636c6d666f726d61742831292055534552>20 48 R 135.955<434f4d4d414e445320636c6d666f726d6174283129>2.5 F/F1 10.95 /Times-Bold@0 SF<4f5054494f4e53>20 84 Q/F2 10/Times-Bold@0 SF<2d69636c> 100 96 Q F0<666e616d652028>2.5 E/F3 10/Times-Italic@0 SF <696e70757420636c7573746572208c6c65>A F0<29>A <4e616d65206f662074686520636c7573746572696e67208c6c652e>120 108 Q F2 <2d696d78>100 132 Q F0<666e616d652028>2.5 E F3 <696e707574206d61747269782f6772>A<617068208c6c65>-.15 E F0<29>A <4e616d65206f66207468652067726170682f6d6174726978208c6c652e>120 144 Q F2 <2d7466>100 168 Q F0<737065632028>2.5 E F3 <6170706c792074662d7370656320746f20696e707574206d6174726978>A F0<29>A -.35<5472>120 180 S <616e73666f726d2074686520696e707574206d61747269782076>.35 E<616c75657320 6163636f7264696e6720746f207468652073796e7461782064657363726962656420696e> -.25 E F2<6d6378696f283529>2.5 E F0<2e>A F2<2d746162>100 204 Q F0 <666e616d652028>2.5 E F3 -.37<7265>C<616420746162208c6c65>.37 E F0<29>A <546865208c6c65>120 216 Q/F4 10/Courier@0 SF<666e616d65>2.5 E F0 <73686f756c6420626520696e>2.5 E F3<74616220666f726d6174>2.5 E F0 2.5 <2e52>C<6566657220746f>-2.5 E F2<6d6378696f283529>2.5 E F0<2e>A F2 <2d2d6c617a792d746162>100 240 Q F0<28>2.5 E F3 <616c6c6f77206d69736d617463>A<686564207461622d8c6c65>-.15 E F0<29>A <416c6c6f>120 252 Q 2.5<776d>-.25 G<697373696e6720616e642073707572696f75 7320656e747269657320696e2074686520746162208c6c652e>-2.5 E F2<2d64756d70> 100 276 Q F0<666e616d652028>2.5 E F3<77726974652064756d7020746f208c6c65> A F0<29>A .356 <436c75737465727320617265207772697474656e20746f208c6c652e2046>120 288 R .355<6f72206561636820636c757374657220612073696e676c65206c696e6520697320 7772697474656e20636f6e7461696e696e6720616c6c20696e6469636573206f66>-.15 F 1.455<616c6c206e6f64657320696e207468617420636c75737465722e205468652069 6e6469636573206172652073657061726174656420627920746162732e20496620612074 6162208c6c652069732073706563698c65642c20746865>120 300 R<696e6469636573 20617265207265706c616365642062792074686520636f72726573706f6e64696e672074 6162208c6c6520656e7472792e>120 312 Q F2<2d2d64756d70>100 336 Q F0<28>2.5 E F3<77726974652064756d7020746f208c6c65>A F0<29>A<4173>120 348 Q F2 <2d64756d70>3.823 E F3<666e616d65>2.5 E F0 -.15<6578>3.823 G 1.323 <636570742074686174>.15 F F2 1.323<636c6d2066>3.823 F<6f726d6174>-.25 E F0 1.323<77726974657320746f20746865208c6c65206e616d6564>3.823 F F4 <64756d702e3c69636c2d6e616d653e>3.822 E F0<7768657265>120 360 Q F4 <3c69636c2d6e616d653e>2.5 E F0<697320746865206172>2.5 E <67756d656e7420746f20746865>-.18 E F2<2d69636c>2.5 E F0<6f7074696f6e2e> 2.5 E F2<2d696e8c78>100 384 Q F0<7374722028>2.5 E F3<696e636f72706f72>A <61746520696e2062617365206e616d65>-.15 E F0<29>A F3<737472>120 396 Q F0 1.026<697320696e636c7564656420696e20746865206f7574707574208c6c65206e616d 65732e>3.526 F 1.027<546869732063616e206265207573656420746f2073746f7265 2074686520726573756c7473206f6620646966>6.026 F<666572656e74>-.25 E F2 <636c6d2066>120 408 Q<6f726d6174>-.25 E F0 <72756e732028652e672e207769746820646966>2.5 E<666572696e67>-.25 E F2 <2d7466>2.5 E F0<6172>2.5 E <67756d656e74732920696e207468652073616d65206469726563746f72792e>-.18 E F2<2d2d66616e6379>100 432 Q F0<28>2.5 E F3<666f72>A <63652066616e6379206d6f6465>-.37 E F0<29>A .088 <5468697320656e666f726365732066>120 444 R<616e63>-.1 E 2.587<796d>-.15 G .087<6f646520696620656974686572206f66>-2.587 F F2<2d64756d70>2.587 E F0 <6f72>2.587 E F2<2d2d64756d70>2.587 E F0 .087<6973206769>2.587 F -.15 <7665>-.25 G .087 <6e2e205468652064756d70208c6c652077696c6c206265206372652d>.15 F <6174656420696e20746865206f7574707574206469726563746f72792e>120 456 Q F2 <2d2d64756d702d7061697273>100 480 Q F0<28>2.5 E F3 <777269746520636c75737465722f6e6f6465207061697220706572206c696e65>A F0 <29>A .964<526174686572207468616e2077726974696e6720612073696e676c652063 6c7573746572206f6e2065616368206c696e652c20777269746520612073696e676c6520 636c757374657220696e6465>120 492 R .964<782f6e6f64652028656974686572> -.15 F<74616220656e747279206f7220696e6465>120 504 Q <7829207061697220706572206c696e652e>-.15 E -.8<576f>5 G <726b7320696e20636f6e6a756e6374696f6e207769746820746865>.8 E F2 <2d746162>2.5 E F0<616e64>2.5 E F2<2d696d78>2.5 E F0<6f7074696f6e732e> 2.5 E F2<2d2d64756d702d6d6561737572>100 528 Q<6573>-.18 E F0<28>2.5 E F3 <77726974652073696d706c6520706572666f726d616e6365206d6561737572>A<6573> -.37 E F0<29>A .226 <496620616e20696e707574206d61747269782069732073706563698c65642077697468> 120 540 R F2<2d696d78>2.725 E F3<666e616d65>2.5 E F0 2.725<2c74>C .225 <68726565206d65617375726573206f66206566>-2.725 F<8c6369656e63>-.25 E 2.725<7961>-.15 G .225<72652070726570656e6465642c>-2.725 F <7265737065637469>120 552 Q -.15<7665>-.25 G .847 <6c79207468652073696d706c652070726f6a656374696f6e2073636f72652c206566> .15 F<8c6369656e63>-.25 E 3.347<796f>-.15 G 3.347<7263>-3.347 G -.15 <6f7665>-3.347 G .848<726167652c20616e6420746865206d61782d6566>.15 F <8c6369656e63>-.25 E 3.348<796f>-.15 G<72>-3.348 E<6d61782d636f>120 564 Q -.15<7665>-.15 G<726167652e>.15 E F2<2d64756d702d6e6f64652d736570>100 588 Q F0<7374722028>2.5 E F3<7365706172>A <61746520656e7472696573207769746820737472>-.15 E F0<29>A<53657061726174 6520656e747269657320696e207468652064756d70208c6c652077697468>120 600 Q F2<737472>2.5 E F0<2e>A F2<2d7069>100 624 Q F0<6e756d2028>2.5 E F3 <6170706c79207072>A<652d696e8d6174696f6e20746f206d6174726978>-.37 E F0 <29>A .909<4170706c79207072652d696e8d6174696f6e20746f20746865206d617472 69782073706563698c6564207769746820746865>120 636 R F2<2d696d78>3.409 E F0 3.408<6f7074696f6e2e2054686973>3.408 F .908 <77696c6c20636175736520746865206566>3.408 F<8c2d>-.25 E<6369656e63>120 648 Q 3.016<7973>-.15 G .516 <636f72657320746f20706c616365206120686967686572207265>-3.016 F -.1<7761> -.25 G .517 <7264206f6e20686967682d776569676874206564676573206265696e6720636f>.1 F -.15<7665>-.15 G .517<726564206279206120636c7573746572696e67>.15 F <28617373756d696e672074686174>120 660 Q F3<6e756d>2.5 E F0<6973206c6172> 2.5 E<676572207468616e206f6e65292e>-.18 E .596 <54686973206f7074696f6e20697320616c736f2075736566756c207768656e>120 684 R F2<6d636c>3.096 E F0 .596<697473656c662077>3.096 F .595<617320696e7374 72756374656420746f20757365207072652d696e8d6174696f6e207768656e20636c7573 746572>-.1 F<2d>-.2 E<696e6720612067726170682e>120 696 Q F2 <2d6c756d702d636f756e74>100 720 Q F0 2.5<6e28>2.5 G F3<6e6f646520746872> -2.5 E<6573686f6c64>-.37 E F0<29>A<636c6d666f726d61742031322d313335>20 768 Q<3134204d61792032303132>134.845 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 133.455<636c6d666f726d61742831292055534552>20 48 R 135.955<434f4d4d414e445320636c6d666f726d6174283129>2.5 F .14<54686520 7a6f656d208c6c6520697320637265617465642073756368207468617420647572696e67 207a6f656d2070726f63657373696e6720636c7573746572732061726520666f726d6174 74656420616e64206f7574707574>120 84 R .823<77697468696e20612073696e676c 65208c6c6520756e74696c20746865206e6f6465207468726573686f6c64206861732062 65656e2065>120 96 R .823<786365656465642e2041206e65>-.15 F 3.323<778c> -.25 G .823<6c65206973207468656e206f70656e6564>-3.323 F <616e64207468652070726f636564757265207265706561747320697473656c662e>120 108 Q/F1 10/Times-Bold@0 SF<2d2d6164617074>100 132 Q F0<28>2.5 E/F2 10 /Times-Italic@0 SF<616c6c6f7720646f6d61696e206d69736d617463>A<68>-.15 E F0<29>A<416c6c6f>120 144 Q 3.407<7774>-.25 G .908 <686520636c757374657220646f6d61696e20746f20646966>-3.407 F .908<66657220 66726f6d2074686520677261706820646f6d61696e2e2050726573756d61626c79207468 6520636c7573746572696e672069732061>-.25 F .573<636c7573746572696e67206f 6620612073756267726170682e2054686520636f686573696f6e20616e6420737469636b 696e657373206d656173757265732077696c6c207065727461696e20746f207468652072 656c65>120 156 R -.25<7661>-.25 G<6e74>.25 E <70617274206f6620746865206772617068206f6e6c792e>120 168 Q F1 <2d2d7375626772617068>100 192 Q F0<28>2.5 E F2<7573652072>A <65737472696374696f6e>-.37 E F0<29>A .315<49662074686520636c757374657220 646f6d61696e206973206120737562736574206f662074686520677261706820646f6d61 696e2c2074686520636f686573696f6e20616e6420737469636b696e657373206d656173 75726573>120 204 R .139<77696c6c20627920646566>120 216 R .138<61756c7420 7374696c6c207065727461696e20746f2074686520656e746972652067726170682e2042 792073657474696e672074686973206f7074696f6e2c20746865206d6561737572657320 77696c6c20706572>-.1 F<2d>-.2 E<7461696e20746f20746865207375626772617068 20696e64756365642062792074686520636c757374657220646f6d61696e2e>120 228 Q F1<2d646972>100 252 Q F0<6469726e616d652028>2.5 E F2<77726974652072>A <6573756c747320746f20646972>-.37 E<6563746f7279>-.37 E F0<29>A<557365> 120 264 Q F1<646972>2.5 E<6e616d65>-.15 E F0<6173206f757470757420646972 6563746f72792e2049742077696c6c206265206372656174656420696620697420646f65 73206e6f742065>2.5 E<7869737420616c72656164792e>-.15 E F1<2d666d74>100 288 Q F0<666e616d652028>2.5 E F2 <777269746520746f20656e636f64696e67208c6c6520666e616d65>A F0<29>A .539 <577269746520746f20656e636f64696e67208c6c65>120 300 R F1<666e616d65> 3.039 E F0 .539<726174686572207468616e2074686520646566>3.039 F<61756c74> -.1 E/F3 10/Courier@0 SF<666d742e617a6d>3.039 E F0 5.539<2e49>C 3.04 <7469>-5.539 G 3.04<7362>-3.04 G .54 <65737420746f20737570706c7920666e616d65>-3.04 F .291 <7769746820746865207374616e64617264207a6f656d20737566>120 312 R<8c78> -.25 E F3<2e617a6d>2.791 E F0 2.791<2e5a>C .291 <6f656d2077696c6c2070726f63657373208c6c65206f6620616e>-2.791 F 2.79 <796e>-.15 G .29<616d652c2062>-2.79 F .29 <75742074686f7365206c61636b696e67>-.2 F<746865>120 324 Q F3<2e617a6d>2.5 E F0<737566>2.5 E <8c78206d7573742062652073706563698c6564207573696e6720746865207a6f656d> -.25 E F1<2d49>2.5 E F2<666e616d65>2.5 E F0<6f7074696f6e2e>2.5 E F1 <2d7a6d6d>100 348 Q F0<646566736e616d652028>2.5 E F2 <617373756d65206d616372>A 2.5<6f64>-.45 G<658c6e6974696f6e73206172>-2.5 E 2.5<6569>-.37 G 2.5<6e66>-2.5 G<6e616d65>-2.5 E F0<29>A 1.106 <49662074686973206f7074696f6e20697320757365642c>120 360 R F1 1.106 <636c6d2066>3.606 F<6f726d6174>-.25 E F0 1.106<77696c6c206e6f74206f7574 707574207468652064658c6e6974696f6e208c6c652c20616e64206d656e74696f6e7320 6f6620746865>3.606 F .694<64658c6e6974696f6e208c6c6520696e2074686520656e 636f64696e67208c6c652077696c6c2075736520746865208c6c65206e616d65>120 372 R F3<646566736e616d65>3.194 E F0 3.194<2e54>C .694 <686973206f7074696f6e20617373756d6573>-3.194 F<7468617420612076>120 384 Q<616c69642064658c6e6974696f6e208c6c6520627920746865206e616d65206f66> -.25 E F3<646566736e616d65>2.5 E F0<646f65732065>2.5 E<786973742e>-.15 E F1<2d6e736d>100 408 Q F0<666e616d652028>2.5 E F2 <6f7574707574206e6f64652073746963>A<6b696e657373208c6c65>-.2 E F0<29>A .275<54686973206f7074696f6e2073706563698c657320746865206e616d6520696e20 776869636820746f2073746f726520286f7074696f6e616c6c792920746865>120 420 R F1 .275<6e6f646520737469636b696e657373206d6174726978>2.775 F F0 2.775 <2e49>C<74>-2.775 E .715<6861732074686520666f6c6c6f>120 432 R .714 <77696e67207374727563747572652e2054686520636f6c756d6e732072616e6765206f> -.25 F -.15<7665>-.15 G 3.214<7261>.15 G .714<6c6c20656c656d656e74732069 6e207468652067726170682061732073706563698c6564>-3.214 F .815 <627920746865>120 444 R F1<2d696d78>3.315 E F0 3.315 <6f7074696f6e2e20546865>3.315 F<726f>3.315 E .815<77732072616e6765206f> -.25 F -.15<7665>-.15 G 3.316<7274>.15 G .816 <686520636c7573746572732061732073706563698c656420627920746865>-3.316 F F1<2d69636c>3.316 E F0 3.316<6f7074696f6e2e20546865>3.316 F .597 <656e747269657320636f6e7461696e207468652070726f6a656374696f6e2076>120 456 R .597<616c7565206f66207468617420706172746963756c6172206e6f6465206f 6e746f207468617420706172746963756c617220636c7573746572732c20692e652e> -.25 F 1.194<7468652073756d206f66207468652077656967687473206f6620616c6c 206172637320676f696e67206f75742066726f6d20746865206e6f646520746f20736f6d 65206e6f646520696e207468617420636c7573746572>120 468 R<2c>-.4 E <7772697474656e2061732061206672616374696f6e2072656c617469>120 480 Q .3 -.15<76652074>-.25 H 2.5<6f74>.15 G<68652073756d206f66207765696768747320 6f6620616c6c206f7574676f696e6720617263732e>-2.5 E F1<2d63636d>100 504 Q F0<666e616d652028>2.5 E F2 <6f757470757420636c757374657220636f686573696f6e208c6c65>A F0<29>A .072< 54686973206f7074696f6e2073706563698c657320746865206e616d65206f6620746865 208c6c6520696e20776869636820746f2073746f726520286f7074696f6e616c6c792920 746865>120 516 R F1 .072<636c757374657220636f686573696f6e>2.572 F <6d6174726978>120 528 Q F0 2.608<2e49>C 2.608<7468>-2.608 G .108 <61732074686520666f6c6c6f>-2.608 F .108<77696e67207374727563747572652e> -.25 F .109<426f746820636f6c756d6e7320616e6420726f>5.109 F .109 <77732072616e6765206f>-.25 F -.15<7665>-.15 G 2.609<7261>.15 G .109 <6c6c20636c75737465727320696e20746865>-2.609 F 1.19 <636c7573746572696e672061732073706563698c656420627920746865>120 540 R F1 <2d69636c>3.69 E F0 1.19<6f7074696f6e2e20416e20656e7472792073706563698c 6573207468652070726f6a656374696f6e206f66206f6e6520636c7573746572>3.69 F 1.063<6f6e746f20616e6f7468657220636c7573746572>120 552 R 3.563<2c77>-.4 G 1.063<686963682069732073696d706c79207468652061>-3.563 F -.15<7665>-.2 G 1.064<72616765206f66207468652070726f6a656374696f6e2076>.15 F 1.064 <616c7565206f6e746f20746865207365636f6e64>-.25 F<636c7573746572206f6620 616c6c206e6f64657320696e20746865208c72737420636c75737465722e>120 564 Q /F4 10.95/Times-Bold@0 SF<4f5554505554204558504c41494e4544>20 580.8 Q F0 .314<5768617420666f6c6c6f>100 592.8 R .314<777320697320616e2065>-.25 F .314<78706c616e6174696f6e206f6620746865206f75747075742070726f>-.15 F .314<766964656420627920746865207374616e64617264207a6f656d206d6163726f73 2e20546865206f7574707574>-.15 F 1.102 <636f6d657320696e206120707265747479207465727365206e756d626572>100 604.8 R<2d7061636b>-.2 E 1.102 <656420666f726d61742e20546865206465636973696f6e2077>-.1 F 1.102 <6173206d616465206e6f7420746f20696e636c7564652068656164657273>-.1 F .039 <616e642063617074696f6e7320696e20746865206f757470757420696e206f72646572 20746f206b>100 616.8 R .038<656570206974207265616461626c652e>-.1 F -1.1 <596f>5.038 G 2.538<756d>1.1 G .038<696768742077>-2.538 F .038 <616e7420746f207072696e74206f75742074686520666f6c6c6f>-.1 F<77696e67> -.25 E .662<616e6e6f74617465642065>100 628.8 R 3.162 <78616d706c65732e204174>-.15 F .663<7468652073616d652073696465206f662074 6865206571756174696f6e2c2074686520666f6c6c6f>3.163 F .663 <77696e672069732070726f6261626c7920746f7567682072656164696e67>-.25 F <756e6c65737320796f75206861>100 640.8 Q .3 -.15<76652061>-.2 H 2.5<6e61> .15 G<637475616c2065>-2.5 E<78616d706c65206f6620636c6d666f726d6174746564 206f75747075742061742068616e642e>-.15 E 1.095<496620796f7520617265207265 6164696e67207468697320696e2061207465726d696e616c2c20796f75206d6967687420 6e65656420746f20726573697a6520697420746f206861>100 664.8 R 1.395 -.15 <76652077>-.2 H 1.095<69647468206c6172>.15 F 1.095 <676572207468616e203830>-.18 F<636f6c756d6e732c206173207468652065>100 676.8 Q<78616d706c65732062656c6f>-.15 E 2.5<7761>-.25 G <726520666f726d617474656420696e2076>-2.5 E<6572626174696d206d6f64652e> -.15 E<42656c6f>100 700.8 Q 3.206<776d>-.25 G .707 <656e74696f6e206973206d616465206f66207468652070726f6a656374696f6e2076> -3.206 F .707 <616c756520666f722061206e6f64652f636c757374657220706169722e>-.25 F .707 <546869732069732073696d706c792074686520746f74616c>5.707 F .226<616d6f75 6e74206f662065646765207765696768747320666f722074686174206e6f646520696e20 7468617420636c75737465722028636f72726573706f6e64696e6720746f206e65696768 626f757273206f6620746865206e6f646520696e>100 712.8 R .408 <74686520636c7573746572292072656c617469>100 724.8 R .708 -.15<76652074> -.25 H 2.908<6f74>.15 G .409<6865206f>-2.908 F -.15<7665>-.15 G .409<72 616c6c20616d6f756e74206f662065646765207765696768747320666f72207468617420 6e6f64652028636f72726573706f6e64696e6720746f20616c6c20697473>.15 F <636c6d666f726d61742031322d313335>20 768 Q<3134204d61792032303132> 134.845 E<34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 133.455<636c6d666f726d61742831292055534552>20 48 R 135.955<434f4d4d414e445320636c6d666f726d6174283129>2.5 F 2.562 <6e65696768626f757273292e20546865>100 84 R<636f>2.562 E -.15<7665>-.15 G .062<72616765206d65617375726520287265666572656420746f206173>.15 F/F1 10 /Times-Bold@0 SF<636f>2.562 E<76>-.1 E F0 2.562<2969>C 2.562<7361>-2.562 G .062<6c736f20757365642e20546869732069732073696d696c617220746f20746865 2070726f6a65632d>-2.562 F .326<74696f6e2076>100 96 R .326 <616c75652c2065>-.25 F .326<786365707420746861742061292074686520636f> -.15 F -.15<7665>-.15 G .326<72616765206d656173757265207265>.15 F -.1 <7761>-.25 G .326<7264732074686520696e636c7573696f6e206f66206c6172>.1 F .326<6765206564676520776569676874732028616e64>-.18 F 2.229<70656e616c69 7a65732074686520696e636c7573696f6e206f6620696e7369676e698c63616e74206564 676520776569676874732920616e64206229207265>100 108 R -.1<7761>-.25 G 2.229<726473206e6f64652f636c757374657220706169727320666f72>.1 F .254<77 6869636820746865206e65696768626f757220736574206f6620746865206e6f64652069 732076>100 120 R .254 <6572792073696d696c617220746f2074686520636c75737465722e>-.15 F .255 <546865206d6178696d756d20636f>5.255 F -.15<7665>-.15 G .255 <72616765206d65612d>.15 F 1.36<7375726520287265666572656420746f206173> 100 132 R F1<6d6178636f>3.86 E<76>-.1 E F0 3.86<2969>C 3.859<7373>-3.86 G 1.359<696d696c617220746f20746865206e6f726d616c20636f>-3.859 F -.15 <7665>-.15 G 1.359<72616765206d6561737572652065>.15 F 1.359 <78636570742074686174206974207265>-.15 F -.1<7761>-.25 G<726473>.1 E 1.123<696e636c7573696f6e206f66206c6172>100 144 R 1.124 <6765206564676520776569676874732065>-.18 F -.15<7665>-.25 G 3.624<6e6d> .15 G 3.624<6f72652e20546865>-3.624 F<636f>3.624 E 3.624<7661>-.15 G 1.124<6e64206d6178636f>-3.624 F 3.624<7670>-.15 G 1.124 <6572666f726d616e6365206d65617375726573206861>-3.624 F -.15<7665>-.2 G <7365>100 156 Q -.15<7665>-.25 G<72616c206e69636520636f6e74696e75697479 20616e64206d6f6e6f746f6e69636974792070726f7065727469657320616e6420617265 2064657363726962656420696e205b315d2e>.15 E F1 <4578616d706c6520636c757374657220686561646572>100 180 Q/F2 10/Courier@0 SF<436c7573746572203020737a2031352073656c6620302e383220636f7620302e3433 2d302e3236>100 204 Q<31303a20302e3131>118 216 Q<31383a20302e3035>118 228 Q<31323a20302e3032>118 240 Q F1<6578706c616e6174696f6e>100 264 Q F2<436c 7573746572203020737a2031352073656c6620302e383220636f7620302e34332d302e32 36>100 288 Q -12 24<7c7c207c>148 300 T 6<7c7c>42 G<636c696420636f756e74> 148 312 Q 30<70726f6a20636f76>18 F<636f766d6178>6 E<31303a20302e3131>118 336 Q 12<7c7c>124 348 S<636c696478312070726f6a7831>100 360 Q <31383a20302e3035>118 384 Q 12<7c7c>124 396 S <636c696478322070726f6a7832>100 408 Q 18<636c6964204e756d65726963>100 432 R<636c7573746572206964656e74696669657220286172626974726172696c792920 61737369676e6564206279204d434c2e>6 E 12<636f756e7420546865>100 444 R <73697a65206f6620636c757374657220636c69642e>6 E 18 <70726f6a2050726f6a656374696f6e>100 456 R <76616c756520666f7220636c757374657220636c6964205b645d2e>6 E 24 <636f7620436f766572616765>100 468 R <6d65617375726520666f7220636c757374657220636c6964205b645d2e>6 E 6 <6d6178636f76204d61782d636f766572616765>100 480 R <6d65617375726520666f7220636c757374657220636c6964205b645d2e>6 E 6 <636c6964783120496e646578>100 492 R<6f66206f7468657220636c75737465722073 686172696e672072656c61746976656c79206d616e792065646765732e>6 E 6 <70726f6a78312050726f6a656374696f6e>100 504 R<76616c756520666f7220746865 20636c69642f636c696478312070616972206f6620636c757374657273205b655d2e>6 E 6<636c69647832203a>100 516 R 6<70726f6a7832203a>100 528 R <617320636c6964783120616e642070726f6a7831>6 E F1 <4578616d706c6520696e6e6572206e6f6465>100 552 Q F0 .284<416e20696e6e6572 206e6f6465206973206c697374656420756e646572206120636c7573746572>100 564 R 2.784<2c61>-.4 G .283<6e642069742069732073696d706c792061206d656d62657220 6f66207468617420636c75737465722e20546865206e616d65206973206173>-2.784 F< 6f70706f73656420746f20276f75746572206e6f6465272c206465736372696265642062 656c6f>100 576 Q<772e>-.25 E F2<5b666f6f20626172207a75745d>100 600 Q 24 <323120372d35>124 612 R<302e373320302e3432302d302e333331>36 E 6 <302e3238322d302e30343720302e3037312d302e303335>12 F<3c332e35343e>6 E 12 <313020362f33>136 624 R<302e313620302e3037312d302e303437>36 E <302e3236382d302e343432>12 E 12<313220342f32>136 636 R <302e313120302e3037312d302e303335>36 E<302e3239362d302e353135>12 E F1 <6578706c616e6174696f6e>100 660 Q F0<636c6d666f726d61742031322d313335>20 768 Q<3134204d61792032303132>134.845 E<35>202.335 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 133.455<636c6d666f726d61742831292055534552>20 48 R 135.955<434f4d4d414e445320636c6d666f726d6174283129>2.5 F/F1 10 /Courier@0 SF<5b6c6162656c5d>100 84 Q 24<323120372d35>124 96 R <302e373320302e3432302d302e333331>36 E 6 <302e3238322d302e30343720302e3037312d302e303335>12 F<3c332e35343e>6 E 30 <7c7c>130 108 S -30 36<7c7c207c>-24 H 60<7c7c>-30 G 60<7c7c>-54 G 30 <7c7c>-54 G 6<696478206e6269>124 120 R 18<6e626f2070726f6a>6 F <636f7620636f766d6178206d61785f69206d696e5f69>18 E <6d61785f6f2d6d696e5f6f2053554d>12 E 12<313020362f33>136 144 R <302e313620302e3236382d302e343432>36 E<302e3037312d302e303437>12 E 18 <7c7c>142 156 S -30 36<7c7c207c>-12 H 60<7c7c>-30 G<7c>-54 E 6 <636c7573696420737a>112 168 R 24<6e622070726f6a>6 F <636f7620636f766d6178206d61785f69206d696e5f69>18 E 12 <6c6162656c204f7074696f6e616c3b>100 192 R <77697468202d746162203c74616266696c653e206f7074696f6e2e>6 E 24 <696478204e756d65726963>100 204 R<286d636c29206964656e7469666965722e>6 E 24<6e626920436f756e74>100 216 R<6f6620746865206e65696768626f757273206f66 206e6f6465206964782077697468696e2069747320636c75737465722e>6 E 24 <6e626f20436f756e74>100 228 R<6f6620746865206e65696768626f757273206f6620 6e6f646520696478206f7574736964652069747320636c75737465722e>6 E 18 <70726f6a2050726f6a656374696f6e>100 240 R <76616c7565205b615d206f66206e62692065646765732e>6 E 24 <636f7620536b65776564>100 252 R<70726f6a656374696f6e205b625d2c2072657761 72647320696e636c7573696f6e206f66206c61726765206564676520776569676874732e> 6 E 6<636f766d6178204173>100 264 R<636f762061626f76652c2072657761726469 6e67206c6172676520656467652077656967687473206576656e206d6f72652e>6 E 12 <6d61785f69204c617267657374>100 276 R<656467652077656967687420696e207468 65206e6269207365742c206e6f726d616c697a6564205b635d2e>6 E 12 <6d696e5f6920536d616c6c657374>100 288 R <656467652077656967687420696e20746865206e626920736574205b635d2e>6 E 12 <6d61785f6f204c617267657374>100 300 R <6564676520776569676874206f75747369646520746865206e626920736574205b635d> 6 E 12<6d696e5f6f20536d616c6c657374>100 312 R<6564676520776569676874206f 75747369646520746865206e626920736574205b635d2e>6 E 24<53554d20546865>100 324 R <73756d206f6620616c6c206564676573206c656176696e67206e6f6465206964782e>6 E 6<636c7573696420496e646578>100 348 R<6f66206f7468657220636c7573746572 20746861742069732072656c6576616e7420666f72206e6f6465206964782e>6 E 30 <737a2053697a65>100 360 R<6f66207468617420636c75737465722e>6 E 30 <6e6220436f756e74>100 372 R<6f66206e65696768626f757273206f66206e6f646520 69647820696e20636c757374657220636c757369642e>6 E 18 <70726f6a2050726f6a656374696f6e>100 384 R<76616c7565206f6620656467657320 66726f6d206e6f64652069647820746f20636c757374657220636c757369642e>6 E 24 <636f7620536b65776564>100 396 R<70726f6a656374696f6e206f6620656467657320 66726f6d206e6f64652069647820746f20636c757374657220636c757369642e>6 E 6 <636f766d6178204d6178696d616c6c79>100 408 R <736b657765642070726f6a656374696f6e2c2061732061626f76652e>6 E 12 <6d61785f6f204c617267657374>100 420 R<656467652077656967687420666f72206e 6f64652069647820746f20636c757374657220636c75736964205b635d2e>6 E 12 <6d696e5f6f20536d616c6c657374>100 432 R<656467652077656967687420666f72>6 E<6e6f64652069647820746f20636c757374657220636c75736964205b635d2e>12 E/F2 10/Times-Bold@0 SF<4578616d706c65206f75746572206e6f6465>100 456 Q F0 .956<416e206f75746572206e6f6465206973206c697374656420756e64657220612063 6c75737465722e20546865206e6f6465206973206e6f742070617274206f662074686174 20636c7573746572>100 468 R 3.457<2c62>-.4 G .957 <7574207365656d7320746f206861>-3.657 F -.15<7665>-.2 G<7375627374616e74 69616c20636f6e6e656374696f6e7320746f207468617420636c75737465722e>100 480 Q F1<5b7a6f6f2065656b206665775d>100 504 Q 12<32392031382332>124 516 R 30 <322d3520302e3635>48 F 6 <302e3838332d302e38313520302e3433362d302e32313820302e3037332d302e303535> 6 F 30<2f3420302e3237>232 528 R 6 <302e3037302d302e31303920302e3037332d302e303535>6 F F2 <6578706c616e6174696f6e>100 552 Q F0<636c6d666f726d61742031322d313335>20 768 Q<3134204d61792032303132>134.845 E<36>202.335 E 0 Cg EP %%Page: 7 7 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 133.455<636c6d666f726d61742831292055534552>20 48 R 135.955<434f4d4d414e445320636c6d666f726d6174283129>2.5 F/F1 10 /Courier@0 SF<5b6c6162656c5d>100 84 Q 12<32392031382332>124 96 R 30 <322d3520302e3635>48 F 6 <302e3838332d302e38313520302e3433362d302e32313820302e3037332d302e303535> 6 F 24<7c7c>124 108 S 48<7c7c>-12 G -30 36<7c7c207c>-42 H 60<7c7c>-30 G 60<7c7c>-54 G<7c>-54 E 6<69647820636c>124 120 R 24<737a206e6269>6 F 18 <6e626f2070726f6a>6 F<636f76206d6178636f76206d61785f69206d696e5f69>18 E <6d61785f6f206d696e5f6f>12 E<6964>154 132 Q 30<2f3420302e3237>232 144 R 6<302e3037302d302e31303920302e3037332d302e303535203c322e32393e>6 F -30 36<7c7c207c>238 156 T 60<7c7c>-30 G 36<7c7c>-54 G 24<6e622070726f6a>238 168 R<636f76206d6178636f76206d61785f69206d696e5f69>18 E<53554d>12 E 12 <6c6162656c204f7074696f6e616c3b>100 192 R <77697468202d746162203c74616266696c653e206f7074696f6e2e>6 E 24 <696478204e756d65726963>100 204 R<286d636c29206964656e746966696572>6 E 18<636c696420496e646578>100 216 R<6f662074686520636c75737465722074686174 206e6f6465206964782062656c6f6e677320746f>6 E 30<737a2053697a65>100 228 R <6f662074686520636c75737465722074686174206e6f6465206964782062656c6f6e67 7320746f>6 E 18<70726f6a203a>100 240 R 24<636f76203a>100 252 R<416c6c20 746865736520656e747269657320617265207468652073616d6520617320646573637269 6265642061626f7665>12 E 6<636f766d6178203a20666f72>100 264 R<696e6e6572 206e6f6465732c207065727461696e696e6720746f20636c757374657220636c69642c>6 E 12<6d61785f69203a>100 276 R<692e652e20746865206e617469766520636c757374 657220666f72206e6f646520696478>12 E 12<6d696e5f69203a>100 288 R <2869742069732061206d656d626572206f66207468617420636c7573746572292e>12 E 12<6d61785f6f203a>100 300 R 12<6d696e5f6f203a>100 312 R 30<6e6220546865> 100 336 R<636f756e74206f66206e65696768626f757273206f66206e6f646520696478 20696e207468652063757272656e7420636c7573746572>6 E 18 <70726f6a2050726f6a656374696f6e>100 348 R<76616c756520666f72206e6f646520 6964782072656c617469766520746f2063757272656e7420636c75737465722e>6 E 24 <636f7620536b65776564>100 360 R<70726f6a656374696f6e20287265776172647320 6c6172676520656467652077656967687473292c2061732061626f76652e>6 E 6 <636f766d6178204d6178696d616c6c79>100 372 R <736b657765642070726f6a656374696f6e2c2061732061626f76652e>6 E 12 <6d61785f6f204c617267657374>100 384 R<656467652077656967687420666f72206e 6f64652069647820696e2063757272656e7420636c7573746572205b635d2e>6 E 12 <6d696e5f6f20736d616c6c657374>100 396 R<656467652077656967687420666f7220 6e6f64652069647820696e2063757272656e7420636c7573746572205b635d2e>6 E 24 <53554d20546865>100 408 R<73756d206f66202a616c6c2a206564676573206c656176 696e67206e6f6465206964782e>6 E F0 17.5<5b615d20546865>98.9 432 R .96 <70726f6a656374696f6e2076>3.46 F .96 <616c756520666f722061206e6f64652072656c617469>-.25 F 1.26 -.15<76652074> -.25 H 3.46<6f73>.15 G .96<6f6d6520737562736574206f6620697473206e656967 68626f757273206973207468652073756d206f66>-3.46 F .987<656467652077656967 687473206f6620616c6c20656467657320746f2074686174207375627365742e20546865 2073756d2069732077697474656e2061732061206672616374696f6e2072656c617469> 130 444 R 1.287 -.15<76652074>-.25 H 3.488<6f74>.15 G<6865>-3.488 E<7375 6d206f6620656467652077656967687473206f6620616c6c206e65696768626f7572732e> 130 456 Q 17.5<5b625d20636f>98.34 480 R 3.196<7661>-.15 G .696 <6e6420636f>-3.196 F .696<766d6178207374616e6420666f7220636f>-.15 F -.15 <7665>-.15 G .695<7261676520616e64206d6178696d616c20636f>.15 F -.15 <7665>-.15 G 3.195<726167652e20546865>.15 F<636f>3.195 E -.15<7665>-.15 G .695<72616765206d656173757265206f662061>.15 F .632<6e6f64652f636c7573 746572207061697220697320612067656e6572616c697a656420616e6420736b>130 492 R -.25<6577>-.1 G .632<65642070726f6a656374696f6e2076>.25 F .633 <616c7565205b615d2074686174207265>-.25 F -.1<7761>-.25 G .633 <7264732074686520707265732d>.1 F .202<656e6365206f66206c6172>130 504 R .201<67652065646765207765696768747320696e2074686520636c7573746572>-.18 F 2.701<2c72>-.4 G<656c617469>-2.701 E .501 -.15<76652074>-.25 H 2.701 <6f74>.15 G .201<686520636f6c6c656374696f6e206f662077656967687473206f66 20616c6c206564676573>-2.701 F .25 <646570617274696e672066726f6d20746865206e6f64652e20546865206d6178636f> 130 516 R 2.75<766d>-.15 G .25 <65617375726520697320612070726f6a656374696f6e2076>-2.75 F .25 <616c756520736b>-.25 F -.25<6577>-.1 G .25<65642065>.25 F -.15<7665>-.25 G 2.75<6e66>.15 G<757274686572>-2.75 E<2c>-.4 E .135 <636f72726573706f6e64696e676c79207265>130 528 R -.1<7761>-.25 G .134 <7264696e672074686520696e636c7573696f6e206f66206c6172>.1 F .134 <6765206564676520776569676874732e2054686520636f>-.18 F 2.634<7661>-.15 G .134<6e64206d6178636f>-2.634 F 2.634<7670>-.15 G<6572>-2.634 E<2d>-.2 E <666f726d616e6365206d65617375726573206861>130 540 Q .3 -.15<76652073>-.2 H -2.15 -.25<65762065>.15 H<72616c206e69636520636f6e74696e75697479207072 6f7065727469657320616e64206172652064657363726962656420696e205b315d2e>.25 E 17.5<5b635d20416c6c>98.9 564 R .131<6564676520776569676874732061726520 7772697474656e20617320746865206672616374696f6e206f66207468652073756d2053 554d206f6620616c6c20656467652077656967687473206f66206564676573>2.631 F <6c6561>130 576 Q<76696e67206e6f6465206964782e>-.2 E 17.5<5b645d2046> 98.34 600 R .018 <6f7220636c757374657273207468652070726f6a656374696f6e2076>-.15 F .018 <616c756520616e642074686520636f>-.25 F -.15<7665>-.15 G .018 <72616765206d65617375726573206172652073696d706c79207468652061>.15 F -.15 <7665>-.2 G .017<7261676573206f6620616c6c>.15 F 1.759 <70726f6a656374696f6e2076>130 612 R 1.759 <616c756573205b615d2c207265737065637469>-.25 F -.15<7665>-.25 G 1.759 <6c7920636f>.15 F -.15<7665>-.15 G 1.759 <72616765206d65617375726573205b625d2c2074616b>.15 F 1.759<656e206f>-.1 F -.15<7665>-.15 G 4.259<7261>.15 G 1.76<6c6c206e6f64657320696e20746865> -4.259 F 3.331<636c75737465722e20546865>130 624 R .831 <636c75737465722070726f6a656374696f6e2076>3.331 F .831<616c75652073696d 706c79206d65617375726573207468652073756d206f6620656467652077656967687473 20696e7465726e616c>-.25 F 1.109<746f2074686520636c7573746572>130 636 R 3.609<2c72>-.4 G<656c617469>-3.609 E 1.409 -.15<76652074>-.25 H 3.609 <6f74>.15 G 1.11<686520746f74616c2073756d206f66206564676520776569676874 73206f6620616c6c206564676573207768657265206174206c65617374206f6e65> -3.609 F<6e6f646520696e2074686520656467652069732070617274206f6620746865 20636c75737465722e>130 648 Q 17.5<5b655d20546865>98.9 672 R .865 <70726f6a656374696f6e2076>3.365 F .865<616c756520666f722073746172742063 6c7573746572207820616e6420656e6420636c7573746572207920697320746865207375 6d206f6620656467652077656967687473206f66>-.25 F<656467657320626574776565 6e207820616e6420792061732061206672616374696f6e206f66207468652073756d206f 6620616c6c20656467652077656967687473206f66206564676573206c6561>130 684 Q <76696e6720782e>-.2 E/F2 10.95/Times-Bold@0 SF -.548<4155>20 700.8 S <54484f52>.548 E F0<5374696a6e2076>100 712.8 Q<616e20446f6e67656e2e>-.25 E<636c6d666f726d61742031322d313335>20 768 Q<3134204d61792032303132> 134.845 E<37>202.335 E 0 Cg EP %%Page: 8 8 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 133.455<636c6d666f726d61742831292055534552>20 48 R 135.955<434f4d4d414e445320636c6d666f726d6174283129>2.5 F/F1 10.95 /Times-Bold@0 SF<5245464552454e434553>20 84 Q F0 1.752 <5b315d205374696a6e2076>100 96 R 1.752<616e20446f6e67656e2e>-.25 F/F2 10 /Times-Italic@0 SF -.8<5065>4.252 G 1.752 <72666f726d616e636520637269746572696120666f72206772>.8 F 1.753 <61706820636c7573746572696e6720616e64204d61726b>-.15 F 1.953 -.1 <6f762063>-.1 H 1.753<6c75737465722065>.1 F<78706572692d>-.2 E <6d656e7473>100 108 Q F0 2.598<2e54>C .098<6563686e6963616c205265706f72 7420494e532d52303031322c204e6174696f6e616c20526573656172636820496e737469 7475746520666f72204d617468656d617469637320616e6420436f6d7075746572> -3.298 F<536369656e636520696e20746865204e65746865726c616e64732c20416d73 74657264616d2c204d617920323030302e>100 120 Q<687474703a2f2f7777772e6377 692e6e6c2f6674702f4357497265706f7274732f494e532f494e532d52303031322e7073 2e5a>100 132 Q F1<53454520414c534f>20 148.8 Q/F3 10/Times-Bold@0 SF <6d636c66616d696c79283729>100 160.8 Q F0<666f7220616e206f>2.5 E -.15 <7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c20746865 20646f63756d656e746174696f6e20616e6420746865207574696c697469657320696e20 746865206d636c2066>-2.5 E<616d696c792e>-.1 E <636c6d666f726d61742031322d313335>20 768 Q<3134204d61792032303132> 134.845 E<38>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clmmeet.ps0000644000402500021140000002300211754271041012027 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:13 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 1 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE /Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d206d656574283129>20 48 Q <5553455220434f4d4d414e4453>140.675 E<636c6d206d656574283129>143.175 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<636c6d206d65 657420ad20636f6d707574652074686520696e74657273656374696f6e206f6620612073 6574206f6620636c7573746572696e67732e>100 96 Q .261 <636c6d6d656574206973206e6f7420696e2061637475616c2066>100 120 R .261<61 637420612070726f6772616d2e2054686973206d616e75616c207061676520646f63756d 656e7473207468652062656861>-.1 F .26<76696f757220616e64206f7074696f6e73> -.2 F 1.538<6f662074686520636c6d2070726f6772616d207768656e20696e>100 132 R -.2<766f>-.4 G -.1<6b65>.2 G 4.038<6469>.1 G 4.038<6e6d>-4.038 G <6f6465>-4.038 E/F2 10/Times-Italic@0 SF<6d656574>4.038 E F0 4.038<2e54> C 1.538<6865206f7074696f6e73>-4.038 F/F3 10/Times-Bold@0 SF<2d68>4.038 E F0<2c>A F3<2d2d617072>4.038 E<6f706f73>-.18 E F0<2c>A F3<2d2d76>4.038 E <657273696f6e>-.1 E F0<2c>A F3<2d736574>4.038 E F0<2c>A F3<2d2d6e6f70> 100 144 Q F0<6172652061636365737369626c6520696e20616c6c>2.5 E F3<636c6d> 2.5 E F0<6d6f6465732e20546865>2.5 E 2.5<7961>-.15 G <72652064657363726962656420696e20746865>-2.5 E F3<636c6d>2.5 E F0 <6d616e75616c20706167652e>2.5 E F1<53594e4f50534953>20 160.8 Q F3 1.355 <636c6d206d656574205b2d6f>100 172.8 R F0 1.355<666e616d652028>3.855 F F2 1.355<6f7574707574208c6c65206e616d65>B F0<29>A F3 3.855<5d5b>C<2d68> -3.855 E F0<28>3.855 E F2 1.354<7072696e742073796e6f707369732c2065>B <786974>-.2 E F0<29>A F3 3.854<5d5b>C<2d2d617072>-3.854 E<6f706f73>-.18 E F0<28>3.854 E F2 1.354<7072696e742073796e6f707369732c>B -.2<6578>100 184.8 S<6974>.2 E F0<29>A F3 2.5<5d5b>C<2d2d76>-2.5 E<657273696f6e>-.1 E F0<28>2.5 E F2<7072696e7420766572>A<73696f6e2c2065>-.1 E<786974>-.2 E F0 <29>A F3<5d>A F0<3c8c6c65206e616d653e2b>2.5 E F1<4445534352495054494f4e> 20 201.6 Q F3 .337<636c6d206d656574>100 213.6 R F0 .338<636f6d7075746573 2074686520696e74657273656374696f6e206f66206120736574206f6620636c75737465 72696e67732c20746861742069732c20746865206c6172>2.837 F .338 <6765737420636c7573746572696e6720746861742069732061>-.18 F .428<73756263 6c7573746572696e67206f6620616c6c2074686520636c7573746572696e677320696e20 746865207365742e2049742073746f7265732074686520696e74657273656374696f6e20 286f72206d6565742920696e20746865206172>100 225.6 R<67756d656e74>-.18 E .625<746f20746865>100 237.6 R F3<2d6f>3.125 E F0 .626<8d61672c2077686963 68206d75737420626520746865208c727374206f7074696f6e206769>3.125 F -.15 <7665>-.25 G 3.126<6e2e20416c6c>.15 F .626<72656d61696e696e67206172> 3.126 F .626<67756d656e74732061726520696e746572707265746564206173>-.18 F .796<6e616d6573206f66208c6c657320636f6e7461696e696e6720636c757374657269 6e677320696e206d636c20666f726d61742028736565>100 249.6 R F3 <6d6378696f283529>3.296 E F0 .796 <292c207768696368206d75737420616c6c207065727461696e20746f2061>B <736574206f66207468652073616d652063617264696e616c6974792e>100 261.6 Q .302<54686973207574696c6974792063616e2062652075736566756c20696e206d6561 737572696e672028696e20636f6e6a756e6374696f6e2077697468>100 285.6 R F3 .302<636c6d2064697374>2.802 F F0 2.802<2974>C .302 <686520636f6e73697374656e63>-2.802 F 2.802<796f>-.15 G 2.802<666173> -2.802 G .302<6574206f66>-2.802 F .132 <636c7573746572696e677320617420646966>100 297.6 R .132 <666572656e74206c65>-.25 F -.15<7665>-.25 G .131<6c73206f66206772616e75 6c617269747920ad20696620746865206d656574206f6620616c6c2074686f736520636c 7573746572696e677320697320636c6f736520746f206265696e67>.15 F 2.5<6173> 100 309.6 S<7562636c7573746572696e67206f662065616368206f66207468656d2c20 636f6e73697374656e63>-2.5 E 2.5<7969>-.15 G 2.5<7367>-2.5 G <6f6f642e20536565>-2.5 E F3<636c6d2064697374>2.5 E F0<666f7220616e2065> 2.5 E<78616d706c652e>-.15 E F1<4f5054494f4e53>20 326.4 Q F3<2d6f>100 338.4 Q F0<666e616d652028>2.5 E F2<6f7574707574208c6c65206e616d65>A F0 <29>A F1 -.548<4155>20 355.2 S<54484f52>.548 E F0<5374696a6e2076>100 367.2 Q<616e20446f6e67656e2e>-.25 E F1<53454520414c534f>20 384 Q F3 <6d636c66616d696c79283729>100 396 Q F0<666f7220616e206f>2.5 E -.15<7665> -.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c2074686520646f 63756d656e746174696f6e20616e6420746865207574696c697469657320696e20746865 206d636c2066>-2.5 E<616d696c792e>-.1 E<636c6d206d6565742031322d313335>20 768 Q<3134204d61792032303132>139.565 E<31>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxio.50000644000402500021140000005400011754271045011250 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxio" 5 "14 May 2012" "mcxio 12-135" "FILE FORMATS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxio \- the format specifications for input and output in the mcl family\&. .SH DESCRIPTION The primary objects in the MCL network analysis suite are graphs and clusterings\&. Graphs can be directed and may have loops\&. Both graphs and clusterings are represented in a general unified format\&. This format specifies two domains (a \fIsource domain\fP and a \fIdestination domain\fP), along with lists of arcs linking pairs of elements from the two domains\&. For graphs the two domains are simply both equal to the graph node domain, whereas for clusterings one domain is the graph node domain and the other corresponds to the enumeration of clusters\&. Undirected graphs are a special instance of a directed graph, where an edge from the undirected graph is represented by two arcs of identical weight, one for each possible direction\&. The general unified format alluded to above is in fact a simple rectangular sparse matrix representation\&. Sparse means that zero entries in the matrix are not stored\&. A zero entry corresponds to an ordered node pair in the graph for which no arc exists from the first to the second node\&. An undirected graph corresponds with a symmetric matrix\&. The MCL suite uses a slight generalisation of the matrix concept, in that the row and column indices (that is, domains) can be arbitrary lists of nonnegative integers\&. Usually, but not necessarily, a domain of size\ \&\fCN\fP will use the common representation of the list of integers starting at\ \&\fC0\fP and ending at \ \&\fCN-1\fP\&. The \fIsource domain\fP is always associated with the columns of a matrix, and the \fIdestination domain\fP is always associated with the rows of a matrix\&. The matrix format, introduced below, first specifies the two domains\&. It then represents the nonzero matrix entries (corresponding with graph arc weights) in a column-wise fashion, as a list of lists\&. For each node from the source domain, it presents the list of all its neighbours in the destination domain along with the corresponding weights\&. This document describes .ZI 2m "\fInative matrix format\fP" \& .br The format that can be read in by any mcl application expecting a matrix argument\&. The native format closely resembles the layout of matrices as residing in computer memory\&. There are two distinct encodings, respectively \fIinterchange\fP and \fIbinary\fP\&. Their relative merits are described further below\&. .in -2m .ZI 2m "\fIconcatenated native matrix format\fP" \& .br This always pertains to matrices in native format concatenated in a single file, refered to as a \fIcat file\fP\&. It is used for example to encode hierarchical clusterings as generated by \fBmclcm\fP\&. A cat file either consists of matrices in interchange format or of matrices in binary format\&. .in -2m .ZI 2m "\fIraw intermediate format\fP" \& .br This is read by \fBmcxassemble(1)\fP\&. .in -2m .ZI 2m "\fItab format\fP" \& .br Used by applications such as \fBmcl(1)\fP and \fBmcxdump(1)\fP to convert between meaningful labels describing the input data and the numerical identifiers used internally\&. .in -2m .ZI 2m "\fIlabel format\fP" \& .br The format used when streaming labels directly into \fBmcl(1)\fP or \fBmcxload(1)\fP\&. .in -2m .ZI 2m "\fItransformation syntax\fP" \& .br The syntax accepted by \fBmcl(1)\fP, \fBmcxalter(1)\fP and many other programs to transform graphs and matrices\&. .in -2m The interchange format is a portable format that can be transmitted across computers and over networks and will work with any version of mcl or its sibling programs\&. It is documented (here) and very stable\&. Applications can easily create matrices in this format\&. The drawback of interchange format is that for very large graphs matrix encodings grow very big and are slow to read\&. The binary format is \fInot\fP garantueed to be portable across machines or different versions of mcl or differently compiled versions of mcl\&. Its distinct advantage is that for very large graphs the speed advantage over interchange format is dramatic\&. Conversion between the two formats is easily achieved with \fBmcxconvert\fP\&. Both \fBmcl(1)\fP and \fBmcxload(1)\fP can save a matrix in either format after constructing it from label input\&. The concatenated format is generated e\&.g\&. by \fBmclcm(1)\fP and can be transformed by \fBmcxdump(1)\fP using the \fB-imx-cat\fP option\&. In cat format matrices are simply concatenated, so it is easily generated from the command line if needed\&. For native binary format it is imperative that no additional bytes are inserted inbetween the matrix encodings\&. For native interchange format the only requirement is that the last matrix is followed by nothing but white space\&. A remark on the sloppy naming conventions used for \fBmcl\fP and its sibling utilities may be in order here\&. The prefix \fBmcx\fP is used for generic matrix functionality, the prefix \fBclm\fP is used for generic cluster functionaliy\&. The \fIutility\fP \fBmcx\fP is a general purpose interpreter for manipulating matrices (and grahps, sets, and clusterings)\&. The set of all \fBmcl\fP siblings (cf\&. \fBmclfamily(7)\fP) is loosely refered to as the mcl family, which makes use of the mcl libraries (rather than the mcx libraries)\&. The full truth is even more horrible, as the mcl/mcx prefix conventions used in the C source code follow still other rules\&. In this document, \&'MCL\&' means \&'the mcl setting\&' or \&'the mcl family\&'\&. An MCL program is one of the programs in the mcl family\&. The remainder of this document contains the following sections\&. .SH Internal representation of matrices in MCL There are several aspects to the way in which MCL represents matrices\&. Internally, indices never act as an ofset in an array, and neither do they participate in ofset computations\&. This means that they purely act as identifiers\&. The upshot is that matrices can be handled in which the index domains are \fInon-sequential\fP (more below)\&. Thus one can work with different graphs and matrices all using subsets of the same set of indices/identifiers\&. This aids in combining data sets in different ways and easily comparing the respective results when experimenting\&. Secondly, only \fInonzero values\fP (and their corresponding indices) are stored\&. Thirdly, MCL stores a matrix as a listing of columns\&. Iterating over a column is trivial; iterating over a row requires a costly transposition computation\&. The last two points should matter little to the user of MCL programs\&. In textbook expositions and in many matrix manipulation implementations, matrices are represented with sequentially indexed rows and columns, with the indices usually starting at either zero or one\&. In the MCL setting, the requirement of sequentiality is dropped, and it follows naturally that no requirement is posed on the first index\&. The only requirement MCL poses on the indices is that they be nonnegative, and can be represented by the integer type used by MCL\&. On many machines, the largest allowable integer will be 2147483647\&. MCL associates two domains with a matrix\ \&\fCM\fP, the row domain and column domain\&. The matrix\ \&\fCM\fP can only have entries\ \&\fCM[i,j]\fP where\ \&\fCi\fP is in the row domain and\ \&\fCj\fP is in the column domain\&. This is vital when specifying a matrix: it is illegal to specify an entry\ \&\fCM[i,j]\fP violating this condition\&. However, it is not necessary to specify \fIall\fP entries\ \&\fCM[i,j]\fP for all possible combinations of\ \&\fCi\fP and\ \&\fCj\fP\&. One needs only specify those entries for which the value is nonzero, and only nonzero values will be stored internally\&. In the MCL matrix format, the matrix domains must be specified explicitly if they are not canonical (more below)\&. \fBStrictly as an aside\fP, the domains primarily exist to ensure data integrity\&. When combining matrices with addition or multiplication (e\&.g\&. using the \fBmcx\fP utility), MCL will happily combine matrices for which the domains do not match, although it will usually issue a warning\&. Conceptually, matrices auto-expand to the dimensions required for the operation\&. Alternatively, a matrix can be viewed as an infinite quadrant, with the domains delimiting the parts in which nonzero entries may exist\&. In the future, facilities could be added to MCL (c\&.q\&. \fBmcx\fP) to allow for placing strict domain requirements on matrices when submitted to binary operations such as addition and multiplication\&. .SH Specifying matrices From here on, all statements about matrices and graphs are really statements about matrices and graphs \fIin the MCL setting\fP\&. The \fIspecification\fP of a matrix quite closely matches the internal representation\&. A matrix M has two domains: the column domain and the row domain\&. Both simply take the form of a set (represented as an ordered list) of indices\&. A \fIcanonical domain\fP is a domain of some size \fCK\fP where the indices are simply the first \fCK\fP nonnegative integers \fC0,1\&.\&.,K-1\fP\&. The domains dictate which nonzero entries are allowed to occur in a matrix; only entries M[i,j] are allowed where i is in the row domain and j is in the column domain\&. The matrix M is specified in three parts, for which the second is optional\&. The parts are: .ZI 2m "Header specification" \& .br This specifies the dimensions K and L of the matrix, where K is the size of the row domain, and L is the size of the column domain\&. It looks as follows: .nf \fC (mclheader mcltype matrix dimensions 9x14 ) .fi \fR This dictates that a matrix will be specified for which the row domain has dimension 9 and the column domain has dimension 14\&. .in -2m .ZI 2m "Domain specification" \& .br The domain specification can have various forms: if nothing is specified, the matrix will have canonical domains and a canonical representation, similar to the representation encountered in textbooks\&. Alternatively, the row and column domains can each be specified separately, and it is also possible to specify only one of them; the other will simply be a canonical domain again\&. Finally, it is possible to declare the two domains identical and specify them simultaneously\&. It is perfectly legal in each case to explicitly specify a canonical domain\&. It is \fIrequired\fP in each case that the number of indices listed in a domain corresponds with the dimension given in the header\&. An example where both a row domain and a column domain are specified: .nf \fC (mclrows 100 200 300 400 500 600 700 800 900 $ ) (mclcols 30 32 34 36 38 40 42 44 46 48 50 52 56 58 $ ) .fi \fR This example combines with the header given above, as the dimensions fit\&. Had the row domain specification been omitted, the row domain would automatically be set to the integers \fC0,1,\&.\&.8\fP\&. Had the column specification been omitted, it would be set to \fC0,1,\&.\&.13\fP\&. Suppose now that the header did specify the dimensions 10x10\&. Because the dimensions are identical, this raises the possibility that the domains be identical\&. A valid way to specify the row domain and column domain in one go is this\&. .nf \fC (mcldoms 11 22 33 44 55 66 77 88 99 100 $ ) .fi \fR .in -2m .ZI 2m "Matrix specification" \& .br The matrix specification starts with the sequence .nf \fC (mclmatrix begin .fi \fR The \&'begin\&' keyword in the \&'(mclmatrix\&' part is followed by a list of listings, where the primary list ranges over all column indices in M (i\&.e\&. indices in the column domain), and where each secondary lists encodes all positive entries in the corresponding column\&. A secondary list (or matrix column) starts with the index c of the column, and then contains a listing of all row entries in c (these are matrix entries M[r,c] for varying r)\&. The entry M[r,c] is specified either as \&'r\&' or as \&'r:f\&', where f is a float\&. In the first case, the entry M[r,c] defaults to 1\&.0, in the second case, it is set to f\&. The secondary list is closed with the \&`$\&' character\&. A full fledged examples thus looks as follows: .nf \fC (mclheader mcltype matrix dimensions 12x3 ) (mclrows 11 22 33 44 55 66 77 88 99 123 456 2147483647 $ ) (mclcols 0 1 2 $ ) (mclmatrix begin 0 44 88 99 456 2147483647 $ 1 11 66 77 123 $ 2 22 33 55 $ ) .fi \fR Note that the column domain is canonical; its specifiation could have been omitted\&. In this example, no values were specified\&. See below for more\&. .in -2m .SH Specifying graphs A graph is simply a matrix where the row domain is the same as the column domain\&. Graphs should have positive entries only\&. Example: .nf \fC (mclheader mcltype matrix dimensions 12x12 ) (mcldoms 11 22 33 44 55 66 77 88 99 123 456 2147483647 $ ) (mclmatrix begin 11 22:2 66:3\&.4 77:3 123:8 $ 22 11:2 33:3\&.8 55:8\&.1 $ 33 22:3\&.8 44:7 55:6\&.2 $ 44 33:7 88:5\&.7 99:7\&.0 456:3 $ 55 22:8\&.1 33:6\&.2 77:2\&.9 88:3\&.0 $ 66 11:3\&.4 123:5\&.1 $ 77 11:3 55:2\&.9 123:1\&.5 $ 88 44:5\&.7 55:3\&.0 99:3\&.0 456:4\&.2 $ 99 44:7\&.0 88:3\&.0 456:1\&.8 2147483647:3\&.9 $ 123 11:8 66:5\&.1 77:1\&.5 $ 456 44:3 88:4\&.2 99:1\&.8 2147483647:6\&.3 $ 2147483647 99:3\&.9 456:6\&.3 $ ) .fi \fR Incidentally, clustering this graph with mcl, using default parameters, yields a cluster that is represented by the 12x3 matrix shown earlier\&. The following example shows the same graph, now represented on a canonical domain, and with all values implicitly set to 1\&.0: .nf \fC (mclheader mcltype matrix dimensions 12x12 ) (mclmatrix begin 0 1 5 6 9 $ 1 0 2 4 $ 2 1 3 4 $ 3 2 7 8 10 $ 4 1 2 6 7 $ 5 0 9 $ 6 0 4 9 $ 7 3 4 8 10 $ 8 3 7 10 11 $ 9 0 5 6 $ 10 3 7 8 11 $ 11 8 10 $ ) .fi \fR \fBAdditional notes\fP .br There are few restrictions on the format that one might actually expect\&. Vectors and entries may occur in any order and need not be sorted\&. Repeated entries and repeated vectors are allowed but are always discarded while an error message is emitted\&. If you want \fIfunctionally interesting behaviour\fP in combining repeated vectors and repeated entries, have a look at the next section and at \fBmcxassemble(1)\fP\&. Within the vector listing, the \&'#\&' is a token that introduces a comment until the end of line\&. .SH Raw format A file in \fIraw format\fP is simply a listing of vectors without any sectioning structure\&. No header specification, no domain specification, and no matrix introduction syntax is used - these are supplied to the processing application by other means\&. The end-of-vector token \&'$\&' must still be used, and the comment token \&'#\&' is still valid\&. \fBmcxassemble(1)\fP imports a file in raw format, creates a native matrix from the data therein, and writes the matrix to (a different) file\&. It allows customizable behaviour in how to combine repeated entries and repeated vectors\&. This is typically used in the following procedure\&. A) Do a one-pass-parse on some external cooccurrence file/format, generate raw data during the parse and write it to file (without needing to build a huge data structure in memory)\&. B) mcxassemble takes the raw data and assembles it according to instruction into a native mcl matrix\&. .SH Tab format / label information Several mcl programs accept options such as \fB-tab\fP, \fB-tabc\fP, \fB-tabr\fP, \fB-use-tab\fP, \fB-strict-tab\fP, and \fB-extend-tab\fP\&. The argument to these options is invariably the name of a so-called \fItab file\fP\&. Tab files are used to convert between labels (describing entities in the data) and indices as used in the mcl matrix format\&. In a tab file each line starts with a unique number which presumably corresponds to an index used in a matrix file\&. The rest of the line contains a descriptive string associated with the number\&. It is required that each string is unique, although not all mcl programs enforce this at the time of writing\&. The string may contain spaces\&. Lines starting with \fC#\fP are considered comment and are disregarded\&. \fBTab domain\fP .br The ordered set of indices found in the tab file is called the \fItab domain\fP\&. Tab files are almost always employed in conjunction with an mcl matrix file\&. \fBmcxdump(1)\fP and \fBclmformat(1)\fP require by default that the tab domain coincides with the matrix domain (either row or column or both) to which they will be applied\&. This can be relaxed for either by supplying the \fB--lazy-tab\fP option\&. mcl provides explicit modes for dealing with tab structures by means of the \fB-extend-tab\fP, \fB-restrict-tab\fP and \fB-strict-tab\fP options\&. Refer to the \fBmcl(1)\fP documentation\&. .SH Label input Label input is a line based input where two nodes and an optional value are specified on each line\&. The nodes should be specified by labels\&. If the labels contain spaces they should be separated by tabs (and the value if present should be separated from the second label by a tab as well)\&. The parse code will assume tab-separated labels if it sees a tab character in the input, otherwise it will split the input on any kind of whitespace\&. Any line where the first non-whitespace character is the octothorp (#) is ignored\&. The following is an example of label input\&. .di ZV .in 0 .nf \fC ---8<------8<------8<------8<------8<--- # the cat and the hat example cat hat 0\&.2 hat bat 0\&.16 bat cat 1\&.0 bat bit 0\&.125 bit fit 0\&.25 fit hit 0\&.5 hit bit 0\&.16 --->8------>8------>8------>8------>8--- .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR \fBmcl(1)\fP can read in label input and cluster it when it is given the \fB--abc\fP option\&. It can optionally save the input graph in native format and save the label information in a tab file with the \fB-save-graph\fP and \fB-save-tab\fP options\&. Refer to the \fBMCL getting started\fP and \fBMCL manual examples\fP sections for more information on how MCL deals with label input\&. \fBmcxload(1)\fP is a general purpose program for reading in label data and other stream formats\&. It encodes them in native mcl format and tab files\&. It allows intermediate transformations on the values\&. .SH Transformation syntax \fBmcl(1)\fP, \fBmcxload(1)\fP, \fBmcxsubs(1)\fP, \fBmcxassemble(1)\fP and \fBmcxalter(1)\fP all accept the same transformation language in their respective \fBtf\fP-type options and mcxsub\&'s \fBval\fP specification\&. A statement in this language is simply a comma-separated list of functions accepting a single numerical value\&. The syntax of a function invocation in general is \fBfunc\fP(\fIarg\fP)\&. The functions \fBexp\fP, \fBlog\fP, \fBneglog\fP can also be given an empty parameter list, indicating that \fIe\fP is taken as the exponent base\&. In this case, the invocation looks like \fBfunc\fP()\&. Functions with names that start with \fC#\fP operate on graphs in their entirety\&. For example, \fC#knn(50)\fP indicates the k-Nearest Neighbour transformation for \fCk=50\fP\&. All other names encode functions that operate directly on edges\&. Functions with names that start with \fC#arc\fP operate on directed graphs and yield directed graphs\&. Most of the other \fC#\fP functions either expect an undirected graph (such as \fC#knn()\fP) or yield an undirected graph (such as \fC#add()\fP and \fC#max()\fP\&. The following are supported\&. .ZI 9m "lt" Filter out values greater than or equal to arg\&. .in -9m .ZI 9m "lq" Filter out values greater than arg\&. .in -9m .ZI 9m "gq" Filter out values less than arg\&. .in -9m .ZI 9m "gt" Filter out values less than or equal to arg\&. .in -9m .ZI 9m "ceil" Set everything higher than arg to arg\&. .in -9m .ZI 9m "floor" Set everything lower than arg to arg\&. .in -9m .ZI 9m "mul" Multiply by arg\&. .in -9m .ZI 9m "add" Add arg to it\&. .in -9m .ZI 9m "power" Raise to power arg\&. .in -9m .ZI 9m "exp" Raise arg (\fIe\fP if omitted) to value\&. .in -9m .ZI 9m "log" Take log in base arg (\fIe\fP if omitted)\&. .in -9m .ZI 9m "neglog" Take minus log in base arg (\fIe\fP if omitted)\&. .in -9m .ZI 9m "#knn" k-Nearest Neighbour reduction with \fCk=arg\fP\&. .in -9m .ZI 9m "#ceilnb" Cap neighbours at arg at most\&. .in -9m .ZI 9m "#mcl" Cluster with inflation=arg, use induced graph\&. .in -9m .ZI 9m "#add" Convert two arcs to one edge using addition\&. .in -9m .ZI 9m "#min" Convert two arcs to one edge using minimum\&. .in -9m .ZI 9m "#max" Convert two arcs to one edge using maximum\&. .in -9m .ZI 9m "#mul" Convert two arcs to one edge using multiplication\&. .in -9m .ZI 9m "#rev" Encode graph in reverse direction\&. .in -9m .ZI 9m "#tp" Same as above in matrix speak (\fIt\fPrans\fIp\fPose)\&. .in -9m .ZI 9m "#tug" Perturb edge weights with factor arg\&. .in -9m .ZI 9m "#shrug" Randomly perturb edge weights with factor arg\&. .in -9m .ZI 9m "#step" Use the k-step relation, where \fCk=arg\fP\&. .in -9m .ZI 9m "#thread" Set thread pool size to arg\&. .in -9m .ZI 9m "#arcmax" Only keep largest arc between two nodes\&. .in -9m .ZI 9m "#arcsub" Replace G by G - G^T\&. .in -9m .ZI 9m "#arcmcl" As \fC#mcl\fP, use symmetrised graph for clustering\&. .in -9m \fBNOTE\fP .br \fBmcl(1)\fP accepts \fB--abc-neg-log\fP and \fB--abc-neg-log10\fP to specify log transformations\&. Similarly, \fBmcxload(1)\fP accepts \fB--stream-log\fP, \fB--stream-neg-log\fP, and \fB--stream-neg-log10\fP\&. The reason is that probabilities are sometimes encoded below the precision dictated by the IEEE (32 bit) float specification\&. This poses a problem as the mcl applications encode values by default as floats, and the transformation specifications are always applied to the mcl encoding\&. The options just mentioned are applied after a value has been read from an input stream and \fIbefore\fP it is converted to the native encoding\&. .SH SEE ALSO \fBmcxassemble(1)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. .SH AUTHOR Stijn van Dongen\&. mcl-12-135/doc/mcxctty.html0000644000402500021140000002431711754271044012433 00000000000000 The mcx ctty manual

14 May 2012    mcx ctty 12-135

NAME

mcx ctty — compute betweenness centrality for network nodes

SYNOPSIS

mcx ctty [options] [matrix-file]

mcxctty is not in actual fact a program. This manual page documents the behaviour and options of the mcx program when invoked in mode ctty. The options -h, --apropos, --version, -set, --nop, -progress <num> are accessible in all mcx modes. They are described in the mcx manual page.

mcx ctty [-abc <fname> (specify label input)] [-imx <fname> (specify matrix input)] [-extent <int> (only consider paths of length at most <int>)] [-o <fname> (output file name)] [-tab <fname> (use tab file)] [-t <int> (use <int> threads)] [-J <intJ> (a total of <intJ> jobs are used)] [-j <intj> (this job has index <intj>)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

mcx ctty computes betweenness centrality for all nodes in a graph, using the between centrality update algorithm from [1].

The input graph/matrix, if specified with the -imx option, has to be in mcl matrix/graph format. You can use label input instead by using the -abc option. Refer to mcxio for a description of these two input formats. By default mcx diameter reads from STDIN and expects matrix format. To specify label input from STDIN use -abc -.

OPTIONS

-abc <fname> (label input)

The file name for input that is in label format.

 
-imx <fname> (input matrix)

The file name for input. STDIN is assumed if not specified.

 
-o <fname> (output file name)

The name of the file to write output to.

 
-extent <int> (only consider paths of length at most <int>)

This option will lead to different results. Results will still be informative however, being representative for the local context in which nodes reside. It does probably not make sense to use values smaller than four or five.

 
-tab <fname> (use tab file)

This option causes the output to be printed with the labels found in the tab file. With -abc this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with -imx the tab domain and the matrix domain are required to be identical.

 
-t <int> (use <int> threads)
-J <intJ> (a total of <intJ> jobs are used)
-j <intj> (this job has index <intj>)

Computing centrality scores in a graph is time-intensive. If you have multiple CPUs available consider using as many threads. Additionally it is possible to spread the computation over multiple jobs/machines. Conceptually, each job takes a number of threads from the total thread pool. If job control is used (the -J option is used) then the number of jobs should not exceed the number of threads. The total number of threads divided by the total number of jobs defines the number of threads that will be used by the current job. Additionally, the number of threads specified signifies the total added amount of all threads across all machines and must be the same for all jobs. This number is used by each job to infer its own set of tasks. The following set of options, if given to as many commands, defines three jobs, each running four threads.

-t 12 -G 3 -g 0 -t 12 -G 3 -g 1 -t 12 -G 3 -g 2

REFERENCES

[1] Ulrik Brandes, A Faster Algorithm for Betweenness Centrality. Journal of Mathematical Sociology 25(2): 163-177, (2001). http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.11.2024

SEE ALSO

mcxio, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcxctty.azm0000644000402500021140000001006111705602513012240 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcx ctty} {html_title}{The mcx ctty manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcx ctty}{compute betweenness centrality for network nodes} \sec{synopsis}{SYNOPSIS} \par{ \mcx{ctty} [options] [matrix-file]} \disclaim_mcx{ctty} \par{ \mcx{ctty} \synoptopt{-abc}{}{specify label input} \synoptopt{-imx}{}{specify matrix input} \synoptopt{-extent}{}{only consider paths of length at most } \synoptopt{-o}{}{output file name} \synoptopt{-tab}{}{use tab file} \synoptopt{-t}{}{use threads} \synoptopt{-J}{}{a total of jobs are used} \synoptopt{-j}{}{this job has index } \stdsynopt } \sec{description}{DESCRIPTION} \par{ \mcx{ctty} computes betweenness centrality for all nodes in a graph, using the between centrality update algorithm from \refer{fabc}. } \par{ The input graph/matrix, if specified with the \genopt{-imx} option, has to be in mcl matrix/graph format. You can use label input instead by using the \genopt{-abc} option. Refer to \mysib{mcxio} for a description of these two input formats. By default \mcx{diameter} reads from STDIN \it{and expects matrix format}. To specify label input from STDIN use \useopt{-abc}{-}.} \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-abc}{}{label input}} \car{ The file name for input that is in label format.} \item{\defopt{-imx}{}{input matrix}} \car{ The file name for input. STDIN is assumed if not specified.} \item{\defopt{-o}{}{output file name}} \car{ The name of the file to write output to. } \item{\defopt{-extent}{}{only consider paths of length at most }} \car{ This option will lead to different results. Results will still be informative however, being representative for the local context in which nodes reside. It does probably not make sense to use values smaller than four or five. } \item{\defopt{-tab}{}{use tab file}} \car{ This option causes the output to be printed with the labels found in the tab file. With \genopt{-abc} this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with \genopt{-imx} the tab domain and the matrix domain are required to be identical. } \items{ {\defopt{-t}{}{use threads}} {\defopt{-J}{}{a total of jobs are used}} {\defopt{-j}{}{this job has index }} } \car{ Computing centrality scores in a graph is time-intensive. If you have multiple CPUs available consider using as many threads. Additionally it is possible to spread the computation over multiple jobs/machines. Conceptually, each job takes a number of threads from the total thread pool. If job control is used (the \genopt{-J} option is used) then the number of jobs should not exceed the number of threads. The total number of threads divided by the total number of jobs defines the number of threads that will be used by the current job. Additionally, the number of threads specified signifies the total added amount of all threads across all machines and \it{must} be the same for all jobs. This number is used by each job to infer its own set of tasks. The following set of options, if given to as many commands, defines three jobs, each running four threads. } \verbatim{-t 12 -G 3 -g 0 -t 12 -G 3 -g 1 -t 12 -G 3 -g 2} \stddefopt \end{itemize} \sec{references}{REFERENCES} \par{ \reference{fabc} Ulrik Brandes, \it{A Faster Algorithm for Betweenness Centrality}. Journal of Mathematical Sociology 25(2): 163-177, (2001). \httpref{http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.11.2024} } \sec{seealso}{SEE ALSO} \par{ \mysib{mcxio}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \end{pud::man} mcl-12-135/doc/mcxdiameter.azm0000644000402500021140000001030511322637753013061 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcx diameter} {html_title}{The mcx diameter manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcx diameter}{compute the diameter of a graph} \sec{synopsis}{SYNOPSIS} \par{ \mcx{diameter} [options]} \disclaim_mcx{diameter} \par{ \mcx{diameter} \synoptopt{-abc}{}{specify label input} \synoptopt{-imx}{}{specify matrix input} \synoptopt{-o}{}{output file name} \synoptopt{-tab}{}{use tab file} \synoptopt{-t}{}{use threads} \synoptopt{-J}{}{a total of jobs are used} \synoptopt{-j}{}{this job has index } \synoptopt{--summary}{output diameter and average shortest path length} \synoptopt{--list}{list eccentricity for all nodes} \stdsynopt } \sec{description}{DESCRIPTION} \par{ \mcx{diameter} computes the diameter of a graph. The input graph should be symmetric. Results will be unpredictable for directed graphs. For label input this is irrelevant as \mcx{diameter} will create a symmetric graph from the input.} \par{ The input graph/matrix, if specified with the \genopt{-imx} option, has to be in mcl matrix/graph format. You can use label input instead by using the \genopt{-abc} option. Refer to \mysib{mcxio} for a description of these two input formats. By default \mcx{diameter} reads from STDIN \it{and expects matrix format}. To specify label input from STDIN use \useopt{-abc}{-}.} \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-abc}{}{label input}} \car{ The file name for input that is in label format.} \item{\defopt{-imx}{}{input matrix}} \car{ The file name for input that is in mcl native matrix format.} \item{\defopt{-o}{}{output file name}} \car{ The name of the file to write output to. } \item{\defopt{-tab}{}{use tab file}} \car{ This option causes the output to be printed with the labels found in the tab file. With \genopt{-abc} this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with \genopt{-imx} the tab domain and the matrix domain are required to be identical. } \items{ {\defopt{-t}{}{use threads}} {\defopt{-J}{}{a total of jobs are used}} {\defopt{-j}{}{this job has index }} } \car{ Computing the diameter of a graph is time-intensive. If you have multiple CPUs available consider using as many threads. Additionally it is possible to spread the computation over multiple jobs/machines. Conceptually, each job takes a number of threads from the total thread pool. If job control is used (the \genopt{-J} option is used) then the number of jobs should not exceed the number of threads. The total number of threads divided by the total number of jobs defines the number of threads that will be used by the current job. Additionally, the number of threads specified signifies the total added amount of all threads across all machines and \it{must} be the same for all jobs. This number is used by each job to infer its own set of tasks. The following set of options, if given to as many commands, defines three jobs, each running four threads. } \verbatim{-t 12 -G 3 -g 0 -t 12 -G 3 -g 1 -t 12 -G 3 -g 2} \items{ {\defopt{--list}{list eccentricity for all nodes}} {\defopt{--summary}{output diameter and average eccentricity}} } \car{ The default mode is \genopt{--list}, which results in output of the eccentricity of all nodes. The eccentricity of a node is the distance to any node that is the furthest away from it. The diameter of a graph is the maximum of the eccentricity taken over all nodes in a graph. In this mode \mcx{diameter} will not output the diameter itself. Use \genopt{--summary} to output just the diameter and the average eccentricity. } \end{itemize} \sec{seealso}{SEE ALSO} \par{ \mysib{mcxio}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \end{pud::man} mcl-12-135/doc/tingea.log.azm0000644000402500021140000001326511322637753012616 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{tingea.log} {html_title}{How to set the Tingea log parameters} {author}{Stijn van Dongen} {section}{7} {synstyle}{long} {defstyle}{long} \man_share } \sec{*}{name}{NAME} \NAME{tingea.log}{How to set the Tingea log parameters} \sec{description}{DESCRIPTION} \car{ The Tingea logging framework is part of the Tingea library. In this context logging means that a pgrogram issues statements about what it is doing. It can do so for different purposes and at different levels of verbosity. By default logging statements are written on STDERR.} \par{ Tingea logging provides a quick and easy way for programmers to associate verbosity levels with logging statements. Only logging statements for which the verbosity level does not exceed the user-imposed threshold will be executed. Users can easily regulate the verbosity level by setting the environment variable TINGEA_LOG_TAG. Alternatively, programs may accept a command line argument. The format accepted by both environment variable and command line argument is identical. For the command line the programmer is free in choosing the option name. It is customarily named \genopt{-q}. The availability of such an option may vary from program to program. However, any program that makes use of the Tingea logging facilities can be regulated with the TINGEA_LOG_TAG environment variable. If a \genopt{-q} type option is present and the environment variable is set, then the environment variable is interpreted first followed by the \genopt{-q} argument.} \par{ Tingea logging allows a programmer to assign categories to logging statements. The categories FUNCTION and DATA have a subdivision ranging from fine-grained to coarse-grained. The categorie MONITORING has a subdivision ranging from low priority to high priority. The other categories are unimodal. These are IO, THREAD, PROCESS, and GAUGE. Three unspecified unimodal categories are SLOT1, SLOT2, and SLOT3. They can be used to encode program-specific semantics.} \par{ The programmer may assign multiple categories to a single logging statement. It is unusual for more than two categories to be specified. For example, IO and DATA at the LIST level may be combined to indicate a logging statement that provides data summaries for a certain IO related information. In order of granularity the DATA levels are CELL, LIST, and AGGREGRATE. If the user accepts IO logging and accepts DATA logging at level CELL or LIST the statement will be executed. If no IO logging is accepted or DATA logging is only accepted at the AGGREGRATE level, the statement will be skipped.} \par{ By default, all categories that are specified by the programmer need to pass the threshold specified by the user for that category. The user may relax this requirement so that only one category needs to pass the user threshold. In the above example, the statement categorized as both IO and DATA at LIST level will be accepted if the user specifies IO and DATA at AGGR level with OR semantics.} \sec{syntax}{SYNTAX} \car{ The syntax of the TINGEA_LOG_TAG environment variable is described by} \verbatim{\:/ [[189x]]{<[dfgimpstABC][1-9]>*,[V]}} \car{ which translates to the following. An optional lead tag is followed by a concatenation of units. A unit is either a pair in \v{[dfgimpstABC] x [1-9x]} or the single character \v{V}. The leading tag semantics are described further below. The single character \v{V}, if present, specifies that OR semantics should be used rather than the default AND semantics. The semantics for the other units are given below.} \verbatim{\:/ d DATA 1 CELL 2 LIST 3 AGGR x turned off f FUNCTION 1 LINE 2 FUNCTION 3 MODULE 4 APPLICATION x turned off m MONITORING 1 DEBUG 2 INFO 3 WARNING 4 ERROR 5 PANIC x turned off g GAUGE | i IO | n NETWORK | p PROCESS | (Inter Process really) t THREAD |______ 1 on | x off A SLOT1 | B SLOT2 | C SLOT3 |} \car{ The leading tag can be used to set levels for all categories at once. Subsequent units may then alter this intial setting. The lead tag settings and their meaning are these:} \verbatim{\:/ 1 d1f1m1g1i1p1s1t1A1B1C1 # very yappy 9 d3f4m5gxixpxsxtxAxBxCx # very terse, only d f m 8 d3f4m5g1i1p1s1t1A1B1C1 # less terse x dxfxmxgxixpxsxtxAxBxCx # silent} \car{ All categories accept values between \v{1} and \v{9} in addition to the value \v{x}. As seen above, only a few categories contain more than one level and no category contains more than five levels. The rule is that if a level exceeds the maximul level available for a category it is simply interpreted as the maximum level.} \par{ The GAUGE category, if set, indicates that a program may write line based progress bars or other output in which a single line is accumulated over multiple statements. This implies that a single GAUGE logging statement may not result in newline-terminated output. This is undesirable in case the logging stream is directed to a file that is written to by other applications as well. In that case, turn off GAUGE. All other categories are garantueed to result in line-terminated output, by virtue of the programmer contract.} \sec{author}{AUTHOR} \car{ Stijn van Dongen.} \end{pud::man} mcl-12-135/doc/mcxconvert.azm0000644000402500021140000000617611322637753012762 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcx convert} {html_title}{The mcx convert manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcx convert}{convert between mcx storage types} \sec{synopsis}{SYNOPSIS} \par{ \mcx{convert} \| \mcx{convert} [--write-binary] --cone-to-stack \| \mcx{convert} [--write-binary] --stack-to-cone } \disclaim_mcx{convert} \par{ \mcx{convert} \synoptopt{--cone-to-stack}{transform cone file to stack file} \synoptopt{--stack-to-cone}{transform stack file to cone file} \synoptopt{--write-binary}{output native binary format} \synoptopt{--cat}{read and write cat format} \synoptopt{-cat-max}{}{limit the stack conversion to matrices} } \par{ In the two-argument invocation without additional arguments, \mcx{convert} converts from the format found in the first file to the other format, i.e. from native interchange to native binary format or the other way around. When querying with the \genopt{-q} option, mcx{convert} will output a one-line synopsis describing the matrix in the argument. The \genopt{--cone-to-stack} and \genopt{--stack-to-cone} options convert between the two types of concatenated output provided by \mclcm. } \sec{description}{DESCRIPTION} \par{ The \mcl libraries make extensive use of matrices. Matrices are used to encode graphs, matrices and clusterings. They can be stored either in interchange or in binary format. The latter is somewhat more efficient in storage and much faster in both reading and writing, but the default is interchange format. } \par{ The \mcl input routines recognize the type of storage they are dealing with. If you want to convert a matrix to the other storage type, simply specify the file name of the matrix you want to convert. \mcx{convert} will recognize its type, and write the other type to the file specified as the second argument. } \sec{options}{OPTIONS} \'begin{itemize}{\mcx_itemopts} \item{\defopt{--cone-to-stack}{transform cone file to stack file}} \car{ This option requires two trailing options, the names of respectively the source cone file and the target stack file.} \item{\defopt{--stack-to-cone}{transform stack file to cone file}} \car{ This option requires two trailing options, the names of respectively the source stack file and the target cone file.} \item{\defopt{--cat}{read and write cat format}} \item{\defopt{-cat-max}{}{limit the stack conversion to matrices}} \item{\defopt{--write-binary}{output native binary format}} \car{ This option is only useful with either of the options \genoptref{--cone-to-stack}, \genoptref{--stack-to-cone}, or \genoptref{--cat}. } \'end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mcxio}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/mclcm.azm0000644000402500021140000002736711700574642011667 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mclcm} {html_title}{The mclcm manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \""{ mclcm -stem mclI4I2 -a "-I 2" -- "-I 4" mclcm -stem mclI5I3 -a "-I 3" -- "-I 5" mclcm -stem mclI5shI3 -a "-I 3" -- "-I 5 --shadow=vl" mclcm -stem mclI8I5 -a "-I 5" -- "-I 8 --shadow=vl" mclcm -stem mclI8shpi5I5 -a "-I 5" -- "-I 8 --shadow=vl -ph 5" -b1 "" mclcm -stem mclI4I2 -a "-I 2" -- "-I 4 --shadow=vl" # etc .. } \sec{name}{NAME} \NAME{mclcm}{hierarchical clustering of graphs with mcl} \sec{synopsis}{SYNOPSIS} \par{\mclcm <-|fname> [mclcm-options] [-- "mcl options"*]} \verbatim{\:/ \mclcm <-|fname> -a "-I 4 --shadow=vl" \mclcm <-|fname> -a "-I 3" -- "-I 5" \mclcm <-|fname> -a "-I 3" -b1 "" -- "-ph 3 --shadow=vl -I 5"} \par{ \mclcm <-fname> \synoptopt{--contract}{contraction mode} \synoptopt{--dispatch}{dispatch mode} \synoptopt{--integrate}{integrate mode} \synoptopt{--subcluster}{subcluster mode} \synoptopt{-a}{}{shared mcl options} \synoptopt{-b1}{}{dedicated base 1 mcl options} \synoptopt{-b2}{}{dedicated base 2 mcl options} \shared_synoptopt{-tf} \synoptopt{-c}{}{input clustering} \synoptopt{-n}{}{iteration limit} \synoptopt{--root}{ensure universe root clustering} \synoptopt{-cone}{}{nested cluster stack file} \synoptopt{-stack}{}{expanded cluster stack file} \synoptopt{-coarse}{}{coarsened graphs file} \synoptopt{-write}{stack,cone,coarse,steps} \synoptopt{-write-base}{}{write base matrix} \synoptopt{-stem}{}{prefix for all outputs} \synoptkvp{--mplex}{y/n}{write clusterings separately} \synoptopt{-annot}{str}{dummy annotation option} \stdsynopt \synoptopt{-q}{spec}{log levels} \synoptopt{-z}{show default shared options} [-- "mcl options"*] } \sec{description}{DESCRIPTION} \par{ The mclcm options may be followed by a number of trailing arguments. The trailing arguments should be separated from the mclcm options by the separator \v{--}. Normally each trailing argument should consist of a set of zero, one, or more mcl arguments enclosed in quotes or double quotes to group them together. These arguments are passed to the successive stages of hierarchical clustering. They are combined with the default options. If an option is specified both in the default options list and in a trailing options list the latter specification overrides the former. When the \genopt{--integrate} option is specified the trailing arguments must be names of files containing mcl clusterings; see further below. \mclcm has four major modes of operation, namely \it{contraction} (default), \it{integration}, \it{dispatch}, and \it{subcluster}. Each mode is described a little below. Note though that \it{dispatch} mode is not the best mode to use for hierarchical clustering. It is mostly useful to generate multiple mcl clusterings in a single run. } \par{ In all modes \mclcm will generate a file, by default called \it{mcl.cone}. This is a representation of a hierarchical clustering that is particular to mcl. It can be converted to \it{newick} format like this: } \verbatim{\:/ mcxdump -imx-tree mcl.cone --newick -o NEWICKFILE OR mcxdump -imx-tree mcl.cone --newick -o NEWICKFILE -tab TABFILE} \par{ In the last example, TABFILE should be a file containing a mapping from mcl labels to application labels. Refer to \mysib{mcxio} for more information about tab files and mcl input/ouput formats. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{--contract}{repeated contraction mode}} \car{ This is the default mode of operation. At each successive step of constructing the hierarchy on top of the first level mcl clustering, mclcm uses a matrix derived from the input matrix and the last computed clustering to compute a contracted graph. The contracted graph is a graph where the nodes represent the clusters of the last clustering. The matrix derived from the input graph that is used to construct the contracted graph is called the \it{base matrix}. The base matrix can be either the \it{start matrix} or the \it{expansion matrix}. The \it{start matrix} is the input matrix after transformations have been applied to it (if any). The \it{expansion matrix} is the first expanded matrix of some mcl process applied to the input graph. } \par{ By default the base matrix is constructed from either the start matrix or the expansion matrix obtained from the first mcl process. It is possible to use a start matrix derived from special purpose mcl transformation parameters (such as \genopt{-ph} and \genopt{-tf}) or an expansion matrix derived from a special purpose mcl process. The \genopt{-b1} and \genopt{-b2} parameters provide the interfaces to this functionality.} \par{ You are advised to start with a high inflation value for the input graph and to use shadowing, e.g. include \v{--shadow=vl} in the \genopt{-a} argument. This generally leads to hierarchies that are better balanced. Shadowing is a transformation where nodes are added to the graph, preventing relatively distant nodes from unwanted chaining. For more information refer to the \mcl manual. The invocations in \secref{synopsis} are a good starting point.} \item{\defopt{--dispatch}{different mcl processes}} \car{ In this mode each trailing argument is specified as a set of options to pass to an mcl process. For each trailing argument an mcl process is thus computed. The set of resulting clusterings is integrated into a hierarchy. } \item{\defopt{--integrate}{existing clusterings}} \car{ This mode is similar to \it{dispatch} mode. The difference is that with this option mclcm simply integrates a set of already existing clusterings. Each trailing argument must be the name of a file containing a clustering. The set of clusterings thus specified is integrated into a hierarchy. } \item{\defopt{--subcluster}{repeated sub-clustering}} \car{ In this mode each trailing argument specifies a set of options to pass to an mcl process. The second clustering process is applied to the graph of components induced by the first clustering, resulting in a further subdivision of the first clustering. This approach is repeated with each further trailing argument. With this approach, the first clustering will be the most coarse clustering. Hence, subsequent trailing arguments will typically specify increasingly higher inflation values, pre-inflation values, and optionally more stringent transformation parameters in order to achieve further subdivsions. } \item{\defopt{-a}{}{shared mcl options}} \car{ Use this to change and/or set the default mcl options for all iterations. Use quotes if necessary. Example of usage: -a "-I 5".} \item{\defopt{-b1}{}{dedicated base 1 mcl options}} \car{ This will apply the mcl options \genarg{opts} to the input matrix. The resulting start matrix is used as the base matrix for constructing contracted graphs.} \item{\defopt{-b2}{}{dedicated base 2 mcl options}} \car{ This will apply the mcl options \genarg{opts} to the input matrix and compute the first iterand of the corresponding mcl process. The first iterand, aka the expansion matrix, is used as the base matrix for constructing contracted graphs.} \shared_itemopt{-tf} \car{\shared_defopt{-tf}} \item{\defopt{-c}{}{input clustering}} \car{ The hierarchical clustering process will be kicked off by the clustering found in \genarg{}.} \item{\defopt{-n}{}{iteration limit}} \car{ This puts an upper bound to the number of contractions that will be performed.} \item{\defopt{--root}{ensure universe root clustering}} \car{ In case the graph consists of different connected components, the last clustering computed by the mclcm process will correspond with those connected components. This option simply adds an artificial clustering where all nodes have been joined into a single cluster.} \item{\defopt{-cone}{}{nested cluster stack file}} \car{ File to write the nested cluster stack to. The nested cluster stack contains a sequence of clusterings, each written as an MCL matrix. The first (bottom) clustering is a clustering of the nodes in the input graph. Each subsequent clustering is a clustering where the nodes are the clusters of the previous clustering. \mcxdump can dump this format if the file name is given as the \genopt{-imx-stack} option. The explanation for the cone/stack discrepancy is simple. To mcxdump the contents are simply a stack of matrices. It does not care whether the stack is cone shaped, cylindrical, or yet another shape.} \item{\defopt{-stack}{}{expanded cluster stack file}} \car{ File to write the expanded cluster stack to. The expanded cluster stack is similar to the nested cluster stack except that each cluster lists all the nodes in the input graph it contains. \mcxdump can dump this format if the file name is given as the \genopt{-imx-stack} option.} \item{\defopt{-coarse}{}{coarsened graphs file}} \car{ File to write the sequence of coarsened graphs to. Each clustering induces a coarsened graph where the nodes represent the clusters and an edge between two nodes represents the connectivity between the corresponding two clusters. The computation of this connectivity takes into account all edges between the two clusters in in the original graph.} \item{\defopt{-write}{}{select output modes}} \car{ Use this option to explicitly specify all of the output types you want written in a comma-separated string. \genarg{} may contain any of the strings \it{stack}, \it{cone}, \it{coarse}, \it{steps}. The current default is to write all of these except \it{coarse}. The latter dumps the intermediate coarsened (aka contracted) graphs to a single file. } \item{\defopt{-write-base}{}{write base matrix}} \car{ Write the base matrix to file. This can be useful for debugging expectations. } \item{\defopt{-stem}{}{prefix for all outputs}} \car{ All output files share the same prefix. The default is \v{mcl} and can be changed with this option.} \item{\defkvp{--mplex}{y/n}{write clusterings separately}} \car{ If turned on each clustering is written in a separate file. The first clustering is written to the file \genarg{}.3 where \genarg{} is determined by the \genopt{-stem} option. For each subsequent clustering the index is incremented by two, so clusterings are written to files for which the name ends with an odd index.} \item{\defopt{-annot}{str}{dummy annotation option}} \car{ \mclcm writes the command line with which it was invoked to the output file (either of the \it{cone} or \it{stack} files). Use this option to include any additional information. mclcm does nothing with this option except copying it as just described. } \item{\defopt{-q}{spec}{log levels}} \car{ Set the quiet level. Read \mysib{tingea.log} for syntax and semantics.} \item{\defopt{-z}{show default shared options}} \car{ Show the default mcl options. These are used for each mcl invocation as successively applied to the input graph and succeeding contracted graphs.} \stddefopt \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/clmvol.10000644000402500021140000000450111754271042011417 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm vol" 1 "14 May 2012" "clm vol 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm vol \- compute volatile nodes from a set of clusterings clmvol is not in actual fact a program\&. This manual page documents the behaviour and options of the clm program when invoked in mode \fIvol\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP are accessible in all \fBclm\fP modes\&. They are described in the \fBclm\fP manual page\&. .SH SYNOPSIS \fBclm vol\fP \fB[-fraction\fP num (\fInff factor\fP)\fB]\fP \fB[-o\fP fname (\fIoutput file\fP)\fB]\fP + .SH DESCRIPTION \fBclm vol\fP computes a score for each node, which at a minimum is equal to one\&. The output is in the form of a matrix containing a single column\&. The score correlates with what is deemed to be volatile behaviour\&. For all pairs of clusterings the set of all intersections is computed, and these are considered in turn\&. An intersection is deemed to be volatile if the size of the intersection is less than half the size of the smallest of the two clusters\&. In that case, for each node in the intersection its volatility score is incremented by one over the size of the intersection\&. The size comparison can be made more stringent by increasing the \fB-fraction\fP\ \&\fI\fP option, which is by default set to \fC0\&.5\fP\&. Volatility occurs if the size of the intersection is less than \fB\fP times the size of the smallest cluster\&. If the \fB-fraction\fP value is increased all the way up to 1\&.0, the implication is that an intersection is considered volatile unless one of the two clusteres considered is a subset of the other\&. .SH AUTHOR Stijn van Dongen\&. .SH OPTIONS .ZI 2m "\fB-fraction\fP num (\fInff factor\fP)" \& .br See the discussion at \fBDESCRIPTION\fP\&. .in -2m .ZI 2m "\fB-o\fP fname (\fIoutput file\fP)" \& .br .in -2m .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/tingea.log.ps0000644000402500021140000004704011754271046012445 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:18 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 137.205 <74696e6765612e6c6f67283729204d495343454c4c414e454f5553>20 48 R <74696e6765612e6c6f67283729>142.205 E/F1 10.95/Times-Bold@0 SF -.219 <4e41>20 84 S<4d45>.219 E F0<74696e6765612e6c6f6720ad20486f>100 96 Q 2.5 <7774>-.25 G 2.5<6f73>-2.5 G<6574207468652054>-2.5 E <696e676561206c6f6720706172616d6574657273>-.35 E F1 <4445534352495054494f4e>20 112.8 Q F0 .093<5468652054>100 124.8 R .093 <696e676561206c6f6767696e67206672616d65>-.35 F -.1<776f>-.25 G .093 <726b2069732070617274206f66207468652054>.1 F .092 <696e676561206c6962726172792e>-.35 F .092<496e207468697320636f6e7465> 5.092 F .092<7874206c6f6767696e67206d65616e7320746861742061>-.15 F .292< 7067726f6772616d206973737565732073746174656d656e74732061626f757420776861 7420697420697320646f696e672e2049742063616e20646f20736f20666f7220646966> 100 136.8 R .293<666572656e7420707572706f73657320616e64206174206469662d> -.25 F<666572656e74206c65>100 148.8 Q -.15<7665>-.25 G<6c73206f662076> .15 E<6572626f736974792e20427920646566>-.15 E<61756c74206c6f6767696e6720 73746174656d656e747320617265207772697474656e206f6e205354444552522e>-.1 E -.35<5469>100 172.8 S 1.457<6e676561206c6f6767696e672070726f>.35 F 1.457 <7669646573206120717569636b20616e6420656173792077>-.15 F 1.457 <617920666f722070726f6772616d6d65727320746f206173736f63696174652076>-.1 F 1.456<6572626f73697479206c65>-.15 F -.15<7665>-.25 G<6c73>.15 E .308 <77697468206c6f6767696e672073746174656d656e74732e>100 184.8 R .308<4f6e 6c79206c6f6767696e672073746174656d656e747320666f722077686963682074686520 76>5.308 F .309<6572626f73697479206c65>-.15 F -.15<7665>-.25 G 2.809 <6c64>.15 G .309<6f6573206e6f742065>-2.809 F<7863656564>-.15 E 1.29 <7468652075736572>100 196.8 R 1.29 <2d696d706f736564207468726573686f6c642077696c6c2062652065>-.2 F -.15 <7865>-.15 G 3.79<63757465642e205573657273>.15 F 1.29 <63616e20656173696c79207265>3.79 F 1.29<67756c617465207468652076>-.15 F 1.29<6572626f73697479206c65>-.15 F -.15<7665>-.25 G 3.79<6c62>.15 G<79> -3.79 E 1.481<73657474696e672074686520656e>100 208.8 R 1.481 <7669726f6e6d656e742076>-.4 F 1.481 <61726961626c652054494e4745415f4c4f475f54>-.25 F -.4<4147>-.93 G 6.481 <2e41>.4 G<6c7465726e617469>-6.481 E -.15<7665>-.25 G<6c79>.15 E 3.981 <2c70>-.65 G 1.481<726f6772616d73206d6179206163636570742061>-3.981 F .418<636f6d6d616e64206c696e65206172>100 220.8 R 2.918 <67756d656e742e20546865>-.18 F .418 <666f726d617420616363657074656420627920626f746820656e>2.918 F .417 <7669726f6e6d656e742076>-.4 F .417 <61726961626c6520616e6420636f6d6d616e64206c696e65>-.25 F<6172>100 232.8 Q 1.669<67756d656e74206973206964656e746963616c2e>-.18 F -.15<466f>6.669 G 4.169<7274>.15 G 1.669<686520636f6d6d616e64206c696e65207468652070726f 6772616d6d6572206973206672656520696e2063686f6f73696e6720746865206f707469 6f6e>-4.169 F 2.7<6e616d652e204974>100 244.8 R .2 <697320637573746f6d6172696c79206e616d6564>2.7 F/F2 10/Times-Bold@0 SF <2d71>2.7 E F0 5.2<2e54>C .199<68652061>-5.2 F -.25<7661>-.2 G .199 <696c6162696c697479206f66207375636820616e206f7074696f6e206d61792076>.25 F .199<6172792066726f6d2070726f6772616d20746f>-.25 F 2.558 <70726f6772616d2e20486f>100 256.8 R<7765>-.25 E -.15<7665>-.25 G .858 -.4<722c2061>.15 H .358 -.15<6e792070>.4 H .058 <726f6772616d2074686174206d616b>.15 F .059 <657320757365206f66207468652054>-.1 F .059 <696e676561206c6f6767696e672066>-.35 F .059 <6163696c69746965732063616e206265207265>-.1 F<67756c61746564>-.15 E .27 <77697468207468652054494e4745415f4c4f475f54>100 268.8 R 1.07 -.4 <41472065>-.93 H -.4<6e76>.4 G .27<69726f6e6d656e742076>.4 F 2.77 <61726961626c652e204966>-.25 F<61>2.77 E F2<2d71>2.77 E F0 .27 <74797065206f7074696f6e2069732070726573656e7420616e642074686520656e>2.77 F<76692d>-.4 E .033<726f6e6d656e742076>100 280.8 R .033 <61726961626c65206973207365742c207468656e2074686520656e>-.25 F .033 <7669726f6e6d656e742076>-.4 F .033 <61726961626c6520697320696e746572707265746564208c72737420666f6c6c6f>-.25 F .034<77656420627920746865>-.25 F F2<2d71>2.534 E F0<6172>2.534 E <67752d>-.18 E<6d656e742e>100 292.8 Q -.35<5469>100 316.8 S .677 <6e676561206c6f6767696e6720616c6c6f>.35 F .677 <777320612070726f6772616d6d657220746f2061737369676e2063617465>-.25 F .676<676f7269657320746f206c6f6767696e672073746174656d656e74732e20546865 2063617465>-.15 F<676f72696573>-.15 E .07<46554e4354494f4e20616e642044> 100 328.8 R -1.21 -1.11<41542041>-.4 H<6861>3.681 E .371 -.15 <766520612073>-.2 H<75626469>.15 E .071<766973696f6e2072616e67696e672066 726f6d208c6e652d677261696e656420746f20636f617273652d677261696e65642e2054 6865206361742d>-.25 F -.15<6567>100 340.8 S .875<6f726965204d4f4e4954> .15 F .875<4f52494e47206861732061207375626469>-.18 F .875 <766973696f6e2072616e67696e672066726f6d206c6f>-.25 F 3.375<7770>-.25 G .874<72696f7269747920746f2068696768207072696f726974792e>-3.375 F .874 <546865206f74686572>5.874 F<63617465>100 352.8 Q .884<676f72696573206172 6520756e696d6f64616c2e2054686573652061726520494f2c205448524541442c205052> -.15 F .885<4f434553532c20616e64204741>-.4 F .885 <5547452e20546872656520756e73706563698c6564>-.55 F .182 <756e696d6f64616c2063617465>100 364.8 R .182 <676f726965732061726520534c4f>-.15 F .182<54312c20534c4f>-.4 F .182 <54322c20616e6420534c4f>-.4 F .182<54332e20546865>-.4 F 2.681<7963>-.15 G .181 <616e206265207573656420746f20656e636f64652070726f6772616d2d7370652d> -2.681 F<63698c632073656d616e746963732e>100 376.8 Q .465<5468652070726f 6772616d6d6572206d61792061737369676e206d756c7469706c652063617465>100 400.8 R .466<676f7269657320746f20612073696e676c65206c6f6767696e67207374 6174656d656e742e>-.15 F .466<497420697320756e757375616c20666f72>5.466 F .626<6d6f7265207468616e207477>100 412.8 R 3.126<6f63>-.1 G<617465>-3.126 E .626<676f7269657320746f2062652073706563698c65642e2046>-.15 F .625 <6f722065>-.15 F .625<78616d706c652c20494f20616e642044>-.15 F -1.21 -1.11<41542041>-.4 H .625<617420746865204c495354206c65>4.235 F -.15 <7665>-.25 G 3.125<6c6d>.15 G .625<6179206265>-3.125 F .745<636f6d62696e 656420746f20696e6469636174652061206c6f6767696e672073746174656d656e742074 6861742070726f>100 424.8 R .746<766964657320646174612073756d6d6172696573 20666f722061206365727461696e20494f2072656c61746564>-.15 F .863<696e666f 726d6174696f6e2e20496e206f72646572206f66206772616e756c617269747920746865 2044>100 436.8 R -1.21 -1.11<41542041>-.4 H<6c65>4.473 E -.15<7665>-.25 G .863<6c73206172652043454c4c2c204c495354>.15 F 3.363<2c61>-.74 G .863 <6e642041>-3.363 F<47475245475241>-.4 E .863<54452e204966>-1.11 F .125< 7468652075736572206163636570747320494f206c6f6767696e6720616e642061636365 7074732044>100 448.8 R -1.21 -1.11<41542041>-.4 H .126 <6c6f6767696e67206174206c65>3.736 F -.15<7665>-.25 G 2.626<6c43>.15 G .126<454c4c206f72204c495354207468652073746174656d656e742077696c6c>-2.626 F 1.309<62652065>100 460.8 R -.15<7865>-.15 G 1.309<63757465642e20496620 6e6f20494f206c6f6767696e67206973206163636570746564206f722044>.15 F -1.21 -1.11<41542041>-.4 H 1.308 <6c6f6767696e67206973206f6e6c79206163636570746564206174207468652041> 4.919 F<474752452d>-.4 E<475241>100 472.8 Q<5445206c65>-1.11 E -.15 <7665>-.25 G <6c2c207468652073746174656d656e742077696c6c20626520736b69707065642e>.15 E .444<427920646566>100 496.8 R .444<61756c742c20616c6c2063617465>-.1 F .444<676f726965732074686174206172652073706563698c6564206279207468652070 726f6772616d6d6572206e65656420746f207061737320746865207468726573686f6c64 2073706563692d>-.15 F .183 <8c656420627920746865207573657220666f7220746861742063617465>100 508.8 R 2.682<676f72792e20546865>-.15 F .182<75736572206d61792072656c6178207468 697320726571756972656d656e7420736f2074686174206f6e6c79206f6e652063617465> 2.682 F<676f7279>-.15 E .23<6e6565647320746f2070617373207468652075736572 207468726573686f6c642e20496e207468652061626f>100 520.8 R .53 -.15 <7665206578>-.15 H .23 <616d706c652c207468652073746174656d656e742063617465>.15 F .23 <676f72697a656420617320626f746820494f20616e64>-.15 F -.4<4441>100 532.8 S 2.122 -.93<54412061>-.71 H 2.762<744c>.93 G .262<495354206c65>-2.762 F -.15<7665>-.25 G 2.762<6c77>.15 G .262<696c6c20626520616363657074656420 69662074686520757365722073706563698c657320494f20616e642044>-2.762 F -1.21 -1.11<41542041>-.4 H .261<61742041>3.871 F .261<474752206c65>-.4 F -.15<7665>-.25 G 2.761<6c77>.15 G .261<697468204f52>-2.761 F <73656d616e746963732e>100 544.8 Q F1<53594e54>20 561.6 Q<4158>-.986 E F0 <5468652073796e746178206f66207468652054494e4745415f4c4f475f54>100 573.6 Q .8 -.4<41472065>-.93 H -.4<6e76>.4 G<69726f6e6d656e742076>.4 E <61726961626c6520697320646573637269626564206279>-.25 E/F3 10/Courier@0 SF <5b5b313839785d5d7b3c5b646667696d7073744142435d5b312d395d3e2a2c5b565d7d> 118 597.6 Q F0 .082 <7768696368207472616e736c6174657320746f2074686520666f6c6c6f>100 621.6 R .082 <77696e672e20416e206f7074696f6e616c206c6561642074616720697320666f6c6c6f> -.25 F .083 <776564206279206120636f6e636174656e6174696f6e206f6620756e6974732e2041> -.25 F .911<756e6974206973206569746865722061207061697220696e>100 633.6 R F3 .911<5b646667696d7073744142435d2078205b312d39785d>3.411 F F0 .91 <6f72207468652073696e676c6520636861726163746572>3.411 F F3<56>3.41 E F0 5.91<2e54>C .91<6865206c656164696e67>-5.91 F .643<7461672073656d616e7469 6373206172652064657363726962656420667572746865722062656c6f>100 645.6 R 3.143<772e20546865>-.25 F .644<73696e676c6520636861726163746572>3.144 F F3<56>3.144 E F0 3.144<2c69>C 3.144<6670>-3.144 G .644 <726573656e742c2073706563698c65732074686174204f52>-3.144 F 1.12<73656d61 6e746963732073686f756c64206265207573656420726174686572207468616e20746865 20646566>100 657.6 R 1.119<61756c7420414e442073656d616e746963732e205468 652073656d616e7469637320666f7220746865206f74686572>-.1 F <756e69747320617265206769>100 669.6 Q -.15<7665>-.25 G 2.5<6e62>.15 G <656c6f>-2.5 E<772e>-.25 E<74696e6765612e6c6f672031322d313335>20 768 Q <3134204d61792032303132>136.785 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 137.205 <74696e6765612e6c6f67283729204d495343454c4c414e454f5553>20 48 R <74696e6765612e6c6f67283729>142.205 E/F1 10/Courier@0 SF 30<6444>118 84 S<415441>-30 E 12<3143>172 96 S<454c4c>-12 E 12<324c>172 108 S<495354> -12 E 12<3341>172 120 S<474752>-12 E 12<7874>172 132 S <75726e6564206f6666>-12 E 30<6646>118 156 S<554e4354494f4e>-30 E 12 <314c>172 168 S<494e45>-12 E 12<3246>172 180 S<554e4354494f4e>-12 E 12 <334d>172 192 S<4f44554c45>-12 E 12<3441>172 204 S<50504c49434154494f4e> -12 E 12<7874>172 216 S<75726e6564206f6666>-12 E 30<6d4d>118 240 S <4f4e49544f52494e47>-30 E 12<3144>172 252 S<45425547>-12 E 12<3249>172 264 S<4e464f>-12 E 12<3357>172 276 S<41524e494e47>-12 E 12<3445>172 288 S<52524f52>-12 E 12<3550>172 300 S<414e4943>-12 E 12<7874>172 312 S <75726e6564206f6666>-12 E 30<6747>118 336 S 18<41554745207c>-30 F 30 <6949>118 348 S 42<4f7c>-30 G 30<6e4e>118 360 S 6<4554574f524b207c>-30 F 30<7050>118 372 S 6<524f43455353207c2028496e746572>-30 F <50726f63657373207265616c6c7929>6 E 30<7454>118 384 S 12 <4852454144207c5f5f5f5f5f5f>-30 F 6<316f>12 G<6e>-6 E 48<7c78>208 396 S <6f6666>-42 E 30<4153>118 408 S 18<4c4f5431207c>-30 F 30<4253>118 420 S 18<4c4f5432207c>-30 F 30<4353>118 432 S 18<4c4f5433207c>-30 F F0 .686<54 6865206c656164696e67207461672063616e206265207573656420746f20736574206c65> 100 456 R -.15<7665>-.25 G .687<6c7320666f7220616c6c2063617465>.15 F .687<676f72696573206174206f6e63652e>-.15 F .687 <53756273657175656e7420756e697473206d6179207468656e>5.687 F <616c746572207468697320696e7469616c2073657474696e672e>100 468 Q<54686520 6c656164207461672073657474696e677320616e64207468656972206d65616e696e6720 6172652074686573653a>5 E F1 30<3164>118 492 S 24 <3166316d31673169317031733174314131423143312023>-30 F <76657279207961707079>6 E 30<3964>118 504 S 24 <3366346d35677869787078737874784178427843782023>-30 F <766572792074657273652c206f6e6c7920642066206d>6 E 30<3864>118 516 S 24 <3366346d35673169317031733174314131423143312023>-30 F <6c657373207465727365>6 E 30<7864>118 528 S 24 <7866786d78677869787078737874784178427843782023>-30 F<73696c656e74>6 E F0 .644<416c6c2063617465>100 552 R .644<676f72696573206163636570742076> -.15 F .644<616c756573206265747765656e>-.25 F F1<31>3.144 E F0<616e64> 3.144 E F1<39>3.143 E F0 .643<696e206164646974696f6e20746f207468652076> 3.143 F<616c7565>-.25 E F1<78>3.143 E F0 3.143<2e41>C 3.143<7373>-3.143 G .643<65656e2061626f>-3.143 F -.15<7665>-.15 G 3.143<2c6f>.15 G .643 <6e6c792061>-3.143 F<6665>100 564 Q 2.935<7763>-.25 G<617465>-2.935 E .435<676f7269657320636f6e7461696e206d6f7265207468616e206f6e65206c65>-.15 F -.15<7665>-.25 G 2.935<6c61>.15 G .435<6e64206e6f2063617465>-2.935 F .436<676f727920636f6e7461696e73206d6f7265207468616e208c76>-.15 F 2.936 <656c>-.15 G -2.15 -.25<65762065>-2.936 H 2.936<6c732e20546865>.25 F .041<72756c6520697320746861742069662061206c65>100 576 R -.15<7665>-.25 G 2.541<6c65>.15 G .041<78636565647320746865206d6178696d756c206c65>-2.691 F -.15<7665>-.25 G 2.541<6c61>.15 G -.25<7661>-2.741 G .04 <696c61626c6520666f7220612063617465>.25 F .04 <676f72792069742069732073696d706c7920696e746572707265746564206173>-.15 F <746865206d6178696d756d206c65>100 588 Q -.15<7665>-.25 G<6c2e>.15 E 1.425<546865204741>100 612 R 1.425<5547452063617465>-.55 F<676f7279>-.15 E 3.925<2c69>-.65 G 3.925<6673>-3.925 G 1.425<65742c20696e64696361746573 207468617420612070726f6772616d206d6179207772697465206c696e65206261736564 2070726f67726573732062617273206f72>-3.925 F .629<6f74686572206f75747075 7420696e20776869636820612073696e676c65206c696e6520697320616363756d756c61 746564206f>100 624 R -.15<7665>-.15 G 3.129<726d>.15 G .628<756c7469706c 652073746174656d656e74732e205468697320696d706c69657320746861742061> -3.129 F .682<73696e676c65204741>100 636 R .682<554745206c6f6767696e6720 73746174656d656e74206d6179206e6f7420726573756c7420696e206e65>-.55 F .683 <776c696e652d7465726d696e61746564206f75747075742e205468697320697320756e 6465736972>-.25 F<2d>-.2 E .043<61626c6520696e206361736520746865206c6f67 67696e672073747265616d20697320646972656374656420746f2061208c6c6520746861 74206973207772697474656e20746f206279206f74686572206170706c69636174696f6e 732061732077656c6c2e>100 648 R 1.205 <496e207468617420636173652c207475726e206f66>100 660 R 3.705<6647>-.25 G -.55<4155>-3.705 G 1.205<47452e20416c6c206f746865722063617465>.55 F 1.205<676f72696573206172652067>-.15 F 1.205<6172616e747565656420746f2072 6573756c7420696e206c696e652d7465726d696e61746564>-.05 F<6f75747075742c20 627920766972747565206f66207468652070726f6772616d6d657220636f6e7472616374 2e>100 672 Q/F2 10.95/Times-Bold@0 SF -.548<4155>20 688.8 S<54484f52> .548 E F0<5374696a6e2076>100 700.8 Q<616e20446f6e67656e2e>-.25 E <74696e6765612e6c6f672031322d313335>20 768 Q<3134204d61792032303132> 136.785 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxclcf.html0000644000402500021140000002267011754271044012357 00000000000000 The mcx clcf manual

14 May 2012    mcx clcf 12-135

NAME

mcx clcf — compute the clustering coefficient of a graph

SYNOPSIS

mcx clcf [options] [matrix-file]

mcxclcf is not in actual fact a program. This manual page documents the behaviour and options of the mcx program when invoked in mode clcf. The options -h, --apropos, --version, -set, --nop, -progress <num> are accessible in all mcx modes. They are described in the mcx manual page.

mcx clcf [-abc <fname> (specify label input)] [-imx <fname> (specify matrix input)] [-tab <fname> (use tab file)] [-o <fname> (write to this file)] [-t <int> (use <int> threads)] [-J <intJ> (a total of <intJ> jobs are used)] [-j <intj> (this job has index <intj>)] [--summary (return mean clustering coefficient)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

mcx clcf computes the clustering coefficient of a graph.

The input graph/matrix, if specified with the -imx option, has to be in mcl matrix/graph format. You can use label input instead by using the -abc option. Refer to mcxio for a description of these two input formats. By default mcx diameter reads from STDIN and expects matrix format. To specify label input from STDIN use -abc -.

OPTIONS

-abc <fname> (label input)

The file name for input that is in label format.

 
-imx <fname> (input matrix)

The file name for input. STDIN is assumed if not specified.

 
-o <fname> (output file)

The file name for output. STDOUT is the default output stream.

 
-tab <fname> (use tab file)

This option causes the output to be printed with the labels found in the tab file. With -abc this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with -imx the tab domain and the matrix domain are required to be identical.

 
--summary (return mean clustering coefficient)

By the default a 1-column table (with row names included) is output, one row for each node. This option causes the output of the average clustering coefficient only.

 
-t <int> (use <int> threads)
-J <intJ> (a total of <intJ> jobs are used)
-j <intj> (this job has index <intj>)

Computing clustering coefficients is time-intensive for large graphs. If you have multiple CPUs available consider using as many threads. Additionally it is possible to spread the computation over multiple jobs/machines. Conceptually, each job takes a number of threads from the total thread pool. If job control is used (the -J option is used) then the number of jobs should not exceed the number of threads. The total number of threads divided by the total number of jobs defines the number of threads that will be used by the current job. Additionally, the number of threads specified signifies the total added amount of all threads across all machines and must be the same for all jobs. This number is used by each job to infer its own set of tasks. The following set of options, if given to as many commands, defines three jobs, each running four threads.

-t 12 -G 3 -g 0 -t 12 -G 3 -g 1 -t 12 -G 3 -g 2

SEE ALSO

mcxio, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcxarray.10000644000402500021140000002505611754271043011762 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxarray" 1 "14 May 2012" "mcxarray 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxarray \- Transform array data to MCL matrices .SH SYNOPSIS \fBmcxarray\fP [options] \fBmcxarray\fP \fB[-data\fP fname (\fIinput data file\fP)\fB]\fP \fB[-imx\fP fname (\fIinput matrix file\fP)\fB]\fP \fB[-co\fP num (\fI(absolute) cutoff for output values (required)\fP)\fB]\fP \fB[--pearson\fP (\fIuse Pearson correlation (default)\fP)\fB]\fP \fB[--spearman\fP (\fIuse Spearman rank correlation\fP)\fB]\fP \fB[-fp\fP (\fIuse fingerprint measure\fP)\fB]\fP \fB[--dot\fP (\fIuse dot product\fP)\fB]\fP \fB[--cosine\fP (\fIuse cosine\fP)\fB]\fP \fB[-skipr\fP (\fIskip data rows\fP)\fB]\fP \fB[-skipc\fP (\fIskip data columns\fP)\fB]\fP \fB[-o\fP fname (\fIoutput file fname\fP)\fB]\fP \fB[-write-tab\fP (\fIwrite row labels to file\fP)\fB]\fP \fB[-l\fP (\fItake labels from column \fP)\fB]\fP \fB[-digits\fP (\fIoutput precision\fP)\fB]\fP \fB[--write-binary\fP (\fIwrite output in binary format\fP)\fB]\fP \fB[-t\fP (\fIuse threads\fP)\fB]\fP \fB[-J\fP (\fIa total of jobs are used\fP)\fB]\fP \fB[-j\fP (\fIthis job has index \fP)\fB]\fP \fB[-start\fP (\fIstart at column inclusive\fP)\fB]\fP \fB[-end\fP (\fIend at column EXclusive\fP)\fB]\fP \fB[--transpose\fP (\fIwork with the transposed data matrix\fP)\fB]\fP \fB[--rank-transform\fP (\fIrank transform the data first\fP)\fB]\fP \fB[-tf\fP spec (\fItransform result network\fP)\fB]\fP \fB[-table-tf\fP spec (\fItransform input table before processing\fP)\fB]\fP \fB[-n\fP mode (\fInormalize input\fP)\fB]\fP \fB[--zero-as-na\fP (\fItreat zeroes as missing data\fP)\fB]\fP \fB[-write-data\fP (\fIwrite data to file\fP)\fB]\fP \fB[-write-na\fP (\fIwrite NA matrix to file\fP)\fB]\fP \fB[--job-info\fP (\fIprint index ranges for this job\fP)\fB]\fP \fB[--help\fP (\fIprint this help\fP)\fB]\fP \fB[-h\fP (\fIprint this help\fP)\fB]\fP \fB[--version\fP (\fIprint version information\fP)\fB]\fP .SH DESCRIPTION \fBmcxarray\fP can either read a flat file containing array data (\fB-data\fP) or a matrix file satisfying the mcl input format (\fB-imx\fP)\&. In the former case it will by default work with the rows as the data vectors\&. In the latter case it will by default work with the columns as the data vectors (note that mcl matrices are presented as a listing of columns)\&. This can be changed for both using the \fB--transpose\fP option\&. The input data may contain missing data in the form of empty columns, NA values (not available/applicable), or NaN values (not a number)\&. The program keeps track of these, and when computing the correlation between two rows or columns ignores all positions where any one of the two has missing data\&. .SH OPTIONS .ZI 2m "\fB-data\fP fname (\fIinput data file\fP)" \& .br Specify the data file containing the expression values\&. It should be tab-separated\&. .in -2m .ZI 2m "\fB-imx\fP fname (\fIinput matrix file\fP)" \& .br The expression values are read from a file in mcl matrix format\&. .in -2m .ZI 2m "\fB--pearson\fP (\fIuse Pearson correlation (default)\fP)" \& 'in -2m .ZI 2m "\fB--spearman\fP (\fIuse Spearman rank correlation\fP)" \& 'in -2m .ZI 2m "\fB--cosine\fP (\fIuse cosine\fP)" \& 'in -2m .ZI 2m "\fB--dot\fP (\fIuse the dot product\fP)" \& 'in -2m 'in +2m \& .br Use one of these to specify the correlation measure\&. Note that the dot product is not normalised and should only be used with very good reason\&. .in -2m .ZI 2m "\fB-fp\fP (\fIspecify fingerprint measure\fP)" \& .br Fingerprints are used to define an entity in terms of it having or not having certain traits\&. This means that a fingerprint can be represented by a boolean vector, and a set of fingerprints can be represented by an array of such vectors\&. In the presence of many traits and entities the dimensions of such a matrix can grow large\&. The sparse storage employed by MCL-edge is ideally suited to this, and mcxarray is ideally suited to the computation of all pairwise comparisons between such fingerprints\&. Currently mcxarray supports five different types of fingerprint, described below\&. Given two fingerprints, the number of traits unique to the first is denoted by \fIa\fP, the number unique to the second is denoted by \fIb\fP, and the number that they have in common is denoted by \fIc\fP\&. .ZI 2m "hamming" \& .br The Hamming distance, defined as \fIa\fP+\fIb\fP\&. .in -2m .ZI 2m "tanimoto" \& .br The Tanimoto similarity measure, \fIc\fP/(\fIa\fP+\fIb\fP+\fIc\fP)\&. .in -2m .ZI 2m "cosine" \& .br The cosine similarity measure, \fIc\fP/sqrt((\fIa\fP+\fIc\fP)*(\fIb\fP+\fIc\fP))\&. .in -2m .ZI 2m "meet" \& .br Simply the number of shared traits, identical to \fIc\fP\&. .in -2m .ZI 2m "cover" \& .br A normalised and non-symmetric similarity measure, representing the fraction of traits shared relative to the number of traits by a single entity\&. This gives the value \fIc\fP/(\fIa\fP+\fIc\fP) in one direction, and the value \fIc\fP/(\fIb\fP+\fIc\fP) in the other\&. .in -2m .in -2m .ZI 2m "\fB-skipr\fP (\fIskip data rows\fP)" \& .br Skip the first \fI\fP data rows\&. .in -2m .ZI 2m "\fB-skipc\fP (\fIskip data columns\fP)" \& .br Ignore the first \fI\fP data columns\&. .in -2m .ZI 2m "\fB-l\fP (\fItake labels from column \fP)" \& .br Specifies to construct a tab of labels from this data column\&. The tab can be written to file using \fB-write-tab\fP\ \&\fIfname\fP\&. .in -2m .ZI 2m "\fB-write-tab\fP (\fIwrite row labels to file\fP)" \& .br Write a tab file\&. In the simple case where the labels are in the first data column it is sufficient to issue \fB-skipc\fP\ \&\fB1\fP\&. If more data columns need to be skipped one must explicitly specify the data column to take labels from with \fB-l\fP\ \&\fIl\fP\&. .in -2m .ZI 2m "\fB-t\fP (\fIuse threads\fP)" \& 'in -2m .ZI 2m "\fB-J\fP (\fIa total of jobs are used\fP)" \& 'in -2m .ZI 2m "\fB-j\fP (\fIthis job has index \fP)" \& 'in -2m 'in +2m \& .br Computing all pairwise correlations is time-intensive for large input\&. If you have multiple CPUs available consider using as many threads\&. Additionally it is possible to spread the computation over multiple jobs/machines\&. Conceptually, each job takes a number of threads from the total thread pool\&. Additionally, the number of threads (as specified by \fB-t\fP) currently \fImust be the same for all jobs\fP, as it is used by each job to infer its own set of tasks\&. The following set of options, if given to as many commands, defines three jobs, each running four threads\&. .di ZV .in 0 .nf \fC -t 4 -J 3 -j 0 -t 4 -J 3 -j 1 -t 4 -J 3 -j 2 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .in -2m .ZI 2m "\fB--job-info\fP (\fIprint index ranges for this job\fP)" \& 'in -2m .ZI 2m "\fB-start\fP (\fIstart at column inclusive\fP)" \& 'in -2m .ZI 2m "\fB-end\fP (\fIend at column EXclusive\fP)" \& 'in -2m 'in +2m \& .br \fB--job-info\fP can be used to list the set of column ranges to be processed by the job as a result of the command line options \fB-t\fP, \fB-J\fP, and \fB-j\fP\&. If a job has failed, this option can be used to manually split those ranges into finer chunks, each to be processed as a new sub-job specified with \fB-start\fP and \fB-end\fP\&. With the latter two options, it is impossible to use parallelization of any kind (i\&.e\&. any of the \fB-t\fP, \fB-J\fP, and \fB-j\fP options)\&. .in -2m .ZI 2m "\fB-o\fP fname (\fIoutput file fname\fP)" \& .br Output file name\&. .in -2m .ZI 2m "\fB-digits\fP (\fIoutput precision\fP)" \& .br Specify the precision to use in native interchange format\&. .in -2m .ZI 2m "\fB--write-binary\fP (\fIwrite output in binary format\fP)" \& .br Write output matrices in native binary format\&. .in -2m .ZI 2m "\fB-co\fP num (\fI(absolute) cutoff for output values\fP)" \& 'in -2m 'in +2m \& .br Output values of magnitude smaller than \fInum\fP are removed (set to zero)\&. Thus, negative values are removed only if their positive counterpart is smaller than \fInum\fP\&. .in -2m .ZI 2m "\fB--transpose\fP (\fIwork with the transpose\fP)" \& .br Work with the transpose of the input data matrix\&. .in -2m .ZI 2m "\fB--rank-transform\fP (\fIrank transform the data first\fP)" \& .br The data is rank-transformed prior to the computation of pairwise measures\&. .in -2m .ZI 2m "\fB-write-data\fP (\fIwrite data to file\fP)" \& .br This writes the data that was read in to file\&. If \fB--spearman\fP is specified the data will be rank-transformed\&. .in -2m .ZI 2m "\fB-write-na\fP (\fIwrite NA matrix to file\fP)" \& .br This writes all positions for which no data was found to file, in native mcl matrix format\&. .in -2m .ZI 2m "\fB--zero-as-na\fP (\fItreat zeroes as missing data\fP)" \& .br This option can be useful when reading data with the \fB-imx\fP option, for example after it has been loaded from label input by \fBmcxload\fP\&. An example case is the processing of a large number of probe rankings, where not all rankings contain all probe names\&. The rankings can be loaded using \fBmcxload\fP with a tab file containing all probe names\&. Probes that are present in the ranking are given a positive ordinal number reflecting the ranking, and probes that are absent are implicitly given the value zero\&. With the present option mcxarray will handle the correlation computation in a reasonable way\&. .in -2m .ZI 2m "\fB-n\fP mode (\fInormalization mode\fP)" \& .br If \fImode\fP is set to \fBz\fP the data will be normalized based on z-score\&. No other modes are currently supported\&. .in -2m .ZI 2m "\fB-tf\fP spec (\fItransform result network\fP)" \& 'in -2m .ZI 2m "\fB-table-tf\fP spec (\fItransform input table before processing\fP)" \& 'in -2m 'in +2m \& .br The transformation syntax is described in \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB--help\fP (\fIprint help\fP)" \& 'in -2m .ZI 2m "\fB-h\fP (\fIprint help\fP)" \& 'in -2m 'in +2m \& .br .in -2m .ZI 2m "\fB--version\fP (\fIprint version information\fP)" \& .br .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmcl(1)\fP, \fBmclfaq(7)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmorder.azm0000644000402500021140000000461011322637753012370 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm order} {html_title}{The clm order manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{clm order}{reorder clusterings conformal to inclusion structure} \disclaim_clm{order} \sec{synopsis}{SYNOPSIS} \par{ \clm{order} \synoptopt{-prefix}{}{file multiplex prefix} \synoptopt{-o}{}{concatenated output in single file} + } \sec{description}{DESCRIPTION} \par{ Given a set of input clusterings \clm{order} first transform it into a stack of strictly nesting clusterings. It does this by splitting clusters where necessary. It then reorders the coarsest (i.e. level-one) clustering, from large to small clusters. After that it reorders the second coarsest clustering conformally such that the first batch among its reordered clusters covers the level-one largest cluster, the second batch covers the level-one second largest cluster, and so on. Within these constraints, each batch of second-level clusters (corresponding to a single first-level cluster) is again ordered from larger to smaller clusters. This process is applied recursively throughout the entire stack of input clusters. } \par{ The input can be specified in multiple files, and a single file may contain multiple clusterings. The output is by default written as a concatenation of matrix files, the so-called stack format. Use the \genopt{-o} option to specify the output file. The stacked format can be converted to Newick format using \mysib{mcxdump}. The output can be written to multiple files, one for each projected clustering, by using the \genopt{-prefix} option. By example, \useopt{-prefix}{P} leads to output in files named \v{P1}, \v{P2}, ..\v{PN}, where \v{N} is the number of clusters in the input, \v{P1} is the most fine-grained ordered clustering, and \v{PN} is the coarsest clustering. } \sec{options}{OPTIONS} \'begin{itemize}{\mcx_itemopts} \items{ {\defopt{-prefix}{}} {\defopt{-o}{}} } \car{ As decribed above. } \'end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/mcxerdos.ps0000644000402500021140000004521611754271045012244 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:17 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE /Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d6378206572646f73283129>20 48 Q <5553455220434f4d4d414e4453>136.235 E<6d6378206572646f73283129>138.735 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d6378206572 646f7320ad20636f6d707574652073686f727465737420706174687320696e2061206772 617068>100 96 Q F1<53594e4f50534953>20 112.8 Q/F2 10/Times-Bold@0 SF <6d6378206572646f73>100 124.8 Q F0<5b6f7074696f6e735d>2.5 E<6d6378>100 148.8 Q 2.255<6572646f73206973206e6f7420696e2061637475616c2066>-.15 F 2.255<61637420612070726f6772616d2e2054686973206d616e75616c20706167652064 6f63756d656e7473207468652062656861>-.1 F 2.255<76696f757220616e64>-.2 F .313 <6f7074696f6e73206f6620746865206d63782070726f6772616d207768656e20696e> 100 160.8 R -.2<766f>-.4 G -.1<6b65>.2 G 2.813<6469>.1 G 2.813<6e6d> -2.813 G<6f6465>-2.813 E/F3 10/Times-Italic@0 SF<6572>2.813 E<646f73> -.37 E F0 2.813<2e54>C .313<6865206f7074696f6e73>-2.813 F F2<2d68>2.813 E F0<2c>A F2<2d2d617072>2.813 E<6f706f73>-.18 E F0<2c>A F2<2d2d76>2.813 E<657273696f6e>-.1 E F0<2c>A F2<2d736574>100 172.8 Q F0<2c>A F2 <2d2d6e6f70>3.341 E F0<2c>A F2<2d7072>3.341 E<6f6772>-.18 E<657373>-.18 E F3<3c6e756d3e>2.5 E F0 .841 <6172652061636365737369626c6520696e20616c6c>3.341 F F2<6d6378>3.341 E F0 .841<6d6f6465732e20546865>3.341 F 3.341<7961>-.15 G .84 <72652064657363726962656420696e20746865>-3.341 F F2<6d6378>3.34 E F0 <6d616e75616c20706167652e>100 184.8 Q F2 .815 <6d6378206572646f73205b2d7175657279>100 208.8 R F0 .815 <3c666e616d653e2028>3.315 F F3 .815<717565727920696e70757420737472>B <65616d>-.37 E F0<29>A F2 3.315<5d5b>C<2d616263>-3.315 E F0 .815 <3c666e616d653e2028>3.315 F F3 .815 <73706563696679206c6162656c20696e707574>B F0<29>A F2 3.315<5d5b>C <2d696d78>-3.315 E F0 .947<3c666e616d653e2028>100 220.8 R F3 .947 <73706563696679206d617472697820696e707574>B F0<29>A F2 3.446<5d5b>C <2d746162>-3.446 E F0 .946<3c666e616d653e2028>3.446 F F3 .946 <75736520746162208c6c65>B F0<29>A F2 3.446<5d5b>C<2d6f>-3.446 E F0 .946 <3c666e616d653e2028>3.446 F F3 .946<6f7574707574208c6c65206e616d65>B F0 <29>A F2<5d>A<5b2d2d69732d646972>100 232.8 Q<6563746564>-.18 E F0<28> 2.891 E F3 .391<696e707574206772>B .391<61706820697320646972>-.15 F <6563746564>-.37 E F0<29>A F2 2.891<5d5b>C<2d2d69732d756e646972>-2.891 E <6563746564>-.18 E F0<28>2.891 E F3 .391<696e707574206772>B .391 <61706820697320646972>-.15 F<6563746564>-.37 E F0<29>A F2 2.891<5d5b>C <2d77726974652d70617468>-2.891 E F0 1.102<3c666e616d653e2028>100 244.8 R F3 1.102<70617468206d6174726978208c6c65>B F0<29>A F2 3.602<5d5b>C <2d77726974652d73746570>-3.602 E F0 1.102<3c666e616d653e2028>3.602 F F3 1.102<73746570206d6174726978208c6c65>B F0<29>A F2 3.601<5d5b>C<2d68> -3.601 E F0<28>3.601 E F3 1.101<7072696e742073796e6f707369732c2065>B <786974>-.2 E F0<29>A F2<5d>A<5b2d2d617072>100 256.8 Q<6f706f73>-.18 E F0<28>2.5 E F3<7072696e742073796e6f707369732c2065>A<786974>-.2 E F0<29>A F2 2.5<5d5b>C<2d2d76>-2.5 E<657273696f6e>-.1 E F0<28>2.5 E F3 <7072696e7420766572>A<73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F2<5d>A F1<4445534352495054494f4e>20 273.6 Q F2 1.129<6d6378206572646f73>100 285.6 R F0 1.129 <636f6d70757465732073686f727465737420706174687320696e206772617068732e> 3.629 F 1.13<49742063616e207265616420612067726170682065697468657220696e 206c6162656c20666f726d61742077697468>6.129 F F2<2d616263>100 297.6 Q F0 .455<6f7220696e206e617469>2.955 F .755 -.15<76652066>-.25 H .455 <6f726d61742077697468>.15 F F2<2d696d78>2.955 E F0 5.455<2e49>C 2.955 <7472>-5.455 G .455<65616473207061697273206f66206e6f646520696e6469636573 2066726f6d20616e20696e7075742073747265616d2c20616e6420666f72>-2.955 F .181<656163682070616972206f75747075747320612064617461207374727563747572 652064657363726962696e67207468652066756c6c20736574206f662073686f72746573 74207061746873206265747765656e20746865207477>100 309.6 R 2.681<6f6e>-.1 G<6f6465732e>-2.681 E .646 <45646765207765696768747320617265206e6f742074616b>100 321.6 R .646 <656e20696e746f206163636f756e742c20736f20616e206564676520616c>-.1 F -.1 <7761>-.1 G .645<797320726570726573656e7473206120756e697420737465702073 697a65206265747765656e>.1 F<7477>100 333.6 Q 2.55<6f6e>-.1 G .05 <6f6465732069727265737065637469>-2.55 F .35 -.15<7665206f>-.25 H 2.55 <6669>.15 G .051<7473207765696768742e2041206d6f646520746f20636f6d707574 652073686f7274657374207061746873207768696c652074616b696e6720696e746f2061 63636f756e74>-2.55 F<6564676520776569676874732077696c6c20626520696d706c 656d656e746564206c61746572206173>100 345.6 Q F2 <6d63782064696a6b73747261>2.5 E F0<2e>A 1.658<4e6f7465207468617420746865 2066756c6c20736574206f662073686f7274657374207061746873206265747765656e20 7477>100 369.6 R 4.158<6f6e>-.1 G 1.658<6f64657320696e206120677261706820 63616e206265206465736372696265642061732061>-4.158 F .233 <6469726563746564206163>100 381.6 R .233<79636c6963206772617068202844> -.15 F -.4<4147>-.4 G .233<292c20616e64207468697320697320686f>.4 F<77> -.25 E F2 .233<6d6378206572646f73>2.733 F F0 .233<6f706572617465732e2049 74206973206561737920746f20636f6e73747275637420677261706873>2.733 F .129< 616e64206e6f646520706169727320666f7220776869636820746865206e756d62657220 6f662073686f7274657374207061746873206265747765656e20746865207477>100 393.6 R 2.629<6f6e>-.1 G .129<6f646573206265636f6d65732065>-2.629 F <78706f6e656e2d>-.15 E .138<7469616c20696e207468652073697a65206f66207468 652067726170682c207768657265617320746865206c6174746963652064657363726970 74696f6e20697320616c>100 405.6 R -.1<7761>-.1 G .139<79732067>.1 F .139 <6172616e747565656420746f206d617020746f2061207375622d>-.05 F <736574206f66207468652067726170682065646765207365742e>100 417.6 Q .204 <427920646566>100 441.6 R .204<61756c7420697420697320617373756d65642074 6861742074686520696e7075742067726170682073686f756c6420626520747265617465 6420617320756e64697265637465642e2054>-.1 F 2.704<6f74>-.8 G .203 <68697320656e642061207472616e732d>-2.704 F .211<666f726d6174696f6e207374 6570206973206170706c69656420746f20656e7375726520746861742074686520677261 706820696e206d656d6f727920697320756e64697265637465642e20497420697320706f 737369626c6520746f20636f6d2d>100 453.6 R .357<707574652073686f7274657374 20706174687320696e20646972656374656420677261706873206279207573696e67>100 465.6 R F2<2d2d69732d646972>2.857 E<6563746564>-.18 E F0 2.857<2c61>C .357<6e6420697420697320706f737369626c6520746f206f6d69742074686520747261 6e732d>-2.857 F 1.454<666f726d6174696f6e2073746570206279207573696e67>100 477.6 R F2<2d2d69732d756e646972>3.954 E<6563746564>-.18 E F0 6.454<2e49> C 3.955<6674>-6.454 G 1.455<6865206c61747465722069732073706563698c656420 7768696c652074686520696e70757420677261706820697320696e>-3.955 F <6e617469>100 489.6 Q .422 -.15<76652066>-.25 H .122 <6f726d617420616e6420696e2066>.15 F .121<6163742064697265637465642c2072 6573756c74732077696c6c206265206572726f6e656f75732e205468697320636f756c64 20696e207468656f7279206265206d69746967>-.1 F .121<61746564206279>-.05 F .068<636865636b696e6720746861742074686520696e70757420677261706820697320 756e64697265637465642e20486f>100 501.6 R<7765>-.25 E -.15<7665>-.25 G .868 -.4<722c2074>.15 H .068<686520726561736f6e20746f20757365>.4 F F2 <2d2d69732d756e646972>2.568 E<6563746564>-.18 E F0 .068 <69732073696d706c79>2.568 F .116<746f20696e637265617365207370656564206f 66206f7065726174696f6e2c20776865726561732073756368206120636865636b2077> 100 513.6 R .116<6f756c6420626520657175616c6c792065>-.1 F<7870656e7369> -.15 E .416 -.15<76652061>-.25 H 2.616<7374>.15 G .116 <6865207472616e73666f72>-2.616 F<2d>-.2 E <6d6174696f6e20737465702074686174206973206f6d69747465642077697468>100 525.6 Q F2<2d2d69732d756e646972>2.5 E<6563746564>-.18 E F0<2e>A .461<54 686520696e7075742067726170682f6d61747269782c2069662073706563698c65642077 69746820746865>100 549.6 R F2<2d696d78>2.961 E F0 .462<6f7074696f6e2c20 68617320746f20626520696e206d636c206d61747269782f677261706820666f726d6174 2e>2.961 F -1.1<596f>100 561.6 S 2.794<7563>1.1 G .294<616e20757365206c 6162656c20696e70757420696e7374656164206279207573696e6720746865>-2.794 F F2<2d616263>2.794 E F0 2.793<6f7074696f6e2e205265666572>2.793 F<746f> 2.793 E F2<6d6378696f283529>2.793 E F0 .293 <666f722061206465736372697074696f6e206f66>2.793 F .822<7468657365207477> 100 573.6 R 3.322<6f69>-.1 G .822<6e70757420666f726d6174732e>-3.322 F .822<427920646566>5.822 F<61756c74>-.1 E F2 .822<6d6378206572646f73> 3.322 F F0 .822<72656164732066726f6d20535444494e>3.322 F F3 .822 <616e642065>3.322 F .823<787065637473206d617472697820666f726d6174>-.2 F F0<2e>A 1.6 -.8<546f2073>100 585.6 T <706563696679206c6162656c20696e7075742066726f6d20535444494e20757365>.8 E F2<2d616263202d>2.5 E F0<2e>A F1<4f5054494f4e53>20 602.4 Q F2 <2d7175657279>100 614.4 Q F0<3c666e616d653e2028>2.5 E F3 <717565727920696e707574>A F0<29>A 1.12<546865206e616d6520666f7220746865 208c6c652066726f6d20776869636820717565726965732061726520726561642e>120 626.4 R 3.62<4171>6.12 G 1.12<7565727920636f6e7369737473206f66207477> -3.62 F 3.62<6f77>-.1 G<686974652d7370616365>-3.62 E 1.783 <736570617261746564206e6f646520696e6469636573206f72207477>120 638.4 R 4.284<6f77>-.1 G 1.784<686974652d737061636520736570617261746564206c6162 656c732e204c6162656c732063616e206f6e6c792062652075736564206966>-4.284 F <656974686572>120 650.4 Q F2<2d616263>2.5 E F0<6f72>2.5 E F2<2d746162> 2.5 E F0<69732073706563698c65642e>2.5 E F2<2d616263>100 674.4 Q F0 <3c666e616d653e2028>2.5 E F3<6c6162656c20696e707574>A F0<29>A<546865208c 6c65206e616d6520666f7220696e707574207468617420697320696e206c6162656c2066 6f726d61742e>120 686.4 Q F2<2d696d78>100 710.4 Q F0<3c666e616d653e2028> 2.5 E F3<696e707574206d6174726978>A F0<29>A<546865208c6c65206e616d652066 6f7220696e707574207468617420697320696e206d636c206e617469>120 722.4 Q .3 -.15<7665206d>-.25 H<617472697820666f726d61742e>.15 E <6d6378206572646f732031322d313335>20 768 Q<3134204d61792032303132> 135.125 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d6378206572646f73283129>20 48 Q <5553455220434f4d4d414e4453>136.235 E<6d6378206572646f73283129>138.735 E /F1 10/Times-Bold@0 SF<2d6f>100 84 Q F0<3c666e616d653e2028>2.5 E/F2 10 /Times-Italic@0 SF<6f7574707574208c6c65206e616d65>A F0<29>A<546865206e61 6d65206f6620746865208c6c6520746f207772697465206f757470757420746f2e>120 96 Q F1<2d746162>100 120 Q F0<3c666e616d653e2028>2.5 E F2 <75736520746162208c6c65>A F0<29>A .479<54686973206f7074696f6e2063617573 657320746865206f757470757420746f206265207072696e746564207769746820746865 206c6162656c7320666f756e6420696e2074686520746162208c6c652e>120 132 R -.4 <5769>5.478 G<7468>.4 E F1<2d616263>2.978 E F0 .819 <74686973206f7074696f6e2077696c6c2c206164646974696f6e616c6c79>120 144 R 3.319<2c63>-.65 G .819<6f6e7374727563742061206772617068206f6e6c79206f6e 20746865206c6162656c7320666f756e6420696e2074686520746162208c6c652e> -3.319 F<4966>5.82 E 1.59<74686973206f7074696f6e206973207573656420696e20 636f6e6a756e6374696f6e2077697468>120 156 R F1<2d696d78>4.09 E F0 1.59<74 68652074616220646f6d61696e20616e6420746865206d617472697820646f6d61696e20 617265>4.09 F<726571756972656420746f206265206964656e746963616c2e>120 168 Q F1<2d2d69732d646972>100 192 Q<6563746564>-.18 E F0<28>2.5 E F2 <636f6d7075746520646972>A<65637465642073686f7274657374207061746873>-.37 E F0<29>A 1.171<54686520696e707574206772617068206973206e6f74207472616e73 666f726d656420616e6420617373756d656420746f2062652064697265637465642e>120 204 R 1.171<53686f72746573742070617468732061726520636f6d2d>6.171 F <70757465642074616b696e67207468697320696e746f206163636f756e742e>120 216 Q F1<2d2d69732d756e646972>100 240 Q<6563746564>-.18 E F0<28>2.5 E F2 <736b69702073796d6d657472698c636174696f6e2073746570>A F0<29>A .457<5468 6520696e707574206772617068206973206e6f74207472616e73666f726d656420616e64 20617373756d656420746f20626520756e64697265637465642e>120 252 R .456 <53686f72746573742070617468732061726520636f6d2d>5.456 F .047<7075746564 206f6e2074686520617373756d7074696f6e20746861742074686520696e707574206973 20756e64697265637465642e205573652074686973206f7074696f6e206f6e6c79206966 20796f7520617265207375726520746865>120 264 R <696e70757420697320756e646972656374656420616e64206e65656420746f206861> 120 276 Q .3 -.15<76652066>-.2 H<61737465722065>.05 E -.15<7865>-.15 G <637574696f6e2e>.15 E F1<2d77726974652d70617468>100 300 Q F0 <3c666e616d653e2028>2.5 E F2<70617468206d6174726978208c6c65>A F0<29>A F1 <2d77726974652d73746570>100 312 Q F0<3c666e616d653e2028>2.5 E F2 <73746570206d6174726978208c6c65>A F0<29>A .457<5468652070617468206d6174 72697820656e756d65726174657320746865206e6f64657320746861742074616b>120 324 R 2.957<6570>-.1 G .457<61727420696e20616c6c2073686f7274657374207061 7468732e20546865208c727374206c69737420636f6e2d>-2.957 F 1.076<7461696e73 2074686f7365206e6f6465732074686174206c69652061742064697374616e6365203120 6f662074686520736f75726365206e6f64652c20746865207365636f6e64206c69737420 636f6e7461696e73206e6f646573>120 336 R .468 <6c79696e672061742064697374616e636520322c20616e6420736f206f6e2e>120 348 R .468<5468652073746570206d617472697820636f6e7461696e7320616c6c20746865 2065646765732074686174206d616b>5.468 F 2.967<6575>-.1 G 2.967<7074> -2.967 G .467<6865206c61742d>-2.967 F<74696365206f662073686f727465737420 7061746873206265747765656e20746865207477>120 360 Q 2.5<6f71>-.1 G <75657279206e6f6465732e>-2.5 E/F3 10.95/Times-Bold@0 SF <53454520414c534f>20 376.8 Q F1<6d6378696f283529>100 388.8 Q F0 2.666 <2c61>C<6e64>-2.666 E F1<6d636c66616d696c79283729>2.666 E F0 .166 <666f7220616e206f>2.666 F -.15<7665>-.15 G<72766965>.15 E 2.667<776f> -.25 G 2.667<6661>-2.667 G .167<6c6c2074686520646f63756d656e746174696f6e 20616e6420746865207574696c697469657320696e20746865206d636c>-2.667 F -.1 <6661>100 400.8 S<6d696c792e>.1 E<6d6378206572646f732031322d313335>20 768 Q<3134204d61792032303132>135.125 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcx.10000644000402500021140000000662311754271044010723 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcx" 1 "14 May 2012" "mcx 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcx \- perform various computations on graphs and matrices .SH SYNOPSIS .di ZV .in 0 .nf \fC \fBmcx\fP [mode-options] [mode-files] .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .SH DESCRIPTION \fBmcx\fP implements a variety of computations on graphs and matrices\&. The first argument to \fBmcx\fP should be a \fImode\fP, which is a string establishing the type of computation to invoke\&. Each mode \fImode\fP is described in the mcx\fImode\fP manual page\&. The currently available modes are \fBconvert\fP, \fBdiameter\fP, \fBclcf\fP, \fBq\fP and \fBctty\fP\&. The \fBconvert\fP mode is thus described in the \fBmcxconvert\fP manual page\&. Invoking \fBmcx\fP without arguments causes it to print out a list of available modes with a short description of the type of command line expected by that mode\&. Invoking \fBmcx\fP with just a mode will print out a longer listing of options available for that particular mode\&. Modes that are able to function normally without arguments can be invoked by adding the \fI--nop\fP argument\&. Several options are shared between all \fBmcx\fP modes\&. Note that these options are specified after the \fBmode\fP\&. See \fBOPTIONS\fP\&. The \fB--version\fP causes \fBmcx\fP to print out version and license information\&. Issuing \fImcx help mode\fP will cause \fBmcx\fP to look for a manual page describing \fImode\fP and display it if found\&. This requires that the MANPATH environment variable contains the directory in which the MCL-edge manual pages were installed\&. This will usually be \fCPREFIX/share\fP, where \fCPREFIX\fP is the path with which the software was configured\&. .SH OPTIONS These are options that pertain to all modes\&. They should be specified \fIafter\fP the mode argument\&. .ZI 2m "\fB-h\fP (\fIsynopsis\fP)" \& 'in -2m .ZI 2m "\fB--help\fP (\fIsynopsis\fP)" \& 'in -2m 'in +2m \& .br List available options\&. .in -2m .ZI 2m "\fB--nop\fP (\fIno-op\fP)" \& .br Not an option\&. This option has no effect then to increment the argument count\&. This can be useful for \fBmcx\fP modes which are able to function without any options\&. Such a mode typically reads from STDIN, writes to STDOUT, and uses default settings\&. However, simply specifying a mode without options leads \fBmcx\fP to output a list of available options for that mode\&. This can be prevented by using the \fB--nop\fP option\&. .in -2m .ZI 2m "\fB-set\fP (\fIkey=val\fP)" \& .br Sets the key\ \&\fBkey\fP to value\ \&\fBval\fP in the environment\&. Some modes allow adjustment of settings in this manner\&. .in -2m .ZI 2m "\fB-progress\fP (\fIprogress interval size\fP)" \& .br Defines the interval that defines the progress frequency\&. .in -2m .ZI 2m "\fB--debug\fP (\fIturn on debugging\fP)" \& .br Turn debugging on\&. .in -2m .ZI 2m "\fB--version\fP (\fIshow version\fP)" \& .br Show version\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcxdeblast.ps0000644000402500021140000005021311754271040012532 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:12 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 129.565<6d63786465626c6173742831292055534552>20 48 R 132.065<434f4d4d414e4453206d63786465626c617374283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0 1.872<6d63786465626c 61737420ad20706172736520424c415354208c6c657320616e642073747265616d206f75 74707574206469726563746c7920696e746f206d636c206f72207772697465206d637861 7373656d626c65>100 96 R<696e7075742e>100 108 Q F1<53594e4f50534953>20 124.8 Q/F2 10/Times-Bold@0 SF<6d63786465626c617374>100 136.8 Q F0 <8c6c652d6e616d65>2.5 E F2 2.146<6d63786465626c617374205b2d2d73636f72> 100 160.8 R<653d>-.18 E F0 2.146<3c627c657c723e2028>B/F3 10 /Times-Italic@0 SF 2.146<6269742073636f72>B 2.146 <65737c652d76616c7565737c6e6f726d616c697a65206269742073636f72>-.37 F<65> -.37 E F0<29>A F2 4.646<5d5b>C<2d2d6d39>-4.646 E F0<28>4.647 E F3 -.2 <6578>C 2.147<7065637420424c415354>.2 F .968<636f6c756d6e20666f726d6174> 100 172.8 R F0<29>A F2 3.468<5d5b>C<2d2d6f7574>-3.468 E F0 .968 <3c666e616d653e2028>3.468 F F3 .968<6f7574707574208c6c65>B F0<29>A F2 3.468<5d5b>C<2d2d6c696e652d6d6f6465>-3.468 E F0 .967<6162632028>3.467 F F3 .967<777269746520494431204944322073636f72>B 3.467<6566>-.37 G <6f726d6174>-3.467 E F0<29>A F2<5d>A<5b2d2d736f72743d>100 184.8 Q F0 2.025<3c617c6f3e2028>B F3<616c70686162657469637c6f6363757272>A 2.025 <656e636520736f7274696e67>-.37 F F0<29>A F2 4.526<5d5b>C <2d2d78692d6461743d>-4.526 E F0 2.026<3c7375663e2028>B F3 2.026 <7374726970203c7375663e206672>B 2.026<6f6d208c6c652d6e616d65>-.45 F F0 <29>A F2<5d>A<5b2d2d786f2d6461743d>100 196.8 Q F0 .401<3c7375663e2028>B F3 .401<616464203c7375663e20746f2062617365206e616d65>B F0<29>A F2 2.901 <5d5b>C<2d2d626375743d>-2.901 E F0<3c76>A .401<616c3e2028>-.25 F F3 .401 <6269742073636f72>B 2.901<6563>-.37 G<75746f66>-2.901 E<66>-.18 E F0<29> A F2 2.901<5d5b>C<2d2d656375743d>-2.901 E F0<3c76>A .4<616c3e2028>-.25 F F3<452d>A<76616c7565206375746f66>100 208.8 Q<66>-.18 E F0<29>A F2 2.5 <5d5b>C<2d2d72>-2.5 E<6375743d>-.18 E F0<3c76>A<616c3e2028>-.25 E F3 -.15<7261>C 2.5<7776>.15 G<616c7565206375746f66>-2.5 E<66>-.18 E F0<29>A F2 2.5<5d5b>C<2d2d7461623d>-2.5 E F0<3c666e616d653e2028>A F3 <746162208c6c65>A F0<29>A F2<5d>A F0<3c8c6c652d6e616d653e>2.5 E F1 <4445534352495054494f4e>20 225.6 Q F2<6d63786465626c617374>100 237.6 Q F0<70617273657320424c415354208c6c65732e>2.5 E<496e>100 261.6 Q F3 <737472>4.132 E 1.632<65616d206d6f6465>-.37 F F0 1.633<6d63786465626c61 7374206f75747075742063616e206265206469726563746c792073747265616d65642074 6f206d636c206279207573696e6720746865206d63786465626c617374>4.133 F F2 <2d2d6c696e652d6d6f6465>100 273.6 Q F0<3d>A F3<616263>A F0 .572<6f707469 6f6e20616e6420657175697070696e67206d636c207769746820656974686572>3.072 F F2<2d2d616263>3.072 E F0<6f72>3.071 E F2<2d2d6578706563742d616263>3.071 E F0 3.071<2e54>C .571<6869732063616e20626520636f6e2d>-3.071 F <73696465726564207468652065617379>100 285.6 Q 2.5<2c6c>-.65 G <6967687477656967687420616e642066>-2.5 E <61737420747261636b2e20546869732066756e6374696f6e616c6974792077>-.1 E <617320726563656e746c79206163717569726564206279206d636c2e>-.1 E 1.128<49 6e2074686520636c617373696320616e6420736c696768746c79206d6f726520686561> 100 309.6 R<76792d68616e646564>-.2 E F3 1.128 <617373656d626c65206d6f6465>3.628 F F0 3.629<2c6d>C 1.129 <63786465626c6173742063726561746573206f7574707574208c6c6573>-3.629 F .458<7375697461626c6520666f7220757365206279206d6378617373656d626c652e20 546865206c61747465722063616e20696e207475726e2063726561746520696e70757420 7375697461626c6520666f72206d636c2e205468697320697320746865>100 321.6 R <6d6f646520696e207768696368206d63786465626c61737420697320656d706c6f>100 333.6 Q<796564206279>-.1 E F2<6d636c626c6173746c696e65>2.5 E F0<2e>A F1 <53545245414d204d4f4445>20 350.4 Q F0 .846 <456e7465722073747265616d206d6f64652062792073706563698c79696e67>100 362.4 R F2<2d2d6c696e652d6d6f6465>3.346 E F0<3d>A F3<616263>A F0 5.846 <2e55>C<7365>-5.846 E F2<2d2d6d39>3.346 E F0 .847 <69662074686520696e70757420697320696e20636f6c756d6e6172206f75742d>3.346 F 1.221<7075742e20506970652074686520726573756c7420746f2061208c6c65206f72 206469726563746c7920746f206d636c2e204578616d706c6520696e>100 374.4 R -.2 <766f>-.4 G 1.22<636174696f6e732063616e20626520666f756e6420696e>.2 F F2 1.22<746865206d636c>3.72 F<6d616e75616c>100 386.4 Q F0<2e>A F1 <415353454d424c45204d4f4445>20 403.2 Q F0 .045 <49662074686520696e707574208c6c65206973206e616d6564>100 415.2 R/F4 10 /Courier@0 SF<69707574>2.545 E F0 2.545<2c6d>C .045 <63786465626c6173742077696c6c20627920646566>-2.545 F .045 <61756c7420637265617465208c6c6573>-.1 F F4<697075742e686472>2.545 E F0 <2c>A F4<697075742e726177>2.545 E F0<2c>A F4<697075742e746162>100 427.2 Q F0<2c>A F4<697075742e6d6170>2.745 E F0 2.745<2c61>C<6e64>-2.745 E F4 <697075742e657272>2.745 E F0 2.745<2e54>C<6865>-2.745 E F4<686472>2.745 E F0 .244<8c6c6520636f6e7461696e7320696e666f726d6174696f6e2061626f757420 746865206e756d626572>2.745 F .172 <6f66206e6f64657320666f756e642e2049742077696c6c2062652072656164206279> 100 439.2 R F2<6d6378617373656d626c65>2.673 E F0 2.673<2e54>C<6865> -2.673 E F4<726177>2.673 E F0 .173<8c6c6520636f6e7461696e73207468652063 6f2d6f6363757272656e63652073636f726573>2.673 F .883 <6265747765656e20646966>100 451.2 R .882<666572656e74206e6f646573202870 65707469646573292c20616c736f20746f2062652072656164206279206d637861737365 6d626c652e2054686520636f2d6f6363757272656e63652073636f726573>-.25 F .946 <61726520696e207465726d73206f66206d636c20696e64656e74696572732c20776869 636820617265207375626a656374656420746f207265617272616e67696e67206279206d 6378617373656d626c6520696e206f7264657220746f>100 463.2 R 1.074<636f7272 6563746c7920616c69676e207468656d20776974682074686520746162208c6c652e>100 475.2 R<546865>6.074 E F4<746162>3.574 E F0 1.073<8c6c6520636f6e7461696e 732062696e64696e6773206265747765656e206d636c206964656e74698c657273>3.573 F .399<286166746572207265617272616e67696e672061732073706563698c65642069 6e20746865206d6170208c6c652920616e642074686520424c415354206c6162656c7320 2870657074696465206964656e74698c657273292e205265666572>100 487.2 R .786 <746f20746865206d616e75616c206f66>100 499.2 R F2<6d6378617373656d626c65> 3.286 E F0 .785 <666f72207468652073796e746178206f66206120746162208c6c652e>3.286 F <546865>5.785 E F4<657272>3.285 E F0 .785 <8c6c6520636f6e7461696e732061206c697374206f6620616e>3.285 F<79>-.15 E <6572726f727320656e636f756e74657265642e>100 511.2 Q .378<496620746865> 100 535.2 R F2<2d2d746162>2.878 E F0<3d>A F2<666e616d65>A F0 .378<6f7074 696f6e2069732075736564206d63786465626c617374206368616e676573206974732062 656861>2.878 F .378 <76696f75722e2049742077696c6c207265616420746865208c6c65>-.2 F F2 <666e616d65>2.878 E F0<2c>A .602<616e6420757365207468652062696e64696e67 7320666f756e64207468657265696e2e2049742077696c6c206e6f206c6f6e676572206f 757470757420616e>100 547.2 R 3.102<796f>-.15 G 3.102<6674>-3.102 G<6865> -3.102 E F4<686472>3.102 E F0<2c>A F4<6d6170>3.102 E F0 3.102<2c6f>C<72> -3.102 E F4<746162>3.102 E F0<8c6c65732e>3.102 E<546865>100 559.2 Q F4 <686472>3.587 E F0 1.087<8c6c652073686f756c642062652070726f>3.587 F 1.087<7669646564206279207468652073616d65206170706c69636174696f6e20746861 742067656e657261746564207468652073706563698c656420746162208c6c652c>-.15 F .594<616e6420746865>100 571.2 R F4<6d6170>3.094 E F0 .593<8c6c65207368 6f756c64206e6f206c6f6e676572206265206e656365737361727920286974206d696768 7420626520636f6e>3.093 F -.15<7665>-.4 G .593 <6e69656e742074686f75676820616e64207065726861707320746865>.15 F <6675747572652077696c6c206272696e672061206e65>100 583.2 Q<77>-.25 E F2 <2d2d6d6170>2.5 E F0<6f7074696f6e292e>2.5 E<546865>100 607.2 Q F2 <2d2d746162>5.35 E F0<3d>A F2<666e616d65>A F0 2.85 <6f7074696f6e2063616e20626520636f6e>5.35 F -.15<7665>-.4 G 2.851<6e6965 6e7420652e672e20696620796f752073706c6974206120424c415354206a6f62206f>.15 F -.15<7665>-.15 G 5.351<726d>.15 G<756c7469706c65>-5.351 E .909 <6d616368696e657320616e642077>100 619.2 R .908<616e7420746f206170706c79 206d63786465626c61737420746f2065616368206f662074686520737562726573756c74 732e2059>-.1 F .908 <6f7520646f20746869732062792067656e65726174696e672061>-1.1 F .897 <73696e676c652063656e7472616c20746162208c6c6520696e20616476>100 631.2 R 3.397<616e63652e205468656e>-.25 F<70726f>3.397 E .898<766964652065616368 20696e7374616e6365206f66206d63786465626c61737420776974682074686973207461 62208c6c652e>-.15 F .203 <4561636820696e7374616e63652077696c6c2067656e65726174652061>100 643.2 R F4<726177>2.703 E F0 .203<8c6c652e20546865207265737065637469>2.703 F -.15<7665>-.25 G F4<726177>2.853 E F0 .202 <8c6c65732063616e2073696d706c7920626520636f6e636174656e6174656420616e64> 2.703 F .008<66656420746f206d6378617373656d626c65207573696e6720697473> 100 655.2 R F2<2d726177>2.508 E F0 .008 <6f7074696f6e2e204164646974696f6e616c6c79>2.508 F 2.508<2c61>-.65 G F4 <686472>A F0 .008 <8c6c652068617320746f2062652073706563698c656420666f72206d637861732d> 2.508 F .428<73656d626c65207573696e6720697473>100 667.2 R F2<2d686472> 2.928 E F0 .427<6f7074696f6e2e205468652073796e746178206f66>2.928 F F4 <686472>2.927 E F0 .427 <8c6c65732069732064657363726962656420696e20746865>2.927 F F2 <6d6378617373656d626c65>2.927 E F0<6d616e75616c2e>2.927 E 1.25<43757272 656e746c7920746865726520697320757375616c6c79206f6e6c79206f6e652076>100 679.2 R 1.25<61726961626c6520696e20746865>-.25 F F4<686472>3.75 E F0 1.25<8c6c652c20776869636820697320746865206e756d626572206f662062696e6469 6e6773>3.75 F 1.081 <6c697374656420696e2074686520746162208c6c652e2054686973206e756d626572> 100 691.2 R 3.581<2c69>-.4 G 3.581<6e74>-3.581 G 1.08<75726e2c2073686f75 6c6420657175616c2074686520746f74616c206e756d626572206f6620646966>-3.581 F 1.08<666572656e74207065707469646573>-.25 F <656e636f756e746572656420696e2074686520424c41535420696e7075742e>100 703.2 Q<6d63786465626c6173742031322d313335>20 768 Q <3134204d61792032303132>130.955 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 129.565<6d63786465626c6173742831292055534552>20 48 R 132.065<434f4d4d414e4453206d63786465626c617374283129>2.5 F/F1 10.95 /Times-Bold@0 SF<4f5054494f4e53>20 84 Q/F2 10/Times-Bold@0 SF <2d2d746162>100 96 Q F0<3d3c666e616d653e2028>A/F3 10/Times-Italic@0 SF <746162208c6c65>A F0<29>A<53706563696679206120746162208c6c6520746f207573 652c20726174686572207468616e206175746f6d61746963616c6c792067656e65726174 696e67206f6e652e>120 108 Q F2<2d2d6f7574>100 132 Q F0 <3c666e616d653e2028>2.5 E F3<6f7574707574208c6c65>A F0<29>A<537065636966 7920746865206e616d6520666f7220746865206f7574707574208c6c652e>120 144 Q F2<2d2d73636f72>100 168 Q<65>-.18 E F0<3d3c627c657c723e2028>A F3 <6269742073636f72>A<65737c652d76616c7565737c6e6f726d206269742073636f72> -.37 E<65>-.37 E F0<29>A<53706563696679207768657468657220746f2075736520 6269742073636f7265732c20452d76>120 180 Q<616c7565732c206f72206269742073 636f726573206e6f726d616c697a6564206279206c656e677468206f6620746865204853 502e>-.25 E F2<2d2d736f7274>100 204 Q F0<3d3c617c6f3e2028>A F3 <616c70686162657469637c6f6363757272>A<656e636520736f7274696e67>-.37 E F0 <29>A<5370656369667920686f>120 216 Q 2.5<7774>-.25 G 2.5<6f73>-2.5 G <6f7274206c6162656c732e>-2.5 E F2<2d2d6d39>100 240 Q F0<28>2.5 E F3 -.2 <6578>C<7065637420424c41535420636f6c756d6e20666f726d6174>.2 E F0<29>A<55 73652074686973206f7074696f6e20746f20706172736520424c415354206f7574707574 20666f726d6174746564207769746820746865202d6d2039206f7074696f6e2e>120 252 Q F2<2d2d6c696e652d6d6f6465>100 276 Q F0<3d6162632028>A F3 <777269746520494431204944322053434f524520666f726d6174>A F0<29>A .447<55 7365207468697320746f2073747265616d206f7574707574206469726563746c7920696e 746f206d636c2e2048657265>120 288 R/F4 10/Courier@0 SF<616263>2.947 E F0 .448<69732061206c69746572616c3b>2.947 F F2<2d2d6c696e652d6d6f6465>2.948 E F0 .448<6d61792061637175697265>2.948 F <6f74686572206c696e65206f7574707574206d6f6465732e>120 300 Q F2 <2d2d78692d646174>100 324 Q F0<3d3c7375663e2028>A F3 <7374726970203c7375663e206672>A<6f6d203c8c6c652d6e616d653e>-.45 E F0<29> A .577<4966207365742c2074686520737566>120 336 R .576<8c78203c7375663e20 69732073747269707065642066726f6d208c6c652d6e616d6520696e206f726465722074 6f206f627461696e207468652062617365206e616d6520666f72206f75742d>-.25 F .055<7075742e204966203c8c6c652d6e616d653e20646f6573206e6f7420656e642077 69746820737566>120 348 R .056<8c782c20697420697320617373756d656420746f20 6265207468652062617365206e616d652c20616e64203c7375663e206973>-.25 F<6164 64656420696e206f7264657220746f206f627461696e2074686520287265616c29208c6c 652d6e616d652e>120 360 Q F2<2d2d786f2d646174>100 384 Q F0 <3d3c7375663e2028>A F3<616464203c7375663e20746f2062617365206e616d65>A F0 <29>A .572<41747461636865732074686520737566>120 396 R .571<8c7820746f20 7468652062617365206e616d652e20557365207468697320746f2064697374696e677569 7368206265747765656e20646966>-.25 F .571 <666572656e74207061727365732e204f6e65>-.25 F<6d6967687420666f722065>120 408 Q<78616d706c6520757365>-.15 E F2<2d2d73636f72>2.5 E<65>-.18 E F0<3d> A F3<62>A F2<2d2d62637574>2.5 E F0<3d>A F3<35>A F2<2d2d786f2d646174>2.5 E F0<3d>A F3<62>A F0<2e>A F2<2d2d62637574>100 432 Q F0<3d3c76>A <616c3e2028>-.25 E F3<6269742073636f72>A 2.5<6563>-.37 G<75746f66>-2.5 E <66>-.18 E F0<29>A 1.476<4269742073636f7265732062656c6f>120 444 R 3.976 <7774>-.25 G 1.476<6865206375746f66>-3.976 F 3.976<6676>-.25 G 1.476<61 6c7565206172652069676e6f7265642e205468697320747269676765727320746865206f 7574707574206f66206269742073636f72657320616e64>-4.226 F <69676e6f72657320616c6c206f746865722076>120 456 Q<616c7565732e>-.25 E F2 <2d2d65637574>100 480 Q F0<3d3c76>A<616c3e2028>-.25 E F3 <452d76616c7565206375746f66>A<66>-.18 E F0<29>A<452d76>120 492 Q 2.341 <616c7565732062656c6f>-.25 F 4.841<7774>-.25 G 2.341<6865206375746f66> -4.841 F 4.841<6676>-.25 G 2.341<616c7565206172652069676e6f7265642e2054 68697320747269676765727320746865206f7574707574206f6620452d76>-5.091 F 2.34<616c75657320616e64>-.25 F<69676e6f72657320616c6c206f746865722076> 120 504 Q<616c7565732e>-.25 E F2<2d2d72>100 528 Q<637574>-.18 E F0 <3d3c76>A<616c3e2028>-.25 E F3 -.15<7261>C 2.5<7776>.15 G <616c7565206375746f66>-2.5 E<66>-.18 E F0<29>A<5261>120 540 Q 3.252 <7776>-.15 G .752<616c7565732062656c6f>-3.502 F 3.252<7774>-.25 G .752 <6865206375746f66>-3.252 F 3.252<6676>-.25 G .753<616c756520617265206967 6e6f7265642e205468697320747269676765727320746865206f7574707574206f662072 61>-3.502 F 3.253<7776>-.15 G .753<616c75657320616e64>-3.503 F <69676e6f72657320616c6c206f746865722076>120 552 Q<616c7565732e>-.25 E F1 -.548<4155>20 568.8 S<54484f52>.548 E F0 4.066<5374696a6e2076>100 580.8 R 4.066<616e20446f6e67656e2e>-.25 F 4.066 <4a61736f6e205374616a69636820696d706c656d656e74656420746865>9.066 F F2 <2d2d6d39>6.565 E F0 6.565<6f7074696f6e2e204162656c>6.565 F <55726574612d56>6.565 E 4.065<6964616c20616e64>-.6 F <44696e616b617270616e6469616e204465656e646179616c20636f6e74726962>100 592.8 Q<757465642068656c7066756c20636f6d6d656e747320616e64208c78>-.2 E <65732e>-.15 E F1<53454520414c534f>20 609.6 Q F2 <6d636c626c6173746c696e65>100 621.6 Q F0<2c>A F2<6d6378617373656d626c65> 2.5 E F0<2c>A F2<6d636c>2.5 E F0<2c>A F2<636c6d66>2.5 E<6f726d6174>-.25 E F0<2e>A<6d63786465626c6173742031322d313335>20 768 Q <3134204d61792032303132>130.955 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxctty.ps0000644000402500021140000003765311754271044012120 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:16 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d63782063747479283129>20 48 Q <5553455220434f4d4d414e4453>142.895 E<6d63782063747479283129>145.395 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d6378206374 747920ad20636f6d70757465206265747765656e6e6573732063656e7472616c69747920 666f72206e657477>100 96 Q<6f726b206e6f646573>-.1 E F1<53594e4f50534953> 20 112.8 Q/F2 10/Times-Bold@0 SF<6d63782063747479>100 124.8 Q F0 <5b6f7074696f6e735d205b6d61747269782d8c6c655d>2.5 E .409 <6d637863747479206973206e6f7420696e2061637475616c2066>100 148.8 R .409< 61637420612070726f6772616d2e2054686973206d616e75616c207061676520646f6375 6d656e7473207468652062656861>-.1 F .408 <76696f757220616e64206f7074696f6e73>-.2 F 1.696 <6f6620746865206d63782070726f6772616d207768656e20696e>100 160.8 R -.2 <766f>-.4 G -.1<6b65>.2 G 4.196<6469>.1 G 4.196<6e6d>-4.196 G<6f6465> -4.196 E/F3 10/Times-Italic@0 SF<63747479>4.196 E F0 4.197<2e54>C 1.697 <6865206f7074696f6e73>-4.197 F F2<2d68>4.197 E F0<2c>A F2<2d2d617072> 4.197 E<6f706f73>-.18 E F0<2c>A F2<2d2d76>4.197 E<657273696f6e>-.1 E F0 <2c>A F2<2d736574>4.197 E F0<2c>A F2<2d2d6e6f70>100 172.8 Q F0<2c>A F2 <2d7072>3.123 E<6f6772>-.18 E<657373>-.18 E F3<3c6e756d3e>2.5 E F0 .622 <6172652061636365737369626c6520696e20616c6c>3.123 F F2<6d6378>3.122 E F0 .622<6d6f6465732e20546865>3.122 F 3.122<7961>-.15 G .622 <72652064657363726962656420696e20746865>-3.122 F F2<6d6378>3.122 E F0 <6d616e2d>3.122 E<75616c20706167652e>100 184.8 Q F2 .97 <6d63782063747479205b2d616263>100 208.8 R F0 .971<3c666e616d653e2028> 3.471 F F3 .971<73706563696679206c6162656c20696e707574>B F0<29>A F2 3.471<5d5b>C<2d696d78>-3.471 E F0 .971<3c666e616d653e2028>3.471 F F3 .971<73706563696679206d617472697820696e707574>B F0<29>A F2 3.471<5d5b>C <2d657874656e74>-3.471 E F0 1.888<3c696e743e2028>100 220.8 R F3 1.887<6f 6e6c7920636f6e7369646572207061746873206f66206c656e677468206174206d6f7374 203c696e743e>B F0<29>A F2 4.387<5d5b>C<2d6f>-4.387 E F0 1.887 <3c666e616d653e2028>4.387 F F3 1.887<6f7574707574208c6c65206e616d65>B F0 <29>A F2 4.387<5d5b>C<2d746162>-4.387 E F0 1.537<3c666e616d653e2028>100 232.8 R F3 1.537<75736520746162208c6c65>B F0<29>A F2 4.037<5d5b>C<2d74> -4.037 E F0 1.537<3c696e743e2028>4.037 F F3 1.537 <757365203c696e743e20746872>B<65616473>-.37 E F0<29>A F2 4.038<5d5b>C <2d4a>-4.038 E F0 1.538<3c696e744a3e2028>4.038 F F3 4.038<6174>C 1.538 <6f74616c206f66203c696e744a3e206a6f6273206172>-4.038 F<65>-.37 E <75736564>100 244.8 Q F0<29>A F2 3.072<5d5b>C<2d6a>-3.072 E F0 .572 <3c696e746a3e2028>3.072 F F3 .572<74686973206a6f622068617320696e6465>B 3.071<783c>-.2 G<696e746a3e>-3.071 E F0<29>A F2 3.071<5d5b>C<2d68>-3.071 E F0<28>3.071 E F3 .571<7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2 3.071<5d5b>C<2d2d617072>-3.071 E<6f706f73>-.18 E F0<28> 3.071 E F3 .571<7072696e742073796e6f702d>B<7369732c2065>100 256.8 Q <786974>-.2 E F0<29>A F2 2.5<5d5b>C<2d2d76>-2.5 E<657273696f6e>-.1 E F0 <28>2.5 E F3<7072696e7420766572>A<73696f6e2c2065>-.1 E<786974>-.2 E F0 <29>A F2<5d>A F1<4445534352495054494f4e>20 273.6 Q F2 .359 <6d63782063747479>100 285.6 R F0 .359<636f6d7075746573206265747765656e6e 6573732063656e7472616c69747920666f7220616c6c206e6f64657320696e2061206772 6170682c207573696e6720746865206265747765656e2063656e7472616c697479>2.859 F<75706461746520616c676f726974686d2066726f6d205b315d2e>100 297.6 Q .462< 54686520696e7075742067726170682f6d61747269782c2069662073706563698c656420 7769746820746865>100 321.6 R F2<2d696d78>2.961 E F0 .461<6f7074696f6e2c 2068617320746f20626520696e206d636c206d61747269782f677261706820666f726d61 742e>2.961 F -1.1<596f>100 333.6 S 2.793<7563>1.1 G .293<616e2075736520 6c6162656c20696e70757420696e7374656164206279207573696e6720746865>-2.793 F F2<2d616263>2.794 E F0 2.794<6f7074696f6e2e205265666572>2.794 F<746f> 2.794 E F2<6d6378696f283529>2.794 E F0 .294 <666f722061206465736372697074696f6e206f66>2.794 F .778<7468657365207477> 100 345.6 R 3.278<6f69>-.1 G .778<6e70757420666f726d6174732e>-3.278 F .778<427920646566>5.778 F<61756c74>-.1 E F2 .778 <6d6378206469616d65746572>3.278 F F0 .778 <72656164732066726f6d20535444494e>3.278 F F3 .778<616e642065>3.278 F .777<787065637473206d617472697820666f72>-.2 F<2d>-.2 E<6d6174>100 357.6 Q F0 5<2e54>C 2.5<6f73>-5.8 G <706563696679206c6162656c20696e7075742066726f6d20535444494e20757365>-2.5 E F2<2d616263202d>2.5 E F0<2e>A F1<4f5054494f4e53>20 374.4 Q F2 <2d616263>100 386.4 Q F0<3c666e616d653e2028>2.5 E F3 <6c6162656c20696e707574>A F0<29>A<546865208c6c65206e616d6520666f7220696e 707574207468617420697320696e206c6162656c20666f726d61742e>120 398.4 Q F2 <2d696d78>100 422.4 Q F0<3c666e616d653e2028>2.5 E F3 <696e707574206d6174726978>A F0<29>A<546865208c6c65206e616d6520666f722069 6e7075742e20535444494e20697320617373756d6564206966206e6f742073706563698c 65642e>120 434.4 Q F2<2d6f>100 458.4 Q F0<3c666e616d653e2028>2.5 E F3 <6f7574707574208c6c65206e616d65>A F0<29>A<546865206e616d65206f6620746865 208c6c6520746f207772697465206f757470757420746f2e>120 470.4 Q F2 <2d657874656e74>100 494.4 Q F0<3c696e743e2028>2.5 E F3<6f6e6c7920636f6e 7369646572207061746873206f66206c656e677468206174206d6f7374203c696e743e>A F0<29>A 1.196<54686973206f7074696f6e2077696c6c206c65616420746f20646966> 120 506.4 R 1.196<666572656e7420726573756c74732e20526573756c74732077696c 6c207374696c6c20626520696e666f726d617469>-.25 F 1.497 -.15<76652068>-.25 H -.25<6f77>.15 G -2.15 -.25<65762065>.25 H 1.997 -.4<722c2062>.25 H <65696e67>.4 E<726570726573656e74617469>120 518.4 Q .785 -.15<76652066> -.25 H .485<6f7220746865206c6f63616c20636f6e7465>.15 F .484<787420696e20 7768696368206e6f646573207265736964652e20497420646f65732070726f6261626c79 206e6f74206d616b>-.15 F 2.984<6573>-.1 G<656e7365>-2.984 E <746f207573652076>120 530.4 Q <616c75657320736d616c6c6572207468616e20666f7572206f72208c76>-.25 E<652e> -.15 E F2<2d746162>100 554.4 Q F0<3c666e616d653e2028>2.5 E F3 <75736520746162208c6c65>A F0<29>A .479<54686973206f7074696f6e2063617573 657320746865206f757470757420746f206265207072696e746564207769746820746865 206c6162656c7320666f756e6420696e2074686520746162208c6c652e>120 566.4 R -.4<5769>5.479 G<7468>.4 E F2<2d616263>2.979 E F0 .82 <74686973206f7074696f6e2077696c6c2c206164646974696f6e616c6c79>120 578.4 R 3.32<2c63>-.65 G .819<6f6e7374727563742061206772617068206f6e6c79206f6e 20746865206c6162656c7320666f756e6420696e2074686520746162208c6c652e>-3.32 F<4966>5.819 E 1.59<74686973206f7074696f6e206973207573656420696e20636f6e 6a756e6374696f6e2077697468>120 590.4 R F2<2d696d78>4.09 E F0 1.59<746865 2074616220646f6d61696e20616e6420746865206d617472697820646f6d61696e206172 65>4.09 F<726571756972656420746f206265206964656e746963616c2e>120 602.4 Q F2<2d74>100 626.4 Q F0<3c696e743e2028>2.5 E F3 <757365203c696e743e20746872>A<65616473>-.37 E F0<29>A F2<2d4a>100 638.4 Q F0<3c696e744a3e2028>2.5 E F3 2.5<6174>C <6f74616c206f66203c696e744a3e206a6f6273206172>-2.5 E 2.5<6575>-.37 G <736564>-2.5 E F0<29>A F2<2d6a>100 650.4 Q F0<3c696e746a3e2028>2.5 E F3 <74686973206a6f622068617320696e6465>A 2.5<783c>-.2 G<696e746a3e>-2.5 E F0<29>A .389<436f6d707574696e672063656e7472616c6974792073636f7265732069 6e20612067726170682069732074696d652d696e74656e7369>120 662.4 R -.15 <7665>-.25 G 5.389<2e49>.15 G 2.889<6679>-5.389 G .389<6f75206861>-2.889 F .689 -.15<7665206d>-.2 H .389<756c7469706c6520435055732061>.15 F -.25 <7661>-.2 G<696c2d>.25 E .757 <61626c6520636f6e7369646572207573696e67206173206d616e>120 674.4 R 3.257 <7974>-.15 G .757<6872656164732e204164646974696f6e616c6c7920697420697320 706f737369626c6520746f207370726561642074686520636f6d7075746174696f6e> -3.257 F -.15<6f7665>120 686.4 S 3.699<726d>.15 G 1.199 <756c7469706c65206a6f62732f6d616368696e65732e>-3.699 F <436f6e6365707475616c6c79>6.199 E 3.699<2c65>-.65 G 1.198 <616368206a6f622074616b>-3.699 F 1.198 <65732061206e756d626572206f6620746872656164732066726f6d20746865>-.1 F 1.583<746f74616c2074687265616420706f6f6c2e204966206a6f6220636f6e74726f6c 20697320757365642028746865>120 698.4 R F2<2d4a>4.084 E F0 1.584<6f707469 6f6e206973207573656429207468656e20746865206e756d626572206f66206a6f6273> 4.084 F .675<73686f756c64206e6f742065>120 710.4 R .675<7863656564207468 65206e756d626572206f6620746872656164732e2054686520746f74616c206e756d6265 72206f662074687265616473206469>-.15 F .674 <76696465642062792074686520746f74616c>-.25 F 2.833<6e756d626572206f6620 6a6f62732064658c6e657320746865206e756d626572206f662074687265616473207468 61742077696c6c2062652075736564206279207468652063757272656e74206a6f622e> 120 722.4 R<6d637820637474792031322d313335>20 768 Q <3134204d61792032303132>141.785 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<6d63782063747479283129>20 48 Q <5553455220434f4d4d414e4453>142.895 E<6d63782063747479283129>145.395 E <4164646974696f6e616c6c79>120 84 Q 2.741<2c74>-.65 G .241<6865206e756d62 6572206f6620746872656164732073706563698c6564207369676e698c65732074686520 746f74616c20616464656420616d6f756e74206f6620616c6c2074687265616473> -2.741 F .647<6163726f737320616c6c206d616368696e657320616e64>120 96 R/F1 10/Times-Italic@0 SF<6d757374>3.147 E F0 .648<6265207468652073616d652066 6f7220616c6c206a6f62732e2054686973206e756d626572206973207573656420627920 65616368206a6f6220746f>3.148 F 1.297<696e66657220697473206f>120 108 R 1.297<776e20736574206f66207461736b732e>-.25 F 1.296<54686520666f6c6c6f> 6.296 F 1.296<77696e6720736574206f66206f7074696f6e732c206966206769>-.25 F -.15<7665>-.25 G 3.796<6e74>.15 G 3.796<6f61>-3.796 G 3.796<736d> -3.796 G<616e>-3.796 E 3.796<7963>-.15 G<6f6d6d616e64732c>-3.796 E<6465 8c6e6573207468726565206a6f62732c20656163682072756e6e696e6720666f75722074 6872656164732e>120 120 Q/F2 10/Courier@0 SF <2d74203132202d472033202d672030>120 144 Q <2d74203132202d472033202d672031>120 156 Q <2d74203132202d472033202d672032>120 168 Q/F3 10.95/Times-Bold@0 SF <5245464552454e434553>20 196.8 Q F0 1.771 <5b315d20556c72696b204272616e6465732c>100 208.8 R F1 4.272<4146>4.272 G 1.772<617374657220416c676f726974686d20666f72204265747765656e6e6573732043 656e7472>-5.022 F<616c697479>-.15 E F0 6.772<2e4a>C 1.772 <6f75726e616c206f66204d617468656d61746963616c>-6.772 F 20.4 <536f63696f6c6f67792032352832293a203136332d3137372c202832303031292e>100 220.8 R <687474703a2f2f6369746573656572782e6973742e7073752e6564752f766965>25.4 E <77646f632f73756d2d>-.25 E <6d6172793f646f693d31302e312e312e31312e32303234>100 232.8 Q F3 <53454520414c534f>20 249.6 Q/F4 10/Times-Bold@0 SF<6d6378696f283529>100 261.6 Q F0 2.666<2c61>C<6e64>-2.666 E F4<6d636c66616d696c79283729>2.666 E F0 .166<666f7220616e206f>2.666 F -.15<7665>-.15 G<72766965>.15 E 2.667 <776f>-.25 G 2.667<6661>-2.667 G .167<6c6c2074686520646f63756d656e746174 696f6e20616e6420746865207574696c697469657320696e20746865206d636c>-2.667 F -.1<6661>100 273.6 S<6d696c792e>.1 E<6d637820637474792031322d313335>20 768 Q<3134204d61792032303132>141.785 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clmimac.html0000644000402500021140000002120711754271041012335 00000000000000 The clm imac manual

14 May 2012    clm imac 12-135

NAME

clm imac — Interpret Matrices (c.q. MCL iterands output by mcl) As Clusterings.

clmimac is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode imac. The options -h, --apropos, --version, -set, --nop are accessible in all clm modes. They are described in the clm manual page.

SYNOPSIS

clm imac -imx <fname> [options]

clm imac -imx fname (input file) [-o fname (name/stem for output)] [-dag fname (output DAG)] [-overlap str (overlap mode)] [-sort str (size|revsize|lex|none)] [-strict num (in 0..1)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

Use clm imac to interpret matrices (as clusterings) output by mcl using mcl's -dump ite option.

Use clm imac only if you have a special reason; the normal usage of mcl is to do multiple runs for varying -I parameters and use the clusterings output by mcl itself. One reason is if you are interested in clusterings with overlap; early MCL iterands generally induce clusterings possessing overlap. Another reason is to investigate how the cluster structure associated with the MCL process evolves over time.

OPTIONS

-imx fname (input file)

The input file is presumably an MCL iterand resulting from the mcl option -dump ite.

 
-strict num (in 0..1)

Higher values (up until 1) will thin out the DAG constructed by clm imac. The default value is 0.00001, yielding the full DAG.

 
-o fname (file name/stem)

Write to file named fname.

 
-dag fname (output DAG)

Write the DAG (directed acyclic graph) constructed from the input to file. This DAG is constructed according to the structure associated with diagonally positive semi-definite matrices as described in the PhD thesis Graph clustering by flow simulation. Consult mclfamily for references.

 
-sort str (size|revsize|lex|none)

Sort the clusters either by increasing size, decreasing size, lexicographically by the indices they contain, or use the clustering exactly as obtained from the interpretation routine.

 
-overlap mode (overlap mode)

With mode set to cut, remove any overlap by allocating the nodes in overlap to the first cluster in which they were found. Mode keep leaves overlap unchanged, and mode split results in overlapping parts excised and introduced as clusters in their own right.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/Makefile.in0000644000402500021140000006574711754271036012134 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = doc DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in TODO ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' man1dir = $(mandir)/man1 am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" \ "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(docdir)" man5dir = $(mandir)/man5 man7dir = $(mandir)/man7 NROFF = nroff MANS = $(man_MANS) DATA = $(doc_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = $(datadir)/doc/$(PACKAGE) dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ TROFF = groff COL = col ZOEM = zoem TIDY = tidy # mclfamily.html mclfamily.ps doc_DATA_dep = mcl.html mcl.ps mcl.txt \ mclcm.html mclcm.ps mclcm.txt \ mclfaq.html mclfaq.ps mclfaq.txt \ mclfamily.html mclfamily.ps \ mcx.html mcx.ps \ mcxi.html mcxi.ps \ clm.html clm.ps \ mcxconvert.html mcxconvert.ps \ mcxarray.html mcxarray.ps \ mcxdump.html mcxdump.ps \ mcxdiameter.html mcxdiameter.ps \ mcxerdos.html mcxerdos.ps \ mcxalter.html mcxalter.ps \ mcxclcf.html mcxclcf.ps \ mcxctty.html mcxctty.ps \ mcxrand.html mcxrand.ps \ mcxload.html mcxload.ps \ mcxsubs.html mcxsubs.ps \ mcxmap.html mcxmap.ps \ mcxquery.html mcxquery.ps \ mcxassemble.html mcxassemble.ps \ mclpipeline.html mclpipeline.ps \ index.html mclindex.ps \ clmimac.html clmimac.ps \ clmclose.html clmclose.ps \ clmresidue.html clmresidue.ps \ clmdist.html clmdist.ps \ clmvol.html clmvol.ps \ clminfo.html clminfo.ps \ clmmate.html clmmate.ps \ clmmeet.html clmmeet.ps \ clmformat.html clmformat.ps \ clmorder.html clmorder.ps \ minimcl \ mcxio.html mcxio.ps \ clmprotocols.html clmprotocols.ps \ clmprotocols2.html clmprotocols2.ps \ tingea.log.html tingea.log.ps doc_DATA = $(doc_DATA_dep) mclmcl.txt man_MANS = mcl.1 mclcm.1 clm.1 mclindex.7 mclfamily.7 mclfaq.7 mcx.1 mcxi.1 mcxio.5 clmprotocols2.5 clmprotocols.5 \ clmresidue.1 clmclose.1 clmimac.1 clmmate.1 clmmeet.1 clmformat.1 \ clmvol.1 clmdist.1 clminfo.1 clmorder.1 \ mcxconvert.1 mcxassemble.1 mcxmap.1 mcxsubs.1 mcxload.1 mcxdump.1 mcxarray.1 mcxrand.1 \ mcxalter.1 mcxerdos.1 mcxdiameter.1 mcxctty.1 mcxclcf.1 mcxquery.1 \ mclpipeline.1 \ tingea.log.7 MAINTAINERCLEANFILES = $(man_MANS) $(doc_DATA_dep) ALIENFILES = mcxdeblast.html mcxdeblast.ps mclblastline.html mclblastline.ps EXTRA_DIST = mclmcl.txt mcx.zmm\ stamp.day stamp.month stamp.stamp stamp.year\ clmformat.azm clmvol.azm clmdist.azm clmmate.azm clminfo.azm clmmeet.azm\ clm.azm clmorder.azm mcl.azm mclcm.azm\ mclfamily.azm mclfaq.azm mcxi.azm mcx.azm mcxquery.azm mclpipeline.azm\ mcxdump.azm mcxconvert.azm clmprotocols2.azm clmprotocols.azm mcxio.azm clmresidue.azm clmclose.azm clmimac.azm mcxassemble.azm\ mcxalter.azm mcxerdos.azm mcxdiameter.azm mcxctty.azm mcxclcf.azm mcxrand.azm\ mcxload.azm mcxmap.azm mcxarray.azm mcxsubs.azm index.in.azm index.html distindex.html\ tingea.log.azm\ $(ALIENFILES)\ $(MAINTAINERCLEANFILES) SUFFIXES = .1 .5 .7 .azm .html .ps .txt SHARE1 = "--exclude=version,h,help" SHARE2 = "--exclude=nop,version,set,h,help,debug,test,progress" all: all-am .SUFFIXES: .SUFFIXES: .1 .5 .7 .azm .html .ps .txt $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu doc/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-man1: $(man_MANS) @$(NORMAL_INSTALL) test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)" @list=''; test -n "$(man1dir)" || exit 0; \ { for i in $$list; do echo "$$i"; done; \ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ sed -n '/\.1[a-z]*$$/p'; \ } | while read p; do \ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; echo "$$p"; \ done | \ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ sed 'N;N;s,\n, ,g' | { \ list=; while read file base inst; do \ if test "$$base" = "$$inst"; then list="$$list $$file"; else \ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \ fi; \ done; \ for i in $$list; do echo "$$i"; done | $(am__base_list) | \ while read files; do \ test -z "$$files" || { \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \ done; } uninstall-man1: @$(NORMAL_UNINSTALL) @list=''; test -n "$(man1dir)" || exit 0; \ files=`{ for i in $$list; do echo "$$i"; done; \ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ sed -n '/\.1[a-z]*$$/p'; \ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ test -z "$$files" || { \ echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(man1dir)" && rm -f $$files; } install-man5: $(man_MANS) @$(NORMAL_INSTALL) test -z "$(man5dir)" || $(MKDIR_P) "$(DESTDIR)$(man5dir)" @list=''; test -n "$(man5dir)" || exit 0; \ { for i in $$list; do echo "$$i"; done; \ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ sed -n '/\.5[a-z]*$$/p'; \ } | while read p; do \ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; echo "$$p"; \ done | \ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ sed 'N;N;s,\n, ,g' | { \ list=; while read file base inst; do \ if test "$$base" = "$$inst"; then list="$$list $$file"; else \ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man5dir)/$$inst'"; \ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man5dir)/$$inst" || exit $$?; \ fi; \ done; \ for i in $$list; do echo "$$i"; done | $(am__base_list) | \ while read files; do \ test -z "$$files" || { \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man5dir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(man5dir)" || exit $$?; }; \ done; } uninstall-man5: @$(NORMAL_UNINSTALL) @list=''; test -n "$(man5dir)" || exit 0; \ files=`{ for i in $$list; do echo "$$i"; done; \ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ sed -n '/\.5[a-z]*$$/p'; \ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ test -z "$$files" || { \ echo " ( cd '$(DESTDIR)$(man5dir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(man5dir)" && rm -f $$files; } install-man7: $(man_MANS) @$(NORMAL_INSTALL) test -z "$(man7dir)" || $(MKDIR_P) "$(DESTDIR)$(man7dir)" @list=''; test -n "$(man7dir)" || exit 0; \ { for i in $$list; do echo "$$i"; done; \ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ sed -n '/\.7[a-z]*$$/p'; \ } | while read p; do \ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; echo "$$p"; \ done | \ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^7][0-9a-z]*$$,7,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ sed 'N;N;s,\n, ,g' | { \ list=; while read file base inst; do \ if test "$$base" = "$$inst"; then list="$$list $$file"; else \ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man7dir)/$$inst'"; \ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man7dir)/$$inst" || exit $$?; \ fi; \ done; \ for i in $$list; do echo "$$i"; done | $(am__base_list) | \ while read files; do \ test -z "$$files" || { \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man7dir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(man7dir)" || exit $$?; }; \ done; } uninstall-man7: @$(NORMAL_UNINSTALL) @list=''; test -n "$(man7dir)" || exit 0; \ files=`{ for i in $$list; do echo "$$i"; done; \ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ sed -n '/\.7[a-z]*$$/p'; \ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^7][0-9a-z]*$$,7,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ test -z "$$files" || { \ echo " ( cd '$(DESTDIR)$(man7dir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(man7dir)" && rm -f $$files; } install-docDATA: $(doc_DATA) @$(NORMAL_INSTALL) test -z "$(docdir)" || $(MKDIR_P) "$(DESTDIR)$(docdir)" @list='$(doc_DATA)'; test -n "$(docdir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(docdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(docdir)" || exit $$?; \ done uninstall-docDATA: @$(NORMAL_UNINSTALL) @list='$(doc_DATA)'; test -n "$(docdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(docdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(docdir)" && rm -f $$files tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @list='$(MANS)'; if test -n "$$list"; then \ list=`for p in $$list; do \ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \ if test -n "$$list" && \ grep 'ab help2man is required to generate this page' $$list >/dev/null; then \ echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \ grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \ echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \ echo " typically \`make maintainer-clean' will remove them" >&2; \ exit 1; \ else :; fi; \ else :; fi @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(MANS) $(DATA) installdirs: for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(docdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-docDATA install-man install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-man1 install-man5 install-man7 install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-docDATA uninstall-man uninstall-man: uninstall-man1 uninstall-man5 uninstall-man7 .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am \ install-docDATA install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-man1 install-man5 \ install-man7 install-pdf install-pdf-am install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-docDATA uninstall-man uninstall-man1 \ uninstall-man5 uninstall-man7 .azm.1: $(ZOEM) -d roff -i $< -o $@ $(ZOEM) -d roff -i $< -o $@ .azm.5: $(ZOEM) -d roff -i $< -o $@ $(ZOEM) -d roff -i $< -o $@ .azm.7: $(ZOEM) -d roff -i $< -o $@ $(ZOEM) -d roff -i $< -o $@ .1.ps: $(TROFF) -man $< > $@ .5.ps: $(TROFF) -man $< > $@ .7.ps: $(TROFF) -man $< > $@ .1.txt: $(TROFF) -t -e -mandoc -Tascii $< | $(COL) -bx > $@ .5.txt: $(TROFF) -t -e -mandoc -Tascii $< | $(COL) -bx > $@ .7.txt: $(TROFF) -t -e -mandoc -Tascii $< | $(COL) -bx > $@ .azm.html: $(ZOEM) -d html -i $< -o $@ $(ZOEM) -d html -i $< -o $@ - $(TIDY) -e $@ # clm omitted # mcx omitted # mcxi omitted # ../scripts/docme --silent --exclude=version,h,help ../src/shmcl/mcl mcl.azm .PHONY: docme-test docme-test: ../scripts/docme --doc-exceed=21 --silent $(SHARE1) ../src/shmcl/mcl mcl.azm ../scripts/docme --silent $(SHARE1) ../src/shmcl/mclcm mclcm.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxdump mcxdump.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxload mcxload.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxarray mcxarray.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxrand mcxrand.azm ../scripts/docme --silent $(SHARE1) ../src/shcl/clmformat clmformat.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxsubs mcxsubs.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxmap mcxmap.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxassemble mcxassemble.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm close" clmclose.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm dist" clmdist.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm order" clmorder.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm mate" clmmate.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm meet" clmmeet.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm info" clminfo.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm vol" clmvol.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm residue" clmresidue.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm imac" clmimac.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx convert" mcxconvert.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx diameter" mcxdiameter.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx erdos" mcxerdos.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx alter" mcxalter.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx clcf" mcxclcf.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx ctty" mcxctty.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx query" mcxquery.azm ../scripts/docme --silent ../src/alien/oxygen/src/mcxdeblast ../src/alien/oxygen/doc/mcxdeblast.azm # ../scripts/docme --silent ../src/shcl/mclpipeline mclpipeline.azm mclindex.7: index.in.azm $(ZOEM) -i index.in -d roff -o mclindex.7 -s install=1 $(TROFF) -man mclindex.7 > mclindex.ps index.html: index.in.azm $(ZOEM) -i index.in -o index.html -d html -s install=1 $(ZOEM) -i index.in -o distindex.html -d html -s dist=1 mcl: mcl.txt mcl.1 mcl.html mcl.ps mclcm: mclcm.txt mclcm.1 mclcm.html mclcm.ps clm: clm.1 clm.html clm.ps clminfo: clminfo.1 clminfo.html clminfo.ps clmmeet: clmmeet.1 clmmeet.html clmmeet.ps clmformat: clmformat.1 clmformat.html clmformat.ps clmdist: clmdist.1 clmdist.html clmdist.ps clmvol: clmvol.1 clmvol.html clmvol.ps clmmate: clmmate.1 clmmate.html clmmate.ps clmresidue: clmresidue.1 clmresidue.html clmresidue.ps clmimac: clmimac.1 clmimac.html clmimac.ps clmclose: clmclose.1 clmclose.html clmclose.ps clmorder: clmorder.1 clmorder.html clmorder.ps mcx: mcx.1 mcx.html mcx.ps mcxi: mcxi.1 mcxi.html mcxi.ps mcxassemble: mcxassemble.1 mcxassemble.html mcxassemble.ps mcxmap: mcxmap.1 mcxmap.html mcxmap.ps mcxsubs: mcxsubs.1 mcxsubs.html mcxsubs.ps mcxarray: mcxarray.1 mcxarray.html mcxarray.ps mcxdump: mcxdump.1 mcxdump.html mcxdump.ps mcxload: mcxload.1 mcxload.html mcxload.ps mcxconvert: mcxconvert.1 mcxconvert.html mcxconvert.ps mcxdiameter: mcxdiameter.1 mcxdiameter.html mcxdiameter.ps mcxerdos: mcxerdos.1 mcxerdos.html mcxerdos.ps mcxalter: mcxalter.1 mcxalter.html mcxalter.ps mcxclcf: mcxclcf.1 mcxclcf.html mcxclcf.ps mcxctty: mcxctty.1 mcxctty.html mcxctty.ps mcxrand: mcxrand.1 mcxrand.html mcxrand.ps mcxquery: mcxquery.1 mcxquery.html mcxquery.ps mclpipeline: mclpipeline.1 mclpipeline.html mclpipeline.ps mcxio: mcxio.5 mcxio.html mcxio.ps clmprotocols: clmprotocols.5 clmprotocols.html clmprotocols.ps clmprotocols2: clmprotocols2.5 clmprotocols2.html clmprotocols2.ps tingea.log: tingea.log.7 tingea.log.html tingea.log.ps mclfaq: mclfaq.txt mclfaq.7 mclfaq.html mclfaq.ps minimcl mclfamily: mclfamily.7 mclfamily.html mclfamily.ps index: mclindex.7 index.html distindex.html minimcl: cp ../scripts/minimcl . sec_introduction.html: sec_introduction.azm $(ZOEM) -i sec_introduction.azm -o sec_introduction.html -d html - $(TIDY) -e sec_introduction.html sec_description1.html: sec_description1.azm $(ZOEM) -i sec_description1.azm -o sec_description1.html -d html - $(TIDY) -e sec_description1.html sec_description2.html: sec_description2.azm $(ZOEM) -i sec_description2.azm -o sec_description2.html -d html - $(TIDY) -e sec_description2.html sec_license.html: sec_license.azm $(ZOEM) -i sec_license.azm -o sec_license.html -d html - $(TIDY) -e sec_license.html sec_discovery.html: sec_discovery.azm $(ZOEM) -i sec_discovery.azm -o sec_discovery.html -d html - $(TIDY) -e sec_discovery.html sec_characteristics.html: sec_characteristics.azm $(ZOEM) -i sec_characteristics.azm -o sec_characteristics.html -d html - $(TIDY) -e sec_characteristics.html sec_mcledge.html: sec_mcledge.azm $(ZOEM) -i sec_mcledge.azm -o sec_mcledge.html -d html - $(TIDY) -e sec_mcledge.html sec_networktools.html: sec_networktools.azm $(ZOEM) -i sec_networktools.azm -o sec_networktools.html -d html - $(TIDY) -e sec_networktools.html sec_thesisetc.html: sec_thesisetc.azm $(ZOEM) -i sec_thesisetc.azm -o sec_thesisetc.html -d html - $(TIDY) -e sec_thesisetc.html sec_edge.html: sec_edge.azm $(ZOEM) -i sec_edge.azm -o sec_edge.html -d html - $(TIDY) -e sec_edge.html sec_other.html: sec_other.azm $(ZOEM) -i sec_other.azm -o sec_other.html -d html - $(TIDY) -e sec_other.html sec_questions.html: sec_questions.azm $(ZOEM) -i sec_questions.azm -o sec_questions.html -d html - $(TIDY) -e sec_questions.html sec_speedmemory.html: sec_speedmemory.azm $(ZOEM) -i sec_speedmemory.azm -o sec_speedmemory.html -d html - $(TIDY) -e sec_speedmemory.html sec_software.html: sec_software.azm $(ZOEM) -i sec_software.azm -o sec_software.html -d html - $(TIDY) -e sec_software.html sec_news.html: sec_news.azm $(ZOEM) -i sec_news.azm -o sec_news.html -d html - $(TIDY) -e sec_news.html sec_community.html: sec_community.azm $(ZOEM) -i sec_community.azm -o sec_community.html -d html - $(TIDY) -e sec_community.html intro.html: intro.azm $(ZOEM) -i intro.azm -d html - $(TIDY) -e intro.html description2.html: description2.azm $(ZOEM) -i description2.azm -d html - $(TIDY) -e description2.html intro3.html: intro3.azm $(ZOEM) -i intro3.azm -d html - $(TIDY) -e intro3.html litindex.html: litindex.azm 3Party $(ZOEM) -i litindex.azm -o litindex.html -d html - $(TIDY) -e litindex.html # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/doc/clminfo.10000644000402500021140000001447711754271041011566 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm info" 1 "14 May 2012" "clm info 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm info \- compute performance measures for graphs and clusterings\&. clminfo is not in actual fact a program\&. This manual page documents the behaviour and options of the clm program when invoked in mode \fIinfo\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP are accessible in all \fBclm\fP modes\&. They are described in the \fBclm\fP manual page\&. .SH SYNOPSIS \fBclm info\fP [options] * \fBclm info\fP \fB[-o\fP fname (\fIwrite to file \fBfname\fP\fP)\fB]\fP \fB[-pi\fP f (\fIapply inflation beforehand\fP)\fB]\fP \fB[-tf\fP spec (\fIapply tf-spec to input matrix\fP)\fB]\fP \fB[-cl-tree\fP fname (\fIexpect file with nested clusterings\fP)\fB]\fP \fB[-cl-ceil\fP (\fIskip clusters of size exceeding \fP)\fB]\fP \fB[-cat-max\fP num (\fIdo at most \fBnum\fP tree levels\fP)\fB]\fP \fB[--node-self-measures\fP (\fIdump measure for native cluster\fP)\fB]\fP \fB[--node-all-measures\fP (\fIdump measure for incident cluster\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP * .SH DESCRIPTION \fBclm info\fP computes several numbers indicative for the efficiency with with a clustering captures the edge mass of a given graph\&. Use it in conjunction with \fBclm dist\fP to determine which clusterings you accept\&. See the EXAMPLES section in \fBclm dist\fP for an example of \fBclm dist\fP and \fBclm info\fP (and \fBclm meet\fP) usage\&. Output can be generated for multiple clusterings at the same time\&. The \fBefficiency\fP factor is described in [1] (see the \fBREFERENCES\fP section)\&. It tries to balance the dual aims of capturing a lot of edges or edge weights and keeping the cluster footprint or area fraction small\&. The efficiency number has several appealing mathematical properties, cf\&. [1]\&. It is related to, but not derivable from, the second and third numbers, the \fImass fraction\fP and the \fIarea fraction\fP\&. The \fBmass fraction\fP is defined as follows\&. Let \fBe\fP be an edge of the graph\&. The clustering \fIcaptures\fP \fBe\fP if the two nodes associated with \fBe\fP are in the same cluster\&. Now the mass fraction is the joint weight of all captured edges divided by the joint weight of all edges in the input graph\&. The \fBarea fraction\fP is roughly the sum of the squares of all cluster sizes for all clusters in the clustering, divided by the square of the number of nodes in the graph\&. It says \fIroughly\fP, because the actual formula uses the quantity \fBN\fP*(\fBN-1\fP) wherever it says square (of \fBN\fP) above\&. A low/high area fraction indicates a fine-grained/coarse clustering\&. .SH OPTIONS .ZI 2m "\fB-o\fP fname (\fIoutput file name\fP)" \& .br .in -2m .ZI 2m "\fB-pi\fP f (\fIapply inflation beforehand\fP)" \& .br Apply inflation to the graph matrix and compute the performance measures for the result\&. .in -2m .ZI 2m "\fB-tf\fP (\fItransform input matrix values\fP)" \& .br shared_defopt{-tf} .in -2m .ZI 2m "\fB-cl-tree\fP fname (\fIexpect file with nested clusterings (cone format)\fP)" \& 'in -2m .ZI 2m "\fB-cl-ceil\fP (\fIskip (nested) clusters of size exceeding \fP)" \& 'in -2m 'in +2m \& .br The specified file should contain a hierarchy of nested clusterings such as generated by \fBmclcm\fP\&. The output is then in a special format, undocumented but easy to understand\&. Its purpose is to help cherrypick a single clustering from a tree, in conjunction with the slightly experimental and undocumented program \fBmlmfifofum\fP\&. The measure that is used is very slow to compute for large clusters, and generally it will be outside any interesting range (i\&.e\&. it will be small)\&. Use \fB-cl-ceil\fP to skip clusters exceeding the specified size \- \fBclm info\fP will directly proceed to subclusters if they exist\&. .in -2m .ZI 2m "\fB-cat-max\fP num (\fIdo at most num levels\fP)" \& .br This only has effect when used with \fB-cl-tree\fP\&. \fBclm info\fP will start at the most fine-grained level, working upwards\&. .in -2m .ZI 2m "\fB--node-all-measures\fP (\fIdump node-wise criteria for all incident clusters\fP)" \& 'in -2m .ZI 2m "\fB--node-self-measures\fP (\fIdump node-wise criteria for native cluster\fP)" \& 'in -2m 'in +2m \& .br These options return a key-value based format, with the meaning of the keys as follows\&. .di ZV .in 0 .nf \fC nm file name (redundant unless multiple cluster files are provided) ni node index ci cluster index nn number of neighbours of this node (constant for a give node) nc cluster size (constant for a given cluster) ef efficiency for this node/cluster combination em max-efficiency for this node/cluster combination mf mass fraction: percentage of edge weights for this node in this cluster ma total mass of edge weights for this node in this cluster xn number of neighbours of the node that are not in the cluster xc number of nodes in the cluster that are not a neighbour of the node ns number of neighbours of the node that are also in this cluster ti the maximum of the edge weights for neighbours of this node that are in this cluster to the maximum of the edge weights for neighbours of this node that are NOT in this cluster al (alien) 1 if the node is not native to the cluster, 0 if the node is native .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. .SH REFERENCES [1] Stijn van Dongen\&. \fIPerformance criteria for graph clustering and Markov cluster experiments\fP\&. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000\&. .br http://www\&.cwi\&.nl/ftp/CWIreports/INS/INS-R0012\&.ps\&.Z mcl-12-135/doc/stamp.month0000644000402500021140000000000411754270104012224 00000000000000May mcl-12-135/doc/mcxrand.azm0000644000402500021140000002243211705567352012221 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxrand} {html_title}{The mcxrand manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcxrand}{random shuffling, removal, addition, and perturbation of edges of graphs} \sec{synopsis}{SYNOPSIS} \par{ \mcxrand [options] } \par{ \verbatim{\:/ mcxrand -gen K -add N -new-g-mean f # random graph on K nodes, N edges mcxrand -imx -remove N -add N # remove then add edges mcxrand -imx -shuffle N # shuffle N edge pairs mcxrand -imx -noise-radius f # add noise to add weights} mcxrand -pa N/m # preferential attachment generation} \par{ \mcxrand \synoptopt{-imx}{}{input matrix} \synoptopt{-o}{}{output matrix to } \synoptopt{--write-binary}{write output in binary format} \synoptopt{-gen}{}{generate new graph} \synoptopt{-pa}{/}{preferential attachment} \synoptopt{-remove}{}{remove edges} \synoptopt{-add}{}{add edges not yet present} \synoptopt{-shuffle}{}{shuffle edge pair times} \synoptopt{-noise-radius}{}{maximum spread to add noise with} \synoptopt{-noise-sdev}{}{noise standard deviation} \synoptopt{-noise-range}{}{noise range factor} \synoptopt{-edge-min}{}{absolute edge weight minimum} \synoptopt{-edge-max}{}{absolute edge weight maximum} \synoptopt{-new-g-mean}{}{mean for new edges (Gaussian)} \synoptopt{-new-g-sdev}{}{standard deviation for new edges (Gaussian)} \synoptopt{-new-g-radius}{}{maximum spread for new edges (Gaussian)} \synoptopt{-new-g-min}{}{lower bound selection (Gaussian)} \synoptopt{-new-g-max}{}{upper bound selection (Gaussian)} \synoptopt{-skew}{}{skew towards min or max} \stdsynopt } \sec{description}{DESCRIPTION} \par{ This utility is a recent addition to the mcl suite and the schemes explained below will likely be evolved, simplified, and extended with future releases.} \par{ The \genopt{--shuffle}, \genopt{-gen} and \genopt{-pa} options can be deemend stable and robust. The options that determine edge weight perturbation and generation are likely to be subject to revision in the future.} \par{ The input graph/matrix, if specified with the \genopt{-imx} option, has to be in mcl matrix/graph format. You can use label input instead by preprocessing the label input with \mysib{mcxload}, i.e.} \verbatim{\:/ mcxload -abc | mcxrand [options]} \par{ Refer to \mysib{mcxio} for a description of these two input formats. By default \mcxrand reads from STDIN. Change this with the \genoptref{-imx} option.} \par{ \mcxrand can randomly remove and add edges to a graph, or add gaussian noise to the edge weights of a graph. It can also shuffle edge pairs while preserving the degree sequence of the graph. In \it{removal mode} (\genoptref{-remove}{}) and in \it{addition mode} (\genoptref{-add}{}) \mcxrand enforces arc symmetry by only working with edges \it{w(i,j)} where \it{i < j} and symmetrifying the result and adding any loops that were present in the input graph just before the output stage.} \par{ In \it{perturbation mode} (\genoptref{-noise-radius}, with no other mode specified) the input can be any graph.} \par{ \it{Shuffle mode} (\genoptref{-shuffle}{}) requires an undirected graph but will only fail when it picks an arc for which the arc in the reverse direction is not present. This means it may or may not fail on directed input depending on the random choices. It does not check equality of the two arc weights and randomly picks one to represent the edge weight.} \par{ Edge removal, edge creation, and edge perturbation are applied in this order if both are specified. Edge shuffling presently cannot be combined with one of the previous modes.} \par{ A random graph can be generated with \genoptref{-gen}{k}, which specifies the number of nodes the graph should have. It is equivalent with pasing (the file name of) an empty graph of the same dimensions as the argument to \genopt{-imx}.} \par{ When adding (i.e. creating) edges, the default is to use the uniform distribution for new edge weights ranging in some interval. The default interval is [0,1] and can be modified using the \genoptref{-edge-min}{min} and \genoptref{-edge-max}{max} options. A Gaussian edge weight distribution can be obtained by specifying \genoptref{-new-g-mean}{num}. The standard deviation is by default 1.0 and can be altered with \genoptref{-new-g-sdev}{num}. Currently the edge weigths are generated within the interval [\it{mean-radius}, \it{mean+radius}] where \it{radius} is specified with \genoptref{-new-g-radius}. They are further selected to lie within the interval \it{[L,R]} if and only if \genoptref{-new-g-min}{L} and \genoptref{-new-g-max}{R} have been specified. } \par{ For both uniform and Gaussian edge creation the edge weights can be skewed towards either side of the distribution with \genoptref{-skew}{c}. Skewing is applied by mapping the edge weights to the interval [0,1], applying the function \it{x^c}, and remapping the resulting number. For values \it{c<1} this skews the edge weights towards the right bound and for values \it{c>1} this skews the edge weights towards the left bound. This is a rather crude approach that will likely be changed in the future. } \par{ Edge weights can be perturbed by specifying \genoptref{-noise-radius}{radius}. This sets the maximum perturbation allowed. Noise is generated with a standard deviation that is by default set to 0.5 and can be altered using \genoptref{-noise-sdev}{num}. Values are generated in the interval \it{[-fac*sdev, fac*sdev]} where \it{fac} is set with \genoptref{-noise-range}{fac}. This interval is mapped to the interval \it{[-radius, radius]} before the resulting value is added to the actual edge weight. This becomes the new value. If an interval \it{[L,R]} is explicitly specified using \genoptref{-edge-min}{L} and \genoptref{-edge-max}{R} then the new value will be accepted only if it lies within the interval, otherwise the edge will not be perturbed. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-imx}{}{input matrix}} \car{ The file name for input. STDIN is assumed if neither \genopt{-imx} nor \genoptref{-gen}{num} is specified.} \item{\defopt{-o}{}{output matrix to }} \car{ The file to write the transformed matrix to.} \item{\defopt{--write-binary}{write output in binary format}} \car{ Write the output matrix in native binary format. } \item{\defopt{-shuffle}{}{shuffle edge pair times}} \car{ Shuffle edge pair times. An edge shuffle acts on two randomly chosen edges edges \it{w(a,b)} and \it{w(c,d)} where all the nodes must be different. If either none of the edges in \it{w(a,c)}, \it{w(b,d)} or none of the edges in \it{w(a,d)}, \it{w(b,c)} exists the original two edges are removed and is replaced by an edge pair for which both edges did not exist before.} \item{\defopt{-pa}{/}{preferential attachment}} \car{ This generates a random graph using preferential attachment. In this model new nodes are sequentially added to a graph. Each new node is connected with \genarg{} of the existing nodes (including nodes previously added), where the likelihood of picking an existing node is proportional to the edge degree of that node. During construction multiple edges between two nodes are allowed (each with weight one), and these are collapsed by adding their weights before output. } \item{\defopt{-remove}{}{remove edges}} \car{ Remove this many edges from the input graph.} \item{\defopt{-add}{}{add edges not yet present}} \car{ Create this many new edges.} \item{\defopt{-gen}{}{node number}} \car{ Use in conjunction with \genopt{-add} to generate a random graph on \it{} nodes.} \items{ {\defopt{-noise-radius}{}{maximum spread to add noise with}} {\defopt{-noise-sdev}{}{standard deviation}} {\defopt{-noise-range}{}{number of standard deviations allowed}} } \car{ See the discussion in \secref{description}.} \items{ {\defopt{-edge-min}{}{global edge weight minimum}} {\defopt{-edge-max}{}{global edge weight maximum}} } \car{ See the discussion in \secref{description}.} \item{\defopt{-skew}{}{skew towards min or max}} \car{ See the discussion in \secref{description}.} \items{ {\defopt{-new-g-mean}{}{mean to generate new edges with}} {\defopt{-new-g-sdev}{}{standard deviation to generate new edges with}} {\defopt{-new-g-radius}{}{maximum spread to generate new edges with}} {\defopt{-new-g-min}{}{lower bound selection (Gaussian)}} {\defopt{-new-g-max}{}{upper bound selection (Gaussian)}} } \car{ See the discussion in \secref{description}.} \stddefopt \end{itemize} \sec{seealso}{SEE ALSO} \par{ \mysib{mcxio}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \end{pud::man} mcl-12-135/doc/clmclose.html0000644000402500021140000002411311754271041012530 00000000000000 The clm close manual

14 May 2012    clm close 12-135

NAME

clm close — Fetch connected components from graphs or subgraphs

clmclose is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode close. The options -h, --apropos, --version, -set, --nop are accessible in all clm modes. They are described in the clm manual page.

SYNOPSIS

clm close -imx <fname> [options]

clm close -imx fname (specify matrix input) -abc fname (specify label input) -dom fname (input domain/cluster file) [-o fname (output file)] [--is-undirected (trust input graph to be undirected)] [--write-count (output component count)] [--write-sizes (output component sizes (default))] [--write-cc (output components as clustering)] [--write-block (output graph restricted to -dom argument)] [--write-blockc (output graph complement of -dom argument)] [-cc-bound num (select components with size at least num)] [-tf spec (apply tf-spec to input matrix)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

Use clm close to fetch the connected components from a graph. Different output modes are supported (see below). In matrix mode (i.e. using the -imx option) the output returned with --write-cc can be used in conjunction with mcxsubs to retrieve individual subgraphs corresponding to connected components.

OPTIONS

-abc <fname> (label input)

The file name for input that is in label format.

 
-imx <fname> (input matrix)

The file name for input that is in mcl native matrix format.

 
-o fname (output file)

Specify the file where output is sent to. The default is STDOUT.

 
-dom fname (input domain/cluster file)

If this option is used, clm close will, as a first step, for each of the domains in file fname retrieve the associated subgraph from the input graph. These are then further decomposed into connected components, and the program will process these in the normal manner.

 
--write-count (output component count)
--write-sizes (output component sizes (default))
--write-cc (output components as clustering)
--write-block (output graph restricted to -dom argument)
--write-blockc (output graph complement of -dom argument)

The default behaviour is currently to output the sizes of the connected components. It is also possible to simply output the number of components with --write-count or to write the components as a clustering in mcl format with -write-cc. Even more options exist: it is possible to output the restriction of the input graph to a domain, or to output the complement of this restriction.

 
--is-undirected (omit graph undirected check)

With this option the transformation to make sure that the input is undirected is omitted. This will be slightly faster. Using this option while the input is directed may lead to erronenous results.

 
-cc-bound num (select components with size at least num)
Transform the input matrix values according to the syntax described in mcxio.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mclfamily.ps0000644000402500021140000002554111754271043012372 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:15 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 1 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 161.925 <6d636c283729204d495343454c4c414e454f5553>20 48 R<6d636c283729>166.925 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d636c66>100 96 Q <616d696c7920ad2061206465736372697074696f6e206f6620746865206d636c2066> -.1 E<616d696c79206f6620636c7573746572206170706c69636174696f6e732e>-.1 E /F2 10/Times-Bold@0 SF<6d636c>100 120 Q F0 .572 <697320616e20696d706c656d656e746174696f6e206f6620746865204d61726b>3.072 F .871 -.15<6f762043>-.1 H .571 <6c757374657220416c676f726974686d2c20616b61204d434c20616c676f7269746d2e> .15 F .571<497420697320646573637269626564>5.571 F 1.152<696e20746865>100 132 R F2 1.152<6d636c206d616e75616c>3.652 F F0 6.152<2e53>C -2.15 -.25 <65762065>-6.152 H 1.152<72616c206f74686572206170706c69636174696f6e7320 6172652070617274206f6620746865204d434c2064697374726962>.25 F 1.153 <7574696f6e2e2054686973206d616e75616c>-.2 F<7061676573206769>100 144 Q -.15<7665>-.25 G 2.5<7361>.15 G 2.5<6e6f>-2.5 G -.15<7665>-2.65 G <72766965>.15 E<772e>-.25 E F1<4445534352495054494f4e>20 160.8 Q F2 <6d636c283129>100 172.8 Q F0<74686520636c757374657220616c676f726974686d> 122.79 E F2<6d636c666171283729>100 184.8 Q F0 <4d434c204672657175656e746c792041736b>108.9 E<6564205175657374696f6e73> -.1 E F2<6d6378696f283529>100 196.8 Q F0<746865206e657477>112.79 E <6f726b2f6d617472697820696e7075742f6f757470757420666f726d6174>-.1 E F2 <6d6378283129>100 208.8 Q F0<67656e6572616c206e657477>120.57 E <6f726b2f6d6174726978207461736b73>-.1 E F2<6d6378206469616d65746572>100 220.8 Q F0<636f6d70757465206469616d65746572206f6620616e20756e6469726563 746564206e657477>91.41 E<6f726b>-.1 E F2<6d63782063747479>100 232.8 Q F0 <636f6d70757465206265747765656e6e6573732063656e7472616c697479>113.63 E F2<6d637820636c6366>100 244.8 Q F0 <636f6d7075746520636c7573746572696e6720636f6566>114.74 E<8c6369656e74> -.25 E F2<6d6378206572646f73>100 256.8 Q F0 <636f6d707574652073686f727465737420706174687320696e20677261706873>106.4 E F2<6d6378207175657279>100 268.8 Q F0<616e616c797365206e657477>104.73 E <6f726b7320617420646966>-.1 E<666572656e74207468726573686f6c6473>-.25 E F2<6d637820616c746572>100 280.8 Q F0<6170706c79206e657477>109.74 E <6f726b207472616e73666f726d6174696f6e73>-.1 E F2<6d637820636f6e>100 292.8 Q -.1<7665>-.4 G<7274>.1 E F0<636f6e>98.02 E -.15<7665>-.4 G<7274 206265747765656e20696e7465726368616e67652f62696e6172792073746f7261676520 7479706573>.15 E F2<6d63786172726179283129>100 304.8 Q F0<7472616e73666f 726d206172726179206461746120746f204d434c206d61747269636573>96.69 E F2 <6d637864756d70283129>100 316.8 Q F0<64756d702061206d6174726978206f7074 696f6e616c6c792077697468206c6162656c2073756273746974696f6e73>95.56 E F2 <6d63786c6f6164283129>100 328.8 Q F0<6c6f6164206c6162656c20646174612069 6e746f206d617472697820616e6420746162208c6c6573>102.23 E F2 <6d637872616e64283129>100 340.8 Q F0<72616e646f6d6c792072656d6f>100.01 E -.15<7665>-.15 G 2.5<2c61>.15 G <64642c20616e64207065727475726220656467652077656967687473>-2.5 E F2 <6d63786d6170283129>100 352.8 Q F0 <72656c6162656c20696e646963657320696e20612067726170682f6d6174726978> 101.68 E F2<6d637873756273283129>100 364.8 Q F0 -.15<6578>101.67 G <7472616374696e67207375626d6174726963657320696e2076>.15 E <6172696f75732077>-.25 E<617973>-.1 E F2<6d637869283129>100 376.8 Q F0 <67656e6572616c206d6174726978206f7065726174696f6e73>117.79 E F2 <6d6378617373656d626c65283129>100 388.8 Q F0 <637265617465206d617472696365732066726f6d207261>82.24 E 2.5<7764>-.15 G <617461>-2.5 E F2<636c6d283129>100 400.8 Q F0<67656e6572616c206772617068 2d636c7573746572696e672072656c61746564207461736b73>122.79 E F2 <636c6d2064697374>100 412.8 Q F0<636f6d707574652073706c69742f6a6f696e20 64697374616e6365206265747765656e20636c7573746572696e6773>116.39 E F2 <636c6d2076>100 424.8 Q<6f6c>-.1 E F0<64657269>119.27 E .3 -.15 <7665206e>-.25 H<6f64652076>.15 E<6f6c6174696c6974792073636f726573206672 6f6d206120736574206f6620636c7573746572696e6773>-.2 E F2<636c6d20696e66> 100 436.8 Q<6f>-.25 E F0<636f6d7075746520706572666f726d616e6365206d6561 7375726520666f7220636c7573746572696e6773>115.53 E F2<636c6d206d656574> 100 448.8 Q F0 <636f6d7075746520696e74657273656374696f6e206f6620636c7573746572696e6773> 111.41 E F2<636c6d206d617465>100 460.8 Q F0<8c6e642062657374206d61746368 696e6720636c757374657273206265747765656e20636c7573746572696e6773>110.85 E F2<636c6d20636c6f7365>100 472.8 Q F0<666574636820636f6e6e656374656420 636f6d706f6e656e74732066726f6d20677261706873206f7220737562677261706873> 111.4 E F2<636c6d20696d6163>100 484.8 Q F0<696e74657270726574204d434c20 69746572616e642f6d617472697820617320636c7573746572696e67>111.4 E F2 1.169<636c6d206f72646572>100 496.8 R F0 1.169<72656f7264657220696e646963 657320746f20726570726573656e7420626c6f636b732066726f6d20646966>108.07 F 1.168<666572656e7420636c7573746572>-.25 F<2d>-.2 E<696e6773>250 508.8 Q F2<636c6d2072>100 520.8 Q<657369647565>-.18 E F0 -.15<6578>101.02 G <74656e6420737562677261706820636c7573746572696e67>.15 E F2<636c6d66>100 532.8 Q<6f726d6174283129>-.25 E F0<646973706c617920636c7573746572732061 732068746d6c206f7220747874208c6c6573>93.61 E F2 <6d636c706970656c696e65283129>100 544.8 Q F0 <70617273696e672f617373656d626c792f636c7573746572696e672f646973706c6179> 88.89 E F2<6d636c626c6173746c696e65283129>100 556.8 Q/F3 10/Courier@0 SF <2a>2.5 E F0<424c41535420706970656c696e65>78.17 E F2 <6d63786465626c617374283129>100 568.8 Q F3<2a>2.5 E F0 <706172736520424c415354208c6c6573>81.51 E<456e7472696573206d61726b>100 592.8 Q<6564>-.1 E F3<2a>2.5 E F0<617265206e6f742061>2.5 E -.25<7661>-.2 G<696c61626c65206966206f6e6c79206120646566>.25 E <61756c7420696e7374616c6c20697320646f6e652e>-.1 E<6d636c2031322d313335> 20 768 Q<3134204d61792032303132>161.505 E<31>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clmdist.ps0000644000402500021140000012651411754271041012054 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:13 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 5 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d2064697374283129>20 48 Q <5553455220434f4d4d414e4453>145.665 E<636c6d2064697374283129>148.165 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<636c6d206469 737420ad20636f6d70757465207468652064697374616e6365206265747765656e207477> 100 96 Q 2.5<6f6f>-.1 G 2.5<726d>-2.5 G <6f726520706172746974696f6e732028636c7573746572696e6773292e>-2.5 E 1.815 <5468652064697374616e6365207468617420697320636f6d70757465642063616e2062 6520616e>100 120 R 4.314<796f>-.15 G<66>-4.314 E/F2 10/Times-Italic@0 SF 1.814<73706c69742f6a6f696e2064697374616e6365>4.314 F F0<2c>A F2 1.814 <76617269616e6365206f6620696e666f726d6174696f6e>4.314 F F0 4.314<2c6f>C <72>-4.314 E F2<4d69726b696e206d6574726963>100 132 Q F0<2e>A .593 <636c6d64697374206973206e6f7420696e2061637475616c2066>100 156 R .593<61 637420612070726f6772616d2e2054686973206d616e75616c207061676520646f63756d 656e7473207468652062656861>-.1 F .594 <76696f757220616e64206f7074696f6e73>-.2 F .046 <6f662074686520636c6d2070726f6772616d207768656e20696e>100 168 R -.2 <766f>-.4 G -.1<6b65>.2 G 2.545<6469>.1 G 2.545<6e6d>-2.545 G<6f6465> -2.545 E F2<64697374>2.545 E F0 2.545<2e54>C .045<6865206f7074696f6e73> -2.545 F/F3 10/Times-Bold@0 SF<2d68>2.545 E F0<2c>A F3<2d2d617072>2.545 E<6f706f73>-.18 E F0<2c>A F3<2d2d76>2.545 E<657273696f6e>-.1 E F0<2c>A F3<2d736574>2.545 E F0<2c>A F3<2d2d6e6f70>2.545 E F0 <6172652061636365737369626c6520696e20616c6c>100 180 Q F3<636c6d>2.5 E F0 <6d6f6465732e20546865>2.5 E 2.5<7961>-.15 G <72652064657363726962656420696e20746865>-2.5 E F3<636c6d>2.5 E F0 <6d616e75616c20706167652e>2.5 E F1<53594e4f50534953>20 196.8 Q F3 <636c6d2064697374>100 208.8 Q F0 <5b6f7074696f6e735d203c8c6c65206e616d653e203c8c6c65206e616d653e2b>2.5 E F3 .93<636c6d2064697374205b2d6d6f6465>100 232.8 R F0 .93 <3c736a7c76697c6d6b7c73633e2028>3.43 F F2 .93 <64697374616e63652074797065>B F0<29>A F3 3.43<5d5b>C<2d6f>-3.43 E F0 .93 <666e616d652028>3.43 F F2 .93<6f7574707574208c6c65>B F0<29>A F3 3.43 <5d5b>C<2d2d636861696e>-3.43 E F0<28>3.43 E F2 .93 <6f6e6c7920636f6d706172>B<65>-.37 E 1.308 <636f6e736563757469766520636c7573746572696e6773>100 244.8 R F0<29>A F3 3.808<5d5b>C<2d2d6f6e652d746f2d6d616e79>-3.808 E F0<28>3.808 E F2 <636f6d706172>A 3.808<658c>-.37 G -.1<7273>-3.808 G 3.808<7463>.1 G 1.308<6c7573746572696e6720746f20616c6c206f74686572>-3.808 F<73>-.1 E F0 <29>A F3 3.808<5d5b>C<2d2d736f7274>-3.808 E F0<28>3.808 E F2<736f7274>A .957<636c7573746572696e6773206261736564206f6e20636f6172>100 256.8 R <73656e657373>-.1 E F0<29>A F3 3.457<5d5b>C<2d2d696e646578>-3.457 E F0 <28>3.457 E F2 .957 <6f75747075742052616e642c2061646a75737465642052616e6420616e64204a>B <6163636172>-.35 E 3.458<6469>-.37 G<6e6469636573>-3.458 E F0<29>A F3 <5d>A<5b2d646967697473>100 268.8 Q F0 3.213<6b28>3.213 G F2 .713 <6f757470757420646563696d616c73>-3.213 F F0<29>A F3 3.213<5d5b>C<2d68> -3.213 E F0<28>3.213 E F2 .713<7072696e742073796e6f707369732c2065>B <786974>-.2 E F0<29>A F3 3.212<5d5b>C<2d2d617072>-3.212 E<6f706f73>-.18 E F0<28>3.212 E F2 .712<7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F3 3.212<5d5b>C<2d2d76>-3.212 E<6572>-.1 E<2d>-.37 E<73696f6e> 100 280.8 Q F0<28>2.5 E F2<7072696e7420766572>A<73696f6e2c2065>-.1 E <786974>-.2 E F0<29>A F3<5d>A F0 <3c8c6c65206e616d653e203c8c6c65206e616d653e2b>2.5 E F1 <4445534352495054494f4e>20 297.6 Q F3 3.609<636c6d2064697374>100 309.6 R F0 3.609<636f6d70757465732064697374616e636573206265747765656e20636c7573 746572696e67732e2049742063616e20636f6d7075746520746865>6.109 F F2 3.61 <73706c69742f6a6f696e2064697374616e6365>6.109 F F0 1.444 <286465736372696265642062656c6f>100 321.6 R 1.444<77292c20746865>-.25 F F2 1.444<76617269616e6365206f6620696e666f726d6174696f6e206d6561737572> 3.944 F<65>-.37 E F0 3.944<2c61>C 1.444<6e6420746865>-3.944 F F2 1.444 <4d69726b696e206d6574726963>3.944 F F0 3.944<2e42>C 3.943<7964>-3.944 G <6566>-3.943 E 1.443<61756c74206974>-.1 F .887<636f6d707574657320746865 2063686f73656e2064697374616e636520666f7220616c6c207061697273206f66206469 7374616e63657320696e2074686520636c7573746572696e67732070726f>100 333.6 R .887<76696465642e20436c7573746572696e6773>-.15 F .85<6d7573742062652069 6e20746865206d636c206d617472697820666f726d6174202863662e>100 345.6 R F3 <6d6378696f283529>3.35 E F0 .85<292c20616e642061726520737570706c69656420 6f6e2074686520636f6d6d616e64206c696e6520617320746865>B .758 <6e616d6573206f6620746865208c6c657320696e20776869636820746865>100 357.6 R 3.259<7961>-.15 G .759<72652073746f7265642e>-3.259 F .759<497420697320 706f737369626c6520746f20636f6d70617265206f6e6c7920636f6e736563757469> 5.759 F 1.059 -.15<76652063>-.25 H<6c7573746572>.15 E<2d>-.2 E <696e6773206279207573696e6720746865>100 369.6 Q F3<2d2d636861696e>2.5 E F0<6f7074696f6e2e>2.5 E<43757272656e746c79>100 393.6 Q<2c>-.65 E F3 <636c6d2064697374>2.5 E F0<63616e6e6f7420636f6d7075746520646966>2.5 E<66 6572656e742064697374616e63652074797065732073696d756c74616e656f75736c792e> -.25 E .177<546865206f7574707574206973206c696e65>100 417.6 R .177 <776973652c2065616368206c696e65206769>-.25 F .176<76696e6720696e666f726d 6174696f6e2061626f7574207468652064697374616e6365206265747765656e20612070 616972206f6620636c7573746572>-.25 F<2d>-.2 E <696e67732e2041206c696e65206861732074686520666f6c6c6f>100 429.6 Q <77696e6720666f726d61743a>-.25 E/F4 10/Courier@0 SF 12<6464>100 453.6 S 12<3164>-12 G 12<324e766e>-12 G 6 <616d6531206e616d6532205b7635302c7637352c7639302c7639352c7639395d>-12 F F0<7768657265>100 477.6 Q F4<6454>2.707 E F0 .207 <6973207468652064697374616e6365206265747765656e20746865207477>2.707 F 2.707<6f63>-.1 G<6c7573746572696e67732c>-2.707 E F4<6431>2.708 E F0 .208 <6973207468652064697374616e63652066726f6d20746865208c72737420636c757374 6572696e67>2.708 F .124<746f2074686520677265617465737420636f6d6d6f6e2073 7562636c7573746572696e672028616c7465726e617469>100 489.6 R -.15<7665> -.25 G .124<6c792063616c6c6564204743532c20696e74657273656374696f6e2c206f 72206d65657429206f6620746865207477>.15 F<6f>-.1 E <636c7573746572696e67732c>100 501.6 Q F4<6432>2.918 E F0 .418<6973207369 6d696c61726c79207468652064697374616e63652066726f6d20746865207365636f6e64 20636c7573746572696e6720746f20746865204743532c>2.918 F F4<4e>2.918 E F0 .419<697320746865206e756d626572>2.918 F .11 <6f66206e6f64657320696e2074686520736574206f>100 513.6 R -.15<7665>-.15 G 2.61<7277>.15 G .11 <686963682074686520636c7573746572696e6773206172652064658c6e65642c>-2.61 F F4<6e616d6531>2.609 E F0 .109 <697320746865206e616d65206f6620746865208c6c6520636f6e7461696e2d>2.609 F .314<696e6720746865208c72737420636c7573746572696e672c>100 525.6 R F4 <6e616d6532>2.814 E F0 .314<697320746865206e616d65206f6620746865208c6c65 20636f6e7461696e696e6720746865207365636f6e6420636c7573746572696e672c2061 6e64>2.814 F F4<765858>2.815 E F0 .141<697320746865206e756d626572206f66> 100 537.6 R F2 .141<766f6c6174696c65206e6f646573>2.641 F F0 .141 <617420737472696e67656e63>2.641 F 2.641<7966>-.15 G<6163746f72>-2.741 E F4<302e5858>2.641 E F0 .14<28692e652e20302e3520666f72>2.641 F F4<763530> 2.64 E F0 .14<292e20526566657220746f>B F3 .14<636c6d2076>2.64 F<6f6c>-.1 E F0<666f72>2.64 E 2.5<6164>100 549.6 S<658c6e6974696f6e206f66>-2.5 E F2 <766f6c6174696c65206e6f6465>2.5 E F0<2e>A F1<4f5054494f4e53>20 566.4 Q F3<2d6d6f6465>100 578.4 Q F0<3c736a7c76697c6d6b3e2028>2.5 E F2 <64697374616e63652074797065>A F0<29>A<557365>120 590.4 Q F3<736a>2.795 E F0 .295<666f7220746865>2.795 F F2 .295 <73706c69742f6a6f696e2064697374616e6365>2.795 F F0 .295 <286465736372696265642062656c6f>2.795 F<77292c>-.25 E F3<7669>2.795 E F0 .295<666f7220746865>2.795 F F2 .295 <76617269616e6365206f6620696e666f726d6174696f6e206d65612d>2.795 F <737572>120 602.4 Q<65>-.37 E F0<616e64>2.5 E F3<6d6b>2.5 E F0 <666f7220746865>2.5 E F2<4d69726b696e206d6574726963>2.5 E F0<2e>A F3 <2d2d636861696e>100 626.4 Q F0<28>2.5 E F2<6f6e6c7920636f6d706172>A 2.5 <6563>-.37 G<6f6e736563757469766520636c7573746572696e6773>-2.5 E F0<29>A .572 <54686973206f7074696f6e2063616e206265207573656420696620796f75206b6e6f> 120 638.4 R 3.072<7774>-.25 G .572<6861742074686520636c7573746572696e67 7320617265206e657374656420636c7573746572696e677320286f72206170706f78692d> -3.072 F .402<6d6174656c7920736f2920616e64206f7264657265642066726f6d2063 6f6172736520746f208c6e652d677261696e6564206f7220766963652076>120 650.4 R .403<657273612e20416e2065>-.15 F .403 <78616d706c65206f66207468697320697320746865>-.15 F<736574206f6620636c75 73746572696e677320726573756c74696e672066726f6d206170706c79696e67>120 662.4 Q F3<6d636c>2.5 E F0<7769746820612072616e6765206f6620696e8d617469 6f6e20706172616d65746572732e>2.5 E F3<2d2d6f6e652d746f2d6d616e79>100 686.4 Q F0<28>2.5 E F2<636f6d706172>A 2.5<658c>-.37 G -.1<7273>-2.5 G 2.5<7463>.1 G<6c7573746572696e6720746f20616c6c206f74686572>-2.5 E<73>-.1 E F0<29>A 1.538<5573652074686973206f7074696f6e20666f722065>120 698.4 R 1.538<78616d706c6520746f20636f6d70617265206120676f6c64207374616e64617264 20636c617373698c636174696f6e20746f206120636f6c6c656374696f6e206f66>-.15 F 2.908<636c7573746572696e67732e2042656172>120 710.4 R .408<696e206d696e 642074686174207375622d636c7573746572696e6720616e64207375706572>2.908 F .409<2d636c7573746572696e672061726520616c736f2077>-.2 F .409 <61797320666f72206120636c75732d>-.1 F 2.648<746572696e6720746f2062652063 6f6d70617469626c652077697468206120676f6c64207374616e646172642e>120 722.4 R 2.647<54686973206d65616e732074686174207468652073696d706c65206e756d6572 6963616c>7.648 F<636c6d20646973742031322d313335>20 768 Q <3134204d61792032303132>144.555 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d2064697374283129>20 48 Q <5553455220434f4d4d414e4453>145.665 E<636c6d2064697374283129>148.165 E 1.109<637269746572696f6e206f662064697374616e6365206265747765656e20636c75 737465727320286279207768617465>120 84 R -.15<7665>-.25 G 3.609<726d>.15 G 1.109 <6574686f6429206973206f6e6c79207061727469616c6c7920696e666f726d617469> -3.609 F -.15<7665>-.25 G<2e>.15 E -.15<466f>120 96 S 3.327<7274>.15 G .827<6865204d69726b696e2c2076>-3.327 F .826<6172696174696f6e206f6620696e 666f726d6174696f6e20616e642073706c69742f6a6f696e206d65747269637320697420 7061797320746f2074616b>-.25 F 3.326<6569>-.1 G .826 <6e746f206163636f756e74>-3.326 F .239 <74686520636f6e7374697475656e742064697374616e636573>120 108 R/F1 10 /Courier@0 SF<6431>2.739 E F0<616e64>2.739 E F1<6432>2.739 E F0 .239 <287365652061626f>2.739 F -.15<7665>-.15 G .239<292e20417373756d696e6720 7468617420746865208c72737420636c7573746572696e67206769>.15 F -.15<7665> -.25 G 2.74<6e61>.15 G<73>-2.74 E<6172>120 120 Q .087<67756d656e74207265 70726573656e7473206120676f6c64207374616e646172642c206120736d616c6c2076> -.18 F .086<616c756520666f72>-.25 F F1<6431>2.586 E F0 .086 <696d706c696573207468617420746865207365636f6e6420636c7573746572696e67> 2.586 F .48<697320286e6561726c79292061207375706572636c7573746572696e672c 20616e642073696d696c61726c79206120736d616c6c2076>120 132 R .481 <616c756520666f72>-.25 F F1<6432>2.981 E F0 .481 <696d706c696573207468617420697420697320286e6561726c79292061>2.981 F <737562636c7573746572696e672e>120 144 Q/F2 10/Times-Bold@0 SF <2d2d736f7274>100 168 Q F0<28>2.5 E/F3 10/Times-Italic@0 SF <736f727420636c7573746572696e6773206261736564206f6e20636f6172>A <73656e657373>-.1 E F0<29>A .393<54686973206f7074696f6e2063616e20626520 75736566756c20696e20636f6e6a756e6374696f6e207769746820746865>120 180 R F2<2d2d636861696e>2.892 E F0 .392 <6f7074696f6e2c20696e206361736520746865206c697374206f6620636c7573746572> 2.892 F<2d>-.2 E<696e677320737570706c696564206973206e6f74206e6563657373 6172696c79206f726465726564206279206772616e756c61726974792e>120 192 Q F2 <2d2d696e646578>100 216 Q F0<28>2.5 E F3 <6f75747075742052616e642c2061646a75737465642052616e6420616e64204a>A <6163636172>-.35 E 2.5<6469>-.37 G<6e6469636573>-2.5 E F0<29>A <4173206465736372696265642e>120 228 Q F2<2d6f>100 252 Q F0 <666e616d652028>2.5 E F3<6f7574707574208c6c65>A F0<29>A F2 <2d646967697473>100 276 Q F0 2.5<6b28>2.5 G F3 <6f757470757420646563696d616c73>-2.5 E F0<29>A<546865206e756d626572206f 6620646563696d616c73207072696e746564207768656e207573696e67207468652076> 120 288 Q <617269616e6365206f6620696e666f726d6174696f6e206d6561737572652e>-.25 E /F4 10.95/Times-Bold@0 SF<53504c49542f4a4f494e2044495354>20 304.8 Q <414e4345>-.986 E F0 -.15<466f>100 316.8 S 2.587<7265>.15 G .088 <6163682070616972206f6620636c7573746572696e6773>-2.587 F F2<4331>2.588 E F0<2c>A F2<4332>2.588 E F0 2.588<2c74>C .288 -.1<776f206e>-2.588 H .088 <756d6265727320617265206769>.1 F -.15<7665>-.25 G .088<6e2c20736179>.15 F F2<6431>2.588 E F0<616e64>2.588 E F2<6432>2.588 E F0 2.588<2e54>C <68656e>-2.588 E F2<6431>2.588 E F0<2b>2.588 E F2<6432>2.588 E F0 <657175616c73>2.588 E .536 <746865206e756d626572206f66206e6f6465732074686174206861>100 328.8 R .835 -.15<76652074>-.2 H 3.035<6f62>.15 G 3.035<6565>-3.035 G .535 <786368616e67656420696e206f7264657220746f207472616e73666f726d20616e> -3.185 F 3.035<796f>-.15 G 3.035<6674>-3.035 G .535<6865207477>-3.035 F 3.035<6f63>-.1 G<6c7573746572696e6773>-3.035 E .198 <696e746f20746865206f74686572>100 340.8 R 2.698<2c61>-.4 G .198 <6e6420796f752063616e207468696e6b206f662028>-2.698 F F2<6431>A F0<2b>A F2<6432>A F0<292f>A F2<324e>A F0 .198 <6173207468652070657263656e74616765207468617420746865207477>2.698 F 2.699<6f63>-.1 G .199<6c7573746572696e677320646966>-2.699 F<6665722e> -.25 E .113<5468652073706c69742f6a6f696e2064697374616e636520686173206120 6c696e6561726974792070726f70657274792077697468207265737065637420746f2074 6865206d656574206f66>100 352.8 R F2<4331>2.613 E F0<616e64>2.613 E F2 <4332>2.613 E F0 2.613<2c73>C .112<65652062656c6f>-2.613 F<772e>-.25 E .024<5468652073706c69742f6a6f696e2064697374616e6365>100 376.8 R F2 <736a64>2.524 E F0 .024<69732076>2.524 F .025<6572792068616e647920696e20 636f6d707574696e672074686520636f6e73697374656e63>-.15 F 2.525<796f>-.15 G 2.525<6674>-2.525 G .225 -.1<776f206f>-2.525 H 2.525<726d>.1 G .025 <6f726520636c7573746572696e6773>-2.525 F .486<6f66207468652073616d652067 726170682c206f7220636f6d706172696e6720636c7573746572696e6773206d61646520 7769746820646966>100 388.8 R .485<666572656e74207265736f75726365202862> -.25 F .485<7574206f7468657277697365206964656e74692d>-.2 F .609<63616c29 20706172616d65746572732e20546865206c617474657220697320666f72208c6e64696e 67206f7574207768657468657220796f752063616e20736574746c6520666f7220636865 61706572206d636c2073657474696e67732c206f72>100 400.8 R 1.018<7768657468 657220796f75206e65656420746f2073776974636820746f206d6f72652065>100 412.8 R<7870656e7369>-.15 E 1.318 -.15<76652073>-.25 H 1.018<657474696e67732e 2054686520666f726d657220697320666f72208c6e64696e67206f757420776865746865 72>.15 F 1.29<636c7573746572696e677320617265206964656e746963616c2c20636f 6e8d696374696e672c206f722077686574686572206f6e652069732028616c6d6f737429 206120737562636c7573746572696e67206f6620746865206f74686572202d>100 424.8 R .042<6d6f73746c7920666f7220636f6d706172696e67206120736574206f6620636c 7573746572696e6773206f6620646966>100 436.8 R .042 <666572656e74206772616e756c6172697479>-.25 F 2.542<2c6d>-.65 G .042 <616465206279206c657474696e6720746865206d636c20706172616d2d>-2.542 F <65746572>100 448.8 Q F2<2d49>2.698 E F0 -.25<7661>2.698 G 2.698 <72792e20546865>.25 F F2<4558414d504c4553>2.698 E F0 .199 <73656374696f6e20636f6e7461696e732065>2.699 F .199 <78616d706c6573206f6620616c6c207468657365>-.15 F F2 .199 <636c6d2064697374>2.699 F F0 .199<757365732c20616e642074686520757365> 2.699 F<6f66>100 460.8 Q F2<636c6d20696e66>2.5 E<6f>-.25 E F0<616e64>2.5 E F2<636c6d206d656574>2.5 E F0 <697320616c736f206469736375737365642074686572652e>2.5 E F2<736a64>100 484.8 Q F0 .5<69732061206d65747269632064697374616e6365206f6e207468652073 70616365206f6620706172746974696f6e73206f66206120736574206f662061206769>3 F -.15<7665>-.25 G 3<6e8c>.15 G -.15<7865>-3 G 3<6463>.15 G .5 <617264696e616c6974792e2049742068617320746865>-3 F<666f6c6c6f>100 496.8 Q<77696e67206c696e6561726974792070726f70657274792e204c6574>-.25 E F2 <5031>2.5 E F0<616e64>2.5 E F2<5032>2.5 E F0 <626520706172746974696f6e732c207468656e>2.5 E F2<736a64>100 520.8 Q F0 <28>A F2<5031>A F0<2c>A F2<5032>2.5 E F0 2.5<293d>C F2<736a64>A F0<28>A F2<5031>A F0<2c>A F2<44>2.5 E F0 2.5<292b>C F2<736a64>A F0<28>A F2<5032> A F0<2c>A F2<44>2.5 E F0<29>A<7768657265>100 544.8 Q F2<44>2.615 E F0 .115<28666f7220447574636820446f6f72736e656465292069732074686520696e7465 7273656374696f6e206f66>2.615 F F2<5031>2.615 E F0<616e64>2.615 E F2 <5032>2.615 E F0 2.615<2c69>C .116 <2e652e2074686520756e6971756520636c7573746572696e672074686174206973> -2.615 F .049<626f7468206120737562636c7573746572696e67206f66>100 556.8 R F2<5031>2.549 E F0<616e64>2.549 E F2<5032>2.549 E F3<616e64>2.549 E F0 2.549<6173>2.549 G .049<75706572636c7573746572696e67206f6620616c6c206f74 68657220737562636c7573746572696e6773206f66>-2.549 F F2<5031>2.548 E F0 <616e64>2.548 E F2<5032>2.548 E F0<2e>A .202<536c6f7070696c792077>100 568.8 R<6f726465642c>-.1 E F2<44>2.702 E F0 .202<697320746865206c6172> 2.702 F .202<6765737420737562636c7573746572696e67206f6620626f7468>-.18 F F2<5031>2.702 E F0<616e64>2.702 E F2<5032>2.702 E F0 2.702<2e53>C .202 <656520746865>-2.702 F F2<5245464552454e434553>2.702 E F0<7365632d>2.702 E .004<74696f6e20666f72206120706f696e74657220746f2074686520746563686e69 63616c207265706f727420696e207768696368>100 580.8 R F2<736a64>2.504 E F0 -.1<7761>2.504 G 2.504<738c>.1 G .004<7273742064658c6e65642028616e642069 6e20776869636820746865206e6f6e2d747269>-2.504 F<762d>-.25 E <69616c20747269616e676c6520696e657175616c6974792069732070726f>100 592.8 Q -.15<7665>-.15 G<6e292e>.15 E .102 <426563617573652069742069732075736566756c20746f206b6e6f>100 616.8 R 2.602<7777>-.25 G .102<686574686572206f6e6520706172746974696f6e20286f72 20636c7573746572696e672920697320616c6d6f7374206120737562636c757374657269 6e67206f6620746865>-2.602 F<6f74686572>100 628.8 Q<2c>-.4 E F2 <636c6d2064697374>2.5 E F0<72657475726e7320746865207477>2.5 E 2.5<6f63> -.1 G<6f6e7374697475656e7473>-2.5 E F2<736a64>2.5 E F0<28>A F2<5031>A F0 <2c>A F2<44>A F0 2.5<2961>C<6e64>-2.5 E F2<736a64>2.5 E F0<28>A F2<5032> A F0<2c>A F2<44>A F0<292e>A<4c6574>100 652.8 Q F2<5031>3.124 E F0 <616e64>3.124 E F2<5032>3.124 E F0 .624<6265207477>3.124 F 3.124<6f63> -.1 G .623<6c7573746572696e6773206f662061206772617068206f66206361726469 6e616c697479>-3.124 F F2<4e>3.123 E F0 3.123<2c61>C .623 <6e6420737570706f7365>-3.123 F F2 .623<636c6d2064697374>3.123 F F0 .623 <72657475726e7320746865>3.123 F<696e7465>100 664.8 Q<67657273>-.15 E F2 <6431>2.549 E F0<616e64>2.549 E F2<6432>2.549 E F0 2.549<2e59>C .049 <6f752063616e207468696e6b206f66>-3.649 F F2 .049 <313030202a20286431202b20643229202f204e>2.549 F F0 .049 <6173207468652070657263656e746167652074686174>2.549 F F2<5031>2.549 E F0 <616e64>2.549 E F2<5032>2.55 E F0<646966>2.55 E<6665722e>-.25 E 1.025 <5468697320696e746572707265746174696f6e20697320696e2066>100 676.8 R 1.025<61637420736c696768746c7920636f6e73657276>-.1 F<617469>-.25 E -.15 <7665>-.25 G 6.025<2e54>.15 G 1.025<6865206e756d657261746f72206973207468 65206e756d626572206f66206e6f6465732074686174>-6.025 F .064 <6e65656420746f2062652065>100 688.8 R .064<786368616e67656420696e206f72 64657220746f207472616e73666f726d206f6e6520696e746f20746865206f746865722e 2054686973206e756d626572206d61792067726f>-.15 F 2.565<7761>-.25 G 2.565 <736c>-2.565 G<6172>-2.565 E .065<6765206173>-.18 F F2 <322a4e202d20322a73717274284e29>100 700.8 Q F0 2.5<2c73>C 2.5<6f69>-2.5 G 2.5<7477>-2.5 G<6f756c64206265206a757374698c656420746f2074616b>-2.6 E 2.5<6535>-.1 G 2.5<3061>-2.5 G 2.5<736173>-2.5 G<63616c696e672066>-2.5 E <6163746f7220726174686572207468616e203130302e>-.1 E -.15<466f>100 724.8 S 3.599<7265>.15 G 1.099<78616d706c652c206966>-3.749 F F2<41>3.599 E F0 <616e64>3.599 E F2<42>3.599 E F0 1.098<61726520626f746820636c7573746572 696e6773206f662061206772617068206f6e206120736574206f662039303538206e6f64 657320616e64>3.599 F F2 1.098<636c6d2064697374>3.598 F F0 <636c6d20646973742031322d313335>20 768 Q<3134204d61792032303132>144.555 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d2064697374283129>20 48 Q <5553455220434f4d4d414e4453>145.665 E<636c6d2064697374283129>148.165 E .237<72657475726e73205b33382c20323039365d2c207468697320636f6e>100 84 R -.15<766579>-.4 G 2.737<7374>.15 G<686174>-2.737 E/F1 10/Times-Bold@0 SF <41>2.737 E F0 .237 <697320616c6d6f7374206120737562636c7573746572696e67206f66>2.737 F F1<42> 2.737 E F0 .238<2862792073706c697474696e67203338206e6f64657320696e>2.737 F F1<41>2.738 E F0 .643<7765206f627461696e206120636c7573746572696e67>100 96 R F1<44>3.143 E F0 .643 <74686174206973206120737562636c7573746572696e67206f66>3.143 F F1<42> 3.143 E F0 .643<292c20616e642074686174>B F1<42>3.142 E F0 .642 <6973206d756368206c657373206772616e756c6172207468616e>3.142 F F1<41> 3.142 E F0<2e>A <546865206c617474657220697320626563617573652077652063616e206f627461696e> 100 108 Q F1<42>2.5 E F0<66726f6d>2.5 E F1<44>2.5 E F0<6279>2.5 E/F2 10 /Times-Italic@0 SF<6a6f696e696e67>2.5 E F0 <32303936206e6f64657320696e20736f6d652077>2.5 E<61792e>-.1 E/F3 10.95 /Times-Bold@0 SF<4558414d504c4553>20 124.8 Q F0 .714<54686520666f6c6c6f> 100 136.8 R .714<77696e6720697320616e2065>-.25 F .714 <78616d706c65206f66207365>-.15 F -.15<7665>-.25 G .715 <72616c206d636c2076>.15 F .715<616c69646174696f6e20746f6f6c73206170706c 69656420746f206120736574206f6620636c7573746572696e6773206f6e2061>-.25 F .19<70726f7465696e206772617068206f662039303538206e6f6465732e>100 148.8 R .189<496e20746865208c7273742065>5.189 F .189 <78706572696d656e742c2073697820646966>-.15 F .189<666572656e7420636c7573 746572696e677320776572652067656e65726174656420666f72>-.25 F<646966>100 160.8 Q .89<666572656e742076>-.25 F .89 <616c756573206f662074686520696e8d6174696f6e20706172616d65746572>-.25 F 3.39<2c77>-.4 G .89<686963682077>-3.39 F .89<6173207265737065637469>-.1 F -.15<7665>-.25 G .89 <6c792073657420746f20312e322c20312e362c20322e302c20322e342c20322e382c> .15 F 1.997<616e6420332e322e>100 172.8 R 1.997<49742073686f756c64206265 206e6f74656420746861742070726f7465696e20677261706873207365656d20736f6d65> 6.997 F 1.996 <77686174207370656369616c20696e207468617420616e20696e8d6174696f6e>-.25 F 1.041<706172616d657465722073657474696e67206173206c6f>100 184.8 R 3.541 <7761>-.25 G 3.541<7331>-3.541 G 1.041 <2e32207374696c6c2070726f647563657320612076>-3.541 F 1.042<657279206163 6365707461626c6520636c7573746572696e672e205468652073697820636c7573746572 696e6773>-.15 F .176<617265207363727574696e697a6564207573696e67>100 196.8 R F1 .176<636c6d2064697374>2.676 F F0<2c>A F1 .175<636c6d20696e66> 2.676 F<6f>-.25 E F0 2.675<2c61>C<6e64>-2.675 E F1 .175 <636c6d206d656574>2.675 F F0 5.175<2e49>C 2.675<6e74>-5.175 G .175 <6865207365636f6e642065>-2.675 F .175 <78706572696d656e742c20666f757220646966>-.15 F<666572656e74>-.25 E 2.752 <636c7573746572696e677320776572652067656e657261746564207769746820696465 6e746963616c208d6f>100 208.8 R 5.253<7728>-.25 G 2.753 <692e652e20696e8d6174696f6e2920706172616d65746572>-5.253 F 5.253<2c62> -.4 G 2.753<7574207769746820646966>-5.453 F<666572656e74>-.25 E <7265736f7572636520706172616d65746572732e>100 220.8 Q F1 <636c6d2064697374>2.5 E F0 <6973207573656420746f2063686f6f7365206120737566>2.5 E <8c6369656e74207265736f75726365206c65>-.25 E -.15<7665>-.25 G<6c2e>.15 E <48696768>100 244.8 Q F1<2d502f2d532f2d52>2.818 E F0 -.25<7661>2.818 G .317<6c756573206d616b>.25 F<65>-.1 E F1<6d636c>2.817 E F0 .317 <6d6f72652061636375726174652062>2.817 F .317<757420616c736f206d6f726520 74696d6520616e64206d656d6f727920636f6e73756d696e672e2052756e>-.2 F F1 <6d636c>100 256.8 Q F0 .246<7769746820646966>2.746 F .246<666572656e7420 73657474696e677320666f7220746865736520706172616d65746572732c20686f6c6469 6e67206f7468657220706172616d6574657273208c78>-.25 F .247 <65642e204966207468652065>-.15 F<7870656e7369>-.15 E -.15<7665>-.25 G 2.166<616e6420737570706f7365646c79206d6f726520616363757261746520636c7573 746572696e6773206172652076>100 268.8 R 2.166<6572792073696d696c61722074 6f2074686520636c7573746572696e677320726573756c74696e672066726f6d>-.15 F 1.204<636865617065722073657474696e67732c20746865206368656170657220736574 74696e6720697320737566>100 280.8 R 1.204<8c6369656e742e2049662074686520 64697374616e636573206265747765656e206368656170657220636c7573746572696e67 73>-.25 F .846<616e64206d6f72652065>100 292.8 R<7870656e7369>-.15 E 1.146 -.15<76652063>-.25 H .846<6c7573746572696e677320617265206c6172>.15 F .845<67652c207468697320697320616e20696e6469636174696f6e20746861742079 6f75206e656564207468652065>-.18 F<7870656e7369>-.15 E 1.145 -.15 <76652073>-.25 H<65742d>.15 E 1.156 <74696e67732e20496e207468617420636173652c20796f75206d61792077>100 304.8 R 1.156<616e7420746f20696e63726561736520746865>-.1 F F1 <2d502f2d532f2d52>3.656 E F0 1.156 <706172616d657465727320286f722073696d706c7920746865>3.656 F F1 <2d736368656d65>3.656 E F0<706172616d657465722920756e74696c206173736f63 696174656420636c7573746572696e6773206174206e6561726279207265736f75726365 206c65>100 316.8 Q -.15<7665>-.25 G<6c73206172652076>.15 E <6572792073696d696c61722e>-.15 E .406 <496e207468697320706172746963756c61722065>100 340.8 R .406 <78616d706c652c207468652076>-.15 F .405 <616c69646174696f6e20746f6f6c7320646f206e6f74207265>-.25 F -.15<7665> -.25 G .405<616c2074686174206f6e6520636c7573746572696e6720696e2070617274 6963756c61722063616e>.15 F 1.315<62652063686f73656e20617320276265737427 2c206265636175736520616c6c20636c7573746572696e6773207365656d206174206c65 6173742061636365707461626c652e20546865>100 352.8 R 3.816<7964>-.15 G 3.816<6f61>-3.816 G 1.316<696420686f>-3.816 F<7765>-.25 E -.15<7665>-.25 G 3.816<7269>.15 G<6e>-3.816 E<73686f>100 364.8 Q .468 <77696e67207468652072656c617469>-.25 F .768 -.15<7665206d>-.25 H .468<65 72697473206f66206561636820636c7573746572696e67732e20546865206d6f73742069 6d706f7274616e7420697373756520696e2074686973207265737065637420697320636c 75732d>.15 F <746572206772616e756c61726974792e20546865207461626c652062656c6f>100 376.8 Q 2.5<7773>-.25 G<686f>-2.5 E<777320746865206f7574707574206f66> -.25 E F1<636c6d20696e66>2.5 E<6f>-.25 E F0<2e>A/F4 10/Courier@0 SF 6 <456666696369656e6379204d617373>130 412.8 R 6<667261632041726561>6 F 6 <6672616320436c>6 F 6<776569676874204d78>6 F<6c696e6b20776569676874>6 E 12<312e3220302e3432333634>100 424.8 R 18 <302e393836393020302e30323631362035322e30363030322035302e3832383030>30 F 12<312e3620302e3538323937>100 436.8 R 18 <302e393534343120302e30313335332035352e34303238322035302e3832383030>30 F 12<322e3020302e3633323739>100 448.8 R 18 <302e393233383620302e30313137312035382e30393430392035302e3832383030>30 F 12<322e3420302e3635353332>100 460.8 R 18 <302e393037303220302e30313039312035392e35383238332035302e3832383030>30 F 12<322e3820302e3636383534>100 472.8 R 18 <302e383439353420302e30303934302036332e31393138332035302e3832383030>30 F 12<332e3220302e3637363734>100 484.8 R 18 <302e383232373520302e30303834352036362e31303833312035302e3832383030>30 F F0 1.218<5468697320646174612073686f>100 508.8 R 1.218 <777320746861742074686572652069732065>-.25 F 1.219<7863657074696f6e616c 6c79207374726f6e6720636c7573746572207374727563747572652070726573656e7420 696e2074686520696e7075742067726170682e>-.15 F .539<54686520312e3220636c 7573746572696e6720636170747572657320616c6d6f737420616c6c2065646765206d61 7373207573696e67206f6e6c7920322e352070657263656e74206f66202761726561272e 2054686520332e3220636c75732d>100 520.8 R .751<746572696e67207374696c6c20 63617074757265732038322070657263656e74206f6620746865206d617373207573696e 67206c657373207468616e20312070657263656e74206f6620617265612e2057>100 532.8 R 3.251<6563>-.8 G .751<6f6e74696e75652077697468>-3.251 F .352 <6c6f6f6b696e6720617420746865206d757475616c20636f6e73697374656e63>100 544.8 R 2.851<796f>-.15 G 2.851<6674>-2.851 G .351 <68652073697820636c7573746572696e67732e2042656c6f>-2.851 F 2.851<7769> -.25 G 2.851<736174>-2.851 G .351<61626c6520746861742073686f>-2.851 F .351<777320616c6c207061697277697365>-.25 F <64697374616e636573206265747765656e2074686520636c7573746572696e67732e> 100 556.8 Q<636c6d20646973742031322d313335>20 768 Q <3134204d61792032303132>144.555 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d2064697374283129>20 48 Q <5553455220434f4d4d414e4453>145.665 E<636c6d2064697374283129>148.165 E /F1 10/Courier@0 SF 18<7c31>124 84 S 6<2e36207c>-18 F 6<322e30207c>18 F 6<322e34207c>18 F 6<322e38207c>18 F 6<332e32207c>18 F<332e36>18 E<2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2e>100 96 Q<312e32207c323039362c 3338207c323732382c3431207c333034352c3438207c333430342c3435207c333632312c 3433207c333830302c203432207c>100 108 Q<2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d7c>100 120 Q<312e36207c>100 132 Q 6<7c37>48 G<39372c373220 7c313230342c3736207c313633382c3738207c313931392c3730207c323136372c203639 207c>-6 E<2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d7c>100 144 Q <322e30207c>100 156 Q 48<7c7c>48 G<3437372c3638207c203933362c3738207c31 3233352c3835207c313530342c203838207c>-42 E<2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d7c>100 168 Q<322e34207c>100 180 Q 48<7c7c7c>48 G <3439382c3634207c203833362c3931207c313132342c313033207c>-42 E<2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d7c>100 192 Q<322e38207c>100 204 Q 48 <7c7c7c7c>48 G<3338342c3935207c203638382c313139207c>-42 E<2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d7c>100 216 Q<332e32207c>100 228 Q 48 <7c7c7c7c7c>48 G<3335302c313130207c>-42 E<2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2e>100 240 Q F0 .78<546865207461626c652073686f>100 264 R .78<777320746861742074686520646966>-.25 F .781<666572656e7420636c757374 6572696e6773206172652070726574747920636f6e73697374656e742077697468206561 6368206f74686572>-.25 F 3.281<2c62>-.4 G .781<65636175736520666f72> -3.281 F<7477>100 276 Q 3.182<6f64>-.1 G<6966>-3.182 E .681<666572656e74 20636c7573746572696e67732069742069732067656e6572616c6c792074727565207468 6174206f6e6520697320616c6d6f7374206120737562636c7573746572696e67206f6620 746865206f746865722e20546865>-.25 F .162<696e746572707265746174696f6e20 666f72207468652064697374616e6365206265747765656e2074686520312e3620616e64 2074686520332e3220636c7573746572696e6720666f722065>100 288 R .163 <78616d706c652c20697320746861742062792072656172>-.15 F<2d>-.2 E .329<72 616e67696e67203433206e6f64657320696e2074686520332e3220636c7573746572696e 672c207765206f627461696e206120737562636c7573746572696e67206f662074686520 312e3620636c7573746572696e672e20546865207461626c65>100 300 R<73686f>100 312 Q .121<7773207468617420666f7220616e>-.25 F 2.621<7970>-.15 G .122<61 6972206f6620636c7573746572696e67732c206174206d6f73742031313920656e747269 6573206e65656420746f206265207265617272616e67656420696e206f7264657220746f 206d616b>-2.621 F<65>-.1 E <6f6e65206120737562636c7573746572696e67206f6620746865206f746865722e>100 324 Q<546865206f>100 348 Q -.15<7665>-.15 G <72616c6c20636f6e73697374656e63>.15 E 2.5<7962>-.15 G<65636f6d657320616c 6c20746865206d6f726520636c656172206279206c6f6f6b696e6720617420746865206d 656574206f6620616c6c2074686520636c7573746572696e67733a>-2.5 E F1<636c6d 206d656574202d6f206d656574206f75743132206f75743136206f75743230206f757432 34206f75743238206f75743332>100 384 Q<636c6d2064697374206d656574206f7574 3132206f75743136206f75743230206f75743234206f75743238206f75743332>100 396 Q F0<726573756c747320696e2074686520666f6c6c6f>100 420 Q <77696e672064697374616e636573206265747765656e20746865207265737065637469> -.25 E .3 -.15<76652063>-.25 H <6c7573746572696e677320616e64207468656972206d6565742e>.15 E F1 18<7c31> 124 456 S 6<2e32207c>-18 F<312e36207c>24 E 12<322e30207c20322e34>12 F 12 <7c32>12 G 12<2e38207c>-12 F 18<332e32207c>12 F<2d2d2d2d2d2d2d2d2d2d2d2d 2d2d202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2e>100 468 Q 6 <6d6565747c20302c333636337c20302c313937327c>100 480 R<302c31333231207c>6 E<302c393538207c20302c353539>12 E 6<7c30>12 G 12<2c323833207c>-6 F<2d2d 2d2d2d2d2d2d2d2d2d2d2d2d202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d 2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2e>100 492 Q F0 .349 <546869732073686f>100 516 R .349<77732074686174206279207265617272616e67 696e67206f6e6c7920323833206e6f64657320696e2074686520332e3220636c75737465 72696e672c206f6e65206f627461696e73206120737562636c7573746572696e67>-.25 F<6f6620616c6c206f7468657220636c7573746572696e67732e>100 528 Q .901 <496e20746865206c6173742065>100 552 R<78706572696d656e742c>-.15 E/F2 10 /Times-Bold@0 SF<6d636c>3.401 E F0 -.1<7761>3.401 G 3.401<7372>.1 G .901 <756e207769746820696e8d6174696f6e20706172616d6574657220312e342c20666f72 2065616368206f662074686520666f757220646966>-3.401 F<666572656e74>-.25 E .57<707265736574207072756e696e6720736368656d6573>100 564 R F1 <6b3d312c322c332c34>3.069 E F0 5.569<2e54>C<6865>-5.569 E F2 .569 <636c6d2064697374>3.069 F F0 .569 <64697374616e636573206265747765656e2074686520646966>3.069 F .569 <666572656e7420636c7573746572696e6773>-.25 F<6172652073686f>100 576 Q <776e2062656c6f>-.25 E<772e>-.25 E F1 12<7c6b>124 612 S 12 <3d32207c206b3d33>-12 F 18<7c6b>12 G 6<3d34207c>-18 F <2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2e>100 624 Q<6b3d31207c>100 636 Q<31372c3137207c>12 E<31362c3136207c>12 E <31362c3136207c>12 E <2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2e>100 648 Q<6b3d32207c>100 660 Q 18<7c33>48 G 6<2c33207c>-18 F 6<352c35207c>18 F<2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2e>100 672 Q<6b3d33207c>100 684 Q 48<7c7c>48 G 6<342c34207c>-30 F <2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2e>100 696 Q F0 .126<546869732065>100 720 R .126<78616d706c652069732061206c6974 746c6520626f72696e6720696e2074686174207468652063686561706573742073636865 6d65207365656d732061646571756174652e>-.15 F .127<496620616e>5.127 F .127 <797468696e672c207468652067>-.15 F<617073>-.05 E <636c6d20646973742031322d313335>20 768 Q<3134204d61792032303132>144.555 E<34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d2064697374283129>20 48 Q <5553455220434f4d4d414e4453>145.665 E<636c6d2064697374283129>148.165 E 1.118<6265747765656e20746865>100 84 R/F1 10/Courier@0 SF<6b3d31>3.617 E F0 1.117<736368656d6520616e64207468652072657374206172652061206c6974746c 65206c6172>3.617 F 1.117<676572207468616e207468652074687265652067>-.18 F 1.117<617073206265747765656e20746865>-.05 F F1<6b3d32>3.617 E F0<2c>A F1 <6b3d33>100 96 Q F0 3.09<2c61>C<6e64>-3.09 E F1<6b3d34>3.09 E F0 .591<63 6c7573746572696e67732e2048616420616c6c2064697374616e636573206265656e206d 756368206c6172>3.09 F<676572>-.18 E 3.091<2c74>-.4 G .591 <68656e207375636820616e206f6273657276>-3.091 F .591<6174696f6e2077>-.25 F<6f756c64>-.1 E<626520726561736f6e20746f2063686f6f736520746865>100 108 Q F1<6b3d32>2.5 E F0<73657474696e672e>2.5 E 2.061<4e6f746520746861742079 6f75206e656564206e6f74206665656c20756e636f6d666f727461626c65207769746820 74686520636c7573746572696e6773207374696c6c206265696e6720646966>100 132 R 2.06<666572656e742061742068696768>-.25 F .012<7265736f75726365206c65>100 144 R -.15<7665>-.25 G .012<6c732c2069662065>.15 F -.15<7665>-.25 G 2.512<7273>.15 G 2.512<6f73>-2.512 G 2.512<6c696768746c792e20496e>-2.512 F .012<616c6c206c696b>2.512 F .012 <656c69686f6f642c2074686572652061726520616e>-.1 F<7977>-.15 E .013 <6179206e6f64657320776869636820617265206e6f7420696e20616e>-.1 F<79>-.15 E .469<636f7265206f662061747472616374696f6e2c20616e64207468617420617265 206f6e2074686520626f756e64617279206265747765656e207477>100 156 R 2.969 <6f6f>-.1 G 2.969<726d>-2.969 G .468<6f726520636c7573746572696e67732e> -2.969 F<546865>5.468 E 2.968<796d>-.15 G .468<617920676f>-2.968 F .55 <6f6e652077>100 168 R .55<6179206f7220616e6f74686572>-.1 F 3.05<2c61>-.4 G .55<6e642074686573652061726520746865206e6f6465732077686963682077696c6c 20676f20646966>-3.05 F .55<666572656e742077>-.25 F .55<6179732065>-.1 F -.15<7665>-.25 G 3.05<6e61>.15 G 3.05<7468>-3.05 G .55 <696768207265736f75726365>-3.05 F<6c65>100 180 Q -.15<7665>-.25 G 3.14 <6c732e2053756368>.15 F .64<6e6f646573206d617920626520737461626c6520696e 20636c7573746572696e6773206f627461696e656420666f72206c6f>3.14 F .64 <77657220696e8d6174696f6e2076>-.25 F .64 <616c7565732028692e652e20636f6172736572>-.25 F <636c7573746572696e6773292c20696e2077686963682074686520646966>100 192 Q <666572656e7420636c75737465727320746f20776869636820746865>-.25 E 2.5 <7961>-.15 G<72652061747472616374656420617265206d6572>-2.5 E<6765642e> -.18 E/F2 10.95/Times-Bold@0 SF -.548<4155>20 208.8 S<54484f52>.548 E F0 <5374696a6e2076>100 220.8 Q<616e20446f6e67656e2e>-.25 E F2 <53454520414c534f>20 237.6 Q/F3 10/Times-Bold@0 SF <6d636c66616d696c79283729>100 249.6 Q F0<666f7220616e206f>2.5 E -.15 <7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c20746865 20646f63756d656e746174696f6e20616e6420746865207574696c697469657320696e20 746865206d636c2066>-2.5 E<616d696c792e>-.1 E F2<5245464552454e434553>20 266.4 Q F0 1.153<5374696a6e2076>100 278.4 R 1.153<616e20446f6e67656e2e> -.25 F/F4 10/Times-Italic@0 SF -.8<5065>3.653 G 1.154 <72666f726d616e636520637269746572696120666f72206772>.8 F 1.154 <61706820636c7573746572696e6720616e64204d61726b>-.15 F 1.354 -.1 <6f762063>-.1 H 1.154<6c75737465722065>.1 F<78706572696d656e7473>-.2 E F0<2e>A -.7<5465>100 290.4 S 1.07<63686e6963616c205265706f727420494e532d 52303031322c204e6174696f6e616c20526573656172636820496e737469747574652066 6f72204d617468656d617469637320616e6420436f6d7075746572205363692d>.7 F<65 6e636520696e20746865204e65746865726c616e64732c20416d7374657264616d2c204d 617920323030302e>100 302.4 Q<687474703a2f2f7777772e6377692e6e6c2f667470 2f4357497265706f7274732f494e532f494e532d52303031322e70732e5a>100 314.4 Q .473<4d6172696e61204d65696c612e>100 338.4 R F4 .473<436f6d706172696e6720 436c7573746572696e677320ad20416e204178696f6d617469632056>2.973 F<6965> -.74 E<77>-.15 E F0 5.473<2e49>C<6e>-5.473 E F4<5072>2.973 E .473 <6f63656564696e6773206f66207468652032326e6420496e746572>-.45 F<2d>-.2 E <6e6174696f6e616c20436f6e666572>100 350.4 Q<656e6365206f6e204d6163>-.37 E<68696e65204c6561726e696e67>-.15 E F0 2.5<2c42>C <6f6e6e2c204765726d616e>-2.5 E 1.3 -.65<792c2032>-.15 H<3030352e>.65 E <4d6172696e61204d65696c612e>100 374.4 Q F4 <436f6d706172696e6720436c7573746572696e6773>2.5 E F0 2.5<2c55>C 2.5 <5753>-2.5 G<7461746973746963732054>-2.5 E <6563686e6963616c205265706f7274203431382e>-.7 E <687474703a2f2f7777772e737461742e77>100 386.4 Q<617368696e67746f6e2e6564 752f7777772f72657365617263682f7265706f7274732f323030322f74723431382e7073> -.1 E<636c6d20646973742031322d313335>20 768 Q<3134204d61792032303132> 144.555 E<35>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxload.html0000644000402500021140000010444711754271045012373 00000000000000 The mcxload manual

14 May 2012    mcxload 12-135

NAME

mcxload — load matrices and tab files from label format

SYNOPSIS

mcxload -abc <fname> (label file) -o <fname> (output file)

[-abc <fname> (label file)] [-123 <fname> (identifier file)] [-o <fname> (output file)] [--stream-mirror (symmetrify, same domain)] [--stream-split (assume different domains)] [-re <mode> (edge deduplication mode)] [-ri <mode> (image symmetrification mode)] [-sif <fname> (SIF label file)] [-etc <fname> ('etc' label file)] [-etc-ai <fname> (leaderless 'etc' label file)] [--expect-values (expect label:weight format)] [-235 <fname> (leader '235' label file)] [-235-ai <fname> (leaderless '235' label file)] [-write-tab <fname> (save domain tab)] [-write-tabc <fname> (save column tab)] [-write-tabr <fname> (save row tab)] [-strict-tab <fname> (tab universe)] [-strict-tabc <fname> (tabc universe)] [-strict-tabr <fname> (tabr universe)] [-restrict-tab <fname> (tab world)] [-restrict-tabc <fname> (tabc world)] [-restrict-tabr <fname> (tabr world)] [-extend-tab <fname> (tab launch)] [-extend-tabc <fname> (tabc launch)] [-extend-tabr <fname> (tabr launch)] [-123-max <int> (set domain range)] [-123-maxc <int> (set column range)] [-123-maxr <int> (set row range)] [--stream-log (log transform stream values)] [--stream-neg-log (negative log transform stream values)] [--stream-neg-log10 (negative log-10 transform stream values)] [-stream-tf (transform stream values)] [-tf <tf-spec> (transform (not so) final matrix)] [--transpose (transpose)] [--write-binary (output binary format)] [--debug (debug)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

GETTING STARTED

mcxload --stream-mirror -abc data1.txt -o data1.mci -write-tab data1.tab mcxload --stream-mirror -etc data2.txt -o data2.mci -write-tab data2.tab mcxload --stream-mirror -sif data3.txt -o data3.mci -write-tab data3.tab

When the output should be an undirected graph it is safest to always use the --stream-mirror option. Edges are stored bidirectionally as two arcs, and this option instructs mcxload to ensure that both arcs are present. In the above examples three different types of format are read. In all formats, the basic unit of specification is that of an arc specified by a source node, a destination node, and optionally a weight. All formats are line based, with -abc specifying a single arc and -etc and -sif specifying multiple arcs corresponding to a shared source node. For -abc the format is

<source-label> <destination-label> [<weight>]

The last field, specifying the arc weight, is optional. If not present the arc weight will be set to the default weight of 1.0.

For -sif the format is
<source-label> <relation-type> <destination-label> <destination-label> ...

There can be an arbitrary number of destination labels. The relation type field in the second column is required but will be ignored. As an extension it is possible to specify weights, requiring the use of the --expect-values option. Weights are specified by tagging them onto the destination label separated by a colon:

<source-label> <relation-type> <destination-label>:<weight> <destination-label>:<weight> ...

Finally, the format for the -etc option is the same, except that the relation type column is dropped.

DESCRIPTION

mcxload reads label input from a file. The format of the file should be line-based, each line containing two white-space separated strings (labels) and optionally a number separated from the second label by whitespace. In the absence of a value, mcxload will use the default value 1.0. If a tab is present on an input line, mcxload will assume that the tab character is the separator for that line. Lines for which the first non-whitespace character is an octothorpe ('#') are skipped.

mcxload will transform the labels into mcl numerical identifiers and the pairs of labels into graph edges or equivalently matrix entries. The weight of an edge is the value associated with the associated labels. mcxload constructs dictionaries (sometimes just one) that map labels onto mcl identifiers as it goes along. It can optionally write these to file. In MCL (family) parlance, such a dictionary written to file is called a tab file.

It is possible to specify numerical identifiers directly with the -123 option. In this case mcxload assumes a canonical domain (cf mcxio) and will create the minimal canonical domain that supports the data. Also bear in mind the caveat further below.

It is possible to effectively predeclare labels and thus enforce an a-priori known mapping of labels onto numerical identifiers. Labels receive an identifier in the order in which they occur in the input. Predeclaring labels can be achieved by having them appear in the desired order and setting the edge weight to zero.

A major mcxload modality is whether the input refers to a single domain or to two separate domains. An example of the first is where labels are names of people and the value is the extent to which they like one another. This encodes a likability graph where all the nodes represent people. The reasonable thing to do in this case is to create a single dictionary with all names wherever they occur. All tab options (as opposed to tabc and tabr) pertain to this scenario and likewise for the options --graph and --stream-mirror.

An example of the second mode is where the first label is again the name of a person, the second label is the name of an animal species, and the value is the extent to which that person appreciates the species. In this case, the reasonable thing to do is to create two dictionaries, one for persons and one for species. All tabc and tabr options pertain to this scenario. The tabc options always refer to the first label and the tabr options always refer to the second label. The letters c and r refer to column and row respectively. The latter are the names of the matrix domains corresponding to the input domains. Refer to mcxio.

A further mcxload modality is whether it constructs dictionaries on the fly, or whether it proceeds from a tab file already available. By default mcxload will construct dictionaries on the fly. You need to save them with the appropriate -write option(s). All the strict options read a tab file and require any labels in the -abc label input to be present in the corresponding tab file. mcxload will then fail in the face of absent labels. All the restrict options simply ignore labels that are not found in the corresponding tab file. The extend options extend the existing tab file with labels that are not found. It presumably only makes sense to do so if the corresponding -write options are used as well.

The input stream is deduplicated on a per-node neighbourhood basis using the -re option.

mcxload has a few options to transform or select based on the values in the input stream and the values in the constructed matrix. These are --stream-log, --stream-neg-log, --stream-neg-log10, -stream-tf and -tf. Refer to mcxio for a description of the syntax accepted by the latter two options — it is a syntax accepted by a few more mcl siblings. Finally it is possible to transpose the final result using the --transpose option. Keep in mind that mcxload does not accordingly change its idea of row and column domains.

The final matrix can be symmetrified using the -ri option.

The -etc, -235 and -sif options assume a format where all entries for a given column (or equivalently all neighbours for a given node) are joined onto a single line. This can be useful e.g. to read in externally generated clusterings. The -etc and -sif options expect label input, whereas the -235 options expects numbers in the input that are mapped directly onto mcl numerical identifiers. The SIF format expected by -sif requires a relationship type in the second field on each line; this is ignored. As an extension to the SIF format weights may optionally follow the labels, separated from them with a colon character.

CAVEAT
Please note that by feeding the line '1000000000 1' to mcxload with either of the -235 or -123 options it will try to allocate a matrix with one billion columns. This is most likely not what is wanted. Assuming that the input contains fewer than one billion unique labels, one should use the label options as described above and below.

STAGES
Conceptually, input matrix creation consists of the following stages

i

Read the input stream, apply -stream-tf transformation specification, and optionally push reverse elements (--stream-mirror).

ii

Deduplicate edges in the context of all edges/arcs originating from a given node according to the -re option.

iii

Apply transpose symmetrification according to the -ri option, if used.

iv

Apply -tf transformation specification.

OPTIONS

-abc <fname> (label file)

The file to read label data from. Labels are separated by white-space. The labels may optionally be followed by a value (again separated by white-space), which is taken as the edge weight between the nodes corresponding with the labels. If a tab is present on an input line it is presumed to be the separator for that line, including the value if present. Lines for which the first non-blank character is the octothorpe ('#') are skipped.

 
-123 <fname> (identifier file)

The file to read numerical data from. The format is the same as for label data, but the identifiers are directly mapped onto mcl identifiers as described earlier.

 
-o <fname> (output file)

The output file where the constructed matrix is written.

 
--stream-mirror (symmetrify, same domain)

Whenever label1 label2 value is encountered in the input, mcxload inserts label2 label1 value in the input stream as well. This option implies that both labels belong to the same domain.

 
--stream-split (assume different domains)

This tells mcxload that the two labels belong to different domains. The program will create two tab files, one for columns and one for rows. This can be used for example to create a logical mapping of gene identifiers to species identifiers.

 
-re <max|add|mul|first|last> (deduplication mode)

This specifies how mcxload should collapse repeated entries, that is edges for which a value is specified multiple times. This is done relative to a single node at a time, taking into account all neighbours assembled from the input stream. Note that --stream-mirror will result in duplicated entries if the input contains edge specifications in both ways. Also note that first and last might not result in symmetric input if only --stream-mirror is used.

 
-write-tab <fname> (save domain tab)

Write the domain to file. It applies to both label types.

 
-write-tabc <fname> (save column tab)

Write the column domain to file. It applies to the first label found on each input line.

 
-write-tabr <fname> (save row tab)

Write the column domain to file. It applies to the second label found on each input line.

 
-strict-tab <fname> (tab universe)

Read a dictionary from file and require each label to be present in the dictionary. mcxload will exit on absentees.

 
-strict-tabc <fname> (tabc universe)

Read a dictionary from file and require the first label on each line to be present in the dictionary. mcxload will exit on absentees.

 
-strict-tabr <fname> (tabr universe)

Read a dictionary from file and require the second label on each line to be present in the dictionary. mcxload will exit on absentees.

 
-restrict-tab <fname> (tab world)

Read a dictionary from file and only accept input lines (edges) for which both labels are present in the dictionary. mcxload will ignore absentees.

 
-restrict-tabc <fname> (tabc world)

Read a dictionary from file and ignore input lines for which the first label is absent from the dictionary.

 
-restrict-tabr <fname> (tabr world)

Read a dictionary from file and ignore input lines for which the second label is absent from the dictionary.

 
-extend-tab <fname> (tab launch)

Read a dictionary from file and extend it with any label from the input not yet present in the dictionary.

 
-extend-tabc <fname> (tabc launch)

Read a dictionary from file and extend it with all first labels from the input not yet present in the dictionary.

 
-extend-tabr <fname> (tabr launch)

Read a dictionary from file and extend it with all second labels from the input not yet present in the dictionary.

 
-123-max <int> (set domain range)

Numbers starting from <int> will be ignored, and the domain (used for both columns and rows) will range from zero up to one less than <int>.

 
-123-maxc <int> (set column range)

Numbers starting from <int> will be ignored in the column domain, and the column domain will range from zero up to one less than <int>.

 
-123-maxr <int> (set row range)

Numbers starting from <int> will be ignored in the row domain, and the row domain will range from zero up to one less than <int>.

 
--stream-log (log transform stream values)

Replace each entry by its natural logarithm.

 
--stream-neg-log (negative log transform stream values)
--stream-neg-log10 (negative log-10 transform stream values)

Replace each entry by the negative of its natural logarithm and log-10 representation, respectively. This is for example useful to convert scores that denote probabilities or p-values such as BLAST scores.

 
-stream-tf (transform stream values)

Transform the stream values as they are read in according to the syntax described in mcxio.

 
-tf <tf-spec> (transform (not so) final matrix)

Transform the matrix values after deduplication and symmetrification according to the syntax described in mcxio.

 
-ri (<max|add|mul>)

After the initial matrix has been assembled, it can be symmetrified by either of these options. They indicate the operation used to combine the entries of the transposed matrix and the original matrix. mul is special in that it treats missing entries (which are normally considered zero in mcl matrix operations) as one.

 
--transpose (transpose)

Write the transposed matrix to file. This is obviously not useful when a symmetric matrix has been generated.

 
-etc <fname> ('etc' label file)
-etc-ai <fname> (leaderless 'etc' label file)
-235 <fname> ('235' label file)
-235-ai <fname> (leaderless '235' label file)
-sif <fname> (SIF label file)
--expect-values (expect label:weight format)

The input is read in lines; each line is split on whitespace into labels. For -etc the first label is interpreted as the source node. All other labels are interpreted as destination nodes. Weights may optionally follow the labels, separated from them with a colon character. It is in this case necessary to use the --expect-values option. The SIF (Simple Interaction File) format expected by -sif is similar except that it contains an additional field. In this format the second column denotes the relationship type. It is ignored by mcxload. For -etc-ai (auto-increment) all labels are interpreted as destination nodes and mcxload automatically creates a source node for each line it reads. This option can be useful to read in files encoding a clustering, where each line represents a cluster of white-space separated labels.

The -235 options are similar except that the input is not interpreted as labels but must consist of numbers that explicitly specify the matrix to be built.

 
--write-binary (output binary format)

The output matrix is written in native binary format — refer to mcxio.

 
--debug (debug)

Among other things, this turns on warnings when restrict tab files are used and labels are found to be missing.

AUTHOR

Stijn van Dongen.

SEE ALSO

mcxio, mcxdump, mcl, mclfaq, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcxi.html0000644000402500021140000005146611754271045011706 00000000000000 The mcxi manual

14 May 2012    mcxi 12-135

NAME

mcx — a stack language interpreter for interaction with the mcl libraries.

SYNOPSIS

mcxi (enter interactive mode)

mcxi <mcxi expression>

DESCRIPTION

mcxi can be used both from the command line and interactively, and supports a rich set of operations such as transposition, scaling, column scaling, multiplication, Hadamard powers and products, et cetera. It has variables, control primitives, and stack manipulation primitives. The general aim is to support basic number and matrix arithmetic, as well as graph, set, and clustering operations. The language will be kept simple, and should serve only as a means of making the mcl framework a pleasant one for working with graphs, matrices, clusterings, and sets. The language is typed, and currently has the types integer, real, matrix, string, and block. Blocks are used both in control statements such as ifelse and while, and for defining compound statements resembling procedures or functions. Some of mcxi's primitives are overloaded. The following is a very simple example of implementing and using mcl in this language.

2.0 .i def # define inflation value. /small lm # load matrix in file 'small'. dim id add # add identity matrix. st .x def # make stochastic, bind to x. { xpn .i infl vm } .mcl def # define one mcl iteration. 20 .x .mcl repeat # iterate 20 times imac # interpret matrix as clustering. vm # view matrix (clustering).

Somewhat misleadingly, '#' is not recognized as a comment symbol by mcxi, so don't use it (yet).

mcxi has quite a lot of primitives, and they are not all explained in here. However, mcxi has several help facilities. mcxi's munge modes (command line, interactive, and file) are discussed first, followed by some syntactic and semantic rules. Several groups of related primitives are then discussed. These are the help primitives help, grep, ops, and others, the binding primitives def, free, and unlink, the control primitives ifelse, do, repeat, and while, and the stack manipulation primitives pop, exch, dup, mdup, copy, roll, clear. And for the record, mcxi has lt, lq, eq, gq, and gt. In the grandiloquently named INDEX section, you find a list of all current mcxi primitives.

First, there is no difference as far as mcxi is concerned whether you give it a bunch of operators and operands directly from the command line, or whether you do it in interactive mode. Interactive mode is line-based; each time you type a carriage return, mcxi starts interpreting the line you typed. Newlines can be escaped by preceding them with a backslash; mcxi will delay interpretation and keep building up your expression. Command line mode is the same as entering interactive mode and entering a single line. For non-batch processing, interactive mode is the safest, because mcxi will simply refuse to carry out impossible operations, whereas in command line mode it will exit.

In interactive mode, mcxi will by default list the stack after each line you type. This is verbosity level 1. There are four verbosity levels, namely 0, 1, 2, and 3 (in increasingly verbose order). Set the level with the vb primitive. Verbosity control is still a bit crude, this is one of the areas in which mcxi will be improved.

There is another mcxi munge mode which is entered when reading files with the lf (load file) primitive. This mode is not line-based, the whole file is interpreted in one go — there is little difference with line-based mode. Beware though, it is currently not possible (nor necessary) to escape newlines in files.

Currently, mcxi parses lines of text into atoms in an extremely straightforward way: Whitespace is the only separator, and it is always a separator. This has as a consequence that the block delimiters { and } are not allowed to appear next to a non-white character. Another consequence is that strings cannot contain white spaces. Both these conditions may be relaxed in the future though.

Strings are always entered with a leading slash, and anything with a leading slash is a string, so /this is a string. Currently, the double quote has no special meaning, but it may acquire meaning in the future, especially as in /"maybe the mcxi future will be brighter".

Variables names are always entered with a leading dot, and anything with a leading dot is a variable name. Variables are implicitly typed by the object to which they are bound. There is no support for arrays (yet). If variables are used, as in .x .y add, only the names of the variables are popped, and the binding between the names and their values stays intact.

There are some operators that do in-place modification of the object that they act on, such as infl (inflation). Currently, these are all operators acting on matrices. When presented with a variable, they do change the object associated with the variable. In the built-in documentation strings (accessible with help and grep), such in-place modification is denoted with a prime as in <m> -> <m'>.

dup can be used to duplicate objects. In case of variables, this will be a copy of the variable name. If one occurrence is used to free the associated object by some operator, all other instances of the variable become stale. mcxi will notice this and you will see such elements marked as stale handles in the stack listing. copy can be used to copy the object associated with a variable.

mcxi is/interprets a stack language. In order to add 1 and 2 you need to write 1 2 add. When add is evaluated, it removes the previous two items from the stack and replaces it with their sum, in this case the integer 3. mcxi's types are denoted as <int>, <real>, <mx>, <str>, <block>, and so are objects that can be of that type. An object that is of underspecified type (such as taken by overloaded operators) is denoted <obj>. Where a variable name must occur, <var> is written. In mcxi parlance a 'variable' is the same as 'handle'. Remember that a variable named x is written .x, and that a string "foo" is entered as /foo in mcxi.

OPERATORS

help

help with no arguments prints a descriptory line for each primitive. Can only be used at bottom of stack. Alias: h.

 
/str help

help with argument /str prints a descriptive line for the primitive named str. The string must be identical to the primitive's name, or help will not show anything. Alias: h.

 
/str grep

Prints each descriptive line in which the string str occurs (literally). So /matrix grep should produce a lot of matrix related primitives (although it may miss generic primitives such as add and mul). At bottom of stack, prints all descriptive lines. Alias: g.

 
ops

Lists all primitives and aliases concisely in a paragraph.

 
list

Lists the contents of the operand stack.

 
info

Lists the top element of the operand stack.

 
<int> tell

Lists the top <int> elements of the operand stack. The trio of list, info, and tell is perhaps overdoing it slightly, but anyway there it is.

 
vars

Lists all variables currently bound.

 
<obj> <var> def

Bind <obj> to <var>. Redefinition is allowed.

 
<var> free

Break the binding between <var> and the object it currently binds, and remove object.

 
unlink

Break the binding between <var> and the object it currently binds, and push object on the stack.

 
<int> <block1> <block2> ifelse

If <int> is nonzero execute <block1>, otherwise execute <block2>. The equate operators lt, lq, eq, gq, and gt can be used to leave an <int> on the stack.

 
<block> do

Execute <block> (one time).

 
<int> <block> repeat

Execute <block> <int> times.

 
<block1> <block2> while

This primitive repeatedly executes the condition <block1>, which must push an integer each time it is executed. Each time, the pushed integer is popped. If it was non-zero, <block2> is executed, <block1> is executed, and the cycle continues. If it was zero, while is done.

 
pop

Pops one element off of the stack.

 
exch

Exchanges the top two elements of the stack.

 
dup

Duplicates the top element and pushes the duplicate onto the stack. In case of a variable, the name is duplicated and not the object it points to. In case of anonymous matrices and strings (and whatever other (composite) objects may emerge), a deep copy is made that is completely independent of the original object.

 
<int> mdup

Duplicates the top <int> elements. See the dup entry above for the semantics of duplication. I wrote mdup because I thought some other operator needed it, which turned out to be false. In the meantime, I became very much attached to mdup, so mail me if you think you have any useful use for it.

 
copy

Copies the top element and pushes the copy onto the stack. In case of a variable, copies the object associated with the variable rather than the variable's name (as dup would do).

 
<int1> <int2> roll

Shift <int1> objects cyclically <int2> times to the right if <int2> is positive, to the left otherwise.

 
clear

Empty the stack. All objects bound to variables are unaffected.

INDEX

This is a list of all mcxi's primitives, including aliases. Do 'mcxi /<op> help' to see a short descriptive string, where <op> is one of the primitives below (remember, strings need a leading slash).

add addto cdim ch clear copy def dgt dim div do dup eq exch free gq grep gt hdm hdp help id ifelse imac infl info jj lf list lm lq lt max mdup min mod mul ops pop pow quit rdim repeat roll st tell tp tut unlink vars vb vm while wm xpn bye=quit d=def f=free h=help i=info l=list p=pop g=grep u=unlink x=exch.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation

and the utilities in the mcl family. mcl-12-135/doc/clminfo.html0000644000402500021140000003014511754271041012360 00000000000000 The clm info manual

14 May 2012    clm info 12-135

NAME

clm info — compute performance measures for graphs and clusterings.

clminfo is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode info. The options -h, --apropos, --version, -set, --nop are accessible in all clm modes. They are described in the clm manual page.

SYNOPSIS

clm info [options] <graph file> <cluster file> <cluster file>*

clm info [-o fname (write to file fname)] [-pi f (apply inflation beforehand)] [-tf spec (apply tf-spec to input matrix)] [-cl-tree fname (expect file with nested clusterings)] [-cl-ceil <num> (skip clusters of size exceeding <num>)] [-cat-max num (do at most num tree levels)] [--node-self-measures (dump measure for native cluster)] [--node-all-measures (dump measure for incident cluster)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)] <matrix file> <cluster file> <cluster file>*

DESCRIPTION

clm info computes several numbers indicative for the efficiency with with a clustering captures the edge mass of a given graph. Use it in conjunction with clm dist to determine which clusterings you accept. See the EXAMPLES section in clm dist for an example of clm dist and clm info (and clm meet) usage. Output can be generated for multiple clusterings at the same time.

The efficiency factor is described in [1] (see the REFERENCES section). It tries to balance the dual aims of capturing a lot of edges or edge weights and keeping the cluster footprint or area fraction small. The efficiency number has several appealing mathematical properties, cf. [1]. It is related to, but not derivable from, the second and third numbers, the mass fraction and the area fraction.

The mass fraction is defined as follows. Let e be an edge of the graph. The clustering captures e if the two nodes associated with e are in the same cluster. Now the mass fraction is the joint weight of all captured edges divided by the joint weight of all edges in the input graph.

The area fraction is roughly the sum of the squares of all cluster sizes for all clusters in the clustering, divided by the square of the number of nodes in the graph. It says roughly, because the actual formula uses the quantity N*(N-1) wherever it says square (of N) above. A low/high area fraction indicates a fine-grained/coarse clustering.

OPTIONS

-o fname (output file name)
 
-pi f (apply inflation beforehand)

Apply inflation to the graph matrix and compute the performance measures for the result.

 
-tf <tf-spec> (transform input matrix values)

shared_defopt{-tf}

 
-cl-tree fname (expect file with nested clusterings (cone format))
-cl-ceil <num> (skip (nested) clusters of size exceeding <num>)

The specified file should contain a hierarchy of nested clusterings such as generated by mclcm. The output is then in a special format, undocumented but easy to understand. Its purpose is to help cherrypick a single clustering from a tree, in conjunction with the slightly experimental and undocumented program mlmfifofum.

The measure that is used is very slow to compute for large clusters, and generally it will be outside any interesting range (i.e. it will be small). Use -cl-ceil to skip clusters exceeding the specified size — clm info will directly proceed to subclusters if they exist.

 
-cat-max num (do at most num levels)

This only has effect when used with -cl-tree. clm info will start at the most fine-grained level, working upwards.

 
--node-all-measures (dump node-wise criteria for all incident clusters)
--node-self-measures (dump node-wise criteria for native cluster)

These options return a key-value based format, with the meaning of the keys as follows.

nm file name (redundant unless multiple cluster files are provided) ni node index ci cluster index nn number of neighbours of this node (constant for a give node) nc cluster size (constant for a given cluster) ef efficiency for this node/cluster combination em max-efficiency for this node/cluster combination mf mass fraction: percentage of edge weights for this node in this cluster ma total mass of edge weights for this node in this cluster xn number of neighbours of the node that are not in the cluster xc number of nodes in the cluster that are not a neighbour of the node ns number of neighbours of the node that are also in this cluster ti the maximum of the edge weights for neighbours of this node that are in this cluster to the maximum of the edge weights for neighbours of this node that are NOT in this cluster al (alien) 1 if the node is not native to the cluster, 0 if the node is native

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

REFERENCES

[1] Stijn van Dongen. Performance criteria for graph clustering and Markov cluster experiments. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.
http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z

mcl-12-135/doc/mcxio.ps0000644000402500021140000017300411754271045011534 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:17 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 8 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 158.725<6d6378696f2835292046494c45>20 48 R <464f524d41>2.5 E 161.225<5453206d6378696f283529>-1.11 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d6378696f20ad207468 6520666f726d61742073706563698c636174696f6e7320666f7220696e70757420616e64 206f757470757420696e20746865206d636c2066>100 96 Q<616d696c792e>-.1 E F1 <4445534352495054494f4e>20 112.8 Q F0 .722 <546865207072696d617279206f626a6563747320696e20746865204d434c206e657477> 100 124.8 R .722<6f726b20616e616c79736973207375697465206172652067726170 687320616e6420636c7573746572696e67732e204772617068732063616e>-.1 F .192 <626520646972656374656420616e64206d6179206861>100 136.8 R .492 -.15 <7665206c>-.2 H .192<6f6f70732e20426f74682067726170687320616e6420636c75 73746572696e67732061726520726570726573656e74656420696e20612067656e657261 6c20756e698c6564>.15 F 1.018 <666f726d61742e205468697320666f726d61742073706563698c6573207477>100 148.8 R 3.518<6f64>-.1 G 1.018<6f6d61696e73202861>-3.518 F/F2 10 /Times-Italic@0 SF<736f7572>3.518 E 1.018<636520646f6d61696e>-.37 F F0 1.017<616e642061>3.518 F F2 1.017<64657374696e6174696f6e20646f6d61696e> 3.517 F F0 1.017<292c20616c6f6e67>B .697<77697468206c69737473206f662061 726373206c696e6b696e67207061697273206f6620656c656d656e74732066726f6d2074 6865207477>100 160.8 R 3.197<6f64>-.1 G 3.197<6f6d61696e732e2046>-3.197 F .697<6f722067726170687320746865207477>-.15 F 3.197<6f64>-.1 G <6f6d61696e73>-3.197 E .035<6172652073696d706c7920626f746820657175616c20 746f20746865206772617068206e6f646520646f6d61696e2c207768657265617320666f 7220636c7573746572696e6773206f6e6520646f6d61696e206973207468652067726170 68>100 172.8 R .637<6e6f646520646f6d61696e20616e6420746865206f7468657220 636f72726573706f6e647320746f2074686520656e756d65726174696f6e206f6620636c 7573746572732e20556e646972656374656420677261706873206172652061>100 184.8 R .504<7370656369616c20696e7374616e6365206f6620612064697265637465642067 726170682c20776865726520616e20656467652066726f6d2074686520756e6469726563 74656420677261706820697320726570726573656e746564206279>100 196.8 R<7477> 100 208.8 Q 2.5<6f61>-.1 G<726373206f66206964656e746963616c207765696768 742c206f6e6520666f72206561636820706f737369626c6520646972656374696f6e2e> -2.5 E .658<5468652067656e6572616c20756e698c656420666f726d617420616c6c75 64656420746f2061626f>100 232.8 R .959 -.15<76652069>-.15 H 3.159<7369> .15 G 3.159<6e66>-3.159 G .659<61637420612073696d706c652072656374616e67 756c617220737061727365206d61747269782072657072652d>-3.259 F 2.798 <73656e746174696f6e2e20537061727365>100 244.8 R .298<6d65616e7320746861 74207a65726f20656e747269657320696e20746865206d617472697820617265206e6f74 2073746f7265642e>2.798 F 2.798<417a>5.298 G .298 <65726f20656e74727920636f72726573706f6e6473>-2.798 F .9<746f20616e206f72 6465726564206e6f6465207061697220696e2074686520677261706820666f7220776869 6368206e6f206172632065>100 256.8 R .901<78697374732066726f6d20746865208c 72737420746f20746865207365636f6e64206e6f64652e>-.15 F<416e20756e64697265 6374656420677261706820636f72726573706f6e6473207769746820612073796d6d6574 726963206d61747269782e>100 268.8 Q 1.056<546865204d434c2073756974652075 736573206120736c696768742067656e6572616c69736174696f6e206f6620746865206d 617472697820636f6e636570742c20696e20746861742074686520726f>100 292.8 R 3.556<7761>-.25 G 1.056<6e6420636f6c756d6e>-3.556 F .01<696e646963657320 28746861742069732c20646f6d61696e73292063616e2062652061726269747261727920 6c69737473206f66206e6f6e6e65>100 304.8 R -.05<6761>-.15 G<7469>.05 E .31 -.15<76652069>-.25 H<6e7465>.15 E .01<676572732e20557375616c6c79>-.15 F 2.51<2c62>-.65 G .01<7574206e6f74206e65636573736172>-2.71 F<2d>-.2 E <696c79>100 316.8 Q 2.543<2c6164>-.65 G .043<6f6d61696e206f662073697a65> -2.543 F/F3 10/Courier@0 SF<4e>2.5 E F0 .043<77696c6c207573652074686520 636f6d6d6f6e20726570726573656e746174696f6e206f6620746865206c697374206f66 20696e7465>2.543 F .043<67657273207374617274696e67206174>-.15 F F3<30> 2.5 E F0<616e64>2.542 E .559<656e64696e67206174>100 328.8 R F3<4e2d31> 5.559 E F0 5.559<2e54>C<6865>-5.559 E F2<736f7572>3.059 E .559 <636520646f6d61696e>-.37 F F0 .559<697320616c>3.059 F -.1<7761>-.1 G .56 <7973206173736f63696174656420776974682074686520636f6c756d6e73206f662061 206d61747269782c20616e6420746865>.1 F F2 1.4 <64657374696e6174696f6e20646f6d61696e>100 340.8 R F0 1.4<697320616c>3.9 F -.1<7761>-.1 G 1.4<7973206173736f63696174656420776974682074686520726f> .1 F 1.4<7773206f662061206d61747269782e20546865206d617472697820666f726d 61742c20696e74726f2d>-.25 F .092<64756365642062656c6f>100 352.8 R 1.392 -.65<772c208c>-.25 H .093<7273742073706563698c657320746865207477>.65 F 2.593<6f64>-.1 G .093<6f6d61696e732e204974207468656e20726570726573656e74 7320746865206e6f6e7a65726f206d617472697820656e74726965732028636f7272652d> -2.593 F .178<73706f6e64696e67207769746820677261706820617263207765696768 74732920696e206120636f6c756d6e2d776973652066>100 364.8 R .178 <617368696f6e2c2061732061206c697374206f66206c697374732e2046>-.1 F .177 <6f722065616368206e6f64652066726f6d>-.15 F .518<74686520736f757263652064 6f6d61696e2c2069742070726573656e747320746865206c697374206f6620616c6c2069 7473206e65696768626f75727320696e207468652064657374696e6174696f6e20646f6d 61696e20616c6f6e672077697468>100 376.8 R <74686520636f72726573706f6e64696e6720776569676874732e>100 388.8 Q <5468697320646f63756d656e7420646573637269626573>5 E F2 <6e6174697665206d617472697820666f726d6174>100 412.8 Q F0 1.089<54686520 666f726d617420746861742063616e206265207265616420696e20627920616e>120 424.8 R 3.589<796d>-.15 G 1.089<636c206170706c69636174696f6e2065>-3.589 F 1.088<7870656374696e672061206d6174726978206172>-.15 F 1.088 <67756d656e742e20546865>-.18 F<6e617469>120 436.8 Q 1.768 -.15<76652066> -.25 H 1.468<6f726d617420636c6f73656c7920726573656d626c657320746865206c 61796f7574206f66206d61747269636573206173207265736964696e6720696e20636f6d 7075746572206d656d6f72792e>.15 F .064<546865726520617265207477>120 448.8 R 2.564<6f64>-.1 G .064 <697374696e637420656e636f64696e67732c207265737065637469>-2.564 F -.15 <7665>-.25 G<6c79>.15 E F2<696e746572>2.564 E -.15<6368>-.37 G<616e67> .15 E<65>-.1 E F0<616e64>2.564 E F2<62696e617279>2.563 E F0 5.063<2e54>C .063<686569722072656c617469>-5.063 F .363 -.15<7665206d>-.25 H <6572697473>.15 E<6172652064657363726962656420667572746865722062656c6f> 120 460.8 Q<772e>-.25 E F2 <636f6e636174656e61746564206e6174697665206d617472697820666f726d6174>100 484.8 Q F0 .356<5468697320616c>120 496.8 R -.1<7761>-.1 G .356 <7973207065727461696e7320746f206d6174726963657320696e206e617469>.1 F .656 -.15<76652066>-.25 H .356<6f726d617420636f6e636174656e617465642069 6e20612073696e676c65208c6c652c207265666572656420746f206173>.15 F<61>120 508.8 Q F2 .532<636174208c6c65>3.032 F F0 3.032<2e49>C 3.032<7469>-3.032 G 3.032<7375>-3.032 G .531<73656420666f722065>-3.032 F .531<78616d706c65 20746f20656e636f64652068696572617263686963616c20636c7573746572696e677320 61732067656e657261746564206279>-.15 F/F4 10/Times-Bold@0 SF<6d636c636d> 3.031 E F0<2e>A 2.5<4163>120 520.8 S<6174208c6c652065697468657220636f6e 7369737473206f66206d6174726963657320696e20696e7465726368616e676520666f72 6d6174206f72206f66206d6174726963657320696e2062696e61727920666f726d61742e> -2.5 E F2 -.15<7261>100 544.8 S 2.5<7769>.15 G <6e7465726d65646961746520666f726d6174>-2.5 E F0 <546869732069732072656164206279>120 556.8 Q F4 <6d6378617373656d626c65283129>2.5 E F0<2e>A F2<74616220666f726d6174>100 580.8 Q F0 2.071 <55736564206279206170706c69636174696f6e732073756368206173>120 592.8 R F4 <6d636c283129>4.571 E F0<616e64>4.571 E F4<6d637864756d70283129>4.571 E F0 2.071<746f20636f6e>4.571 F -.15<7665>-.4 G 2.071 <7274206265747765656e206d65616e696e6766756c>.15 F<6c6162656c732064657363 726962696e672074686520696e707574206461746120616e6420746865206e756d657269 63616c206964656e74698c657273207573656420696e7465726e616c6c792e>120 604.8 Q F2<6c6162656c20666f726d6174>100 628.8 Q F0<54686520666f726d6174207573 6564207768656e2073747265616d696e67206c6162656c73206469726563746c7920696e 746f>120 640.8 Q F4<6d636c283129>2.5 E F0<6f72>2.5 E F4 <6d63786c6f6164283129>2.5 E F0<2e>A F2<7472>100 664.8 Q <616e73666f726d6174696f6e2073796e746178>-.15 E F0 .34 <5468652073796e746178206163636570746564206279>120 676.8 R F4 <6d636c283129>2.84 E F0<2c>A F4<6d6378616c746572283129>2.84 E F0 .34 <616e64206d616e>2.84 F 2.84<796f>-.15 G .34 <746865722070726f6772616d7320746f207472616e73666f726d20677261706873> -2.84 F<616e64206d617472696365732e>120 688.8 Q .837<54686520696e74657263 68616e676520666f726d6174206973206120706f727461626c6520666f726d6174207468 61742063616e206265207472616e736d6974746564206163726f737320636f6d70757465 727320616e64206f>100 712.8 R -.15<7665>-.15 G<72>.15 E<6e657477>100 724.8 Q .344<6f726b7320616e642077696c6c2077>-.1 F .343 <6f726b207769746820616e>-.1 F 2.843<7976>-.15 G .343<657273696f6e206f66 206d636c206f7220697473207369626c696e672070726f6772616d732e20497420697320 646f63756d656e74656420286865726529>-2.993 F<6d6378696f2031322d313335>20 768 Q<3134204d61792032303132>151.505 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 158.725<6d6378696f2835292046494c45>20 48 R <464f524d41>2.5 E 161.225<5453206d6378696f283529>-1.11 F .613 <616e642076>100 84 R .613<65727920737461626c652e>-.15 F .614<4170706c69 636174696f6e732063616e20656173696c7920637265617465206d617472696365732069 6e207468697320666f726d61742e>5.613 F .614<54686520647261>5.614 F .614 <776261636b206f6620696e746572>-.15 F<2d>-.2 E .174 <6368616e676520666f726d6174206973207468617420666f722076>100 96 R .174 <657279206c6172>-.15 F .174 <676520677261706873206d617472697820656e636f64696e67732067726f>-.18 F 2.674<7776>-.25 G .174<6572792062696720616e642061726520736c6f>-2.824 F 2.674<7774>-.25 G 2.674<6f72>-2.674 G<6561642e>-2.674 E .513 <5468652062696e61727920666f726d6174206973>100 120 R/F1 10/Times-Italic@0 SF<6e6f74>3.013 E F0 -.05<6761>3.013 G .513<72616e747565656420746f206265 20706f727461626c65206163726f7373206d616368696e6573206f7220646966>.05 F .514<666572656e742076>-.25 F .514<657273696f6e73206f66206d636c>-.15 F .974<6f7220646966>100 132 R .974<666572656e746c7920636f6d70696c65642076> -.25 F .973 <657273696f6e73206f66206d636c2e204974732064697374696e637420616476>-.15 F .973<616e74616765206973207468617420666f722076>-.25 F .973 <657279206c6172>-.15 F .973<67652067726170687320746865>-.18 F <737065656420616476>100 144 Q<616e74616765206f>-.25 E -.15<7665>-.15 G 2.5<7269>.15 G <6e7465726368616e676520666f726d6174206973206472616d617469632e>-2.5 E <436f6e>100 168 Q -.15<7665>-.4 G 2.12 <7273696f6e206265747765656e20746865207477>.15 F 4.621<6f66>-.1 G 2.121 <6f726d61747320697320656173696c79206163686965>-4.621 F -.15<7665>-.25 G 4.621<6477>.15 G<697468>-4.621 E/F2 10/Times-Bold@0 SF<6d6378636f6e> 4.621 E -.1<7665>-.4 G<7274>.1 E F0 4.621<2e42>C<6f7468>-4.621 E F2 <6d636c283129>4.621 E F0<616e64>4.621 E F2<6d63786c6f6164283129>100 180 Q F0<63616e207361>2.5 E .3 -.15<76652061206d>-.2 H<617472697820696e2065 697468657220666f726d617420616674657220636f6e737472756374696e672069742066 726f6d206c6162656c20696e7075742e>.15 E .047<54686520636f6e636174656e6174 656420666f726d61742069732067656e65726174656420652e672e206279>100 204 R F2<6d636c636d283129>2.547 E F0 .047 <616e642063616e206265207472616e73666f726d6564206279>2.547 F F2 <6d637864756d70283129>2.546 E F0 .57<7573696e6720746865>100 216 R F2 <2d696d782d636174>3.07 E F0 .57<6f7074696f6e2e20496e2063617420666f726d61 74206d61747269636573206172652073696d706c7920636f6e636174656e617465642c20 736f20697420697320656173696c792067656e6572>3.07 F<2d>-.2 E .98<61746564 2066726f6d2074686520636f6d6d616e64206c696e65206966206e65656465642e>100 228 R -.15<466f>5.979 G 3.479<726e>.15 G<617469>-3.479 E 1.279 -.15 <76652062>-.25 H .979 <696e61727920666f726d617420697420697320696d706572617469>.15 F 1.279 -.15 <76652074>-.25 H .979<686174206e6f20616464692d>.15 F .321<74696f6e616c20 62797465732061726520696e73657274656420696e6265747765656e20746865206d6174 72697820656e636f64696e67732e2046>100 240 R .321<6f72206e617469>-.15 F .621 -.15<76652069>-.25 H .321 <6e7465726368616e676520666f726d617420746865206f6e6c79>.15 F<726571756972 656d656e74206973207468617420746865206c617374206d617472697820697320666f6c 6c6f>100 252 Q<776564206279206e6f7468696e672062>-.25 E <75742077686974652073706163652e>-.2 E 2.57<4172>100 276 S .07 <656d61726b206f6e2074686520736c6f7070>-2.57 F 2.57<796e>-.1 G .07 <616d696e6720636f6e>-2.57 F -.15<7665>-.4 G .07 <6e74696f6e73207573656420666f72>.15 F F2<6d636c>2.569 E F0 .069<616e6420 697473207369626c696e67207574696c6974696573206d617920626520696e206f726465 72>2.569 F .58<686572652e20546865207072658c78>100 288 R F2<6d6378>3.08 E F0 .581<6973207573656420666f722067656e65726963206d61747269782066756e6374 696f6e616c697479>3.08 F 3.081<2c74>-.65 G .581<6865207072658c78>-3.081 F F2<636c6d>3.081 E F0 .581<6973207573656420666f722067656e65726963>3.081 F .974<636c75737465722066756e6374696f6e616c69792e20546865>100 300 R F1 <7574696c697479>3.474 E F2<6d6378>3.474 E F0 .973<697320612067656e657261 6c20707572706f736520696e74657270726574657220666f72206d616e6970756c617469 6e67206d61747269636573>3.473 F .63<28616e64206772616870732c20736574732c 20616e6420636c7573746572696e6773292e2054686520736574206f6620616c6c>100 312 R F2<6d636c>3.131 E F0 .631<7369626c696e6773202863662e>3.131 F F2 <6d636c66616d696c79283729>3.131 E F0 3.131<2969>C 3.131<736c>-3.131 G .631<6f6f73656c79207265662d>-3.131 F .803 <6572656420746f20617320746865206d636c2066>100 324 R<616d696c79>-.1 E 3.303<2c77>-.65 G .803<68696368206d616b>-3.303 F .803<657320757365206f66 20746865206d636c206c69627261726965732028726174686572207468616e2074686520 6d6378206c6962726172696573292e>-.1 F .039 <5468652066756c6c2074727574682069732065>100 336 R -.15<7665>-.25 G 2.539 <6e6d>.15 G .039<6f726520686f727269626c652c20617320746865206d636c2f6d63 78207072658c7820636f6e>-2.539 F -.15<7665>-.4 G .04 <6e74696f6e73207573656420696e20746865204320736f7572636520636f6465>.15 F <666f6c6c6f>100 348 Q 2.5<7773>-.25 G <74696c6c206f746865722072756c65732e>-2.5 E .601 <496e207468697320646f63756d656e742c20274d434c27206d65616e732027>100 372 R .601<746865206d636c2073657474696e6727206f722027>-.18 F .601 <746865206d636c2066>-.18 F .6 <616d696c79272e20416e204d434c2070726f6772616d206973206f6e65>-.1 F .671 <6f66207468652070726f6772616d7320696e20746865206d636c2066>100 384 R .671 <616d696c792e205468652072656d61696e646572206f66207468697320646f63756d65 6e7420636f6e7461696e732074686520666f6c6c6f>-.1 F .672 <77696e67207365632d>-.25 F<74696f6e732e>100 396 Q/F3 10.95/Times-Bold@0 SF<496e746572>20 412.8 Q<6e616c2072>-.164 E<657072>-.197 E <6573656e746174696f6e206f66206d6174726963657320696e204d434c>-.197 E F0 1.865<546865726520617265207365>100 424.8 R -.15<7665>-.25 G 1.865 <72616c206173706563747320746f207468652077>.15 F 1.864<617920696e20776869 6368204d434c20726570726573656e7473206d617472696365732e>-.1 F <496e7465726e616c6c79>6.864 E 4.364<2c69>-.65 G<6e6469636573>-4.364 E <6e65>100 436.8 Q -.15<7665>-.25 G 4.051<7261>.15 G 1.552 <637420617320616e206f6673657420696e20616e206172726179>-4.051 F 4.052 <2c61>-.65 G 1.552<6e64206e65697468657220646f20746865>-4.052 F 4.052 <7970>-.15 G 1.552<6172746963697061746520696e206f6673657420636f6d707574 6174696f6e732e2054686973>-4.052 F .156<6d65616e73207468617420746865>100 448.8 R 2.656<7970>-.15 G .156<7572656c7920616374206173206964656e74698c 6572732e2054686520757073686f742069732074686174206d617472696365732063616e 2062652068616e646c656420696e20776869636820746865>-2.656 F<696e6465>100 460.8 Q 3.435<7864>-.15 G .935<6f6d61696e7320617265>-3.435 F F1 <6e6f6e2d73657175656e7469616c>3.435 E F0 .935<286d6f72652062656c6f>3.435 F .935<77292e2054687573206f6e652063616e2077>-.25 F .936 <6f726b207769746820646966>-.1 F .936<666572656e742067726170687320616e64> -.25 F .387<6d6174726963657320616c6c207573696e672073756273657473206f6620 7468652073616d6520736574206f6620696e64696365732f6964656e74698c6572732e20 54686973206169647320696e20636f6d62696e696e6720646174612073657473>100 472.8 R 1.657<696e20646966>100 484.8 R 1.657<666572656e742077>-.25 F 1.657<61797320616e6420656173696c7920636f6d706172696e67207468652072657370 65637469>-.1 F 1.957 -.15<76652072>-.25 H 1.658 <6573756c7473207768656e2065>.15 F 1.658 <78706572696d656e74696e672e205365636f6e646c79>-.15 F<2c>-.65 E<6f6e6c79> 100 496.8 Q F1<6e6f6e7a6572>3.184 E 3.183<6f76>-.45 G<616c756573>-3.183 E F0 .683<28616e6420746865697220636f72726573706f6e64696e6720696e64696365 7329206172652073746f7265642e2054686972646c79>3.183 F 3.183<2c4d>-.65 G .683<434c2073746f7265732061206d6174726978>-3.183 F .767<61732061206c6973 74696e67206f6620636f6c756d6e732e20497465726174696e67206f>100 508.8 R -.15<7665>-.15 G 3.267<726163>.15 G .767<6f6c756d6e20697320747269>-3.267 F .767<7669616c3b20697465726174696e67206f>-.25 F -.15<7665>-.15 G 3.267 <726172>.15 G 1.267 -.25<6f772072>-3.267 H .767 <65717569726573206120636f73746c79>.25 F .004 <7472616e73706f736974696f6e20636f6d7075746174696f6e2e>100 520.8 R .004 <546865206c617374207477>5.004 F 2.504<6f70>-.1 G .003<6f696e74732073686f 756c64206d6174746572206c6974746c6520746f207468652075736572206f66204d434c 2070726f6772616d732e>-2.504 F .872<496e207465>100 544.8 R .872 <7874626f6f6b2065>-.15 F .873 <78706f736974696f6e7320616e6420696e206d616e>-.15 F 3.373<796d>-.15 G .873<6174726978206d616e6970756c6174696f6e20696d706c656d656e746174696f6e 732c206d61747269636573206172652072657072652d>-3.373 F 1.173 <73656e74656420776974682073657175656e7469616c6c7920696e6465>100 556.8 R -.15<7865>-.15 G 3.673<6472>.15 G -.25<6f77>-3.673 G 3.673<7361>.25 G 1.173<6e6420636f6c756d6e732c20776974682074686520696e64696365732075737561 6c6c79207374617274696e6720617420656974686572>-3.673 F .119<7a65726f206f 72206f6e652e20496e20746865204d434c2073657474696e672c20746865207265717569 72656d656e74206f662073657175656e7469616c6974792069732064726f707065642c20 616e6420697420666f6c6c6f>100 568.8 R .12<7773206e6174752d>-.25 F 1.015< 72616c6c792074686174206e6f20726571756972656d656e7420697320706f736564206f 6e20746865208c72737420696e6465>100 580.8 R 1.015<782e20546865206f6e6c79 20726571756972656d656e74204d434c20706f736573206f6e20746865>-.15 F .151 <696e6469636573206973207468617420746865>100 592.8 R 2.651<7962>-.15 G 2.652<656e>-2.651 G<6f6e6e65>-2.652 E -.05<6761>-.15 G<7469>.05 E -.15 <7665>-.25 G 2.652<2c61>.15 G .152 <6e642063616e20626520726570726573656e7465642062792074686520696e7465> -2.652 F .152<67657220747970652075736564206279204d434c2e204f6e>-.15 F <6d616e>100 604.8 Q 2.5<796d>-.15 G<616368696e65732c20746865206c6172> -2.5 E<6765737420616c6c6f>-.18 E -.1<7761>-.25 G<626c6520696e7465>.1 E <6765722077696c6c20626520323134373438333634372e>-.15 E 2.747 <4d434c206173736f636961746573207477>100 628.8 R 5.247<6f64>-.1 G 2.747 <6f6d61696e7320776974682061206d6174726978>-5.247 F/F4 10/Courier@0 SF <4d>2.5 E F0 5.247<2c74>C 2.747<686520726f>-5.247 F 5.247<7764>-.25 G 2.747<6f6d61696e20616e6420636f6c756d6e20646f6d61696e2e20546865>-5.247 F <6d6174726978>100 640.8 Q F4<4d>2.5 E F0 1.068<63616e206f6e6c79206861> 3.568 F 1.368 -.15<76652065>-.2 H<6e7472696573>.15 E F4<4d5b692c6a5d>2.5 E F0<7768657265>3.568 E F4<69>2.5 E F0 1.069<697320696e2074686520726f> 3.569 F 3.569<7764>-.25 G 1.069<6f6d61696e20616e64>-3.569 F F4<6a>2.5 E F0 1.069<697320696e2074686520636f6c756d6e>3.569 F .092<646f6d61696e2e20 5468697320697320766974616c207768656e2073706563696679696e672061206d617472 69783a20697420697320696c6c65>100 652.8 R -.05<6761>-.15 G 2.592<6c74>.05 G 2.592<6f73>-2.592 G .092<70656369667920616e20656e747279>-2.592 F F4 <4d5b692c6a5d>2.5 E F0<76696f6c6174696e67>2.592 E .081 <7468697320636f6e646974696f6e2e20486f>100 664.8 R<7765>-.25 E -.15<7665> -.25 G .881 -.4<722c2069>.15 H 2.581<7469>.4 G 2.581<736e>-2.581 G .081 <6f74206e656365737361727920746f2073706563696679>-2.581 F F1<616c6c>2.582 E F0<656e7472696573>2.582 E F4<4d5b692c6a5d>2.5 E F0 .082 <666f7220616c6c20706f737369626c6520636f6d62692d>2.582 F 1.329 <6e6174696f6e73206f66>100 676.8 R F4<69>2.5 E F0<616e64>3.829 E F4<6a> 2.5 E F0 3.829<2e4f>C 1.329<6e65206e65656473206f6e6c79207370656369667920 74686f736520656e747269657320666f72207768696368207468652076>-3.829 F 1.328<616c7565206973206e6f6e7a65726f2c20616e64>-.25 F 1.266 <6f6e6c79206e6f6e7a65726f2076>100 688.8 R 1.266<616c7565732077696c6c2062 652073746f72656420696e7465726e616c6c792e20496e20746865204d434c206d617472 697820666f726d61742c20746865206d617472697820646f6d61696e73>-.25 F <6d7573742062652073706563698c65642065>100 700.8 Q <78706c696369746c7920696620746865>-.15 E 2.5<7961>-.15 G <7265206e6f742063616e6f6e6963616c20286d6f72652062656c6f>-2.5 E<77292e> -.25 E F2 1.901<5374726963746c7920617320616e206173696465>100 724.8 R F0 4.401<2c74>C 1.901<686520646f6d61696e73207072696d6172696c792065>-4.401 F 1.901<7869737420746f20656e73757265206461746120696e7465>-.15 F 1.9 <67726974792e205768656e20636f6d62696e696e67>-.15 F <6d6378696f2031322d313335>20 768 Q<3134204d61792032303132>151.505 E<32> 202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 158.725<6d6378696f2835292046494c45>20 48 R <464f524d41>2.5 E 161.225<5453206d6378696f283529>-1.11 F .252<6d61747269 6365732077697468206164646974696f6e206f72206d756c7469706c69636174696f6e20 28652e672e>100 84 R .252<7573696e6720746865>5.252 F/F1 10/Times-Bold@0 SF<6d6378>2.752 E F0 .253 <7574696c697479292c204d434c2077696c6c2068617070696c7920636f6d62696e65> 2.752 F .246<6d6174726963657320666f722077686963682074686520646f6d61696e 7320646f206e6f74206d617463682c20616c74686f7567682069742077696c6c20757375 616c6c7920697373756520612077>100 96 R 2.746 <61726e696e672e20436f6e6365702d>-.1 F<7475616c6c79>100 108 Q 2.7<2c6d> -.65 G .2<61747269636573206175746f2d65>-2.7 F .201<7870616e6420746f2074 68652064696d656e73696f6e7320726571756972656420666f7220746865206f70657261 74696f6e2e20416c7465726e617469>-.15 F -.15<7665>-.25 G<6c79>.15 E 2.701 <2c616d>-.65 G<6174726978>-2.701 E .924<63616e20626520766965>100 120 R .923<77656420617320616e20696e8c6e697465207175616472616e742c207769746820 74686520646f6d61696e732064656c696d6974696e672074686520706172747320696e20 7768696368206e6f6e7a65726f>-.25 F .111<656e7472696573206d61792065>100 132 R 2.611<786973742e20496e>-.15 F .112<746865206675747572652c2066> 2.611 F .112<6163696c697469657320636f756c6420626520616464656420746f204d 434c2028632e712e>-.1 F F1<6d6378>2.612 E F0 2.612<2974>C 2.612<6f61> -2.612 G<6c6c6f>-2.612 E 2.612<7766>-.25 G .112<6f7220706c6163696e67> -2.612 F 1.364<73747269637420646f6d61696e20726571756972656d656e7473206f 6e206d61747269636573207768656e207375626d697474656420746f2062696e61727920 6f7065726174696f6e732073756368206173206164646974696f6e>100 144 R <616e64206d756c7469706c69636174696f6e2e>100 156 Q/F2 10.95/Times-Bold@0 SF<53706563696679696e67206d61747269636573>20 172.8 Q F0 .319<46726f6d20 68657265206f6e2c20616c6c2073746174656d656e74732061626f7574206d6174726963 657320616e642067726170687320617265207265616c6c792073746174656d656e747320 61626f7574206d6174726963657320616e64>100 184.8 R<677261706873>100 196.8 Q/F3 10/Times-Italic@0 SF .093<696e20746865204d434c2073657474696e67> 2.593 F F0 2.593<2e54>C<6865>-2.593 E F3<73706563698c636174696f6e>2.593 E F0 .092<6f662061206d617472697820717569746520636c6f73656c79206d61746368 65732074686520696e7465726e616c2072657072652d>2.593 F <73656e746174696f6e2e>100 208.8 Q 3.671<416d>100 232.8 S 1.171 <6174726978204d20686173207477>-3.671 F 3.671<6f64>-.1 G 1.171<6f6d61696e 733a2074686520636f6c756d6e20646f6d61696e20616e642074686520726f>-3.671 F 3.671<7764>-.25 G 1.172<6f6d61696e2e20426f74682073696d706c792074616b> -3.671 F 3.672<6574>-.1 G<6865>-3.672 E .001<666f726d206f66206120736574 2028726570726573656e74656420617320616e206f726465726564206c69737429206f66 20696e64696365732e2041>100 244.8 R F3 .001 <63616e6f6e6963616c20646f6d61696e>2.501 F F0 .001 <6973206120646f6d61696e206f6620736f6d65>2.501 F<73697a65>100 256.8 Q/F4 10/Courier@0 SF<4b>3.037 E F0 .537<77686572652074686520696e646963657320 6172652073696d706c7920746865208c727374>3.037 F F4<4b>3.037 E F0 <6e6f6e6e65>3.037 E -.05<6761>-.15 G<7469>.05 E .837 -.15<76652069>-.25 H<6e7465>.15 E<67657273>-.15 E F4<302c312e2e2c4b2d31>3.037 E F0 3.038 <2e54>C .538<686520646f6d61696e73>-3.038 F .943<646963746174652077686963 68206e6f6e7a65726f20656e74726965732061726520616c6c6f>100 268.8 R .943<77 656420746f206f6363757220696e2061206d61747269783b206f6e6c7920656e74726965 73204d5b692c6a5d2061726520616c6c6f>-.25 F<776564>-.25 E <7768657265206920697320696e2074686520726f>100 280.8 Q 2.5<7764>-.25 G<6f 6d61696e20616e64206a20697320696e2074686520636f6c756d6e20646f6d61696e2e> -2.5 E<546865206d6174726978204d2069732073706563698c656420696e2074687265 652070617274732c20666f7220776869636820746865207365636f6e64206973206f7074 696f6e616c2e>100 304.8 Q<546865207061727473206172653a>5 E <4865616465722073706563698c636174696f6e>100 328.8 Q .091<54686973207370 6563698c6573207468652064696d656e73696f6e73204b20616e64204c206f6620746865 206d61747269782c207768657265204b206973207468652073697a65206f662074686520 726f>120 340.8 R 2.591<7764>-.25 G<6f6d61696e2c>-2.591 E<616e64204c2069 73207468652073697a65206f662074686520636f6c756d6e20646f6d61696e2e>120 352.8 Q<4974206c6f6f6b7320617320666f6c6c6f>5 E<77733a>-.25 E F4 <286d636c686561646572>120 376.8 Q<6d636c74797065206d6174726978>120 388.8 Q<64696d656e73696f6e732039783134>120 400.8 Q<29>120 412.8 Q F0 .345<5468 697320646963746174657320746861742061206d61747269782077696c6c206265207370 6563698c656420666f722077686963682074686520726f>120 436.8 R 2.844<7764> -.25 G .344<6f6d61696e206861732064696d656e73696f6e203920616e64>-2.844 F <74686520636f6c756d6e20646f6d61696e206861732064696d656e73696f6e2031342e> 120 448.8 Q<446f6d61696e2073706563698c636174696f6e>100 472.8 Q 1.262 <54686520646f6d61696e2073706563698c636174696f6e2063616e206861>120 484.8 R 1.562 -.15<76652076>-.2 H 1.262<6172696f757320666f726d733a206966206e6f 7468696e672069732073706563698c65642c20746865206d61747269782077696c6c>-.1 F<6861>120 496.8 Q 3.448 -.15<76652063>-.2 H 3.148<616e6f6e6963616c2064 6f6d61696e7320616e6420612063616e6f6e6963616c20726570726573656e746174696f 6e2c2073696d696c617220746f2074686520726570726573656e746174696f6e>.15 F .237<656e636f756e746572656420696e207465>120 508.8 R .237 <7874626f6f6b732e20416c7465726e617469>-.15 F -.15<7665>-.25 G<6c79>.15 E 2.737<2c74>-.65 G .237<686520726f>-2.737 F 2.737<7761>-.25 G .238<6e6420 636f6c756d6e20646f6d61696e732063616e20656163682062652073706563698c6564> -2.737 F<73657061726174656c79>120 520.8 Q 3.566<2c61>-.65 G 1.066<6e6420 697420697320616c736f20706f737369626c6520746f2073706563696679206f6e6c7920 6f6e65206f66207468656d3b20746865206f746865722077696c6c2073696d706c792062 652061>-3.566 F 1.64<63616e6f6e6963616c20646f6d61696e206167>120 532.8 R 1.64<61696e2e2046696e616c6c79>-.05 F 4.141<2c69>-.65 G 4.141<7469>-4.141 G 4.141<7370>-4.141 G 1.641 <6f737369626c6520746f206465636c61726520746865207477>-4.141 F 4.141<6f64> -.1 G 1.641<6f6d61696e73206964656e746963616c20616e64>-4.141 F .105<7370 6563696679207468656d2073696d756c74616e656f75736c792e20497420697320706572 666563746c79206c65>120 544.8 R -.05<6761>-.15 G 2.605<6c69>.05 G 2.605 <6e65>-2.605 G .105<616368206361736520746f2065>-2.605 F .105 <78706c696369746c79207370656369667920612063616e6f6e692d>-.15 F .55 <63616c20646f6d61696e2e204974206973>120 556.8 R F3 -.37<7265>3.05 G <71756972>.37 E<6564>-.37 E F0 .551<696e20656163682063617365207468617420 746865206e756d626572206f6620696e6469636573206c697374656420696e206120646f 6d61696e20636f7272652d>3.05 F <73706f6e64732077697468207468652064696d656e73696f6e206769>120 568.8 Q -.15<7665>-.25 G 2.5<6e69>.15 G 2.5<6e74>-2.5 G<6865206865616465722e> -2.5 E<416e2065>120 592.8 Q <78616d706c6520776865726520626f7468206120726f>-.15 E 2.5<7764>-.25 G<6f 6d61696e20616e64206120636f6c756d6e20646f6d61696e206172652073706563698c65 643a>-2.5 E F4<286d636c726f7773>120 616.8 Q<3130302032303020333030203430 3020353030203630302037303020383030203930302024>126 628.8 Q<29>120 640.8 Q<286d636c636f6c73>120 652.8 Q<3330203332203334203336203338203430203432 2034342034362034382035302035322035362035382024>126 664.8 Q<29>120 676.8 Q F0 1.07<546869732065>120 700.8 R 1.07 <78616d706c6520636f6d62696e657320776974682074686520686561646572206769> -.15 F -.15<7665>-.25 G 3.57<6e61>.15 G<626f>-3.57 E -.15<7665>-.15 G 3.57<2c61>.15 G 3.57<7374>-3.57 G 1.07 <68652064696d656e73696f6e73208c742e>-3.57 F 1.07<4861642074686520726f> 6.07 F<77>-.25 E .559<646f6d61696e2073706563698c636174696f6e206265656e20 6f6d69747465642c2074686520726f>120 712.8 R 3.059<7764>-.25 G .559 <6f6d61696e2077>-3.059 F .559<6f756c64206175746f6d61746963616c6c79206265 2073657420746f2074686520696e74652d>-.1 F<67657273>120 724.8 Q F4 <302c312c2e2e38>2.784 E F0 2.783<2e48>C .283<61642074686520636f6c756d6e 2073706563698c636174696f6e206265656e206f6d69747465642c2069742077>-2.783 F .283<6f756c642062652073657420746f>-.1 F F4<302c312c2e2e3133>2.783 E F0 <2e>A<6d6378696f2031322d313335>20 768 Q<3134204d61792032303132>151.505 E <33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 158.725<6d6378696f2835292046494c45>20 48 R <464f524d41>2.5 E 161.225<5453206d6378696f283529>-1.11 F 1.06 <537570706f7365206e6f>120 84 R 3.56<7774>-.25 G 1.061<686174207468652068 6561646572206469642073706563696679207468652064696d656e73696f6e7320313078 31302e>-3.56 F 1.061<42656361757365207468652064696d656e73696f6e73>6.061 F .004<617265206964656e746963616c2c207468697320726169736573207468652070 6f73736962696c69747920746861742074686520646f6d61696e73206265206964656e74 6963616c2e>120 96 R 2.503<4176>5.003 G .003<616c69642077>-2.753 F .003 <617920746f2073706563696679>-.1 F<74686520726f>120 108 Q 2.5<7764>-.25 G <6f6d61696e20616e6420636f6c756d6e20646f6d61696e20696e206f6e6520676f2069 7320746869732e>-2.5 E/F1 10/Courier@0 SF<286d636c646f6d73>120 132 Q <3131203232203333203434203535203636203737203838203939203130302024>126 144 Q<29>120 156 Q F0<4d61747269782073706563698c636174696f6e>100 192 Q< 546865206d61747269782073706563698c636174696f6e20737461727473207769746820 7468652073657175656e6365>120 204 Q F1<286d636c6d6174726978>120 228 Q <626567696e>120 240 Q F0 .185<54686520276265>120 264 R .185 <67696e27206b>-.15 F -.15<6579>-.1 G -.1<776f>.15 G .185<726420696e2074 68652027286d636c6d617472697827207061727420697320666f6c6c6f>.1 F .186<77 65642062792061206c697374206f66206c697374696e67732c2077686572652074686520 7072692d>-.25 F 1.5<6d617279206c6973742072616e676573206f>120 276 R -.15 <7665>-.15 G 4<7261>.15 G 1.5 <6c6c20636f6c756d6e20696e646963657320696e204d2028692e652e>-4 F 1.5 <696e646963657320696e2074686520636f6c756d6e20646f6d61696e292c20616e64> 6.5 F .224<77686572652065616368207365636f6e64617279206c6973747320656e63 6f64657320616c6c20706f73697469>120 288 R .525 -.15<76652065>-.25 H .225< 6e747269657320696e2074686520636f72726573706f6e64696e6720636f6c756d6e2e20 41207365632d>.15 F 1.05<6f6e64617279206c69737420286f72206d61747269782063 6f6c756d6e292073746172747320776974682074686520696e6465>120 300 R 3.55 <78636f>-.15 G 3.55<6674>-3.55 G 1.05 <686520636f6c756d6e2c20616e64207468656e20636f6e7461696e732061>-3.55 F .062<6c697374696e67206f6620616c6c20726f>120 312 R 2.562<7765>-.25 G .062 <6e747269657320696e20632028746865736520617265206d617472697820656e747269 6573204d5b72>-2.562 F .063<2c635d20666f722076>-.4 F .063 <617279696e672072292e2054686520656e747279204d5b72>-.25 F<2c635d>-.4 E 1.567<69732073706563698c6564206569746865722061732027>120 324 R 1.567 <7227206f722061732027>-.5 F 1.567<723a66272c2077686572652066206973206120 8d6f61742e20496e20746865208c72737420636173652c2074686520656e747279204d5b 72>-.5 F<2c635d>-.4 E<646566>120 336 Q 1.028<61756c747320746f20312e302c 20696e20746865207365636f6e6420636173652c2069742069732073657420746f20662e 20546865207365636f6e64617279206c69737420697320636c6f73656420776974682074 686520602427>-.1 F<6368617261637465722e20412066756c6c208d65646765642065> 120 348 Q<78616d706c65732074687573206c6f6f6b7320617320666f6c6c6f>-.15 E <77733a>-.25 E F1<286d636c686561646572>120 372 Q <6d636c74797065206d6174726978>120 384 Q<64696d656e73696f6e732031327833> 120 396 Q<29>120 408 Q<286d636c726f7773>120 420 Q<3131203232203333203434 203535203636203737203838203939203132332034353620323134373438333634372024> 126 432 Q<29>120 444 Q<286d636c636f6c73>120 456 Q 12<303132>132 468 S <24>-6 E<29>120 480 Q<286d636c6d6174726978>120 492 Q<626567696e>120 504 Q 24<3034>120 516 S 6<3438>-24 G 6<3839>-6 G 6<3934>-6 G <353620323134373438333634372024>-6 E 24<3131>120 528 S 6<3136>-24 G 6 <3637>-6 G 6<3731>-6 G<32332024>-6 E 24<3232>120 540 S 6<3233>-24 G 6 <3335>-6 G 6<3524>-6 G<29>120 552 Q F0 .539<4e6f746520746861742074686520 636f6c756d6e20646f6d61696e2069732063616e6f6e6963616c3b206974732073706563 698c6174696f6e20636f756c64206861>120 576 R .838 -.15<76652062>-.2 H .538 <65656e206f6d69747465642e20496e2074686973>.15 F -.15<6578>120 588 S <616d706c652c206e6f2076>.15 E <616c75657320776572652073706563698c65642e205365652062656c6f>-.25 E 2.5 <7766>-.25 G<6f72206d6f72652e>-2.5 E/F2 10.95/Times-Bold@0 SF <53706563696679696e6720677261706873>20 604.8 Q F0 3.543<4167>100 616.8 S 1.043<726170682069732073696d706c792061206d617472697820776865726520746865 20726f>-3.543 F 3.544<7764>-.25 G 1.044<6f6d61696e206973207468652073616d 652061732074686520636f6c756d6e20646f6d61696e2e20477261706873>-3.544 F <73686f756c64206861>100 628.8 Q .3 -.15<76652070>-.2 H<6f73697469>.15 E .3 -.15<76652065>-.25 H<6e7472696573206f6e6c792e204578616d706c653a>.15 E F1<286d636c686561646572>100 652.8 Q<6d636c74797065206d6174726978>100 664.8 Q<64696d656e73696f6e73203132783132>100 676.8 Q<29>100 688.8 Q <286d636c646f6d73>100 700.8 Q<313120323220333320343420353520363620373720 3838203939203132332034353620323134373438333634372024>100 712.8 Q<29>100 724.8 Q F0<6d6378696f2031322d313335>20 768 Q<3134204d61792032303132> 151.505 E<34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 158.725<6d6378696f2835292046494c45>20 48 R <464f524d41>2.5 E 161.225<5453206d6378696f283529>-1.11 F/F1 10/Courier@0 SF<286d636c6d6174726978>100 84 Q<626567696e>100 96 Q 18<31312032323a32> 100 108 R 6<36363a332e342037373a33203132333a38>12 F<24>6 E 18 <32322031313a32>100 120 R 6<33333a332e382035353a382e31>12 F<24>6 E 18 <33332032323a332e38>100 132 R 6<34343a372035353a362e32>12 F<24>6 E 18 <34342033333a37>100 144 R 6<38383a352e372039393a372e30>12 F <3435363a332024>6 E 18<35352032323a382e31>100 156 R 6 <33333a362e322037373a322e392038383a332e30>12 F<24>6 E 18 <36362031313a332e34>100 168 R<3132333a352e312024>12 E 18<37372031313a33> 100 180 R 6<35353a322e39203132333a312e35>12 F<24>6 E 18 <38382034343a352e37>100 192 R 6<35353a332e302039393a332e30>12 F <3435363a342e322024>6 E 18<39392034343a372e30>100 204 R <38383a332e30203435363a312e3820323134373438333634373a332e392024>12 E 12 <3132332031313a38>100 216 R 6<36363a352e312037373a312e35>12 F<24>6 E 12 <3435362034343a33>100 228 R 6<38383a342e322039393a312e38>12 F <323134373438333634373a362e332024>6 E 12 <323134373438333634372039393a332e39>100 240 R<3435363a362e332024>6 E<29> 100 252 Q F0<496e636964656e74616c6c79>100 276 Q 2.713<2c63>-.65 G .212< 6c7573746572696e6720746869732067726170682077697468206d636c2c207573696e67 20646566>-2.713 F .212<61756c7420706172616d65746572732c207969656c647320 6120636c75737465722074686174206973207265702d>-.1 F <726573656e746564206279207468652031327833206d61747269782073686f>100 288 Q<776e206561726c6965722e>-.25 E .125<54686520666f6c6c6f>100 312 R .125 <77696e672065>-.25 F .125<78616d706c652073686f>-.15 F .125 <7773207468652073616d652067726170682c206e6f>-.25 F 2.625<7772>-.25 G .125<6570726573656e746564206f6e20612063616e6f6e6963616c20646f6d61696e2c 20616e642077697468>-2.625 F<616c6c2076>100 324 Q <616c75657320696d706c696369746c792073657420746f20312e303a>-.25 E F1 <286d636c686561646572>100 348 Q<6d636c74797065206d6174726978>100 360 Q <64696d656e73696f6e73203132783132>100 372 Q<29>100 384 Q <286d636c6d6174726978>100 396 Q<626567696e>100 408 Q 24<3031>100 420 S 12<353639>-12 G<24>-6 E 24<3130>100 432 S 12<3234>-12 G<24>-6 E 24<3231> 100 444 S 12<3334>-12 G<24>-6 E 24<3332>100 456 S 12<3738>-12 G <31302024>-6 E 24<3431>100 468 S 12<323637>-12 G<24>-6 E 24<3530>100 480 S 6<3924>-12 G 24<3630>100 492 S 12<3439>-12 G<24>-6 E 24<3733>100 504 S 12<3438>-12 G<31302024>-6 E 24<3833>100 516 S 6<3731>-12 G 6<3031>-6 G 6 <3124>-6 G 24<3930>100 528 S 12<3536>-12 G<24>-6 E 12<31302033>100 540 R 12<3738>12 G<31312024>-6 E 12<31312038>100 552 R<31302024>6 E<29>100 564 Q/F2 10/Times-Bold@0 SF<4164646974696f6e616c206e6f746573>100 588 Q F0 .214<546865726520617265206665>100 600 R 2.714<7772>-.25 G .214<65737472 696374696f6e73206f6e2074686520666f726d61742074686174206f6e65206d69676874 2061637475616c6c792065>-2.714 F 2.714<78706563742e2056>-.15 F .214 <6563746f727320616e6420656e7472696573206d6179>-1.11 F .033 <6f6363757220696e20616e>100 612 R 2.533<796f>-.15 G .033 <7264657220616e64206e656564206e6f7420626520736f727465642e>-2.533 F .033 <526570656174656420656e747269657320616e642072657065617465642076>5.033 F .033<6563746f72732061726520616c6c6f>-.15 F .034<7765642062>-.25 F<7574> -.2 E<61726520616c>100 624 Q -.1<7761>-.1 G<7973206469736361726465642077 68696c6520616e206572726f72206d65737361676520697320656d69747465642e>.1 E 2.481<496620796f752077>100 648 R<616e74>-.1 E/F3 10/Times-Italic@0 SF 2.481<66756e6374696f6e616c6c7920696e746572>4.981 F 2.481 <657374696e67206265686176696f7572>-.37 F F0 2.481 <696e20636f6d62696e696e672072657065617465642076>4.981 F 2.481 <6563746f727320616e64207265706561746564>-.15 F<656e74726965732c206861> 100 660 Q .3 -.15<76652061206c>-.2 H<6f6f6b20617420746865206e65>.15 E <78742073656374696f6e20616e64206174>-.15 E F2 <6d6378617373656d626c65283129>2.5 E F0<2e>A -.4<5769>100 684 S <7468696e207468652076>.4 E <6563746f72206c697374696e672c2074686520272327206973206120746f6b>-.15 E< 656e207468617420696e74726f6475636573206120636f6d6d656e7420756e74696c2074 686520656e64206f66206c696e652e>-.1 E/F4 10.95/Times-Bold@0 SF <5261772066>20 700.8 Q<6f726d6174>-.274 E F0 3.463<418c>100 712.8 S .963 <6c6520696e>-3.463 F F3 -.15<7261>3.463 G 3.463<7766>.15 G<6f726d6174> -3.463 E F0 .963<69732073696d706c792061206c697374696e67206f662076>3.463 F .963<6563746f727320776974686f757420616e>-.15 F 3.463<7973>-.15 G .964 <656374696f6e696e67207374727563747572652e204e6f20686561646572>-3.463 F 1.751<73706563698c636174696f6e2c206e6f20646f6d61696e2073706563698c636174 696f6e2c20616e64206e6f206d617472697820696e74726f64756374696f6e2073796e74 61782069732075736564202d20746865736520617265>100 724.8 R <6d6378696f2031322d313335>20 768 Q<3134204d61792032303132>151.505 E<35> 202.335 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 158.725<6d6378696f2835292046494c45>20 48 R <464f524d41>2.5 E 161.225<5453206d6378696f283529>-1.11 F .414<737570706c 69656420746f207468652070726f63657373696e67206170706c69636174696f6e206279 206f74686572206d65616e732e2054686520656e642d6f662d76>100 84 R .414 <6563746f7220746f6b>-.15 F .415 <656e20272427206d757374207374696c6c206265>-.1 F .17 <757365642c20616e642074686520636f6d6d656e7420746f6b>100 96 R .17 <656e20272327206973207374696c6c2076>-.1 F<616c69642e>-.25 E/F1 10 /Times-Bold@0 SF<6d6378617373656d626c65283129>2.67 E F0 .17 <696d706f7274732061208c6c6520696e207261>2.67 F 2.67<7766>-.15 G .17 <6f726d61742c206372652d>-2.67 F .005<617465732061206e617469>100 108 R .305 -.15<7665206d>-.25 H .005<61747269782066726f6d20746865206461746120 7468657265696e2c20616e642077726974657320746865206d617472697820746f202861 20646966>.15 F .005<666572656e7429208c6c652e20497420616c6c6f>-.25 F .005 <7773206375732d>-.25 F .753<746f6d697a61626c652062656861>100 120 R .753 <76696f757220696e20686f>-.2 F 3.253<7774>-.25 G 3.252<6f63>-3.253 G .752 <6f6d62696e6520726570656174656420656e747269657320616e642072657065617465 642076>-3.252 F .752<6563746f72732e2054686973206973207479706963616c6c79> -.15 F .2<7573656420696e2074686520666f6c6c6f>100 132 R .2<77696e67207072 6f6365647572652e20412920446f2061206f6e652d706173732d7061727365206f6e2073 6f6d652065>-.25 F .2 <787465726e616c20636f6f6363757272656e6365208c6c652f666f72>-.15 F<2d>-.2 E .298<6d61742c2067656e6572617465207261>100 144 R 2.798<7764>-.15 G .298 <61746120647572696e672074686520706172736520616e642077726974652069742074 6f208c6c652028776974686f7574206e656564696e6720746f2062>-2.798 F .297 <75696c64206120687567652064617461>-.2 F .336<73747275637475726520696e20 6d656d6f7279292e204229206d6378617373656d626c652074616b>100 156 R .336 <657320746865207261>-.1 F 2.836<7764>-.15 G .337<61746120616e6420617373 656d626c6573206974206163636f7264696e6720746f20696e73747275632d>-2.836 F <74696f6e20696e746f2061206e617469>100 168 Q .3 -.15<7665206d>-.25 H <636c206d61747269782e>.15 E/F2 10.95/Times-Bold@0 SF -1.007<5461>20 184.8 S 2.738<6266>1.007 G<6f726d6174202f206c6162656c20696e66>-3.012 E <6f726d6174696f6e>-.274 E F0<5365>100 196.8 Q -.15<7665>-.25 G 2.443<72 616c206d636c2070726f6772616d7320616363657074206f7074696f6e73207375636820 6173>.15 F F1<2d746162>4.942 E F0<2c>A F1<2d74616263>4.942 E F0<2c>A F1 <2d74616272>4.942 E F0<2c>A F1<2d7573652d746162>4.942 E F0<2c>A F1 <2d7374726963742d746162>4.942 E F0 4.942<2c61>C<6e64>-4.942 E F1 <2d657874656e642d746162>100 208.8 Q F0 5.775<2e54>C .775<6865206172> -5.775 F .775 <67756d656e7420746f207468657365206f7074696f6e7320697320696e>-.18 F -.25 <7661>-.4 G .775 <726961626c7920746865206e616d65206f66206120736f2d63616c6c6564>.25 F/F3 10/Times-Italic@0 SF .776<746162208c6c65>3.276 F F0 5.776<2e54>C<6162> -6.576 E .066<8c6c657320617265207573656420746f20636f6e>100 220.8 R -.15 <7665>-.4 G .066<7274206265747765656e206c6162656c7320286465736372696269 6e6720656e74697469657320696e2074686520646174612920616e6420696e6469636573 206173207573656420696e20746865>.15 F .504 <6d636c206d617472697820666f726d61742e>100 232.8 R .504<496e206120746162 208c6c652065616368206c696e65207374617274732077697468206120756e6971756520 6e756d6265722077686963682070726573756d61626c7920636f7272652d>5.504 F .231<73706f6e647320746f20616e20696e6465>100 244.8 R 2.731<7875>-.15 G .231<73656420696e2061206d6174726978208c6c652e>-2.731 F .23<546865207265 7374206f6620746865206c696e6520636f6e7461696e73206120646573637269707469> 5.231 F .53 -.15<76652073>-.25 H .23<7472696e67206173736f63692d>.15 F 1.197<61746564207769746820746865206e756d6265722e204974206973207265717569 7265642074686174206561636820737472696e6720697320756e697175652c20616c7468 6f756768206e6f7420616c6c206d636c2070726f6772616d73>100 256.8 R 1.24<656e 666f7263652074686973206174207468652074696d65206f662077726974696e672e>100 268.8 R 1.239 <54686520737472696e67206d617920636f6e7461696e207370616365732e>6.239 F 1.239<4c696e6573207374617274696e672077697468>6.239 F/F4 10/Courier@0 SF <23>3.739 E F0<617265>3.739 E <636f6e7369646572656420636f6d6d656e7420616e6420617265206469737265>100 280.8 Q -.05<6761>-.15 G<726465642e>.05 E F1 -.92<5461>100 304.8 S 2.5 <6264>.92 G<6f6d61696e>-2.5 E F0<546865206f72646572656420736574206f6620 696e646963657320666f756e6420696e2074686520746162208c6c652069732063616c6c 656420746865>100 316.8 Q F3<74616220646f6d61696e>2.5 E F0<2e>A -.8<5461> 100 340.8 S 2.914<628c>.8 G .414<6c65732061726520616c6d6f737420616c> -2.914 F -.1<7761>-.1 G .414<797320656d706c6f>.1 F .414<79656420696e2063 6f6e6a756e6374696f6e207769746820616e206d636c206d6174726978208c6c652e>-.1 F F1<6d637864756d70283129>5.415 E F0<616e64>2.915 E F1<636c6d66>100 352.8 Q<6f726d6174283129>-.25 E F0 1.054<7265717569726520627920646566> 3.554 F 1.054<61756c742074686174207468652074616220646f6d61696e20636f696e 6369646573207769746820746865206d617472697820646f6d61696e2028656974686572> -.1 F<726f>100 364.8 Q 2.993<776f>-.25 G 2.993<7263>-2.993 G .494 <6f6c756d6e206f7220626f74682920746f20776869636820746865>-2.993 F 2.994 <7977>-.15 G .494 <696c6c206265206170706c6965642e20546869732063616e2062652072656c6178> -2.994 F .494<656420666f722065697468657220627920737570706c792d>-.15 F <696e6720746865>100 376.8 Q F1<2d2d6c617a792d746162>2.5 E F0 <6f7074696f6e2e>2.5 E 2.523<6d636c2070726f>100 400.8 R 2.523 <76696465732065>-.15 F 2.522<78706c69636974206d6f64657320666f7220646561 6c696e672077697468207461622073747275637475726573206279206d65616e73206f66 20746865>-.15 F F1<2d657874656e642d746162>5.022 E F0<2c>A F1<2d72>100 412.8 Q<657374726963742d746162>-.18 E F0<616e64>2.5 E F1 <2d7374726963742d746162>2.5 E F0 <6f7074696f6e732e20526566657220746f20746865>2.5 E F1<6d636c283129>2.5 E F0<646f63756d656e746174696f6e2e>2.5 E F2<4c6162656c20696e707574>20 429.6 Q F0 .936<4c6162656c20696e7075742069732061206c696e6520626173656420696e70 7574207768657265207477>100 441.6 R 3.436<6f6e>-.1 G .937 <6f64657320616e6420616e206f7074696f6e616c2076>-3.436 F .937 <616c7565206172652073706563698c6564206f6e2065616368>-.25 F .756<6c696e65 2e20546865206e6f6465732073686f756c642062652073706563698c6564206279206c61 62656c732e20496620746865206c6162656c7320636f6e7461696e207370616365732074 6865>100 453.6 R 3.256<7973>-.15 G .756<686f756c6420626520736570612d> -3.256 F 1.265<726174656420627920746162732028616e64207468652076>100 465.6 R 1.266<616c75652069662070726573656e742073686f756c6420626520736570 6172617465642066726f6d20746865207365636f6e64206c6162656c2062792061207461 62206173>-.25 F .264<77656c6c292e2054686520706172736520636f64652077696c 6c20617373756d65207461622d736570617261746564206c6162656c7320696620697420 736565732061207461622063686172616374657220696e2074686520696e7075742c206f 74682d>100 477.6 R .243<6572776973652069742077696c6c2073706c697420746865 20696e707574206f6e20616e>100 489.6 R 2.744<796b>-.15 G .244 <696e64206f6620776869746573706163652e>-2.744 F<416e>5.244 E 2.744<796c> -.15 G .244 <696e6520776865726520746865208c727374206e6f6e2d77686974657370616365> -2.744 F<63686172616374657220697320746865206f63746f74686f72702028232920 69732069676e6f7265642e2054686520666f6c6c6f>100 501.6 Q <77696e6720697320616e2065>-.25 E <78616d706c65206f66206c6162656c20696e7075742e>-.15 E F4<2d2d2d383c2d2d2d 2d2d2d383c2d2d2d2d2d2d383c2d2d2d2d2d2d383c2d2d2d2d2d2d383c2d2d2d>100 525.6 Q 6<2374>100 537.6 S <68652063617420616e642074686520686174206578616d706c65>-6 E <63617420686174>100 549.6 Q<302e32>12 E<68617420626174>100 561.6 Q <302e3136>12 E<62617420636174>100 573.6 Q<312e30>12 E<62617420626974>100 585.6 Q<302e313235>12 E<62697420666974>100 597.6 Q<302e3235>12 E <66697420686974>100 609.6 Q<302e35>12 E<68697420626974>100 621.6 Q <302e3136>12 E<2d2d2d3e382d2d2d2d2d2d3e382d2d2d2d2d2d3e382d2d2d2d2d2d3e 382d2d2d2d2d2d3e382d2d2d>100 633.6 Q F1<6d636c283129>100 657.6 Q F0 .67< 63616e207265616420696e206c6162656c20696e70757420616e6420636c757374657220 6974207768656e206974206973206769>3.17 F -.15<7665>-.25 G 3.17<6e74>.15 G <6865>-3.17 E F1<2d2d616263>3.17 E F0 .67 <6f7074696f6e2e2049742063616e206f7074696f6e616c6c79>3.17 F<7361>100 669.6 Q .797 -.15<76652074>-.2 H .497 <686520696e70757420677261706820696e206e617469>.15 F .797 -.15<76652066> -.25 H .497<6f726d617420616e64207361>.15 F .797 -.15<76652074>-.2 H .497 <6865206c6162656c20696e666f726d6174696f6e20696e206120746162208c6c652077 69746820746865>.15 F F1<2d7361>2.998 E -.1<7665>-.25 G<2d>.1 E <6772617068>100 681.6 Q F0<616e64>2.5 E F1<2d7361>2.5 E -.1<7665>-.25 G <2d746162>.1 E F0<6f7074696f6e732e>2.5 E .727<526566657220746f20746865> 100 705.6 R F1 .726<4d434c2067657474696e672073746172746564>3.226 F F0 <616e64>3.226 E F1 .726<4d434c206d616e75616c206578616d706c6573>3.226 F F0 .726<73656374696f6e7320666f72206d6f726520696e666f726d6174696f6e>3.226 F<6f6e20686f>100 717.6 Q 2.5<774d>-.25 G <434c206465616c732077697468206c6162656c20696e7075742e>-2.5 E <6d6378696f2031322d313335>20 768 Q<3134204d61792032303132>151.505 E<36> 202.335 E 0 Cg EP %%Page: 7 7 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 158.725<6d6378696f2835292046494c45>20 48 R <464f524d41>2.5 E 161.225<5453206d6378696f283529>-1.11 F/F1 10 /Times-Bold@0 SF<6d63786c6f6164283129>100 84 Q F0 .687<697320612067656e 6572616c20707572706f73652070726f6772616d20666f722072656164696e6720696e20 6c6162656c206461746120616e64206f746865722073747265616d20666f726d6174732e 204974>3.187 F .86<656e636f646573207468656d20696e206e617469>100 96 R 1.16 -.15<7665206d>-.25 H .859 <636c20666f726d617420616e6420746162208c6c65732e>.15 F .859 <497420616c6c6f>5.859 F .859<777320696e7465726d656469617465207472616e73 666f726d6174696f6e73206f6e20746865>-.25 F -.25<7661>100 108 S <6c7565732e>.25 E/F2 10.95/Times-Bold@0 SF -.81<5472>20 124.8 S <616e7366>.81 E<6f726d6174696f6e2073796e746178>-.274 E F1<6d636c283129> 100 136.8 Q F0<2c>A F1<6d63786c6f6164283129>3.449 E F0<2c>A F1 <6d637873756273283129>3.449 E F0<2c>A F1<6d6378617373656d626c65283129> 3.449 E F0<616e64>3.449 E F1<6d6378616c746572283129>3.449 E F0 .949 <616c6c20616363657074207468652073616d65207472616e732d>3.449 F<666f726d61 74696f6e206c616e677561676520696e207468656972207265737065637469>100 148.8 Q -.15<7665>-.25 G F1<7466>2.65 E F0 <2d74797065206f7074696f6e7320616e64206d637873756227>A<73>-.55 E F1 -.1 <7661>2.5 G<6c>.1 E F0<73706563698c636174696f6e2e>2.5 E 3.63<4173>100 172.8 S 1.13<746174656d656e7420696e2074686973206c616e677561676520697320 73696d706c79206120636f6d6d612d736570617261746564206c697374206f662066756e 6374696f6e7320616363657074696e6720612073696e676c65>-3.63 F 1.461 <6e756d65726963616c2076>100 184.8 R 3.961<616c75652e20546865>-.25 F 1.461<73796e746178206f6620612066756e6374696f6e20696e>3.961 F -.2<766f> -.4 G 1.462<636174696f6e20696e2067656e6572616c206973>.2 F F1<66756e63> 3.962 E F0<28>A/F3 10/Times-Italic@0 SF<6172>A<67>-.37 E F0 3.962 <292e20546865>B<66756e6374696f6e73>3.962 E F1<657870>100 196.8 Q F0<2c>A F1<6c6f67>2.567 E F0<2c>A F1<6e65676c6f67>2.567 E F0 .067 <63616e20616c736f206265206769>2.567 F -.15<7665>-.25 G 2.567<6e61>.15 G 2.567<6e65>-2.567 G .067<6d70747920706172616d65746572206c6973742c20696e 6469636174696e672074686174>-2.567 F F3<65>2.566 E F0 .066<69732074616b> 2.566 F .066<656e206173207468652065>-.1 F<78706f2d>-.15 E .517 <6e656e7420626173652e20496e207468697320636173652c2074686520696e>100 208.8 R -.2<766f>-.4 G .517<636174696f6e206c6f6f6b73206c696b>.2 F<65>-.1 E F1<66756e63>3.018 E F0 3.018<28292e2046756e6374696f6e73>B .518 <77697468206e616d657320746861742073746172742077697468>3.018 F/F4 10 /Courier@0 SF<23>3.018 E F0 .448<6f706572617465206f6e206772617068732069 6e20746865697220656e7469726574792e2046>100 220.8 R .447<6f722065>-.15 F <78616d706c652c>-.15 E F4<236b6e6e28353029>2.947 E F0 .447 <696e6469636174657320746865206b2d4e656172657374204e65696768626f7572> 2.947 F 1.982<7472616e73666f726d6174696f6e20666f72>100 232.8 R F4 <6b3d3530>4.482 E F0 6.982<2e41>C 1.983<6c6c206f74686572206e616d65732065 6e636f64652066756e6374696f6e732074686174206f706572617465206469726563746c 79206f6e2065646765732e>-6.982 F .151<46756e6374696f6e732077697468206e61 6d657320746861742073746172742077697468>100 244.8 R F4<23617263>2.651 E F0 .15<6f706572617465206f6e2064697265637465642067726170687320616e642079 69656c64206469726563746564206772617068732e>2.651 F .805 <4d6f7374206f6620746865206f74686572>100 256.8 R F4<23>3.305 E F0 .805 <66756e6374696f6e73206569746865722065>3.305 F .806 <787065637420616e20756e6469726563746564206772617068202873756368206173> -.15 F F4<236b6e6e2829>3.306 E F0 3.306<296f>C 3.306<7279>-3.306 G .806 <69656c6420616e>-3.306 F <756e6469726563746564206772617068202873756368206173>100 268.8 Q F4 <236164642829>2.5 E F0<616e64>2.5 E F4<236d61782829>2.5 E F0 5<2e54>C <686520666f6c6c6f>-5 E<77696e672061726520737570706f727465642e>-.25 E 81.94<6c742046696c746572>100 292.8 R<6f75742076>2.5 E <616c7565732067726561746572207468616e206f7220657175616c20746f206172>-.25 E<672e>-.18 E 79.72<6c712046696c746572>100 304.8 R<6f75742076>2.5 E <616c7565732067726561746572207468616e206172>-.25 E<672e>-.18 E 77.5 <67712046696c746572>100 316.8 R<6f75742076>2.5 E <616c756573206c657373207468616e206172>-.25 E<672e>-.18 E 79.72 <67742046696c746572>100 328.8 R<6f75742076>2.5 E <616c756573206c657373207468616e206f7220657175616c20746f206172>-.25 E <672e>-.18 E 73.06<6365696c20536574>100 340.8 R -2.15 -.25<65762065>2.5 H<72797468696e6720686967686572207468616e206172>.25 E 2.5<6774>-.18 G 2.5 <6f61>-2.5 G -.18<7267>-2.5 G<2e>.18 E 68.61<8d6f6f7220536574>100 352.8 R -2.15 -.25<65762065>2.5 H<72797468696e67206c6f>.25 E <776572207468616e206172>-.25 E 2.5<6774>-.18 G 2.5<6f61>-2.5 G -.18 <7267>-2.5 G<2e>.18 E 71.94<6d756c204d756c7469706c79>100 364.8 R <6279206172>2.5 E<672e>-.18 E 73.06<61646420416464>100 376.8 R<6172>2.5 E 2.5<6774>-.18 G 2.5<6f69>-2.5 G<742e>-2.5 E<706f>100 388.8 Q 62.76 <776572205261697365>-.25 F<746f20706f>2.5 E<776572206172>-.25 E<672e> -.18 E -.15<6578>100 400.8 S 75.71<7052>.15 G<61697365206172>-75.71 E 2.5<6728>-.18 G F3<65>-2.5 E F0<6966206f6d69747465642920746f2076>2.5 E <616c75652e>-.25 E 74.72<6c6f672054>100 412.8 R<616b>-.8 E 2.5<656c>-.1 G<6f6720696e2062617365206172>-2.5 E 2.5<6728>-.18 G F3<65>-2.5 E F0 <6966206f6d6974746564292e>2.5 E<6e65>100 424.8 Q 60.43<676c6f672054>-.15 F<616b>-.8 E 2.5<656d>-.1 G<696e7573206c6f6720696e2062617365206172>-2.5 E 2.5<6728>-.18 G F3<65>-2.5 E F0<6966206f6d6974746564292e>2.5 E 67.5 <236b6e6e206b2d4e656172657374>100 436.8 R <4e65696768626f757220726564756374696f6e2077697468>2.5 E F4<6b3d617267> 2.5 E F0<2e>A 58.06<236365696c6e6220436170>100 448.8 R <6e65696768626f757273206174206172>2.5 E 2.5<6761>-.18 G 2.5<746d>-2.5 G <6f73742e>-2.5 E 67.5<236d636c20436c7573746572>100 460.8 R <7769746820696e8d6174696f6e3d6172>2.5 E <672c2075736520696e64756365642067726170682e>-.18 E 68.06 <2361646420436f6e>100 472.8 R -.15<7665>-.4 G<7274207477>.15 E 2.5<6f61> -.1 G<72637320746f206f6e652065646765207573696e67206164646974696f6e2e> -2.5 E 66.94<236d696e20436f6e>100 484.8 R -.15<7665>-.4 G<7274207477>.15 E 2.5<6f61>-.1 G <72637320746f206f6e652065646765207573696e67206d696e696d756d2e>-2.5 E 65.28<236d617820436f6e>100 496.8 R -.15<7665>-.4 G<7274207477>.15 E 2.5 <6f61>-.1 G <72637320746f206f6e652065646765207573696e67206d6178696d756d2e>-2.5 E 66.94<236d756c20436f6e>100 508.8 R -.15<7665>-.4 G<7274207477>.15 E 2.5 <6f61>-.1 G<72637320746f206f6e652065646765207573696e67206d756c7469706c69 636174696f6e2e>-2.5 E<237265>100 520.8 Q 72.48<7645>-.25 G <6e636f646520677261706820696e207265>-72.48 E -.15<7665>-.25 G <72736520646972656374696f6e2e>.15 E 74.72<2374702053616d65>100 532.8 R <61732061626f>2.5 E .3 -.15<76652069>-.15 H 2.5<6e6d>.15 G <617472697820737065616b2028>-2.5 E F3<74>A F0<72616e73>A F3<70>A F0 <6f7365292e>A 69.72<237475672050657274757262>100 544.8 R <65646765207765696768747320776974682066>2.5 E<6163746f72206172>-.1 E <672e>-.18 E 60.28<2373687275672052616e646f6d6c79>100 556.8 R <706572747572622065646765207765696768747320776974682066>2.5 E <6163746f72206172>-.1 E<672e>-.18 E 66.39<237374657020557365>100 568.8 R <746865206b2d737465702072656c6174696f6e2c207768657265>2.5 E F4 <6b3d617267>2.5 E F0<2e>A 57.51<2374687265616420536574>100 580.8 R <74687265616420706f6f6c2073697a6520746f206172>2.5 E<672e>-.18 E 53.07 <236172636d6178204f6e6c79>100 592.8 R -.1<6b65>2.5 G<6570206c6172>.1 E <6765737420617263206265747765656e207477>-.18 E 2.5<6f6e>-.1 G <6f6465732e>-2.5 E 56.4<23617263737562205265706c616365>100 604.8 R 2.5 <4762>2.5 G 2.5<79472d47>-2.5 G<5e542e>-2.5 E 55.29 <236172636d636c204173>100 616.8 R F4<236d636c>2.5 E F0 2.5<2c75>C<736520 73796d6d6574726973656420677261706820666f7220636c7573746572696e672e>-2.5 E F1<4e4f>100 640.8 Q<5445>-.4 E<6d636c283129>100 652.8 Q F0 <61636365707473>4.548 E F1<2d2d6162632d6e65672d6c6f67>4.548 E F0<616e64> 4.548 E F1<2d2d6162632d6e65672d6c6f673130>4.548 E F0 2.048<746f20737065 63696679206c6f67207472616e73666f726d6174696f6e732e2053696d696c61726c79> 4.548 F<2c>-.65 E F1<6d63786c6f6164283129>100 664.8 Q F0<61636365707473> 2.535 E F1<2d2d737472>2.535 E<65616d2d6c6f67>-.18 E F0<2c>A F1 <2d2d737472>2.535 E<65616d2d6e65672d6c6f67>-.18 E F0 2.535<2c61>C<6e64> -2.535 E F1<2d2d737472>2.536 E<65616d2d6e65672d6c6f673130>-.18 E F0 2.536<2e54>C .036<686520726561736f6e2069732074686174>-2.536 F 1.814<7072 6f626162696c69746965732061726520736f6d6574696d657320656e636f646564206265 6c6f>100 676.8 R 4.314<7774>-.25 G 1.814<686520707265636973696f6e206469 637461746564206279207468652049454545202833322062697429208d6f6174>-4.314 F 1.036<73706563698c636174696f6e2e205468697320706f73657320612070726f626c 656d20617320746865206d636c206170706c69636174696f6e7320656e636f64652076> 100 688.8 R 1.037<616c75657320627920646566>-.25 F 1.037 <61756c74206173208d6f6174732c>-.1 F .976<616e6420746865207472616e73666f 726d6174696f6e2073706563698c636174696f6e732061726520616c>100 700.8 R -.1 <7761>-.1 G .976<7973206170706c69656420746f20746865206d636c20656e636f64 696e672e20546865206f7074696f6e73206a757374>.1 F .071 <6d656e74696f6e656420617265206170706c69656420616674657220612076>100 712.8 R .071<616c756520686173206265656e20726561642066726f6d20616e20696e 7075742073747265616d20616e64>-.25 F F3<6265666f72>2.571 E<65>-.37 E F0 .072<697420697320636f6e>2.572 F -.15<7665>-.4 G<72746564>.15 E <746f20746865206e617469>100 724.8 Q .3 -.15<76652065>-.25 H <6e636f64696e672e>.15 E<6d6378696f2031322d313335>20 768 Q <3134204d61792032303132>151.505 E<37>202.335 E 0 Cg EP %%Page: 8 8 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 158.725<6d6378696f2835292046494c45>20 48 R <464f524d41>2.5 E 161.225<5453206d6378696f283529>-1.11 F/F1 10.95 /Times-Bold@0 SF<53454520414c534f>20 84 Q/F2 10/Times-Bold@0 SF <6d6378617373656d626c65283129>100 96 Q F0 2.821<2c61>C<6e64>-2.821 E F2 <6d636c66616d696c79283729>2.821 E F0 .321<666f7220616e206f>2.821 F -.15 <7665>-.15 G<72766965>.15 E 2.821<776f>-.25 G 2.821<6661>-2.821 G .321< 6c6c2074686520646f63756d656e746174696f6e20616e6420746865207574696c697469 657320696e>-2.821 F<746865206d636c2066>100 108 Q<616d696c792e>-.1 E F1 -.548<4155>20 124.8 S<54484f52>.548 E F0<5374696a6e2076>100 136.8 Q <616e20446f6e67656e2e>-.25 E<6d6378696f2031322d313335>20 768 Q <3134204d61792032303132>151.505 E<38>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clmmeet.html0000644000402500021140000001361011754271041012355 00000000000000 The clm meet manual

14 May 2012    clm meet 12-135

NAME

clm meet — compute the intersection of a set of clusterings.

clmmeet is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode meet. The options -h, --apropos, --version, -set, --nop are accessible in all clm modes. They are described in the clm manual page.

SYNOPSIS

clm meet [-o fname (output file name)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)] <file name>+

DESCRIPTION

clm meet computes the intersection of a set of clusterings, that is, the largest clustering that is a subclustering of all the clusterings in the set. It stores the intersection (or meet) in the argument to the -o flag, which must be the first option given. All remaining arguments are interpreted as names of files containing clusterings in mcl format (see mcxio), which must all pertain to a set of the same cardinality.

This utility can be useful in measuring (in conjunction with clm dist) the consistency of a set of clusterings at different levels of granularity — if the meet of all those clusterings is close to being a subclustering of each of them, consistency is good. See clm dist for an example.

OPTIONS

-o fname (output file name)

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/clmprotocols.html0000644000402500021140000004320611754271042013454 00000000000000 Work flows and protocols for mcl and friends

14 May 2012    clmprotocols 12-135

NAME

clmprotocols — Work flows and protocols for mcl and friends

DESCRIPTION

A guide to doing analysis with mcl and its helper programs.

Network representation

The clustering program mcl expects the name of file as its first argument. If the --abc option is used, the file is assumed to adhere to a simple format where a network is specified edge by edge, one line and one edge at a time. Each line describes an edge as two labels and a numerical value, all separated by white space. The labels and the value respectively identify the two nodes and the edge weight. The format is called ABC-format, where 'A' and 'B' represent the two labels and 'C' represents the edge weight. The latter is optional; if omitted the edge weight is set to one. If ABC-format is used, the output is returned as a listing of clusters, each cluster given as a line of white-space separated labels.

MCL can also utilize a second representation, which is a stringent and unambiguous format for both input and output. This is called matrix format and it is required when using other programs in the mcl suite, for example when comparing and analysing clusterings using clm or when extracting and transforming networks using mcx. Native mode (matrix format) is entered simply by not specifying --abc.

The recommended approach using mcl is to convert an external format to ABC-format. The program mcxload reads the latter and creates a native network file and a dictionary file that maps network nodes to labels. All applications in the MCL suite, including mcl itself, can read this native network file format. Label output can be obtained using mcxdump. The workflow is thus:

# External format has been converted to file data.abc (abc format) mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci mcl data.mci -I 1.4 mcl data.mci -I 2 mcl data.mci -I 4 mcxdump -icl out.data.mci.I14 -tabr data.tab -o dump.data.mci.I14 mcxdump -icl out.data.mci.I20 -tabr data.tab -o dump.data.mci.I20 mcxdump -icl out.data.mci.I40 -tabr data.tab -o dump.data.mci.I40

In this example the cluster output is stored in native format and dumped to labels using mcxdump. The stored output can now be used to learn more about the clusterings. An example is the following, where clm is applied in mode dist to gauge the distance between different clusterings.

clm dist --chain out.data.mci.I{14,20,40}

Loading large networks

If you deal with very large networks (say with hundreds of millions of edges), it is recommended to use binary format (cf mcxio). This is simply achieved by adding --write-binary to the mcxload command line. The resulting file is no longer human-readable but will be faster to read by a factor between ten- or twenty-fold compared to standard MCL-edge network format, and a factor around fifty-fold compared to label format. All MCL-edge programs are able to read binary format, and speed of reading will be somewhere in the order of millions of edges per second, compared to, for example, roughly 100K edges per second for label format.

Memory usage for mcxload can be lowered by replacing the option --stream-mirror with -ri max.

Converting between formats

Converting label format to tabular format
Label format, two or three (including weight) columns:

mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci mcxdump -imx data.mci -tab data.tab --dump-table

Simple Interaction File (SIF) format:

mcxload -sif data.sif --stream-mirror -write-tab data.tab -o data.mci mcxdump -imx data.mci -tab data.tab --dump-table

It can be noted that these two examples are very similar, and differ only in the way the input to mcxload is specified.

Clustering similarity graphs encoded in BLAST results

A specific instance of the workflow above is the clustering of proteins based on their sequence similarities. In the most typical scenario the external format is BLAST output, which needs to be transformed to ABC format. In the examples below the input is in columnar blast format obtained with the blast -m8 option. It requires a version of mcl at least as recent as 09-061. First we create an ABC-formatted file using the external columnar BLAST format, which is assumed to be in a file called seq.cblast.

cut -f 1,2,11 seq.cblast > seq.abc

The columnar format in the file seq.cblast has, for a given BLAST hit, the sequence labels in the first two columns and the asssociated E-value in column 11. It is parsed by the standard UNIX cut(1) utility. The format must have been created with the BLAST -m8 option so that no comment lines are present. Alternatively these can be filtered out using grep.

The newly created seq.abc file is loaded by mcxload, which writes both a network file seq.mci and a dictionary file seq.tab.

mcxload -abc seq.abc --stream-mirror --stream-neg-log10 -stream-tf 'ceil(200)' -o seq.mci -write-tab seq.tab

The --stream-mirror option ensures that the resulting network will be undirected, as recommended when using mcl. Omitting this option would result in a directed network as BLAST E-values generally differ between two sequences. The default course of action for mcxload is to use the best value found between a pair of labels. The next option, --abc-neg-log10 tranforms the numerical values in the input (the BLAST E-values) by taking the logarithm in base 10 and subsequently negating the sign. Finally, the transformed values are capped so that any E-value below 1e-200 is set to a maximum allowed edge weight of 200.

To obtain clusterings from seq.mci and seq.tab one has two choices. The first is to generate an abstract clustering representation and from that obtain the label output, as follows. Below the -o option is not used, so mcl will create meaningful and unique output names by itself. The default way of doing this is to preprend the prefix out. and to append a suffix encoding the inflation value used, with inflation encoded using two digits of precision and the decimal separator removed.

mcl seq.mci -I 1.4 mcl seq.mci -I 2 mcl seq.mci -I 4 mcl seq.mci -I 6 mcxdump -icl out.seq.mci.I14 -tabr seq.tab -o dump.seq.mci.I14 mcxdump -icl out.seq.mci.I20 -tabr seq.tab -o dump.seq.mci.I20 mcxdump -icl out.seq.mci.I40 -tabr seq.tab -o dump.seq.mci.I40 mcxdump -icl out.seq.mci.I60 -tabr seq.tab -o dump.seq.mci.I60

Now the file out.seq.tab.I14 and its associates can be used for example to compute the distances between the encoded clusterings with clm dist, to compute a set of strictly reconciled nested clusterings with clm order, or to compute an efficiency criterion with clm info.

Alternatively, label output can be obtained directly from mcl as follows.

mcl seq.mci -I 1.4 -use-tab seq.tab mcl seq.mci -I 2 -use-tab seq.tab mcl seq.mci -I 4 -use-tab seq.tab mcl seq.mci -I 6 -use-tab seq.tab

Clustering expression data

The clustering of expression data constitutes another workflow. In this case the external format usually is a tabular file format containing labels for genes or probes and numerical values measuring the expression values or fold changes across a series of conditions or experiments. Such tabular files can be processed by mcxarray, which comes installed with mcl. The program computes correlations (either Pearson or Spearmann) between genes, and creates an edge between genes if their correlation exceeds the specified cutoff. From this mcxarray creates both a network file and a dictionary file. In the example below, the file expr.data is in tabular format with one row of column headers (e.g. tags for experiments) and one column of row identifiers (e.g. probe or gene identifiers).

mcxarray -data expr.data -skipr 1 -skipc 1 -o expr.mci -write-tab expr.tab --pearson -co 0.7 -tf 'abs(),add(-0.7)'

This uses the Pearson correlation, ignoring values below 0.7. The remaining values in the interval [0.7-1] are remapped to the interval [0-0.3]. This is recommended so that the edge weights will have increased contrast between them, as mcl is affected by relative differences (ratios) between edge weights rather than absolute differences. To illustrate this, values 0.75 and 0.95 are mapped to 0.05 and 0.25, with respective ratios 0.79 and 0.25. The network file expr.mci and the dictionary file expr.tab can now be used as before.

It is possible to investigate the effect of the correlation cutoff as follows. First a network is generated at a very low threshold, and this network is analysed using mcxquery.

mcxarray -data expr.data -skipr 1 -skipc 1 -o expr20.mcx --write-binary --pearson -co 0.2 -tf 'abs()' mcx query -imx expr20.mcx --vary-correlation

The output is in a tabular format describing the properties of the network at increasing correlation thresholds. Examples are the size of the biggest component, the number of orphan nodes (not connected to any other node), and the mean and median node degrees. A good way to choose the cutoff is to balance the number of singletons and the median node degree. Both should preferably not be too high. For example the number of orphan nodes should be less than ten percent of the total number of nodes, and the median node degree should be at most one hundred neighbours.

Reducing node degrees in the graph

A good way to lower node degrees in a network is to require that an edge is among the best k edges (those of highest weight) for both nodes incident to the edge, for some value of k. This is achieved by using knn(k) in the argument to the -tf option to mcl or mcx alter. To give an example, a graph was formed on translations in Ensembl release 57 on 2.6M nodes. The similarities were obtained from BLAST scores, leading to a graph with a total edge count of 300M, with best-connected nodes of degree respectively 11148, 9083, 9070, 9019 and 8988, and with mean node degree 233. These degrees are unreasonable. The graph was subjected to mcx query to investigate the effect of varying k-NN parameters. A good heuristic is to choose a value that does not significantly change the number of singletons in the input graph. In the example it meant that -tf 'knn(160)' was feasible, leading to a mean node degree of 98.

A second approach to reduce node degrees is to employ the -ceil-nb option. This ranks nodes by node degree, highest first. Nodes are considered in order of rank, and edges of low weight are removed from the graph until a node satisfies the node degree threshold specified by -ceil-nb.

SEE ALSO

mcxio.

AUTHOR

Stijn van Dongen.

mcl-12-135/doc/mclfaq.70000644000402500021140000014540611754271043011407 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "MCL\ \&FAQ" 7 "14 May 2012" "MCL\ \&FAQ 12-135" "MISCELLANEOUS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .de ZT .\" Zoem Faq (Toc) macro. .nr xb \\n(.k .nr xb -1m .nr xa \\$1 .nr xa -\\n(.k .nr xa -\\n(.i \h'\\n(xau'\\$2\l'|\\n(xbu.'\h'1m'\\ .. .de ZB .\" Zoem Faq (Body) macro. .nr xb \\n(.k .nr xa \\$1 .nr xa -\\n(.k .nr xa -\\n(.i \h'\\n(xau'\\$2\h'|\\n(xbu'\\ .. .am SH .ie n .in 8m .el .in 8m .. .SH NAME mclfaq \- faqs and facts about the MCL cluster algorithm\&. MCL refers to the generic MCL algorithm and the MCL process on which the algorithm is based\&. \fBmcl\fP refers to the implementation\&. This FAQ answers questions related to both\&. In some places MCL is written where MCL or mcl can be read\&. This is the case for example in \fIsection 3,\ \&What kind of graphs\fP\&. It should in general be obvious from the context\&. This FAQ does not begin to attempt to explain the motivation and mathematics behind the MCL algorithm - the internals are not explained\&. A broad view is given in faq\ \&1\&.2, and see also faq\ \&1\&.5 and section \fBREFERENCES\fP\&. Some additional sections preceed the actual faq entries\&. The TOC section contains a listing of all questions\&. .SH RESOURCES The manual pages for all the utilities that come with \fBmcl\fP; refer to \fBmclfamily(7)\fP for an overview\&. See the \fBREFERENCES\fP Section for publications detailing the mathematics behind the MCL algorithm\&. .SH TOC .ZT 0m \fB1\fP \s+1\fBGeneral questions\fP\s-1 .br .ZT 1m \fB1\&.1\fP For whom is mcl and for whom is this FAQ? .br .ZT 1m \fB1\&.2\fP What is the relationship between the MCL process, the MCL algorithm, and the \&'mcl\&' implementation? .br .ZT 1m \fB1\&.3\fP What do the letters MCL stand for? .br .ZT 1m \fB1\&.4\fP How could you be so feebleminded to use MCL as abbreviation? Why is it labeled \&'Markov cluster\&' anyway? .br .ZT 1m \fB1\&.5\fP Where can I learn about the innards of the MCL algorithm/process? .br .ZT 1m \fB1\&.6\fP For which platforms is mcl available? .br .ZT 1m \fB1\&.7\fP How does mcl\&'s versioning scheme work? .ZT 0m \fB2\fP \s+1\fBInput format\fP\s-1 .br .ZT 1m \fB2\&.1\fP How can I get my data into the MCL matrix format? .ZT 0m \fB3\fP \s+1\fBWhat kind of graphs\fP\s-1 .br .ZT 1m \fB3\&.1\fP What is legal input for MCL? .br .ZT 1m \fB3\&.2\fP What is sensible input for MCL? .br .ZT 1m \fB3\&.3\fP Does MCL work for weighted graphs? .br .ZT 1m \fB3\&.4\fP Does MCL work for directed graphs? .br .ZT 1m \fB3\&.5\fP Can MCL work for lattices / directed acyclic graphs / DAGs? .br .ZT 1m \fB3\&.6\fP Does MCL work for tree graphs? .br .ZT 1m \fB3\&.7\fP For what kind of graphs does MCL work well and for which does it not? .br .ZT 1m \fB3\&.8\fP What makes a good input graph? How do I construct the similarities? How to make them satisfy this Markov condition? .br .ZT 1m \fB3\&.9\fP My input graph is directed\&. Is that bad? .br .ZT 1m \fB3\&.10\fP Why does mcl like undirected graphs and why does it dislike uni-directed graphs so much? .br .ZT 1m \fB3\&.11\fP How do I check that my graph/matrix is symmetric/undirected? .ZT 0m \fB4\fP \s+1\fBSpeed and complexity\fP\s-1 .br .ZT 1m \fB4\&.1\fP How fast is mcl/MCL? .br .ZT 1m \fB4\&.2\fP What statistics are available? .br .ZT 1m \fB4\&.3\fP Does this implementation need to sort vectors? .br .ZT 1m \fB4\&.4\fP mcl does not compute the ideal MCL process! .ZT 0m \fB5\fP \s+1\fBComparison with other algorithms\fP\s-1 .br .ZT 1m \fB5\&.1\fP I\&'ve read someplace that XYZ is much better than MCL .br .ZT 1m \fB5\&.2\fP I\&'ve read someplace that MCL is slow [compared with XYZ] .ZT 0m \fB6\fP \s+1\fBResource tuning / accuracy\fP\s-1 .br .ZT 1m \fB6\&.1\fP What do you mean by resource tuning? .br .ZT 1m \fB6\&.2\fP How do I compute the maximum amount of RAM needed by mcl? .br .ZT 1m \fB6\&.3\fP How much does the mcl clustering differ from the clustering resulting from a perfectly computed MCL process? .br .ZT 1m \fB6\&.4\fP How do I know that I am using enough resources? .br .ZT 1m \fB6\&.5\fP Where is the mathematical analysis of this mcl pruning strategy? .br .ZT 1m \fB6\&.6\fP What qualitative statements can be made about the effect of pruning? .br .ZT 1m \fB6\&.7\fP At different high resource levels my clusterings are not identical\&. How can I trust the output clustering? .ZT 0m \fB7\fP \s+1\fBTuning cluster granularity\fP\s-1 .br .ZT 1m \fB7\&.1\fP How do I tune cluster granularity? .br .ZT 1m \fB7\&.2\fP The effect of inflation on cluster granularity\&. .br .ZT 1m \fB7\&.3\fP The effect of node degrees on cluster granularity\&. .br .ZT 1m \fB7\&.4\fP The effect of edge weight differentiation on cluster granularity\&. .ZT 0m \fB8\fP \s+1\fBImplementing the MCL algorithm\fP\s-1 .br .ZT 1m \fB8\&.1\fP How easy is it to implement the MCL algorithm? .ZT 0m \fB9\fP \s+1\fBCluster overlap / MCL iterand cluster interpretation\fP\s-1 .br .ZT 1m \fB9\&.1\fP Introduction .br .ZT 1m \fB9\&.2\fP Can the clusterings returned by mcl contain overlap? .br .ZT 1m \fB9\&.3\fP How do I obtain the clusterings associated with MCL iterands? .ZT 0m \fB10\fP \s+1\fBMiscellaneous\fP\s-1 .br .ZT 1m \fB10\&.1\fP How do I find the default settings of mcl? .br .ZT 1m \fB10\&.2\fP What\&'s next? .SH FAQ .ce \s+2\fBGeneral questions\fP\s-2 .ZB 1m \fB1\&.1\fP \s+1\fBFor whom is mcl and for whom is this FAQ?\fP\s-1 For everybody with an appetite for graph clustering\&. Regarding the FAQ, I have kept the amount of mathematics as low as possible, as far as matrix analysis is concerned\&. Inevitably, some terminology pops up and some references are made to the innards of the MCL algorithm, especially in the section on resources and accuracy\&. Graph terminology is used somewhat more carelessly though\&. The future might bring definition entries, right now you have to do without\&. Mathematically inclined people may be interested in the pointers found in the \fBREFERENCES\fP section\&. Given this mention of mathematics, let me point out this one time only that using \fBmcl\fP is extremely straightforward anyway\&. You need only mcl and an input graph (refer to the \fBmcl manual page\fP), and many people trained in something else than mathematics are using mcl happily\&. .ZB 1m \fB1\&.2\fP \s+1\fBWhat is the relationship between the MCL process, the MCL algorithm, and the \&'mcl\&' implementation?\fP\s-1 \fBmcl\fP is what you use for clustering\&. It implements the MCL algorithm, which is a cluster algorithm for graphs\&. The MCL algorithm is basically a shell in which the MCL process is computed and interpreted\&. I will describe them in the natural, reverse, order\&. The MCL process generates a sequence of stochastic matrices given some initial stochastic matrix\&. The elements with even index are obtained by \fIexpanding\fP the previous element, and the elements with odd index are obtained by \fIinflating\fP the previous element given some inflation constant\&. Expansion is nothing but normal matrix squaring, and inflation is a particular way of rescaling the entries of a stochastic matrix such that it remains stochastic\&. The sequence of MCL elements (from the MCL process) is in principle without end, but what happens is that the elements converge to some specific kind of matrix, called the \fIlimit\fP of the process\&. The heuristic underlying MCL predicts that the interaction of expansion with inflation will lead to a limit exhibiting cluster structure in the graph associated with the initial matrix\&. This is indeed the case, and several mathematical results tie MCL iterands and limits and the MCL interpretation together (\fBREFERENCES\fP)\&. The MCL algorithm is simply a shell around the MCL process\&. It transforms an input graph into an initial matrix suitable for starting the process\&. It sets inflation parameters and stops the MCL process once a limit is reached, i\&.e\&. convergence is detected\&. The result is then interpreted as a clustering\&. The \fBmcl\fP implementation supplies the functionality of the MCL algorithm, with some extra facilities for manipulation of the input graph, interpreting the result, manipulating resources while computing the process, and monitoring the state of these manipulations\&. .ZB 1m \fB1\&.3\fP \s+1\fBWhat do the letters MCL stand for?\fP\s-1 For \fIMarkov Cluster\fP\&. The MCL algorithm is a \fBcluster\fP algorithm that is basically a shell in which an algebraic process is computed\&. This process iteratively generates stochastic matrices, also known as \fBMarkov\fP matrices, named after the famous Russian mathematician Andrei Markov\&. .ZB 1m \fB1\&.4\fP \s+1\fBHow could you be so feebleminded to use MCL as abbreviation? Why is it labeled \&'Markov cluster\&' anyway?\fP\s-1 Sigh\&. It is a widely known fact that a TLA or Three-Letter-Acronym is \fIthe canonical self-describing abbreviation for the name of a species with which computing terminology is infested\fP (quoted from the Free Online Dictionary of Computing)\&. Back when I was thinking of a nice tag for this cute algorithm, I was totally unaware of this\&. I naturally dismissed \fIMC\fP (and would still do that today)\&. Then \fIMCL\fP occurred to me, and without giving it much thought I started using it\&. A Google search (or was I still using Alta-Vista back then?) might have kept me from going astray\&. Indeed, \fIMCL\fP is used as a tag for \fIMacintosh Common Lisp\fP, \fIMission Critical Linux\fP, \fIMonte Carlo Localization\fP, \fIMUD Client for Linux\fP, \fIMovement for Canadian Literacy\fP, and a gazillion other things \- refer to the file mclmcl\&.txt\&. Confusing\&. It seems that the three characters \fCMCL\fP possess otherworldly magical powers making them an ever so strange and strong attractor in the space of TLAs\&. It probably helps that Em-See-Ell (Em-Say-Ell in Dutch) has some rhythm to it as well\&. Anyway MCL stuck, and it\&'s here to stay\&. On a more general level, the label \fIMarkov Cluster\fP is not an entirely fortunate choice either\&. Although phrased in the language of stochastic matrices, MCL theory bears very little relation to Markov theory, and is much closer to matrix analysis (including Hilbert\&'s distance) and the theory of dynamical systems\&. No results have been derived in the latter framework, but many conjectures are naturally posed in the language of dynamical systems\&. .ZB 1m \fB1\&.5\fP \s+1\fBWhere can I learn about the innards of the MCL algorithm/process?\fP\s-1 Currently, the most basic explanation of the MCL algorithm is found in the technical report [2]\&. It contains sections on several other (related) subjects though, and it assumes some working knowledge on graphs, matrix arithmetic, and stochastic matrices\&. .ZB 1m \fB1\&.6\fP \s+1\fBFor which platforms is mcl available?\fP\s-1 It should compile and run on virtually any flavour of UNIX (including Linux and the BSD variants of course)\&. Following the instructions in the INSTALL file shipped with mcl should be straightforward and sufficient\&. Courtesy to Joost van Baal who completely autofooled \fBmcl\fP\&. Building MCL on Wintel (Windows on Intel chip) should be straightforward if you use the full suite of cygwin tools\&. Install cygwin if you do not have it yet\&. In the cygwin shell, unpack mcl and simply issue the commands \fI\&./configure, make, make install\fP, i\&.e\&. follow the instructions in INSTALL\&. This MCL implementation should also build successfully on Mac OS X\&. .ZB 1m \fB1\&.7\fP \s+1\fBHow does mcl\&'s versioning scheme work?\fP\s-1 The current setup, which I hope to continue, is this\&. All releases are identified by a date stamp\&. For example 02-095 denotes day 95 in the year 2002\&. This date stamp agrees (as of April 2000) with the (differently presented) date stamp used in all manual pages shipped with that release\&. For example, the date stamp of the FAQ you are reading is \fB14 May 2012\fP, which corresponds with the MCL stamp \fB12-135\fP\&. The Changelog file contains a list of what\&'s changed/added with each release\&. Currently, the date stamp is the primary way of identifying an \fBmcl\fP release\&. When asked for its version by using \fB--version\fP, mcl outputs both the date stamp and a version tag (see below)\&. .ce \s+2\fBInput format\fP\s-2 .ZB 1m \fB2\&.1\fP \s+1\fBHow can I get my data into the MCL matrix format?\fP\s-1 This is described in the \fIprotocols manual page\fP\&. .ce \s+2\fBWhat kind of graphs\fP\s-2 .ZB 1m \fB3\&.1\fP \s+1\fBWhat is legal input for MCL?\fP\s-1 Any graph (encoded as a matrix of similarities) that is nonnegative, i\&.e\&. all similarities are greater than or equal to zero\&. .ZB 1m \fB3\&.2\fP \s+1\fBWhat is sensible input for MCL?\fP\s-1 Graphs can be weighted, and they should preferably be symmetric\&. Weights should carry the meaning of similarity, \fInot\fP distance\&. These weights or similarities are incorporated into the MCL algorithm in a meaningful way\&. Graphs should certainly not contain parts that are (almost) cyclic, although nothing stops you from experimenting with such input\&. .ZB 1m \fB3\&.3\fP \s+1\fBDoes MCL work for weighted graphs?\fP\s-1 Yes, unequivocally\&. They should preferably be symmetric/undirected though\&. See entries\ \&3\&.7 and\ \&3\&.8\&. .ZB 1m \fB3\&.4\fP \s+1\fBDoes MCL work for directed graphs?\fP\s-1 Maybe, with a big caveat\&. See entries\ \&3\&.8 and\ \&3\&.9\&. .ZB 1m \fB3\&.5\fP \s+1\fBCan MCL work for lattices / directed acyclic graphs / DAGs?\fP\s-1 Such graphs [term] can surely exhibit clear cluster structure\&. If they do, there is only one way for mcl to find out\&. You have to change all arcs to edges, i\&.e\&. if there is an arc from i to j with similarity s(i,j) \- by the DAG property this implies s(j,i) = 0 \- then make s(j,i) equal to s(i,j)\&. This may feel like throwing away valuable information, but in truth the information that is thrown away (direction) is \fInot\fP informative with respect to the presence of cluster structure\&. This may well deserve a longer discussion than would be justified here\&. If your graph is directed and acyclic (or parts of it are), you can transform it before clustering with mcl by using \fB-tf\fP\ \&\fB\&'#max()\&'\fP, e\&.g\&. .di ZV .in 0 .nf \fC mcl YOUR-GRAPH -I 3\&.0 -tf \&'#max()\&' .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .ZB 1m \fB3\&.6\fP \s+1\fBDoes MCL work for tree graphs?\fP\s-1 Nah, I don\&'t think so\&. More info at entry\ \&3\&.7\&. You could consider the \fIStrahler number\fP, which is numerical measure of branching complexity\&. .ZB 1m \fB3\&.7\fP \s+1\fBFor what kind of graphs does MCL work well and for which does it not?\fP\s-1 Graphs in which the diameter [term] of (subgraphs induced by) natural clusters is not too large\&. Additionally, graphs should preferably be (almost) undirected (see entry below) and not so sparse that the cardinality of the edge set is close to the number of nodes\&. A class of such very sparse graphs is that of tree graphs\&. You might look into \fIgraph visualization\fP software and research if you are interested in decomposing trees into \&'tight\&' subtrees\&. The diameter criterion could be violated by neighbourhood graphs derived from vector data\&. In the specific case of 2 and 3 dimensional data, you might be interested in \fIimage segmentation\fP and \fIboundary detection\fP, and for the general case there is a host of other algorithms out there\&. [add] In case of weighted graphs, the notion of \fIdiameter\fP is sometimes not applicable\&. Generalizing this notion requires inspecting the \fImixing properties\fP of a subgraph induced by a natural cluster in terms of its spectrum\&. However, the diameter statement is something grounded on heuristic considerations (confirmed by practical evidence [4]) to begin with, so you should probably forget about mixing properties\&. .ZB 1m \fB3\&.8\fP \s+1\fBWhat makes a good input graph? How do I construct the similarities? How to make them satisfy this Markov condition?\fP\s-1 To begin with the last one: you \fIneed not and must not\fP make the input graph such that it is stochastic aka Markovian [term]\&. What you need to do is make a graph that is preferably symmetric/undirected, i\&.e\&. where s(i,j) = s(j,i) for all nodes i and j\&. It need not be perfectly undirected, see the following faq for a discussion of that\&. \fBmcl\fP will work with the graph of random walks that is associated with your input graph, and that is the natural state of affairs\&. The input graph should preferably be honest in the sense that if \fCs(x,y)=N\fP and \fCs(x,z)=200N\fP (i\&.e\&. the similarities differ by a factor 200), then this should really reflect that the similarity of \fCy\fP to \fCx\fP is neglectible compared with the similarity of \fCz\fP to \fCx\fP\&. For the rest, anything goes\&. Try to get a feeling by experimenting\&. Sometimes it is a good idea to filter out high-frequency and/or low-frequency data, i\&.e\&. nodes with either very many neighbours or extremely few neighbours\&. .ZB 1m \fB3\&.9\fP \s+1\fBMy input graph is directed\&. Is that bad?\fP\s-1 It depends\&. The class of directed graphs can be viewed as a spectrum going from undirected graphs to uni-directed graphs\&. \fIUni-directed\fP is terminology I am inventing here, which I define as the property that for all node pairs i, j, at least one of s(i,j) or s(j,i) is zero\&. In other words, if there is an arc going from i to j in a uni-directed graph, then there is no arc going from j to i\&. I call a node pair i, j, \fIalmost uni-directed\fP if s(i,j) << s(j,i) or vice versa, i\&.e\&. if the similarities differ by an order of magnitude\&. If a graph does not have (large) subparts that are (almost) uni-directed, have a go with mcl\&. Otherwise, try to make your graph less uni-directed\&. You are in charge, so do anything with your graph as you see fit, but preferably abstain from feeding mcl uni-directed graphs\&. .ZB 1m \fB3\&.10\fP \s+1\fBWhy does mcl like undirected graphs and why does it dislike uni-directed graphs so much?\fP\s-1 Mathematically, the mcl iterands will be \fInice\fP when the input graph is symmetric, where \fInice\fP is in this case \fIdiagonally symmetric to a semi-positive definite matrix\fP (ignore as needed)\&. For one thing, such nice matrices can be interpreted as clusterings in a way that generalizes the interpretation of the mcl limit as a clustering (if you are curious to these intermediate clusterings, see \fIfaq entry\ \&9\&.3\fP)\&. See the \fBREFERENCES\fP section for pointers to mathematical publications\&. The reason that mcl dislikes uni-directed graphs is not very mcl specific, it has more to do with the clustering problem itself\&. Somehow, directionality thwarts the notion of cluster structure\&. [add]\&. .ZB 1m \fB3\&.11\fP \s+1\fBHow do I check that my graph/matrix is symmetric/undirected?\fP\s-1 Whether your graph is created by third-party software or by custom sofware written by someone you know (e\&.g\&. yourself), it is advisable to test whether the software generates symmetric matrices\&. This can be done as follows using the \fBmcxi utility\fP, assuming that you want to test the matrix stored in file \fCmatrix\&.mci\fP\&. The mcxi utility should be available on your system if mcl was installed in the normal way\&. .di ZV .in 0 .nf \fC mcxi /matrix\&.mci lm tp -1 mul add /check wm .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR This loads the graph/matrix stored in \fCmatrix\&.mci\fP into \fBmcxi\fP\&'s memory with the \fBmcxi\fP \fIlm\fP primitive\&. \- the leading slash is how strings are introduced in the stack language interpreted by \fBmcxi\fP\&. The transpose of that matrix is then pushed on the stack with the \fItp\fP primitive and multiplied by minus one\&. The two matrices are added, and the result is written to the file \fCcheck\fP\&. The transposed matrix is the mirrored version of the original matrix stored in \fCmatrix\&.mci\fP\&. If a graph/matrix is undirected/symmetric, the mirrored image is necessarily the same, so if you subtract one from the other it should yield an all zero matrix\&. Thus, the file \fCcheck\fP \fIshould look like this\fP: .di ZV .in 0 .nf \fC (mclheader mcltype matrix dimensions x ) (mclmatrix begin ) .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Where \fC\fP is the same as in the file \fCmatrix\&.mci\fP\&. If this is not the case, find out what\&'s prohibiting you from feeding mcl symmetric matrices\&. Note that any nonzero entries found in the matrix stored as \fCcheck\fP correspond to node pairs for which the arcs in the two possible directions have different weight\&. .ce \s+2\fBSpeed and complexity\fP\s-2 .ZB 1m \fB4\&.1\fP \s+1\fBHow fast is mcl/MCL?\fP\s-1 It\&'s fast - here is how and why\&. Let \fCN\fP be the number of nodes in the input graph\&. A straigtforward implementation of MCL will have time and space complexity respecively \fCO(N^3)\fP (i\&.e\&. cubic in \fCN\fP) and \fCO(N^2)\fP (quadratic in \fCN\fP)\&. So you don\&'t want one of those\&. \fBmcl\fP implements a slightly perturbed version of the MCL process, as discussed in section \fIResource tuning / accuracy\fP\&. Refer to that section for a more extensive discussion of all the aspects involved\&. This section is only concerned with the high-level view of things \fIand\fP the nitty gritty complexity details\&. While computing the square of a matrix (the product of that matrix with itself), mcl keeps the matrix sparse by allowing a certain maximum number of nonzero entries per stochastic column\&. The maximum is one of the mcl parameters, and it is typically set somewhere between 500 and 1500\&. Call the maximum \fCK\fP\&. mcl\&'s time complexity is governed by the complexity of matrix squaring\&. There are two sub-algorithms to consider\&. The first is the algorithm responsible for assembling a new vector during matrix multiplication\&. This algorithm has worst case complexity \fCO(K^2)\fP\&. The pruning algorithm (which uses heap selection) has worst case complexity \fCO(L*log(K))\fP, where \fCL\fP is how large a newly computed matrix column can get before it is reduced to at most \fCK\fP entries\&. \fCL\fP is \fIbound by\fP the smallest of the two numbers \fCN\fP and \fCK^2\fP (the square of \fCK\fP), but on average \fCL\fP will be much smaller than that, as the presence of cluster structure aids in keeping the factor \fCL\fP low\&. [Related to this is the fact that clustering algorithms are actually used to compute matrix splittings that minimize the number of cross-computations when carrying out matrix multiplication among multiple processors\&.] In actual cases of heavy usage, \fCL\fP is of order in the tens of thousands, and \fCK\fP is in the order of several hundreds up to a thousand\&. It is safe to say that in general the worst case complexity of mcl is of order O(N*K^2); for extremely tight and dense graphs this might become O(N*N*log(K))\&. Still, these are worst case estimates, and observed running times for actual usage are much better than that\&. (refer to faq\ \&4\&.2)\&. In this analysis, the number of iterations required by mcl was not included\&. It is nearly always far below 100\&. Only the first few (less than ten) iterations are genuinely time consuming, and they are usually responsible for more than 95 percent of the running time\&. The process of removing the smallest entries of a vector is called pruning\&. mcl outputs a summary of this once it is done\&. More information is provided in the pruning section of the \fBmcl manual\fP and \fISection\ \&6\fP in this FAQ\&. The space complexity is of order \fCO(N*K)\fP\&. .ZB 1m \fB4\&.2\fP \s+1\fBWhat statistics are available?\fP\s-1 Few\&. Some experiments are described in [4], and [5] mentions large graphs being clustered in very reasonable time\&. In protein clustering, \fBmcl\fP has been applied to graphs with up to one million nodes, and on high-end hardware such graphs can be clustered within a few hours\&. .ZB 1m \fB4\&.3\fP \s+1\fBDoes this implementation need to sort vectors?\fP\s-1 No, it does not\&. You might expect that one needs to sort a vector in order to obtain the \fCK\fP largest entries, but a simpler mechanism called \fIheap selection\fP does the job nicely\&. Selecting the \fCK\fP largest entries from a set of \fCL\fP by sorting would require \fCO(L*log(L))\fP operations; heap selection requires \fCO(L*log(K))\fP operations\&. Alternatively, the \fCK\fP largest entries can be also be determined in \fCO(N) + O(K log(K))\fP asymptotic time by using partition selection (more \fIhere\fP and \fIthere\fP)\&. It is possible to enable this mode of operaton in mcl with the option \fB--partition-selection\fP\&. However, benchmarking so far has shown this to be equivalent in speed to heap selection\&. This is explained by the bounded nature of \fCK\fP and \fCL\fP in practice\&. .ZB 1m \fB4\&.4\fP \s+1\fBmcl does not compute the ideal MCL process!\fP\s-1 Indeed it does not\&. What are the ramifications? Several entries in section \fIResource tuning / accuracy\fP discuss this issue\&. For a synopsis, consider two ends of a spectrum\&. On the one end, a graph that has very strong cluster structure, with clearly (and not necessarity fully) separated clusters\&. This mcl implementation will certainly retrieve those clusters if the graphs falls into \fIthe category of graphs\fP for which mcl is applicable\&. On the other end, consider a graph that has only weak cluster structure superimposed on a background of a more or less random graph\&. There might sooner be a difference between the clustering that should ideally result and the one computed by mcl\&. Such a graph will have a large number of whimsical nodes that might end up either here or there, nodes that are of a peripheral nature, and for which the (cluster) destination is very sensitive to fluctutations in edge weights or algorithm parametrizations (any algorithm, not just mcl)\&. In short, the perturbation effect of the pruning process applied by mcl is a source of noise\&. It is small compared to the effect of changing the inflation parametrization or perturbing the edge weights\&. If the change is larger, this is because the computed process tends to converge prematurely, leading to finer-grained clusterings\&. As a result the clustering will be close to a \fIsubclustering\fP of the clustering resulting from more conservative resource settings, and in that respect be consistent\&. All this can be measured using the program \fIclm dist\fP\&. It is possible to offset such a change by slightly lowering the inflation parameter\&. There is the issue of very large and very dense graphs\&. The act of pruning will have a larger impact as graphs grow larger and denser\&. Obviously, mcl will have trouble dealing with such very large and very dense graphs \- so will other methods\&. Finally, there is the engineering approach, which offers the possibility of pruning a whole lot of speculation\&. Do the experiments with \fBmcl\fP, try it out, and see what\&'s there to like and dislike\&. .ce \s+2\fBComparison with other algorithms\fP\s-2 .ZB 1m \fB5\&.1\fP \s+1\fBI\&'ve read someplace that XYZ is much better than MCL\fP\s-1 XYZ might well be the bees knees of all things clustering\&. Bear in mind though that comparing cluster algorithms is a very tricky affair\&. One particular trap is the following\&. Sometimes a new cluster algorithm is proposed based on some optimization criterion\&. The algorithm is then compared with previous algorithms (e\&.g\&. MCL)\&. But how to compare? Quite often the comparison will be done by computing a criterion and astoundingly, quite often the chosen criterion is simply the optimization criterion again\&. \fIOf course\fP XYZ will do very well\&. It would be a very poor algorithm it if did not score well on its own optimization criterion, and it would be a very poor algorithm if it did not perform better than other algorithms which are built on different principles\&. There are some further issues that have to be considered here\&. First, there is not a single optimization criterion that fully captures the notion of cluster structure, let alone best cluster structure\&. Second, leaving optimization approaches aside, it is not possible to speak of a best clustering\&. Best always depends on context - application field, data characteristics, scale (granularity), and practitioner to name but a few aspects\&. Accordingly, the best a clustering algorithm can hope for is to be a good fit for a certain class of problems\&. The class should not be too narrow, but no algorithm can cater for the broad spectre of problems for which clustering solutions are sought\&. The class of problems to which MCL is applicable is discussed in section \fIWhat kind of graphs\fP\&. .ZB 1m \fB5\&.2\fP \s+1\fBI\&'ve read someplace that MCL is slow [compared with XYZ]\fP\s-1 Presumably, they did not know mcl, and did not read the parts in [1] and [2] that discuss implementation\&. Perhaps they assume or insist that the only way to implement MCL is to implement the ideal process\&. And there is always the genuine possibility of a \fIreally\fP stupifyingly fast algorithm\&. It is certainly not the case that MCL has a time complexity of \fCO(N^3)\fP as is sometimes erroneously stated\&. .ce \s+2\fBResource tuning / accuracy\fP\s-2 .ZB 1m \fB6\&.1\fP \s+1\fBWhat do you mean by resource tuning?\fP\s-1 \fBmcl\fP computes a process in which stochastic matrices are alternately expanded and inflated\&. Expansion is nothing but standard matrix multiplication, inflation is a particular way of rescaling the matrix entries\&. Expansion causes problems in terms of both time and space\&. mcl works with matrices of dimension \fCN\fP, where \fCN\fP is the number of nodes in the input graph\&. If no precautions are taken, the number of entries in the mcl iterands (which are stochastic matrices) will soon approach the square of \fCN\fP\&. The time it takes to compute such a matrix will be proportional to the cube of \fCN\fP\&. If your input graph has 100\&.000 nodes, the memory requirements become infeasible and the time requirements become impossible\&. What mcl does is perturbing the process it computes a little by removing the smallest entries \- it keeps its matrices \fIsparse\fP\&. This is a natural thing to do, because the matrices are sparse in a weighted sense (a very high proportion of the stochastic mass is contained in relatively few entries), and the process converges to matrices that are extremely sparse, with usually no more than \fCN\fP entries\&. It is thus known that the MCL iterands are sparse in a weighted sense and are usually very close to truly sparse matrices\&. The way mcl perturbs its matrices is by the strategy of pruning, selection, and recovery that is extensively described in the \fBmcl manual page\fP\&. The question then is: What is the effect of this perturbation on the resulting clustering, i\&.e\&. how would the clustering resulting from a \fIperfectly computed\fP mcl process compare with the clustering I have on disk? \fIFaq entry\ \&6\&.3\fP discusses this issue\&. The amount of \fIresources\fP used by mcl is bounded in terms of the maximum number of neighbours a node is allowed to have during all computations\&. Equivalently, this is the maximum number of nonzero entries a matrix column can possibly have\&. This number, finally, is the maximum of the the values corresponding with the \fB-S\fP and \fB-R\fP options\&. The latter two are listed when using the \fB-z\fP option (see faq\ \&10\&.1)\&. .ZB 1m \fB6\&.2\fP \s+1\fBHow do I compute the maximum amount of RAM needed by mcl?\fP\s-1 It is rougly equal to .di ZV .in 0 .nf \fC 2 * s * K * N .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR bytes, where 2 is the number of matrices held in memory by \fBmcl\fP, s is the size of a single cell (c\&.q\&. matrix entry or node/arc specification), \fCN\fP is the number of nodes in the input graph, and where \fCK\fP is the maximum of the values corresponding with the \fB-S\fP and \fB-R\fP options (and this assumes that the average node degree in the input graph does not exceed \fCK\fP either)\&. The value of s can be found by using the \fB-z\fP option\&. It is listed in one of the first lines of the resulting output\&. s equals the size of an int plus the size of a float, which will be 8 on most systems\&. The estimate above will in most cases be way too pessimistic (meaning you do not need that amount of memory)\&. The \fB-how-much-ram\fP option is provided by mcl for computing the bound given above\&. This options takes as argument the number of nodes in the input graph\&. The theoretically more precise upper bound is slightly larger due to overhead\&. It is something like .di ZV .in 0 .nf \fC ( 2 * s * (K + c)) * N .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR where c is 5 or so, but one should not pay attention to such a small difference anyway\&. .ZB 1m \fB6\&.3\fP \s+1\fBHow much does the mcl clustering differ from the clustering resulting from a perfectly computed MCL process?\fP\s-1 For graphs with up until a few thousand nodes a \fIperfectly computed\fP MCL process can be achieved by abstaining from pruning and doing full-blown matrix arithmetic\&. Of course, this still leaves the issue of machine precision, but let us wholeheartedly ignore that\&. Such experiments give evidence (albeit incidental) that pruning is indeed really what it is thought to be - a small perturbation\&. In many cases, the \&'approximated\&' clustering is identical to the \&'exact\&' clustering\&. In other cases, they are very close to each other in terms of the metric split/join distance as computed by \fBclm dist\fP\&. Some experiments with randomly generated test graphs, clustering, and pruning are described in [4]\&. On a different level of abstraction, note that perturbations of the inflation parameter will also lead to perturbations in the resulting clusterings, and surely, large changes in the inflation parameter will in general lead to large shifts in the clusterings\&. Node/cluster pairs that are different for the approximated and the exact clustering will very likely correspond with nodes that are in a boundary region between two or more clusters anyway, as the perturbation is not likely to move a node from one core of attraction to another\&. \fIFaq entry 6\&.6\fP has more to say about this subject\&. .ZB 1m \fB6\&.4\fP \s+1\fBHow do I know that I am using enough resources?\fP\s-1 In \fBmcl\fP parlance, this becomes \fIhow do I know that my\fP \fB-scheme\fP \fIparameter is high enough\fP or more elaborately \fIhow do I know that the values of the {-P, -S, -R, -pct} combo are high enough?\fP There are several aspects\&. First, watch the \fIjury marks\fP reported by \fBmcl\fP when it\&'s done\&. The jury marks are three grades, each out of 100\&. They indicate how well pruning went\&. If the marks are in the seventies, eighties, or nineties, mcl is probably doing fine\&. If they are in the eighties or lower, try to see if you can get the marks higher by spending more resources (e\&.g\&. increase the parameter to the \fB-scheme\fP option)\&. Second, you can do multiple \fBmcl\fP runs for different resource schemes, and compare the resulting clusterings using \fBclm dist\fP\&. See the \fBclmdist manual\fP for a case study\&. .ZB 1m \fB6\&.5\fP \s+1\fBWhere is the mathematical analysis of this mcl pruning strategy?\fP\s-1 There is none\&. [add] Ok, the next entry gives an engineer\&'s rule of thumb\&. .ZB 1m \fB6\&.6\fP \s+1\fBWhat qualitative statements can be made about the effect of pruning?\fP\s-1 The more severe pruning is, the more the computed process will tend to converge prematurely\&. This will generally lead to finer-grained clusterings\&. In cases where pruning was severe, the \fBmcl\fP clustering will likely be closer to a clustering ideally resulting from another MCL process with higher inflation value, than to the clustering ideally resulting from the same MCL process\&. Strong support for this is found in a general observation illustrated by the following example\&. Suppose u is a stochastic vector resulting from expansion: .di ZV .in 0 .nf \fC u = 0\&.300 0\&.200 0\&.200 0\&.100 0\&.050 0\&.050 0\&.050 0\&.050 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Applying inflation with inflation value 2\&.0 to u gives .di ZV .in 0 .nf \fC v = 0\&.474 0\&.211 0\&.211 0\&.053 0\&.013 0\&.013 0\&.013 0\&.013 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Now suppose we first apply pruning to u such that the 3 largest entries 0\&.300, 0\&.200 and 0\&.200 survive, throwing away 30 percent of the stochastic mass (which is quite a lot by all means)\&. We rescale those three entries and obtain .di ZV .in 0 .nf \fC u\&' = 0\&.429 0\&.286 0\&.286 0\&.000 0\&.000 0\&.000 0\&.000 0\&.000 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Applying inflation with inflation value 2\&.0 to u\&' gives .di ZV .in 0 .nf \fC v\&' = 0\&.529 0\&.235 0\&.235 0\&.000 0\&.000 0\&.000 0\&.000 0\&.000 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR If we had applied inflation with inflation value 2\&.5 to u, we would have obtained .di ZV .in 0 .nf \fC v\&'\&' = 0\&.531 0\&.201 0\&.201 0\&.038 0\&.007 0\&.007 0\&.007 0\&.007 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The vectors v\&' and v\&'\&' are much closer to each other than the vectors v\&' and v, illustrating the general idea\&. In practice, \fBmcl\fP should (on average) do much better than in this example\&. .ZB 1m \fB6\&.7\fP \s+1\fBAt different high resource levels my clusterings are not identical\&. How can I trust the output clustering?\fP\s-1 Did you read all other entries in this section? That should have reassured you somewhat, except perhaps for \fIFaq answer\ \&6\&.5\fP\&. You need not feel uncomfortable with the clusterings still being different at high resource levels, if ever so slightly\&. In all likelihood, there are anyway nodes which are not in any core of attraction, and that are on the boundary between two or more clusterings\&. They may go one way or another, and these are the nodes which will go different ways even at high resource levels\&. Such nodes may be stable in clusterings obtained for lower inflation values (i\&.e\&. coarser clusterings), in which the different clusters to which they are attracted are merged\&. By the way, you do know all about \fBclm dist\fP, don\&'t you? Because the statement that clusterings are not identical should be quantified: \fIHow much do they differ?\fP This issue is discussed in the \fBclm dist\fP manual page \- \fBclm dist\fP gives you a robust measure for the distance (dissimilarity) between two clusterings\&. There are other means of gaining trust in a clustering, and there are different issues at play\&. There is the matter of how accurately this \fBmcl\fP computed the mcl process, and there is the matter of how well the chosen inflation parameter fits the data\&. The first can be judged by looking at the jury marks (\fIfaq\ \&6\&.4\fP) and applying \fBclm dist\fP to different clusterings\&. The second can be judged by measurement (e\&.g\&. use \fBclm info\fP) and/or inspection (use your judgment)\&. .ce \s+2\fBTuning cluster granularity\fP\s-2 .ZB 1m \fB7\&.1\fP \s+1\fBHow do I tune cluster granularity?\fP\s-1 There are several ways for influencing cluster granularity\&. These ways and their relative merits are successively discussed below\&. Reading \fBclmprotocols(5)\fP is also a good idea\&. .ZB 1m \fB7\&.2\fP \s+1\fBThe effect of inflation on cluster granularity\&.\fP\s-1 The main handle for changing inflation is the \fB-I\fP option\&. This is also \fIthe\fP principal handle for regulating cluster granularity\&. Unless you are mangling huge graphs it could be the only \fBmcl\fP option you ever need besides the output redirection option \fB-o\fP\&. Increasing the value of \fB-I\fP will increase cluster granularity\&. Conceivable values are from 1\&.1 to 10\&.0 or so, but the range of suitable values will certainly depend on your input graph\&. For many graphs, 1\&.1 will be far too low, and for many other graphs, 8\&.0 will be far too high\&. You will have to find the right value or range of values by experimenting, using your judgment, and using measurement tools such as \fBclm dist\fP and \fBclm info\fP\&. A good set of values to start with is 1\&.4, 2 and 6\&. .ZB 1m \fB7\&.3\fP \s+1\fBThe effect of node degrees on cluster granularity\&.\fP\s-1 Preferably the network should not have nodes of very high degree, that is, with exorbitantly many neighbours\&. Such nodes tend to obscure cluster structure and contribute to coarse clusters\&. The ways to combat this using \fBmcl\fP and sibling programs are documented in \fBclmprotocols(5)\fP\&. Briefly, they are the transformations \fC#knn()\fP and \fC#ceilnb()\fP available to \fBmcl\fP, \fBmcx alter\fP and several more programs\&. .ZB 1m \fB7\&.4\fP \s+1\fBThe effect of edge weight differentiation on cluster granularity\&.\fP\s-1 How similarities in the input graph were derived, constructed, adapted, filtered (et cetera) will affect cluster granularity\&. It is important that the similarities are honest; refer to \fIfaq\ \&3\&.8\fP\&. Another issue is that homogeneous similarities tend to result in more coarse-grained clusterings\&. You can make a set of similarities more homogeneous by applying some function to all of them, e\&.g\&. for all pairs of nodes (x y) replace S(x,y) by the square root, the logarithm, or some other convex function\&. Note that you need not worry about scaling, i\&.e\&. the possibly large changes in magnitude of the similarities\&. MCL is not affected by absolute magnitudes, it is only affected by magnitudes taken relative to each other\&. As of version 03-154, mcl supports the pre-inflation \fB-pi\fP\ \&\fIf\fP option\&. Make a graph more homogeneous with respect to the weight function by using \fB-pi\fP with argument \fIf\fP somewhere in the interval [0,1] \- 0\&.5 can be considered a reasonable first try\&. Make it less homogeneous by setting \fIf\fP somewhere in the interval [1,10]\&. In this case 3 is a reasonable starting point\&. .ce \s+2\fBImplementing the MCL algorithm\fP\s-2 .ZB 1m \fB8\&.1\fP \s+1\fBHow easy is it to implement the MCL algorithm?\fP\s-1 Very easy, if you will be doing small graphs only, say up to a few thousand entries at most\&. These are the basic ingredients: .ZI 2m "o" Adding loops to the input graph, conversion to a stochastic matrix\&. .in -2m .ZI 2m "o" Matrix multiplication and matrix inflation\&. .in -2m .ZI 2m "o" The interpretation function mapping MCL limits onto clusterings\&. .in -2m These must be wrapped in a program that does graph input and cluster output, alternates multiplication (i\&.e\&. expansion) and inflation in a loop, monitors the matrix iterands thus found, quits the loop when convergence is detected, and interprets the last iterand\&. Implementing matrix muliplication is a standard exercise\&. Implementing inflation is nearly trivial\&. The hardest part may actually be the interpretation function, because you need to cover the corner cases of overlap and attractor systems of cardinality greater than one\&. Note that MCL does not use intricate and expensive operations such as matrix inversion or matrix reductions\&. In Mathematica or Maple, mcl should be doable in at most 100 lines of code\&. For perl you may need twice that amount\&. In lower level languages such as C or Fortran a basic MCL program may need a few hundred lines, but the largest part will probably be input/output and interpretation\&. To illustrate all these points, mcl now ships with \fIminimcl\fP, a small perl script that implements mcl for educational purposes\&. Its structure is very simple and should be easy to follow\&. Implementing the basic MCL algorithm makes a nice programming exercise\&. However, if you need an implementation that scales to several hundreds of thousands of nodes and possibly beyond, then your duties become much heavier\&. This is because one needs to prune MCL iterands (c\&.q\&. matrices) such that they remain sparse\&. This must be done carefully and preferably in such a way that a trade-off between speed, memory usage, and potential losses or gains in accuracy can be controlled via monitoring and logging of relevant characteristics\&. Some other points are i) support for threading via pthreads, openMP, or some other parallel programming API\&. ii) a robust and generic interpretation function is written in terms of weakly connected components\&. .ce \s+2\fBCluster overlap / MCL iterand cluster interpretation\fP\s-2 .ZB 1m \fB9\&.1\fP \s+1\fBIntroduction\fP\s-1 A natural mapping exists of MCL iterands to DAGs (directed acyclic graphs)\&. This is because MCL iterands are generally \fIdiagonally positive semi-definite\fP \- see [3]\&. Such a DAG can be interpreted as a clustering, simply by taking as cores all endnodes (sinks) of the DAG, and by attaching to each core all the nodes that reach it\&. This procedure may result in clusterings containing overlap\&. In the MCL limit, the associated DAG has in general a very degenerated form, which induces overlap only on very rare occasions (see \fIfaq entry 9\&.2\fP)\&. Interpreting \fBmcl\fP iterands as clusterings may well be interesting\&. Few experiments have been done so far\&. It is clear though that early iterands generally contain the most overlap (when interpreted as clusterings)\&. Overlap dissappears soon as the iterand index increases\&. For more information, consult the other entries in this section and the \fBclmimac manual page\fP\&. .ZB 1m \fB9\&.2\fP \s+1\fBCan the clusterings returned by mcl contain overlap?\fP\s-1 No\&. Clusterings resulting from the abstract MCL algorithm may in theory contain overlap, but the default behaviour in \fBmcl\fP is to remove it should it occur, by allocating the nodes in overlap to the first cluster in which they are seen\&. \fBmcl\fP will warn you if this occurs\&. This behaviour is switched off by supplying \fB--keep-overlap=yes\fP\&. Do note that overlap is mostly a theoretical possibility\&. It is conjectured that it requires the presence of very strong symmetries in the input graph, to the extent that there \fIexists an automorphism of the input graph mapping the overlapping part onto itself\fP\&. It is possible to construct (highly symmetric) input graphs leading to cluster overlap\&. Examples of overlap in which a few nodes are involved are easy to construct; examples with many nodes are exceptionally hard to construct\&. Clusterings associated with intermediate/early MCL iterands may very well contain overlap, see the \fIintroduction in this section\fP and other entries\&. .ZB 1m \fB9\&.3\fP \s+1\fBHow do I obtain the clusterings associated with MCL iterands?\fP\s-1 There are two options\&. If you are interested in clusterings containing overlap, you should go for the second\&. If not, use the first, but beware that the resulting clusterings may contain overlap\&. The first solution is to use \fB-dump\fP\ \&\fBcls\fP (probably in conjunction with either \fB-L\fP or \fB-dumpi\fP in order to limit the number of matrices written)\&. This will cause \fBmcl\fP to write the clustering generically associated with each iterand to file\&. The \fB-dumpstem\fP option may be convenient as well\&. The second solution is to use the \fB-dump\fP\ \&\fBite\fP option (\fB-dumpi\fP and \fB-dumpstem\fP may be of use again)\&. This will cause \fBmcl\fP to write the intermediate iterands to file\&. After that, you can apply \fBclm imac\fP (interpret matrix as clustering) to those iterands\&. \fBclm imac\fP has a \fB-strict\fP parameter which affects the mapping of matrices to clusterings\&. It takes a value between 0\&.0 and 1\&.0 as argument\&. The default is 0\&.001 and corresponds with promoting overlap\&. Increasing the \fB-strict\fP value will generally result in clusterings containing less overlap\&. This will have the largest effect for early iterands; its effect will diminish as the iterand index increases\&. When set to 0, the \fB-strict\fP parameter results in the clustering associated with the DAG associated with an MCL iterand as described in [3]\&. This DAG is pruned (thus possibly resulting in less overlap in the clustering) by increasing the \fB-strict\fP parameter\&. [add] .ce \s+2\fBMiscellaneous\fP\s-2 .ZB 1m \fB10\&.1\fP \s+1\fBHow do I find the default settings of mcl?\fP\s-1 Use \fB-z\fP to find out the actual settings - it shows the settings as resulting from the command line options (e\&.g\&. the default settings if no other options are given)\&. .ZB 1m \fB10\&.2\fP \s+1\fBWhat\&'s next?\fP\s-1 I\&'d like to port MCL to cluster computing, using one of the PVM, MPI, or openMP frameworks\&. For the 1\&.002 release, mcl\&'s internals were rewritten to allow more general matrix computations\&. Among other things, mcl\&'s data structures and primitive operations are now more suited to be employed in a distributed computing environment\&. However, much remains to be done before mcl can operate in such an environment\&. If you feel that mcl should support some other standard matrix format, let us know\&. .SH BUGS This FAQ tries to compromise between being concise and comprehensive\&. The collection of answers should preferably cover the universe of questions at a pleasant level of semantic granularity without too much overlap\&. It should offer value to people interested in clustering but without sound mathematical training\&. Therefore, if this FAQ has not failed somewhere, it must have failed\&. Send criticism and missing questions for consideration to mcl-faq at micans\&.org\&. .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl\&'s home at http://micans\&.org/mcl/\&. .SH REFERENCES [1] Stijn van Dongen\&. \fIGraph Clustering by Flow Simulation\fP\&. PhD thesis, University of Utrecht, May 2000\&. .br http://www\&.library\&.uu\&.nl/digiarchief/dip/diss/1895620/inhoud\&.htm [2] Stijn van Dongen\&. \fIA cluster algorithm for graphs\fP\&. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000\&. .br http://www\&.cwi\&.nl/ftp/CWIreports/INS/INS-R0010\&.ps\&.Z [3] Stijn van Dongen\&. \fIA stochastic uncoupling process for graphs\fP\&. Technical Report INS-R0011, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000\&. .br http://www\&.cwi\&.nl/ftp/CWIreports/INS/INS-R0011\&.ps\&.Z [4] Stijn van Dongen\&. \fIPerformance criteria for graph clustering and Markov cluster experiments\fP\&. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000\&. .br http://www\&.cwi\&.nl/ftp/CWIreports/INS/INS-R0012\&.ps\&.Z [5] Enright A\&.J\&., Van Dongen S\&., Ouzounis C\&.A\&. \fIAn efficient algorithm for large-scale detection of protein families\fP, Nucleic Acids Research 30(7):1575-1584 (2002)\&. .SH NOTES This page was generated from \fBZOEM\fP manual macros, http://micans\&.org/zoem\&. Both html and roff pages can be created from the same source without having to bother with all the usual conversion problems, while keeping some level of sophistication in the typesetting\&. mcl-12-135/doc/mcxarray.azm0000644000402500021140000002404611660752461012413 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxarray} {html_title}{The mcxarray manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcxarray}{Transform array data to MCL matrices} \sec{synopsis}{SYNOPSIS} \par{ \mcxarray [options]} \par{ \mcxarray \synoptopt{-data}{fname}{input data file} \synoptopt{-imx}{fname}{input matrix file} \synoptopt{-co}{num}{(absolute) cutoff for output values (required)} \synoptopt{--pearson}{use Pearson correlation (default)} \synoptopt{--spearman}{use Spearman rank correlation} \synoptopt{-fp}{}{use fingerprint measure} \synoptopt{--dot}{use dot product} \synoptopt{--cosine}{use cosine} \synoptopt{-skipr}{}{skip data rows} \synoptopt{-skipc}{}{skip data columns} \synoptopt{-o}{fname}{output file fname} \synoptopt{-write-tab}{}{write row labels to file} \synoptopt{-l}{}{take labels from column } \synoptopt{-digits}{}{output precision} \synoptopt{--write-binary}{write output in binary format} \synoptopt{-t}{}{use threads} \synoptopt{-J}{}{a total of jobs are used} \synoptopt{-j}{}{this job has index } \synoptopt{-start}{}{start at column inclusive} \synoptopt{-end}{}{end at column EXclusive} \synoptopt{--transpose}{work with the transposed data matrix} \synoptopt{--rank-transform}{rank transform the data first} \synoptopt{-tf}{spec}{transform result network} \synoptopt{-table-tf}{spec}{transform input table before processing} \synoptopt{-n}{mode}{normalize input} \synoptopt{--zero-as-na}{treat zeroes as missing data} \synoptopt{-write-data}{}{write data to file} \synoptopt{-write-na}{}{write NA matrix to file} \synoptopt{--job-info}{print index ranges for this job} \synoptopt{--help}{print this help} \synoptopt{-h}{print this help} \synoptopt{--version}{print version information} } \sec{description}{DESCRIPTION} \par{ \mcxarray can either read a flat file containing array data (\genopt{-data}) or a matrix file satisfying the mcl input format (\genopt{-imx}). In the former case it will by default work with the rows as the data vectors. In the latter case it will by default work with the columns as the data vectors (note that mcl matrices are presented as a listing of columns). This can be changed for both using the \optref{--transpose}{\genopt{--transpose} option}. } \par{ The input data may contain missing data in the form of empty columns, NA values (not available/applicable), or NaN values (not a number). The program keeps track of these, and when computing the correlation between two rows or columns ignores all positions where any one of the two has missing data. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-data}{fname}{input data file}} \car{ Specify the data file containing the expression values. It should be tab-separated. } \item{\defopt{-imx}{fname}{input matrix file}} \car{ The expression values are read from a file in mcl matrix format. } \items{ {\defopt{--pearson}{use Pearson correlation (default)}} {\defopt{--spearman}{use Spearman rank correlation}} {\defopt{--cosine}{use cosine}} {\defopt{--dot}{use the dot product}} } \car{ Use one of these to specify the correlation measure. Note that the dot product is not normalised and should only be used with very good reason. } \item{\defopt{-fp}{}{specify fingerprint measure}} \car{Fingerprints are used to define an entity in terms of it having or not having certain traits. This means that a fingerprint can be represented by a boolean vector, and a set of fingerprints can be represented by an array of such vectors. In the presence of many traits and entities the dimensions of such a matrix can grow large. The sparse storage employed by \MCL-edge is ideally suited to this, and mcxarray is ideally suited to the computation of all pairwise comparisons between such fingerprints. Currently mcxarray supports five different types of fingerprint, described below. Given two fingerprints, the number of traits unique to the first is denoted by \it{a}, the number unique to the second is denoted by \it{b}, and the number that they have in common is denoted by \it{c}. } \begin{itemize}{ {flow}{cascade} {interitem}{1} {align}{left} } \item{hamming} \car{The Hamming distance, defined as \it{a}+\it{b}.} \item{tanimoto} \car{The Tanimoto similarity measure, \it{c}/(\it{a}+\it{b}+\it{c}).} \item{cosine} \car{The cosine similarity measure, \it{c}/sqrt((\it{a}+\it{c})*(\it{b}+\it{c})).} \item{meet} \car{Simply the number of shared traits, identical to \it{c}.} \item{cover} \car{A normalised and non-symmetric similarity measure, representing the fraction of traits shared relative to the number of traits by a single entity. This gives the value \it{c}/(\it{a}+\it{c}) in one direction, and the value \it{c}/(\it{b}+\it{c}) in the other. } \end{itemize} \item{\defopt{-skipr}{}{skip data rows}} \car{ Skip the first \genarg{} data rows.} \item{\defopt{-skipc}{}{skip data columns}} \car{ Ignore the first \genarg{} data columns.} \item{\defopt{-l}{}{take labels from column }} \car{ Specifies to construct a tab of labels from this data column. The tab can be written to file using \genoptref{-write-tab}{fname}. } \item{\defopt{-write-tab}{}{write row labels to file}} \car{ Write a tab file. In the simple case where the labels are in the first data column it is sufficient to issue \useopt{-skipc}{1}. If more data columns need to be skipped one must explicitly specify the data column to take labels from with \genopt{-l}{l}. } \items{ {\defopt{-t}{}{use threads}} {\defopt{-J}{}{a total of jobs are used}} {\defopt{-j}{}{this job has index }} } \car{ Computing all pairwise correlations is time-intensive for large input. If you have multiple CPUs available consider using as many threads. Additionally it is possible to spread the computation over multiple jobs/machines. Conceptually, each job takes a number of threads from the total thread pool. Additionally, the number of threads (as specified by \genopt{-t}) currently \it{must be the same for all jobs}, as it is used by each job to infer its own set of tasks. The following set of options, if given to as many commands, defines three jobs, each running four threads. } \verbatim{-t 4 -J 3 -j 0 -t 4 -J 3 -j 1 -t 4 -J 3 -j 2} \items{ {\defopt{--job-info}{print index ranges for this job}} {\defopt{-start}{}{start at column inclusive}} {\defopt{-end}{}{end at column EXclusive}} } \car{ \genopt{--job-info} can be used to list the set of column ranges to be processed by the job as a result of the command line options \genopt{-t}, \genopt{-J}, and \genopt{-j}. If a job has failed, this option can be used to manually split those ranges into finer chunks, each to be processed as a new sub-job specified with \genopt{-start} and \genopt{-end}. With the latter two options, it is impossible to use parallelization of any kind (i.e. any of the \genopt{-t}, \genopt{-J}, and \genopt{-j} options). } \item{\defopt{-o}{fname}{output file fname}} \car{ Output file name.} \item{\defopt{-digits}{}{output precision}} \car{ Specify the precision to use in native interchange format.} \item{\defopt{--write-binary}{write output in binary format}} \car{ Write output matrices in native binary format. } \items{ {\defopt{-co}{num}{(absolute) cutoff for output values}} } \car{ Output values of magnitude smaller than \genarg{num} are removed (set to zero). Thus, negative values are removed only if their positive counterpart is smaller than \genarg{num}. } \item{\defopt{--transpose}{work with the transpose}} \car{ Work with the transpose of the input data matrix.} \item{\defopt{--rank-transform}{rank transform the data first}} \car{ The data is rank-transformed prior to the computation of pairwise measures. } \item{\defopt{-write-data}{}{write data to file}} \car{ This writes the data that was read in to file. If \genopt{--spearman} is specified the data will be rank-transformed. } \item{\defopt{-write-na}{}{write NA matrix to file}} \car{ This writes all positions for which no data was found to file, in native mcl matrix format. } \item{\defopt{--zero-as-na}{treat zeroes as missing data}} \car{ This option can be useful when reading data with the \genopt{-imx} option, for example after it has been loaded from label input by \sibref{mcxload}. An example case is the processing of a large number of probe rankings, where not all rankings contain all probe names. The rankings can be loaded using \sibref{mcxload} with a tab file containing all probe names. Probes that are present in the ranking are given a positive ordinal number reflecting the ranking, and probes that are absent are implicitly given the value zero. With the present option mcxarray will handle the correlation computation in a reasonable way. } \item{\defopt{-n}{mode}{normalization mode}} \car{ If \genarg{mode} is set to \usearg{z} the data will be normalized based on z-score. No other modes are currently supported.} \items{ {\defopt{-tf}{spec}{transform result network}} {\defopt{-table-tf}{spec}{transform input table before processing}} } \car{ The transformation syntax is described in \mysib{mcxio}. } \items{ {\defopt{--help}{print help}} {\defopt{-h}{print help}} } \item{\defopt{--version}{print version information}} \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen.} \sec{seealso}{SEE ALSO} \par{ \mysib{mcl}, \mysib{mclfaq}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \end{pud::man} mcl-12-135/doc/mcxalter.ps0000644000402500021140000002145611754271043012235 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:15 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 1 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE /Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.125<6d6378616c7465722831292055534552>20 48 R 142.625<434f4d4d414e4453206d6378616c746572283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0 <6d6378616c74657220ad2076>100 96 Q<6172696f7573206e657477>-.25 E <6f726b207472616e73666f726d6174696f6e73>-.1 E F1<53594e4f50534953>20 112.8 Q/F2 10/Times-Bold@0 SF 2.043<6d6378616c746572205b2d696d78>100 124.8 R F0 2.043<3c666e616d653e2028>4.543 F/F3 10/Times-Italic@0 SF 2.043<73706563696679206d617472697820696e707574>B F0<29>A F2 4.543<5d5b>C <2d616263>-4.543 E F0 2.043<3c666e616d653e2028>4.543 F F3 2.042 <73706563696679206c6162656c20696e707574>B F0<29>A F2 4.542<5d5b>C <2d746162>-4.542 E F0<3c666e616d653e2028>100 136.8 Q F3 <75736520746162208c6c65>A F0<29>A F2 2.5<5d5b>C<2d6f>-2.5 E F0 <3c666e616d653e2028>2.5 E F3<6f7574707574>A F0<29>A F2 2.5<5d5b>C <2d7466>-2.5 E F0<737065632028>2.5 E F3 <6170706c792074662d7370656320746f20696e707574206d6174726978>A F0<29>A F2 <5d>A F1<4445534352495054494f4e>20 153.6 Q F0 <54686973207574696c69747920737570706c6965732076>100 165.6 Q <6172696f7573207472616e73666f726d6174696f6e73206f66206e657477>-.25 E <6f726b732e>-.1 E F1<4f5054494f4e53>20 182.4 Q F2<2d616263>100 194.4 Q F0<3c666e616d653e2028>2.5 E F3<6c6162656c20696e707574>A F0<29>A<54686520 8c6c65206e616d6520666f7220696e707574207468617420697320696e206c6162656c20 666f726d61742e>120 206.4 Q F2<2d696d78>100 230.4 Q F0 <3c666e616d653e2028>2.5 E F3<696e707574206d6174726978>A F0<29>A<54686520 8c6c65206e616d6520666f7220696e707574207468617420697320696e206d636c206e61 7469>120 242.4 Q .3 -.15<7665206d>-.25 H<617472697820666f726d61742e>.15 E F2<2d746162>100 266.4 Q F0<3c666e616d653e2028>2.5 E F3 <75736520746162208c6c65>A F0<29>A .479<54686973206f7074696f6e2063617573 657320746865206f757470757420746f206265207072696e746564207769746820746865 206c6162656c7320666f756e6420696e2074686520746162208c6c652e>120 278.4 R -.4<5769>5.479 G<7468>.4 E F2<2d616263>2.979 E F0 .82 <74686973206f7074696f6e2077696c6c2c206164646974696f6e616c6c79>120 290.4 R 3.32<2c63>-.65 G .819<6f6e7374727563742061206772617068206f6e6c79206f6e 20746865206c6162656c7320666f756e6420696e2074686520746162208c6c652e>-3.32 F<4966>5.819 E 1.59<74686973206f7074696f6e206973207573656420696e20636f6e 6a756e6374696f6e2077697468>120 302.4 R F2<2d696d78>4.09 E F0 1.59<746865 2074616220646f6d61696e20616e6420746865206d617472697820646f6d61696e206172 65>4.09 F<726571756972656420746f206265206964656e746963616c2e>120 314.4 Q F2<2d7466>100 338.4 Q F0<3c74662d737065633e2028>2.5 E F3<7472>A <616e73666f726d20696e707574206d61747269782076616c756573>-.15 E F0<29>A -.35<5472>120 350.4 S <616e73666f726d2074686520696e707574206d61747269782076>.35 E<616c75657320 6163636f7264696e6720746f207468652073796e7461782064657363726962656420696e> -.25 E F2<6d6378696f283529>2.5 E F0<2e>A F2<2d6f>100 374.4 Q F0 <666e616d652028>2.5 E F3<6f7574707574208c6c65>A F0<29>A <4f7574707574208c6c652e>120 386.4 Q F1 -.548<4155>20 403.2 S<54484f52> .548 E F0<5374696a6e2076>100 415.2 Q<616e20446f6e67656e2e>-.25 E F1 <53454520414c534f>20 432 Q F2<6d6378696f283529>100 444 Q F0<2c>A F2 <6d6378283129>2.873 E F0<2c>A F2<6d637873756273283129>2.873 E F0 2.873 <2c61>C<6e64>-2.873 E F2<6d636c66616d696c79283729>2.873 E F0 .373 <666f7220616e206f>2.873 F -.15<7665>-.15 G<72766965>.15 E 2.872<776f> -.25 G 2.872<6661>-2.872 G .372 <6c6c2074686520646f63756d656e746174696f6e20616e64>-2.872 F <746865207574696c697469657320696e20746865206d636c2066>100 456 Q <616d696c792e>-.1 E<6d6378616c7465722031322d313335>20 768 Q <3134204d61792032303132>141.515 E<31>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxsubs.azm0000644000402500021140000005216311322637753012253 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxsubs} {html_title}{The mcxsubs manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcxsubs}{extract submatrices (subgraphs) of a matrix (graph).} \par{ \mcxsubs can be used to inspect local cluster structure in a graph, for example by looking at the subgraph induced by a single cluster or a couple of clusterings, or the edge set where all tail nodes are from a set of domains and all head nodes are from the complement of this set, and many other variants and refinements. } \par{ Additionally, mcxsubs enables } \begin{itemize}{{interitem}{0}{flow}{compact}} \item \car{ selecting matrix entries based on value. } \item \car{ making the result characteristic (set all nonzero values to 1.0). } \item \car{ pruning empty columns and empty rows. } \item \car{ transposing the result. } \item \car{ remapping the indices of the result to consecutive indices. } \item \car{ and other miscellaneous operations. } \end{itemize} \sec{synopsis}{SYNOPSIS} \par{ \mcxsubs \bf{-imx} [options] + } \par{ \mcxsubs \synreqopt{-imx}{}{input matrix} \synoptopt{-dom}{}{domain matrix} \shared_synoptopt{-tf} \synoptopt{--block}{use block matrix} \synoptopt{--blockc}{use complement of block matrix} \synoptopt{--skin-read}{read domain structure without entries} \synoptopt{--extend}{read extended submatrices} \synoptopt{-tab}{read tab file} \synoptopt{--from-disk}{space/speed optimizer} \synoptopt{-out}{}{special purpose output file name} \synoptopt{-efac}{}{random edge selection} \synoptopt{-dfac}{}{random domain selection} \synoptopt{-rfac}{}{random column selection} \synoptopt{-cfac}{}{random row selection} \synoptopt{--rand-discard}{remove random selections} \synoptopt{--rand-merge}{merge random selections} \synoptopt{--rand-intersect}{intersect random selections} \synoptopt{--rand-exclusive}{only random selections} \synoptopt{-tag-digits}{k}{set precision} \synoptopt{--tag}{tag nodes} + } \par{ If you are a frequent \mcxsubs user with very large graphs, consider converting the input matrix into binary format using \mcxconvert and then using the mcxsubs \genopt{--from-disk} option. This should give you a 400-fold speed gain. } \sec{description}{DESCRIPTION} \par{ \mcxsubs lets you extract submatrices/subgraphs corresponding with index sets and (possibly) sets of domains from a given domain matrix (e.g. a matrix representing a clustering). Columns and rows of the target submatrix can be specified both independently and simultaneously, and can be specified as unions of simple index and domain ranges and complements of these. } \par{ Because a submatrix or subgraph specification is composed of type, location, column, row, index, and set specifications, the word specification is abbreviated as spec. Multiple submatrices can be specified simultaneously. A submatrix is created for each submatrix spec. Everything encountered after the \mcxsubs options are exhausted should be a spec. The syntax of specs is described in the \secref{spec} section. By default, the domains of the submatrix will be set to the domains as described in the specification. This can be changed using the \it{uni} directives from the \bf{fin} part. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-imx}{}{input matrix}} \car{ Submatrices will all be selected from the matrix in file \v{}. This option is obligatory, and throughout this manual its argument is called the \it{source matrix}. } \item{\defopt{-dom}{}{domain matrix}} \car{ Submatrices are specified in terms of sets (or domains) of indices. These sets are specified by (the label of) the vectors from the matrix given by this options. } \item{\defopt{--block}{use block matrix}} \car{ This replaces the input matrix by the block diagonal matrix induced by the domain matrix specified by the \genopt{-dom} option. It works by including a block for each domain in the domain matrix, and will work if there are overlapping domains. That is, it will not include overlapping parts more than once. The output file name can either be specified in the submatrix specification language using the \bf{out}(\it{fname}) directive, or with the \genopt{-out} option. } \item{\defopt{--blockc}{use complement of block matrix}} \car{ This replaces the input matrix by the complement of the block diagonal matrix described above, and selection of the output name is exactly the same. } \item{\defopt{--skin-read}{read domain structure without entries}} \car{ This reads a skeleton matrix by only considering its domain structure and not reading any entries, pertaining to the matrix specified by the \genopt{-imx} option. } \shared_defopt{-tf} \item{\defopt{-tab}{read tab file}} \car{ Read a tab file. Its domain can be used by the \v{t} and \v{T} indicators. } \item{\defopt{--extend}{read extended submatrices}} \car{ This causes the selection of submatrices where either a row index is in the selected row domain or a columns index is in the selected column domain or both. Equivalently it only excludes matrix entries for which neither the column nor row index is in the selected domains. The resulting matrix has both domains equal to the source matrix. } \item{\defopt{-out}{}{special purpose output file name}} \car{ This specifies an output name that can be used for special purposes. Normally, output file names are specified in the submatrix specification using the \bf{out}(\it{fname}) directive. } \item{\defopt{-efac}{}{random edge selection}} \car{ \genarg{num} should be inbetween zero and one. It denotes the probability with which each edge is selected. } \item{\defopt{-dfac}{}{random domain selection}} \car{ \genarg{num} should be inbetween zero and one. It denotes the probability with which entries in the domains will make it into the randomized selection used for subsequent processing. By default the randomized selection is intersected with whatever the other selection criteria (if any) yield, i.e. the behaviour under the \genopt{--rand-intersect} option. } \par{ If the column and row domain are identical, they are submitted to the same selection process and will end up identical. If you don't want this, use \genopt{-rfac} and \genopt{-cfac} separately. } \par{ If you just want a randomized selection, doing} \verbatim{mcxsubs -imx foo -dfac 0.5 'out(foo.rnd)'} \car{ will not yield the expected result. Randomized selections only work if a domain has explicitly been specified. The minimal way to achieve this is the following:} \verbatim{mcxsubs -imx foo -dfac 0.5 'dom(cr), out(foo.rnd)'} \item{\defopt{-rfac}{}{random column selection}} \car{ As \genopt{-dfac}, limited to the column domain. } \item{\defopt{-cfac}{}{random row selection}} \car{ As \genopt{-dfac}, limited to the row domain. } \item{\defopt{--rand-merge}{merge random selections}} \car{ The random selection(s) of domains identify parts of the matrix that will be merged with the result of the main selection process (default). } \item{\defopt{--rand-discard}{remove random selections}} \car{ The random selection(s) of domains identify parts of the matrix that will be removed from the result of the main selection process. } \item{\defopt{--rand-intersect}{intersect random selections}} \car{ The random selection(s) of domains identify parts of the matrix that will be intersected with the result of the main selection process. This is the default. } \item{\defopt{--rand-exclusive}{only random selections}} \car{ The random selection(s) of domains identify parts of the matrix from which the result of the main selection process will be removed. } \item{\defopt{-tag-digits}{k}{set precision}} \car{ Sets the precision for tagged output. Setting it to \useopt{-tag-digits}{-1} disables the output of values altogether \- only the node indices and the cluster indices are written. } \item{\defopt{--tag}{tag nodes}} \car{ Each node in the column (tail node) listing of the matrix (graph) spec is tagged with the domain it is in. This requires the use of the \genopt{-dom} option. This output mode, called \it{tagged matrix}, is currently not recognized by any of the \mcl/\mcx input routines. It is present to facilitate easier visual inspection of clustering results. } \item{\defopt{--from-disk}{space/speed optimizer}} \car{ Use this if the input graph is in binary format, or if the input graph is very large and the subgraph(s) to extract are small in comparison, or if the available memory does not comfortably exceed the size of the graph. } \par{ The effect of this option is that the subgraph will be read directly from disk, without reading in the entire graph in advance. This will be done repeatedly for all subgraphs that are specified. } \par{ This option reduces memory consumption to the size of the subgraph(s) to be extracted. } \par{ For graphs in interchange format, the speed gain is not dramatic. If more than one subgraph is specified, there will most likely be a loss in speed. } \par{ With input graphs in binary format, \mcxsubs will be *very* much faster, to the extent of 400-fold speed gains. It does not matter whether more than one subgraph is specified. } \end{itemize} \sec{spec}{SUBMATRIX SPECIFICATIONS} \par{ A submatrix or subgraph spec may contain a number of spec parts. Each part is specified in a function-style notation. Different parts are separated by commas. Parts may occur multiple times, but for most parts only the last one specified will be effective. The spec parts are the following: \bf{dom}, \bf{ext}, \bf{val}, \bf{size}, \bf{fin}, and \bf{out}. These are described below in the sections DOMAINS, EXTENSION, VALUES, SIZE, FINALIZE and OUTPUT. } \cpar{DOMAINS}{ The domain part is specified as } \par{ \bf{dom}(\it{X} <, \it{Y}(\it{ispec}) >+) } \par{ Here \it{X} is the row/column indicator. Rows are indicated with either \v{r} or \v{R}, columns are indicated with either \v{c} or \v{C}. \it{X} may contain one or two indicators, with a single indicator per column domain and row domain allowed. Uppercase indicators indicate that the complement is being specified relative to the corresponding domain in the target matrix. } \par{ \it{Y} is the type indicator, it is exactly one of \v{i}, \v{I}, \v{d}, \v{D}, \v{c}, \v{r}, \v{t}, or \v{T}. The \v{i/I} indicators specify that \it{ispec} contains a simple index specifation. The \v{d/D} specify that \it{ispec} contains domain indices. \it{ispec} must contain a comma-separated list of integers or integer ranges (e.g. 2, 5, 4-8). \v{c} and \v{r} are restricted indicators that refer to the domains in the \it{domain matrix}. \v{t} and \v{T} are restricted indicators that refer to the domain encoded in the tab file as specified by the \genopt{-tab} option. Their usage is described further below. } \par{ For domain specifications (\v{d/D}) the columns indexed by these integers in the matrix specified in the \genopt{-dom} option will be fetched and merged. If \genopt{-dom} was not used the target matrix itself (as specified by the \genopt{-imx} option) will be used. For simple specifications (\v{i/I}) the result is simply the list of integers itself. Uppercase indicators indicate that the complement is being specified. } \par{Examples:} \begin{itemize}{\mcx_itemopts} \item{\v{dom(cr, i(0-6,10,11-14))}} \car{ Principal submatrix on indices 0-6, 10, and 11-14 \- all column and row indices are from this set. Equivalently, this encodes the subgraph on nodes 0-6, 10, 11-14. The 'c' stands for column, the 'r' for row, and the 'i' for index. It is also possible to specify a 'd' part (standing for domain), this is shown further below. } \item{\v{dom(c, i(0-6,10,11-14)), dom(r, i(1-6,10,11-14))}} \car{ Equivalent (but less clear) spec of the above. } \item{\v{dom(cR, i(0-6,10,11-14))}} \car{ Matrix with column indices in 0-6, 10, 11-14, and row indices in the complement of this set. Corresponds with all edges going \it{out} from the set 0-6, 10, 11-14. Complements are triggered by the use of a capital; see the next examples. } \items{ {\v{dom(c, i(0-6,10,11-14)), dom(R, i(1-6,10,11-14))}} {\v{dom(c, i(0-6,10,11-14)), dom(r, I(1-6,10,11-14))}} } \car{ Both these examples are equivalent to the previous one. In the last example, the capital 'I' indicates that the complement should be taken. In this example, 'r' combined with 'I' has the same effect as 'R' combined with 'i'. } \item{\v{dom(c, d(3,5-9)), dom(r, d(8-14), i(10-30))}} \car{ Column indices are taken from the domains 3, 5-9 (from the domain matrix specified by \genopt{-dom}), row indices are taken from domains 8-14 plus the indices 10-30. } \item{\v{dom(cR, d(0-2))}} \car{ Column indices are all indices from domains 0-2, row indices are all other indices. This gives all edges going \it{out} from domains 0-2. } \par{ The use of 'D' is analogous to that of 'C', 'R', and 'I'. Thus, \v{D(0-3,8,21-30)} specifies all indices which are in the complement of the set formed by taking the union of domains 0-3,8,21-30. } \""{ There are two special domains \- use \v{-1} to obtain the row domain of the domain matrix, use \v{-2} to obtain its column domain. } \end{itemize} \par{ The \v{c} and \v{r} indicators must be followed by a pair of matching parentheses. They specify to take respectively the column domain and the row domain of the domain matrix (cf. \genoptref{-dom}). } \par{ The \v{t} and \v{T} indicators must be followed by a pair of matching parentheses. They specify to take the domain found in the tab file or its complement. } \par{ As seen above, indices (either representing themselves or domains) are entered as comma-separated lists of single indices, ranges of indices (which may overlap), or staircases of indices (lists of indices with a fixed increment inbetween successive indices). The union of the corresponding elements is taken and passed along. Before anything else, the result set is replaced by its complement if 'I' is specified (for simple indices) or 'D' is specified (for domains). If there is both an index and a set spec string, the union of the results of both is taken and passed along. If the latter result is passed to either 'C' or 'R', it is replaced by its complement. } \par{ A range is specified e.g. as \v{10-14} and it is inclusive, denoting in this case the indices \v{{10,11,12,13,14}}. } \""{ \par{ If a column or row spec is missing, it is implicitly understood that \it{all} nodes should be taken for the missing type. A totally empty type spec (which is the case if the first character in the spec is the colon) indicates that the subgraph on all nodes must be taken, which is identical to the original graph. As an aside, this empty type spec renders any location spec useless, as it is ignored. This behaviour may still be useful in conjunction with the \genopt{--tag} option. } } \cpar{EXTENSION}{ The extension part is specified as } \par{ \bf{ext}( < \bf{disc}(\it{k}) | \bf{cdisc}(\it{k}) | \bf{rdisc}(\it{k}) >) } \par{ This option requires the input matrix to be held in memory. This implies it will not work with the \genopt{--from-disk} option.} \par{ This \it{assumes that the input matrix encodes a graph}, so the column and row domains must be equal. It will take the currently selected domain (column domain for \bf{disc} and \bf{cdisc}, row domain for \bf{rdisc}), and add all nodes to it that are reachable in \it{k} steps. The \bf{disc} variant replaces both column and row domains by the extended domain, the other variants just change a single domain. } \par{ Setting \it{k} to \v{-1} results in adding \it{all} nodes that can be reached from the start domain. } \cpar{VALUES}{ The value part is specified as } \par{ \bf{val}()} \par{ It transforms or removes values according to \it{}. \: fixme, anchor #transform Refer to \mysib{mcxio} for a description of the transformation specification syntax and the available transformation primitives.} \cpar{SIZE}{ The size part is specified as } \par{ \bf{size}( < \:/ \bf{lt}(\it{x}) | \:/ \bf{ceil}(\it{x}) | \:/ \bf{gq}(\it{x}) | \:/ \bf{rmgq}(\it{x}) \:/ > + ) } \par{ Where \it{x} is a nonnegative integer, and multiple specifications are separated by commas. The strings 'lt', 'lq', 'gq', 'gt', respectively denote \it{less than}, \it{less than or equal to}, \it{greater than or equal to}, and \it{greater than}. } \par{ This prunes or removes column vectors based on their size. If \bf{lt} is used, column vectors are removed if the number of entries exceeds the specified bound. If \bf{gq} is used, vectors are discarded if the number of entries is smaller than the specified bound. If a column vector has an excess of entries over the bound specified by \bf{ceil}, the smallest entries are removed. Ties are not arbitrarily broken, implying that the resulting vector may still have more entries than the specified bound.} \cpar{FINALIZE}{ The finalize part is specified as \bf{fin}( < \it{key} > ) where \it{key} is a string and multiple keys are separated by commas. The corresponding actions are generally applied to the matrix that was extracted according to the domain and value specifications. Exceptions are indicated below. Currently, there is a fixed order in which actions are considered, corresponding with the order in which they are listed below. } \begin{itemize}{\mcx_itemopts} \item{skel} This creates an empty submatrix on the specified domains, and does \it{not} fill it with the corresponding entries from the \optref{-imx}{source matrix}. Options from the \bf{fin} part that affect the column and row domains of a matrix will still be in effect. \items{{uni}{unir}{unic}} After the submatrix is selected from the source matrix, its domains are changed to mirror one or both of the domains of the source matrix. \item{tp} The resulting submatrix is replaced by its transpose. \item{cc} The resulting submatrix is made characteristic. \items{{scrubc}{scrubr}{scrubg}{scrub}} Domains are shrunk if there are no corresponding entries in the matrix. This is done for both domains if \v{scrub} is specified, for the column domain if \v{scrubc} is specified, and for the row domain if \v{scrubr} is specified. Thus, with \v{scrubc} columns are removed from the domain and the matrix if they are empty. With \v{scrubg} the union of the resulting domains is taken. \items{{mapc}{mapr}{map}} The appropriate domains are mapped onto consecutive indices starting at zero. \end{itemize} \""{ \items{{dmerge}{dmeet}{dcar}{drac}{dcxr}{drxc}{dcir}{dric}} Selects a matrix by transforming the domains relative to each other. The directives and their consequences are listed below. \begin{itemize}{{w1}{7}{compact}{1}{contiguous}{1}} \item{dmerge} the domains are merged. \item{dmeet} the domains are intersected. \item{dcar} column domain assimilates row domain. \item{drac} row domain assimilates column domain. \item{dcxr} column domain has row domain excluded. \item{drxc} row domain has column domain excluded. \item{dcir} column domain is intersected with row domain. \item{dric} row domain is intersected with column domain. \end{itemize} } \cpar{OUTPUT}{ The output part is specified as \bf{out}( \it{fname} <, \it{key} >* ) that is, the \it{fname} option is obligatory if the \bf{out} part is specified. Currently, key can be a single directive, namely \bf{wb} specifying that the resulting matrix should be output in binary format. } \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mcx}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} \done \synoptopt {--spec-doms}{use specified domains} \synoptopt {--spec-cols}{use specified column domain} \synoptopt {--spec-rows}{use specified row domain} \item{\defopt {--spec-doms}{use specified domains}} By default, the initial submatrix has its domains restricted to be subdomains of the input matrix. This option overrides that behaviour, so that the submatrix domains will, at the initial selection stage, be identical to the domains resulting from the specificiation process. \item{\defopt {--spec-cols}{use specified column domain}} See the \genopt{--spec-doms} option above. \item{\defopt {--spec-rows}{use specified row domain}} See the \genopt{--spec-doms} option above. mcl-12-135/doc/mcxio.azm0000644000402500021140000005527011401214773011677 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxio} {html_title}{The mcl matrix format specification} {author}{Stijn van Dongen} {section}{5} {synstyle}{long} {defstyle}{long} \man_share } \: Other information can be stored in the header, \mcl cares only about \: keys it recognizes. Note that other keys might become meaningful in \: the future though. \: stretch over more than one line. \sec{*}{name}{NAME} \NAME{mcxio}{the format specifications for input and output in the mcl family.} \sec{*}{description}{DESCRIPTION} \car{ The primary objects in the MCL network analysis suite are graphs and clusterings. Graphs can be directed and may have loops. Both graphs and clusterings are represented in a general unified format. This format specifies two domains (a \it{source domain} and a \it{destination domain}), along with lists of arcs linking pairs of elements from the two domains. For graphs the two domains are simply both equal to the graph node domain, whereas for clusterings one domain is the graph node domain and the other corresponds to the enumeration of clusters. Undirected graphs are a special instance of a directed graph, where an edge from the undirected graph is represented by two arcs of identical weight, one for each possible direction. } \par{ The general unified format alluded to above is in fact a simple rectangular sparse matrix representation. Sparse means that zero entries in the matrix are not stored. A zero entry corresponds to an ordered node pair in the graph for which no arc exists from the first to the second node. An undirected graph corresponds with a symmetric matrix. } \par{ The MCL suite uses a slight generalisation of the matrix concept, in that the row and column indices (that is, domains) can be arbitrary lists of nonnegative integers. Usually, but not necessarily, a domain of size\~\v{N} will use the common representation of the list of integers starting at\~\v{0} and ending at \~\v{N-1}. The \it{source domain} is always associated with the columns of a matrix, and the \it{destination domain} is always associated with the rows of a matrix. The matrix format, introduced below, first specifies the two domains. It then represents the nonzero matrix entries (corresponding with graph arc weights) in a column-wise fashion, as a list of lists. For each node from the source domain, it presents the list of all its neighbours in the destination domain along with the corresponding weights. This document describes } \begin{itemize}{\mcx_itemopts} \item{\it{native matrix format}} \car{ The format that can be read in by any mcl application expecting a matrix argument. The native format closely resembles the layout of matrices as residing in computer memory. There are two distinct encodings, respectively \it{interchange} and \it{binary}. Their relative merits are described further below. } \item{\it{concatenated native matrix format}} \car{ This always pertains to matrices in native format concatenated in a single file, refered to as a \it{cat file}. It is used for example to encode hierarchical clusterings as generated by \mclcm. A cat file either consists of matrices in interchange format or of matrices in binary format.} \item{\it{raw intermediate format}} \car{ This is read by \mysib{mcxassemble}.} \""{ The two formats (native and raw) are in fact identical at the vector level; they are distinguished by the error reporting implied by the native format.} \item{\it{tab format}} \car{ Used by applications such as \mysib{mcl} and \mysib{mcxdump} to convert between meaningful labels describing the input data and the numerical identifiers used internally.} \item{\it{label format}} \car{ The format used when streaming labels directly into \mysib{mcl} or \mysib{mcxload}.} \item{\it{transformation syntax}} \car{ The syntax accepted by \mysib{mcl}, \mysib{mcxalter} and many other programs to transform graphs and matrices.} \end{itemize} \par{ The interchange format is a portable format that can be transmitted across computers and over networks and will work with any version of mcl or its sibling programs. It is documented (here) and very stable. Applications can easily create matrices in this format. The drawback of interchange format is that for very large graphs matrix encodings grow very big and are slow to read.} \par{ The binary format is \it{not} garantueed to be portable across machines or different versions of mcl or differently compiled versions of mcl. Its distinct advantage is that for very large graphs the speed advantage over interchange format is dramatic.} \par{ Conversion between the two formats is easily achieved with \mcxconvert. Both \mysib{mcl} and \mysib{mcxload} can save a matrix in either format after constructing it from label input.} \par{ The concatenated format is generated e.g. by \mysib{mclcm} and can be transformed by \mysib{mcxdump} using the \genopt{-imx-cat} option. In cat format matrices are simply concatenated, so it is easily generated from the command line if needed. For native binary format it is imperative that no additional bytes are inserted inbetween the matrix encodings. For native interchange format the only requirement is that the last matrix is followed by nothing but white space.} \par{ A remark on the sloppy naming conventions used for \mcl and its sibling utilities may be in order here. The prefix \bf{mcx} is used for generic matrix functionality, the prefix \bf{clm} is used for generic cluster functionaliy. The \it{utility} \mcx is a general purpose interpreter for manipulating matrices (and grahps, sets, and clusterings). The set of all \mcl siblings (cf. \mysib{mclfamily}) is loosely refered to as the mcl family, which makes use of the mcl libraries (rather than the mcx libraries). The full truth is even more horrible, as the mcl/mcx prefix conventions used in the C source code follow still other rules.} \par{ In this document, 'MCL' means 'the mcl setting' or 'the mcl family'. An MCL program is one of the programs in the mcl family. The remainder of this document contains the following sections.} \${html}{\"pud::man::maketoc"} \sec{internal}{Internal representation of matrices in MCL} \par{ There are several aspects to the way in which MCL represents matrices. Internally, indices never act as an ofset in an array, and neither do they participate in ofset computations. This means that they purely act as identifiers. The upshot is that matrices can be handled in which the index domains are \it{non-sequential} (more below). Thus one can work with different graphs and matrices all using subsets of the same set of indices/identifiers. This aids in combining data sets in different ways and easily comparing the respective results when experimenting. Secondly, only \it{nonzero values} (and their corresponding indices) are stored. Thirdly, MCL stores a matrix as a listing of columns. Iterating over a column is trivial; iterating over a row requires a costly transposition computation. The last two points should matter little to the user of MCL programs.} \par{ In textbook expositions and in many matrix manipulation implementations, matrices are represented with sequentially indexed rows and columns, with the indices usually starting at either zero or one. In the MCL setting, the requirement of sequentiality is dropped, and it follows naturally that no requirement is posed on the first index. The only requirement MCL poses on the indices is that they be nonnegative, and can be represented by the integer type used by MCL. On many machines, the largest allowable integer will be 2147483647.} \par{ MCL associates two domains with a matrix\~\v{M}, the row domain and column domain. The matrix\~\v{M} can only have entries\~\v{M[i,j]} where\~\v{i} is in the row domain and\~\v{j} is in the column domain. This is vital when specifying a matrix: it is illegal to specify an entry\~\v{M[i,j]} violating this condition. However, it is not necessary to specify \it{all} entries\~\v{M[i,j]} for all possible combinations of\~\v{i} and\~\v{j}. One needs only specify those entries for which the value is nonzero, and only nonzero values will be stored internally. In the MCL matrix format, the matrix domains must be specified explicitly if they are not canonical (more below).} \par{ \bf{Strictly as an aside}, the domains primarily exist to ensure data integrity. When combining matrices with addition or multiplication (e.g. using the \mcx utility), MCL will happily combine matrices for which the domains do not match, although it will usually issue a warning. Conceptually, matrices auto-expand to the dimensions required for the operation. Alternatively, a matrix can be viewed as an infinite quadrant, with the domains delimiting the parts in which nonzero entries may exist. In the future, facilities could be added to MCL (c.q. \mcx) to allow for placing strict domain requirements on matrices when submitted to binary operations such as addition and multiplication.} \sec{mspec}{Specifying matrices} \par{ From here on, all statements about matrices and graphs are really statements about matrices and graphs \it{in the MCL setting}. The \it{specification} of a matrix quite closely matches the internal representation.} \par{ A matrix M has two domains: the column domain and the row domain. Both simply take the form of a set (represented as an ordered list) of indices. A \it{canonical domain} is a domain of some size \v{K} where the indices are simply the first \v{K} nonnegative integers \v{0,1..,K-1}. The domains dictate which nonzero entries are allowed to occur in a matrix; only entries M[i,j] are allowed where i is in the row domain and j is in the column domain.} \par{ The matrix M is specified in three parts, for which the second is optional. The parts are:} \begin{itemize}{\mcx_itemopts} \item{Header specification} \car{ This specifies the dimensions K and L of the matrix, where K is the size of the row domain, and L is the size of the column domain. It looks as follows:} \verbatix{\:/ (mclheader mcltype matrix dimensions 9x14 )} \car{ This dictates that a matrix will be specified for which the row domain has dimension 9 and the column domain has dimension 14. } \item{Domain specification} \car{ The domain specification can have various forms: if nothing is specified, the matrix will have canonical domains and a canonical representation, similar to the representation encountered in textbooks. Alternatively, the row and column domains can each be specified separately, and it is also possible to specify only one of them; the other will simply be a canonical domain again. Finally, it is possible to declare the two domains identical and specify them simultaneously. It is perfectly legal in each case to explicitly specify a canonical domain. It is \it{required} in each case that the number of indices listed in a domain corresponds with the dimension given in the header.} \par{ An example where both a row domain and a column domain are specified:} \verbatix{\:/ (mclrows 100 200 300 400 500 600 700 800 900 $ ) (mclcols 30 32 34 36 38 40 42 44 46 48 50 52 56 58 $ )} \car{ This example combines with the header given above, as the dimensions fit. Had the row domain specification been omitted, the row domain would automatically be set to the integers \v{0,1,..8}. Had the column specification been omitted, it would be set to \v{0,1,..13}.} \par{ Suppose now that the header did specify the dimensions 10x10. Because the dimensions are identical, this raises the possibility that the domains be identical. A valid way to specify the row domain and column domain in one go is this.} \verbatix{\:/ (mcldoms 11 22 33 44 55 66 77 88 99 100 $ )} \item{Matrix specification} \car{ The matrix specification starts with the sequence} \verbatix{\:/ (mclmatrix begin} \car{ The 'begin' keyword in the '(mclmatrix' part is followed by a list of listings, where the primary list ranges over all column indices in M (i.e. indices in the column domain), and where each secondary lists encodes all positive entries in the corresponding column. A secondary list (or matrix column) starts with the index c of the column, and then contains a listing of all row entries in c (these are matrix entries M[r,c] for varying r). The entry M[r,c] is specified either as 'r' or as 'r:f', where f is a float. In the first case, the entry M[r,c] defaults to 1.0, in the second case, it is set to f. The secondary list is closed with the `$' character. A full fledged examples thus looks as follows:} \verbatix{\:/ (mclheader mcltype matrix dimensions 12x3 ) (mclrows 11 22 33 44 55 66 77 88 99 123 456 2147483647 $ ) (mclcols 0 1 2 $ ) (mclmatrix begin 0 44 88 99 456 2147483647 $ 1 11 66 77 123 $ 2 22 33 55 $ )} \car{ Note that the column domain is canonical; its specifiation could have been omitted. In this example, no values were specified. See below for more.} \end{itemize} \sec{gspec}{Specifying graphs} \car{ A graph is simply a matrix where the row domain is the same as the column domain. Graphs should have positive entries only. Example:} \verbatix{\:/ (mclheader mcltype matrix dimensions 12x12 ) (mcldoms 11 22 33 44 55 66 77 88 99 123 456 2147483647 $ ) (mclmatrix begin 11 22:2 66:3.4 77:3 123:8 $ 22 11:2 33:3.8 55:8.1 $ 33 22:3.8 44:7 55:6.2 $ 44 33:7 88:5.7 99:7.0 456:3 $ 55 22:8.1 33:6.2 77:2.9 88:3.0 $ 66 11:3.4 123:5.1 $ 77 11:3 55:2.9 123:1.5 $ 88 44:5.7 55:3.0 99:3.0 456:4.2 $ 99 44:7.0 88:3.0 456:1.8 2147483647:3.9 $ 123 11:8 66:5.1 77:1.5 $ 456 44:3 88:4.2 99:1.8 2147483647:6.3 $ 2147483647 99:3.9 456:6.3 $ )} \car{ Incidentally, clustering this graph with mcl, using default parameters, yields a cluster that is represented by the 12x3 matrix shown earlier.} \par{ The following example shows the same graph, now represented on a canonical domain, and with all values implicitly set to 1.0:} \verbatix{\:/ (mclheader mcltype matrix dimensions 12x12 ) (mclmatrix begin 0 1 5 6 9 $ 1 0 2 4 $ 2 1 3 4 $ 3 2 7 8 10 $ 4 1 2 6 7 $ 5 0 9 $ 6 0 4 9 $ 7 3 4 8 10 $ 8 3 7 10 11 $ 9 0 5 6 $ 10 3 7 8 11 $ 11 8 10 $ )} \cpar{Additional notes}{ There are few restrictions on the format that one might actually expect. Vectors and entries may occur in any order and need not be sorted. Repeated entries and repeated vectors are allowed but are always discarded while an error message is emitted.} \par{ If you want \it{functionally interesting behaviour} in combining repeated vectors and repeated entries, have a look at the next section and at \mysib{mcxassemble}.} \par{ Within the vector listing, the '#' is a token that introduces a comment until the end of line.} \sec{raw}{Raw format} \par{ A file in \it{raw format} is simply a listing of vectors without any sectioning structure. No header specification, no domain specification, and no matrix introduction syntax is used - these are supplied to the processing application by other means. The end-of-vector token '$' must still be used, and the comment token '#' is still valid. \mysib{mcxassemble} imports a file in raw format, creates a native matrix from the data therein, and writes the matrix to (a different) file. It allows customizable behaviour in how to combine repeated entries and repeated vectors. This is typically used in the following procedure. A) Do a one-pass-parse on some external cooccurrence file/format, generate raw data during the parse and write it to file (without needing to build a huge data structure in memory). B) mcxassemble takes the raw data and assembles it according to instruction into a native mcl matrix.} \sec{tab}{Tab format / label information} \car{ Several mcl programs accept options such as \genopt{-tab}, \genopt{-tabc}, \genopt{-tabr}, \genopt{-use-tab}, \genopt{-strict-tab}, and \genopt{-extend-tab}. The argument to these options is invariably the name of a so-called \it{tab file}. Tab files are used to convert between labels (describing entities in the data) and indices as used in the mcl matrix format. In a tab file each line starts with a unique number which presumably corresponds to an index used in a matrix file. The rest of the line contains a descriptive string associated with the number. It is required that each string is unique, although not all mcl programs enforce this at the time of writing. The string may contain spaces. Lines starting with \v{#} are considered comment and are disregarded. } \cpar{Tab domain}{The ordered set of indices found in the tab file is called the \it{tab domain}.} \par{ Tab files are almost always employed in conjunction with an mcl matrix file. \mysib{mcxdump} and \mysib{clmformat} require by default that the tab domain coincides with the matrix domain (either row or column or both) to which they will be applied. This can be relaxed for either by supplying the \useopt{--lazy-tab} option.} \par{ mcl provides explicit modes for dealing with tab structures by means of the \genopt{-extend-tab}, \genopt{-restrict-tab} and \genopt{-strict-tab} options. Refer to the \mysib{mcl} documentation.} \sec{label}{Label input} \car{ Label input is a line based input where two nodes and an optional value are specified on each line. The nodes should be specified by labels. If the labels contain spaces they should be separated by tabs (and the value if present should be separated from the second label by a tab as well). The parse code will assume tab-separated labels if it sees a tab character in the input, otherwise it will split the input on any kind of whitespace. Any line where the first non-whitespace character is the octothorp (#) is ignored. The following is an example of label input.} \verbatim{---8<------8<------8<------8<------8<--- # the cat and the hat example cat hat 0.2 hat bat 0.16 bat cat 1.0 bat bit 0.125 bit fit 0.25 fit hit 0.5 hit bit 0.16 --->8------>8------>8------>8------>8---} \car{ \mysib{mcl} can read in label input and cluster it when it is given the \genopt{--abc} option. It can optionally save the input graph in native format and save the label information in a tab file with the \genopt{-save-graph} and \genopt{-save-tab} options.} \par{ Refer to the \sibref{mcl}{started}{MCL getting started} and \sibref{mcl}{examples}{MCL manual examples} sections for more information on how MCL deals with label input.} \par{ \mysib{mcxload} is a general purpose program for reading in label data and other stream formats. It encodes them in native mcl format and tab files. It allows intermediate transformations on the values.} \sec{trans}{Transformation syntax} \car{ \mysib{mcl}, \mysib{mcxload}, \mysib{mcxsubs}, \mysib{mcxassemble} and \mysib{mcxalter} all accept the same transformation language in their respective \bf{tf}-type options and mcxsub's \bf{val} specification.} \par{ A statement in this language is simply a comma-separated list of functions accepting a single numerical value. The syntax of a function invocation in general is \bf{func}(\it{arg}). The functions \bf{exp}, \bf{log}, \bf{neglog} can also be given an empty parameter list, indicating that \it{e} is taken as the exponent base. In this case, the invocation looks like \bf{func}(). Functions with names that start with \v{#} operate on graphs in their entirety. For example, \v{#knn(50)} indicates the k-Nearest Neighbour transformation for \v{k=50}. All other names encode functions that operate directly on edges. Functions with names that start with \v{#arc} operate on directed graphs and yield directed graphs. Most of the other \v{#} functions either expect an undirected graph (such as \v{#knn()}) or yield an undirected graph (such as \v{#add()} and \v{#max()}. The following are supported. } \begin{itemize}{ {textindent}{9} {flow}{compact} {align}{left} } \item{lt} Filter out values greater than or equal to arg. \item{lq} Filter out values greater than arg. \item{gq} Filter out values less than arg. \item{gt} Filter out values less than or equal to arg. \item{ceil} Set everything higher than arg to arg. \item{floor} Set everything lower than arg to arg. \item{mul} Multiply by arg. \item{add} Add arg to it. \item{power} Raise to power arg. \item{exp} Raise arg (\it{e} if omitted) to value. \item{log} Take log in base arg (\it{e} if omitted). \item{neglog} Take minus log in base arg (\it{e} if omitted). \itemskip \item{#knn} k-Nearest Neighbour reduction with \v{k=arg}. \item{#ceilnb} Cap neighbours at arg at most. \item{#mcl} Cluster with inflation=arg, use induced graph. \item{#add} Convert two arcs to one edge using addition. \item{#min} Convert two arcs to one edge using minimum. \item{#max} Convert two arcs to one edge using maximum. \item{#mul} Convert two arcs to one edge using multiplication. \item{#rev} Encode graph in reverse direction. \item{#tp} Same as above in matrix speak (\it{t}rans\it{p}ose). \item{#tug} Perturb edge weights with factor arg. \item{#shrug} Randomly perturb edge weights with factor arg. \item{#step} Use the k-step relation, where \v{k=arg}. \item{#thread} Set thread pool size to arg. \itemskip \item{#arcmax} Only keep largest arc between two nodes. \item{#arcsub} Replace G by G - G^T. \item{#arcmcl} As \v{#mcl}, use symmetrised graph for clustering. \end{itemize} \cpar{NOTE}{ \mysib{mcl} accepts \genopt{--abc-neg-log} and \genopt{--abc-neg-log10} to specify log transformations. Similarly, \mysib{mcxload} accepts \genopt{--stream-log}, \genopt{--stream-neg-log}, and \genopt{--stream-neg-log10}. The reason is that probabilities are sometimes encoded below the precision dictated by the IEEE (32 bit) float specification. This poses a problem as the mcl applications encode values by default as floats, and the transformation specifications are always applied to the mcl encoding. The options just mentioned are applied after a value has been read from an input stream and \it{before} it is converted to the native encoding. } \sec{seealso}{SEE ALSO} \car{ \mysib{mcxassemble}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \sec{author}{AUTHOR} \car{ Stijn van Dongen.} \end{pud::man} mcl-12-135/doc/mclcm.ps0000644000402500021140000010204311754271043011501 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:15 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Courier %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 4 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Courier %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Courier@0 ENC0/Courier RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 147.895<6d636c636d2831292055534552>20 48 R 150.395<434f4d4d414e4453206d636c636d283129>2.5 F/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d636c636d20ad20686965726172636869 63616c20636c7573746572696e67206f66206772617068732077697468206d636c>100 96 Q F1<53594e4f50534953>20 112.8 Q/F2 10/Times-Bold@0 SF<6d636c636d>100 124.8 Q F0<3c2d7c666e616d653e205b6d636c636d2d6f7074696f6e735d205b2d2d20 226d636c206f7074696f6e73222a5d>2.5 E F2<6d636c636d>100 148.8 Q/F3 10 /Courier@0 SF <3c2d7c666e616d653e202d6120222d492034202d2d736861646f773d766c22>6 E F2 <6d636c636d>100 160.8 Q F3 <3c2d7c666e616d653e202d6120222d49203322202d2d20222d49203522>6 E F2 <6d636c636d>100 172.8 Q F3<3c2d7c666e616d653e202d6120222d49203322202d62 31202222202d2d20222d70682033202d2d736861646f773d766c202d49203522>6 E F2 <6d636c636d>100 196.8 Q F0<3c2d666e616d653e>4.642 E F2 <5b2d2d636f6e7472616374>4.642 E F0<28>4.641 E/F4 10/Times-Italic@0 SF <636f6e7472>A 2.141<616374696f6e206d6f6465>-.15 F F0<29>A F2 4.641<5d5b> C<2d2d6469737061746368>-4.641 E F0<28>4.641 E F4<64697370617463>A 4.641 <686d>-.15 G<6f6465>-4.641 E F0<29>A F2 4.641<5d5b>C <2d2d696e74656772617465>-4.641 E F0<28>100 208.8 Q F4<696e7465>A<6772> -.4 E .103<617465206d6f6465>-.15 F F0<29>A F2 2.603<5d5b>C <2d2d737562636c7573746572>-2.603 E F0<28>2.603 E F4 .103 <737562636c7573746572206d6f6465>B F0<29>A F2 2.604<5d5b>C<2d61>-2.604 E F0 .104<3c6f7074733e2028>2.604 F F4<73686172>A .104 <6564206d636c206f7074696f6e73>-.37 F F0<29>A F2 2.604<5d5b>C<2d6231> -2.604 E F0<3c6f7074733e>2.604 E<28>100 220.8 Q F4 .508 <64656469636174656420626173652031206d636c206f7074696f6e73>B F0<29>A F2 3.008<5d5b>C<2d6232>-3.008 E F0 .508<3c6f7074733e2028>3.008 F F4 .508 <64656469636174656420626173652032206d636c206f7074696f6e73>B F0<29>A F2 3.008<5d5b>C<2d7466>-3.008 E F0 .508<737065632028>3.008 F F4 .508 <6170706c792074662d>B 2.475<7370656320746f20696e707574206d6174726978>100 232.8 R F0<29>A F2 4.976<5d5b>C<2d63>-4.976 E F0 2.476 <3c666e616d653e2028>4.976 F F4 2.476<696e70757420636c7573746572696e67>B F0<29>A F2 4.976<5d5b>C<2d6e>-4.976 E F0 2.476<3c6e756d3e2028>4.976 F F4 <69746572>A 2.476<6174696f6e206c696d6974>-.15 F F0<29>A F2 4.976<5d5b>C <2d2d72>-4.976 E<6f6f74>-.18 E F0<28>100 244.8 Q F4<656e737572>A 3.534 <6575>-.37 G<6e69766572>-3.534 E 1.034<73652072>-.1 F 1.034 <6f6f7420636c7573746572696e67>-.45 F F0<29>A F2 3.534<5d5b>C<2d636f6e65> -3.534 E F0 1.034<3c666e616d653e2028>3.534 F F4 1.034 <6e657374656420636c75737465722073746163>B 3.533<6b8c>-.2 G<6c65>-3.533 E F0<29>A F2 3.533<5d5b>C<2d737461636b>-3.533 E F0<3c666e616d653e>3.533 E <28>100 256.8 Q F4 -.2<6578>C 7.527 <70616e64656420636c75737465722073746163>.2 F 10.028<6b8c>-.2 G<6c65> -10.028 E F0<29>A F2 10.028<5d5b>C<2d636f61727365>-10.028 E F0 7.528 <3c666e616d653e2028>10.028 F F4<636f6172>A 7.528<73656e6564206772>-.1 F 7.528<61706873208c6c65>-.15 F F0<29>A F2 10.028<5d5b>C<2d7772697465> -10.028 E F0<28>100 268.8 Q F4<73746163>A<6b2c636f6e65>-.2 E<2c636f6172> -.1 E<7365>-.1 E<2c7374657073>-.1 E F0<29>A F2 2.668<5d5b>C <2d77726974652d62617365>-2.668 E F0 .168<3c666e616d653e2028>2.668 F F4 .168<77726974652062617365206d6174726978>B F0<29>A F2 2.668<5d5b>C <2d7374656d>-2.668 E F0 .168<3c7374723e2028>2.668 F F4<7072>A .168 <658c7820666f7220616c6c>-.37 F<6f757470757473>100 280.8 Q F0<29>A F2 3.608<5d5b>C<2d2d6d706c65783d>-3.608 E F0 1.109<792f6e2028>B F4 1.109 <777269746520636c7573746572696e6773207365706172>B<6174656c79>-.15 E F0 <29>A F2 3.609<5d5b>C<2d616e6e6f74>-3.609 E F0 1.109<7374722028>3.609 F F4 1.109<64756d6d7920616e6e6f746174696f6e206f7074696f6e>B F0<29>A F2<5d> A<5b2d68>100 292.8 Q F0<28>3.554 E F4 1.054 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2 3.554 <5d5b>C<2d2d617072>-3.554 E<6f706f73>-.18 E F0<28>3.553 E F4 1.053 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2 3.553 <5d5b>C<2d2d76>-3.553 E<657273696f6e>-.1 E F0<28>3.553 E F4 1.053 <7072696e7420766572>B 1.053<73696f6e2c2065>-.1 F<786974>-.2 E F0<29>A F2 3.553<5d5b>C<2d71>-3.553 E F0<737065632028>100 304.8 Q F4<6c6f>A 2.5 <676c>-.1 G -.15<6576>-2.5 G<656c73>.15 E F0<29>A F2 2.5<5d5b>C<2d7a> -2.5 E F0<28>2.5 E F4<73686f772064656661756c742073686172>A <6564206f7074696f6e73>-.37 E F0<29>A F2<5d>A F0 <5b2d2d20226d636c206f7074696f6e73222a5d>2.5 E F1<4445534352495054494f4e> 20 321.6 Q F0 .3 <546865206d636c636d206f7074696f6e73206d617920626520666f6c6c6f>100 333.6 R .301<7765642062792061206e756d626572206f6620747261696c696e67206172>-.25 F 2.801<67756d656e74732e20546865>-.18 F .301<747261696c696e67206172> 2.801 F<67756d656e7473>-.18 E .605<73686f756c64206265207365706172617465 642066726f6d20746865206d636c636d206f7074696f6e73206279207468652073657061 7261746f72>100 345.6 R F3<2d2d>3.105 E F0 5.605<2e4e>C .605 <6f726d616c6c79206561636820747261696c696e67206172>-5.605 F<67752d>-.18 E .729<6d656e742073686f756c6420636f6e73697374206f66206120736574206f66207a 65726f2c206f6e652c206f72206d6f7265206d636c206172>100 357.6 R .73<67756d 656e747320656e636c6f73656420696e2071756f746573206f7220646f75626c65>-.18 F .024<71756f74657320746f2067726f7570207468656d20746f6765746865722e>100 369.6 R .024<5468657365206172>5.024 F .023 <67756d656e7473206172652070617373656420746f20746865207375636365737369> -.18 F .323 -.15<76652073>-.25 H .023 <7461676573206f66206869657261726368692d>.15 F .691 <63616c20636c7573746572696e672e20546865>100 381.6 R 3.192<7961>-.15 G .692<726520636f6d62696e656420776974682074686520646566>-3.192 F .692<6175 6c74206f7074696f6e732e20496620616e206f7074696f6e2069732073706563698c6564 20626f746820696e20746865>-.1 F<646566>100 393.6 Q 1.733<61756c74206f7074 696f6e73206c69737420616e6420696e206120747261696c696e67206f7074696f6e7320 6c69737420746865206c61747465722073706563698c636174696f6e206f>-.1 F -.15 <7665>-.15 G 1.732<7272696465732074686520666f726d65722e>.15 F .667 <5768656e20746865>100 405.6 R F2<2d2d696e74656772617465>3.167 E F0 .667 <6f7074696f6e2069732073706563698c65642074686520747261696c696e67206172> 3.167 F .667<67756d656e7473206d757374206265206e616d6573206f66208c6c6573 20636f6e7461696e2d>-.18 F .456<696e67206d636c20636c7573746572696e67733b 2073656520667572746865722062656c6f>100 417.6 R<772e>-.25 E F2 <6d636c636d>5.456 E F0 .456<68617320666f7572206d616a6f72206d6f646573206f 66206f7065726174696f6e2c206e616d656c79>2.956 F F4<636f6e2d>2.955 E<7472> 100 429.6 Q<616374696f6e>-.15 E F0<28646566>3.524 E<61756c74292c>-.1 E F4<696e7465>3.524 E<6772>-.4 E<6174696f6e>-.15 E F0<2c>A F4 <64697370617463>3.524 E<68>-.15 E F0 3.524<2c61>C<6e64>-3.524 E F4 <737562636c7573746572>3.524 E F0 3.524<2e45>C 1.024 <616368206d6f6465206973206465736372696265642061206c6974746c652062656c6f> -3.524 F<772e>-.25 E 1.571<4e6f74652074686f7567682074686174>100 441.6 R F4<64697370617463>4.071 E<68>-.15 E F0 1.571<6d6f6465206973206e6f742074 68652062657374206d6f646520746f2075736520666f722068696572617263686963616c 20636c7573746572696e672e204974206973>4.071 F<6d6f73746c792075736566756c 20746f2067656e6572617465206d756c7469706c65206d636c20636c7573746572696e67 7320696e20612073696e676c652072756e2e>100 453.6 Q .171 <496e20616c6c206d6f646573>100 477.6 R F2<6d636c636d>2.671 E F0 .171 <77696c6c2067656e65726174652061208c6c652c20627920646566>2.671 F .171 <61756c742063616c6c6564>-.1 F F4<6d636c2e636f6e65>2.671 E F0 5.171<2e54> C .172<686973206973206120726570726573656e746174696f6e206f662061>-5.171 F <68696572617263686963616c20636c7573746572696e67207468617420697320706172 746963756c617220746f206d636c2e2049742063616e20626520636f6e>100 489.6 Q -.15<7665>-.4 G<7274656420746f>.15 E F4<6e65>2.5 E<776963>-.15 E<6b>-.2 E F0<666f726d6174206c696b>2.5 E 2.5<6574>-.1 G<6869733a>-2.5 E F3<6d6378 64756d70202d696d782d74726565206d636c2e636f6e65202d2d6e657769636b202d6f20 4e455749434b46494c45>154 513.6 Q 18<4f52206d637864756d70>118 525.6 R<2d 696d782d74726565206d636c2e636f6e65202d2d6e657769636b202d6f204e455749434b 46494c45202d7461622054414246494c45>6 E F0 .275 <496e20746865206c6173742065>100 549.6 R .275<78616d706c652c2054>-.15 F .275<414246494c452073686f756c642062652061208c6c6520636f6e7461696e696e67 2061206d617070696e672066726f6d206d636c206c6162656c7320746f206170706c6963 612d>-.93 F<74696f6e206c6162656c732e20526566657220746f>100 561.6 Q F2 <6d6378696f283529>2.5 E F0<666f72206d6f726520696e666f726d6174696f6e2061 626f757420746162208c6c657320616e64206d636c20696e7075742f6f7570757420666f 726d6174732e>2.5 E F1<4f5054494f4e53>20 578.4 Q F2<2d2d636f6e7472616374> 100 590.4 Q F0<28>2.5 E F4 -.37<7265>C<70656174656420636f6e7472>.37 E <616374696f6e206d6f6465>-.15 E F0<29>A .1 <546869732069732074686520646566>120 602.4 R .1 <61756c74206d6f6465206f66206f7065726174696f6e2e>-.1 F .1 <41742065616368207375636365737369>5.1 F .4 -.15<76652073>-.25 H .1 <746570206f6620636f6e737472756374696e6720746865206869657261726368>.15 F <79>-.05 E .639<6f6e20746f70206f6620746865208c727374206c65>120 614.4 R -.15<7665>-.25 G 3.139<6c6d>.15 G .639<636c20636c7573746572696e672c206d 636c636d20757365732061206d61747269782064657269>-3.139 F -.15<7665>-.25 G 3.138<6466>.15 G .638<726f6d2074686520696e707574206d6174726978>-3.138 F .458<616e6420746865206c61737420636f6d707574656420636c7573746572696e6720 746f20636f6d70757465206120636f6e747261637465642067726170682e>120 626.4 R .458<54686520636f6e747261637465642067726170682069732061>5.458 F .269<67 7261706820776865726520746865206e6f64657320726570726573656e74207468652063 6c757374657273206f6620746865206c61737420636c7573746572696e672e2054686520 6d61747269782064657269>120 638.4 R -.15<7665>-.25 G 2.768<6466>.15 G <726f6d>-2.768 E .382<74686520696e70757420677261706820746861742069732075 73656420746f20636f6e7374727563742074686520636f6e747261637465642067726170 682069732063616c6c656420746865>120 650.4 R F4 .382 <62617365206d6174726978>2.882 F F0 2.882<2e54>C<6865>-2.882 E .654 <62617365206d61747269782063616e2062652065697468657220746865>120 662.4 R F4 .654<7374617274206d6174726978>3.154 F F0 .654<6f7220746865>3.154 F F4 -.2<6578>3.154 G .654<70616e73696f6e206d6174726978>.2 F F0 5.654<2e54>C <6865>-5.654 E F4 .653<7374617274206d6174726978>3.153 F F0 .653 <697320746865>3.153 F .307<696e707574206d617472697820616674657220747261 6e73666f726d6174696f6e73206861>120 674.4 R .608 -.15<76652062>-.2 H .308 <65656e206170706c69656420746f2069742028696620616e>.15 F 2.808 <79292e20546865>-.15 F F4 -.2<6578>2.808 G .308 <70616e73696f6e206d6174726978>.2 F F0<6973>2.808 E<746865208c7273742065> 120 686.4 Q<7870616e646564206d6174726978206f6620736f6d65206d636c2070726f 63657373206170706c69656420746f2074686520696e7075742067726170682e>-.15 E 1.863<427920646566>120 710.4 R 1.863<61756c74207468652062617365206d6174 72697820697320636f6e73747275637465642066726f6d20656974686572207468652073 74617274206d6174726978206f72207468652065>-.1 F<7870616e73696f6e>-.15 E .423<6d6174726978206f627461696e65642066726f6d20746865208c727374206d636c 2070726f636573732e>120 722.4 R .423<497420697320706f737369626c6520746f20 7573652061207374617274206d61747269782064657269>5.423 F -.15<7665>-.25 G 2.924<6466>.15 G<726f6d>-2.924 E<6d636c636d2031322d313335>20 768 Q <3134204d61792032303132>149.285 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 147.895<6d636c636d2831292055534552>20 48 R 150.395<434f4d4d414e4453206d636c636d283129>2.5 F .142<7370656369616c2070 7572706f7365206d636c207472616e73666f726d6174696f6e20706172616d6574657273 202873756368206173>120 84 R/F1 10/Times-Bold@0 SF<2d7068>2.642 E F0 <616e64>2.641 E F1<2d7466>2.641 E F0 2.641<296f>C 2.641<7261>-2.641 G 2.641<6e65>-2.641 G .141<7870616e73696f6e206d6174726978>-2.791 F <64657269>120 96 Q -.15<7665>-.25 G 2.813<6466>.15 G .313 <726f6d2061207370656369616c20707572706f7365206d636c2070726f636573732e> -2.813 F<546865>5.314 E F1<2d6231>2.814 E F0<616e64>2.814 E F1<2d6232> 2.814 E F0 .314<706172616d65746572732070726f>2.814 F .314 <766964652074686520696e746572>-.15 F<2d>-.2 E -.1<6661>120 108 S <63657320746f20746869732066756e6374696f6e616c6974792e>.1 E -1.1<596f>120 132 S 3.117<7561>1.1 G .617<7265206164766973656420746f207374617274207769 74682061206869676820696e8d6174696f6e2076>-3.117 F .616<616c756520666f72 2074686520696e70757420677261706820616e6420746f2075736520736861646f>-.25 F<772d>-.25 E 1.227<696e672c20652e672e20696e636c756465>120 144 R/F2 10 /Courier@0 SF<2d2d736861646f773d766c>3.727 E F0 1.227<696e20746865>3.727 F F1<2d61>3.727 E F0<6172>3.728 E 3.728<67756d656e742e2054686973>-.18 F 1.228<67656e6572616c6c79206c6561647320746f206869657261726368696573>3.728 F 2.03<7468617420617265206265747465722062616c616e6365642e>120 156 R <536861646f>7.03 E 2.03<77696e672069732061207472616e73666f726d6174696f6e 207768657265206e6f6465732061726520616464656420746f20746865>-.25 F .882 <67726170682c20707265>120 168 R -.15<7665>-.25 G .882 <6e74696e672072656c617469>.15 F -.15<7665>-.25 G .882 <6c792064697374616e74206e6f6465732066726f6d20756e77>.15 F .882 <616e74656420636861696e696e672e>-.1 F -.15<466f>5.882 G 3.382<726d>.15 G .882<6f726520696e666f726d6174696f6e>-3.382 F<726566657220746f20746865> 120 180 Q F1<6d636c>2.5 E F0 2.5<6d616e75616c2e20546865>2.5 F<696e>2.5 E -.2<766f>-.4 G<636174696f6e7320696e>.2 E F1<53594e4f50534953>2.5 E F0 <617265206120676f6f64207374617274696e6720706f696e742e>2.5 E F1 <2d2d6469737061746368>100 204 Q F0<28>2.5 E/F3 10/Times-Italic@0 SF <646966>A<666572>-.18 E<656e74206d636c207072>-.37 E<6f636573736573>-.45 E F0<29>A .858 <496e2074686973206d6f6465206561636820747261696c696e67206172>120 216 R .858<67756d656e742069732073706563698c6564206173206120736574206f66206f70 74696f6e7320746f207061737320746f20616e206d636c2070726f2d>-.18 F .244 <636573732e2046>120 228 R .244<6f72206561636820747261696c696e67206172> -.15 F .244<67756d656e7420616e206d636c2070726f63657373206973207468757320 636f6d70757465642e2054686520736574206f6620726573756c74696e6720636c75732d> -.18 F<746572696e677320697320696e7465>120 240 Q <67726174656420696e746f2061206869657261726368>-.15 E<792e>-.05 E F1 <2d2d696e74656772617465>100 264 Q F0<28>2.5 E F3 -.2<6578>C <697374696e6720636c7573746572696e6773>.2 E F0<29>A .005 <54686973206d6f64652069732073696d696c617220746f>120 276 R F3 <64697370617463>2.505 E<68>-.15 E F0 .005<6d6f64652e2054686520646966> 2.505 F .004<666572656e6365206973207468617420776974682074686973206f7074 696f6e206d636c636d2073696d706c79>-.25 F<696e7465>120 288 Q .253 <677261746573206120736574206f6620616c72656164792065>-.15 F .253 <78697374696e6720636c7573746572696e67732e>-.15 F .253 <4561636820747261696c696e67206172>5.253 F .253 <67756d656e74206d75737420626520746865206e616d65206f66>-.18 F 2.93<618c> 120 300 S .43<6c6520636f6e7461696e696e67206120636c7573746572696e672e> -2.93 F .43<54686520736574206f6620636c7573746572696e67732074687573207370 6563698c656420697320696e7465>5.43 F .43 <67726174656420696e746f20612068696572>-.15 F<2d>-.2 E<61726368>120 312 Q <792e>-.05 E F1<2d2d737562636c7573746572>100 336 Q F0<28>2.5 E F3 -.37 <7265>C<706561746564207375622d636c7573746572696e67>.37 E F0<29>A .157 <496e2074686973206d6f6465206561636820747261696c696e67206172>120 348 R .157<67756d656e742073706563698c6573206120736574206f66206f7074696f6e7320 746f207061737320746f20616e206d636c2070726f636573732e20546865>-.18 F .074 <7365636f6e6420636c7573746572696e672070726f63657373206973206170706c6965 6420746f20746865206772617068206f6620636f6d706f6e656e747320696e6475636564 20627920746865208c72737420636c7573746572>120 360 R<2d>-.2 E .473 <696e672c20726573756c74696e6720696e20612066757274686572207375626469>120 372 R .473<766973696f6e206f6620746865208c72737420636c7573746572696e672e 205468697320617070726f6163682069732072657065617465642077697468>-.25 F 1.839<65616368206675727468657220747261696c696e67206172>120 384 R 1.839 <67756d656e742e2057>-.18 F 1.838<697468207468697320617070726f6163682c20 746865208c72737420636c7573746572696e672077696c6c20626520746865206d6f7374> -.4 F .761<636f6172736520636c7573746572696e672e2048656e63652c2073756273 657175656e7420747261696c696e67206172>120 396 R .761<67756d656e7473207769 6c6c207479706963616c6c79207370656369667920696e6372656173696e676c79>-.18 F 1.349<68696768657220696e8d6174696f6e2076>120 408 R 1.349 <616c7565732c207072652d696e8d6174696f6e2076>-.25 F 1.349<616c7565732c20 616e64206f7074696f6e616c6c79206d6f726520737472696e67656e74207472616e7366 6f726d6174696f6e>-.25 F <706172616d657465727320696e206f7264657220746f206163686965>120 420 Q .3 -.15<76652066>-.25 H<757274686572207375626469>.15 E<7673696f6e732e>-.25 E F1<2d61>100 444 Q F0<3c6f7074733e2028>2.5 E F3<73686172>A <6564206d636c206f7074696f6e73>-.37 E F0<29>A .388<557365207468697320746f 206368616e676520616e642f6f72207365742074686520646566>120 456 R .388<6175 6c74206d636c206f7074696f6e7320666f7220616c6c20697465726174696f6e732e2055 73652071756f746573206966206e656365732d>-.1 F 2.5 <736172792e204578616d706c65>120 468 R <6f662075736167653a202d6120222d492035222e>2.5 E F1<2d6231>100 492 Q F0 <3c6f7074733e2028>2.5 E F3 <64656469636174656420626173652031206d636c206f7074696f6e73>A F0<29>A .013 <546869732077696c6c206170706c7920746865206d636c206f7074696f6e73>120 504 R F3<6f707473>2.513 E F0 .013<746f2074686520696e707574206d61747269782e20 54686520726573756c74696e67207374617274206d617472697820697320757365642061 73>2.513 F<7468652062617365206d617472697820666f7220636f6e73747275637469 6e6720636f6e74726163746564206772617068732e>120 516 Q F1<2d6232>100 540 Q F0<3c6f7074733e2028>2.5 E F3 <64656469636174656420626173652032206d636c206f7074696f6e73>A F0<29>A .291 <546869732077696c6c206170706c7920746865206d636c206f7074696f6e73>120 552 R F3<6f707473>2.791 E F0 .291<746f2074686520696e707574206d61747269782061 6e6420636f6d7075746520746865208c7273742069746572616e64206f6620746865> 2.791 F .607<636f72726573706f6e64696e67206d636c2070726f636573732e205468 65208c7273742069746572616e642c20616b61207468652065>120 564 R .606<787061 6e73696f6e206d61747269782c2069732075736564206173207468652062617365>-.15 F<6d617472697820666f7220636f6e737472756374696e6720636f6e7472616374656420 6772617068732e>120 576 Q F1<2d7466>100 600 Q F0<3c74662d737065633e2028> 2.5 E F3<7472>A<616e73666f726d20696e707574206d61747269782076616c756573> -.15 E F0<29>A -.35<5472>120 612 S <616e73666f726d2074686520696e707574206d61747269782076>.35 E<616c75657320 6163636f7264696e6720746f207468652073796e7461782064657363726962656420696e> -.25 E F1<6d6378696f283529>2.5 E F0<2e>A F1<2d63>100 636 Q F0 <3c666e616d653e2028>2.5 E F3<696e70757420636c7573746572696e67>A F0<29>A< 5468652068696572617263686963616c20636c7573746572696e672070726f6365737320 77696c6c206265206b69636b>120 648 Q<6564206f66>-.1 E 2.5<6662>-.25 G 2.5 <7974>-2.5 G<686520636c7573746572696e6720666f756e6420696e>-2.5 E F3 <3c666e616d653e>2.5 E F0<2e>A F1<2d6e>100 672 Q F0<3c6e756d3e2028>2.5 E F3<69746572>A<6174696f6e206c696d6974>-.15 E F0<29>A<54686973207075747320 616e20757070657220626f756e6420746f20746865206e756d626572206f6620636f6e74 72616374696f6e7320746861742077696c6c20626520706572666f726d65642e>120 684 Q F1<2d2d72>100 708 Q<6f6f74>-.18 E F0<28>2.5 E F3<656e737572>A 2.5 <6575>-.37 G<6e69766572>-2.5 E<73652072>-.1 E <6f6f7420636c7573746572696e67>-.45 E F0<29>A .577 <496e20636173652074686520677261706820636f6e7369737473206f6620646966>120 720 R .578<666572656e7420636f6e6e656374656420636f6d706f6e656e74732c2074 6865206c61737420636c7573746572696e6720636f6d7075746564>-.25 F <6d636c636d2031322d313335>20 768 Q<3134204d61792032303132>149.285 E<32> 202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 147.895<6d636c636d2831292055534552>20 48 R 150.395<434f4d4d414e4453206d636c636d283129>2.5 F .6<627920746865206d636c 636d2070726f636573732077696c6c20636f72726573706f6e6420776974682074686f73 6520636f6e6e656374656420636f6d706f6e656e74732e2054686973206f7074696f6e20 73696d2d>120 84 R<706c79206164647320616e20617274698c6369616c20636c757374 6572696e6720776865726520616c6c206e6f646573206861>120 96 Q .3 -.15 <76652062>-.2 H <65656e206a6f696e656420696e746f20612073696e676c6520636c75737465722e>.15 E/F1 10/Times-Bold@0 SF<2d636f6e65>100 120 Q F0<3c666e616d653e2028>2.5 E /F2 10/Times-Italic@0 SF<6e657374656420636c75737465722073746163>A 2.5 <6b8c>-.2 G<6c65>-2.5 E F0<29>A 1.186<46696c6520746f20777269746520746865 206e657374656420636c757374657220737461636b20746f2e>120 132 R 1.186<5468 65206e657374656420636c757374657220737461636b20636f6e7461696e732061207365 7175656e6365206f66>6.186 F .396<636c7573746572696e67732c2065616368207772 697474656e20617320616e204d434c206d61747269782e>120 144 R .395<546865208c 7273742028626f74746f6d2920636c7573746572696e67206973206120636c7573746572 696e67206f66>5.396 F .167<746865206e6f64657320696e2074686520696e70757420 67726170682e20456163682073756273657175656e7420636c7573746572696e67206973 206120636c7573746572696e6720776865726520746865206e6f64657320617265>120 156 R .571<74686520636c757374657273206f662074686520707265>120 168 R .571 <76696f757320636c7573746572696e672e>-.25 F F1<6d637864756d70>5.571 E F0 .57<63616e2064756d70207468697320666f726d617420696620746865208c6c65206e61 6d65206973>3.071 F<6769>120 180 Q -.15<7665>-.25 G 3.415<6e61>.15 G 3.415<7374>-3.415 G<6865>-3.415 E F1<2d696d782d737461636b>3.415 E F0 .915<6f7074696f6e2e205468652065>3.415 F .915<78706c616e6174696f6e20666f 722074686520636f6e652f737461636b2064697363726570616e63>-.15 F 3.415 <7969>-.15 G 3.415<7373>-3.415 G<696d706c652e>-3.415 E 1.86 -.8 <546f206d>120 192 T .259<637864756d702074686520636f6e74656e747320617265 2073696d706c79206120737461636b206f66206d617472696365732e20497420646f6573 206e6f74206361726520776865746865722074686520737461636b>.8 F <697320636f6e65207368617065642c2063>120 204 Q <796c696e64726963616c2c206f722079657420616e6f746865722073686170652e>-.15 E F1<2d737461636b>100 228 Q F0<3c666e616d653e2028>2.5 E F2 -.2<6578>C <70616e64656420636c75737465722073746163>.2 E 2.5<6b8c>-.2 G<6c65>-2.5 E F0<29>A 1.556<46696c6520746f207772697465207468652065>120 240 R 1.557 <7870616e64656420636c757374657220737461636b20746f2e205468652065>-.15 F 1.557<7870616e64656420636c757374657220737461636b2069732073696d696c617220 746f20746865>-.15 F .183<6e657374656420636c757374657220737461636b2065> 120 252 R .182<78636570742074686174206561636820636c7573746572206c697374 7320616c6c20746865206e6f64657320696e2074686520696e7075742067726170682069 7420636f6e7461696e732e>-.15 F F1<6d637864756d70>120 264 Q F0<63616e2064 756d70207468697320666f726d617420696620746865208c6c65206e616d652069732067 69>2.5 E -.15<7665>-.25 G 2.5<6e61>.15 G 2.5<7374>-2.5 G<6865>-2.5 E F1 <2d696d782d737461636b>2.5 E F0<6f7074696f6e2e>2.5 E F1<2d636f61727365> 100 288 Q F0<3c666e616d653e2028>2.5 E F2<636f6172>A<73656e6564206772>-.1 E<61706873208c6c65>-.15 E F0<29>A 1.776<46696c6520746f207772697465207468 652073657175656e6365206f6620636f617273656e65642067726170687320746f2e2045 61636820636c7573746572696e6720696e6475636573206120636f617273656e6564>120 300 R .269<677261706820776865726520746865206e6f64657320726570726573656e 742074686520636c75737465727320616e6420616e2065646765206265747765656e2074 77>120 312 R 2.768<6f6e>-.1 G .268 <6f64657320726570726573656e747320746865>-2.768 F<636f6e6e65637469>120 324 Q .559 <76697479206265747765656e2074686520636f72726573706f6e64696e67207477>-.25 F 3.059<6f63>-.1 G .559<6c7573746572732e2054686520636f6d7075746174696f6e 206f66207468697320636f6e6e65637469>-3.059 F<76697479>-.25 E<74616b>120 336 Q<657320696e746f206163636f756e7420616c6c206564676573206265747765656e 20746865207477>-.1 E 2.5<6f63>-.1 G <6c75737465727320696e20696e20746865206f726967696e616c2067726170682e>-2.5 E F1<2d7772697465>100 360 Q F0<3c7461673e2028>2.5 E F2 <73656c656374206f7574707574206d6f646573>A F0<29>A .83 <5573652074686973206f7074696f6e20746f2065>120 372 R .829<78706c69636974 6c79207370656369667920616c6c206f6620746865206f75747075742074797065732079 6f752077>-.15 F .829<616e74207772697474656e20696e206120636f6d6d612d>-.1 F .419<73657061726174656420737472696e672e>120 384 R F2<3c7461>2.919 E <673e>-.1 E F0 .419<6d617920636f6e7461696e20616e>2.919 F 2.919<796f>-.15 G 2.919<6674>-2.919 G .419<686520737472696e6773>-2.919 F F2<73746163> 2.919 E<6b>-.2 E F0<2c>A F2<636f6e65>2.919 E F0<2c>A F2<636f6172>2.92 E <7365>-.1 E F0<2c>A F2<7374657073>2.92 E F0 5.42<2e54>C .42 <686520637572>-5.42 F<2d>-.2 E .432<72656e7420646566>120 396 R .432 <61756c7420697320746f20777269746520616c6c206f662074686573652065>-.1 F <7863657074>-.15 E F2<636f6172>2.932 E<7365>-.1 E F0 5.432<2e54>C .432< 6865206c61747465722064756d70732074686520696e7465726d65646961746520636f61 72732d>-5.432 F<656e65642028616b6120636f6e747261637465642920677261706873 20746f20612073696e676c65208c6c652e>120 408 Q F1<2d77726974652d62617365> 100 432 Q F0<3c666e616d653e2028>2.5 E F2 <77726974652062617365206d6174726978>A F0<29>A<57726974652074686520626173 65206d617472697820746f208c6c652e20546869732063616e2062652075736566756c20 666f7220646562>120 444 Q<756767696e672065>-.2 E <78706563746174696f6e732e>-.15 E F1<2d7374656d>100 468 Q F0 <3c7374723e2028>2.5 E F2<7072>A<658c7820666f7220616c6c206f757470757473> -.37 E F0<29>A 1.38<416c6c206f7574707574208c6c65732073686172652074686520 73616d65207072658c782e2054686520646566>120 480 R 1.381<61756c74206973> -.1 F/F3 10/Courier@0 SF<6d636c>3.881 E F0 1.381 <616e642063616e206265206368616e67656420776974682074686973>3.881 F <6f7074696f6e2e>120 492 Q F1<2d2d6d706c6578>100 516 Q F0<3d792f6e2028>A F2<777269746520636c7573746572696e6773207365706172>A<6174656c79>-.15 E F0 <29>A .278<4966207475726e6564206f6e206561636820636c7573746572696e672069 73207772697474656e20696e2061207365706172617465208c6c652e20546865208c7273 7420636c7573746572696e67206973207772697474656e20746f20746865>120 528 R <8c6c65>120 540 Q F2<3c7374656d3e>2.956 E F0 .456<2e33207768657265>B F2 <3c7374656d3e>2.956 E F0 .456<69732064657465726d696e656420627920746865> 2.956 F F1<2d7374656d>2.956 E F0 .456<6f7074696f6e2e2046>2.956 F .457 <6f7220656163682073756273657175656e7420636c75732d>-.15 F 1.59 <746572696e672074686520696e6465>120 552 R 4.09<7869>-.15 G 4.09<7369> -4.09 G 1.59<6e6372656d656e746564206279207477>-4.09 F 1.59<6f2c20736f20 636c7573746572696e677320617265207772697474656e20746f208c6c657320666f7220 776869636820746865>-.1 F <6e616d6520656e6473207769746820616e206f646420696e6465>120 564 Q<782e> -.15 E F1<2d616e6e6f74>100 588 Q F0<7374722028>2.5 E F2 <64756d6d7920616e6e6f746174696f6e206f7074696f6e>A F0<29>A F1<6d636c636d> 120 600 Q F0 .552<7772697465732074686520636f6d6d616e64206c696e6520776974 682077686963682069742077>3.052 F .553<617320696e>-.1 F -.2<766f>-.4 G -.1<6b65>.2 G 3.053<6474>.1 G 3.053<6f74>-3.053 G .553 <6865206f7574707574208c6c652028656974686572206f6620746865>-3.053 F F2 <636f6e65>120 612 Q F0<6f72>4.277 E F2<73746163>4.277 E<6b>-.2 E F0 1.777<8c6c6573292e205573652074686973206f7074696f6e20746f20696e636c756465 20616e>4.277 F 4.277<7961>-.15 G 1.777 <64646974696f6e616c20696e666f726d6174696f6e2e206d636c636d20646f6573> -4.277 F<6e6f7468696e6720776974682074686973206f7074696f6e2065>120 624 Q <786365707420636f70>-.15 E <79696e67206974206173206a757374206465736372696265642e>-.1 E F1<2d71>100 648 Q F0<737065632028>2.5 E F2<6c6f>A 2.5<676c>-.1 G -.15<6576>-2.5 G <656c73>.15 E F0<29>A<53657420746865207175696574206c65>120 660 Q -.15 <7665>-.25 G<6c2e2052656164>.15 E F1<74696e6765612e6c6f67283729>2.5 E F0 <666f722073796e74617820616e642073656d616e746963732e>2.5 E F1<2d7a>100 684 Q F0<28>2.5 E F2<73686f772064656661756c742073686172>A <6564206f7074696f6e73>-.37 E F0<29>A<53686f>120 696 Q 4.591<7774>-.25 G 2.091<686520646566>-4.591 F 2.092<61756c74206d636c206f7074696f6e732e2054 6865736520617265207573656420666f722065616368206d636c20696e>-.1 F -.2 <766f>-.4 G 2.092<636174696f6e206173207375636365737369>.2 F -.15<7665> -.25 G<6c79>.15 E<6170706c69656420746f2074686520696e70757420677261706820 616e642073756363656564696e6720636f6e74726163746564206772617068732e>120 708 Q<6d636c636d2031322d313335>20 768 Q<3134204d61792032303132>149.285 E <33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 147.895<6d636c636d2831292055534552>20 48 R 150.395<434f4d4d414e4453206d636c636d283129>2.5 F/F1 10.95/Times-Bold@0 SF -.548<4155>20 84 S<54484f52>.548 E F0<5374696a6e2076>100 96 Q <616e20446f6e67656e2e>-.25 E F1<53454520414c534f>20 112.8 Q/F2 10 /Times-Bold@0 SF<6d636c66616d696c79283729>100 124.8 Q F0 <666f7220616e206f>2.5 E -.15<7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c2074686520646f63756d656e746174696f6e20616e6420746865 207574696c697469657320696e20746865206d636c2066>-2.5 E<616d696c792e>-.1 E <6d636c636d2031322d313335>20 768 Q<3134204d61792032303132>149.285 E<34> 202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxerdos.10000644000402500021140000001347011754271044011756 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcx erdos" 1 "14 May 2012" "mcx erdos 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcx erdos \- compute shortest paths in a graph .SH SYNOPSIS \fBmcx erdos\fP [options] mcxerdos is not in actual fact a program\&. This manual page documents the behaviour and options of the mcx program when invoked in mode \fIerdos\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP, \fB-progress\fP\ \&\fI\fP are accessible in all \fBmcx\fP modes\&. They are described in the \fBmcx\fP manual page\&. \fBmcx erdos\fP \fB[-query\fP (\fIquery input stream\fP)\fB]\fP \fB[-abc\fP (\fIspecify label input\fP)\fB]\fP \fB[-imx\fP (\fIspecify matrix input\fP)\fB]\fP \fB[-tab\fP (\fIuse tab file\fP)\fB]\fP \fB[-o\fP (\fIoutput file name\fP)\fB]\fP \fB[--is-directed\fP (\fIinput graph is directed\fP)\fB]\fP \fB[--is-undirected\fP (\fIinput graph is directed\fP)\fB]\fP \fB[-write-path\fP (\fIpath matrix file\fP)\fB]\fP \fB[-write-step\fP (\fIstep matrix file\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION \fBmcx erdos\fP computes shortest paths in graphs\&. It can read a graph either in label format with \fB-abc\fP or in native format with \fB-imx\fP\&. It reads pairs of node indices from an input stream, and for each pair outputs a data structure describing the full set of shortest paths between the two nodes\&. Edge weights are not taken into account, so an edge always represents a unit step size between two nodes irrespective of its weight\&. A mode to compute shortest paths while taking into account edge weights will be implemented later as \fBmcx dijkstra\fP\&. Note that the full set of shortest paths between two nodes in a graph can be described as a directed acyclic graph (DAG), and this is how \fBmcx erdos\fP operates\&. It is easy to construct graphs and node pairs for which the number of shortest paths between the two nodes becomes exponential in the size of the graph, whereas the lattice description is always garantueed to map to a subset of the graph edge set\&. By default it is assumed that the input graph should be treated as undirected\&. To this end a transformation step is applied to ensure that the graph in memory is undirected\&. It is possible to compute shortest paths in directed graphs by using \fB--is-directed\fP, and it is possible to omit the transformation step by using \fB--is-undirected\fP\&. If the latter is specified while the input graph is in native format and in fact directed, results will be erroneous\&. This could in theory be mitigated by checking that the input graph is undirected\&. However, the reason to use \fB--is-undirected\fP is simply to increase speed of operation, whereas such a check would be equally expensive as the transformation step that is omitted with \fB--is-undirected\fP\&. The input graph/matrix, if specified with the \fB-imx\fP option, has to be in mcl matrix/graph format\&. You can use label input instead by using the \fB-abc\fP option\&. Refer to \fBmcxio(5)\fP for a description of these two input formats\&. By default \fBmcx erdos\fP reads from STDIN \fIand expects matrix format\fP\&. To specify label input from STDIN use \fB-abc\fP\ \&\fB-\fP\&. .SH OPTIONS .ZI 2m "\fB-query\fP (\fIquery input\fP)" \& .br The name for the file from which queries are read\&. A query consists of two white-space separated node indices or two white-space separated labels\&. Labels can only be used if either \fB-abc\fP or \fB-tab\fP is specified\&. .in -2m .ZI 2m "\fB-abc\fP (\fIlabel input\fP)" \& .br The file name for input that is in label format\&. .in -2m .ZI 2m "\fB-imx\fP (\fIinput matrix\fP)" \& .br The file name for input that is in mcl native matrix format\&. .in -2m .ZI 2m "\fB-o\fP (\fIoutput file name\fP)" \& .br The name of the file to write output to\&. .in -2m .ZI 2m "\fB-tab\fP (\fIuse tab file\fP)" \& .br This option causes the output to be printed with the labels found in the tab file\&. With \fB-abc\fP this option will, additionally, construct a graph only on the labels found in the tab file\&. If this option is used in conjunction with \fB-imx\fP the tab domain and the matrix domain are required to be identical\&. .in -2m .ZI 2m "\fB--is-directed\fP (\fIcompute directed shortest paths\fP)" \& .br The input graph is not transformed and assumed to be directed\&. Shortest paths are computed taking this into account\&. .in -2m .ZI 2m "\fB--is-undirected\fP (\fIskip symmetrification step\fP)" \& .br The input graph is not transformed and assumed to be undirected\&. Shortest paths are computed on the assumption that the input is undirected\&. Use this option only if you are sure the input is undirected and need to have faster execution\&. .in -2m .ZI 2m "\fB-write-path\fP (\fIpath matrix file\fP)" \& 'in -2m .ZI 2m "\fB-write-step\fP (\fIstep matrix file\fP)" \& 'in -2m 'in +2m \& .br The path matrix enumerates the nodes that take part in all shortest paths\&. The first list contains those nodes that lie at distance 1 of the source node, the second list contains nodes lying at distance 2, and so on\&. The step matrix contains all the edges that make up the lattice of shortest paths between the two query nodes\&. .in -2m .SH SEE ALSO \fBmcxio(5)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcxquery.10000644000402500021140000002350711754271045012012 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcx q" 1 "14 May 2012" "mcx q 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxquery \- compute simple graph statistics .SH SYNOPSIS mcxq is not in actual fact a program\&. This manual page documents the behaviour and options of the mcx program when invoked in mode \fIq\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP, \fB-progress\fP\ \&\fI\fP are accessible in all \fBmcx\fP modes\&. They are described in the \fBmcx\fP manual page\&. \fBmcxquery\fP \fB[-abc\fP (\fIspecify label input\fP)\fB]\fP \fB[-imx\fP (\fIspecify matrix input\fP)\fB]\fP \fB[-o\fP (\fIoutput file name\fP)\fB]\fP \fB[-tab\fP (\fIuse tab file\fP)\fB]\fP \fB[--node-attr\fP (\fIoutput node degree and weight attributes\fP)\fB]\fP \fB[-vary-threshold\fP (\fIanalyze graph at similarity cutoffs\fP)\fB]\fP \fB[-vary-knn\fP (\fIanalyze graph for varying k-NN\fP)\fB]\fP \fB[-vary-ceil\fP (\fIanalyze graph for varying ceil reductions\fP)\fB]\fP \fB[-report-scale\fP (\fIedge weight/threshold scaling\fP)\fB]\fP \fB[--no-legend\fP (\fIdo not output explanatory legend\fP)\fB]\fP \fB[--reduce\fP (\fIuse reduced matrix\fP)\fB]\fP \fB[--test-metric\fP (\fItest whether graph distance is metric\fP)\fB]\fP \fB[--test-cycle\fP (\fItest whether graph contains cycles\fP)\fB]\fP \fB[-test-cycle\fP (\fItest cycles, report cyclees\fP)\fB]\fP \fB[--vary-correlation\fP (\fIanalyze graph at correlation cutoffs\fP)\fB]\fP \fB[--clcf\fP (\fIinclude clustering coefficient analysis\fP)\fB]\fP \fB[--eff\fP (\fIinclude efficiency criterion\fP)\fB]\fP \fB[-div\fP (\fIcluster size separating value\fP)\fB]\fP \fB[--dim\fP (\fIreport native format and dimensions\fP)\fB]\fP \fB[--edges\fP (\fIoutput all arc weights, unsorted\fP)\fB]\fP \fB[--edges-sorted\fP (\fIoutput all arc weights, sorted\fP)\fB]\fP \fB[-edges-hist\fP (\fInumber of threads to use\fP)\fB]\fP \fB[-icl\fP (\fIinput clustering\fP)\fB]\fP \fB[-tf\fP spec (\fIapply tf-spec to input matrix\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION The main use of \fBmcxquery\fP is to analyze a graph at different similarity cutoffs\&. Typically this is done on a graph constructed using a very permissive threshold\&. For example, one can create a graph from array expression data using \fBmcxarray\fP with a very low pearson correlation cutoff such as\ \&0\&.2 or\ \&0\&.3\&. Then \fBmcxquery\fP can be used to analyze the graph at increasingly stringent thresholds of\ \&0\&.25, 0\&.30, 0\&.35\ \&\&.\&.\ \&0\&.95\&. Attributes supplied across different thresholds are the number of connected components, the number of singletons, adn statistics (median, average, iqr) on node degrees and edge weights\&. .SH OPTIONS .ZI 2m "\fB-abc\fP (\fIlabel input\fP)" \& .br The file name for input that is in label format\&. .in -2m .ZI 2m "\fB-imx\fP (\fIinput matrix\fP)" \& .br The file name for input that is in mcl native matrix format\&. .in -2m .ZI 2m "\fB-o\fP (\fIoutput file name\fP)" \& .br Set the name of the file where output should be written to\&. .in -2m .ZI 2m "\fB-tab\fP (\fIuse tab file\fP)" \& .br This option causes the output to be printed with the labels found in the tab file\&. .in -2m .ZI 2m "\fB--dim\fP (\fIreport native format and dimensions\fP)" \& .br This will report the matrix format (either interchange or binary) and the matrix dimensions\&. For a graph the two reported dimensions should be equal\&. .in -2m .ZI 2m "\fB--edges\fP (\fIoutput all arc weights, unsorted\fP)" \& 'in -2m .ZI 2m "\fB--edges-sorted\fP (\fIoutput all arc weights, sorted\fP)" \& 'in -2m .ZI 2m "\fB-edges-hist\fP (\fIanalyze graphs at similarity cutoffs\fP)" \& .br All of \fIstart\fP, \fIend\fP, \fIstep\fP and \fIscale\fP must be integer numbers\&. From these a list of threshold is constructed, starting from \fIstart / scale\fP, \fI(start + step) / scale\fP, \fI(start + 2 step) / scale\fP, and so on until a value larger than or equal to \fIend / scale\fP is reached\&. .in -2m .ZI 2m "\fB--vary-correlation\fP (\fIanalyze graphs at correlation cutoffs\fP)" \& .br This instructs \fBmcxquery\fP to use a threshold list suitable for use with graphs in which the edge weight similarities are correlations\&. The list starts at 0\&.2 and ends at 0\&.95 using increments of 0\&.05\&. If a different start or increment is required it can be achieved by using the \fB-vary-threshold\fP option\&. For example, a start of\ \&0\&.10 and an increment of\ \&0\&.02 are obtained by issuing \fB-vary-threshold\fP\ \&\fB10,100,2,100\fP\&. .in -2m .ZI 2m "defopt{--no-legend}{do not output explanatory legend}" \& .br For a fully parseable output format use \fB--output-table\fP\&. .in -2m .ZI 2m "\fB--clcf\fP (\fIinclude clustering coefficient analysis\fP)" \& 'in -2m .ZI 2m "\fB--eff\fP (\fIinclude efficiency criterion\fP)" \& 'in -2m 'in +2m \& .br These options can be used to compute additional characteristics in the analysis of thresholded graphs with \fB--vary-correlation\fP and \fB-vary-threshold\fP\&. For large graphs these are relatively time-consuming to compute\&. More information and a reference for the efficiency criterion can be found in \fBclminfo(1)\fP\&. .in -2m .ZI 2m "\fB-vary-knn\fP (\fIanalyze graphs for varying k-NN\fP)" \& 'in -2m .ZI 2m "\fB-vary-ceil\fP (\fIanalyze graphs for varying ceil reductions\fP)" \& 'in -2m .ZI 2m "\fB--reduce\fP (\fIuse reduced matrix\fP)" \& 'in -2m 'in +2m \& .br These options cause analysis of a graph as it is subjected to reductions across a range of parameters\&. Refer to \fBmcxio(5)\fP for a description of these reductions\&. The analyses starts at the \fIend\fP argument, and progresses towards the \fIstart\fP argument using decrements of size \fIstep\fP\&. By default the reduction is always computed relative to the start matrix, i\&.e\&. the input matrix after \fB-tf\fP transformations have optionally been applied\&. Specifying \fB--reduce\fP causes this to change so that each new reduction is calculated relative to the reduction just computed\&. For graphs with ties among edge weights it may be useful to use \fB-tf\fP\ \&\fB\&'#tug()\&'\fP\&. This will add small perturbations to the edge weights and have the effect of breaking ties\&. By default perturbations are computed using the cosine between the vectors of neighbours of the two nodes incident to an edge\&. This can be changed to a random perturbation with \fB-tf\fP\ \&\fB\&'#rug()\&'\fP\&. .in -2m .ZI 2m "\fB--test-cycle\fP (\fItest whether graph contains cycles\fP)" \& 'in -2m .ZI 2m "\fB-test-cycle\fP (\fItest cycles, report cyclees\fP)" \& 'in -2m 'in +2m \& .br Test whether the input graph contains cycles\&. With the second option nodes that are part of a cycle are output, up to a maximum of \fI\fP nodes\&. Use \fI\fP=\fB-1\fP to output all such nodes\&. .in -2m .ZI 2m "\fB--test-metric\fP (\fItest whether graph distance is metric\fP)" \& .br This tests all possible triangle relationships\&. .in -2m .ZI 2m "\fB-report-scale\fP (\fIedge weight / threshold scaling\fP)" \& .br The edge weights mean, average, and inter-quartile range, as well as the different threshold steps are all rescaled in the reported output to avoid printing of fractional part\&. If \fB-vary-threshold\fP was supplied then scaling factor specified in the argument is used\&. With \fB--vary-correlation\fP a scaling factor of\ \&100 is used\&. Either can be overridden by using the present option\&. .in -2m .ZI 2m "\fB-div\fP (\fIcluster size separating value\fP)" \& .br When analyzing graphs at different thresholds with one of the options above, \fBmcxquery\fP reports the percentage of nodes contained in clusters not exceeding a specified size, by default\ \&3\&. This number can be changed using the \fB-div\fP option\&. .in -2m .ZI 2m "\fB-tf\fP (\fItransform input matrix values\fP)" \& .br Transform the input matrix values according to the syntax described in \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB-t\fP (\fInumber of threads to use\fP)" \& .br This has an effect only when using the \fB-vary-knn\fP option, and is only useful on multi-CPU machines\&. .in -2m .ZI 2m "\fB--node-attr\fP (\fIoutput node degree and weight attributes\fP)" \& .br Output is in the form of a tab separated file\&. The option \fB-icl\fP can be used in conjuction\&. .in -2m .ZI 2m "\fB-icl\fP (\fIinput clustering\fP)" \& .br Output for each node the size of the cluster it is in\&. This option can be used in conjunction with \fB--node-attr\fP\&. .in -2m .SH SEE ALSO \fBmcxio(5)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmclose.10000644000402500021140000001041211754271041011721 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm close" 1 "14 May 2012" "clm close 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm close \- Fetch connected components from graphs or subgraphs clmclose is not in actual fact a program\&. This manual page documents the behaviour and options of the clm program when invoked in mode \fIclose\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP are accessible in all \fBclm\fP modes\&. They are described in the \fBclm\fP manual page\&. .SH SYNOPSIS \fBclm close\fP -imx [options] \fBclm close\fP \fB-imx\fP fname (\fIspecify matrix input\fP) \fB-abc\fP fname (\fIspecify label input\fP) \fB-dom\fP fname (\fIinput domain/cluster file\fP) \fB[-o\fP fname (\fIoutput file\fP)\fB]\fP \fB[--is-undirected\fP (\fItrust input graph to be undirected\fP)\fB]\fP \fB[--write-count\fP (\fIoutput component count\fP)\fB]\fP \fB[--write-sizes\fP (\fIoutput component sizes (default)\fP)\fB]\fP \fB[--write-cc\fP (\fIoutput components as clustering\fP)\fB]\fP \fB[--write-block\fP (\fIoutput graph restricted to -dom argument\fP)\fB]\fP \fB[--write-blockc\fP (\fIoutput graph complement of -dom argument\fP)\fB]\fP \fB[-cc-bound\fP num (\fIselect components with size at least num\fP)\fB]\fP \fB[-tf\fP spec (\fIapply tf-spec to input matrix\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION Use \fBclm close\fP to fetch the connected components from a graph\&. Different output modes are supported (see below)\&. In matrix mode (i\&.e\&. using the \fB-imx\fP option) the output returned with \fB--write-cc\fP can be used in conjunction with \fBmcxsubs\fP to retrieve individual subgraphs corresponding to connected components\&. .SH OPTIONS .ZI 2m "\fB-abc\fP (\fIlabel input\fP)" \& .br The file name for input that is in label format\&. .in -2m .ZI 2m "\fB-imx\fP (\fIinput matrix\fP)" \& .br The file name for input that is in mcl native matrix format\&. .in -2m .ZI 2m "\fB-o\fP fname (\fIoutput file\fP)" \& .br Specify the file where output is sent to\&. The default is STDOUT\&. .in -2m .ZI 2m "\fB-dom\fP fname (\fIinput domain/cluster file\fP)" \& .br If this option is used, clm close will, as a first step, for each of the domains in file\ \&\fIfname\fP retrieve the associated subgraph from the input graph\&. These are then further decomposed into connected components, and the program will process these in the normal manner\&. .in -2m .ZI 2m "\fB--write-count\fP (\fIoutput component count\fP)" \& 'in -2m .ZI 2m "\fB--write-sizes\fP (\fIoutput component sizes (default)\fP)" \& 'in -2m .ZI 2m "\fB--write-cc\fP (\fIoutput components as clustering\fP)" \& 'in -2m .ZI 2m "\fB--write-block\fP (\fIoutput graph restricted to -dom argument\fP)" \& 'in -2m .ZI 2m "\fB--write-blockc\fP (\fIoutput graph complement of -dom argument\fP)" \& 'in -2m 'in +2m \& .br The default behaviour is currently to output the sizes of the connected components\&. It is also possible to simply output the number of components with \fB--write-count\fP or to write the components as a clustering in mcl format with \fB-write-cc\fP\&. Even more options exist: it is possible to output the restriction of the input graph to a domain, or to output the complement of this restriction\&. .in -2m .ZI 2m "\fB--is-undirected\fP (\fIomit graph undirected check\fP)" \& .br With this option the transformation to make sure that the input is undirected is omitted\&. This will be slightly faster\&. Using this option while the input is directed may lead to erronenous results\&. .in -2m .ZI 2m "\fB-cc-bound\fP num (\fIselect components with size at least num\fP)" \& .br Transform the input matrix values according to the syntax described in \fBmcxio(5)\fP\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcxload.ps0000644000402500021140000014244211754271045012046 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:17 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 6 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.675<6d63786c6f61642831292055534552>20 48 R 143.175<434f4d4d414e4453206d63786c6f6164283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d63786c6f616420ad20 6c6f6164206d6174726963657320616e6420746162208c6c65732066726f6d206c616265 6c20666f726d6174>100 96 Q F1<53594e4f50534953>20 112.8 Q/F2 10 /Times-Bold@0 SF<6d63786c6f6164202d616263>100 124.8 Q F0 <3c666e616d653e2028>2.5 E/F3 10/Times-Italic@0 SF<6c6162656c208c6c65>A F0<29>A F2<2d6f>2.5 E F0<3c666e616d653e2028>2.5 E F3 <6f7574707574208c6c65>A F0<29>A F2<5b2d616263>100 148.8 Q F0 .279 <3c666e616d653e2028>2.779 F F3 .279<6c6162656c208c6c65>B F0<29>A F2 2.779<5d5b>C<2d313233>-2.779 E F0 .278<3c666e616d653e2028>2.778 F F3 .278<6964656e74698c6572208c6c65>B F0<29>A F2 2.778<5d5b>C<2d6f>-2.778 E F0 .278<3c666e616d653e2028>2.778 F F3 .278<6f7574707574208c6c65>B F0<29> A F2 2.778<5d5b>C<2d2d737472>-2.778 E<65616d2d>-.18 E<6d697272>100 160.8 Q<6f72>-.18 E F0<28>3.994 E F3<73796d6d657472696679>A 3.994<2c73>-.55 G 1.494<616d6520646f6d61696e>-3.994 F F0<29>A F2 3.994<5d5b>C<2d2d737472> -3.994 E<65616d2d73706c6974>-.18 E F0<28>3.994 E F3 1.495 <617373756d6520646966>B<666572>-.18 E 1.495<656e7420646f6d61696e73>-.37 F F0<29>A F2 3.995<5d5b>C<2d72>-3.995 E<65>-.18 E F0<3c6d6f64653e>3.995 E<28>100 172.8 Q F3<656467>A 4.194<6564>-.1 G 1.694 <656475706c69636174696f6e206d6f6465>-4.194 F F0<29>A F2 4.194<5d5b>C <2d7269>-4.194 E F0 1.694<3c6d6f64653e2028>4.194 F F3<696d61>A 1.894 -.1 <67652073>-.1 H 1.694<796d6d657472698c636174696f6e206d6f6465>.1 F F0<29> A F2 4.194<5d5b>C<2d736966>-4.194 E F0 1.694<3c666e616d653e2028>4.194 F F3<534946>A 3.01<6c6162656c208c6c65>100 184.8 R F0<29>A F2 5.51<5d5b>C <2d657463>-5.51 E F0 3.01<3c666e616d653e2028>5.51 F F3 3.01 <2765746327206c6162656c208c6c65>B F0<29>A F2 5.51<5d5b>C<2d6574632d6169> -5.51 E F0 3.01<3c666e616d653e2028>5.51 F F3 3.01 <6c65616465726c657373202765746327206c6162656c208c6c65>B F0<29>A F2<5d>A <5b2d2d6578706563742d76>100 196.8 Q<616c756573>-.1 E F0<28>2.878 E F3 -.2<6578>C .378<70656374206c6162656c3a77656967687420666f726d6174>.2 F F0 <29>A F2 2.878<5d5b>C<2d323335>-2.878 E F0 .378<3c666e616d653e2028>2.878 F F3 .378<6c6561646572202732333527206c6162656c208c6c65>B F0<29>A F2 2.878<5d5b>C<2d3233352d6169>-2.878 E F0 1.888<3c666e616d653e2028>100 208.8 R F3 1.888<6c65616465726c657373202732333527206c6162656c208c6c65>B F0<29>A F2 4.388<5d5b>C<2d77726974652d746162>-4.388 E F0 1.888 <3c666e616d653e2028>4.388 F F3 1.888<7361766520646f6d61696e20746162>B F0 <29>A F2 4.388<5d5b>C<2d77726974652d74616263>-4.388 E F0 1.212 <3c666e616d653e2028>100 220.8 R F3 1.212<7361766520636f6c756d6e20746162> B F0<29>A F2 3.712<5d5b>C<2d77726974652d74616272>-3.712 E F0 1.212 <3c666e616d653e2028>3.712 F F3 1.212<736176652072>B 1.212<6f7720746162> -.45 F F0<29>A F2 3.712<5d5b>C<2d7374726963742d746162>-3.712 E F0 1.211 <3c666e616d653e2028>3.711 F F3<746162>A<756e69766572>100 232.8 Q<7365> -.1 E F0<29>A F2 6.566<5d5b>C<2d7374726963742d74616263>-6.566 E F0 4.066 <3c666e616d653e2028>6.566 F F3 4.066<7461626320756e69766572>B<7365>-.1 E F0<29>A F2 6.566<5d5b>C<2d7374726963742d74616272>-6.566 E F0 4.067 <3c666e616d653e2028>6.566 F F3 4.067<7461627220756e69766572>B<7365>-.1 E F0<29>A F2<5d>A<5b2d72>100 244.8 Q<657374726963742d746162>-.18 E F0 3.194<3c666e616d653e2028>5.694 F F3 3.194<74616220776f726c64>B F0<29>A F2 5.694<5d5b>C<2d72>-5.694 E<657374726963742d74616263>-.18 E F0 3.194 <3c666e616d653e2028>5.694 F F3 3.193<7461626320776f726c64>B F0<29>A F2 5.693<5d5b>C<2d72>-5.693 E<657374726963742d74616272>-.18 E F0 3.048 <3c666e616d653e2028>100 256.8 R F3 3.049<7461627220776f726c64>B F0<29>A F2 5.549<5d5b>C<2d657874656e642d746162>-5.549 E F0 3.049 <3c666e616d653e2028>5.549 F F3 3.049<746162206c61756e63>B<68>-.15 E F0 <29>A F2 5.549<5d5b>C<2d657874656e642d74616263>-5.549 E F0 3.049 <3c666e616d653e2028>5.549 F F3<74616263>A<6c61756e63>100 268.8 Q<68>-.15 E F0<29>A F2 7.587<5d5b>C<2d657874656e642d74616272>-7.587 E F0 5.087 <3c666e616d653e2028>7.587 F F3 5.087<74616272206c61756e63>B<68>-.15 E F0 <29>A F2 7.587<5d5b>C<2d3132332d6d6178>-7.587 E F0 5.086<3c696e743e2028> 7.587 F F3 5.086<73657420646f6d61696e2072>B<616e67>-.15 E<65>-.1 E F0 <29>A F2<5d>A<5b2d3132332d6d617863>100 280.8 Q F0 1.548<3c696e743e2028> 4.048 F F3 1.548<73657420636f6c756d6e2072>B<616e67>-.15 E<65>-.1 E F0 <29>A F2 4.048<5d5b>C<2d3132332d6d617872>-4.048 E F0 1.548 <3c696e743e2028>4.048 F F3 1.548<7365742072>B 1.548<6f772072>-.45 F <616e67>-.15 E<65>-.1 E F0<29>A F2 4.049<5d5b>C<2d2d737472>-4.049 E <65616d2d6c6f67>-.18 E F0<28>4.049 E F3<6c6f>A<67>-.1 E<7472>100 292.8 Q .338<616e73666f726d20737472>-.15 F .338<65616d2076616c756573>-.37 F F0 <29>A F2 2.838<5d5b>C<2d2d737472>-2.838 E<65616d2d6e65672d6c6f67>-.18 E F0<28>2.838 E F3<6e65>A .338<676174697665206c6f>-.4 F 2.838<6774>-.1 G -.15<7261>-2.838 G .338<6e73666f726d20737472>.15 F .337 <65616d2076616c756573>-.37 F F0<29>A F2 2.837<5d5b>C<2d2d737472>-2.837 E <65616d2d>-.18 E<6e65672d6c6f673130>100 304.8 Q F0<28>4.235 E F3<6e65>A 1.735<676174697665206c6f>-.4 F 1.735<672d3130207472>-.1 F 1.735 <616e73666f726d20737472>-.15 F 1.736<65616d2076616c756573>-.37 F F0<29>A F2 4.236<5d5b>C<2d737472>-4.236 E<65616d2d7466>-.18 E F0<28>4.236 E F3 <7472>A 1.736<616e73666f726d20737472>-.15 F 1.736<65616d2076616c756573> -.37 F F0<29>A F2<5d>A<5b2d7466>100 316.8 Q F0 .654 <3c74662d737065633e2028>3.154 F F3<7472>A .654 <616e73666f726d20286e6f7420736f29208c6e616c206d6174726978>-.15 F F0<29>A F2 3.154<5d5b>C<2d2d7472616e73706f7365>-3.154 E F0<28>3.154 E F3<7472>A <616e73706f7365>-.15 E F0<29>A F2 3.154<5d5b>C <2d2d77726974652d62696e617279>-3.154 E F0<28>3.154 E F3<6f75742d>A 2.038 <7075742062696e61727920666f726d6174>100 328.8 R F0<29>A F2 4.538<5d5b>C <2d2d646562>-4.538 E<7567>-.2 E F0<28>4.538 E F3<646562>A<7567>-.2 E F0 <29>A F2 4.538<5d5b>C<2d68>-4.538 E F0<28>4.538 E F3 2.038 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2 4.538 <5d5b>C<2d2d617072>-4.538 E<6f706f73>-.18 E F0<28>4.539 E F3 2.039 <7072696e742073796e6f707369732c>B -.2<6578>100 340.8 S<6974>.2 E F0<29>A F2 2.5<5d5b>C<2d2d76>-2.5 E<657273696f6e>-.1 E F0<28>2.5 E F3 <7072696e7420766572>A<73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F2<5d>A F1<47455454494e47205354>20 357.6 Q<4152>-.986 E<544544>-.438 E/F4 10 /Courier@0 SF<6d63786c6f6164202d2d73747265616d2d6d6972726f72202d61626320 64617461312e747874202d6f2064617461312e6d6369202d77726974652d746162206461 7461312e746162>118 369.6 Q<6d63786c6f6164202d2d73747265616d2d6d6972726f 72202d6574632064617461322e747874202d6f2064617461322e6d6369202d7772697465 2d7461622064617461322e746162>118 381.6 Q<6d63786c6f6164202d2d7374726561 6d2d6d6972726f72202d7369662064617461332e747874202d6f2064617461332e6d6369 202d77726974652d7461622064617461332e746162>118 393.6 Q F0 .294<5768656e 20746865206f75747075742073686f756c6420626520616e20756e646972656374656420 67726170682069742069732073616665737420746f20616c>100 417.6 R -.1<7761> -.1 G .294<79732075736520746865>.1 F F4<2d2d73747265616d2d6d69722d>2.794 E<726f72>100 429.6 Q F0 .961<6f7074696f6e2e204564676573206172652073746f 726564206269646972656374696f6e616c6c79206173207477>3.461 F 3.461<6f61> -.1 G .962<7263732c20616e642074686973206f7074696f6e20696e73747275637473> -3.461 F F2<6d63786c6f6164>3.462 E F0<746f>3.462 E .187 <656e73757265207468617420626f74682061726373206172652070726573656e742e> 100 441.6 R .187<496e207468652061626f>5.187 F .487 -.15<7665206578>-.15 H .187<616d706c657320746872656520646966>.15 F .187 <666572656e74207479706573206f6620666f726d61742061726520726561642e>-.25 F .293<496e20616c6c20666f726d6174732c2074686520626173696320756e6974206f66 2073706563698c636174696f6e2069732074686174206f6620616e206172632073706563 698c6564206279206120736f75726365206e6f64652c20612064657374692d>100 453.6 R .833<6e6174696f6e206e6f64652c20616e64206f7074696f6e616c6c792061207765 696768742e20416c6c20666f726d61747320617265206c696e652062617365642c207769 7468>100 465.6 R F2<2d616263>3.332 E F0 .832 <73706563696679696e6720612073696e676c65>3.332 F .753<61726320616e64>100 477.6 R F2<2d657463>3.253 E F0<616e64>3.253 E F2<2d736966>3.253 E F0 .753<73706563696679696e67206d756c7469706c65206172637320636f72726573706f 6e64696e6720746f20612073686172656420736f75726365206e6f64652e>3.253 F -.15<466f>5.754 G<72>.15 E F2<2d616263>3.254 E F0 <74686520666f726d6174206973>100 489.6 Q F4 18 <3c736f757263652d6c6162656c3e203c64657374696e6174696f6e2d6c6162656c3e> 100 513.6 R<5b3c7765696768743e5d>30 E F0 .648<546865206c617374208c656c64 2c2073706563696679696e672074686520617263207765696768742c206973206f707469 6f6e616c2e204966206e6f742070726573656e7420746865206172632077656967687420 77696c6c2062652073657420746f>100 537.6 R<74686520646566>100 549.6 Q <61756c7420776569676874206f6620312e302e2046>-.1 E<6f72>-.15 E F2 <2d736966>2.5 E F0<74686520666f726d6174206973>2.5 E F4 18 <3c736f757263652d6c6162656c3e203c72656c6174696f6e2d747970653e>100 573.6 R 12<3c64657374696e6174696f6e2d6c6162656c3e203c64657374696e6174696f6e2d 6c6162656c3e>18 F<2e2e2e>12 E F0 .279<54686572652063616e20626520616e2061 7262697472617279206e756d626572206f662064657374696e6174696f6e206c6162656c 732e205468652072656c6174696f6e2074797065208c656c6420696e2074686520736563 6f6e6420636f6c2d>100 597.6 R .559<756d6e2069732072657175697265642062>100 609.6 R .558<75742077696c6c2062652069676e6f7265642e20417320616e2065>-.2 F .558<7874656e73696f6e20697420697320706f737369626c6520746f207370656369 667920776569676874732c20726571756972696e67>-.15 F .758 <74686520757365206f6620746865>100 621.6 R F2<2d2d6578706563742d76>3.258 E<616c756573>-.1 E F0 3.258<6f7074696f6e2e2057>3.258 F .759<656967687473 206172652073706563698c65642062792074616767696e67207468656d206f6e746f2074 68652064657374696e612d>-.8 F <74696f6e206c6162656c20736570617261746564206279206120636f6c6f6e3a>100 633.6 Q F4 18 <3c736f757263652d6c6162656c3e203c72656c6174696f6e2d747970653e>100 657.6 R 12<3c64657374696e6174696f6e2d6c6162656c3e3a3c7765696768743e203c646573 74696e6174696f6e2d6c6162656c3e3a3c7765696768743e>18 F<2e2e2e>12 E F0 <46696e616c6c79>100 681.6 Q 4.65<2c74>-.65 G 2.15 <686520666f726d617420666f7220746865>-4.65 F F2<2d657463>4.65 E F0 2.15 <6f7074696f6e206973207468652073616d652c2065>4.65 F 2.15<7863657074207468 6174207468652072656c6174696f6e207479706520636f6c756d6e206973>-.15 F <64726f707065642e>100 693.6 Q<6d63786c6f61642031322d313335>20 768 Q <3134204d61792032303132>142.065 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.675<6d63786c6f61642831292055534552>20 48 R 143.175<434f4d4d414e4453206d63786c6f6164283129>2.5 F/F1 10.95 /Times-Bold@0 SF<4445534352495054494f4e>20 84 Q/F2 10/Times-Bold@0 SF <6d63786c6f6164>100 96 Q F0 .164<7265616473206c6162656c20696e7075742066 726f6d2061208c6c652e2054686520666f726d6174206f6620746865208c6c652073686f 756c64206265206c696e652d62617365642c2065616368206c696e6520636f6e2d>2.664 F 1.145<7461696e696e67207477>100 108 R 3.645<6f77>-.1 G 1.144<686974652d 73706163652073657061726174656420737472696e677320286c6162656c732920616e64 206f7074696f6e616c6c792061206e756d626572207365706172617465642066726f6d20 746865>-3.645 F .364<7365636f6e64206c6162656c20627920776869746573706163 652e20496e2074686520616273656e6365206f6620612076>100 120 R .364 <616c75652c206d63786c6f61642077696c6c207573652074686520646566>-.25 F .364<61756c742076>-.1 F .365<616c756520312e302e204966>-.25 F 3.088<6174> 100 132 S .587<61622069732070726573656e74206f6e20616e20696e707574206c69 6e652c206d63786c6f61642077696c6c20617373756d6520746861742074686520746162 206368617261637465722069732074686520736570617261746f7220666f72>-3.088 F< 74686174206c696e652e204c696e657320666f7220776869636820746865208c72737420 6e6f6e2d776869746573706163652063686172616374657220697320616e206f63746f74 686f727065202827>100 144 Q/F3 10/Courier@0 SF<23>A F0 <27292061726520736b69707065642e>A F2<6d63786c6f6164>100 168 Q F0 1.645< 77696c6c207472616e73666f726d20746865206c6162656c7320696e746f206d636c206e 756d65726963616c206964656e74698c65727320616e6420746865207061697273206f66 206c6162656c7320696e746f>4.145 F .922 <6772617068206564676573206f722065717569>100 180 R -.25<7661>-.25 G .921< 6c656e746c79206d617472697820656e74726965732e2054686520776569676874206f66 20616e2065646765206973207468652076>.25 F .921 <616c7565206173736f6369617465642077697468>-.25 F .462<746865206173736f63 6961746564206c6162656c732e206d63786c6f616420636f6e7374727563747320646963 74696f6e61726965732028736f6d6574696d6573206a757374206f6e6529207468617420 6d6170206c6162656c73206f6e746f>100 192 R .769<6d636c206964656e74698c6572 7320617320697420676f657320616c6f6e672e2049742063616e206f7074696f6e616c6c 7920777269746520746865736520746f208c6c652e20496e204d434c202866>100 204 R .769<616d696c7929207061726c616e63652c>-.1 F<7375636820612064696374696f6e 617279207772697474656e20746f208c6c652069732063616c6c65642061>100 216 Q /F4 10/Times-Italic@0 SF<746162208c6c65>2.5 E F0<2e>A .35<49742069732070 6f737369626c6520746f2073706563696679206e756d65726963616c206964656e74698c 657273206469726563746c79207769746820746865>100 240 R F2<2d313233>2.85 E F0 .35<6f7074696f6e2e20496e20746869732063617365>2.85 F F2 <6d63786c6f6164>2.85 E F0 .498 <617373756d657320612063616e6f6e6963616c20646f6d61696e20286366>100 252 R F2<6d6378696f>2.997 E F0 2.997<2961>C .497<6e642077696c6c20637265617465 20746865206d696e696d616c2063616e6f6e6963616c20646f6d61696e20746861742073 75702d>-2.997 F<706f7274732074686520646174612e20416c736f206265617220696e 206d696e6420746865206361>100 264 Q -.15<7665>-.2 G <617420667572746865722062656c6f>.15 E<772e>-.25 E 1.554 <497420697320706f737369626c6520746f206566>100 288 R<6665637469>-.25 E -.15<7665>-.25 G 1.554<6c79207072656465636c617265206c6162656c7320616e64 207468757320656e666f72636520616e20612d7072696f7269206b6e6f>.15 F 1.555 <776e206d617070696e67206f66>-.25 F .223 <6c6162656c73206f6e746f206e756d65726963616c206964656e74698c6572732e>100 300 R .223<4c6162656c73207265636569>5.223 F .523 -.15<76652061>-.25 H 2.723<6e69>.15 G .223 <64656e74698c657220696e20746865206f7264657220696e20776869636820746865> -2.723 F 2.722<796f>-.15 G .222<6363757220696e>-2.722 F .986<7468652069 6e7075742e205072656465636c6172696e67206c6162656c732063616e20626520616368 6965>100 312 R -.15<7665>-.25 G 3.487<6462>.15 G 3.487<7968>-3.487 G -.2 <6176>-3.487 G .987<696e67207468656d2061707065617220696e2074686520646573 69726564206f7264657220616e64>.2 F <73657474696e672074686520656467652077656967687420746f207a65726f2e>100 324 Q 3.947<416d>100 348 S 1.447<616a6f72206d63786c6f6164206d6f64616c69 747920697320776865746865722074686520696e7075742072656665727320746f206120 73696e676c6520646f6d61696e206f7220746f207477>-3.947 F 3.946<6f73>-.1 G <65706172617465>-3.946 E .34<646f6d61696e732e20416e2065>100 360 R .34<78 616d706c65206f6620746865208c727374206973207768657265206c6162656c73206172 65206e616d6573206f662070656f706c6520616e64207468652076>-.15 F .34 <616c7565206973207468652065>-.25 F<7874656e74>-.15 E 1.333 <746f20776869636820746865>100 372 R 3.833<796c>-.15 G<696b>-3.833 E 3.833<656f>-.1 G 1.333 <6e6520616e6f746865722e205468697320656e636f6465732061>-3.833 F F4 <6c696b6162696c697479>3.833 E F0 1.332 <677261706820776865726520616c6c20746865206e6f64657320726570726573656e74> 3.833 F 1.16<70656f706c652e2054686520726561736f6e61626c65207468696e6720 746f20646f20696e2074686973206361736520697320746f206372656174652061207369 6e676c652064696374696f6e617279207769746820616c6c206e616d6573>100 384 R <7768657265>100 396 Q -.15<7665>-.25 G 3.022<7274>.15 G<6865>-3.022 E 3.022<796f>-.15 G .522<636375722e20416c6c>-3.022 F F2<746162>3.022 E F0 .521<6f7074696f6e7320286173206f70706f73656420746f>3.021 F F2<74616263> 3.021 E F0<616e64>3.021 E F2<74616272>3.021 E F0 3.021<2970>C .521 <65727461696e20746f2074686973207363656e6172696f20616e64>-3.021 F<6c696b> 100 408 Q -.25<6577>-.1 G<69736520666f7220746865206f7074696f6e73>.25 E F2<2d2d6772617068>2.5 E F0<616e64>2.5 E F2<2d2d737472>2.5 E <65616d2d6d697272>-.18 E<6f72>-.18 E F0<2e>A .084<416e2065>100 432 R .085<78616d706c65206f6620746865207365636f6e64206d6f64652069732077686572 6520746865208c727374206c6162656c206973206167>-.15 F .085<61696e20746865 206e616d65206f66206120706572736f6e2c20746865207365636f6e64>-.05 F .486< 6c6162656c20697320746865206e616d65206f6620616e20616e696d616c207370656369 65732c20616e64207468652076>100 444 R .486<616c7565206973207468652065> -.25 F .486 <7874656e7420746f207768696368207468617420706572736f6e20617070726563692d> -.15 F .203<617465732074686520737065636965732e20496e20746869732063617365 2c2074686520726561736f6e61626c65207468696e6720746f20646f20697320746f2063 7265617465207477>100 456 R 2.704<6f64>-.1 G .204 <696374696f6e61726965732c206f6e6520666f7220706572>-2.704 F<2d>-.2 E .989 <736f6e7320616e64206f6e6520666f7220737065636965732e20416c6c>100 468 R F2 <74616263>3.489 E F0<616e64>3.489 E F2<74616272>3.489 E F0 .989<6f707469 6f6e73207065727461696e20746f2074686973207363656e6172696f2e20546865>3.489 F F2<74616263>3.488 E F0<6f7074696f6e73>3.488 E F4 .122 <616c776179732072>100 480 R .122<6566657220746f20746865208c72>-.37 F .122<7374206c6162656c>-.1 F F0 .122<616e6420746865>2.622 F F2<74616272> 2.622 E F0<6f7074696f6e73>2.622 E F4 .122<616c776179732072>2.622 F .122 <6566657220746f20746865207365636f6e64206c6162656c>-.37 F F0 5.123<2e54>C .123<6865206c657474657273>-5.123 F F2<63>2.623 E F0<616e64>100 492 Q F2 <72>2.826 E F0 .326<726566657220746f>2.826 F F4<636f6c756d6e>2.826 E F0 <616e64>2.826 E F4 -.45<726f>2.825 G<77>.45 E F0<7265737065637469>2.825 E -.15<7665>-.25 G 2.825<6c792e20546865>.15 F .325<6c617474657220617265 20746865206e616d6573206f6620746865206d617472697820646f6d61696e7320636f72> 2.825 F<2d>-.2 E<726573706f6e64696e6720746f2074686520696e70757420646f6d 61696e732e20526566657220746f>100 504 Q F2<6d6378696f283529>2.5 E F0<2e>A 3.635<4166>100 528 S 1.135<757274686572206d63786c6f6164206d6f64616c6974 79206973207768657468657220697420636f6e737472756374732064696374696f6e6172 696573206f6e20746865208d79>-3.635 F 3.636<2c6f>-.65 G 3.636<7277>-3.636 G 1.136<6865746865722069742070726f2d>-3.636 F .093 <63656564732066726f6d206120746162208c6c6520616c72656164792061>100 540 R -.25<7661>-.2 G 2.593<696c61626c652e204279>.25 F<646566>2.593 E .092<61 756c74206d63786c6f61642077696c6c20636f6e7374727563742064696374696f6e6172 696573206f6e20746865208d792e>-.1 F -1.1<596f>100 552 S 3.442<756e>1.1 G .942<65656420746f207361>-3.442 F 1.242 -.15<76652074>-.2 H .942 <68656d20776974682074686520617070726f707269617465>.15 F F2<2d7772697465> 3.442 E F0 3.443<6f7074696f6e2873292e20416c6c>3.443 F<746865>3.443 E F2 <737472696374>3.443 E F0 .943<6f7074696f6e732072656164206120746162>3.443 F 1.415<8c6c6520616e64207265717569726520616e>100 564 R 3.915<796c>-.15 G 1.415<6162656c7320696e20746865>-3.915 F F2<2d616263>3.915 E F4 1.415 <6c6162656c20696e707574>2.5 F F0 1.415<746f2062652070726573656e7420696e 2074686520636f72726573706f6e64696e6720746162208c6c652e>3.915 F .457 <6d63786c6f61642077696c6c207468656e2066>100 576 R .457 <61696c20696e207468652066>-.1 F .457 <616365206f6620616273656e74206c6162656c732e>-.1 F .458<416c6c20746865> 5.458 F F2 -.18<7265>2.958 G<737472696374>.18 E F0 .458 <6f7074696f6e732073696d706c792069676e6f7265206c6162656c73>2.958 F .556< 7468617420617265206e6f7420666f756e6420696e2074686520636f72726573706f6e64 696e6720746162208c6c652e>100 588 R<546865>5.556 E F2<657874656e64>3.056 E F0 .555<6f7074696f6e732065>3.055 F .555<7874656e64207468652065>-.15 F .555<78697374696e6720746162208c6c65>-.15 F 1.168 <77697468206c6162656c73207468617420617265206e6f7420666f756e642e>100 600 R 1.169<49742070726573756d61626c79206f6e6c79206d616b>6.169 F 1.169<6573 2073656e736520746f20646f20736f2069662074686520636f72726573706f6e64696e67> -.1 F F2<2d7772697465>100 612 Q F0 <6f7074696f6e732061726520757365642061732077656c6c2e>2.5 E<54686520696e70 75742073747265616d2069732064656475706c696361746564206f6e206120706572>100 636 Q <2d6e6f6465206e65696768626f7572686f6f64206261736973207573696e6720746865> -.2 E F2<2d72>2.5 E<65>-.18 E F0<6f7074696f6e2e>2.5 E .26 <6d63786c6f6164206861732061206665>100 660 R 2.76<776f>-.25 G .26<707469 6f6e7320746f207472616e73666f726d206f722073656c656374206261736564206f6e20 7468652076>-2.76 F .259 <616c75657320696e2074686520696e7075742073747265616d20616e6420746865>-.25 F -.25<7661>100 672 S 2.718<6c75657320696e2074686520636f6e73747275637465 64206d61747269782e20546865736520617265>.25 F F2<2d2d737472>5.218 E <65616d2d6c6f67>-.18 E F0<2c>A F2<2d2d737472>5.218 E <65616d2d6e65672d6c6f67>-.18 E F0<2c>A F2<2d2d737472>5.218 E <65616d2d6e65672d>-.18 E<6c6f673130>100 684 Q F0<2c>A F2<2d737472>2.862 E<65616d2d7466>-.18 E F0<616e64>2.862 E F2<2d7466>2.862 E F0 5.362<2e52> C .362<6566657220746f>-5.362 F F2<6d6378696f283529>2.862 E F0 .362<666f 722061206465736372697074696f6e206f66207468652073796e74617820616363657074 656420627920746865206c61742d>2.862 F 1.064<746572207477>100 696 R 3.564 <6f6f>-.1 G 1.064<7074696f6e7320ad20697420697320612073796e74617820616363 65707465642062792061206665>-3.564 F 3.564<776d>-.25 G 1.064 <6f7265206d636c207369626c696e67732e>-3.564 F 1.065 <46696e616c6c7920697420697320706f737369626c6520746f>6.064 F 1.682 <7472616e73706f736520746865208c6e616c20726573756c74207573696e6720746865> 100 708 R F2<2d2d7472616e73706f7365>4.182 E F0 1.682<6f7074696f6e2e204b> 4.182 F 1.682 <65657020696e206d696e642074686174206d63786c6f616420646f6573206e6f74>-.25 F<6163636f7264696e676c79206368616e6765206974732069646561206f6620726f>100 720 Q 2.5<7761>-.25 G<6e6420636f6c756d6e20646f6d61696e732e>-2.5 E <6d63786c6f61642031322d313335>20 768 Q<3134204d61792032303132>142.065 E <32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.675<6d63786c6f61642831292055534552>20 48 R 143.175<434f4d4d414e4453206d63786c6f6164283129>2.5 F<546865208c6e616c20 6d61747269782063616e2062652073796d6d657472698c6564207573696e6720746865> 100 84 Q/F1 10/Times-Bold@0 SF<2d7269>2.5 E F0<6f7074696f6e2e>2.5 E <546865>100 108 Q F1<2d657463>3.079 E F0<2c>A F1<2d323335>3.079 E F0 <616e64>3.079 E F1<2d736966>3.079 E F0 .579<6f7074696f6e7320617373756d65 206120666f726d617420776865726520616c6c20656e747269657320666f722061206769> 3.079 F -.15<7665>-.25 G 3.08<6e63>.15 G .58 <6f6c756d6e20286f722065717569>-3.08 F<762d>-.25 E .671 <616c656e746c7920616c6c206e65696768626f75727320666f722061206769>100 120 R -.15<7665>-.25 G 3.171<6e6e>.15 G .67<6f64652920617265206a6f696e656420 6f6e746f20612073696e676c65206c696e652e20546869732063616e2062652075736566 756c20652e672e20746f>-3.171 F .123<7265616420696e2065>100 132 R .123<78 7465726e616c6c792067656e65726174656420636c7573746572696e67732e20546865> -.15 F F1<2d657463>2.623 E F0<616e64>2.624 E F1<2d736966>2.624 E F0 .124 <6f7074696f6e732065>2.624 F .124 <7870656374206c6162656c20696e7075742c207768657265617320746865>-.15 F F1 <2d323335>100 144 Q F0 .863<6f7074696f6e732065>3.363 F .863<787065637473 206e756d6265727320696e2074686520696e707574207468617420617265206d61707065 64206469726563746c79206f6e746f206d636c206e756d65726963616c206964656e7469 2d>-.15 F 3.453<8c6572732e20546865>100 156 R .953 <53494620666f726d61742065>3.453 F .953<78706563746564206279>-.15 F F1 <2d736966>3.453 E F0 .953<72657175697265732061>3.453 F/F2 10 /Times-Italic@0 SF -.37<7265>3.453 G .953 <6c6174696f6e736869702074797065>.37 F F0 .953 <696e20746865207365636f6e64208c656c64206f6e2065616368>3.453 F .057 <6c696e653b20746869732069732069676e6f7265642e>100 168 R .057 <417320616e2065>5.057 F .057<7874656e73696f6e20746f20746865205349462066 6f726d61742077656967687473206d6179206f7074696f6e616c6c7920666f6c6c6f> -.15 F 2.556<7774>-.25 G .056<6865206c6162656c732c>-2.556 F<736570617261 7465642066726f6d207468656d2077697468206120636f6c6f6e20636861726163746572 2e>100 180 Q F1<4341>100 204 Q<564541>-1.45 E<54>-.95 E F0 .522<506c6561 7365206e6f746520746861742062792066656564696e6720746865206c696e6520273130 303030303030303020312720746f>100 216 R F1<6d63786c6f6164>3.022 E F0 .523 <7769746820656974686572206f6620746865>3.022 F F1<2d323335>3.023 E F0 <6f72>3.023 E F1<2d313233>3.023 E F0 .65<6f7074696f6e732069742077696c6c 2074727920746f20616c6c6f636174652061206d61747269782077697468206f6e652062 696c6c696f6e20636f6c756d6e732e2054686973206973206d6f7374206c696b>100 228 R .649<656c79206e6f742077686174206973>-.1 F -.1<7761>100 240 S 3.197 <6e7465642e20417373756d696e67>.1 F .698 <746861742074686520696e70757420636f6e7461696e73206665>3.197 F .698<7765 72207468616e206f6e652062696c6c696f6e20756e69717565206c6162656c732c206f6e 652073686f756c6420757365>-.25 F <746865206c6162656c206f7074696f6e73206173206465736372696265642061626f> 100 252 Q .3 -.15<76652061>-.15 H<6e642062656c6f>.15 E<772e>-.25 E F1 <5354>100 276 Q -.55<4147>-.9 G<4553>.55 E F0<436f6e6365707475616c6c79> 100 288 Q 2.5<2c69>-.65 G<6e707574206d6174726978206372656174696f6e20636f 6e7369737473206f662074686520666f6c6c6f>-2.5 E<77696e6720737461676573> -.25 E 20<6952>117.22 312 S 1.255 <6561642074686520696e7075742073747265616d2c206170706c79>-20 F F1 <2d737472>3.754 E<65616d2d7466>-.18 E F0 1.254<7472616e73666f726d617469 6f6e2073706563698c636174696f6e2c20616e64206f7074696f6e616c6c79>3.754 F <70757368207265>140 324 Q -.15<7665>-.25 G<72736520656c656d656e74732028> .15 E F1<2d2d737472>A<65616d2d6d697272>-.18 E<6f72>-.18 E F0<292e>A 17.5 <69692044656475706c6963617465>114.44 336 R 2.384 <656467657320696e2074686520636f6e7465>4.884 F 2.384<7874206f6620616c6c20 65646765732f61726373206f726967696e6174696e672066726f6d2061206769>-.15 F -.15<7665>-.25 G 4.885<6e6e>.15 G<6f6465>-4.885 E <6163636f7264696e6720746f20746865>140 348 Q F1<2d72>2.5 E<65>-.18 E F0 <6f7074696f6e2e>2.5 E 17.5<696969204170706c79>111.66 360 R<7472616e7370 6f73652073796d6d657472698c636174696f6e206163636f7264696e6720746f20746865> 2.5 E F1<2d7269>2.5 E F0<6f7074696f6e2c20696620757365642e>2.5 E 18 -.25 <69762041>112.47 372 T<70706c79>.25 E F1<2d7466>2.5 E F0 <7472616e73666f726d6174696f6e2073706563698c636174696f6e2e>2.5 E/F3 10.95 /Times-Bold@0 SF<4f5054494f4e53>20 388.8 Q F1<2d616263>100 400.8 Q F0 <3c666e616d653e2028>2.5 E F2<6c6162656c208c6c65>A F0<29>A 2.046<54686520 8c6c6520746f2072656164206c6162656c20646174612066726f6d2e204c6162656c7320 617265207365706172617465642062792077686974652d73706163652e20546865206c61 62656c73206d6179>120 412.8 R .881 <6f7074696f6e616c6c7920626520666f6c6c6f>120 424.8 R .881 <77656420627920612076>-.25 F .881<616c756520286167>-.25 F .882<61696e20 7365706172617465642062792077686974652d7370616365292c20776869636820697320 74616b>-.05 F .882<656e20617320746865>-.1 F .07<656467652077656967687420 6265747765656e20746865206e6f64657320636f72726573706f6e64696e672077697468 20746865206c6162656c732e2049662061207461622069732070726573656e74206f6e20 616e20696e707574>120 436.8 R .227<6c696e652069742069732070726573756d6564 20746f2062652074686520736570617261746f7220666f722074686174206c696e652c20 696e636c7564696e67207468652076>120 448.8 R .227 <616c75652069662070726573656e742e>-.25 F .228<4c696e657320666f72>5.227 F <776869636820746865208c727374206e6f6e2d626c616e6b2063686172616374657220 697320746865206f63746f74686f727065202827>120 460.8 Q/F4 10/Courier@0 SF <23>A F0<27292061726520736b69707065642e>A F1<2d313233>100 484.8 Q F0 <3c666e616d653e2028>2.5 E F2<6964656e74698c6572208c6c65>A F0<29>A .306< 546865208c6c6520746f2072656164206e756d65726963616c20646174612066726f6d2e 2054686520666f726d6174206973207468652073616d6520617320666f72206c6162656c 20646174612c2062>120 496.8 R .305<757420746865206964656e2d>-.2 F<74698c 65727320617265206469726563746c79206d6170706564206f6e746f206d636c20696465 6e74698c65727320617320646573637269626564206561726c6965722e>120 508.8 Q F1<2d6f>100 532.8 Q F0<3c666e616d653e2028>2.5 E F2<6f7574707574208c6c65> A F0<29>A<546865206f7574707574208c6c652077686572652074686520636f6e737472 7563746564206d6174726978206973207772697474656e2e>120 544.8 Q F1 <2d2d737472>100 568.8 Q<65616d2d6d697272>-.18 E<6f72>-.18 E F0<28>2.5 E F2<73796d6d657472696679>A 2.5<2c73>-.55 G<616d6520646f6d61696e>-2.5 E F0 <29>A<5768656e65>120 580.8 Q -.15<7665>-.25 G<72>.15 E F2 1.375 <6c6162656c31206c6162656c322076616c7565>3.875 F F0 1.375<697320656e636f 756e746572656420696e2074686520696e7075742c206d63786c6f616420696e73657274 73>3.875 F F2 1.375<6c6162656c32206c6162656c31>3.875 F<76616c7565>120 592.8 Q F0 .9<696e2074686520696e7075742073747265616d2061732077656c6c2e20 54686973206f7074696f6e20696d706c696573207468617420626f7468206c6162656c73 2062656c6f6e6720746f207468652073616d65>3.4 F<646f6d61696e2e>120 604.8 Q F1<2d2d737472>100 628.8 Q<65616d2d73706c6974>-.18 E F0<28>2.5 E F2 <617373756d6520646966>A<666572>-.18 E<656e7420646f6d61696e73>-.37 E F0 <29>A .123<546869732074656c6c73206d63786c6f6164207468617420746865207477> 120 640.8 R 2.623<6f6c>-.1 G .124 <6162656c732062656c6f6e6720746f20646966>-2.623 F .124 <666572656e7420646f6d61696e732e>-.25 F .124 <5468652070726f6772616d2077696c6c20637265617465>5.124 F<7477>120 652.8 Q 3.255<6f74>-.1 G .755<6162208c6c65732c206f6e6520666f7220636f6c756d6e7320 616e64206f6e6520666f7220726f>-3.255 F .754 <77732e20546869732063616e206265207573656420666f722065>-.25 F .754 <78616d706c6520746f206372656174652061>-.15 F<6c6f676963616c206d61707069 6e67206f662067656e65206964656e74698c65727320746f207370656369657320696465 6e74698c6572732e>120 664.8 Q F1<2d72>100 688.8 Q<65>-.18 E F0 <3c6d61787c6164647c6d756c7c8c7273747c6c6173743e2028>2.5 E F2 <64656475706c69636174696f6e206d6f6465>A F0<29>A .036 <546869732073706563698c657320686f>120 700.8 R 2.536<776d>-.25 G .037<63 786c6f61642073686f756c6420636f6c6c6170736520726570656174656420656e747269 65732c207468617420697320656467657320666f7220776869636820612076>-2.536 F <616c7565>-.25 E 1.672<69732073706563698c6564206d756c7469706c652074696d 65732e205468697320697320646f6e652072656c617469>120 712.8 R 1.971 -.15 <76652074>-.25 H 4.171<6f6173>.15 G 1.671 <696e676c65206e6f646520617420612074696d652c2074616b696e6720696e746f> -4.171 F 1.221<6163636f756e7420616c6c206e65696768626f75727320617373656d 626c65642066726f6d2074686520696e7075742073747265616d2e204e6f746520746861 74>120 724.8 R F1<2d2d737472>3.721 E<65616d2d6d697272>-.18 E<6f72>-.18 E F0<77696c6c>3.721 E<6d63786c6f61642031322d313335>20 768 Q <3134204d61792032303132>142.065 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.675<6d63786c6f61642831292055534552>20 48 R 143.175<434f4d4d414e4453206d63786c6f6164283129>2.5 F .144<726573756c7420 696e206475706c69636174656420656e74726965732069662074686520696e7075742063 6f6e7461696e7320656467652073706563698c636174696f6e7320696e20626f74682077> 120 84 R 2.644<6179732e20416c736f>-.1 F<6e6f7465>2.644 E<74686174>120 96 Q/F1 10/Times-Bold@0 SF<8c727374>2.5 E F0<616e64>2.5 E F1<6c617374>2.5 E F0<6d69676874206e6f7420726573756c7420696e2073796d6d657472696320696e7075 74206966206f6e6c79>2.5 E F1<2d2d737472>2.5 E<65616d2d6d697272>-.18 E <6f72>-.18 E F0<697320757365642e>2.5 E F1<2d77726974652d746162>100 120 Q F0<3c666e616d653e2028>2.5 E/F2 10/Times-Italic@0 SF <7361766520646f6d61696e20746162>A F0<29>A<57726974652074686520646f6d6169 6e20746f208c6c652e204974206170706c69657320746f20626f7468206c6162656c2074 797065732e>120 132 Q F1<2d77726974652d74616263>100 156 Q F0 <3c666e616d653e2028>2.5 E F2<7361766520636f6c756d6e20746162>A F0<29>A<57 726974652074686520636f6c756d6e20646f6d61696e20746f208c6c652e204974206170 706c69657320746f20746865208c727374206c6162656c20666f756e64206f6e20656163 6820696e707574206c696e652e>120 168 Q F1<2d77726974652d74616272>100 192 Q F0<3c666e616d653e2028>2.5 E F2<736176652072>A<6f7720746162>-.45 E F0<29> A<57726974652074686520636f6c756d6e20646f6d61696e20746f208c6c652e20497420 6170706c69657320746f20746865207365636f6e64206c6162656c20666f756e64206f6e 206561636820696e707574206c696e652e>120 204 Q F1<2d7374726963742d746162> 100 228 Q F0<3c666e616d653e2028>2.5 E F2<74616220756e69766572>A<7365>-.1 E F0<29>A .575<5265616420612064696374696f6e6172792066726f6d208c6c652061 6e6420726571756972652065616368206c6162656c20746f2062652070726573656e7420 696e207468652064696374696f6e6172792e206d63786c6f6164>120 240 R <77696c6c2065>120 252 Q<786974206f6e20616273656e746565732e>-.15 E F1 <2d7374726963742d74616263>100 276 Q F0<3c666e616d653e2028>2.5 E F2 <7461626320756e69766572>A<7365>-.1 E F0<29>A .572<5265616420612064696374 696f6e6172792066726f6d208c6c6520616e64207265717569726520746865208c727374 206c6162656c206f6e2065616368206c696e6520746f2062652070726573656e7420696e 20746865206469632d>120 288 R <74696f6e6172792e206d63786c6f61642077696c6c2065>120 300 Q <786974206f6e20616273656e746565732e>-.15 E F1<2d7374726963742d74616272> 100 324 Q F0<3c666e616d653e2028>2.5 E F2<7461627220756e69766572>A<7365> -.1 E F0<29>A .949<5265616420612064696374696f6e6172792066726f6d208c6c65 20616e64207265717569726520746865207365636f6e64206c6162656c206f6e20656163 68206c696e6520746f2062652070726573656e7420696e20746865>120 336 R <64696374696f6e6172792e206d63786c6f61642077696c6c2065>120 348 Q <786974206f6e20616273656e746565732e>-.15 E F1<2d72>100 372 Q <657374726963742d746162>-.18 E F0<3c666e616d653e2028>2.5 E F2 <74616220776f726c64>A F0<29>A 1.112<5265616420612064696374696f6e61727920 66726f6d208c6c6520616e64206f6e6c792061636365707420696e707574206c696e6573 202865646765732920666f7220776869636820626f7468206c6162656c7320617265>120 384 R<70726573656e7420696e207468652064696374696f6e6172792e>120 396 Q <6d63786c6f61642077696c6c2069676e6f726520616273656e746565732e>5 E F1 <2d72>100 420 Q<657374726963742d74616263>-.18 E F0<3c666e616d653e2028> 2.5 E F2<7461626320776f726c64>A F0<29>A .065<5265616420612064696374696f 6e6172792066726f6d208c6c6520616e642069676e6f726520696e707574206c696e6573 20666f7220776869636820746865208c727374206c6162656c20697320616273656e7420 66726f6d20746865>120 432 R<64696374696f6e6172792e>120 444 Q F1<2d72>100 468 Q<657374726963742d74616272>-.18 E F0<3c666e616d653e2028>2.5 E F2 <7461627220776f726c64>A F0<29>A .226<5265616420612064696374696f6e617279 2066726f6d208c6c6520616e642069676e6f726520696e707574206c696e657320666f72 20776869636820746865207365636f6e64206c6162656c20697320616273656e74206672 6f6d>120 480 R<7468652064696374696f6e6172792e>120 492 Q F1 <2d657874656e642d746162>100 516 Q F0<3c666e616d653e2028>2.5 E F2 <746162206c61756e63>A<68>-.15 E F0<29>A .062 <5265616420612064696374696f6e6172792066726f6d208c6c6520616e642065>120 528 R .062<7874656e64206974207769746820616e>-.15 F 2.562<796c>-.15 G .062<6162656c2066726f6d2074686520696e707574206e6f7420796574207072657365 6e7420696e20746865>-2.562 F<64696374696f6e6172792e>120 540 Q F1 <2d657874656e642d74616263>100 564 Q F0<3c666e616d653e2028>2.5 E F2 <74616263206c61756e63>A<68>-.15 E F0<29>A .498 <5265616420612064696374696f6e6172792066726f6d208c6c6520616e642065>120 576 R .497<7874656e64206974207769746820616c6c208c727374206c6162656c7320 66726f6d2074686520696e707574206e6f74207965742070726573656e74>-.15 F <696e207468652064696374696f6e6172792e>120 588 Q F1 <2d657874656e642d74616272>100 612 Q F0<3c666e616d653e2028>2.5 E F2 <74616272206c61756e63>A<68>-.15 E F0<29>A 1.727 <5265616420612064696374696f6e6172792066726f6d208c6c6520616e642065>120 624 R 1.727<7874656e64206974207769746820616c6c207365636f6e64206c6162656c 732066726f6d2074686520696e707574206e6f7420796574>-.15 F <70726573656e7420696e207468652064696374696f6e6172792e>120 636 Q F1 <2d3132332d6d6178>100 660 Q F0<3c696e743e2028>2.5 E F2 <73657420646f6d61696e2072>A<616e67>-.15 E<65>-.1 E F0<29>A .622 <4e756d62657273207374617274696e672066726f6d>120 672 R F2<3c696e743e> 3.122 E F0 .621<77696c6c2062652069676e6f7265642c20616e642074686520646f6d 61696e20287573656420666f7220626f746820636f6c756d6e7320616e64>3.122 F <726f>120 684 Q<7773292077696c6c2072616e67652066726f6d207a65726f20757020 746f206f6e65206c657373207468616e>-.25 E F2<3c696e743e>2.5 E F0<2e>A F1 <2d3132332d6d617863>100 708 Q F0<3c696e743e2028>2.5 E F2 <73657420636f6c756d6e2072>A<616e67>-.15 E<65>-.1 E F0<29>A 2.356 <4e756d62657273207374617274696e672066726f6d>120 720 R F2<3c696e743e> 4.856 E F0 2.356<77696c6c2062652069676e6f72656420696e2074686520636f6c75 6d6e20646f6d61696e2c20616e642074686520636f6c756d6e>4.856 F <6d63786c6f61642031322d313335>20 768 Q<3134204d61792032303132>142.065 E <34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.675<6d63786c6f61642831292055534552>20 48 R 143.175<434f4d4d414e4453206d63786c6f6164283129>2.5 F<646f6d61696e207769 6c6c2072616e67652066726f6d207a65726f20757020746f206f6e65206c657373207468 616e>120 84 Q/F1 10/Times-Italic@0 SF<3c696e743e>2.5 E F0<2e>A/F2 10 /Times-Bold@0 SF<2d3132332d6d617872>100 108 Q F0<3c696e743e2028>2.5 E F1 <7365742072>A<6f772072>-.45 E<616e67>-.15 E<65>-.1 E F0<29>A .632 <4e756d62657273207374617274696e672066726f6d>120 120 R F1<3c696e743e> 3.132 E F0 .631<77696c6c2062652069676e6f72656420696e2074686520726f>3.132 F 3.131<7764>-.25 G .631<6f6d61696e2c20616e642074686520726f>-3.131 F 3.131<7764>-.25 G .631<6f6d61696e2077696c6c>-3.131 F <72616e67652066726f6d207a65726f20757020746f206f6e65206c657373207468616e> 120 132 Q F1<3c696e743e>2.5 E F0<2e>A F2<2d2d737472>100 156 Q <65616d2d6c6f67>-.18 E F0<28>2.5 E F1<6c6f>A 2.5<6774>-.1 G -.15<7261> -2.5 G<6e73666f726d20737472>.15 E<65616d2076616c756573>-.37 E F0<29>A<52 65706c616365206561636820656e74727920627920697473206e61747572616c206c6f67> 120 168 Q<61726974686d2e>-.05 E F2<2d2d737472>100 192 Q <65616d2d6e65672d6c6f67>-.18 E F0<28>2.5 E F1<6e65>A<676174697665206c6f> -.4 E 2.5<6774>-.1 G -.15<7261>-2.5 G<6e73666f726d20737472>.15 E <65616d2076616c756573>-.37 E F0<29>A F2<2d2d737472>100 204 Q <65616d2d6e65672d6c6f673130>-.18 E F0<28>2.5 E F1<6e65>A <676174697665206c6f>-.4 E<672d3130207472>-.1 E<616e73666f726d20737472> -.15 E<65616d2076616c756573>-.37 E F0<29>A 2.277 <5265706c616365206561636820656e74727920627920746865206e65>120 216 R -.05 <6761>-.15 G<7469>.05 E 2.577 -.15<7665206f>-.25 H 4.778<6669>.15 G 2.278<7473206e61747572616c206c6f67>-4.778 F 2.278 <61726974686d20616e64206c6f672d313020726570726573656e746174696f6e2c>-.05 F<7265737065637469>120 228 Q -.15<7665>-.25 G 2.69<6c792e2054686973>.15 F .19<697320666f722065>2.69 F .19 <78616d706c652075736566756c20746f20636f6e>-.15 F -.15<7665>-.4 G .19<72 742073636f72657320746861742064656e6f74652070726f626162696c6974696573206f 7220702d76>.15 F<616c2d>-.25 E <756573207375636820617320424c4153542073636f7265732e>120 240 Q F2 <2d737472>100 264 Q<65616d2d7466>-.18 E F0<28>2.5 E F1<7472>A <616e73666f726d20737472>-.15 E<65616d2076616c756573>-.37 E F0<29>A -.35 <5472>120 276 S 2.337<616e73666f726d207468652073747265616d2076>.35 F 2.337<616c75657320617320746865>-.25 F 4.837<7961>-.15 G 2.337<7265207265 616420696e206163636f7264696e6720746f207468652073796e74617820646573637269 62656420696e>-4.837 F F2<6d6378696f283529>120 288 Q F0<2e>A F2<2d7466> 100 312 Q F0<3c74662d737065633e2028>2.5 E F1<7472>A <616e73666f726d20286e6f7420736f29208c6e616c206d6174726978>-.15 E F0<29>A -.35<5472>120 324 S .308<616e73666f726d20746865206d61747269782076>.35 F .307<616c7565732061667465722064656475706c69636174696f6e20616e642073796d 6d657472698c636174696f6e206163636f7264696e6720746f207468652073796e2d> -.25 F<7461782064657363726962656420696e>120 336 Q F2<6d6378696f283529> 2.5 E F0<2e>A F2<2d7269>100 360 Q F0<28>2.5 E F1 <3c6d61787c6164647c6d756c3e>A F0<29>A 2.182<41667465722074686520696e6974 69616c206d617472697820686173206265656e20617373656d626c65642c206974206361 6e2062652073796d6d657472698c656420627920656974686572206f66207468657365> 120 372 R .973<6f7074696f6e732e20546865>120 384 R 3.473<7969>-.15 G .972 <6e64696361746520746865206f7065726174696f6e207573656420746f20636f6d6269 6e652074686520656e7472696573206f6620746865207472616e73706f736564206d6174 726978>-3.473 F .609<616e6420746865206f726967696e616c206d61747269782e> 120 396 R F2<6d756c>3.109 E F0 .609<6973207370656369616c20696e2074686174 20697420747265617473206d697373696e6720656e747269657320287768696368206172 65206e6f726d616c6c79>3.109 F<636f6e73696465726564207a65726f20696e206d63 6c206d6174726978206f7065726174696f6e7329206173206f6e652e>120 408 Q F2 <2d2d7472616e73706f7365>100 432 Q F0<28>2.5 E F1<7472>A<616e73706f7365> -.15 E F0<29>A .762<577269746520746865207472616e73706f736564206d61747269 7820746f208c6c652e2054686973206973206f62>120 444 R .762<76696f75736c7920 6e6f742075736566756c207768656e20612073796d6d6574726963206d6174726978> -.15 F<686173206265656e2067656e6572617465642e>120 456 Q F2<2d657463>100 480 Q F0<3c666e616d653e2028>2.5 E F1<2765746327206c6162656c208c6c65>A F0 <29>A F2<2d6574632d6169>100 492 Q F0<3c666e616d653e2028>2.5 E F1 <6c65616465726c657373202765746327206c6162656c208c6c65>A F0<29>A F2 <2d323335>100 504 Q F0<3c666e616d653e2028>2.5 E F1 <2732333527206c6162656c208c6c65>A F0<29>A F2<2d3233352d6169>100 516 Q F0 <3c666e616d653e2028>2.5 E F1 <6c65616465726c657373202732333527206c6162656c208c6c65>A F0<29>A F2 <2d736966>100 528 Q F0<3c666e616d653e2028>2.5 E F1 <534946206c6162656c208c6c65>A F0<29>A F2<2d2d6578706563742d76>100 540 Q <616c756573>-.1 E F0<28>2.5 E F1 -.2<6578>C <70656374206c6162656c3a77656967687420666f726d6174>.2 E F0<29>A .084<5468 6520696e707574206973207265616420696e206c696e65733b2065616368206c696e6520 69732073706c6974206f6e207768697465737061636520696e746f206c6162656c732e> 120 552 R -.15<466f>5.085 G<72>.15 E F2<2d657463>2.585 E F0 .085 <746865208c727374206c6162656c>2.585 F 2.052<697320696e746572707265746564 2061732074686520736f75726365206e6f64652e20416c6c206f74686572206c6162656c 732061726520696e7465727072657465642061732064657374696e6174696f6e206e6f64 65732e>120 564 R -.8<5765>120 576 S .194 <6967687473206d6179206f7074696f6e616c6c7920666f6c6c6f>.8 F 2.694<7774> -.25 G .194<6865206c6162656c732c207365706172617465642066726f6d207468656d 2077697468206120636f6c6f6e206368617261637465722e>-2.694 F .195 <4974206973>5.195 F .435 <696e20746869732063617365206e656365737361727920746f2075736520746865>120 588 R F2<2d2d6578706563742d76>2.935 E<616c756573>-.1 E F0 2.934 <6f7074696f6e2e20546865>2.935 F .434 <534946202853696d706c6520496e746572616374696f6e2046696c6529>2.934 F .778 <666f726d61742065>120 600 R .778<78706563746564206279>-.15 F F2 <2d736966>3.278 E F0 .778<69732073696d696c61722065>3.278 F .778<78636570 74207468617420697420636f6e7461696e7320616e206164646974696f6e616c208c656c 642e20496e207468697320666f726d6174>-.15 F 1.599 <746865207365636f6e6420636f6c756d6e2064656e6f74657320746865>120 612 R F1 -.37<7265>4.099 G 1.599<6c6174696f6e736869702074797065>.37 F F0 4.098 <2e49>C 4.098<7469>-4.098 G 4.098<7369>-4.098 G 1.598 <676e6f726564206279>-4.098 F F2<6d63786c6f6164>4.098 E F0 6.598<2e46>C <6f72>-6.748 E F2<2d6574632d6169>4.098 E F0<28>120 624 Q F1 <6175746f2d696e6372>A<656d656e74>-.37 E F0 3.288<2961>C .788<6c6c206c61 62656c732061726520696e7465727072657465642061732064657374696e6174696f6e20 6e6f64657320616e64206d63786c6f6164206175746f6d61746963616c6c79>-3.288 F .187<63726561746573206120736f75726365206e6f646520666f722065616368206c69 6e652069742072656164732e2054686973206f7074696f6e2063616e2062652075736566 756c20746f207265616420696e208c6c657320656e636f642d>120 636 R<696e672061 20636c7573746572696e672c2077686572652065616368206c696e652072657072657365 6e7473206120636c7573746572206f662077686974652d73706163652073657061726174 6564206c6162656c732e>120 648 Q<546865>120 672 Q F2<2d323335>2.92 E F0 .42<6f7074696f6e73206172652073696d696c61722065>2.92 F .42<78636570742074 6861742074686520696e707574206973206e6f7420696e74657270726574656420617320 6c6162656c732062>-.15 F .42<7574206d75737420636f6e2d>-.2 F <73697374206f66206e756d6265727320746861742065>120 684 Q<78706c696369746c 79207370656369667920746865206d617472697820746f2062652062>-.15 E <75696c742e>-.2 E F2<2d2d77726974652d62696e617279>100 708 Q F0<28>2.5 E F1<6f75747075742062696e61727920666f726d6174>A F0<29>A<546865206f75747075 74206d6174726978206973207772697474656e20696e206e617469>120 720 Q .3 -.15 <76652062>-.25 H<696e61727920666f726d617420ad20726566657220746f>.15 E F2 <6d6378696f283529>2.5 E F0<2e>A<6d63786c6f61642031322d313335>20 768 Q <3134204d61792032303132>142.065 E<35>202.335 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.675<6d63786c6f61642831292055534552>20 48 R 143.175<434f4d4d414e4453206d63786c6f6164283129>2.5 F/F1 10/Times-Bold@0 SF<2d2d646562>100 84 Q<7567>-.2 E F0<28>2.5 E/F2 10/Times-Italic@0 SF <646562>A<7567>-.2 E F0<29>A .668 <416d6f6e67206f74686572207468696e67732c2074686973207475726e73206f6e2077> 120 96 R .667<61726e696e6773207768656e>-.1 F F1 -.18<7265>3.167 G <737472696374>.18 E F0 .667 <746162208c6c657320617265207573656420616e64206c6162656c7320617265>3.167 F<666f756e6420746f206265206d697373696e672e>120 108 Q/F3 10.95 /Times-Bold@0 SF -.548<4155>20 124.8 S<54484f52>.548 E F0 <5374696a6e2076>100 136.8 Q<616e20446f6e67656e2e>-.25 E F3 <53454520414c534f>20 153.6 Q F1<6d6378696f283529>100 165.6 Q F0<2c>A F1 <6d637864756d70283129>3.174 E F0<2c>A F1<6d636c283129>3.174 E F0<2c>A F1 <6d636c666171283729>3.174 E F0 3.174<2c61>C<6e64>-3.174 E F1 <6d636c66616d696c79283729>3.174 E F0 .674<666f7220616e206f>3.174 F -.15 <7665>-.15 G<72766965>.15 E 3.174<776f>-.25 G 3.174<6661>-3.174 G .675 <6c6c2074686520646f63752d>-3.174 F<6d656e746174696f6e20616e642074686520 7574696c697469657320696e20746865206d636c2066>100 177.6 Q<616d696c792e> -.1 E<6d63786c6f61642031322d313335>20 768 Q<3134204d61792032303132> 142.065 E<36>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxdump.azm0000644000402500021140000003211411705536705012236 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxdump} {html_title}{The mcxdump manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcxdump}{dump matrices, optionally map indices to labels} \sec{synopsis}{SYNOPSIS} \par{ \mcxdump \synoptopt{-imx}{}{matrix file} \synoptopt{-icl}{}{cluster file to be dumped line-wise} \synoptopt{-imx-cat}{}{concatenation matrix file} \synoptopt{-imx-tree}{}{concatenation cone file} \synoptopt{--skeleton}{read empty matrix, honour domains} \synoptopt{-o}{}{output file name ('-' for stdout)} \synoptopt{-digits}{}{output precision} \synoptopt{-tab}{}{row/column tab (label) file} \synoptopt{-tabc}{}{column tab file} \synoptopt{-tabr}{}{row tab file} \synoptopt{--lazy-tab}{allow tab/domain mismatch} \synoptopt{--transpose}{work with the transpose} \synoptopt{--no-values}{omit values} \synoptopt{--omit-empty}{omit empty columns} \synoptopt{--no-loops}{omit loops} \synoptopt{--force-loops}{force loops} \synoptopt{--dump-pairs}{emit pairs per line} \synoptopt{--dump-table}{dump table format} \synoptopt{-dump-sif}{}{dump sif format} \synoptopt{-dump-sifx}{}{dump extended sif format with weights} \synoptopt{--dump-lines}{emit rows per line} \synoptopt{--dump-rlines}{omit leading identifier} \synoptopt{--dump-vlines}{add leading identifier values} \synoptopt{--dump-lead-off}{omit leading identifier} \synoptopt{--dump-lower}{dump lower part excluding diagonal} \synoptopt{--dump-loweri}{dump lower part including diagonal} \synoptopt{--dump-upper}{dump upper part excluding diagonal} \synoptopt{--dump-upperi}{dump upper part including diagonal} \synoptopt{--write-tabc}{dump tab file on column domain} \synoptopt{--write-tabr}{dump tab file on row domain} \synoptopt{--dump-domc}{dump column domain} \synoptopt{--dump-domr}{dump row domain} \synoptopt{-table-nfields}{}{output first fields} \synoptopt{-table-nlines}{}{output first lines} \synoptopt{--newick}{output newick format} \synoptopt{-newick}{[NBI]+}{exclude Number|Branch-length|Indent} \synoptopt{--write-matrix}{(deconcatenate) write matrices} \synoptopt{-split-stem}{}{(deconcatenate) matrices file name stem} \synoptopt{-cat-max}{}{(deconcatenate) write first matrices} \synoptopt{-sep-value}{}{node/value separator} \synoptopt{-sep-field}{}{field separator} \synoptopt{-sep-lead}{}{lead separator} \synoptopt{-sep-cat}{}{concatenation separator} \synoptopt{-prefixc}{}{prefix column indices with } \synoptopt{-sort}{size-{ascending,descending}}{vector sort mode} \stdsynopt } \sec{description}{DESCRIPTION} \par{ \mcxdump reads a data file satisfying the mcl input format (refer to \mysib{mcxio}). It outputs a line-based format. The \useopt{--dump-pairs} option yields a single matrix entry per line, identified by the respective column and row identifiers (either index or label) separated by the field separator. The \useopt{--dump-lines} and \useopt{--dump-rlines} result in the joining of all row entries on a single line, separated by the field separator. For both formats, the matrix value corresponding with a particular entry is by default output as well. } \par{ \mcxdump can also act on files that contain concatenated matrices. Refer to the group of options headed by \genoptref{-imx-cat}{fname}. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-imx}{}{matrix file}} \car{ Input matrix.} \item{\defopt{-icl}{}{cluster file}} \car{ This specifies the input matrix, and sets up a cluster-wise line-based label dump. This option is fully equivalent to the combination of \genopt{--dump-rlines} and \genopt{--no-values}. } \item{\defopt{--transpose}{work with the transpose}} \car{ Work with the tranpsose of the input matrix. } \item{\defopt{--skeleton}{read empty matrix, honour domains}} \car{ No entries are read, only domains. } \item{\defopt{-o}{}{output file name}} \car{ Output stream. Use \v{-} for STDOUT.} \item{\defopt{-digits}{}{output precision}} \car{ Specify the precision to use in native interchange format.} \item{\defopt{-tab}{}{row/column tab (label) file}} \car{ Substitute column indices and row indices by labels from the tab file. Since the same tab file is used for both, this implies that the matrix domains are identical.} \item{\defopt{-tabc}{}{column tab file}} \car{ Substitute column indices by labels from the tab file.} \item{\defopt{-tabr}{}{row tab file}} \car{ Substitute row indices by labels from the tab file.} \item{\defopt{--lazy-tab}{allow tab/domain mismatch}} \car{ If used, the tab file domain(s) do not necessarily need to match the corresponding domain in the input matrix. Entries missing in the tab files will be replaced by a question mark.} \item{\defopt{--no-values}{omit values}} \car{ Do not emit values.} \item{\defopt{--omit-empty}{omit empty columns}} \car{ Do not output line data (with \genopt{--dump-table} or \genopt{--dump-lines} or related options) for those columns that are empty. } \item{\defopt{--no-loops}{omit loops}} \car{ Do not output entries for which the row index equals the column index, if present. Applies only to matrices for which column and row domains are equal.} \item{\defopt{--force-loops}{force loops}} \car{ For each column, force output of a row entry that matches the column index. Applies only to matrices for which column and row domains are equal.} \items{ {\defopt{--dump-pairs}{emit pairs per line}} {\defopt{-dump-sif}{}{dump sif format}} {\defopt{-dump-sifx}{}{dump extended sif format with weights}} {\defopt{--dump-lines}{emit rows per line}} {\defopt{--dump-rlines}{omit leading column node}} {\defopt{--dump-vlines}{add leading column values}} {\defopt{--dump-lead-off}{do not dump leading identifiers}} {\defopt{--dump-lower}{dump lower part excluding diagonal}} {\defopt{--dump-loweri}{dump lower part including diagonal}} {\defopt{--dump-upper}{dump upper part excluding diagonal}} {\defopt{--dump-upperi}{dump upper part including diagonal}} } \car{ \genopt{--dump-pairs} is the default mode of output. Each matrix entry is output as a single pair of column-identifier and row-identifier per line, optionally followed by the value of the corresponding matrix entry. All fields are separated by the field separator. } \par{ Use \genopt{-dump-sif}{} to dump SIF format. The argument \genarg{} will be used as the edge type (the second column in SIF format). The option \genopt{-dump-sifx}{} is similar except that an extended format is produced where the label is followed by the colon character and the edge weight. } \par{ With \genopt{--dump-lines}, each matrix column is output on a single line, with row identifiers separated by the field separator and values attached to the row identifier by the node/value separator. In this format, the column identifier is output as the leading field. } \par{ \genopt{--dump-rlines} is as \genopt{--dump-lines}, except that the column identifier is not output. Use \genopt{--dump-lead-off} to preclude the output of the leading identifiers (for line-based outputs). } \par{ \genopt{--dump-vlines} is as \genopt{--dump-lines}. The leading identifiers are followed by a value associated with the entire column. This can be used to dump the output given by \clmstable. The value provided is a measure for the stability of the cluster that follows. } \par{ The options pertaining to \it{lower} and \it{upper} dumps currently only work with \genopt{--dump-pairs}. They act to only output the specified part of the matrix. } \items{ {\defopt{--dump-table}{dump table format}} {\defopt{-table-nfields}{field limit}} {\defopt{-table-nlines}{line/row limit}} } \car{ Output table format. In table format no indices are printed by default and all values are printed including zeroes. The options \genopt{-table-nfields} and \genopt{-table-nlines} can be used to limit the number of fields and lines to be printed. Note that fields correspond to MCL matrix rows and that lines correspond to MCL matrix columns, as MCL calls its primary indices column indices. Use \genopt{--dump-lead-off} to preclude the output of the leading identifiers (for line-based outputs). } \items{ {\defopt{--newick}{output newick format}} {\defopt{-newick}{[NBI]+}{newick, exclude Number|Branch-length|Indent}} } \car{ Output a hierarchical clustering specified by \genopt{-imx-tree} in Newick tree format. } \items{ {\defopt{--write-tabc}{dump tab file on column domain}} {\defopt{--write-tabr}{dump tab file on row domain}} {\defopt{--dump-domc}{dump column domain}} {\defopt{--dump-domr}{dump row domain}} } \car{ These options work in conjunction with the \genoptref{-ixm}{fname} option. Only the domains from the input matrix are read as if \genoptref{--skeleton} was specified. \genopt{--write-tabc} assumes the input tab file envelopes the matrix column domain, and it outputs a new tab file restricted to that domain. \genopt{--write-tabr} acts analogously for the row domain. \genopt{--dump-domc} and \genopt{--dump-domr} respectively dump the column or row domain as a regular dump, outputting labels in case a tab file is specified. } \par{ These options are implemented as ensembles of other options. For example, \genopt{--dump-domr} \genopt{-imx}{fname} corresponds with \genopt{--dump-lines} \genopt{--transpose} \genopt{--skeleton}. } \items{ {\defopt{-imx-cat}{}{concatenation matrix file}} {\defopt{-imx-tree}{}{concatenation cone file}} {\defopt{--write-matrix}{(deconcatenate) write matrices}} {\defopt{-split-stem}{}{(deconcatenate) matrices file name stem}} {\defopt{-cat-max}{}{(deconcatenate) write first matrices}} } \car{ \genopt{-imx-cat} is like \genopt{-imx} except that the input is assumed to contain multiple concatenated matrices. The matrices are dumped separated by the \it{cat separator} (cf. \genopt{-sep-cat}). Alternatively, the matrices can be written to different files using the \genopt{-split-stem} option. In this case it is possible to output each matrix in native format rather than as a dump by specifying \genopt{--write-matrix}. This makes mcxdump effectively act as a deconcatenator. In all cases (respectively dumping and writing matrices to either the same stream or multiple files) the number of matrices to be dumped can be limited with \genopt{-cat-max}. } \par{ \genopt{-imx-tree} is like \genopt{-imx-cat} except that the input is assumed to be in cone format (the format output by \mclcm). This format encodes a tree as a concatenation of matrices with nested domains. \mcxdump will project all levels of this tree so that all row domains are the same as the bottom row domain. This implies that a set of nested clusterings (on different node sets, as the set of clusters of a given level is the node set of the next level) is transformed into a set of flattened clusterings, all on the same node set. If you do not want this to happen, simply use \genopt{-imx-cat}. } \item{\defopt{-sep-value}{}{node/value separator}} \car{ Set the node/value separator for line based row ensemble output.} \item{\defopt{-sep-field}{}{field separator}} \car{ Set the field separator for different row indices in a given column.} \item{\defopt{-sep-lead}{}{lead separator}} \car{ Set the lead separator. In the \genopt{--dump-lines} format it separates the leading column index from the following ensembl of row indices. It can be useful to make this different from the field separator. One can for example grep for columns that have more than one entry in a matrix mapping nodes to clusters. This will find nodes in overlap.} \item{\defopt{-sep-cat}{}{concatenation separator}} \car{ Set the separator that is used between matrix dumps when a concatenation of matrices is dumped.} \item{\defopt{-prefixc}{}{prefix column indices with }} \car{ This can be useful when external row names cannot be numbers and when a label dictionary is not available or not appropriate.} \item{\defopt{-sort}{size-{ascending,descending}}{concatenation separator}} \car{ Reorder the matrix columns prior to dumping, based on the number of nonzero entries in each column. Do not use this in conjunction with a tab file for the column domain.} \stddefopt \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mcxload}, \mysib{mcl}, \mysib{mclfaq}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/clmdist.html0000644000402500021140000005557611754271041012407 00000000000000 The clm dist manual

14 May 2012    clm dist 12-135

NAME

clm dist — compute the distance between two or more partitions (clusterings).

The distance that is computed can be any of split/join distance, variance of information, or Mirkin metric.

clmdist is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode dist. The options -h, --apropos, --version, -set, --nop are accessible in all clm modes. They are described in the clm manual page.

SYNOPSIS

clm dist [options] <file name> <file name>+

clm dist [-mode <sj|vi|mk|sc> (distance type)] [-o fname (output file)] [--chain (only compare consecutive clusterings)] [--one-to-many (compare first clustering to all others)] [--sort (sort clusterings based on coarseness)] [--index (output Rand, adjusted Rand and Jaccard indices)] [-digits k (output decimals)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)] <file name> <file name>+

DESCRIPTION

clm dist computes distances between clusterings. It can compute the split/join distance (described below), the variance of information measure, and the Mirkin metric. By default it computes the chosen distance for all pairs of distances in the clusterings provided. Clusterings must be in the mcl matrix format (cf. mcxio), and are supplied on the command line as the names of the files in which they are stored. It is possible to compare only consecutive clusterings by using the --chain option.

Currently, clm dist cannot compute different distance types simultaneously.

The output is linewise, each line giving information about the distance between a pair of clusterings. A line has the following format:

d d1 d2 N v name1 name2 [v50,v75,v90,v95,v99]

where dT is the distance between the two clusterings, d1 is the distance from the first clustering to the greatest common subclustering (alternatively called GCS, intersection, or meet) of the two clusterings, d2 is similarly the distance from the second clustering to the GCS, N is the number of nodes in the set over which the clusterings are defined, name1 is the name of the file containing the first clustering, name2 is the name of the file containing the second clustering, and vXX is the number of volatile nodes at stringency factor 0.XX (i.e. 0.5 for v50). Refer to clm vol for a definition of volatile node.

OPTIONS

-mode <sj|vi|mk> (distance type)

Use sj for the split/join distance (described below), vi for the variance of information measure and mk for the Mirkin metric.

 
--chain (only compare consecutive clusterings)

This option can be used if you know that the clusterings are nested clusterings (or appoximately so) and ordered from coarse to fine-grained or vice versa. An example of this is the set of clusterings resulting from applying mcl with a range of inflation parameters.

 
--one-to-many (compare first clustering to all others)

Use this option for example to compare a gold standard classification to a collection of clusterings. Bear in mind that sub-clustering and super-clustering are also ways for a clustering to be compatible with a gold standard. This means that the simple numerical criterion of distance between clusters (by whatever method) is only partially informative. For the Mirkin, variation of information and split/join metrics it pays to take into account the constituent distances d1 and d2 (see above). Assuming that the first clustering given as argument represents a gold standard, a small value for d1 implies that the second clustering is (nearly) a superclustering, and similarly a small value for d2 implies that it is (nearly) a subclustering.

 
--sort (sort clusterings based on coarseness)

This option can be useful in conjunction with the --chain option, in case the list of clusterings supplied is not necessarily ordered by granularity.

 
--index (output Rand, adjusted Rand and Jaccard indices)

As described.

 
-o fname (output file)
 
-digits k (output decimals)

The number of decimals printed when using the variance of information measure.

SPLIT/JOIN DISTANCE

For each pair of clusterings C1, C2, two numbers are given, say d1 and d2. Then d1 + d2 equals the number of nodes that have to be exchanged in order to transform any of the two clusterings into the other, and you can think of (d1+d2)/2N as the percentage that the two clusterings differ. The split/join distance has a linearity property with respect to the meet of C1 and C2, see below.

The split/join distance sjd is very handy in computing the consistency of two or more clusterings of the same graph, or comparing clusterings made with different resource (but otherwise identical) parameters. The latter is for finding out whether you can settle for cheaper mcl settings, or whether you need to switch to more expensive settings. The former is for finding out whether clusterings are identical, conflicting, or whether one is (almost) a subclustering of the other - mostly for comparing a set of clusterings of different granularity, made by letting the mcl parameter -I vary. The EXAMPLES section contains examples of all these clm dist uses, and the use of clm info and clm meet is also discussed there.

sjd is a metric distance on the space of partitions of a set of a given fixed cardinality. It has the following linearity property. Let P1 and P2 be partitions, then

sjd(P1, P2) = sjd(P1, D) + sjd(P2, D)

where D (for Dutch Doorsnede) is the intersection of P1 and P2, i.e. the unique clustering that is both a subclustering of P1 and P2 and a superclustering of all other subclusterings of P1 and P2. Sloppily worded, D is the largest subclustering of both P1 and P2. See the REFERENCES section for a pointer to the technical report in which sjd was first defined (and in which the non-trivial triangle inequality is proven).

Because it is useful to know whether one partition (or clustering) is almost a subclustering of the other, clm dist returns the two constituents sjd(P1,D) and sjd(P2,D).

Let P1 and P2 be two clusterings of a graph of cardinality N, and suppose clm dist returns the integers d1 and d2. You can think of 100 * (d1 + d2) / N as the percentage that P1 and P2 differ. This interpretation is in fact slightly conservative. The numerator is the number of nodes that need to be exchanged in order to transform one into the other. This number may grow as large as 2*N - 2*sqrt(N), so it would be justified to take 50 as a scaling factor rather than 100.

For example, if A and B are both clusterings of a graph on a set of 9058 nodes and clm dist returns [38, 2096], this conveys that A is almost a subclustering of B (by splitting 38 nodes in A we obtain a clustering D that is a subclustering of B), and that B is much less granular than A. The latter is because we can obtain B from D by joining 2096 nodes in some way.

EXAMPLES

The following is an example of several mcl validation tools applied to a set of clusterings on a protein graph of 9058 nodes. In the first experiment, six different clusterings were generated for different values of the inflation parameter, which was respectively set to 1.2, 1.6, 2.0, 2.4, 2.8, and 3.2. It should be noted that protein graphs seem somewhat special in that an inflation parameter setting as low as 1.2 still produces a very acceptable clustering. The six clusterings are scrutinized using clm dist, clm info, and clm meet. In the second experiment, four different clusterings were generated with identical flow (i.e. inflation) parameter, but with different resource parameters. clm dist is used to choose a sufficient resource level.

High -P/-S/-R values make mcl more accurate but also more time and memory consuming. Run mcl with different settings for these parameters, holding other parameters fixed. If the expensive and supposedly more accurate clusterings are very similar to the clusterings resulting from cheaper settings, the cheaper setting is sufficient. If the distances between cheaper clusterings and more expensive clusterings are large, this is an indication that you need the expensive settings. In that case, you may want to increase the -P/-S/-R parameters (or simply the -scheme parameter) until associated clusterings at nearby resource levels are very similar.

In this particular example, the validation tools do not reveal that one clustering in particular can be chosen as 'best', because all clusterings seem at least acceptable. They do aid however in showing the relative merits of each clusterings. The most important issue in this respect is cluster granularity. The table below shows the output of clm info.

Efficiency Mass frac Area frac Cl weight Mx link weight 1.2 0.42364 0.98690 0.02616 52.06002 50.82800 1.6 0.58297 0.95441 0.01353 55.40282 50.82800 2.0 0.63279 0.92386 0.01171 58.09409 50.82800 2.4 0.65532 0.90702 0.01091 59.58283 50.82800 2.8 0.66854 0.84954 0.00940 63.19183 50.82800 3.2 0.67674 0.82275 0.00845 66.10831 50.82800

This data shows that there is exceptionally strong cluster structure present in the input graph. The 1.2 clustering captures almost all edge mass using only 2.5 percent of 'area'. The 3.2 clustering still captures 82 percent of the mass using less than 1 percent of area. We continue with looking at the mutual consistency of the six clusterings. Below is a table that shows all pairwise distances between the clusterings.

| 1.6 | 2.0 | 2.4 | 2.8 | 3.2 | 3.6 -----------------------------------------------------------. 1.2 |2096,38 |2728,41 |3045,48 |3404,45 |3621,43 |3800, 42 | -----------------------------------------------------------| 1.6 | | 797,72 |1204,76 |1638,78 |1919,70 |2167, 69 | -----------------------------------------------------------| 2.0 | | | 477,68 | 936,78 |1235,85 |1504, 88 | -----------------------------------------------------------| 2.4 | | | | 498,64 | 836,91 |1124,103 | -----------------------------------------------------------| 2.8 | | | | | 384,95 | 688,119 | -----------------------------------------------------------| 3.2 | | | | | | 350,110 | -----------------------------------------------------------.

The table shows that the different clusterings are pretty consistent with each other, because for two different clusterings it is generally true that one is almost a subclustering of the other. The interpretation for the distance between the 1.6 and the 3.2 clustering for example, is that by rearranging 43 nodes in the 3.2 clustering, we obtain a subclustering of the 1.6 clustering. The table shows that for any pair of clusterings, at most 119 entries need to be rearranged in order to make one a subclustering of the other.

The overall consistency becomes all the more clear by looking at the meet of all the clusterings:

clm meet -o meet out12 out16 out20 out24 out28 out32 clm dist meet out12 out16 out20 out24 out28 out32

results in the following distances between the respective clusterings and their meet.

| 1.2 | 1.6 | 2.0 | 2.4 | 2.8 | 3.2 | -------------- --------------------------------------------. meet| 0,3663| 0,1972| 0,1321 | 0,958 | 0,559 | 0,283 | -------------- --------------------------------------------.

This shows that by rearranging only 283 nodes in the 3.2 clustering, one obtains a subclustering of all other clusterings.

In the last experiment, mcl was run with inflation parameter 1.4, for each of the four different preset pruning schemes k=1,2,3,4. The clm dist distances between the different clusterings are shown below.

| k=2 | k=3 | k=4 | -------------------------------. k=1 | 17,17 | 16,16 | 16,16 | -------------------------------. k=2 | | 3,3 | 5,5 | -------------------------------. k=3 | | | 4,4 | -------------------------------.

This example is a little boring in that the cheapest scheme seems adequate. If anything, the gaps between the k=1 scheme and the rest are a little larger than the three gaps between the k=2, k=3, and k=4 clusterings. Had all distances been much larger, then such an observation would be reason to choose the k=2 setting.

Note that you need not feel uncomfortable with the clusterings still being different at high resource levels, if ever so slightly. In all likelihood, there are anyway nodes which are not in any core of attraction, and that are on the boundary between two or more clusterings. They may go one way or another, and these are the nodes which will go different ways even at high resource levels. Such nodes may be stable in clusterings obtained for lower inflation values (i.e. coarser clusterings), in which the different clusters to which they are attracted are merged.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

REFERENCES

Stijn van Dongen. Performance criteria for graph clustering and Markov cluster experiments. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.
http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z

Marina Meila. Comparing Clusterings — An Axiomatic View. In Proceedings of the 22nd International Conference on Machine Learning, Bonn, Germany, 2005.

Marina Meila. Comparing Clusterings, UW Statistics Technical Report 418.
http://www.stat.washington.edu/www/research/reports/2002/tr418.ps

mcl-12-135/doc/clmprotocols.azm0000644000402500021140000003430511666236225013305 00000000000000\import{mcx.zmm} \: ~/local/bin/mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci \: ~/local/bin/mcxdump -imx data.mci -tab data.tab --dump-table \begin{pud::man}{ {name}{clmprotocols} {html_title}{Work flows and protocols for mcl and friends} {author}{Stijn van Dongen} {section}{5} {synstyle}{long} {defstyle}{long} \man_share } \"pud::man::maketoc" \:${html}{\"pud::man::maketoc"} \${html}{\def{cont}{\@e{nbsp}\@e{crarr}}} \${roff}{\def{cont}{}} \sec{}{name}{NAME} \NAME{clmprotocols}{Work flows and protocols for mcl and friends} \sec{}{description}{DESCRIPTION} \car{ A guide to doing analysis with mcl and its helper programs. } \sec{internal}{Network representation} \par{ The clustering program \mcl expects the name of file as its first argument. If the \genopt{--abc} option is used, the file is assumed to adhere to a simple format where a network is specified edge by edge, one line and one edge at a time. Each line describes an edge as two labels and a numerical value, all separated by white space. The labels and the value respectively identify the two nodes and the edge weight. The format is called \abc-format, where '\sc{A}' and '\sc{B}' represent the two labels and '\sc{C}' represents the edge weight. The latter is optional; if omitted the edge weight is set to one. If \abc-format is used, the output is returned as a listing of clusters, each cluster given as a line of white-space separated labels. } \par{ MCL can also utilize a second representation, which is a stringent and unambiguous format for both input and output. This is called \it{matrix format} and it is required when using other programs in the mcl suite, for example when comparing and analysing clusterings using \mysib{clm} or when extracting and transforming networks using \mysib{mcx}. Native mode (matrix format) is entered simply by \it{not} specifying \genopt{--abc}. } \par{ The recommended approach using \mcl is to convert an external format to \abc-format. The program \mysib{mcxload} reads the latter and creates a native network file and a dictionary file that maps network nodes to labels. All applications in the MCL suite, including \mcl itself, can read this native network file format. Label output can be obtained using \mysib{mcxdump}. The workflow is thus: } \verbatim{\:/ # External format has been converted to file data.abc (abc format) mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci mcl data.mci -I 1.4 mcl data.mci -I 2 mcl data.mci -I 4 mcxdump -icl out.data.mci.I14 -tabr data.tab -o dump.data.mci.I14 mcxdump -icl out.data.mci.I20 -tabr data.tab -o dump.data.mci.I20 mcxdump -icl out.data.mci.I40 -tabr data.tab -o dump.data.mci.I40} \car{ In this example the cluster output is stored in native format and dumped to labels using mcxdump. The stored output can now be used to learn more about the clusterings. An example is the following, where \mysib{clm} is applied in mode\~\bf{dist} to gauge the distance between different clusterings. } \verbatim{\:/ clm dist --chain out.data.mci.I{14,20,40}} \sec{large}{Loading large networks} \par{ If you deal with very large networks (say with hundreds of millions of edges), it is recommended to use binary format (cf \mysib{mcxio}). This is simply achieved by adding \tt{--write-binary} to the mcxload command line. The resulting file is no longer human-readable but will be faster to read by a factor between ten- or twenty-fold compared to standard \MCL-edge network format, and a factor around fifty-fold compared to label format. All \MCL-edge programs are able to read binary format, and speed of reading will be somewhere in the order of millions of edges per second, compared to, for example, roughly 100K edges per second for label format. } \par{ Memory usage for mcxload can be lowered by replacing the option \tt{--stream-mirror} with \tt{-ri\~max}. } \sec{formatconversion}{Converting between formats} \par{ \bf{Converting label format to tabular format}\| Label format, two or three (including weight) columns: } \verbatim{\:/ mcxload -abc data.abc --stream-mirror -write-tab data.tab -o data.mci mcxdump -imx data.mci -tab data.tab --dump-table} \car{Simple Interaction File (SIF) format:} \verbatim{\:/ mcxload -sif data.sif --stream-mirror -write-tab data.tab -o data.mci mcxdump -imx data.mci -tab data.tab --dump-table} \car{ It can be noted that these two examples are very similar, and differ only in the way the input to \mcxload is specified. } \sec{blast}{Clustering similarity graphs encoded in BLAST results} \par{ A specific instance of the workflow above is the clustering of proteins based on their sequence similarities. In the most typical scenario the external format is BLAST output, which needs to be transformed to \abc format. In the examples below the input is in columnar blast format obtained with the blast -m8 option. It requires a version of \mcl at least as recent as \v{09-061}. First we create an \abc-formatted file using the external columnar BLAST format, which is assumed to be in a file called \v{seq.cblast}. } \verbatim{\:/ cut -f 1,2,11 seq.cblast > seq.abc} \car{ The columnar format in the file \v{seq.cblast} has, for a given BLAST hit, the sequence labels in the first two columns and the asssociated E-value in column\~11. It is parsed by the standard UNIX cut(1) utility. The format must have been created with the BLAST -m8 option so that no comment lines are present. Alternatively these can be filtered out using grep. } \car{ The newly created \v{seq.abc} file is loaded by \mysib{mcxload}, which writes both a network file \v{seq.mci} and a dictionary file \v{seq.tab}. } \verbatim{\:/ mcxload -abc seq.abc --stream-mirror --stream-neg-log10 -stream-tf 'ceil(200)' -o seq.mci -write-tab seq.tab} \car{ The \v{--stream-mirror} option ensures that the resulting network will be undirected, as recommended when using \mcl. Omitting this option would result in a directed network as BLAST E-values generally differ between two sequences. The default course of action for \mysib{mcxload} is to use the best value found between a pair of labels. The next option, \v{--abc-neg-log10} tranforms the numerical values in the input (the BLAST E-values) by taking the logarithm in base\~10 and subsequently negating the sign. Finally, the transformed values are capped so that any E-value below 1e-200 is set to a maximum allowed edge weight of\~200. } \par{ To obtain clusterings from \v{seq.mci} and \v{seq.tab} one has two choices. The first is to generate an abstract clustering representation and from that obtain the label output, as follows. Below the \genopt{-o} option is not used, so mcl will create meaningful and unique output names by itself. The default way of doing this is to preprend the prefix \v{out.} and to append a suffix encoding the inflation value used, with inflation encoded using two digits of precision and the decimal separator removed. } \verbatim{\:/ mcl seq.mci -I 1.4 mcl seq.mci -I 2 mcl seq.mci -I 4 mcl seq.mci -I 6 mcxdump -icl out.seq.mci.I14 -tabr seq.tab -o dump.seq.mci.I14 mcxdump -icl out.seq.mci.I20 -tabr seq.tab -o dump.seq.mci.I20 mcxdump -icl out.seq.mci.I40 -tabr seq.tab -o dump.seq.mci.I40 mcxdump -icl out.seq.mci.I60 -tabr seq.tab -o dump.seq.mci.I60} \car{ Now the file \v{out.seq.tab.I14} and its associates can be used for example to compute the distances between the encoded clusterings with \clmdist, to compute a set of strictly reconciled nested clusterings with \clmorder, or to compute an efficiency criterion with \clminfo. } \par{ Alternatively, label output can be obtained directly from \mcl as follows.} \verbatim{\:/ mcl seq.mci -I 1.4 -use-tab seq.tab mcl seq.mci -I 2 -use-tab seq.tab mcl seq.mci -I 4 -use-tab seq.tab mcl seq.mci -I 6 -use-tab seq.tab} \sec{array}{Clustering expression data} \par{ The clustering of expression data constitutes another workflow. In this case the external format usually is a tabular file format containing labels for genes or probes and numerical values measuring the expression values or fold changes across a series of conditions or experiments. Such tabular files can be processed by \mysib{mcxarray}, which comes installed with \mcl. The program computes correlations (either Pearson or Spearmann) between genes, and creates an edge between genes if their correlation exceeds the specified cutoff. From this \mysib{mcxarray} creates both a network file and a dictionary file. In the example below, the file \v{expr.data} is in tabular format with one row of column headers (e.g. tags for experiments) and one column of row identifiers (e.g. probe or gene identifiers). } \verbatim{\:/ mcxarray -data expr.data -skipr 1 -skipc 1 -o expr.mci -write-tab expr.tab --pearson -co 0.7 -tf 'abs(),add(-0.7)' } \car{ This uses the Pearson correlation, ignoring values below 0.7. The remaining values in the interval \v{[0.7-1]} are remapped to the interval \v{[0-0.3]}. This is recommended so that the edge weights will have increased contrast between them, as \mcl is affected by relative differences (ratios) between edge weights rather than absolute differences. To illustrate this, values\~0.75 and\~0.95 are mapped to\~0.05 and\~0.25, with respective ratios\~0.79 and\~0.25. The network file \v{expr.mci} and the dictionary file \v{expr.tab} can now be used as before. } \par{ It is possible to investigate the effect of the correlation cutoff as follows. First a network is generated at a very low threshold, and this network is analysed using \mcxquery. } \verbatim{\:/ mcxarray -data expr.data -skipr 1 -skipc 1 -o expr20.mcx --write-binary --pearson -co 0.2 -tf 'abs()' mcx query -imx expr20.mcx --vary-correlation } \car{ The output is in a tabular format describing the properties of the network at increasing correlation thresholds. Examples are the size of the biggest component, the number of orphan nodes (not connected to any other node), and the mean and median node degrees. A good way to choose the cutoff is to balance the number of singletons and the median node degree. Both should preferably not be too high. For example the number of orphan nodes should be less than ten percent of the total number of nodes, and the median node degree should be at most one hundred neighbours. } \""{ Label mode is very convenient for easy and fast exploration. A decided advantage of full native mode (where both graph input and cluster output are in matrix format) is that the data can easily be analyzed and subjected to further processing. Second, input that is stored in native binary format loads much faster than label data when the input data size grows large. If neither of these is of concern then label mode may be entirely sufficient. For more information on label mode and native mode refer to examples in this manual and \mysib{mcxio}.} \sec{degree}{Reducing node degrees in the graph} \car{ A good way to lower node degrees in a network is to require that an edge is among the best \it{k} edges (those of highest weight) for \it{both} nodes incident to the edge, for some value of \it{k}. This is achieved by using \v{knn(k)} in the argument to the \genopt{-tf} option to mcl or \mcx{alter}. To give an example, a graph was formed on translations in Ensembl release 57 on 2.6M nodes. The similarities were obtained from BLAST scores, leading to a graph with a total edge count of 300M, with best-connected nodes of degree respectively 11148, 9083, 9070, 9019 and 8988, and with mean node degree 233. These degrees are unreasonable. The graph was subjected to \mcx{query} to investigate the effect of varying k-NN parameters. A good heuristic is to choose a value that does not significantly change the number of singletons in the input graph. In the example it meant that \useopt{-tf}{'knn(160)'} was feasible, leading to a mean node degree of 98. } \par{ A second approach to reduce node degrees is to employ the \genopt{-ceil-nb} option. This ranks nodes by node degree, highest first. Nodes are considered in order of rank, and edges of low weight are removed from the graph until a node satisfies the node degree threshold specified by \genopt{-ceil-nb}. } \par{ } \sec{seealso}{SEE ALSO} \car{ \mysib{mcxio}. } \sec{author}{AUTHOR} \car{ Stijn van Dongen.} \end{pud::man} \done \par{ Using \mcl is as simple as typing (assuming a file \it{proteins} contains a matrix/graph in native matrix format)} \verbatim{mcl proteins -I 2.0} \car{ The above will result in a clustering written to the file named \it{out.proteins.I20s2}. It is - of course - possible to explicitly specify the name of the output file using the \genoptref{-o}{fname} option. Refer to the \genoptref{-ap} option for a description of mcl's procedure in automatically constructing file names from it parameters.} \par{ In native mode clusterings are stored as matrices - this is discussed in the \mysib{mcxio} section. You presumably want to convert the output to something that is easier to interpret. You can use} \verbatim{mcl proteins -I 2.0 -use-tab proteins.tab} \car{ to get a line/tab based output format, each line containing a cluster in the form of tab-separated labels. Here \usearg{proteins.tab} should be a tab file previously created by \mysib{mcxdeblast} or mcl. Refer to \mysib{mcxio} for more information on tab files, and the entries grouped under \genoptref{--abc} for an extensive discussion of the various ways in which mcl can combine label format and matrix format in input and output.} \""{ 1. mcxdeblast --line-mode=abc --out=- seq.blast | mcxload -abc - --stream-mirror -write-tab seq.tab -o seq.mci 2. mcxdeblast --m9 --line-mode=abc --out=- seq.cblast | mxload -abc - --stream-mirror -write-tab seq.tab -o seq.mci } mcl-12-135/doc/clminfo.ps0000644000402500021140000004721411754271041012043 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:13 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d20696e666f283129>20 48 Q <5553455220434f4d4d414e4453>144.005 E<636c6d20696e666f283129>146.505 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<636c6d20696e 666f20ad20636f6d7075746520706572666f726d616e6365206d6561737572657320666f 722067726170687320616e6420636c7573746572696e67732e>100 96 Q .483 <636c6d696e666f206973206e6f7420696e2061637475616c2066>100 120 R .483<61 637420612070726f6772616d2e2054686973206d616e75616c207061676520646f63756d 656e7473207468652062656861>-.1 F .482 <76696f757220616e64206f7074696f6e73>-.2 F 1.775 <6f662074686520636c6d2070726f6772616d207768656e20696e>100 132 R -.2 <766f>-.4 G -.1<6b65>.2 G 4.275<6469>.1 G 4.275<6e6d>-4.275 G<6f6465> -4.275 E/F2 10/Times-Italic@0 SF<696e666f>4.275 E F0 4.275<2e54>C 1.775 <6865206f7074696f6e73>-4.275 F/F3 10/Times-Bold@0 SF<2d68>4.275 E F0<2c> A F3<2d2d617072>4.275 E<6f706f73>-.18 E F0<2c>A F3<2d2d76>4.275 E <657273696f6e>-.1 E F0<2c>A F3<2d736574>4.275 E F0<2c>A F3<2d2d6e6f70> 100 144 Q F0<6172652061636365737369626c6520696e20616c6c>2.5 E F3<636c6d> 2.5 E F0<6d6f6465732e20546865>2.5 E 2.5<7961>-.15 G <72652064657363726962656420696e20746865>-2.5 E F3<636c6d>2.5 E F0 <6d616e75616c20706167652e>2.5 E F1<53594e4f50534953>20 160.8 Q F3 <636c6d20696e66>100 172.8 Q<6f>-.25 E F0<5b6f7074696f6e735d203c67726170 68208c6c653e203c636c7573746572208c6c653e203c636c7573746572208c6c653e2a> 2.5 E F3 .439<636c6d20696e66>100 196.8 R 2.939<6f5b>-.25 G<2d6f>-2.939 E F0 .439<666e616d652028>2.939 F F2 .439<777269746520746f208c6c65>B F3 .439<666e616d65295d205b2d706920662028>2.939 F F2 .439 <6170706c7920696e8d6174696f6e206265666f72>B<6568616e64>-.37 E F3 .438 <295d205b2d746620737065632028>B F2 .438<6170706c792074662d>B .009 <7370656320746f20696e707574206d6174726978>100 208.8 R F3 .009 <295d205b2d636c2d7472>B .009<656520666e616d652028>-.18 F F2 -.2<6578>C .009<70656374208c6c652077697468206e657374656420636c7573746572696e6773>.2 F F3 .01<295d205b2d636c2d6365696c203c6e756d3e2028>B F2<736b6970>A <636c7573746572>100 220.8 Q 3.15<736f>-.1 G 3.15<6673>-3.15 G .65 <697a652065>-3.15 F .65<7863656564696e67203c6e756d3e>-.2 F F3 .65 <295d205b2d6361742d6d6178206e756d2028>B F2 .65<646f206174206d6f7374>B F3 <6e756d>3.15 E F2<7472>3.15 E .65<6565206c65>-.37 F<76656c73>-.15 E F3 .65<295d205b2d2d6e6f64652d73656c662d>B<6d6561737572>100 232.8 Q .361 <65732028>-.18 F F2 .361<64756d70206d6561737572>B 2.861<6566>-.37 G .361 <6f72206e617469766520636c7573746572>-2.861 F F3 .361 <295d205b2d2d6e6f64652d616c6c2d6d6561737572>B .361<65732028>-.18 F F2 .361<64756d70206d6561737572>B 2.861<6566>-.37 G .361 <6f7220696e636964656e74>-2.861 F<636c7573746572>100 244.8 Q F3 1.308 <295d205b2d682028>B F2 1.308<7072696e742073796e6f707369732c2065>B <786974>-.2 E F3 1.307<295d205b2d2d617072>B 1.307<6f706f732028>-.18 F F2 1.307<7072696e742073796e6f707369732c2065>B<786974>-.2 E F3 1.307 <295d205b2d2d76>B 1.307<657273696f6e2028>-.1 F F2 1.307 <7072696e7420766572>B<73696f6e2c>-.1 E -.2<6578>100 256.8 S<6974>.2 E F3 <295d203c6d6174726978208c6c653e203c636c7573746572208c6c653e203c636c7573 746572208c6c653e2a>A F1<4445534352495054494f4e>20 273.6 Q F3 .625 <636c6d20696e66>100 285.6 R<6f>-.25 E F0 .625<636f6d7075746573207365> 3.125 F -.15<7665>-.25 G .625<72616c206e756d6265727320696e646963617469> .15 F .925 -.15<76652066>-.25 H .625<6f7220746865206566>.15 F <8c6369656e63>-.25 E 3.126<7977>-.15 G .626 <6974682077697468206120636c7573746572696e67206361707475726573>-3.126 F .297<7468652065646765206d617373206f662061206769>100 297.6 R -.15<7665> -.25 G 2.797<6e67>.15 G 2.797<726170682e20557365>-2.797 F .296 <697420696e20636f6e6a756e6374696f6e2077697468>2.797 F F3 .296 <636c6d2064697374>2.796 F F0 .296 <746f2064657465726d696e6520776869636820636c7573746572>2.796 F<2d>-.2 E .874<696e677320796f75206163636570742e2053656520746865204558414d504c4553 2073656374696f6e20696e>100 309.6 R F3 .875<636c6d2064697374>3.375 F F0 .875<666f7220616e2065>3.375 F .875<78616d706c65206f66>-.15 F F3 .875 <636c6d2064697374>3.375 F F0<616e64>3.375 E F3<636c6d>3.375 E<696e66>100 321.6 Q<6f>-.25 E F0<28616e64>2.5 E F3<636c6d206d656574>2.5 E F0 2.5 <2975>C 2.5<736167652e204f7574707574>-2.5 F<63616e2062652067656e65726174 656420666f72206d756c7469706c6520636c7573746572696e6773206174207468652073 616d652074696d652e>2.5 E<546865>100 345.6 Q F3<65668c6369656e6379>2.749 E F0 -.1<6661>2.749 G .249 <63746f722069732064657363726962656420696e205b315d202873656520746865>.1 F F3<5245464552454e434553>2.749 E F0 .248 <73656374696f6e292e20497420747269657320746f2062616c616e636520746865> 2.749 F .824<6475616c2061696d73206f6620636170747572696e672061206c6f7420 6f66206564676573206f722065646765207765696768747320616e64206b>100 357.6 R .824<656570696e672074686520636c757374657220666f6f747072696e74206f722061 726561>-.1 F .107<6672616374696f6e20736d616c6c2e20546865206566>100 369.6 R<8c6369656e63>-.25 E 2.607<796e>-.15 G .107<756d62657220686173207365> -2.607 F -.15<7665>-.25 G .107<72616c2061707065616c696e67206d617468656d 61746963616c2070726f706572746965732c2063662e205b315d2e204974206973>.15 F .492<72656c6174656420746f2c2062>100 381.6 R .492<7574206e6f742064657269> -.2 F -.25<7661>-.25 G .492<626c652066726f6d2c20746865207365636f6e642061 6e64207468697264206e756d626572732c20746865>.25 F F2 .493<6d617373206672> 2.993 F<616374696f6e>-.15 E F0 .493<616e6420746865>2.993 F F2<6172>2.993 E<6561>-.37 E<6672>100 393.6 Q<616374696f6e>-.15 E F0<2e>A<546865>100 417.6 Q F3 .316<6d617373206672616374696f6e>2.816 F F0 .316 <69732064658c6e656420617320666f6c6c6f>2.816 F 2.815<77732e204c6574>-.25 F F3<65>2.815 E F0 .315<626520616e2065646765206f66207468652067726170682e 2054686520636c7573746572696e67>2.815 F F2<636170747572>2.815 E<6573>-.37 E F3<65>100 429.6 Q F0 .632<696620746865207477>3.132 F 3.132<6f6e>-.1 G .632<6f646573206173736f6369617465642077697468>-3.132 F F3<65>3.132 E F0 .633<61726520696e207468652073616d6520636c75737465722e>3.133 F<4e6f>5.633 E 3.133<7774>-.25 G .633 <6865206d617373206672616374696f6e20697320746865206a6f696e74>-3.133 F <776569676874206f6620616c6c206361707475726564206564676573206469>100 441.6 Q<766964656420627920746865206a6f696e7420776569676874206f6620616c6c 20656467657320696e2074686520696e7075742067726170682e>-.25 E<546865>100 465.6 Q F3<6172>3.668 E 1.168<6561206672616374696f6e>-.18 F F0 1.168<69 7320726f7567686c79207468652073756d206f66207468652073717561726573206f6620 616c6c20636c75737465722073697a657320666f7220616c6c20636c7573746572732069 6e20746865>3.668 F .738<636c7573746572696e672c206469>100 477.6 R .739<76 696465642062792074686520737175617265206f6620746865206e756d626572206f6620 6e6f64657320696e207468652067726170682e2049742073617973>-.25 F F2 -.45 <726f>3.239 G<7567686c79>.45 E F0 3.239<2c62>C<656361757365>-3.239 E .64 <7468652061637475616c20666f726d756c61207573657320746865207175616e746974 79>100 489.6 R F3<4e>3.139 E F0<2a28>A F3<4e2d31>A F0 3.139<2977>C <68657265>-3.139 E -.15<7665>-.25 G 3.139<7269>.15 G 3.139<7473>-3.139 G .639<6179732073717561726520286f66>-3.139 F F3<4e>3.139 E F0 3.139<2961>C <626f>-3.139 E -.15<7665>-.15 G 3.139<2e416c>.15 G -.25<6f77>-3.139 G <2f68696768>.25 E<61726561206672616374696f6e20696e646963617465732061208c 6e652d677261696e65642f636f6172736520636c7573746572696e672e>100 501.6 Q F1<4f5054494f4e53>20 518.4 Q F3<2d6f>100 530.4 Q F0<666e616d652028>2.5 E F2<6f7574707574208c6c65206e616d65>A F0<29>A F3<2d7069>100 554.4 Q F0 2.5 <6628>2.5 G F2<6170706c7920696e8d6174696f6e206265666f72>-2.5 E <6568616e64>-.37 E F0<29>A<4170706c7920696e8d6174696f6e20746f2074686520 6772617068206d617472697820616e6420636f6d707574652074686520706572666f726d 616e6365206d6561737572657320666f722074686520726573756c742e>120 566.4 Q F3<2d7466>100 590.4 Q F0<3c74662d737065633e2028>2.5 E F2<7472>A <616e73666f726d20696e707574206d61747269782076616c756573>-.15 E F0<29>A <7368617265645f6465666f70747b2d74667d>120 602.4 Q F3<2d636c2d7472>100 626.4 Q<6565>-.18 E F0<666e616d652028>2.5 E F2 -.2<6578>C<70656374208c6c 652077697468206e657374656420636c7573746572696e67732028636f6e6520666f726d 617429>.2 E F0<29>A F3<2d636c2d6365696c>100 638.4 Q F0<3c6e756d3e2028> 2.5 E F2<736b697020286e65737465642920636c7573746572>A 2.5<736f>-.1 G 2.5 <6673>-2.5 G<697a652065>-2.5 E<7863656564696e67203c6e756d3e>-.2 E F0<29> A 1.586<5468652073706563698c6564208c6c652073686f756c6420636f6e7461696e20 61206869657261726368>120 650.4 R 4.086<796f>-.05 G 4.086<666e>-4.086 G 1.586<657374656420636c7573746572696e677320737563682061732067656e65726174 6564206279>-4.086 F F3<6d636c636d>120 662.4 Q F0 3.368<2e54>C .867<6865 206f7574707574206973207468656e20696e2061207370656369616c20666f726d61742c 20756e646f63756d656e7465642062>-3.368 F .867 <7574206561737920746f20756e6465727374616e642e>-.2 F<497473>5.867 E .017< 707572706f736520697320746f2068656c70206368657272797069636b20612073696e67 6c6520636c7573746572696e672066726f6d206120747265652c20696e20636f6e6a756e 6374696f6e20776974682074686520736c696768746c79>120 674.4 R -.15<6578>120 686.4 S <706572696d656e74616c20616e6420756e646f63756d656e7465642070726f6772616d> .15 E F3<6d6c6d8c66>2.5 E<6f66756d>-.25 E F0<2e>A .28 <546865206d656173757265207468617420697320757365642069732076>120 710.4 R .28<65727920736c6f>-.15 F 2.779<7774>-.25 G 2.779<6f63>-2.779 G .279 <6f6d7075746520666f72206c6172>-2.779 F .279<676520636c7573746572732c2061 6e642067656e6572616c6c792069742077696c6c206265>-.18 F .715 <6f75747369646520616e>120 722.4 R 3.215<7969>-.15 G .716<6e746572657374 696e672072616e67652028692e652e2069742077696c6c20626520736d616c6c292e> -3.215 F<557365>5.716 E F3<2d636c2d6365696c>3.216 E F0 .716 <746f20736b697020636c7573746572732065>3.216 F<7863656564696e67>-.15 E <636c6d20696e666f2031322d313335>20 768 Q<3134204d61792032303132>142.895 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d20696e666f283129>20 48 Q <5553455220434f4d4d414e4453>144.005 E<636c6d20696e666f283129>146.505 E <7468652073706563698c65642073697a6520ad>120 84 Q/F1 10/Times-Bold@0 SF <636c6d20696e66>2.5 E<6f>-.25 E F0<77696c6c206469726563746c792070726f63 65656420746f20737562636c75737465727320696620746865>2.5 E 2.5<7965>-.15 G <786973742e>-2.65 E F1<2d6361742d6d6178>100 108 Q F0<6e756d2028>2.5 E/F2 10/Times-Italic@0 SF<646f206174206d6f7374206e756d206c65>A<76656c73>-.15 E F0<29>A .935<54686973206f6e6c7920686173206566>120 120 R .935 <66656374207768656e20757365642077697468>-.25 F F1<2d636c2d7472>3.435 E <6565>-.18 E F0<2e>A F1 .935<636c6d20696e66>5.935 F<6f>-.25 E F0 .934 <77696c6c20737461727420617420746865206d6f7374208c6e652d677261696e6564> 3.435 F<6c65>120 132 Q -.15<7665>-.25 G<6c2c2077>.15 E <6f726b696e6720757077>-.1 E<617264732e>-.1 E F1 <2d2d6e6f64652d616c6c2d6d6561737572>100 156 Q<6573>-.18 E F0<28>2.5 E F2 <64756d70206e6f64652d7769736520637269746572696120666f7220616c6c20696e63 6964656e7420636c7573746572>A<73>-.1 E F0<29>A F1 <2d2d6e6f64652d73656c662d6d6561737572>100 168 Q<6573>-.18 E F0<28>2.5 E F2<64756d70206e6f64652d7769736520637269746572696120666f72206e6174697665 20636c7573746572>A F0<29>A <5468657365206f7074696f6e732072657475726e2061206b>120 180 Q -.15<6579> -.1 G<2d76>.15 E<616c756520626173656420666f726d61742c207769746820746865 206d65616e696e67206f6620746865206b>-.25 E -.15<6579>-.1 G 2.5<7361>.15 G 2.5<7366>-2.5 G<6f6c6c6f>-2.5 E<77732e>-.25 E/F3 10/Courier@0 SF 18 <6e6d2066696c65>120 204 R<6e616d652028726564756e64616e7420756e6c65737320 6d756c7469706c6520636c75737465722066696c6573206172652070726f766964656429> 6 E 18<6e69206e6f6465>120 216 R<696e646578>6 E 18<636920636c7573746572> 120 228 R<696e646578>6 E 18<6e6e206e756d626572>120 240 R<6f66206e656967 68626f757273206f662074686973206e6f64652028636f6e7374616e7420666f72206120 67697665206e6f646529>6 E 18<6e6320636c7573746572>120 252 R <73697a652028636f6e7374616e7420666f72206120676976656e20636c757374657229> 6 E 18<656620656666696369656e6379>120 264 R <666f722074686973206e6f64652f636c757374657220636f6d62696e6174696f6e>6 E 18<656d206d61782d656666696369656e6379>120 276 R <666f722074686973206e6f64652f636c757374657220636f6d62696e6174696f6e>6 E 18<6d66206d617373>120 288 R<6672616374696f6e3a2070657263656e74616765206f 662065646765207765696768747320666f722074686973206e6f646520696e2074686973 20636c7573746572>6 E 18<6d6120746f74616c>120 300 R<6d617373206f66206564 6765207765696768747320666f722074686973206e6f646520696e207468697320636c75 73746572>6 E 18<786e206e756d626572>120 312 R<6f66206e65696768626f757273 206f6620746865206e6f6465207468617420617265206e6f7420696e2074686520636c75 73746572>6 E 18<7863206e756d626572>120 324 R<6f66206e6f64657320696e2074 686520636c7573746572207468617420617265206e6f742061206e65696768626f757220 6f6620746865206e6f6465>6 E 18<6e73206e756d626572>120 336 R<6f66206e6569 6768626f757273206f6620746865206e6f646520746861742061726520616c736f20696e 207468697320636c7573746572>6 E 18<746920746865>120 348 R<6d6178696d756d 206f66207468652065646765207765696768747320666f72206e65696768626f75727320 6f662074686973206e6f646520746861742061726520696e207468697320636c75737465 72>6 E 18<746f20746865>120 360 R<6d6178696d756d206f66207468652065646765 207765696768747320666f72206e65696768626f757273206f662074686973206e6f6465 207468617420617265204e4f5420696e207468697320636c7573746572>6 E 18 <616c2028616c69656e29>120 372 R 6<3169>6 G 6<6674>-6 G<6865206e6f646520 6973206e6f74206e617469766520746f2074686520636c75737465722c20302069662074 6865206e6f6465206973206e6174697665>-6 E/F4 10.95/Times-Bold@0 SF -.548 <4155>20 400.8 S<54484f52>.548 E F0<5374696a6e2076>100 412.8 Q <616e20446f6e67656e2e>-.25 E F4<53454520414c534f>20 429.6 Q F1 <6d636c66616d696c79283729>100 441.6 Q F0<666f7220616e206f>2.5 E -.15 <7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c20746865 20646f63756d656e746174696f6e20616e6420746865207574696c697469657320696e20 746865206d636c2066>-2.5 E<616d696c792e>-.1 E F4<5245464552454e434553>20 458.4 Q F0 1.752<5b315d205374696a6e2076>100 470.4 R 1.752 <616e20446f6e67656e2e>-.25 F F2 -.8<5065>4.252 G 1.752 <72666f726d616e636520637269746572696120666f72206772>.8 F 1.753 <61706820636c7573746572696e6720616e64204d61726b>-.15 F 1.953 -.1 <6f762063>-.1 H 1.753<6c75737465722065>.1 F<78706572692d>-.2 E <6d656e7473>100 482.4 Q F0 2.598<2e54>C .098<6563686e6963616c205265706f 727420494e532d52303031322c204e6174696f6e616c20526573656172636820496e7374 697475746520666f72204d617468656d617469637320616e6420436f6d7075746572> -3.298 F<536369656e636520696e20746865204e65746865726c616e64732c20416d73 74657264616d2c204d617920323030302e>100 494.4 Q<687474703a2f2f7777772e63 77692e6e6c2f6674702f4357497265706f7274732f494e532f494e532d52303031322e70 732e5a>100 506.4 Q<636c6d20696e666f2031322d313335>20 768 Q <3134204d61792032303132>142.895 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clmclose.azm0000644000402500021140000000707611421147717012367 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm close} {html_title}{The clm close manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{clm close}{Fetch connected components from graphs or subgraphs} \disclaim_clm{close} \sec{synopsis}{SYNOPSIS} \par{ \clm{close} -imx [options] } \par{ \clm{close} \synreqopt{-imx}{fname}{specify matrix input} \synreqopt{-abc}{fname}{specify label input} \synreqopt{-dom}{fname}{input domain/cluster file} \synoptopt{-o}{fname}{output file} \synoptopt{--is-undirected}{trust input graph to be undirected} \synoptopt{--write-count}{output component count} \synoptopt{--write-sizes}{output component sizes (default)} \synoptopt{--write-cc}{output components as clustering} \synoptopt{--write-block}{output graph restricted to -dom argument} \synoptopt{--write-blockc}{output graph complement of -dom argument} \synoptopt{-cc-bound}{num}{select components with size at least num} \shared_synoptopt{-tf} \stdsynopt } \sec{description}{DESCRIPTION} \par{ Use \clm{close} to fetch the connected components from a graph. Different output modes are supported (see below). In matrix mode (i.e. using the \genopt{-imx} option) the output returned with \genopt{--write-cc} can be used in conjunction with \mcxsubs to retrieve individual subgraphs corresponding to connected components. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-abc}{}{label input}} \car{ The file name for input that is in label format.} \item{\defopt{-imx}{}{input matrix}} \car{ The file name for input that is in mcl native matrix format.} \item{\defopt{-o}{fname}{output file}} \car{ Specify the file where output is sent to. The default is STDOUT. } \item{\defopt{-dom}{fname}{input domain/cluster file}} \car{ If this option is used, clm close will, as a first step, for each of the domains in file\~\genarg{fname} retrieve the associated subgraph from the input graph. These are then further decomposed into connected components, and the program will process these in the normal manner. } \items{ {\defopt{--write-count}{output component count}} {\defopt{--write-sizes}{output component sizes (default)}} {\defopt{--write-cc}{output components as clustering}} {\defopt{--write-block}{output graph restricted to -dom argument}} {\defopt{--write-blockc}{output graph complement of -dom argument}} } \car{ The default behaviour is currently to output the sizes of the connected components. It is also possible to simply output the number of components with \genopt{--write-count} or to write the components as a clustering in mcl format with \genopt{-write-cc}. Even more options exist: it is possible to output the restriction of the input graph to a domain, or to output the complement of this restriction. } \item{\defopt{--is-undirected}{omit graph undirected check}} \car{ With this option the transformation to make sure that the input is undirected is omitted. This will be slightly faster. Using this option while the input is directed may lead to erronenous results. } \item{\defopt{-cc-bound}{num}{select components with size at least num}} \shared_defopt{-tf} \stddefopt \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/clmdist.azm0000644000402500021140000003626711705601253012224 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm dist} {html_title}{The clm dist manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \def{p1}{\bf{P1}} \def{p2}{\bf{P2}} \def{D}{\bf{D}} \def{N}{\bf{N}} \def{d1}{\bf{d1}} \def{d2}{\bf{d2}} \def{sjd}{\bf{sjd}} \sec{name}{NAME} \NAME{clm dist}{compute the distance between two or more partitions\ (clusterings).} \par{ The distance that is computed can be any of \it{split/join distance}, \it{variance of information}, or \it{Mirkin metric}.} \disclaim_clm{dist} \sec{synopsis}{SYNOPSIS} \par{ \clm{dist} [options] +} \par{ \clm{dist} \synoptopt{-mode}{}{distance type} \synoptopt{-o}{fname}{output file} \synoptopt{--chain}{only compare consecutive clusterings} \synoptopt{--one-to-many}{compare first clustering to all others} \synoptopt{--sort}{sort clusterings based on coarseness} \synoptopt{--index}{output Rand, adjusted Rand and Jaccard indices} \synoptopt{-digits}{k}{output decimals} \stdsynopt +} \sec{description}{DESCRIPTION} \par{ \clm{dist} computes distances between clusterings. It can compute the \it{split/join distance} (described below), the \it{variance of information measure}, and the \it{Mirkin metric}. By default it computes the chosen distance for all pairs of distances in the clusterings provided. Clusterings must be in the mcl matrix format (cf. \mysib{mcxio}), and are supplied on the command line as the names of the files in which they are stored. It is possible to compare only consecutive clusterings by using the \genopt{--chain} option. } \par{ Currently, \clm{dist} cannot compute different distance types simultaneously.} \par{ The output is linewise, each line giving information about the distance between a pair of clusterings. A line has the following format:} \verbatim{\:/ d d1 d2 N v name1 name2 [v50,v75,v90,v95,v99]} \car{ where \v{dT} is the distance between the two clusterings, \v{d1} is the distance from the first clustering to the greatest common subclustering (alternatively called GCS, intersection, or meet) of the two clusterings, \v{d2} is similarly the distance from the second clustering to the GCS, \v{N} is the number of nodes in the set over which the clusterings are defined, \v{name1} is the name of the file containing the first clustering, \v{name2} is the name of the file containing the second clustering, and \v{vXX} is the number of \it{volatile nodes} at stringency factor \v{0.XX} (i.e. 0.5 for \v{v50}). Refer to \clmref{vol} for a definition of \it{volatile node}. } \sec{options}{OPTIONS} \'begin{itemize}{\mcx_itemopts} \item{\defopt{-mode}{}{distance type}} \car{ Use \bf{sj} for the \it{split/join distance} (described below), \bf{vi} for the \it{variance of information measure} and \bf{mk} for the \it{Mirkin metric}.} \item{\defopt{--chain}{only compare consecutive clusterings}} \car{ This option can be used if you know that the clusterings are nested clusterings (or appoximately so) and ordered from coarse to fine-grained or vice versa. An example of this is the set of clusterings resulting from applying \mcl with a range of inflation parameters. } \item{\defopt{--one-to-many}{compare first clustering to all others}} \car{ Use this option for example to compare a gold standard classification to a collection of clusterings. Bear in mind that sub-clustering and super-clustering are also ways for a clustering to be compatible with a gold standard. This means that the simple numerical criterion of distance between clusters (by whatever method) is only partially informative. For the Mirkin, variation of information and split/join metrics it pays to take into account the constituent distances \v{d1} and \v{d2} (see above). Assuming that the first clustering given as argument represents a gold standard, a small value for \v{d1} implies that the second clustering is (nearly) a superclustering, and similarly a small value for \v{d2} implies that it is (nearly) a subclustering. } \item{\defopt{--sort}{sort clusterings based on coarseness}} \car{ This option can be useful in conjunction with the \genopt{--chain} option, in case the list of clusterings supplied is not necessarily ordered by granularity. } \item{\defopt{--index}{output Rand, adjusted Rand and Jaccard indices}} \car{ As described. } \item{\defopt{-o}{fname}{output file}} \item{\defopt{-digits}{k}{output decimals}} \car{ The number of decimals printed when using the variance of information measure.} \stddefopt \end{itemize} \sec{}{SPLIT/JOIN DISTANCE} \par{ For each pair of clusterings \bf{C1}, \bf{C2}, two numbers are given, say \bf{d1} and \bf{d2}. Then \bf{d1} + \bf{d2} equals the number of nodes that have to be exchanged in order to transform any of the two clusterings into the other, and you can think of (\bf{d1}+\bf{d2})/\bf{2N} as the percentage that the two clusterings differ. The split/join distance has a linearity property with respect to the meet of \bf{C1} and \bf{C2}, see below.} \par{ The split/join distance \sjd is very handy in computing the consistency of two or more clusterings of the same graph, or comparing clusterings made with different resource (but otherwise identical) parameters. The latter is for finding out whether you can settle for cheaper mcl settings, or whether you need to switch to more expensive settings. The former is for finding out whether clusterings are identical, conflicting, or whether one is (almost) a subclustering of the other - mostly for comparing a set of clusterings of different granularity, made by letting the mcl parameter \genopt{-I} vary. The \secref{examples} section contains examples of all these \clm{dist} uses, and the use of \clm{info} and \clm{meet} is also discussed there.} \par{ \sjd is a metric distance on the space of partitions of a set of a given fixed cardinality. It has the following linearity property. Let \p1 and \p2 be partitions, then} \par{ \sjd(\p1, \p2) = \sjd(\p1, \D) + \sjd(\p2, \D)} \par{ where \D (for Dutch Doorsnede) is the intersection of \p1 and \p2, i.e. the unique clustering that is both a subclustering of \p1 and \p2 \it{and} a superclustering of all other subclusterings of \p1 and \p2. Sloppily worded, \D is the largest subclustering of both \p1 and \p2. See the \secref{references} section for a pointer to the technical report in which \sjd was first defined (and in which the non-trivial triangle inequality is proven).} \par{ Because it is useful to know whether one partition (or clustering) is almost a subclustering of the other, \clm{dist} returns the two constituents \sjd(\p1,\D) and \sjd(\p2,\D).} \par{ Let \p1 and \p2 be two clusterings of a graph of cardinality \N, and suppose \clm{dist} returns the integers \d1 and \d2. You can think of \bf{100 * (d1 + d2) / N} as the percentage that \p1 and \p2 differ. This interpretation is in fact slightly conservative. The numerator is the number of nodes that need to be exchanged in order to transform one into the other. This number may grow as large as \bf{2*N - 2*sqrt(N)}, so it would be justified to take 50 as a scaling factor rather than 100.} \par{ For example, if \bf{A} and \bf{B} are both clusterings of a graph on a set of 9058 nodes and \clm{dist} returns [38, 2096], this conveys that \bf{A} is almost a subclustering of \bf{B} (by splitting 38 nodes in \bf{A} we obtain a clustering \bf{D} that is a subclustering of \bf{B}), and that \bf{B} is much less granular than \bf{A}. The latter is because we can obtain \bf{B} from \bf{D} by \it{joining} 2096 nodes in some way.} \sec{examples}{EXAMPLES} \: todo: different resource levels on huge for -I 1.4 \: comparing different clusterings of huge. \: comparing the latter with \clm{meet}. \par{ The following is an example of several mcl validation tools applied to a set of clusterings on a protein graph of 9058 nodes. In the first experiment, six different clusterings were generated for different values of the inflation parameter, which was respectively set to 1.2, 1.6, 2.0, 2.4, 2.8, and 3.2. It should be noted that protein graphs seem somewhat special in that an inflation parameter setting as low as 1.2 still produces a very acceptable clustering. The six clusterings are scrutinized using \clm{dist}, \clm{info}, and \clm{meet}. In the second experiment, four different clusterings were generated with identical flow (i.e. inflation) parameter, but with different resource parameters. \clm{dist} is used to choose a sufficient resource level.} \par{ High \genopt{-P/-S/-R} values make \mcl more accurate but also more time and memory consuming. Run \mcl with different settings for these parameters, holding other parameters fixed. If the expensive and supposedly more accurate clusterings are very similar to the clusterings resulting from cheaper settings, the cheaper setting is sufficient. If the distances between cheaper clusterings and more expensive clusterings are large, this is an indication that you need the expensive settings. In that case, you may want to increase the \genopt{-P/-S/-R} parameters (or simply the \genopt{-scheme} parameter) until associated clusterings at nearby resource levels are very similar.} \par{ In this particular example, the validation tools do not reveal that one clustering in particular can be chosen as 'best', because all clusterings seem at least acceptable. They do aid however in showing the relative merits of each clusterings. The most important issue in this respect is cluster granularity. The table below shows the output of \clm{info}.} \verbatim{ Efficiency Mass frac Area frac Cl weight Mx link weight 1.2 0.42364 0.98690 0.02616 52.06002 50.82800 1.6 0.58297 0.95441 0.01353 55.40282 50.82800 2.0 0.63279 0.92386 0.01171 58.09409 50.82800 2.4 0.65532 0.90702 0.01091 59.58283 50.82800 2.8 0.66854 0.84954 0.00940 63.19183 50.82800 3.2 0.67674 0.82275 0.00845 66.10831 50.82800} \car{ This data shows that there is exceptionally strong cluster structure present in the input graph. The 1.2 clustering captures almost all edge mass using only 2.5 percent of 'area'. The 3.2 clustering still captures 82 percent of the mass using less than 1 percent of area. We continue with looking at the mutual consistency of the six clusterings. Below is a table that shows all pairwise distances between the clusterings.} \verbatim{ | 1.6 | 2.0 | 2.4 | 2.8 | 3.2 | 3.6 -----------------------------------------------------------. 1.2 |2096,38 |2728,41 |3045,48 |3404,45 |3621,43 |3800, 42 | -----------------------------------------------------------| 1.6 | | 797,72 |1204,76 |1638,78 |1919,70 |2167, 69 | -----------------------------------------------------------| 2.0 | | | 477,68 | 936,78 |1235,85 |1504, 88 | -----------------------------------------------------------| 2.4 | | | | 498,64 | 836,91 |1124,103 | -----------------------------------------------------------| 2.8 | | | | | 384,95 | 688,119 | -----------------------------------------------------------| 3.2 | | | | | | 350,110 | -----------------------------------------------------------. } \par{ The table shows that the different clusterings are pretty consistent with each other, because for two different clusterings it is generally true that one is almost a subclustering of the other. The interpretation for the distance between the 1.6 and the 3.2 clustering for example, is that by rearranging 43 nodes in the 3.2 clustering, we obtain a subclustering of the 1.6 clustering. The table shows that for any pair of clusterings, at most 119 entries need to be rearranged in order to make one a subclustering of the other.} \par{ The overall consistency becomes all the more clear by looking at the meet of all the clusterings:} \verbatim{ clm meet -o meet out12 out16 out20 out24 out28 out32 clm dist meet out12 out16 out20 out24 out28 out32} \car{ results in the following distances between the respective clusterings and their meet.} \verbatim{ | 1.2 | 1.6 | 2.0 | 2.4 | 2.8 | 3.2 | -------------- --------------------------------------------. meet| 0,3663| 0,1972| 0,1321 | 0,958 | 0,559 | 0,283 | -------------- --------------------------------------------.} \car{ This shows that by rearranging only 283 nodes in the 3.2 clustering, one obtains a subclustering of all other clusterings.} \par{ In the last experiment, \mcl was run with inflation parameter 1.4, for each of the four different preset pruning schemes \v{k=1,2,3,4}. The \clm{dist} distances between the different clusterings are shown below.} \verbatim{ | k=2 | k=3 | k=4 | -------------------------------. k=1 | 17,17 | 16,16 | 16,16 | -------------------------------. k=2 | | 3,3 | 5,5 | -------------------------------. k=3 | | | 4,4 | -------------------------------.} \car{ This example is a little boring in that the cheapest scheme seems adequate. If anything, the gaps between the \v{k=1} scheme and the rest are a little larger than the three gaps between the \v{k=2}, \v{k=3}, and \v{k=4} clusterings. Had all distances been much larger, then such an observation would be reason to choose the \v{k=2} setting.} \par{ Note that you need not feel uncomfortable with the clusterings still being different at high resource levels, if ever so slightly. In all likelihood, there are anyway nodes which are not in any core of attraction, and that are on the boundary between two or more clusterings. They may go one way or another, and these are the nodes which will go different ways even at high resource levels. Such nodes may be stable in clusterings obtained for lower inflation values (i.e. coarser clusterings), in which the different clusters to which they are attracted are merged.} \sec{author}{AUTHOR} \par{ Stijn van Dongen.} \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \sec{references}{REFERENCES} \par{ Stijn van Dongen. \it{Performance criteria for graph clustering and Markov cluster experiments}. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.\| \httpref{http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z}} \par{ Marina Meila. \it{Comparing Clusterings \- An Axiomatic View}. In \it{Proceedings of the 22nd International Conference on Machine Learning}, Bonn, Germany, 2005.} \par{ Marina Meila. \it{Comparing Clusterings}, UW Statistics Technical Report 418.\| \httpref{http://www.stat.washington.edu/www/research/reports/2002/tr418.ps}} \end{pud::man} mcl-12-135/doc/clmformat.html0000644000402500021140000010272011754271041012714 00000000000000 The clmformat manual

14 May 2012    clmformat 12-135

NAME

clm format — display cluster results in readable form

(optionally with labels and/or cohesion and stickiness measures attached).

Unless used with the -dump fname or --dump option, clm format depends on the presence of the macro processor zoem, as described further below.

The -icl fname input clustering option is always required. The -imx fname input matrix option is required in fancy mode. The tab file option -tab fname is needed if you want label information in the output rather than mcl identifiers.

SYNOPSIS

clm format has two different modes of output: dump and fancy. If neither is specified, fancy is used. In this mode, clm format generates a large arrary of performance measures related to nodes and clusters in both interlinked html output and plain text files. The files will be contained in an output directory that is newly created if not yet existing. In fancy mode the -imx option is required and the macro processor zoem must be available (http://micans.org/zoem).

If dump is specified (see below how to do this) clm format just generates a dump file where each line contains a cluster in the form of tab-separated indices, or tab-separated labels in case the -tab option is used. This dump is easy to parse with a simple or even quick-and-dirty script. You can include some very simple performance measures in this dump file by supplying --dump-measures. Use -dump fname to specify the name of the file to dump to, rather than having clm format construct a file name by itself.

clm format can combine the both modes by using either --dump or -dump fname and --fancy. In this case the dump file will be created in the output directory that is used by fancy mode.

clm format

-icl fname (input cluster file) -imx fname (input matrix/graph file) [-tf spec (apply tf-spec to input matrix)] [-pi num (apply pre-inflation to matrix)] [-tab fname (read tab file)] [--lazy-tab (allow mismatched tab-file)] [-lump-count n (node threshold)] [--dump (write dump to dump.<icl-name>)] [-dump fname (write dump to file)] [--dump-pairs (write cluster/node pair per line)] [--dump-measures (write simple performance measures)] [-dump-node-sep str (separate entries with str)] [--fancy (spawn information blizzard)] [-dir dirname (write results to directory)] [-infix str (use after base name/directory)] [-nsm fname (output node stickiness file)] [-ccm fname (output cluster cohesion file)] [--adapt (allow domain mismatch)] [--subgraph (take subgraph with --adapt)] [-zmm fname (assume macro definitions are in fname)] [-fmt fname (write to encoding file fname)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

Consult the option descriptions and the introduction above for interdependencies of options.

clm format generates in fancy mode a logical description of the to-be-formatted content in a very small vocabulary of format-specific zoem macros. The appearance of the output can be easily changed by adapting a zoem macro definition file (also output by clm format) that is used by the zoem interpreter to interpret the logical elements.

The output format is apt to change over subsequent releases, as a result of user feedback. Such changes will most likely be confined to the zoem macro definition file.

The OUTPUT EXPLAINED section further below is likely to be of interest.

DESCRIPTION

The primary function of clm format is to display cluster results and associated confidence measures in a readable form, by listing clusters in terms of the labels associated with the indices that are used in the mcl matrix. The labels must be stored in a so called tab file; see the -tab option for more information.

NOTE
clm format output is in the form of zoem macros. You need to have zoem installed in your system if you want clm format to be of use. Zoem will not be necessary if you are using the -dump option.

The -imx mx option is required unless the -dump option is used. The latter option results in special behaviour described under the -dump fname entry.

Output is by default written in a directory that is newly created if it does not yet exist (normally several files will be created, for which the directory acts as a natural container). It is possible to simply output to the current directory, for that you need to specify -dir ./. If -dir is not specified, the output directory fmt.<clname> will be used, where <clname> is the argument to the -cl option. In the output directory, clm format will normally write two files. One contains zoem macros encoding formatted output (the encoding file), and the second (the definition file) contains zoem macro definitions which are used by the former.

The encoding file is by default called fmt.azm (cf. the -fmt fname option). It contains zoem macros. It imports the macro definition file called clmformat.zmm that is normally also written by clm format. Another macro definition file can be specified by using the -zmm <defsname> option. In this case clm format will refrain from writing the definition file and replace mentions of clmformat.zmm in the encoding file by <defsname>.

The encoding file needs to be processed by issuing one of the following commands from within the directory where the file is located.

zoem -i fmt -d html zoem -i fmt -d txt

The first will result in HTML formatted output, the second in plain text format. Obviously, you need to have installed zoem (e.g. from http://micans.org/zoem/src/) for this to work.

For each cluster a paragraph is output. First comes a listing of other clusters (in order of relevance, possibly empty) for which a significant amount of edges exists between the other and the current cluster. Second comes a listing of the nodes in the current cluster. For each node a small sublist is made (in order of relevance, possibly empty) of other clusters in which the node has neighbours and for which the total sum of corresponding edge weights is significant. Several quantities are output for each node/cluster pair that is deemed relevant. These are explained in the section OUTPUT EXPLAINED.

Clusters will by default be output to file until the total node count has exceeded a threshold (refer to the -lump-count option).

clm format also shows how well each node fits in the cluster it is in and how cohesive each cluster is, using simple but effective measures (described in section OUTPUT EXPLAINED). This enables you to compare the quality of the clusters in a clustering relative to each other, and may help in identifying both interesting areas and areas for which cluster structure is hard to find or perhaps absent.

OPTIONS

-icl fname (input cluster file)

Name of the clustering file.

 
-imx fname (input matrix/graph file)

Name of the graph/matrix file.

 
-tf spec (apply tf-spec to input matrix)

Transform the input matrix values according to the syntax described in mcxio.

 
-tab fname (read tab file)

The file fname should be in tab format. Refer to mcxio.

 
--lazy-tab (allow mismatched tab-file)

Allow missing and spurious entries in the tab file.

 
-dump fname (write dump to file)

Clusters are written to file. For each cluster a single line is written containing all indices of all nodes in that cluster. The indices are separated by tabs. If a tab file is specified, the indices are replaced by the corresponding tab file entry.

 
--dump (write dump to file)

As -dump fname except that clm format writes to the file named dump.<icl-name> where <icl-name> is the argument to the -icl option.

 
-infix str (incorporate in base name)

str is included in the output file names. This can be used to store the results of different clm format runs (e.g. with differing -tf arguments) in the same directory.

 
--fancy (force fancy mode)

This enforces fancy mode if either of -dump or --dump is given. The dump file will be created in the output directory.

 
--dump-pairs (write cluster/node pair per line)

Rather than writing a single cluster on each line, write a single cluster index/node (either tab entry or index) pair per line. Works in conjunction with the -tab and -imx options.

 
--dump-measures (write simple performance measures)

If an input matrix is specified with -imx fname, three measures of efficiency are prepended, respectively the simple projection score, efficiency or coverage, and the max-efficiency or max-coverage.

 
-dump-node-sep str (separate entries with str)

Separate entries in the dump file with str.

 
-pi num (apply pre-inflation to matrix)

Apply pre-inflation to the matrix specified with the -imx option. This will cause the efficiency scores to place a higher reward on high-weight edges being covered by a clustering (assuming that num is larger than one).

This option is also useful when mcl itself was instructed to use pre-inflation when clustering a graph.

 
-lump-count n (node threshold)

The zoem file is created such that during zoem processing clusters are formatted and output within a single file until the node threshold has been exceeded. A new file is then opened and the procedure repeats itself.

 
--adapt (allow domain mismatch)

Allow the cluster domain to differ from the graph domain. Presumably the clustering is a clustering of a subgraph. The cohesion and stickiness measures will pertain to the relevant part of the graph only.

 
--subgraph (use restriction)

If the cluster domain is a subset of the graph domain, the cohesion and stickiness measures will by default still pertain to the entire graph. By setting this option, the measures will pertain to the subgraph induced by the cluster domain.

 
-dir dirname (write results to directory)

Use dirname as output directory. It will be created if it does not exist already.

 
-fmt fname (write to encoding file fname)

Write to encoding file fname rather than the default fmt.azm. It is best to supply fname with the standard zoem suffix .azm. Zoem will process file of any name, but those lacking the .azm suffix must be specified using the zoem -I fname option.

 
-zmm defsname (assume macro definitions are in fname)

If this option is used, clm format will not output the definition file, and mentions of the definition file in the encoding file will use the file name defsname. This option assumes that a valid definition file by the name of defsname does exist.

 
-nsm fname (output node stickiness file)

This option specifies the name in which to store (optionally) the node stickiness matrix. It has the following structure. The columns range over all elements in the graph as specified by the -imx option. The rows range over the clusters as specified by the -icl option. The entries contain the projection value of that particular node onto that particular clusters, i.e. the sum of the weights of all arcs going out from the node to some node in that cluster, written as a fraction relative to the sum of weights of all outgoing arcs.

 
-ccm fname (output cluster cohesion file)

This option specifies the name of the file in which to store (optionally) the cluster cohesion matrix. It has the following structure. Both columns and rows range over all clusters in the clustering as specified by the -icl option. An entry specifies the projection of one cluster onto another cluster, which is simply the average of the projection value onto the second cluster of all nodes in the first cluster.

OUTPUT EXPLAINED

What follows is an explanation of the output provided by the standard zoem macros. The output comes in a pretty terse number-packed format. The decision was made not to include headers and captions in the output in order to keep it readable. You might want to print out the following annotated examples. At the same side of the equation, the following is probably tough reading unless you have an actual example of clmformatted output at hand.

Below mention is made of the projection value for a node/cluster pair. This is simply the total amount of edge weights for that node in that cluster (corresponding to neighbours of the node in the cluster) relative to the overall amount of edge weights for that node (corresponding to all its neighbours). The coverage measure (refered to as cov) is also used. This is similar to the projection value, except that a) the coverage measure rewards the inclusion of large edge weights (and penalizes the inclusion of insignificant edge weights) and b) rewards node/cluster pairs for which the neighbour set of the node is very similar to the cluster. The maximum coverage measure (refered to as maxcov) is similar to the normal coverage measure except that it rewards inclusion of large edge weights even more. The cov and maxcov performance measures have several nice continuity and monotonicity properties and are described in [1].

Example cluster header

Cluster 0 sz 15 self 0.82 cov 0.43-0.26 10: 0.11 18: 0.05 12: 0.02

explanation

Cluster 0 sz 15 self 0.82 cov 0.43-0.26 | | | | | clid count proj cov covmax 10: 0.11 | | clidx1 projx1 18: 0.05 | | clidx2 projx2 clid Numeric cluster identifier (arbitrarily) assigned by MCL. count The size of cluster clid. proj Projection value for cluster clid [d]. cov Coverage measure for cluster clid [d]. maxcov Max-coverage measure for cluster clid [d]. clidx1 Index of other cluster sharing relatively many edges. projx1 Projection value for the clid/clidx1 pair of clusters [e]. clidx2 : projx2 : as clidx1 and projx1

Example inner node
An inner node is listed under a cluster, and it is simply a member of that cluster. The name is as opposed to 'outer node', described below.

[foo bar zut] 21 7-5 0.73 0.420-0.331 0.282-0.047 0.071-0.035 <3.54> 10 6/3 0.16 0.071-0.047 0.268-0.442 12 4/2 0.11 0.071-0.035 0.296-0.515

explanation

[label] 21 7-5 0.73 0.420-0.331 0.282-0.047 0.071-0.035 <3.54> | | | | | | | | | | | idx nbi nbo proj cov covmax max_i min_i max_o-min_o SUM 10 6/3 0.16 0.268-0.442 0.071-0.047 | | | | | | | | clusid sz nb proj cov covmax max_i min_i label Optional; with -tab <tabfile> option. idx Numeric (mcl) identifier. nbi Count of the neighbours of node idx within its cluster. nbo Count of the neighbours of node idx outside its cluster. proj Projection value [a] of nbi edges. cov Skewed projection [b], rewards inclusion of large edge weights. covmax As cov above, rewarding large edge weights even more. max_i Largest edge weight in the nbi set, normalized [c]. min_i Smallest edge weight in the nbi set [c]. max_o Largest edge weight outside the nbi set [c] min_o Smallest edge weight outside the nbi set [c]. SUM The sum of all edges leaving node idx. clusid Index of other cluster that is relevant for node idx. sz Size of that cluster. nb Count of neighbours of node idx in cluster clusid. proj Projection value of edges from node idx to cluster clusid. cov Skewed projection of edges from node idx to cluster clusid. covmax Maximally skewed projection, as above. max_o Largest edge weight for node idx to cluster clusid [c]. min_o Smallest edge weight for node idx to cluster clusid [c].

Example outer node
An outer node is listed under a cluster. The node is not part of that cluster, but seems to have substantial connections to that cluster.

[zoo eek few] 29 18#2 2-5 0.65 0.883-0.815 0.436-0.218 0.073-0.055 /4 0.27 0.070-0.109 0.073-0.055

explanation

[label] 29 18#2 2-5 0.65 0.883-0.815 0.436-0.218 0.073-0.055 | | | | | | | | | | | | idx cl sz nbi nbo proj cov maxcov max_i min_i max_o min_o id /4 0.27 0.070-0.109 0.073-0.055 <2.29> | | | | | | | nb proj cov maxcov max_i min_i SUM label Optional; with -tab <tabfile> option. idx Numeric (mcl) identifier clid Index of the cluster that node idx belongs to sz Size of the cluster that node idx belongs to proj : cov : All these entries are the same as described above covmax : for inner nodes, pertaining to cluster clid, max_i : i.e. the native cluster for node idx min_i : (it is a member of that cluster). max_o : min_o : nb The count of neighbours of node idx in the current cluster proj Projection value for node idx relative to current cluster. cov Skewed projection (rewards large edge weights), as above. covmax Maximally skewed projection, as above. max_o Largest edge weight for node idx in current cluster [c]. min_o smallest edge weight for node idx in current cluster [c]. SUM The sum of *all* edges leaving node idx.
[a]

The projection value for a node relative to some subset of its neighbours is the sum of edge weights of all edges to that subset. The sum is witten as a fraction relative to the sum of edge weights of all neighbours.

 
[b]

cov and covmax stand for coverage and maximal coverage. The coverage measure of a node/cluster pair is a generalized and skewed projection value [a] that rewards the presence of large edge weights in the cluster, relative to the collection of weights of all edges departing from the node. The maxcov measure is a projection value skewed even further, correspondingly rewarding the inclusion of large edge weights. The cov and maxcov performance measures have several nice continuity properties and are described in [1].

 
[c]

All edge weights are written as the fraction of the sum SUM of all edge weights of edges leaving node idx.

 
[d]

For clusters the projection value and the coverage measures are simply the averages of all projection values [a], respectively coverage measures [b], taken over all nodes in the cluster. The cluster projection value simply measures the sum of edge weights internal to the cluster, relative to the total sum of edge weights of all edges where at least one node in the edge is part of the cluster.

 
[e]

The projection value for start cluster x and end cluster y is the sum of edge weights of edges between x and y as a fraction of the sum of all edge weights of edges leaving x.

AUTHOR

Stijn van Dongen.

REFERENCES

[1] Stijn van Dongen. Performance criteria for graph clustering and Markov cluster experiments. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.
http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/clmformat.10000644000402500021140000005357611754271041012126 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clmformat" 1 "14 May 2012" "clmformat 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm format \- display cluster results in readable form (optionally with labels and/or cohesion and stickiness measures attached)\&. Unless used with the \fB-dump\fP\ \&\fIfname\fP or \fB--dump\fP option, \fBclm format\fP depends on the presence of the macro processor \fBzoem\fP, as described further below\&. The \fB-icl\fP\ \&\fIfname\fP input clustering option is always required\&. The \fB-imx\fP\ \&\fIfname\fP input matrix option is required in fancy mode\&. The tab file option \fB-tab\fP\ \&\fIfname\fP is needed if you want label information in the output rather than mcl identifiers\&. .SH SYNOPSIS \fBclm format\fP has two different modes of output: \fIdump\fP and \fIfancy\fP\&. If neither is specified, \fIfancy\fP is used\&. In this mode, \fBclm format\fP generates a large arrary of performance measures related to nodes and clusters in both interlinked html output and plain text files\&. The files will be contained in an output directory that is newly created if not yet existing\&. In fancy mode the \fB-imx\fP option is required and the macro processor \fBzoem\fP must be available (http://micans\&.org/zoem)\&. If \fIdump\fP is specified (see below how to do this) \fBclm format\fP just generates a dump file where each line contains a cluster in the form of tab-separated indices, or tab-separated labels in case the \fB-tab\fP option is used\&. This dump is easy to parse with a simple or even quick-and-dirty script\&. You can include some very simple performance measures in this dump file by supplying \fB--dump-measures\fP\&. Use \fB-dump\fP\ \&\fIfname\fP to specify the name of the file to dump to, rather than having \fBclm format\fP construct a file name by itself\&. \fBclm format\fP can combine the both modes by using either \fB--dump\fP or \fB-dump\fP\ \&\fIfname\fP \fIand\fP \fB--fancy\fP\&. In this case the dump file will be created in the output directory that is used by \fIfancy\fP mode\&. \fBclm format\fP \fB-icl\fP fname (\fIinput cluster file\fP) \fB-imx\fP fname (\fIinput matrix/graph file\fP) \fB[-tf\fP spec (\fIapply tf-spec to input matrix\fP)\fB]\fP \fB[-pi\fP num (\fIapply pre-inflation to matrix\fP)\fB]\fP \fB[-tab\fP fname (\fIread tab file\fP)\fB]\fP \fB[--lazy-tab\fP (\fIallow mismatched tab-file\fP)\fB]\fP \fB[-lump-count\fP n (\fInode threshold\fP)\fB]\fP \fB[--dump\fP (\fIwrite dump to dump\&.\fP)\fB]\fP \fB[-dump\fP fname (\fIwrite dump to file\fP)\fB]\fP \fB[--dump-pairs\fP (\fIwrite cluster/node pair per line\fP)\fB]\fP \fB[--dump-measures\fP (\fIwrite simple performance measures\fP)\fB]\fP \fB[-dump-node-sep\fP str (\fIseparate entries with str\fP)\fB]\fP \fB[--fancy\fP (\fIspawn information blizzard\fP)\fB]\fP \fB[-dir\fP dirname (\fIwrite results to directory\fP)\fB]\fP \fB[-infix\fP str (\fIuse after base name/directory\fP)\fB]\fP \fB[-nsm\fP fname (\fIoutput node stickiness file\fP)\fB]\fP \fB[-ccm\fP fname (\fIoutput cluster cohesion file\fP)\fB]\fP \fB[--adapt\fP (\fIallow domain mismatch\fP)\fB]\fP \fB[--subgraph\fP (\fItake subgraph with --adapt\fP)\fB]\fP \fB[-zmm\fP fname (\fIassume macro definitions are in fname\fP)\fB]\fP \fB[-fmt\fP fname (\fIwrite to encoding file fname\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP Consult the option descriptions and the introduction above for interdependencies of options\&. \fBclm format\fP generates in fancy mode a logical description of the to-be-formatted content in a very small vocabulary of format-specific zoem macros\&. The appearance of the output can be easily changed by adapting a zoem macro definition file (also output by \fBclm format\fP) that is used by the zoem interpreter to interpret the logical elements\&. The output format is apt to change over subsequent releases, as a result of user feedback\&. Such changes will most likely be confined to the zoem macro definition file\&. The OUTPUT EXPLAINED section further below is likely to be of interest\&. .SH DESCRIPTION The primary function of \fBclm format\fP is to display cluster results and associated confidence measures in a readable form, by listing clusters in terms of the labels associated with the indices that are used in the mcl matrix\&. The labels must be stored in a so called \fItab\fP file; see the \fB-tab\fP option for more information\&. \fBNOTE\fP .br \fBclm format\fP output is in the form of \fIzoem\fP macros\&. You need to have zoem installed in your system if you want \fBclm format\fP to be of use\&. Zoem will not be necessary if you are using the \fB-dump\fP option\&. The \fB-imx\fP\ \&\fImx\fP option is required unless the \fB-dump\fP option is used\&. The latter option results in special behaviour described under the \fB-dump\fP\ \&\fIfname\fP entry\&. Output is by default written in a directory that is newly created if it does not yet exist (normally several files will be created, for which the directory acts as a natural container)\&. It is possible to simply output to the current directory, for that you need to specify \fB-dir\fP\ \&\fB\&./\fP\&. If \fB-dir\fP is not specified, the output directory \fCfmt\&.\fP will be used, where \fC\fP is the argument to the \fB-cl\fP option\&. In the output directory, \fBclm format\fP will normally write two files\&. One contains zoem macros encoding formatted output (the encoding file), and the second (the definition file) contains zoem macro definitions which are used by the former\&. The encoding file is by default called \fCfmt\&.azm\fP (cf\&. the \fB-fmt\fP\ \&\fIfname\fP option)\&. It contains \fIzoem\fP macros\&. It imports the macro definition file called \fCclmformat\&.zmm\fP that is normally also written by \fBclm format\fP\&. Another macro definition file can be specified by using the \fB-zmm\fP\ \&\fI\fP option\&. In this case \fBclm format\fP will refrain from writing the definition file and replace mentions of \fCclmformat\&.zmm\fP in the encoding file by \fC\fP\&. The encoding file needs to be processed by issuing one of the following commands from within the directory where the file is located\&. .di ZV .in 0 .nf \fC zoem -i fmt -d html zoem -i fmt -d txt .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The first will result in HTML formatted output, the second in plain text format\&. Obviously, you need to have installed zoem (e\&.g\&. from http://micans\&.org/zoem/src/) for this to work\&. For each cluster a paragraph is output\&. First comes a listing of other clusters (in order of relevance, possibly empty) for which a significant amount of edges exists between the other and the current cluster\&. Second comes a listing of the nodes in the current cluster\&. For each node a small sublist is made (in order of relevance, possibly empty) of other clusters in which the node has neighbours and for which the total sum of corresponding edge weights is significant\&. Several quantities are output for each node/cluster pair that is deemed relevant\&. These are explained in the section OUTPUT EXPLAINED\&. Clusters will by default be output to file until the total node count has exceeded a threshold (refer to the \fB-lump-count\fP option)\&. \fBclm format\fP also shows how well each node fits in the cluster it is in and how cohesive each cluster is, using simple but effective measures (described in section OUTPUT EXPLAINED)\&. This enables you to compare the quality of the clusters in a clustering relative to each other, and may help in identifying both interesting areas and areas for which cluster structure is hard to find or perhaps absent\&. .SH OPTIONS .ZI 2m "\fB-icl\fP fname (\fIinput cluster file\fP)" \& .br Name of the clustering file\&. .in -2m .ZI 2m "\fB-imx\fP fname (\fIinput matrix/graph file\fP)" \& .br Name of the graph/matrix file\&. .in -2m .ZI 2m "\fB-tf\fP spec (\fIapply tf-spec to input matrix\fP)" \& .br Transform the input matrix values according to the syntax described in \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB-tab\fP fname (\fIread tab file\fP)" \& .br The file \fCfname\fP should be in \fItab format\fP\&. Refer to \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB--lazy-tab\fP (\fIallow mismatched tab-file\fP)" \& .br Allow missing and spurious entries in the tab file\&. .in -2m .ZI 2m "\fB-dump\fP fname (\fIwrite dump to file\fP)" \& .br Clusters are written to file\&. For each cluster a single line is written containing all indices of all nodes in that cluster\&. The indices are separated by tabs\&. If a tab file is specified, the indices are replaced by the corresponding tab file entry\&. .in -2m .ZI 2m "\fB--dump\fP (\fIwrite dump to file\fP)" \& .br As \fB-dump\fP\ \&\fIfname\fP except that \fBclm format\fP writes to the file named \fCdump\&.\fP where \fC\fP is the argument to the \fB-icl\fP option\&. .in -2m .ZI 2m "\fB-infix\fP str (\fIincorporate in base name\fP)" \& .br \fIstr\fP is included in the output file names\&. This can be used to store the results of different \fBclm format\fP runs (e\&.g\&. with differing \fB-tf\fP arguments) in the same directory\&. .in -2m .ZI 2m "\fB--fancy\fP (\fIforce fancy mode\fP)" \& .br This enforces fancy mode if either of \fB-dump\fP or \fB--dump\fP is given\&. The dump file will be created in the output directory\&. .in -2m .ZI 2m "\fB--dump-pairs\fP (\fIwrite cluster/node pair per line\fP)" \& .br Rather than writing a single cluster on each line, write a single cluster index/node (either tab entry or index) pair per line\&. Works in conjunction with the \fB-tab\fP and \fB-imx\fP options\&. .in -2m .ZI 2m "\fB--dump-measures\fP (\fIwrite simple performance measures\fP)" \& .br If an input matrix is specified with \fB-imx\fP\ \&\fIfname\fP, three measures of efficiency are prepended, respectively the simple projection score, efficiency or coverage, and the max-efficiency or max-coverage\&. .in -2m .ZI 2m "\fB-dump-node-sep\fP str (\fIseparate entries with str\fP)" \& .br Separate entries in the dump file with \fBstr\fP\&. .in -2m .ZI 2m "\fB-pi\fP num (\fIapply pre-inflation to matrix\fP)" \& .br Apply pre-inflation to the matrix specified with the \fB-imx\fP option\&. This will cause the efficiency scores to place a higher reward on high-weight edges being covered by a clustering (assuming that \fInum\fP is larger than one)\&. This option is also useful when \fBmcl\fP itself was instructed to use pre-inflation when clustering a graph\&. .in -2m .ZI 2m "\fB-lump-count\fP n (\fInode threshold\fP)" \& .br The zoem file is created such that during zoem processing clusters are formatted and output within a single file until the node threshold has been exceeded\&. A new file is then opened and the procedure repeats itself\&. .in -2m .ZI 2m "\fB--adapt\fP (\fIallow domain mismatch\fP)" \& .br Allow the cluster domain to differ from the graph domain\&. Presumably the clustering is a clustering of a subgraph\&. The cohesion and stickiness measures will pertain to the relevant part of the graph only\&. .in -2m .ZI 2m "\fB--subgraph\fP (\fIuse restriction\fP)" \& .br If the cluster domain is a subset of the graph domain, the cohesion and stickiness measures will by default still pertain to the entire graph\&. By setting this option, the measures will pertain to the subgraph induced by the cluster domain\&. .in -2m .ZI 2m "\fB-dir\fP dirname (\fIwrite results to directory\fP)" \& .br Use \fBdirname\fP as output directory\&. It will be created if it does not exist already\&. .in -2m .ZI 2m "\fB-fmt\fP fname (\fIwrite to encoding file fname\fP)" \& .br Write to encoding file \fBfname\fP rather than the default \fCfmt\&.azm\fP\&. It is best to supply fname with the standard zoem suffix \fC\&.azm\fP\&. Zoem will process file of any name, but those lacking the \fC\&.azm\fP suffix must be specified using the zoem \fB-I\fP\ \&\fIfname\fP option\&. .in -2m .ZI 2m "\fB-zmm\fP defsname (\fIassume macro definitions are in fname\fP)" \& .br If this option is used, \fBclm format\fP will not output the definition file, and mentions of the definition file in the encoding file will use the file name \fCdefsname\fP\&. This option assumes that a valid definition file by the name of \fCdefsname\fP does exist\&. .in -2m .ZI 2m "\fB-nsm\fP fname (\fIoutput node stickiness file\fP)" \& .br This option specifies the name in which to store (optionally) the \fBnode stickiness matrix\fP\&. It has the following structure\&. The columns range over all elements in the graph as specified by the \fB-imx\fP option\&. The rows range over the clusters as specified by the \fB-icl\fP option\&. The entries contain the projection value of that particular node onto that particular clusters, i\&.e\&. the sum of the weights of all arcs going out from the node to some node in that cluster, written as a fraction relative to the sum of weights of all outgoing arcs\&. .in -2m .ZI 2m "\fB-ccm\fP fname (\fIoutput cluster cohesion file\fP)" \& .br This option specifies the name of the file in which to store (optionally) the \fBcluster cohesion matrix\fP\&. It has the following structure\&. Both columns and rows range over all clusters in the clustering as specified by the \fB-icl\fP option\&. An entry specifies the projection of one cluster onto another cluster, which is simply the average of the projection value onto the second cluster of all nodes in the first cluster\&. .in -2m .SH OUTPUT EXPLAINED What follows is an explanation of the output provided by the standard zoem macros\&. The output comes in a pretty terse number-packed format\&. The decision was made not to include headers and captions in the output in order to keep it readable\&. You might want to print out the following annotated examples\&. At the same side of the equation, the following is probably tough reading unless you have an actual example of clmformatted output at hand\&. If you are reading this in a terminal, you might need to resize it to have width larger than 80 columns, as the examples below are formatted in verbatim mode\&. Below mention is made of the projection value for a node/cluster pair\&. This is simply the total amount of edge weights for that node in that cluster (corresponding to neighbours of the node in the cluster) relative to the overall amount of edge weights for that node (corresponding to all its neighbours)\&. The coverage measure (refered to as \fBcov\fP) is also used\&. This is similar to the projection value, except that a) the coverage measure rewards the inclusion of large edge weights (and penalizes the inclusion of insignificant edge weights) and b) rewards node/cluster pairs for which the neighbour set of the node is very similar to the cluster\&. The maximum coverage measure (refered to as \fBmaxcov\fP) is similar to the normal coverage measure except that it rewards inclusion of large edge weights even more\&. The cov and maxcov performance measures have several nice continuity and monotonicity properties and are described in [1]\&. \fBExample cluster header\fP .br .di ZV .in 0 .nf \fC Cluster 0 sz 15 self 0\&.82 cov 0\&.43-0\&.26 10: 0\&.11 18: 0\&.05 12: 0\&.02 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR \fBexplanation\fP .br .di ZV .in 0 .nf \fC Cluster 0 sz 15 self 0\&.82 cov 0\&.43-0\&.26 | | | | | clid count proj cov covmax 10: 0\&.11 | | clidx1 projx1 18: 0\&.05 | | clidx2 projx2 clid Numeric cluster identifier (arbitrarily) assigned by MCL\&. count The size of cluster clid\&. proj Projection value for cluster clid [d]\&. cov Coverage measure for cluster clid [d]\&. maxcov Max-coverage measure for cluster clid [d]\&. clidx1 Index of other cluster sharing relatively many edges\&. projx1 Projection value for the clid/clidx1 pair of clusters [e]\&. clidx2 : projx2 : as clidx1 and projx1 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR \fBExample inner node\fP .br An inner node is listed under a cluster, and it is simply a member of that cluster\&. The name is as opposed to \&'outer node\&', described below\&. .di ZV .in 0 .nf \fC [foo bar zut] 21 7-5 0\&.73 0\&.420-0\&.331 0\&.282-0\&.047 0\&.071-0\&.035 <3\&.54> 10 6/3 0\&.16 0\&.071-0\&.047 0\&.268-0\&.442 12 4/2 0\&.11 0\&.071-0\&.035 0\&.296-0\&.515 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR \fBexplanation\fP .br .di ZV .in 0 .nf \fC [label] 21 7-5 0\&.73 0\&.420-0\&.331 0\&.282-0\&.047 0\&.071-0\&.035 <3\&.54> | | | | | | | | | | | idx nbi nbo proj cov covmax max_i min_i max_o-min_o SUM 10 6/3 0\&.16 0\&.268-0\&.442 0\&.071-0\&.047 | | | | | | | | clusid sz nb proj cov covmax max_i min_i label Optional; with -tab option\&. idx Numeric (mcl) identifier\&. nbi Count of the neighbours of node idx within its cluster\&. nbo Count of the neighbours of node idx outside its cluster\&. proj Projection value [a] of nbi edges\&. cov Skewed projection [b], rewards inclusion of large edge weights\&. covmax As cov above, rewarding large edge weights even more\&. max_i Largest edge weight in the nbi set, normalized [c]\&. min_i Smallest edge weight in the nbi set [c]\&. max_o Largest edge weight outside the nbi set [c] min_o Smallest edge weight outside the nbi set [c]\&. SUM The sum of all edges leaving node idx\&. clusid Index of other cluster that is relevant for node idx\&. sz Size of that cluster\&. nb Count of neighbours of node idx in cluster clusid\&. proj Projection value of edges from node idx to cluster clusid\&. cov Skewed projection of edges from node idx to cluster clusid\&. covmax Maximally skewed projection, as above\&. max_o Largest edge weight for node idx to cluster clusid [c]\&. min_o Smallest edge weight for node idx to cluster clusid [c]\&. .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR \fBExample outer node\fP .br An outer node is listed under a cluster\&. The node is not part of that cluster, but seems to have substantial connections to that cluster\&. .di ZV .in 0 .nf \fC [zoo eek few] 29 18#2 2-5 0\&.65 0\&.883-0\&.815 0\&.436-0\&.218 0\&.073-0\&.055 /4 0\&.27 0\&.070-0\&.109 0\&.073-0\&.055 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR \fBexplanation\fP .br .di ZV .in 0 .nf \fC [label] 29 18#2 2-5 0\&.65 0\&.883-0\&.815 0\&.436-0\&.218 0\&.073-0\&.055 | | | | | | | | | | | | idx cl sz nbi nbo proj cov maxcov max_i min_i max_o min_o id /4 0\&.27 0\&.070-0\&.109 0\&.073-0\&.055 <2\&.29> | | | | | | | nb proj cov maxcov max_i min_i SUM label Optional; with -tab option\&. idx Numeric (mcl) identifier clid Index of the cluster that node idx belongs to sz Size of the cluster that node idx belongs to proj : cov : All these entries are the same as described above covmax : for inner nodes, pertaining to cluster clid, max_i : i\&.e\&. the native cluster for node idx min_i : (it is a member of that cluster)\&. max_o : min_o : nb The count of neighbours of node idx in the current cluster proj Projection value for node idx relative to current cluster\&. cov Skewed projection (rewards large edge weights), as above\&. covmax Maximally skewed projection, as above\&. max_o Largest edge weight for node idx in current cluster [c]\&. min_o smallest edge weight for node idx in current cluster [c]\&. SUM The sum of *all* edges leaving node idx\&. .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .ZJ 1m 2m "[a]" The projection value for a node relative to some subset of its neighbours is the sum of edge weights of all edges to that subset\&. The sum is witten as a fraction relative to the sum of edge weights of all neighbours\&. .in -3m .ZJ 1m 2m "[b]" cov and covmax stand for coverage and maximal coverage\&. The coverage measure of a node/cluster pair is a generalized and skewed projection value [a] that rewards the presence of large edge weights in the cluster, relative to the collection of weights of all edges departing from the node\&. The maxcov measure is a projection value skewed even further, correspondingly rewarding the inclusion of large edge weights\&. The cov and maxcov performance measures have several nice continuity properties and are described in [1]\&. .in -3m .ZJ 1m 2m "[c]" All edge weights are written as the fraction of the sum SUM of all edge weights of edges leaving node idx\&. .in -3m .ZJ 1m 2m "[d]" For clusters the projection value and the coverage measures are simply the averages of all projection values [a], respectively coverage measures [b], taken over all nodes in the cluster\&. The cluster projection value simply measures the sum of edge weights internal to the cluster, relative to the total sum of edge weights of all edges where at least one node in the edge is part of the cluster\&. .in -3m .ZJ 1m 2m "[e]" The projection value for start cluster x and end cluster y is the sum of edge weights of edges between x and y as a fraction of the sum of all edge weights of edges leaving x\&. .in -3m .SH AUTHOR Stijn van Dongen\&. .SH REFERENCES [1] Stijn van Dongen\&. \fIPerformance criteria for graph clustering and Markov cluster experiments\fP\&. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000\&. .br http://www\&.cwi\&.nl/ftp/CWIreports/INS/INS-R0012\&.ps\&.Z .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmmate.ps0000644000402500021140000003443711754271041012041 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:13 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d206d617465283129>20 48 Q <5553455220434f4d4d414e4453>140.675 E<636c6d206d617465283129>143.175 E /F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<636c6d206d61 746520ad20636f6d707574652062657374206d617463686573206265747765656e207477> 100 96 Q 2.5<6f63>-.1 G<6c7573746572696e6773>-2.5 E .261 <636c6d6d617465206973206e6f7420696e2061637475616c2066>100 120 R .261<61 637420612070726f6772616d2e2054686973206d616e75616c207061676520646f63756d 656e7473207468652062656861>-.1 F .26<76696f757220616e64206f7074696f6e73> -.2 F 1.498<6f662074686520636c6d2070726f6772616d207768656e20696e>100 132 R -.2<766f>-.4 G -.1<6b65>.2 G 3.998<6469>.1 G 3.998<6e6d>-3.998 G <6f6465>-3.998 E/F2 10/Times-Italic@0 SF<6d617465>3.998 E F0 3.998<2e54> C 1.498<6865206f7074696f6e73>-3.998 F/F3 10/Times-Bold@0 SF<2d68>3.998 E F0<2c>A F3<2d2d617072>3.998 E<6f706f73>-.18 E F0<2c>A F3<2d2d76>3.998 E <657273696f6e>-.1 E F0<2c>A F3<2d736574>3.998 E F0<2c>A F3<2d2d6e6f70> 100 144 Q F0<6172652061636365737369626c6520696e20616c6c>2.5 E F3<636c6d> 2.5 E F0<6d6f6465732e20546865>2.5 E 2.5<7961>-.15 G <72652064657363726962656420696e20746865>-2.5 E F3<636c6d>2.5 E F0 <6d616e75616c20706167652e>2.5 E F1<53594e4f50534953>20 160.8 Q F3 1.254 <636c6d206d617465205b2d6f>100 172.8 R F0 1.254<666e616d652028>3.754 F F2 1.253<6f7574707574208c6c65206e616d65>B F0<29>A F3 3.753<5d5b>C<2d62> -3.753 E F0<28>3.753 E F2 1.253<6f6d697420686561646572>B<73>-.1 E F0<29> A F3 3.753<5d5b>C<2d2d6f6e652d746f2d6d616e79>-3.753 E F0<28>3.753 E F2 -.37<7265>C<71756972>.37 E 3.753<656d>-.37 G<756c7469706c65>-3.753 E .897<6869747320696e203c636c8c6c65313e>100 184.8 R F0<29>A F3 3.397<5d5b> C<2d68>-3.397 E F0<28>3.397 E F2 .897 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F3 3.398 <5d5b>C<2d2d617072>-3.398 E<6f706f73>-.18 E F0<28>3.398 E F2 .898 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F3 3.398 <5d5b>C<2d2d76>-3.398 E<657273696f6e>-.1 E F0<28>3.398 E F2<7072696e74>A <766572>100 196.8 Q<73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F3<5d>A F0 <3c636c8c6c65313e203c636c8c6c65323e>2.5 E F1<4445534352495054494f4e>20 213.6 Q F3 .776<636c6d206d617465>100 225.6 R F0 .776 <636f6d707574657320666f72206561636820636c7573746572>3.276 F/F4 10 /Courier@0 SF<58>3.276 E F0<696e>3.276 E F4<636c66696c6531>3.276 E F0 .776<616c6c20636c757374657273>3.276 F F4<59>3.275 E F0<696e>3.275 E F4 <636c66696c6532>3.275 E F0 .775<74686174206861>3.275 F 1.075 -.15 <7665206e>-.2 H<6f6e2d>.15 E<656d70747920696e74657273656374696f6e20616e 64206f7574707574732061206c696e65207769746820746865206461746120706f696e74 73206c69737465642062656c6f>100 237.6 Q<772e>-.25 E F4 84 <6f7665726c617028582c59292023>118 261.6 R 6<322a73>6 G <697a65286d65657428582c592929202f202873697a652858292b73697a6528592929>-6 E 108<696e6465782858292023>118 273.6 R<6e616d65206f6620636c7573746572>6 E 108<696e6465782859292023>118 285.6 R<6e616d65206f6620636c7573746572>6 E<73697a65286d65657428582c592929>118 297.6 Q 102<73697a6528582d59292023> 118 309.6 R<73697a65206f66206c65667420646966666572656e6365>6 E 102 <73697a6528592d58292023>118 321.6 R <73697a65206f6620726967687420646966666572656e6365>6 E<73697a65285829>118 333.6 Q<73697a65285929>118 345.6 Q <70726f6a656374696f6e28582c20636c66696c653229>118 357.6 Q 6<2373>30 G <65652062656c6f77>-6 E<70726f6a656374696f6e28592c20636c66696c653129>118 369.6 Q 6<2373>30 G<65652062656c6f77>-6 E F0 1.202 <5468652070726f6a65637465642073697a65206f66206120636c7573746572>100 393.6 R F4<58>3.702 E F0<72656c617469>3.702 E 1.502 -.15<76652074>-.25 H 3.702<6f6163>.15 G<6c7573746572696e67>-3.702 E F4<4b>3.702 E F0 1.202 <69732073696d706c79207468652073756d206f6620616c6c20746865206e6f646573> 3.702 F .644<736861726564206265747765656e20616e>100 405.6 R 3.144<7963> -.15 G<6c7573746572>-3.144 E F4<59>3.144 E F0<696e>3.144 E F4<4b>3.144 E F0<616e64>3.144 E F4<58>3.144 E F0 3.144<2c64>C .644 <75706c69636174696f6e7320616c6c6f>-3.144 F .644<7765642e2046>-.25 F .644 <6f722065>-.15 F .644 <78616d706c652c207468652070726f6a65637465642073697a65>-.15 F<6f66>100 417.6 Q F4<28302c3129>2.5 E F0<72656c617469>2.5 E .3 -.15<76652074>-.25 H<6f>.15 E F4<7b28302c322c34292c2028312c342c39292c2028312c332c35297d>2.5 E F0<657175616c73>2.5 E F4<33>2.5 E F0<2e>A .307<546865206f>100 441.6 R -.15<7665>-.15 G .307<726c6170206265747765656e>.15 F F4<58>2.807 E F0 <616e64>2.807 E F4<59>2.807 E F0 .307<69732065>2.807 F .307 <786163746c7920312e3020696620746865207477>-.15 F 2.807<6f63>-.1 G .308< 6c75737465727320617265206964656e746963616c2c20616e6420666f72206e6561726c 79206964656e2d>-2.807 F<746963616c20636c7573746572696e677320746865207363 6f72652077696c6c20626520636c6f736520746f20312e302e>100 453.6 Q .104<416c 6c206f66207468697320696e666f726d6174696f6e2063616e20616c736f206265206f62 7461696e65642066726f6d2074686520636f6e74696e67656e63>100 477.6 R 2.604 <796d>-.15 G .104<61747269782064658c6e656420666f72207477>-2.604 F 2.604 <6f63>-.1 G<6c7573746572>-2.604 E<2d>-.2 E 4.013<696e67732e20546865>100 489.6 R F4<5b692c6a5d>4.013 E F0<726f>4.014 E 1.514 <772d636f6c756d6e20656e74727920696e206120636f6e746967656e63>-.25 F 4.014 <796d>-.15 G 1.514 <6174726978206265747765656e20746f20636c7573746572696e6773206769>-4.014 F -.15<7665>-.25 G 4.014<7374>.15 G<6865>-4.014 E .279<6e756d626572206f66 20656e747269657320696e2074686520696e74657273656374696f6e206265747765656e 20636c7573746572>100 501.6 R F4<69>2.5 E F0 .279<616e6420636c7573746572> 2.779 F F4<6a>2.5 E F0 .279<66726f6d20746865207265737065637469>2.779 F .579 -.15<76652063>-.25 H<6c7573746572>.15 E<2d>-.2 E .807<696e67732e20 546865206f7468657220696e666f726d6174696f6e20697320696d706c696369746c7920 70726573656e743b2074686520746f74616c206e756d626572206f66206e6f6465732069 6e20636c757374657273>100 513.6 R F4<69>2.5 E F0<616e64>3.308 E F4<6a>2.5 E F0 .731<666f722065>100 525.6 R .731<78616d706c652063616e206265206f6274 61696e6564206173207468652073756d206f6620656e747269657320696e20726f>-.15 F<77>-.25 E F4<69>2.5 E F0 .73<616e6420636f6c756d6e>3.23 F F4<6a>2.5 E F0<7265737065637469>3.23 E -.15<7665>-.25 G<6c79>.15 E 3.23<2c61>-.65 G .73<6e6420746865>-3.23 F<646966>100 537.6 Q .66<666572656e636520636f756e 74732063616e207468656e206265206f627461696e656420627920737562737472616374 696e672074686520696e74657273656374696f6e20636f756e742e>-.25 F .66 <54686520636f6e74696e67656e63>5.66 F<79>-.15 E <6d61747269782063616e20656173696c7920626520636f6d7075746564207573696e67> 100 549.6 Q F3<6d6378>2.5 E F0 2.5<3b65>C<2e672e>-2.5 E F4<6d6378202f63 6c66696c6532206c6d202f636c66696c6531206c6d207470206d756c202f74696e672077 6d>100 585.6 Q F0 .577 <77696c6c206372656174652074686520636f6e74696e67656e63>100 609.6 R 3.077 <796d>-.15 G .577<617472697820696e206d636c206d617472697820666f726d617420 696e20746865208c6c65>-3.077 F F4<74696e67>3.076 E F0 3.076<2c77>C .576 <6865726520636f6c756d6e732072616e6765>-3.076 F -.15<6f7665>100 621.6 S 2.5<7274>.15 G<686520636c75737465727320696e>-2.5 E F4<636c66696c6531>2.5 E F0<2e>A .627<546865206f75747075742063616e2062652070757420746f20676f6f 642075736520627920736f7274696e67206974206e756d65726963616c6c79206f6e2074 686174208c7273742073636f7265208c656c642e2049742069732061647669732d>100 645.6 R .324<61626c6520746f20757365206120737461626c6520736f727420726f75 74696e65202875736520746865>100 657.6 R F3<2d73>2.824 E F0 .324<6f707469 6f6e20666f7220554e495820736f7274292046726f6d207468697320696e666f726d6174 696f6e206f6e652063616e>2.824 F<717569636b6c792065>100 669.6 Q<7874726163 742074686520636c6f7365737420636c757374657273206265747765656e207477>-.15 E 2.5<6f63>-.1 G<6c7573746572696e67732e>-2.5 E F1<4f5054494f4e53>20 686.4 Q F3<2d6f>100 698.4 Q F0<666e616d652028>2.5 E F2 <6f7574707574208c6c65206e616d65>A F0<29>A <5370656369667920746865206e616d65206f6620746865206f7574707574208c6c652e> 120 710.4 Q<636c6d206d6174652031322d313335>20 768 Q <3134204d61792032303132>139.565 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d206d617465283129>20 48 Q <5553455220434f4d4d414e4453>140.675 E<636c6d206d617465283129>143.175 E /F1 10/Times-Bold@0 SF<2d62>100 84 Q F0<28>2.5 E/F2 10/Times-Italic@0 SF <6f6d697420686561646572>A<73>-.1 E F0<29>A <4261746368206d6f64652c206f6d697420636f6c756d6e206e616d65732e>120 96 Q F1<2d2d6f6e652d746f2d6d616e79>100 120 Q F0<28>2.5 E F2 -.37<7265>C <71756972>.37 E 2.5<656d>-.37 G <756c7469706c65206869747320696e203c636c8c6c65313e>-2.5 E F0<29>A .385<44 6f206e6f74206f757470757420696e666f726d6174696f6e20666f7220636c7573746572 7320696e20746865208c727374208c6c6520746861742061726520737562736574206f66 206120636c757374657220696e20746865207365632d>120 132 R<6f6e64208c6c652e> 120 144 Q/F3 10.95/Times-Bold@0 SF -.548<4155>20 160.8 S<54484f52>.548 E F0<5374696a6e2076>100 172.8 Q<616e20446f6e67656e2e>-.25 E F3 <53454520414c534f>20 189.6 Q F1<6d636c66616d696c79283729>100 201.6 Q F0 <666f7220616e206f>2.5 E -.15<7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c2074686520646f63756d656e746174696f6e20616e6420746865 207574696c697469657320696e20746865206d636c2066>-2.5 E<616d696c792e>-.1 E <636c6d206d6174652031322d313335>20 768 Q<3134204d61792032303132>139.565 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxdump.html0000644000402500021140000006542011754271044012415 00000000000000 The mcxdump manual

14 May 2012    mcxdump 12-135

NAME

mcxdump — dump matrices, optionally map indices to labels

SYNOPSIS

mcxdump [-imx <fname> (matrix file)] [-icl <fname> (cluster file to be dumped line-wise)] [-imx-cat <fname> (concatenation matrix file)] [-imx-tree <fname> (concatenation cone file)] [--skeleton (read empty matrix, honour domains)] [-o <fname> (output file name ('-' for stdout))] [-digits <num> (output precision)] [-tab <fname> (row/column tab (label) file)] [-tabc <fname> (column tab file)] [-tabr <fname> (row tab file)] [--lazy-tab (allow tab/domain mismatch)] [--transpose (work with the transpose)] [--no-values (omit values)] [--omit-empty (omit empty columns)] [--no-loops (omit loops)] [--force-loops (force loops)] [--dump-pairs (emit pairs per line)] [--dump-table (dump table format)] [-dump-sif <tag> (dump sif format)] [-dump-sifx <tag> (dump extended sif format with weights)] [--dump-lines (emit rows per line)] [--dump-rlines (omit leading identifier)] [--dump-vlines (add leading identifier values)] [--dump-lead-off (omit leading identifier)] [--dump-lower (dump lower part excluding diagonal)] [--dump-loweri (dump lower part including diagonal)] [--dump-upper (dump upper part excluding diagonal)] [--dump-upperi (dump upper part including diagonal)] [--write-tabc (dump tab file on column domain)] [--write-tabr (dump tab file on row domain)] [--dump-domc (dump column domain)] [--dump-domr (dump row domain)] [-table-nfields <num> (output first <num> fields)] [-table-nlines <num> (output first <num> lines)] [--newick (output newick format)] [-newick [NBI]+ (exclude Number|Branch-length|Indent)] [--write-matrix ((deconcatenate) write matrices)] [-split-stem <str> ((deconcatenate) matrices file name stem)] [-cat-max <num> ((deconcatenate) write first <num> matrices)] [-sep-value <str> (node/value separator)] [-sep-field <str> (field separator)] [-sep-lead <str> (lead separator)] [-sep-cat <str> (concatenation separator)] [-prefixc <str> (prefix column indices with <str>)] [-sort size-{ascending,descending} (vector sort mode)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

mcxdump reads a data file satisfying the mcl input format (refer to mcxio). It outputs a line-based format. The --dump-pairs option yields a single matrix entry per line, identified by the respective column and row identifiers (either index or label) separated by the field separator. The --dump-lines and --dump-rlines result in the joining of all row entries on a single line, separated by the field separator. For both formats, the matrix value corresponding with a particular entry is by default output as well.

mcxdump can also act on files that contain concatenated matrices. Refer to the group of options headed by -imx-cat fname.

OPTIONS

-imx <fname> (matrix file)

Input matrix.

 
-icl <fname> (cluster file)

This specifies the input matrix, and sets up a cluster-wise line-based label dump. This option is fully equivalent to the combination of --dump-rlines and --no-values.

 
--transpose (work with the transpose)

Work with the tranpsose of the input matrix.

 
--skeleton (read empty matrix, honour domains)

No entries are read, only domains.

 
-o <fname> (output file name)

Output stream. Use - for STDOUT.

 
-digits <num> (output precision)

Specify the precision to use in native interchange format.

 
-tab <fname> (row/column tab (label) file)

Substitute column indices and row indices by labels from the tab file. Since the same tab file is used for both, this implies that the matrix domains are identical.

 
-tabc <fname> (column tab file)

Substitute column indices by labels from the tab file.

 
-tabr <fname> (row tab file)

Substitute row indices by labels from the tab file.

 
--lazy-tab (allow tab/domain mismatch)

If used, the tab file domain(s) do not necessarily need to match the corresponding domain in the input matrix. Entries missing in the tab files will be replaced by a question mark.

 
--no-values (omit values)

Do not emit values.

 
--omit-empty (omit empty columns)

Do not output line data (with --dump-table or --dump-lines or related options) for those columns that are empty.

 
--no-loops (omit loops)

Do not output entries for which the row index equals the column index, if present. Applies only to matrices for which column and row domains are equal.

 
--force-loops (force loops)

For each column, force output of a row entry that matches the column index. Applies only to matrices for which column and row domains are equal.

 
--dump-pairs (emit pairs per line)
-dump-sif <tag> (dump sif format)
-dump-sifx <tag> (dump extended sif format with weights)
--dump-lines (emit rows per line)
--dump-rlines (omit leading column node)
--dump-vlines (add leading column values)
--dump-lead-off (do not dump leading identifiers)
--dump-lower (dump lower part excluding diagonal)
--dump-loweri (dump lower part including diagonal)
--dump-upper (dump upper part excluding diagonal)
--dump-upperi (dump upper part including diagonal)

--dump-pairs is the default mode of output. Each matrix entry is output as a single pair of column-identifier and row-identifier per line, optionally followed by the value of the corresponding matrix entry. All fields are separated by the field separator.

Use -dump-sif <tag> to dump SIF format. The argument <tag> will be used as the edge type (the second column in SIF format). The option -dump-sifx <tag> is similar except that an extended format is produced where the label is followed by the colon character and the edge weight.

With --dump-lines, each matrix column is output on a single line, with row identifiers separated by the field separator and values attached to the row identifier by the node/value separator. In this format, the column identifier is output as the leading field.

--dump-rlines is as --dump-lines, except that the column identifier is not output. Use --dump-lead-off to preclude the output of the leading identifiers (for line-based outputs).

--dump-vlines is as --dump-lines. The leading identifiers are followed by a value associated with the entire column. This can be used to dump the output given by clm vol. The value provided is a measure for the stability of the cluster that follows.

The options pertaining to lower and upper dumps currently only work with --dump-pairs. They act to only output the specified part of the matrix.

 
--dump-table (dump table format)
-table-nfields (field limit)
-table-nlines (line/row limit)

Output table format. In table format no indices are printed by default and all values are printed including zeroes. The options -table-nfields and -table-nlines can be used to limit the number of fields and lines to be printed. Note that fields correspond to MCL matrix rows and that lines correspond to MCL matrix columns, as MCL calls its primary indices column indices. Use --dump-lead-off to preclude the output of the leading identifiers (for line-based outputs).

 
--newick (output newick format)
-newick [NBI]+ (newick, exclude Number|Branch-length|Indent)

Output a hierarchical clustering specified by -imx-tree in Newick tree format.

 
--write-tabc (dump tab file on column domain)
--write-tabr (dump tab file on row domain)
--dump-domc (dump column domain)
--dump-domr (dump row domain)

These options work in conjunction with the -ixm fname option. Only the domains from the input matrix are read as if --skeleton was specified. --write-tabc assumes the input tab file envelopes the matrix column domain, and it outputs a new tab file restricted to that domain. --write-tabr acts analogously for the row domain. --dump-domc and --dump-domr respectively dump the column or row domain as a regular dump, outputting labels in case a tab file is specified.

These options are implemented as ensembles of other options. For example, --dump-domr -imx fname corresponds with --dump-lines --transpose --skeleton.

 
-imx-cat <fname> (concatenation matrix file)
-imx-tree <fname> (concatenation cone file)
--write-matrix ((deconcatenate) write matrices)
-split-stem <str> ((deconcatenate) matrices file name stem)
-cat-max <num> ((deconcatenate) write first <num> matrices)

-imx-cat is like -imx except that the input is assumed to contain multiple concatenated matrices. The matrices are dumped separated by the cat separator (cf. -sep-cat). Alternatively, the matrices can be written to different files using the -split-stem option. In this case it is possible to output each matrix in native format rather than as a dump by specifying --write-matrix. This makes mcxdump effectively act as a deconcatenator. In all cases (respectively dumping and writing matrices to either the same stream or multiple files) the number of matrices to be dumped can be limited with -cat-max.

-imx-tree is like -imx-cat except that the input is assumed to be in cone format (the format output by mclcm). This format encodes a tree as a concatenation of matrices with nested domains. mcxdump will project all levels of this tree so that all row domains are the same as the bottom row domain. This implies that a set of nested clusterings (on different node sets, as the set of clusters of a given level is the node set of the next level) is transformed into a set of flattened clusterings, all on the same node set. If you do not want this to happen, simply use -imx-cat.

 
-sep-value <str> (node/value separator)

Set the node/value separator for line based row ensemble output.

 
-sep-field <str> (field separator)

Set the field separator for different row indices in a given column.

 
-sep-lead <str> (lead separator)

Set the lead separator. In the --dump-lines format it separates the leading column index from the following ensembl of row indices. It can be useful to make this different from the field separator. One can for example grep for columns that have more than one entry in a matrix mapping nodes to clusters. This will find nodes in overlap.

 
-sep-cat <str> (concatenation separator)

Set the separator that is used between matrix dumps when a concatenation of matrices is dumped.

 
-prefixc <str> (prefix column indices with <str>)

This can be useful when external row names cannot be numbers and when a label dictionary is not available or not appropriate.

 
-sort size-{ascending,descending} (concatenation separator)

Reorder the matrix columns prior to dumping, based on the number of nonzero entries in each column. Do not use this in conjunction with a tab file for the column domain.

AUTHOR

Stijn van Dongen.

SEE ALSO

mcxload, mcl, mclfaq, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcxsubs.ps0000644000402500021140000014642511754271046012111 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:18 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 6 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.115<6d6378737562732831292055534552>20 48 R 142.615<434f4d4d414e4453206d637873756273283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0 <6d63787375627320ad2065>100 96 Q<787472616374207375626d6174726963657320 2873756267726170687329206f662061206d617472697820286772617068292e>-.15 E /F2 10/Times-Bold@0 SF<6d637873756273>100 120 Q F0 .418<63616e2062652075 73656420746f20696e7370656374206c6f63616c20636c75737465722073747275637475 726520696e20612067726170682c20666f722065>2.918 F .417 <78616d706c65206279206c6f6f6b696e6720617420746865>-.15 F 1.226<73756267 7261706820696e647563656420627920612073696e676c6520636c7573746572206f7220 6120636f75706c65206f6620636c7573746572696e67732c206f72207468652065646765 2073657420776865726520616c6c207461696c>100 132 R 1.081<6e6f646573206172 652066726f6d206120736574206f6620646f6d61696e7320616e6420616c6c2068656164 206e6f646573206172652066726f6d2074686520636f6d706c656d656e74206f66207468 6973207365742c20616e64>100 144 R<6d616e>100 156 Q 2.5<796f>-.15 G <746865722076>-2.5 E<617269616e747320616e642072658c6e656d656e74732e>-.25 E<4164646974696f6e616c6c79>100 180 Q 2.5<2c6d>-.65 G <63787375627320656e61626c6573>-2.5 E 16.5<8373>100 204 S <656c656374696e67206d617472697820656e7472696573206261736564206f6e2076> -16.5 E<616c75652e>-.25 E 16.5<836d>100 216 S<616b696e672074686520726573 756c74206368617261637465726973746963202873657420616c6c206e6f6e7a65726f20 76>-16.5 E<616c75657320746f20312e30292e>-.25 E 16.5<8370>100 228 S <72756e696e6720656d70747920636f6c756d6e7320616e6420656d70747920726f> -16.5 E<77732e>-.25 E 16.5<8374>100 240 S <72616e73706f73696e672074686520726573756c742e>-16.5 E 16.5<8372>100 252 S<656d617070696e672074686520696e6469636573206f662074686520726573756c7420 746f20636f6e736563757469>-16.5 E .3 -.15<76652069>-.25 H<6e64696365732e> .15 E 16.5<8361>100 264 S <6e64206f74686572206d697363656c6c616e656f7573206f7065726174696f6e732e> -16.5 E F1<53594e4f50534953>20 280.8 Q F2<6d637873756273202d696d78>100 292.8 Q F0<3c666e616d653e205b6f7074696f6e735d203c73706563733e2b>2.5 E F2 .089<6d637873756273202d696d78>100 316.8 R F0 .089<3c666e616d653e2028> 2.589 F/F3 10/Times-Italic@0 SF .089<696e707574206d6174726978>B F0<29>A F2<5b2d646f6d>2.589 E F0 .089<3c666e616d653e2028>2.589 F F3 .089 <646f6d61696e206d6174726978>B F0<29>A F2 2.589<5d5b>C<2d7466>-2.589 E F0 .09<737065632028>2.589 F F3 .09<6170706c792074662d73706563>B 2.326 <746f20696e707574206d6174726978>100 328.8 R F0<29>A F2 4.826<5d5b>C <2d2d626c6f636b>-4.826 E F0<28>4.826 E F3 2.326<75736520626c6f63>B 4.826 <6b6d>-.2 G<6174726978>-4.826 E F0<29>A F2 4.826<5d5b>C <2d2d626c6f636b63>-4.826 E F0<28>4.826 E F3 2.326 <75736520636f6d706c656d656e74206f6620626c6f63>B 4.825<6b6d>-.2 G <6174726978>-4.825 E F0<29>A F2<5d>A<5b2d2d736b696e2d72>100 340.8 Q <656164>-.18 E F0<28>4.085 E F3 -.37<7265>C 1.585 <616420646f6d61696e207374727563747572>.37 F 4.085<6577>-.37 G 1.586 <6974686f757420656e7472696573>-4.085 F F0<29>A F2 4.086<5d5b>C <2d2d657874656e64>-4.086 E F0<28>4.086 E F3 -.37<7265>C 1.586<61642065> .37 F 1.586<7874656e646564207375626d61747269636573>-.2 F F0<29>A F2<5d>A <5b2d746162>100 352.8 Q F0<28>2.689 E F3 -.37<7265>C .189 <616420746162208c6c65>.37 F F0<29>A F2 2.688<5d5b>C<2d2d6672>-2.688 E <6f6d2d6469736b>-.18 E F0<28>2.688 E F3 .188 <73706163652f7370656564206f7074696d697a6572>B F0<29>A F2 2.688<5d5b>C <2d6f7574>-2.688 E F0 .188<3c666e616d653e2028>2.688 F F3 .188 <7370656369616c20707572706f7365206f75742d>B 1.234 <707574208c6c65206e616d65>100 364.8 R F0<29>A F2 3.734<5d5b>C <2d65666163>-3.734 E F0 1.234<3c6e756d3e2028>3.734 F F3 -.15<7261>C 1.234<6e646f6d20656467>.15 F 3.734<6573>-.1 G<656c656374696f6e>-3.734 E F0<29>A F2 3.734<5d5b>C<2d64666163>-3.734 E F0 1.234<3c6e756d3e2028> 3.734 F F3 -.15<7261>C 1.235<6e646f6d20646f6d61696e2073656c65632d>.15 F <74696f6e>100 376.8 Q F0<29>A F2 2.59<5d5b>C<2d72666163>-2.59 E F0 .09 <3c6e756d3e2028>2.59 F F3 -.15<7261>C .09 <6e646f6d20636f6c756d6e2073656c656374696f6e>.15 F F0<29>A F2 2.59<5d5b>C <2d63666163>-2.59 E F0 .09<3c6e756d3e2028>2.59 F F3 -.15<7261>C .09 <6e646f6d2072>.15 F .09<6f772073656c656374696f6e>-.45 F F0<29>A F2 2.59 <5d5b>C<2d2d72616e642d>-2.59 E<64697363617264>100 388.8 Q F0<28>3.031 E F3 -.37<7265>C<6d6f>.37 E .531<76652072>-.1 F .531 <616e646f6d2073656c656374696f6e73>-.15 F F0<29>A F2 3.031<5d5b>C <2d2d72616e642d6d6572>-3.031 E<6765>-.1 E F0<28>3.031 E F3<6d6572>A .731 -.1<67652072>-.37 H .532<616e646f6d2073656c656374696f6e73>-.05 F F0<29>A F2 3.032<5d5b>C<2d2d72616e642d696e746572>-3.032 E<2d>-.37 E<73656374>100 400.8 Q F0<28>3.988 E F3<696e746572>A 1.488<736563742072>-.1 F 1.488 <616e646f6d2073656c656374696f6e73>-.15 F F0<29>A F2 3.988<5d5b>C <2d2d72616e642d6578636c757369>-3.988 E -.1<7665>-.1 G F0<28>4.088 E F3 1.488<6f6e6c792072>B 1.488<616e646f6d2073656c656374696f6e73>-.15 F F0 <29>A F2 3.987<5d5b>C<2d7461672d646967697473>-3.987 E F0<6b>3.987 E<28> 100 412.8 Q F3<736574207072>A<65636973696f6e>-.37 E F0<29>A F2 2.5<5d5b> C<2d2d746167>-2.5 E F0<28>2.5 E F3<7461>A 2.5<676e>-.1 G<6f646573>-2.5 E F0<29>A F2<5d>A F0<3c73706563733e2b>2.5 E .412 <496620796f75206172652061206672657175656e74>100 436.8 R F2 <6d637873756273>2.912 E F0 .412<7573657220776974682076>2.912 F .412 <657279206c6172>-.15 F .412 <6765206772617068732c20636f6e736964657220636f6e>-.18 F -.15<7665>-.4 G .412<7274696e672074686520696e707574206d6174726978>.15 F 2 <696e746f2062696e61727920666f726d6174207573696e67>100 448.8 R F2 <6d6378636f6e>4.499 E -.1<7665>-.4 G<7274>.1 E F0 1.999 <616e64207468656e207573696e6720746865206d637873756273>4.499 F F2 <2d2d6672>4.499 E<6f6d2d6469736b>-.18 E F0 1.999 <6f7074696f6e2e2054686973>4.499 F<73686f756c64206769>100 460.8 Q .3 -.15 <76652079>-.25 H<6f752061203430302d666f6c642073706565642067>.15 E <61696e2e>-.05 E F1<4445534352495054494f4e>20 477.6 Q F2<6d637873756273> 100 489.6 Q F0 1.278<6c65747320796f752065>3.778 F 1.278<7874726163742073 75626d617472696365732f73756267726170687320636f72726573706f6e64696e672077 69746820696e6465>-.15 F 3.778<7873>-.15 G 1.278 <65747320616e642028706f737369626c7929>-3.778 F .564 <73657473206f6620646f6d61696e732066726f6d2061206769>100 501.6 R -.15 <7665>-.25 G 3.064<6e64>.15 G .564<6f6d61696e206d61747269782028652e672e> -3.064 F 3.063<616d>5.563 G .563<617472697820726570726573656e74696e6720 6120636c7573746572696e67292e20436f6c756d6e73>-3.063 F 1.086 <616e6420726f>100 513.6 R 1.087<7773206f662074686520746172>-.25 F 1.087< 676574207375626d61747269782063616e2062652073706563698c656420626f74682069 6e646570656e64656e746c7920616e642073696d756c74616e656f75736c79>-.18 F 3.587<2c61>-.65 G<6e64>-3.587 E<63616e2062652073706563698c65642061732075 6e696f6e73206f662073696d706c6520696e6465>100 525.6 Q 2.5<7861>-.15 G<6e 6420646f6d61696e2072616e67657320616e6420636f6d706c656d656e7473206f662074 686573652e>-2.5 E 2.088<426563617573652061207375626d6174726978206f722073 756267726170682073706563698c636174696f6e20697320636f6d706f736564206f6620 747970652c206c6f636174696f6e2c20636f6c756d6e2c20726f>100 549.6 R -.65 <772c>-.25 G<696e6465>100 561.6 Q .319 <782c20616e64207365742073706563698c636174696f6e732c207468652077>-.15 F .319<6f72642073706563698c636174696f6e206973206162627265>-.1 F .319<7669 6174656420617320737065632e204d756c7469706c65207375626d61747269636573> -.25 F 1.564<63616e2062652073706563698c65642073696d756c74616e656f75736c 792e2041207375626d6174726978206973206372656174656420666f7220656163682073 75626d617472697820737065632e204576>100 573.6 R<6572797468696e67>-.15 E .752<656e636f756e746572656420616674657220746865>100 585.6 R F2 <6d637873756273>3.252 E F0 .752<6f7074696f6e73206172652065>3.252 F .752 <78686175737465642073686f756c64206265206120737065632e>-.15 F .752 <5468652073796e746178206f66207370656373206973>5.752 F 1.467 <64657363726962656420696e20746865>100 597.6 R F2<5355424d41>3.967 E 1.467<5452495820535045434946494341>-.95 F<54494f4e53>-.95 E F0 3.966 <73656374696f6e2e204279>3.966 F<646566>3.966 E 1.466 <61756c742c2074686520646f6d61696e73206f6620746865>-.1 F .138<7375626d61 747269782077696c6c2062652073657420746f2074686520646f6d61696e732061732064 657363726962656420696e207468652073706563698c636174696f6e2e20546869732063 616e206265206368616e676564207573696e67>100 609.6 R<746865>100 621.6 Q F3 <756e69>2.5 E F0<64697265637469>2.5 E -.15<7665>-.25 G 2.5<7366>.15 G <726f6d20746865>-2.5 E F2<8c6e>2.5 E F0<706172742e>2.5 E F1 <4f5054494f4e53>20 638.4 Q F2<2d696d78>100 650.4 Q F0 <3c666e616d653e2028>2.5 E F3<696e707574206d6174726978>A F0<29>A .909<53 75626d617472696365732077696c6c20616c6c2062652073656c65637465642066726f6d 20746865206d617472697820696e208c6c65>120 662.4 R/F4 10/Courier@0 SF <3c666e616d653e>3.409 E F0 5.909<2e54>C .909 <686973206f7074696f6e206973206f626c6967>-5.909 F<612d>-.05 E<746f7279> 120 674.4 Q 2.5<2c61>-.65 G <6e64207468726f7567686f75742074686973206d616e75616c20697473206172>-2.5 E <67756d656e742069732063616c6c656420746865>-.18 E F3<736f7572>2.5 E <6365206d6174726978>-.37 E F0<2e>A F2<2d646f6d>100 698.4 Q F0 <3c666e616d653e2028>2.5 E F3<646f6d61696e206d6174726978>A F0<29>A .556< 5375626d61747269636573206172652073706563698c656420696e207465726d73206f66 207365747320286f7220646f6d61696e7329206f6620696e64696365732e205468657365 2073657473206172652073706563698c6564>120 710.4 R <62792028746865206c6162656c206f6629207468652076>120 722.4 Q <6563746f72732066726f6d20746865206d6174726978206769>-.15 E -.15<7665> -.25 G 2.5<6e62>.15 G 2.5<7974>-2.5 G<686973206f7074696f6e732e>-2.5 E <6d6378737562732031322d313335>20 768 Q<3134204d61792032303132>141.505 E <31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.115<6d6378737562732831292055534552>20 48 R 142.615<434f4d4d414e4453206d637873756273283129>2.5 F/F1 10/Times-Bold@0 SF<2d2d626c6f636b>100 84 Q F0<28>2.5 E/F2 10/Times-Italic@0 SF <75736520626c6f63>A 2.5<6b6d>-.2 G<6174726978>-2.5 E F0<29>A .614<546869 73207265706c616365732074686520696e707574206d6174726978206279207468652062 6c6f636b20646961676f6e616c206d617472697820696e64756365642062792074686520 646f6d61696e206d6174726978>120 96 R .161<73706563698c656420627920746865> 120 108 R F1<2d646f6d>2.661 E F0 2.661<6f7074696f6e2e204974>2.661 F -.1 <776f>2.661 G .161<726b7320627920696e636c7564696e67206120626c6f636b2066 6f72206561636820646f6d61696e20696e2074686520646f6d61696e>.1 F .361 <6d61747269782c20616e642077696c6c2077>120 120 R .361 <6f726b20696620746865726520617265206f>-.1 F -.15<7665>-.15 G .36<726c61 7070696e6720646f6d61696e732e20546861742069732c2069742077696c6c206e6f7420 696e636c756465206f>.15 F -.15<7665>-.15 G<726c61702d>.15 E .962 <70696e67207061727473206d6f7265207468616e206f6e63652e>120 132 R .963<54 6865206f7574707574208c6c65206e616d652063616e2065697468657220626520737065 63698c656420696e20746865207375626d6174726978>5.962 F <73706563698c636174696f6e206c616e6775616765207573696e6720746865>120 144 Q F1<6f7574>2.5 E F0<28>A F2<666e616d65>A F0 2.5<2964>C<697265637469> -2.5 E -.15<7665>-.25 G 2.5<2c6f>.15 G 2.5<7277>-2.5 G<69746820746865> -2.5 E F1<2d6f7574>2.5 E F0<6f7074696f6e2e>2.5 E F1<2d2d626c6f636b63>100 168 Q F0<28>2.5 E F2<75736520636f6d706c656d656e74206f6620626c6f63>A 2.5 <6b6d>-.2 G<6174726978>-2.5 E F0<29>A .982<54686973207265706c6163657320 74686520696e707574206d61747269782062792074686520636f6d706c656d656e74206f 662074686520626c6f636b20646961676f6e616c206d6174726978206465736372696265 64>120 180 R<61626f>120 192 Q -.15<7665>-.15 G 2.5<2c61>.15 G<6e64207365 6c656374696f6e206f6620746865206f7574707574206e616d652069732065>-2.5 E <786163746c79207468652073616d652e>-.15 E F1<2d2d736b696e2d72>100 216 Q <656164>-.18 E F0<28>2.5 E F2 -.37<7265>C <616420646f6d61696e207374727563747572>.37 E 2.5<6577>-.37 G <6974686f757420656e7472696573>-2.5 E F0<29>A .711 <54686973207265616473206120736b>120 228 R .712<656c65746f6e206d61747269 78206279206f6e6c7920636f6e7369646572696e672069747320646f6d61696e20737472 75637475726520616e64206e6f742072656164696e6720616e>-.1 F<79>-.15 E .859< 656e74726965732c207065727461696e696e6720746f20746865206d6174726978207370 6563698c656420627920746865>120 240 R F1<2d696d78>3.358 E F0 3.358 <6f7074696f6e2e2054>3.358 F .858 <72616e73666f726d2074686520696e707574206d6174726978>-.35 F -.25<7661>120 252 S<6c756573206163636f7264696e6720746f207468652073796e7461782064657363 726962656420696e>.25 E F1<6d6378696f283529>2.5 E F0<2e>A F1<2d746162>100 276 Q F0<28>2.5 E F2 -.37<7265>C<616420746162208c6c65>.37 E F0<29>A<5265 6164206120746162208c6c652e2049747320646f6d61696e2063616e2062652075736564 20627920746865>120 288 Q/F3 10/Courier@0 SF<74>2.5 E F0<616e64>2.5 E F3 <54>2.5 E F0<696e64696361746f72732e>2.5 E F1<2d2d657874656e64>100 312 Q F0<28>2.5 E F2 -.37<7265>C<61642065>.37 E <7874656e646564207375626d61747269636573>-.2 E F0<29>A 1.304<546869732063 6175736573207468652073656c656374696f6e206f66207375626d617472696365732077 6865726520656974686572206120726f>120 324 R 3.804<7769>-.25 G<6e6465> -3.804 E 3.804<7869>-.15 G 3.804<7369>-3.804 G 3.804<6e74>-3.804 G 1.304 <68652073656c656374656420726f>-3.804 F<77>-.25 E .689 <646f6d61696e206f72206120636f6c756d6e7320696e6465>120 336 R 3.189<7869> -.15 G 3.189<7369>-3.189 G 3.189<6e74>-3.189 G .689<68652073656c65637465 6420636f6c756d6e20646f6d61696e206f7220626f74682e2045717569>-3.189 F -.25 <7661>-.25 G .688<6c656e746c79206974206f6e6c79>.25 F -.15<6578>120 348 S 2.123<636c75646573206d617472697820656e747269657320666f72207768696368206e 6569746865722074686520636f6c756d6e206e6f7220726f>.15 F 4.623<7769>-.25 G <6e6465>-4.623 E 4.623<7869>-.15 G 4.623<7369>-4.623 G 4.623<6e74>-4.623 G 2.123<68652073656c6563746564>-4.623 F 2.5<646f6d61696e732e20546865>120 360 R<726573756c74696e67206d61747269782068617320626f746820646f6d61696e73 20657175616c20746f2074686520736f75726365206d61747269782e>2.5 E F1 <2d6f7574>100 384 Q F0<3c666e616d653e2028>2.5 E F2 <7370656369616c20707572706f7365206f7574707574208c6c65206e616d65>A F0<29> A .641<546869732073706563698c657320616e206f7574707574206e616d6520746861 742063616e206265207573656420666f72207370656369616c20707572706f7365732e> 120 396 R<4e6f726d616c6c79>5.64 E 3.14<2c6f>-.65 G .64 <7574707574208c6c65>-3.14 F<6e616d6573206172652073706563698c656420696e20 746865207375626d61747269782073706563698c636174696f6e207573696e6720746865> 120 408 Q F1<6f7574>2.5 E F0<28>A F2<666e616d65>A F0 2.5<2964>C <697265637469>-2.5 E -.15<7665>-.25 G<2e>.15 E F1<2d65666163>100 432 Q F0<3c6e756d3e2028>2.5 E F2 -.15<7261>C<6e646f6d20656467>.15 E 2.5<6573> -.1 G<656c656374696f6e>-2.5 E F0<29>A F2<6e756d>120 444 Q F0 .575<73686f 756c6420626520696e6265747765656e207a65726f20616e64206f6e652e204974206465 6e6f746573207468652070726f626162696c697479207769746820776869636820656163 682065646765206973>3.074 F<73656c65637465642e>120 456 Q F1<2d64666163> 100 480 Q F0<3c6e756d3e2028>2.5 E F2 -.15<7261>C <6e646f6d20646f6d61696e2073656c656374696f6e>.15 E F0<29>A F2<6e756d>120 492 Q F0 .389<73686f756c6420626520696e6265747765656e207a65726f20616e6420 6f6e652e2049742064656e6f746573207468652070726f626162696c6974792077697468 20776869636820656e747269657320696e20746865>2.889 F 1.626 <646f6d61696e732077696c6c206d616b>120 504 R 4.126<6569>-.1 G 4.126<7469> -4.126 G 1.627<6e746f207468652072616e646f6d697a65642073656c656374696f6e 207573656420666f722073756273657175656e742070726f63657373696e672e204279> -4.126 F<646566>120 516 Q .438<61756c74207468652072616e646f6d697a656420 73656c656374696f6e20697320696e7465727365637465642077697468207768617465> -.1 F -.15<7665>-.25 G 2.937<7274>.15 G .437 <6865206f746865722073656c656374696f6e20637269746572696120286966>-2.937 F <616e>120 528 Q<7929207969656c642c20692e652e207468652062656861>-.15 E <76696f757220756e64657220746865>-.2 E F1 <2d2d72616e642d696e74657273656374>2.5 E F0<6f7074696f6e2e>2.5 E .749 <49662074686520636f6c756d6e20616e6420726f>120 552 R 3.249<7764>-.25 G .749<6f6d61696e20617265206964656e746963616c2c20746865>-3.249 F 3.249 <7961>-.15 G .75<7265207375626d697474656420746f207468652073616d65207365 6c656374696f6e2070726f2d>-3.249 F<6365737320616e642077696c6c20656e642075 70206964656e746963616c2e20496620796f7520646f6e27>120 564 Q 2.5<7477>-.18 G<616e7420746869732c20757365>-2.6 E F1<2d72666163>2.5 E F0<616e64>2.5 E F1<2d63666163>2.5 E F0<73657061726174656c792e>2.5 E <496620796f75206a7573742077>120 588 Q <616e7420612072616e646f6d697a65642073656c656374696f6e2c20646f696e67>-.1 E F3<6d637873756273202d696d7820666f6f202d6466616320302e3520276f75742866 6f6f2e726e642927>120 612 Q F0 .187 <77696c6c206e6f74207969656c64207468652065>120 636 R .186<78706563746564 20726573756c742e2052616e646f6d697a65642073656c656374696f6e73206f6e6c7920 77>-.15 F .186<6f726b206966206120646f6d61696e206861732065>-.1 F <78706c69632d>-.15 E <69746c79206265656e2073706563698c65642e20546865206d696e696d616c2077>120 648 Q<617920746f206163686965>-.1 E .3 -.15<76652074>-.25 H <6869732069732074686520666f6c6c6f>.15 E<77696e673a>-.25 E F3<6d63787375 6273202d696d7820666f6f202d6466616320302e352027646f6d286372292c206f757428 666f6f2e726e642927>120 672 Q F1<2d72666163>100 708 Q F0<3c6e756d3e2028> 2.5 E F2 -.15<7261>C<6e646f6d20636f6c756d6e2073656c656374696f6e>.15 E F0 <29>A<4173>120 720 Q F1<2d64666163>2.5 E F0 2.5<2c6c>C <696d6974656420746f2074686520636f6c756d6e20646f6d61696e2e>-2.5 E <6d6378737562732031322d313335>20 768 Q<3134204d61792032303132>141.505 E <32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.115<6d6378737562732831292055534552>20 48 R 142.615<434f4d4d414e4453206d637873756273283129>2.5 F/F1 10/Times-Bold@0 SF<2d63666163>100 84 Q F0<3c6e756d3e2028>2.5 E/F2 10/Times-Italic@0 SF -.15<7261>C<6e646f6d2072>.15 E<6f772073656c656374696f6e>-.45 E F0<29>A <4173>120 96 Q F1<2d64666163>2.5 E F0 2.5<2c6c>C <696d6974656420746f2074686520726f>-2.5 E 2.5<7764>-.25 G<6f6d61696e2e> -2.5 E F1<2d2d72616e642d6d6572>100 120 Q<6765>-.1 E F0<28>2.5 E F2 <6d6572>A .2 -.1<67652072>-.37 H<616e646f6d2073656c656374696f6e73>-.05 E F0<29>A .984<5468652072616e646f6d2073656c656374696f6e287329206f6620646f 6d61696e73206964656e74696679207061727473206f6620746865206d61747269782074 6861742077696c6c206265206d6572>120 132 R .985<6765642077697468>-.18 F<74 686520726573756c74206f6620746865206d61696e2073656c656374696f6e2070726f63 6573732028646566>120 144 Q<61756c74292e>-.1 E F1 <2d2d72616e642d64697363617264>100 168 Q F0<28>2.5 E F2 -.37<7265>C<6d6f> .37 E<76652072>-.1 E<616e646f6d2073656c656374696f6e73>-.15 E F0<29>A .517<5468652072616e646f6d2073656c656374696f6e287329206f6620646f6d61696e 73206964656e74696679207061727473206f6620746865206d6174726978207468617420 77696c6c2062652072656d6f>120 180 R -.15<7665>-.15 G 3.017<6466>.15 G <726f6d>-3.017 E<74686520726573756c74206f6620746865206d61696e2073656c65 6374696f6e2070726f636573732e>120 192 Q F1 <2d2d72616e642d696e74657273656374>100 216 Q F0<28>2.5 E F2<696e746572>A <736563742072>-.1 E<616e646f6d2073656c656374696f6e73>-.15 E F0<29>A .019 <5468652072616e646f6d2073656c656374696f6e287329206f6620646f6d61696e7320 6964656e74696679207061727473206f6620746865206d61747269782074686174207769 6c6c20626520696e7465727365637465642077697468>120 228 R<7468652072657375 6c74206f6620746865206d61696e2073656c656374696f6e2070726f636573732e205468 69732069732074686520646566>120 240 Q<61756c742e>-.1 E F1 <2d2d72616e642d6578636c757369>100 264 Q -.1<7665>-.1 G F0<28>2.6 E F2 <6f6e6c792072>A<616e646f6d2073656c656374696f6e73>-.15 E F0<29>A<54686520 72616e646f6d2073656c656374696f6e287329206f6620646f6d61696e73206964656e74 696679207061727473206f6620746865206d61747269782066726f6d2077686963682074 686520726573756c74206f6620746865>120 276 Q <6d61696e2073656c656374696f6e2070726f636573732077696c6c2062652072656d6f> 120 288 Q -.15<7665>-.15 G<642e>.15 E F1<2d7461672d646967697473>100 312 Q F0 2.5<6b28>2.5 G F2<736574207072>-2.5 E<65636973696f6e>-.37 E F0<29>A .65<536574732074686520707265636973696f6e20666f7220746167676564206f757470 75742e>120 324 R .65<53657474696e6720697420746f>5.65 F F1 <2d7461672d646967697473202d31>3.15 E F0 .65 <64697361626c657320746865206f7574707574206f662076>3.15 F<616c2d>-.25 E< 75657320616c746f67657468657220ad206f6e6c7920746865206e6f646520696e646963 657320616e642074686520636c757374657220696e646963657320617265207772697474 656e2e>120 336 Q F1<2d2d746167>100 360 Q F0<28>2.5 E F2<7461>A 2.5<676e> -.1 G<6f646573>-2.5 E F0<29>A 1.093<45616368206e6f646520696e207468652063 6f6c756d6e20287461696c206e6f646529206c697374696e67206f6620746865206d6174 7269782028677261706829207370656320697320746167676564207769746820746865> 120 372 R .485<646f6d61696e20697420697320696e2e205468697320726571756972 65732074686520757365206f6620746865>120 384 R F1<2d646f6d>2.985 E F0 2.985<6f7074696f6e2e2054686973>2.985 F .485 <6f7574707574206d6f64652c2063616c6c6564>2.985 F F2<7461>2.985 E -.1 <676765>-.1 G<64>.1 E<6d6174726978>120 396 Q F0 3.621<2c69>C 3.621<7363> -3.621 G 1.121 <757272656e746c79206e6f74207265636f676e697a656420627920616e>-3.621 F 3.621<796f>-.15 G 3.621<6674>-3.621 G<6865>-3.621 E F1<6d636c>3.621 E F0 <2f>A F1<6d6378>A F0 1.12 <696e70757420726f7574696e65732e2049742069732070726573656e7420746f>3.621 F -.1<6661>120 408 S<63696c6974617465206561736965722076697375616c20696e 7370656374696f6e206f6620636c7573746572696e6720726573756c74732e>.1 E F1 <2d2d6672>100 432 Q<6f6d2d6469736b>-.18 E F0<28>2.5 E F2 <73706163652f7370656564206f7074696d697a6572>A F0<29>A .996<557365207468 69732069662074686520696e70757420677261706820697320696e2062696e6172792066 6f726d61742c206f722069662074686520696e7075742067726170682069732076>120 444 R .997<657279206c6172>-.15 F .997<676520616e6420746865>-.18 F .917 <737562677261706828732920746f2065>120 456 R .917<7874726163742061726520 736d616c6c20696e20636f6d70617269736f6e2c206f72206966207468652061>-.15 F -.25<7661>-.2 G .916 <696c61626c65206d656d6f727920646f6573206e6f7420636f6d2d>.25 F <666f727461626c792065>120 468 Q <7863656564207468652073697a65206f66207468652067726170682e>-.15 E .536 <546865206566>120 492 R .536<66656374206f662074686973206f7074696f6e2069 732074686174207468652073756267726170682077696c6c206265207265616420646972 6563746c792066726f6d206469736b2c20776974686f757420726561642d>-.25 F .85 <696e6720696e2074686520656e7469726520677261706820696e20616476>120 504 R .85<616e63652e20546869732077696c6c20626520646f6e652072657065617465646c79 20666f7220616c6c20737562677261706873207468617420617265>-.25 F <73706563698c65642e>120 516 Q<54686973206f7074696f6e2072656475636573206d 656d6f727920636f6e73756d7074696f6e20746f207468652073697a65206f6620746865 20737562677261706828732920746f2062652065>120 540 Q<78747261637465642e> -.15 E -.15<466f>120 564 S 2.625<7267>.15 G .125<726170687320696e20696e 7465726368616e676520666f726d61742c207468652073706565642067>-2.625 F .126 <61696e206973206e6f74206472616d617469632e204966206d6f7265207468616e206f 6e65207375626772617068>-.05 F <69732073706563698c65642c2074686572652077696c6c206d6f7374206c696b>120 576 Q<656c792062652061206c6f737320696e2073706565642e>-.1 E -.4<5769>120 600 S .857 <746820696e7075742067726170687320696e2062696e61727920666f726d61742c>.4 F F1<6d637873756273>3.357 E F0 .857<77696c6c206265202a76>3.357 F .857 <6572792a206d7563682066>-.15 F<6173746572>-.1 E 3.356<2c74>-.4 G 3.356 <6f74>-3.356 G .856<68652065>-3.356 F .856<7874656e74206f66>-.15 F <3430302d666f6c642073706565642067>120 612 Q 2.5<61696e732e204974>-.05 F< 646f6573206e6f74206d61747465722077686574686572206d6f7265207468616e206f6e 652073756267726170682069732073706563698c65642e>2.5 E/F3 10.95 /Times-Bold@0 SF<5355424d41>20 628.8 Q<5452495820535045434946494341> -1.04 E<54494f4e53>-1.04 E F0 3.432<4173>100 640.8 S .932<75626d61747269 78206f722073756267726170682073706563206d617920636f6e7461696e2061206e756d 626572206f6620737065632070617274732e204561636820706172742069732073706563 698c656420696e2061>-3.432 F 2.31 <66756e6374696f6e2d7374796c65206e6f746174696f6e2e20446966>100 652.8 R 2.31<666572656e74207061727473206172652073657061726174656420627920636f6d 6d61732e2050>-.25 F 2.31<61727473206d6179206f63637572206d756c7469706c65> -.15 F .464<74696d65732c2062>100 664.8 R .464<757420666f72206d6f73742070 61727473206f6e6c7920746865206c617374206f6e652073706563698c65642077696c6c 206265206566>-.2 F<6665637469>-.25 E -.15<7665>-.25 G 2.965<2e54>.15 G .465<68652073706563207061727473206172652074686520666f6c2d>-2.965 F<6c6f> 100 676.8 Q<77696e673a>-.25 E F1<646f6d>2.892 E F0<2c>A F1<657874>2.892 E F0<2c>A F1 -.1<7661>2.892 G<6c>.1 E F0<2c>A F1<73697a65>2.892 E F0<2c> A F1<8c6e>2.892 E F0 2.891<2c61>C<6e64>-2.891 E F1<6f7574>2.891 E F0 2.891<2e54>C .391<6865736520617265206465736372696265642062656c6f>-2.891 F 2.891<7769>-.25 G 2.891<6e74>-2.891 G .391 <68652073656374696f6e7320444f4d41494e532c>-2.891 F <455854454e53494f4e2c2056>100 688.8 Q<414c5545532c2053495a452c2046494e> -1.35 E<414c495a4520616e64204f55545055542e>-.35 E F1<444f4d41494e53>100 712.8 Q F0<54686520646f6d61696e20706172742069732073706563698c6564206173> 100 724.8 Q<6d6378737562732031322d313335>20 768 Q <3134204d61792032303132>141.505 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.115<6d6378737562732831292055534552>20 48 R 142.615<434f4d4d414e4453206d637873756273283129>2.5 F/F1 10/Times-Bold@0 SF<646f6d>100 84 Q F0<28>A/F2 10/Times-Italic@0 SF<58>A F0<3c2c>2.5 E F2 <59>2.5 E F0<28>A F2<6973706563>A F0 2.5<293e>C<2b29>-2.5 E<48657265>100 108 Q F2<58>3.604 E F0 1.104<69732074686520726f>3.604 F 1.104 <772f636f6c756d6e20696e64696361746f722e20526f>-.25 F 1.104 <77732061726520696e64696361746564207769746820656974686572>-.25 F/F3 10 /Courier@0 SF<72>3.605 E F0<6f72>3.605 E F3<52>3.605 E F0 3.605<2c63>C 1.105<6f6c756d6e732061726520696e64692d>-3.605 F .095 <6361746564207769746820656974686572>100 120 R F3<63>2.595 E F0<6f72> 2.595 E F3<43>2.595 E F0<2e>A F2<58>2.595 E F0 .095 <6d617920636f6e7461696e206f6e65206f72207477>2.595 F 2.595<6f69>-.1 G .095<6e64696361746f72732c207769746820612073696e676c6520696e64696361746f 722070657220636f6c756d6e>-2.595 F 1.083<646f6d61696e20616e6420726f>100 132 R 3.583<7764>-.25 G 1.083<6f6d61696e20616c6c6f>-3.583 F 3.583 <7765642e20557070657263617365>-.25 F 1.084<696e64696361746f727320696e64 696361746520746861742074686520636f6d706c656d656e74206973206265696e67> 3.583 F<73706563698c65642072656c617469>100 144 Q .3 -.15<76652074>-.25 H 2.5<6f74>.15 G <686520636f72726573706f6e64696e6720646f6d61696e20696e2074686520746172> -2.5 E<676574206d61747269782e>-.18 E F2<59>100 168 Q F0 .421 <697320746865207479706520696e64696361746f72>2.921 F 2.921<2c69>-.4 G 2.921<7469>-2.921 G 2.921<7365>-2.921 G .421<786163746c79206f6e65206f66> -3.071 F F3<69>2.921 E F0<2c>A F3<49>2.92 E F0<2c>A F3<64>2.92 E F0<2c>A F3<44>2.92 E F0<2c>A F3<63>2.92 E F0<2c>A F3<72>2.92 E F0<2c>A F3<74> 2.92 E F0 2.92<2c6f>C<72>-2.92 E F3<54>2.92 E F0 5.42<2e54>C<6865>-5.42 E F3<692f49>2.92 E F0 .42<696e64696361746f72732073706563696679>2.92 F <74686174>100 180 Q F2<6973706563>4.296 E F0 1.796 <636f6e7461696e7320612073696d706c6520696e6465>4.296 F 4.296<7873>-.15 G <7065636966>-4.296 E 4.296<6174696f6e2e20546865>-.1 F F3<642f44>4.296 E F0 1.796<737065636966792074686174>4.296 F F2<6973706563>4.296 E F0 1.797 <636f6e7461696e7320646f6d61696e>4.297 F<696e64696365732e>100 192 Q F2 <6973706563>5.448 E F0 .448<6d75737420636f6e7461696e206120636f6d6d612d73 6570617261746564206c697374206f6620696e7465>2.948 F .447 <67657273206f7220696e7465>-.15 F .447 <6765722072616e6765732028652e672e20322c20352c20342d38292e>-.15 F F3<63> 100 204 Q F0<616e64>3.621 E F3<72>3.621 E F0 1.121<61726520726573747269 6374656420696e64696361746f7273207468617420726566657220746f2074686520646f 6d61696e7320696e20746865>3.621 F F2 1.121<646f6d61696e206d6174726978> 3.621 F F0<2e>A F3<74>6.121 E F0<616e64>3.621 E F3<54>3.622 E F0<617265> 3.622 E 1.615<7265737472696374656420696e64696361746f72732074686174207265 66657220746f2074686520646f6d61696e20656e636f64656420696e2074686520746162 208c6c652061732073706563698c656420627920746865>100 216 R F1<2d746162> 4.115 E F0<6f7074696f6e2e2054686569722075736167652069732064657363726962 656420667572746865722062656c6f>100 228 Q<772e>-.25 E -.15<466f>100 252 S 2.585<7264>.15 G .085<6f6d61696e2073706563698c636174696f6e732028>-2.585 F F3<642f44>A F0 2.585<2974>C .085<686520636f6c756d6e7320696e6465>-2.585 F -.15<7865>-.15 G 2.585<6462>.15 G 2.585<7974>-2.585 G .085 <6865736520696e7465>-2.585 F .085 <6765727320696e20746865206d61747269782073706563698c656420696e>-.15 F <746865>100 264 Q F1<2d646f6d>3.459 E F0 .959 <6f7074696f6e2077696c6c206265206665746368656420616e64206d6572>3.459 F .959<6765642e204966>-.18 F F1<2d646f6d>3.459 E F0 -.1<7761>3.459 G 3.459 <736e>.1 G .959<6f7420757365642074686520746172>-3.459 F .958 <676574206d617472697820697473656c6620286173>-.18 F .714 <73706563698c656420627920746865>100 276 R F1<2d696d78>3.214 E F0 .715 <6f7074696f6e292077696c6c20626520757365642e2046>3.214 F .715 <6f722073696d706c652073706563698c636174696f6e732028>-.15 F F3<692f49>A F0 3.215<2974>C .715<686520726573756c742069732073696d706c79>-3.215 F <746865206c697374206f6620696e7465>100 288 Q<6765727320697473656c662e2055 707065726361736520696e64696361746f727320696e6469636174652074686174207468 6520636f6d706c656d656e74206973206265696e672073706563698c65642e>-.15 E <4578616d706c65733a>100 312 Q F3 <646f6d2863722c206928302d362c31302c31312d31342929>100 336 Q F0 .973<5072 696e636970616c207375626d6174726978206f6e20696e646963657320302d362c203130 2c20616e642031312d313420ad20616c6c20636f6c756d6e20616e6420726f>120 348 R 3.473<7769>-.25 G .973<6e6469636573206172652066726f6d>-3.473 F .242 <74686973207365742e2045717569>120 360 R -.25<7661>-.25 G<6c656e746c79> .25 E 2.742<2c74>-.65 G .243<68697320656e636f64657320746865207375626772 617068206f6e206e6f64657320302d362c2031302c2031312d31342e2054686520276327 207374616e647320666f72>-2.742 F .416<636f6c756d6e2c207468652027>120 372 R .416<722720666f7220726f>-.5 F 1.716 -.65<772c2061>-.25 H .416 <6e64207468652027692720666f7220696e6465>.65 F .416<782e2049742069732061 6c736f20706f737369626c6520746f207370656369667920612027>-.15 F .415 <6427207061727420287374616e642d>-.5 F <696e6720666f7220646f6d61696e292c20746869732069732073686f>120 384 Q <776e20667572746865722062656c6f>-.25 E<772e>-.25 E F3<646f6d28632c206928 302d362c31302c31312d313429292c20646f6d28722c206928312d362c31302c31312d31 342929>100 408 Q F0<45717569>120 420 Q -.25<7661>-.25 G<6c656e74202862> .25 E<7574206c65737320636c656172292073706563206f66207468652061626f>-.2 E -.15<7665>-.15 G<2e>.15 E F3 <646f6d2863522c206928302d362c31302c31312d31342929>100 444 Q F0 .996<4d61 74726978207769746820636f6c756d6e20696e646963657320696e20302d362c2031302c 2031312d31342c20616e6420726f>120 456 R 3.496<7769>-.25 G .996 <6e646963657320696e2074686520636f6d706c656d656e74206f662074686973>-3.496 F 1.288<7365742e20436f72726573706f6e6473207769746820616c6c20656467657320 676f696e67>120 468 R F2<6f7574>3.788 E F0 1.288<66726f6d2074686520736574 20302d362c2031302c2031312d31342e20436f6d706c656d656e747320617265>3.788 F <7472696767657265642062792074686520757365206f662061206361706974616c3b20 73656520746865206e65>120 480 Q<78742065>-.15 E<78616d706c65732e>-.15 E F3<646f6d28632c206928302d362c31302c31312d313429292c20646f6d28522c206928 312d362c31302c31312d31342929>100 504 Q<646f6d28632c206928302d362c31302c 31312d313429292c20646f6d28722c204928312d362c31302c31312d31342929>100 516 Q F0 .422<426f74682074686573652065>120 528 R .422 <78616d706c6573206172652065717569>-.15 F -.25<7661>-.25 G .423 <6c656e7420746f2074686520707265>.25 F .423<76696f7573206f6e652e>-.25 F .423<496e20746865206c6173742065>5.423 F .423 <78616d706c652c20746865206361706974616c20274927>-.15 F .827<696e64696361 74657320746861742074686520636f6d706c656d656e742073686f756c64206265207461 6b>120 540 R .827<656e2e20496e20746869732065>-.1 F .827 <78616d706c652c2027>-.15 F .827 <722720636f6d62696e656420776974682027492720686173>-.5 F <7468652073616d65206566>120 552 Q <666563742061732027522720636f6d62696e65642077697468202769272e>-.25 E F3< 646f6d28632c206428332c352d3929292c20646f6d28722c206428382d3134292c206928 31302d33302929>100 576 Q F0 1.117 <436f6c756d6e20696e6469636573206172652074616b>120 588 R 1.117<656e206672 6f6d2074686520646f6d61696e7320332c20352d39202866726f6d2074686520646f6d61 696e206d61747269782073706563698c6564206279>-.1 F F1<2d646f6d>120 600 Q F0<292c20726f>A 2.5<7769>-.25 G<6e6469636573206172652074616b>-2.5 E<656e 2066726f6d20646f6d61696e7320382d313420706c75732074686520696e646963657320 31302d33302e>-.1 E F3<646f6d2863522c206428302d322929>100 624 Q F0 1.267< 436f6c756d6e20696e64696365732061726520616c6c20696e64696365732066726f6d20 646f6d61696e7320302d322c20726f>120 636 R 3.767<7769>-.25 G 1.267 <6e64696365732061726520616c6c206f7468657220696e64696365732e2054686973> -3.767 F<6769>120 648 Q -.15<7665>-.25 G 2.5<7361>.15 G <6c6c20656467657320676f696e67>-2.5 E F2<6f7574>2.5 E F0 <66726f6d20646f6d61696e7320302d322e>2.5 E .641<54686520757365206f662027 442720697320616e616c6f676f757320746f2074686174206f66202743272c202752272c 20616e64202749272e>120 672 R<546875732c>5.641 E F3 <4428302d332c382c32312d333029>3.141 E F0<73706563692d>3.141 E 1.926<8c65 7320616c6c20696e64696365732077686963682061726520696e2074686520636f6d706c 656d656e74206f66207468652073657420666f726d65642062792074616b696e67207468 6520756e696f6e206f66>120 684 R<646f6d61696e7320302d332c382c32312d33302e> 120 696 Q<546865>100 720 Q F3<63>2.592 E F0<616e64>2.592 E F3<72>2.592 E F0 .092<696e64696361746f7273206d75737420626520666f6c6c6f>2.592 F .092<77 656420627920612070616972206f66206d61746368696e6720706172656e746865736573 2e20546865>-.25 F 2.593<7973>-.15 G .093<70656369667920746f2074616b> -2.593 F<65>-.1 E<6d6378737562732031322d313335>20 768 Q <3134204d61792032303132>141.505 E<34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.115<6d6378737562732831292055534552>20 48 R 142.615<434f4d4d414e4453206d637873756273283129>2.5 F<7265737065637469> 100 84 Q -.15<7665>-.25 G <6c792074686520636f6c756d6e20646f6d61696e20616e642074686520726f>.15 E 2.5<7764>-.25 G <6f6d61696e206f662074686520646f6d61696e206d6174726978202863662e>-2.5 E /F1 10/Times-Bold@0 SF<2d646f6d>2.5 E F0<292e>A<546865>100 108 Q/F2 10 /Courier@0 SF<74>2.593 E F0<616e64>2.593 E F2<54>2.593 E F0 .093 <696e64696361746f7273206d75737420626520666f6c6c6f>2.593 F .092<77656420 627920612070616972206f66206d61746368696e6720706172656e7468657365732e2054 6865>-.25 F 2.592<7973>-.15 G .092<70656369667920746f2074616b>-2.592 F <65>-.1 E<74686520646f6d61696e20666f756e6420696e2074686520746162208c6c65 206f722069747320636f6d706c656d656e742e>100 120 Q .458 <4173207365656e2061626f>100 144 R -.15<7665>-.15 G 2.958<2c69>.15 G .458 <6e6469636573202865697468657220726570726573656e74696e67207468656d73656c 76>-2.958 F .459<6573206f7220646f6d61696e73292061726520656e746572656420 617320636f6d6d612d736570612d>-.15 F .354<7261746564206c69737473206f6620 73696e676c6520696e64696365732c2072616e676573206f6620696e6469636573202877 68696368206d6179206f>100 156 R -.15<7665>-.15 G .354<726c6170292c206f72 2073746169726361736573206f6620696e646963657320286c69737473>.15 F .086 <6f6620696e646963657320776974682061208c78>100 168 R .086 <656420696e6372656d656e7420696e6265747765656e207375636365737369>-.15 F .386 -.15<76652069>-.25 H 2.586<6e6469636573292e20546865>.15 F .087 <756e696f6e206f662074686520636f72726573706f6e64696e67>2.586 F .763 <656c656d656e74732069732074616b>100 180 R .763 <656e20616e642070617373656420616c6f6e672e204265666f726520616e>-.1 F .762 <797468696e6720656c73652c2074686520726573756c7420736574206973207265706c 616365642062792069747320636f6d2d>-.15 F .671<706c656d656e74206966202749 272069732073706563698c65642028666f722073696d706c6520696e646963657329206f 72202744272069732073706563698c65642028666f7220646f6d61696e73292e20496620 746865726520697320626f7468>100 192 R .638<616e20696e6465>100 204 R 3.138 <7861>-.15 G .638<6e64206120736574207370656320737472696e672c207468652075 6e696f6e206f662074686520726573756c7473206f6620626f74682069732074616b> -3.138 F .637<656e20616e642070617373656420616c6f6e672e20496620746865>-.1 F<6c617474657220726573756c742069732070617373656420746f206569746865722027 4327206f72202752272c206974206973207265706c616365642062792069747320636f6d 706c656d656e742e>100 216 Q 5.231<4172>100 240 S 2.732 <616e67652069732073706563698c656420652e672e206173>-5.231 F F2 <31302d3134>5.232 E F0 2.732<616e6420697420697320696e636c757369>5.232 F -.15<7665>-.25 G 5.232<2c64>.15 G 2.732 <656e6f74696e6720696e207468697320636173652074686520696e6469636573>-5.232 F F2<7b31302c31312c31322c31332c31347d>100 252 Q F0<2e>A F1 <455854454e53494f4e>100 276 Q F0<5468652065>100 288 Q <7874656e73696f6e20706172742069732073706563698c6564206173>-.15 E F1 <657874>100 312 Q F0 2.5<283c>C F1<64697363>A F0<28>A/F3 10 /Times-Italic@0 SF<6b>A F0 2.5<297c>C F1<6364697363>A F0<28>A F3<6b>A F0 2.5<297c>C F1<7264697363>A F0<28>A F3<6b>A F0 2.5<293e>C<29>-2.5 E .803< 54686973206f7074696f6e2072657175697265732074686520696e707574206d61747269 7820746f2062652068656c6420696e206d656d6f72792e205468697320696d706c696573 2069742077696c6c206e6f742077>100 336 R .802<6f726b2077697468>-.1 F <746865>100 348 Q F1<2d2d6672>2.5 E<6f6d2d6469736b>-.18 E F0 <6f7074696f6e2e>2.5 E<54686973>100 372 Q F3 .96<617373756d65732074686174 2074686520696e707574206d617472697820656e636f6465732061206772>3.46 F <617068>-.15 E F0 3.46<2c73>C 3.46<6f74>-3.46 G .96 <686520636f6c756d6e20616e6420726f>-3.46 F 3.46<7764>-.25 G .96 <6f6d61696e73206d757374206265>-3.46 F 2.505<657175616c2e204974>100 384 R .005<77696c6c2074616b>2.505 F 2.505<6574>-.1 G .005<68652063757272656e74 6c792073656c656374656420646f6d61696e2028636f6c756d6e20646f6d61696e20666f 72>-2.505 F F1<64697363>2.504 E F0<616e64>2.504 E F1<6364697363>2.504 E F0 2.504<2c72>C .504 -.25<6f772064>-2.504 H<6f6d61696e>.25 E<666f72>100 396 Q F1<7264697363>3.379 E F0 .879<292c20616e642061646420616c6c206e6f64 657320746f20697420746861742061726520726561636861626c6520696e>B F3<6b> 3.38 E F0 3.38<73746570732e20546865>3.38 F F1<64697363>3.38 E F0 -.25 <7661>3.38 G .88<7269616e74207265706c6163657320626f7468>.25 F 2.388 <636f6c756d6e20616e6420726f>100 408 R 4.887<7764>-.25 G 2.387 <6f6d61696e73206279207468652065>-4.887 F 2.387 <7874656e64656420646f6d61696e2c20746865206f746865722076>-.15 F 2.387 <617269616e7473206a757374206368616e676520612073696e676c65>-.25 F <646f6d61696e2e>100 420 Q<53657474696e67>100 444 Q F3<6b>2.5 E F0<746f> 2.5 E F2<2d31>2.5 E F0<726573756c747320696e20616464696e67>2.5 E F3 <616c6c>2.5 E F0<6e6f64657320746861742063616e20626520726561636865642066 726f6d2074686520737461727420646f6d61696e2e>2.5 E F1 -1.35<5641>100 468 S <4c554553>1.35 E F0<5468652076>100 480 Q <616c756520706172742069732073706563698c6564206173>-.25 E F1 -.1<7661>100 504 S<6c>.1 E F0<283c74662d737065633e29>A .605 <4974207472616e73666f726d73206f722072656d6f>100 528 R -.15<7665>-.15 G 3.105<7376>.15 G .605<616c756573206163636f7264696e6720746f>-3.355 F F3 <3c74662d737065633e>3.105 E F0 5.605<2e52>C .605<6566657220746f>-5.605 F F1<6d6378696f283529>3.105 E F0 .605 <666f722061206465736372697074696f6e206f66>3.105 F<746865207472616e73666f 726d6174696f6e2073706563698c636174696f6e2073796e74617820616e642074686520 61>100 540 Q -.25<7661>-.2 G <696c61626c65207472616e73666f726d6174696f6e207072696d697469>.25 E -.15 <7665>-.25 G<732e>.15 E F1<53495a45>100 564 Q F0 <5468652073697a6520706172742069732073706563698c6564206173>100 576 Q F1 <73697a65>100 600 Q F0 2.5<283c>C F1<6c74>A F0<28>A F3<78>A F0 2.5<297c> C F1<6365696c>A F0<28>A F3<78>A F0 2.5<297c>C F1<6771>A F0<28>A F3<78>A F0 2.5<297c>C F1<726d6771>A F0<28>A F3<78>A F0 2.5<293e2b29>C <5768657265>100 624 Q F3<78>3.98 E F0 1.48<69732061206e6f6e6e65>3.98 F -.05<6761>-.15 G<7469>.05 E 1.779 -.15<76652069>-.25 H<6e7465>.15 E <676572>-.15 E 3.979<2c61>-.4 G 1.479<6e64206d756c7469706c65207370656369 8c636174696f6e73206172652073657061726174656420627920636f6d6d61732e> -3.979 F<546865>6.479 E .875<737472696e67732027>100 636 R .875 <6c74272c2027>-.1 F .875 <6c71272c20276771272c20276774272c207265737065637469>-.1 F -.15<7665>-.25 G .875<6c792064656e6f7465>.15 F F3 .875<6c657373207468616e>3.375 F F0 <2c>A F3 .875<6c657373207468616e206f7220657175616c20746f>3.375 F F0<2c>A F3<6772>3.375 E .875<6561746572207468616e206f72>-.37 F<657175616c20746f> 100 648 Q F0 2.5<2c61>C<6e64>-2.5 E F3<6772>2.5 E<6561746572207468616e> -.37 E F0<2e>A 1.41<54686973207072756e6573206f722072656d6f>100 672 R -.15<7665>-.15 G 3.91<7363>.15 G 1.41<6f6c756d6e2076>-3.91 F 1.41 <6563746f7273206261736564206f6e2074686569722073697a652e204966>-.15 F F1 <6c74>3.91 E F0 1.41<697320757365642c20636f6c756d6e2076>3.91 F 1.41 <6563746f727320617265>-.15 F<72656d6f>100 684 Q -.15<7665>-.15 G 3.875 <6469>.15 G 3.875<6674>-3.875 G 1.375 <6865206e756d626572206f6620656e74726965732065>-3.875 F 1.376 <786365656473207468652073706563698c656420626f756e642e204966>-.15 F F1 <6771>3.876 E F0 1.376<697320757365642c2076>3.876 F 1.376 <6563746f727320617265206469732d>-.15 F 1.039<63617264656420696620746865 206e756d626572206f6620656e747269657320697320736d616c6c6572207468616e2074 68652073706563698c656420626f756e642e204966206120636f6c756d6e2076>100 696 R 1.039<6563746f722068617320616e>-.15 F -.15<6578>100 708 S .435 <63657373206f6620656e7472696573206f>.15 F -.15<7665>-.15 G 2.935<7274> .15 G .435<686520626f756e642073706563698c6564206279>-2.935 F F1 <6365696c>2.935 E F0 2.935<2c74>C .435 <686520736d616c6c65737420656e7472696573206172652072656d6f>-2.935 F -.15 <7665>-.15 G .435<642e2054>.15 F .435<69657320617265206e6f74>-.35 F 2.674<6172626974726172696c792062726f6b>100 720 R 2.673 <656e2c20696d706c79696e6720746861742074686520726573756c74696e672076>-.1 F 2.673<6563746f72206d6179207374696c6c206861>-.15 F 2.973 -.15<7665206d> -.2 H 2.673<6f726520656e7472696573207468616e20746865>.15 F <6d6378737562732031322d313335>20 768 Q<3134204d61792032303132>141.505 E <35>202.335 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.115<6d6378737562732831292055534552>20 48 R 142.615<434f4d4d414e4453206d637873756273283129>2.5 F <73706563698c656420626f756e642e>100 84 Q/F1 10/Times-Bold@0 SF<46494e> 100 108 Q<414c495a45>-.2 E F0 .726 <546865208c6e616c697a6520706172742069732073706563698c6564206173>100 120 R F1<8c6e>3.226 E F0 3.226<283c>C/F2 10/Times-Italic@0 SF -.1<6b65>C<79> -.2 E F0 3.226<3e2977>3.226 G<68657265>-3.226 E F2 -.1<6b65>3.226 G<79> -.2 E F0 .726<6973206120737472696e6720616e64206d756c7469706c65206b>3.226 F -.15<6579>-.1 G 3.226<7361>.15 G .726<726520736570612d>-3.226 F 2.552< 726174656420627920636f6d6d61732e2054686520636f72726573706f6e64696e672061 6374696f6e73206172652067656e6572616c6c79206170706c69656420746f2074686520 6d617472697820746861742077>100 132 R<6173>-.1 E -.15<6578>100 144 S .096 <74726163746564206163636f7264696e6720746f2074686520646f6d61696e20616e64 2076>.15 F .096<616c75652073706563698c636174696f6e732e20457863657074696f 6e732061726520696e646963617465642062656c6f>-.25 F .096<772e20437572>-.25 F<2d>-.2 E<72656e746c79>100 156 Q 3.74<2c74>-.65 G 1.24 <686572652069732061208c78>-3.74 F 1.24<6564206f7264657220696e2077686963 6820616374696f6e732061726520636f6e736964657265642c20636f72726573706f6e64 696e67207769746820746865206f7264657220696e>-.15 F<776869636820746865>100 168 Q 2.5<7961>-.15 G<7265206c69737465642062656c6f>-2.5 E<772e>-.25 E <736b>100 192 Q<656c>-.1 E .358<54686973206372656174657320616e20656d7074 79207375626d6174726978206f6e207468652073706563698c656420646f6d61696e732c 20616e6420646f6573>120 204 R F2<6e6f74>2.858 E F0 .358 <8c6c6c20697420776974682074686520636f72>2.858 F<2d>-.2 E .236<726573706f 6e64696e6720656e74726965732066726f6d2074686520736f75726365206d6174726978 2e>120 216 R .236<4f7074696f6e732066726f6d20746865>5.236 F F1<8c6e>2.736 E F0 .235<706172742074686174206166>2.736 F .235 <666563742074686520636f6c756d6e>-.25 F<616e6420726f>120 228 Q 2.5<7764> -.25 G<6f6d61696e73206f662061206d61747269782077696c6c207374696c6c206265 20696e206566>-2.5 E<666563742e>-.25 E<756e69>100 252 Q<756e6972>100 264 Q<756e6963>100 276 Q .874<416674657220746865207375626d617472697820697320 73656c65637465642066726f6d2074686520736f75726365206d61747269782c20697473 20646f6d61696e7320617265206368616e67656420746f206d6972726f72>120 288 R< 6f6e65206f7220626f7468206f662074686520646f6d61696e73206f662074686520736f 75726365206d61747269782e>120 300 Q<7470>100 324 Q<54686520726573756c7469 6e67207375626d6174726978206973207265706c6163656420627920697473207472616e 73706f73652e>120 336 Q<6363>100 360 Q<54686520726573756c74696e6720737562 6d6174726978206973206d6164652063686172616374657269737469632e>120 372 Q <736372756263>100 396 Q<736372756272>100 408 Q<736372756267>100 420 Q <7363727562>100 432 Q 1.075<446f6d61696e732061726520736872756e6b20696620 746865726520617265206e6f20636f72726573706f6e64696e6720656e74726965732069 6e20746865206d61747269782e>120 444 R 1.074 <5468697320697320646f6e6520666f72>6.074 F .079 <626f746820646f6d61696e73206966>120 456 R/F3 10/Courier@0 SF<7363727562> 2.579 E F0 .079<69732073706563698c65642c20666f722074686520636f6c756d6e20 646f6d61696e206966>2.579 F F3<736372756263>2.58 E F0 .08 <69732073706563698c65642c20616e6420666f72>2.58 F 1.127<74686520726f>120 468 R 3.627<7764>-.25 G 1.126<6f6d61696e206966>-3.627 F F3<736372756272> 3.626 E F0 1.126<69732073706563698c65642e20546875732c2077697468>3.626 F F3<736372756263>3.626 E F0 1.126<636f6c756d6e73206172652072656d6f>3.626 F -.15<7665>-.15 G 3.626<6466>.15 G<726f6d>-3.626 E 1.598 <74686520646f6d61696e20616e6420746865206d617472697820696620746865>120 480 R 4.098<7961>-.15 G 1.598<726520656d7074792e>-4.098 F -.4<5769>6.598 G<7468>.4 E F3<736372756267>4.098 E F0 1.598 <74686520756e696f6e206f662074686520726573756c74696e67>4.098 F <646f6d61696e732069732074616b>120 492 Q<656e2e>-.1 E<6d617063>100 516 Q <6d617072>100 528 Q<6d6170>100 540 Q<54686520617070726f7072696174652064 6f6d61696e7320617265206d6170706564206f6e746f20636f6e736563757469>120 552 Q .3 -.15<76652069>-.25 H <6e6469636573207374617274696e67206174207a65726f2e>.15 E F1<4f5554505554> 100 576 Q F0 .083 <546865206f757470757420706172742069732073706563698c6564206173>100 588 R F1<6f7574>2.583 E F0<28>A F2<666e616d65>2.583 E F0<3c2c>2.583 E F2 -.1 <6b65>2.583 G<79>-.2 E F0 .082<3e2a202920746861742069732c20746865>2.583 F F2<666e616d65>2.582 E F0 .082<6f7074696f6e206973206f626c6967>2.582 F .082<61746f727920696620746865>-.05 F F1<6f7574>100 600 Q F0 1.308 <706172742069732073706563698c65642e>3.808 F<43757272656e746c79>6.308 E 3.808<2c6b>-.65 G 1.609 -.15<65792063>-3.908 H 1.309 <616e20626520612073696e676c652064697265637469>.15 F -.15<7665>-.25 G 3.809<2c6e>.15 G<616d656c79>-3.809 E F1<7762>3.809 E F0 1.309 <73706563696679696e67207468617420746865>3.809 F<726573756c74696e67206d61 747269782073686f756c64206265206f757470757420696e2062696e61727920666f726d 61742e>100 612 Q/F4 10.95/Times-Bold@0 SF -.548<4155>20 628.8 S <54484f52>.548 E F0<5374696a6e2076>100 640.8 Q<616e20446f6e67656e2e>-.25 E F4<53454520414c534f>20 657.6 Q F1<6d6378283129>100 669.6 Q F0 3.186 <2c61>C<6e64>-3.186 E F1<6d636c66616d696c79283729>3.186 E F0 .686 <666f7220616e206f>3.186 F -.15<7665>-.15 G<72766965>.15 E 3.185<776f> -.25 G 3.185<6661>-3.185 G .685<6c6c2074686520646f63756d656e746174696f6e 20616e6420746865207574696c697469657320696e20746865206d636c>-3.185 F -.1 <6661>100 681.6 S<6d696c792e>.1 E<6d6378737562732031322d313335>20 768 Q <3134204d61792032303132>141.505 E<36>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clminfo.azm0000644000402500021140000001327111551556060012206 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm info} {html_title}{The clm info manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{clm info}{compute performance measures for graphs and clusterings.} \disclaim_clm{info} \sec{synopsis}{SYNOPSIS} \par{ \clm{info} [options] * } \par{ \clm{info} \synoptopt{-o}{fname}{write to file \genopt{fname}} \synoptopt{-pi}{f}{apply inflation beforehand} \shared_synoptopt{-tf} \synoptopt{-cl-tree}{fname}{expect file with nested clusterings} \synoptopt{-cl-ceil}{}{skip clusters of size exceeding } \synoptopt{-cat-max}{num}{do at most \genopt{num} tree levels} \synoptopt{--node-self-measures}{dump measure for native cluster} \synoptopt{--node-all-measures}{dump measure for incident cluster} \stdsynopt * } \sec{description}{DESCRIPTION} \par{ \clm{info} computes several numbers indicative for the efficiency with with a clustering captures the edge mass of a given graph. Use it in conjunction with \clm{dist} to determine which clusterings you accept. See the EXAMPLES section in \clm{dist} for an example of \clm{dist} and \clm{info} (and \clm{meet}) usage. Output can be generated for multiple clusterings at the same time.} \par{ The \bf{efficiency} factor is described in [1] (see the \secref{references} section). It tries to balance the dual aims of capturing a lot of edges or edge weights and keeping the cluster footprint or area fraction small. The efficiency number has several appealing mathematical properties, cf. [1]. It is related to, but not derivable from, the second and third numbers, the \it{mass fraction} and the \it{area fraction}.} \par{ The \bf{mass fraction} is defined as follows. Let \bf{e} be an edge of the graph. The clustering \it{captures} \bf{e} if the two nodes associated with \bf{e} are in the same cluster. Now the mass fraction is the joint weight of all captured edges divided by the joint weight of all edges in the input graph.} \par{ The \bf{area fraction} is roughly the sum of the squares of all cluster sizes for all clusters in the clustering, divided by the square of the number of nodes in the graph. It says \it{roughly}, because the actual formula uses the quantity \bf{N}*(\bf{N-1}) wherever it says square (of \bf{N}) above. A low/high area fraction indicates a fine-grained/coarse clustering.} \sec{}{OPTIONS} \'begin{itemize}{\mcx_itemopts} \item{\defopt{-o}{fname}{output file name}} \item{\defopt{-pi}{f}{apply inflation beforehand}} \car{ Apply inflation to the graph matrix and compute the performance measures for the result.} \shared_itemopt{-tf} \car{shared_defopt{-tf}} \items{ {\defopt{-cl-tree}{fname}{expect file with nested clusterings (cone format)}} {\defopt{-cl-ceil}{}{skip (nested) clusters of size exceeding }} } \car{ The specified file should contain a hierarchy of nested clusterings such as generated by \mclcm. The output is then in a special format, undocumented but easy to understand. Its purpose is to help cherrypick a single clustering from a tree, in conjunction with the slightly experimental and undocumented program \bf{mlmfifofum}. } \par{ The measure that is used is very slow to compute for large clusters, and generally it will be outside any interesting range (i.e. it will be small). Use \genopt{-cl-ceil} to skip clusters exceeding the specified size \- \clminfo will directly proceed to subclusters if they exist. } \item{\defopt{-cat-max}{num}{do at most num levels}} \car{ This only has effect when used with \genopt{-cl-tree}. \clm{info} will start at the most fine-grained level, working upwards. } \items{ {\defopt{--node-all-measures}{dump node-wise criteria for all incident clusters}} {\defopt{--node-self-measures}{dump node-wise criteria for native cluster}} } \car{ These options return a key-value based format, with the meaning of the keys as follows. \verbatim{\:/ nm file name (redundant unless multiple cluster files are provided) ni node index ci cluster index nn number of neighbours of this node (constant for a give node) nc cluster size (constant for a given cluster) ef efficiency for this node/cluster combination em max-efficiency for this node/cluster combination mf mass fraction: percentage of edge weights for this node in this cluster ma total mass of edge weights for this node in this cluster xn number of neighbours of the node that are not in the cluster xc number of nodes in the cluster that are not a neighbour of the node ns number of neighbours of the node that are also in this cluster ti the maximum of the edge weights for neighbours of this node that are in this cluster to the maximum of the edge weights for neighbours of this node that are NOT in this cluster al (alien) 1 if the node is not native to the cluster, 0 if the node is native} } \stddefopt \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen.} \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \sec{references}{REFERENCES} \par{ [1] Stijn van Dongen. \it{Performance criteria for graph clustering and Markov cluster experiments}. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.\| \httpref{http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z}} \end{pud::man} mcl-12-135/doc/mcxassemble.html0000644000402500021140000007051111754271044013240 00000000000000 The mcxassemble manual

14 May 2012    mcxassemble 12-135

NAME

mcxassemble — transform raw cooccurrence data to mcl matrix format.

SYNOPSIS

mcxassemble -b base (base name) [-o fname (write to file fname)] [--write-binary (write output in binary format)] [--map (apply base.map)] [-raw-tf (apply transform spec to input)] [-rv MODE (repeated vectors)] [-re MODE (repeated entries)] [-ri MODE (adding mirror image)] [-r MODE (repeated entries/vectors/images)] [-prm-tf (apply transform spec to primary matrix)] [-sym-tf (apply transform spec to symmetrified matrix)] [-q (quiet mode)]

The options above embody the default setup when using mcxassemble. There are many more options which mostly provide subtly different ways of doing input/output, set warning levels, or regulate how repeated entries and vectors should be treated. The full list of options is shown below. Read DESCRIPTION for learning about mcxassemble input/output and the functionality it provides.

NOTE
As of release 05-314 mcl is able to cluster label-type input on the fly. In most cases, this will be sufficient. Alternatively, mcxload can be used to map label-type input onto mcl matrices. Consequently, there are likely fewer scenarios nowadays where mcxassemble is the best solution. Consider first whether mcl in label mode or mcxload can do the job as well.

mcxassemble [-b base (base name)] [-hdr fname (read header file)] [-raw fname (read raw file)] [--map (apply base.map)] [--cmap (apply base.cmap)] [--rmap (apply base.rmap)] [-map fname (apply fname)] [-rmap fname (apply fname)] [-cmap fname (apply fname)] [-tag tag (apply base.tag)] [-rtag tag (apply base.tag)] [-ctag tag (apply base.tag)] [-skw fname (write skew matrix)] [-prm fname (write primary result matrix)] [--skw (write base.skw)] [--prm (write base.prm)] [-xo suf (write base.suf)] [-o fname (write to file fname)] [-n (do not write default symmetrized result)] [-i (read from single data file)] [-digits int (digits width)] [-s (check for symmetry)] [-raw-tf (apply transform spec to input)] [-rv <mode> (action for repeated vectors)] [-re <mode> (action for repeated entries)] [-ri <mode> (adding mirror image)] [-r <mode> (same for entries and vectors)] [-prm-tf (apply transform spec to primary matrix)] [-sym-tf (apply transform spec to symmetrified matrix)] [--quiet-re (quiet for repeated entries)] [--quiet-rv (quiet for repeated vectors)] [-q (the two above combined)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

mcxassemble enables easy matrix creation from an intermediate raw matrix format that can easily be constructed from a one-pass-parse of cooccurrence data. The basic setup is as follows.

Parse cooccurrence data from some external format.

Transform cooccurrence data to raw mcl data as you parse.

When done, write out required header and domain information to a separate file. The domain information can be built during the parsing stage.

Use mcxassemble to construct a valid matrix from the raw data and the header information.

Nodes can optionally be relabeled by writing a separate map file to be read by mcxassemble, which takes the form of a very thin matrix file.

The easiest thing to do is to group all input/output files under the same base name, say base. A standard way of proceeding, which will lead to a concise mcxassemble command line, is by creating the input files base.raw and base.hdr, and optionally the file base.map. The default behaviour of mcxassemble is then to create base.sym as the resulting matrix file, containing the symmetrized matrix constructed from the raw input.

Example
Suppose blastresult is a file containing blast results. The following two commands construct an mcl matrix file from the file.

mcxdeblast --score=e --sort=a blastresult mcxassemble -b blastresult -r max --map

mcxdeblast will generate the files blastresult.hdr, blastresult.raw, and blastresult.map. The --sort=a option will create a map file corresponding with alphabetic ordering. These files are processed by mcxassemble and it will generate the file blastresult.sym. The -r option tells mcxassemble that repeated entries should be maxed; each time the largest entry seen thus far will be taken.

Header file
This file contains a header as usually found in generic mcl matrix files, i.e. the required header part, and optionally the domain part(s) if not all domains are canonical. Refer to mcxio for more information. The domain information in the header file will be used to pre-construct a skeleton matrix and to validate the entries in the raw data file as they fill the skeleton matrix.

Raw input format
The file from which raw input is read should have the raw format as described in mcxio. Simply put; no header specification, no domain specification, and no matrix introduction syntax is used. The file just contains a listing of vectors. An example fragment is the following:

2 4:0.34 1:2.8838 4:2.328 1:4.238 1:12 $ 1 2:7.8 $ 2 1:0.01 4:20.3 3:2 $

The listing of vectors need not be sorted, and neither does a vector itself need to be sorted - the mcl generic matrix format is actually not different in this respect. Furthermore, duplicate entries and duplicate vectors are allowed. This is in fact again allowed in the generic format, except that where applications expect generic format warnings will be issued and duplicate entries will be disregarded. mcxassemble allows customizable behaviour dictating how to merge repeated entries. Refer to the -re-rv-r options below.

The vectors read by mcxassemble do have to match the domains specified in the header file. The leading index that specifies the column index has to be present in the column domain; all subsequent indices that specify column entries have to be present in the row domain.

If one concatenates the contents of the header file and the data file, the result is almost but not quite a file containing a matrix in syntactically correct mcl generic matrix format. The parts missing are the (mclmatrix introduction token, (followed by) the begin token, and the closing ) token.

Map file
This file must contain a map matrix, which is a matrix with the following properties:

The column domain and row domain are of the same cardinality.

Each column has exactly one entry.

Each row domain index occurs in exactly one column.

Such a matrix is used to relabel the nodes as found in the raw data. A situation that might occur when parsing some external format (and producing raw matrix format), is that ID's (indices) are handed out on the fly during the parse. Afterwards, one may want to relabel the IDs such that they correspond with an alphabetic listing of the quantity that is represented by the node domain, or by some other sort criterion. A map file is then typically generated by the parser, as that is the utility in charge of the IDs. A small example of a map file for a graph containing five nodes is the following:

(mclheader mcltype matrix dimensions 5x5 ) (mclmatrix begin 0 4 $ # mno 1 2 $ # ghi 2 1 $ # def 3 3 $ # jkl 4 0 $ # abc )

This corresponds to a relabeling such that the associated strings will be ordered alphabetically. Note that comments can be used to link string identifiers with indices. This map file says e.g. that the string identifier "mno" is represented by index 0 in the raw data, and by index 4 in the matrix output by mcxassemble.

OPTIONS

-b base (base name)

Base name of files to be processed and output. Refer to DESCRIPTION above and the entries of other options below.

 
-hdr fname (read header file)
-raw fname (read raw file)

Explicitly specify the header file and the data file (rather than constructing the file names from a base name and suffixes).

 
--map (apply base.map)
--cmap (apply base.cmap)
--rmap (apply base.rmap)
-map fname (apply fname)
-rmap fname (apply fname)
-cmap fname (apply fname)
-tag tag (apply base.tag)
-rtag tag (apply base.tag)
-ctag tag (apply base.tag)

Map options. --cmap combines with the -b option, and says that the map file in base.cmap (where base was specified with -b base) should be applied to the column domain only. --rmap works the same for the row domain, and --map can be used to apply the same map to both the column and row domains.

-cmap and its siblings are used to explicitly specify the map file to be used, rather than combining a base name with a fixed suffix. -tag and its siblings work in conjuction with the -b option, and require that a tag be specified from which to construct the map file (by appending it to the base name).

 
-skw fname (write skew matrix)
-prm fname (write primary result matrix)
--prm (write base.prm)
--skw (write base.skw)
-n (do not write default symmetrized result)

Options for writing matrices other than the default symmetrized result. The primary result matrix is the matrix constructed from reading in the raw data and adding entries to the skeleton matrix as specified with the -r, -re, and -rv options. This matrix can be written using one of the prm options. Calling the primary matrix A, the skew matrix (as defined here) is the matrix A - A^T, i.e. A minus its transposed matrix. It can be written using one of the skw options.

If for some reason the symmetrized result is not needed, its output can be prevented using the -n option.

 
-xo suf (write base.suf)
-o fname (write to file fname)
-i (read from single data file)
-digits int (digits width)
--write-binary (write output in binary format)

The -xo option is used in conjunction with the -b option in order to change the suffix for the file in which the symmetrized result matrix is written. Use e.g. -xo mci to change the suffix from the default value sym to mci. Use -o to explicitly specify the filename in full. Use -digits to set the number of digits written for matrix entries (c.q. edge weights).

The -i option is special. It causes mcxassemble to read both the header information and the raw data from the same file, where the syntax should be fully conforming to generic mcl matrix format.

 
-s (check for symmetry)

This will check whether the primary result matrix was symmetric. It reports the number of failing (or skew) edges.

 
-raw-tf <tf-spec> (apply transform spec to input)
-prm-tf (apply transform spec to primary matrix)
-sym-tf (apply transform spec to symmetrified matrix)

The first applies its transformation spec to the values as found in the raw data. The second applies its transformation spec to the primary matrix. The third applies its transformation step to the symmetrified matrix. Refer to mcxio for documentation on the transformation spec syntax.

 
-rv add|max|min|mul|left|right (action for repeated vectors)
-re add|max|min|mul|left|right (action for repeated entries)
-ri add|max|min|mul (adding mirror image)
-r add|max|min|mul|left|right (same for entries and vectors)

Merge options, dictating the behaviour when repeated entries are found. A distinction is made between entries that are repeated within the same column listing, and entries that are repeated between different column listings. An entry can be a repeat of both kinds simultaneously as well. Additionally, the final result is by default symmetrized by combining with the mirror image (in matrix terminology, the transposed matrix). This symmetrization can be done in the same variety of ways.

The re option, for repeats within the same column, is carried out first. It is applied after the column has its entries sorted, so the left and right options are not garantueed to follow the order found in the raw input. The rv option, for repeats over different columns, is carried out second.

The option -ri min can assist in implementing a (top-list) best reciprocal hit criterion.

Examples
The column

0 1:30 1:50 2:60 4:70 3:20 1:40 2:40 $

is encountered in the input, listing entries for the vector labeled with index 0. If -re add or -r add is used, it will transform to the vector

0 1:120 2:60 3:20 4:70 $

If -re max or -r add is used instead, it will transform to the vector

0 1:40 2:60 3:20 4:70 $

Suppose add mode is used, and that later on another vector specification for the index 0 is found, leading to this transformed vector:

0 1:60 2:80 4:40 $

If -rv max was specified, this new vector is combined with the previous vector by taking the entry wise maximum:

0 1:120 2:60 3:20 4:70 $ # first (transformed) vector 0 1:60 2:80 4:40 $ # second vector 0 1:120 2:80 3:20 4:70 $ # entry wise maximum

Finally, suppose that somewhere one or more vector listings were specified for index 3, which eventually led to an entry 0:50. The final symmetrization step will take the [0,3] entry of weight 20 and combine it with the [3,0] entry of weight 50. The resulting matrix will then have the [0,3] and the [3,0] entry both equal to either the maximum, the sum, or the product of the two quantities 50 and 20.

 
--quiet-re (quiet for repeated entries)
--quiet-rv (quiet for repeated vectors)
-q (the two above combined)

Warning options. Turn these on if you expect the raw data to be free of repeats.

AUTHOR

Stijn van Dongen.

SEE ALSO

mcxio, mcl, mcxload and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcxconvert.html0000644000402500021140000002077611754271044013135 00000000000000 The mcx convert manual

14 May 2012    mcx convert 12-135

NAME

mcx convert — convert between mcx storage types

SYNOPSIS

mcx convert <matrix-file-in> <matrix-file-out>
mcx convert [--write-binary] --cone-to-stack <cat-file-in> <cat-file-out>
mcx convert [--write-binary] --stack-to-cone <cat-file-in> <cat-file-out>

mcxconvert is not in actual fact a program. This manual page documents the behaviour and options of the mcx program when invoked in mode convert. The options -h, --apropos, --version, -set, --nop, -progress <num> are accessible in all mcx modes. They are described in the mcx manual page.

mcx convert [--cone-to-stack (transform cone file to stack file)] [--stack-to-cone (transform stack file to cone file)] [--write-binary (output native binary format)] [--cat (read and write cat format)] [-cat-max <num> (limit the stack conversion to <num> matrices)]

In the two-argument invocation without additional arguments, mcx convert converts from the format found in the first file to the other format, i.e. from native interchange to native binary format or the other way around. When querying with the -q option, mcx{convert} will output a one-line synopsis describing the matrix in the argument. The --cone-to-stack and --stack-to-cone options convert between the two types of concatenated output provided by mclcm.

DESCRIPTION

The mcl libraries make extensive use of matrices. Matrices are used to encode graphs, matrices and clusterings. They can be stored either in interchange or in binary format. The latter is somewhat more efficient in storage and much faster in both reading and writing, but the default is interchange format.

The mcl input routines recognize the type of storage they are dealing with. If you want to convert a matrix to the other storage type, simply specify the file name of the matrix you want to convert. mcx convert will recognize its type, and write the other type to the file specified as the second argument.

OPTIONS

--cone-to-stack (transform cone file to stack file)

This option requires two trailing options, the names of respectively the source cone file and the target stack file.

 
--stack-to-cone (transform stack file to cone file)

This option requires two trailing options, the names of respectively the source stack file and the target cone file.

 
--cat (read and write cat format)
 
-cat-max <num> (limit the stack conversion to <num> matrices)
 
--write-binary (output native binary format)

This option is only useful with either of the options --cone-to-stack, --stack-to-cone, or --cat.

AUTHOR

Stijn van Dongen.

SEE ALSO

mcxio, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcxdump.ps0000644000402500021140000011061011754271044012063 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:16 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 4 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 135.115<6d637864756d702831292055534552>20 48 R 137.615<434f4d4d414e4453206d637864756d70283129>2.5 F/F1 10.95 /Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d637864756d7020ad20 64756d70206d617472696365732c206f7074696f6e616c6c79206d617020696e64696365 7320746f206c6162656c73>100 96 Q F1<53594e4f50534953>20 112.8 Q/F2 10 /Times-Bold@0 SF 1.71<6d637864756d70205b2d696d78>100 124.8 R F0 1.709 <3c666e616d653e2028>4.21 F/F3 10/Times-Italic@0 SF 1.709 <6d6174726978208c6c65>B F0<29>A F2 4.209<5d5b>C<2d69636c>-4.209 E F0 1.709<3c666e616d653e2028>4.209 F F3 1.709 <636c7573746572208c6c6520746f2062652064756d706564206c696e652d77697365>B F0<29>A F2<5d>A<5b2d696d782d636174>100 136.8 Q F0 .976 <3c666e616d653e2028>3.476 F F3 .976 <636f6e636174656e6174696f6e206d6174726978208c6c65>B F0<29>A F2 3.477 <5d5b>C<2d696d782d7472>-3.477 E<6565>-.18 E F0 .977<3c666e616d653e2028> 3.477 F F3 .977<636f6e636174656e6174696f6e20636f6e65208c6c65>B F0<29>A F2<5d>A<5b2d2d736b>100 148.8 Q<656c65746f6e>-.1 E F0<28>3.785 E F3 -.37 <7265>C 1.285 <616420656d707479206d61747269782c20686f6e6f757220646f6d61696e73>.37 F F0 <29>A F2 3.785<5d5b>C<2d6f>-3.785 E F0 1.285<3c666e616d653e2028>3.785 F F3 1.284<6f7574707574208c6c65206e616d652028272d2720666f72207374642d>B <6f757429>100 160.8 Q F0<29>A F2 3.907<5d5b>C<2d646967697473>-3.907 E F0 1.407<3c6e756d3e2028>3.907 F F3 1.407<6f7574707574207072>B <65636973696f6e>-.37 E F0<29>A F2 3.907<5d5b>C<2d746162>-3.907 E F0 1.407<3c666e616d653e2028>3.907 F F3 -.45<726f>C 1.408 <772f636f6c756d6e2074616220286c6162656c29208c6c65>.45 F F0<29>A F2 3.908 <5d5b>C<2d74616263>-3.908 E F0 1.098<3c666e616d653e2028>100 172.8 R F3 1.098<636f6c756d6e20746162208c6c65>B F0<29>A F2 3.598<5d5b>C<2d74616272> -3.598 E F0 1.098<3c666e616d653e2028>3.598 F F3 -.45<726f>C 3.597<7774> .45 G 1.097<6162208c6c65>-3.597 F F0<29>A F2 3.597<5d5b>C <2d2d6c617a792d746162>-3.597 E F0<28>3.597 E F3 1.097 <616c6c6f77207461622f646f6d61696e206d69732d>B<6d617463>100 184.8 Q<68> -.15 E F0<29>A F2 4.953<5d5b>C<2d2d7472616e73706f7365>-4.953 E F0<28> 4.953 E F3 2.453<776f726b207769746820746865207472>B<616e73706f7365>-.15 E F0<29>A F2 4.953<5d5b>C<2d2d6e6f2d76>-4.953 E<616c756573>-.1 E F0<28> 4.954 E F3 2.454<6f6d69742076616c756573>B F0<29>A F2 4.954<5d5b>C <2d2d6f6d69742d656d707479>-4.954 E F0<28>100 196.8 Q F3 1.818 <6f6d697420656d70747920636f6c756d6e73>B F0<29>A F2 4.318<5d5b>C <2d2d6e6f2d6c6f6f7073>-4.318 E F0<28>4.318 E F3 1.818 <6f6d6974206c6f6f7073>B F0<29>A F2 4.318<5d5b>C<2d2d66>-4.318 E<6f72> -.25 E<63652d6c6f6f7073>-.18 E F0<28>4.318 E F3<666f72>A 1.817 <6365206c6f6f7073>-.37 F F0<29>A F2 4.317<5d5b>C <2d2d64756d702d7061697273>-4.317 E F0<28>100 208.8 Q F3 .57 <656d69742070616972>B 3.07<7370>-.1 G .571<6572206c696e65>-3.07 F F0<29> A F2 3.071<5d5b>C<2d2d64756d702d7461626c65>-3.071 E F0<28>3.071 E F3 .571<64756d70207461626c6520666f726d6174>B F0<29>A F2 3.071<5d5b>C <2d64756d702d736966>-3.071 E F0 .571<3c7461673e2028>3.071 F F3 .571 <64756d702073696620666f726d6174>B F0<29>A F2<5d>A <5b2d64756d702d73696678>100 220.8 Q F0 .06<3c7461673e2028>2.56 F F3 .06 <64756d702065>B .06 <7874656e6465642073696620666f726d617420776974682077656967687473>-.2 F F0 <29>A F2 2.56<5d5b>C<2d2d64756d702d6c696e6573>-2.56 E F0<28>2.56 E F3 .06<656d69742072>B .06<6f777320706572206c696e65>-.45 F F0<29>A F2<5d>A <5b2d2d64756d702d726c696e6573>100 232.8 Q F0<28>6.558 E F3 4.058 <6f6d6974206c656164696e67206964656e74698c6572>B F0<29>A F2 6.559<5d5b>C <2d2d64756d702d766c696e6573>-6.559 E F0<28>6.559 E F3 4.059 <616464206c656164696e67206964656e74698c65722076616c756573>B F0<29>A F2 <5d>A<5b2d2d64756d702d6c6561642d6f6666>100 244.8 Q F0<28>3.469 E F3 .969 <6f6d6974206c656164696e67206964656e74698c6572>B F0<29>A F2 3.469<5d5b>C <2d2d64756d702d6c6f>-3.469 E<776572>-.1 E F0<28>3.469 E F3 .969 <64756d70206c6f77657220706172742065>B .968<78636c7564696e6720646961>-.2 F<676f2d>-.1 E<6e616c>100 256.8 Q F0<29>A F2 2.933<5d5b>C <2d2d64756d702d6c6f>-2.933 E<77657269>-.1 E F0<28>2.933 E F3 .433 <64756d70206c6f776572207061727420696e636c7564696e6720646961>B <676f6e616c>-.1 E F0<29>A F2 2.933<5d5b>C<2d2d64756d702d7570706572> -2.933 E F0<28>2.933 E F3 .433<64756d702075707065722070617274>B -.2 <6578>100 268.8 S 2.653<636c7564696e6720646961>.2 F<676f6e616c>-.1 E F0 <29>A F2 5.153<5d5b>C<2d2d64756d702d757070657269>-5.153 E F0<28>5.153 E F3 2.652<64756d70207570706572207061727420696e636c7564696e6720646961>B <676f6e616c>-.1 E F0<29>A F2 5.152<5d5b>C<2d2d77726974652d74616263> -5.152 E F0<28>100 280.8 Q F3 .077 <64756d7020746162208c6c65206f6e20636f6c756d6e20646f6d61696e>B F0<29>A F2 2.578<5d5b>C<2d2d77726974652d74616272>-2.578 E F0<28>2.578 E F3 .078 <64756d7020746162208c6c65206f6e2072>B .078<6f7720646f6d61696e>-.45 F F0 <29>A F2 2.578<5d5b>C<2d2d64756d702d646f6d63>-2.578 E F0<28>100 292.8 Q F3 .007<64756d7020636f6c756d6e20646f6d61696e>B F0<29>A F2 2.507<5d5b>C <2d2d64756d702d646f6d72>-2.507 E F0<28>2.507 E F3 .007<64756d702072>B .007<6f7720646f6d61696e>-.45 F F0<29>A F2 2.507<5d5b>C <2d7461626c652d6e8c656c6473>-2.507 E F0 .007<3c6e756d3e2028>2.507 F F3 .007<6f7574707574208c72>B<7374>-.1 E .465<3c6e756d3e208c656c6473>100 304.8 R F0<29>A F2 2.965<5d5b>C<2d7461626c652d6e6c696e6573>-2.965 E F0 .465<3c6e756d3e2028>2.965 F F3 .465<6f7574707574208c72>B .465 <7374203c6e756d3e206c696e6573>-.1 F F0<29>A F2 2.966<5d5b>C <2d2d6e657769636b>-2.966 E F0<28>2.966 E F3 .466<6f7574707574206e65>B <776963>-.15 E 2.966<6b66>-.2 G<6f72>-2.966 E<2d>-.2 E<6d6174>100 316.8 Q F0<29>A F2 4.025<5d5b>C<2d6e657769636b>-4.025 E F0 1.525 <5b4e42495d2b2028>4.025 F F3 -.2<6578>C 1.525 <636c756465204e756d6265727c4272>.2 F<616e63>-.15 E <682d6c656e6774687c496e64656e74>-.15 E F0<29>A F2 4.025<5d5b>C <2d2d77726974652d6d6174726978>-4.025 E F0<28>4.025 E F3 <286465636f6e636174652d>A .904<6e61746529207772697465206d61747269636573> 100 328.8 R F0<29>A F2 3.404<5d5b>C<2d73706c69742d7374656d>-3.404 E F0 .904<3c7374723e2028>3.404 F F3 .904<286465636f6e636174656e61746529206d61 747269636573208c6c65206e616d65207374656d>B F0<29>A F2 3.404<5d5b>C <2d6361742d6d6178>-3.404 E F0 .045<3c6e756d3e2028>100 340.8 R F3 .045 <286465636f6e636174656e61746529207772697465208c72>B .045 <7374203c6e756d3e206d61747269636573>-.1 F F0<29>A F2 2.544<5d5b>C <2d7365702d76>-2.544 E<616c7565>-.1 E F0 .044<3c7374723e2028>2.544 F F3 .044<6e6f64652f76616c7565207365706172>B<61746f72>-.15 E F0<29>A F2<5d>A <5b2d7365702d8c656c64>100 352.8 Q F0 .897<3c7374723e2028>3.397 F F3 .897 <8c656c64207365706172>B<61746f72>-.15 E F0<29>A F2 3.397<5d5b>C <2d7365702d6c656164>-3.397 E F0 .897<3c7374723e2028>3.397 F F3 .897 <6c656164207365706172>B<61746f72>-.15 E F0<29>A F2 3.397<5d5b>C <2d7365702d636174>-3.397 E F0 .897<3c7374723e2028>3.397 F F3 <636f6e636174652d>A 2.585<6e6174696f6e207365706172>100 364.8 R<61746f72> -.15 E F0<29>A F2 5.085<5d5b>C<2d7072>-5.085 E<658c7863>-.18 E F0 2.585 <3c7374723e2028>5.085 F F3<7072>A 2.585 <658c7820636f6c756d6e20696e64696365732077697468203c7374723e>-.37 F F0 <29>A F2 5.085<5d5b>C<2d736f7274>-5.085 E F0<73697a652d7b617363656e642d> 5.085 E .6<696e672c64657363656e64696e677d2028>100 376.8 R F3 .601 <766563746f7220736f7274206d6f6465>B F0<29>A F2 3.101<5d5b>C<2d68>-3.101 E F0<28>3.101 E F3 .601<7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2 3.101<5d5b>C<2d2d617072>-3.101 E<6f706f73>-.18 E F0<28> 3.101 E F3 .601<7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29> A F2<5d>A<5b2d2d76>100 388.8 Q<657273696f6e>-.1 E F0<28>2.5 E F3 <7072696e7420766572>A<73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F2<5d>A F1<4445534352495054494f4e>20 405.6 Q F2<6d637864756d70>100 417.6 Q F0 .348<726561647320612064617461208c6c652073617469736679696e6720746865206d 636c20696e70757420666f726d61742028726566657220746f>2.848 F F2 <6d6378696f283529>2.847 E F0 .347 <292e204974206f7574707574732061206c696e652d>B 1.01 <626173656420666f726d61742e20546865>100 429.6 R F2 <2d2d64756d702d7061697273>3.51 E F0 1.01<6f7074696f6e207969656c64732061 2073696e676c65206d617472697820656e74727920706572206c696e652c206964656e74 698c656420627920746865>3.51 F<7265737065637469>100 441.6 Q 1.796 -.15 <76652063>-.25 H 1.496<6f6c756d6e20616e6420726f>.15 F 3.996<7769>-.25 G 1.496<64656e74698c657273202865697468657220696e6465>-3.996 F 3.995<786f> -.15 G 3.995<726c>-3.995 G 1.495<6162656c292073657061726174656420627920 746865208c656c6420736570617261746f722e>-3.995 F<546865>100 453.6 Q F2 <2d2d64756d702d6c696e6573>2.583 E F0<616e64>2.583 E F2 <2d2d64756d702d726c696e6573>2.583 E F0 .083 <726573756c7420696e20746865206a6f696e696e67206f6620616c6c20726f>2.583 F 2.583<7765>-.25 G .083 <6e7472696573206f6e20612073696e676c65206c696e652c207365702d>-2.583 F .526<61726174656420627920746865208c656c6420736570617261746f722e2046>100 465.6 R .526<6f7220626f746820666f726d6174732c20746865206d61747269782076> -.15 F .525<616c756520636f72726573706f6e64696e67207769746820612070617274 6963756c6172>-.25 F<656e74727920697320627920646566>100 477.6 Q <61756c74206f75747075742061732077656c6c2e>-.1 E F2<6d637864756d70>100 501.6 Q F0 .204<63616e20616c736f20616374206f6e208c6c6573207468617420636f 6e7461696e20636f6e636174656e61746564206d617472696365732e2052656665722074 6f207468652067726f7570206f66206f7074696f6e73>2.704 F<686561646564206279> 100 513.6 Q F2<2d696d782d636174>2.5 E F3<666e616d65>2.5 E F0<2e>A F1 <4f5054494f4e53>20 530.4 Q F2<2d696d78>100 542.4 Q F0 <3c666e616d653e2028>2.5 E F3<6d6174726978208c6c65>A F0<29>A <496e707574206d61747269782e>120 554.4 Q F2<2d69636c>100 578.4 Q F0 <3c666e616d653e2028>2.5 E F3<636c7573746572208c6c65>A F0<29>A 1.83<5468 69732073706563698c65732074686520696e707574206d61747269782c20616e64207365 7473207570206120636c7573746572>120 590.4 R 1.83 <2d77697365206c696e652d6261736564206c6162656c2064756d702e>-.2 F <54686973>6.83 E<6f7074696f6e2069732066756c6c792065717569>120 602.4 Q -.25<7661>-.25 G<6c656e7420746f2074686520636f6d62696e6174696f6e206f66> .25 E F2<2d2d64756d702d726c696e6573>2.5 E F0<616e64>2.5 E F2 <2d2d6e6f2d76>2.5 E<616c756573>-.1 E F0<2e>A F2<2d2d7472616e73706f7365> 100 626.4 Q F0<28>2.5 E F3<776f726b207769746820746865207472>A <616e73706f7365>-.15 E F0<29>A -.8<576f>120 638.4 S<726b2077697468207468 65207472616e70736f7365206f662074686520696e707574206d61747269782e>.8 E F2 <2d2d736b>100 662.4 Q<656c65746f6e>-.1 E F0<28>2.5 E F3 -.37<7265>C <616420656d707479206d61747269782c20686f6e6f757220646f6d61696e73>.37 E F0 <29>A <4e6f20656e74726965732061726520726561642c206f6e6c7920646f6d61696e732e> 120 674.4 Q F2<2d6f>100 698.4 Q F0<3c666e616d653e2028>2.5 E F3 <6f7574707574208c6c65206e616d65>A F0<29>A <4f75747075742073747265616d2e20557365>120 710.4 Q/F4 10/Courier@0 SF<2d> 2.5 E F0<666f72205354444f55542e>2.5 E<6d637864756d702031322d313335>20 768 Q<3134204d61792032303132>136.505 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 135.115<6d637864756d702831292055534552>20 48 R 137.615<434f4d4d414e4453206d637864756d70283129>2.5 F/F1 10/Times-Bold@0 SF<2d646967697473>100 84 Q F0<3c6e756d3e2028>2.5 E/F2 10/Times-Italic@0 SF<6f7574707574207072>A<65636973696f6e>-.37 E F0<29>A<537065636966792074 686520707265636973696f6e20746f2075736520696e206e617469>120 96 Q .3 -.15 <76652069>-.25 H<6e7465726368616e676520666f726d61742e>.15 E F1<2d746162> 100 120 Q F0<3c666e616d653e2028>2.5 E F2 -.45<726f>C <772f636f6c756d6e2074616220286c6162656c29208c6c65>.45 E F0<29>A .792 <5375627374697475746520636f6c756d6e20696e646963657320616e6420726f>120 132 R 3.292<7769>-.25 G .793 <6e6469636573206279206c6162656c732066726f6d2074686520746162208c6c652e> -3.292 F .793<53696e6365207468652073616d6520746162>5.793 F<8c6c65206973 207573656420666f7220626f74682c207468697320696d706c6965732074686174207468 65206d617472697820646f6d61696e7320617265206964656e746963616c2e>120 144 Q F1<2d74616263>100 168 Q F0<3c666e616d653e2028>2.5 E F2 <636f6c756d6e20746162208c6c65>A F0<29>A<5375627374697475746520636f6c756d 6e20696e6469636573206279206c6162656c732066726f6d2074686520746162208c6c65 2e>120 180 Q F1<2d74616272>100 204 Q F0<3c666e616d653e2028>2.5 E F2 -.45 <726f>C 2.5<7774>.45 G<6162208c6c65>-2.5 E F0<29>A <5375627374697475746520726f>120 216 Q 2.5<7769>-.25 G <6e6469636573206279206c6162656c732066726f6d2074686520746162208c6c652e> -2.5 E F1<2d2d6c617a792d746162>100 240 Q F0<28>2.5 E F2 <616c6c6f77207461622f646f6d61696e206d69736d617463>A<68>-.15 E F0<29>A .714<496620757365642c2074686520746162208c6c6520646f6d61696e28732920646f 206e6f74206e65636573736172696c79206e65656420746f206d61746368207468652063 6f72726573706f6e64696e6720646f6d61696e>120 252 R<696e2074686520696e7075 74206d61747269782e20456e7472696573206d697373696e6720696e2074686520746162 208c6c65732077696c6c206265207265706c616365642062792061207175657374696f6e 206d61726b2e>120 264 Q F1<2d2d6e6f2d76>100 288 Q<616c756573>-.1 E F0<28> 2.5 E F2<6f6d69742076616c756573>A F0<29>A<446f206e6f7420656d69742076>120 300 Q<616c7565732e>-.25 E F1<2d2d6f6d69742d656d707479>100 324 Q F0<28> 2.5 E F2<6f6d697420656d70747920636f6c756d6e73>A F0<29>A .937 <446f206e6f74206f7574707574206c696e652064617461202877697468>120 336 R F1 <2d2d64756d702d7461626c65>3.438 E F0<6f72>3.438 E F1 <2d2d64756d702d6c696e6573>3.438 E F0 .938 <6f722072656c61746564206f7074696f6e732920666f722074686f7365>3.438 F <636f6c756d6e7320746861742061726520656d7074792e>120 348 Q F1 <2d2d6e6f2d6c6f6f7073>100 372 Q F0<28>2.5 E F2<6f6d6974206c6f6f7073>A F0 <29>A .277<446f206e6f74206f757470757420656e747269657320666f722077686963 682074686520726f>120 384 R 2.777<7769>-.25 G<6e6465>-2.777 E 2.777<7865> -.15 G .276<7175616c732074686520636f6c756d6e20696e6465>-2.777 F .276 <782c2069662070726573656e742e>-.15 F<4170706c696573>5.276 E<6f6e6c792074 6f206d6174726963657320666f7220776869636820636f6c756d6e20616e6420726f>120 396 Q 2.5<7764>-.25 G<6f6d61696e732061726520657175616c2e>-2.5 E F1 <2d2d66>100 420 Q<6f72>-.25 E<63652d6c6f6f7073>-.18 E F0<28>2.5 E F2 <666f72>A<6365206c6f6f7073>-.37 E F0<29>A -.15<466f>120 432 S 2.851 <7265>.15 G .351 <61636820636f6c756d6e2c20666f726365206f7574707574206f66206120726f>-2.851 F 2.851<7765>-.25 G .352 <6e7472792074686174206d6174636865732074686520636f6c756d6e20696e6465> -2.851 F 2.852<782e204170706c696573>-.15 F<6f6e6c79>2.852 E <746f206d6174726963657320666f7220776869636820636f6c756d6e20616e6420726f> 120 444 Q 2.5<7764>-.25 G<6f6d61696e732061726520657175616c2e>-2.5 E F1 <2d2d64756d702d7061697273>100 468 Q F0<28>2.5 E F2<656d69742070616972>A 2.5<7370>-.1 G<6572206c696e65>-2.5 E F0<29>A F1<2d64756d702d736966>100 480 Q F0<3c7461673e2028>2.5 E F2<64756d702073696620666f726d6174>A F0<29> A F1<2d64756d702d73696678>100 492 Q F0<3c7461673e2028>2.5 E F2 <64756d702065>A <7874656e6465642073696620666f726d617420776974682077656967687473>-.2 E F0 <29>A F1<2d2d64756d702d6c696e6573>100 504 Q F0<28>2.5 E F2<656d69742072> A<6f777320706572206c696e65>-.45 E F0<29>A F1<2d2d64756d702d726c696e6573> 100 516 Q F0<28>2.5 E F2 <6f6d6974206c656164696e6720636f6c756d6e206e6f6465>A F0<29>A F1 <2d2d64756d702d766c696e6573>100 528 Q F0<28>2.5 E F2 <616464206c656164696e6720636f6c756d6e2076616c756573>A F0<29>A F1 <2d2d64756d702d6c6561642d6f6666>100 540 Q F0<28>2.5 E F2 <646f206e6f742064756d70206c656164696e67206964656e74698c6572>A<73>-.1 E F0<29>A F1<2d2d64756d702d6c6f>100 552 Q<776572>-.1 E F0<28>2.5 E F2 <64756d70206c6f77657220706172742065>A<78636c7564696e6720646961>-.2 E <676f6e616c>-.1 E F0<29>A F1<2d2d64756d702d6c6f>100 564 Q<77657269>-.1 E F0<28>2.5 E F2 <64756d70206c6f776572207061727420696e636c7564696e6720646961>A <676f6e616c>-.1 E F0<29>A F1<2d2d64756d702d7570706572>100 576 Q F0<28> 2.5 E F2<64756d7020757070657220706172742065>A<78636c7564696e6720646961> -.2 E<676f6e616c>-.1 E F0<29>A F1<2d2d64756d702d757070657269>100 588 Q F0<28>2.5 E F2 <64756d70207570706572207061727420696e636c7564696e6720646961>A <676f6e616c>-.1 E F0<29>A F1<2d2d64756d702d7061697273>120 600 Q F0 .422 <69732074686520646566>2.922 F .421<61756c74206d6f6465206f66206f75747075 742e2045616368206d617472697820656e747279206973206f7574707574206173206120 73696e676c652070616972206f66>-.1 F .433 <636f6c756d6e2d6964656e74698c657220616e6420726f>120 612 R .433<772d6964 656e74698c657220706572206c696e652c206f7074696f6e616c6c7920666f6c6c6f> -.25 F .433<776564206279207468652076>-.25 F .434 <616c7565206f662074686520636f7272652d>-.25 F <73706f6e64696e67206d617472697820656e7472792e>120 624 Q<416c6c208c656c64 73206172652073657061726174656420627920746865208c656c6420736570617261746f 722e>5 E<557365>120 648 Q F1<2d64756d702d736966>3.097 E F2<3c7461>2.5 E <673e>-.1 E F0 .597<746f2064756d702053494620666f726d61742e>3.097 F .596 <546865206172>5.597 F<67756d656e74>-.18 E F2<3c7461>3.096 E<673e>-.1 E F0 .596<77696c6c2062652075736564206173207468652065646765>3.096 F 1.323< 747970652028746865207365636f6e6420636f6c756d6e20696e2053494620666f726d61 74292e20546865206f7074696f6e>120 660 R F1<2d64756d702d73696678>3.824 E F2<3c7461>2.5 E<673e>-.1 E F0 1.324<69732073696d696c61722065>3.824 F <7863657074>-.15 E .4<7468617420616e2065>120 672 R .399<7874656e64656420 666f726d61742069732070726f647563656420776865726520746865206c6162656c2069 7320666f6c6c6f>-.15 F .399 <7765642062792074686520636f6c6f6e2063686172616374657220616e64>-.25 F <7468652065646765207765696768742e>120 684 Q -.4<5769>120 708 S<7468>.4 E F1<2d2d64756d702d6c696e6573>2.801 E F0 2.801<2c65>C .301<616368206d6174 72697820636f6c756d6e206973206f7574707574206f6e20612073696e676c65206c696e 652c207769746820726f>-2.801 F 2.802<7769>-.25 G .302 <64656e74698c657273207365702d>-2.802 F 1.543 <61726174656420627920746865208c656c6420736570617261746f7220616e642076> 120 720 R 1.543<616c75657320617474616368656420746f2074686520726f>-.25 F 4.043<7769>-.25 G 1.542<64656e74698c657220627920746865206e6f64652f76> -4.043 F<616c7565>-.25 E<6d637864756d702031322d313335>20 768 Q <3134204d61792032303132>136.505 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 135.115<6d637864756d702831292055534552>20 48 R 137.615<434f4d4d414e4453206d637864756d70283129>2.5 F 2.5 <736570617261746f722e20496e>120 84 R<7468697320666f726d61742c2074686520 636f6c756d6e206964656e74698c6572206973206f757470757420617320746865206c65 6164696e67208c656c642e>2.5 E/F1 10/Times-Bold@0 SF <2d2d64756d702d726c696e6573>120 108 Q F0 1.86<6973206173>4.36 F F1 <2d2d64756d702d6c696e6573>4.36 E F0 4.36<2c65>C 1.86<786365707420746861 742074686520636f6c756d6e206964656e74698c6572206973206e6f74206f7574707574 2e>-4.51 F<557365>6.86 E F1<2d2d64756d702d6c6561642d6f6666>120 120 Q F0< 746f20707265636c75646520746865206f7574707574206f6620746865206c656164696e 67206964656e74698c6572732028666f72206c696e652d6261736564206f757470757473 292e>2.5 E F1<2d2d64756d702d766c696e6573>120 144 Q F0 .874<6973206173> 3.374 F F1<2d2d64756d702d6c696e6573>3.374 E F0 3.374<2e54>C .873 <6865206c656164696e67206964656e74698c6572732061726520666f6c6c6f>-3.374 F .873<77656420627920612076>-.25 F .873<616c7565206173736f63692d>-.25 F 1.041<6174656420776974682074686520656e7469726520636f6c756d6e2e2054686973 2063616e206265207573656420746f2064756d7020746865206f7574707574206769>120 156 R -.15<7665>-.25 G 3.541<6e62>.15 G<79>-3.541 E F1 1.042<636c6d2076> 3.542 F<6f6c>-.1 E F0 3.542<2e54>C<6865>-3.542 E -.25<7661>120 168 S <6c75652070726f>.25 E<76696465642069732061206d65617375726520666f72207468 652073746162696c697479206f662074686520636c7573746572207468617420666f6c6c 6f>-.15 E<77732e>-.25 E .515 <546865206f7074696f6e73207065727461696e696e6720746f>120 192 R/F2 10 /Times-Italic@0 SF<6c6f776572>3.014 E F0<616e64>3.014 E F2<7570706572> 3.014 E F0 .514<64756d70732063757272656e746c79206f6e6c792077>3.014 F .514<6f726b2077697468>-.1 F F1<2d2d64756d702d7061697273>3.014 E F0<2e>A <546865>120 204 Q 2.5<7961>-.15 G<637420746f206f6e6c79206f75747075742074 68652073706563698c65642070617274206f6620746865206d61747269782e>-2.5 E F1 <2d2d64756d702d7461626c65>100 228 Q F0<28>2.5 E F2 <64756d70207461626c6520666f726d6174>A F0<29>A F1 <2d7461626c652d6e8c656c6473>100 240 Q F0<28>2.5 E F2 <8c656c64206c696d6974>A F0<29>A F1<2d7461626c652d6e6c696e6573>100 252 Q F0<28>2.5 E F2<6c696e652f72>A<6f77206c696d6974>-.45 E F0<29>A 1.413<4f75 74707574207461626c6520666f726d61742e20496e207461626c6520666f726d6174206e 6f20696e646963657320617265207072696e74656420627920646566>120 264 R 1.414 <61756c7420616e6420616c6c2076>-.1 F 1.414<616c75657320617265>-.25 F .645 <7072696e74656420696e636c7564696e67207a65726f65732e20546865206f7074696f 6e73>120 276 R F1<2d7461626c652d6e8c656c6473>3.145 E F0<616e64>3.145 E F1<2d7461626c652d6e6c696e6573>3.145 E F0 .645 <63616e206265207573656420746f206c696d6974>3.145 F 1.35<746865206e756d62 6572206f66208c656c647320616e64206c696e657320746f206265207072696e7465642e 204e6f74652074686174208c656c647320636f72726573706f6e6420746f204d434c206d 6174726978>120 288 R<726f>120 300 Q .809<777320616e642074686174206c696e 657320636f72726573706f6e6420746f204d434c206d617472697820636f6c756d6e732c 206173204d434c2063616c6c7320697473207072696d61727920696e6469636573>-.25 F .531<636f6c756d6e20696e64696365732e>120 312 R<557365>5.531 E F1 <2d2d64756d702d6c6561642d6f6666>3.031 E F0 .532<746f20707265636c75646520 746865206f7574707574206f6620746865206c656164696e67206964656e74698c657273 2028666f72>3.031 F<6c696e652d6261736564206f757470757473292e>120 324 Q F1 <2d2d6e657769636b>100 348 Q F0<28>2.5 E F2<6f7574707574206e65>A<776963> -.15 E 2.5<6b66>-.2 G<6f726d6174>-2.5 E F0<29>A F1<2d6e657769636b>100 360 Q F0<5b4e42495d2b2028>2.5 E F2<6e65>A<776963>-.15 E<6b2c2065>-.2 E <78636c756465204e756d6265727c4272>-.2 E<616e63>-.15 E <682d6c656e6774687c496e64656e74>-.15 E F0<29>A<4f7574707574206120686965 72617263686963616c20636c7573746572696e672073706563698c6564206279>120 372 Q F1<2d696d782d7472>2.5 E<6565>-.18 E F0<696e204e65>2.5 E <7769636b207472656520666f726d61742e>-.25 E F1<2d2d77726974652d74616263> 100 396 Q F0<28>2.5 E F2 <64756d7020746162208c6c65206f6e20636f6c756d6e20646f6d61696e>A F0<29>A F1 <2d2d77726974652d74616272>100 408 Q F0<28>2.5 E F2 <64756d7020746162208c6c65206f6e2072>A<6f7720646f6d61696e>-.45 E F0<29>A F1<2d2d64756d702d646f6d63>100 420 Q F0<28>2.5 E F2 <64756d7020636f6c756d6e20646f6d61696e>A F0<29>A F1 <2d2d64756d702d646f6d72>100 432 Q F0<28>2.5 E F2<64756d702072>A <6f7720646f6d61696e>-.45 E F0<29>A .155<5468657365206f7074696f6e732077> 120 444 R .155<6f726b20696e20636f6e6a756e6374696f6e207769746820746865> -.1 F F1<2d69786d>2.655 E F2<666e616d65>2.5 E F0 2.654 <6f7074696f6e2e204f6e6c79>2.655 F .154 <74686520646f6d61696e732066726f6d20746865>2.654 F .233 <696e707574206d6174726978206172652072656164206173206966>120 456 R F1 <2d2d736b>2.733 E<656c65746f6e>-.1 E F0 -.1<7761>2.734 G 2.734<7373>.1 G <706563698c65642e>-2.734 E F1<2d2d77726974652d74616263>5.234 E F0 .234 <617373756d65732074686520696e70757420746162208c6c65>2.734 F<656e>120 468 Q -.15<7665>-.4 G .163<6c6f70657320746865206d617472697820636f6c756d6e20 646f6d61696e2c20616e64206974206f7574707574732061206e65>.15 F 2.663<7774> -.25 G .162 <6162208c6c65207265737472696374656420746f207468617420646f6d61696e2e> -2.663 F F1<2d2d77726974652d74616272>120 480 Q F0 2.868 <6163747320616e616c6f676f75736c7920666f722074686520726f>5.367 F 5.368 <7764>-.25 G<6f6d61696e2e>-5.368 E F1<2d2d64756d702d646f6d63>7.868 E F0 <616e64>5.368 E F1<2d2d64756d702d646f6d72>5.368 E F0<7265737065637469> 120 492 Q -.15<7665>-.25 G .257 <6c792064756d702074686520636f6c756d6e206f7220726f>.15 F 2.757<7764>-.25 G .257<6f6d61696e2061732061207265>-2.757 F .256<67756c61722064756d702c20 6f757470757474696e67206c6162656c7320696e20636173652061>-.15 F <746162208c6c652069732073706563698c65642e>120 504 Q .102<5468657365206f 7074696f6e732061726520696d706c656d656e74656420617320656e73656d626c657320 6f66206f74686572206f7074696f6e732e>120 528 R -.15<466f>5.102 G 2.602 <7265>.15 G<78616d706c652c>-2.752 E F1<2d2d64756d702d646f6d72>2.602 E <2d696d78>120 540 Q F2<666e616d65>2.5 E F0 <636f72726573706f6e64732077697468>2.5 E F1 <2d2d64756d702d6c696e6573202d2d7472616e73706f7365202d2d736b>2.5 E <656c65746f6e>-.1 E F0<2e>A F1<2d696d782d636174>100 564 Q F0 <3c666e616d653e2028>2.5 E F2 <636f6e636174656e6174696f6e206d6174726978208c6c65>A F0<29>A F1 <2d696d782d7472>100 576 Q<6565>-.18 E F0<3c666e616d653e2028>2.5 E F2 <636f6e636174656e6174696f6e20636f6e65208c6c65>A F0<29>A F1 <2d2d77726974652d6d6174726978>100 588 Q F0<28>2.5 E F2 <286465636f6e636174656e61746529207772697465206d61747269636573>A F0<29>A F1<2d73706c69742d7374656d>100 600 Q F0<3c7374723e2028>2.5 E F2<28646563 6f6e636174656e61746529206d61747269636573208c6c65206e616d65207374656d>A F0<29>A F1<2d6361742d6d6178>100 612 Q F0<3c6e756d3e2028>2.5 E F2 <286465636f6e636174656e61746529207772697465208c72>A <7374203c6e756d3e206d61747269636573>-.1 E F0<29>A F1<2d696d782d636174> 120 624 Q F0 1.643<6973206c696b>4.143 F<65>-.1 E F1<2d696d78>4.143 E F0 -.15<6578>4.143 G 1.642<6365707420746861742074686520696e7075742069732061 7373756d656420746f20636f6e7461696e206d756c7469706c6520636f6e636174656e61 746564>.15 F 2.979<6d617472696365732e20546865>120 636 R .479<6d61747269 636573206172652064756d7065642073657061726174656420627920746865>2.979 F F2 .479<636174207365706172>2.979 F<61746f72>-.15 E F0<2863662e>2.979 E F1<2d7365702d636174>2.98 E F0 2.98<292e20416c7465726e612d>B<7469>120 648 Q -.15<7665>-.25 G<6c79>.15 E 2.531<2c74>-.65 G .031 <6865206d617472696365732063616e206265207772697474656e20746f20646966> -2.531 F .031<666572656e74208c6c6573207573696e6720746865>-.25 F F1 <2d73706c69742d7374656d>2.53 E F0 2.53<6f7074696f6e2e20496e>2.53 F .03 <746869732063617365>2.53 F 1.187<697420697320706f737369626c6520746f206f 75747075742065616368206d617472697820696e206e617469>120 660 R 1.487 -.15 <76652066>-.25 H 1.187<6f726d617420726174686572207468616e20617320612064 756d702062792073706563696679696e67>.15 F F1 <2d2d77726974652d6d6174726978>120 672 Q F0 6.79<2e54>C 1.79 <686973206d616b>-6.79 F 1.79<6573206d637864756d70206566>-.1 F <6665637469>-.25 E -.15<7665>-.25 G 1.79 <6c79206163742061732061206465636f6e636174656e61746f722e>.15 F 1.79 <496e20616c6c206361736573>6.79 F<287265737065637469>120 684 Q -.15<7665> -.25 G .585<6c792064756d70696e6720616e642077726974696e67206d617472696365 7320746f20656974686572207468652073616d652073747265616d206f72206d756c7469 706c65208c6c65732920746865>.15 F<6e756d626572206f66206d6174726963657320 746f2062652064756d7065642063616e206265206c696d697465642077697468>120 696 Q F1<2d6361742d6d6178>2.5 E F0<2e>A F1<2d696d782d7472>120 720 Q<6565> -.18 E F0 .254<6973206c696b>2.754 F<65>-.1 E F1<2d696d782d636174>2.754 E F0 -.15<6578>2.754 G .254<6365707420746861742074686520696e70757420697320 617373756d656420746f20626520696e20636f6e6520666f726d6174202874686520666f 726d6174>.15 F<6d637864756d702031322d313335>20 768 Q <3134204d61792032303132>136.505 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 135.115<6d637864756d702831292055534552>20 48 R 137.615<434f4d4d414e4453206d637864756d70283129>2.5 F .775 <6f7574707574206279>120 84 R/F1 10/Times-Bold@0 SF<6d636c636d>3.275 E F0 3.275<292e2054686973>B .776<666f726d617420656e636f6465732061207472656520 6173206120636f6e636174656e6174696f6e206f66206d61747269636573207769746820 6e6573746564>3.275 F<646f6d61696e732e>120 96 Q F1<6d637864756d70>2.922 E F0 .422<77696c6c2070726f6a65637420616c6c206c65>2.922 F -.15<7665>-.25 G .421<6c73206f662074686973207472656520736f207468617420616c6c20726f>.15 F 2.921<7764>-.25 G .421<6f6d61696e7320617265207468652073616d65>-2.921 F .624<61732074686520626f74746f6d20726f>120 108 R 3.124<7764>-.25 G 3.124 <6f6d61696e2e2054686973>-3.124 F .625<696d706c69657320746861742061207365 74206f66206e657374656420636c7573746572696e677320286f6e20646966>3.125 F .625<666572656e74206e6f6465>-.25 F .759<736574732c2061732074686520736574 206f6620636c757374657273206f662061206769>120 120 R -.15<7665>-.25 G 3.258<6e6c>.15 G -2.15 -.25<65762065>-3.258 H 3.258<6c69>.25 G 3.258 <7374>-3.258 G .758<6865206e6f646520736574206f6620746865206e65>-3.258 F .758<7874206c65>-.15 F -.15<7665>-.25 G .758 <6c29206973207472616e73666f726d6564>.15 F .457<696e746f206120736574206f 66208d617474656e656420636c7573746572696e67732c20616c6c206f6e207468652073 616d65206e6f6465207365742e>120 132 R .458 <496620796f7520646f206e6f742077>5.457 F .458 <616e74207468697320746f206861702d>-.1 F<70656e2c2073696d706c7920757365> 120 144 Q F1<2d696d782d636174>2.5 E F0<2e>A F1<2d7365702d76>100 168 Q <616c7565>-.1 E F0<3c7374723e2028>2.5 E/F2 10/Times-Italic@0 SF <6e6f64652f76616c7565207365706172>A<61746f72>-.15 E F0<29>A <53657420746865206e6f64652f76>120 180 Q <616c756520736570617261746f7220666f72206c696e6520626173656420726f>-.25 E 2.5<7765>-.25 G<6e73656d626c65206f75747075742e>-2.5 E F1 <2d7365702d8c656c64>100 204 Q F0<3c7374723e2028>2.5 E F2 <8c656c64207365706172>A<61746f72>-.15 E F0<29>A <53657420746865208c656c6420736570617261746f7220666f7220646966>120 216 Q <666572656e7420726f>-.25 E 2.5<7769>-.25 G<6e646963657320696e2061206769> -2.5 E -.15<7665>-.25 G 2.5<6e63>.15 G<6f6c756d6e2e>-2.5 E F1 <2d7365702d6c656164>100 240 Q F0<3c7374723e2028>2.5 E F2 <6c656164207365706172>A<61746f72>-.15 E F0<29>A 1.315 <53657420746865206c65616420736570617261746f722e20496e20746865>120 252 R F1<2d2d64756d702d6c696e6573>3.815 E F0 1.314<666f726d617420697420736570 61726174657320746865206c656164696e6720636f6c756d6e20696e6465>3.815 F<78> -.15 E .4<66726f6d2074686520666f6c6c6f>120 264 R .4 <77696e6720656e73656d626c206f6620726f>-.25 F 2.9<7769>-.25 G .401 <6e64696365732e2049742063616e2062652075736566756c20746f206d616b>-2.9 F 2.901<6574>-.1 G .401<68697320646966>-2.901 F .401 <666572656e742066726f6d20746865>-.25 F .832 <8c656c6420736570617261746f722e204f6e652063616e20666f722065>120 276 R .832<78616d706c65206772657020666f7220636f6c756d6e732074686174206861>-.15 F 1.132 -.15<7665206d>-.2 H .832 <6f7265207468616e206f6e6520656e74727920696e2061>.15 F<6d6174726978206d61 7070696e67206e6f64657320746f20636c7573746572732e20546869732077696c6c208c 6e64206e6f64657320696e206f>120 288 Q -.15<7665>-.15 G<726c61702e>.15 E F1<2d7365702d636174>100 312 Q F0<3c7374723e2028>2.5 E F2 <636f6e636174656e6174696f6e207365706172>A<61746f72>-.15 E F0<29>A 1.052< 5365742074686520736570617261746f7220746861742069732075736564206265747765 656e206d61747269782064756d7073207768656e206120636f6e636174656e6174696f6e 206f66206d61747269636573206973>120 324 R<64756d7065642e>120 336 Q F1 <2d7072>100 360 Q<658c7863>-.18 E F0<3c7374723e2028>2.5 E F2<7072>A <658c7820636f6c756d6e20696e64696365732077697468203c7374723e>-.37 E F0 <29>A .918<546869732063616e2062652075736566756c207768656e2065>120 372 R .917<787465726e616c20726f>-.15 F 3.417<776e>-.25 G .917<616d65732063616e 6e6f74206265206e756d6265727320616e64207768656e2061206c6162656c2064696374 696f2d>-3.417 F<6e617279206973206e6f742061>120 384 Q -.25<7661>-.2 G <696c61626c65206f72206e6f7420617070726f7072696174652e>.25 E F1 <2d736f7274>100 408 Q F0 <73697a652d7b617363656e64696e672c64657363656e64696e677d2028>2.5 E F2 <636f6e636174656e6174696f6e207365706172>A<61746f72>-.15 E F0<29>A .912< 52656f7264657220746865206d617472697820636f6c756d6e73207072696f7220746f20 64756d70696e672c206261736564206f6e20746865206e756d626572206f66206e6f6e7a 65726f20656e747269657320696e>120 420 R<6561636820636f6c756d6e2e>120 432 Q<446f206e6f7420757365207468697320696e20636f6e6a756e6374696f6e2077697468 206120746162208c6c6520666f722074686520636f6c756d6e20646f6d61696e2e>5 E /F3 10.95/Times-Bold@0 SF -.548<4155>20 448.8 S<54484f52>.548 E F0 <5374696a6e2076>100 460.8 Q<616e20446f6e67656e2e>-.25 E F3 <53454520414c534f>20 477.6 Q F1<6d63786c6f6164283129>100 489.6 Q F0<2c>A F1<6d636c283129>2.78 E F0<2c>A F1<6d636c666171283729>2.78 E F0 2.78 <2c61>C<6e64>-2.78 E F1<6d636c66616d696c79283729>2.78 E F0 .28 <666f7220616e206f>2.78 F -.15<7665>-.15 G<72766965>.15 E 2.78<776f>-.25 G 2.78<6661>-2.78 G .28 <6c6c2074686520646f63756d656e746174696f6e20616e64>-2.78 F <746865207574696c697469657320696e20746865206d636c2066>100 501.6 Q <616d696c792e>-.1 E<6d637864756d702031322d313335>20 768 Q <3134204d61792032303132>136.505 E<34>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/Makefile.am0000644000402500021140000002675611666237010012114 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.16 2007-05-18 11:02:25 flux Exp $ TROFF = groff COL = col ZOEM = zoem ## tidy is a HTML syntax checker and reformatter, available from ## http://www.w3.org/People/Raggett/tidy/ , by Dave Raggett TIDY = tidy docdir = $(datadir)/doc/$(PACKAGE) # mclfamily.html mclfamily.ps doc_DATA_dep = mcl.html mcl.ps mcl.txt \ mclcm.html mclcm.ps mclcm.txt \ mclfaq.html mclfaq.ps mclfaq.txt \ mclfamily.html mclfamily.ps \ mcx.html mcx.ps \ mcxi.html mcxi.ps \ clm.html clm.ps \ mcxconvert.html mcxconvert.ps \ mcxarray.html mcxarray.ps \ mcxdump.html mcxdump.ps \ mcxdiameter.html mcxdiameter.ps \ mcxerdos.html mcxerdos.ps \ mcxalter.html mcxalter.ps \ mcxclcf.html mcxclcf.ps \ mcxctty.html mcxctty.ps \ mcxrand.html mcxrand.ps \ mcxload.html mcxload.ps \ mcxsubs.html mcxsubs.ps \ mcxmap.html mcxmap.ps \ mcxquery.html mcxquery.ps \ mcxassemble.html mcxassemble.ps \ mclpipeline.html mclpipeline.ps \ index.html mclindex.ps \ clmimac.html clmimac.ps \ clmclose.html clmclose.ps \ clmresidue.html clmresidue.ps \ clmdist.html clmdist.ps \ clmvol.html clmvol.ps \ clminfo.html clminfo.ps \ clmmate.html clmmate.ps \ clmmeet.html clmmeet.ps \ clmformat.html clmformat.ps \ clmorder.html clmorder.ps \ minimcl \ mcxio.html mcxio.ps \ clmprotocols.html clmprotocols.ps \ clmprotocols2.html clmprotocols2.ps \ tingea.log.html tingea.log.ps doc_DATA = $(doc_DATA_dep) mclmcl.txt man_MANS = mcl.1 mclcm.1 clm.1 mclindex.7 mclfamily.7 mclfaq.7 mcx.1 mcxi.1 mcxio.5 clmprotocols2.5 clmprotocols.5 \ clmresidue.1 clmclose.1 clmimac.1 clmmate.1 clmmeet.1 clmformat.1 \ clmvol.1 clmdist.1 clminfo.1 clmorder.1 \ mcxconvert.1 mcxassemble.1 mcxmap.1 mcxsubs.1 mcxload.1 mcxdump.1 mcxarray.1 mcxrand.1 \ mcxalter.1 mcxerdos.1 mcxdiameter.1 mcxctty.1 mcxclcf.1 mcxquery.1 \ mclpipeline.1 \ tingea.log.7 MAINTAINERCLEANFILES = $(man_MANS) $(doc_DATA_dep) ALIENFILES = mcxdeblast.html mcxdeblast.ps mclblastline.html mclblastline.ps ## This is quite hackish (though not deep). ## In the alien files, these are copied to this directory. ## This is needed so that hyperlinks work correctly when this ## documentation is accessed directly from the tarball, rather than ## after an installation. ## So this introduces the dependency that alien documentation must ## be processed and created first. ## sec_introduction.html \ ## sec_license.html \ ## sec_discovery.html \ ## sec_description1.html \ ## sec_description2.html \ ## sec_characteristics.html \ ## sec_community.html \ ## sec_networktools.html \ ## sec_other.html \ ## sec_thesisetc.html \ ## sec_news.html \ ## sec_software.html \ ## sec_questions.html \ EXTRA_DIST = mclmcl.txt mcx.zmm\ stamp.day stamp.month stamp.stamp stamp.year\ clmformat.azm clmvol.azm clmdist.azm clmmate.azm clminfo.azm clmmeet.azm\ clm.azm clmorder.azm mcl.azm mclcm.azm\ mclfamily.azm mclfaq.azm mcxi.azm mcx.azm mcxquery.azm mclpipeline.azm\ mcxdump.azm mcxconvert.azm clmprotocols2.azm clmprotocols.azm mcxio.azm clmresidue.azm clmclose.azm clmimac.azm mcxassemble.azm\ mcxalter.azm mcxerdos.azm mcxdiameter.azm mcxctty.azm mcxclcf.azm mcxrand.azm\ mcxload.azm mcxmap.azm mcxarray.azm mcxsubs.azm index.in.azm index.html distindex.html\ tingea.log.azm\ $(ALIENFILES)\ $(MAINTAINERCLEANFILES) SUFFIXES = .1 .5 .7 .azm .html .ps .txt .azm.1: $(ZOEM) -d roff -i $< -o $@ $(ZOEM) -d roff -i $< -o $@ .azm.5: $(ZOEM) -d roff -i $< -o $@ $(ZOEM) -d roff -i $< -o $@ .azm.7: $(ZOEM) -d roff -i $< -o $@ $(ZOEM) -d roff -i $< -o $@ .1.ps: $(TROFF) -man $< > $@ .5.ps: $(TROFF) -man $< > $@ .7.ps: $(TROFF) -man $< > $@ .1.txt: $(TROFF) -t -e -mandoc -Tascii $< | $(COL) -bx > $@ .5.txt: $(TROFF) -t -e -mandoc -Tascii $< | $(COL) -bx > $@ .7.txt: $(TROFF) -t -e -mandoc -Tascii $< | $(COL) -bx > $@ .azm.html: $(ZOEM) -d html -i $< -o $@ $(ZOEM) -d html -i $< -o $@ - $(TIDY) -e $@ SHARE1 = "--exclude=version,h,help" SHARE2 = "--exclude=nop,version,set,h,help,debug,test,progress" # clm omitted # mcx omitted # mcxi omitted # ../scripts/docme --silent --exclude=version,h,help ../src/shmcl/mcl mcl.azm .PHONY: docme-test docme-test: ../scripts/docme --doc-exceed=21 --silent $(SHARE1) ../src/shmcl/mcl mcl.azm ../scripts/docme --silent $(SHARE1) ../src/shmcl/mclcm mclcm.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxdump mcxdump.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxload mcxload.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxarray mcxarray.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxrand mcxrand.azm ../scripts/docme --silent $(SHARE1) ../src/shcl/clmformat clmformat.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxsubs mcxsubs.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxmap mcxmap.azm ../scripts/docme --silent $(SHARE1) ../src/shmx/mcxassemble mcxassemble.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm close" clmclose.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm dist" clmdist.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm order" clmorder.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm mate" clmmate.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm meet" clmmeet.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm info" clminfo.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm vol" clmvol.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm residue" clmresidue.azm ../scripts/docme --silent $(SHARE2) "../src/shcl/clm imac" clmimac.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx convert" mcxconvert.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx diameter" mcxdiameter.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx erdos" mcxerdos.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx alter" mcxalter.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx clcf" mcxclcf.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx ctty" mcxctty.azm ../scripts/docme --silent $(SHARE2) "../src/shmx/mcx query" mcxquery.azm ../scripts/docme --silent ../src/alien/oxygen/src/mcxdeblast ../src/alien/oxygen/doc/mcxdeblast.azm # ../scripts/docme --silent ../src/shcl/mclpipeline mclpipeline.azm mclindex.7: index.in.azm $(ZOEM) -i index.in -d roff -o mclindex.7 -s install=1 $(TROFF) -man mclindex.7 > mclindex.ps index.html: index.in.azm $(ZOEM) -i index.in -o index.html -d html -s install=1 $(ZOEM) -i index.in -o distindex.html -d html -s dist=1 mcl: mcl.txt mcl.1 mcl.html mcl.ps mclcm: mclcm.txt mclcm.1 mclcm.html mclcm.ps clm: clm.1 clm.html clm.ps clminfo: clminfo.1 clminfo.html clminfo.ps clmmeet: clmmeet.1 clmmeet.html clmmeet.ps clmformat: clmformat.1 clmformat.html clmformat.ps clmdist: clmdist.1 clmdist.html clmdist.ps clmvol: clmvol.1 clmvol.html clmvol.ps clmmate: clmmate.1 clmmate.html clmmate.ps clmresidue: clmresidue.1 clmresidue.html clmresidue.ps clmimac: clmimac.1 clmimac.html clmimac.ps clmclose: clmclose.1 clmclose.html clmclose.ps clmorder: clmorder.1 clmorder.html clmorder.ps mcx: mcx.1 mcx.html mcx.ps mcxi: mcxi.1 mcxi.html mcxi.ps mcxassemble: mcxassemble.1 mcxassemble.html mcxassemble.ps mcxmap: mcxmap.1 mcxmap.html mcxmap.ps mcxsubs: mcxsubs.1 mcxsubs.html mcxsubs.ps mcxarray: mcxarray.1 mcxarray.html mcxarray.ps mcxdump: mcxdump.1 mcxdump.html mcxdump.ps mcxload: mcxload.1 mcxload.html mcxload.ps mcxconvert: mcxconvert.1 mcxconvert.html mcxconvert.ps mcxdiameter: mcxdiameter.1 mcxdiameter.html mcxdiameter.ps mcxerdos: mcxerdos.1 mcxerdos.html mcxerdos.ps mcxalter: mcxalter.1 mcxalter.html mcxalter.ps mcxclcf: mcxclcf.1 mcxclcf.html mcxclcf.ps mcxctty: mcxctty.1 mcxctty.html mcxctty.ps mcxrand: mcxrand.1 mcxrand.html mcxrand.ps mcxquery: mcxquery.1 mcxquery.html mcxquery.ps mclpipeline: mclpipeline.1 mclpipeline.html mclpipeline.ps mcxio: mcxio.5 mcxio.html mcxio.ps clmprotocols: clmprotocols.5 clmprotocols.html clmprotocols.ps clmprotocols2: clmprotocols2.5 clmprotocols2.html clmprotocols2.ps tingea.log: tingea.log.7 tingea.log.html tingea.log.ps mclfaq: mclfaq.txt mclfaq.7 mclfaq.html mclfaq.ps minimcl mclfamily: mclfamily.7 mclfamily.html mclfamily.ps index: mclindex.7 index.html distindex.html minimcl: cp ../scripts/minimcl . sec_introduction.html: sec_introduction.azm $(ZOEM) -i sec_introduction.azm -o sec_introduction.html -d html - $(TIDY) -e sec_introduction.html sec_description1.html: sec_description1.azm $(ZOEM) -i sec_description1.azm -o sec_description1.html -d html - $(TIDY) -e sec_description1.html sec_description2.html: sec_description2.azm $(ZOEM) -i sec_description2.azm -o sec_description2.html -d html - $(TIDY) -e sec_description2.html sec_license.html: sec_license.azm $(ZOEM) -i sec_license.azm -o sec_license.html -d html - $(TIDY) -e sec_license.html sec_discovery.html: sec_discovery.azm $(ZOEM) -i sec_discovery.azm -o sec_discovery.html -d html - $(TIDY) -e sec_discovery.html sec_characteristics.html: sec_characteristics.azm $(ZOEM) -i sec_characteristics.azm -o sec_characteristics.html -d html - $(TIDY) -e sec_characteristics.html sec_mcledge.html: sec_mcledge.azm $(ZOEM) -i sec_mcledge.azm -o sec_mcledge.html -d html - $(TIDY) -e sec_mcledge.html sec_networktools.html: sec_networktools.azm $(ZOEM) -i sec_networktools.azm -o sec_networktools.html -d html - $(TIDY) -e sec_networktools.html sec_thesisetc.html: sec_thesisetc.azm $(ZOEM) -i sec_thesisetc.azm -o sec_thesisetc.html -d html - $(TIDY) -e sec_thesisetc.html sec_edge.html: sec_edge.azm $(ZOEM) -i sec_edge.azm -o sec_edge.html -d html - $(TIDY) -e sec_edge.html sec_other.html: sec_other.azm $(ZOEM) -i sec_other.azm -o sec_other.html -d html - $(TIDY) -e sec_other.html sec_questions.html: sec_questions.azm $(ZOEM) -i sec_questions.azm -o sec_questions.html -d html - $(TIDY) -e sec_questions.html sec_speedmemory.html: sec_speedmemory.azm $(ZOEM) -i sec_speedmemory.azm -o sec_speedmemory.html -d html - $(TIDY) -e sec_speedmemory.html sec_software.html: sec_software.azm $(ZOEM) -i sec_software.azm -o sec_software.html -d html - $(TIDY) -e sec_software.html sec_news.html: sec_news.azm $(ZOEM) -i sec_news.azm -o sec_news.html -d html - $(TIDY) -e sec_news.html sec_community.html: sec_community.azm $(ZOEM) -i sec_community.azm -o sec_community.html -d html - $(TIDY) -e sec_community.html intro.html: intro.azm $(ZOEM) -i intro.azm -d html - $(TIDY) -e intro.html description2.html: description2.azm $(ZOEM) -i description2.azm -d html - $(TIDY) -e description2.html intro3.html: intro3.azm $(ZOEM) -i intro3.azm -d html - $(TIDY) -e intro3.html litindex.html: litindex.azm 3Party $(ZOEM) -i litindex.azm -o litindex.html -d html - $(TIDY) -e litindex.html mcl-12-135/doc/mcxmap.ps0000644000402500021140000004176011754271045011705 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:17 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.675<6d63786d61702831292055534552>20 48 R 143.175<434f4d4d414e4453206d63786d6170283129>2.5 F/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<6d63786d617020ad207065726d75746520 6f722072656d61702074686520696e6469636573206f662067726170687320616e64206d 617472696365732e>100 96 Q F1<53594e4f50534953>20 112.8 Q/F2 10 /Times-Bold@0 SF .46<6d63786d6170202d696d78>100 124.8 R F0 .459 <666e616d652028>2.96 F/F3 10/Times-Italic@0 SF<696e707574>A F0<29>A F2 <5b2d6f>2.959 E F0 .459<666e616d652028>2.959 F F3<6f7574707574>A F0<29>A F2 2.959<5d5b>C<2d6d616b>-2.959 E<652d6d6170>-.1 E F0<28>2.959 E F3 .459 <6f7574707574206d6170208c6c65206e616d65>B F0<29>A F2 2.959<5d5b>C <2d6d616b>-2.959 E<652d>-.1 E<6d617063>100 136.8 Q F0<28>4.308 E F3 1.808<6f7574707574206d6170208c6c65206e616d65>B F0<29>A F2 4.308<5d5b>C <2d6d616b>-4.308 E<652d6d617072>-.1 E F0<28>4.308 E F3 1.808 <6f7574707574206d6170208c6c65206e616d65>B F0<29>A F2 4.309<5d5b>C <2d636d756c>-4.309 E F0 4.309<6128>4.309 G F3<636f6566>-4.309 E <8c6369656e74>-.18 E F0<29>A F2<5d>A<5b2d637368696674>100 148.8 Q F0 2.811<6228>2.811 G F3<7472>-2.811 E<616e736c617465>-.15 E F0<29>A F2 2.811<5d5b>C<2d726d756c>-2.811 E F0 2.811<6328>2.811 G F3<636f6566> -2.811 E<8c6369656e74>-.18 E F0<29>A F2 2.811<5d5b>C<2d727368696674> -2.811 E F0 2.811<6428>2.811 G F3<7472>-2.811 E<616e736c617465>-.15 E F0 <29>A F2 2.811<5d5b>C<2d6d756c>-2.811 E F0 2.81<6528>2.811 G F3 <636f6566>-2.81 E<8c6369656e74>-.18 E F0<29>A F2 2.81<5d5b>C <2d7368696674>-2.81 E F0<66>2.81 E<28>100 160.8 Q F3<7472>A <616e736c617465>-.15 E F0<29>A F2 3.01<5d5b>C<2d6d6170>-3.01 E F0 .51 <666e616d652028>3.01 F F3 -.45<726f>C .511<772f636f6c206d6170208c6c65> .45 F F0<29>A F2 3.011<5d5b>C<2d726d6170>-3.011 E F0 .511 <666e616d652028>3.011 F F3 -.45<726f>C 3.011<776d>.45 G .511 <6170208c6c65>-3.011 F F0<29>A F2 3.011<5d5b>C<2d636d6170>-3.011 E F0 .511<666e616d652028>3.011 F F3<636f6c2d>A .244<756d6e206d6170208c6c65> 100 172.8 R F0<29>A F2 2.744<5d5b>C<2d6d617069>-2.744 E F0 .244 <666e616d652028>2.744 F F3 -.45<726f>C .243 <772f636f6c206d6170208c6c65202875736520696e>.45 F<766572>-.4 E<736529> -.1 E F0<29>A F2 2.743<5d5b>C<2d726d617069>-2.743 E F0 .243 <666e616d652028>2.743 F F3 -.45<726f>C 2.743<776d>.45 G .243 <6170208c6c652028757365>-2.743 F<696e>100 184.8 Q<766572>-.4 E<736529> -.1 E F0<29>A F2 2.661<5d5b>C<2d636d617069>-2.661 E F0 .161 <666e616d652028>2.661 F F3 .161 <636f6c756d6e206d6170208c6c65202875736520696e>B<766572>-.4 E<736529>-.1 E F0<29>A F2 2.661<5d5b>C<2d746162>-2.661 E F0 .162<666e616d652028>2.662 F F3 -.37<7265>C .162<61642028616e64206d61702920746162208c6c65>.37 F F0 <29>A F2<5d>A F1<4445534352495054494f4e>20 201.6 Q F0 .064<546869732075 74696c6974792072656c6162656c7320677261706873206f72206d617472696365732e20 497473206d61696e2075736520697320696e206170706c79696e672061>100 213.6 R F3 .063<6d6170208c6c65>2.564 F F0 .063<746f2061206769>2.563 F -.15<7665> -.25 G 2.563<6e6d>.15 G .063<6174726978206f72>-2.563 F .147<67726170682e 2041206d6170208c6c6520636f6e7461696e73206120736f2063616c6c6564>100 225.6 R F3 .147<6d6170206d6174726978>2.647 F F0 .147<696e206d636c20666f726d61 7420746861742068617320736f6d65207370656369616c2070726f70657274696573> 2.647 F<286769>100 237.6 Q -.15<7665>-.25 G 3.111<6e66>.15 G .611 <7572746865722062656c6f>-3.111 F .611<77292e205468652066756e6374696f6e61 6c697479206f66206d63786d61702063616e20616c736f2062652070726f>-.25 F .61 <7669646564206279>-.15 F F2<6d6378>3.11 E F0 3.11<2c61>C 3.11<73616d> -3.11 G<6170706564>-3.11 E 1.266<6d61747269782028692e652e20746865207265 73756c74206f66206170706c79696e672061206d6170206d617472697820746f20616e6f 74686572206d6174726978292069732073696d706c792074686520757375616c206d6174 726978>100 249.6 R .524<70726f64756374206f662061206d617472697820616e6420 61206d6170206d61747269782e20486f>100 261.6 R<7765>-.25 E -.15<7665>-.25 G -.4<722c>.15 G F2<6d6378>3.424 E F0 .523 <77696c6c20636f6e7374727563742061206e65>3.023 F 3.023<776d>-.25 G .523 <617472697820616e64206c6561>-3.023 F .823 -.15<76652074>-.2 H<6865>.15 E .002<6f726967696e616c206d617472697820746f206265206d617070656420616c6f6e 652e205768656e206465616c696e6720776974682068756765206d617472696365732c20 636f6e736964657261626c652067>100 273.6 R .003<61696e7320696e206566>-.05 F<8c2d>-.25 E<6369656e63>100 285.6 Q 4.082<796d>-.15 G 1.582<656d6f7279 2d7769736520616e642074696d652d776973652063616e206265206163686965>-4.082 F -.15<7665>-.25 G 4.082<6462>.15 G 4.081<7964>-4.082 G 1.581 <6f696e6720746865206d617070696e6720696e2d706c6163652e>-4.081 F 1.581 <54686973206973>6.581 F .011<77686174206d63786d617020646f65732e20496e20 746865206675747572652c206974732066756e6374696f6e616c697479206d6179206265 20656d62656464656420696e>100 297.6 R F2<6d6378>2.511 E F0 .012 <77697468206e65>2.512 F 2.512<776d>-.25 G .012<6378206f706572>-2.512 F <2d>-.2 E<61746f72732e>100 309.6 Q<546865207370656369616c2070726f706572 74696573206f662061206d6170206d617472697820617265>100 333.6 Q 10<8354> 106.5 357.6 S<686520636f6c756d6e20646f6d61696e20616e6420726f>-10 E 2.5 <7764>-.25 G <6f6d61696e20617265206f66207468652073616d652063617264696e616c6974792e> -2.5 E 10<8345>106.5 369.6 S<61636820636f6c756d6e206861732065>-10 E <786163746c79206f6e6520656e7472792e>-.15 E 10<8345>106.5 381.6 S <61636820726f>-10 E 2.5<7764>-.25 G<6f6d61696e20696e6465>-2.5 E 2.5 <786f>-.15 G<636375727320696e2065>-2.5 E <786163746c79206f6e6520636f6c756d6e2e>-.15 E .686<54686573652070726f7065 727469657320696d706c79207468617420746865206d61747269782063616e2062652075 7365642061732061206d61702066726f6d2074686520636f6c756d6e20646f6d61696e20 6f6e746f20746865>100 405.6 R<726f>100 417.6 Q 2.5<7764>-.25 G 2.5 <6f6d61696e2e20416e>-2.5 F -.15<6578>2.5 G <616d706c65206d6170206d617472697820697320666f756e6420696e20746865>.15 E F2<4558414d504c4553>2.5 E F0<53656374696f6e2e>2.5 E F1<4f5054494f4e53>20 434.4 Q F2<2d6f>100 446.4 Q F0<666e616d652028>2.5 E F3 <6f7574707574208c6c65>A F0<29>A<4f7574707574208c6c652e>120 458.4 Q F2 <2d696d78>100 482.4 Q F0<666e616d652028>2.5 E F3<696e707574208c6c65>A F0 <29>A<496e707574208c6c652e>120 494.4 Q F2<2d6d6170>100 518.4 Q F0 <666e616d652028>2.5 E F3 -.45<726f>C<772f636f6c206d6170208c6c6529>.45 E F0<29>A F2<2d726d6170>100 530.4 Q F0<666e616d652028>2.5 E F3 -.45<726f>C 2.5<776d>.45 G<6170208c6c65>-2.5 E F0<29>A F2<2d636d6170>100 542.4 Q F0 <666e616d652028>2.5 E F3<636f6c756d6e206d6170208c6c65>A F0<29>A F2 <2d6d617069>100 554.4 Q F0<666e616d652028>2.5 E F3 -.45<726f>C <772f636f6c206d6170208c6c65202875736520696e>.45 E<766572>-.4 E<736529> -.1 E F0<29>A F2<2d726d617069>100 566.4 Q F0<666e616d652028>2.5 E F3 -.45<726f>C 2.5<776d>.45 G<6170208c6c202875736520696e>-2.5 E<766572>-.4 E<736529>-.1 E F0<29>A F2<2d636d617069>100 578.4 Q F0<666e616d652028>2.5 E F3<636f6c756d6e206d6170208c6c202875736520696e>A<766572>-.4 E<736529> -.1 E F0<29>A<446966>120 590.4 Q<666572656e742077>-.25 E <61797320746f2073706563696679206d6170208c6c65732e>-.1 E F2<2d6d616b>100 614.4 Q<652d6d6170>-.1 E F0<28>2.5 E F3 <6f7574707574206d6170208c6c65206e616d65>A F0<29>A F2<2d6d616b>100 626.4 Q<652d6d617063>-.1 E F0<28>2.5 E F3 <6f7574707574206d6170208c6c65206e616d65>A F0<29>A F2<2d6d616b>100 638.4 Q<652d6d617072>-.1 E F0<28>2.5 E F3 <6f7574707574206d6170208c6c65206e616d65>A F0<29>A .428<47656e6572617465 2061206d61702074686174206d617073207468652073706563698c656420646f6d61696e 206f6e746f2074686520617070726f7072696174652063616e6f6e6963616c20646f6d61 696e20616e64>120 650.4 R <777269746520746865206d6170206d617472697820746f208c6c652e>120 662.4 Q F2 <2d636d756c>100 686.4 Q F0 2.5<6128>2.5 G F3<636f6566>-2.5 E <8c6369656e74>-.18 E F0<29>A F2<2d637368696674>100 698.4 Q F0 2.5<6228> 2.5 G F3<7472>-2.5 E<616e736c617465>-.15 E F0<29>A .698 <5468657365206f7074696f6e73206861>120 710.4 R .998 -.15<76652061>-.2 H -.25<6666>.15 G .698<656374206966206e656974686572206120636f6c756d6e206d 6170208c6c65206e6f7220636f6c756d6e2063616e6f6e698c636174696f6e2069732073 706563692d>.25 F<8c65642e20496620616e>120 722.4 Q 2.5<796f>-.15 G 2.5 <6674>-2.5 G<6865208c727374207477>-2.5 E 2.5<6f6f>-.1 G <7074696f6e7320697320757365642c20636f6c756d6e20696e6469636573>-2.5 E/F4 10/Courier@0 SF<69>2.5 E F0<617265206d617070656420746f>2.5 E F4 <612a692b62>2.5 E F0<2e>A<6d63786d61702031322d313335>20 768 Q <3134204d61792032303132>142.065 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 140.675<6d63786d61702831292055534552>20 48 R 143.175<434f4d4d414e4453206d63786d6170283129>2.5 F/F1 10/Times-Bold@0 SF <2d726d756c>100 84 Q F0 2.5<6328>2.5 G/F2 10/Times-Italic@0 SF<636f6566> -2.5 E<8c6369656e74>-.18 E F0<29>A F1<2d727368696674>100 96 Q F0 2.5 <6428>2.5 G F2<7472>-2.5 E<616e736c617465>-.15 E F0<29>A 1.056 <5468657365206f7074696f6e73206861>120 108 R 1.356 -.15<76652061>-.2 H -.25<6666>.15 G 1.056<656374206966206e656974686572206120726f>.25 F 3.556 <776d>-.25 G 1.056<6170208c6c65206e6f7220726f>-3.556 F 3.556<7763>-.25 G 1.056<616e6f6e698c636174696f6e2069732073706563698c65642e204966>-3.556 F <616e>120 120 Q 2.5<796f>-.15 G 2.5<6674>-2.5 G<6865208c727374207477> -2.5 E 2.5<6f6f>-.1 G<7074696f6e7320697320757365642c20696e6469636573> -2.5 E/F3 10/Courier@0 SF<69>2.5 E F0<617265206d617070656420746f>2.5 E F3<632a692b64>2.5 E F0<2e>A F1<2d6d756c>100 144 Q F0 2.5<6528>2.5 G F2 <636f6566>-2.5 E<8c6369656e74>-.18 E F0<29>A F1<2d7368696674>100 156 Q F0 2.5<6628>2.5 G F2<7472>-2.5 E<616e736c617465>-.15 E F0<29>A .53 <49662061206d6170208c6c652069732073706563698c656420666f722061206769>120 168 R -.15<7665>-.25 G 3.03<6e64>.15 G .53<6f6d61696e2c206e656974686572 2061206d6170208c6c65206e6f722063616e6f6e698c636174696f6e2069732073706563 692d>-3.03 F<8c65642e20496620616e>120 180 Q 2.5<796f>-.15 G 2.5<6674> -2.5 G<6865208c727374207477>-2.5 E 2.5<6f6f>-.1 G <7074696f6e7320697320757365642c2074686520696e6469636573>-2.5 E F3<69>2.5 E F0<77696c6c206265206d617070656420746f>2.5 E F3<652a692b66>2.5 E F0<2e> A F1<2d746162>100 204 Q F0<666e616d652028>2.5 E F2 -.37<7265>C <61642028616e64206d61702920746162208c6c65>.37 E F0<29>A <54686973206f7074696f6e20726571756972657320746865>120 216 Q F1<2d6d6170> 2.5 E F0<6f7074696f6e2e>2.5 E F1<6d63786d6170>2.5 E F0<77696c6c206f7574 70757420746865206d6170706564207461622064658c6e6974696f6e2e>2.5 E/F4 10.95/Times-Bold@0 SF<4558414d504c4553>20 232.8 Q F0 1.95 <546865206d61747269782062656c6f>100 244.8 R 4.45<7768>-.25 G 1.95 <6173207477>-4.45 F 4.45<6f63>-.1 G 1.95<616e6f6e6963616c20646f6d61696e 7320776869636820617265206964656e746963616c2e>-4.45 F 1.95 <49742064656e6f7465732061206d6170206f6620746865>6.95 F .001<63616e6f6e69 63616c20646f6d61696e206f6e746f20697473656c662c20696e207768696368206e6f64 6520302069732072656c6162656c656420746f20382c206e6f646520312069732072656c 6162656c656420746f20352c206574206365746572612e>100 256.8 R F3 <286d636c686561646572>100 280.8 Q<6d636c74797065206d6174726978>100 292.8 Q<64696d656e73696f6e73203132783132>100 304.8 Q<29>100 316.8 Q <286d636c6d6174726978>100 328.8 Q<626567696e>100 340.8 Q 12<303824>100 352.8 S 12<313524>100 364.8 S 12<323324>100 376.8 S 12<333224>100 388.8 S 12<343424>100 400.8 S 12<353624>100 412.8 S 12<363724>100 424.8 S 12 <373924>100 436.8 S 12<383124>100 448.8 S 12<3931>100 460.8 S 6<3024>-12 G<31302031312024>100 472.8 Q<31312030>100 484.8 Q<24>12 E<29>100 496.8 Q F4 -.548<4155>20 525.6 S<54484f52>.548 E F0<5374696a6e2076>100 537.6 Q <616e20446f6e67656e2e>-.25 E F4<53454520414c534f>20 554.4 Q F1 <6d6378696f283529>100 566.4 Q F0<2c>A F1<6d6378283129>2.872 E F0<2c>A F1 <6d637873756273283129>2.872 E F0 2.872<2c61>C<6e64>-2.872 E F1 <6d636c66616d696c79283729>2.872 E F0 .372<666f7220616e206f>2.872 F -.15 <7665>-.15 G<72766965>.15 E 2.873<776f>-.25 G 2.873<6661>-2.873 G .373 <6c6c2074686520646f63756d656e746174696f6e20616e64>-2.873 F <746865207574696c697469657320696e20746865206d636c2066>100 578.4 Q <616d696c792e>-.1 E<6d63786d61702031322d313335>20 768 Q <3134204d61792032303132>142.065 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mclcm.txt0000644000402500021140000002634511754271043011710 00000000000000mclcm(1) USER COMMANDS mclcm(1) NAME mclcm - hierarchical clustering of graphs with mcl SYNOPSIS mclcm <-|fname> [mclcm-options] [-- "mcl options"*] mclcm <-|fname> -a "-I 4 --shadow=vl" mclcm <-|fname> -a "-I 3" -- "-I 5" mclcm <-|fname> -a "-I 3" -b1 "" -- "-ph 3 --shadow=vl -I 5" mclcm <-fname> [--contract (contraction mode)] [--dispatch (dispatch mode)] [--integrate (integrate mode)] [--subcluster (subcluster mode)] [-a (shared mcl options)] [-b1 (dedicated base 1 mcl options)] [-b2 (dedicated base 2 mcl options)] [-tf spec (apply tf-spec to input matrix)] [-c (input clustering)] [-n (iteration limit)] [--root (ensure universe root clustering)] [-cone (nested cluster stack file)] [-stack (expanded cluster stack file)] [-coarse (coarsened graphs file)] [-write (stack,cone,coarse,steps)] [-write-base (write base matrix)] [-stem (prefix for all outputs)] [--mplex=y/n (write clusterings separately)] [-annot str (dummy annotation option)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)] [-q spec (log levels)] [-z (show default shared options)] [-- "mcl options"*] DESCRIPTION The mclcm options may be followed by a number of trailing arguments. The trailing arguments should be separated from the mclcm options by the separator --. Normally each trailing argument should consist of a set of zero, one, or more mcl arguments enclosed in quotes or double quotes to group them together. These arguments are passed to the successive stages of hierarchical clustering. They are combined with the default options. If an option is specified both in the default options list and in a trailing options list the latter specification overrides the for- mer. When the --integrate option is specified the trailing arguments must be names of files containing mcl clusterings; see further below. mclcm has four major modes of operation, namely contraction (default), integration, dispatch, and subcluster. Each mode is described a little below. Note though that dispatch mode is not the best mode to use for hierarchical clustering. It is mostly useful to generate multiple mcl clusterings in a single run. In all modes mclcm will generate a file, by default called mcl.cone. This is a representation of a hierarchical clustering that is particular to mcl. It can be converted to newick format like this: mcxdump -imx-tree mcl.cone --newick -o NEWICKFILE OR mcxdump -imx-tree mcl.cone --newick -o NEWICKFILE -tab TABFILE In the last example, TABFILE should be a file containing a mapping from mcl labels to application labels. Refer to mcxio(5) for more information about tab files and mcl input/ouput formats. OPTIONS --contract (repeated contraction mode) This is the default mode of operation. At each successive step of constructing the hierarchy on top of the first level mcl clustering, mclcm uses a matrix derived from the input matrix and the last com- puted clustering to compute a contracted graph. The contracted graph is a graph where the nodes represent the clusters of the last cluster- ing. The matrix derived from the input graph that is used to construct the contracted graph is called the base matrix. The base matrix can be either the start matrix or the expansion matrix. The start matrix is the input matrix after transformations have been applied to it (if any). The expansion matrix is the first expanded matrix of some mcl process applied to the input graph. By default the base matrix is constructed from either the start matrix or the expansion matrix obtained from the first mcl process. It is possible to use a start matrix derived from special purpose mcl trans- formation parameters (such as -ph and -tf) or an expansion matrix derived from a special purpose mcl process. The -b1 and -b2 parame- ters provide the interfaces to this functionality. You are advised to start with a high inflation value for the input graph and to use shadowing, e.g. include --shadow=vl in the -a argu- ment. This generally leads to hierarchies that are better balanced. Shadowing is a transformation where nodes are added to the graph, pre- venting relatively distant nodes from unwanted chaining. For more information refer to the mcl manual. The invocations in SYNOPSIS are a good starting point. --dispatch (different mcl processes) In this mode each trailing argument is specified as a set of options to pass to an mcl process. For each trailing argument an mcl process is thus computed. The set of resulting clusterings is integrated into a hierarchy. --integrate (existing clusterings) This mode is similar to dispatch mode. The difference is that with this option mclcm simply integrates a set of already existing cluster- ings. Each trailing argument must be the name of a file containing a clustering. The set of clusterings thus specified is integrated into a hierarchy. --subcluster (repeated sub-clustering) In this mode each trailing argument specifies a set of options to pass to an mcl process. The second clustering process is applied to the graph of components induced by the first clustering, resulting in a further subdivision of the first clustering. This approach is repeated with each further trailing argument. With this approach, the first clustering will be the most coarse clustering. Hence, subsequent trailing arguments will typically specify increasingly higher infla- tion values, pre-inflation values, and optionally more stringent transformation parameters in order to achieve further subdivsions. -a (shared mcl options) Use this to change and/or set the default mcl options for all itera- tions. Use quotes if necessary. Example of usage: -a "-I 5". -b1 (dedicated base 1 mcl options) This will apply the mcl options opts to the input matrix. The result- ing start matrix is used as the base matrix for constructing con- tracted graphs. -b2 (dedicated base 2 mcl options) This will apply the mcl options opts to the input matrix and compute the first iterand of the corresponding mcl process. The first iterand, aka the expansion matrix, is used as the base matrix for constructing contracted graphs. -tf (transform input matrix values) Transform the input matrix values according to the syntax described in mcxio(5). -c (input clustering) The hierarchical clustering process will be kicked off by the cluster- ing found in . -n (iteration limit) This puts an upper bound to the number of contractions that will be performed. --root (ensure universe root clustering) In case the graph consists of different connected components, the last clustering computed by the mclcm process will correspond with those connected components. This option simply adds an artificial clustering where all nodes have been joined into a single cluster. -cone (nested cluster stack file) File to write the nested cluster stack to. The nested cluster stack contains a sequence of clusterings, each written as an MCL matrix. The first (bottom) clustering is a clustering of the nodes in the input graph. Each subsequent clustering is a clustering where the nodes are the clusters of the previous clustering. mcxdump can dump this format if the file name is given as the -imx-stack option. The explanation for the cone/stack discrepancy is simple. To mcxdump the contents are simply a stack of matrices. It does not care whether the stack is cone shaped, cylindrical, or yet another shape. -stack (expanded cluster stack file) File to write the expanded cluster stack to. The expanded cluster stack is similar to the nested cluster stack except that each cluster lists all the nodes in the input graph it contains. mcxdump can dump this format if the file name is given as the -imx-stack option. -coarse (coarsened graphs file) File to write the sequence of coarsened graphs to. Each clustering induces a coarsened graph where the nodes represent the clusters and an edge between two nodes represents the connectivity between the cor- responding two clusters. The computation of this connectivity takes into account all edges between the two clusters in in the original graph. -write (select output modes) Use this option to explicitly specify all of the output types you want written in a comma-separated string. may contain any of the strings stack, cone, coarse, steps. The current default is to write all of these except coarse. The latter dumps the intermediate coars- ened (aka contracted) graphs to a single file. -write-base (write base matrix) Write the base matrix to file. This can be useful for debugging expec- tations. -stem (prefix for all outputs) All output files share the same prefix. The default is mcl and can be changed with this option. --mplex=y/n (write clusterings separately) If turned on each clustering is written in a separate file. The first clustering is written to the file .3 where is determined by the -stem option. For each subsequent clustering the index is incremented by two, so clusterings are written to files for which the name ends with an odd index. -annot str (dummy annotation option) mclcm writes the command line with which it was invoked to the output file (either of the cone or stack files). Use this option to include any additional information. mclcm does nothing with this option except copying it as just described. -q spec (log levels) Set the quiet level. Read tingea.log(7) for syntax and semantics. -z (show default shared options) Show the default mcl options. These are used for each mcl invocation as successively applied to the input graph and succeeding contracted graphs. AUTHOR Stijn van Dongen. SEE ALSO mclfamily(7) for an overview of all the documentation and the utilities in the mcl family. mclcm 12-135 14 May 2012 mclcm(1) mcl-12-135/doc/clmmeet.azm0000644000402500021140000000313311322637753012206 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm meet} {html_title}{The clm meet manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{clm meet}{compute the intersection of a set of clusterings.} \disclaim_clm{meet} \sec{synopsis}{SYNOPSIS} \par{ \clm{meet} \synoptopt{-o}{fname}{output file name} \stdsynopt + } \sec{description}{DESCRIPTION} \par{ \clm{meet} computes the intersection of a set of clusterings, that is, the largest clustering that is a subclustering of all the clusterings in the set. It stores the intersection (or meet) in the argument to the \genopt{-o} flag, which must be the first option given. All remaining arguments are interpreted as names of files containing clusterings in mcl format (see \mysib{mcxio}), which must all pertain to a set of the same cardinality. } \par{ This utility can be useful in measuring (in conjunction with \clmref{dist}) the consistency of a set of clusterings at different levels of granularity \- if the meet of all those clusterings is close to being a subclustering of each of them, consistency is good. See \clmref{dist} for an example. } \sec{options}{OPTIONS} \'begin{itemize}{\mcx_itemopts} \item{\defopt{-o}{fname}{output file name}} \stddefopt \end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/mcxassemble.ps0000644000402500021140000013071311754271044012717 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:16 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 5 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 121.235<6d6378617373656d626c652831292055534552> 20 48 R 123.735<434f4d4d414e4453206d6378617373656d626c65283129>2.5 F/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0 <6d6378617373656d626c6520ad207472616e73666f726d207261>100 96 Q 2.5<7763> -.15 G<6f6f6363757272656e6365206461746120746f206d636c206d61747269782066 6f726d61742e>-2.5 E F1<53594e4f50534953>20 112.8 Q/F2 10/Times-Bold@0 SF .087<6d6378617373656d626c65202d62>100 124.8 R F0 .087<626173652028>2.587 F/F3 10/Times-Italic@0 SF .087<62617365206e616d65>B F0<29>A F2<5b2d6f> 2.587 E F0 .087<666e616d652028>2.587 F F3 .087 <777269746520746f208c6c6520666e616d65>B F0<29>A F2 2.587<5d5b>C <2d2d77726974652d62696e617279>-2.587 E F0<28>2.587 E F3 .086 <7772697465206f7574707574>B 2.059<696e2062696e61727920666f726d6174>100 136.8 R F0<29>A F2 4.559<5d5b>C<2d2d6d6170>-4.559 E F0<28>4.559 E F3 2.059<6170706c7920626173652e6d6170>B F0<29>A F2 4.559<5d5b>C <2d7261772d7466>-4.559 E F0<28>4.559 E F3 2.059<6170706c79207472>B 2.059 <616e73666f726d207370656320746f20696e707574>-.15 F F0<29>A F2 4.56<5d5b> C<2d72>-4.56 E<76>-.1 E F0 .863<4d4f44452028>100 148.8 R F3 -.37<7265>C .863<70656174656420766563746f72>.37 F<73>-.1 E F0<29>A F2 3.363<5d5b>C <2d72>-3.363 E<65>-.18 E F0 .863<4d4f44452028>3.363 F F3 -.37<7265>C .863<70656174656420656e7472696573>.37 F F0<29>A F2 3.363<5d5b>C<2d7269> -3.363 E F0 .862<4d4f44452028>3.363 F F3 .862<616464696e67206d697272>B .862<6f7220696d61>-.45 F -.1<6765>-.1 G F0<29>.1 E F2<5d>A<5b2d72>100 160.8 Q F0 3.673<4d4f44452028>6.173 F F3 -.37<7265>C 3.673 <70656174656420656e74726965732f766563746f72>.37 F<732f696d61>-.1 E -.1 <6765>-.1 G<73>.1 E F0<29>A F2 6.173<5d5b>C<2d70726d2d7466>-6.173 E F0 <28>6.173 E F3 3.673<6170706c79207472>B 3.674 <616e73666f726d207370656320746f207072696d617279>-.15 F<6d6174726978>100 172.8 Q F0<29>A F2 2.5<5d5b>C<2d73796d2d7466>-2.5 E F0<28>2.5 E F3 <6170706c79207472>A <616e73666f726d207370656320746f2073796d6d657472698c6564206d6174726978> -.15 E F0<29>A F2 2.5<5d5b>C<2d71>-2.5 E F0<28>2.5 E F3 <7175696574206d6f6465>A F0<29>A F2<5d>A F0 1.027 <546865206f7074696f6e732061626f>100 196.8 R 1.326 -.15<76652065>-.15 H 1.026<6d626f64792074686520646566>.15 F 1.026 <61756c74207365747570207768656e207573696e67206d6378617373656d626c652e> -.1 F 1.026<546865726520617265206d616e>6.026 F 3.526<796d>-.15 G<6f7265> -3.526 E .373<6f7074696f6e73207768696368206d6f73746c792070726f>100 208.8 R .373<7669646520737562746c7920646966>-.15 F .373<666572656e742077>-.25 F .373<617973206f6620646f696e6720696e7075742f6f75747075742c207365742077> -.1 F .373<61726e696e67206c65>-.1 F -.15<7665>-.25 G .374<6c732c206f72> .15 F<7265>100 220.8 Q 1.165<67756c61746520686f>-.15 F 3.665<7772>-.25 G 1.165<6570656174656420656e747269657320616e642076>-3.665 F 1.165 <6563746f72732073686f756c6420626520747265617465642e>-.15 F 1.164 <5468652066756c6c206c697374206f66206f7074696f6e732069732073686f>6.165 F <776e>-.25 E<62656c6f>100 232.8 Q 2.884<772e2052656164>-.25 F F2 <4445534352495054494f4e>2.884 E F0 .384<666f72206c6561726e696e672061626f 7574206d6378617373656d626c6520696e7075742f6f757470757420616e642074686520 66756e6374696f6e616c2d>2.884 F<6974792069742070726f>100 244.8 Q <76696465732e>-.15 E F2<4e4f>100 268.8 Q<5445>-.4 E F0 .293 <4173206f662072656c656173652030352d333134>100 280.8 R F2<6d636c283129> 2.793 E F0 .293<69732061626c6520746f20636c7573746572206c6162656c2d747970 6520696e707574206f6e20746865208d792e20496e206d6f73742063617365732c207468 69732077696c6c>2.793 F .633<626520737566>100 292.8 R .633 <8c6369656e742e20416c7465726e617469>-.25 F -.15<7665>-.25 G<6c79>.15 E <2c>-.65 E F2<6d63786c6f6164283129>3.134 E F0 .634<63616e20626520757365 6420746f206d6170206c6162656c2d7479706520696e707574206f6e746f206d636c206d 617472696365732e>3.134 F<436f6e73657175656e746c79>100 304.8 Q 3.449 <2c74>-.65 G .949<6865726520617265206c696b>-3.449 F .949<656c79206665> -.1 F .948<776572207363656e6172696f73206e6f>-.25 F -.1<7761>-.25 G .948 <64617973207768657265>.1 F F2<6d6378617373656d626c65>3.448 E F0 .948 <697320746865206265737420736f6c752d>3.448 F <74696f6e2e20436f6e7369646572208c7273742077686574686572>100 316.8 Q F2 <6d636c>2.5 E F0<696e206c6162656c206d6f6465206f72>2.5 E F2 <6d63786c6f6164>2.5 E F0<63616e20646f20746865206a6f622061732077656c6c2e> 2.5 E F2 1.482<6d6378617373656d626c65205b2d62>100 340.8 R F0 1.482 <626173652028>3.982 F F3 1.482<62617365206e616d65>B F0<29>A F2 3.982 <5d5b>C<2d686472>-3.982 E F0 1.482<666e616d652028>3.982 F F3 -.37<7265>C 1.482<616420686561646572208c6c65>.37 F F0<29>A F2 3.983<5d5b>C<2d726177> -3.983 E F0 1.483<666e616d652028>3.983 F F3 -.37<7265>C 1.483<61642072> .37 F<6177>-.15 E<8c6c65>100 352.8 Q F0<29>A F2 2.894<5d5b>C<2d2d6d6170> -2.894 E F0<28>2.894 E F3 .394<6170706c7920626173652e6d6170>B F0<29>A F2 2.894<5d5b>C<2d2d636d6170>-2.894 E F0<28>2.894 E F3 .394 <6170706c7920626173652e636d6170>B F0<29>A F2 2.894<5d5b>C<2d2d726d6170> -2.894 E F0<28>2.894 E F3 .394<6170706c7920626173652e726d6170>B F0<29>A F2 2.894<5d5b>C<2d6d6170>-2.894 E F0 1.74<666e616d652028>100 364.8 R F3 1.74<6170706c7920666e616d65>B F0<29>A F2 4.241<5d5b>C<2d726d6170>-4.241 E F0 1.741<666e616d652028>4.241 F F3 1.741<6170706c7920666e616d65>B F0 <29>A F2 4.241<5d5b>C<2d636d6170>-4.241 E F0 1.741<666e616d652028>4.241 F F3 1.741<6170706c7920666e616d65>B F0<29>A F2 4.241<5d5b>C<2d746167> -4.241 E F0<746167>4.241 E<28>100 376.8 Q F3 1.278 <6170706c7920626173652e7461>B<67>-.1 E F0<29>A F2 3.778<5d5b>C <2d72746167>-3.778 E F0 1.278<7461672028>3.778 F F3 1.278 <6170706c7920626173652e7461>B<67>-.1 E F0<29>A F2 3.778<5d5b>C <2d63746167>-3.778 E F0 1.277<7461672028>3.777 F F3 1.277 <6170706c7920626173652e7461>B<67>-.1 E F0<29>A F2 3.777<5d5b>C<2d736b77> -3.777 E F0 1.277<666e616d652028>3.777 F F3<7772697465>A<736b>100 388.8 Q 2.655 -.15<6577206d>-.1 H<6174726978>.15 E F0<29>A F2 4.855<5d5b>C <2d70726d>-4.855 E F0 2.355<666e616d652028>4.855 F F3 2.355 <7772697465207072696d6172792072>B 2.356<6573756c74206d6174726978>-.37 F F0<29>A F2 4.856<5d5b>C<2d2d736b77>-4.856 E F0<28>4.856 E F3 2.356 <777269746520626173652e736b77>B F0<29>A F2 4.856<5d5b>C<2d2d70726d> -4.856 E F0<28>100 400.8 Q F3 1.37<777269746520626173652e70726d>B F0<29> A F2 3.87<5d5b>C<2d786f>-3.87 E F0 1.37<7375662028>3.87 F F3 1.37 <777269746520626173652e737566>B F0<29>A F2 3.87<5d5b>C<2d6f>-3.87 E F0 1.37<666e616d652028>3.87 F F3 1.37<777269746520746f208c6c6520666e616d65> B F0<29>A F2 3.87<5d5b>C<2d6e>-3.87 E F0<28>3.87 E F3 1.37 <646f206e6f74207772697465>B .367 <64656661756c742073796d6d657472697a65642072>100 412.8 R<6573756c74>-.37 E F0<29>A F2 2.867<5d5b>C<2d69>-2.867 E F0<28>2.867 E F3 -.37<7265>C .367<6164206672>.37 F .367<6f6d2073696e676c652064617461208c6c65>-.45 F F0<29>A F2 2.867<5d5b>C<2d646967697473>-2.867 E F0 .367<696e742028>2.867 F F3 .367<646967697473207769647468>B F0<29>A F2 2.868<5d5b>C<2d73>-2.868 E F0<28>2.868 E F3 -.15<6368>C<6563>.15 E<6b>-.2 E .55 <666f722073796d6d65747279>100 424.8 R F0<29>A F2 3.05<5d5b>C <2d7261772d7466>-3.05 E F0<28>3.05 E F3 .55<6170706c79207472>B .55 <616e73666f726d207370656320746f20696e707574>-.15 F F0<29>A F2 3.05<5d5b> C<2d72>-3.05 E<76>-.1 E F0 .55<3c6d6f64653e2028>3.05 F F3 .55 <616374696f6e20666f722072>B .55<65706561746564207665632d>-.37 F<746f72> 100 436.8 Q<73>-.1 E F0<29>A F2 5.15<5d5b>C<2d72>-5.15 E<65>-.18 E F0 2.651<3c6d6f64653e2028>5.15 F F3 2.651<616374696f6e20666f722072>B 2.651 <6570656174656420656e7472696573>-.37 F F0<29>A F2 5.151<5d5b>C<2d7269> -5.151 E F0 2.651<3c6d6f64653e2028>5.151 F F3 2.651 <616464696e67206d697272>B 2.651<6f7220696d61>-.45 F -.1<6765>-.1 G F0 <29>.1 E F2 5.151<5d5b>C<2d72>-5.151 E F0 1.744<3c6d6f64653e2028>100 448.8 R F3 1.744<73616d6520666f7220656e747269657320616e6420766563746f72> B<73>-.1 E F0<29>A F2 4.243<5d5b>C<2d70726d2d7466>-4.243 E F0<28>4.243 E F3 1.743<6170706c79207472>B 1.743 <616e73666f726d207370656320746f207072696d617279206d6174726978>-.15 F F0 <29>A F2<5d>A<5b2d73796d2d7466>100 460.8 Q F0<28>2.97 E F3 .47 <6170706c79207472>B .47 <616e73666f726d207370656320746f2073796d6d657472698c6564206d6174726978> -.15 F F0<29>A F2 2.97<5d5b>C<2d2d71756965742d72>-2.97 E<65>-.18 E F0 <28>2.97 E F3 .47<717569657420666f722072>B .47 <6570656174656420656e7472696573>-.37 F F0<29>A F2<5d>A <5b2d2d71756965742d72>100 472.8 Q<76>-.1 E F0<28>2.676 E F3 .176 <717569657420666f722072>B .176<6570656174656420766563746f72>-.37 F<73> -.1 E F0<29>A F2 2.676<5d5b>C<2d71>-2.676 E F0<28>2.675 E F3 .175 <7468652074776f2061626f>B .175<766520636f6d62696e6564>-.1 F F0<29>A F2 2.675<5d5b>C<2d68>-2.675 E F0<28>2.675 E F3 .175 <7072696e742073796e6f707369732c2065>B<786974>-.2 E F0<29>A F2<5d>A <5b2d2d617072>100 484.8 Q<6f706f73>-.18 E F0<28>2.5 E F3 <7072696e742073796e6f707369732c2065>A<786974>-.2 E F0<29>A F2 2.5<5d5b>C <2d2d76>-2.5 E<657273696f6e>-.1 E F0<28>2.5 E F3<7072696e7420766572>A <73696f6e2c2065>-.1 E<786974>-.2 E F0<29>A F2<5d>A F1 <4445534352495054494f4e>20 501.6 Q F2<6d6378617373656d626c65>100 513.6 Q F0 .143<656e61626c65732065617379206d6174726978206372656174696f6e2066726f 6d20616e20696e7465726d656469617465207261>2.643 F 2.643<776d>-.15 G .143 <617472697820666f726d617420746861742063616e206561732d>-2.643 F<696c7920 626520636f6e73747275637465642066726f6d2061206f6e652d706173732d7061727365 206f6620636f6f6363757272656e636520646174612e2054686520626173696320736574 757020697320617320666f6c6c6f>100 525.6 Q<77732e>-.25 E 10<8350>106.5 549.6 S <6172736520636f6f6363757272656e636520646174612066726f6d20736f6d652065> -10.15 E<787465726e616c20666f726d61742e>-.15 E 10<8354>106.5 561.6 S <72616e73666f726d20636f6f6363757272656e6365206461746120746f207261>-10.35 E 2.5<776d>-.15 G<636c206461746120617320796f752070617273652e>-2.5 E 10 <8357>106.5 573.6 S 2.224<68656e20646f6e652c207772697465206f757420726571 75697265642068656164657220616e6420646f6d61696e20696e666f726d6174696f6e20 746f2061207365706172617465208c6c652e20546865>-10 F <646f6d61696e20696e666f726d6174696f6e2063616e2062652062>120 585.6 Q <75696c7420647572696e67207468652070617273696e672073746167652e>-.2 E 10 <8355>106.5 597.6 S .188 <7365206d6378617373656d626c6520746f20636f6e73747275637420612076>-10 F .189<616c6964206d61747269782066726f6d20746865207261>-.25 F 2.689<7764> -.15 G .189 <61746120616e64207468652068656164657220696e666f726d6174696f6e2e>-2.689 F 10<834e>106.5 609.6 S .483<6f6465732063616e206f7074696f6e616c6c79206265 2072656c6162656c65642062792077726974696e672061207365706172617465206d6170 208c6c6520746f2062652072656164206279>-10 F F2<6d6378617373656d2d>2.983 E <626c65>120 621.6 Q F0 2.5<2c77>C<686963682074616b>-2.5 E <65732074686520666f726d206f6620612076>-.1 E <657279207468696e206d6174726978208c6c652e>-.15 E .57<546865206561736965 7374207468696e6720746f20646f20697320746f2067726f757020616c6c20696e707574 2f6f7574707574208c6c657320756e646572207468652073616d652062617365206e616d 652c20736179>100 645.6 R F2<62617365>2.5 E F0 3.07<2e41>C .046 <7374616e646172642077>100 657.6 R .046<6179206f662070726f63656564696e67 2c2077686963682077696c6c206c65616420746f206120636f6e63697365>-.1 F F2 <6d6378617373656d626c65>2.545 E F0 .045 <636f6d6d616e64206c696e652c206973206279206372652d>2.545 F 2.162 <6174696e672074686520696e707574208c6c6573>100 669.6 R F2 <626173652e726177>4.662 E F0<616e64>4.662 E F2<626173652e686472>4.662 E F0 4.662<2c61>C 2.162<6e64206f7074696f6e616c6c7920746865208c6c65>-4.662 F F2<626173652e6d6170>4.663 E F0 4.663<2e54>C 2.163<686520646566>-4.663 F<61756c74>-.1 E<62656861>100 681.6 Q .391<76696f7572206f66206d63786173 73656d626c65206973207468656e20746f20637265617465>-.2 F F2 <626173652e73796d>2.891 E F0 .39<61732074686520726573756c74696e67206d61 74726978208c6c652c20636f6e7461696e696e6720746865>2.891 F<73796d6d657472 697a6564206d617472697820636f6e73747275637465642066726f6d20746865207261> 100 693.6 Q 2.5<7769>-.15 G<6e7075742e>-2.5 E F2<4578616d706c65>100 717.6 Q F0<537570706f7365>100 729.6 Q/F4 10/Courier@0 SF <626c617374726573756c74>5.416 E F0 2.916 <69732061208c6c6520636f6e7461696e696e6720626c61737420726573756c74732e> 5.416 F 2.917<54686520666f6c6c6f>7.917 F 2.917<77696e67207477>-.25 F 5.417<6f63>-.1 G<6f6d6d616e6473>-5.417 E <6d6378617373656d626c652031322d313335>20 768 Q<3134204d61792032303132> 122.625 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 121.235<6d6378617373656d626c652831292055534552> 20 48 R 123.735<434f4d4d414e4453206d6378617373656d626c65283129>2.5 F<63 6f6e73747275637420616e206d636c206d6174726978208c6c652066726f6d2074686520 8c6c652e>100 84 Q/F1 10/Courier@0 SF<6d63786465626c617374202d2d73636f72 653d65202d2d736f72743d6120626c617374726573756c74>118 108 Q<6d6378617373 656d626c65202d6220626c617374726573756c74202d72206d6178202d2d6d6170>118 120 Q/F2 10/Times-Bold@0 SF<6d63786465626c617374>100 144 Q F0 1.489 <77696c6c2067656e657261746520746865208c6c6573>3.989 F F1 <626c617374726573756c742e686472>3.989 E F0<2c>A F1 <626c617374726573756c742e726177>3.989 E F0 3.988<2c61>C<6e64>-3.988 E F1 <626c61732d>3.988 E<74726573756c742e6d6170>100 156 Q F0 7.219<2e54>C <6865>-7.219 E F2<2d2d736f72743d61>4.719 E F0 2.219<6f7074696f6e2077696c 6c206372656174652061206d6170208c6c6520636f72726573706f6e64696e6720776974 6820616c7068616265746963>4.719 F 1.416<6f72646572696e672e20546865736520 8c6c6573206172652070726f636573736564206279>100 168 R F2 <6d6378617373656d626c65>3.915 E F0 1.415 <616e642069742077696c6c2067656e657261746520746865208c6c65>3.915 F F1 <626c61737472652d>3.915 E<73756c742e73796d>100 180 Q F0 2.986<2e54>C <6865>-2.986 E F2<2d72>2.986 E F0 .486<6f7074696f6e2074656c6c73>2.986 F F2<6d6378617373656d626c65>2.986 E F0 .486 <7468617420726570656174656420656e74726965732073686f756c64206265206d6178> 2.986 F .487<65643b20656163682074696d65>-.15 F<746865206c6172>100 192 Q <6765737420656e747279207365656e20746875732066>-.18 E <61722077696c6c2062652074616b>-.1 E<656e2e>-.1 E F2 <486561646572208c6c65>100 216 Q F0 .591<54686973208c6c6520636f6e7461696e 7320612068656164657220617320757375616c6c7920666f756e6420696e2067656e6572 6963206d636c206d6174726978208c6c65732c20692e652e207468652072657175697265 64>100 228 R/F3 10/Times-Italic@0 SF<686561646572>3.09 E F0 .964 <706172742c20616e64206f7074696f6e616c6c7920746865>100 240 R F3 <646f6d61696e>3.464 E F0 .964<70617274287329206966206e6f7420616c6c20646f 6d61696e73206172652063616e6f6e6963616c2e20526566657220746f>3.464 F F2 <6d6378696f283529>3.464 E F0<666f72>3.464 E 1.409 <6d6f726520696e666f726d6174696f6e2e>100 252 R 1.409<54686520646f6d61696e 20696e666f726d6174696f6e20696e2074686520686561646572208c6c652077696c6c20 6265207573656420746f207072652d636f6e7374727563742061>6.409 F<736b>100 264 Q<656c65746f6e206d617472697820616e6420746f2076>-.1 E <616c69646174652074686520656e747269657320696e20746865207261>-.25 E 2.5 <7764>-.15 G<617461208c6c6520617320746865>-2.5 E 2.5<798c>-.15 G <6c6c2074686520736b>-2.5 E<656c65746f6e206d61747269782e>-.1 E F2 <52617720696e7075742066>100 288 Q<6f726d6174>-.25 E F0 .088 <546865208c6c652066726f6d207768696368207261>100 300 R 2.588<7769>-.15 G .088<6e70757420697320726561642073686f756c64206861>-2.588 F .388 -.15 <76652074>-.2 H .088<6865207261>.15 F 2.588<7766>-.15 G .089 <6f726d61742061732064657363726962656420696e>-2.588 F F2 <6d6378696f283529>2.589 E F0 2.589<2e53>C<696d2d>-2.589 E .938<706c7920 7075743b206e6f206865616465722073706563698c636174696f6e2c206e6f20646f6d61 696e2073706563698c636174696f6e2c20616e64206e6f206d617472697820696e74726f 64756374696f6e2073796e746178206973>100 312 R<757365642e20546865208c6c65 206a75737420636f6e7461696e732061206c697374696e67206f662076>100 324 Q <6563746f72732e20416e2065>-.15 E <78616d706c6520667261676d656e742069732074686520666f6c6c6f>-.15 E <77696e673a>-.25 E F1 12<3234>100 348 S<3a302e333420313a322e383833382034 3a322e33323820313a342e32333820313a31322024>-12 E 12<3132>100 360 S <3a372e382024>-12 E 12<3231>100 372 S <3a302e303120343a32302e3320333a322024>-12 E F0 .47 <546865206c697374696e67206f662076>100 396 R .47<6563746f7273206e65656420 6e6f7420626520736f727465642c20616e64206e65697468657220646f657320612076> -.15 F .47<6563746f7220697473656c66206e65656420746f20626520736f72746564 202d20746865>-.15 F .127<6d636c2067656e65726963206d617472697820666f726d 61742069732061637475616c6c79206e6f7420646966>100 408 R .127 <666572656e7420696e207468697320726573706563742e>-.25 F .127 <467572746865726d6f72652c206475706c696361746520656e7472696573>5.127 F 1.158<616e64206475706c69636174652076>100 420 R 1.158 <6563746f72732061726520616c6c6f>-.15 F 3.658<7765642e2054686973>-.25 F 1.158<697320696e2066>3.658 F 1.158<616374206167>-.1 F 1.158 <61696e20616c6c6f>-.05 F 1.158 <77656420696e207468652067656e6572696320666f726d61742c2065>-.25 F <7863657074>-.15 E .448 <74686174207768657265206170706c69636174696f6e732065>100 432 R .448 <78706563742067656e6572696320666f726d61742077>-.15 F .447<61726e696e6773 2077696c6c2062652069737375656420616e64206475706c696361746520656e74726965 732077696c6c>-.1 F 1.166<6265206469737265>100 444 R -.05<6761>-.15 G <726465642e>.05 E F2<6d6378617373656d626c65>3.666 E F0<616c6c6f>3.666 E 1.166<777320637573746f6d697a61626c652062656861>-.25 F 1.166 <76696f757220646963746174696e6720686f>-.2 F 3.666<7774>-.25 G 3.666 <6f6d>-3.666 G<6572>-3.666 E 1.166<6765207265706561746564>-.18 F 2.5 <656e74726965732e205265666572>100 456 R<746f20746865>2.5 E F2<2d72>2.5 E <65>-.18 E F0<2c>A F2<2d72>2.5 E<76>-.1 E F0<2c>A F2<2d72>2.5 E F0 <6f7074696f6e732062656c6f>2.5 E<772e>-.25 E .033<5468652076>100 480 R .033<6563746f72732072656164206279>-.15 F F2<6d6378617373656d626c65>2.533 E F0 .033<646f206861>2.533 F .333 -.15<76652074>-.2 H 2.533<6f6d>.15 G .032<617463682074686520646f6d61696e732073706563698c656420696e2074686520 686561646572208c6c652e20546865>-2.533 F .312<6c656164696e6720696e6465> 100 492 R 2.812<7874>-.15 G .312 <6861742073706563698c65732074686520636f6c756d6e20696e6465>-2.812 F 2.812 <7868>-.15 G .313<617320746f2062652070726573656e7420696e2074686520636f6c 756d6e20646f6d61696e3b20616c6c2073756273652d>-2.812 F<7175656e7420696e64 696365732074686174207370656369667920636f6c756d6e20656e7472696573206861> 100 504 Q .3 -.15<76652074>-.2 H 2.5<6f62>.15 G 2.5<6570>-2.5 G <726573656e7420696e2074686520726f>-2.5 E 2.5<7764>-.25 G<6f6d61696e2e> -2.5 E F3 .658<4966206f6e6520636f6e636174656e617465732074686520636f6e74 656e7473206f662074686520686561646572208c6c6520616e6420746865206461746120 8c6c65>100 528 R F0 3.158<2c74>C .658<686520726573756c74206973>-3.158 F F3 .657<616c6d6f73742062>3.157 F .657<7574206e6f74>-.2 F<7175697465>100 540 Q F0 4.087<618c>4.087 G 1.588<6c6520636f6e7461696e696e672061206d6174 72697820696e2073796e746163746963616c6c7920636f7272656374206d636c2067656e 65726963206d617472697820666f726d61742e20546865207061727473>-4.087 F .119 <6d697373696e672061726520746865>100 552 R F1<286d636c6d6174726978>2.619 E F0 .119<696e74726f64756374696f6e20746f6b>2.619 F .119 <656e2c2028666f6c6c6f>-.1 F .118<7765642062792920746865>-.25 F F1 <626567696e>2.618 E F0<746f6b>2.618 E .118 <656e2c20616e642074686520636c6f732d>-.1 F<696e67>100 564 Q F1<29>2.5 E F0<746f6b>2.5 E<656e2e>-.1 E F2<4d6170208c6c65>100 588 Q F0<54686973208c 6c65206d75737420636f6e7461696e2061206d6170206d61747269782c20776869636820 69732061206d617472697820776974682074686520666f6c6c6f>100 600 Q <77696e672070726f706572746965733a>-.25 E 10<8354>106.5 624 S <686520636f6c756d6e20646f6d61696e20616e6420726f>-10 E 2.5<7764>-.25 G <6f6d61696e20617265206f66207468652073616d652063617264696e616c6974792e> -2.5 E 10<8345>106.5 636 S<61636820636f6c756d6e206861732065>-10 E <786163746c79206f6e6520656e7472792e>-.15 E 10<8345>106.5 648 S <61636820726f>-10 E 2.5<7764>-.25 G<6f6d61696e20696e6465>-2.5 E 2.5 <786f>-.15 G<636375727320696e2065>-2.5 E <786163746c79206f6e6520636f6c756d6e2e>-.15 E .344<537563682061206d617472 6978206973207573656420746f2072656c6162656c20746865206e6f6465732061732066 6f756e6420696e20746865207261>100 672 R 2.844<7764>-.15 G .344 <6174612e204120736974756174696f6e2074686174206d69676874206f63637572> -2.844 F .302<7768656e2070617273696e6720736f6d652065>100 684 R .302 <787465726e616c20666f726d61742028616e642070726f647563696e67207261>-.15 F 2.801<776d>-.15 G .301 <617472697820666f726d6174292c206973207468617420494427>-2.801 F 2.801 <7328>-.55 G .301<696e64696365732920617265>-2.801 F .927<68616e64656420 6f7574206f6e20746865208d7920647572696e67207468652070617273652e2041667465 7277>100 696 R .928<617264732c206f6e65206d61792077>-.1 F .928 <616e7420746f2072656c6162656c207468652049447320737563682074686174>-.1 F <746865>100 708 Q 2.528<7963>-.15 G .028<6f72726573706f6e64207769746820 616e20616c7068616265746963206c697374696e67206f6620746865207175616e746974 79207468617420697320726570726573656e74656420627920746865206e6f646520646f 6d61696e2c>-2.528 F .167<6f7220627920736f6d65206f7468657220736f72742063 7269746572696f6e2e2041206d6170208c6c65206973207468656e207479706963616c6c 792067656e6572617465642062792074686520706172736572>100 720 R 2.668<2c61> -.4 G 2.668<7374>-2.668 G .168<68617420697320746865>-2.668 F <6d6378617373656d626c652031322d313335>20 768 Q<3134204d61792032303132> 122.625 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 121.235<6d6378617373656d626c652831292055534552> 20 48 R 123.735<434f4d4d414e4453206d6378617373656d626c65283129>2.5 F .713<7574696c69747920696e2063686172>100 84 R .712 <6765206f6620746865204944732e204120736d616c6c2065>-.18 F .712<78616d706c 65206f662061206d6170208c6c6520666f72206120677261706820636f6e7461696e696e 67208c76>-.15 F 3.212<656e>-.15 G .712<6f646573206973>-3.212 F <74686520666f6c6c6f>100 96 Q<77696e673a>-.25 E/F1 10/Courier@0 SF <286d636c686561646572>100 120 Q<6d636c74797065206d6174726978>100 132 Q <64696d656e73696f6e7320357835>100 144 Q<29>100 156 Q <286d636c6d6174726978>100 168 Q<626567696e>100 180 Q 12<303424236d>100 192 S<6e6f>-12 E 12<3132242367>100 204 S<6869>-12 E 12<3231242364>100 216 S<6566>-12 E 12<333324236a>100 228 S<6b6c>-12 E 12<3430242361>100 240 S<6263>-12 E<29>100 252 Q F0 .748<5468697320636f72726573706f6e647320 746f20612072656c6162656c696e672073756368207468617420746865206173736f6369 6174656420737472696e67732077696c6c206265206f72646572656420616c7068616265 746963616c6c792e>100 276 R 1.039<4e6f7465207468617420636f6d6d656e747320 63616e206265207573656420746f206c696e6b20737472696e67206964656e74698c6572 73207769746820696e64696365732e2054686973206d6170208c6c65207361797320652e 672e>100 288 R .69<746861742074686520737472696e67206964656e74698c657220 226d6e6f2220697320726570726573656e74656420627920696e6465>100 300 R 3.19 <783069>-.15 G 3.19<6e74>-3.19 G .69<6865207261>-3.19 F 3.19<7764>-.15 G .69<6174612c20616e6420627920696e6465>-3.19 F 3.19<783469>-.15 G 3.19 <6e74>-3.19 G<6865>-3.19 E<6d6174726978206f7574707574206279>100 312 Q/F2 10/Times-Bold@0 SF<6d6378617373656d626c65>2.5 E F0<2e>A/F3 10.95 /Times-Bold@0 SF<4f5054494f4e53>20 328.8 Q F2<2d62>100 340.8 Q F0 <626173652028>2.5 E/F4 10/Times-Italic@0 SF<62617365206e616d65>A F0<29>A 1.291<42617365206e616d65206f66208c6c657320746f2062652070726f636573736564 20616e64206f75747075742e20526566657220746f>120 352.8 R F2 <4445534352495054494f4e>3.79 E F0<61626f>3.79 E 1.59 -.15<76652061>-.15 H 1.29<6e6420746865>.15 F <656e7472696573206f66206f74686572206f7074696f6e732062656c6f>120 364.8 Q <772e>-.25 E F2<2d686472>100 388.8 Q F0<666e616d652028>2.5 E F4 -.37 <7265>C<616420686561646572208c6c65>.37 E F0<29>A F2<2d726177>100 400.8 Q F0<666e616d652028>2.5 E F4 -.37<7265>C<61642072>.37 E<6177208c6c65>-.15 E F0<29>A .933<4578706c696369746c79207370656369667920746865206865616465 72208c6c6520616e64207468652064617461208c6c652028726174686572207468616e20 636f6e737472756374696e6720746865208c6c65206e616d6573>120 412.8 R <66726f6d20612062617365206e616d6520616e6420737566>120 424.8 Q<8c78>-.25 E<6573292e>-.15 E F2<2d2d6d6170>100 448.8 Q F0<28>2.5 E F4 <6170706c7920626173652e6d6170>A F0<29>A F2<2d2d636d6170>100 460.8 Q F0 <28>2.5 E F4<6170706c7920626173652e636d6170>A F0<29>A F2<2d2d726d6170> 100 472.8 Q F0<28>2.5 E F4<6170706c7920626173652e726d6170>A F0<29>A F2 <2d6d6170>100 484.8 Q F0<666e616d652028>2.5 E F4<6170706c7920666e616d65> A F0<29>A F2<2d726d6170>100 496.8 Q F0<666e616d652028>2.5 E F4 <6170706c7920666e616d65>A F0<29>A F2<2d636d6170>100 508.8 Q F0 <666e616d652028>2.5 E F4<6170706c7920666e616d65>A F0<29>A F2<2d746167> 100 520.8 Q F0<7461672028>2.5 E F4<6170706c7920626173652e7461>A<67>-.1 E F0<29>A F2<2d72746167>100 532.8 Q F0<7461672028>2.5 E F4 <6170706c7920626173652e7461>A<67>-.1 E F0<29>A F2<2d63746167>100 544.8 Q F0<7461672028>2.5 E F4<6170706c7920626173652e7461>A<67>-.1 E F0<29>A .208<4d6170206f7074696f6e732e>120 556.8 R F2<2d2d636d6170>2.708 E F0 .207<636f6d62696e6573207769746820746865>2.707 F F2<2d62>2.707 E F0 .207< 6f7074696f6e2c20616e642073617973207468617420746865206d6170208c6c6520696e> 2.5 F F2<62617365>2.707 E F0<2e>A F1<636d6170>A F0<287768657265>120 568.8 Q F2<62617365>4.086 E F0 -.1<7761>4.087 G 4.087<7373>.1 G 1.587 <706563698c65642077697468>-4.087 F F2<2d622062617365>4.087 E F0 4.087 <2973>C 1.587<686f756c64206265206170706c69656420746f2074686520636f6c756d 6e20646f6d61696e206f6e6c792e>-4.087 F F2<2d2d726d6170>120 580.8 Q F0 -.1 <776f>2.8 G .3<726b73207468652073616d6520666f722074686520726f>.1 F 2.8 <7764>-.25 G .299<6f6d61696e2c20616e64>-2.8 F F2<2d2d6d6170>2.799 E F0 .299<63616e206265207573656420746f206170706c79207468652073616d65206d6170> 2.799 F<746f20626f74682074686520636f6c756d6e20616e6420726f>120 592.8 Q 2.5<7764>-.25 G<6f6d61696e732e>-2.5 E F2<2d636d6170>120 616.8 Q F0 1.293 <616e6420697473207369626c696e677320617265207573656420746f2065>3.793 F 1.293<78706c696369746c79207370656369667920746865206d6170208c6c6520746f20 626520757365642c20726174686572207468616e>-.15 F .957 <636f6d62696e696e6720612062617365206e616d6520776974682061208c78>120 628.8 R .957<656420737566>-.15 F<8c782e>-.25 E F2<2d746167>5.957 E F0 .956<616e6420697473207369626c696e67732077>3.457 F .956 <6f726b20696e20636f6e6a756374696f6e2077697468>-.1 F<746865>120 640.8 Q F2<2d62>3.315 E F0 .816<6f7074696f6e2c20616e6420726571756972652074686174 2061207461672062652073706563698c65642066726f6d20776869636820746f20636f6e 73747275637420746865206d6170208c6c6520286279>2.5 F <617070656e64696e6720697420746f207468652062617365206e616d65292e>120 652.8 Q F2<2d736b77>100 676.8 Q F0<666e616d652028>2.5 E F4 <777269746520736b>A .3 -.15<6577206d>-.1 H<6174726978>.15 E F0<29>A F2 <2d70726d>100 688.8 Q F0<666e616d652028>2.5 E F4 <7772697465207072696d6172792072>A<6573756c74206d6174726978>-.37 E F0<29> A F2<2d2d70726d>100 700.8 Q F0<28>2.5 E F4<777269746520626173652e70726d> A F0<29>A F2<2d2d736b77>100 712.8 Q F0<28>2.5 E F4 <777269746520626173652e736b77>A F0<29>A F2<2d6e>100 724.8 Q F0<28>2.5 E F4<646f206e6f742077726974652064656661756c742073796d6d657472697a65642072> A<6573756c74>-.37 E F0<29>A<6d6378617373656d626c652031322d313335>20 768 Q<3134204d61792032303132>122.625 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 121.235<6d6378617373656d626c652831292055534552> 20 48 R 123.735<434f4d4d414e4453206d6378617373656d626c65283129>2.5 F .494<4f7074696f6e7320666f722077726974696e67206d61747269636573206f746865 72207468616e2074686520646566>120 84 R .494 <61756c742073796d6d657472697a656420726573756c742e>-.1 F .494 <546865207072696d61727920726573756c74>5.494 F 1.602<6d617472697820697320 746865206d617472697820636f6e73747275637465642066726f6d2072656164696e6720 696e20746865207261>120 96 R 4.103<7764>-.15 G 1.603 <61746120616e6420616464696e6720656e747269657320746f20746865>-4.103 F <736b>120 108 Q 1.026 <656c65746f6e206d61747269782061732073706563698c6564207769746820746865> -.1 F/F1 10/Times-Bold@0 SF<2d72>3.525 E F0<2c>A F1<2d72>3.525 E<65>-.18 E F0 3.525<2c61>C<6e64>-3.525 E F1<2d72>3.525 E<76>-.1 E F0 3.525 <6f7074696f6e732e2054686973>3.525 F 1.025 <6d61747269782063616e206265207772697474656e>3.525 F .818 <7573696e67206f6e65206f6620746865>120 120 R F1<70726d>3.318 E F0 3.318 <6f7074696f6e732e2043616c6c696e67>3.318 F .818 <746865207072696d617279206d617472697820412c2074686520736b>3.318 F 1.318 -.25<6577206d>-.1 H .818<6174726978202861732064658c6e6564>.25 F .921 <686572652920697320746865206d6174726978>120 132 R/F2 10/Courier@0 SF 6 <412d41>3.421 G<5e54>-6 E F0 3.421<2c69>C .921 <2e652e2041206d696e757320697473207472616e73706f736564206d61747269782e> -3.421 F .92<49742063616e206265207772697474656e207573696e67>5.92 F <6f6e65206f6620746865>120 144 Q F1<736b77>2.5 E F0<6f7074696f6e732e>2.5 E .638<496620666f7220736f6d6520726561736f6e207468652073796d6d657472697a 656420726573756c74206973206e6f74206e65656465642c20697473206f757470757420 63616e20626520707265>120 168 R -.15<7665>-.25 G .638 <6e746564207573696e67>.15 F<746865>120 180 Q F1<2d6e>2.5 E F0 <6f7074696f6e2e>2.5 E F1<2d786f>100 204 Q F0<7375662028>2.5 E/F3 10 /Times-Italic@0 SF<777269746520626173652e737566>A F0<29>A F1<2d6f>100 216 Q F0<666e616d652028>2.5 E F3<777269746520746f208c6c6520666e616d65>A F0<29>A F1<2d69>100 228 Q F0<28>2.5 E F3 -.37<7265>C<6164206672>.37 E <6f6d2073696e676c652064617461208c6c65>-.45 E F0<29>A F1<2d646967697473> 100 240 Q F0<696e742028>2.5 E F3<646967697473207769647468>A F0<29>A F1 <2d2d77726974652d62696e617279>100 252 Q F0<28>2.5 E F3 <7772697465206f757470757420696e2062696e61727920666f726d6174>A F0<29>A <546865>120 264 Q F1<2d786f>2.532 E F0 .032<6f7074696f6e2069732075736564 20696e20636f6e6a756e6374696f6e207769746820746865>2.5 F F1<2d62>2.531 E F0 .031 <6f7074696f6e20696e206f7264657220746f206368616e67652074686520737566>2.5 F .031<8c7820666f7220746865>-.25 F .238<8c6c6520696e20776869636820746865 2073796d6d657472697a656420726573756c74206d617472697820697320777269747465 6e2e2055736520652e672e>120 276 R F1<2d786f206d6369>2.738 E F0 .238 <746f206368616e67652074686520737566>2.738 F<8c78>-.25 E 1.027 <66726f6d2074686520646566>120 288 R 1.027<61756c742076>-.1 F<616c7565> -.25 E F2<73796d>3.527 E F0<746f>3.527 E F2<6d6369>3.527 E F0 3.527 <2e55>C<7365>-3.527 E F1<2d6f>3.527 E F0 1.027<746f2065>3.527 F 1.027<78 706c696369746c79207370656369667920746865208c6c656e616d6520696e2066756c6c 2e20557365>-.15 F F1<2d646967697473>120 300 Q F0<746f207365742074686520 6e756d626572206f6620646967697473207772697474656e20666f72206d617472697820 656e74726965732028632e712e20656467652077656967687473292e>2.5 E<546865> 120 324 Q F1<2d69>2.667 E F0 .167 <6f7074696f6e206973207370656369616c2e20497420636175736573>2.667 F F1 <6d6378617373656d626c65>2.667 E F0 .168<746f207265616420626f746820746865 2068656164657220696e666f726d6174696f6e20616e6420746865>2.667 F<7261>120 336 Q 3.492<7764>-.15 G .992<6174612066726f6d207468652073616d65208c6c65 2c207768657265207468652073796e7461782073686f756c642062652066756c6c792063 6f6e666f726d696e6720746f2067656e65726963206d636c>-3.492 F <6d617472697820666f726d61742e>120 348 Q F1<2d73>100 372 Q F0<28>2.5 E F3 -.15<6368>C<6563>.15 E 2.5<6b66>-.2 G<6f722073796d6d65747279>-2.5 E F0 <29>A .305<546869732077696c6c20636865636b207768657468657220746865207072 696d61727920726573756c74206d61747269782077>120 384 R .305 <61732073796d6d65747269632e>-.1 F .305 <4974207265706f72747320746865206e756d626572206f66>5.305 F -.1<6661>120 396 S<696c696e6720286f72>.1 E F3<736b>2.5 E -.15<6577>-.1 G F0 2.5<2965> .15 G<646765732e>-2.5 E F1<2d7261772d7466>100 420 Q F0 <3c74662d737065633e2028>2.5 E F3<6170706c79207472>A <616e73666f726d207370656320746f20696e707574>-.15 E F0<29>A F1 <2d70726d2d7466>100 432 Q F0<28>2.5 E F3<6170706c79207472>A <616e73666f726d207370656320746f207072696d617279206d6174726978>-.15 E F0 <29>A F1<2d73796d2d7466>100 444 Q F0<28>2.5 E F3<6170706c79207472>A <616e73666f726d207370656320746f2073796d6d657472698c6564206d6174726978> -.15 E F0<29>A .512<546865208c727374206170706c69657320697473207472616e73 666f726d6174696f6e207370656320746f207468652076>120 456 R .511 <616c75657320617320666f756e6420696e20746865207261>-.25 F 3.011<7764>-.15 G .511<6174612e20546865207365636f6e64>-3.011 F 1.017<6170706c6965732069 7473207472616e73666f726d6174696f6e207370656320746f20746865207072696d6172 79206d61747269782e20546865207468697264206170706c69657320697473207472616e 73666f726d6174696f6e>120 468 R .903 <7374657020746f207468652073796d6d657472698c6564206d61747269782e>120 480 R .903<526566657220746f>5.903 F F1<6d6378696f283529>3.402 E F0 .902<666f 7220646f63756d656e746174696f6e206f6e20746865207472616e73666f726d612d> 3.402 F<74696f6e20737065632073796e7461782e>120 492 Q F1<2d72>100 516 Q <76>-.1 E F0<6164647c6d61787c6d696e7c6d756c7c6c6566747c72696768742028> 2.5 E F3<616374696f6e20666f722072>A<6570656174656420766563746f72>-.37 E <73>-.1 E F0<29>A F1<2d72>100 528 Q<65>-.18 E F0 <6164647c6d61787c6d696e7c6d756c7c6c6566747c72696768742028>2.5 E F3 <616374696f6e20666f722072>A<6570656174656420656e7472696573>-.37 E F0<29> A F1<2d7269>100 540 Q F0<6164647c6d61787c6d696e7c6d756c2028>2.5 E F3 <616464696e67206d697272>A<6f7220696d61>-.45 E -.1<6765>-.1 G F0<29>.1 E F1<2d72>100 552 Q F0 <6164647c6d61787c6d696e7c6d756c7c6c6566747c72696768742028>2.5 E F3 <73616d6520666f7220656e747269657320616e6420766563746f72>A<73>-.1 E F0 <29>A<4d6572>120 564 Q 1.397 <6765206f7074696f6e732c20646963746174696e67207468652062656861>-.18 F 1.398<76696f7572207768656e20726570656174656420656e7472696573206172652066 6f756e642e20412064697374696e6374696f6e206973>-.2 F .438<6d61646520626574 7765656e20656e7472696573207468617420617265207265706561746564207769746869 6e207468652073616d6520636f6c756d6e206c697374696e672c20616e6420656e747269 6573207468617420617265>120 576 R .336 <7265706561746564206265747765656e20646966>120 588 R .336<666572656e7420 636f6c756d6e206c697374696e67732e20416e20656e7472792063616e20626520612072 6570656174206f6620626f7468206b696e64732073696d756c74612d>-.25 F .204 <6e656f75736c792061732077656c6c2e>120 600 R<4164646974696f6e616c6c79> 5.204 E 2.704<2c74>-.65 G .204 <6865208c6e616c20726573756c7420697320627920646566>-2.704 F .204 <61756c742073796d6d657472697a656420627920636f6d62696e696e672077697468> -.1 F .777<746865206d6972726f7220696d6167652028696e206d6174726978207465 726d696e6f6c6f6779>120 612 R 3.277<2c74>-.65 G<6865>-3.277 E F3<7472> 3.277 E<616e73706f736564>-.15 E F0 .778 <6d6174726978292e20546869732073796d6d657472697a6174696f6e2063616e>3.277 F<626520646f6e6520696e207468652073616d652076>120 624 Q <617269657479206f662077>-.25 E<6179732e>-.1 E<546865>120 648 Q F1 -.18 <7265>2.723 G F0 .222<6f7074696f6e2c20666f722072657065617473207769746869 6e207468652073616d6520636f6c756d6e2c2069732063617272696564206f7574208c72 73742e204974206973206170706c696564>2.903 F F3<6166746572>2.722 E F0 <746865>2.722 E .178<636f6c756d6e206861732069747320656e747269657320736f 727465642c20736f20746865>120 660 R F2<6c656674>2.678 E F0<616e64>2.678 E F2<7269676874>2.678 E F0 .178<6f7074696f6e7320617265206e6f742067>2.678 F .178<6172616e747565656420746f20666f6c6c6f>-.05 F<77>-.25 E .655 <746865206f7264657220666f756e6420696e20746865207261>120 672 R 3.155 <7769>-.15 G .654<6e7075742e20546865>-3.155 F F1 -.1<7276>3.154 G F0 .654<6f7074696f6e2c20666f722072657065617473206f>3.254 F -.15<7665>-.15 G 3.154<7264>.15 G<6966>-3.154 E .654 <666572656e7420636f6c756d6e732c20697320636172>-.25 F<2d>-.2 E <72696564206f7574207365636f6e642e>120 684 Q<546865206f7074696f6e>120 708 Q F1<2d7269206d696e>2.5 E F0<63616e2061737369737420696e20696d706c656d65 6e74696e6720612028746f702d6c697374292062657374207265636970726f63616c2068 697420637269746572696f6e2e>2.5 E<6d6378617373656d626c652031322d313335>20 768 Q<3134204d61792032303132>122.625 E<34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 121.235<6d6378617373656d626c652831292055534552> 20 48 R 123.735<434f4d4d414e4453206d6378617373656d626c65283129>2.5 F/F1 10/Times-Bold@0 SF<4578616d706c6573>120 84 Q F0<54686520636f6c756d6e>120 96 Q/F2 10/Courier@0 SF 6<3031>120 120 S <3a333020313a353020323a363020343a373020333a323020313a343020323a34302024> -6 E F0 .409<697320656e636f756e746572656420696e2074686520696e7075742c20 6c697374696e6720656e747269657320666f72207468652076>120 144 R .41 <6563746f72206c6162656c6564207769746820696e6465>-.15 F<78>-.15 E F2<30> 2.5 E F0 2.91<2e49>C<66>-2.91 E F1<2d72>2.91 E 2.5<6561>-.18 G<6464>-2.5 E F0<6f72>2.91 E F1<2d7220616464>120 156 Q F0 <697320757365642c2069742077696c6c207472616e73666f726d20746f207468652076> 2.5 E<6563746f72>-.15 E F2 6<3031>120 180 S<3a31323020323a3630>-6 E <333a323020343a37302024>12 E F0<4966>120 204 Q F1<2d72>2.5 E 2.5<656d> -.18 G<6178>-2.5 E F0<6f72>2.5 E F1<2d7220616464>2.5 E F0<69732075736564 20696e73746561642c2069742077696c6c207472616e73666f726d20746f207468652076> 2.5 E<6563746f72>-.15 E F2 6<3031>120 228 S <3a343020323a363020333a323020343a37302024>-6 E F0<537570706f7365>120 252 Q/F3 10/Times-Italic@0 SF<616464>3.046 E F0 .545<6d6f646520697320757365 642c20616e642074686174206c61746572206f6e20616e6f746865722076>3.046 F .545<6563746f722073706563698c636174696f6e20666f722074686520696e6465>-.15 F<78>-.15 E F2<30>2.5 E F0<6973>3.045 E<666f756e642c206c656164696e672074 6f2074686973207472616e73666f726d65642076>120 264 Q<6563746f723a>-.15 E F2 6<3031>120 288 S<3a363020323a383020343a34302024>-6 E F0<4966>120 312 Q F1<2d72>3.464 E 2.5<766d>-.1 G<6178>-2.5 E F0 -.1<7761>3.464 G 3.464 <7373>.1 G .964<706563698c65642c2074686973206e65>-3.464 F 3.464<7776> -.25 G .964 <6563746f7220697320636f6d62696e656420776974682074686520707265>-3.614 F .965<76696f75732076>-.25 F .965<6563746f722062792074616b696e67>-.15 F <74686520656e7472792077697365206d6178696d756d3a>120 324 Q F2 6<3031>120 348 S<3a31323020323a363020333a323020343a37302024>-6 E 6<2366>36 G <6972737420287472616e73666f726d65642920766563746f72>-6 E 6<3031>120 360 S<3a363020323a383020343a34302024>-6 E 6<2373>72 G <65636f6e6420766563746f72>-6 E 6<3031>120 384 S <3a31323020323a383020333a323020343a37302024>-6 E 6<2365>36 G <6e7472792077697365206d6178696d756d>-6 E F0<46696e616c6c79>120 408 Q 4.045<2c73>-.65 G 1.545<7570706f7365207468617420736f6d65>-4.045 F 1.544 <7768657265206f6e65206f72206d6f72652076>-.25 F 1.544<6563746f72206c6973 74696e677320776572652073706563698c656420666f7220696e6465>-.15 F<78>-.15 E F2<33>2.5 E F0<2c>A .165<77686963682065>120 420 R -.15<7665>-.25 G .165<6e7475616c6c79206c656420746f20616e20656e747279>.15 F F2<303a3530> 2.665 E F0 5.165<2e54>C .165<6865208c6e616c2073796d6d657472697a6174696f 6e20737465702077696c6c2074616b>-5.165 F 2.665<6574>-.1 G<6865>-2.665 E F2<5b302c335d>2.665 E F0 2.063<656e747279206f6620776569676874>120 432 R F2<3230>2.5 E F0 2.062<616e6420636f6d62696e65206974207769746820746865> 4.563 F F2<5b332c305d>4.562 E F0 2.062<656e747279206f6620776569676874> 4.562 F F2<3530>2.5 E F0 4.562<2e54>C 2.062<686520726573756c74696e67> -4.562 F .558<6d61747269782077696c6c207468656e206861>120 444 R .858 -.15 <76652074>-.2 H<6865>.15 E F2<5b302c335d>3.058 E F0 .559<616e6420746865> 3.059 F F2<5b332c305d>3.059 E F0 .559<656e74727920626f746820657175616c20 746f2065697468657220746865206d6178696d756d2c>3.059 F <7468652073756d2c206f72207468652070726f64756374206f6620746865207477>120 456 Q 2.5<6f71>-.1 G<75616e746974696573>-2.5 E F2<3530>2.5 E F0<616e64> 2.5 E F2<3230>2.5 E F0<2e>A F1<2d2d71756965742d72>100 480 Q<65>-.18 E F0 <28>2.5 E F3<717569657420666f722072>A<6570656174656420656e7472696573> -.37 E F0<29>A F1<2d2d71756965742d72>100 492 Q<76>-.1 E F0<28>2.5 E F3 <717569657420666f722072>A<6570656174656420766563746f72>-.37 E<73>-.1 E F0<29>A F1<2d71>100 504 Q F0<28>2.5 E F3<7468652074776f2061626f>A <766520636f6d62696e6564>-.1 E F0<29>A -.8<5761>120 516 S <726e696e67206f7074696f6e732e2054>.8 E <75726e207468657365206f6e20696620796f752065>-.45 E <787065637420746865207261>-.15 E 2.5<7764>-.15 G <61746120746f2062652066726565206f6620726570656174732e>-2.5 E/F4 10.95 /Times-Bold@0 SF -.548<4155>20 532.8 S<54484f52>.548 E F0 <5374696a6e2076>100 544.8 Q<616e20446f6e67656e2e>-.25 E F4 <53454520414c534f>20 561.6 Q F1<6d6378696f283529>100 573.6 Q F0<2c>A F1 <6d636c283129>3.313 E F0<2c>A F1<6d63786c6f6164283129>3.313 E F0<616e64> 3.313 E F1<6d636c66616d696c79283729>3.313 E F0 .813<666f7220616e206f> 3.313 F -.15<7665>-.15 G<72766965>.15 E 3.312<776f>-.25 G 3.312<6661> -3.312 G .812<6c6c2074686520646f63756d656e746174696f6e20616e64>-3.312 F <746865207574696c697469657320696e20746865206d636c2066>100 585.6 Q <616d696c792e>-.1 E<6d6378617373656d626c652031322d313335>20 768 Q <3134204d61792032303132>122.625 E<35>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/clmdist.10000644000402500021140000003735411754271041011575 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm dist" 1 "14 May 2012" "clm dist 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm dist \- compute the distance between two or more partitions (clusterings)\&. The distance that is computed can be any of \fIsplit/join distance\fP, \fIvariance of information\fP, or \fIMirkin metric\fP\&. clmdist is not in actual fact a program\&. This manual page documents the behaviour and options of the clm program when invoked in mode \fIdist\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP are accessible in all \fBclm\fP modes\&. They are described in the \fBclm\fP manual page\&. .SH SYNOPSIS \fBclm dist\fP [options] + \fBclm dist\fP \fB[-mode\fP (\fIdistance type\fP)\fB]\fP \fB[-o\fP fname (\fIoutput file\fP)\fB]\fP \fB[--chain\fP (\fIonly compare consecutive clusterings\fP)\fB]\fP \fB[--one-to-many\fP (\fIcompare first clustering to all others\fP)\fB]\fP \fB[--sort\fP (\fIsort clusterings based on coarseness\fP)\fB]\fP \fB[--index\fP (\fIoutput Rand, adjusted Rand and Jaccard indices\fP)\fB]\fP \fB[-digits\fP k (\fIoutput decimals\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP + .SH DESCRIPTION \fBclm dist\fP computes distances between clusterings\&. It can compute the \fIsplit/join distance\fP (described below), the \fIvariance of information measure\fP, and the \fIMirkin metric\fP\&. By default it computes the chosen distance for all pairs of distances in the clusterings provided\&. Clusterings must be in the mcl matrix format (cf\&. \fBmcxio(5)\fP), and are supplied on the command line as the names of the files in which they are stored\&. It is possible to compare only consecutive clusterings by using the \fB--chain\fP option\&. Currently, \fBclm dist\fP cannot compute different distance types simultaneously\&. The output is linewise, each line giving information about the distance between a pair of clusterings\&. A line has the following format: .di ZV .in 0 .nf \fC d d1 d2 N v name1 name2 [v50,v75,v90,v95,v99] .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR where \fCdT\fP is the distance between the two clusterings, \fCd1\fP is the distance from the first clustering to the greatest common subclustering (alternatively called GCS, intersection, or meet) of the two clusterings, \fCd2\fP is similarly the distance from the second clustering to the GCS, \fCN\fP is the number of nodes in the set over which the clusterings are defined, \fCname1\fP is the name of the file containing the first clustering, \fCname2\fP is the name of the file containing the second clustering, and \fCvXX\fP is the number of \fIvolatile nodes\fP at stringency factor \fC0\&.XX\fP (i\&.e\&. 0\&.5 for \fCv50\fP)\&. Refer to \fBclm vol\fP for a definition of \fIvolatile node\fP\&. .SH OPTIONS .ZI 2m "\fB-mode\fP (\fIdistance type\fP)" \& .br Use \fBsj\fP for the \fIsplit/join distance\fP (described below), \fBvi\fP for the \fIvariance of information measure\fP and \fBmk\fP for the \fIMirkin metric\fP\&. .in -2m .ZI 2m "\fB--chain\fP (\fIonly compare consecutive clusterings\fP)" \& .br This option can be used if you know that the clusterings are nested clusterings (or appoximately so) and ordered from coarse to fine-grained or vice versa\&. An example of this is the set of clusterings resulting from applying \fBmcl\fP with a range of inflation parameters\&. .in -2m .ZI 2m "\fB--one-to-many\fP (\fIcompare first clustering to all others\fP)" \& .br Use this option for example to compare a gold standard classification to a collection of clusterings\&. Bear in mind that sub-clustering and super-clustering are also ways for a clustering to be compatible with a gold standard\&. This means that the simple numerical criterion of distance between clusters (by whatever method) is only partially informative\&. For the Mirkin, variation of information and split/join metrics it pays to take into account the constituent distances \fCd1\fP and \fCd2\fP (see above)\&. Assuming that the first clustering given as argument represents a gold standard, a small value for \fCd1\fP implies that the second clustering is (nearly) a superclustering, and similarly a small value for \fCd2\fP implies that it is (nearly) a subclustering\&. .in -2m .ZI 2m "\fB--sort\fP (\fIsort clusterings based on coarseness\fP)" \& .br This option can be useful in conjunction with the \fB--chain\fP option, in case the list of clusterings supplied is not necessarily ordered by granularity\&. .in -2m .ZI 2m "\fB--index\fP (\fIoutput Rand, adjusted Rand and Jaccard indices\fP)" \& .br As described\&. .in -2m .ZI 2m "\fB-o\fP fname (\fIoutput file\fP)" \& .br .in -2m .ZI 2m "\fB-digits\fP k (\fIoutput decimals\fP)" \& .br The number of decimals printed when using the variance of information measure\&. .in -2m .SH SPLIT/JOIN DISTANCE For each pair of clusterings \fBC1\fP, \fBC2\fP, two numbers are given, say \fBd1\fP and \fBd2\fP\&. Then \fBd1\fP + \fBd2\fP equals the number of nodes that have to be exchanged in order to transform any of the two clusterings into the other, and you can think of (\fBd1\fP+\fBd2\fP)/\fB2N\fP as the percentage that the two clusterings differ\&. The split/join distance has a linearity property with respect to the meet of \fBC1\fP and \fBC2\fP, see below\&. The split/join distance \fBsjd\fP is very handy in computing the consistency of two or more clusterings of the same graph, or comparing clusterings made with different resource (but otherwise identical) parameters\&. The latter is for finding out whether you can settle for cheaper mcl settings, or whether you need to switch to more expensive settings\&. The former is for finding out whether clusterings are identical, conflicting, or whether one is (almost) a subclustering of the other - mostly for comparing a set of clusterings of different granularity, made by letting the mcl parameter \fB-I\fP vary\&. The \fBEXAMPLES\fP section contains examples of all these \fBclm dist\fP uses, and the use of \fBclm info\fP and \fBclm meet\fP is also discussed there\&. \fBsjd\fP is a metric distance on the space of partitions of a set of a given fixed cardinality\&. It has the following linearity property\&. Let \fBP1\fP and \fBP2\fP be partitions, then \fBsjd\fP(\fBP1\fP, \fBP2\fP) = \fBsjd\fP(\fBP1\fP, \fBD\fP) + \fBsjd\fP(\fBP2\fP, \fBD\fP) where \fBD\fP (for Dutch Doorsnede) is the intersection of \fBP1\fP and \fBP2\fP, i\&.e\&. the unique clustering that is both a subclustering of \fBP1\fP and \fBP2\fP \fIand\fP a superclustering of all other subclusterings of \fBP1\fP and \fBP2\fP\&. Sloppily worded, \fBD\fP is the largest subclustering of both \fBP1\fP and \fBP2\fP\&. See the \fBREFERENCES\fP section for a pointer to the technical report in which \fBsjd\fP was first defined (and in which the non-trivial triangle inequality is proven)\&. Because it is useful to know whether one partition (or clustering) is almost a subclustering of the other, \fBclm dist\fP returns the two constituents \fBsjd\fP(\fBP1\fP,\fBD\fP) and \fBsjd\fP(\fBP2\fP,\fBD\fP)\&. Let \fBP1\fP and \fBP2\fP be two clusterings of a graph of cardinality \fBN\fP, and suppose \fBclm dist\fP returns the integers \fBd1\fP and \fBd2\fP\&. You can think of \fB100 * (d1 + d2) / N\fP as the percentage that \fBP1\fP and \fBP2\fP differ\&. This interpretation is in fact slightly conservative\&. The numerator is the number of nodes that need to be exchanged in order to transform one into the other\&. This number may grow as large as \fB2*N - 2*sqrt(N)\fP, so it would be justified to take 50 as a scaling factor rather than 100\&. For example, if \fBA\fP and \fBB\fP are both clusterings of a graph on a set of 9058 nodes and \fBclm dist\fP returns [38, 2096], this conveys that \fBA\fP is almost a subclustering of \fBB\fP (by splitting 38 nodes in \fBA\fP we obtain a clustering \fBD\fP that is a subclustering of \fBB\fP), and that \fBB\fP is much less granular than \fBA\fP\&. The latter is because we can obtain \fBB\fP from \fBD\fP by \fIjoining\fP 2096 nodes in some way\&. .SH EXAMPLES The following is an example of several mcl validation tools applied to a set of clusterings on a protein graph of 9058 nodes\&. In the first experiment, six different clusterings were generated for different values of the inflation parameter, which was respectively set to 1\&.2, 1\&.6, 2\&.0, 2\&.4, 2\&.8, and 3\&.2\&. It should be noted that protein graphs seem somewhat special in that an inflation parameter setting as low as 1\&.2 still produces a very acceptable clustering\&. The six clusterings are scrutinized using \fBclm dist\fP, \fBclm info\fP, and \fBclm meet\fP\&. In the second experiment, four different clusterings were generated with identical flow (i\&.e\&. inflation) parameter, but with different resource parameters\&. \fBclm dist\fP is used to choose a sufficient resource level\&. High \fB-P/-S/-R\fP values make \fBmcl\fP more accurate but also more time and memory consuming\&. Run \fBmcl\fP with different settings for these parameters, holding other parameters fixed\&. If the expensive and supposedly more accurate clusterings are very similar to the clusterings resulting from cheaper settings, the cheaper setting is sufficient\&. If the distances between cheaper clusterings and more expensive clusterings are large, this is an indication that you need the expensive settings\&. In that case, you may want to increase the \fB-P/-S/-R\fP parameters (or simply the \fB-scheme\fP parameter) until associated clusterings at nearby resource levels are very similar\&. In this particular example, the validation tools do not reveal that one clustering in particular can be chosen as \&'best\&', because all clusterings seem at least acceptable\&. They do aid however in showing the relative merits of each clusterings\&. The most important issue in this respect is cluster granularity\&. The table below shows the output of \fBclm info\fP\&. .di ZV .in 0 .nf \fC Efficiency Mass frac Area frac Cl weight Mx link weight 1\&.2 0\&.42364 0\&.98690 0\&.02616 52\&.06002 50\&.82800 1\&.6 0\&.58297 0\&.95441 0\&.01353 55\&.40282 50\&.82800 2\&.0 0\&.63279 0\&.92386 0\&.01171 58\&.09409 50\&.82800 2\&.4 0\&.65532 0\&.90702 0\&.01091 59\&.58283 50\&.82800 2\&.8 0\&.66854 0\&.84954 0\&.00940 63\&.19183 50\&.82800 3\&.2 0\&.67674 0\&.82275 0\&.00845 66\&.10831 50\&.82800 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR This data shows that there is exceptionally strong cluster structure present in the input graph\&. The 1\&.2 clustering captures almost all edge mass using only 2\&.5 percent of \&'area\&'\&. The 3\&.2 clustering still captures 82 percent of the mass using less than 1 percent of area\&. We continue with looking at the mutual consistency of the six clusterings\&. Below is a table that shows all pairwise distances between the clusterings\&. .di ZV .in 0 .nf \fC | 1\&.6 | 2\&.0 | 2\&.4 | 2\&.8 | 3\&.2 | 3\&.6 -----------------------------------------------------------\&. 1\&.2 |2096,38 |2728,41 |3045,48 |3404,45 |3621,43 |3800, 42 | -----------------------------------------------------------| 1\&.6 | | 797,72 |1204,76 |1638,78 |1919,70 |2167, 69 | -----------------------------------------------------------| 2\&.0 | | | 477,68 | 936,78 |1235,85 |1504, 88 | -----------------------------------------------------------| 2\&.4 | | | | 498,64 | 836,91 |1124,103 | -----------------------------------------------------------| 2\&.8 | | | | | 384,95 | 688,119 | -----------------------------------------------------------| 3\&.2 | | | | | | 350,110 | -----------------------------------------------------------\&. .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The table shows that the different clusterings are pretty consistent with each other, because for two different clusterings it is generally true that one is almost a subclustering of the other\&. The interpretation for the distance between the 1\&.6 and the 3\&.2 clustering for example, is that by rearranging 43 nodes in the 3\&.2 clustering, we obtain a subclustering of the 1\&.6 clustering\&. The table shows that for any pair of clusterings, at most 119 entries need to be rearranged in order to make one a subclustering of the other\&. The overall consistency becomes all the more clear by looking at the meet of all the clusterings: .di ZV .in 0 .nf \fC clm meet -o meet out12 out16 out20 out24 out28 out32 clm dist meet out12 out16 out20 out24 out28 out32 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR results in the following distances between the respective clusterings and their meet\&. .di ZV .in 0 .nf \fC | 1\&.2 | 1\&.6 | 2\&.0 | 2\&.4 | 2\&.8 | 3\&.2 | -------------- --------------------------------------------\&. meet| 0,3663| 0,1972| 0,1321 | 0,958 | 0,559 | 0,283 | -------------- --------------------------------------------\&. .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR This shows that by rearranging only 283 nodes in the 3\&.2 clustering, one obtains a subclustering of all other clusterings\&. In the last experiment, \fBmcl\fP was run with inflation parameter 1\&.4, for each of the four different preset pruning schemes \fCk=1,2,3,4\fP\&. The \fBclm dist\fP distances between the different clusterings are shown below\&. .di ZV .in 0 .nf \fC | k=2 | k=3 | k=4 | -------------------------------\&. k=1 | 17,17 | 16,16 | 16,16 | -------------------------------\&. k=2 | | 3,3 | 5,5 | -------------------------------\&. k=3 | | | 4,4 | -------------------------------\&. .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR This example is a little boring in that the cheapest scheme seems adequate\&. If anything, the gaps between the \fCk=1\fP scheme and the rest are a little larger than the three gaps between the \fCk=2\fP, \fCk=3\fP, and \fCk=4\fP clusterings\&. Had all distances been much larger, then such an observation would be reason to choose the \fCk=2\fP setting\&. Note that you need not feel uncomfortable with the clusterings still being different at high resource levels, if ever so slightly\&. In all likelihood, there are anyway nodes which are not in any core of attraction, and that are on the boundary between two or more clusterings\&. They may go one way or another, and these are the nodes which will go different ways even at high resource levels\&. Such nodes may be stable in clusterings obtained for lower inflation values (i\&.e\&. coarser clusterings), in which the different clusters to which they are attracted are merged\&. .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. .SH REFERENCES Stijn van Dongen\&. \fIPerformance criteria for graph clustering and Markov cluster experiments\fP\&. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000\&. .br http://www\&.cwi\&.nl/ftp/CWIreports/INS/INS-R0012\&.ps\&.Z Marina Meila\&. \fIComparing Clusterings \- An Axiomatic View\fP\&. In \fIProceedings of the 22nd International Conference on Machine Learning\fP, Bonn, Germany, 2005\&. Marina Meila\&. \fIComparing Clusterings\fP, UW Statistics Technical Report 418\&. .br http://www\&.stat\&.washington\&.edu/www/research/reports/2002/tr418\&.ps mcl-12-135/doc/clmmate.azm0000644000402500021140000000665511322637753012216 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{clm mate} {html_title}{The clm mate manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{clm mate}{compute best matches between two clusterings} \disclaim_clm{mate} \sec{synopsis}{SYNOPSIS} \par{ \clm{mate} \synoptopt{-o}{fname}{output file name} \synoptopt{-b}{omit headers} \synoptopt{--one-to-many}{require multiple hits in } \stdsynopt } \sec{description}{DESCRIPTION} \par{ \clm{mate} computes for each cluster \v{X} in \v{clfile1} all clusters \v{Y} in \v{clfile2} that have non-empty intersection and outputs a line with the data points listed below.} \verbatim{\:/ overlap(X,Y) # 2 * size(meet(X,Y)) / (size(X)+size(Y)) index(X) # name of cluster index(Y) # name of cluster size(meet(X,Y)) size(X-Y) # size of left difference size(Y-X) # size of right difference size(X) size(Y) projection(X, clfile2) # see below projection(Y, clfile1) # see below } \par{ The projected size of a cluster \v{X} relative to a clustering \v{K} is simply the sum of all the nodes shared between any cluster \v{Y} in \v{K} and \v{X}, duplications allowed. For example, the projected size of \v{(0,1)} relative to \v{\{(0,2,4), (1,4,9), (1,3,5)\}} equals \v{3}.} \par{ The overlap between \v{X} and \v{Y} is exactly 1.0 if the two clusters are identical, and for nearly identical clusterings the score will be close to 1.0.} \par{ All of this information can also be obtained from the contingency matrix defined for two clusterings. The \v{[i,j]} row-column entry in a contigency matrix between to clusterings gives the number of entries in the intersection between cluster\~\v{i} and cluster\~\v{j} from the respective clusterings. The other information is implicitly present; the total number of nodes in clusters\~\v{i} and\~\v{j} for example can be obtained as the sum of entries in row\~\v{i} and column\~\v{j} respectively, and the difference counts can then be obtained by substracting the intersection count. The contingency matrix can easily be computed using \mcx; e.g.} \verbatim{ mcx /clfile2 lm /clfile1 lm tp mul /ting wm} \car{ will create the contingency matrix in mcl matrix format in the file \v{ting}, where columns range over the clusters in \v{clfile1}.} \par{ The output can be put to good use by sorting it numerically on that first score field. It is advisable to use a stable sort routine (use the \usearg{-s} option for UNIX sort) From this information one can quickly extract the closest clusters between two clusterings.} \sec{options}{OPTIONS} \'begin{itemize}{\mcx_itemopts} \item{\defopt{-o}{fname}{output file name}} \car{Specify the name of the output file.} \item{\defopt{-b}{omit headers}} \car{Batch mode, omit column names.} \item{\defopt{--one-to-many}{require multiple hits in }} \car{Do not output information for clusters in the first file that are subset of a cluster in the second file.} \stddefopt \'end{itemize} \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family. } \end{pud::man} mcl-12-135/doc/mcxi.10000644000402500021140000003005611754271045011072 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxi" 1 "14 May 2012" "mcxi 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcx \- a stack language interpreter for interaction with the \fBmcl\fP libraries\&. .SH SYNOPSIS \fBmcxi\fP (enter interactive mode) \fBmcxi\fP .SH DESCRIPTION \fBmcxi\fP can be used both from the command line and interactively, and supports a rich set of operations such as transposition, scaling, column scaling, multiplication, Hadamard powers and products, et cetera\&. It has variables, control primitives, and stack manipulation primitives\&. The general aim is to support basic number and matrix arithmetic, as well as graph, set, and clustering operations\&. The language will be kept simple, and should serve only as a means of making the \fBmcl\fP framework a pleasant one for working with graphs, matrices, clusterings, and sets\&. The language is typed, and currently has the types \fIinteger, real, matrix, string, and block\fP\&. Blocks are used both in control statements such as \fBifelse\fP and \fBwhile\fP, and for defining compound statements resembling procedures or functions\&. Some of \fBmcxi\fP\&'s primitives are overloaded\&. The following is a very simple example of implementing and using \fBmcl\fP in this language\&. .di ZV .in 0 .nf \fC 2\&.0 \&.i def # define inflation value\&. /small lm # load matrix in file \&'small\&'\&. dim id add # add identity matrix\&. st \&.x def # make stochastic, bind to x\&. { xpn \&.i infl vm } \&.mcl def # define one mcl iteration\&. 20 \&.x \&.mcl repeat # iterate 20 times imac # interpret matrix as clustering\&. vm # view matrix (clustering)\&. .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Somewhat misleadingly, \&'#\&' is not recognized as a comment symbol by \fBmcxi\fP, so don\&'t use it (yet)\&. \fBmcxi\fP has quite a lot of primitives, and they are not all explained in here\&. However, \fBmcxi\fP has several help facilities\&. \fBmcxi\fP\&'s munge modes (command line, interactive, and file) are discussed first, followed by some syntactic and semantic rules\&. Several groups of related primitives are then discussed\&. These are the help primitives \fBhelp\fP, \fBgrep\fP, \fBops\fP, and others, the binding primitives \fBdef\fP, \fBfree\fP, and \fBunlink\fP, the control primitives \fBifelse\fP, \fBdo\fP, \fBrepeat\fP, and \fBwhile\fP, and the stack manipulation primitives \fBpop\fP, \fBexch\fP, \fBdup\fP, \fBmdup\fP, \fBcopy\fP, \fBroll\fP, \fBclear\fP\&. And for the record, \fBmcxi\fP has \fBlt\fP, \fBlq\fP, \fBeq\fP, \fBgq\fP, and \fBgt\fP\&. In the grandiloquently named \fBINDEX\fP section, you find a list of all current \fBmcxi\fP primitives\&. First, there is no difference as far as \fBmcxi\fP is concerned whether you give it a bunch of operators and operands directly from the command line, or whether you do it in interactive mode\&. Interactive mode is line-based; each time you type a carriage return, \fBmcxi\fP starts interpreting the line you typed\&. Newlines can be escaped by preceding them with a backslash; \fBmcxi\fP will delay interpretation and keep building up your expression\&. Command line mode is the same as entering interactive mode and entering a single line\&. For non-batch processing, interactive mode is the safest, because \fBmcxi\fP will simply refuse to carry out impossible operations, whereas in command line mode it will exit\&. In interactive mode, \fBmcxi\fP will by default list the stack after each line you type\&. This is verbosity level 1\&. There are four verbosity levels, namely 0, 1, 2, and 3 (in increasingly verbose order)\&. Set the level with the \fBvb\fP primitive\&. Verbosity control is still a bit crude, this is one of the areas in which \fBmcxi\fP will be improved\&. There is another \fBmcxi\fP munge mode which is entered when reading files with the \fBlf\fP (load file) primitive\&. This mode is not line-based, the whole file is interpreted in one go \- there is little difference with line-based mode\&. Beware though, it is currently not possible (nor necessary) to escape newlines in files\&. Currently, \fBmcxi\fP parses lines of text into atoms in an extremely straightforward way: Whitespace is the only separator, and it is always a separator\&. This has as a consequence that the block delimiters \fB{\fP and \fB}\fP are not allowed to appear next to a non-white character\&. Another consequence is that strings cannot contain white spaces\&. Both these conditions may be relaxed in the future though\&. Strings are always entered with a leading slash, and anything with a leading slash is a string, so \fC/this\fP is a string\&. Currently, the double quote has no special meaning, but it may acquire meaning in the future, especially as in \fC/"maybe the mcxi future will be brighter"\fP\&. Variables names are always entered with a leading dot, and anything with a leading dot is a variable name\&. Variables are implicitly typed by the object to which they are bound\&. There is no support for arrays (yet)\&. If variables are used, as in \fC\&.x \&.y add\fP, only the names of the variables are popped, and the binding between the names and their values stays intact\&. There are some operators that do in-place modification of the object that they act on, such as \fCinfl\fP (inflation)\&. Currently, these are all operators acting on matrices\&. When presented with a variable, they do change the object associated with the variable\&. In the built-in documentation strings (accessible with \fBhelp\fP and \fBgrep\fP), such in-place modification is denoted with a prime as in \fC -> \fP\&. \fBdup\fP can be used to duplicate objects\&. In case of variables, this will be a copy of the variable name\&. If one occurrence is used to free the associated object by some operator, all other instances of the variable become \fIstale\fP\&. \fBmcxi\fP will notice this and you will see such elements marked as stale handles in the stack listing\&. \fBcopy\fP can be used to copy the object associated with a variable\&. \fBmcxi\fP is/interprets a stack language\&. In order to add 1 and 2 you need to write \fC1 2 add\fP\&. When add is evaluated, it removes the previous two items from the stack and replaces it with their sum, in this case the integer 3\&. \fBmcxi\fP\&'s types are denoted as \fC\fP, \fC\fP, \fC\fP, \fC\fP, \fC\fP, and so are objects that can be of that type\&. An object that is of underspecified type (such as taken by overloaded operators) is denoted \fC\fP\&. Where a variable name must occur, \fC\fP is written\&. In \fBmcxi\fP parlance a \&'variable\&' is the same as \&'handle\&'\&. Remember that a variable named \fCx\fP is written \fC\&.x\fP, and that a string "foo" is entered as \fC/foo\fP in \fBmcxi\fP\&. .SH OPERATORS .ZI 2m "\fBhelp\fP" \& .br \fBhelp\fP with no arguments prints a descriptory line for each primitive\&. Can only be used at bottom of stack\&. Alias: \fBh\fP\&. .in -2m .ZI 2m "\fC/str\fP \fBhelp\fP" \& .br \fBhelp\fP with argument \fC/str\fP prints a descriptive line for the primitive named \fCstr\fP\&. The string must be identical to the primitive\&'s name, or help will not show anything\&. Alias: \fBh\fP\&. .in -2m .ZI 2m "\fC/str\fP \fBgrep\fP" \& .br Prints each descriptive line in which the string str occurs (literally)\&. So \fC/matrix grep\fP should produce a lot of matrix related primitives (although it may miss generic primitives such as \fBadd\fP and \fBmul\fP)\&. At bottom of stack, prints all descriptive lines\&. Alias: \fBg\fP\&. .in -2m .ZI 2m "\fBops\fP" \& .br Lists all primitives and aliases concisely in a paragraph\&. .in -2m .ZI 2m "\fBlist\fP" \& .br Lists the contents of the operand stack\&. .in -2m .ZI 2m "\fBinfo\fP" \& .br Lists the top element of the operand stack\&. .in -2m .ZI 2m "\fC\fP \fBtell\fP" \& .br Lists the top \fC\fP elements of the operand stack\&. The trio of \fBlist\fP, \fBinfo\fP, and \fBtell\fP is perhaps overdoing it slightly, but anyway there it is\&. .in -2m .ZI 2m "\fBvars\fP" \& .br Lists all variables currently bound\&. .in -2m .ZI 2m "\fC\fP \fC\fP \fBdef\fP" \& .br Bind \fC\fP to \fC\fP\&. Redefinition is allowed\&. .in -2m .ZI 2m "\fC\fP \fBfree\fP" \& .br Break the binding between \fC\fP and the object it currently binds, and remove object\&. .in -2m .ZI 2m "\fBunlink\fP" \& .br Break the binding between \fC\fP and the object it currently binds, and push object on the stack\&. .in -2m .ZI 2m "\fC \fP \fBifelse\fP" \& .br If \fC\fP is nonzero execute \fC\fP, otherwise execute \fC\fP\&. The equate operators \fBlt\fP, \fBlq\fP, \fBeq\fP, \fBgq\fP, and \fBgt\fP can be used to leave an \fC\fP on the stack\&. .in -2m .ZI 2m "\fC\fP \fBdo\fP" \& .br Execute \fC\fP (one time)\&. .in -2m .ZI 2m "\fC \fP \fBrepeat\fP" \& .br Execute \fC\fP \fC\fP times\&. .in -2m .ZI 2m "\fC \fP \fBwhile\fP" \& .br This primitive repeatedly executes the \fIcondition\fP \fC\fP, \fIwhich must push an integer each time it is executed\fP\&. Each time, the pushed integer is popped\&. If it was non-zero, \fC\fP is executed, \fC\fP is executed, and the cycle continues\&. If it was zero, \fBwhile\fP is done\&. .in -2m .ZI 2m "\fBpop\fP" \& .br Pops one element off of the stack\&. .in -2m .ZI 2m "\fBexch\fP" \& .br Exchanges the top two elements of the stack\&. .in -2m .ZI 2m "\fBdup\fP" \& .br Duplicates the top element and pushes the duplicate onto the stack\&. In case of a variable, the name is duplicated and not the object it points to\&. In case of anonymous matrices and strings (and whatever other (composite) objects may emerge), a \fIdeep copy\fP is made that is completely independent of the original object\&. .in -2m .ZI 2m "\fC\fP \fBmdup\fP" \& .br Duplicates the top \fC\fP elements\&. See the \fBdup\fP entry above for the semantics of duplication\&. I wrote \fBmdup\fP because I thought some other operator needed it, which turned out to be false\&. In the meantime, I became very much attached to \fBmdup\fP, so mail me if you think you have any useful use for it\&. .in -2m .ZI 2m "\fBcopy\fP" \& .br Copies the top element and pushes the copy onto the stack\&. In case of a variable, copies the object associated with the variable rather than the variable\&'s name (as \fBdup\fP would do)\&. .in -2m .ZI 2m "\fC \fP \fBroll\fP" \& .br Shift \fC\fP objects cyclically \fC\fP times to the right if \fC\fP is positive, to the left otherwise\&. .in -2m .ZI 2m "\fBclear\fP" \& .br Empty the stack\&. All objects bound to variables are unaffected\&. .in -2m .SH INDEX This is a list of all \fBmcxi\fP\&'s primitives, including aliases\&. Do \&'mcxi / help\&' to see a short descriptive string, where is one of the primitives below (remember, strings need a leading slash)\&. \fBadd\fP \fBaddto\fP \fBcdim\fP \fBch\fP \fBclear\fP \fBcopy\fP \fBdef\fP \fBdgt\fP \fBdim\fP \fBdiv\fP \fBdo\fP \fBdup\fP \fBeq\fP \fBexch\fP \fBfree\fP \fBgq\fP \fBgrep\fP \fBgt\fP \fBhdm\fP \fBhdp\fP \fBhelp\fP \fBid\fP \fBifelse\fP \fBimac\fP \fBinfl\fP \fBinfo\fP \fBjj\fP \fBlf\fP \fBlist\fP \fBlm\fP \fBlq\fP \fBlt\fP \fBmax\fP \fBmdup\fP \fBmin\fP \fBmod\fP \fBmul\fP \fBops\fP \fBpop\fP \fBpow\fP \fBquit\fP \fBrdim\fP \fBrepeat\fP \fBroll\fP \fBst\fP \fBtell\fP \fBtp\fP \fBtut\fP \fBunlink\fP \fBvars\fP \fBvb\fP \fBvm\fP \fBwhile\fP \fBwm\fP \fBxpn\fP \fBbye=quit\fP \fBd=def\fP \fBf=free\fP \fBh=help\fP \fBi=info\fP \fBl=list\fP \fBp=pop\fP \fBg=grep\fP \fBu=unlink\fP \fBx=exch\fP\&. .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcx.ps0000644000402500021140000003201011754271044011172 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:16 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Courier %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Courier %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Courier@0 ENC0/Courier RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 157.895<6d63782831292055534552>20 48 R 160.395 <434f4d4d414e4453206d6378283129>2.5 F/F1 10.95/Times-Bold@0 SF -.219 <4e41>20 84 S<4d45>.219 E F0<6d637820ad20706572666f726d2076>100 96 Q<61 72696f757320636f6d7075746174696f6e73206f6e2067726170687320616e64206d6174 7269636573>-.25 E F1<53594e4f50534953>20 112.8 Q/F2 10/Times-Bold@0 SF <6d6378>118 124.8 Q/F3 10/Courier@0 SF <3c6d6f64653e205b6d6f64652d6f7074696f6e735d205b6d6f64652d66696c65735d>6 E F1<4445534352495054494f4e>20 153.6 Q F2<6d6378>100 165.6 Q F0 .904 <696d706c656d656e747320612076>3.404 F .904<617269657479206f6620636f6d70 75746174696f6e73206f6e2067726170687320616e64206d617472696365732e20546865 208c727374206172>-.25 F .903<67756d656e7420746f>-.18 F F2<6d6378>3.403 E F0 .65<73686f756c642062652061>100 177.6 R/F4 10/Times-Italic@0 SF <6d6f6465>3.15 E F0 3.15<2c77>C .65<68696368206973206120737472696e672065 737461626c697368696e67207468652074797065206f6620636f6d7075746174696f6e20 746f20696e>-3.15 F -.2<766f>-.4 G -.1<6b65>.2 G 3.15<2e45>.1 G .65 <616368206d6f6465>-3.15 F F4<6d6f6465>100 189.6 Q F0 1.486 <69732064657363726962656420696e20746865206d6378>3.987 F F4<6d6f6465>A F0 1.486<6d616e75616c20706167652e205468652063757272656e746c792061>3.986 F -.25<7661>-.2 G 1.486<696c61626c65206d6f64657320617265>.25 F F2<636f6e> 3.986 E -.1<7665>-.4 G<7274>.1 E F0<2c>A F2<6469616d65746572>100 201.6 Q F0<2c>A F2<636c6366>4.18 E F0<2c>A F2<71>4.18 E F0<616e64>4.18 E F2 <63747479>4.18 E F0 6.681<2e54>C<6865>-6.681 E F2<636f6e>4.181 E -.1 <7665>-.4 G<7274>.1 E F0 1.681 <6d6f646520697320746875732064657363726962656420696e20746865>4.181 F F2 <6d6378636f6e>4.181 E -.1<7665>-.4 G<7274>.1 E F0<6d616e75616c>4.181 E <706167652e>100 213.6 Q<496e>100 237.6 Q -.2<766f>-.4 G<6b696e67>.2 E F2 <6d6378>3.912 E F0 1.412<776974686f7574206172>3.912 F 1.412<67756d656e74 732063617573657320697420746f207072696e74206f75742061206c697374206f662061> -.18 F -.25<7661>-.2 G 1.412 <696c61626c65206d6f646573207769746820612073686f7274>.25 F<64657363726970 74696f6e206f66207468652074797065206f6620636f6d6d616e64206c696e652065>100 249.6 Q<787065637465642062792074686174206d6f64652e>-.15 E<496e>100 273.6 Q -.2<766f>-.4 G<6b696e67>.2 E F2<6d6378>2.788 E F0 .289<77697468206a75 73742061206d6f64652077696c6c207072696e74206f75742061206c6f6e676572206c69 7374696e67206f66206f7074696f6e732061>2.788 F -.25<7661>-.2 G .289 <696c61626c6520666f722074686174207061727469632d>.25 F 1.789 <756c6172206d6f64652e>100 285.6 R 1.789<4d6f6465732074686174206172652061 626c6520746f2066756e6374696f6e206e6f726d616c6c7920776974686f7574206172> 6.789 F 1.788<67756d656e74732063616e20626520696e>-.18 F -.2<766f>-.4 G -.1<6b65>.2 G 4.288<6462>.1 G<79>-4.288 E<616464696e6720746865>100 297.6 Q F4<2d2d6e6f70>2.5 E F0<6172>2.5 E<67756d656e742e>-.18 E<5365>100 321.6 Q -.15<7665>-.25 G .047 <72616c206f7074696f6e732061726520736861726564206265747765656e20616c6c> .15 F F2<6d6378>2.547 E F0 .048<6d6f6465732e204e6f7465207468617420746865 7365206f7074696f6e73206172652073706563698c656420616674657220746865>2.547 F F2<6d6f6465>100 333.6 Q F0 2.5<2e53>C<6565>-2.5 E F2<4f5054494f4e53> 2.5 E F0<2e>A<546865>100 357.6 Q F2<2d2d76>2.5 E<657273696f6e>-.1 E F0 <636175736573>2.5 E F2<6d6378>2.5 E F0<746f207072696e74206f75742076>2.5 E<657273696f6e20616e64206c6963656e736520696e666f726d6174696f6e2e>-.15 E <49737375696e67>100 381.6 Q F4 .23<6d63782068656c70206d6f6465>2.73 F F0 .23<77696c6c206361757365>2.73 F F2<6d6378>2.73 E F0 .229<746f206c6f6f6b 20666f722061206d616e75616c20706167652064657363726962696e67>2.73 F F4 <6d6f6465>2.729 E F0 .229<616e6420646973706c6179206974>2.729 F .227<6966 20666f756e642e2054686973207265717569726573207468617420746865204d414e50> 100 393.6 R -1.11<4154>-.92 G 2.728<4865>1.11 G -.4<6e76>-2.728 G .228 <69726f6e6d656e742076>.4 F .228<61726961626c6520636f6e7461696e7320746865 206469726563746f727920696e207768696368>-.25 F 2.343<746865204d434c2d6564 6765206d616e75616c207061676573207765726520696e7374616c6c65642e2054686973 2077696c6c20757375616c6c79206265>100 405.6 R F3 <5052454649582f7368617265>4.842 E F0 4.842<2c77>C<68657265>-4.842 E F3 <505245464958>100 417.6 Q F0 <697320746865207061746820776974682077686963682074686520736f667477>2.5 E <6172652077>-.1 E<617320636f6e8c67757265642e>-.1 E F1<4f5054494f4e53>20 434.4 Q F0<546865736520617265206f7074696f6e732074686174207065727461696e 20746f20616c6c206d6f6465732e20546865>100 446.4 Q 2.5<7973>-.15 G <686f756c642062652073706563698c6564>-2.5 E F4<6166746572>2.5 E F0 <746865206d6f6465206172>2.5 E<67756d656e742e>-.18 E F2<2d68>100 470.4 Q F0<28>2.5 E F4<73796e6f70736973>A F0<29>A F2<2d2d68656c70>100 482.4 Q F0 <28>2.5 E F4<73796e6f70736973>A F0<29>A<4c6973742061>120 494.4 Q -.25 <7661>-.2 G<696c61626c65206f7074696f6e732e>.25 E F2<2d2d6e6f70>100 518.4 Q F0<28>2.5 E F4<6e6f2d6f70>A F0<29>A .356<4e6f7420616e206f7074696f6e2e 2054686973206f7074696f6e20686173206e6f206566>120 530.4 R .356 <66656374207468656e20746f20696e6372656d656e7420746865206172>-.25 F .357 <67756d656e7420636f756e742e20546869732063616e206265>-.18 F .917 <75736566756c20666f72>120 542.4 R F2<6d6378>3.417 E F0 .917<6d6f64657320 7768696368206172652061626c6520746f2066756e6374696f6e20776974686f75742061 6e>3.417 F 3.416<796f>-.15 G .916 <7074696f6e732e20537563682061206d6f646520747970692d>-3.416 F 1.245<6361 6c6c792072656164732066726f6d20535444494e2c2077726974657320746f205354444f 5554>120 554.4 R 3.745<2c61>-.74 G 1.245<6e64207573657320646566>-3.745 F 1.245<61756c742073657474696e67732e20486f>-.1 F<7765>-.25 E -.15<7665> -.25 G 2.045 -.4<722c2073>.15 H<696d706c79>.4 E .917<73706563696679696e 672061206d6f646520776974686f7574206f7074696f6e73206c65616473>120 566.4 R F2<6d6378>3.417 E F0 .917<746f206f75747075742061206c697374206f662061> 3.417 F -.25<7661>-.2 G .916 <696c61626c65206f7074696f6e7320666f722074686174>.25 F <6d6f64652e20546869732063616e20626520707265>120 578.4 Q -.15<7665>-.25 G <6e746564206279207573696e6720746865>.15 E F2<2d2d6e6f70>2.5 E F0 <6f7074696f6e2e>2.5 E F2<2d736574>100 602.4 Q F0<28>2.5 E F4 -.1<6b65>C <793d76616c>-.2 E F0<29>A .143<5365747320746865206b>120 614.4 R -.15 <6579>-.1 G F2 -.1<6b65>2.65 G<79>.1 E F0 .143<746f2076>2.643 F <616c7565>-.25 E F2 -.1<7661>2.5 G<6c>.1 E F0 .143<696e2074686520656e> 2.643 F 2.643<7669726f6e6d656e742e20536f6d65>-.4 F .143 <6d6f64657320616c6c6f>2.643 F 2.643<7761>-.25 G .143 <646a7573746d656e74206f662073657474696e6773>-2.643 F <696e2074686973206d616e6e65722e>120 626.4 Q F2<2d7072>100 650.4 Q <6f6772>-.18 E<657373>-.18 E F0<3c6e756d3e2028>2.5 E F4<7072>A -.1<6f67> -.45 G -.37<7265>.1 G<737320696e74657276616c2073697a65>.37 E F0<29>A <44658c6e65732074686520696e74657276>120 662.4 Q<616c20746861742064658c6e 6573207468652070726f6772657373206672657175656e63>-.25 E<792e>-.15 E F2 <2d2d646562>100 686.4 Q<7567>-.2 E F0<28>2.5 E F4 <7475726e206f6e20646562>A<7567>-.2 E<67696e67>-.1 E F0<29>A -.45<5475> 120 698.4 S<726e20646562>.45 E<756767696e67206f6e2e>-.2 E F2<2d2d76>100 722.4 Q<657273696f6e>-.1 E F0<28>2.5 E F4<73686f7720766572>A<73696f6e> -.1 E F0<29>A<6d63782031322d313335>20 768 Q<3134204d61792032303132> 159.285 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 157.895<6d63782831292055534552>20 48 R 160.395 <434f4d4d414e4453206d6378283129>2.5 F<53686f>120 84 Q 2.5<7776>-.25 G <657273696f6e2e>-2.65 E/F1 10.95/Times-Bold@0 SF -.548<4155>20 100.8 S <54484f52>.548 E F0<5374696a6e2076>100 112.8 Q<616e20446f6e67656e2e>-.25 E F1<53454520414c534f>20 129.6 Q/F2 10/Times-Bold@0 SF <6d636c66616d696c79283729>100 141.6 Q F0<666f7220616e206f>2.5 E -.15 <7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c20746865 20646f63756d656e746174696f6e20616e6420746865207574696c697469657320696e20 746865206d636c2066>-2.5 E<616d696c792e>-.1 E<6d63782031322d313335>20 768 Q<3134204d61792032303132>159.285 E<32>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mclpipeline.html0000644000402500021140000007670411754271043013247 00000000000000 The mclpipeline manual

14 May 2012    mclpipeline 12-135

NAME

mclpipeline — a generic pipeline for generating and scrutinizing mcl clusterings.

NOTE
mcl has acquired the ability to manipulate label input directly. This enables a very lightweight mechanism of generating clusterings by teaming up mcl with a lightweight parser. You might want to use this mechanism. Example invocations using the mcxdeblast BLAST parser are documented in the mcl manual.

SYNOPSIS

mclpipeline [options] <file-name>

where <file-name> is either the name of the data input file, or its base name. In the latter case the --xi-dat option is required. In case mclpipeline is indeed used to control all stages from the data input file onwards, usage will often be like this:

mclpipeline [prepare options] --prepare-mcl <file-name> mclpipeline [cluster options 1] --start-mcl <file-name> mclpipeline [cluster options 2] --start-mcl <file-name> .. etc

mclpipeline can also be used to control shorter pipelines, i.e. in case the input matrix was already created or in case pre-assembled parts of the input matrix were already created. In this case, usage will often be like this:

mclpipeline [cluster options 1] --start-mcl=<fname> mclpipeline [cluster options 2] --start-mcl=<fname> or mclpipeline [assembly options] --start-assemble=<fname> --prepare-mcl

NOTE
It is possible to make mclpipeline output a large arrary of performance measures related to nodes and clusters in hyperlinked output by supplying the --fmt-fancy option. This can be useful if one wants to scrutinize a clustering in greater detail and navigate within the clustering. The output then includes listings of external nodes that are relevant/close to a given cluster, and vice versa, listings of external clusters that are relevant/close to a given node.

Generating this more intricate output requires the presence of the zoem macro processor. Refer to the SEE ALSO section and the clmformat manual for more information on zoem. By default zoem is not required, and the return result is a file where each line contains a clustering consisting of tab-separated labels.

If this program does not work as expected, please file a bug report with the developer and/or subscribe to mcl-devel as indicated on http://micans.org/mcl/. The problem will then be fixed.

The full list of pipeline options is given below. Start simple, and if you need some behaviour, try to see if there is an option that fits your needs. If you use a wrapper pipeline such as mclblastline, you can ignore the --parser and --parser-tag options as they are provided by the wrapper.

mclpipeline --parser=application (data parser) --parser-tag=str (parse option transporter)

[--whatif (do not execute)]
[--start-assemble (skip parse stage)]
[--start-mcl (skip earlier stages)]
[--start-format (skip earlier stages)]
[--prepare-mcl (do preparatory stages)]
[--help (summary of options)]
[--xi=suf (strip suf from input file)]
[--xo-dat=suf (attach suf to parse output)]
[--xo-ass=suf (attach suf to assembly output)]
[--xi-mcl=suf (use with --start-mcl)]
[--xo-mcl=suf (replace mcl output suffix)]
[--xa-mcl=str (append to mcl output suffix)]
[--xe-mcl=suf (append to mcl output)]
[--xo-fmt=suf (attach suf to clmformat output)]
[--ass-repeat=str (assembly repeat option)]
[--ass-nomap (ignore map file)]
[--ass-opt=val (assembly option transporter)]
[--mcl-te=num (#expansion threads)]
[--mcl-I=float (mcl inflation value)]
[--mcl-i=float (mcl initial inflation value)]
[--mcl-l=float (mcl initial loop length)]
[--mcl-c=float (mcl center value)]
[--mcl-pi=float (mcl pre-inflation value)]
[--mcl-scheme=i (mcl scheme index)]
[--mcl-o=fname (do not use)]
[--mcl-opt=val (mcl option transporter)]
[--fmt-lump-count=num (collect formatted output)]
[--fmt-opt val (clmformat option transporter)]
[--fmt-tab fname (use this tab file)]
[--fmt-notab (ignore tab file)]
<file-name>

DESCRIPTION

mclpipeline encapsulates a sequence of programs to be run on some input data in order to obtain clusterings and formatted output representing the clusterings, while maintaining unique file names and file name ensembles corresponding with differently parametrized runs.

The script can behave in several ways. By default, the pipeline consists of the stages of parsing, assembly, clustering, and formatting. The parsing stage is to be represented by some parser script obeying the interface rules described below. The assembly stage is done by mcxassemble, the clustering stage is done by mcl, and the formatting stage is done by clmformat.

The script can also be put to simpler uses, e.g. letting the script take care of unique file names for differently parametrized mcl runs. In this case there is no need to specify either the parser or the data file, and subsequent invocations might look like this:

mclpipeline --start-mcl=<fname> --mcl-I=1.6 --mcl-scheme=4 mclpipeline --start-mcl=<fname> --mcl-I=2.0 --mcl-scheme=4 mclpipeline --start-mcl=<fname> --mcl-I=2.4 --mcl-scheme=4 .. etc

It is easiest if for each parser a wrapper script is written encapsulating the parser and mclpipeline. A mechanism is provided through which mclpipeline can recognize options that are meant to be passed to the parser. An example of such a wrapper script is the BLAST pipeline mclblastline that basically calls mclpipeline with the parameters --parser=mcxdeblast --parser-tag=blast. In this case the parser is mcxdeblast, and mclpipeline will pass any options of the forms --blast-foo and --blast-bar=zut to the parser (respectively as --foo and --bar=zut).

For a given data set the stages of parsing and assembling will often not need to be repeated, especially if there is a well established way of creating a matrix from the input data. In this case, usage will look like

mclpipeline [parse/assembly options] --prepare-mcl <file-name> mclpipeline [cluster options 1] --start-mcl <file-name> mclpipeline [cluster options 2] --start-mcl <file-name> mclpipeline [cluster options 3] --start-mcl <file-name> ...

Note that mclpipeline will store the output of those runs in unique file names derived from the parametrizations.

There are some options that affect the file names of intermediate results. In the above setup of repeated runs, if used in one run, they must be used in all runs, as mclpipeline uses them to compute the file names it needs. For the setup above, these options are --xi=suf, --xo-dat=suf, and --xo-ass=suf.

There are other ways of resuming the pipeline, and one must always take care that options starting with --xi-, --xo-, --xa, or --xe are repeated among preparatory and subsequent runs. These tags respectively mnemonize extension in, extension out, extension append, and extension extra.

Should one want to experiment with various ways of creating input matrices, then mclpipeline supplies options to create unique file names and file name ensembles corresponding with different setups and parametrizations. These are --xo-dat=suf for the parsing stage and --xo-ass=suf for the assembly stage. mclpipeline automatically generates unique file names for the cluster results, but it does not do so for the parse and assembly results.

Parser interface requirements
The parser should recognize its last argument as a file name or as the base name of a file. It should produce the files base.raw, base.hdr, and preferably base.tab and base.map, where the base name base is determined as described below.

mclpipeline will pass its last argument <file-name> to the parser. The parser should recognize the --xi-dat=suf and --xo-dat=suf options. If the first is present, it should try to strip <file-name> of the suffix specified in the value and use the result as the initial part of the base name for the files it constructs. If stripping does not succeed, it must interpret <file-name> as the base name and append the suffix in order to construct the name of the file it will try to read. If the --xo-dat=suf option is present, it must append the suffix specified in the value to the base part as described above. The result is then the full base name to which the raw, hdr, and other suffixes will be appended.

Parser interface examples

<parser> --xi-dat=abc --xo-dat=xyz foo * parser reads foo.abc, writes foo.xyz.raw, foo.xyz.hdr et cetera. <parser> --xi-dat=abc --xo-dat=xyz foo.abc * idem <parser> --xo-dat=xyz foo.abc * parser reads foo.abc, writes foo.abc.xyz.raw et cetera. <parser> --xi-dat=abc foo.abc * parser reads foo.abc, writes foo.raw, foo.hdr et cetera. <parser> foo.abc * parser reads foo.abc, writes foo.abc.raw, foo.abc.hdr et cetera.

Output file names construction
The files of primary interest are the mcl output file and the formatted output produced by clmformat. The pipeline constructs a file name for the mcl output in which several parameters are encoded. The first part of the file name is either the base name for the assembly stage, or simply the name of the input file, depending on whether the option --xo-ass=suf was used or not.

A suffix encoding key-value pairs is appended. By default it has the form I..s., e.g. I20s2. The latter examples denotes primary inflation value 2.0 and scheme 2. The pipeline will automatically append several other mcl parameters if they are used. These correspond with the pipeline options --mcl-i=f, --mcl-l=i, --mcl-c=f, and --mcl-pi=f, which in turn correspond with the mcl options -i f, -l i, -c f, and -pi f. The order of appending is alphabetical with capitals preceding lowercase, so a full example is I25c30i35l2pi28s3.

OPTIONS

--whatif (do not execute)

Shows only what would be done without executing it. Hugely useful!

 
--start-assemble (skip parse stage)

Skip the parse stage, assume the necessary files have been created in a previous run.

 
--prepare-mcl (do preparatory stages)

Do the parsing and assembly stage, then quit. Useful if you want to do multiple cluster runs for a given graph - use --start-mcl

 
--start-mcl (skip earlier stages)

Immediately start the mcl stage. Assume the necessary files have been created in a previous run.

NOTE
This option can be used as --start-mcl=fname. In this case, no final file name argument need be given, and mcl will use fname as the file name for its input.

The difference with --start-mcl is that the latter will assume it is picking up the results of a previous run. The names of those results might include suffixes corresponding with the parse and assembly stage (cf. --xo-dat and --xo-ass). If you are not clear on this (and you should not be), exercise the --whatif option to be sure.

 
--start-format (skip earlier stages)

Immediately start the format stage. Assume the necessary files have been created in a previous run.

 
--help (summary of options)

Print a terse summary of options.

 
--xi suf (strip suffix from data file)

In normal usage, this will strip the specified suffix from the data file to obtain the base name for further output. When used with --start-mcl=fname the same behaviour is applied to the mcl input file name specified in fname.

 
--xo-dat suf (attach suf to parse output)

This suffix will be attached to the base name of the parse output. It can be used to distinguish between different parse parametrizations if this is applicable.

 
--xo-ass suf (attach suf to assembly output)

This suffix will be attached to the base name of the assembly output. It can be used to distinguish between different assembly parametrizations if this is applicable.

 
--xo-mcl suf (replace mcl output suffix)

This suffix will be used instead of the suffix by default created by the pipeline.

 
--xa-mcl str (append to mcl output suffix)

This string will be appended to the suffix by default created by the pipeline.

 
--xe-mcl suf (append to mcl output)

This string will be appended as a single suffix to the output base name before mclpipeline appends its own suffix.

 
--xo-fmt suf (attach suf to clmformat output)

This suffix will be used instead of the suffix by default used by the formatting stage.

 
--ass-repeat str (assembly repeat option)

Corresponds with the mcxassemble -r mode option. Refer to the mcxassemble manual.

 
--ass-opt val (assembly option transporter)

Transfer -opt val to mcxassemble.

 
--ass-nomap (ignore map file)

Either no map file is present or it should be ignored. For parsers that don't write map files.

 
--mcl-I float (mcl inflation value)

The (main) inflation value mcl should use. This is the primary mcl option.

 
--mcl-scheme i (mcl scheme index)

The scheme index to use. This options is also important. Refer to the mcl manual.

 
--mcl-te num (#expansion threads)

The number of threads mcl should use.

 
--mcl-i float (mcl initial inflation value)

The initial inflation value mcl should use. Only for fine-tuning or testing.

 
--mcl-l float (mcl initial loop length)

The length of the loop in which initial inflation is applied. By default zero.

 
--mcl-c float (mcl center value)

The center value. One may attempt to affect granularity by exercising this option, which controls the loop weights in the input matrix. Refer to the mcl manual.

 
--mcl-pi float (mcl pre-inflation value)

Pre-inflation, another option which may possibly affect granularity by changing the input matrix. It makes the edge weight distribution either more or less homogeneous. Refer to the mcl manual.

 
--mcl-o fname (do not use)

Set the mcl output name.

 
--mcl-opt val (mcl option transporter)

Transfer -opt val to mcl.

 
--fmt-dump-stats (add simple measures to dump file)

This adds some simple performance measures to the dump file. For each cluster, five columns proceed the label listing. These are the cluster ID, the number of elements in the cluster, the projection (percentage of within-cluster edge weight relative to total outgoing edge weight), the efficiency of the cluster (which is the average of the efficiency of all its nodes), and the maximum efficiency (average of the max-efficiency of all the nodes). Look into the clmformat manual for more information on and references to the efficiency measures.

 
--fmt-fancy (create detailed output (requires zoem))

Creates extensive description of node/cluster and cluster/cluster relationships.

 
--fmt-lump-count num (collect formatted output)

Collect clusters in the same file until the total number of nodes has exceeded num (in the formatted output). Only meaninful when --fmt-fancy is given.

 
--fmt-tab (use this tab file)

Explicitly specify the tab file to use.

 
--fmt-notab (ignore tab file)

Either no tab file is present or it should be ignored. For parsers that don't write tab files.

 
--fmt-opt val (clmformat option transporter)

Transfer -opt val to clm format.

AUTHOR

Stijn van Dongen

SEE ALSO

mcxdeblast, mclblastline, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

With default settings, mclpipeline depends on the presence of zoem. It can be obtained from http://micans.org/zoem/ .

mcl-12-135/doc/mcxquery.html0000644000402500021140000004626511754271045012624 00000000000000 The mcx q manual

14 May 2012    mcx q 12-135

NAME

mcxquery — compute simple graph statistics

SYNOPSIS

mcxq is not in actual fact a program. This manual page documents the behaviour and options of the mcx program when invoked in mode q. The options -h, --apropos, --version, -set, --nop, -progress <num> are accessible in all mcx modes. They are described in the mcx manual page.

mcxquery [-abc <fname> (specify label input)] [-imx <fname> (specify matrix input)] [-o <fname> (output file name)] [-tab <fname> (use tab file)] [--node-attr (output node degree and weight attributes)] [-vary-threshold <start,end,step,scale> (analyze graph at similarity cutoffs)] [-vary-knn <start,end,step,scale> (analyze graph for varying k-NN)] [-vary-ceil <start,end,step,scale> (analyze graph for varying ceil reductions)] [-report-scale <num> (edge weight/threshold scaling)] [--no-legend (do not output explanatory legend)] [--reduce (use reduced matrix)] [--test-metric (test whether graph distance is metric)] [--test-cycle (test whether graph contains cycles)] [-test-cycle <num> (test cycles, report cyclees)] [--vary-correlation (analyze graph at correlation cutoffs)] [--clcf (include clustering coefficient analysis)] [--eff (include efficiency criterion)] [-div <num> (cluster size separating value)] [--dim (report native format and dimensions)] [--edges (output all arc weights, unsorted)] [--edges-sorted (output all arc weights, sorted)] [-edges-hist <start,end,step,scale (output arc weight histogram)] [--output-table (output logical tab separated table without key)] [-t <num> (number of threads to use)] [-icl <fname> (input clustering)] [-tf spec (apply tf-spec to input matrix)] [-h (print synopsis, exit)] [--apropos (print synopsis, exit)] [--version (print version, exit)]

DESCRIPTION

The main use of mcxquery is to analyze a graph at different similarity cutoffs. Typically this is done on a graph constructed using a very permissive threshold. For example, one can create a graph from array expression data using mcxarray with a very low pearson correlation cutoff such as 0.2 or 0.3. Then mcxquery can be used to analyze the graph at increasingly stringent thresholds of 0.25, 0.30, 0.35 .. 0.95. Attributes supplied across different thresholds are the number of connected components, the number of singletons, adn statistics (median, average, iqr) on node degrees and edge weights.

OPTIONS

-abc <fname> (label input)

The file name for input that is in label format.

 
-imx <fname> (input matrix)

The file name for input that is in mcl native matrix format.

 
-o <fname> (output file name)

Set the name of the file where output should be written to.

 
-tab <fname> (use tab file)

This option causes the output to be printed with the labels found in the tab file.

 
--dim (report native format and dimensions)

This will report the matrix format (either interchange or binary) and the matrix dimensions. For a graph the two reported dimensions should be equal.

 
--edges (output all arc weights, unsorted)
--edges-sorted (output all arc weights, sorted)
-edges-hist <start,end,step,scale (output arc weight histogram)

These options are fairly self documenting. The result of -edges-hist is a tab separated table of bin offsets and bin counts.

 
--output-table (output logical tab separated table without key)

This option causes table output such as provided by --vary-correlation to be output in a logical tab-separated format rather than pretty-printed.

 
-vary-threshold <start,end,step,scale> (analyze graphs at similarity cutoffs)

All of start, end, step and scale must be integer numbers. From these a list of threshold is constructed, starting from start / scale, (start + step) / scale, (start + 2 step) / scale, and so on until a value larger than or equal to end / scale is reached.

 
--vary-correlation (analyze graphs at correlation cutoffs)

This instructs mcxquery to use a threshold list suitable for use with graphs in which the edge weight similarities are correlations. The list starts at 0.2 and ends at 0.95 using increments of 0.05. If a different start or increment is required it can be achieved by using the -vary-threshold option. For example, a start of 0.10 and an increment of 0.02 are obtained by issuing -vary-threshold 10,100,2,100.

 
defopt{--no-legend}{do not output explanatory legend}

For a fully parseable output format use --output-table.

 
--clcf (include clustering coefficient analysis)
--eff (include efficiency criterion)

These options can be used to compute additional characteristics in the analysis of thresholded graphs with --vary-correlation and -vary-threshold. For large graphs these are relatively time-consuming to compute. More information and a reference for the efficiency criterion can be found in clminfo.

 
-vary-knn <start,end,step,scale> (analyze graphs for varying k-NN)
-vary-ceil <start,end,step,scale> (analyze graphs for varying ceil reductions)
--reduce (use reduced matrix)

These options cause analysis of a graph as it is subjected to reductions across a range of parameters. Refer to mcxio for a description of these reductions. The analyses starts at the end argument, and progresses towards the start argument using decrements of size step. By default the reduction is always computed relative to the start matrix, i.e. the input matrix after -tf transformations have optionally been applied. Specifying --reduce causes this to change so that each new reduction is calculated relative to the reduction just computed.

For graphs with ties among edge weights it may be useful to use -tf '#tug()'. This will add small perturbations to the edge weights and have the effect of breaking ties. By default perturbations are computed using the cosine between the vectors of neighbours of the two nodes incident to an edge. This can be changed to a random perturbation with -tf '#rug()'.

 
--test-cycle (test whether graph contains cycles)
-test-cycle <num> (test cycles, report cyclees)

Test whether the input graph contains cycles. With the second option nodes that are part of a cycle are output, up to a maximum of <num> nodes. Use <num>=-1 to output all such nodes.

 
--test-metric (test whether graph distance is metric)

This tests all possible triangle relationships.

 
-report-scale <num> (edge weight / threshold scaling)

The edge weights mean, average, and inter-quartile range, as well as the different threshold steps are all rescaled in the reported output to avoid printing of fractional part. If -vary-threshold was supplied then scaling factor specified in the argument is used. With --vary-correlation a scaling factor of 100 is used. Either can be overridden by using the present option.

 
-div <num> (cluster size separating value)

When analyzing graphs at different thresholds with one of the options above, mcxquery reports the percentage of nodes contained in clusters not exceeding a specified size, by default 3. This number can be changed using the -div option.

 
-tf <tf-spec> (transform input matrix values)

Transform the input matrix values according to the syntax described in mcxio.

 
-t <num> (number of threads to use)

This has an effect only when using the -vary-knn option, and is only useful on multi-CPU machines.

 
--node-attr (output node degree and weight attributes)

Output is in the form of a tab separated file. The option -icl can be used in conjuction.

 
-icl <fname> (input clustering)

Output for each node the size of the cluster it is in. This option can be used in conjunction with --node-attr.

SEE ALSO

mcxio, and mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mclfaq.azm0000644000402500021140000014500711401257266012025 00000000000000\import{aephea/ref.zmm} \import{mcx.zmm} \import{pud/faq.zmm} \begin{pud::man}{ {name}{MCL\~FAQ} {html_title}{The MCL FAQ} {author}{Stijn van Dongen} {section}{7} {synstyle}{long} {defstyle}{long} \man_share } \"faq::preamble" \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mclfaq}{faqs and facts about the MCL cluster algorithm.} \par{ MCL refers to the generic MCL algorithm and the MCL process on which the algorithm is based. \mcl refers to the implementation. This FAQ answers questions related to both. In some places MCL is written where MCL or mcl can be read. This is the case for example in \iref{kind}{section \ref{kind}{num},\~\ref{kind}{cap}}. It should in general be obvious from the context.} \par{ This FAQ does not begin to attempt to explain the motivation and mathematics behind the MCL algorithm - the internals are not explained. A broad view is given in faq\~\fnum{overview}, and see also faq\~\fnum{innards} and section \secref{references}.} \par{ Some additional sections preceed the actual faq entries. The TOC section contains a listing of all questions. \${html}{ \bf{Clicking on the number of a question} (where it is answered) will take you to the corresponding section of the table of contents. }} \sec{resources}{RESOURCES} \par{ The manual pages for all the utilities that come with \mcl; refer to \mysib{mclfamily} for an overview.} \: \par{ \: mcl development is discussed on mcl-devel@micans.org, \: list information is at \: \httpref{https://lists.micans.org/listinfo/mcl-devel}.} \par{ See the \secref{references} Section for publications detailing the mathematics behind the MCL algorithm.} \sec{toc}{TOC} \"faq::maketoc" \sec{faq}{FAQ} \begin{faqsec}{ {ref}{general} {cap}{General questions} } \faq{}{For whom is mcl and for whom is this FAQ?} \car{ For everybody with an appetite for graph clustering. Regarding the FAQ, I have kept the amount of mathematics as low as possible, as far as matrix analysis is concerned. Inevitably, some terminology pops up and some references are made to the innards of the MCL algorithm, especially in the section on resources and accuracy. Graph terminology is used somewhat more carelessly though. The future might bring definition entries, right now you have to do without. Mathematically inclined people may be interested in the pointers found in the \secref{references} section.} \par{ Given this mention of mathematics, let me point out this one time only that using \mcl is extremely straightforward anyway. You need only mcl and an input graph (refer to the \sibref{mcl}{mcl manual page}), and many people trained in something else than mathematics are using mcl happily.} \faq{overview}{What is the relationship between the MCL process, the MCL algorithm, and the 'mcl' implementation?} \car{ \mcl is what you use for clustering. It implements the MCL algorithm, which is a cluster algorithm for graphs. The MCL algorithm is basically a shell in which the MCL process is computed and interpreted. I will describe them in the natural, reverse, order.} \par{ The MCL process generates a sequence of stochastic matrices given some initial stochastic matrix. The elements with even index are obtained by \it{expanding} the previous element, and the elements with odd index are obtained by \it{inflating} the previous element given some inflation constant. Expansion is nothing but normal matrix squaring, and inflation is a particular way of rescaling the entries of a stochastic matrix such that it remains stochastic.} \par{ The sequence of MCL elements (from the MCL process) is in principle without end, but what happens is that the elements converge to some specific kind of matrix, called the \it{limit} of the process. The heuristic underlying MCL predicts that the interaction of expansion with inflation will lead to a limit exhibiting cluster structure in the graph associated with the initial matrix. This is indeed the case, and several mathematical results tie MCL iterands and limits and the MCL interpretation together (\secref{references}).} \par{ The MCL algorithm is simply a shell around the MCL process. It transforms an input graph into an initial matrix suitable for starting the process. It sets inflation parameters and stops the MCL process once a limit is reached, i.e. convergence is detected. The result is then interpreted as a clustering.} \par{ The \mcl implementation supplies the functionality of the MCL algorithm, with some extra facilities for manipulation of the input graph, interpreting the result, manipulating resources while computing the process, and monitoring the state of these manipulations.} \faq{}{What do the letters MCL stand for?} \car{ For \it{Markov Cluster}. The MCL algorithm is a \bf{cluster} algorithm that is basically a shell in which an algebraic process is computed. This process iteratively generates stochastic matrices, also known as \bf{Markov} matrices, named after the famous Russian mathematician Andrei Markov.} \faq{}{How could you be so feebleminded to use MCL as abbreviation? Why is it labeled 'Markov cluster' anyway?} \car{ Sigh. It is a widely known fact that a TLA or Three-Letter-Acronym is \it{the canonical self-describing abbreviation for the name of a species with which computing terminology is infested} (quoted from the Free Online Dictionary of Computing). Back when I was thinking of a nice tag for this cute algorithm, I was totally unaware of this. I naturally dismissed \it{MC} (and would still do that today). Then \it{MCL} occurred to me, and without giving it much thought I started using it. A Google search (or was I still using Alta-Vista back then?) might have kept me from going astray.} \par{ Indeed, \it{MCL} is used as a tag for \it{Macintosh Common Lisp}, \it{Mission Critical Linux}, \it{Monte Carlo Localization}, \it{MUD Client for Linux}, \it{Movement for Canadian Literacy}, and a gazillion other things \- refer to the file \httpref{mclmcl.txt}. Confusing. It seems that the three characters \v{MCL} possess otherworldly magical powers making them an ever so strange and strong attractor in the space of TLAs. It probably helps that Em-See-Ell (Em-Say-Ell in Dutch) has some rhythm to it as well. Anyway MCL stuck, and it's here to stay.} \par{ On a more general level, the label \it{Markov Cluster} is not an entirely fortunate choice either. Although phrased in the language of stochastic matrices, MCL theory bears very little relation to Markov theory, and is much closer to matrix analysis (including Hilbert's distance) and the theory of dynamical systems. No results have been derived in the latter framework, but many conjectures are naturally posed in the language of dynamical systems.} \faq{innards}{Where can I learn about the innards of the MCL algorithm/process?} \car{ Currently, the most basic explanation of the MCL algorithm is found in the technical report \refer{cafg}. It contains sections on several other (related) subjects though, and it assumes some working knowledge on graphs, matrix arithmetic, and stochastic matrices.} \faq{}{For which platforms is mcl available?} \car{ It should compile and run on virtually any flavour of UNIX (including Linux and the BSD variants of course). Following the instructions in the INSTALL file shipped with mcl should be straightforward and sufficient. Courtesy to Joost van Baal who completely autofooled \mcl.} \par{ Building MCL on Wintel (Windows on Intel chip) should be straightforward if you use the full suite of cygwin tools. Install cygwin if you do not have it yet. In the cygwin shell, unpack mcl and simply issue the commands \it{./configure, make, make install}, i.e. follow the instructions in INSTALL.} \par{ This MCL implementation should also build successfully on Mac OS X.} \: \par{ \: If you have further questions or news about this issue, contact \: mcl-devel lists micans org.} \faq{versioning}{How does mcl's versioning scheme work?} \car{ The current setup, which I hope to continue, is this. All releases are identified by a date stamp. For example 02-095 denotes day 95 in the year 2002. This date stamp agrees (as of April 2000) with the (differently presented) date stamp used in all manual pages shipped with that release. For example, the date stamp of the FAQ you are reading is \bf{\"mcx::date"}, which corresponds with the MCL stamp \bf{\"mcx::stamp"}. The Changelog file contains a list of what's changed/added with each release. Currently, the date stamp is the primary way of identifying an \mcl release. When asked for its version by using \useopt{--version}, mcl outputs both the date stamp and a version tag (see below).} \end{faqsec} \begin{faqsec}{ {ref}{ioformat} {cap}{Input format} } \faq{}{How can I get my data into the MCL matrix format?} \car{ This is described in the \lref{clmprotocols.html}{protocols manual page}. } \end{faqsec} \begin{faqsec}{ {ref}{kind} {cap}{What kind of graphs} } \faq{}{What is legal input for MCL?} \car{ Any graph (encoded as a matrix of similarities) that is nonnegative, i.e. all similarities are greater than or equal to zero.} \faq{}{What is sensible input for MCL?} \car{ Graphs can be weighted, and they should preferably be symmetric. Weights should carry the meaning of similarity, \it{not} distance. These weights or similarities are incorporated into the MCL algorithm in a meaningful way. Graphs should certainly not contain parts that are (almost) cyclic, although nothing stops you from experimenting with such input. } \faq{}{Does MCL work for weighted graphs?} \car{ Yes, unequivocally. They should preferably be symmetric/undirected though. See entries\~\fnum{whatkind} and\~\fnum{goodinput}.} \faq{}{Does MCL work for directed graphs?} \car{ Maybe, with a big caveat. See entries\~\fnum{goodinput} and\~\fnum{directedinput}.} \faq{}{Can MCL work for lattices / directed acyclic graphs / DAGs?} \car{ Such graphs [term] can surely exhibit clear cluster structure. If they do, there is only one way for mcl to find out. You have to change all arcs to edges, i.e. if there is an arc from i to j with similarity s(i,j) \- by the DAG property this implies s(j,i) = 0 \- then make s(j,i) equal to s(i,j).} \par{ This may feel like throwing away valuable information, but in truth the information that is thrown away (direction) is \it{not} informative with respect to the presence of cluster structure. This may well deserve a longer discussion than would be justified here.} \par{ If your graph is directed and acyclic (or parts of it are), you can transform it before clustering with mcl by using \useopt{-tf}{'#max()'}, e.g. } \verbatim{\:/ mcl YOUR-GRAPH -I 3.0 -tf '#max()'} \faq{}{Does MCL work for tree graphs?} \car{ Nah, I don't think so. More info at entry\~\fnum{whatkind}. You could consider the \aref{http://en.wikipedia.org/wiki/Strahler_number}{Strahler number}, which is numerical measure of branching complexity. } \faq{whatkind}{For what kind of graphs does MCL work well and for which does it not?} \car{ Graphs in which the diameter [term] of (subgraphs induced by) natural clusters is not too large. Additionally, graphs should preferably be (almost) undirected (see entry below) and not so sparse that the cardinality of the edge set is close to the number of nodes.} \par{ A class of such very sparse graphs is that of tree graphs. You might look into \it{graph visualization} software and research if you are interested in decomposing trees into 'tight' subtrees.} \par{ The diameter criterion could be violated by neighbourhood graphs derived from vector data. In the specific case of 2 and 3 dimensional data, you might be interested in \it{image segmentation} and \it{boundary detection}, and for the general case there is a host of other algorithms out there. [add]} \par{ In case of weighted graphs, the notion of \it{diameter} is sometimes not applicable. Generalizing this notion requires inspecting the \it{mixing properties} of a subgraph induced by a natural cluster in terms of its spectrum. However, the diameter statement is something grounded on heuristic considerations (confirmed by practical evidence \refer{pcfgcmce}) to begin with, so you should probably forget about mixing properties.} \faq{goodinput}{What makes a good input graph? How do I construct the similarities? How to make them satisfy this Markov condition?} \car{ To begin with the last one: you \it{need not and must not} make the input graph such that it is stochastic aka Markovian [term]. What you need to do is make a graph that is preferably symmetric/undirected, i.e. where s(i,j) = s(j,i) for all nodes i and j. It need not be perfectly undirected, see the following faq for a discussion of that. \mcl will work with the graph of random walks that is associated with your input graph, and that is the natural state of affairs.} \par{ The input graph should preferably be honest in the sense that if \v{s(x,y)=N} and \v{s(x,z)=200N} (i.e. the similarities differ by a factor 200), then this should really reflect that the similarity of \v{y} to \v{x} is neglectible compared with the similarity of \v{z} to \v{x}.} \par{ For the rest, anything goes. Try to get a feeling by experimenting. Sometimes it is a good idea to filter out high-frequency and/or low-frequency data, i.e. nodes with either very many neighbours or extremely few neighbours.} \faq{directedinput}{My input graph is directed. Is that bad?} \car{ It depends. The class of directed graphs can be viewed as a spectrum going from undirected graphs to uni-directed graphs. \it{Uni-directed} is terminology I am inventing here, which I define as the property that for all node pairs i, j, at least one of s(i,j) or s(j,i) is zero. In other words, if there is an arc going from i to j in a uni-directed graph, then there is no arc going from j to i. I call a node pair i, j, \it{almost uni-directed} if s(i,j) << s(j,i) or vice versa, i.e. if the similarities differ by an order of magnitude.} \par{ If a graph does not have (large) subparts that are (almost) uni-directed, have a go with mcl. Otherwise, try to make your graph less uni-directed. You are in charge, so do anything with your graph as you see fit, but preferably abstain from feeding mcl uni-directed graphs.} \faq{}{Why does mcl like undirected graphs and why does it dislike uni-directed graphs so much?} \car{ Mathematically, the mcl iterands will be \it{nice} when the input graph is symmetric, where \it{nice} is in this case \it{diagonally symmetric to a semi-positive definite matrix} (ignore as needed). For one thing, such nice matrices can be interpreted as clusterings in a way that generalizes the interpretation of the mcl limit as a clustering (if you are curious to these intermediate clusterings, see \iref{imac}{faq entry\~\refnumber{imac}}). See the \secref{references} section for pointers to mathematical publications.} \par{ The reason that mcl dislikes uni-directed graphs is not very mcl specific, it has more to do with the clustering problem itself. Somehow, directionality thwarts the notion of cluster structure. [add].} \faq{checksymmetry}{How do I check that my graph/matrix is symmetric/undirected?} \car{ Whether your graph is created by third-party software or by custom sofware written by someone you know (e.g. yourself), it is advisable to test whether the software generates symmetric matrices. This can be done as follows using the \sibref{mcxi}{mcxi utility}, assuming that you want to test the matrix stored in file \v{matrix.mci}. The mcxi utility should be available on your system if mcl was installed in the normal way.} \verbatim{mcxi /matrix.mci lm tp -1 mul add /check wm} \car{ This loads the graph/matrix stored in \v{matrix.mci} into \bf{mcxi}'s memory with the \mcxi \it{lm} primitive. \- the leading slash is how strings are introduced in the stack language interpreted by \mcxi. The transpose of that matrix is then pushed on the stack with the \it{tp} primitive and multiplied by minus one. The two matrices are added, and the result is written to the file \v{check}. The transposed matrix is the mirrored version of the original matrix stored in \v{matrix.mci}. If a graph/matrix is undirected/symmetric, the mirrored image is necessarily the same, so if you subtract one from the other it should yield an all zero matrix.} \par{ Thus, the file \v{check} \it{should look like this}:} \verbatim{(mclheader mcltype matrix dimensions x ) (mclmatrix begin )} \car{ Where \v{} is the same as in the file \v{matrix.mci}. If this is not the case, find out what's prohibiting you from feeding mcl symmetric matrices. Note that any nonzero entries found in the matrix stored as \v{check} correspond to node pairs for which the arcs in the two possible directions have different weight.} \end{faqsec} \begin{faqsec}{ {ref}{speed} {cap}{Speed and complexity} } \faq{howfast}{How fast is mcl/MCL?} \car{ It's fast - here is how and why. Let \v{N} be the number of nodes in the input graph. A straigtforward implementation of MCL will have time and space complexity respecively \v{O(N^3)} (i.e. cubic in \v{N}) and \v{O(N^2)} (quadratic in \v{N}). So you don't want one of those.} \par{ \mcl implements a slightly perturbed version of the MCL process, as discussed in section \iref{resource}{\refcaption{resource}}. Refer to that section for a more extensive discussion of all the aspects involved. This section is only concerned with the high-level view of things \it{and} the nitty gritty complexity details.} \par{ While computing the square of a matrix (the product of that matrix with itself), mcl keeps the matrix sparse by allowing a certain maximum number of nonzero entries per stochastic column. The maximum is one of the mcl parameters, and it is typically set somewhere between 500 and 1500. Call the maximum \v{K}.} \par{ mcl's time complexity is governed by the complexity of matrix squaring. There are two sub-algorithms to consider. The first is the algorithm responsible for assembling a new vector during matrix multiplication. This algorithm has worst case complexity \v{O(K^2)}. The pruning algorithm (which uses heap selection) has worst case complexity \v{O(L*log(K))}, where \v{L} is how large a newly computed matrix column can get before it is reduced to at most \v{K} entries. \v{L} is \it{bound by} the smallest of the two numbers \v{N} and \v{K^2} (the square of \v{K}), but on average \v{L} will be much smaller than that, as the presence of cluster structure aids in keeping the factor \v{L} low. [Related to this is the fact that clustering algorithms are actually used to compute matrix splittings that minimize the number of cross-computations when carrying out matrix multiplication among multiple processors.] In actual cases of heavy usage, \v{L} is of order in the tens of thousands, and \v{K} is in the order of several hundreds up to a thousand.} \par{ It is safe to say that in general the worst case complexity of mcl is of order O(N*K^2); for extremely tight and dense graphs this might become O(N*N*log(K)). Still, these are worst case estimates, and observed running times for actual usage are much better than that. (refer to faq\~\fnum{stats}).} \par{ In this analysis, the number of iterations required by mcl was not included. It is nearly always far below 100. Only the first few (less than ten) iterations are genuinely time consuming, and they are usually responsible for more than 95 percent of the running time.} \par{ The process of removing the smallest entries of a vector is called pruning. mcl outputs a summary of this once it is done. More information is provided in the pruning section of the \sibref{mcl}{mcl manual} and \iref{resource}{Section\~\refnumber{resource}} in this FAQ.} \par{ The space complexity is of order \v{O(N*K)}.} \faq{stats}{What statistics are available?} \car{ Few. Some experiments are described in \refer{pcfgcmce}, and \refer{eaflsdopf} mentions large graphs being clustered in very reasonable time. In protein clustering, \mcl has been applied to graphs with up to one million nodes, and on high-end hardware such graphs can be clustered within a few hours.} \faq{colsort}{Does this implementation need to sort vectors?} \car{ No, it does not. You might expect that one needs to sort a vector in order to obtain the \v{K} largest entries, but a simpler mechanism called \it{heap selection} does the job nicely. Selecting the \v{K} largest entries from a set of \v{L} by sorting would require \v{O(L*log(L))} operations; heap selection requires \v{O(L*log(K))} operations. Alternatively, the \v{K} largest entries can be also be determined in \v{O(N) + O(K log(K))} asymptotic time by using partition selection (more \aref{http://en.wikipedia.org/wiki/Selection_algorithm#Optimised_sorting_algorithms}{here} and \aref{http://wordaligned.org/articles/top-ten-percent}{there}). It is possible to enable this mode of operaton in mcl with the option \genopt{--partition-selection}. However, benchmarking so far has shown this to be equivalent in speed to heap selection. This is explained by the bounded nature of \v{K} and \v{L} in practice. } \faq{approx}{mcl does not compute the ideal MCL process!} \car{ Indeed it does not. What are the ramifications? Several entries in section \iref{resource}{\refcaption{resource}} discuss this issue. For a synopsis, consider two ends of a spectrum.} \par{ On the one end, a graph that has very strong cluster structure, with clearly (and not necessarity fully) separated clusters. This mcl implementation will certainly retrieve those clusters if the graphs falls into \iref{whatkind}{the category of graphs} for which mcl is applicable. On the other end, consider a graph that has only weak cluster structure superimposed on a background of a more or less random graph. There might sooner be a difference between the clustering that should ideally result and the one computed by mcl. Such a graph will have a large number of whimsical nodes that might end up either here or there, nodes that are of a peripheral nature, and for which the (cluster) destination is very sensitive to fluctutations in edge weights or algorithm parametrizations (any algorithm, not just mcl).} \par{ In short, the perturbation effect of the pruning process applied by mcl is a source of noise. It is small compared to the effect of changing the inflation parametrization or perturbing the edge weights. If the change is larger, this is because the computed process tends to converge prematurely, leading to finer-grained clusterings. As a result the clustering will be close to a \it{subclustering} of the clustering resulting from more conservative resource settings, and in that respect be consistent. All this can be measured using the program \lref{http://micans.org/mcl/man/clmdist.html}{clm dist}. It is possible to offset such a change by slightly lowering the inflation parameter. } \par{ There is the issue of very large and very dense graphs. The act of pruning will have a larger impact as graphs grow larger and denser. Obviously, mcl will have trouble dealing with such very large and very dense graphs \- so will other methods.} \par{ Finally, there is the engineering approach, which offers the possibility of pruning a whole lot of speculation. Do the experiments with \mcl, try it out, and see what's there to like and dislike.} \end{faqsec} \begin{faqsec}{ {ref}{comparison} {cap}{Comparison with other algorithms} } \faq{xyzbetter}{I've read someplace that XYZ is much better than MCL} \car{ XYZ might well be the bees knees of all things clustering. Bear in mind though that comparing cluster algorithms is a very tricky affair. One particular trap is the following. Sometimes a new cluster algorithm is proposed based on some optimization criterion. The algorithm is then compared with previous algorithms (e.g. MCL). But how to compare? Quite often the comparison will be done by computing a criterion and astoundingly, quite often the chosen criterion is simply the optimization criterion again. \it{Of course} XYZ will do very well. It would be a very poor algorithm it if did not score well on its own optimization criterion, and it would be a very poor algorithm if it did not perform better than other algorithms which are built on different principles.} \par{ There are some further issues that have to be considered here. First, there is not a single optimization criterion that fully captures the notion of cluster structure, let alone best cluster structure. Second, leaving optimization approaches aside, it is not possible to speak of a best clustering. Best always depends on context - application field, data characteristics, scale (granularity), and practitioner to name but a few aspects. Accordingly, the best a clustering algorithm can hope for is to be a good fit for a certain class of problems. The class should not be too narrow, but no algorithm can cater for the broad spectre of problems for which clustering solutions are sought. The class of problems to which MCL is applicable is discussed in section \iref{kind}{\ref{kind}{cap}}.} \faq{xyzslower}{I've read someplace that MCL is slow [compared with XYZ]} \car{ Presumably, they did not know mcl, and did not read the parts in \refer{gcbfs} and \refer{cafg} that discuss implementation. Perhaps they assume or insist that the only way to implement MCL is to implement the ideal process. And there is always the genuine possibility of a \it{really} stupifyingly fast algorithm. It is certainly not the case that MCL has a time complexity of \v{O(N^3)} as is sometimes erroneously stated.} \""{ [One such publication is Ulrik Brandes, Marco Gaertler, and Dorothea Wagner: Experiments on Graph Clustering Algorithms. Proc. 11th Europ. Symp. Algorithms (ESA '03), Springer LNCS].} \end{faqsec} \begin{faqsec}{ {ref}{resource} {cap}{Resource tuning / accuracy} } \faq{wdymbrt}{What do you mean by resource tuning?} \car{ \mcl computes a process in which stochastic matrices are alternately expanded and inflated. Expansion is nothing but standard matrix multiplication, inflation is a particular way of rescaling the matrix entries.} \par{ Expansion causes problems in terms of both time and space. mcl works with matrices of dimension \v{N}, where \v{N} is the number of nodes in the input graph. If no precautions are taken, the number of entries in the mcl iterands (which are stochastic matrices) will soon approach the square of \v{N}. The time it takes to compute such a matrix will be proportional to the cube of \v{N}. If your input graph has 100.000 nodes, the memory requirements become infeasible and the time requirements become impossible.} \par{ What mcl does is perturbing the process it computes a little by removing the smallest entries \- it keeps its matrices \it{sparse}. This is a natural thing to do, because the matrices are sparse in a weighted sense (a very high proportion of the stochastic mass is contained in relatively few entries), and the process converges to matrices that are extremely sparse, with usually no more than \v{N} entries. It is thus known that the MCL iterands are sparse in a weighted sense and are usually very close to truly sparse matrices. The way mcl perturbs its matrices is by the strategy of pruning, selection, and recovery that is extensively described in the \sibref{mcl}{mcl manual page}. The question then is: What is the effect of this perturbation on the resulting clustering, i.e. how would the clustering resulting from a \it{perfectly computed} mcl process compare with the clustering I have on disk? \iref{pcmp}{Faq entry\~\refnumber{pcmp}} discusses this issue.} \par{ The amount of \it{resources} used by mcl is bounded in terms of the maximum number of neighbours a node is allowed to have during all computations. Equivalently, this is the maximum number of nonzero entries a matrix column can possibly have. This number, finally, is the maximum of the the values corresponding with the \genopt{-S} and \genopt{-R} options. The latter two are listed when using the \genopt{-z} option (see faq\~\fnum{defaults}).} \faq{}{How do I compute the maximum amount of RAM needed by mcl?} \car{ It is rougly equal to} \verbatim{2 * s * K * N} \car{ bytes, where 2 is the number of matrices held in memory by \mcl, s is the size of a single cell (c.q. matrix entry or node/arc specification), \v{N} is the number of nodes in the input graph, and where \v{K} is the maximum of the values corresponding with the \genopt{-S} and \genopt{-R} options (and this assumes that the average node degree in the input graph does not exceed \v{K} either). The value of s can be found by using the \genopt{-z} option. It is listed in one of the first lines of the resulting output. s equals the size of an int plus the size of a float, which will be 8 on most systems. The estimate above will in most cases be way too pessimistic (meaning you do not need that amount of memory).} \: mq \par{ The \genopt{-how-much-ram} option is provided by mcl for computing the bound given above. This options takes as argument the number of nodes in the input graph.} \: In case \mcl \: was compiled to use \it{doubles} rather than \it{floats} (i.e. use higher \: precision), s will likely be equal to 12 or possibly 16 (the latter could be \: due to alignment). \par{ The theoretically more precise upper bound is slightly larger due to overhead. It is something like} \verbatim{( 2 * s * (K + c)) * N} where c is 5 or so, but one should not pay attention to such a small difference anyway. \: Perfectly Computed MCL Process \faq{pcmp}{How much does the mcl clustering differ from the clustering resulting from a perfectly computed MCL process?} \car{ For graphs with up until a few thousand nodes a \it{perfectly computed} MCL process can be achieved by abstaining from pruning and doing full-blown matrix arithmetic. Of course, this still leaves the issue of machine precision, but let us wholeheartedly ignore that.} \par{ Such experiments give evidence (albeit incidental) that pruning is indeed really what it is thought to be - a small perturbation. In many cases, the 'approximated' clustering is identical to the 'exact' clustering. In other cases, they are very close to each other in terms of the metric split/join distance as computed by \clmref{dist}. Some experiments with randomly generated test graphs, clustering, and pruning are described in \refer{pcfgcmce}.} \par{ On a different level of abstraction, note that perturbations of the inflation parameter will also lead to perturbations in the resulting clusterings, and surely, large changes in the inflation parameter will in general lead to large shifts in the clusterings. Node/cluster pairs that are different for the approximated and the exact clustering will very likely correspond with nodes that are in a boundary region between two or more clusters anyway, as the perturbation is not likely to move a node from one core of attraction to another.} \par{ \iref{qsep}{Faq entry \refnumber{qsep}} has more to say about this subject.} \faq{enoughresources}{How do I know that I am using enough resources?} \car{ In \mcl parlance, this becomes \it{how do I know that my} \genopt{-scheme} \it{parameter is high enough} or more elaborately \it{how do I know that the values of the {-P, -S, -R, -pct} combo are high enough?}} \par{ There are several aspects. First, watch the \it{jury marks} reported by \mcl when it's done. \: It sends them to STDERR and they are included in the \: \vbt{(mclruninfo ..)} section of the output clustering if you use \: \useopt{--log}. The jury marks are three grades, each out of 100. They indicate how well pruning went. If the marks are in the seventies, eighties, or nineties, mcl is probably doing fine. If they are in the eighties or lower, try to see if you can get the marks higher by spending more resources (e.g. increase the parameter to the \genopt{-scheme} option).} \par{ Second, you can do multiple \mcl runs for different resource schemes, and compare the resulting clusterings using \clm{dist}. See the \clmref{dist}{clmdist manual} for a case study.} \: No Mathematical Analysis for Pruning. \faq{nmap}{Where is the mathematical analysis of this mcl pruning strategy?} \car{ There is none. [add]} \par{ Ok, the next entry gives an engineer's rule of thumb.} \faq{qsep}{What qualitative statements can be made about the effect of pruning?} \car{ The more severe pruning is, the more the computed process will tend to converge prematurely. This will generally lead to finer-grained clusterings. In cases where pruning was severe, the \mcl clustering will likely be closer to a clustering ideally resulting from another MCL process with higher inflation value, than to the clustering ideally resulting from the same MCL process. Strong support for this is found in a general observation illustrated by the following example. Suppose u is a stochastic vector resulting from expansion:} \verbatim{u = 0.300 0.200 0.200 0.100 0.050 0.050 0.050 0.050} \car{ Applying inflation with inflation value 2.0 to u gives} \verbatim{v = 0.474 0.211 0.211 0.053 0.013 0.013 0.013 0.013} \car{ Now suppose we first apply pruning to u such that the 3 largest entries 0.300, 0.200 and 0.200 survive, throwing away 30 percent of the stochastic mass (which is quite a lot by all means). We rescale those three entries and obtain} \verbatim{u' = 0.429 0.286 0.286 0.000 0.000 0.000 0.000 0.000} \car{ Applying inflation with inflation value 2.0 to u' gives} \verbatim{v' = 0.529 0.235 0.235 0.000 0.000 0.000 0.000 0.000} \car{ If we had applied inflation with inflation value 2.5 to u, we would have obtained} \verbatim{v'' = 0.531 0.201 0.201 0.038 0.007 0.007 0.007 0.007} \car{ The vectors v' and v'' are much closer to each other than the vectors v' and v, illustrating the general idea.} \par{ In practice, \mcl should (on average) do much better than in this example.} \faq{}{At different high resource levels my clusterings are not identical. How can I trust the output clustering?} \car{ Did you read all other entries in this section? That should have reassured you somewhat, except perhaps for \iref{nmap}{Faq answer\~\refnumber{nmap}}.} \par{ You need not feel uncomfortable with the clusterings still being different at high resource levels, if ever so slightly. In all likelihood, there are anyway nodes which are not in any core of attraction, and that are on the boundary between two or more clusterings. They may go one way or another, and these are the nodes which will go different ways even at high resource levels. Such nodes may be stable in clusterings obtained for lower inflation values (i.e. coarser clusterings), in which the different clusters to which they are attracted are merged.} \par{ By the way, you do know all about \clmref{dist}, don't you? Because the statement that clusterings are not identical should be quantified: \it{How much do they differ?} This issue is discussed in the \clmref{dist} manual page \- \clm{dist} gives you a robust measure for the distance (dissimilarity) between two clusterings.} \par{ There are other means of gaining trust in a clustering, and there are different issues at play. There is the matter of how accurately this \mcl computed the mcl process, and there is the matter of how well the chosen inflation parameter fits the data. The first can be judged by looking at the jury marks (\iref{enoughresources}{faq\~\refnumber{enoughresources}}) and applying \clm{dist} to different clusterings. The second can be judged by measurement (e.g. use \clmref{info}) and/or inspection (use your judgment).} \end{faqsec} \begin{faqsec}{ {ref}{granularity} {cap}{Tuning cluster granularity} } \faq{}{How do I tune cluster granularity?} \car{ There are several ways for influencing cluster granularity. These ways and their relative merits are successively discussed below. Reading \mysib{clmprotocols} is also a good idea. } \faq{}{The effect of inflation on cluster granularity.} \car{ The main handle for changing inflation is the \genopt{-I} option. This is also \it{the} principal handle for regulating cluster granularity. Unless you are mangling huge graphs it could be the only \mcl option you ever need besides the output redirection option \genopt{-o}.} \par{ Increasing the value of \genopt{-I} will increase cluster granularity. Conceivable values are from 1.1 to 10.0 or so, but the range of suitable values will certainly depend on your input graph. For many graphs, 1.1 will be far too low, and for many other graphs, 8.0 will be far too high. You will have to find the right value or range of values by experimenting, using your judgment, and using measurement tools such as \clmref{dist} and \clmref{info}. A good set of values to start with is 1.4, 2 and 6. } \""{ For experiments that are more subtle with respect to inflation, \mcl provides the \genopt{-i} option in conjunction with the \genopt{-l} (small letter ell) option. Do this only if you have the intention of playing around with mcl in order to study the characteristics of the process that it computes, and \it{maybe}, just \it{maybe}, use it in a production environment if you find it useful. In the first vein, you may be interested to know that \mysib{mcxi} is a stack language/interpreter in which the entire MCL algorithm can be written in three lines of code. It provides comprehensive access to the MCL graph and matrix libraries. However, the \mcxi interface to the MCL pruning facilities is not yet satisfactory at this time. } \faq{degree_granul}{The effect of node degrees on cluster granularity.} \car{ Preferably the network should not have nodes of very high degree, that is, with exorbitantly many neighbours. Such nodes tend to obscure cluster structure and contribute to coarse clusters. The ways to combat this using \mcl and sibling programs are documented in \mysib{clmprotocols}. Briefly, they are the transformations \v{#knn()} and \v{#ceilnb()} available to \mcl, \mcx{alter} and several more programs. } \faq{simil_granul}{The effect of edge weight differentiation on cluster granularity.} \car{ How similarities in the input graph were derived, constructed, adapted, filtered (et cetera) will affect cluster granularity. It is important that the similarities are honest; refer to \iref{goodinput}{faq\~\refnumber{goodinput}}.} \par{ Another issue is that homogeneous similarities tend to result in more coarse-grained clusterings. You can make a set of similarities more homogeneous by applying some function to all of them, e.g. for all pairs of nodes (x y) replace S(x,y) by the square root, the logarithm, or some other convex function. Note that you need not worry about scaling, i.e. the possibly large changes in magnitude of the similarities. MCL is not affected by absolute magnitudes, it is only affected by magnitudes taken relative to each other.} \par{ As of version 03-154, mcl supports the pre-inflation \genopt{-pi}{f} option. Make a graph more homogeneous with respect to the weight function by using \genopt{-pi} with argument \genarg{f} somewhere in the interval [0,1] \- 0.5 can be considered a reasonable first try. Make it less homogeneous by setting \genarg{f} somewhere in the interval [1,10]. In this case 3 is a reasonable starting point.} \end{faqsec} \begin{faqsec}{ {ref}{implement}{cap} {Implementing the MCL algorithm} } \faq{}{How easy is it to implement the MCL algorithm?} \car{ Very easy, if you will be doing small graphs only, say up to a few thousand entries at most. These are the basic ingredients:} \begin{itemize}{ {flow}{compact} {interitem}{0} } \item{o} \car{ Adding loops to the input graph, conversion to a stochastic matrix. } \item{o} \car{ Matrix multiplication and matrix inflation. } \item{o} \car{ The interpretation function mapping MCL limits onto clusterings. } \end{itemize} \par{ These must be wrapped in a program that does graph input and cluster output, alternates multiplication (i.e. expansion) and inflation in a loop, monitors the matrix iterands thus found, quits the loop when convergence is detected, and interprets the last iterand.} \par{ Implementing matrix muliplication is a standard exercise. Implementing inflation is nearly trivial. The hardest part may actually be the interpretation function, because you need to cover the corner cases of overlap and attractor systems of cardinality greater than one. Note that MCL does not use intricate and expensive operations such as matrix inversion or matrix reductions.} \par{ In Mathematica or Maple, mcl should be doable in at most 100 lines of code. For perl you may need twice that amount. In lower level languages such as C or Fortran a basic MCL program may need a few hundred lines, but the largest part will probably be input/output and interpretation.} \par{ To illustrate all these points, mcl now ships with \lref{minimcl}{minimcl}, a small perl script that implements mcl for educational purposes. Its structure is very simple and should be easy to follow.} \par{ Implementing the basic MCL algorithm makes a nice programming exercise. However, if you need an implementation that scales to several hundreds of thousands of nodes and possibly beyond, then your duties become much heavier. This is because one needs to prune MCL iterands (c.q. matrices) such that they remain sparse. This must be done carefully and preferably in such a way that a trade-off between speed, memory usage, and potential losses or gains in accuracy can be controlled via monitoring and logging of relevant characteristics. Some other points are i) support for threading via pthreads, openMP, or some other parallel programming API. ii) a robust and generic interpretation function is written in terms of weakly connected components.} \end{faqsec} \begin{faqsec}{ {ref}{overlap} {cap}{Cluster overlap / MCL iterand cluster interpretation} } \faq{olapintro}{Introduction} A natural mapping exists of MCL iterands to DAGs (directed acyclic graphs). This is because MCL iterands are generally \it{diagonally positive semi-definite} \- see \refer{supfg}. Such a DAG can be interpreted as a clustering, simply by taking as cores all endnodes (sinks) of the DAG, and by attaching to each core all the nodes that reach it. This procedure may result in clusterings containing overlap. \par{ In the MCL limit, the associated DAG has in general a very degenerated form, which induces overlap only on very rare occasions (see \iref{ccco}{faq entry \refnumber{ccco}}).} \par{ Interpreting \mcl iterands as clusterings may well be interesting. Few experiments have been done so far. It is clear though that early iterands generally contain the most overlap (when interpreted as clusterings). Overlap dissappears soon as the iterand index increases. For more information, consult the other entries in this section and the \clmref{imac}{clmimac manual page}.} \: Can Clusterings Contain Overlap \faq{ccco}{Can the clusterings returned by mcl contain overlap?} \car{ No. Clusterings resulting from the abstract MCL algorithm may in theory contain overlap, but the default behaviour in \mcl is to remove it should it occur, by allocating the nodes in overlap to the first cluster in which they are seen. \mcl will warn you if this occurs. This behaviour is switched off by supplying \genopt{--keep-overlap=yes}.} \par{ Do note that overlap is mostly a theoretical possibility. It is conjectured that it requires the presence of very strong symmetries in the input graph, to the extent that there \it{exists an automorphism of the input graph mapping the overlapping part onto itself}.} \par{ It is possible to construct (highly symmetric) input graphs leading to cluster overlap. Examples of overlap in which a few nodes are involved are easy to construct; examples with many nodes are exceptionally hard to construct.} \par{ Clusterings associated with intermediate/early MCL iterands may very well contain overlap, see the \iref{olapintro}{introduction in this section} and other entries.} \faq{imac}{How do I obtain the clusterings associated with MCL iterands?} \car{ There are two options. If you are interested in clusterings containing overlap, you should go for the second. If not, use the first, but beware that the resulting clusterings may contain overlap.} \par{ The first solution is to use \useopt{-dump}{cls} (probably in conjunction with either \genopt{-L} or \genopt{-dumpi} in order to limit the number of matrices written). This will cause \mcl to write the clustering generically associated with each iterand to file. The \genopt{-dumpstem} option may be convenient as well.} \par{ The second solution is to use the \useopt{-dump}{ite} option (\genopt{-dumpi} and \genopt{-dumpstem} may be of use again). This will cause \mcl to write the intermediate iterands to file. After that, you can apply \clmref{imac} (interpret matrix as clustering) to those iterands. \clm{imac} has a \genopt{-strict} parameter which affects the mapping of matrices to clusterings. It takes a value between 0.0 and 1.0 as argument. The default is 0.001 and corresponds with promoting overlap. Increasing the \genopt{-strict} value will generally result in clusterings containing less overlap. This will have the largest effect for early iterands; its effect will diminish as the iterand index increases.} \par{ When set to 0, the \genopt{-strict} parameter results in the clustering associated with the DAG associated with an MCL iterand as described in \refer{supfg}. This DAG is pruned (thus possibly resulting in less overlap in the clustering) by increasing the \genopt{-strict} parameter. [add]} \end{faqsec} \begin{faqsec}{ {ref}{misc} {cap}{Miscellaneous} } \faq{defaults}{How do I find the default settings of mcl?} \car{ Use \genopt{-z} to find out the actual settings - it shows the settings as resulting from the command line options (e.g. the default settings if no other options are given).} \faq{next}{What's next?} \car{ I'd like to port MCL to cluster computing, using one of the PVM, MPI, or openMP frameworks. For the 1.002 release, mcl's internals were rewritten to allow more general matrix computations. Among other things, mcl's data structures and primitive operations are now more suited to be employed in a distributed computing environment. However, much remains to be done before mcl can operate in such an environment.} \par{ If you feel that mcl should support some other standard matrix format, let us know.} \end{faqsec} \sec{bugs}{BUGS} \par{ This FAQ tries to compromise between being concise and comprehensive. The collection of answers should preferably cover the universe of questions at a pleasant level of semantic granularity without too much overlap. It should offer value to people interested in clustering but without sound mathematical training. Therefore, if this FAQ has not failed somewhere, it must have failed.} \par{ Send criticism and missing questions for consideration to mcl-faq at micans.org.} \sec{author}{AUTHOR} \par{ Stijn van Dongen.} \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \par{ mcl's home at \httpref{http://micans.org/mcl/}.} \sec{references}{REFERENCES} \par{ \reference{gcbfs} Stijn van Dongen. \it{Graph Clustering by Flow Simulation}. PhD thesis, University of Utrecht, May 2000.\| \httpref{http://www.library.uu.nl/digiarchief/dip/diss/1895620/inhoud.htm}} \par{ \reference{cafg} Stijn van Dongen. \it{A cluster algorithm for graphs}. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.\| \httpref{http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z}} \par{ \reference{supfg} Stijn van Dongen. \it{A stochastic uncoupling process for graphs}. Technical Report INS-R0011, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.\| \httpref{http://www.cwi.nl/ftp/CWIreports/INS/INS-R0011.ps.Z}} \par{ \reference{pcfgcmce} Stijn van Dongen. \it{Performance criteria for graph clustering and Markov cluster experiments}. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.\| \httpref{http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z}} \par{ \reference{eaflsdopf} Enright A.J., Van Dongen S., Ouzounis C.A. \it{An efficient algorithm for large-scale detection of protein families}, Nucleic Acids Research 30(7):1575-1584 (2002). } \sec{notes}{NOTES} \par{ This page was generated from \bf{ZOEM} manual macros, \httpref{http://micans.org/zoem}. Both html and roff pages can be created from the same source without having to bother with all the usual conversion problems, while keeping some level of sophistication in the typesetting. \${html}{\lref{mclfaq.ps}{This} is the PostScript derived from the zoem troff output.}} \end{pud::man} \: meta-faq: what are the resources? what should I read? \: mcl-devel. \: faq. graph/matrix (thisisnottheplaceisit?) \: faq. micans \: faq. mcl warns me that inflation is too high. \: ans. if proteins .. \: about this document: similarity everywhere. not distance. \: some graph terminology, s(i,j), s(j,i). \: terminology section: directed uni-directed, bi-directed .. mcl-12-135/doc/clm.html0000644000402500021140000002144611754271041011510 00000000000000 The clm manual

14 May 2012    clm 12-135

NAME

clm — perform various computations on graphs and clusterings

SYNOPSIS

clm <mode> [mode-options] [mode-files]

DESCRIPTION

clm implements a variety of computations on graphs and clusterings. The first argument to clm should be a mode, which is a string establishing the type of computation to invoke. Each mode mode is described in the clmmode manual page. The currently available modes are clm dist, clm info, clm meet, clm mate, clm close, clm order, clm imac, clm vol, and clm residue. The dist mode is thus described in the clmdist manual page.

Invoking clm without arguments causes it to print out a list of available modes with a short description of the type of command line expected by that mode.

Invoking clm with just a mode will print out a longer listing of options available for that particular mode. Modes that are able to function normally without arguments can be invoked by adding the --nop argument.

Several options are shared between all clm modes. Note that these options are specified after the mode. See OPTIONS.

The --version option causes clm to print out version and license information.

Issuing clm help mode will cause clm to look for a manual page describing mode and display it if found. This requires that the MANPATH environment variable contains the directory in which the MCL-edge manual pages were installed. This will usually be PREFIX/share, where PREFIX is the path with which the software was configured.

OPTIONS

These are options that pertain to all modes. They should be specified after the mode argument.

-h (synopsis)
--help (synopsis)

List available options.

 
--nop (no-op)

Not an option. This option has no effect then to increment the argument count. This can be useful for clm modes which are able to function without any options. Such a mode typically reads from STDIN, writes to STDOUT, and uses default settings. However, simply specifying a mode without options leads clm to output a list of available options for that mode. This can be averted by using the --nop option.

 
-set key=val (set key-value pair)

Sets the key key to value val in the environment. Some modes allow adjustment of settings in this manner.

 
-debug <int> (set debug level/flags)
--debug (turn default debugging on)
--test (turn default testing on)

The first two turn on debugging, the last is for testing. The effect of these options is otherwise undocumented.

 
--progress (enable progress reporting)

This will enable some kind of progress reporting, by writing to STDERR.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mclcm.10000644000402500021140000002751511754271043011231 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mclcm" 1 "14 May 2012" "mclcm 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mclcm \- hierarchical clustering of graphs with mcl .SH SYNOPSIS \fBmclcm\fP <-|fname> [mclcm-options] [-- "mcl options"*] .di ZV .in 0 .nf \fC \fBmclcm\fP <-|fname> -a "-I 4 --shadow=vl" \fBmclcm\fP <-|fname> -a "-I 3" -- "-I 5" \fBmclcm\fP <-|fname> -a "-I 3" -b1 "" -- "-ph 3 --shadow=vl -I 5" .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR \fBmclcm\fP <-fname> \fB[--contract\fP (\fIcontraction mode\fP)\fB]\fP \fB[--dispatch\fP (\fIdispatch mode\fP)\fB]\fP \fB[--integrate\fP (\fIintegrate mode\fP)\fB]\fP \fB[--subcluster\fP (\fIsubcluster mode\fP)\fB]\fP \fB[-a\fP (\fIshared mcl options\fP)\fB]\fP \fB[-b1\fP (\fIdedicated base 1 mcl options\fP)\fB]\fP \fB[-b2\fP (\fIdedicated base 2 mcl options\fP)\fB]\fP \fB[-tf\fP spec (\fIapply tf-spec to input matrix\fP)\fB]\fP \fB[-c\fP (\fIinput clustering\fP)\fB]\fP \fB[-n\fP (\fIiteration limit\fP)\fB]\fP \fB[--root\fP (\fIensure universe root clustering\fP)\fB]\fP \fB[-cone\fP (\fInested cluster stack file\fP)\fB]\fP \fB[-stack\fP (\fIexpanded cluster stack file\fP)\fB]\fP \fB[-coarse\fP (\fIcoarsened graphs file\fP)\fB]\fP \fB[-write\fP (\fIstack,cone,coarse,steps\fP)\fB]\fP \fB[-write-base\fP (\fIwrite base matrix\fP)\fB]\fP \fB[-stem\fP (\fIprefix for all outputs\fP)\fB]\fP \fB[--mplex=\fPy/n (\fIwrite clusterings separately\fP)\fB]\fP \fB[-annot\fP str (\fIdummy annotation option\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP \fB[-q\fP spec (\fIlog levels\fP)\fB]\fP \fB[-z\fP (\fIshow default shared options\fP)\fB]\fP [-- "mcl options"*] .SH DESCRIPTION The mclcm options may be followed by a number of trailing arguments\&. The trailing arguments should be separated from the mclcm options by the separator \fC--\fP\&. Normally each trailing argument should consist of a set of zero, one, or more mcl arguments enclosed in quotes or double quotes to group them together\&. These arguments are passed to the successive stages of hierarchical clustering\&. They are combined with the default options\&. If an option is specified both in the default options list and in a trailing options list the latter specification overrides the former\&. When the \fB--integrate\fP option is specified the trailing arguments must be names of files containing mcl clusterings; see further below\&. \fBmclcm\fP has four major modes of operation, namely \fIcontraction\fP (default), \fIintegration\fP, \fIdispatch\fP, and \fIsubcluster\fP\&. Each mode is described a little below\&. Note though that \fIdispatch\fP mode is not the best mode to use for hierarchical clustering\&. It is mostly useful to generate multiple mcl clusterings in a single run\&. In all modes \fBmclcm\fP will generate a file, by default called \fImcl\&.cone\fP\&. This is a representation of a hierarchical clustering that is particular to mcl\&. It can be converted to \fInewick\fP format like this: .di ZV .in 0 .nf \fC mcxdump -imx-tree mcl\&.cone --newick -o NEWICKFILE OR mcxdump -imx-tree mcl\&.cone --newick -o NEWICKFILE -tab TABFILE .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR In the last example, TABFILE should be a file containing a mapping from mcl labels to application labels\&. Refer to \fBmcxio(5)\fP for more information about tab files and mcl input/ouput formats\&. .SH OPTIONS .ZI 2m "\fB--contract\fP (\fIrepeated contraction mode\fP)" \& .br This is the default mode of operation\&. At each successive step of constructing the hierarchy on top of the first level mcl clustering, mclcm uses a matrix derived from the input matrix and the last computed clustering to compute a contracted graph\&. The contracted graph is a graph where the nodes represent the clusters of the last clustering\&. The matrix derived from the input graph that is used to construct the contracted graph is called the \fIbase matrix\fP\&. The base matrix can be either the \fIstart matrix\fP or the \fIexpansion matrix\fP\&. The \fIstart matrix\fP is the input matrix after transformations have been applied to it (if any)\&. The \fIexpansion matrix\fP is the first expanded matrix of some mcl process applied to the input graph\&. By default the base matrix is constructed from either the start matrix or the expansion matrix obtained from the first mcl process\&. It is possible to use a start matrix derived from special purpose mcl transformation parameters (such as \fB-ph\fP and \fB-tf\fP) or an expansion matrix derived from a special purpose mcl process\&. The \fB-b1\fP and \fB-b2\fP parameters provide the interfaces to this functionality\&. You are advised to start with a high inflation value for the input graph and to use shadowing, e\&.g\&. include \fC--shadow=vl\fP in the \fB-a\fP argument\&. This generally leads to hierarchies that are better balanced\&. Shadowing is a transformation where nodes are added to the graph, preventing relatively distant nodes from unwanted chaining\&. For more information refer to the \fBmcl\fP manual\&. The invocations in \fBSYNOPSIS\fP are a good starting point\&. .in -2m .ZI 2m "\fB--dispatch\fP (\fIdifferent mcl processes\fP)" \& .br In this mode each trailing argument is specified as a set of options to pass to an mcl process\&. For each trailing argument an mcl process is thus computed\&. The set of resulting clusterings is integrated into a hierarchy\&. .in -2m .ZI 2m "\fB--integrate\fP (\fIexisting clusterings\fP)" \& .br This mode is similar to \fIdispatch\fP mode\&. The difference is that with this option mclcm simply integrates a set of already existing clusterings\&. Each trailing argument must be the name of a file containing a clustering\&. The set of clusterings thus specified is integrated into a hierarchy\&. .in -2m .ZI 2m "\fB--subcluster\fP (\fIrepeated sub-clustering\fP)" \& .br In this mode each trailing argument specifies a set of options to pass to an mcl process\&. The second clustering process is applied to the graph of components induced by the first clustering, resulting in a further subdivision of the first clustering\&. This approach is repeated with each further trailing argument\&. With this approach, the first clustering will be the most coarse clustering\&. Hence, subsequent trailing arguments will typically specify increasingly higher inflation values, pre-inflation values, and optionally more stringent transformation parameters in order to achieve further subdivsions\&. .in -2m .ZI 2m "\fB-a\fP (\fIshared mcl options\fP)" \& .br Use this to change and/or set the default mcl options for all iterations\&. Use quotes if necessary\&. Example of usage: -a "-I 5"\&. .in -2m .ZI 2m "\fB-b1\fP (\fIdedicated base 1 mcl options\fP)" \& .br This will apply the mcl options \fIopts\fP to the input matrix\&. The resulting start matrix is used as the base matrix for constructing contracted graphs\&. .in -2m .ZI 2m "\fB-b2\fP (\fIdedicated base 2 mcl options\fP)" \& .br This will apply the mcl options \fIopts\fP to the input matrix and compute the first iterand of the corresponding mcl process\&. The first iterand, aka the expansion matrix, is used as the base matrix for constructing contracted graphs\&. .in -2m .ZI 2m "\fB-tf\fP (\fItransform input matrix values\fP)" \& .br Transform the input matrix values according to the syntax described in \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB-c\fP (\fIinput clustering\fP)" \& .br The hierarchical clustering process will be kicked off by the clustering found in \fI\fP\&. .in -2m .ZI 2m "\fB-n\fP (\fIiteration limit\fP)" \& .br This puts an upper bound to the number of contractions that will be performed\&. .in -2m .ZI 2m "\fB--root\fP (\fIensure universe root clustering\fP)" \& .br In case the graph consists of different connected components, the last clustering computed by the mclcm process will correspond with those connected components\&. This option simply adds an artificial clustering where all nodes have been joined into a single cluster\&. .in -2m .ZI 2m "\fB-cone\fP (\fInested cluster stack file\fP)" \& .br File to write the nested cluster stack to\&. The nested cluster stack contains a sequence of clusterings, each written as an MCL matrix\&. The first (bottom) clustering is a clustering of the nodes in the input graph\&. Each subsequent clustering is a clustering where the nodes are the clusters of the previous clustering\&. \fBmcxdump\fP can dump this format if the file name is given as the \fB-imx-stack\fP option\&. The explanation for the cone/stack discrepancy is simple\&. To mcxdump the contents are simply a stack of matrices\&. It does not care whether the stack is cone shaped, cylindrical, or yet another shape\&. .in -2m .ZI 2m "\fB-stack\fP (\fIexpanded cluster stack file\fP)" \& .br File to write the expanded cluster stack to\&. The expanded cluster stack is similar to the nested cluster stack except that each cluster lists all the nodes in the input graph it contains\&. \fBmcxdump\fP can dump this format if the file name is given as the \fB-imx-stack\fP option\&. .in -2m .ZI 2m "\fB-coarse\fP (\fIcoarsened graphs file\fP)" \& .br File to write the sequence of coarsened graphs to\&. Each clustering induces a coarsened graph where the nodes represent the clusters and an edge between two nodes represents the connectivity between the corresponding two clusters\&. The computation of this connectivity takes into account all edges between the two clusters in in the original graph\&. .in -2m .ZI 2m "\fB-write\fP (\fIselect output modes\fP)" \& .br Use this option to explicitly specify all of the output types you want written in a comma-separated string\&. \fI\fP may contain any of the strings \fIstack\fP, \fIcone\fP, \fIcoarse\fP, \fIsteps\fP\&. The current default is to write all of these except \fIcoarse\fP\&. The latter dumps the intermediate coarsened (aka contracted) graphs to a single file\&. .in -2m .ZI 2m "\fB-write-base\fP (\fIwrite base matrix\fP)" \& .br Write the base matrix to file\&. This can be useful for debugging expectations\&. .in -2m .ZI 2m "\fB-stem\fP (\fIprefix for all outputs\fP)" \& .br All output files share the same prefix\&. The default is \fCmcl\fP and can be changed with this option\&. .in -2m .ZI 2m "\fB--mplex\fP=y/n (\fIwrite clusterings separately\fP)" \& .br If turned on each clustering is written in a separate file\&. The first clustering is written to the file \fI\fP\&.3 where \fI\fP is determined by the \fB-stem\fP option\&. For each subsequent clustering the index is incremented by two, so clusterings are written to files for which the name ends with an odd index\&. .in -2m .ZI 2m "\fB-annot\fP str (\fIdummy annotation option\fP)" \& .br \fBmclcm\fP writes the command line with which it was invoked to the output file (either of the \fIcone\fP or \fIstack\fP files)\&. Use this option to include any additional information\&. mclcm does nothing with this option except copying it as just described\&. .in -2m .ZI 2m "\fB-q\fP spec (\fIlog levels\fP)" \& .br Set the quiet level\&. Read \fBtingea\&.log(7)\fP for syntax and semantics\&. .in -2m .ZI 2m "\fB-z\fP (\fIshow default shared options\fP)" \& .br Show the default mcl options\&. These are used for each mcl invocation as successively applied to the input graph and succeeding contracted graphs\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clm.ps0000644000402500021140000003323411754271041011164 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:13 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Courier %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 2 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Courier %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Courier@0 ENC0/Courier RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<636c6d2831292055534552>20 48 R 162.615 <434f4d4d414e445320636c6d283129>2.5 F/F1 10.95/Times-Bold@0 SF -.219 <4e41>20 84 S<4d45>.219 E F0<636c6d20ad20706572666f726d2076>100 96 Q<61 72696f757320636f6d7075746174696f6e73206f6e2067726170687320616e6420636c75 73746572696e6773>-.25 E F1<53594e4f50534953>20 112.8 Q/F2 10 /Times-Bold@0 SF<636c6d>118 124.8 Q/F3 10/Courier@0 SF <3c6d6f64653e205b6d6f64652d6f7074696f6e735d205b6d6f64652d66696c65735d>6 E F1<4445534352495054494f4e>20 153.6 Q F2<636c6d>100 165.6 Q F0 .546 <696d706c656d656e747320612076>3.046 F .546<617269657479206f6620636f6d70 75746174696f6e73206f6e2067726170687320616e6420636c7573746572696e67732e20 546865208c727374206172>-.25 F .545<67756d656e7420746f>-.18 F F2<636c6d> 3.045 E F0 .65<73686f756c642062652061>100 177.6 R/F4 10/Times-Italic@0 SF<6d6f6465>3.15 E F0 3.15<2c77>C .65<68696368206973206120737472696e6720 65737461626c697368696e67207468652074797065206f6620636f6d7075746174696f6e 20746f20696e>-3.15 F -.2<766f>-.4 G -.1<6b65>.2 G 3.15<2e45>.1 G .65 <616368206d6f6465>-3.15 F F4<6d6f6465>100 189.6 Q F0 .106 <69732064657363726962656420696e2074686520636c6d>2.606 F F4<6d6f6465>A F0 .106<6d616e75616c20706167652e205468652063757272656e746c792061>2.606 F -.25<7661>-.2 G .106<696c61626c65206d6f64657320617265>.25 F F2 .106 <636c6d2064697374>2.606 F F0<2c>A F2<636c6d>2.606 E<696e66>100 201.6 Q <6f>-.25 E F0<2c>A F2 .114<636c6d206d656574>2.614 F F0<2c>A F2 .114 <636c6d206d617465>2.614 F F0<2c>A F2 .115<636c6d20636c6f7365>2.614 F F0 <2c>A F2 .115<636c6d206f72646572>2.615 F F0<2c>A F2 .115 <636c6d20696d6163>2.615 F F0<2c>A F2 .115<636c6d2076>2.615 F<6f6c>-.1 E F0 2.615<2c61>C<6e64>-2.615 E F2 .115<636c6d2072>2.615 F<657369647565> -.18 E F0 5.115<2e54>C<6865>-5.115 E F2<64697374>2.615 E F0 <6d6f646520697320746875732064657363726962656420696e20746865>100 213.6 Q F2<636c6d64697374>2.5 E F0<6d616e75616c20706167652e>2.5 E<496e>100 237.6 Q -.2<766f>-.4 G<6b696e67>.2 E F2<636c6d>4.051 E F0 1.551 <776974686f7574206172>4.051 F 1.551<67756d656e74732063617573657320697420 746f207072696e74206f75742061206c697374206f662061>-.18 F -.25<7661>-.2 G 1.55<696c61626c65206d6f646573207769746820612073686f7274>.25 F<6465736372 697074696f6e206f66207468652074797065206f6620636f6d6d616e64206c696e652065> 100 249.6 Q<787065637465642062792074686174206d6f64652e>-.15 E<496e>100 273.6 Q -.2<766f>-.4 G<6b696e67>.2 E F2<636c6d>2.625 E F0 .125<77697468 206a7573742061206d6f64652077696c6c207072696e74206f75742061206c6f6e676572 206c697374696e67206f66206f7074696f6e732061>2.625 F -.25<7661>-.2 G .126 <696c61626c6520666f72207468617420706172746963752d>.25 F .022 <6c6172206d6f64652e>100 285.6 R .021<4d6f646573207468617420617265206162 6c6520746f2066756e6374696f6e206e6f726d616c6c7920776974686f7574206172> 5.022 F .021<67756d656e74732063616e20626520696e>-.18 F -.2<766f>-.4 G -.1<6b65>.2 G 2.521<6462>.1 G 2.521<7961>-2.521 G<6464696e67>-2.521 E <746865>100 297.6 Q F4<2d2d6e6f70>2.5 E F0<6172>2.5 E<67756d656e742e> -.18 E<5365>100 321.6 Q -.15<7665>-.25 G .195 <72616c206f7074696f6e732061726520736861726564206265747765656e20616c6c> .15 F F2<636c6d>2.695 E F0 .196<6d6f6465732e204e6f7465207468617420746865 7365206f7074696f6e73206172652073706563698c656420616674657220746865>2.695 F F2<6d6f6465>100 333.6 Q F0 2.5<2e53>C<6565>-2.5 E F2<4f5054494f4e53> 2.5 E F0<2e>A<546865>100 357.6 Q F2<2d2d76>2.5 E<657273696f6e>-.1 E F0 <6f7074696f6e20636175736573>2.5 E F2<636c6d>2.5 E F0 <746f207072696e74206f75742076>2.5 E <657273696f6e20616e64206c6963656e736520696e666f726d6174696f6e2e>-.15 E <49737375696e67>100 381.6 Q F4 .458<636c6d2068656c70206d6f6465>2.958 F F0 .458<77696c6c206361757365>2.958 F F2<636c6d>2.958 E F0 .458<746f206c 6f6f6b20666f722061206d616e75616c20706167652064657363726962696e67>2.958 F F4<6d6f6465>2.957 E F0 .457<616e6420646973706c6179206974>2.957 F .227<69 6620666f756e642e2054686973207265717569726573207468617420746865204d414e50> 100 393.6 R -1.11<4154>-.92 G 2.728<4865>1.11 G -.4<6e76>-2.728 G .228 <69726f6e6d656e742076>.4 F .228<61726961626c6520636f6e7461696e7320746865 206469726563746f727920696e207768696368>-.25 F 2.343<746865204d434c2d6564 6765206d616e75616c207061676573207765726520696e7374616c6c65642e2054686973 2077696c6c20757375616c6c79206265>100 405.6 R F3 <5052454649582f7368617265>4.842 E F0 4.842<2c77>C<68657265>-4.842 E F3 <505245464958>100 417.6 Q F0 <697320746865207061746820776974682077686963682074686520736f667477>2.5 E <6172652077>-.1 E<617320636f6e8c67757265642e>-.1 E F1<4f5054494f4e53>20 434.4 Q F0<546865736520617265206f7074696f6e732074686174207065727461696e 20746f20616c6c206d6f6465732e20546865>100 446.4 Q 2.5<7973>-.15 G <686f756c642062652073706563698c6564>-2.5 E F4<6166746572>2.5 E F0 <746865206d6f6465206172>2.5 E<67756d656e742e>-.18 E F2<2d68>100 470.4 Q F0<28>2.5 E F4<73796e6f70736973>A F0<29>A F2<2d2d68656c70>100 482.4 Q F0 <28>2.5 E F4<73796e6f70736973>A F0<29>A<4c6973742061>120 494.4 Q -.25 <7661>-.2 G<696c61626c65206f7074696f6e732e>.25 E F2<2d2d6e6f70>100 518.4 Q F0<28>2.5 E F4<6e6f2d6f70>A F0<29>A .356<4e6f7420616e206f7074696f6e2e 2054686973206f7074696f6e20686173206e6f206566>120 530.4 R .356 <66656374207468656e20746f20696e6372656d656e7420746865206172>-.25 F .357 <67756d656e7420636f756e742e20546869732063616e206265>-.18 F 1.065 <75736566756c20666f72>120 542.4 R F2<636c6d>3.565 E F0 1.065<6d6f646573 207768696368206172652061626c6520746f2066756e6374696f6e20776974686f757420 616e>3.565 F 3.564<796f>-.15 G 1.064 <7074696f6e732e20537563682061206d6f646520747970692d>-3.564 F 1.245<6361 6c6c792072656164732066726f6d20535444494e2c2077726974657320746f205354444f 5554>120 554.4 R 3.745<2c61>-.74 G 1.245<6e64207573657320646566>-3.745 F 1.245<61756c742073657474696e67732e20486f>-.1 F<7765>-.25 E -.15<7665> -.25 G 2.045 -.4<722c2073>.15 H<696d706c79>.4 E 1.065<73706563696679696e 672061206d6f646520776974686f7574206f7074696f6e73206c65616473>120 566.4 R F2<636c6d>3.565 E F0 1.065<746f206f75747075742061206c697374206f662061> 3.565 F -.25<7661>-.2 G 1.064 <696c61626c65206f7074696f6e7320666f722074686174>.25 F <6d6f64652e20546869732063616e2062652061>120 578.4 Q -.15<7665>-.2 G <72746564206279207573696e6720746865>.15 E F2<2d2d6e6f70>2.5 E F0 <6f7074696f6e2e>2.5 E F2<2d736574>100 602.4 Q F0 -.1<6b65>2.5 G<793d76> -.05 E<616c2028>-.25 E F4<736574206b>A -.3<6579>-.1 G <2d76616c75652070616972>.3 E F0<29>A .143<5365747320746865206b>120 614.4 R -.15<6579>-.1 G F2 -.1<6b65>2.65 G<79>.1 E F0 .143<746f2076>2.643 F <616c7565>-.25 E F2 -.1<7661>2.5 G<6c>.1 E F0 .143<696e2074686520656e> 2.643 F 2.643<7669726f6e6d656e742e20536f6d65>-.4 F .143 <6d6f64657320616c6c6f>2.643 F 2.643<7761>-.25 G .143 <646a7573746d656e74206f662073657474696e6773>-2.643 F <696e2074686973206d616e6e65722e>120 626.4 Q F2<2d646562>100 650.4 Q <7567>-.2 E F0<3c696e743e2028>2.5 E F4<73657420646562>A<7567206c65>-.2 E <76656c2f8d61>-.15 E<6773>-.1 E F0<29>A F2<2d2d646562>100 662.4 Q<7567> -.2 E F0<28>2.5 E F4<7475726e2064656661756c7420646562>A<7567>-.2 E <67696e67206f6e>-.1 E F0<29>A F2<2d2d74657374>100 674.4 Q F0<28>2.5 E F4 <7475726e2064656661756c742074657374696e67206f6e>A F0<29>A .501 <546865208c727374207477>120 686.4 R 3.001<6f74>-.1 G .501 <75726e206f6e20646562>-3.001 F .501<756767696e672c20746865206c6173742069 7320666f722074657374696e672e20546865206566>-.2 F .5 <66656374206f66207468657365206f7074696f6e73206973206f74686572>-.25 F<2d> -.2 E<7769736520756e646f63756d656e7465642e>120 698.4 Q F2<2d2d7072>100 722.4 Q<6f6772>-.18 E<657373>-.18 E F0<28>2.5 E F4<656e61626c65207072>A -.1<6f67>-.45 G -.37<7265>.1 G<73732072>.37 E<65706f7274696e67>-.37 E F0 <29>A<636c6d2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<31> 202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 160.115<636c6d2831292055534552>20 48 R 162.615 <434f4d4d414e445320636c6d283129>2.5 F<546869732077696c6c20656e61626c6520 736f6d65206b696e64206f662070726f6772657373207265706f7274696e672c20627920 77726974696e6720746f205354444552522e>120 84 Q/F1 10.95/Times-Bold@0 SF -.548<4155>20 100.8 S<54484f52>.548 E F0<5374696a6e2076>100 112.8 Q <616e20446f6e67656e2e>-.25 E F1<53454520414c534f>20 129.6 Q/F2 10 /Times-Bold@0 SF<6d636c66616d696c79283729>100 141.6 Q F0 <666f7220616e206f>2.5 E -.15<7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c2074686520646f63756d656e746174696f6e20616e6420746865 207574696c697469657320696e20746865206d636c2066>-2.5 E<616d696c792e>-.1 E <636c6d2031322d313335>20 768 Q<3134204d61792032303132>161.505 E<32> 202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxload.azm0000644000402500021140000004547511665177227012233 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxload} {html_title}{The mcxload manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcxload}{load matrices and tab files from label format} \sec{synopsis}{SYNOPSIS} \par{ \mcxload \synreqopt{-abc}{}{label file} \synreqopt{-o}{}{output file}} \: -123 input file, 123 format \: -packed input file, packed format \par{ \synoptopt{-abc}{}{label file} \synoptopt{-123}{}{identifier file} \synoptopt{-o}{}{output file} \synoptopt{--stream-mirror}{symmetrify, same domain} \synoptopt{--stream-split}{assume different domains} \synoptopt{-re}{}{edge deduplication mode} \synoptopt{-ri}{}{image symmetrification mode} \synoptopt{-sif}{}{SIF label file} \synoptopt{-etc}{}{'etc' label file} \synoptopt{-etc-ai}{}{leaderless 'etc' label file} \synoptopt{--expect-values}{expect label:weight format} \synoptopt{-235}{}{leader '235' label file} \synoptopt{-235-ai}{}{leaderless '235' label file} \synoptopt{-write-tab}{}{save domain tab} \synoptopt{-write-tabc}{}{save column tab} \synoptopt{-write-tabr}{}{save row tab} \synoptopt{-strict-tab}{}{tab universe} \synoptopt{-strict-tabc}{}{tabc universe} \synoptopt{-strict-tabr}{}{tabr universe} \synoptopt{-restrict-tab}{}{tab world} \synoptopt{-restrict-tabc}{}{tabc world} \synoptopt{-restrict-tabr}{}{tabr world} \synoptopt{-extend-tab}{}{tab launch} \synoptopt{-extend-tabc}{}{tabc launch} \synoptopt{-extend-tabr}{}{tabr launch} \synoptopt{-123-max}{}{set domain range} \synoptopt{-123-maxc}{}{set column range} \synoptopt{-123-maxr}{}{set row range} \synoptopt{--stream-log}{log transform stream values} \synoptopt{--stream-neg-log}{negative log transform stream values} \synoptopt{--stream-neg-log10}{negative log-10 transform stream values} \synoptopt{-stream-tf}{transform stream values} \synoptopt{-tf}{}{transform (not so) final matrix} \synoptopt{--transpose}{transpose} \synoptopt{--write-binary}{output binary format} \synoptopt{--debug}{debug} \stdsynopt } \sec{started}{GETTING STARTED} \verbatim{\:/ mcxload --stream-mirror -abc data1.txt -o data1.mci -write-tab data1.tab mcxload --stream-mirror -etc data2.txt -o data2.mci -write-tab data2.tab mcxload --stream-mirror -sif data3.txt -o data3.mci -write-tab data3.tab} \car{ When the output should be an undirected graph it is safest to always use the \v{--stream-mirror} option. Edges are stored bidirectionally as two arcs, and this option instructs \sib{mcxload} to ensure that both arcs are present. In the above examples three different types of format are read. In all formats, the basic unit of specification is that of an arc specified by a source node, a destination node, and optionally a weight. All formats are line based, with \genopt{-abc} specifying a single arc and \genopt{-etc} and \genopt{-sif} specifying multiple arcs corresponding to a shared source node. For \genopt{-abc} the format is} \verbatim{\:/ []} \par{ The last field, specifying the arc weight, is optional. If not present the arc weight will be set to the default weight of 1.0.} For \genopt{-sif} the format is \verbatim{\:/ ...} \par{ There can be an arbitrary number of destination labels. The relation type field in the second column is required but will be ignored. As an extension it is possible to specify weights, requiring the use of the \genopt{--expect-values} option. Weights are specified by tagging them onto the destination label separated by a colon:} \verbatim{\:/ : : ...} \par{ Finally, the format for the \genopt{-etc} option is the same, except that the relation type column is dropped.} \sec{description}{DESCRIPTION} \car{ \mcxload reads label input from a file. The format of the file should be line-based, each line containing two white-space separated strings (labels) and optionally a number separated from the second label by whitespace. In the absence of a value, mcxload will use the default value 1.0. If a tab is present on an input line, mcxload will assume that the tab character is the separator for that line. Lines for which the first non-whitespace character is an octothorpe ('\v{#}') are skipped.} \par{ \mcxload will transform the labels into mcl numerical identifiers and the pairs of labels into graph edges or equivalently matrix entries. The weight of an edge is the value associated with the associated labels. mcxload constructs dictionaries (sometimes just one) that map labels onto mcl identifiers as it goes along. It can optionally write these to file. In MCL (family) parlance, such a dictionary written to file is called a \it{tab file}.} \par{ It is possible to specify numerical identifiers directly with the \genoptref{-123} option. In this case \mcxload assumes a canonical domain (cf \sibref{mcxio}) and will create the minimal canonical domain that supports the data. Also bear in mind the caveat further below.} \par{ It is possible to effectively predeclare labels and thus enforce an a-priori known mapping of labels onto numerical identifiers. Labels receive an identifier in the order in which they occur in the input. Predeclaring labels can be achieved by having them appear in the desired order and setting the edge weight to zero.} \par{ A major mcxload modality is whether the input refers to a single domain or to two separate domains. An example of the first is where labels are names of people and the value is the extent to which they like one another. This encodes a \it{likability} graph where all the nodes represent people. The reasonable thing to do in this case is to create a single dictionary with all names wherever they occur. All \bf{tab} options (as opposed to \bf{tabc} and \bf{tabr}) pertain to this scenario and likewise for the options \genoptref{--graph} and \genoptref{--stream-mirror}.} \par{ An example of the second mode is where the first label is again the name of a person, the second label is the name of an animal species, and the value is the extent to which that person appreciates the species. In this case, the reasonable thing to do is to create two dictionaries, one for persons and one for species. All \bf{tabc} and \bf{tabr} options pertain to this scenario. The \bf{tabc} options \it{always refer to the first label} and the \bf{tabr} options \it{always refer to the second label}. The letters \bf{c} and \bf{r} refer to \it{column} and \it{row} respectively. The latter are the names of the matrix domains corresponding to the input domains. Refer to \mysib{mcxio}.} \par{ A further mcxload modality is whether it constructs dictionaries on the fly, or whether it proceeds from a tab file already available. By default mcxload will construct dictionaries on the fly. You need to save them with the appropriate \bf{-write} option(s). All the \bf{strict} options read a tab file and require any labels in the \genoptref{-abc}{label input} to be present in the corresponding tab file. mcxload will then fail in the face of absent labels. All the \bf{restrict} options simply ignore labels that are not found in the corresponding tab file. The \bf{extend} options extend the existing tab file with labels that are not found. It presumably only makes sense to do so if the corresponding \bf{-write} options are used as well.} \par{ The input stream is deduplicated on a per-node neighbourhood basis using the \genoptref{-re} option.} \par{ mcxload has a few options to transform or select based on the values in the input stream and the values in the constructed matrix. These are \genoptref{--stream-log}, \genoptref{--stream-neg-log}, \genoptref{--stream-neg-log10}, \genoptref{-stream-tf} and \genoptref{-tf}. Refer to \mysib{mcxio} for a description of the syntax accepted by the latter two options \- it is a syntax accepted by a few more mcl siblings. Finally it is possible to transpose the final result using the \genoptref{--transpose} option. Keep in mind that mcxload does not accordingly change its idea of row and column domains.} \par{ The final matrix can be symmetrified using the \genoptref{-ri} option.} \par{ The \optref{-etc}{\genopt{-etc}, \genopt{-235}} and \genopt{-sif} options assume a format where all entries for a given column (or equivalently all neighbours for a given node) are joined onto a single line. This can be useful e.g. to read in externally generated clusterings. The \genopt{-etc} and \genopt{-sif} options expect label input, whereas the \genopt{-235} options expects numbers in the input that are mapped directly onto mcl numerical identifiers. The \sc{SIF} format expected by \genopt{-sif} requires a \it{relationship type} in the second field on each line; this is ignored. As an extension to the \sc{SIF} format weights may optionally follow the labels, separated from them with a colon character. } \cpar{CAVEAT}{ Please note that by feeding the line '1000000000 1' to \mcxload with either of the \genopt{-235} or \genopt{-123} options it will try to allocate a matrix with one billion columns. This is most likely not what is wanted. Assuming that the input contains fewer than one billion unique labels, one should use the label options as described above and below. } \cpar{STAGES}{ Conceptually, input matrix creation consists of the following stages} \begin{itemize}{ {flow}{compact} {interitem}{0} {type}{roman} {textindent}{4} {itemmargin}{2} {align}{right} } \item \car{ Read the input stream, apply \genoptref{-stream-tf} transformation specification, and optionally push reverse elements (\genoptref{--stream-mirror}).} \item \car{ Deduplicate edges in the context of all edges/arcs originating from a given node according to the \genoptref{-re} option.} \item \car{ Apply transpose symmetrification according to the \genoptref{-ri} option, if used.} \item \car{ Apply \genoptref{-tf} transformation specification.} \end{itemize} \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-abc}{}{label file}} \car{ The file to read label data from. Labels are separated by white-space. The labels may optionally be followed by a value (again separated by white-space), which is taken as the edge weight between the nodes corresponding with the labels. If a tab is present on an input line it is presumed to be the separator for that line, including the value if present. Lines for which the first non-blank character is the octothorpe ('\v{#}') are skipped. } \item{\defopt{-123}{}{identifier file}} \car{ The file to read numerical data from. The format is the same as for label data, but the identifiers are directly mapped onto mcl identifiers as described earlier. } \item{\defopt{-o}{}{output file}} \car{The output file where the constructed matrix is written.} \item{\defopt{--stream-mirror}{symmetrify, same domain}} \car{ Whenever \genarg{label1} \genarg{label2} \genarg{value} is encountered in the input, mcxload inserts \genarg{label2} \genarg{label1} \genarg{value} in the input stream as well. This option implies that both labels belong to the same domain.} \item{\defopt{--stream-split}{assume different domains}} \car{ This tells mcxload that the two labels belong to different domains. The program will create two tab files, one for columns and one for rows. This can be used for example to create a logical mapping of gene identifiers to species identifiers. } \item{\defopt{-re}{}{deduplication mode}} \car{ This specifies how mcxload should collapse repeated entries, that is edges for which a value is specified multiple times. This is done relative to a single node at a time, taking into account all neighbours assembled from the input stream. Note that \genoptref{--stream-mirror} will result in duplicated entries if the input contains edge specifications in both ways. Also note that \usearg{first} and \usearg{last} might not result in symmetric input if only \genopt{--stream-mirror} is used.} \item{\defopt{-write-tab}{}{save domain tab}} \car{ Write the domain to file. It applies to both label types.} \item{\defopt{-write-tabc}{}{save column tab}} \car{ Write the column domain to file. It applies to the first label found on each input line.} \item{\defopt{-write-tabr}{}{save row tab}} \car{ Write the column domain to file. It applies to the second label found on each input line.} \item{\defopt{-strict-tab}{}{tab universe}} \car{ Read a dictionary from file and require each label to be present in the dictionary. mcxload will exit on absentees.} \item{\defopt{-strict-tabc}{}{tabc universe}} \car{ Read a dictionary from file and require the first label on each line to be present in the dictionary. mcxload will exit on absentees.} \item{\defopt{-strict-tabr}{}{tabr universe}} \car{ Read a dictionary from file and require the second label on each line to be present in the dictionary. mcxload will exit on absentees.} \item{\defopt{-restrict-tab}{}{tab world}} \car{ Read a dictionary from file and only accept input lines (edges) for which both labels are present in the dictionary. mcxload will ignore absentees.} \item{\defopt{-restrict-tabc}{}{tabc world}} \car{ Read a dictionary from file and ignore input lines for which the first label is absent from the dictionary.} \item{\defopt{-restrict-tabr}{}{tabr world}} \car{ Read a dictionary from file and ignore input lines for which the second label is absent from the dictionary.} \item{\defopt{-extend-tab}{}{tab launch}} \car{ Read a dictionary from file and extend it with any label from the input not yet present in the dictionary.} \item{\defopt{-extend-tabc}{}{tabc launch}} \car{ Read a dictionary from file and extend it with all first labels from the input not yet present in the dictionary.} \item{\defopt{-extend-tabr}{}{tabr launch}} \car{ Read a dictionary from file and extend it with all second labels from the input not yet present in the dictionary.} \item{\defopt{-123-max}{}{set domain range}} \car{ Numbers starting from \genarg{} will be ignored, and the domain (used for both columns and rows) will range from zero up to one less than \genarg{}. } \item{\defopt{-123-maxc}{}{set column range}} \car{ Numbers starting from \genarg{} will be ignored in the column domain, and the column domain will range from zero up to one less than \genarg{}. } \item{\defopt{-123-maxr}{}{set row range}} \car{ Numbers starting from \genarg{} will be ignored in the row domain, and the row domain will range from zero up to one less than \genarg{}. } \item{\defopt{--stream-log}{log transform stream values}} \car{ Replace each entry by its natural logarithm.} \items{ {\defopt{--stream-neg-log}{negative log transform stream values}} {\defopt{--stream-neg-log10}{negative log-10 transform stream values}} } \car{ Replace each entry by the negative of its natural logarithm and log-10 representation, respectively. This is for example useful to convert scores that denote probabilities or p-values such as BLAST scores. } \item{\defopt{-stream-tf}{transform stream values}} \car{ Transform the stream values as they are read in according to the syntax described in \mysib{mcxio}.} \item{\defopt{-tf}{}{transform (not so) final matrix}} \car{ Transform the matrix values after deduplication and symmetrification according to the syntax described in \mysib{mcxio}.} \item{\defopt{-ri}{}} \car{ After the initial matrix has been assembled, it can be symmetrified by either of these options. They indicate the operation used to combine the entries of the transposed matrix and the original matrix. \usearg{mul} is special in that it treats missing entries (which are normally considered zero in mcl matrix operations) as one.} \item{\defopt{--transpose}{transpose}} \car{ Write the transposed matrix to file. This is obviously not useful when a symmetric matrix has been generated.} \items{ {\defopt{-etc}{}{'etc' label file}} {\defopt{-etc-ai}{}{leaderless 'etc' label file}} {\defopt{-235}{}{'235' label file}} {\defopt{-235-ai}{}{leaderless '235' label file}} {\defopt{-sif}{}{SIF label file}} {\defopt{--expect-values}{expect label:weight format}} } \car{ The input is read in lines; each line is split on whitespace into labels. For \genopt{-etc} the first label is interpreted as the source node. All other labels are interpreted as destination nodes. Weights may optionally follow the labels, separated from them with a colon character. It is in this case necessary to use the \genopt{--expect-values} option. The \sc{SIF} (Simple Interaction File) format expected by \genopt{-sif} is similar except that it contains an additional field. In this format the second column denotes the \it{relationship type}. It is ignored by \sib{mcxload}. For \genopt{-etc-ai} (\it{auto-increment}) all labels are interpreted as destination nodes and mcxload automatically creates a source node for each line it reads. This option can be useful to read in files encoding a clustering, where each line represents a cluster of white-space separated labels. } \par{ The \genopt{-235} options are similar except that the input is not interpreted as labels but must consist of numbers that explicitly specify the matrix to be built.} \item{\defopt{--write-binary}{output binary format}} \car{ The output matrix is written in native binary format \- refer to \mysib{mcxio}.} \item{\defopt{--debug}{debug}} \car{ Among other things, this turns on warnings when \bf{restrict} tab files are used and labels are found to be missing.} \stddefopt \end{itemize} \sec{author}{AUTHOR} \car{ Stijn van Dongen.} \sec{seealso}{SEE ALSO} \car{ \mysib{mcxio}, \mysib{mcxdump}, \mysib{mcl}, \mysib{mclfaq}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \end{pud::man} mcl-12-135/doc/clmprotocols.50000644000402500021140000003140411754271042012651 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clmprotocols" 5 "14 May 2012" "clmprotocols 12-135" "FILE FORMATS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .ZJ 3m 1m "1\&." NAME .in -4m .ZJ 3m 1m "2\&." DESCRIPTION .in -4m .ZJ 3m 1m "3\&." Network representation .in -4m .ZJ 3m 1m "4\&." Loading large networks .in -4m .ZJ 3m 1m "5\&." Converting between formats .in -4m .ZJ 3m 1m "6\&." Clustering similarity graphs encoded in BLAST results .in -4m .ZJ 3m 1m "7\&." Clustering expression data .in -4m .ZJ 3m 1m "8\&." Reducing node degrees in the graph .in -4m .ZJ 3m 1m "9\&." SEE ALSO .in -4m .ZJ 3m 1m "10\&." AUTHOR .in -4m .SH NAME clmprotocols \- Work flows and protocols for mcl and friends .SH DESCRIPTION A guide to doing analysis with mcl and its helper programs\&. .SH Network representation The clustering program \fBmcl\fP expects the name of file as its first argument\&. If the \fB--abc\fP option is used, the file is assumed to adhere to a simple format where a network is specified edge by edge, one line and one edge at a time\&. Each line describes an edge as two labels and a numerical value, all separated by white space\&. The labels and the value respectively identify the two nodes and the edge weight\&. The format is called ABC-format, where \&'A\&' and \&'B\&' represent the two labels and \&'C\&' represents the edge weight\&. The latter is optional; if omitted the edge weight is set to one\&. If ABC-format is used, the output is returned as a listing of clusters, each cluster given as a line of white-space separated labels\&. MCL can also utilize a second representation, which is a stringent and unambiguous format for both input and output\&. This is called \fImatrix format\fP and it is required when using other programs in the mcl suite, for example when comparing and analysing clusterings using \fBclm(1)\fP or when extracting and transforming networks using \fBmcx(1)\fP\&. Native mode (matrix format) is entered simply by \fInot\fP specifying \fB--abc\fP\&. The recommended approach using \fBmcl\fP is to convert an external format to ABC-format\&. The program \fBmcxload(1)\fP reads the latter and creates a native network file and a dictionary file that maps network nodes to labels\&. All applications in the MCL suite, including \fBmcl\fP itself, can read this native network file format\&. Label output can be obtained using \fBmcxdump(1)\fP\&. The workflow is thus: .di ZV .in 0 .nf \fC # External format has been converted to file data\&.abc (abc format) mcxload -abc data\&.abc --stream-mirror -write-tab data\&.tab -o data\&.mci mcl data\&.mci -I 1\&.4 mcl data\&.mci -I 2 mcl data\&.mci -I 4 mcxdump -icl out\&.data\&.mci\&.I14 -tabr data\&.tab -o dump\&.data\&.mci\&.I14 mcxdump -icl out\&.data\&.mci\&.I20 -tabr data\&.tab -o dump\&.data\&.mci\&.I20 mcxdump -icl out\&.data\&.mci\&.I40 -tabr data\&.tab -o dump\&.data\&.mci\&.I40 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR In this example the cluster output is stored in native format and dumped to labels using mcxdump\&. The stored output can now be used to learn more about the clusterings\&. An example is the following, where \fBclm(1)\fP is applied in mode\ \&\fBdist\fP to gauge the distance between different clusterings\&. .di ZV .in 0 .nf \fC clm dist --chain out\&.data\&.mci\&.I{14,20,40} .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .SH Loading large networks If you deal with very large networks (say with hundreds of millions of edges), it is recommended to use binary format (cf \fBmcxio(5)\fP)\&. This is simply achieved by adding \fC--write-binary\fP to the mcxload command line\&. The resulting file is no longer human-readable but will be faster to read by a factor between ten- or twenty-fold compared to standard MCL-edge network format, and a factor around fifty-fold compared to label format\&. All MCL-edge programs are able to read binary format, and speed of reading will be somewhere in the order of millions of edges per second, compared to, for example, roughly 100K edges per second for label format\&. Memory usage for mcxload can be lowered by replacing the option \fC--stream-mirror\fP with \fC-ri\ \&max\fP\&. .SH Converting between formats \fBConverting label format to tabular format\fP .br Label format, two or three (including weight) columns: .di ZV .in 0 .nf \fC mcxload -abc data\&.abc --stream-mirror -write-tab data\&.tab -o data\&.mci mcxdump -imx data\&.mci -tab data\&.tab --dump-table .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Simple Interaction File (SIF) format: .di ZV .in 0 .nf \fC mcxload -sif data\&.sif --stream-mirror -write-tab data\&.tab -o data\&.mci mcxdump -imx data\&.mci -tab data\&.tab --dump-table .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR It can be noted that these two examples are very similar, and differ only in the way the input to \fBmcxload\fP is specified\&. .SH Clustering similarity graphs encoded in BLAST results A specific instance of the workflow above is the clustering of proteins based on their sequence similarities\&. In the most typical scenario the external format is BLAST output, which needs to be transformed to ABC format\&. In the examples below the input is in columnar blast format obtained with the blast -m8 option\&. It requires a version of \fBmcl\fP at least as recent as \fC09-061\fP\&. First we create an ABC-formatted file using the external columnar BLAST format, which is assumed to be in a file called \fCseq\&.cblast\fP\&. .di ZV .in 0 .nf \fC cut -f 1,2,11 seq\&.cblast > seq\&.abc .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The columnar format in the file \fCseq\&.cblast\fP has, for a given BLAST hit, the sequence labels in the first two columns and the asssociated E-value in column\ \&11\&. It is parsed by the standard UNIX cut(1) utility\&. The format must have been created with the BLAST -m8 option so that no comment lines are present\&. Alternatively these can be filtered out using grep\&. The newly created \fCseq\&.abc\fP file is loaded by \fBmcxload(1)\fP, which writes both a network file \fCseq\&.mci\fP and a dictionary file \fCseq\&.tab\fP\&. .di ZV .in 0 .nf \fC mcxload -abc seq\&.abc --stream-mirror --stream-neg-log10 -stream-tf \&'ceil(200)\&' -o seq\&.mci -write-tab seq\&.tab .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The \fC--stream-mirror\fP option ensures that the resulting network will be undirected, as recommended when using \fBmcl\fP\&. Omitting this option would result in a directed network as BLAST E-values generally differ between two sequences\&. The default course of action for \fBmcxload(1)\fP is to use the best value found between a pair of labels\&. The next option, \fC--abc-neg-log10\fP tranforms the numerical values in the input (the BLAST E-values) by taking the logarithm in base\ \&10 and subsequently negating the sign\&. Finally, the transformed values are capped so that any E-value below 1e-200 is set to a maximum allowed edge weight of\ \&200\&. To obtain clusterings from \fCseq\&.mci\fP and \fCseq\&.tab\fP one has two choices\&. The first is to generate an abstract clustering representation and from that obtain the label output, as follows\&. Below the \fB-o\fP option is not used, so mcl will create meaningful and unique output names by itself\&. The default way of doing this is to preprend the prefix \fCout\&.\fP and to append a suffix encoding the inflation value used, with inflation encoded using two digits of precision and the decimal separator removed\&. .di ZV .in 0 .nf \fC mcl seq\&.mci -I 1\&.4 mcl seq\&.mci -I 2 mcl seq\&.mci -I 4 mcl seq\&.mci -I 6 mcxdump -icl out\&.seq\&.mci\&.I14 -tabr seq\&.tab -o dump\&.seq\&.mci\&.I14 mcxdump -icl out\&.seq\&.mci\&.I20 -tabr seq\&.tab -o dump\&.seq\&.mci\&.I20 mcxdump -icl out\&.seq\&.mci\&.I40 -tabr seq\&.tab -o dump\&.seq\&.mci\&.I40 mcxdump -icl out\&.seq\&.mci\&.I60 -tabr seq\&.tab -o dump\&.seq\&.mci\&.I60 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Now the file \fCout\&.seq\&.tab\&.I14\fP and its associates can be used for example to compute the distances between the encoded clusterings with \fBclm dist\fP, to compute a set of strictly reconciled nested clusterings with \fBclm order\fP, or to compute an efficiency criterion with \fBclm info\fP\&. Alternatively, label output can be obtained directly from \fBmcl\fP as follows\&. .di ZV .in 0 .nf \fC mcl seq\&.mci -I 1\&.4 -use-tab seq\&.tab mcl seq\&.mci -I 2 -use-tab seq\&.tab mcl seq\&.mci -I 4 -use-tab seq\&.tab mcl seq\&.mci -I 6 -use-tab seq\&.tab .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .SH Clustering expression data The clustering of expression data constitutes another workflow\&. In this case the external format usually is a tabular file format containing labels for genes or probes and numerical values measuring the expression values or fold changes across a series of conditions or experiments\&. Such tabular files can be processed by \fBmcxarray(1)\fP, which comes installed with \fBmcl\fP\&. The program computes correlations (either Pearson or Spearmann) between genes, and creates an edge between genes if their correlation exceeds the specified cutoff\&. From this \fBmcxarray(1)\fP creates both a network file and a dictionary file\&. In the example below, the file \fCexpr\&.data\fP is in tabular format with one row of column headers (e\&.g\&. tags for experiments) and one column of row identifiers (e\&.g\&. probe or gene identifiers)\&. .di ZV .in 0 .nf \fC mcxarray -data expr\&.data -skipr 1 -skipc 1 -o expr\&.mci -write-tab expr\&.tab --pearson -co 0\&.7 -tf \&'abs(),add(-0\&.7)\&' .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR This uses the Pearson correlation, ignoring values below 0\&.7\&. The remaining values in the interval \fC[0\&.7-1]\fP are remapped to the interval \fC[0-0\&.3]\fP\&. This is recommended so that the edge weights will have increased contrast between them, as \fBmcl\fP is affected by relative differences (ratios) between edge weights rather than absolute differences\&. To illustrate this, values\ \&0\&.75 and\ \&0\&.95 are mapped to\ \&0\&.05 and\ \&0\&.25, with respective ratios\ \&0\&.79 and\ \&0\&.25\&. The network file \fCexpr\&.mci\fP and the dictionary file \fCexpr\&.tab\fP can now be used as before\&. It is possible to investigate the effect of the correlation cutoff as follows\&. First a network is generated at a very low threshold, and this network is analysed using \fBmcxquery\fP\&. .di ZV .in 0 .nf \fC mcxarray -data expr\&.data -skipr 1 -skipc 1 -o expr20\&.mcx --write-binary --pearson -co 0\&.2 -tf \&'abs()\&' mcx query -imx expr20\&.mcx --vary-correlation .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The output is in a tabular format describing the properties of the network at increasing correlation thresholds\&. Examples are the size of the biggest component, the number of orphan nodes (not connected to any other node), and the mean and median node degrees\&. A good way to choose the cutoff is to balance the number of singletons and the median node degree\&. Both should preferably not be too high\&. For example the number of orphan nodes should be less than ten percent of the total number of nodes, and the median node degree should be at most one hundred neighbours\&. .SH Reducing node degrees in the graph A good way to lower node degrees in a network is to require that an edge is among the best \fIk\fP edges (those of highest weight) for \fIboth\fP nodes incident to the edge, for some value of \fIk\fP\&. This is achieved by using \fCknn(k)\fP in the argument to the \fB-tf\fP option to mcl or \fBmcx alter\fP\&. To give an example, a graph was formed on translations in Ensembl release 57 on 2\&.6M nodes\&. The similarities were obtained from BLAST scores, leading to a graph with a total edge count of 300M, with best-connected nodes of degree respectively 11148, 9083, 9070, 9019 and 8988, and with mean node degree 233\&. These degrees are unreasonable\&. The graph was subjected to \fBmcx query\fP to investigate the effect of varying k-NN parameters\&. A good heuristic is to choose a value that does not significantly change the number of singletons in the input graph\&. In the example it meant that \fB-tf\fP\ \&\fB\&'knn(160)\&'\fP was feasible, leading to a mean node degree of 98\&. A second approach to reduce node degrees is to employ the \fB-ceil-nb\fP option\&. This ranks nodes by node degree, highest first\&. Nodes are considered in order of rank, and edges of low weight are removed from the graph until a node satisfies the node degree threshold specified by \fB-ceil-nb\fP\&. .SH SEE ALSO \fBmcxio(5)\fP\&. .SH AUTHOR Stijn van Dongen\&. mcl-12-135/doc/mclfamily.azm0000644000402500021140000000665711322637753012553 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcl} {html_title}{The\~MCL\~family} {title}{The MCL family} {author}{Stijn van Dongen} {section}{7} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \${html}{\sec{name}{NAME}} \${roff}{\sec{*}{name}{NAME}} \NAME{mclfamily}{a description of the mcl family of cluster applications.} \par{ \mcl is an implementation of the Markov Cluster Algorithm, aka MCL algoritm. It is described in the \sibref{mcl}{mcl manual}. Several other applications are part of the MCL distribution. This manual pages gives an overview.} \: A short overview is found in \: \sibidx\${html}{, with links to their manual page}. This manual page \: provides somewhat longer descriptions and points out various ways \: of gaining insight, evaluating results, and implementing sanity checks, \: using these utilities. \sec{description}{DESCRIPTION} \begin{itemize}{ {flow}{compact} {interitem}{0} {textindent}{15} } \apply{_#2\!{{ \switch{\1}{ {skip}{\itemskip} {intermezzo}{\intermezzo{\2}} {\item{\1}\car{\2}} } } }}{ {\mysib{mcl}}{the cluster algorithm} {\mysib{mclfaq}}{MCL Frequently Asked Questions} {skip}{} {\mysib{mcxio}}{the network/matrix input/output format} {skip}{} {\mysib{mcx}}{general network/matrix tasks} {\mcxref{diameter}}{compute diameter of an undirected network} {\mcxref{ctty}}{compute betweenness centrality} {\mcxref{clcf}}{compute clustering coefficient} {\mcxref{erdos}}{compute shortest paths in graphs} {\mcxref{query}}{analyse networks at different thresholds} {\mcxref{alter}}{apply network transformations} {\mcxref{convert}}{convert between interchange/binary storage types} {skip}{} {\mysib{mcxarray}}{transform array data to MCL matrices} {\mysib{mcxdump}}{dump a matrix optionally with label substitions} {\mysib{mcxload}}{load label data into matrix and tab files} {\mysib{mcxrand}}{randomly remove, add, and perturb edge weights} {\mysib{mcxmap}}{relabel indices in a graph/matrix} {\mysib{mcxsubs}}{extracting submatrices in various ways} {\mysib{mcxi}}{general matrix operations} {\mysib{mcxassemble}}{create matrices from raw data} {skip}{} {\mysib{clm}}{general graph-clustering related tasks} {\clmref{dist}}{compute split/join distance between clusterings} {\clmref{vol}}{derive node volatility scores from a set of clusterings} {\clmref{info}}{compute performance measure for clusterings} {\clmref{meet}}{compute intersection of clusterings} {\clmref{mate}}{find best matching clusters between clusterings} {\clmref{close}}{fetch connected components from graphs or subgraphs} {\clmref{imac}}{interpret MCL iterand/matrix as clustering} {\clmref{order}}{reorder indices to represent blocks from different clusterings} {\clmref{residue}}{extend subgraph clustering} {\mysib{clmformat}}{display clusters as html or txt files} {skip}{} {\mysib{mclpipeline}}{parsing/assembly/clustering/display} {\mysib{mclblastline} \v{*}}{BLAST pipeline} {\mysib{mcxdeblast} \v{*}}{parse BLAST files} } \end{itemize} \par{ Entries marked \v{*} are not available if only a default install is done.} \end{pud::man} \done \sec{env}{ENVIRONMENT} \'begin{itemize}{ {flow}{cascade} {interitem}{1} {align}{left} } \item{MCXLOGTAG} \car{ An interface to the logging code used in much of the mcl libraries.} \'end{itemize} mcl-12-135/doc/mcxerdos.azm0000644000402500021140000001246311364147232012404 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcx erdos} {html_title}{The mcx erdos manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcx erdos}{compute shortest paths in a graph} \sec{synopsis}{SYNOPSIS} \par{ \mcx{erdos} [options]} \disclaim_mcx{erdos} \par{ \mcx{erdos} \synoptopt{-query}{}{query input stream} \synoptopt{-abc}{}{specify label input} \synoptopt{-imx}{}{specify matrix input} \synoptopt{-tab}{}{use tab file} \synoptopt{-o}{}{output file name} \synoptopt{--is-directed}{input graph is directed} \synoptopt{--is-undirected}{input graph is directed} \synoptopt{-write-path}{}{path matrix file} \synoptopt{-write-step}{}{step matrix file} \stdsynopt } \sec{description}{DESCRIPTION} \par{ \mcx{erdos} computes shortest paths in graphs. It can read a graph either in label format with \genopt{-abc} or in native format with \genopt{-imx}. It reads pairs of node indices from an input stream, and for each pair outputs a data structure describing the full set of shortest paths between the two nodes. Edge weights are not taken into account, so an edge always represents a unit step size between two nodes irrespective of its weight. A mode to compute shortest paths while taking into account edge weights will be implemented later as \mcx{dijkstra}. } \par{ Note that the full set of shortest paths between two nodes in a graph can be described as a directed acyclic graph (DAG), and this is how \mcx{erdos} operates. It is easy to construct graphs and node pairs for which the number of shortest paths between the two nodes becomes exponential in the size of the graph, whereas the lattice description is always garantueed to map to a subset of the graph edge set. } \par{ By default it is assumed that the input graph should be treated as undirected. To this end a transformation step is applied to ensure that the graph in memory is undirected. It is possible to compute shortest paths in directed graphs by using \genopt{--is-directed}, and it is possible to omit the transformation step by using \genopt{--is-undirected}. If the latter is specified while the input graph is in native format and in fact directed, results will be erroneous. This could in theory be mitigated by checking that the input graph is undirected. However, the reason to use \genopt{--is-undirected} is simply to increase speed of operation, whereas such a check would be equally expensive as the transformation step that is omitted with \genopt{--is-undirected}. } \par{ The input graph/matrix, if specified with the \genopt{-imx} option, has to be in mcl matrix/graph format. You can use label input instead by using the \genopt{-abc} option. Refer to \mysib{mcxio} for a description of these two input formats. By default \mcx{erdos} reads from STDIN \it{and expects matrix format}. To specify label input from STDIN use \useopt{-abc}{-}. } \sec{options}{OPTIONS} \begin{itemize}{\mcx_itemopts} \item{\defopt{-query}{}{query input}} \car{ The name for the file from which queries are read. A query consists of two white-space separated node indices or two white-space separated labels. Labels can only be used if either \genopt{-abc} or \genopt{-tab} is specified. } \item{\defopt{-abc}{}{label input}} \car{ The file name for input that is in label format.} \item{\defopt{-imx}{}{input matrix}} \car{ The file name for input that is in mcl native matrix format.} \item{\defopt{-o}{}{output file name}} \car{ The name of the file to write output to. } \item{\defopt{-tab}{}{use tab file}} \car{ This option causes the output to be printed with the labels found in the tab file. With \genopt{-abc} this option will, additionally, construct a graph only on the labels found in the tab file. If this option is used in conjunction with \genopt{-imx} the tab domain and the matrix domain are required to be identical. } \item{\defopt{--is-directed}{compute directed shortest paths}} \car{ The input graph is not transformed and assumed to be directed. Shortest paths are computed taking this into account. } \item{\defopt{--is-undirected}{skip symmetrification step}} \car{ The input graph is not transformed and assumed to be undirected. Shortest paths are computed on the assumption that the input is undirected. Use this option only if you are sure the input is undirected and need to have faster execution. } \items{ {\defopt{-write-path}{}{path matrix file}} {\defopt{-write-step}{}{step matrix file}} } \car{ The path matrix enumerates the nodes that take part in all shortest paths. The first list contains those nodes that lie at distance 1 of the source node, the second list contains nodes lying at distance 2, and so on. The step matrix contains all the edges that make up the lattice of shortest paths between the two query nodes. } \end{itemize} \sec{seealso}{SEE ALSO} \par{ \mysib{mcxio}, and \mysib{mclfamily} for an overview of all the documentation and the utilities in the mcl family.} \end{pud::man} mcl-12-135/doc/mcx.zmm0000644000402500021140000001442611401211650011350 00000000000000 \'set{reqver}{2009-250} \'if{\'cmp{gq}{\__version__}{\reqver}}{}{ \'write{stderr}{txt}{Requires zoem version >= \reqver\|}\'exit} \: \setx{__searchpath__}{\__searchpath__\!{}{../../../zoem/mac}} \: Used this when using relative path through the micans tree. \: Nowadays I oblige myself to use the zoem installed on my system. \'input{pud/man.zmm} \: The three definitions below are for options defined in \: an \items{ .. } macro. \: The first option is the only one with a genuine \defopt \: and creates the anchor for those options. \: Use the dummy macros on the other options so that documentation \: analysis tools (like Stijn's docme) can pick them up \: as definition instances and reconcile them with `prog --apropos`. \'set{defoptdummy#2}{\genopt{\1}{\2}} \'set{defoptdummy#3}{\genopt{\1}{\2}{\3}} \'set{defkvpdummy#3}{\defkvp{\1}{\2}{\3}} \'setx{"man::year"}{\'zinsert{stamp.year}} \'setx{"man::month"}{\'zinsert{stamp.month}} \'setx{"man::day"}{\'zinsert{stamp.day}} \'setx{"mcx::stamp"}{\'zinsert{stamp.stamp}} \'setx{"man::year"}{\'tr{{delete}{[:space:]}}{\"man::year"}} \'setx{"man::month"}{\'tr{{delete}{[:space:]}}{\"man::month"}} \'setx{"man::day"}{\'tr{{delete}{[:space:]}}{\"man::day"}} \'setx{"mcx::stamp"}{\'tr{{delete}{[:space:]}}{\"mcx::stamp"}} \setx{man_share}{ {year} {\"man::year"} {month} {\"man::month"} {day} {\"man::day"} {tag} {\"mcx::stamp"} {stamp} {\"mcx::stamp"} } \'setx{"mcx::date"}{\"man::day" \"man::month" \"man::year"} \'def{mcl}{\bf{mcl}} \'def{mclcm}{\bf{mclcm}} \'def{mcx}{\bf{mcx}} \'def{mcxi}{\bf{mcxi}} \set{{modes}{vw}}{}{ {clm} {\bf{clm}} {clmdist} {\bf{clm dist}} {clmvol} {\bf{clm vol}} {clmstable} {\bf{clm vol}} {clminfo} {\bf{clm info}} {clmmeet} {\bf{clm meet}} {clmclose} {\bf{clm close}} {clmformat} {\bf{clm format}} {clmimac} {\bf{clm imac}} {clmmate} {\bf{clm mate}} {clmresidue}{\bf{clm residue}} {clmorder} {\bf{clm order}} } \'def{disclaim_mcx#1}{\par{mcx\1 is not in actual fact a program. This manual page documents the behaviour and options of the mcx program when invoked in mode \it{\1}. The options \genopt{-h}, \genopt{--apropos}, \genopt{--version}, \genopt{-set}, \genopt{--nop}, \genopt{-progress}{} are accessible in all \bf{mcx} modes. They are described in the \sibref{mcx} manual page.}} \'def{disclaim_clm#1}{\par{clm\1 is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode \it{\1}. The options \genopt{-h}, \genopt{--apropos}, \genopt{--version}, \genopt{-set}, \genopt{--nop} are accessible in all \bf{clm} modes. They are described in the \sibref{clm} manual page.}} \'def{stddefopt}{ \if{0}{ \items{ {\defopt{-h}{print synopsis, exit}} {\defopt{--apropos}{print synopsis, exit}} } \item{\defopt{--version}{print version, exit}} }{ } } \'def{stdsynopt}{\:/ \synoptopt{-h}{print synopsis, exit} \synoptopt{--apropos}{print synopsis, exit} \synoptopt{--version}{print version, exit}} \def{shared_synoptopt#1}{ \switch{\1}{ {-tf} {\synoptopt{-tf}{spec}{apply tf-spec to input matrix}} {-ceil-nb} {\synoptopt{-ceil-nb}{n}{reduce neighbourhoods}} {-knn} {\synoptopt{-knn}{n}{keep mutually close neighbours}} {\inform{not supported for shared_synoptopt#1: \1}\exit} } } \def{shared_itemopt#1}{ \switch{\1}{ {-tf} {\item{\defopt{-tf}{}{transform input matrix values}}} {-ceil-nb} {\item{\defopt{-ceil-nb}{n}{reduce neighbourhoods}}} {-knn} {\item{\defopt{-knn}{}{keep mutually close neighbours}}} {\inform{not supported for shared_itemopt#1: \1}\exit} } } \def{shared_defopt#1}{ \switch{\1}{ {-tf}{ Transform the input matrix values according to the syntax described in \mysib{mcxio}. } {-ceil-nb}{ The nodes of the input graph are considered in descending order of the number of neighbours they posses. The first nodes has it neighbours of lowest edge weight removed until no more than \genopt{N} remain. The corresponding reciprocal edges from nodes further down the list are removed as well. Subsequent nodes are treated in the same way until all nodes in the graph have at most \genopt{N} neighbours. This may be considered a poor man's hub removal. } {-knn}{ This considers the \genarg{} best neighbours for each node, then only keeps edges that occur in both best-neighbour lists for the two incident nodes. } {\inform{not supported for shared_defopt#1: \1}\exit} } } \'def{mcxload}{\bf{mcxload}} \'def{mcxconvert}{\bf{mcxconvert}} \'def{mcxarray}{\bf{mcxarray}} \'def{mcxdump}{\bf{mcxdump}} \'def{mcxdiameter}{\bf{mcxdiameter}} \'def{mcxclcf}{\bf{mcxclcf}} \'def{mcxquery}{\bf{mcxquery}} \'def{mcxrand}{\bf{mcxrand}} \'def{mcxdeblast}{\bf{mcxdeblast}} \'def{mclblastline}{\bf{mclblastline}} \'def{mclpipeline}{\bf{mclpipeline}} \'def{zoem}{\bf{zoem}} \'def{mcxsubs}{\bf{mcxsubs}} \'def{mcxmap}{\bf{mcxmap}} \'def{mcxalter}{\bf{mcxalter}} \'def{mcxassemble}{\bf{mcxassemble}} \'def{mcx_itemopts}{{flow}{cascade}{interitem}{1}{$w1}{2}{$w2}{1}{textindent}{2}{itemmargin}{1}} \: different conventions for html and roff. \: in roff I use 'section 5' of the manual pages. \'def{sib#1}{\sibref{\1}{\1}} \'set{%{sibroffmap}}{ {mcxio}{5} {clmprotocols}{5} {mclfaq}{7} {mclfamily}{7} {tingea.log}{7} {mcl}{1} {mclcm}{1} {mcx}{1} {mcxi}{1} {mcxconvert}{1} {mcxarray}{1} {mcxrand}{1} {mcxdiameter}{1} {mcxclcf}{1} {mcxquery}{1} {mcxdump}{1} {mcxload}{1} {mcxsubs}{1} {mcxmap}{1} {mcxalter}{1} {mcxassemble}{1} {clm}{1} {clmimac}{1} {clmclose}{1} {clmresidue}{1} {clmdist}{1} {clminfo}{1} {clmvol}{1} {clmstable}{1} {clmmate}{1} {clmmeet}{1} {clmformat}{1} {clmorder}{1} {mclpipeline}{1} {mclblastline}{1} {mcxdeblast}{1} } \'def{clm#1}{\bf{clm \1}} \'def{clmref#1}{\sibref{clm\1}{clm \1}} \'def{clmref#2}{\sibref{clm\1}{\2}} \'def{mcx#1}{\bf{mcx \1}} \'def{mcxref#1}{\sibref{mcx\1}{mcx \1}} \'def{mcxref#2}{\sibref{mcx\1}{\2}} \'def{mysib#1}{\sibref{\1}{\1\'${roff}{(\%{sibroffmap}{\1})}}} \'def{mysib#2}{\sibref{\1}{\2}{\1\'${roff}{(\%{sibroffmap}{\1})}}} \def{abc}{\sc{ABC}} \def{MCL}{\sc{MCL}} mcl-12-135/doc/mcl.10000644000402500021140000016564511754271042010717 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcl" 1 "14 May 2012" "mcl 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcl \- The Markov Cluster Algorithm, aka the MCL algorithm\&. This program implements \fBmcl\fP, a cluster algorithm for graphs\&. A single parameter controls the granularity of the output clustering, namely the \fB-I\fP\ \&\fIinflation\fP option described further below\&. In standard usage of the program this parameter is the only one that may require changing\&. By default it is set to\ \&2\&.0 and this is a good way to start\&. If you want to explore cluster structure in graphs with MCL, vary this parameter to obtain clusterings at different levels of granularity\&. A good set of starting values is 1\&.4, 2, 4, and 6\&. The program has a rather large set of options\&. Except for \fB-I\fP none affects the clustering method itself\&. The other options are for a variety of aspects, such as study of the underlying MCL process (i\&.e\&. dumping of iterands), network preprocessing (incorporated for efficiency), resource allocation options (for large-scale analyses), output naming and placement, output formatting, setting of verbosity levels, and so on\&. Network construction and reduction techniques should not be considered as part of a clustering algorithm\&. Nevertheless particular techniques may benefit particular methods or applications\&. In mcl many transformations are accessible through the \fB-tf\fP option\&. It can be used for edge weight transformations and selection, as well as transformations that act on a graph as a whole\&. It is for example possible to remove edges with weight below 0\&.7 by issuing \fB-tf\fP\ \&\fB\&'gq(0\&.7)\&'\fP, where the quotes are necessary to prevent the shell from interpreting the parentheses\&. The option accepts more complicated sequences, such as \fB-tf\fP\ \&\fB\&'gq(0\&.7),add(-0\&.7)\&'\fP\&. This causes all remaining edge weights to be shifted to the range [0-0\&.3], assuming that the input contains correlations\&. Many more transformations are supported, as documented in \fBmcxio(5)\fP\&. Examples of graph-wide transformations are \fC\&'#knn()\&'\fP and \fC\&'#ceilnb()\&'\fP\&. The first only keeps those edges that occur in the list of top-\fC\fP edges of highest weight in both of its incident nodes\&. The second removes edges from nodes of highest degree first, proceeding until all node degrees satisfy the given threshold\&. The \fB-pi\fP (pre-inflation) option can be used to increase the contrast in edge weights\&. This may be useful when clusterings are coarse and fine-grained clusterings are difficult to obtain\&. .SH GETTING STARTED There are two main modes of invocation\&. The most accessible is \fIlabel mode\fP which assumes a format alternatively called label input or ABC-format\&. The input is then a file or stream in which each line encodes an edge in terms of two labels (the \&'A\&' and the \&'B\&') and a numerical value (the \&'C\&'), all separated by white space\&. The most basic example of usage is this: .di ZV .in 0 .nf \fC \fBmcl\fP <-|fname> \fB--abc\fP \fB-o\fP\ \&\fIfname-out\fP .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The output is then a file where each line is a cluster of tab-separated labels\&. If clustering is part of a larger workflow where it is desirable to analyse and compare multiple clusterings, then it is a good idea to use native mode rather than ABC\ \&mode\&. The reason for this is that native mode is understood by all programs in the mcl suite\&. It is a more stringent and unambiguous format, and hence more suitable for data exchange\&. The reader is refered to \fBclmprotocols(5)\fP for more information\&. .SH SYNOPSIS The example invocation below assumes matrix input, as explained above and described in the \fBmcxio(5)\fP section\&. Switching to label mode requires the input file to be in ABC-format and the addition of the \fB--abc\fP option\&. \fBmcl\fP <-|fname> \fB[-I\fP (\fIinflation\fP)\fB]\fP \fB[-o\fP (\fIfname\fP)\fB]\fP These options are sufficient in 95 percent of the cases or more\&. The first argument must be the name of a file containing a graph/matrix in the mcl input format, or a hyphen to read from STDIN\&. With respect to clustering, the \fB-I\fP option is foremost relevant\&. The full listing of \fBmcl\fP options is shown further below, separated into parts corresponding with functional aspects such as clustering, threading, verbosity, network preprocessing, pruning and resource management, automatic output naming, and dumping\&. \fBBaseline clustering options\fP .br \fB[-I\fP (\fIinflation\fP)\fB]\fP \fB[-o\fP (\fIfname\fP)\fB]\fP \fBOutput options\fP .br \fB[-odir\fP (\fIdirectory\fP)\fB]\fP \fB[--d\fP (\fIuse input directory for output\fP)\fB]\fP \fBInput options\fP .br \fB[--abc\fP (\fIexpect/write labels\fP)\fB]\fP \fB[--sif\fP (\fIexpect/write labels\fP)\fB]\fP \fB[--etc\fP (\fIexpect/write labels\fP)\fB]\fP \fB[--expect-values\fP (\fIsif or etc stream contains values\fP)\fB]\fP \fB[-use-tab\fP (\fIuse mapping to write\fP)\fB]\fP \fBTransform options\fP .br \fB[-tf\fP (\fItransform input matrix values\fP)\fB]\fP \fB[-abc-tf\fP (\fItransform input stream values\fP)\fB]\fP \fB[--abc-neg-log10\fP (\fItake log10 of stream values, negate sign\fP)\fB]\fP \fB[--abc-neg-log\fP (\fItake log of stream values, negate sign\fP)\fB]\fP \fBCache options\fP .br \fB[-write-graph\fP (\fIwrite graph\fP)\fB]\fP \fB[-write-graphx\fP (\fIwrite transformed graph\fP)\fB]\fP \fB[-write-expanded\fP (\fIwrite expanded graph\fP)\fB]\fP \fB[--write-limit\fP (\fIwrite mcl process limit\fP)\fB]\fP \fBInput manipulation options\fP .br \fB[-pi\fP (\fIpre-inflation\fP)\fB]\fP \fB[-ph\fP (\fIpre-inflation, max-bound\fP)\fB]\fP \fB[-if\fP (\fIstart-inflation\fP)\fB]\fP \fB[--discard-loops=\fP (\fIdiscard y/n loops in input\fP)\fB]\fP \fB[--sum-loops\fP (\fIset loops to sum of other arcs weights\fP)\fB]\fP \fB[-c\fP (\fIreweight loops\fP)\fB]\fP \fBClustering processing options\fP .br \fB[-sort\fP (\fIsort mode\fP)\fB]\fP \fB[-overlap\fP (\fIoverlap mode\fP)\fB]\fP \fB[--force-connected=\fP (\fIanalyze components\fP)\fB]\fP \fB[--check-connected=\fP (\fIanalyze components\fP)\fB]\fP \fB[--analyze=\fP (\fIperformance criteria\fP)\fB]\fP \fB[--show-log=\fP (\fIshow log\fP)\fB]\fP \fBVerbosity options\fP .br \fB[-q\fP (\fIlog levels\fP)\fB]\fP \fB[-v\fP (\fIverbosity type on\fP)\fB]\fP \fB[-V\fP (\fIverbosity type off\fP)\fB]\fP \fB[--show\fP (\fIprint (small) matrices to screen\fP)\fB]\fP \fBThread options\fP .br \fB[-te\fP (\fI#expansion threads\fP)\fB]\fP \fBOutput file name and annotation options\fP .br \fB[-o\fP (\fIfname\fP)\fB]\fP \fB[-ap\fP (\fIuse str as file name prefix\fP)\fB]\fP \fB[-aa\fP (\fIappend str to suffix\fP)\fB]\fP \fB[-az\fP (\fIshow output file name and exit\fP)\fB]\fP \fB[-ax\fP (\fIshow output suffix and exit\fP)\fB]\fP \fB[-annot\fP (\fIdummy annotation option\fP)\fB]\fP \fBDump options\fP .br \fB[-dump-interval\fP (\fIdump interval\fP)\fB]\fP \fB[-dump-modulo\fP (\fIdump modulo\fP)\fB]\fP \fB[-dump-stem\fP (\fIdump file stem\fP)\fB]\fP \fB[-dump\fP (\fItype\fP)\fB]\fP \fB[-digits\fP (\fIprinting precision\fP)\fB]\fP \fB[--write-binary\fP (\fIwrite matrices in binary format\fP)\fB]\fP \fBInfo options\fP .br \fB[--jury-charter\fP (\fIexplains jury\fP)\fB]\fP \fB[--version\fP (\fIshow version\fP)\fB]\fP \fB[-how-much-ram\fP k (\fIRAM upper bound\fP)\fB]\fP \fB[-h\fP (\fImost important options\fP)\fB]\fP \fB[--help\fP (\fIone-line description for all options\fP)\fB]\fP \fB[-z\fP (\fIshow current settings\fP)\fB]\fP \fB[-az\fP (\fIshow output file name and exit\fP)\fB]\fP \fB[-ax\fP (\fIshow output suffix and exit\fP)\fB]\fP \fB[--show-schemes\fP (\fIshow resource schemes\fP)\fB]\fP \fBImplementation options\fP .br \fB[-sparse\fP (\fIsparse matrix multiplication threshold\fP)\fB]\fP \fBPruning options\fP .br The following options all pertain to the various pruning strategies that can be employed by \fBmcl\fP\&. They are described in the \fBPRUNING OPTIONS\fP section, accompanied by a description of the mcl pruning strategy\&. If your graphs are huge and you have an appetite for tuning, have a look at the following: \fB[-scheme\fP (\fIresource scheme\fP)\fB]\fP \fB[-resource\fP (\fIper-node resource maximum\fP)\fB]\fP \fB[-p\fP (\fIcutoff\fP)\fB]\fP \fB[-P\fP (\fI1/cutoff\fP)\fB]\fP \fB[-S\fP (\fIselection number\fP)\fB]\fP \fB[-R\fP (\fIrecovery number\fP)\fB]\fP \fB[-pct\fP (\fIrecover percentage\fP)\fB]\fP \fB[-warn-pct\fP (\fIprune warn percentage\fP)\fB]\fP \fB[-warn-factor\fP (\fIprune warn factor\fP)\fB]\fP The first argument of \fBmcl\fP must be a file name, but some options are allowed to appear as the first argument instead\&. These are the options that cause mcl to print out information of some kind, after which it will gracefully exit\&. The full list of these options is \fB-z\fP, \fB-h\fP, \fB--help\fP, \fB--version\fP, \fB--show-settings\fP, \fB--show-schemes\fP, \fB--jury-charter\fP\&. .SH DESCRIPTION \fBmcl\fP implements the \fBMCL algorithm\fP, short for the \fBMarkov cluster algorithm\fP, a cluster algorithm for graphs developed by Stijn van Dongen at the Centre for Mathematics and Computer Science in Amsterdam, the Netherlands\&. The algorithm simulates flow using two simple algebraic operations on matrices\&. The inception of this flow process and the theory behind it are described elsewhere (see \fBREFERENCES\fP)\&. Frequently asked questions are answered in the \fBmclfaq(7)\fP section\&. The program described here is a fast threaded implementation written by the algorithm\&'s creator with contributions by several others\&. Anton Enright co-implemented threading; see the \fBHISTORY/CREDITS\fP section for a complete account\&. See the \fBAPPLICABILITY\fP section for a description of the type of graph mcl likes best, and for a qualitative assessment of its speed\&. \fBmcl\fP is accompanied by several other utilities for analyzing clusterings and performing matrix and graph operations; see the \fBSEE ALSO\fP section\&. The first argument is the input file name, or a single hyphen to read from stdin\&. The rationale for making the name of the input file a fixed parameter is that you typically do several runs with different parameters\&. In command line mode it is pleasant if you do not have to skip over an immutable parameter all the time\&. The \fB-I\fP\ \&\fIf\fP option is the main control, affecting cluster granularity\&. In finding good \fBmcl\fP parameter settings for a particular domain, or in finding cluster structure at different levels of granularity, one typically runs mcl multiple times for varying values of f (refer to the \fB-I\fP\ \&\fIinflation\fP option for further information)\&. \fBNOTE\fP MCL interprets the matrix entries or graph edge weights as \fBsimilarities\fP, and it likes \fBundirected input graphs\fP best\&. It can handle directed graphs, but any node pair (i,j) for which w(i,j) is much smaller than w(j,i) or vice versa will presumably have a slightly negative effect on the clusterings output by mcl\&. Many such node pairs will have a distinctly negative effect, so try to make your input graphs undirected\&. How your edge weights are computed may affect mcl\&'s performance\&. In protein clustering, one way to go is to choose the negated logarithm of the BLAST probabilities (see \fBREFERENCES\fP)\&. \fBmcl\fP\&'s default parameters should make it quite fast under almost all circumstances\&. Taking default parameters, mcl has been used to generate good protein clusters on 133k proteins, taking 10 minutes running time on a Compaq ES40 system with four alpha EV6\&.7 processors\&. It has been applied (with good results) to graphs with two million nodes, and if you have the memory (and preferably CPUs as well) nothing should stop you from going further\&. For large graphs, there are several groups of parameters available for tuning the mcl computing process, should it be necessary\&. The easiest thing to do is just vary the \fB-scheme\fP option\&. This triggers different settings for the group of pruning parameters \fB-p/-P\fP, \fB-R\fP, \fB-S\fP, and \fB-pct\fP\&. The default setting corresponds with \fB-scheme\fP\ \&\fB6\fP\&. When doing multiple mcl runs for the same graphs with different \fB-I\fP settings (for obtaining clusterings at different levels of granularity), it can be useful to factor out the first bit of computation that is common to all runs, by using the \fB-write-expanded\fP option one time and then using \fB-if\fP\ \&\fIinflation\fP for each run in the set\&. Whether mcl considers a graph large depends mainly on the graph connectivity; a highly connected graph on 50,000 nodes is large to mcl (so that you might want to tune resources) whereas a sparsely connected graph on 500,000 nodes may be business as usual\&. \fBmcl\fP is a memory munger\&. Its precise appetite depends on the resource settings\&. You can get a rough (and usually much too pessimistic) upper bound for the amount of RAM that is needed by using the \fB-how-much-ram\fP option\&. The corresponding entry in this manual page contains the simple formula via which the upper bound is computed\&. Other options of interest are the option to specify threads \fB-te\fP, and the verbosity-related options \fB-v\fP and \fB-V\fP\&. The actual settings are shown with \fB-z\fP, and for graphs with at most 12 nodes or so you can view the MCL matrix iterands on screen by supplying \fB--show\fP (this may give some more feeling)\&. MCL iterands allow a generic interpretation as clusterings as well\&. The clusterings associated with early iterands may contain a fair amount of overlap\&. Refer to the \fB-dump\fP option, the \fBmclfaq(7)\fP manual, and the \fBclm imac\fP utility (Interpret Matrices As Clusterings)\&. Use \fBclm imac\fP only if you have a special reason; the normal usage of \fBmcl\fP is to do multiple runs for varying \fB-I\fP parameters and use the clusterings output by mcl itself\&. Under very rare circumstances, \fBmcl\fP might get stuck in a seemingly infinite loop\&. If the number of iterations exceeds a hundred and the \fIchaos\fP indicator remains nearly constant (presumably around value 0\&.37), you can force mcl to stop by sending it the ALRM signal (usually done by \fBkill -s ALRM\fP \fIpid\fP)\&. It will finish the current iteration, and interpret the last iterand as a clustering\&. Alternatively, you can wait and mcl might converge by itself or it will certainly stop after 10,000 iterations\&. The most probable explanation for such an infinite loop is that the input graph contains the flip-flop graph of node size three as a subgraph\&. The creator of this page feels that manual pages are a valuable resource, that online html documentation is also a good thing to have, and that info pages are way \fIway\fP ahead of their time\&. The \fBNOTES\fP section explains how this page was created\&. In the \fBOPTIONS\fP section options are listed in order of importance, with related options grouped together\&. .SH OPTIONS .ZI 2m "\fB-I\fP (\fIinflation\fP)" \& .br Sets the main inflation value to \fI\fP\&. This value is the main handle for affecting cluster granularity\&. It is usually chosen somewhere in the range [1\&.2-5\&.0]\&. \fB-I\fP\ \&\fB5\&.0\fP will tend to result in fine-grained clusterings, and \fB-I\fP\ \&\fB1\&.2\fP will tend to result in very coarse grained clusterings\&. Your mileage will vary depending on the characteristics of your data\&. That is why it is a good idea to test the quality and coherency of your clusterings using \fBclm dist\fP and \fBclm info\fP\&. This will most likely reveal that certain values of \fB-I\fP are simply not right for your data\&. The \fBclm dist\fP section contains a discussion of how to use the cluster validation tools shipped with \fBmcl\fP (see the \fBSEE ALSO\fP section)\&. With low values for \fB-I\fP, like \fB-I\fP\ \&\fB1\&.2\fP, you should be prepared to use more resources in order to maintain quality of clusterings, i\&.e\&. increase the argument to the \fB-scheme\fP option\&. .in -2m .ZI 2m "\fB-o\fP (\fIoutput file name\fP)" \& 'in -2m .ZI 2m "\fB-odir\fP (\fIoutput directory name\fP)" \& 'in -2m .ZI 2m "\fB--d\fP (\fIuse input directory for output\fP)" \& 'in -2m 'in +2m \& .br The default mode of output creation for \fBmcl\fP is to create a file name that uses the input file name stripped of any leading path components, augmented with a prefix \&'\fCout\&.\fP\&' and a suffix encoding pivotal \fBmcl\fP parameters\&. This will usually be the inflation value which is the argument to the \fB-I\fP option\&. By default the output file is written in the current directory\&. For example, if the input is named \fCdata/small\&.mci\fP for example and inflation is set to three, the output file will be named \fCout\&.small\&.mci\&.I30\fP\&. This behaviour can be overridden in various ways\&. The \fB-o\fP option simply specifies the output file name, which may include path components that should exist\&. It is possible to send the clustering to STDOUT by supplying \fB-o\fP\ \&\fB-\fP\&. With the \fB-odir\fP\ \&\fI\fP option \fBmcl\fP constructs the output file name as before, but writes the file in the directory \fI\fP\&. Finally, the option \fB--d\fP is similar but more specific in that \fBmcl\fP will write the output in the directory specified by the path component of the input file, that is, the directory in which the input file resides\&. If either one of \fB--abc\fP, \fB--sif\fP, \fB--etc\fP or \fB-use-tab\fP\ \&\fItab-file\fP is used the output will be in label format\&. Otherwise the clustering is output in the mcl matrix format; see the \fBmcxio(5)\fP section for more information on this\&. Refer also to the group of options discussed at \fB--abc\fP\&. Look at the \fB-ap\fP\ \&\fIprefix\fP option and its siblings for the automatic naming constructions employed by \fBmcl\fP if the \fB-o\fP option is not used\&. .in -2m .ZI 2m "\fB-c\fP (\fIreweight loops\fP)" \& 'in -2m .ZI 2m "\fB--sum-loops\fP (\fIset loops to sum of other arcs weights\fP)" \& 'in -2m 'in +2m \& .br With the \fB-c\fP\ \&\fI\fP option, as the final step of loop computation (i\&.e\&. after initialization and shadowing) all loop weights are multiplied by \fB\fP, if supplied\&. .in -2m .ZI 2m "\fB--discard-loops\fP= (\fIdiscard loops in input\fP)" \& .br By default \fBmcl\fP will remove any loops that are present in the input\&. Use \fB--discard-loops\fP=\fBn\fP to turn this off\&. Bear in mind that loops will still be modified in all cases where the loop weight is not maximal among the list of edge weights for a given node\&. .in -2m .ZI 2m "\fB--abc\fP (\fIexpect/write labels\fP)" \& 'in -2m .ZI 2m "\fB--sif\fP (\fIexpect/write labels\fP)" \& 'in -2m .ZI 2m "\fB--etc\fP (\fIexpect/write labels\fP)" \& 'in -2m .ZI 2m "\fB--expect-values\fP (\fIexpect label:weight format\fP)" \& 'in -2m .ZI 2m "\fB-use-tab\fP (\fIuse mapping to write\fP)" \& 'in -2m 'in +2m \& .br These items all relate to label input and/or label output\&. \fB--abc\fP tells \fBmcl\fP to expect label input and output clusters in terms of those labels\&. This simple format expects two or three fields separated by white space on each line\&. The first and second fields are interpreted as labels specifying source and destination node respectively\&. The third field, if present, specifies the weight of the arc connecting the two nodes\&. The option \fB--sif\fP tells \fBmcl\fP to expect SIF (Simple Interaction File) format\&. This format is line based\&. The first two fields specify the source node (as a label) and the relationship type\&. An arbitrary number of fields may follow, each containing a label identifying a destination node\&. The second field is simply ignored by \fBmcl\fP\&. As an extension to the SIF format weights may optionally follow the labels, separated from them with a colon character\&. It is in this case necessary to use the \fB--expect-values\fP option\&. The \fB--etc\fP option expects a format identical in all respects except that the relationship type is not present, so that all fields after the first are interpreted as destination labels\&. \fB-use-tab\fP is only useful when matrix input is used\&. It will use the tab file to convert the output to labels; it does not fail on indices missing from the tab file, but will bind these to generated dummy labels\&. .in -2m .ZI 2m "\fB-tf\fP (\fItransform input matrix values\fP)" \& 'in -2m .ZI 2m "\fB-abc-tf\fP (\fItransform input stream values\fP)" \& 'in -2m .ZI 2m "\fB--abc-neg-log10\fP (\fItake log10 of stream values, negate sign\fP)" \& 'in -2m .ZI 2m "\fB--abc-neg-log\fP (\fItake log of stream values, negate sign\fP)" \& 'in -2m 'in +2m \& .br \fB-tf\fP transforms the values of the input matrix according to \fB\fP\&. \fB-abc-tf\fP transforms the stream values (when \fB--abc\fP is used) according to \fB\fP\&. \fB--abc-neg-log\fP and \fB--abc-neg-log10\fP imply that the stream input values are replaced by the negation of their log or log10 values, respectively\&. The reason for their existence is documented in \fBmcxio(5)\fP\&. For a description of the transform language excpected/accepted in \fB\fP refer to the same\&. .in -2m .ZI 2m "\fB-write-graph\fP (\fIwrite graph\fP)" \& 'in -2m .ZI 2m "\fB-write-graphx\fP (\fIwrite transformed graph\fP)" \& 'in -2m .ZI 2m "\fB-write-expanded\fP (\fIwrite expanded graph\fP)" \& 'in -2m .ZI 2m "\fB--write-limit\fP (\fIwrite mcl process limit\fP)" \& 'in -2m 'in +2m \& .br The first two options are somewhat outdated, in that the prefered way of loading networks is by using \fBmcxload(1)\fP\&. The option \fB-write-expanded\fP can be useful for exploring more complicated input transformations that incorporate an expansion step, but is not really relevant for production use\&. The last option is mainly educational and for analyzing the \fBmcl\fP process itself\&. .in -2m .ZI 2m "\fB-scheme\fP (\fIuse a preset resource scheme\fP)" \& 'in -2m .ZI 2m "\fB-resource\fP (\fIallow n neighbours throughout\fP)" \& 'in -2m 'in +2m \& .br There are currently seven different resource schemes, indexed 1\&.\&.7\&. High schemes result in more expensive computations that may possibly be more accurate\&. The default scheme is 4\&. When \fBmcl\fP is done, it will give a grade (the so called \fIjury synopsis\fP) to the appropriateness of the scheme used\&. \fIA low grade does not necessarily imply that the resulting clustering is bad\fP - but anyway, a low grade should be reason to try for a higher scheme\&. Use the \fB-resource\fP\ \&\fI\fP option to cap for each nodes the number of neighbours tracked during computation at \fI\fP nodes\&. The \fBPRUNING OPTIONS\fP section contains an elaborate description of the way \fBmcl\fP manages resources, should you be interested\&. In case you are worried about the validation of the resulting clusterings, the \fBmclfaq(7)\fP section has several entries discussing this issue\&. The bottom line is that you have to compare the clusterings resulting from different schemes (and otherwise identical parameters) using utilities such as \fBclm dist\fP, \fBclm info\fP on the one hand, and your own sound judgment on the other hand\&. If your input graph is extremely dense, with an average node degree (i\&.e\&. the number of neighbours per node) that is somewhere above 500, you may need to filter the input graph by removing edges, for example by using one of \fB-tf\fP\ \&\fB\&'#ceilnb()\&'\fP or \fB-tf\fP\ \&\fB\&'#knn()\&'\fP\&. .in -2m .ZI 2m "\fB--show-schemes\fP (\fIshow preset resource schemes\fP)" \& .br Shows the explicit settings to which the different preset schemes correspond\&. The characteristics are written in the same format (more or less) as the output triggered by \fB-v\fP\ \&\fBpruning\fP\&. .in -2m .ZI 2m "\fB-V\fP (\fIverbosity type off\fP)" \& .br See the \fB-v\fP option below\&. .in -2m .ZI 2m "\fB-v\fP (\fIverbosity type on\fP)" \& .br These are the different verbosity modes: \fBpruning\fP .br \fBexplain\fP .br \fBcls\fP .br \fBall\fP .in -2m .ZI 2m "\fB-q\fP (\fIlog levels\fP)" \& .br To make mcl as quiet as can be, add \fB-q\fP\ \&\fBx\fP \fB-V\fP\ \&\fBall\fP to the command line\&. The \fB-q\fP option governs a general logging mechanism\&. The format accepted is described in the \fBtingea\&.log(7)\fP manual page\&. The other options govern verbosity levels specific to mcl\&. \fB-v\fP\ \&\fBall\fP turns them all on, \fB-V\fP\ \&\fBall\fP turns them all off\&. \fB-v\fP\ \&\fIstr\fP and \fB-V\fP\ \&\fIstr\fP turn on/off the single mode \fIstr\fP (for \fIstr\fP equal to one of \fBpruning\fP, \fBcls\fP, or \fBexplain\fP)\&. Each verbosity mode is given its own entry below\&. .in -2m .ZI 2m "\fB-v\fP\ \&\fBexplain\fP" \& .br This mode causes the output of explanatory headers illuminating the output generated with the \fBpruning\fP verbosity mode\&. .in -2m .ZI 2m "\fB-v\fP\ \&\fBpruning\fP" \& .br This mode causes output of resource-related quantities\&. It has a separate entry in the PRUNING OPTIONS section\&. .in -2m .ZI 2m "\fB-v\fP\ \&\fBcls\fP" \& .br This mode (on by default) prints a terse list of characteristics of the clusterings associated with intermediate iterands\&. The characteristics are \fBE/V\fP, \fBcls\fP, \fBolap\fP, and \fBdd\fP\&. They respectively stand for the number of outgoing arcs per node (as an average), the number of clusters in the overlapping clustering associated with the iterand, the number of nodes in overlap, and the \fIdag depth\fP associated with the DAG (directed acyclic graph) associated with the iterand\&. For more information on this DAG refer to the \fB-dump\fP option description in this manual and also \fBmclfaq(7)\fP\&. \fBStandard log information\fP .br .ZI 5m "expa" This gives the ratio of (1) the number of edges after initial expansion, before pruning, to (2) the number of edges before initial expansion\&. .in -5m .ZI 5m "expb" This gives the ratio of (1) the number of edges after expansion and pruning, to (2) the number of edges before initial expansion\&. .in -5m .ZI 5m "expc" This gives the ratio of (1) the number of edges after expansion and pruning, to (2) the number of edges of the original input graph\&. .in -5m .ZI 5m "fmv" This gives the percentage of nodes (matrix columns) for which full matrix/vector computation was used (as opposed to using a sparse technique)\&. .in -5m .in -2m .ZI 2m "\fB-aa\fP (\fIappend to suffix\fP)" \& .br See the \fB-ap\fP option below\&. .in -2m .ZI 2m "\fB-ap\fP (\fIuse as file name prefix\fP)" \& .br If the \fB-o\fP\ \&\fIfname\fP option is not used, \fBmcl\fP will create a file name (for writing output to) that should uniquely characterize the important parameters used in the current invocation of mcl\&. The default format is \fBout\&.fname\&.suf\fP, where \fBout\fP is simply the literal string \fCout\fP, \fBfname\fP is the first argument containing the name of the file (with the graph) to be clustered, and where \fBsuf\fP is the suffix encoding a set of parameters (described further below)\&. The \fB-ap\fP\ \&\fIstr\fP option specifies a prefix to use rather than \fBout\&.fname\fP as sketched above\&. However, \fBmcl\fP will interpret the character \&'=\&', if present in \fIstr\fP, as a placeholder for the input file name\&. If the \fB-aa\fP\ \&\fIstr\fP option is used, \fBmcl\fP will append \fBstr\fP to the suffix \fBsuf\fP created by itself\&. You can use this if you need to encode some extra information in the file name suffix\&. The suffix is constructed as follows\&. The \fB-I\fP\ \&\fIf\fP and \fB-scheme\fP parameter are always encoded\&. Other options, such as \fB-pi\fP\ \&\fIf\fP and \fB-knn\fP are only encoded if they are used\&. Any real argument \fIf\fP is encoded using \fIexactly one\fP trailing digit behind the decimal separator (which itself is not written)\&. The setting \fB-I\fP\ \&\fB3\&.14\fP is thus encoded as I31\&. The \fB-scheme\fP option is encoded using the letter \&'s\&', all other options mentioned here are encoded as themselves (stripped of the hyphen)\&. For example .di ZV .in 0 .nf \fC mcl small\&.mci -I 3 -c 2\&.5 -pi 0\&.8 -scheme 5 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR results in the file name \fCout\&.small\&.mci\&.I30s5c25pi08\fP\&. If you want to know beforehand what file name will be produced, use the \fB-az\fP option\&. .in -2m .ZI 2m "\fB-az\fP (\fIshow output file name and exit\fP)" \& 'in -2m .ZI 2m "\fB-ax\fP (\fIshow output suffix and exit\fP)" \& 'in -2m 'in +2m \& .br If \fBmcl\fP automatically constructs a file name, it can be helpful to known beforehand what that file name will be\&. Use \fB-az\fP and mcl will write the file name to STDOUT and exit\&. This can be used if mcl is integrated into other software for which the automatic creation of unique file names is convenient\&. By default mcl incorporates the input file name into the output file name and appends a short suffix describing the most important option settings\&. Use \fB-ax\fP to find out what that suffix is\&. This can be useful in wrapper pipeline scripts such as clxcoarse\&. .in -2m .ZI 2m "\fB-annot\fP (\fIdummy annotation option\fP)" \& .br \fBmcl\fP writes the command line with which it was invoked to the output clustering file\&. Use this option to include any additional information\&. MCL does nothing with this option except copying it as just described\&. .in -2m .ZI 2m "\fB-te\fP (\fI#expansion threads\fP)" \& .br Threading is useful if you have a multi-processor system\&. \fBmcl\fP will spawn \fIk\fP threads of computation\&. If these are computed in parallel (this depends on the number of CPUs available to the mcl process) it will speed up the process accordingly\&. When threading, it is best not to turn on pruning verbosity mode if you are letting mcl run unattended, unless you want to scrutinize its output later\&. This is because it makes \fBmcl\fP run somewhat slower, although the difference is not dramatic\&. .in -2m .ZI 2m "\fB-pi\fP (\fIpre-inflation\fP)" \& 'in -2m .ZI 2m "\fB-ph\fP (\fIpre-inflation, max-bound\fP)" \& 'in -2m 'in +2m \& .br If used, \fBmcl\fP will apply inflation one time to the input graph before entering the main process\&. This can be useful for making the edge weights in a graph either more homogeneous (which may result in less granular clusterings) or more heterogeneous (which may result in more granular clusterings)\&. Homogeneity is achieved for values \fI\fP less than one, heterogeneity for values larger than one\&. Values to try are normally in the range \fC[2\&.0,10\&.0]\fP\&. The \fB-ph\fP option is special in that it does not rescale columns to be stochastic\&. Instead, it rescales columns so that the maximum value found in the column stays the same after inflation was applied\&. There is little significance to this, and what little there is is undocumented\&. .in -2m .ZI 2m "\fB-if\fP (\fIstart-inflation\fP)" \& .br If used, \fBmcl\fP will apply inflation one time to the input graph before entering the main process\&. The difference with \fB-pi\fP is that with the latter option mcl may apply certain transformations after reading in the matrix such as adding or modifying loops\&. The purpose of the \fB-if\fP (mnemonic for \fIinflation-first\fP) option is to use it on graphs saved with the \fB--write-expanded\fP option and convey to mcl that it should not apply those transformations\&. .in -2m .ZI 2m "\fB-dump-interval\fP (\fIdump interval\fP)" \& 'in -2m .ZI 2m "\fB-dump-interval\fP\ \&\fIall\fP" \& 'in -2m 'in +2m \& .br Dump during iterations i\&.\&.j-1\&. Use \fIall\fP to dump in all iterations\&. See the \fB-dump\fP\ \&\fIstr\fP option below\&. .in -2m .ZI 2m "\fB-dump-modulo\fP (\fIdump i+0\&.\&.i+\&.\&.\fP)" \& 'in -2m 'in +2m \& .br Sampling rate: select only these iterations in the dump interval\&. See the \fB-dump\fP\ \&\fIstr\fP option below\&. .in -2m .ZI 2m "\fB-dump-stem\fP (\fIfile stem\fP)" \& 'in -2m 'in +2m \& .br Set the the stem for file names of dumped objects (default \fImcl\fP)\&. See the \fB-dump\fP\ \&\fIstr\fP option below\&. .in -2m .ZI 2m "\fB-dump\fP (\fItype\fP)" \& .br \fIstr\fP is checked for substring occurrences of the following entries\&. Repeated use of \fB-dump\fP is also allowed\&. \fBite\fP .br \fBdag\fP .br \fBcls\fP .br \fBchr\fP .br \fBlines\fP .br \fBcat\fP \fBlines\fP and \fBcat\fP change the mode of dumping\&. The first changes the dump format to a line based pairwise format rather than the default mcl matrix format\&. The second causes all dumped items to be dumped to the default stream used for the output clustering, which is appended at the end\&. The \fBite\fP option writes \fBmcl\fP iterands to file\&. The \fBcls\fP option writes clusterings associated with mcl iterands to file\&. These clusters are obtained from a particular directed acyclic graph (abbreviated as DAG) associated with each iterand\&. The \fBdag\fP option writes that DAG to file\&. The DAG can optionally be further pruned and then again be interpreted as a clustering using \fBclm imac\fP, and \fBclm imac\fP can also work with the matrices written using the \fBite\fP option\&. It should be noted that clusterings associated with intermediate iterands may contain overlap, which is interesting in many applications\&. For more information refer to \fBmclfaq(7)\fP and the \fBREFERENCES\fP section below\&. The \fBresult\fP option dumps the usual MCL clustering\&. The \fBchr\fP option says, for each iterand I, to output a matrix C with characteristics of I\&. C has the same number of columns as I\&. For each column k in C, row entry 0 is the diagonal or \&'loop\&' value of column k in I \fIafter\fP expansion and pruning, and \fIbefore\fP inflation and rescaling\&. Entry 1 is the loop value \fIafter\fP inflation and rescaling\&. Entry 2 is the center of column k (the sum of its entries squared) computed \fIafter\fP expansion and \fIbefore\fP pruning, entry 3 is the maximum value found in that column at the same time\&. Entry 4 is the amount of mass kept for that column \fIafter pruning\fP\&. The \fB-ds\fP option sets the stem for file names of dumped objects (default \fImcl\fP)\&. The \fB-di\fP and \fB-dm\fP options allow a selection of iterands to be made\&. .in -2m .ZI 2m "\fB-digits\fP (\fIprinting precision\fP)" \& .br This has two completely different uses\&. It sets the number of decimals used for pretty-printing \fBmcl\fP iterands when using the \fB--show\fP option (see below), and it sets the number of decimals used for writing the expanded matrix when using the \fB-write-expanded\fP option\&. .in -2m .ZI 2m "\fB--show\fP (\fIprint matrices to screen\fP)" \& .br Print matrices to screen\&. The number of significant digits to be printed can be tuned with \fB-digits\fP\ \&\fIn\fP\&. An 80-column screen allows graphs (matrices) of size up to 12(x12) to be printed with three digits precision (behind the comma), and of size up to 14(x14) with two digits\&. This can give you an idea of how \fBmcl\fP operates, and what the effect of pruning is\&. Use e\&.g\&. \fB-S\fP\ \&\fB6\fP for such a small graph and view the MCL matrix iterands with \fB--show\fP\&. .in -2m .ZI 2m "\fB--write-binary\fP (\fIoutput format\fP)" \& .br Write matrix dump output in binary mcl format rather than interchange mcl format (the default)\&. Note that \fBmcxconvert\fP can be used to convert each one into the other\&. See \fBmcxio(5)\fP and \fBmcx(1)\fP for more information\&. .in -2m .ZI 2m "\fB-sort\fP (\fIsort mode\fP)" \& .br \fIstr\fP can be one of \fBlex\fP, \fBsize\fP, \fBrevsize\fP, or \fBnone\fP\&. The default is \&'revsize\&', in which the largest clusters come first\&. If the mode is \&'size\&', smallest clusters come first, if the mode is \&'lex\&', clusters are ordered lexicographically, and if the mode is \&'none\&', the order is the same as produced by the procedure used by mcl to map matrices onto clusterings\&. .in -2m .ZI 2m "\fB-overlap\fP (\fIoverlap mode\fP)" \& .br Mode \fIkeep\fP causes mcl to retain overlap should this improbable event occur\&. In theory, \fBmcl\fP may generate a clustering that contains overlap, although this almost never happens in practice, as it requires some particular type of symmetry to be present in the input graph (not just any symmetry will do)\&. Mathematically speaking, this is a conjecture and not a theorem, but the present author wil eat his shoe if it fails to be true (for marzipan values of shoe)\&. It is easy though to construct an input graph for which certain mcl settings result in overlap - for example a line graph on an odd number of nodes\&. The default is to excise overlapping parts and introduce them as clusters in their own right\&. It is possible to allocate nodes in overlap to the first cluster in which they occur (i\&.e\&. rather arbitrarily), corresponding with mode \fIcut\fP\&. In mode \fIsplit\fP mcl will put all nodes in overlap into separate clusters\&. These clusters are chosen such that two nodes are put in the same new cluster if and only if they always occur paired in the clusters of the overlapping clustering\&. This option has no effect on the clusterings that are output when using \fB-dump\fP\ \&\fIcls\fP - the default for those is that overlap is not touched, and this default can not yet be overridden\&. .in -2m .ZI 2m "\fB--force-connected\fP= (\fIanalyze components\fP)" \& 'in -2m .ZI 2m "\fB--check-connected\fP= (\fIanalyze components\fP)" \& 'in -2m 'in +2m \& .br If the input graph has strong bipartite characteristics, mcl may yield clusters that do not correspond to connected components in the input graph\&. Turn one of these modes on to analyze the resultant clustering\&. If loose clusters are found they will be split into subclusters corresponding to connected components\&. With \fB--force-connected\fP=\fIy\fP mcl will write the corrected clustering to the normal output file, and the old clustering to the same file with suffix \fCorig\fP\&. With \fB--check-connected\fP=\fIy\fP mcl will write the loose clustering to the normal output file, and the corrected clustering to the same file with suffix \fCcoco\fP\&. These options are not on by default, as the analysis is currently (overly) time-consuming and mcl\&'s behaviour actually makes some sense (when taking bipartite characteristics into account)\&. .in -2m .ZI 2m "\fB--analyze\fP= (\fIperformance criteria\fP)" \& .br With this mode turned on, \fBmcl\fP will reread the input matrix and compute a few performance criteria and attach them to the output file\&. Off by default\&. .in -2m .ZI 2m "\fB--show-log\fP= (\fIshow log\fP)" \& .br Shows the log with process characteristics on STDOUT\&. By default, this mode is off\&. .in -2m .ZI 2m "\fB--jury-charter\fP (\fIexplains jury\fP)" \& .br Explains how the jury synopsis is computed from the jury marks\&. .in -2m .ZI 2m "\fB--version\fP (\fIshow version\fP)" \& .br Show version\&. .in -2m .ZI 2m "\fB-how-much-ram\fP (\fIRAM upper bound\fP)" \& .br \fB\fP is interpreted as the number of nodes of an input graph\&. mcl will print the maximum amount of RAM it needs for its computations\&. The formula for this number in bytes is: .di ZV .in 0 .nf \fC 2 * c * k * 2 : two matrices are concurrently held in memory\&. c : mcl cell size (as shown by -z)\&. : graph cardinality (number of nodes)\&. k : MAX(s, r)\&. s : select number (-S, -scheme options)\&. r : recover number (-R, -scheme options)\&. .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR This estimate will usually be too pessimistic\&. It does assume though that the average node degree of the input graph does not exceed k\&. The \fB-how-much-ram\fP option takes other command-line arguments into account (such as \fB-S\fP and \fB-R\fP), and it expresses the amount of RAM in megabyte units\&. .in -2m .ZI 2m "\fB-h\fP (\fIshow help\fP)" \& .br Shows a selection of the most important \fBmcl\fP options\&. .in -2m .ZI 2m "\fB--help\fP (\fIshow help\fP)" \& .br Gives a one-line description for all options\&. .in -2m .ZI 2m "\fB-z\fP (\fIshow settings\fP)" \& .br Show current settings for tunable parameters\&. \fB--show-settings\fP is a synonym\&. .in -2m .SH PRUNING OPTIONS .ZI 2m "\fB-p\fP (\fIcutoff\fP)" \& 'in -2m .ZI 2m "\fB-P\fP (\fI1/cutoff\fP)" \& 'in -2m .ZI 2m "\fB-S\fP (\fIselection number\fP)" \& 'in -2m .ZI 2m "\fB-R\fP (\fIrecover number\fP)" \& 'in -2m .ZI 2m "\fB-pct\fP (\fIrecover percentage\fP)" \& 'in -2m 'in +2m \& .br After computing a new (column stochastic) matrix vector during expansion (which is matrix multiplication c\&.q\&. squaring), the vector is successively exposed to different pruning strategies\&. The intent of pruning is that many small entries are removed while retaining much of the stochastic mass of the original vector\&. After pruning, vectors are rescaled to be stochastic again\&. MCL iterands are theoretically known to be sparse in a weighted sense, and this manoever effectively perturbs the MCL process a little in order to obtain matrices that are genuinely sparse, thus keeping the computation tractable\&. An example of monitoring pruning can be found in the discussion of \fB-v\fP\ \&\fBpruning\fP at the end of this section\&. \fBmcl\fP proceeds as follows\&. First, entries that are smaller than \fIcutoff\fP are removed, resulting in a vector with at most \fI1/cutoff\fP entries\&. The cutoff can be supplied either by \fB-p\fP, or as the inverse value by \fB-P\fP\&. The latter is more intuitive, if your intuition is like mine (P stands for precision or pruning)\&. The cutoff just described is rigid; it is the same for all vectors\&. The \fB--adapt\fP option causes the computation of a cutoff that depends on a vector\&'s homogeneity properties, and this option may or may not speed up mcl\&. Second, if the remaining stochastic mass (i\&.e\&. the sum of all remaining entries) is less than \fI\fP/100 and the number of remaining entries is less than \fI\fP (as specified by the \fB-R\fP flag), \fBmcl\fP will try to regain ground by recovering the largest discarded entries\&. The total number of entries is not allowed to grow larger than \fI\fP\&. If recovery was not necessary, mcl tries to prune the vector further down to at most \fIs\fP entries (if applicable), as specified by the \fB-S\fP flag\&. If this results in a vector that satisfies the recovery condition then recovery is attempted, exactly as described above\&. The latter will not occur of course if \fI\fP <= \fI\fP\&. The default setting is something like \fB-P\fP\ \&\fB4000\fP \fB-S\fP\ \&\fB500\fP \fB-R\fP\ \&\fB600\fP\&. Check the \fB-z\fP flag to be sure\&. There is a set of precomposed settings, which can be triggered with the \fB-scheme\fP\ \&\fIk\fP option\&. \fIk\fP=4 is the default scheme; higher values for \fIk\fP result in costlier and more accurate computations (vice versa for lower, cheaper, and less accurate)\&. The schemes are listed using the \fB--show-schemes\fP option\&. It is advisable to use the \fB-scheme\fP option only in interactive mode, and to use the explicit expressions when doing batch processing\&. The reason is that there is \fIno guarantee whatsoever\fP that the schemes will not change between different releases\&. This is because the scheme options should reflect good general purpose settings, and it may become appararent that other schemes are better\&. Note that \&'less accurate\&' or \&'more accurate\&' computations may still generate the same output clusterings\&. Use \fBclm dist\fP to compare output clusterings for different resource parameters\&. Refer to \fBclm dist\fP for a discussion of this issue\&. .in -2m .ZI 2m "\fB-warn-pct\fP (\fIprune warn percentage\fP)" \& 'in -2m .ZI 2m "\fB-warn-factor\fP (\fIprune warn factor\fP)" \& 'in -2m 'in +2m \& .br The two options \fB-warn-pct\fP and \fB-warn-factor\fP relate to warnings that may be triggered once the \fIinitial\fP pruning of a vector is completed\&. The idea is to issue warnings if initial pruning almost completely destroys a computed vector, as this may be a sign that the pruning parameters should be changed\&. It depends on the mass remaining after initial pruning whether a warning will be issued\&. If that mass is less than \fIwarn-pct\fP or if the number of remaining entries is smaller by a factor \fIwarn-factor\fP than both the number of entries originally computed \fIand\fP the recovery number, in that case, \fBmcl\fP will issue a warning\&. \fB-warn-pct\fP takes an integer between 0 and 100 as parameter, \fB-warn-factor\fP takes a real positive number\&. They default to something like 30 and 50\&.0\&. If you want to see less warnings, decrease \fIwarn-pct\fP and increase \fIwarn-factor\fP\&. Set \fIwarn-factor\fP to zero if you want no warnings\&. .in -2m .ZI 2m "\fB-v\fP\ \&\fBpruning\fP" \& .br Pruning verbosity mode causes \fBmcl\fP to emit several statistics related to the pruning process, each of which is described below\&. Use \fB-v\fP\ \&\fBexplain\fP to get explanatory headers in the output as well (or simply use \fB-v\fP\ \&\fBall\fP)\&. .in -2m .SH IMPLEMENTATION OPTIONS .ZI 2m "\fB-sparse\fP (\fIsparse matrix multiplication threshold\fP)" \& .br This value (by default set to 10) determines when mcl switches to sparse matrix/vector multiplication\&. For a given column stochastic vector (corresponding with all the neighbours of a given node \fCv\fP according to the current mcl iterand) the sum \fCS\fP of neighbour counts of all neighbours of \fCv\fP is computed, counting duplicates\&. This is exactly the number of matrix entries involved in the computation of the new column vector for the matrix product\&. If \fCS\fP times \fI\fP does not exceed the number of nodes in the graph (equal to both column and row dimension of the matrices used) then a sparse implementation is used\&. Otherwise an optimized regular implementation is used\&. Intuitively, this option can be thought of as the estimated overhead per matrix floating point operation incurred by the sparse implementation compared with the regular implementation\&. MCL uses this estimated overhead to determine which implementation is likely to be quicker\&. Testing has shown this strategy works very well for graphs of a wide range of sizes, including graphs with up to 3 million nodes and 500 million edges\&. \fBNOTE\fP .br The effectiveness of this option is influenced by hardware-specific properties such as the CPU L2 cache size\&. The default value should work reasonably well across a wide variety of scenarios, but it may be possible to squeeze faster run times out of mcl by tuning this parameter to the graphs that are specific for your application domain\&. .in -2m .SH EXAMPLES The following is an example of label input .di ZV .in 0 .nf \fC ---8<------8<------8<------8<------8<--- cat hat 0\&.2 hat bat 0\&.16 bat cat 1\&.0 bat bit 0\&.125 bit fit 0\&.25 fit hit 0\&.5 hit bit 0\&.16 --->8------>8------>8------>8------>8--- .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR It can be clustered like this: .di ZV .in 0 .nf \fC mcl cathat --abc -o out\&.cathat .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The file out\&.cathat should now like like this .di ZV .in 0 .nf \fC ---8<------8<------8<------8<------8<--- cat hat bat bit fit hit --->8------>8------>8------>8------>8--- .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR A few things to note\&. First, MCL will symmetrize any arrow it finds\&. If it sees \fCbat cat 1\&.0\fP it will act as if it also saw \fCcat bat 1\&.0\fP\&. You can explicitly specify \fCcat bat 1\&.0\fP, mcl will in the first parse stage simply end up with duplicate entries\&. Second, MCL deduplicates repeated edges by taking the one with the maximum value\&. So, .di ZV .in 0 .nf \fC ---8<------8<------8<------8<------8<--- cat hat 0\&.2 hat cat 0\&.16 hat cat 0\&.8 --->8------>8------>8------>8------>8--- .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR Will result in two arrows \fCcat-hat\fP and \fChat-cat\fP both with value 0\&.8\&. .SH APPLICABILITY \fBmcl\fP will work very well for graphs in which the diameter of the natural clusters is not too large\&. The presence of many edges between different clusters is not problematic; as long as there is cluster structure, mcl will find it\&. It is less likely to work well for graphs with clusters (inducing subgraphs) of large diameter, e\&.g\&. grid-like graphs derived from Euclidean data\&. So mcl in its canonical form is certainly not fit for boundary detection or image segmentation\&. I experimented with a modified mcl and boundary detection in the thesis pointed to below (see \fBREFERENCES\fP)\&. This was fun and not entirely unsuccesful, but not something to be pursued further\&. \fBmcl\fP likes \fIundirected input graphs best\fP, and it really dislikes graphs with node pairs (i,j) for which an arc going from i to j is present and the counter-arc from j to i is absent\&. Try to make your input graph undirected\&. Furthermore, mcl interprets edge weights in graphs as similarities\&. If you are used to working with dissimilarities, you will have to convert those to similarities using some conversion formula\&. The most important thing is that you feel confident that the similarities are reasonable, i\&.e\&. if X is similar to Y with weight 2, and X is similar to Z with weight 200, then this should mean that the similarity of Y (to X) is neglectible compared with the similarity of Z (to X)\&. \fBmcl\fP is probably not suited for clustering \fItree graphs\fP\&. This is because mcl works best if there are multiple paths between different nodes in the natural clusters, but in tree graphs there is only one path between any pair of nodes\&. Trees are too sparse a structure for mcl to work on\&. \fBmcl\fP may well be suited for clustering \fIlattices\fP\&. It will depend on the density characteristics of the lattice, and the conditions for success are the same as those for clustering graphs in general: The diameter of the natural clusters should not be too large\&. \fBNOTE\fP when clustering a lattice, you \fIhave\fP to cluster the underlying undirected graph, and not the directed graph that represents the lattice itself\&. The reason is that one has to allow mcl (or any other cluster algorithm) to \&'look back in time\&', so to speak\&. Clustering and directionality bite each other (long discussion omitted)\&. \fBmcl\fP has a worst-case time complexity O(N*k^2), where N is the number of nodes in the graph, and k is the maximum number of neighbours tracked during computations\&. k depends on the \fB-P\fP and \fB-S\fP options\&. If the \fB-S\fP option is used (which is the default setting) then k equals the value corresponding with this option\&. Typical values for k are in the range 500\&.\&.1000\&. The average case is much better than the worst case though, as cluster structure itself has the effect of helping mcl\&'s pruning schemes, certainly if the diameter of natural clusters is not large\&. .SH FILES There are currently no resource nor configuration files\&. The mcl matrix format is described in the \fBmcxio(5)\fP section\&. .SH ENVIRONMENT .ZI 2m "MCLXIODIGITS" \& .br When writing matrices in interchange format, mcl will use this variable (if present) as the precision (number of digits) for printing the fractional part of values\&. .in -2m .ZI 2m "MCLXIOVERBOSITY" \& .br MCL and its sibling applications will usually report about matrix input/output from/to disk\&. The verbosity level can be regulated via MCLXIOVERBOSITY\&. These are the levels it can currently be set to\&. .ZJ 1m 1m "1" Silent but applications may alter this\&. .in -2m .ZJ 1m 1m "2" Silent and applications can not alter this\&. .in -2m .ZJ 1m 1m "4" Verbose but applications may alter this\&. .in -2m .ZJ 1m 1m "8" Verbose and applications can not alter this (default)\&. .in -2m .in -2m .ZI 2m "MCLXIOFORMAT" \& .br MCL and its sibling applications will by default output matrices in interchange format rather than binary format (cf\&. \fBmcxio(5)\fP)\&. The desired format can be controlled via the variable MCLXIOFORMAT\&. These are the levels it can currently be set to\&. .ZJ 1m 1m "1" Interchange format but applications may alter this\&. .in -2m .ZJ 1m 1m "2" Interchange format and applications can not alter this (default)\&. .in -2m .ZJ 1m 1m "4" Binary format but applications may alter this\&. .in -2m .ZJ 1m 1m "8" Binary format and applications can not alter this\&. .in -2m .in -2m .ZI 2m "MCLXICFLAGS" \& .br If matrices are output in interchange format, by default empty vectors will not be listed\&. Equivalently (during input time), vectors for which no listing is present are understood to be empty - note that the \fIpresence\fP of a vector is established using the domain information found in the header part\&. It is possible to enforce listing of empty vectors by setting bit \&'1\&' in the variable MCLXICFLAGS\&. .in -2m .ZI 2m "MCLXIOUNCHECKED" \& .br MCL and its sibling applications will always check a matrix for consistency while it is being read\&. If this variable is set, the consistency check is omitted\&. For large graphs the speed up can be considerable\&. However, if the input graph is not conforming it will likely crash the application that is using it\&. .in -2m .SH DIAGNOSTICS If \fBmcl\fP issues a diagnostic error, it will most likely be because the input matrix could not be parsed succesfully\&. \fBmcl\fP tries to be helpful in describing the kind of parse error\&. The mcl matrix format is described in the \fBmcxio(5)\fP section\&. .SH BUGS No known bugs at this time\&. .SH AUTHOR Stijn van Dongen\&. .SH HISTORY/CREDITS The MCL algorithm was conceived in spring 1996 by the present author\&. The first implementation of the MCL algorithm followed that spring and summer\&. It was written in Perl and proved the viability of the algorithm\&. The implementation described here began its life in autumn 1997\&. The first versions of the vital matrix library were designed jointly by Stijn van Dongen and Annius Groenink in the period Oktober 1997 - May 1999\&. The efficient matrix-vector multiplication routine was written by Annius\&. This routine is without significant changes still one of the cornerstones of this MCL implementation\&. Since May 1999 all MCL libraries have seen much development and redesign by the present author\&. Matrix-matrix multiplication has been rewritten several times to take full advantage of the sparseness properties of the stochastic matrices brought forth by the MCL algorithm\&. This mostly concerns the issue of pruning \- removal of small elements in a stochastic column in order to keep matrices sparse\&. Very instructive was that around April 2001 Rob Koopman pointed out that selecting the k largest elements out of a collection of n is best done using a min-heap\&. This was the key to the second major rewrite (now counting three) of the MCL pruning schemes, resulting in much faster code, generally producing a more accurate computation of the MCL process\&. In May 2001 Anton Enright initiated the parallellization of the \fBmcl\fP code and threaded inflation\&. From this example, Stijn threaded expansion\&. This was great, as the MCL data structures and operands (normal matrix multiplication and Hadamard multiplication) just beg for parallellization\&. Onwards\&. The January 2003 03-010 release introduced support for sparsely enumerated (i\&.e\&. indices need not be sequential) graphs and matrices, the result of a major overhaul of the matrix library and most higher layers\&. Conceptually, the library now sees matrices as infinite quadrants of which only finite subsections happen to have nonzero entries\&. The June 2003 03-154 release introduced unix-type pipelines for clustering, including the BLAST parser mcxdeblast and the mclblastline script\&. The April 2004 04-105 release revived binary format, which has been a first class citizen every since\&. With the March 2005 05-090 release mcxsubs finally acquired a sane specification syntax\&. The November 2005 05-314 release brought the ability to stream label input directly into mcl\&. The subsequent release introduced a transformation language shared by various mcl siblings that allows arbitrary progressions of transformations to be applied to either stream values or matrix values\&. Joost van Baal set up the mcl CVS tree and packaged mcl for Debian GNU/Linux\&. He completely autotooled the sources, so much so that at first I found it hard to find them back amidst bootstrap, aclocal\&.m4, depcomp, and other beauties\&. Jan van der Steen shared his elegant mempool code\&. Philip Lijnzaad gave useful comments\&. Philip, Shawn Hoon, Abel Ureta-Vidal, and Martin Mokrejs sent helpful bug reports\&. Abel Ureta-Vidal and Dinakarpandian Deendayal commented on and contributed to mcxdeblast and mcxassemble\&. Tim Hughes contributed several good bug reports for mcxassemble, mcxdeblast and zoem (a workhorse for \fBclm format\fP)\&. .SH SEE ALSO \fBmclfaq(7)\fP - Frequently Asked Questions\&. \fBmcxio(5)\fP - a description of the mcl matrix format\&. There are many more utilities\&. Consult \fBmclfamily(7)\fP for an overview of and links to all the documentation and the utilities in the mcl family\&. \fBminimcl\fP is a 200-line perl implementation of mcl\&. It is shipped in the mcl distribution and can be found online at http://micans\&.org/mcl\&. mcl\&'s home at http://micans\&.org/mcl/\&. .SH REFERENCES [1] Stijn van Dongen, \fIGraph Clustering by Flow Simulation\fP\&. PhD thesis, University of Utrecht, May 2000\&. .br http://www\&.library\&.uu\&.nl/digiarchief/dip/diss/1895620/inhoud\&.htm [2] Stijn van Dongen, \fIGraph Clustering Via a Discrete Uncoupling Process\fP, SIAM Journal on Matrix Analysis and Applications, 30(1):121-141, 2008\&. http://link\&.aip\&.org/link/?SJMAEL/30/121/1 [3] Stijn van Dongen\&. \fIA cluster algorithm for graphs\fP\&. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000\&. .br http://www\&.cwi\&.nl/ftp/CWIreports/INS/INS-R0010\&.ps\&.Z [4] Stijn van Dongen\&. \fIA stochastic uncoupling process for graphs\fP\&. Technical Report INS-R0011, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000\&. .br http://www\&.cwi\&.nl/ftp/CWIreports/INS/INS-R0011\&.ps\&.Z [5] Stijn van Dongen\&. \fIPerformance criteria for graph clustering and Markov cluster experiments\fP\&. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000\&. .br http://www\&.cwi\&.nl/ftp/CWIreports/INS/INS-R0012\&.ps\&.Z [6] Enright A\&.J\&., Van Dongen S\&., Ouzounis C\&.A\&. \fIAn efficient algorithm for large-scale detection of protein families\fP, Nucleic Acids Research 30(7):1575-1584 (2002)\&. .SH NOTES This page was generated from \fBZOEM\fP manual macros, http://micans\&.org/zoem\&. Both html and roff pages can be created from the same source without having to bother with all the usual conversion problems, while keeping some level of sophistication in the typesetting\&. mcl-12-135/doc/clmmeet.10000644000402500021140000000404011754271041011546 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "clm meet" 1 "14 May 2012" "clm meet 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME clm meet \- compute the intersection of a set of clusterings\&. clmmeet is not in actual fact a program\&. This manual page documents the behaviour and options of the clm program when invoked in mode \fImeet\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP are accessible in all \fBclm\fP modes\&. They are described in the \fBclm\fP manual page\&. .SH SYNOPSIS \fBclm meet\fP \fB[-o\fP fname (\fIoutput file name\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP + .SH DESCRIPTION \fBclm meet\fP computes the intersection of a set of clusterings, that is, the largest clustering that is a subclustering of all the clusterings in the set\&. It stores the intersection (or meet) in the argument to the \fB-o\fP flag, which must be the first option given\&. All remaining arguments are interpreted as names of files containing clusterings in mcl format (see \fBmcxio(5)\fP), which must all pertain to a set of the same cardinality\&. This utility can be useful in measuring (in conjunction with \fBclm dist\fP) the consistency of a set of clusterings at different levels of granularity \- if the meet of all those clusterings is close to being a subclustering of each of them, consistency is good\&. See \fBclm dist\fP for an example\&. .SH OPTIONS .ZI 2m "\fB-o\fP fname (\fIoutput file name\fP)" \& .br .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/mcl.azm0000644000402500021140000021371111705534102011325 00000000000000\import{mcx.zmm} \: fmv: fraction of matrix-vector computations \: expa: #expand / #previous \: expb: #pruned / #previous \: expc: #pruned / #start \begin{pud::man}{ {name}{mcl} {html_title}{The mcl manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \'${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcl}{The Markov Cluster Algorithm, aka the MCL algorithm.} \par{ This program implements \mcl, a cluster algorithm for graphs. A single parameter controls the granularity of the output clustering, namely the \genoptref{-I}{inflation} option described further below. In standard usage of the program this parameter is the only one that may require changing. By default it is set to\~2.0 and this is a good way to start. If you want to explore cluster structure in graphs with MCL, vary this parameter to obtain clusterings at different levels of granularity. A good set of starting values is 1.4, 2, 4, and 6. } \par{ The program has a rather large set of options. Except for \genoptref{-I} none affects the clustering method itself. The other options are for a variety of aspects, such as study of the underlying \MCL process (i.e. dumping of iterands), network preprocessing (incorporated for efficiency), resource allocation options (for large-scale analyses), output naming and placement, output formatting, setting of verbosity levels, and so on. } \par{ Network construction and reduction techniques should not be considered as part of a clustering algorithm. Nevertheless particular techniques may benefit particular methods or applications. In mcl many transformations are accessible through the \genoptref{-tf} option. It can be used for edge weight transformations and selection, as well as transformations that act on a graph as a whole. It is for example possible to remove edges with weight below 0.7 by issuing \useopt{-tf}{'gq(0.7)'}, where the quotes are necessary to prevent the shell from interpreting the parentheses. The option accepts more complicated sequences, such as \useopt{-tf}{'gq(0.7),add(-0.7)'}. This causes all remaining edge weights to be shifted to the range [0-0.3], assuming that the input contains correlations. Many more transformations are supported, as documented in \mysib{mcxio}. Examples of graph-wide transformations are \v{'#knn()'} and \v{'#ceilnb()'}. The first only keeps those edges that occur in the list of top-\v{} edges of highest weight in both of its incident nodes. The second removes edges from nodes of highest degree first, proceeding until all node degrees satisfy the given threshold. The \genoptref{-pi} (pre-inflation) option can be used to increase the contrast in edge weights. This may be useful when clusterings are coarse and fine-grained clusterings are difficult to obtain. } \sec{started}{GETTING STARTED} \car{There are two main modes of invocation. The most accessible is \it{label mode} which assumes a format alternatively called label input or \abc-format. The input is then a file or stream in which each line encodes an edge in terms of two labels (the 'A' and the 'B') and a numerical value (the 'C'), all separated by white space. The most basic example of usage is this: } \verbatim{\:{/} \mcl <-|fname> \genoptref{--abc} \genoptref{-o}{fname-out}} \car{ The output is then a file where each line is a cluster of tab-separated labels. If clustering is part of a larger workflow where it is desirable to analyse and compare multiple clusterings, then it is a good idea to use native mode rather than \abc\~mode. The reason for this is that native mode is understood by all programs in the mcl suite. It is a more stringent and unambiguous format, and hence more suitable for data exchange. The reader is refered to \mysib{clmprotocols} for more information. } \sec{synopsis}{SYNOPSIS} \car{ The example invocation below assumes matrix input, as explained above and described in the \mysib{mcxio} section. Switching to label mode requires the input file to be in \abc-format and the addition of the \genoptref{--abc} option.} \par{ \mcl <-|fname> \synoptopt{-I}{}{inflation} \synoptopt{-o}{}{fname} \: synoptopt{-scheme}{}{resource scheme} } \par{ These options are sufficient in 95 percent of the cases or more. The first argument must be the name of a file containing a graph/matrix in the mcl input format, or a hyphen to read from STDIN. With respect to clustering, the \optref{-I}{\genopt{-I} option} is foremost relevant. } \: and \optref{-scheme}{\genopt{-scheme} option} are foremost relevant. \par{ The full listing of \mcl options is shown further below, separated into parts corresponding with functional aspects such as clustering, threading, verbosity, network preprocessing, pruning and resource management, automatic output naming, and dumping. } \: The \genopt{-scheme} parameter provides a single access point to the \: pruning options, and should be sufficient in most cases.} \cpar{Baseline clustering options}{ \synoptopt{-I}{}{inflation} \synoptopt{-o}{}{fname} } \cpar{Output options}{ \synoptopt{-odir}{}{directory} \synoptopt{--d}{use input directory for output} } \cpar{Input options}{ \synoptopt{--abc}{expect/write labels} \synoptopt{--sif}{expect/write labels} \synoptopt{--etc}{expect/write labels} \synoptopt{--expect-values}{sif or etc stream contains values} \synoptopt{-use-tab}{}{use mapping to write} } \cpar{Transform options}{ \synoptopt{-tf}{}{transform input matrix values} \synoptopt{-abc-tf}{}{transform input stream values} \synoptopt{--abc-neg-log10}{take log10 of stream values, negate sign} \synoptopt{--abc-neg-log}{take log of stream values, negate sign} } \cpar{Cache options}{ \synoptopt{-write-graph}{}{write graph} \synoptopt{-write-graphx}{}{write transformed graph} \synoptopt{-write-expanded}{}{write expanded graph} \synoptopt{--write-limit}{write mcl process limit} } \cpar{Input manipulation options}{ \synoptopt{-pi}{}{pre-inflation} \synoptopt{-ph}{}{pre-inflation, max-bound} \synoptopt{-if}{}{start-inflation} \synoptkvp{--discard-loops}{}{discard y/n loops in input} \synoptopt{--sum-loops}{set loops to sum of other arcs weights} \synoptopt{-c}{}{reweight loops} } \cpar{Clustering processing options}{ \synoptopt{-sort}{}{sort mode} \synoptopt{-overlap}{}{overlap mode} \synoptkvp{--force-connected}{}{analyze components} \synoptkvp{--check-connected}{}{analyze components} \synoptkvp{--analyze}{}{performance criteria} \synoptkvp{--show-log}{}{show log} } \cpar{Verbosity options}{ \synoptopt{-q}{}{log levels} \synoptopt{-v}{}{verbosity type on} \synoptopt{-V}{}{verbosity type off} \synoptopt{--show}{print (small) matrices to screen} } \cpar{Thread options}{ \synoptopt{-te}{}{#expansion threads} } \cpar{Output file name and annotation options}{ \synoptopt{-o}{}{fname} \synoptopt{-ap}{}{use str as file name prefix} \synoptopt{-aa}{}{append str to suffix} \synoptopt{-az}{show output file name and exit} \synoptopt{-ax}{show output suffix and exit} \synoptopt{-annot}{}{dummy annotation option} } \cpar{Dump options}{ \synoptopt{-dump-interval}{}{dump interval} \synoptopt{-dump-modulo}{}{dump modulo} \synoptopt{-dump-stem}{}{dump file stem} \synoptopt{-dump}{}{type} \synoptopt{-digits}{}{printing precision} \synoptopt{--write-binary}{write matrices in binary format} } \cpar{Info options}{ \synoptopt{--jury-charter}{explains jury} \synoptopt{--version}{show version} \synoptopt{-how-much-ram}{k}{RAM upper bound} \synoptopt{-h}{most important options} \synoptopt{--help}{one-line description for all options} \synoptopt{-z}{show current settings} \synoptopt{-az}{show output file name and exit} \synoptopt{-ax}{show output suffix and exit} \synoptopt{--show-schemes}{show resource schemes} } \cpar{Implementation options}{ \synoptopt{-sparse}{}{sparse matrix multiplication threshold} } \cpar{Pruning options}{ The following options all pertain to the various pruning strategies that can be employed by \mcl. They are described in the \secref{pruneoptions} section, accompanied by a description of the mcl pruning strategy. If your graphs are huge and you have an appetite for tuning, have a look at the following:} \par{ \synoptopt{-scheme}{}{resource scheme} \synoptopt{-resource}{}{per-node resource maximum} \synoptopt{-p}{}{cutoff} \synoptopt{-P}{}{1/cutoff} \synoptopt{-S}{}{selection number} \synoptopt{-R}{}{recovery number} \synoptopt{-pct}{}{recover percentage} \synoptopt{-warn-pct}{}{prune warn percentage} \synoptopt{-warn-factor}{}{prune warn factor} } \par{ The first argument of \mcl must be a file name, but some options are allowed to appear as the first argument instead. These are the options that cause mcl to print out information of some kind, after which it will gracefully exit. The full list of these options is} \par{ \optref{-z}{\genopt{-z}}, \optref{-h}{\genopt{-h}}, \optref{--help}{\genopt{--help}}, \optref{--version}{\genopt{--version}}, \optref{--show-settings}{\genopt{--show-settings}}, \optref{--show-schemes}{\genopt{--show-schemes}}, \optref{--jury-charter}{\genopt{--jury-charter}}. } \sec{description}{DESCRIPTION} \par{ \mcl implements the \bf{MCL algorithm}, short for the \bf{Markov cluster algorithm}, a cluster algorithm for graphs developed by Stijn van Dongen at the Centre for Mathematics and Computer Science in Amsterdam, the Netherlands. The algorithm simulates flow using two simple algebraic operations on matrices. The inception of this flow process and the theory behind it are described elsewhere (see \secref{references}). Frequently asked questions are answered in the \mysib{mclfaq} section. The program described here is a fast threaded implementation written by the algorithm's creator with contributions by several others. Anton Enright co-implemented threading; see the \secref{history} section for a complete account. See the \secref{applicability} section for a description of the type of graph mcl likes best, and for a qualitative assessment of its speed. \mcl is accompanied by several other utilities for analyzing clusterings and performing matrix and graph operations; see the \secref{seealso} section.} \par{ The first argument is the input file name, or a single hyphen to read from stdin. The rationale for making the name of the input file a fixed parameter is that you typically do several runs with different parameters. In command line mode it is pleasant if you do not have to skip over an immutable parameter all the time.} \par{ The \optref{-I}{\genopt{-I}{f} option} is the main control, affecting cluster granularity. In finding good \mcl parameter settings for a particular domain, or in finding cluster structure at different levels of granularity, one typically runs mcl multiple times for varying values of f (refer to the \genoptref{-I}{inflation} option for further information).} \par{\bf{NOTE} \MCL interprets the matrix entries or graph edge weights as \bf{similarities}, and it likes \bf{undirected input graphs} best. It can handle directed graphs, but any node pair (i,j) for which w(i,j) is much smaller than w(j,i) or vice versa will presumably have a slightly negative effect on the clusterings output by mcl. Many such node pairs will have a distinctly negative effect, so try to make your input graphs undirected. How your edge weights are computed may affect mcl's performance. In protein clustering, one way to go is to choose the negated logarithm of the BLAST probabilities (see \secref{references}).} \par{ \mcl's default parameters should make it quite fast under almost all circumstances. Taking default parameters, mcl has been used to generate good protein clusters on 133k proteins, taking 10 minutes running time on a Compaq ES40 system with four alpha EV6.7 processors. It has been applied (with good results) to graphs with two million nodes, and if you have the memory (and preferably CPUs as well) nothing should stop you from going further.} \par{ For large graphs, there are several groups of parameters available for tuning the mcl computing process, should it be necessary. The easiest thing to do is just vary the \optref{-scheme}{\genopt{-scheme} option}. This triggers different settings for the group of pruning parameters \optref{-P}{\genopt{-p/-P}, \genopt{-R}, \genopt{-S}, and \genopt{-pct}}. The default setting corresponds with \useopt{-scheme}{6}. When doing multiple mcl runs for the same graphs with different \genopt{-I} settings (for obtaining clusterings at different levels of granularity), it can be useful to factor out the first bit of computation that is common to all runs, by using the \genoptref{-write-expanded} option one time and then using \genoptref{-if}{inflation} for each run in the set. Whether mcl considers a graph large depends mainly on the graph connectivity; a highly connected graph on 50,000 nodes is large to mcl (so that you might want to tune resources) whereas a sparsely connected graph on 500,000 nodes may be business as usual.} \'""{If graphs are really huge, the time to read a graph from file can be shortened by converting the input graph from interchane mcl format to binary mcl format with \mcxconvert.} \par{ \mcl is a memory munger. Its precise appetite depends on the resource settings. You can get a rough (and usually much too pessimistic) upper bound for the amount of RAM that is needed by using the \optref{-how-much-ram}{\genopt{-how-much-ram} option}. The corresponding entry in this manual page contains the simple formula via which the upper bound is computed.} \par{ Other options of interest are the option to specify threads \optref{-te}{\genopt{-te}}, and the verbosity-related options \optref{-v}{\genopt{-v} and \genopt{-V}}. The actual settings are shown with \genopt{-z}, and for graphs with at most 12 nodes or so you can view the MCL matrix iterands on screen by supplying \optref{--show}{\genopt{--show}} (this may give some more feeling).} \par{ MCL iterands allow a generic interpretation as clusterings as well. The clusterings associated with early iterands may contain a fair amount of overlap. Refer to the \optref{-dump}{\genopt{-dump} option}, the \mysib{mclfaq} manual, and the \clm{imac} utility (Interpret Matrices As Clusterings). Use \clm{imac} only if you have a special reason; the normal usage of \mcl is to do multiple runs for varying \genopt{-I} parameters and use the clusterings output by mcl itself.} \par{ Under very rare circumstances, \mcl might get stuck in a seemingly infinite loop. If the number of iterations exceeds a hundred and the \it{chaos} indicator remains nearly constant (presumably around value 0.37), you can force mcl to stop by sending it the ALRM signal (usually done by \bf{kill -s ALRM} \it{pid}). It will finish the current iteration, and interpret the last iterand as a clustering. Alternatively, you can wait and mcl might converge by itself or it will certainly stop after 10,000 iterations. The most probable explanation for such an infinite loop is that the input graph contains the flip-flop graph of node size three as a subgraph.} \par{ The creator of this page feels that manual pages are a valuable resource, that online html documentation is also a good thing to have, and that info pages are way \it{way} ahead of their time. The \secref{notes} section explains how this page was created.} \par{ In the \secref{options} section options are listed in order of importance, with related options grouped together.} \sec{options}{OPTIONS} \'begin{itemize}{ {flow}{cascade} {interitem}{1} \mcx_itemopts } \item{\defopt{-I}{}{inflation}} \car{ Sets the main inflation value to \genarg{}. This value is the main handle for affecting cluster granularity. It is usually chosen somewhere in the range [1.2-5.0]. \useopt{-I}{5.0} will tend to result in fine-grained clusterings, and \useopt{-I}{1.2} will tend to result in very coarse grained clusterings. Your mileage will vary depending on the characteristics of your data. That is why it is a good idea to test the quality and coherency of your clusterings using \clm{dist} and \clm{info}. This will most likely reveal that certain values of \genopt{-I} are simply not right for your data. The \clm{dist} section contains a discussion of how to use the cluster validation tools shipped with \mcl (see the \secref{seealso} section).} \par{ With low values for \genopt{-I}, like \useopt{-I}{1.2}, you should be prepared to use more resources in order to maintain quality of clusterings, i.e. increase the argument to the \optref{-scheme}{\genopt{-scheme} option}.} \items{ {\defopt{-o}{}{output file name}} {\defopt{-odir}{}{output directory name}} {\defopt{--d}{use input directory for output}} } \car{ The default mode of output creation for \mcl is to create a file name that uses the input file name stripped of any leading path components, augmented with a prefix '\v{out.}' and a suffix encoding pivotal \mcl parameters. This will usually be the inflation value which is the argument to the \genopt{-I} option. By default the output file is written in the current directory. For example, if the input is named \v{data/small.mci} for example and inflation is set to three, the output file will be named \v{out.small.mci.I30}. } \par{ This behaviour can be overridden in various ways. The \genopt{-o} option simply specifies the output file name, which may include path components that should exist. It is possible to send the clustering to STDOUT by supplying \useopt{-o}{-}. With the \genopt{-odir}{} option \mcl constructs the output file name as before, but writes the file in the directory \genarg{}. Finally, the option \genopt{--d} is similar but more specific in that \mcl will write the output in the directory specified by the path component of the input file, that is, the directory in which the input file resides. } \par{ If either one of \genoptref{--abc}, \genoptref{--sif}, \genoptref{--etc} or \genoptref{-use-tab}{tab-file} is used the output will be in label format. Otherwise the clustering is output in the mcl matrix format; see the \mysib{mcxio} section for more information on this. Refer also to the group of options discussed at \genoptref{--abc}. } \par{ Look at the \genoptref{-ap}{prefix} option and its siblings for the automatic naming constructions employed by \mcl if the \genopt{-o} option is not used.} \""{ Too experimental to document for real. \items{ {\""defopt {-shadow}{}{apply shadowing}} {\""defopt {-shadow-s}{}{boost factor (experimental)}} {\""defopt {--shadow-vl}{shadow distant nodes}} } \cpar{EXPERIMENTAL}{ \it{These options are intended and useful for hierarchical clustering with} \mysib{mclcm}. \useopt{--shadow-vl} is the same as \useopt{-shadow}{vl} and is at present the best mode to choose. } \par{ Use these to weaken the connectivity of certain classes of nodes. This means that the effect of the edges in which they participate on the final clustering result is diminished. This is done such that the extent to which a node exhibits certain characteristics is correlated with the extent to which its connectivity is weakened. The different types of characteristics that can be regulated are} \begin{itemize}{ {flow}{compact} {interitem}{0} {textindent}{4} } \item{\bf{vl}} value low - nodes for which the average value of its edges is low compared with the same number across its neighbours. \item{\bf{vh}} value high - nodes for which the average value of its edges is high compared with the same number across its neighbours. \item{\bf{el}} edge low - nodes for which the number of neighbours is low compared with the same number across its neighbours. \item{\bf{eh}} edge high - nodes for which the number of neighbours is high compared with the same number across its neighbours. \end{itemize} \par{The characteristics above, e.g. \bf{vl}, correspond to the modes that can be passed to the \genopt{-shadow} argument. The first mode \bf{vl} is the one most likely to be useful. Combining different modes is possible but may lead to unbalanced clusterings. Using the mode \bf{el} in \mclcm may similarly lead to unbalanced hierachies.} \par{ The boost factor can be set e.g. to 2.0 to increase the effect of shadowing. The default setting is 1.0. } } \items{ {\defopt{-c}{}{reweight loops}} {\defopt{--sum-loops}{set loops to sum of other arcs weights}} } \car{ With the \genopt{-c}{} option, as the final step of loop computation (i.e. after initialization and shadowing) all loop weights are multiplied by \genopt{}, if supplied. } \item{\defkvp{--discard-loops}{}{discard loops in input}} \car{ By default \mcl will remove any loops that are present in the input. Use \usekvp{--discard-loops}{n} to turn this off. Bear in mind that loops will still be modified in all cases where the loop weight is not maximal among the list of edge weights for a given node. } \items{ {\defopt{--abc}{expect/write labels}} {\defopt{--sif}{expect/write labels}} {\defopt{--etc}{expect/write labels}} {\defopt{--expect-values}{expect label:weight format}} {\defopt{-use-tab}{}{use mapping to write}} } \car{ These items all relate to label input and/or label output. \genopt{--abc} tells \mcl to expect label input and output clusters in terms of those labels. This simple format expects two or three fields separated by white space on each line. The first and second fields are interpreted as labels specifying source and destination node respectively. The third field, if present, specifies the weight of the arc connecting the two nodes. } \par{ The option \genopt{--sif} tells \mcl to expect \sc{SIF} (Simple Interaction File) format. This format is line based. The first two fields specify the source node (as a label) and the relationship type. An arbitrary number of fields may follow, each containing a label identifying a destination node. The second field is simply ignored by \mcl. As an extension to the SIF format weights may optionally follow the labels, separated from them with a colon character. It is in this case necessary to use the \genopt{--expect-values} option. The \genopt{--etc} option expects a format identical in all respects except that the relationship type is not present, so that all fields after the first are interpreted as destination labels. } \par{ \genopt{-use-tab} is only useful when matrix input is used. It will use the tab file to convert the output to labels; it does not fail on indices missing from the tab file, but will bind these to generated dummy labels. } \items{ {\defopt{-tf}{}{transform input matrix values}} {\defopt{-abc-tf}{}{transform input stream values}} {\defopt{--abc-neg-log10}{take log10 of stream values, negate sign}} {\defopt{--abc-neg-log}{take log of stream values, negate sign}} } \car{ \genopt{-tf} transforms the values of the input matrix according to \genopt{}. \genopt{-abc-tf} transforms the stream values (when \genoptref{--abc} is used) according to \genopt{}. \genopt{--abc-neg-log} and \genopt{--abc-neg-log10} imply that the stream input values are replaced by the negation of their log or log10 values, respectively. The reason for their existence is documented in \mysib{mcxio}. For a description of the transform language excpected/accepted in \genopt{} refer to the same.} \items{ {\defopt{-write-graph}{}{write graph}} {\defopt{-write-graphx}{}{write transformed graph}} {\defopt{-write-expanded}{}{write expanded graph}} {\defopt{--write-limit}{write mcl process limit}} } \car{ The first two options are somewhat outdated, in that the prefered way of loading networks is by using \mysib{mcxload}. The option \genopt{-write-expanded} can be useful for exploring more complicated input transformations that incorporate an expansion step, but is not really relevant for production use. The last option is mainly educational and for analyzing the \mcl process itself. } \items{ {\defopt{-scheme}{}{use a preset resource scheme}} {\defopt{-resource}{}{allow n neighbours throughout}} } \car{ There are currently seven different resource schemes, indexed 1..7. High schemes result in more expensive computations that may possibly be more accurate. The default scheme is 4. When \mcl is done, it will give a grade (the so called \it{jury synopsis}) to the appropriateness of the scheme used. \it{A low grade does not necessarily imply that the resulting clustering is bad} - but anyway, a low grade should be reason to try for a higher scheme. } \par{ Use the \genopt{-resource}{} option to cap for each nodes the number of neighbours tracked during computation at \genarg{} nodes. } \par{ The \secref{pruneoptions} section contains an elaborate description of the way \mcl manages resources, should you be interested. In case you are worried about the validation of the resulting clusterings, the \mysib{mclfaq} section has several entries discussing this issue. The bottom line is that you have to compare the clusterings resulting from different schemes (and otherwise identical parameters) using utilities such as \clm{dist}, \clm{info} on the one hand, and your own sound judgment on the other hand. } \par{ If your input graph is extremely dense, with an average node degree (i.e. the number of neighbours per node) that is somewhere above 500, you may need to filter the input graph by removing edges, for example by using one of \useopt{-tf}{'#ceilnb()'} or \useopt{-tf}{'#knn()'}. } \item{\defopt{--show-schemes}{show preset resource schemes}} \car{ Shows the explicit settings to which the different preset schemes correspond.} \par{ The characteristics are written in the same format (more or less) as the output triggered by \optref{-v-pruning}{\useopt{-v}{pruning}}.} \item{\defopt{-V}{}{verbosity type off}} \car{ See the \genopt{-v} option below.} \item{\defopt{-v}{}{verbosity type on}} \car{ These are the different verbosity modes:} \par{ \bf{pruning}\| \bf{explain}\| \bf{cls}\| \bf{all}} \item{\defopt{-q}{}{log levels}} \par{ To make mcl as quiet as can be, add \useopt{-q}{x} \useopt{-V}{all} to the command line.} \par{ The \genopt{-q} option governs a general logging mechanism. The format accepted is described in the \mysib{tingea.log} manual page.} \par{ The other options govern verbosity levels specific to mcl. \useopt{-v}{all} turns them all on, \useopt{-V}{all} turns them all off. \genopt{-v}{str} and \genopt{-V}{str} turn on/off the single mode \genarg{str} (for \genarg{str} equal to one of \bf{pruning}, \bf{cls}, or \bf{explain}). Each verbosity mode is given its own entry below.} \item{\useopt{-v}{explain}} \car{ This mode causes the output of explanatory headers illuminating the output generated with the \bf{pruning} verbosity mode.} \item{\useopt{-v}{pruning}} \car{ This mode causes output of resource-related quantities. It has \optref{-v-pruning}{a separate\ entry in the \ref{pruneoptions}{cap} section}.} \item{\useopt{-v}{cls}} \car{ This mode (on by default) prints a terse list of characteristics of the clusterings associated with intermediate iterands. The characteristics are \bf{E/V}, \bf{cls}, \bf{olap}, and \bf{dd}. They respectively stand for the number of outgoing arcs per node (as an average), the number of clusters in the overlapping clustering associated with the iterand, the number of nodes in overlap, and the \it{dag depth} associated with the DAG (directed acyclic graph) associated with the iterand. For more information on this DAG refer to the \genoptref{-dump} option description in this manual and also \mysib{mclfaq}.} \cpar{Standard log information}{} \begin{itemize}{{flow}{compact}{align}{left}{textindent}{5}} \item{expa} This gives the ratio of (1) the number of edges after initial expansion, before pruning, to (2) the number of edges before initial expansion. \item{expb} This gives the ratio of (1) the number of edges after expansion and pruning, to (2) the number of edges before initial expansion. \item{expc} This gives the ratio of (1) the number of edges after expansion and pruning, to (2) the number of edges of the original input graph. \item{fmv} This gives the percentage of nodes (matrix columns) for which full matrix/vector computation was used (as opposed to using a sparse technique). \end{itemize} \item{\defopt{-aa}{}{append to suffix}} \car{ See the \genopt{-ap} option below.} \item{\defopt{-ap}{}{use as file name prefix}} \car{ If the \genoptref{-o}{fname} option is not used, \mcl will create a file name (for writing output to) that should uniquely characterize the important parameters used in the current invocation of mcl. The default format is \bf{out.fname.suf}, where \bf{out} is simply the literal string \v{out}, \bf{fname} is the first argument containing the name of the file (with the graph) to be clustered, and where \bf{suf} is the suffix encoding a set of parameters (described further below).} \par{ The \genopt{-ap}{str} option specifies a prefix to use rather than \bf{out.fname} as sketched above. However, \mcl will interpret the character '=', if present in \genarg{str}, as a placeholder for the input file name.} \par{ If the \genopt{-aa}{str} option is used, \mcl will append \bf{str} to the suffix \bf{suf} created by itself. You can use this if you need to encode some extra information in the file name suffix.} \par{ The suffix is constructed as follows. The \genopt{-I}{f} and \genopt{-scheme} parameter are always encoded. Other options, such as \genopt{-pi}{f} and \genopt{-knn} are only encoded if they are used. Any real argument \genarg{f} is encoded using \it{exactly one} trailing digit behind the decimal separator (which itself is not written). The setting \useopt{-I}{3.14} is thus encoded as I31. The \genopt{-scheme} option is encoded using the letter 's', all other options mentioned here are encoded as themselves (stripped of the hyphen). For example} \verbatim{mcl small.mci -I 3 -c 2.5 -pi 0.8 -scheme 5} \car{ results in the file name \v{out.small.mci.I30s5c25pi08}. If you want to know beforehand what file name will be produced, use the \genopt{-az} option.} \items{ {\defopt{-az}{show output file name and exit}} {\defopt{-ax}{show output suffix and exit}} } If \mcl automatically constructs a file name, it can be helpful to known beforehand what that file name will be. Use \genopt{-az} and mcl will write the file name to STDOUT and exit. This can be used if mcl is integrated into other software for which the automatic creation of unique file names is convenient. \par{ By default mcl incorporates the input file name into the output file name and appends a short suffix describing the most important option settings. Use \genopt{-ax} to find out what that suffix is. This can be useful in wrapper pipeline scripts such as clxcoarse.} \item{\defopt{-annot}{}{dummy annotation option}} \car{ \mcl writes the command line with which it was invoked to the output clustering file. Use this option to include any additional information. MCL does nothing with this option except copying it as just described. } \item{\defopt{-te}{}{#expansion threads}} \car{ Threading is useful if you have a multi-processor system. \mcl will spawn \genarg{k} threads of computation. If these are computed in parallel (this depends on the number of CPUs available to the mcl process) it will speed up the process accordingly.} \par{ When threading, it is best not to turn on pruning verbosity mode if you are letting mcl run unattended, unless you want to scrutinize its output later. This is because it makes \mcl run somewhat slower, although the difference is not dramatic.} \items{ {\defopt{-pi}{}{pre-inflation}} {\defopt{-ph}{}{pre-inflation, max-bound}} } \car{ If used, \mcl will apply inflation one time to the input graph before entering the main process. This can be useful for making the edge weights in a graph either more homogeneous (which may result in less granular clusterings) or more heterogeneous (which may result in more granular clusterings). Homogeneity is achieved for values \genarg{} less than one, heterogeneity for values larger than one. Values to try are normally in the range \m{[2.0,10.0]}.} \par{ The \genopt{-ph} option is special in that it does not rescale columns to be stochastic. Instead, it rescales columns so that the maximum value found in the column stays the same after inflation was applied. There is little significance to this, and what little there is is undocumented. } \""{ This is for use in conjunction with \genkvp{--shadow}{vl}, as the latter option is affected by absolute differences in edge weights. } \item{\defopt{-if}{}{start-inflation}} \car{ If used, \mcl will apply inflation one time to the input graph before entering the main process. The difference with \genopt{-pi} is that with the latter option mcl may apply certain transformations after reading in the matrix such as adding or modifying loops. The purpose of the \genopt{-if} (mnemonic for \it{inflation-first}) option is to use it on graphs saved with the \genoptref{--write-expanded} option and convey to mcl that it should not apply those transformations.} \items{ {\defopt{-dump-interval}{}{dump interval}} {\defoptdummy{-dump-interval}{all}} } \car{ Dump during iterations i..j-1. Use \it{all} to dump in all iterations. See the \genopt{-dump}{str} option below.} \items{\defopt{-dump-modulo}{}{dump i+0..i+..}} \car{ Sampling rate: select only these iterations in the dump interval. See the \genopt{-dump}{str} option below.} \items{\defopt{-dump-stem}{}{file stem}} \car{ Set the the stem for file names of dumped objects (default \it{mcl}). See the \genopt{-dump}{str} option below.} \item{\defopt{-dump}{}{type}} \car{ \genarg{str} is checked for substring occurrences of the following entries. Repeated use of \genopt{-dump} is also allowed.} \par{ \bf{ite}\| \bf{dag}\| \bf{cls}\| \bf{chr}\| \bf{lines}\| \bf{cat}} \par{ \bf{lines} and \bf{cat} change the mode of dumping. The first changes the dump format to a line based pairwise format rather than the default mcl matrix format. The second causes all dumped items to be dumped to the default stream used for the output clustering, which is appended at the end.} \par{ The \bf{ite} option writes \mcl iterands to file. The \bf{cls} option writes clusterings associated with mcl iterands to file. These clusters are obtained from a particular directed acyclic graph (abbreviated as DAG) associated with each iterand. The \bf{dag} option writes that DAG to file. The DAG can optionally be further pruned and then again be interpreted as a clustering using \clm{imac}, and \clm{imac} can also work with the matrices written using the \bf{ite} option. It should be noted that clusterings associated with intermediate iterands may contain overlap, which is interesting in many applications. For more information refer to \mysib{mclfaq} and the \secref{references} section below.} \par{ The \bf{result} option dumps the usual MCL clustering.} \par{ The \bf{chr} option says, for each iterand I, to output a matrix C with characteristics of I. C has the same number of columns as I. For each column k in C, row entry 0 is the diagonal or 'loop' value of column k in I \it{after} expansion and pruning, and \it{before} inflation and rescaling. Entry 1 is the loop value \it{after} inflation and rescaling. Entry 2 is the center of column k (the sum of its entries squared) computed \it{after} expansion and \it{before} pruning, entry 3 is the maximum value found in that column at the same time. Entry 4 is the amount of mass kept for that column \it{after pruning}.} \par{ The \genopt{-ds} option sets the stem for file names of dumped objects (default \it{mcl}). The \genopt{-di} and \genopt{-dm} options allow a selection of iterands to be made.} \item{\defopt{-digits}{}{printing precision}} \car{ This has two completely different uses. It sets the number of decimals used for pretty-printing \mcl iterands when using the \optref{--show}{\genopt{--show} option} (see below), and it sets the number of decimals used for writing the expanded matrix when using the \genoptref{-write-expanded} option.} \item{\defopt{--show}{print matrices to screen}} \car{ Print matrices to screen. The number of significant digits to be printed can be tuned with \genopt{-digits}{n}. An 80-column screen allows graphs (matrices) of size up to 12(x12) to be printed with three digits precision (behind the comma), and of size up to 14(x14) with two digits. This can give you an idea of how \mcl operates, and what the effect of pruning is. Use e.g. \useopt{-S}{6} for such a small graph and view the MCL matrix iterands with \genopt{--show}.} \item{\defopt{--write-binary}{output format}} \car{ Write matrix dump output in binary mcl format rather than interchange mcl format (the default). Note that \mcxconvert can be used to convert each one into the other. See \mysib{mcxio} and \mysib{mcx} for more information.} \item{\defopt{-sort}{}{sort mode}} \car{ \genarg{str} can be one of \bf{lex}, \bf{size}, \bf{revsize}, or \bf{none}. The default is 'revsize', in which the largest clusters come first. If the mode is 'size', smallest clusters come first, if the mode is 'lex', clusters are ordered lexicographically, and if the mode is 'none', the order is the same as produced by the procedure used by mcl to map matrices onto clusterings.} \item{\defopt{-overlap}{}{overlap mode}} \car{ Mode \it{keep} causes mcl to retain overlap should this improbable event occur. In theory, \mcl may generate a clustering that contains overlap, although this almost never happens in practice, as it requires some particular type of symmetry to be present in the input graph (not just any symmetry will do). Mathematically speaking, this is a conjecture and not a theorem, but the present author wil eat his shoe if it fails to be true (for marzipan values of shoe). It is easy though to construct an input graph for which certain mcl settings result in overlap - for example a line graph on an odd number of nodes. The default is to excise overlapping parts and introduce them as clusters in their own right. It is possible to allocate nodes in overlap to the first cluster in which they occur (i.e. rather arbitrarily), corresponding with mode \it{cut}. } \par{ In mode \it{split} mcl will put all nodes in overlap into separate clusters. These clusters are chosen such that two nodes are put in the same new cluster if and only if they always occur paired in the clusters of the overlapping clustering.} \par{ This option has no effect on the clusterings that are output when using \optref{-dump}{\genopt{-dump}{cls}} - the default for those is that overlap is not touched, and this default can not yet be overridden.} \items{ {\defkvp{--force-connected}{}{analyze components}} {\defkvp{--check-connected}{}{analyze components}} } \car{ If the input graph has strong bipartite characteristics, mcl may yield clusters that do not correspond to connected components in the input graph. Turn one of these modes on to analyze the resultant clustering.} \par{ If loose clusters are found they will be split into subclusters corresponding to connected components. With \genkvp{--force-connected}{y} mcl will write the corrected clustering to the normal output file, and the old clustering to the same file with suffix \v{orig}. With \genkvp{--check-connected}{y} mcl will write the loose clustering to the normal output file, and the corrected clustering to the same file with suffix \v{coco}.} \par{ These options are not on by default, as the analysis is currently (overly) time-consuming and mcl's behaviour actually makes some sense (when taking bipartite characteristics into account).} \item{\defkvp{--analyze}{}{performance criteria}} \car{ With this mode turned on, \mcl will reread the input matrix and compute a few performance criteria and attach them to the output file. Off by default.} \item{\defkvp{--show-log}{}{show log}} \car{ Shows the log with process characteristics on STDOUT. By default, this mode is off.} \item{\defopt{--jury-charter}{explains jury}} \car{ Explains how the jury synopsis is computed from the jury marks.} \item{\defopt{--version}{show version}} \car{ Show version.} \item{\defopt{-how-much-ram}{}{RAM upper bound}} \car{ \usearg{} is interpreted as the number of nodes of an input graph. mcl will print the maximum amount of RAM it needs for its computations. The formula for this number in bytes is:} \verbatim{\ 2 * c * k * 2 : two matrices are concurrently held in memory. c : mcl cell size (as shown by -z). : graph cardinality (number of nodes). k : MAX(s, r). s : select number (-S, -scheme options). r : recover number (-R, -scheme options).} \car{ This estimate will usually be too pessimistic. It does assume though that the average node degree of the input graph does not exceed k. The \genopt{-how-much-ram} option takes other command-line arguments into account (such as \genopt{-S} and \genopt{-R}), and it expresses the amount of RAM in megabyte units.} \item{\defopt{-h}{show help}} \car{ Shows a selection of the most important \mcl options.} \item{\defopt{--help}{show help}} \car{ Gives a one-line description for all options.} \item{\defopt{-z}{show settings}} \car{ Show current settings for tunable parameters. \genopt{--show-settings} is a synonym.} \'end{itemize} \sec{pruneoptions}{PRUNING OPTIONS} \'begin{itemize}{ {flow}{cascade} {interitem}{1} \mcx_itemopts } \items{ {\defopt{-p}{}{cutoff}} {\defopt{-P}{}{1/cutoff}} {\defopt{-S}{}{selection number}} {\defopt{-R}{}{recover number}} {\defopt{-pct}{}{recover percentage}} } After computing a new (column stochastic) matrix vector during expansion (which is matrix multiplication c.q. squaring), the vector is successively exposed to different pruning strategies. The intent of pruning is that many small entries are removed while retaining much of the stochastic mass of the original vector. After pruning, vectors are rescaled to be stochastic again. MCL iterands are theoretically known to be sparse in a weighted sense, and this manoever effectively perturbs the MCL process a little in order to obtain matrices that are genuinely sparse, thus keeping the computation tractable. An example of monitoring pruning can be found in the discussion of \optref{-v-pruning}{\useopt{-v}{pruning}} at the end of this section. \par{ \mcl proceeds as follows. First, entries that are smaller than \genarg{cutoff} are removed, resulting in a vector with at most \genarg{1/cutoff} entries. The cutoff can be supplied either by \genopt{-p}, or as the inverse value by \genopt{-P}. The latter is more intuitive, if your intuition is like mine (P stands for precision or pruning). The cutoff just described is rigid; it is the same for all vectors. The \optref{--adapt}{\genopt{--adapt} option} causes the computation of a cutoff that depends on a vector's homogeneity properties, and this option may or may not speed up mcl. } \par{ Second, if the remaining stochastic mass (i.e. the sum of all remaining entries) is less than \genarg{}/100 and the number of remaining entries is less than \genarg{} (as specified by the \genopt{-R} flag), \mcl will try to regain ground by recovering the largest discarded entries. The total number of entries is not allowed to grow larger than \genarg{}. If recovery was not necessary, mcl tries to prune the vector further down to at most \genarg{s} entries (if applicable), as specified by the \genopt{-S} flag. If this results in a vector that satisfies the recovery condition then recovery is attempted, exactly as described above. The latter will not occur of course if \genarg{} <= \genarg{}. } \par{ The default setting is something like \useopt{-P}{4000} \useopt{-S}{500} \useopt{-R}{600}. Check the \genopt{-z} flag to be sure. There is a set of precomposed settings, which can be triggered with the \optref{-scheme}{\genopt{-scheme}{k} option}. \genarg{k}=4 is the default scheme; higher values for \genarg{k} result in costlier and more accurate computations (vice versa for lower, cheaper, and less accurate). The schemes are listed using the \genopt{--show-schemes} option. It is advisable to use the \genopt{-scheme} option only in interactive mode, and to use the explicit expressions when doing batch processing. The reason is that there is \it{no guarantee whatsoever} that the schemes will not change between different releases. This is because the scheme options should reflect good general purpose settings, and it may become appararent that other schemes are better. } \par{ Note that 'less accurate' or 'more accurate' computations may still generate the same output clusterings. Use \clm{dist} to compare output clusterings for different resource parameters. Refer to \clmref{dist} for a discussion of this issue. } \: If you do not know nor want to know the mcl internals, just ignore the \: additional information below and follow the recommendations. They are \: quite straightforward. \: \par \: Judge the right settings for the parameters in this group by the time \: \mcl consumes and the quality of clusters it produces. Use \: \useopt{-v}{pruning} to see how much mass is kept on average. The average \: is computed over all matrix vectors, over the worst x instances, and the \: worst y instances (x and y are tunable using \genopt{-nx} and \: \genopt{-ny}). Try to obtain parameter settings for which the overall \: average is always above 90% (mass kept), and for which the x and y \: averages quickly rise above 90% (see the discussion of \: \useopt{-v}{pruning} below the \optref{--verbose}{\genopt{--verbose}} \: option). \items{ {\defopt{-warn-pct}{}{prune warn percentage}} {\defopt{-warn-factor}{}{prune warn factor}} } The two options \genopt{-warn-pct} and \genopt{-warn-factor} relate to warnings that may be triggered once the \it{initial} pruning of a vector is completed. The idea is to issue warnings if initial pruning almost completely destroys a computed vector, as this may be a sign that the pruning parameters should be changed. It depends on the mass remaining after initial pruning whether a warning will be issued. If that mass is less than \it{warn-pct} or if the number of remaining entries is smaller by a factor \it{warn-factor} than both the number of entries originally computed \it{and} the recovery number, in that case, \mcl will issue a warning. \par{ \genopt{-warn-pct} takes an integer between 0 and 100 as parameter, \genopt{-warn-factor} takes a real positive number. They default to something like 30 and 50.0. If you want to see less warnings, decrease \it{warn-pct} and increase \it{warn-factor}. Set \it{warn-factor} to zero if you want no warnings. } \: below, \""{\defopt{-z}} is to fool my little docme program, \: that aligns `progname --help` with `grep defopt` \item{\""{\defopt{-z}}\defopt{-v-pruning}\useopt{-v}{pruning}} Pruning verbosity mode causes \mcl to emit several statistics related to the pruning process, each of which is described below. Use \useopt{-v}{explain} to get explanatory headers in the output as well (or simply use \useopt{-v}{all}). \""{ dropped these options. Documentation has a little afterlife. \cpar{Selection and recovery}{ The number of selections and recoveries \mcl had to perform during each iteration is shown. It also shows the number of vectors for which the mass after final pruning was below the fraction defined by the \optref{-pct}{\genopt{-pct} option} as a percentage (default probably 90 or 95). } \cpar{Initial and pruned vector footprint distributions}{ The distribution of the vector footprints (i.e. the number of nonzero entries) before and after pruning is shown. This is assembled in a terse (horrid if you will) format, looking as follows (with some context stripped, noting that the data for three expansion steps is shown): } \verbatim{\ ---------------------------------------------------- mass percentages | distr of vec footprints | | |____ expand ___.____ prune ____| prune | final |e4 e3 e2 |e4 e3 e2 | all ny nx|all ny nx|8532c8532c8532c|8532c8532c8532c| ---------.---------.---------------.---------.-----. 98 88 86 98 91 86 _________022456 ___________0234 98 89 86 98 94 91 _______00245678 ___________0234 98 90 89 99 95 94 _______00235568 ___________0234 ...} \car{ This particular output was generated (and truncated after three rounds of expansion and inflation) from clustering a protein graph on 9058 nodes with settings \useopt{-I}{1.4}, \useopt{-P}{2000}, \useopt{-S}{500}, \useopt{-R}{600}, and \useopt{-pct}{95}. } \par{ The header entries 8532c85.. indicate thresholds going from 80000, 50000, 20000, 12500, 8000, all the way down to 300, 200, and 125. The character 'c' signifies the base 1.25 (for no apparent reason). The second entry '2' (after '0') on the first line signifies that roughly 20 percent of all the vectors had a footprint (#nonzero entries) in excess of 800 entries. Likewise, 40 percent had a footprint in excess of 300 entries. The '0' entries signify a fraction somewhere below 5 percent, and the '@' entries signify a fraction somewhere above 95 percent. } \par{ Two columns are listed, one for the expansion vector footprints (i.e. after squaring), and the other for the vector footprints \it{right after initial pruning took place} (i.e. before selection and recovery, after either adaptive or rigid pruning). This may give an idea of the soundness of the initial pruning process (overly severe, or overly mild), and the extent to which you want to apply selection and/or recovery. } \cpar{Initial and final mass windows}{ The mass averages of the pruned vectors after the first selection stage are shown, and the mass averages of the vectors as \it{finally computed}, i.e. after selection and recovery. Note that the latter corresponds to a different stage than what is shown for the vector footprints, if either selection or recovery is turned on. For both cases, three averages are shown: the average over all vectors, the average over the worst x cases, and the average over the worst y cases. The mass averages are shown as percentages: '98' on the first line under the 'prune/all' column means that overall 98 percent of the stochastic mass of the matrix was kept after pruning. } \par{ This example demonstrates that many entries could be removed while retaining much of the stochastic mass. The effect of the recovery (\genopt{-R}) parameter is also clear: the final averages are higher than the initial averages, as a result of \mcl undoing some overenthousiastic pruning. } \par{ An average over the worst k cases is called a window of width k; internally, \mcl tracks many more such windows. The result of this can be seen when using the \optref{--append-log}{\usekvp{--append-log}{y}} option (which appends a log to the cluster output) or the \optref{--show-log}{\usekvp{--show-log}{y} option} (which sends the log to STDOUT). From a fixed set of windows those that are applicable are tracked, that is, all those windows for which the width does not exceed the graph cardinality. The windows in the fixed set have respective sizes 1, 2, 5, 10, 20, 50, and so on up until 5000000 (which makes 15 windows in all). } \item{\defopt {-nj}{i}{jury window index}} \car{ The \genopt{-nj} denotes a window index in the same way as \genopt{-nx} and \genopt{-ny} do. This particular window is used for computing the \it{jury marks}, which are the three number reported by \mcl when it is done. They are a reminder of the existence of pruning and its importance for both speed and accuracy, and they are \it{indicative rather than authorative}. } \par{ These jury marks are simply the respective mass averages in the jury window for the first three iterations. The marks are even further simplified and mapped to the jury synopsis, which is a single grade expressed as an adjective. The grades are, in decreasing order of achievement, \it{perfect exceptional superior excellent good acceptable mediocre poor bad lousy miserable awful wretched atrocious}. Doing 'mcl --jury-charter' will tell you how the jury marks map onto the jury synopsis. } \par{ The jury marks should preferably be higher than 70. If they are in the vicinity of 80 or 90, \mcl is doing fine as far as pruning is concerned. Choose a higher scheme if you think them too low. For very dense graphs that do have strong cluster structure, the jury marks can sink as low as to the 30's and 40's, but the clusterings generated by mcl may still be good. The marks and the synopsis grade the severity of pruning, not cluster quality. Note that the jury becomes friendlier, resp. harsher when the \genopt{-nj} option is increased/decreased. } } \'end{itemize} \sec{impl}{IMPLEMENTATION OPTIONS} \'begin{itemize}{ {flow}{cascade} {interitem}{1} \mcx_itemopts } \item{\defopt{-sparse}{}{sparse matrix multiplication threshold}} \car{ This value (by default set to 10) determines when mcl switches to sparse matrix/vector multiplication. For a given column stochastic vector (corresponding with all the neighbours of a given node \v{v} according to the current mcl iterand) the sum \v{S} of neighbour counts of all neighbours of \v{v} is computed, counting duplicates. This is exactly the number of matrix entries involved in the computation of the new column vector for the matrix product. If \v{S} times \genarg{} does not exceed the number of nodes in the graph (equal to both column and row dimension of the matrices used) then a sparse implementation is used. Otherwise an optimized regular implementation is used. Intuitively, this option can be thought of as the estimated overhead per matrix floating point operation incurred by the sparse implementation compared with the regular implementation. MCL uses this estimated overhead to determine which implementation is likely to be quicker. Testing has shown this strategy works very well for graphs of a wide range of sizes, including graphs with up to 3 million nodes and 500 million edges. } \cpar{NOTE}{ The effectiveness of this option is influenced by hardware-specific properties such as the CPU L2 cache size. The default value should work reasonably well across a wide variety of scenarios, but it may be possible to squeeze faster run times out of mcl by tuning this parameter to the graphs that are specific for your application domain. } \'end{itemize} \sec{examples}{EXAMPLES} \par{The following is an example of label input} \verbatim{---8<------8<------8<------8<------8<--- cat hat 0.2 hat bat 0.16 bat cat 1.0 bat bit 0.125 bit fit 0.25 fit hit 0.5 hit bit 0.16 --->8------>8------>8------>8------>8---} \car{It can be clustered like this:} \verbatim{mcl cathat --abc -o out.cathat} \car{The file out.cathat should now like like this} \verbatim{---8<------8<------8<------8<------8<--- cat hat bat bit fit hit --->8------>8------>8------>8------>8---} \car{A few things to note. First, MCL will symmetrize any arrow it finds. If it sees \v{bat cat 1.0} it will act as if it also saw \v{cat bat 1.0}. You can explicitly specify \v{cat bat 1.0}, mcl will in the first parse stage simply end up with duplicate entries. Second, MCL deduplicates repeated edges by taking the one with the maximum value. So,} \verbatim{---8<------8<------8<------8<------8<--- cat hat 0.2 hat cat 0.16 hat cat 0.8 --->8------>8------>8------>8------>8---} \car{Will result in two arrows \v{cat-hat} and \v{hat-cat} both with value 0.8.} \sec{applicability}{APPLICABILITY} \par{ \mcl will work very well for graphs in which the diameter of the natural clusters is not too large. The presence of many edges between different clusters is not problematic; as long as there is cluster structure, mcl will find it. It is less likely to work well for graphs with clusters (inducing subgraphs) of large diameter, e.g. grid-like graphs derived from Euclidean data. So mcl in its canonical form is certainly not fit for boundary detection or image segmentation. I experimented with a modified mcl and boundary detection in the thesis pointed to below (see \secref{references}). This was fun and not entirely unsuccesful, but not something to be pursued further. } \par{ \mcl likes \it{undirected input graphs best}, and it really dislikes graphs with node pairs (i,j) for which an arc going from i to j is present and the counter-arc from j to i is absent. Try to make your input graph undirected. Furthermore, mcl interprets edge weights in graphs as similarities. If you are used to working with dissimilarities, you will have to convert those to similarities using some conversion formula. The most important thing is that you feel confident that the similarities are reasonable, i.e. if X is similar to Y with weight 2, and X is similar to Z with weight 200, then this should mean that the similarity of Y (to X) is neglectible compared with the similarity of Z (to X). } \par{ \mcl is probably not suited for clustering \it{tree graphs}. This is because mcl works best if there are multiple paths between different nodes in the natural clusters, but in tree graphs there is only one path between any pair of nodes. Trees are too sparse a structure for mcl to work on. } \par{ \mcl may well be suited for clustering \it{lattices}. It will depend on the density characteristics of the lattice, and the conditions for success are the same as those for clustering graphs in general: The diameter of the natural clusters should not be too large. \bf{NOTE} when clustering a lattice, you \it{have} to cluster the underlying undirected graph, and not the directed graph that represents the lattice itself. The reason is that one has to allow mcl (or any other cluster algorithm) to 'look back in time', so to speak. Clustering and directionality bite each other (long discussion omitted). } \par{ \mcl has a worst-case time complexity O(N*k^2), where N is the number of nodes in the graph, and k is the maximum number of neighbours tracked during computations. k depends on the \genopt{-P} and \genopt{-S} options. If the \genopt{-S} option is used (which is the default setting) then k equals the value corresponding with this option. Typical values for k are in the range 500..1000. The average case is much better than the worst case though, as cluster structure itself has the effect of helping mcl's pruning schemes, certainly if the diameter of natural clusters is not large. } \sec{files}{FILES} \par{ There are currently no resource nor configuration files. The mcl matrix format is described in the \mysib{mcxio} section. } \sec{environment}{ENVIRONMENT} \'begin{itemize}{ {flow}{cascade} {interitem}{1} {align}{left} } \item{MCLXIODIGITS} \car{ When writing matrices in interchange format, mcl will use this variable (if present) as the precision (number of digits) for printing the fractional part of values.} \item{MCLXIOVERBOSITY} \car{ MCL and its sibling applications will usually report about matrix input/output from/to disk. The verbosity level can be regulated via MCLXIOVERBOSITY. These are the levels it can currently be set to.} \'begin{itemize}{ {flow}{compact} {interitem}{0} {align}{right} } \item{1} Silent but applications may alter this. \item{2} Silent and applications can not alter this. \item{4} Verbose but applications may alter this. \item{8} Verbose and applications can not alter this (default). \'end{itemize} \item{MCLXIOFORMAT} \car{ MCL and its sibling applications will by default output matrices in interchange format rather than binary format (cf. \mysib{mcxio}). The desired format can be controlled via the variable MCLXIOFORMAT. These are the levels it can currently be set to.} \'begin{itemize}{ {flow}{compact} {interitem}{0} {align}{right} } \item{1} Interchange format but applications may alter this. \item{2} Interchange format and applications can not alter this (default). \item{4} Binary format but applications may alter this. \item{8} Binary format and applications can not alter this. \'end{itemize} \item{MCLXICFLAGS} \car{ If matrices are output in interchange format, by default empty vectors will not be listed. Equivalently (during input time), vectors for which no listing is present are understood to be empty - note that the \it{presence} of a vector is established using the domain information found in the header part. It is possible to enforce listing of empty vectors by setting bit '1' in the variable MCLXICFLAGS.} \item{MCLXIOUNCHECKED} \car{ MCL and its sibling applications will always check a matrix for consistency while it is being read. If this variable is set, the consistency check is omitted. For large graphs the speed up can be considerable. However, if the input graph is not conforming it will likely crash the application that is using it.} \'end{itemize} \sec{diagnostics}{DIAGNOSTICS} \par{ If \mcl issues a diagnostic error, it will most likely be because the input matrix could not be parsed succesfully. \mcl tries to be helpful in describing the kind of parse error. The mcl matrix format is described in the \mysib{mcxio} section.} \sec{bugs}{BUGS} \par{ No known bugs at this time.} \sec{author}{AUTHOR} \par{ Stijn van Dongen.} \sec{history}{HISTORY/CREDITS} \par{ The MCL algorithm was conceived in spring 1996 by the present author. The first implementation of the MCL algorithm followed that spring and summer. It was written in Perl and proved the viability of the algorithm. The implementation described here began its life in autumn 1997. The first versions of the vital matrix library were designed jointly by Stijn van Dongen and Annius Groenink in the period Oktober 1997 - May 1999. The efficient matrix-vector multiplication routine was written by Annius. This routine is without significant changes still one of the cornerstones of this MCL implementation.} \par{ Since May 1999 all MCL libraries have seen much development and redesign by the present author. Matrix-matrix multiplication has been rewritten several times to take full advantage of the sparseness properties of the stochastic matrices brought forth by the MCL algorithm. This mostly concerns the issue of pruning \- removal of small elements in a stochastic column in order to keep matrices sparse.} \par{ Very instructive was that around April 2001 Rob Koopman pointed out that selecting the k largest elements out of a collection of n is best done using a min-heap. This was the key to the second major rewrite (now counting three) of the MCL pruning schemes, resulting in much faster code, generally producing a more accurate computation of the MCL process.} \par{ In May 2001 Anton Enright initiated the parallellization of the \mcl code and threaded inflation. From this example, Stijn threaded expansion. This was great, as the MCL data structures and operands (normal matrix multiplication and Hadamard multiplication) just beg for parallellization.} \par{ Onwards. The January 2003 03-010 release introduced support for sparsely enumerated (i.e. indices need not be sequential) graphs and matrices, the result of a major overhaul of the matrix library and most higher layers. Conceptually, the library now sees matrices as infinite quadrants of which only finite subsections happen to have nonzero entries.} \par{ The June 2003 03-154 release introduced unix-type pipelines for clustering, including the BLAST parser mcxdeblast and the mclblastline script. The April 2004 04-105 release revived binary format, which has been a first class citizen every since.} \par{ With the March 2005 05-090 release mcxsubs finally acquired a sane specification syntax. The November 2005 05-314 release brought the ability to stream label input directly into mcl. The subsequent release introduced a transformation language shared by various mcl siblings that allows arbitrary progressions of transformations to be applied to either stream values or matrix values.} \par{ Joost van Baal set up the mcl CVS tree and packaged mcl for Debian GNU/Linux. He completely autotooled the sources, so much so that at first I found it hard to find them back amidst bootstrap, aclocal.m4, depcomp, and other beauties.} \par{ Jan van der Steen shared his elegant mempool code. Philip Lijnzaad gave useful comments. Philip, Shawn Hoon, Abel Ureta-Vidal, and Martin Mokrejs sent helpful bug reports.} \par{ Abel Ureta-Vidal and Dinakarpandian Deendayal commented on and contributed to mcxdeblast and mcxassemble.} \par{ Tim Hughes contributed several good bug reports for mcxassemble, mcxdeblast and zoem (a workhorse for \clmformat).} \sec{seealso}{SEE ALSO} \par{ \mysib{mclfaq} - Frequently Asked Questions.} \par{ \mysib{mcxio} - a description of the mcl matrix format.} \par{ There are many more utilities. Consult \mysib{mclfamily} for an overview of and links to all the documentation and the utilities in the mcl family.} \par{ \bf{minimcl} is a 200-line perl implementation of mcl. It is shipped in the mcl distribution and can be found online at \httpref{http://micans.org/mcl}.} \: \par{ \: \mcl development is discussed on \v{mcl-devel@lists.micans.org}, \: (subscribtion) information is at \: \httpref{https://lists.micans.org:446/listinfo/mcl-devel} , this list is \: archived at \httpref{https://lists.micans.org:446/pipermail/mcl-devel/}.} \par{ mcl's home at \httpref{http://micans.org/mcl/}.} \sec{references}{REFERENCES} \par{ \reference{gcbfs} Stijn van Dongen, \it{Graph Clustering by Flow Simulation}. PhD thesis, University of Utrecht, May 2000.\| \httpref{http://www.library.uu.nl/digiarchief/dip/diss/1895620/inhoud.htm}} \par{ \reference{gcvdup} Stijn van Dongen, \it{Graph Clustering Via a Discrete Uncoupling Process}, SIAM Journal on Matrix Analysis and Applications, 30(1):121-141, 2008. \httpref{http://link.aip.org/link/?SJMAEL/30/121/1} } \par{ \reference{cafg} Stijn van Dongen. \it{A cluster algorithm for graphs}. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.\| \httpref{http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z}} \par{ \reference{supfg} Stijn van Dongen. \it{A stochastic uncoupling process for graphs}. Technical Report INS-R0011, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.\| \httpref{http://www.cwi.nl/ftp/CWIreports/INS/INS-R0011.ps.Z}} \par{ \reference{pcfgcmce} Stijn van Dongen. \it{Performance criteria for graph clustering and Markov cluster experiments}. Technical Report INS-R0012, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000.\| \httpref{http://www.cwi.nl/ftp/CWIreports/INS/INS-R0012.ps.Z}} \par{ \reference{eaflsdopf} Enright A.J., Van Dongen S., Ouzounis C.A. \it{An efficient algorithm for large-scale detection of protein families}, Nucleic Acids Research 30(7):1575-1584 (2002).} \sec{notes}{NOTES} \par{ This page was generated from \bf{ZOEM} manual macros, \httpref{http://micans.org/zoem}. Both html and roff pages can be created from the same source without having to bother with all the usual conversion problems, while keeping some level of sophistication in the typesetting. \'${html}{\lref{mcl.ps}{This} is the PostScript derived from the zoem troff output.}} \end{pud::man} mcl-12-135/doc/tingea.log.70000644000402500021140000001345711754271046012176 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "tingea\&.log" 7 "14 May 2012" "tingea\&.log 12-135" "MISCELLANEOUS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME tingea\&.log \- How to set the Tingea log parameters .SH DESCRIPTION The Tingea logging framework is part of the Tingea library\&. In this context logging means that a pgrogram issues statements about what it is doing\&. It can do so for different purposes and at different levels of verbosity\&. By default logging statements are written on STDERR\&. Tingea logging provides a quick and easy way for programmers to associate verbosity levels with logging statements\&. Only logging statements for which the verbosity level does not exceed the user-imposed threshold will be executed\&. Users can easily regulate the verbosity level by setting the environment variable TINGEA_LOG_TAG\&. Alternatively, programs may accept a command line argument\&. The format accepted by both environment variable and command line argument is identical\&. For the command line the programmer is free in choosing the option name\&. It is customarily named \fB-q\fP\&. The availability of such an option may vary from program to program\&. However, any program that makes use of the Tingea logging facilities can be regulated with the TINGEA_LOG_TAG environment variable\&. If a \fB-q\fP type option is present and the environment variable is set, then the environment variable is interpreted first followed by the \fB-q\fP argument\&. Tingea logging allows a programmer to assign categories to logging statements\&. The categories FUNCTION and DATA have a subdivision ranging from fine-grained to coarse-grained\&. The categorie MONITORING has a subdivision ranging from low priority to high priority\&. The other categories are unimodal\&. These are IO, THREAD, PROCESS, and GAUGE\&. Three unspecified unimodal categories are SLOT1, SLOT2, and SLOT3\&. They can be used to encode program-specific semantics\&. The programmer may assign multiple categories to a single logging statement\&. It is unusual for more than two categories to be specified\&. For example, IO and DATA at the LIST level may be combined to indicate a logging statement that provides data summaries for a certain IO related information\&. In order of granularity the DATA levels are CELL, LIST, and AGGREGRATE\&. If the user accepts IO logging and accepts DATA logging at level CELL or LIST the statement will be executed\&. If no IO logging is accepted or DATA logging is only accepted at the AGGREGRATE level, the statement will be skipped\&. By default, all categories that are specified by the programmer need to pass the threshold specified by the user for that category\&. The user may relax this requirement so that only one category needs to pass the user threshold\&. In the above example, the statement categorized as both IO and DATA at LIST level will be accepted if the user specifies IO and DATA at AGGR level with OR semantics\&. .SH SYNTAX The syntax of the TINGEA_LOG_TAG environment variable is described by .di ZV .in 0 .nf \fC [[189x]]{<[dfgimpstABC][1-9]>*,[V]} .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR which translates to the following\&. An optional lead tag is followed by a concatenation of units\&. A unit is either a pair in \fC[dfgimpstABC] x [1-9x]\fP or the single character \fCV\fP\&. The leading tag semantics are described further below\&. The single character \fCV\fP, if present, specifies that OR semantics should be used rather than the default AND semantics\&. The semantics for the other units are given below\&. .di ZV .in 0 .nf \fC d DATA 1 CELL 2 LIST 3 AGGR x turned off f FUNCTION 1 LINE 2 FUNCTION 3 MODULE 4 APPLICATION x turned off m MONITORING 1 DEBUG 2 INFO 3 WARNING 4 ERROR 5 PANIC x turned off g GAUGE | i IO | n NETWORK | p PROCESS | (Inter Process really) t THREAD |______ 1 on | x off A SLOT1 | B SLOT2 | C SLOT3 | .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR The leading tag can be used to set levels for all categories at once\&. Subsequent units may then alter this intial setting\&. The lead tag settings and their meaning are these: .di ZV .in 0 .nf \fC 1 d1f1m1g1i1p1s1t1A1B1C1 # very yappy 9 d3f4m5gxixpxsxtxAxBxCx # very terse, only d f m 8 d3f4m5g1i1p1s1t1A1B1C1 # less terse x dxfxmxgxixpxsxtxAxBxCx # silent .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR All categories accept values between \fC1\fP and \fC9\fP in addition to the value \fCx\fP\&. As seen above, only a few categories contain more than one level and no category contains more than five levels\&. The rule is that if a level exceeds the maximul level available for a category it is simply interpreted as the maximum level\&. The GAUGE category, if set, indicates that a program may write line based progress bars or other output in which a single line is accumulated over multiple statements\&. This implies that a single GAUGE logging statement may not result in newline-terminated output\&. This is undesirable in case the logging stream is directed to a file that is written to by other applications as well\&. In that case, turn off GAUGE\&. All other categories are garantueed to result in line-terminated output, by virtue of the programmer contract\&. .SH AUTHOR Stijn van Dongen\&. mcl-12-135/doc/mclblastline.html0000644000402500021140000002260011754271040013376 00000000000000 The mclblastline manual

14 May 2012    mclblastline 12-135

NAME

mclblastline — a pipeline for clustering from BLAST files.

SYNOPSIS

mclblastline file-name

mclblastline [deblast options] [pipeline options] file-name

NOTE
mcl has acquired the ability to proceed from label input as produced by mcxdeblast. This enables a very lightweight mechanism of generating clusterings from BLAST files. You might want to use this mechanism, documented in the mcl manual.

NOTE
mclblastline used to require (given default parameters) the presence of the zoem macro processor to produce detailed output. This is no longer the case. By default mclblastline now creates a line-based tab-separated dump file. Zoem will be invoked when the --fmt-fancy option is supplied. In that case, zoem obviously has to be installed.

DESCRIPTION

mclblastline wraps around mclpipeline. It supplies the --parser=app and --parser-tag=str options, setting them respectively to mcxdeblast and blast. This tells mclpipeline to use mcxdeblast as the parse script in its pipeline. The significance of the blast tag is that any mcxdeblast option can be passed through mclblastline and mclpipeline by inserting this tag into the option. For example, mcxdeblast accepts the --score=x option. When using mclblastline, you specify it as --blast-score=x. There are two exceptions to this rule, namely the --xi-dat=str and --xo-dat=str options. Refer to the mclpipeline manual for more information.

Additionally, all mclpipeline options are acceptable to mcxdeblast as well. The --whatif is useful for getting a feel for the pipeline. The --mcl-I=f inflation option and --mcl-scheme=i scheme index options are your basic means for respectively manipulating cluster granularity and allocating resources. Read the mcl manual entries for a description of the corresponding -I and -scheme mcl options.

The best advice is to glance over the mcxdeblast and mclpipeline options in order to get a feeling for which of those may come in handy for you. Then start experimenting. Use the --whatif option, it will tell you what would happen without actually doing it.

OPTIONS

All mcxdeblast and mclpipeline options. mcxdeblast options must be passed using the mechanism described above.

EXAMPLES

mclblastline --blast-score=b --blast-sort=a --blast-bcut=5 --mcl-I=2.5 myblastfile

This will use bit scores, sort cluster indices such that the corresponding labels are ordered alphabetically, ignore bit scores not exceeding 5, and use inflation value 2.5. In this case, the output clustering will be in the file named myblastfile.I25s2 (I25 identifying the inflation value and s2 identifying the resource scheme) and the formatted output will be in the file myblastfile.I25s2.fmt.

mclblastline --prepare-mcl myblastfile mclblastline --start-mcl --mcl-I=1.2 myblastfile mclblastline --start-mcl --mcl-I=1.6 myblastfile mclblastline --start-mcl --mcl-I=2.0 myblastfile mclblastline --start-mcl --mcl-I=2.4 myblastfile mclblastline --start-mcl --mcl-I=2.8 myblastfile etc ..

The first run prepares an input matrix to be read by mcl. In this case its file will be named myblastfile.sym. The subsequent runs use this matrix. CAVEAT there are some options that you need to repeat when executing such a resumed run. They are clearly marked in the mclpipeline manual - namely those options that affect names of (intermediate) files. Most importantly, this concerns the mclpipeline options that have prefix --xo or --xi. For example,

mclblastline --prepare-mcl --blast-score=b --xo-dat=b myblastfile mclblastline --start-mcl --xo-dat=b --mcl-I=1.2 myblastfile mclblastline --start-mcl --xo-dat=b --mcl-I=1.6 myblastfile mclblastline --start-mcl --xo-dat=b --mcl-I=2.0 myblastfile mclblastline --start-mcl --xo-dat=b --mcl-I=2.4 myblastfile mclblastline --start-mcl --xo-dat=b --mcl-I=2.8 myblastfile etc ..

In this case, the matrix file will be named myblastfile.b.sym, and the --xo-dat options must be repeated in all runs so that the pipeline reconstructs the correct file name(s).

AUTHOR

Stijn van Dongen

SEE ALSO

mcxdeblast, mclpipeline, mcxassemble.

mcl-12-135/doc/mclfamily.html0000644000402500021140000003027411754271043012713 00000000000000 The MCL family

14 May 2012    mcl 12-135

NAME

mclfamily — a description of the mcl family of cluster applications.

mcl is an implementation of the Markov Cluster Algorithm, aka MCL algoritm. It is described in the mcl manual. Several other applications are part of the MCL distribution. This manual pages gives an overview.

DESCRIPTION

the cluster algorithm

MCL Frequently Asked Questions

the network/matrix input/output format

general network/matrix tasks

compute diameter of an undirected network

compute betweenness centrality

compute clustering coefficient

compute shortest paths in graphs

analyse networks at different thresholds

apply network transformations

convert between interchange/binary storage types

transform array data to MCL matrices

dump a matrix optionally with label substitions

load label data into matrix and tab files

randomly remove, add, and perturb edge weights

relabel indices in a graph/matrix

extracting submatrices in various ways

general matrix operations

create matrices from raw data

general graph-clustering related tasks

compute split/join distance between clusterings

derive node volatility scores from a set of clusterings

compute performance measure for clusterings

compute intersection of clusterings

find best matching clusters between clusterings

fetch connected components from graphs or subgraphs

interpret MCL iterand/matrix as clustering

reorder indices to represent blocks from different clusterings

extend subgraph clustering

display clusters as html or txt files

parsing/assembly/clustering/display

BLAST pipeline

parse BLAST files

Entries marked * are not available if only a default install is done.

mcl-12-135/doc/mcxalter.10000644000402500021140000000364011754271043011746 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcxalter" 1 "14 May 2012" "mcxalter 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcxalter \- various network transformations .SH SYNOPSIS \fBmcxalter\fP \fB[-imx\fP (\fIspecify matrix input\fP)\fB]\fP \fB[-abc\fP (\fIspecify label input\fP)\fB]\fP \fB[-tab\fP (\fIuse tab file\fP)\fB]\fP \fB[-o\fP (\fIoutput\fP)\fB]\fP \fB[-tf\fP spec (\fIapply tf-spec to input matrix\fP)\fB]\fP .SH DESCRIPTION This utility supplies various transformations of networks\&. .SH OPTIONS .ZI 2m "\fB-abc\fP (\fIlabel input\fP)" \& .br The file name for input that is in label format\&. .in -2m .ZI 2m "\fB-imx\fP (\fIinput matrix\fP)" \& .br The file name for input that is in mcl native matrix format\&. .in -2m .ZI 2m "\fB-tab\fP (\fIuse tab file\fP)" \& .br This option causes the output to be printed with the labels found in the tab file\&. With \fB-abc\fP this option will, additionally, construct a graph only on the labels found in the tab file\&. If this option is used in conjunction with \fB-imx\fP the tab domain and the matrix domain are required to be identical\&. .in -2m .ZI 2m "\fB-tf\fP (\fItransform input matrix values\fP)" \& .br Transform the input matrix values according to the syntax described in \fBmcxio(5)\fP\&. .in -2m .ZI 2m "\fB-o\fP fname (\fIoutput file\fP)" \& .br Output file\&. .in -2m .SH AUTHOR Stijn van Dongen\&. .SH SEE ALSO \fBmcxio(5)\fP, \fBmcx(1)\fP, \fBmcxsubs(1)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmresidue.html0000644000402500021140000001616511754271042013074 00000000000000 The clm residue manual

14 May 2012    clm residue 12-135

NAME

clm residue — extend clustering of subgraph to clustering of graph.

clmresidue is not in actual fact a program. This manual page documents the behaviour and options of the clm program when invoked in mode residue. The options -h, --apropos, --version, -set, --nop are accessible in all clm modes. They are described in the clm manual page.

SYNOPSIS

clm residue -icl fname (input clustering) -imx fname (input graph) [-rpm fname (residue projection matrix)] [-o fname (output clustering file)]

DESCRIPTION

The cluster file presumably contains a clustering of a subgraph of the graph G contained by the matrix file, implying that the row domain of that clustering is a subset of the node domain of the graph. clm residue will compute a simple upwards projection of that clustering, resulting in a clustering of G.

OPTIONS

-imx fname (input graph)
 
-icl fname (input clustering)
 
-rpm fname (residue projection matrix)

The name for the file in which the residue projection matrix is stored. It contains for each node and for each cluster in the input clustering the combined weight of the (edges to the) neighbours of that node in that cluster.

The default output file name is out.rpm.

 
-o fname (output clustering file)

The name for the file in which the majority vote projection clustering is stored. Aka the majority vote projection clustering storage file name.

This embodies a very crude approach to distributing the missing nodes in the input clustering onto that same cluster. For each node, the cluster is taken for which the residue projection is the largest (see above). The residue (i.e. the set of missing nodes) is initially viewed as a cluster; the set of nodes for which the projection is largest for the residue itself will form a new cluster, if it is not empty.

By default output is sent to STDOUT.

AUTHOR

Stijn van Dongen.

SEE ALSO

mclfamily for an overview of all the documentation and the utilities in the mcl family.

mcl-12-135/doc/mcxdiameter.10000644000402500021140000001157511754271044012440 00000000000000.\" Copyright (c) 2012 Stijn van Dongen .TH "mcx diameter" 1 "14 May 2012" "mcx diameter 12-135" "USER COMMANDS " .po 2m .de ZI .\" Zoem Indent/Itemize macro I. .br 'in +\\$1 .nr xa 0 .nr xa -\\$1 .nr xb \\$1 .nr xb -\\w'\\$2' \h'|\\n(xau'\\$2\h'\\n(xbu'\\ .. .de ZJ .br .\" Zoem Indent/Itemize macro II. 'in +\\$1 'in +\\$2 .nr xa 0 .nr xa -\\$2 .nr xa -\\w'\\$3' .nr xb \\$2 \h'|\\n(xau'\\$3\h'\\n(xbu'\\ .. .if n .ll -2m .am SH .ie n .in 4m .el .in 8m .. .SH NAME mcx diameter \- compute the diameter of a graph .SH SYNOPSIS \fBmcx diameter\fP [options] mcxdiameter is not in actual fact a program\&. This manual page documents the behaviour and options of the mcx program when invoked in mode \fIdiameter\fP\&. The options \fB-h\fP, \fB--apropos\fP, \fB--version\fP, \fB-set\fP, \fB--nop\fP, \fB-progress\fP\ \&\fI\fP are accessible in all \fBmcx\fP modes\&. They are described in the \fBmcx\fP manual page\&. \fBmcx diameter\fP \fB[-abc\fP (\fIspecify label input\fP)\fB]\fP \fB[-imx\fP (\fIspecify matrix input\fP)\fB]\fP \fB[-o\fP (\fIoutput file name\fP)\fB]\fP \fB[-tab\fP (\fIuse tab file\fP)\fB]\fP \fB[-t\fP (\fIuse threads\fP)\fB]\fP \fB[-J\fP (\fIa total of jobs are used\fP)\fB]\fP \fB[-j\fP (\fIthis job has index \fP)\fB]\fP \fB[--summary\fP (\fIoutput diameter and average shortest path length\fP)\fB]\fP \fB[--list\fP (\fIlist eccentricity for all nodes\fP)\fB]\fP \fB[-h\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--apropos\fP (\fIprint synopsis, exit\fP)\fB]\fP \fB[--version\fP (\fIprint version, exit\fP)\fB]\fP .SH DESCRIPTION \fBmcx diameter\fP computes the diameter of a graph\&. The input graph should be symmetric\&. Results will be unpredictable for directed graphs\&. For label input this is irrelevant as \fBmcx diameter\fP will create a symmetric graph from the input\&. The input graph/matrix, if specified with the \fB-imx\fP option, has to be in mcl matrix/graph format\&. You can use label input instead by using the \fB-abc\fP option\&. Refer to \fBmcxio(5)\fP for a description of these two input formats\&. By default \fBmcx diameter\fP reads from STDIN \fIand expects matrix format\fP\&. To specify label input from STDIN use \fB-abc\fP\ \&\fB-\fP\&. .SH OPTIONS .ZI 2m "\fB-abc\fP (\fIlabel input\fP)" \& .br The file name for input that is in label format\&. .in -2m .ZI 2m "\fB-imx\fP (\fIinput matrix\fP)" \& .br The file name for input that is in mcl native matrix format\&. .in -2m .ZI 2m "\fB-o\fP (\fIoutput file name\fP)" \& .br The name of the file to write output to\&. .in -2m .ZI 2m "\fB-tab\fP (\fIuse tab file\fP)" \& .br This option causes the output to be printed with the labels found in the tab file\&. With \fB-abc\fP this option will, additionally, construct a graph only on the labels found in the tab file\&. If this option is used in conjunction with \fB-imx\fP the tab domain and the matrix domain are required to be identical\&. .in -2m .ZI 2m "\fB-t\fP (\fIuse threads\fP)" \& 'in -2m .ZI 2m "\fB-J\fP (\fIa total of jobs are used\fP)" \& 'in -2m .ZI 2m "\fB-j\fP (\fIthis job has index \fP)" \& 'in -2m 'in +2m \& .br Computing the diameter of a graph is time-intensive\&. If you have multiple CPUs available consider using as many threads\&. Additionally it is possible to spread the computation over multiple jobs/machines\&. Conceptually, each job takes a number of threads from the total thread pool\&. If job control is used (the \fB-J\fP option is used) then the number of jobs should not exceed the number of threads\&. The total number of threads divided by the total number of jobs defines the number of threads that will be used by the current job\&. Additionally, the number of threads specified signifies the total added amount of all threads across all machines and \fImust\fP be the same for all jobs\&. This number is used by each job to infer its own set of tasks\&. The following set of options, if given to as many commands, defines three jobs, each running four threads\&. .di ZV .in 0 .nf \fC -t 12 -G 3 -g 0 -t 12 -G 3 -g 1 -t 12 -G 3 -g 2 .fi \fR .in .di .ne \n(dnu .nf \fC .ZV .fi \fR .in -2m .ZI 2m "\fB--list\fP (\fIlist eccentricity for all nodes\fP)" \& 'in -2m .ZI 2m "\fB--summary\fP (\fIoutput diameter and average eccentricity\fP)" \& 'in -2m 'in +2m \& .br The default mode is \fB--list\fP, which results in output of the eccentricity of all nodes\&. The eccentricity of a node is the distance to any node that is the furthest away from it\&. The diameter of a graph is the maximum of the eccentricity taken over all nodes in a graph\&. In this mode \fBmcx diameter\fP will not output the diameter itself\&. Use \fB--summary\fP to output just the diameter and the average eccentricity\&. .in -2m .SH SEE ALSO \fBmcxio(5)\fP, and \fBmclfamily(7)\fP for an overview of all the documentation and the utilities in the mcl family\&. mcl-12-135/doc/clmvol.ps0000644000402500021140000002436111754271042011707 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:14 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 1 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<636c6d2076>20 48 Q 145.035<6f6c2831292055534552> -.2 F 147.535<434f4d4d414e445320636c6d>2.5 F -.2<766f>2.5 G<6c283129>.2 E/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S<4d45>.219 E F0<636c6d2076> 100 96 Q<6f6c20ad20636f6d707574652076>-.2 E<6f6c6174696c65206e6f64657320 66726f6d206120736574206f6620636c7573746572696e6773>-.2 E<636c6d76>100 120 Q .718<6f6c206973206e6f7420696e2061637475616c2066>-.2 F .718<616374 20612070726f6772616d2e2054686973206d616e75616c207061676520646f63756d656e 7473207468652062656861>-.1 F .718<76696f757220616e64206f7074696f6e73>-.2 F .194<6f662074686520636c6d2070726f6772616d207768656e20696e>100 132 R -.2<766f>-.4 G -.1<6b65>.2 G 2.694<6469>.1 G 2.694<6e6d>-2.694 G<6f6465> -2.694 E/F2 10/Times-Italic@0 SF<766f6c>2.694 E F0 2.694<2e54>C .194 <6865206f7074696f6e73>-2.694 F/F3 10/Times-Bold@0 SF<2d68>2.694 E F0<2c> A F3<2d2d617072>2.694 E<6f706f73>-.18 E F0<2c>A F3<2d2d76>2.694 E <657273696f6e>-.1 E F0<2c>A F3<2d736574>2.694 E F0<2c>A F3<2d2d6e6f70> 2.694 E F0<6172652061636365737369626c6520696e20616c6c>100 144 Q F3 <636c6d>2.5 E F0<6d6f6465732e20546865>2.5 E 2.5<7961>-.15 G <72652064657363726962656420696e20746865>-2.5 E F3<636c6d>2.5 E F0 <6d616e75616c20706167652e>2.5 E F1<53594e4f50534953>20 160.8 Q F3 <636c6d2076>100 172.8 Q<6f6c205b2d6672616374696f6e>-.1 E F0<6e756d2028> 2.5 E F2<6e66>A 2.5<6666>-.18 G<6163746f72>-2.5 E F0<29>A F3 2.5<5d5b>C <2d6f>-2.5 E F0<666e616d652028>2.5 E F2<6f7574707574208c6c65>A F0<29>A F3<5d>A F0<3c636c208c6c653e2b>2.5 E F1<4445534352495054494f4e>20 189.6 Q F3 .546<636c6d2076>100 201.6 R<6f6c>-.1 E F0 .546<636f6d7075746573206120 73636f726520666f722065616368206e6f64652c2077686963682061742061206d696e69 6d756d20697320657175616c20746f206f6e652e>3.046 F .545 <546865206f757470757420697320696e>5.545 F .246<74686520666f726d206f6620 61206d617472697820636f6e7461696e696e6720612073696e676c6520636f6c756d6e2e 205468652073636f726520636f7272656c61746573207769746820776861742069732064 65656d656420746f206265>100 213.6 R -.2<766f>100 225.6 S .518 <6c6174696c652062656861>.2 F .518<76696f75722e2046>-.2 F .517<6f7220616c 6c207061697273206f6620636c7573746572696e67732074686520736574206f6620616c 6c20696e74657273656374696f6e7320697320636f6d70757465642c20616e6420746865 7365>-.15 F .567<61726520636f6e7369646572656420696e207475726e2e>100 237.6 R .568 <416e20696e74657273656374696f6e206973206465656d656420746f2062652076> 5.567 F .568<6f6c6174696c65206966207468652073697a65206f662074686520696e 74657273656374696f6e206973>-.2 F .336<6c657373207468616e2068616c66207468 652073697a65206f662074686520736d616c6c657374206f6620746865207477>100 249.6 R 2.835<6f63>-.1 G .335<6c7573746572732e20496e20746861742063617365 2c20666f722065616368206e6f646520696e2074686520696e746572>-2.835 F<2d>-.2 E .222<73656374696f6e206974732076>100 261.6 R .222<6f6c6174696c69747920 73636f726520697320696e6372656d656e746564206279206f6e65206f>-.2 F -.15 <7665>-.15 G 2.723<7274>.15 G .223 <68652073697a65206f662074686520696e74657273656374696f6e2e>-2.723 F .223 <5468652073697a6520636f6d2d>5.223 F 1.836<70617269736f6e2063616e20626520 6d616465206d6f726520737472696e67656e7420627920696e6372656173696e67207468 65>100 273.6 R F3<2d6672616374696f6e>4.336 E F2<3c6672>2.5 E<61633e>-.15 E F0 1.836<6f7074696f6e2c207768696368206973206279>4.336 F<646566>100 285.6 Q .606<61756c742073657420746f>-.1 F/F4 10/Courier@0 SF<302e35> 3.106 E F0 5.606<2e56>C .606<6f6c6174696c697479206f63637572732069662074 68652073697a65206f662074686520696e74657273656374696f6e206973206c65737320 7468616e>-6.896 F F3<3c667261633e>3.107 E F0 .607<74696d657320746865> 3.107 F .329<73697a65206f662074686520736d616c6c65737420636c75737465722e 20496620746865>100 297.6 R F3<2d6672616374696f6e>2.829 E F0 -.25<7661> 2.829 G .329<6c756520697320696e6372656173656420616c6c207468652077>.25 F .329<617920757020746f20312e302c2074686520696d706c6963612d>-.1 F .66<7469 6f6e206973207468617420616e20696e74657273656374696f6e20697320636f6e736964 657265642076>100 309.6 R .661 <6f6c6174696c6520756e6c657373206f6e65206f6620746865207477>-.2 F 3.161 <6f63>-.1 G .661<6c7573746572657320636f6e736964657265642069732061>-3.161 F<737562736574206f6620746865206f746865722e>100 321.6 Q F1 -.548<4155>20 338.4 S<54484f52>.548 E F0<5374696a6e2076>100 350.4 Q <616e20446f6e67656e2e>-.25 E F1<4f5054494f4e53>20 367.2 Q F3 <2d6672616374696f6e>100 379.2 Q F0<6e756d2028>2.5 E F2<6e66>A 2.5<6666> -.18 G<6163746f72>-2.5 E F0<29>A <536565207468652064697363757373696f6e206174>120 391.2 Q F3 <4445534352495054494f4e>2.5 E F0<2e>A F3<2d6f>100 415.2 Q F0 <666e616d652028>2.5 E F2<6f7574707574208c6c65>A F0<29>A F1 <53454520414c534f>20 432 Q F3<6d636c66616d696c79283729>100 444 Q F0 <666f7220616e206f>2.5 E -.15<7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c2074686520646f63756d656e746174696f6e20616e6420746865 207574696c697469657320696e20746865206d636c2066>-2.5 E<616d696c792e>-.1 E <636c6d2076>20 768 Q<6f6c2031322d313335>-.2 E<3134204d61792032303132> 146.425 E<31>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxi.azm0000644000402500021140000003025011322637753011520 00000000000000\import{mcx.zmm} \begin{pud::man}{ {name}{mcxi} {html_title}{The mcxi manual} {author}{Stijn van Dongen} {section}{1} {synstyle}{long} {defstyle}{long} \man_share } \def{pr#1}{\bf{\1}} \${html}{\"pud::man::maketoc"} \sec{name}{NAME} \NAME{mcx}{a stack language interpreter for interaction with the \mcl libraries.} \sec{synopsis}{SYNOPSIS} \par{ \mcxi (enter interactive mode) } \par{ \mcxi } \sec{description}{DESCRIPTION} \: \pr{mul} can be applied either to two numbers, to matrices, or a \: matrix and a number, \pr{add} can be applied to two numbers, two matrices, \: or two strings. \pr{mul}, \pr{add}, and some other operators yield a real \: when applied to a real and an integer. \par{ \mcxi can be used both from the command line and interactively, and supports a rich set of operations such as transposition, scaling, column scaling, multiplication, Hadamard powers and products, et cetera. It has variables, control primitives, and stack manipulation primitives. The general aim is to support basic number and matrix arithmetic, as well as graph, set, and clustering operations. The language will be kept simple, and should serve only as a means of making the \mcl framework a pleasant one for working with graphs, matrices, clusterings, and sets. The language is typed, and currently has the types \it{integer, real, matrix, string, and block}. Blocks are used both in control statements such as \pr{ifelse} and \pr{while}, and for defining compound statements resembling procedures or functions. Some of \mcxi's primitives are overloaded. The following is a very simple example of implementing and using \mcl in this language. } \verbatim{ 2.0 .i def # define inflation value. /small lm # load matrix in file 'small'. dim id add # add identity matrix. st .x def # make stochastic, bind to x. { xpn .i infl vm } .mcl def # define one mcl iteration. 20 .x .mcl repeat # iterate 20 times imac # interpret matrix as clustering. vm # view matrix (clustering). } \car{ Somewhat misleadingly, '#' is not recognized as a comment symbol by \mcxi, so don't use it (yet). } \par{ \mcxi has quite a lot of primitives, and they are not all explained in here. However, \mcxi has several help facilities. \mcxi's munge modes (command line, interactive, and file) are discussed first, followed by some syntactic and semantic rules. Several groups of related primitives are then discussed. These are the help primitives \pr{help}, \pr{grep}, \pr{ops}, and others, the binding primitives \pr{def}, \pr{free}, and \pr{unlink}, the control primitives \pr{ifelse}, \pr{do}, \pr{repeat}, and \pr{while}, and the stack manipulation primitives \pr{pop}, \pr{exch}, \pr{dup}, \pr{mdup}, \pr{copy}, \pr{roll}, \pr{clear}. And for the record, \mcxi has \pr{lt}, \pr{lq}, \pr{eq}, \pr{gq}, and \pr{gt}. In the grandiloquently named \secref{index} section, you find a list of all current \mcxi primitives. } \par{ First, there is no difference as far as \mcxi is concerned whether you give it a bunch of operators and operands directly from the command line, or whether you do it in interactive mode. Interactive mode is line-based; each time you type a carriage return, \mcxi starts interpreting the line you typed. Newlines can be escaped by preceding them with a backslash; \mcxi will delay interpretation and keep building up your expression. Command line mode is the same as entering interactive mode and entering a single line. For non-batch processing, interactive mode is the safest, because \mcxi will simply refuse to carry out impossible operations, whereas in command line mode it will exit. } \par{ In interactive mode, \mcxi will by default list the stack after each line you type. This is verbosity level 1. There are four verbosity levels, namely 0, 1, 2, and 3 (in increasingly verbose order). Set the level with the \pr{vb} primitive. Verbosity control is still a bit crude, this is one of the areas in which \mcxi will be improved. } \par{ There is another \mcxi munge mode which is entered when reading files with the \pr{lf} (load file) primitive. This mode is not line-based, the whole file is interpreted in one go \- there is little difference with line-based mode. Beware though, it is currently not possible (nor necessary) to escape newlines in files. } \par{ Currently, \mcxi parses lines of text into atoms in an extremely straightforward way: Whitespace is the only separator, and it is always a separator. This has as a consequence that the block delimiters \pr{\{} and \pr{\}} are not allowed to appear next to a non-white character. Another consequence is that strings cannot contain white spaces. Both these conditions may be relaxed in the future though. } \par{ Strings are always entered with a leading slash, and anything with a leading slash is a string, so \v{/this} is a string. Currently, the double quote has no special meaning, but it may acquire meaning in the future, especially as in \v{/"maybe the mcxi future will be brighter"}. } \par{ Variables names are always entered with a leading dot, and anything with a leading dot is a variable name. Variables are implicitly typed by the object to which they are bound. There is no support for arrays (yet). If variables are used, as in \v{.x .y add}, only the names of the variables are popped, and the binding between the names and their values stays intact. } \par{ There are some operators that do in-place modification of the object that they act on, such as \v{infl} (inflation). Currently, these are all operators acting on matrices. When presented with a variable, they do change the object associated with the variable. In the built-in documentation strings (accessible with \pr{help} and \pr{grep}), such in-place modification is denoted with a prime as in \v{ -> }. } \par{ \pr{dup} can be used to duplicate objects. In case of variables, this will be a copy of the variable name. If one occurrence is used to free the associated object by some operator, all other instances of the variable become \it{stale}. \mcxi will notice this and you will see such elements marked as stale handles in the stack listing. \pr{copy} can be used to copy the object associated with a variable. } \par{ \mcxi is/interprets a stack language. In order to add 1 and 2 you need to write \v{1 2 add}. When add is evaluated, it removes the previous two items from the stack and replaces it with their sum, in this case the integer 3. \mcxi's types are denoted as \v{}, \v{}, \v{}, \v{}, \v{}, and so are objects that can be of that type. An object that is of underspecified type (such as taken by overloaded operators) is denoted \v{}. Where a variable name must occur, \v{} is written. In \mcxi parlance a 'variable' is the same as 'handle'. Remember that a variable named \v{x} is written \v{.x}, and that a string "foo" is entered as \v{/foo} in \mcxi. } \sec{operators}{OPERATORS} \begin{itemize}{ {flow}{cascade} {interitem}{1} } \item{\pr{help}} \car{ \pr{help} with no arguments prints a descriptory line for each primitive. Can only be used at bottom of stack. Alias: \pr{h}. } \item{\v{/str} \pr{help}} \car{ \pr{help} with argument \v{/str} prints a descriptive line for the primitive named \v{str}. The string must be identical to the primitive's name, or help will not show anything. Alias: \pr{h}. } \item{\v{/str} \pr{grep}} \car{ Prints each descriptive line in which the string str occurs (literally). So \v{/matrix grep} should produce a lot of matrix related primitives (although it may miss generic primitives such as \pr{add} and \pr{mul}). At bottom of stack, prints all descriptive lines. Alias: \pr{g}. } \item{\pr{ops}} \car{ Lists all primitives and aliases concisely in a paragraph. } \item{\pr{list}} \car{ Lists the contents of the operand stack. } \item{\pr{info}} \car{ Lists the top element of the operand stack. } \item{\v{} \pr{tell}} \car{ Lists the top \v{} elements of the operand stack. The trio of \pr{list}, \pr{info}, and \pr{tell} is perhaps overdoing it slightly, but anyway there it is. } \item{\pr{vars}} \car{ Lists all variables currently bound. } \item{\v{} \v{} \pr{def}} \car{ Bind \v{} to \v{}. Redefinition is allowed. } \item{\v{} \pr{free}} \car{ Break the binding between \v{} and the object it currently binds, and remove object. } \item{\pr{unlink}} \car{ Break the binding between \v{} and the object it currently binds, and push object on the stack. } \item{\v{ } \pr{ifelse}} \car{ If \v{} is nonzero execute \v{}, otherwise execute \v{}. The equate operators \pr{lt}, \pr{lq}, \pr{eq}, \pr{gq}, and \pr{gt} can be used to leave an \v{} on the stack. } \item{\v{} \pr{do}} \car{ Execute \v{} (one time). } \item{\v{ } \pr{repeat}} \car{ Execute \v{} \v{} times. } \item{\v{ } \pr{while}} \car{ This primitive repeatedly executes the \it{condition} \v{}, \it{which must push an integer each time it is executed}. Each time, the pushed integer is popped. If it was non-zero, \v{} is executed, \v{} is executed, and the cycle continues. If it was zero, \pr{while} is done. } \item{\pr{pop}} \car{ Pops one element off of the stack. } \item{\pr{exch}} \car{ Exchanges the top two elements of the stack. } \item{\pr{dup}} \car{ Duplicates the top element and pushes the duplicate onto the stack. In case of a variable, the name is duplicated and not the object it points to. In case of anonymous matrices and strings (and whatever other (composite) objects may emerge), a \it{deep copy} is made that is completely independent of the original object. } \item{\v{} \pr{mdup}} \car{ Duplicates the top \v{} elements. See the \pr{dup} entry above for the semantics of duplication. I wrote \pr{mdup} because I thought some other operator needed it, which turned out to be false. In the meantime, I became very much attached to \pr{mdup}, so mail me if you think you have any useful use for it. } \item{\pr{copy}} \car{ Copies the top element and pushes the copy onto the stack. In case of a variable, copies the object associated with the variable rather than the variable's name (as \pr{dup} would do). } \item{\v{ } \pr{roll}} \car{ Shift \v{} objects cyclically \v{} times to the right if \v{} is positive, to the left otherwise. } \item{\pr{clear}} \car{ Empty the stack. All objects bound to variables are unaffected. } \end{itemize} \sec{index}{INDEX} \par{ This is a list of all \mcxi's primitives, including aliases. Do 'mcxi / help' to see a short descriptive string, where is one of the primitives below (remember, strings need a leading slash). } \par{ \pr{add} \pr{addto} \pr{cdim} \pr{ch} \pr{clear} \pr{copy} \pr{def} \pr{dgt} \pr{dim} \pr{div} \pr{do} \pr{dup} \pr{eq} \pr{exch} \pr{free} \pr{gq} \pr{grep} \pr{gt} \pr{hdm} \pr{hdp} \pr{help} \pr{id} \pr{ifelse} \pr{imac} \pr{infl} \pr{info} \pr{jj} \pr{lf} \pr{list} \pr{lm} \pr{lq} \pr{lt} \pr{max} \pr{mdup} \pr{min} \pr{mod} \pr{mul} \pr{ops} \pr{pop} \pr{pow} \pr{quit} \pr{rdim} \pr{repeat} \pr{roll} \pr{st} \pr{tell} \pr{tp} \pr{tut} \pr{unlink} \pr{vars} \pr{vb} \pr{vm} \pr{while} \pr{wm} \pr{xpn} \pr{bye=quit} \pr{d=def} \pr{f=free} \pr{h=help} \pr{i=info} \pr{l=list} \pr{p=pop} \pr{g=grep} \pr{u=unlink} \pr{x=exch}. } \sec{author}{AUTHOR} \par{ Stijn van Dongen. } \sec{seealso}{SEE ALSO} \par{ \mysib{mclfamily} for an overview of all the documentation } and the utilities in the mcl family. \end{pud::man} mcl-12-135/doc/stamp.year0000644000402500021140000000000511754270105012041 000000000000002012 mcl-12-135/doc/mclfaq.ps0000644000402500021140000041723411754271043011664 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:15 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 16 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E/F1 10.95/Times-Bold@0 SF -.219<4e41>20 84 S <4d45>.219 E F0<6d636c66>100 96 Q<617120ad2066>-.1 E<61717320616e642066> -.1 E<616374732061626f757420746865204d434c20636c757374657220616c676f7269 74686d2e>-.1 E 1.703<4d434c2072656665727320746f207468652067656e65726963 204d434c20616c676f726974686d20616e6420746865204d434c2070726f63657373206f 6e2077686963682074686520616c676f726974686d206973>100 120 R<62617365642e> 100 132 Q/F2 10/Times-Bold@0 SF<6d636c>3.425 E F0 .925<7265666572732074 6f2074686520696d706c656d656e746174696f6e2e20546869732046>3.425 F 2.025 -.55<41512061>-.74 H .925<6e7377657273207175657374696f6e732072656c617465 6420746f20626f74682e20496e20736f6d65>.55 F .75<706c61636573204d434c2069 73207772697474656e207768657265204d434c206f72206d636c2063616e206265207265 61642e205468697320697320746865206361736520666f722065>100 144 R .75 <78616d706c6520696e>-.15 F/F3 10/Times-Italic@0 SF<73656374696f6e>3.25 E <332c2057686174206b696e64206f66206772>100 156 Q<61706873>-.15 E F0 5 <2e49>C 2.5<7473>-5 G<686f756c6420696e2067656e6572616c206265206f62>-2.5 E<76696f75732066726f6d2074686520636f6e7465>-.15 E<78742e>-.15 E .321 <546869732046>100 180 R 1.421 -.55<41512064>-.74 H .321 <6f6573206e6f74206265>.55 F .321<67696e20746f20617474656d707420746f2065> -.15 F .321<78706c61696e20746865206d6f7469>-.15 F -.25<7661>-.25 G .322 <74696f6e20616e64206d617468656d617469637320626568696e6420746865204d434c> .25 F .223 <616c676f726974686d202d2074686520696e7465726e616c7320617265206e6f742065> 100 192 R .223<78706c61696e65642e20412062726f616420766965>-.15 F 2.723 <7769>-.25 G 2.723<7367>-2.723 G -2.15 -.25<69762065>-2.723 H 2.723 <6e69>.25 G 2.723<6e66>-2.723 G<617120312e322c>-2.823 E .223 <616e642073656520616c736f2066>2.723 F<617120312e35>-.1 E <616e642073656374696f6e>100 204 Q F2<5245464552454e434553>2.5 E F0<2e>A .833<536f6d65206164646974696f6e616c2073656374696f6e73207072656365656420 7468652061637475616c2066>100 228 R .834<617120656e74726965732e>-.1 F .834<5468652054>5.834 F .834 <4f432073656374696f6e20636f6e7461696e732061206c697374696e67206f66>-.18 F <616c6c207175657374696f6e732e>100 240 Q F1<5245534f5552434553>20 256.8 Q F0 .14<546865206d616e75616c20706167657320666f7220616c6c2074686520757469 6c6974696573207468617420636f6d652077697468>100 268.8 R F2<6d636c>2.64 E F0 2.64<3b72>C .14<6566657220746f>-2.64 F F2<6d636c66616d696c79283729> 2.64 E F0 .14<666f7220616e206f>2.64 F -.15<7665>-.15 G<72766965>.15 E <772e>-.25 E 1.561<53656520746865>100 292.8 R F2<5245464552454e434553> 4.061 E F0 1.562<53656374696f6e20666f72207075626c69636174696f6e73206465 7461696c696e6720746865206d617468656d617469637320626568696e6420746865204d 434c>4.062 F<616c676f726974686d2e>100 304.8 Q F1 -.197<544f>20 321.6 S <43>.197 E F2<31>20 333.6 Q F0 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A/F4 11 /Times-Bold@0 SF<47656e6572616c207175657374696f6e73>10 E F2<312e31>30 345.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2046>B<6f722077686f 6d206973206d636c20616e6420666f722077686f6d20697320746869732046>-.15 E -.55<4151>-.74 G<3f>.55 E F2<312e32>30 357.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2057686174>B 1.13<69732074686520 72656c6174696f6e73686970206265747765656e20746865204d434c2070726f63657373 2c20746865204d434c20616c676f726974686d2c20616e642074686520276d636c272069 6d706c652d>3.63 F<6d656e746174696f6e3f>100 369.6 Q F2<312e33>30 381.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2057686174>B <646f20746865206c657474657273204d434c207374616e6420666f723f>2.5 E F2 <312e34>30 393.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 3.886<7763>-.25 G 1.387<6f756c6420796f7520626520736f20666565626c656d696e 64656420746f20757365204d434c206173206162627265>-3.886 F 1.387 <76696174696f6e3f205768>-.25 F 3.887<7969>-.05 G 3.887<7369>-3.887 G 3.887<746c>-3.887 G 1.387<6162656c656420274d61726b>-3.887 F -.15<6f76> -.1 G<636c75737465722720616e>100 405.6 Q<7977>-.15 E<61793f>-.1 E F2 <312e35>30 417.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e205768657265>B<63616e2049206c6561 726e2061626f75742074686520696e6e61726473206f6620746865204d434c20616c676f 726974686d2f70726f636573733f>2.5 E F2<312e36>30 429.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2046>B <6f7220776869636820706c6174666f726d73206973206d636c2061>-.15 E -.25 <7661>-.2 G<696c61626c653f>.25 E F2<312e37>30 441.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7764>-.25 G <6f6573206d636c27>-2.5 E 2.5<7376>-.55 G <657273696f6e696e6720736368656d652077>-2.65 E<6f726b3f>-.1 E F2<32>20 465.6 Q F0<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A F4 <496e7075742066>10 E<6f726d6174>-.275 E F2<322e31>30 477.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7763>-.25 G<616e2049 20676574206d79206461746120696e746f20746865204d434c206d617472697820666f72 6d61743f>-2.5 E F2<33>20 501.6 Q F0 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A F4 <57686174206b696e64206f6620677261706873>10 E F2<332e31>30 513.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2057686174>B<6973206c65>2.5 E -.05<6761>-.15 G 2.5<6c69>.05 G<6e70757420666f72204d434c3f>-2.5 E F2 <332e32>30 525.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2057686174>B <69732073656e7369626c6520696e70757420666f72204d434c3f>2.5 E F2<332e33>30 537.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20446f6573>B <4d434c2077>2.5 E<6f726b20666f72207765696768746564206772617068733f>-.1 E F2<332e34>30 549.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20446f6573>B<4d434c2077>2.5 E <6f726b20666f72206469726563746564206772617068733f>-.1 E F2<332e35>30 561.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2043616e>B <4d434c2077>2.5 E <6f726b20666f72206c61747469636573202f206469726563746564206163>-.1 E <79636c696320677261706873202f2044>-.15 E -.4<4147>-.4 G<733f>.4 E F2 <332e36>30 573.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20446f6573>B<4d434c2077>2.5 E <6f726b20666f722074726565206772617068733f>-.1 E F2<332e37>30 585.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2046>B <6f722077686174206b696e64206f662067726170687320646f6573204d434c2077>-.15 E <6f726b2077656c6c20616e6420666f7220776869636820646f6573206974206e6f743f> -.1 E F2<332e38>30 597.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2057686174>B<6d616b>3.152 E .652 <6573206120676f6f6420696e7075742067726170683f>-.1 F<486f>5.651 E 3.151 <7764>-.25 G 3.151<6f4963>-3.151 G .651 <6f6e737472756374207468652073696d696c617269746965733f>-3.151 F<486f> 5.651 E 3.151<7774>-.25 G 3.151<6f6d>-3.151 G<616b>-3.151 E 3.151<6574> -.1 G .651<68656d207361742d>-3.151 F<697366792074686973204d61726b>100 609.6 Q .3 -.15<6f762063>-.1 H<6f6e646974696f6e3f>.15 E F2<332e39>30 621.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e204d79>B<696e707574 2067726170682069732064697265637465642e2049732074686174206261643f>2.5 E F2<332e3130>30 633.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e205768>B 2.5<7964>-.05 G<6f6573206d636c206c696b>-2.5 E 2.5<6575>-.1 G <6e64697265637465642067726170687320616e64207768>-2.5 E 2.5<7964>-.05 G <6f6573206974206469736c696b>-2.5 E 2.5<6575>-.1 G <6e692d64697265637465642067726170687320736f206d7563683f>-2.5 E F2 <332e3131>30 645.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7764>-.25 G 2.5<6f4963>-2.5 G<6865636b2074686174206d792067726170682f 6d61747269782069732073796d6d65747269632f756e64697265637465643f>-2.5 E F2 <34>20 669.6 Q F0<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A F4<537065656420616e6420636f6d706c6578697479>10 E F2<342e31>30 681.6 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7766>-.25 G <617374206973206d636c2f4d434c3f>-2.6 E F2<342e32>30 693.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2057686174>B <73746174697374696373206172652061>2.5 E -.25<7661>-.2 G<696c61626c653f> .25 E F2<342e33>30 705.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20446f6573>B <7468697320696d706c656d656e746174696f6e206e65656420746f20736f72742076> 2.5 E<6563746f72733f>-.15 E F2<342e34>30 717.6 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e206d636c>B<646f6573206e6f7420636f 6d707574652074686520696465616c204d434c2070726f6365737321>2.5 E <4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134> .55 F<4d61792032303132>2.5 E<31>202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E/F1 10/Times-Bold@0 SF<35>20 84 Q F0 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A/F2 11 /Times-Bold@0 SF <436f6d70617269736f6e2077697468206f7468657220616c676f726974686d73>10 E F1<352e31>30 96 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e204927>B .3 -.15<76652072>-.5 H<65616420736f6d65706c61636520746861742058595a2069 73206d75636820626574746572207468616e204d434c>.15 E F1<352e32>30 108 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e204927>B .3 -.15<76652072>-.5 H<65616420736f6d65706c6163652074686174204d434c20697320736c6f>.15 E 2.5 <775b>-.25 G<636f6d706172656420776974682058595a5d>-2.5 E F1<36>20 132 Q F0<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A F2 <5265736f7572>10 E<63652074756e696e67202f206163637572616379>-.198 E F1 <362e31>30 144 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2057686174>B <646f20796f75206d65616e206279207265736f757263652074756e696e673f>2.5 E F1 <362e32>30 156 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7764>-.25 G 2.5<6f4963>-2.5 G<6f6d7075746520746865206d6178696d756d20 616d6f756e74206f662052414d206e6565646564206279206d636c3f>-2.5 E F1 <362e33>30 168 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 3.826<776d>-.25 G 1.326 <75636820646f657320746865206d636c20636c7573746572696e6720646966>-3.826 F 1.327<6665722066726f6d2074686520636c7573746572696e6720726573756c74696e67 2066726f6d206120706572666563746c7920636f6d2d>-.25 F <7075746564204d434c2070726f636573733f>100 180 Q F1<362e34>30 192 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7764>-.25 G 2.5 <6f496b>-2.5 G<6e6f>-2.5 E 2.5<7774>-.25 G <686174204920616d207573696e6720656e6f756768207265736f75726365733f>-2.5 E F1<362e35>30 204 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e205768657265>B<697320746865206d61 7468656d61746963616c20616e616c79736973206f662074686973206d636c207072756e 696e6720737472617465>2.5 E<67793f>-.15 E F1<362e36>30 216 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2057686174>B<7175616c6974617469> 2.5 E .3 -.15<76652073>-.25 H <746174656d656e74732063616e206265206d6164652061626f757420746865206566> .15 E<66656374206f66207072756e696e673f>-.25 E F1<362e37>30 228 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e204174>B<646966>3.783 E 1.283 <666572656e742068696768207265736f75726365206c65>-.25 F -.15<7665>-.25 G 1.283<6c73206d7920636c7573746572696e677320617265206e6f74206964656e746963 616c2e>.15 F<486f>6.283 E 3.782<7763>-.25 G 1.282 <616e204920747275737420746865206f7574707574>-3.782 F <636c7573746572696e673f>100 240 Q F1<37>20 264 Q F0 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A F2 -1.012<5475> 10 G<6e696e6720636c7573746572206772616e756c6172697479>1.012 E F1<372e31> 30 276 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7764> -.25 G 2.5<6f4974>-2.5 G <756e6520636c7573746572206772616e756c61726974793f>-2.5 E F1<372e32>30 288 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20546865>B<6566>2.5 E <66656374206f6620696e8d6174696f6e206f6e20636c7573746572206772616e756c61 726974792e>-.25 E F1<372e33>30 300 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20546865>B<6566>2.5 E <66656374206f66206e6f6465206465>-.25 E <6772656573206f6e20636c7573746572206772616e756c61726974792e>-.15 E F1 <372e34>30 312 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20546865>B <6566>2.5 E<66656374206f6620656467652077656967687420646966>-.25 E<666572 656e74696174696f6e206f6e20636c7573746572206772616e756c61726974792e>-.25 E F1<38>20 336 Q F0 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A F2 <496d706c656d656e74696e6720746865204d434c20616c676f726974686d>10 E F1 <382e31>30 348 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7765>-.25 G<61737920697320697420746f20696d706c656d656e7420746865204d 434c20616c676f726974686d3f>-2.5 E F1<39>20 372 Q F0 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A F2 <436c7573746572206f>10 E -.11<7665>-.11 G <726c6170202f204d434c2069746572616e6420636c757374657220696e746572>.11 E <7072>-.11 E<65746174696f6e>-.198 E F1<392e31>30 384 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20496e74726f64756374696f6e>B F1 <392e32>30 396 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2043616e>B <74686520636c7573746572696e67732072657475726e6564206279206d636c20636f6e 7461696e206f>2.5 E -.15<7665>-.15 G<726c61703f>.15 E F1<392e33>30 408 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7764>-.25 G 2.5<6f496f>-2.5 G<627461696e2074686520636c7573746572696e6773206173736f63 69617465642077697468204d434c2069746572616e64733f>-2.5 E F1<3130>20 432 Q F0<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e>A F2 <4d697363656c6c616e656f7573>10 E F1<31302e31>30 444 Q F0 7.5 <2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e20486f>B 2.5<7764>-.25 G 2.5<6f498c> -2.5 G<6e642074686520646566>-2.5 E <61756c742073657474696e6773206f66206d636c3f>-.1 E F1<31302e32>30 456 Q F0 7.5<2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e205768617427>B 2.5<736e>-.55 G -.15<6578>-2.5 G<743f>.15 E/F3 10.95/Times-Bold@0 SF -1.259 -.986 <46412051>20 472.8 T/F4 12/Times-Bold@0 SF <47656e6572616c207175657374696f6e73>247.83 484.8 Q F1<312e31>30 508.8 Q F2 -.275<466f>57.5 G 2.75<7277>.275 G<686f6d206973206d636c20616e642066> -2.75 E<6f722077686f6d20697320746869732046>-.275 E -.495<4151>-.99 G<3f> .495 E F0 -.15<466f>100 532.8 S 2.574<7265>.15 G -.15<7665>-2.824 G .074 <7279626f6479207769746820616e20617070657469746520666f722067726170682063 6c7573746572696e672e>.15 F<5265>5.074 E -.05<6761>-.15 G .074 <7264696e67207468652046>.05 F -.55<4151>-.74 G 2.574<2c4968>.55 G -2.25 -.2<61762065>-2.574 H -.1<6b65>2.774 G .074<70742074686520616d6f756e74> .1 F .616<6f66206d617468656d6174696373206173206c6f>100 544.8 R 3.116 <7761>-.25 G 3.116<7370>-3.116 G .616<6f737369626c652c2061732066>-3.116 F .616 <6172206173206d617472697820616e616c7973697320697320636f6e6365726e65642e> -.1 F<496e65>5.616 E<76697461626c79>-.25 E 3.116<2c73>-.65 G .616 <6f6d6520746572>-3.116 F<2d>-.2 E 1.241<6d696e6f6c6f677920706f7073207570 20616e6420736f6d65207265666572656e63657320617265206d61646520746f20746865 20696e6e61726473206f6620746865204d434c20616c676f726974686d2c20657370652d> 100 556.8 R .19<6369616c6c7920696e207468652073656374696f6e206f6e20726573 6f757263657320616e642061636375726163>100 568.8 R .19 <792e204772617068207465726d696e6f6c6f6779206973207573656420736f6d65>-.15 F .19<77686174206d6f726520636172652d>-.25 F 2.023<6c6573736c792074686f75 67682e2054686520667574757265206d69676874206272696e672064658c6e6974696f6e 20656e74726965732c207269676874206e6f>100 580.8 R 4.524<7779>-.25 G 2.024 <6f75206861>-4.524 F 2.324 -.15<76652074>-.2 H 4.524<6f64>.15 G 4.524 <6f77>-4.524 G<6974686f75742e>-4.524 E .669<4d617468656d61746963616c6c79 20696e636c696e65642070656f706c65206d617920626520696e74657265737465642069 6e2074686520706f696e7465727320666f756e6420696e20746865>100 592.8 R F1 <5245464552454e434553>3.169 E F0<73656374696f6e2e>100 604.8 Q<4769>100 628.8 Q -.15<7665>-.25 G 4.778<6e74>.15 G 2.278<686973206d656e74696f6e20 6f66206d617468656d61746963732c206c6574206d6520706f696e74206f757420746869 73206f6e652074696d65206f6e6c792074686174207573696e67>-4.778 F F1<6d636c> 4.779 E F0<6973>4.779 E -.15<6578>100 640.8 S .054 <7472656d656c79207374726169676874666f7277>.15 F .054<61726420616e>-.1 F <7977>-.15 E .054<61792e2059>-.1 F .053<6f75206e656564206f6e6c79206d636c 20616e6420616e20696e7075742067726170682028726566657220746f20746865>-1.1 F F1 .053<6d636c206d616e2d>2.553 F<75616c2070616765>100 652.8 Q F0 <292c20616e64206d616e>A 2.5<7970>-.15 G<656f706c6520747261696e656420696e 20736f6d657468696e6720656c7365207468616e206d617468656d617469637320617265 207573696e67206d636c2068617070696c792e>-2.5 E F1<312e32>30 676.8 Q F2 1.048<57686174206973207468652072>57.5 F 1.048 <656c6174696f6e73686970206265747765656e20746865204d434c207072>-.198 F 1.049 <6f636573732c20746865204d434c20616c676f726974686d2c20616e6420746865> -.198 F<276d636c2720696d706c656d656e746174696f6e3f>100 688.8 Q F1 <6d636c>100 712.8 Q F0 .849<6973207768617420796f752075736520666f7220636c 7573746572696e672e20497420696d706c656d656e747320746865204d434c20616c676f 726974686d2c207768696368206973206120636c757374657220616c676f2d>3.35 F .102<726974686d20666f72206772617068732e20546865204d434c20616c676f726974 686d206973206261736963616c6c792061207368656c6c20696e20776869636820746865 204d434c2070726f6365737320697320636f6d7075746564>100 724.8 R<4d434c2046> 20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134>.55 F <4d61792032303132>2.5 E<32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E<616e6420696e7465727072657465642e20492077696c6c 206465736372696265207468656d20696e20746865206e61747572616c2c207265>100 84 Q -.15<7665>-.25 G<7273652c206f726465722e>.15 E 2.048<546865204d434c 2070726f636573732067656e65726174657320612073657175656e6365206f662073746f 63686173746963206d61747269636573206769>100 108 R -.15<7665>-.25 G 4.548 <6e73>.15 G 2.048<6f6d6520696e697469616c2073746f63686173746963>-4.548 F .687<6d61747269782e2054686520656c656d656e747320776974682065>100 120 R -.15<7665>-.25 G 3.187<6e69>.15 G<6e6465>-3.187 E 3.187<7861>-.15 G .687 <7265206f627461696e6564206279>-3.187 F/F1 10/Times-Italic@0 SF -.2<6578> 3.187 G<70616e64696e67>.2 E F0 .687<74686520707265>3.187 F .688 <76696f757320656c656d656e742c20616e6420746865>-.25 F .036 <656c656d656e74732077697468206f646420696e6465>100 132 R 2.536<7861>-.15 G .036<7265206f627461696e6564206279>-2.536 F F1<696e8d6174696e67>2.536 E F0 .036<74686520707265>2.536 F .036<76696f757320656c656d656e74206769> -.25 F -.15<7665>-.25 G 2.535<6e73>.15 G .035 <6f6d6520696e8d6174696f6e20636f6e2d>-2.535 F 1.864 <7374616e742e20457870616e73696f6e206973206e6f7468696e672062>100 144 R 1.864<7574206e6f726d616c206d6174726978207371756172696e672c20616e6420696e 8d6174696f6e206973206120706172746963756c61722077>-.2 F 1.865<6179206f66> -.1 F<72657363616c696e672074686520656e7472696573206f6620612073746f636861 73746963206d6174726978207375636820746861742069742072656d61696e732073746f 636861737469632e>100 156 Q .883<5468652073657175656e6365206f66204d434c20 656c656d656e7473202866726f6d20746865204d434c2070726f63657373292069732069 6e207072696e6369706c6520776974686f757420656e642c2062>100 180 R .883 <75742077686174>-.2 F .091 <68617070656e7320697320746861742074686520656c656d656e747320636f6e>100 192 R -.15<7665>-.4 G -.18<7267>.15 G 2.592<6574>.18 G 2.592<6f73>-2.592 G .092<6f6d652073706563698c63206b696e64206f66206d61747269782c2063616c6c 656420746865>-2.592 F F1<6c696d6974>2.592 E F0 .092 <6f66207468652070726f2d>2.592 F .33<636573732e20546865206865757269737469 6320756e6465726c79696e67204d434c2070726564696374732074686174207468652069 6e746572616374696f6e206f662065>100 204 R .33 <7870616e73696f6e207769746820696e8d6174696f6e2077696c6c>-.15 F .493 <6c65616420746f2061206c696d69742065>100 216 R .493<786869626974696e6720 636c75737465722073747275637475726520696e20746865206772617068206173736f63 696174656420776974682074686520696e697469616c206d61747269782e205468697320 6973>-.15 F 1.655<696e646565642074686520636173652c20616e64207365>100 228 R -.15<7665>-.25 G 1.655<72616c206d617468656d61746963616c20726573756c74 7320746965204d434c2069746572616e647320616e64206c696d69747320616e64207468 65204d434c>.15 F<696e746572707265746174696f6e20746f6765746865722028>100 240 Q/F2 10/Times-Bold@0 SF<5245464552454e434553>A F0<292e>A .206<546865 204d434c20616c676f726974686d2069732073696d706c792061207368656c6c2061726f 756e6420746865204d434c2070726f636573732e204974207472616e73666f726d732061 6e20696e70757420677261706820696e746f>100 264 R .461<616e20696e697469616c 206d6174726978207375697461626c6520666f72207374617274696e6720746865207072 6f636573732e204974207365747320696e8d6174696f6e20706172616d65746572732061 6e642073746f707320746865204d434c>100 276 R .673<70726f63657373206f6e6365 2061206c696d697420697320726561636865642c20692e652e20636f6e>100 288 R -.15<7665>-.4 G -.18<7267>.15 G .673<656e63652069732064657465637465642e> .18 F .673 <54686520726573756c74206973207468656e20696e7465727072657465642061732061> 5.673 F<636c7573746572696e672e>100 300 Q<546865>100 324 Q F2<6d636c> 2.667 E F0 .167<696d706c656d656e746174696f6e20737570706c6965732074686520 66756e6374696f6e616c697479206f6620746865204d434c20616c676f726974686d2c20 7769746820736f6d652065>2.667 F .166<787472612066>-.15 F<6163696c2d>-.1 E 1.179<697469657320666f72206d616e6970756c6174696f6e206f662074686520696e70 75742067726170682c20696e74657270726574696e672074686520726573756c742c206d 616e6970756c6174696e67207265736f7572636573207768696c65>100 336 R<636f6d 707574696e67207468652070726f636573732c20616e64206d6f6e69746f72696e672074 6865207374617465206f66207468657365206d616e6970756c6174696f6e732e>100 348 Q F2<312e33>30 372 Q/F3 11/Times-Bold@0 SF <5768617420646f20746865206c657474657273204d434c207374616e642066>57.5 E <6f723f>-.275 E F0 -.15<466f>100 396 S<72>.15 E F1<4d61726b>2.729 E .429 -.1<6f762043>-.1 H<6c7573746572>.1 E F0 2.728<2e54>C .228 <6865204d434c20616c676f726974686d2069732061>-2.728 F F2<636c7573746572> 2.728 E F0 .228<616c676f726974686d2074686174206973206261736963616c6c7920 61207368656c6c20696e207768696368>2.728 F 1.427 <616e20616c676562726169632070726f6365737320697320636f6d70757465642e>100 408 R 1.427<546869732070726f636573732069746572617469>6.427 F -.15<7665> -.25 G 1.428<6c792067656e6572617465732073746f63686173746963206d61747269 6365732c20616c736f>.15 F<6b6e6f>100 420 Q<776e206173>-.25 E F2<4d61726b> 2.5 E -.1<6f76>-.15 G F0 <6d617472696365732c206e616d6564206166746572207468652066>2.6 E<616d6f7573 205275737369616e206d617468656d6174696369616e20416e64726569204d61726b>-.1 E -.15<6f76>-.1 G<2e>.15 E F2<312e34>30 444 Q F3<486f>57.5 E 3.211<7763> -.11 G .461<6f756c642079>-3.211 F .46<6f7520626520736f20666565626c656d69 6e64656420746f20757365204d434c206173206162>-.275 F<6272>-.11 E -.165 <6576>-.198 G .46<696174696f6e3f205768>.165 F 3.21<7969>-.165 G 3.21 <7369>-3.21 G 3.21<746c>-3.21 G<6162656c6564>-3.21 E<274d61726b>100 456 Q .22 -.11<6f762063>-.165 H<6c75737465722720616e797761793f>.11 E F0 1.954<536967682e204974206973206120776964656c79206b6e6f>100 480 R 1.955 <776e2066>-.25 F 1.955 <6163742074686174206120544c41206f722054687265652d4c6574746572>-.1 F <2d4163726f6e>-.2 E 1.955<796d206973>-.15 F F1 1.955 <7468652063616e6f6e6963616c2073656c662d>4.455 F .484 <64657363726962696e672061626272>100 492 R -.15<6576>-.37 G .483<69617469 6f6e20666f7220746865206e616d65206f66206120737065636965732077697468207768 6963>.15 F 2.983<6863>-.15 G .483<6f6d707574696e67207465726d696e6f6c6f> -2.983 F .483<677920697320696e666573746564>-.1 F F0 .18<2871756f74656420 66726f6d207468652046726565204f6e6c696e652044696374696f6e617279206f662043 6f6d707574696e67292e204261636b207768656e20492077>100 504 R .18 <6173207468696e6b696e67206f662061206e69636520746167>-.1 F .6 <666f722074686973206375746520616c676f726974686d2c20492077>100 516 R .6 <617320746f74616c6c7920756e61>-.1 F -.1<7761>-.15 G .599 <7265206f6620746869732e2049206e61747572616c6c79206469736d6973736564>.1 F F1<4d43>3.099 E F0 .599<28616e642077>3.099 F .599<6f756c64207374696c6c> -.1 F .323<646f207468617420746f646179292e205468656e>100 528 R F1<4d434c> 2.823 E F0 .323 <6f6363757272656420746f206d652c20616e6420776974686f7574206769>2.823 F .323<76696e67206974206d7563682074686f7567687420492073746172746564207573 696e672069742e>-.25 F 3.614<4147>100 540 S 1.114 <6f6f676c652073656172636820286f722077>-3.614 F 1.114 <61732049207374696c6c207573696e6720416c74612d56>-.1 F 1.114 <69737461206261636b207468656e3f29>-.6 F 1.114<6d69676874206861>6.114 F 1.413 -.15<7665206b>-.2 H 1.113<657074206d652066726f6d20676f696e67>.05 F <6173747261792e>100 552 Q<496e646565642c>100 576 Q F1<4d434c>2.737 E F0 .237<6973207573656420617320612074616720666f72>2.737 F F1 .237 <4d6163696e746f736820436f6d6d6f6e204c697370>2.737 F F0<2c>A F1 .238 <4d697373696f6e20437269746963616c204c696e7578>2.738 F F0<2c>A F1 .238 <4d6f6e7465204361726c6f>2.738 F<4c6f63616c697a6174696f6e>100 588 Q F0 <2c>A F1 1.549<4d554420436c69656e7420666f72204c696e7578>4.05 F F0<2c>A F1<4d6f>4.049 E 1.549 <76656d656e7420666f722043616e616469616e204c69746572>-.1 F<616379>-.15 E F0 4.049<2c61>C 1.549<6e6420612067>-4.049 F 1.549 <617a696c6c696f6e206f74686572>-.05 F .849<7468696e677320ad20726566657220 746f20746865208c6c65206d636c6d636c2e7478742e20436f6e667573696e672e204974 207365656d732074686174207468652074687265652063686172616374657273>100 600 R/F4 10/Courier@0 SF<4d434c>3.35 E F0<706f7373657373>3.35 E <6f7468657277>100 612 Q .089<6f726c646c79206d61676963616c20706f>-.1 F .089<77657273206d616b696e67207468656d20616e2065>-.25 F -.15<7665>-.25 G 2.589<7273>.15 G 2.589<6f73>-2.589 G .088<7472616e676520616e64207374726f 6e6720617474726163746f7220696e20746865207370616365206f66>-2.589 F .631< 544c41732e2049742070726f6261626c792068656c7073207468617420456d2d5365652d 456c6c2028456d2d5361792d456c6c20696e204475746368292068617320736f6d652072 68>100 624 R .632<7974686d20746f2069742061732077656c6c2e>-.05 F<416e>100 636 Q<7977>-.15 E<6179204d434c20737475636b2c20616e6420697427>-.1 E 2.5 <7368>-.55 G<65726520746f20737461792e>-2.5 E 1.56 <4f6e2061206d6f72652067656e6572616c206c65>100 660 R -.15<7665>-.25 G 1.56<6c2c20746865206c6162656c>.15 F F1<4d61726b>4.06 E 1.76 -.1 <6f762043>-.1 H<6c7573746572>.1 E F0 1.56<6973206e6f7420616e20656e746972 656c7920666f7274756e6174652063686f696365206569746865722e>4.06 F .09<416c 74686f756768207068726173656420696e20746865206c616e6775616765206f66207374 6f63686173746963206d617472696365732c204d434c207468656f727920626561727320 76>100 672 R .09<657279206c6974746c652072656c6174696f6e20746f>-.15 F <4d61726b>100 684 Q .761 -.15<6f762074>-.1 H<68656f7279>.15 E 2.961 <2c61>-.65 G .461<6e64206973206d75636820636c6f73657220746f206d6174726978 20616e616c797369732028696e636c7564696e672048696c6265727427>-2.961 F 2.96 <7364>-.55 G .46<697374616e63652920616e6420746865207468652d>-2.96 F .579 <6f7279206f662064796e616d6963616c2073797374656d732e204e6f20726573756c74 73206861>100 696 R .879 -.15<76652062>-.2 H .579<65656e2064657269>.15 F -.15<7665>-.25 G 3.079<6469>.15 G 3.079<6e74>-3.079 G .58 <6865206c6174746572206672616d65>-3.079 F -.1<776f>-.25 G .58<726b2c2062> .1 F .58<7574206d616e>-.2 F 3.08<7963>-.15 G<6f6e2d>-3.08 E<6a6563747572 657320617265206e61747572616c6c7920706f73656420696e20746865206c616e677561 6765206f662064796e616d6963616c2073797374656d732e>100 708 Q<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134>.55 F <4d61792032303132>2.5 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E/F1 10/Times-Bold@0 SF<312e35>30 84 Q/F2 11 /Times-Bold@0 SF<57686572>57.5 E 2.75<6563>-.198 G<616e2049206c656172> -2.75 E 2.75<6e61>-.165 G<626f75742074686520696e6e61726473206f6620746865 204d434c20616c676f726974686d2f7072>-2.75 E<6f636573733f>-.198 E F0 <43757272656e746c79>100 108 Q 2.923<2c74>-.65 G .423 <6865206d6f73742062617369632065>-2.923 F .423<78706c616e6174696f6e206f66 20746865204d434c20616c676f726974686d20697320666f756e6420696e207468652074 6563686e6963616c207265706f7274205b325d2e>-.15 F 1.64 <497420636f6e7461696e732073656374696f6e73206f6e207365>100 120 R -.15 <7665>-.25 G 1.641<72616c206f74686572202872656c6174656429207375626a6563 74732074686f7567682c20616e6420697420617373756d657320736f6d652077>.15 F <6f726b696e67>-.1 E<6b6e6f>100 132 Q<776c65646765206f6e206772617068732c 206d61747269782061726974686d657469632c20616e642073746f63686173746963206d 617472696365732e>-.25 E F1<312e36>30 156 Q F2 -.275<466f>57.5 G 2.75 <7277>.275 G<6869636820706c617466>-2.75 E<6f726d73206973206d636c2061> -.275 E -.11<7661>-.275 G<696c61626c653f>.11 E F0 .379<49742073686f756c 6420636f6d70696c6520616e642072756e206f6e207669727475616c6c7920616e>100 180 R 2.879<798d>-.15 G -.2<61766f>-2.879 G .379<7572206f6620554e495820 28696e636c7564696e67204c696e757820616e6420746865204253442076>.2 F <6172692d>-.25 E 1.679<616e7473206f6620636f75727365292e2046>100 192 R <6f6c6c6f>-.15 E 1.679 <77696e672074686520696e737472756374696f6e7320696e2074686520494e5354>-.25 F 1.68 <414c4c208c6c6520736869707065642077697468206d636c2073686f756c64206265> -.93 F<7374726169676874666f7277>100 204 Q<61726420616e6420737566>-.1 E <8c6369656e742e20436f75727465737920746f204a6f6f73742076>-.25 E <616e204261616c2077686f20636f6d706c6574656c79206175746f666f6f6c6564>-.25 E F1<6d636c>2.5 E F0<2e>A .594<4275696c64696e67204d434c206f6e2057>100 228 R .594<696e74656c202857>-.4 F<696e646f>-.4 E .593<7773206f6e20496e74 656c2063686970292073686f756c64206265207374726169676874666f7277>-.25 F .593<61726420696620796f7520757365207468652066756c6c>-.1 F .691 <7375697465206f662063>100 240 R .691 <796777696e20746f6f6c732e20496e7374616c6c2063>-.15 F .691 <796777696e20696620796f7520646f206e6f74206861>-.15 F .991 -.15<76652069> -.2 H 3.191<7479>.15 G .691<65742e20496e207468652063>-3.191 F .692 <796777696e207368656c6c2c20756e7061636b206d636c>-.15 F 1.273 <616e642073696d706c792069737375652074686520636f6d6d616e6473>100 252 R/F3 10/Times-Italic@0 SF<2e2f636f6e8c677572>3.772 E 1.472 -.1<652c206d>-.37 H<616b>.1 E 1.472 -.1<652c206d>-.1 H<616b>.1 E 3.772<6569>-.1 G <6e7374616c6c>-3.772 E F0 3.772<2c69>C 1.272<2e652e20666f6c6c6f>-3.772 F 3.772<7774>-.25 G 1.272<686520696e737472756374696f6e7320696e>-3.772 F <494e5354>100 264 Q<414c4c2e>-.93 E<54686973204d434c20696d706c656d656e74 6174696f6e2073686f756c6420616c736f2062>100 288 Q <75696c64207375636365737366756c6c79206f6e204d6163204f5320582e>-.2 E F1 <312e37>30 312 Q F2<486f>57.5 E 2.75<7764>-.11 G<6f6573206d636c27>-2.75 E 2.75<7376>-.407 G<657273696f6e696e6720736368656d652077>-2.86 E <6f726b3f>-.11 E F0 .621<5468652063757272656e742073657475702c2077686963 68204920686f706520746f20636f6e74696e75652c20697320746869732e20416c6c2072 656c656173657320617265206964656e74698c656420627920612064617465207374616d 702e>100 336 R -.15<466f>100 348 S 2.895<7265>.15 G .394<78616d706c6520 30322d3039352064656e6f7465732064617920393520696e207468652079656172203230 30322e20546869732064617465207374616d702061677265657320286173206f66204170 72696c203230303029>-3.045 F .931<77697468207468652028646966>100 360 R .931<666572656e746c792070726573656e746564292064617465207374616d70207573 656420696e20616c6c206d616e75616c2070616765732073686970706564207769746820 746861742072656c656173652e>-.25 F -.15<466f>100 372 S 3.59<7265>.15 G 1.09<78616d706c652c207468652064617465207374616d70206f66207468652046> -3.74 F 2.189 -.55<41512079>-.74 H 1.089 <6f75206172652072656164696e67206973>.55 F F1 1.089 <3134204d61792032303132>3.589 F F0 3.589<2c77>C 1.089 <6869636820636f72726573706f6e6473>-3.589 F .732 <7769746820746865204d434c207374616d70>100 384 R F1<31322d313335>3.232 E F0 5.732<2e54>C .732<6865204368616e67656c6f67208c6c6520636f6e7461696e73 2061206c697374206f66207768617427>-5.732 F 3.233<7363>-.55 G .733 <68616e6765642f61646465642077697468>-3.233 F .701 <656163682072656c656173652e2043757272656e746c79>100 396 R 3.201<2c74> -.65 G .701 <68652064617465207374616d7020697320746865207072696d6172792077>-3.201 F .7<6179206f66206964656e74696679696e6720616e>-.1 F F1<6d636c>3.2 E F0 .7 <72656c656173652e205768656e>3.2 F<61736b>100 408 Q .535 <656420666f72206974732076>-.1 F .535<657273696f6e206279207573696e67>-.15 F F1<2d2d76>3.035 E<657273696f6e>-.1 E F0 3.035<2c6d>C .535<636c206f7574 7075747320626f7468207468652064617465207374616d7020616e6420612076>-3.035 F .536<657273696f6e207461672028736565>-.15 F<62656c6f>100 420 Q<77292e> -.25 E/F4 12/Times-Bold@0 SF<496e7075742066>260.652 444 Q<6f726d6174>-.3 E F1<322e31>30 468 Q F2<486f>57.5 E 2.75<7763>-.11 G<616e20492067657420 6d79206461746120696e746f20746865204d434c206d61747269782066>-2.75 E <6f726d61743f>-.275 E F0 <546869732069732064657363726962656420696e20746865>100 492 Q F3<7072>2.5 E<6f746f636f6c73206d616e75616c207061>-.45 E -.1<6765>-.1 G F0<2e>.1 E F4 <57686174206b696e64206f6620677261706873>240.822 516 Q F1<332e31>30 540 Q F2<57686174206973206c6567616c20696e7075742066>57.5 E<6f72204d434c3f> -.275 E F0<416e>100 564 Q 4.657<7967>-.15 G 2.157<726170682028656e636f64 65642061732061206d6174726978206f662073696d696c61726974696573292074686174 206973206e6f6e6e65>-4.657 F -.05<6761>-.15 G<7469>.05 E -.15<7665>-.25 G 4.656<2c69>.15 G 2.156<2e652e20616c6c2073696d696c6172697469657320617265> -4.656 F<67726561746572207468616e206f7220657175616c20746f207a65726f2e> 100 576 Q F1<332e32>30 600 Q F2 <576861742069732073656e7369626c6520696e7075742066>57.5 E<6f72204d434c3f> -.275 E F0 1.442 <4772617068732063616e2062652077656967687465642c20616e6420746865>100 624 R 3.942<7973>-.15 G 1.442 <686f756c642070726566657261626c792062652073796d6d65747269632e2057>-3.942 F 1.443<6569676874732073686f756c6420636172727920746865>-.8 F .348 <6d65616e696e67206f662073696d696c6172697479>100 636 R<2c>-.65 E F3 <6e6f74>2.848 E F0 .348<64697374616e63652e205468657365207765696768747320 6f722073696d696c617269746965732061726520696e636f72706f726174656420696e74 6f20746865204d434c>2.848 F 1.887 <616c676f726974686d20696e2061206d65616e696e6766756c2077>100 648 R 4.388 <61792e20477261706873>-.1 F 1.888<73686f756c64206365727461696e6c79206e6f 7420636f6e7461696e2070617274732074686174206172652028616c6d6f737429>4.388 F -.15<6379>100 660 S<636c69632c20616c74686f756768206e6f7468696e67207374 6f707320796f752066726f6d2065>.15 E <78706572696d656e74696e672077697468207375636820696e7075742e>-.15 E F1 <332e33>30 684 Q F2<446f6573204d434c2077>57.5 E<6f726b2066>-.11 E <6f72207765696768746564206772617068733f>-.275 E F0 -1<5965>100 708 S 1.784<732c20756e65717569>1 F -.2<766f>-.25 G 1.784<63616c6c792e20546865> .2 F 4.284<7973>-.15 G 1.783<686f756c642070726566657261626c792062652073 796d6d65747269632f756e64697265637465642074686f7567682e>-4.284 F 1.783 <53656520656e7472696573>6.783 F<332e37>2.5 E<616e6420332e382e>100 720 Q <4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134> .55 F<4d61792032303132>2.5 E<34>202.335 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E/F1 10/Times-Bold@0 SF<332e34>30 84 Q/F2 11 /Times-Bold@0 SF<446f6573204d434c2077>57.5 E<6f726b2066>-.11 E <6f7220646972>-.275 E<6563746564206772617068733f>-.198 E F0 <4d617962652c2077697468206120626967206361>100 108 Q -.15<7665>-.2 G <61742e2053656520656e747269657320332e3820616e6420332e392e>.15 E F1 <332e35>30 132 Q F2<43616e204d434c2077>57.5 E<6f726b2066>-.11 E <6f72206c61747469636573202f20646972>-.275 E <656374656420616379636c696320677261706873202f2044>-.198 E -.605<4147> -.385 G<733f>.605 E F0 .058 <5375636820677261706873205b7465726d5d2063616e20737572656c792065>100 156 R .058<78686962697420636c65617220636c7573746572207374727563747572652e20 496620746865>-.15 F 2.558<7964>-.15 G .059 <6f2c207468657265206973206f6e6c79206f6e652077>-2.558 F .059 <617920666f72>-.1 F .401<6d636c20746f208c6e64206f75742e2059>100 168 R .401<6f75206861>-1.1 F .701 -.15<76652074>-.2 H 2.901<6f63>.15 G .401<68 616e676520616c6c206172637320746f2065646765732c20692e652e2069662074686572 6520697320616e206172632066726f6d206920746f206a20776974682073696d692d> -2.901 F<6c6172697479207328692c6a2920ad206279207468652044>100 180 Q .8 -.4<41472070>-.4 H<726f7065727479207468697320696d706c6965732073286a2c69 29203d203020ad207468656e206d616b>.4 E 2.5<6573>-.1 G <286a2c692920657175616c20746f207328692c6a292e>-2.5 E 1.977 <54686973206d6179206665656c206c696b>100 204 R 4.478<6574>-.1 G<68726f> -4.478 E 1.978<77696e672061>-.25 F -.1<7761>-.15 G 4.478<7976>.1 G 1.978 <616c7561626c6520696e666f726d6174696f6e2c2062>-4.728 F 1.978 <757420696e2074727574682074686520696e666f726d6174696f6e2074686174206973> -.2 F<7468726f>100 216 Q .344<776e2061>-.25 F -.1<7761>-.15 G 2.844 <7928>.1 G .344<646972656374696f6e29206973>-2.844 F/F3 10/Times-Italic@0 SF<6e6f74>2.844 E F0<696e666f726d617469>2.844 E .644 -.15<76652077>-.25 H .343<697468207265737065637420746f207468652070726573656e6365206f662063 6c7573746572207374727563747572652e2054686973>.15 F <6d61792077656c6c20646573657276>100 228 Q 2.5<65616c>-.15 G <6f6e6765722064697363757373696f6e207468616e2077>-2.5 E <6f756c64206265206a757374698c656420686572652e>-.1 E .877 <496620796f757220677261706820697320646972656374656420616e64206163>100 252 R .878<79636c696320286f72207061727473206f6620697420617265292c20796f 752063616e207472616e73666f726d206974206265666f726520636c7573746572696e67> -.15 F<77697468206d636c206279207573696e67>100 264 Q F1 <2d74662027236d6178282927>2.5 E F0 2.5<2c65>C<2e672e>-2.5 E/F4 10 /Courier@0 SF <6d636c20594f55522d4752415048202d4920332e30202d74662027236d6178282927> 118 288 Q F1<332e36>30 312 Q F2<446f6573204d434c2077>57.5 E<6f726b2066> -.11 E<6f72207472>-.275 E<6565206772617068733f>-.198 E F0 .367 <4e61682c204920646f6e27>100 336 R 2.867<7474>-.18 G .366 <68696e6b20736f2e204d6f726520696e666f20617420656e747279>-2.867 F 2.866 <332e372e2059>2.5 F .366<6f7520636f756c6420636f6e736964657220746865>-1.1 F F3<537472>2.866 E .366<61686c6572206e756d626572>-.15 F F0 2.866<2c77>C .366<68696368206973>-2.866 F<6e756d65726963616c206d656173757265206f6620 6272616e6368696e6720636f6d706c65>100 348 Q<786974792e>-.15 E F1<332e37> 30 372 Q F2 -.275<466f>57.5 G 2.75<7277>.275 G <686174206b696e64206f662067726170687320646f6573204d434c2077>-2.75 E <6f726b2077656c6c20616e642066>-.11 E <6f7220776869636820646f6573206974206e6f743f>-.275 E F0 .476<477261706873 20696e20776869636820746865206469616d65746572205b7465726d5d206f6620287375 6267726170687320696e647563656420627929206e61747572616c20636c757374657273 206973206e6f7420746f6f206c6172>100 396 R<67652e>-.18 E <4164646974696f6e616c6c79>100 408 Q 4.66<2c67>-.65 G 2.159<726170687320 73686f756c642070726566657261626c792062652028616c6d6f73742920756e64697265 63746564202873656520656e7472792062656c6f>-4.66 F 2.159 <772920616e64206e6f7420736f>-.25 F<737061727365207468617420746865206361 7264696e616c697479206f662074686520656467652073657420697320636c6f73652074 6f20746865206e756d626572206f66206e6f6465732e>100 420 Q 2.564<4163>100 444 S .064<6c617373206f6620737563682076>-2.564 F .065<657279207370617273 65206772617068732069732074686174206f662074726565206772617068732e2059> -.15 F .065<6f75206d69676874206c6f6f6b20696e746f>-1.1 F F3<6772>2.565 E .065<6170682076697375616c697a6174696f6e>-.15 F F0<736f667477>100 456 Q< 61726520616e6420726573656172636820696620796f752061726520696e746572657374 656420696e206465636f6d706f73696e6720747265657320696e746f2027>-.1 E <7469676874272073756274726565732e>-.18 E .664<546865206469616d6574657220 637269746572696f6e20636f756c642062652076696f6c61746564206279206e65696768 626f7572686f6f64206772617068732064657269>100 480 R -.15<7665>-.25 G 3.164<6466>.15 G .664<726f6d2076>-3.164 F .663 <6563746f7220646174612e20496e>-.15 F .072<7468652073706563698c6320636173 65206f66203220616e6420332064696d656e73696f6e616c20646174612c20796f75206d 6967687420626520696e746572657374656420696e>100 492 R F3<696d61>2.572 E .272 -.1<67652073>-.1 H -.4<6567>.1 G<6d656e746174696f6e>.4 E F0<616e64> 2.572 E F3<626f756e6461727920646574656374696f6e>100 504 Q F0 2.5<2c61>C< 6e6420666f72207468652067656e6572616c206361736520746865726520697320612068 6f7374206f66206f7468657220616c676f726974686d73206f75742074686572652e205b 6164645d>-2.5 E 1.283<496e2063617365206f66207765696768746564206772617068 732c20746865206e6f74696f6e206f66>100 528 R F3<6469616d65746572>3.782 E F0 1.282<697320736f6d6574696d6573206e6f74206170706c696361626c652e204765 6e6572616c697a696e67>3.782 F .686 <74686973206e6f74696f6e20726571756972657320696e7370656374696e6720746865> 100 540 R F3 .686<6d6978696e67207072>3.186 F<6f70657274696573>-.45 E F0 .687<6f66206120737562677261706820696e64756365642062792061206e6174757261 6c20636c7573746572>3.186 F 1.106 <696e207465726d73206f662069747320737065637472756d2e20486f>100 552 R <7765>-.25 E -.15<7665>-.25 G 1.905 -.4<722c2074>.15 H 1.105<6865206469 616d657465722073746174656d656e7420697320736f6d657468696e672067726f756e64 6564206f6e20686575726973746963>.4 F .623<636f6e73696465726174696f6e7320 28636f6e8c726d65642062792070726163746963616c2065>100 564 R .624 <766964656e6365205b345d2920746f206265>-.25 F .624<67696e20776974682c2073 6f20796f752073686f756c642070726f6261626c7920666f72>-.15 F<2d>-.2 E <6765742061626f7574206d6978696e672070726f706572746965732e>100 576 Q F1 <332e38>30 600 Q F2 1.455<57686174206d616b>57.5 F 1.455 <6573206120676f6f6420696e7075742067726170683f>-.11 F<486f>6.954 E 4.204 <7764>-.11 G 4.204<6f4963>-4.204 G 1.454 <6f6e737472756374207468652073696d696c617269746965733f>-4.204 F<486f> 6.954 E 4.204<7774>-.11 G<6f>-4.204 E<6d616b>100 612 Q 2.75<6574>-.11 G <68656d20736174697366792074686973204d61726b>-2.75 E .22 -.11<6f762063> -.165 H<6f6e646974696f6e3f>.11 E F0 3.232 -.8<546f2062>100 636 T -.15 <6567>.8 G 1.632<696e207769746820746865206c617374206f6e653a20796f75>.15 F F3 1.632<6e656564206e6f7420616e64206d757374206e6f74>4.132 F F0<6d616b> 4.132 E 4.132<6574>-.1 G 1.632 <686520696e70757420677261706820737563682074686174206974206973>-4.132 F .753<73746f6368617374696320616b61204d61726b>100 648 R -.15<6f76>-.1 G .753<69616e205b7465726d5d2e205768617420796f75206e65656420746f20646f2069 73206d616b>.15 F 3.252<656167>-.1 G .752 <7261706820746861742069732070726566657261626c792073796d2d>-3.252 F 1.271 <6d65747269632f756e64697265637465642c20692e652e207768657265207328692c6a 29203d2073286a2c692920666f7220616c6c206e6f646573206920616e64206a2e204974 206e656564206e6f7420626520706572666563746c7920756e64692d>100 660 R .763 <7265637465642c207365652074686520666f6c6c6f>100 672 R .763<77696e672066> -.25 F .762<617120666f7220612064697363757373696f6e206f6620746861742e>-.1 F F1<6d636c>5.762 E F0 .762<77696c6c2077>3.262 F .762 <6f726b207769746820746865206772617068206f662072616e646f6d>-.1 F -.1 <7761>100 684 S<6c6b732074686174206973206173736f636961746564207769746820 796f757220696e7075742067726170682c20616e64207468617420697320746865206e61 747572616c207374617465206f66206166>.1 E -.1<6661>-.25 G<6972732e>.1 E 5.238<54686520696e7075742067726170682073686f756c642070726566657261626c79 20626520686f6e65737420696e207468652073656e73652074686174206966>100 708 R F4<7328782c79293d4e>7.739 E F0<616e64>7.739 E F4<7328782c7a293d3230304e> 100 720 Q F0 .945<28692e652e207468652073696d696c6172697469657320646966> 3.445 F .945<66657220627920612066>-.25 F .945<6163746f7220323030292c2074 68656e20746869732073686f756c64207265616c6c792072658d6563742074686174>-.1 F<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134> .55 F<4d61792032303132>2.5 E<35>202.335 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E<7468652073696d696c6172697479206f66>100 84 Q/F1 10/Courier@0 SF<79>2.5 E F0<746f>2.5 E F1<78>2.5 E F0<6973206e65>2.5 E< 676c65637469626c6520636f6d70617265642077697468207468652073696d696c617269 7479206f66>-.15 E F1<7a>2.5 E F0<746f>2.5 E F1<78>2.5 E F0<2e>A -.15 <466f>100 108 S 3.101<7274>.15 G .601<686520726573742c20616e>-3.101 F .601<797468696e6720676f65732e2054>-.15 F .601 <727920746f206765742061206665656c696e672062792065>-.35 F 3.101 <78706572696d656e74696e672e20536f6d6574696d6573>-.15 F .602 <6974206973206120676f6f642069646561>3.101 F .858 <746f208c6c746572206f757420686967682d6672657175656e63>100 120 R 3.358 <7961>-.15 G .858<6e642f6f72206c6f>-3.358 F<772d6672657175656e63>-.25 E 3.358<7964>-.15 G .858 <6174612c20692e652e206e6f6465732077697468206569746865722076>-3.358 F .857<657279206d616e>-.15 F 3.357<796e>-.15 G<656967682d>-3.357 E <626f757273206f722065>100 132 Q<787472656d656c79206665>-.15 E 2.5<776e> -.25 G<65696768626f7572732e>-2.5 E/F2 10/Times-Bold@0 SF<332e39>30 156 Q /F3 11/Times-Bold@0 SF<4d7920696e70757420677261706820697320646972>57.5 E <65637465642e2049732074686174206261643f>-.198 E F0 1.408<49742064657065 6e64732e2054686520636c617373206f6620646972656374656420677261706873206361 6e20626520766965>100 180 R 1.408<776564206173206120737065637472756d2067 6f696e672066726f6d20756e6469726563746564>-.25 F .126 <67726170687320746f20756e692d6469726563746564206772617068732e>100 192 R /F4 10/Times-Italic@0 SF<556e692d646972>2.626 E<6563746564>-.37 E F0 .126<6973207465726d696e6f6c6f6779204920616d20696e>2.626 F -.15<7665>-.4 G .125<6e74696e6720686572652c20776869636820492064658c6e65206173>.15 F 1.01<7468652070726f7065727479207468617420666f7220616c6c206e6f6465207061 69727320692c206a2c206174206c65617374206f6e65206f66207328692c6a29206f7220 73286a2c6929206973207a65726f2e20496e206f746865722077>100 204 R 1.011 <6f7264732c206966>-.1 F .58<746865726520697320616e2061726320676f696e6720 66726f6d206920746f206a20696e206120756e692d64697265637465642067726170682c 207468656e207468657265206973206e6f2061726320676f696e672066726f6d206a2074 6f20692e2049>100 216 R .046 <63616c6c2061206e6f6465207061697220692c206a2c>100 228 R F4 .046 <616c6d6f737420756e692d646972>2.546 F<6563746564>-.37 E F0 .046 <6966207328692c6a29203c3c2073286a2c6929206f7220766963652076>2.546 F .047 <657273612c20692e652e206966207468652073696d696c6172697469657320646966> -.15 F<666572>-.25 E<627920616e206f72646572206f66206d61676e69747564652e> 100 240 Q .25<4966206120677261706820646f6573206e6f74206861>100 264 R .55 -.15<76652028>-.2 H<6c6172>.15 E .25<6765292073756270617274732074686174 206172652028616c6d6f73742920756e692d64697265637465642c206861>-.18 F .55 -.15<766520612067>-.2 H 2.75<6f77>.15 G .25<697468206d636c2e204f74682d> -2.75 F .912<6572776973652c2074727920746f206d616b>100 276 R 3.412<6579> -.1 G .912<6f7572206772617068206c65737320756e692d64697265637465642e> -3.412 F -1.1<596f>5.912 G 3.413<7561>1.1 G .913<726520696e2063686172> -3.413 F .913<67652c20736f20646f20616e>-.18 F .913 <797468696e67207769746820796f7572>-.15 F <677261706820617320796f7520736565208c742c2062>100 288 Q<7574207072656665 7261626c79206162737461696e2066726f6d2066656564696e67206d636c20756e692d64 69726563746564206772617068732e>-.2 E F2<332e3130>30 312 Q F3<5768>52.5 E 3.585<7964>-.165 G .835<6f6573206d636c206c696b>-3.585 F 3.585<6575>-.11 G<6e646972>-3.585 E .835<65637465642067726170687320616e64207768>-.198 F 3.585<7964>-.165 G .835<6f6573206974206469736c696b>-3.585 F 3.584<6575> -.11 G<6e692d646972>-3.584 E .834<656374656420677261706873>-.198 F <736f206d7563683f>100 324 Q F0<4d617468656d61746963616c6c79>100 348 Q 3.098<2c74>-.65 G .598<6865206d636c2069746572616e64732077696c6c206265> -3.098 F F4<6e696365>3.099 E F0 .599<7768656e2074686520696e707574206772 6170682069732073796d6d65747269632c207768657265>3.099 F F4<6e696365>3.099 E F0<6973>3.099 E .653<696e20746869732063617365>100 360 R F4<646961> 3.153 E .653<676f6e616c6c792073796d6d657472696320746f20612073656d692d70 6f7369746976652064658c6e697465206d6174726978>-.1 F F0 .653 <2869676e6f7265206173206e6565646564292e2046>3.153 F .652<6f72206f6e65> -.15 F .324<7468696e672c2073756368206e696365206d617472696365732063616e20 626520696e74657270726574656420617320636c7573746572696e677320696e20612077> 100 372 R .324 <617920746861742067656e6572616c697a65732074686520696e7465727072652d>-.1 F .016<746174696f6e206f6620746865206d636c206c696d6974206173206120636c75 73746572696e672028696620796f752061726520637572696f757320746f207468657365 20696e7465726d65646961746520636c7573746572696e67732c20736565>100 384 R F4<666171>2.515 E<656e74727920392e33>100 396 Q F0 2.5<292e20536565>B <746865>2.5 E F2<5245464552454e434553>2.5 E F0<73656374696f6e20666f7220 706f696e7465727320746f206d617468656d61746963616c207075626c69636174696f6e 732e>2.5 E .487<54686520726561736f6e2074686174206d636c206469736c696b>100 420 R .488 <657320756e692d646972656374656420677261706873206973206e6f742076>-.1 F .488<657279206d636c2073706563698c632c20697420686173206d6f726520746f2064 6f2077697468>-.15 F 1.453 <74686520636c7573746572696e672070726f626c656d20697473656c662e>100 432 R <536f6d65686f>6.453 E 2.753 -.65<772c2064>-.25 H 1.453 <6972656374696f6e616c69747920746877>.65 F 1.452<6172747320746865206e6f74 696f6e206f6620636c7573746572207374727563747572652e>-.1 F<5b6164645d2e> 100 444 Q F2<332e3131>30 468 Q F3<486f>52.5 E 2.75<7764>-.11 G 2.75 <6f4963>-2.75 G<6865636b2074686174206d792067726170682f6d6174726978206973 2073796d6d65747269632f756e646972>-2.75 E<65637465643f>-.198 E F0 .155<57 68657468657220796f757220677261706820697320637265617465642062792074686972 642d706172747920736f667477>100 492 R .156 <617265206f7220627920637573746f6d20736f6677>-.1 F .156 <617265207772697474656e20627920736f6d656f6e65>-.1 F .344<796f75206b6e6f> 100 504 R 2.844<7728>-.25 G .344<652e672e20796f757273656c66292c20697420 697320616476697361626c6520746f207465737420776865746865722074686520736f66 7477>-2.844 F .343 <6172652067656e6572617465732073796d6d6574726963206d617472692d>-.1 F 1.653<6365732e20546869732063616e20626520646f6e6520617320666f6c6c6f>100 516 R 1.653<7773207573696e6720746865>-.25 F F2 1.653 <6d637869207574696c697479>4.153 F F0 4.153<2c61>C 1.653 <7373756d696e67207468617420796f752077>-4.153 F 1.653 <616e7420746f207465737420746865>-.1 F .564 <6d61747269782073746f72656420696e208c6c65>100 528 R F1 <6d61747269782e6d6369>3.064 E F0 3.064<2e54>C .564 <6865206d637869207574696c6974792073686f756c642062652061>-3.064 F -.25 <7661>-.2 G .564 <696c61626c65206f6e20796f75722073797374656d206966206d636c>.25 F -.1 <7761>100 540 S 2.5<7369>.1 G <6e7374616c6c656420696e20746865206e6f726d616c2077>-2.5 E<61792e>-.1 E F1 <6d637869202f6d61747269782e6d6369206c6d207470202d31206d756c20616464202f 636865636b20776d>100 564 Q F0 1.834<54686973206c6f6164732074686520677261 70682f6d61747269782073746f72656420696e>100 588 R F1 <6d61747269782e6d6369>4.335 E F0<696e746f>4.335 E F2<6d637869>4.335 E F0 2.935 -.55<2773206d>D 1.835<656d6f7279207769746820746865>.55 F F2 <6d637869>4.335 E F4<6c6d>4.335 E F0<7072696d697469>100 600 Q -.15<7665> -.25 G 3.112<2ead74>.15 G .612 <6865206c656164696e6720736c61736820697320686f>-3.112 F 3.111<7773>-.25 G .611<7472696e67732061726520696e74726f647563656420696e207468652073746163 6b206c616e677561676520696e746572707265746564206279>-3.111 F F2<6d637869> 100 612 Q F0 3.191<2e54>C .692<6865207472616e73706f7365206f662074686174 206d6174726978206973207468656e20707573686564206f6e2074686520737461636b20 7769746820746865>-3.191 F F4<7470>3.192 E F0<7072696d697469>3.192 E .992 -.15<76652061>-.25 H .692<6e64206d756c74692d>.15 F .083 <706c696564206279206d696e7573206f6e652e20546865207477>100 624 R 2.582 <6f6d>-.1 G .082<61747269636573206172652061646465642c20616e642074686520 726573756c74206973207772697474656e20746f20746865208c6c65>-2.582 F F1 <636865636b>2.582 E F0 5.082<2e54>C<6865>-5.082 E 1.24 <7472616e73706f736564206d617472697820697320746865206d6972726f7265642076> 100 636 R 1.24<657273696f6e206f6620746865206f726967696e616c206d61747269 782073746f72656420696e>-.15 F F1<6d61747269782e6d6369>3.74 E F0 3.74 <2e49>C 3.74<6661>-3.74 G .171<67726170682f6d617472697820697320756e6469 7265637465642f73796d6d65747269632c20746865206d6972726f72656420696d616765 206973206e65636573736172696c79207468652073616d652c20736f20696620796f7520 7375622d>100 648 R<7472616374206f6e652066726f6d20746865206f746865722069 742073686f756c64207969656c6420616e20616c6c207a65726f206d61747269782e>100 660 Q<546875732c20746865208c6c65>100 684 Q F1<636865636b>2.5 E F4 <73686f756c64206c6f6f6b206c696b>2.5 E 2.5<6574>-.1 G<686973>-2.5 E F0 <3a>A<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125 <322d313335203134>.55 F<4d61792032303132>2.5 E<36>202.335 E 0 Cg EP %%Page: 7 7 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E/F1 10/Courier@0 SF<286d636c686561646572>100 84 Q<6d636c74797065206d6174726978>100 96 Q <64696d656e73696f6e73203c6e756d3e783c6e756d3e>100 108 Q<29>100 120 Q <286d636c6d6174726978>100 132 Q<626567696e>100 144 Q<29>100 156 Q F0 <5768657265>100 180 Q F1<3c6e756d3e>3.408 E F0 .909 <6973207468652073616d6520617320696e20746865208c6c65>3.408 F F1 <6d61747269782e6d6369>3.409 E F0 3.409<2e49>C 3.409<6674>-3.409 G .909 <686973206973206e6f742074686520636173652c208c6e64206f7574207768617427> -3.409 F<73>-.55 E 1.101<70726f6869626974696e6720796f752066726f6d206665 6564696e67206d636c2073796d6d6574726963206d617472696365732e204e6f74652074 68617420616e>100 192 R 3.601<796e>-.15 G 1.1 <6f6e7a65726f20656e747269657320666f756e6420696e>-3.601 F 1.481 <746865206d61747269782073746f726564206173>100 204 R F1<636865636b>3.982 E F0 1.482<636f72726573706f6e6420746f206e6f646520706169727320666f722077 6869636820746865206172637320696e20746865207477>3.982 F 3.982<6f70>-.1 G <6f737369626c65>-3.982 E<646972656374696f6e73206861>100 216 Q .3 -.15 <76652064>-.2 H<6966>.15 E<666572656e74207765696768742e>-.25 E/F2 12 /Times-Bold@0 SF<537065656420616e6420636f6d706c6578697479>237.996 240 Q /F3 10/Times-Bold@0 SF<342e31>30 264 Q/F4 11/Times-Bold@0 SF<486f>57.5 E 2.75<7766>-.11 G<617374206973206d636c2f4d434c3f>-2.75 E F0<497427>100 288 Q 3.328<7366>-.55 G .828<617374202d206865726520697320686f>-3.428 F 3.328<7761>-.25 G .828<6e64207768>-3.328 F .828<792e204c6574>-.05 F F1 <4e>3.328 E F0 .827<626520746865206e756d626572206f66206e6f64657320696e20 74686520696e7075742067726170682e20412073747261696774666f72>3.328 F<2d> -.2 E -.1<7761>100 300 S 1.272 <726420696d706c656d656e746174696f6e206f66204d434c2077696c6c206861>.1 F 1.572 -.15<76652074>-.2 H 1.273 <696d6520616e6420737061636520636f6d706c65>.15 F 1.273 <786974792072657370656369>-.15 F -.15<7665>-.25 G<6c79>.15 E F1 <4f284e5e3329>3.773 E F0<28692e652e>3.773 E<637562696320696e>100 312 Q F1<4e>2.5 E F0 2.5<2961>C<6e64>-2.5 E F1<4f284e5e3229>2.5 E F0 <2871756164726174696320696e>2.5 E F1<4e>2.5 E F0 <292e20536f20796f7520646f6e27>A 2.5<7477>-.18 G <616e74206f6e65206f662074686f73652e>-2.6 E F3<6d636c>100 336 Q F0 2.596 <696d706c656d656e7473206120736c696768746c79207065727475726265642076> 5.096 F 2.595<657273696f6e206f6620746865204d434c2070726f636573732c206173 2064697363757373656420696e2073656374696f6e>-.15 F/F5 10/Times-Italic@0 SF<5265736f7572>100 348 Q 1.627<63652074756e696e67202f206163637572>-.37 F<616379>-.15 E F0 6.627<2e52>C 1.627 <6566657220746f20746861742073656374696f6e20666f722061206d6f72652065> -6.627 F<7874656e7369>-.15 E 1.928 -.15<76652064>-.25 H 1.628 <697363757373696f6e206f6620616c6c20746865>.15 F .37 <6173706563747320696e>100 360 R -.2<766f>-.4 G<6c76>.2 E .37<65642e2054 6869732073656374696f6e206973206f6e6c7920636f6e6365726e656420776974682074 686520686967682d6c65>-.15 F -.15<7665>-.25 G 2.869<6c76>.15 G<6965> -2.869 E 2.869<776f>-.25 G 2.869<6674>-2.869 G<68696e6773>-2.869 E F5 <616e64>2.869 E F0 .369<746865206e69747479>2.869 F <67726974747920636f6d706c65>100 372 Q<786974792064657461696c732e>-.15 E .909<5768696c6520636f6d707574696e672074686520737175617265206f662061206d 617472697820287468652070726f64756374206f662074686174206d6174726978207769 746820697473656c66292c206d636c206b>100 396 R .909<6565707320746865>-.1 F .383<6d61747269782073706172736520627920616c6c6f>100 408 R .383<77696e67 2061206365727461696e206d6178696d756d206e756d626572206f66206e6f6e7a65726f 20656e7472696573207065722073746f6368617374696320636f6c756d6e2e>-.25 F .502<546865206d6178696d756d206973206f6e65206f6620746865206d636c20706172 616d65746572732c20616e64206974206973207479706963616c6c792073657420736f6d 65>100 420 R .502<7768657265206265747765656e2035303020616e64>-.25 F 2.5 <313530302e2043616c6c>100 432 R<746865206d6178696d756d>2.5 E F1<4b>2.5 E F0<2e>A<6d636c27>100 456 Q 3.68<7374>-.55 G 1.18<696d6520636f6d706c65> -3.68 F 1.18<7869747920697320676f>-.15 F -.15<7665>-.15 G 1.18 <726e65642062792074686520636f6d706c65>.15 F 1.18 <78697479206f66206d6174726978207371756172696e672e>-.15 F 1.18 <546865726520617265207477>6.18 F 3.68<6f73>-.1 G<75622d>-3.68 E .226<61 6c676f726974686d7320746f20636f6e73696465722e20546865208c7273742069732074 686520616c676f726974686d20726573706f6e7369626c6520666f7220617373656d626c 696e672061206e65>100 468 R 2.726<7776>-.25 G .226 <6563746f7220647572696e67>-2.876 F 1.217<6d6174726978206d756c7469706c69 636174696f6e2e205468697320616c676f726974686d206861732077>100 480 R 1.216 <6f727374206361736520636f6d706c65>-.1 F<78697479>-.15 E F1<4f284b5e3229> 3.716 E F0 6.216<2e54>C 1.216<6865207072756e696e6720616c676f2d>-6.216 F .846<726974686d20287768696368207573657320686561702073656c656374696f6e29 206861732077>100 492 R .846<6f727374206361736520636f6d706c65>-.1 F <78697479>-.15 E F1<4f284c2a6c6f67284b2929>3.346 E F0 3.346<2c77>C <68657265>-3.346 E F1<4c>3.346 E F0 .847<697320686f>3.347 F<77>-.25 E <6c6172>100 504 Q 1.179<67652061206e65>-.18 F 1.178<776c7920636f6d707574 6564206d617472697820636f6c756d6e2063616e20676574206265666f72652069742069 73207265647563656420746f206174206d6f7374>-.25 F F1<4b>3.678 E F0 <656e74726965732e>3.678 E F1<4c>3.678 E F0<6973>3.678 E F5 .205 <626f756e64206279>100 516 R F0 .205 <74686520736d616c6c657374206f6620746865207477>2.705 F 2.705<6f6e>-.1 G <756d62657273>-2.705 E F1<4e>2.705 E F0<616e64>2.705 E F1<4b5e32>2.705 E F0 .205<2874686520737175617265206f66>2.705 F F1<4b>2.705 E F0 .205 <292c2062>B .205<7574206f6e2061>-.2 F -.15<7665>-.2 G<72616765>.15 E F1 <4c>2.705 E F0 .205<77696c6c206265>2.705 F 1.373<6d75636820736d616c6c65 72207468616e20746861742c206173207468652070726573656e6365206f6620636c7573 74657220737472756374757265206169647320696e206b>100 528 R 1.373 <656570696e67207468652066>-.1 F<6163746f72>-.1 E F1<4c>3.873 E F0<6c6f> 3.873 E<772e>-.25 E .82 <5b52656c6174656420746f2074686973206973207468652066>100 540 R .82<616374 207468617420636c7573746572696e6720616c676f726974686d73206172652061637475 616c6c79207573656420746f20636f6d70757465206d61747269782073706c69742d>-.1 F .855<74696e67732074686174206d696e696d697a6520746865206e756d626572206f 662063726f73732d636f6d7075746174696f6e73207768656e206361727279696e67206f 7574206d6174726978206d756c7469706c69636174696f6e>100 552 R .95 <616d6f6e67206d756c7469706c652070726f636573736f72732e5d>100 564 R .95 <496e2061637475616c206361736573206f6620686561>5.95 F .951 <76792075736167652c>-.2 F F1<4c>3.451 E F0 .951 <6973206f66206f7264657220696e207468652074656e73206f662074686f752d>3.451 F<73616e64732c20616e64>100 576 Q F1<4b>2.5 E F0 <697320696e20746865206f72646572206f66207365>2.5 E -.15<7665>-.25 G <72616c2068756e647265647320757020746f20612074686f7573616e642e>.15 E 1.605<4974206973207361666520746f20736179207468617420696e2067656e6572616c 207468652077>100 600 R 1.604<6f727374206361736520636f6d706c65>-.1 F 1.604<78697479206f66206d636c206973206f66206f72646572204f284e2a4b5e32293b 20666f72>-.15 F -.15<6578>100 612 S .447<7472656d656c792074696768742061 6e642064656e7365206772617068732074686973206d69676874206265636f6d65204f28 4e2a4e2a6c6f67284b29292e205374696c6c2c207468657365206172652077>.15 F .447<6f7273742063617365>-.1 F 1.958 <657374696d617465732c20616e64206f6273657276>100 624 R 1.957<65642072756e 6e696e672074696d657320666f722061637475616c20757361676520617265206d756368 20626574746572207468616e20746861742e>-.15 F 1.957<28726566657220746f> 6.957 F -.1<6661>100 636 S 2.5<7134>.1 G<2e32292e>-2.5 E .834<496e207468 697320616e616c797369732c20746865206e756d626572206f6620697465726174696f6e 73207265717569726564206279206d636c2077>100 660 R .835 <6173206e6f7420696e636c756465642e204974206973206e6561726c7920616c>-.1 F -.1<7761>-.1 G<7973>.1 E -.1<6661>100 672 S 3.614<7262>.1 G<656c6f> -3.614 E 3.614<7731>-.25 G 1.114 <30302e204f6e6c7920746865208c727374206665>-3.614 F 3.614<7728>-.25 G 1.114<6c657373207468616e2074656e2920697465726174696f6e73206172652067656e 75696e656c792074696d6520636f6e73756d696e672c20616e64>-3.614 F<746865>100 684 Q 2.5<7961>-.15 G<726520757375616c6c7920726573706f6e7369626c6520666f 72206d6f7265207468616e2039352070657263656e74206f66207468652072756e6e696e 672074696d652e>-2.5 E .851<5468652070726f63657373206f662072656d6f>100 708 R .852 <76696e672074686520736d616c6c65737420656e7472696573206f6620612076>-.15 F .852<6563746f722069732063616c6c6564207072756e696e672e206d636c206f757470 75747320612073756d2d>-.15 F 1.331<6d617279206f662074686973206f6e63652069 7420697320646f6e652e204d6f726520696e666f726d6174696f6e2069732070726f>100 720 R 1.331 <766964656420696e20746865207072756e696e672073656374696f6e206f6620746865> -.15 F F3<6d636c>3.831 E F0<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134>.55 F<4d61792032303132>2.5 E<37>202.335 E 0 Cg EP %%Page: 8 8 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E/F1 10/Times-Bold@0 SF<6d616e75616c>100 84 Q F0 <616e64>2.5 E/F2 10/Times-Italic@0 SF<53656374696f6e2036>2.5 E F0 <696e20746869732046>2.5 E -.55<4151>-.74 G<2e>.55 E <54686520737061636520636f6d706c65>100 108 Q <78697479206973206f66206f72646572>-.15 E/F3 10/Courier@0 SF <4f284e2a4b29>2.5 E F0<2e>A F1<342e32>30 132 Q/F4 11/Times-Bold@0 SF <576861742073746174697374696373206172>57.5 E 2.75<6561>-.198 G -.11 <7661>-3.025 G<696c61626c653f>.11 E F0<4665>100 156 Q 1.015 <772e20536f6d652065>-.25 F 1.015<78706572696d656e7473206172652064657363 726962656420696e205b345d2c20616e64205b355d206d656e74696f6e73206c6172> -.15 F 1.015<676520677261706873206265696e6720636c7573746572656420696e> -.18 F -.15<7665>100 168 S .652<727920726561736f6e61626c652074696d652e20 496e2070726f7465696e20636c7573746572696e672c>.15 F F1<6d636c>3.152 E F0 .652<686173206265656e206170706c69656420746f2067726170687320776974682075 7020746f206f6e65206d696c2d>3.152 F <6c696f6e206e6f6465732c20616e64206f6e20686967682d656e64206861726477>100 180 Q<6172652073756368206772617068732063616e20626520636c7573746572656420 77697468696e2061206665>-.1 E 2.5<7768>-.25 G<6f7572732e>-2.5 E F1 <342e33>30 204 Q F4<446f6573207468697320696d706c656d656e746174696f6e206e 65656420746f20736f72742076>57.5 E<6563746f72733f>-.11 E F0 .403 <4e6f2c20697420646f6573206e6f742e2059>100 228 R .403 <6f75206d696768742065>-1.1 F .403 <78706563742074686174206f6e65206e6565647320746f20736f727420612076>-.15 F .404<6563746f7220696e206f7264657220746f206f627461696e20746865>-.15 F F3 <4b>2.904 E F0<6c6172>2.904 E<67657374>-.18 E 1.728 <656e74726965732c2062>100 240 R 1.728 <757420612073696d706c6572206d656368616e69736d2063616c6c6564>-.2 F F2 1.728<686561702073656c656374696f6e>4.228 F F0 1.728 <646f657320746865206a6f62206e6963656c792e>4.228 F 1.727 <53656c656374696e6720746865>6.728 F F3<4b>4.227 E F0<6c6172>100 252 Q .493<6765737420656e74726965732066726f6d206120736574206f66>-.18 F F3<4c> 2.993 E F0 .493<627920736f7274696e672077>2.993 F .493 <6f756c642072657175697265>-.1 F F3<4f284c2a6c6f67284c2929>2.993 E F0 .493<6f7065726174696f6e733b20686561702073656c65632d>2.993 F 1.927 <74696f6e207265717569726573>100 264 R F3<4f284c2a6c6f67284b2929>4.427 E F0 4.427<6f7065726174696f6e732e20416c7465726e617469>4.427 F -.15<7665> -.25 G<6c79>.15 E 4.427<2c74>-.65 G<6865>-4.427 E F3<4b>4.427 E F0 <6c6172>4.427 E 1.926 <6765737420656e74726965732063616e20626520616c736f206265>-.18 F 1.505 <64657465726d696e656420696e>100 276 R F3 1.506 <4f284e29202b204f284b206c6f67284b2929>4.005 F F0 1.506<6173796d70746f74 69632074696d65206279207573696e6720706172746974696f6e2073656c656374696f6e 20286d6f7265>4.006 F F2<686572>100 288 Q<65>-.37 E F0<616e64>2.625 E F2 <74686572>2.625 E<65>-.37 E F0 .124<292e20497420697320706f737369626c6520 746f20656e61626c652074686973206d6f6465206f66206f70657261746f6e20696e206d 636c207769746820746865206f7074696f6e>B F1<2d2d706172746974696f6e2d>2.624 E<73656c656374696f6e>100 300 Q F0 2.739<2e48>C -.25<6f77>-2.739 G -2.15 -.25<65762065>.25 H 1.039 -.4<722c2062>.25 H .239 <656e63686d61726b696e6720736f2066>.4 F .239<6172206861732073686f>-.1 F .239<776e207468697320746f2062652065717569>-.25 F -.25<7661>-.25 G .24 <6c656e7420696e20737065656420746f20686561702073656c65632d>.25 F <74696f6e2e20546869732069732065>100 312 Q <78706c61696e65642062792074686520626f756e646564206e6174757265206f66>-.15 E F3<4b>2.5 E F0<616e64>2.5 E F3<4c>2.5 E F0<696e2070726163746963652e> 2.5 E F1<342e34>30 336 Q F4<6d636c20646f6573206e6f7420636f6d707574652074 686520696465616c204d434c207072>57.5 E<6f6365737321>-.198 E F0 .108<496e 6465656420697420646f6573206e6f742e205768617420617265207468652072616d698c 636174696f6e733f205365>100 360 R -.15<7665>-.25 G .108 <72616c20656e747269657320696e2073656374696f6e>.15 F F2<5265736f7572> 2.608 E .108<63652074756e696e67202f20616363752d>-.37 F -.15<7261>100 372 S<6379>.15 E F0<6469736375737320746869732069737375652e2046>2.5 E <6f7220612073796e6f707369732c20636f6e7369646572207477>-.15 E 2.5<6f65> -.1 G<6e6473206f66206120737065637472756d2e>-2.5 E .618 <4f6e20746865206f6e6520656e642c20612067726170682074686174206861732076> 100 396 R .619<657279207374726f6e6720636c757374657220737472756374757265 2c207769746820636c6561726c792028616e64206e6f74206e65636573736172697479> -.15 F 1.561<66756c6c79292073657061726174656420636c7573746572732e205468 6973206d636c20696d706c656d656e746174696f6e2077696c6c206365727461696e6c79 20726574726965>100 408 R 1.861 -.15<76652074>-.25 H 1.56 <686f736520636c75737465727320696620746865>.15 F .422<6772617068732066> 100 420 R .422<616c6c7320696e746f>-.1 F F2 .422<7468652063617465>2.922 F .422<676f7279206f66206772>-.4 F<61706873>-.15 E F0 .423 <666f72207768696368206d636c206973206170706c696361626c652e>2.922 F .423 <4f6e20746865206f7468657220656e642c20636f6e7369646572>5.423 F 3.63<6167> 100 432 S 1.13<72617068207468617420686173206f6e6c79207765616b20636c7573 74657220737472756374757265207375706572696d706f736564206f6e2061206261636b 67726f756e64206f662061206d6f7265206f72206c657373>-3.63 F 1.41<72616e646f 6d2067726170682e205468657265206d6967687420736f6f6e6572206265206120646966> 100 444 R 1.41<666572656e6365206265747765656e2074686520636c757374657269 6e6720746861742073686f756c6420696465616c6c79>-.25 F .375<726573756c7420 616e6420746865206f6e6520636f6d7075746564206279206d636c2e2053756368206120 67726170682077696c6c206861>100 456 R .675 -.15<76652061206c>-.2 H<6172> .15 E .374<6765206e756d626572206f66207768696d736963616c206e6f646573>-.18 F .851<74686174206d6967687420656e64207570206569746865722068657265206f72 2074686572652c206e6f646573207468617420617265206f662061207065726970686572 616c206e61747572652c20616e6420666f7220776869636820746865>100 468 R .763 <28636c7573746572292064657374696e6174696f6e2069732076>100 480 R .763 <6572792073656e73697469>-.15 F 1.063 -.15<76652074>-.25 H 3.263<6f8d>.15 G .762<75637475746174696f6e7320696e20656467652077656967687473206f722061 6c676f726974686d20706172616d657472697a612d>-3.263 F<74696f6e732028616e> 100 492 Q 2.5<7961>-.15 G <6c676f726974686d2c206e6f74206a757374206d636c292e>-2.5 E .585 <496e2073686f72742c2074686520706572747572626174696f6e206566>100 516 R .586<66656374206f6620746865207072756e696e672070726f63657373206170706c69 6564206279206d636c206973206120736f75726365206f66206e6f6973652e2049742069 73>-.25 F 1.346<736d616c6c20636f6d706172656420746f20746865206566>100 528 R 1.345<66656374206f66206368616e67696e672074686520696e8d6174696f6e207061 72616d657472697a6174696f6e206f722070657274757262696e67207468652065646765> -.25 F .682<776569676874732e20496620746865206368616e6765206973206c6172> 100 540 R<676572>-.18 E 3.182<2c74>-.4 G .682<68697320697320626563617573 652074686520636f6d70757465642070726f636573732074656e647320746f20636f6e> -3.182 F -.15<7665>-.4 G -.18<7267>.15 G 3.182<6570>.18 G<72656d612d> -3.182 E<747572656c79>100 552 Q 3.186<2c6c>-.65 G .686 <656164696e6720746f208c6e6572>-3.186 F .686<2d677261696e656420636c757374 6572696e67732e204173206120726573756c742074686520636c7573746572696e672077 696c6c20626520636c6f736520746f2061>-.2 F F2<737562636c75732d>3.186 E <746572696e67>100 564 Q F0 .166<6f662074686520636c7573746572696e67207265 73756c74696e672066726f6d206d6f726520636f6e73657276>2.666 F<617469>-.25 E .466 -.15<76652072>-.25 H .167<65736f757263652073657474696e67732c20616e 6420696e20746861742072657370656374206265>.15 F 3.315 <636f6e73697374656e742e20416c6c>100 576 R .814<746869732063616e20626520 6d65617375726564207573696e67207468652070726f6772616d>3.315 F F2 .814 <636c6d2064697374>3.314 F F0 3.314<2e49>C 3.314<7469>-3.314 G 3.314 <7370>-3.314 G .814<6f737369626c6520746f206f66>-3.314 F .814 <6673657420737563682061>-.25 F <6368616e676520627920736c696768746c79206c6f>100 588 Q <776572696e672074686520696e8d6174696f6e20706172616d657465722e>-.25 E 1.123<546865726520697320746865206973737565206f662076>100 612 R 1.123 <657279206c6172>-.15 F 1.123<676520616e642076>-.18 F 1.123 <6572792064656e7365206772617068732e>-.15 F 1.124 <54686520616374206f66207072756e696e672077696c6c206861>6.123 F 1.424 -.15 <76652061206c>-.2 H<6172>.15 E<676572>-.18 E 1.105 <696d70616374206173206772617068732067726f>100 624 R 3.605<776c>-.25 G <6172>-3.605 E 1.105<67657220616e642064656e7365722e>-.18 F<4f62>6.105 E <76696f75736c79>-.15 E 3.605<2c6d>-.65 G 1.105<636c2077696c6c206861> -3.605 F 1.405 -.15<76652074>-.2 H 1.105 <726f75626c65206465616c696e6720776974682073756368>.15 F -.15<7665>100 636 S<7279206c6172>.15 E<676520616e642076>-.18 E<6572792064656e73652067 726170687320ad20736f2077696c6c206f74686572206d6574686f64732e>-.15 E <46696e616c6c79>100 660 Q 2.93<2c74>-.65 G .43<686572652069732074686520 656e67696e656572696e6720617070726f6163682c207768696368206f66>-2.93 F .43 <666572732074686520706f73736962696c697479206f66207072756e696e6720612077 686f6c65206c6f74206f66>-.25 F <73706563756c6174696f6e2e20446f207468652065>100 672 Q <78706572696d656e74732077697468>-.15 E F1<6d636c>2.5 E F0 2.5<2c74>C <7279206974206f75742c20616e6420736565207768617427>-2.5 E 2.5<7374>-.55 G <6865726520746f206c696b>-2.5 E 2.5<6561>-.1 G<6e64206469736c696b>-2.5 E <652e>-.1 E/F5 12/Times-Bold@0 SF <436f6d70617269736f6e2077697468206f7468657220616c676f726974686d73>205.17 696 Q F1<352e31>30 720 Q F4<4927>57.5 E .22 -.11<76652072>-.22 H<656164 20736f6d65706c61636520746861742058595a206973206d756368206265747465722074 68616e204d434c>-.088 E F0<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134>.55 F<4d61792032303132>2.5 E<38>202.335 E 0 Cg EP %%Page: 9 9 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E .45<58595a206d696768742077656c6c20626520746865 2062656573206b6e656573206f6620616c6c207468696e677320636c7573746572696e67 2e204265617220696e206d696e642074686f756768207468617420636f6d706172696e67> 100 84 R .466<636c757374657220616c676f726974686d7320697320612076>100 96 R .466<65727920747269636b>-.15 F 2.966<7961>-.15 G -2.1 -.25<66662061> -2.966 H 2.966<69722e204f6e65>.25 F .466 <706172746963756c617220747261702069732074686520666f6c6c6f>2.966 F .466 <77696e672e20536f6d6574696d65732061206e65>-.25 F<77>-.25 E .532<636c7573 74657220616c676f726974686d2069732070726f706f736564206261736564206f6e2073 6f6d65206f7074696d697a6174696f6e20637269746572696f6e2e2054686520616c676f 726974686d206973207468656e20636f6d2d>100 108 R 1.042 <7061726564207769746820707265>100 120 R 1.042 <76696f757320616c676f726974686d732028652e672e204d434c292e2042757420686f> -.25 F 3.542<7774>-.25 G 3.542<6f63>-3.542 G 1.043 <6f6d706172653f205175697465206f6674656e2074686520636f6d70617269736f6e> -3.542 F .542<77696c6c20626520646f6e6520627920636f6d707574696e6720612063 7269746572696f6e20616e64206173746f756e64696e676c79>100 132 R 3.042<2c71> -.65 G .542<75697465206f6674656e207468652063686f73656e20637269746572696f 6e2069732073696d2d>-3.042 F .505 <706c7920746865206f7074696d697a6174696f6e20637269746572696f6e206167>100 144 R<61696e2e>-.05 E/F1 10/Times-Italic@0 SF .506<4f6620636f7572>5.506 F<7365>-.1 E F0 .506<58595a2077696c6c20646f2076>3.006 F .506 <6572792077656c6c2e2049742077>-.15 F .506<6f756c6420626520612076>-.1 F .506<65727920706f6f72>-.15 F .582<616c676f726974686d20697420696620646964 206e6f742073636f72652077656c6c206f6e20697473206f>100 156 R .582 <776e206f7074696d697a6174696f6e20637269746572696f6e2c20616e642069742077> -.25 F .581<6f756c6420626520612076>-.1 F .581<65727920706f6f72>-.15 F .881<616c676f726974686d20696620697420646964206e6f7420706572666f726d2062 6574746572207468616e206f7468657220616c676f726974686d73207768696368206172 652062>100 168 R .882<75696c74206f6e20646966>-.2 F .882 <666572656e74207072696e63692d>-.25 F<706c65732e>100 180 Q .823<54686572 652061726520736f6d652066757274686572206973737565732074686174206861>100 204 R 1.122 -.15<76652074>-.2 H 3.322<6f62>.15 G 3.322<6563>-3.322 G .822<6f6e7369646572656420686572652e>-3.322 F .822 <46697273742c207468657265206973206e6f7420612073696e676c65206f7074692d> 5.822 F .675<6d697a6174696f6e20637269746572696f6e20746861742066756c6c79 20636170747572657320746865206e6f74696f6e206f6620636c75737465722073747275 63747572652c206c657420616c6f6e65206265737420636c75737465722073747275632d> 100 216 R .378<747572652e205365636f6e642c206c6561>100 228 R .378<76696e 67206f7074696d697a6174696f6e20617070726f61636865732061736964652c20697420 6973206e6f7420706f737369626c6520746f20737065616b206f66206120626573742063 6c7573746572>-.2 F<2d>-.2 E .655<696e672e204265737420616c>100 240 R -.1 <7761>-.1 G .656<797320646570656e6473206f6e20636f6e7465>.1 F .656<787420 2d206170706c69636174696f6e208c656c642c2064617461206368617261637465726973 746963732c207363616c6520286772616e756c6172697479292c>-.15 F 1.469 <616e642070726163746974696f6e657220746f206e616d652062>100 252 R 1.469 <75742061206665>-.2 F 3.969<7761>-.25 G 3.969 <7370656374732e204163636f7264696e676c79>-3.969 F 3.968<2c74>-.65 G 1.468 <68652062657374206120636c7573746572696e6720616c676f726974686d2063616e> -3.968 F .642<686f706520666f7220697320746f206265206120676f6f64208c742066 6f722061206365727461696e20636c617373206f662070726f626c656d732e2054686520 636c6173732073686f756c64206e6f7420626520746f6f206e6172726f>100 264 R -.65<772c>-.25 G -.2<6275>100 276 S 3.256<746e>.2 G 3.256<6f61>-3.256 G .755<6c676f726974686d2063616e20636174657220666f72207468652062726f616420 73706563747265206f662070726f626c656d7320666f7220776869636820636c75737465 72696e6720736f6c7574696f6e7320617265>-3.256 F 2.931 <736f756768742e20546865>100 288 R .432<636c617373206f662070726f626c656d 7320746f207768696368204d434c206973206170706c696361626c652069732064697363 757373656420696e2073656374696f6e>2.931 F F1 .432 <57686174206b696e64206f66>2.932 F<6772>100 300 Q<61706873>-.15 E F0<2e>A /F2 10/Times-Bold@0 SF<352e32>30 324 Q/F3 11/Times-Bold@0 SF<4927>57.5 E .22 -.11<76652072>-.22 H <65616420736f6d65706c6163652074686174204d434c20697320736c6f>-.088 E 2.75 <775b>-.11 G<636f6d706172>-2.75 E<656420776974682058595a5d>-.198 E F0 <50726573756d61626c79>100 348 Q 2.913<2c74>-.65 G<6865>-2.913 E 2.913 <7964>-.15 G .413<6964206e6f74206b6e6f>-2.913 F 2.912<776d>-.25 G .412< 636c2c20616e6420646964206e6f7420726561642074686520706172747320696e205b31 5d20616e64205b325d2074686174206469736375737320696d706c652d>-2.912 F .624 <6d656e746174696f6e2e205065726861707320746865>100 360 R 3.124<7961>-.15 G .624<7373756d65206f7220696e73697374207468617420746865206f6e6c792077> -3.124 F .624 <617920746f20696d706c656d656e74204d434c20697320746f20696d706c656d656e74> -.1 F .692 <74686520696465616c2070726f636573732e20416e6420746865726520697320616c> 100 372 R -.1<7761>-.1 G .692 <7973207468652067656e75696e6520706f73736962696c697479206f662061>.1 F F1 -.37<7265>3.192 G<616c6c79>.37 E F0 .692<73747570696679696e676c792066> 3.192 F .692<61737420616c676f2d>-.1 F .716<726974686d2e2049742069732063 65727461696e6c79206e6f742074686520636173652074686174204d434c206861732061 2074696d6520636f6d706c65>100 384 R .716<78697479206f66>-.15 F/F4 10 /Courier@0 SF<4f284e5e3329>3.216 E F0 .716 <617320697320736f6d6574696d6573>3.216 F <6572726f6e656f75736c79207374617465642e>100 396 Q/F5 12/Times-Bold@0 SF <5265736f7572>224.616 420 Q<63652074756e696e67202f206163637572616379> -.216 E F2<362e31>30 444 Q F3<5768617420646f2079>57.5 E <6f75206d65616e2062792072>-.275 E<65736f7572>-.198 E <63652074756e696e673f>-.198 E F2<6d636c>100 468 Q F0 2.052<636f6d707574 657320612070726f6365737320696e2077686963682073746f63686173746963206d6174 72696365732061726520616c7465726e6174656c792065>4.552 F 2.051 <7870616e64656420616e6420696e8d617465642e>-.15 F .084 <457870616e73696f6e206973206e6f7468696e672062>100 480 R .085<7574207374 616e64617264206d6174726978206d756c7469706c69636174696f6e2c20696e8d617469 6f6e206973206120706172746963756c61722077>-.2 F .085 <6179206f662072657363616c696e67>-.1 F <746865206d617472697820656e74726965732e>100 492 Q .284<457870616e73696f 6e206361757365732070726f626c656d7320696e207465726d73206f6620626f74682074 696d6520616e642073706163652e206d636c2077>100 516 R .284 <6f726b732077697468206d61747269636573206f662064696d656e2d>-.1 F <73696f6e>100 528 Q F4<4e>2.663 E F0 2.663<2c77>C<68657265>-2.663 E F4 <4e>2.663 E F0 .164<697320746865206e756d626572206f66206e6f64657320696e20 74686520696e7075742067726170682e>2.663 F .164 <4966206e6f2070726563617574696f6e73206172652074616b>5.164 F .164 <656e2c20746865206e756d2d>-.1 F .669<626572206f6620656e747269657320696e 20746865206d636c2069746572616e647320287768696368206172652073746f63686173 746963206d61747269636573292077696c6c20736f6f6e20617070726f61636820746865 20737175617265>100 540 R<6f66>100 552 Q F4<4e>3.279 E F0 3.279<2e54>C .779<68652074696d652069742074616b>-3.279 F .78<657320746f20636f6d707574 6520737563682061206d61747269782077696c6c2062652070726f706f7274696f6e616c 20746f207468652063756265206f66>-.1 F F4<4e>3.28 E F0 3.28<2e49>C 3.28 <6679>-3.28 G<6f7572>-3.28 E 2.569<696e70757420677261706820686173203130 302e303030206e6f6465732c20746865206d656d6f727920726571756972656d656e7473 206265636f6d6520696e6665617369626c6520616e64207468652074696d65>100 564 R <726571756972656d656e7473206265636f6d6520696d706f737369626c652e>100 576 Q .133<57686174206d636c20646f65732069732070657274757262696e672074686520 70726f6365737320697420636f6d70757465732061206c6974746c652062792072656d6f> 100 600 R .133 <76696e672074686520736d616c6c65737420656e747269657320ad206974>-.15 F -.1 <6b65>100 612 S 1.402<65707320697473206d61747269636573>.1 F F1<73706172> 3.902 E<7365>-.1 E F0 6.401<2e54>C 1.401<6869732069732061206e6174757261 6c207468696e6720746f20646f2c206265636175736520746865206d6174726963657320 6172652073706172736520696e2061>-6.401 F 1.704 <77656967687465642073656e73652028612076>100 624 R 1.704<6572792068696768 2070726f706f7274696f6e206f66207468652073746f63686173746963206d6173732069 7320636f6e7461696e656420696e2072656c617469>-.15 F -.15<7665>-.25 G 1.705 <6c79206665>.15 F<77>-.25 E .76 <656e7472696573292c20616e64207468652070726f6365737320636f6e>100 636 R -.15<7665>-.4 G -.18<7267>.15 G .759 <657320746f206d617472696365732074686174206172652065>.18 F .759<78747265 6d656c79207370617273652c207769746820757375616c6c79206e6f206d6f7265>-.15 F<7468616e>100 648 Q F4<4e>3.431 E F0 3.431<656e74726965732e204974>3.431 F .931<69732074687573206b6e6f>3.431 F .931<776e207468617420746865204d43 4c2069746572616e6473206172652073706172736520696e206120776569676874656420 73656e736520616e6420617265>-.25 F .425<757375616c6c792076>100 660 R .425 <65727920636c6f736520746f207472756c7920737061727365206d617472696365732e> -.15 F .424<5468652077>5.424 F .424<6179206d636c207065727475726273206974 73206d617472696365732069732062792074686520737472617465>-.1 F<6779>-.15 E .755<6f66207072756e696e672c2073656c656374696f6e2c20616e64207265636f>100 672 R -.15<7665>-.15 G .755<727920746861742069732065>.15 F<7874656e7369> -.15 E -.15<7665>-.25 G .755<6c792064657363726962656420696e20746865>.15 F F2 .755<6d636c206d616e75616c2070616765>3.255 F F0 5.755<2e54>C<6865> -5.755 E 1.792 <7175657374696f6e207468656e2069733a205768617420697320746865206566>100 684 R 1.791<66656374206f66207468697320706572747572626174696f6e206f6e2074 686520726573756c74696e6720636c7573746572696e672c20692e652e20686f>-.25 F <77>-.25 E -.1<776f>100 696 S .537 <756c642074686520636c7573746572696e6720726573756c74696e672066726f6d2061> .1 F F1 .537<706572666563746c7920636f6d7075746564>3.037 F F0 .537<6d636c 2070726f6365737320636f6d7061726520776974682074686520636c7573746572>3.037 F<2d>-.2 E<696e672049206861>100 708 Q .3 -.15<7665206f>-.2 H 2.5<6e64> .15 G<69736b3f>-2.5 E F1 -.75<4661>5 G 2.5<7165>.75 G<6e74727920362e33> -2.5 E F0<64697363757373657320746869732069737375652e>2.5 E<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134>.55 F <4d61792032303132>2.5 E<39>202.335 E 0 Cg EP %%Page: 10 10 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E 1<54686520616d6f756e74206f66>100 84 R/F1 10 /Times-Italic@0 SF -.37<7265>3.5 G<736f7572>.37 E<636573>-.37 E F0 1<75 736564206279206d636c20697320626f756e64656420696e207465726d73206f66207468 65206d6178696d756d206e756d626572206f66206e656967682d>3.5 F 1.51 <626f7572732061206e6f646520697320616c6c6f>100 96 R 1.511 <77656420746f206861>-.25 F 1.811 -.15<76652064>-.2 H 1.511 <7572696e6720616c6c20636f6d7075746174696f6e732e>.15 F<45717569>6.511 E -.25<7661>-.25 G<6c656e746c79>.25 E 4.011<2c74>-.65 G 1.511 <68697320697320746865206d6178696d756d>-4.011 F .26<6e756d626572206f6620 6e6f6e7a65726f20656e74726965732061206d617472697820636f6c756d6e2063616e20 706f737369626c79206861>100 108 R -.15<7665>-.2 G 2.759<2e54>.15 G .259 <686973206e756d626572>-2.759 F 2.759<2c8c>-.4 G<6e616c6c79>-2.759 E 2.759<2c69>-.65 G 2.759<7374>-2.759 G .259<6865206d6178692d>-2.759 F .281<6d756d206f6620746865207468652076>100 120 R .282 <616c75657320636f72726573706f6e64696e67207769746820746865>-.25 F/F2 10 /Times-Bold@0 SF<2d53>2.782 E F0<616e64>2.782 E F2<2d52>2.782 E F0 2.782 <6f7074696f6e732e20546865>2.782 F .282<6c6174746572207477>2.782 F 2.782 <6f61>-.1 G .282<7265206c6973746564207768656e>-2.782 F <7573696e6720746865>100 132 Q F2<2d7a>2.5 E F0 <6f7074696f6e20287365652066>2.5 E<61712031302e31292e>-.1 E F2<362e32>30 156 Q/F3 11/Times-Bold@0 SF<486f>57.5 E 2.75<7764>-.11 G 2.75<6f4963> -2.75 G<6f6d7075746520746865206d6178696d756d20616d6f756e74206f662052414d 206e6565646564206279206d636c3f>-2.75 E F0 <497420697320726f75676c7920657175616c20746f>100 180 Q/F4 10/Courier@0 SF 6<322a732a4b2a4e>100 204 S F0 .875<62797465732c207768657265203220697320 746865206e756d626572206f66206d617472696365732068656c6420696e206d656d6f72 79206279>100 228 R F2<6d636c>3.375 E F0 3.375<2c7369>C 3.375<7374>-3.375 G .875<68652073697a65206f6620612073696e676c652063656c6c>-3.375 F 1.066< 28632e712e206d617472697820656e747279206f72206e6f64652f617263207370656369 8c636174696f6e292c>100 240 R F4<4e>3.566 E F0 1.066<697320746865206e756d 626572206f66206e6f64657320696e2074686520696e7075742067726170682c20616e64> 3.566 F<7768657265>100 252 Q F4<4b>4.345 E F0 1.845 <697320746865206d6178696d756d206f66207468652076>4.345 F 1.844 <616c75657320636f72726573706f6e64696e67207769746820746865>-.25 F F2 <2d53>4.344 E F0<616e64>4.344 E F2<2d52>4.344 E F0 1.844 <6f7074696f6e732028616e642074686973>4.344 F .372 <617373756d65732074686174207468652061>100 264 R -.15<7665>-.2 G .372 <72616765206e6f6465206465>.15 F .372 <6772656520696e2074686520696e70757420677261706820646f6573206e6f742065> -.15 F<7863656564>-.15 E F4<4b>2.873 E F0 .373 <656974686572292e205468652076>2.873 F .373<616c7565206f66>-.25 F 2.663 <7363>100 276 S .163<616e20626520666f756e64206279207573696e6720746865> -2.663 F F2<2d7a>2.662 E F0 .162<6f7074696f6e2e204974206973206c69737465 6420696e206f6e65206f6620746865208c727374206c696e6573206f6620746865207265 73756c74696e67206f75747075742e2073>2.662 F .471<657175616c73207468652073 697a65206f6620616e20696e7420706c7573207468652073697a65206f662061208d6f61 742c2077686963682077696c6c2062652038206f6e206d6f73742073797374656d732e> 100 288 R .471<54686520657374696d617465>5.471 F<61626f>100 300 Q .519 -.15<76652077>-.15 H .219<696c6c20696e206d6f73742063617365732062652077> .15 F .218<617920746f6f2070657373696d697374696320286d65616e696e6720796f 7520646f206e6f74206e656564207468617420616d6f756e74206f66206d656d2d>-.1 F <6f7279292e>100 312 Q<546865>100 336 Q F2<2d686f>4.088 E <772d6d7563682d72616d>-.1 E F0 1.588<6f7074696f6e2069732070726f>4.088 F 1.589<7669646564206279206d636c20666f7220636f6d707574696e672074686520626f 756e64206769>-.15 F -.15<7665>-.25 G 4.089<6e61>.15 G<626f>-4.089 E -.15 <7665>-.15 G 4.089<2e54>.15 G<686973>-4.089 E<6f7074696f6e732074616b>100 348 Q<6573206173206172>-.1 E<67756d656e7420746865206e756d626572206f6620 6e6f64657320696e2074686520696e7075742067726170682e>-.18 E 1.106<54686520 7468656f7265746963616c6c79206d6f7265207072656369736520757070657220626f75 6e6420697320736c696768746c79206c6172>100 372 R 1.106 <6765722064756520746f206f>-.18 F -.15<7665>-.15 G 1.105 <72686561642e20497420697320736f6d657468696e67>.15 F<6c696b>100 384 Q<65> -.1 E F4 6<28322a732a28>100 408 S 6<4b2b63>-6 G<2929202a204e>-6 E F0 <776865726520632069732035206f7220736f2c2062>100 432 Q<7574206f6e65207368 6f756c64206e6f742070617920617474656e74696f6e20746f2073756368206120736d61 6c6c20646966>-.2 E<666572656e636520616e>-.25 E<7977>-.15 E<61792e>-.1 E F2<362e33>30 456 Q F3<486f>57.5 E 3.188<776d>-.11 G .438<75636820646f65 7320746865206d636c20636c7573746572696e6720646966666572206672>-3.188 F .438<6f6d2074686520636c7573746572696e672072>-.198 F .438 <6573756c74696e67206672>-.198 F .438<6f6d206120706572>-.198 F<2d>-.407 E <666563746c7920636f6d7075746564204d434c207072>100 468 Q<6f636573733f> -.198 E F0 -.15<466f>100 492 S 4.638<7267>.15 G 2.138 <7261706873207769746820757020756e74696c2061206665>-4.638 F 4.638<7774> -.25 G 2.138<686f7573616e64206e6f6465732061>-4.638 F F1 2.138 <706572666563746c7920636f6d7075746564>4.638 F F0 2.138 <4d434c2070726f636573732063616e206265>4.638 F<6163686965>100 504 Q -.15 <7665>-.25 G 2.633<6462>.15 G 2.633<7961>-2.633 G .134<62737461696e696e 672066726f6d207072756e696e6720616e6420646f696e672066756c6c2d626c6f> -2.633 F .134<776e206d61747269782061726974686d657469632e204f6620636f7572 73652c2074686973207374696c6c>-.25 F<6c6561>100 516 Q -.15<7665>-.2 G 2.5 <7374>.15 G <6865206973737565206f66206d616368696e6520707265636973696f6e2c2062>-2.5 E <7574206c65742075732077686f6c65686561727465646c792069676e6f726520746861 742e>-.2 E 2.497<537563682065>100 540 R 2.497 <78706572696d656e7473206769>-.15 F 2.797 -.15<76652065>-.25 H 2.497<7669 64656e63652028616c6265697420696e636964656e74616c292074686174207072756e69 6e6720697320696e64656564207265616c6c792077686174206974206973>-.1 F .38< 74686f7567687420746f206265202d206120736d616c6c20706572747572626174696f6e 2e20496e206d616e>100 552 R 2.88<7963>-.15 G .38<617365732c20746865202761 7070726f78696d617465642720636c7573746572696e67206973206964656e746963616c 20746f>-2.88 F 1.239<746865202765>100 564 R 1.239<786163742720636c757374 6572696e672e20496e206f746865722063617365732c20746865>-.15 F 3.738<7961> -.15 G 1.238<72652076>-3.738 F 1.238<65727920636c6f736520746f2065616368 206f7468657220696e207465726d73206f6620746865206d6574726963>-.15 F 1.283 <73706c69742f6a6f696e2064697374616e636520617320636f6d7075746564206279> 100 576 R F2 1.283<636c6d2064697374>3.783 F F0 6.283<2e53>C 1.283 <6f6d652065>-6.283 F 1.284<78706572696d656e747320776974682072616e646f6d 6c792067656e6572617465642074657374>-.15 F<6772617068732c20636c7573746572 696e672c20616e64207072756e696e67206172652064657363726962656420696e205b34 5d2e>100 588 Q 1.278<4f6e206120646966>100 612 R 1.277 <666572656e74206c65>-.25 F -.15<7665>-.25 G 3.777<6c6f>.15 G 3.777<6661> -3.777 G 1.277<62737472616374696f6e2c206e6f7465207468617420706572747572 626174696f6e73206f662074686520696e8d6174696f6e20706172616d65746572207769 6c6c20616c736f>-3.777 F .039<6c65616420746f20706572747572626174696f6e73 20696e2074686520726573756c74696e6720636c7573746572696e67732c20616e642073 7572656c79>100 624 R 2.539<2c6c>-.65 G<6172>-2.539 E .04 <6765206368616e67657320696e2074686520696e8d6174696f6e20706172616d2d>-.18 F .307<657465722077696c6c20696e2067656e6572616c206c65616420746f206c6172> 100 636 R .306<67652073686966747320696e2074686520636c7573746572696e6773 2e204e6f64652f636c757374657220706169727320746861742061726520646966>-.18 F .306<666572656e7420666f72>-.25 F 1.027 <74686520617070726f78696d6174656420616e64207468652065>100 648 R 1.027 <7861637420636c7573746572696e672077696c6c2076>-.15 F 1.027 <657279206c696b>-.15 F 1.028<656c7920636f72726573706f6e642077697468206e 6f64657320746861742061726520696e2061>-.1 F .382<626f756e64617279207265> 100 660 R .382<67696f6e206265747765656e207477>-.15 F 2.882<6f6f>-.1 G 2.882<726d>-2.882 G .381<6f726520636c75737465727320616e>-2.882 F<7977> -.15 E<6179>-.1 E 2.881<2c61>-.65 G 2.881<7374>-2.881 G .381 <686520706572747572626174696f6e206973206e6f74206c696b>-2.881 F .381 <656c7920746f206d6f>-.1 F -.15<7665>-.15 G 2.5<616e>100 672 S<6f64652066 726f6d206f6e6520636f7265206f662061747472616374696f6e20746f20616e6f746865 722e>-2.5 E F1 -.75<4661>100 696 S 2.5<7165>.75 G<6e74727920362e36>-2.5 E F0 <686173206d6f726520746f207361792061626f75742074686973207375626a6563742e> 2.5 E F2<362e34>30 720 Q F3<486f>57.5 E 2.75<7764>-.11 G 2.75<6f496b> -2.75 G<6e6f>-2.75 E 2.75<7774>-.11 G <686174204920616d207573696e6720656e6f7567682072>-2.75 E<65736f7572>-.198 E<6365733f>-.198 E F0<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134>.55 F<4d61792032303132>2.5 E<3130>197.335 E 0 Cg EP %%Page: 11 11 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E<496e>100 84 Q/F1 10/Times-Bold@0 SF<6d636c> 3.863 E F0 1.363<7061726c616e63652c2074686973206265636f6d6573>3.863 F/F2 10/Times-Italic@0 SF 1.364<686f7720646f2049206b6e6f772074686174206d79> 3.864 F F1<2d736368656d65>3.864 E F2<706172>3.864 E 1.364 <616d65746572206973206869676820656e6f756768>-.15 F F0<6f72>3.864 E .269 <6d6f726520656c61626f726174656c79>100 96 R F2 .268<686f7720646f2049206b 6e6f772074686174207468652076616c756573206f6620746865207b2d50>2.769 F 2.768<2c2d>-1.35 G .268<532c202d522c202d7063747d20636f6d626f206172> -2.768 F 2.768<6568>-.37 G .268<69676820656e6f7567683f>-2.768 F F0 .432 <546865726520617265207365>100 120 R -.15<7665>-.25 G .432 <72616c20617370656374732e2046697273742c2077>.15 F .432<6174636820746865> -.1 F F2 .432<6a757279206d61726b73>2.932 F F0 .433 <7265706f72746564206279>2.933 F F1<6d636c>2.933 E F0 .433 <7768656e20697427>2.933 F 2.933<7364>-.55 G 2.933<6f6e652e20546865> -2.933 F<6a757279>2.933 E .5<6d61726b7320617265207468726565206772616465 732c2065616368206f7574206f66203130302e20546865>100 132 R 3<7969>-.15 G .5<6e64696361746520686f>-3 F 3<7777>-.25 G .5 <656c6c207072756e696e672077656e742e20496620746865206d61726b7320617265>-3 F 1.077<696e20746865207365>100 144 R -.15<7665>-.25 G 1.077<6e746965732c 2065696768746965732c206f72206e696e65746965732c206d636c2069732070726f6261 626c7920646f696e67208c6e652e20496620746865>.15 F 3.577<7961>-.15 G 1.077 <726520696e20746865206569676874696573206f72>-3.577 F<6c6f>100 156 Q <776572>-.25 E 3.243<2c74>-.4 G .743<727920746f2073656520696620796f7520 63616e2067657420746865206d61726b7320686967686572206279207370656e64696e67 206d6f7265207265736f75726365732028652e672e20696e63726561736520746865> -3.243 F<706172616d6574657220746f20746865>100 168 Q F1<2d736368656d65> 2.5 E F0<6f7074696f6e292e>2.5 E .277 <5365636f6e642c20796f752063616e20646f206d756c7469706c65>100 192 R F1 <6d636c>2.778 E F0 .278<72756e7320666f7220646966>2.778 F .278<666572656e 74207265736f7572636520736368656d65732c20616e6420636f6d706172652074686520 726573756c74696e67>-.25 F<636c7573746572696e6773207573696e67>100 204 Q F1<636c6d2064697374>2.5 E F0 2.5<2e53>C<656520746865>-2.5 E F1 <636c6d64697374206d616e75616c>2.5 E F0 <666f72206120636173652073747564792e>2.5 E F1<362e35>30 228 Q/F3 11 /Times-Bold@0 SF<57686572>57.5 E 2.75<6569>-.198 G 2.75<7374>-2.75 G<68 65206d617468656d61746963616c20616e616c79736973206f662074686973206d636c20 7072756e696e672073747261746567793f>-2.75 E F0 <5468657265206973206e6f6e652e205b6164645d>100 252 Q <4f6b2c20746865206e65>100 276 Q<787420656e747279206769>-.15 E -.15<7665> -.25 G 2.5<7361>.15 G 2.5<6e65>-2.5 G<6e67696e65657227>-2.5 E 2.5<7372> -.55 G<756c65206f66207468756d622e>-2.5 E F1<362e36>30 300 Q F3 <57686174207175616c6974617469>57.5 E .22 -.11<76652073>-.11 H<746174656d 656e74732063616e206265206d6164652061626f75742074686520656666656374206f66 207072756e696e673f>.11 E F0 .698<546865206d6f7265207365>100 324 R -.15 <7665>-.25 G .697<7265207072756e696e672069732c20746865206d6f726520746865 20636f6d70757465642070726f636573732077696c6c2074656e6420746f20636f6e>.15 F -.15<7665>-.4 G -.18<7267>.15 G 3.197<6570>.18 G <72656d61747572656c792e>-3.197 E .171 <546869732077696c6c2067656e6572616c6c79206c65616420746f208c6e6572>100 336 R .171<2d677261696e656420636c7573746572696e67732e>-.2 F .172 <496e206361736573207768657265207072756e696e672077>5.171 F .172 <6173207365>-.1 F -.15<7665>-.25 G .172<72652c20746865>.15 F F1<6d636c> 2.672 E F0 .661<636c7573746572696e672077696c6c206c696b>100 348 R .661<65 6c7920626520636c6f73657220746f206120636c7573746572696e6720696465616c6c79 20726573756c74696e672066726f6d20616e6f74686572204d434c2070726f6365737320 77697468>-.1 F 2.111<68696768657220696e8d6174696f6e2076>100 360 R 2.112< 616c75652c207468616e20746f2074686520636c7573746572696e6720696465616c6c79 20726573756c74696e672066726f6d207468652073616d65204d434c2070726f63657373 2e>-.25 F 1.077<5374726f6e6720737570706f727420666f7220746869732069732066 6f756e6420696e20612067656e6572616c206f6273657276>100 372 R 1.076 <6174696f6e20696c6c75737472617465642062792074686520666f6c6c6f>-.25 F 1.076<77696e672065>-.25 F<78616d706c652e>-.15 E <537570706f7365207520697320612073746f636861737469632076>100 384 Q <6563746f7220726573756c74696e672066726f6d2065>-.15 E<7870616e73696f6e3a> -.15 E/F4 10/Courier@0 SF 18<753d>100 408 S<302e33303020302e32303020302e 32303020302e31303020302e30353020302e30353020302e30353020302e303530>-6 E F0<4170706c79696e6720696e8d6174696f6e207769746820696e8d6174696f6e2076> 100 432 Q<616c756520322e3020746f2075206769>-.25 E -.15<7665>-.25 G<73> .15 E F4 18<763d>100 456 S<302e34373420302e32313120302e32313120302e3035 3320302e30313320302e30313320302e30313320302e303133>-6 E F0<4e6f>100 480 Q 3.242<7773>-.25 G .743<7570706f7365207765208c727374206170706c79207072 756e696e6720746f207520737563682074686174207468652033206c6172>-3.242 F .743 <6765737420656e747269657320302e3330302c20302e32303020616e6420302e323030> -.18 F<7375727669>100 492 Q -.15<7665>-.25 G 2.585<2c74>.15 G<68726f> -2.585 E .085<77696e672061>-.25 F -.1<7761>-.15 G 2.584<7933>.1 G 2.584 <3070>-2.584 G .084<657263656e74206f66207468652073746f63686173746963206d 617373202877686963682069732071756974652061206c6f7420627920616c6c206d6561 6e73292e>-2.584 F -.8<5765>5.084 G<72657363616c652074686f73652074687265 6520656e747269657320616e64206f627461696e>100 504 Q F4 6 <7527203d20302e343239>100 528 R<302e32383620302e32383620302e30303020302e 30303020302e30303020302e30303020302e303030>6 E F0 <4170706c79696e6720696e8d6174696f6e207769746820696e8d6174696f6e2076>100 552 Q<616c756520322e3020746f207527206769>-.25 E -.15<7665>-.25 G<73>.15 E F4 6<7627203d20302e353239>100 576 R<302e32333520302e32333520302e303030 20302e30303020302e30303020302e30303020302e303030>6 E F0<4966207765206861 64206170706c69656420696e8d6174696f6e207769746820696e8d6174696f6e2076>100 600 Q<616c756520322e3520746f20752c2077652077>-.25 E<6f756c64206861>-.1 E .3 -.15<7665206f>-.2 H<627461696e6564>.15 E F4<762727203d>100 624 Q<302e 35333120302e32303120302e32303120302e30333820302e30303720302e30303720302e 30303720302e303037>12 E F0 .887<5468652076>100 648 R .888<6563746f727320 762720616e642076272720617265206d75636820636c6f73657220746f2065616368206f 74686572207468616e207468652076>-.15 F .888 <6563746f727320762720616e642076>-.15 F 3.388<2c69>-.65 G .888 <6c6c757374726174696e6720746865>-3.388 F<67656e6572616c20696465612e>100 660 Q<496e2070726163746963652c>100 684 Q F1<6d636c>2.5 E F0 <73686f756c6420286f6e2061>2.5 E -.15<7665>-.2 G <726167652920646f206d75636820626574746572207468616e20696e20746869732065> .15 E<78616d706c652e>-.15 E F1<362e37>30 708 Q F3 .537 <417420646966666572>57.5 F .537<656e7420686967682072>-.198 F<65736f7572> -.198 E .536<6365206c65>-.198 F -.11<7665>-.165 G .536 <6c73206d7920636c7573746572696e6773206172>.11 F 3.286<656e>-.198 G .536 <6f74206964656e746963616c2e>-3.286 F<486f>6.036 E 3.286<7763>-.11 G .536 <616e2049207472757374>-3.286 F <746865206f757470757420636c7573746572696e673f>100 720 Q F0<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134>.55 F <4d61792032303132>2.5 E<3131>197.335 E 0 Cg EP %%Page: 12 12 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E .403<44696420796f75207265616420616c6c206f7468 657220656e747269657320696e20746869732073656374696f6e3f20546861742073686f 756c64206861>100 84 R .703 -.15<76652072>-.2 H .403 <656173737572656420796f7520736f6d65>.15 F .403<776861742c2065>-.25 F <7863657074>-.15 E<7065726861707320666f72>100 96 Q/F1 10/Times-Italic@0 SF -.75<4661>2.5 G 2.5<7161>.75 G<6e7377657220362e35>-2.5 E F0<2e>A -1.1 <596f>100 120 S 2.705<756e>1.1 G .205<656564206e6f74206665656c20756e636f 6d666f727461626c6520776974682074686520636c7573746572696e6773207374696c6c 206265696e6720646966>-2.705 F .205 <666572656e742061742068696768207265736f75726365206c65>-.25 F -.15<7665> -.25 G<6c732c>.15 E .468<69662065>100 132 R -.15<7665>-.25 G 2.968<7273> .15 G 2.968<6f73>-2.968 G .468<6c696768746c792e20496e20616c6c206c696b> -2.968 F .468<656c69686f6f642c2074686572652061726520616e>-.1 F<7977>-.15 E .468<6179206e6f64657320776869636820617265206e6f7420696e20616e>-.1 F 2.969<7963>-.15 G .469<6f7265206f66206174747261632d>-2.969 F .937<74696f 6e2c20616e64207468617420617265206f6e2074686520626f756e646172792062657477 65656e207477>100 144 R 3.436<6f6f>-.1 G 3.436<726d>-3.436 G .936 <6f726520636c7573746572696e67732e20546865>-3.436 F 3.436<796d>-.15 G .936<617920676f206f6e652077>-3.436 F .936<6179206f72>-.1 F <616e6f74686572>100 156 Q 2.859<2c61>-.4 G .359<6e6420746865736520617265 20746865206e6f6465732077686963682077696c6c20676f20646966>-2.859 F .359 <666572656e742077>-.25 F .36<6179732065>-.1 F -.15<7665>-.25 G 2.86 <6e61>.15 G 2.86<7468>-2.86 G .36<696768207265736f75726365206c65>-2.86 F -.15<7665>-.25 G .36<6c732e2053756368>.15 F .787<6e6f646573206d61792062 6520737461626c6520696e20636c7573746572696e6773206f627461696e656420666f72 206c6f>100 168 R .787<77657220696e8d6174696f6e2076>-.25 F .787 <616c7565732028692e652e20636f617273657220636c7573746572696e6773292c>-.25 F<696e2077686963682074686520646966>100 180 Q <666572656e7420636c75737465727320746f20776869636820746865>-.25 E 2.5 <7961>-.15 G<72652061747472616374656420617265206d6572>-2.5 E<6765642e> -.18 E .645<4279207468652077>100 204 R<6179>-.1 E 3.145<2c79>-.65 G .645 <6f7520646f206b6e6f>-3.145 F 3.145<7761>-.25 G .646<6c6c2061626f7574> -3.145 F/F2 10/Times-Bold@0 SF .646<636c6d2064697374>3.146 F F0 3.146 <2c64>C<6f6e27>-3.146 E 3.146<7479>-.18 G .646<6f753f204265636175736520 7468652073746174656d656e74207468617420636c7573746572696e6773>-3.146 F .853<617265206e6f74206964656e746963616c2073686f756c64206265207175616e74 698c65643a>100 216 R F1 .853<486f77206d7563>3.353 F 3.353<6864>-.15 G 3.353<6f74>-3.353 G<6865>-3.353 E 3.353<7964>-.3 G<6966>-3.353 E <6665723f>-.18 E F0 .853 <546869732069737375652069732064697363757373656420696e20746865>3.353 F F2 1.515<636c6d2064697374>100 228 R F0 1.515<6d616e75616c207061676520ad> 4.015 F F2 1.515<636c6d2064697374>4.015 F F0<6769>4.015 E -.15<7665>-.25 G 4.015<7379>.15 G 1.515<6f75206120726f62>-4.015 F 1.516<757374206d6561 7375726520666f72207468652064697374616e6365202864697373696d696c6172697479 29>-.2 F<6265747765656e207477>100 240 Q 2.5<6f63>-.1 G <6c7573746572696e67732e>-2.5 E 1.532 <546865726520617265206f74686572206d65616e73206f662067>100 264 R 1.531<61 696e696e6720747275737420696e206120636c7573746572696e672c20616e6420746865 72652061726520646966>-.05 F 1.531 <666572656e742069737375657320617420706c61792e>-.25 F .196 <546865726520697320746865206d6174746572206f6620686f>100 276 R 2.696 <7761>-.25 G .196<636375726174656c792074686973>-2.696 F F2<6d636c>2.696 E F0 .196<636f6d707574656420746865206d636c2070726f636573732c20616e642074 6865726520697320746865206d6174746572>2.696 F .107<6f6620686f>100 288 R 2.607<7777>-.25 G .106<656c6c207468652063686f73656e20696e8d6174696f6e20 706172616d65746572208c74732074686520646174612e20546865208c7273742063616e 206265206a7564676564206279206c6f6f6b696e6720617420746865>-2.607 F .22 <6a757279206d61726b732028>100 300 R F1<66617120362e34>A F0 2.72<2961>C .22<6e64206170706c79696e67>-2.72 F F2 .221<636c6d2064697374>2.72 F F0 .221<746f20646966>2.721 F .221<666572656e7420636c7573746572696e67732e20 546865207365636f6e642063616e206265206a7564676564206279>-.25 F <6d6561737572656d656e742028652e672e20757365>100 312 Q F2<636c6d20696e66> 2.5 E<6f>-.25 E F0 2.5<2961>C<6e642f6f7220696e7370656374696f6e2028757365 20796f7572206a7564676d656e74292e>-2.5 E/F3 12/Times-Bold@0 SF -1.104 <5475>226.212 336 S<6e696e6720636c7573746572206772616e756c6172697479> 1.104 E F2<372e31>30 360 Q/F4 11/Times-Bold@0 SF<486f>57.5 E 2.75<7764> -.11 G 2.75<6f4974>-2.75 G <756e6520636c7573746572206772616e756c61726974793f>-2.75 E F0 .786 <546865726520617265207365>100 384 R -.15<7665>-.25 G .786<72616c2077>.15 F .785<61797320666f7220696e8d75656e63696e6720636c7573746572206772616e75 6c61726974792e2054686573652077>-.1 F .785 <61797320616e642074686569722072656c617469>-.1 F 1.085 -.15<7665206d>-.25 H<6572697473>.15 E<617265207375636365737369>100 396 Q -.15<7665>-.25 G <6c79206469736375737365642062656c6f>.15 E 2.5<772e2052656164696e67>-.25 F F2<636c6d7072>2.5 E<6f746f636f6c73283529>-.18 E F0 <697320616c736f206120676f6f6420696465612e>2.5 E F2<372e32>30 420 Q F4<54 686520656666656374206f6620696e8d6174696f6e206f6e20636c757374657220677261 6e756c61726974792e>57.5 E F0 .286<546865206d61696e2068616e646c6520666f72 206368616e67696e6720696e8d6174696f6e20697320746865>100 444 R F2<2d49> 2.786 E F0 .286<6f7074696f6e2e205468697320697320616c736f>2.786 F F1 <746865>2.786 E F0 .286<7072696e636970616c2068616e646c6520666f72207265> 2.786 F<672d>-.15 E .203<756c6174696e6720636c7573746572206772616e756c61 726974792e20556e6c65737320796f7520617265206d616e676c696e6720687567652067 726170687320697420636f756c6420626520746865206f6e6c79>100 456 R F2 <6d636c>2.702 E F0<6f7074696f6e>2.702 E<796f752065>100 468 Q -.15<7665> -.25 G 2.5<726e>.15 G<656564206265736964657320746865206f7574707574207265 646972656374696f6e206f7074696f6e>-2.5 E F2<2d6f>2.5 E F0<2e>A .827 <496e6372656173696e67207468652076>100 492 R .828<616c7565206f66>-.25 F F2<2d49>3.328 E F0 .828 <77696c6c20696e63726561736520636c7573746572206772616e756c61726974792e> 3.328 F<436f6e636569>5.828 E -.25<7661>-.25 G .828<626c652076>.25 F .828 <616c756573206172652066726f6d20312e3120746f>-.25 F .42 <31302e30206f7220736f2c2062>100 504 R .42 <7574207468652072616e6765206f66207375697461626c652076>-.2 F .419<616c75 65732077696c6c206365727461696e6c7920646570656e64206f6e20796f757220696e70 75742067726170682e2046>-.25 F .419<6f72206d616e>-.15 F<79>-.15 E .065 <6772617068732c20312e312077696c6c2062652066>100 516 R .065 <617220746f6f206c6f>-.1 F 1.365 -.65<772c2061>-.25 H .065 <6e6420666f72206d616e>.65 F 2.565<796f>-.15 G .066 <74686572206772617068732c20382e302077696c6c2062652066>-2.565 F .066 <617220746f6f20686967682e2059>-.1 F .066<6f752077696c6c206861>-1.1 F -.15<7665>-.2 G .092<746f208c6e64207468652072696768742076>100 528 R .092 <616c7565206f722072616e6765206f662076>-.25 F .092<616c7565732062792065> -.25 F .092<78706572696d656e74696e672c207573696e6720796f7572206a7564676d 656e742c20616e64207573696e67206d65612d>-.15 F <737572656d656e7420746f6f6c732073756368206173>100 540 Q F2 <636c6d2064697374>2.5 E F0<616e64>2.5 E F2<636c6d20696e66>2.5 E<6f>-.25 E F0 2.5<2e4167>C<6f6f6420736574206f662076>-2.5 E<616c75657320746f207374 617274207769746820697320312e342c203220616e6420362e>-.25 E F2<372e33>30 564 Q F4<54686520656666656374206f66206e6f64652064656772>57.5 E <656573206f6e20636c7573746572206772616e756c61726974792e>-.198 E F0 1.592 <50726566657261626c7920746865206e657477>100 588 R 1.592 <6f726b2073686f756c64206e6f74206861>-.1 F 1.892 -.15<7665206e>-.2 H 1.592<6f646573206f662076>.15 F 1.592<6572792068696768206465>-.15 F 1.592 <677265652c20746861742069732c20776974682065>-.15 F <786f72626974616e746c79>-.15 E<6d616e>100 600 Q 2.827<796e>-.15 G .327< 65696768626f7572732e2053756368206e6f6465732074656e6420746f206f6273637572 6520636c75737465722073747275637475726520616e6420636f6e74726962>-2.827 F .327<75746520746f20636f6172736520636c7573746572732e>-.2 F 1.025 <5468652077>100 612 R 1.025 <61797320746f20636f6d6261742074686973207573696e67>-.1 F F2<6d636c>3.525 E F0 1.026<616e64207369626c696e672070726f6772616d732061726520646f63756d 656e74656420696e>3.525 F F2<636c6d7072>3.526 E<6f746f636f6c73283529>-.18 E F0<2e>A<427269658d79>100 624 Q 2.768<2c74>-.65 G<6865>-2.768 E 2.768 <7961>-.15 G .268<726520746865207472616e73666f726d6174696f6e73>-2.768 F /F5 10/Courier@0 SF<236b6e6e2829>2.768 E F0<616e64>2.768 E F5 <236365696c6e622829>2.768 E F0 -.2<6176>2.768 G .268 <61696c61626c6520746f>-.05 F F2<6d636c>2.767 E F0<2c>A F2 .267 <6d637820616c746572>2.767 F F0<616e64>2.767 E<7365>100 636 Q -.15<7665> -.25 G<72616c206d6f72652070726f6772616d732e>.15 E F2<372e34>30 660 Q F4 <54686520656666656374206f6620656467652077656967687420646966666572>57.5 E <656e74696174696f6e206f6e20636c7573746572206772616e756c61726974792e> -.198 E F0<486f>100 684 Q 3.513<7773>-.25 G 1.013<696d696c61726974696573 20696e2074686520696e70757420677261706820776572652064657269>-3.513 F -.15 <7665>-.25 G 1.013<642c20636f6e73747275637465642c20616461707465642c208c 6c74657265642028657420636574657261292077696c6c>.15 F<6166>100 696 Q <6665637420636c7573746572206772616e756c61726974792e>-.25 E<497420697320 696d706f7274616e742074686174207468652073696d696c617269746965732061726520 686f6e6573743b20726566657220746f>5 E F1<66617120332e38>2.5 E F0<2e>A .277<416e6f74686572206973737565206973207468617420686f6d6f67656e656f7573 2073696d696c617269746965732074656e6420746f20726573756c7420696e206d6f7265 20636f617273652d677261696e656420636c7573746572696e67732e>100 720 R <4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134> .55 F<4d61792032303132>2.5 E<3132>197.335 E 0 Cg EP %%Page: 13 13 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E -1.1<596f>100 84 S 2.747<7563>1.1 G .247 <616e206d616b>-2.747 F 2.747<656173>-.1 G .248<6574206f662073696d696c61 726974696573206d6f726520686f6d6f67656e656f7573206279206170706c79696e6720 736f6d652066756e6374696f6e20746f20616c6c206f66207468656d2c>-2.747 F .837 <652e672e20666f7220616c6c207061697273206f66206e6f6465732028782079292072 65706c616365205328782c7929206279207468652073717561726520726f6f742c207468 65206c6f67>100 96 R .837<61726974686d2c206f7220736f6d65206f74686572>-.05 F<636f6e>100 108 Q 1.032 -.15<7665782066>-.4 H .732 <756e6374696f6e2e204e6f7465207468617420796f75206e656564206e6f742077>.15 F .732<6f7272792061626f7574207363616c696e672c20692e652e2074686520706f73 7369626c79206c6172>-.1 F .732<6765206368616e67657320696e>-.18 F .254<6d 61676e6974756465206f66207468652073696d696c617269746965732e204d434c206973 206e6f74206166>100 120 R .254<666563746564206279206162736f6c757465206d61 676e6974756465732c206974206973206f6e6c79206166>-.25 F .254 <666563746564206279>-.25 F<6d61676e6974756465732074616b>100 132 Q <656e2072656c617469>-.1 E .3 -.15<76652074>-.25 H 2.5<6f65>.15 G <616368206f746865722e>-2.5 E .671<4173206f662076>100 156 R .671<65727369 6f6e2030332d3135342c206d636c20737570706f72747320746865207072652d696e8d61 74696f6e>-.15 F/F1 10/Times-Bold@0 SF<2d7069>3.171 E/F2 10 /Times-Italic@0 SF<66>2.5 E F0 3.172<6f7074696f6e2e204d616b>3.172 F 3.172<656167>-.1 G .672<72617068206d6f726520686f6d6f67652d>-3.172 F .059 <6e656f75732077697468207265737065637420746f2074686520776569676874206675 6e6374696f6e206279207573696e67>100 168 R F1<2d7069>2.559 E F0 .059 <77697468206172>2.559 F<67756d656e74>-.18 E F2<66>2.559 E F0<736f6d65> 2.558 E .058<776865726520696e2074686520696e74657276>-.25 F<616c>-.25 E .001<5b302c315d20ad20302e352063616e20626520636f6e7369646572656420612072 6561736f6e61626c65208c727374207472792e>100 180 R<4d616b>5.001 E 2.501 <6569>-.1 G 2.501<746c>-2.501 G .001 <65737320686f6d6f67656e656f75732062792073657474696e67>-2.501 F F2<66> 2.502 E F0<736f6d652d>2.502 E<776865726520696e2074686520696e74657276>100 192 Q<616c205b312c31305d2e>-.25 E<496e2074686973206361736520332069732061 20726561736f6e61626c65207374617274696e6720706f696e742e>5 E/F3 12 /Times-Bold@0 SF <496d706c656d656e74696e6720746865204d434c20616c676f726974686d>206.172 216 Q F1<382e31>30 240 Q/F4 11/Times-Bold@0 SF<486f>57.5 E 2.75<7765> -.11 G<61737920697320697420746f20696d706c656d656e7420746865204d434c2061 6c676f726974686d3f>-2.75 E F0 -1.11<5665>100 264 S 1.413<72792065617379> 1.11 F 3.913<2c69>-.65 G 3.913<6679>-3.913 G 1.412 <6f752077696c6c20626520646f696e6720736d616c6c20677261706873206f6e6c79> -3.913 F 3.912<2c73>-.65 G 1.412<617920757020746f2061206665>-3.912 F 3.912<7774>-.25 G 1.412 <686f7573616e6420656e7472696573206174206d6f73742e>-3.912 F <5468657365206172652074686520626173696320696e6772656469656e74733a>100 276 Q 15<6f41>100 300 S <6464696e67206c6f6f707320746f2074686520696e7075742067726170682c20636f6e> -15 E -.15<7665>-.4 G <7273696f6e20746f20612073746f63686173746963206d61747269782e>.15 E 15 <6f4d>100 312 S<6174726978206d756c7469706c69636174696f6e20616e64206d6174 72697820696e8d6174696f6e2e>-15 E 15<6f54>100 324 S<686520696e7465727072 65746174696f6e2066756e6374696f6e206d617070696e67204d434c206c696d69747320 6f6e746f20636c7573746572696e67732e>-15 E .574<5468657365206d757374206265 207772617070656420696e20612070726f6772616d207468617420646f65732067726170 6820696e70757420616e6420636c7573746572206f75747075742c20616c7465726e6174 6573206d756c74692d>100 348 R .782<706c69636174696f6e2028692e652e2065>100 360 R .781<7870616e73696f6e2920616e6420696e8d6174696f6e20696e2061206c6f 6f702c206d6f6e69746f727320746865206d61747269782069746572616e647320746875 7320666f756e642c207175697473>-.15 F<746865206c6f6f70207768656e20636f6e> 100 372 Q -.15<7665>-.4 G -.18<7267>.15 G<656e63652069732064657465637465 642c20616e6420696e746572707265747320746865206c6173742069746572616e642e> .18 E .628<496d706c656d656e74696e67206d6174726978206d756c69706c69636174 696f6e2069732061207374616e646172642065>100 396 R -.15<7865>-.15 G .628< 72636973652e20496d706c656d656e74696e6720696e8d6174696f6e206973206e656172 6c7920747269>.15 F<762d>-.25 E .689<69616c2e2054686520686172646573742070 617274206d61792061637475616c6c792062652074686520696e74657270726574617469 6f6e2066756e6374696f6e2c206265636175736520796f75206e65656420746f20636f> 100 408 R -.15<7665>-.15 G 3.188<7274>.15 G<6865>-3.188 E 1.412 <636f726e6572206361736573206f66206f>100 420 R -.15<7665>-.15 G 1.413<72 6c617020616e6420617474726163746f722073797374656d73206f662063617264696e61 6c6974792067726561746572207468616e206f6e652e204e6f74652074686174204d434c> .15 F<646f6573206e6f742075736520696e7472696361746520616e642065>100 432 Q <7870656e7369>-.15 E .3 -.15<7665206f>-.25 H <7065726174696f6e732073756368206173206d617472697820696e>.15 E -.15<7665> -.4 G<7273696f6e206f72206d617472697820726564756374696f6e732e>.15 E .347< 496e204d617468656d6174696361206f72204d61706c652c206d636c2073686f756c6420 626520646f61626c6520696e206174206d6f737420313030206c696e6573206f6620636f 64652e>100 456 R -.15<466f>5.347 G 2.847<7270>.15 G .347 <65726c20796f75206d6179>-2.847 F 1.162 <6e656564207477696365207468617420616d6f756e742e20496e206c6f>100 468 R 1.162<776572206c65>-.25 F -.15<7665>-.25 G 3.662<6c6c>.15 G 1.162 <616e67756167657320737563682061732043206f722046>-3.662 F 1.162 <6f727472616e2061206261736963204d434c2070726f6772616d>-.15 F .58 <6d6179206e6565642061206665>100 480 R 3.08<7768>-.25 G .58 <756e64726564206c696e65732c2062>-3.08 F .579<757420746865206c6172>-.2 F .579<6765737420706172742077696c6c2070726f6261626c7920626520696e7075742f 6f757470757420616e6420696e74657270726574612d>-.18 F<74696f6e2e>100 492 Q 2.74 -.8<546f2069>100 516 T 1.14 <6c6c7573747261746520616c6c20746865736520706f696e74732c206d636c206e6f>.8 F 3.641<7773>-.25 G 1.141<686970732077697468>-3.641 F F2<6d696e696d636c> 3.641 E F0 3.641<2c6173>C 1.141 <6d616c6c207065726c20736372697074207468617420696d706c656d656e7473>-3.641 F<6d636c20666f7220656475636174696f6e616c20707572706f7365732e>100 528 Q <497473207374727563747572652069732076>5 E<6572792073696d706c6520616e6420 73686f756c64206265206561737920746f20666f6c6c6f>-.15 E<772e>-.25 E 1.117< 496d706c656d656e74696e6720746865206261736963204d434c20616c676f726974686d 206d616b>100 552 R 1.117<65732061206e6963652070726f6772616d6d696e672065> -.1 F -.15<7865>-.15 G 1.116<72636973652e20486f>.15 F<7765>-.25 E -.15 <7665>-.25 G 1.916 -.4<722c2069>.15 H 3.616<6679>.4 G<6f75>-3.616 E 1.953<6e65656420616e20696d706c656d656e746174696f6e2074686174207363616c65 7320746f207365>100 564 R -.15<7665>-.25 G 1.953<72616c2068756e6472656473 206f662074686f7573616e6473206f66206e6f64657320616e6420706f737369626c79> .15 F<6265>100 576 Q 2.228<796f6e642c207468656e20796f757220647574696573 206265636f6d65206d75636820686561>-.15 F 2.228<766965722e2054686973206973 2062656361757365206f6e65206e6565647320746f207072756e65204d434c>-.2 F .251<69746572616e64732028632e712e206d6174726963657329207375636820746861 7420746865>100 588 R 2.751<7972>-.15 G .252<656d61696e207370617273652e20 54686973206d75737420626520646f6e65206361726566756c6c7920616e642070726566 657261626c79>-2.751 F 1.19<696e207375636820612077>100 600 R 1.19 <6179207468617420612074726164652d6f66>-.1 F 3.689<6662>-.25 G 1.189<6574 7765656e2073706565642c206d656d6f72792075736167652c20616e6420706f74656e74 69616c206c6f73736573206f722067>-3.689 F 1.189<61696e7320696e>-.05 F <61636375726163>100 612 Q 3.459<7963>-.15 G .959<616e20626520636f6e7472 6f6c6c656420766961206d6f6e69746f72696e6720616e64206c6f6767696e67206f6620 72656c65>-3.459 F -.25<7661>-.25 G .959 <6e74206368617261637465726973746963732e>.25 F .96<536f6d65206f74686572> 5.96 F 1.154<706f696e74732061726520692920737570706f727420666f7220746872 656164696e67207669612070746872656164732c206f70656e4d50>100 624 R 3.654 <2c6f>-1.11 G 3.654<7273>-3.654 G 1.153 <6f6d65206f7468657220706172616c6c656c2070726f6772616d6d696e67>-3.654 F 3.923<4150492e20696929>100 636 R 3.923<6172>3.923 G<6f62>-3.923 E 1.424< 75737420616e642067656e6572696320696e746572707265746174696f6e2066756e6374 696f6e206973207772697474656e20696e207465726d73206f66207765616b6c7920636f 6e6e6563746564>-.2 F<636f6d706f6e656e74732e>100 648 Q F3 <436c7573746572206f>159.306 672 Q -.12<7665>-.12 G <726c6170202f204d434c2069746572616e6420636c757374657220696e746572>.12 E <7072>-.12 E<65746174696f6e>-.216 E F1<392e31>30 696 Q F4<496e7472>57.5 E<6f64756374696f6e>-.198 E F0 3.493<416e>100 720 S .993 <61747572616c206d617070696e672065>-3.493 F .992 <7869737473206f66204d434c2069746572616e647320746f2044>-.15 F -.4<4147> -.4 G 3.492<7328>.4 G .992<6469726563746564206163>-3.492 F .992 <79636c696320677261706873292e20546869732069732062656361757365>-.15 F <4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134> .55 F<4d61792032303132>2.5 E<3133>197.335 E 0 Cg EP %%Page: 14 14 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E 1.547 <4d434c2069746572616e6473206172652067656e6572616c6c79>100 84 R/F1 10 /Times-Italic@0 SF<646961>4.048 E 1.548 <676f6e616c6c7920706f7369746976652073656d692d64658c6e697465>-.1 F F0 4.0484.048 G 1.548<6565205b335d2e>-4.048 F 1.548<5375636820612044> 6.548 F 2.348 -.4<41472063>-.4 H 1.548<616e206265>.4 F .936<696e74657270 7265746564206173206120636c7573746572696e672c2073696d706c792062792074616b 696e6720617320636f72657320616c6c20656e646e6f646573202873696e6b7329206f66 207468652044>100 96 R -.4<4147>-.4 G 3.435<2c61>.4 G .935<6e64206279> -3.435 F .731<617474616368696e6720746f206561636820636f726520616c6c207468 65206e6f64657320746861742072656163682069742e20546869732070726f6365647572 65206d617920726573756c7420696e20636c7573746572696e677320636f6e2d>100 108 R<7461696e696e67206f>100 120 Q -.15<7665>-.15 G<726c61702e>.15 E 1.001 <496e20746865204d434c206c696d69742c20746865206173736f6369617465642044> 100 144 R 1.801 -.4<41472068>-.4 H 1.001 <617320696e2067656e6572616c20612076>.4 F 1<657279206465>-.15 F 1 <67656e65726174656420666f726d2c20776869636820696e6475636573>-.15 F -.15 <6f7665>100 156 S<726c6170206f6e6c79206f6e2076>.15 E <6572792072617265206f63636173696f6e732028736565>-.15 E F1 <66617120656e74727920392e32>2.5 E F0<292e>A<496e74657270726574696e67>100 180 Q/F2 10/Times-Bold@0 SF<6d636c>3.975 E F0 1.476<69746572616e64732061 7320636c7573746572696e6773206d61792077656c6c20626520696e746572657374696e 672e>3.975 F<4665>6.476 E 3.976<7765>-.25 G 1.476 <78706572696d656e7473206861>-4.126 F 1.776 -.15<76652062>-.2 H<65656e> .15 E .317<646f6e6520736f2066>100 192 R .317<61722e20497420697320636c65 61722074686f7567682074686174206561726c792069746572616e64732067656e657261 6c6c7920636f6e7461696e20746865206d6f7374206f>-.1 F -.15<7665>-.15 G .316 <726c617020287768656e20696e746572>.15 F<2d>-.2 E .736 <70726574656420617320636c7573746572696e6773292e204f76>100 204 R .736<65 726c617020646973736170706561727320736f6f6e206173207468652069746572616e64 20696e6465>-.15 F 3.236<7869>-.15 G .736<6e637265617365732e2046>-3.236 F .737<6f72206d6f726520696e666f72>-.15 F<2d>-.2 E<6d6174696f6e2c20636f6e73 756c7420746865206f7468657220656e747269657320696e20746869732073656374696f 6e20616e6420746865>100 216 Q F2<636c6d696d6163206d616e75616c2070616765> 2.5 E F0<2e>A F2<392e32>30 240 Q/F3 11/Times-Bold@0 SF <43616e2074686520636c7573746572696e67732072>57.5 E<65747572>-.198 E <6e6564206279206d636c20636f6e7461696e206f>-.165 E -.11<7665>-.11 G <726c61703f>.11 E F0 .934<4e6f2e20436c7573746572696e677320726573756c7469 6e672066726f6d20746865206162737472616374204d434c20616c676f726974686d206d 617920696e207468656f727920636f6e7461696e206f>100 264 R -.15<7665>-.15 G .933<726c61702c2062>.15 F<7574>-.2 E .195<74686520646566>100 276 R .195 <61756c742062656861>-.1 F .195<76696f757220696e>-.2 F F2<6d636c>2.695 E F0 .195<697320746f2072656d6f>2.695 F .495 -.15<76652069>-.15 H 2.695 <7473>.15 G .195<686f756c64206974206f63637572>-2.695 F 2.695<2c62>-.4 G 2.695<7961>-2.695 G .195 <6c6c6f636174696e6720746865206e6f64657320696e206f>-2.695 F -.15<7665> -.15 G .195<726c617020746f>.15 F 1.759 <746865208c72737420636c757374657220696e20776869636820746865>100 288 R 4.258<7961>-.15 G 1.758<7265207365656e2e>-4.258 F F2<6d636c>4.258 E F0 1.758<77696c6c2077>4.258 F 1.758 <61726e20796f752069662074686973206f63637572732e20546869732062656861>-.1 F 1.758<76696f7572206973>-.2 F<7377697463686564206f66>100 300 Q 2.5 <6662>-.25 G 2.5<7973>-2.5 G<7570706c79696e67>-2.5 E F2<2d2d6b>2.5 E <6565702d6f>-.1 E -.1<7665>-.1 G<726c61703d79>.1 E<6573>-.1 E F0<2e>A .139<446f206e6f74652074686174206f>100 324 R -.15<7665>-.15 G .139<726c61 70206973206d6f73746c792061207468656f7265746963616c20706f73736962696c6974 792e>.15 F .14<497420697320636f6e6a656374757265642074686174206974207265 7175697265732074686520707265732d>5.139 F 1.155<656e6365206f662076>100 336 R 1.154<657279207374726f6e672073796d6d65747269657320696e207468652069 6e7075742067726170682c20746f207468652065>-.15 F 1.154 <7874656e742074686174207468657265>-.15 F F1 -.2<6578>3.654 G 1.154 <6973747320616e206175746f6d6f72>.2 F<2d>-.2 E <706869736d206f662074686520696e707574206772>100 348 Q <617068206d617070696e6720746865206f>-.15 E <7665726c617070696e672070617274206f6e746f20697473656c66>-.1 E F0<2e>A .641<497420697320706f737369626c6520746f20636f6e737472756374202868696768 6c792073796d6d65747269632920696e70757420677261706873206c656164696e672074 6f20636c7573746572206f>100 372 R -.15<7665>-.15 G .641 <726c61702e204578616d706c6573>.15 F .675<6f66206f>100 384 R -.15<7665> -.15 G .675<726c617020696e2077686963682061206665>.15 F 3.175<776e>-.25 G .674<6f6465732061726520696e>-3.175 F -.2<766f>-.4 G<6c76>.2 E .674 <656420617265206561737920746f20636f6e7374727563743b2065>-.15 F .674 <78616d706c65732077697468206d616e>-.15 F 3.174<796e>-.15 G<6f646573> -3.174 E<6172652065>100 396 Q <7863657074696f6e616c6c79206861726420746f20636f6e7374727563742e>-.15 E .319<436c7573746572696e6773206173736f636961746564207769746820696e746572 6d6564696174652f6561726c79204d434c2069746572616e6473206d61792076>100 420 R .319<6572792077656c6c20636f6e7461696e206f>-.15 F -.15<7665>-.15 G .32 <726c61702c20736565>.15 F<746865>100 432 Q F1<696e7472>2.5 E <6f64756374696f6e20696e20746869732073656374696f6e>-.45 E F0 <616e64206f7468657220656e74726965732e>2.5 E F2<392e33>30 456 Q F3<486f> 57.5 E 2.75<7764>-.11 G 2.75<6f496f>-2.75 G<627461696e2074686520636c7573 746572696e6773206173736f6369617465642077697468204d434c2069746572616e6473 3f>-2.75 E F0 .435<546865726520617265207477>100 480 R 2.935<6f6f>-.1 G .435<7074696f6e732e20496620796f752061726520696e746572657374656420696e20 636c7573746572696e677320636f6e7461696e696e67206f>-2.935 F -.15<7665>-.15 G .434<726c61702c20796f752073686f756c6420676f20666f72>.15 F <746865207365636f6e642e204966206e6f742c2075736520746865208c7273742c2062> 100 492 Q<7574206265>-.2 E -.1<7761>-.25 G<7265207468617420746865207265 73756c74696e6720636c7573746572696e6773206d617920636f6e7461696e206f>.1 E -.15<7665>-.15 G<726c61702e>.15 E .135 <546865208c72737420736f6c7574696f6e20697320746f20757365>100 516 R F2 <2d64756d7020636c73>2.635 E F0 .136<2870726f6261626c7920696e20636f6e6a75 6e6374696f6e207769746820656974686572>2.636 F F2<2d4c>2.636 E F0<6f72> 2.636 E F2<2d64756d7069>2.636 E F0 .136<696e206f72646572>2.636 F .611<74 6f206c696d697420746865206e756d626572206f66206d61747269636573207772697474 656e292e20546869732077696c6c206361757365>100 528 R F2<6d636c>3.111 E F0 .61 <746f2077726974652074686520636c7573746572696e672067656e65726963616c6c79> 3.11 F<6173736f636961746564207769746820656163682069746572616e6420746f20 8c6c652e20546865>100 540 Q F2<2d64756d707374656d>2.5 E F0 <6f7074696f6e206d617920626520636f6e>2.5 E -.15<7665>-.4 G <6e69656e742061732077656c6c2e>.15 E 1.497 <546865207365636f6e6420736f6c7574696f6e20697320746f2075736520746865>100 564 R F2<2d64756d7020697465>3.997 E F0 1.497<6f7074696f6e2028>3.997 F F2 <2d64756d7069>A F0<616e64>3.997 E F2<2d64756d707374656d>3.998 E F0 1.498 <6d6179206265206f6620757365>3.998 F<6167>100 576 Q .907 <61696e292e20546869732077696c6c206361757365>-.05 F F2<6d636c>3.407 E F0 .906<746f2077726974652074686520696e7465726d6564696174652069746572616e64 7320746f208c6c652e20416674657220746861742c20796f752063616e206170706c79> 3.406 F F2 1.431<636c6d20696d6163>100 588 R F0 1.431<28696e746572707265 74206d617472697820617320636c7573746572696e672920746f2074686f736520697465 72616e64732e>3.931 F F2 1.432<636c6d20696d6163>3.932 F F0 1.432 <6861732061>3.932 F F2<2d737472696374>3.932 E F0<706172616d65746572> 3.932 E 1.289<7768696368206166>100 600 R 1.289<666563747320746865206d61 7070696e67206f66206d6174726963657320746f20636c7573746572696e67732e204974 2074616b>-.25 F 1.289<657320612076>-.1 F 1.288 <616c7565206265747765656e20302e3020616e6420312e30206173>-.25 F<6172>100 612 Q .975<67756d656e742e2054686520646566>-.18 F .976<61756c742069732030 2e30303120616e6420636f72726573706f6e647320776974682070726f6d6f74696e6720 6f>-.1 F -.15<7665>-.15 G .976<726c61702e20496e6372656173696e6720746865> .15 F F2<2d737472696374>3.476 E F0 -.25<7661>100 624 S .215<6c7565207769 6c6c2067656e6572616c6c7920726573756c7420696e20636c7573746572696e67732063 6f6e7461696e696e67206c657373206f>.25 F -.15<7665>-.15 G .214 <726c61702e20546869732077696c6c206861>.15 F .514 -.15<76652074>-.2 H .214<6865206c6172>.15 F .214<67657374206566>-.18 F<66656374>-.25 E <666f72206561726c792069746572616e64733b20697473206566>100 636 Q<66656374 2077696c6c2064696d696e697368206173207468652069746572616e6420696e6465> -.25 E 2.5<7869>-.15 G<6e637265617365732e>-2.5 E .258 <5768656e2073657420746f20302c20746865>100 660 R F2<2d737472696374>2.758 E F0 .259<706172616d6574657220726573756c747320696e2074686520636c75737465 72696e67206173736f6369617465642077697468207468652044>2.759 F 1.059 -.4 <41472061>-.4 H<73736f636961746564>.4 E 1.16<7769746820616e204d434c2069 746572616e642061732064657363726962656420696e205b335d2e20546869732044>100 672 R 1.959 -.4<41472069>-.4 H 3.659<7370>.4 G 1.159<72756e656420287468 757320706f737369626c7920726573756c74696e6720696e206c657373>-3.659 F -.15 <6f7665>100 684 S<726c617020696e2074686520636c7573746572696e672920627920 696e6372656173696e6720746865>.15 E F2<2d737472696374>2.5 E F0 <706172616d657465722e205b6164645d>2.5 E/F4 12/Times-Bold@0 SF <4d697363656c6c616e656f7573>258 708 Q F0<4d434c2046>20 768 Q 1.1 -.55 <41512031>-.74 H 131.125<322d313335203134>.55 F<4d61792032303132>2.5 E <3134>197.335 E 0 Cg EP %%Page: 15 15 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E/F1 10/Times-Bold@0 SF<31302e31>30 84 Q/F2 11 /Times-Bold@0 SF<486f>52.5 E 2.75<7764>-.11 G 2.75<6f498c>-2.75 G <6e64207468652064656661756c742073657474696e6773206f66206d636c3f>-2.75 E F0<557365>100 108 Q F1<2d7a>3.113 E F0 .614<746f208c6e64206f757420746865 2061637475616c2073657474696e6773202d2069742073686f>3.113 F .614<77732074 68652073657474696e677320617320726573756c74696e672066726f6d2074686520636f 6d6d616e64206c696e65>-.25 F<6f7074696f6e732028652e672e2074686520646566> 100 120 Q<61756c742073657474696e6773206966206e6f206f74686572206f7074696f 6e7320617265206769>-.1 E -.15<7665>-.25 G<6e292e>.15 E F1<31302e32>30 144 Q F2<5768617427>52.5 E 2.75<736e>-.407 G<6578743f>-2.75 E F0<4927> 100 168 Q 2.714<646c>-.5 G<696b>-2.714 E 2.714<6574>-.1 G 2.714<6f70> -2.714 G .214<6f7274204d434c20746f20636c757374657220636f6d707574696e672c 207573696e67206f6e65206f66207468652050564d2c204d50492c206f72206f70656e4d 50206672616d65>-2.714 F -.1<776f>-.25 G<726b732e>.1 E -.15<466f>100 180 S 2.743<7274>.15 G .243<686520312e3030322072656c656173652c206d636c27> -2.743 F 2.743<7369>-.55 G .243<6e7465726e616c732077657265207265>-2.743 F .243<7772697474656e20746f20616c6c6f>-.25 F 2.743<776d>-.25 G .243 <6f72652067656e6572616c206d617472697820636f6d7075746174696f6e732e>-2.743 F 1.078<416d6f6e67206f74686572207468696e67732c206d636c27>100 192 R 3.577 <7364>-.55 G 1.077<617461207374727563747572657320616e64207072696d697469> -3.577 F 1.377 -.15<7665206f>-.25 H 1.077 <7065726174696f6e7320617265206e6f>.15 F 3.577<776d>-.25 G 1.077 <6f72652073756974656420746f206265>-3.577 F<656d706c6f>100 204 Q 1.187 <79656420696e20612064697374726962>-.1 F 1.187 <7574656420636f6d707574696e6720656e>-.2 F 1.187 <7669726f6e6d656e742e20486f>-.4 F<7765>-.25 E -.15<7665>-.25 G 1.988 -.4 <722c206d>.15 H 1.188 <7563682072656d61696e7320746f20626520646f6e65206265666f7265>.4 F <6d636c2063616e206f70657261746520696e207375636820616e20656e>100 216 Q <7669726f6e6d656e742e>-.4 E<496620796f75206665656c2074686174206d636c2073 686f756c6420737570706f727420736f6d65206f74686572207374616e64617264206d61 7472697820666f726d61742c206c6574207573206b6e6f>100 240 Q<772e>-.25 E/F3 10.95/Times-Bold@0 SF -.11<4255>20 256.8 S<4753>.11 E F0 1.762 <546869732046>100 268.8 R 2.862 -.55<41512074>-.74 H 1.762<726965732074 6f20636f6d70726f6d697365206265747765656e206265696e6720636f6e636973652061 6e6420636f6d70726568656e7369>.55 F -.15<7665>-.25 G 4.261<2e54>.15 G 1.761<686520636f6c6c656374696f6e206f66>-4.261 F .418 <616e73776572732073686f756c642070726566657261626c7920636f>100 280.8 R -.15<7665>-.15 G 2.918<7274>.15 G .418<686520756e69>-2.918 F -.15<7665> -.25 G .419 <727365206f66207175657374696f6e73206174206120706c656173616e74206c65>.15 F -.15<7665>-.25 G 2.919<6c6f>.15 G 2.919<6673>-2.919 G .419 <656d616e746963206772616e752d>-2.919 F .27 <6c617269747920776974686f757420746f6f206d756368206f>100 292.8 R -.15 <7665>-.15 G .269<726c61702e2049742073686f756c64206f66>.15 F .269 <6665722076>-.25 F .269<616c756520746f2070656f706c6520696e74657265737465 6420696e20636c7573746572696e672062>-.25 F .269<757420776974682d>-.2 F .538<6f757420736f756e64206d617468656d61746963616c20747261696e696e672e20 5468657265666f72652c20696620746869732046>100 304.8 R 1.639 -.55 <41512068>-.74 H .539<6173206e6f742066>.55 F .539<61696c656420736f6d65> -.1 F .539<77686572652c206974206d757374206861>-.25 F -.15<7665>-.2 G -.1 <6661>100 316.8 S<696c65642e>.1 E<53656e642063726974696369736d20616e6420 6d697373696e67207175657374696f6e7320666f7220636f6e73696465726174696f6e20 746f206d636c2d66>100 340.8 Q<6171206174206d6963616e732e6f72>-.1 E<672e> -.18 E F3 -.548<4155>20 357.6 S<54484f52>.548 E F0<5374696a6e2076>100 369.6 Q<616e20446f6e67656e2e>-.25 E F3<53454520414c534f>20 386.4 Q F1 <6d636c66616d696c79283729>100 398.4 Q F0<666f7220616e206f>2.5 E -.15 <7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c20746865 20646f63756d656e746174696f6e20616e6420746865207574696c697469657320696e20 746865206d636c2066>-2.5 E<616d696c792e>-.1 E<6d636c27>100 422.4 Q 2.5 <7368>-.55 G<6f6d6520617420687474703a2f2f6d6963616e732e6f72>-2.5 E <672f6d636c2f2e>-.18 E F3<5245464552454e434553>20 439.2 Q F0 .336 <5b315d205374696a6e2076>100 451.2 R .336<616e20446f6e67656e2e>-.25 F/F4 10/Times-Italic@0 SF<4772>2.836 E .335 <61706820436c7573746572696e6720627920466c6f772053696d756c6174696f6e>-.15 F F0 5.335<2e50>C .335<6844207468657369732c20556e69>-5.335 F -.15<7665> -.25 G .335<7273697479206f6620557472656368742c>.15 F<4d617920323030302e> 100 463.2 Q<687474703a2f2f7777772e6c6962726172792e75752e6e6c2f6469676961 7263686965662f6469702f646973732f313839353632302f696e686f75642e68746d>100 475.2 Q 1.084<5b325d205374696a6e2076>100 499.2 R 1.084 <616e20446f6e67656e2e>-.25 F F4 3.584<4163>3.584 G 1.084 <6c757374657220616c676f726974686d20666f72206772>-3.584 F<61706873>-.15 E F0 6.084<2e54>C 1.085 <6563686e6963616c205265706f727420494e532d52303031302c204e6174696f6e616c> -6.784 F .355<526573656172636820496e7374697475746520666f72204d617468656d 617469637320616e6420436f6d707574657220536369656e636520696e20746865204e65 746865726c616e64732c20416d7374657264616d2c204d6179>100 511.2 R <323030302e>100 523.2 Q<687474703a2f2f7777772e6377692e6e6c2f6674702f4357 497265706f7274732f494e532f494e532d52303031302e70732e5a>100 535.2 Q 2.361 <5b335d205374696a6e2076>100 559.2 R 2.361<616e20446f6e67656e2e>-.25 F F4 4.862<4173>4.861 G<746f63>-4.862 E 2.362 <68617374696320756e636f75706c696e67207072>-.15 F 2.362 <6f6365737320666f72206772>-.45 F<61706873>-.15 E F0 7.362<2e54>C 2.362 <6563686e6963616c205265706f727420494e532d>-8.062 F .707<52303031312c204e 6174696f6e616c20526573656172636820496e7374697475746520666f72204d61746865 6d617469637320616e6420436f6d707574657220536369656e636520696e20746865204e 65746865726c616e64732c>100 571.2 R <416d7374657264616d2c204d617920323030302e>100 583.2 Q<687474703a2f2f7777 772e6377692e6e6c2f6674702f4357497265706f7274732f494e532f494e532d52303031 312e70732e5a>100 595.2 Q 1.752<5b345d205374696a6e2076>100 619.2 R 1.752 <616e20446f6e67656e2e>-.25 F F4 -.8<5065>4.252 G 1.752 <72666f726d616e636520637269746572696120666f72206772>.8 F 1.753 <61706820636c7573746572696e6720616e64204d61726b>-.15 F 1.953 -.1 <6f762063>-.1 H 1.753<6c75737465722065>.1 F<78706572692d>-.2 E <6d656e7473>100 631.2 Q F0 2.598<2e54>C .098<6563686e6963616c205265706f 727420494e532d52303031322c204e6174696f6e616c20526573656172636820496e7374 697475746520666f72204d617468656d617469637320616e6420436f6d7075746572> -3.298 F<536369656e636520696e20746865204e65746865726c616e64732c20416d73 74657264616d2c204d617920323030302e>100 643.2 Q<687474703a2f2f7777772e63 77692e6e6c2f6674702f4357497265706f7274732f494e532f494e532d52303031322e70 732e5a>100 655.2 Q .219<5b355d20456e726967687420412e4a2e2c2056>100 679.2 R .219<616e20446f6e67656e20532e2c204f757a6f756e697320432e412e>-1.11 F F4 .219<416e206566>5.219 F .22 <8c6369656e7420616c676f726974686d20666f72206c6172>-.18 F -.1<6765>-.37 G .22<2d7363616c6520646574656374696f6e>.1 F<6f66207072>100 691.2 Q <6f7465696e2066616d696c696573>-.45 E F0 2.5<2c4e>C<75636c65696320416369 64732052657365617263682033302837293a313537352d31353834202832303032292e> -2.5 E<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125 <322d313335203134>.55 F<4d61792032303132>2.5 E<3135>197.335 E 0 Cg EP %%Page: 16 16 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF<4d434c2046>20 48 Q -.55<4151>-.74 G 134.045 <283729204d495343454c4c414e454f5553>.55 F<4d434c2046>139.045 E -.55 <4151>-.74 G<283729>.55 E/F1 10.95/Times-Bold@0 SF<4e4f>20 84 Q<544553> -.438 E F0 1.06<5468697320706167652077>100 96 R 1.059 <61732067656e6572617465642066726f6d>-.1 F/F2 10/Times-Bold@0 SF <5a4f454d>3.559 E F0 1.059 <6d616e75616c206d6163726f732c20687474703a2f2f6d6963616e732e6f72>3.559 F 1.059<672f7a6f656d2e20426f74682068746d6c20616e64>-.18 F<726f66>100 108 Q 2.952<6670>-.25 G .453<616765732063616e20626520637265617465642066726f6d 207468652073616d6520736f7572636520776974686f7574206861>-2.952 F .453<76 696e6720746f20626f74686572207769746820616c6c2074686520757375616c20636f6e 2d>-.2 F -.15<7665>100 120 S <7273696f6e2070726f626c656d732c207768696c65206b>.15 E <656570696e6720736f6d65206c65>-.1 E -.15<7665>-.25 G 2.5<6c6f>.15 G 2.5 <6673>-2.5 G <6f706869737469636174696f6e20696e20746865207479706573657474696e672e>-2.5 E<4d434c2046>20 768 Q 1.1 -.55<41512031>-.74 H 131.125<322d313335203134> .55 F<4d61792032303132>2.5 E<3136>197.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/doc/mcxi.ps0000644000402500021140000010420111754271045011346 00000000000000%!PS-Adobe-3.0 %%Creator: groff version 1.18.1.4 %%CreationDate: Mon May 14 21:59:17 2012 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Courier %%DocumentSuppliedResources: procset grops 1.18 1 %%Pages: 4 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.18 1 /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }bind def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /Fk{ setcmykcolor fill }bind def /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /Ck/setcmykcolor load def /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne{def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def }bind def /PEND{ clear countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Courier grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Courier@0 ENC0/Courier RE/Times-Italic@0 ENC0/Times-Italic RE /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 155.115<6d6378692831292055534552>20 48 R 157.615 <434f4d4d414e4453206d637869283129>2.5 F/F1 10.95/Times-Bold@0 SF -.219 <4e41>20 84 S<4d45>.219 E F0<6d637820ad206120737461636b206c616e67756167 6520696e74657270726574657220666f7220696e746572616374696f6e20776974682074 6865>100 96 Q/F2 10/Times-Bold@0 SF<6d636c>2.5 E F0 <6c69627261726965732e>2.5 E F1<53594e4f50534953>20 112.8 Q F2<6d637869> 100 124.8 Q F0<28656e74657220696e74657261637469>2.5 E .3 -.15<7665206d> -.25 H<6f646529>.15 E F2<6d637869>100 148.8 Q F0<3c6d6378692065>2.5 E <787072657373696f6e3e>-.15 E F1<4445534352495054494f4e>20 165.6 Q F2 <6d637869>100 177.6 Q F0 .014<63616e206265207573656420626f74682066726f6d 2074686520636f6d6d616e64206c696e6520616e6420696e74657261637469>2.515 F -.15<7665>-.25 G<6c79>.15 E 2.514<2c61>-.65 G .014 <6e6420737570706f7274732061207269636820736574206f66206f706572612d>-2.514 F .324<74696f6e732073756368206173207472616e73706f736974696f6e2c20736361 6c696e672c20636f6c756d6e207363616c696e672c206d756c7469706c69636174696f6e 2c20486164616d61726420706f>100 189.6 R .324 <7765727320616e642070726f642d>-.25 F .636 <756374732c206574206365746572612e204974206861732076>100 201.6 R .636 <61726961626c65732c20636f6e74726f6c207072696d697469>-.25 F -.15<7665> -.25 G .636 <732c20616e6420737461636b206d616e6970756c6174696f6e207072696d697469>.15 F -.15<7665>-.25 G 3.136<732e20546865>.15 F<67656e2d>3.136 E .764<657261 6c2061696d20697320746f20737570706f7274206261736963206e756d62657220616e64 206d61747269782061726974686d657469632c2061732077656c6c206173206772617068 2c207365742c20616e6420636c7573746572696e67>100 213.6 R .762 <6f7065726174696f6e732e20546865206c616e67756167652077696c6c206265206b> 100 225.6 R .762<6570742073696d706c652c20616e642073686f756c642073657276> -.1 F 3.262<656f>-.15 G .762 <6e6c792061732061206d65616e73206f66206d616b696e6720746865>-3.262 F F2 <6d636c>100 237.6 Q F0<6672616d65>2.692 E -.1<776f>-.25 G .193 <726b206120706c656173616e74206f6e6520666f722077>.1 F .193<6f726b696e6720 77697468206772617068732c206d617472696365732c20636c7573746572696e67732c20 616e6420736574732e>-.1 F .193<546865206c616e2d>5.193 F .985<677561676520 69732074797065642c20616e642063757272656e746c7920686173207468652074797065 73>100 249.6 R/F3 10/Times-Italic@0 SF<696e7465>3.485 E -.1<6765>-.4 G 3.205 -1.11<722c2072>.1 H .985<65616c2c206d61747269782c20737472696e67> .74 F 3.484<2c61>-.1 G .984<6e6420626c6f63>-3.484 F<6b>-.2 E F0 5.984 <2e42>C .984<6c6f636b7320617265>-5.984 F .514<7573656420626f746820696e20 636f6e74726f6c2073746174656d656e74732073756368206173>100 261.6 R F2 <6966656c7365>3.014 E F0<616e64>3.014 E F2<7768696c65>3.014 E F0 3.014 <2c61>C .515 <6e6420666f722064658c6e696e6720636f6d706f756e642073746174656d656e7473> -3.014 F .08 <726573656d626c696e672070726f63656475726573206f722066756e6374696f6e732e> 100 273.6 R .079<536f6d65206f66>5.079 F F2<6d637869>2.579 E F0 1.179 -.55<27732070>D<72696d697469>.55 E -.15<7665>-.25 G 2.579<7361>.15 G .079<7265206f>-2.579 F -.15<7665>-.15 G .079 <726c6f616465642e2054686520666f6c6c6f>.15 F .079<77696e67206973>-.25 F 2.5<6176>100 285.6 S<6572792073696d706c652065>-2.65 E <78616d706c65206f6620696d706c656d656e74696e6720616e64207573696e67>-.15 E F2<6d636c>2.5 E F0<696e2074686973206c616e67756167652e>2.5 E/F4 10 /Courier@0 SF<322e30202e6920646566>106 321.6 Q 6<2364>114 G <6566696e6520696e666c6174696f6e2076616c75652e>-6 E<2f736d616c6c206c6d> 106 333.6 Q 6<236c>120 G <6f6164206d617472697820696e2066696c652027736d616c6c272e>-6 E <64696d20696420616464>106 345.6 Q 6<2361>114 G <6464206964656e74697479206d61747269782e>-6 E<7374202e7820646566>106 357.6 Q 6<236d>120 G <616b652073746f636861737469632c2062696e6420746f20782e>-6 E 6<7b78>106 369.6 S<706e202e6920696e666c20766d207d202e6d636c20646566>-6 E 6<2364>12 G<6566696e65206f6e65206d636c20697465726174696f6e2e>-6 E <3230202e78202e6d636c20726570656174>106 381.6 Q 6<2369>72 G <7465726174652032302074696d6573>-6 E 144<696d61632023>106 393.6 R <696e74657270726574206d617472697820617320636c7573746572696e672e>6 E 156 <766d2023>106 405.6 R <76696577206d61747269782028636c7573746572696e67292e>6 E F0<536f6d65>100 429.6 Q 1.255<77686174206d69736c656164696e676c79>-.25 F 3.755<2c27>-.65 G 1.255<2327206973206e6f74207265636f676e697a6564206173206120636f6d6d656e 742073796d626f6c206279>-3.755 F F2<6d637869>3.756 E F0 3.756<2c73>C 3.756<6f64>-3.756 G<6f6e27>-3.756 E 3.756<7475>-.18 G 1.256<7365206974> -3.756 F<28796574292e>100 441.6 Q F2<6d637869>100 465.6 Q F0 1.084 <6861732071756974652061206c6f74206f66207072696d697469>3.585 F -.15<7665> -.25 G 1.084<732c20616e6420746865>.15 F 3.584<7961>-.15 G 1.084 <7265206e6f7420616c6c2065>-3.584 F 1.084 <78706c61696e656420696e20686572652e>-.15 F<486f>6.084 E<7765>-.25 E -.15 <7665>-.25 G -.4<722c>.15 G F2<6d637869>3.984 E F0<686173>3.584 E<7365> 100 477.6 Q -.15<7665>-.25 G .816<72616c2068656c702066>.15 F <6163696c69746965732e>-.1 E F2<6d637869>3.316 E F0 1.916 -.55<2773206d>D .817 <756e6765206d6f6465732028636f6d6d616e64206c696e652c20696e74657261637469> .55 F -.15<7665>-.25 G 3.317<2c61>.15 G .817 <6e64208c6c65292061726520646973637573736564>-3.317 F 1.257 <8c7273742c20666f6c6c6f>100 489.6 R 1.256<77656420627920736f6d652073796e 74616374696320616e642073656d616e7469632072756c65732e>-.25 F<5365>6.256 E -.15<7665>-.25 G 1.256 <72616c2067726f757073206f662072656c61746564207072696d697469>.15 F -.15 <7665>-.25 G 3.756<7361>.15 G<7265>-3.756 E .385<7468656e20646973637573 7365642e20546865736520617265207468652068656c70207072696d697469>100 501.6 R -.15<7665>-.25 G<73>.15 E F2<68656c70>2.885 E F0<2c>A F2<6772>2.885 E <6570>-.18 E F0<2c>A F2<6f7073>2.885 E F0 2.885<2c61>C .385 <6e64206f74686572732c207468652062696e64696e67207072696d697469>-2.885 F -.15<7665>-.25 G<73>.15 E F2<646566>100 513.6 Q F0<2c>A F2<6672>2.716 E <6565>-.18 E F0 2.716<2c61>C<6e64>-2.716 E F2<756e6c696e6b>2.716 E F0 2.716<2c74>C .216<686520636f6e74726f6c207072696d697469>-2.716 F -.15 <7665>-.25 G<73>.15 E F2<6966656c7365>2.716 E F0<2c>A F2<646f>2.716 E F0 <2c>A F2 -.18<7265>2.716 G<70656174>.18 E F0 2.716<2c61>C<6e64>-2.716 E F2<7768696c65>2.716 E F0 2.716<2c61>C .216 <6e642074686520737461636b206d616e6970752d>-2.716 F .588 <6c6174696f6e207072696d697469>100 525.6 R -.15<7665>-.25 G<73>.15 E F2 <706f70>3.088 E F0<2c>A F2<65786368>3.088 E F0<2c>A F2<647570>3.088 E F0 <2c>A F2<6d647570>3.089 E F0<2c>A F2<636f7079>3.089 E F0<2c>A F2 -.18 <726f>3.089 G<6c6c>.18 E F0<2c>A F2<636c656172>3.089 E F0 5.589<2e41>C .589<6e6420666f7220746865207265636f72642c>-5.589 F F2<6d637869>3.089 E F0<686173>3.089 E F2<6c74>3.089 E F0<2c>A F2<6c71>3.089 E F0<2c>A F2 <6571>100 537.6 Q F0<2c>A F2<6771>2.745 E F0 2.745<2c61>C<6e64>-2.745 E F2<6774>2.744 E F0 5.244<2e49>C 2.744<6e74>-5.244 G .244 <6865206772616e64696c6f7175656e746c79206e616d6564>-2.744 F F2 <494e444558>2.744 E F0 .244<73656374696f6e2c20796f75208c6e642061206c6973 74206f6620616c6c2063757272656e74>2.744 F F2<6d637869>2.744 E F0 <7072696d697469>100 549.6 Q -.15<7665>-.25 G<732e>.15 E .302 <46697273742c207468657265206973206e6f20646966>100 573.6 R .302 <666572656e63652061732066>-.25 F .302<6172206173>-.1 F F2<6d637869>2.802 E F0 .302<697320636f6e6365726e6564207768657468657220796f75206769>2.802 F .602 -.15<76652069>-.25 H 2.803<746162>.15 G .303 <756e6368206f66206f70657261746f7273>-3.003 F .287<616e64206f706572616e64 73206469726563746c792066726f6d2074686520636f6d6d616e64206c696e652c206f72 207768657468657220796f7520646f20697420696e20696e74657261637469>100 585.6 R .587 -.15<7665206d>-.25 H .287<6f64652e20496e74657261632d>.15 F<7469> 100 597.6 Q 1.383 -.15<7665206d>-.25 H 1.083<6f6465206973206c696e652d62 617365643b20656163682074696d6520796f752074797065206120636172726961676520 72657475726e2c>.15 F F2<6d637869>3.584 E F0 1.084 <73746172747320696e74657270726574696e6720746865206c696e65>3.584 F .384 <796f752074797065642e204e65>100 609.6 R .383<776c696e65732063616e206265 206573636170656420627920707265636564696e67207468656d20776974682061206261 636b736c6173683b>-.25 F F2<6d637869>2.883 E F0 .383 <77696c6c2064656c617920696e746572>2.883 F<2d>-.2 E 1.122 <707265746174696f6e20616e64206b>100 621.6 R 1.122<6565702062>-.1 F 1.122 <75696c64696e6720757020796f75722065>-.2 F 3.622 <787072657373696f6e2e20436f6d6d616e64>-.15 F 1.122 <6c696e65206d6f6465206973207468652073616d6520617320656e746572696e67> 3.622 F<696e74657261637469>100 633.6 Q 1.57 -.15<7665206d>-.25 H 1.27 <6f646520616e6420656e746572696e6720612073696e676c65206c696e652e2046>.15 F 1.27 <6f72206e6f6e2d62617463682070726f63657373696e672c20696e74657261637469> -.15 F 1.57 -.15<7665206d>-.25 H 1.27<6f646520697320746865>.15 F .171 <7361666573742c2062656361757365>100 645.6 R F2<6d637869>2.671 E F0 .172< 77696c6c2073696d706c792072656675736520746f206361727279206f757420696d706f 737369626c65206f7065726174696f6e732c207768657265617320696e20636f6d6d616e 64>2.671 F<6c696e65206d6f64652069742077696c6c2065>100 657.6 Q<7869742e> -.15 E .235<496e20696e74657261637469>100 681.6 R .535 -.15<7665206d>-.25 H<6f64652c>.15 E F2<6d637869>2.734 E F0 .234<77696c6c20627920646566> 2.734 F .234<61756c74206c6973742074686520737461636b20616674657220656163 68206c696e6520796f7520747970652e20546869732069732076>-.1 F <6572626f73697479>-.15 E<6c65>100 693.6 Q -.15<7665>-.25 G 2.631<6c31> .15 G 2.631<2e54>-2.631 G .131<686572652061726520666f75722076>-2.631 F .132<6572626f73697479206c65>-.15 F -.15<7665>-.25 G .132<6c732c206e616d 656c7920302c20312c20322c20616e6420332028696e20696e6372656173696e676c7920 76>.15 F .132<6572626f7365206f72646572292e20536574>-.15 F .918 <746865206c65>100 705.6 R -.15<7665>-.25 G 3.418<6c77>.15 G .918 <69746820746865>-3.418 F F2<7662>3.418 E F0<7072696d697469>3.418 E -.15 <7665>-.25 G 3.418<2e56>.15 G .917<6572626f7369747920636f6e74726f6c2069 73207374696c6c2061206269742063727564652c2074686973206973206f6e65206f6620 74686520617265617320696e>-4.528 F<7768696368>100 717.6 Q F2<6d637869>2.5 E F0<77696c6c20626520696d70726f>2.5 E -.15<7665>-.15 G<642e>.15 E <6d6378692031322d313335>20 768 Q<3134204d61792032303132>156.505 E<31> 202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 155.115<6d6378692831292055534552>20 48 R 157.615 <434f4d4d414e4453206d637869283129>2.5 F 1.025 <546865726520697320616e6f74686572>100 84 R/F1 10/Times-Bold@0 SF <6d637869>3.525 E F0 1.025<6d756e6765206d6f646520776869636820697320656e 7465726564207768656e2072656164696e67208c6c6573207769746820746865>3.525 F F1<6c66>3.525 E F0 1.025<286c6f6164208c6c6529>3.525 F<7072696d697469>100 96 Q -.15<7665>-.25 G 2.748<2e54>.15 G .247<686973206d6f6465206973206e6f 74206c696e652d62617365642c207468652077686f6c65208c6c6520697320696e746572 70726574656420696e206f6e6520676f20ad207468657265206973206c6974746c652064 69662d>-2.748 F 1.652 <666572656e63652077697468206c696e652d6261736564206d6f64652e204265>100 108 R -.1<7761>-.25 G 1.652<72652074686f7567682c206974206973206375727265 6e746c79206e6f7420706f737369626c6520286e6f72206e65636573736172792920746f> .1 F<657363617065206e65>100 120 Q<776c696e657320696e208c6c65732e>-.25 E <43757272656e746c79>100 144 Q<2c>-.65 E F1<6d637869>2.782 E F0 .282 <706172736573206c696e6573206f66207465>2.782 F .281 <787420696e746f2061746f6d7320696e20616e2065>-.15 F .281 <787472656d656c79207374726169676874666f7277>-.15 F .281<6172642077>-.1 F .281<61793a2057686974657370616365>-.1 F 1.637 <697320746865206f6e6c7920736570617261746f72>100 156 R 4.137<2c61>-.4 G 1.637<6e6420697420697320616c>-4.137 F -.1<7761>-.1 G 1.638<797320612073 6570617261746f722e205468697320686173206173206120636f6e73657175656e636520 746861742074686520626c6f636b>.1 F<64656c696d6974657273>100 168 Q F1<7b> 2.801 E F0<616e64>2.801 E F1<7d>2.801 E F0 .301 <617265206e6f7420616c6c6f>2.801 F .301<77656420746f20617070656172206e65> -.25 F .3<787420746f2061206e6f6e2d7768697465206368617261637465722e20416e 6f7468657220636f6e73657175656e6365>-.15 F .917<697320746861742073747269 6e67732063616e6e6f7420636f6e7461696e207768697465207370616365732e20426f74 6820746865736520636f6e646974696f6e73206d61792062652072656c6178>100 180 R .917<656420696e2074686520667574757265>-.15 F<74686f7567682e>100 192 Q .445<537472696e67732061726520616c>100 216 R -.1<7761>-.1 G .445<79732065 6e746572656420776974682061206c656164696e6720736c6173682c20616e6420616e> .1 F .444<797468696e6720776974682061206c656164696e6720736c61736820697320 6120737472696e672c20736f>-.15 F/F2 10/Courier@0 SF<2f74686973>100 228 Q F0 .122<6973206120737472696e672e2043757272656e746c79>2.621 F 2.622<2c74> -.65 G .122<686520646f75626c652071756f746520686173206e6f207370656369616c 206d65616e696e672c2062>-2.622 F .122 <7574206974206d61792061637175697265206d65616e2d>-.2 F <696e6720696e20746865206675747572652c20657370656369616c6c7920617320696e> 100 240 Q F2<2f226d6179626520746865206d637869206675747572652077696c6c20 626520627269676874657222>2.5 E F0<2e>A -1.11<5661>100 264 S .184 <726961626c6573206e616d65732061726520616c>1.11 F -.1<7761>-.1 G .184<79 7320656e746572656420776974682061206c656164696e6720646f742c20616e6420616e> .1 F .183 <797468696e6720776974682061206c656164696e6720646f7420697320612076>-.15 F <6172692d>-.25 E .074<61626c65206e616d652e2056>100 276 R .075<6172696162 6c65732061726520696d706c696369746c7920747970656420627920746865206f626a65 637420746f20776869636820746865>-1.11 F 2.575<7961>-.15 G .075 <726520626f756e642e205468657265206973206e6f207375702d>-2.575 F .657 <706f727420666f72206172726179732028796574292e>100 288 R .656<49662076> 5.656 F .656<61726961626c65732061726520757365642c20617320696e>-.25 F F2 .656<2e78202e7920616464>3.156 F F0 3.156<2c6f>C .656 <6e6c7920746865206e616d6573206f66207468652076>-3.156 F<61726961626c6573> -.25 E<61726520706f707065642c20616e64207468652062696e64696e672062657477 65656e20746865206e616d657320616e642074686569722076>100 300 Q <616c75657320737461797320696e746163742e>-.25 E 1.156<546865726520617265 20736f6d65206f70657261746f7273207468617420646f20696e2d706c616365206d6f64 698c636174696f6e206f6620746865206f626a656374207468617420746865>100 324 R 3.657<7961>-.15 G 1.157<6374206f6e2c2073756368206173>-3.657 F F2 <696e666c>100 336 Q F0 1.047<28696e8d6174696f6e292e2043757272656e746c79> 3.547 F 3.547<2c74>-.65 G 1.047<686573652061726520616c6c206f70657261746f 727320616374696e67206f6e206d617472696365732e205768656e2070726573656e7465 6420776974682061>-3.547 F -.25<7661>100 348 S .899 <726961626c652c20746865>.25 F 3.399<7964>-.15 G 3.399<6f63>-3.399 G .899 <68616e676520746865206f626a656374206173736f6369617465642077697468207468 652076>-3.399 F 3.399<61726961626c652e20496e>-.25 F .9<7468652062>3.4 F .9<75696c742d696e20646f63756d656e746174696f6e>-.2 F .215 <737472696e6773202861636365737369626c652077697468>100 360 R F1<68656c70> 2.715 E F0<616e64>2.715 E F1<6772>2.715 E<6570>-.18 E F0 .215<292c207375 636820696e2d706c616365206d6f64698c636174696f6e2069732064656e6f7465642077 6974682061207072696d6520617320696e>B F2<3c6d3e202d3e203c6d273e>100 372 Q F0<2e>A F1<647570>100 396 Q F0 1.191<63616e206265207573656420746f206475 706c6963617465206f626a656374732e20496e2063617365206f662076>3.691 F 1.191 <61726961626c65732c20746869732077696c6c206265206120636f70>-.25 F 3.691 <796f>-.1 G 3.692<6674>-3.691 G 1.192<68652076>-3.692 F<61726961626c65> -.25 E 2.548<6e616d652e204966206f6e65206f6363757272656e6365206973207573 656420746f206672656520746865206173736f636961746564206f626a65637420627920 736f6d65206f70657261746f72>100 408 R 5.048<2c61>-.4 G 2.548 <6c6c206f74686572>-5.048 F 1.312<696e7374616e636573206f66207468652076> 100 420 R 1.312<61726961626c65206265636f6d65>-.25 F/F3 10/Times-Italic@0 SF<7374616c65>3.812 E F0<2e>A F1<6d637869>6.313 E F0 1.313<77696c6c206e 6f74696365207468697320616e6420796f752077696c6c20736565207375636820656c65 6d656e7473>3.813 F<6d61726b>100 432 Q .355<6564206173207374616c65206861 6e646c657320696e2074686520737461636b206c697374696e672e>-.1 F F1 <636f7079>2.855 E F0 .355<63616e206265207573656420746f20636f70>2.855 F 2.854<7974>-.1 G .354 <6865206f626a656374206173736f6369617465642077697468>-2.854 F 2.5<6176> 100 444 S<61726961626c652e>-2.75 E F1<6d637869>100 468 Q F0 .393<69732f 696e7465727072657473206120737461636b206c616e67756167652e20496e206f726465 7220746f20616464203120616e64203220796f75206e65656420746f207772697465> 2.892 F F2 6.393<313261>2.893 G<6464>-6.393 E F0 2.893<2e57>C<68656e> -2.893 E .1<6164642069732065>100 480 R -.25<7661>-.25 G .1 <6c75617465642c2069742072656d6f>.25 F -.15<7665>-.15 G 2.6<7374>.15 G .1 <686520707265>-2.6 F .1<76696f7573207477>-.25 F 2.6<6f69>-.1 G .1<74656d 732066726f6d2074686520737461636b20616e64207265706c6163657320697420776974 682074686569722073756d2c>-2.6 F 2.37 <696e207468697320636173652074686520696e7465>100 492 R 2.371 <67657220332e>-.15 F F1<6d637869>7.371 E F0 3.471 -.55<27732074>D 2.371 <79706573206172652064656e6f746564206173>.55 F F2<3c696e743e>4.871 E F0 <2c>A F2<3c7265616c3e>4.871 E F0<2c>A F2<3c6d783e>4.871 E F0<2c>A F2 <3c7374723e>4.871 E F0<2c>A F2<3c626c6f636b3e>100 504 Q F0 3.298<2c61>C .798<6e6420736f20617265206f626a6563747320746861742063616e206265206f6620 7468617420747970652e20416e206f626a6563742074686174206973206f6620756e6465 7273706563698c65642074797065>-3.298 F .355<28737563682061732074616b>100 516 R .355<656e206279206f>-.1 F -.15<7665>-.15 G .356 <726c6f61646564206f70657261746f7273292069732064656e6f746564>.15 F F2 <3c6f626a3e>2.856 E F0 5.356<2e57>C .356<6865726520612076>-5.356 F .356 <61726961626c65206e616d65206d757374206f63637572>-.25 F<2c>-.4 E F2 <3c7661723e>100 528 Q F0 .291<6973207772697474656e2e>2.791 F<496e>5.291 E F1<6d637869>2.791 E F0 .291<7061726c616e636520612027>2.791 F -.25 <7661>-.5 G .291 <726961626c6527206973207468652073616d65206173202768616e646c65272e>.25 F .29<52656d656d626572207468617420612076>5.29 F<6172692d>-.25 E <61626c65206e616d6564>100 540 Q F2<78>2.5 E F0<6973207772697474656e>2.5 E F2<2e78>2.5 E F0 2.5<2c61>C<6e642074686174206120737472696e672022666f6f 2220697320656e7465726564206173>-2.5 E F2<2f666f6f>2.5 E F0<696e>2.5 E F1 <6d637869>2.5 E F0<2e>A/F4 10.95/Times-Bold@0 SF<4f50455241>20 556.8 Q -.197<544f>-1.04 G<5253>.197 E F1<68656c70>100 568.8 Q<68656c70>120 580.8 Q F0 1.037<77697468206e6f206172>3.537 F 1.037<67756d656e7473207072 696e747320612064657363726970746f7279206c696e6520666f72206561636820707269 6d697469>-.18 F -.15<7665>-.25 G 6.038<2e43>.15 G 1.038 <616e206f6e6c792062652075736564206174>-6.038 F <626f74746f6d206f6620737461636b2e>120 592.8 Q<416c6961733a>5 E F1<68>2.5 E F0<2e>A F2<2f737472>100 616.8 Q F1<68656c70>2.5 E<68656c70>120 628.8 Q F0 .283<77697468206172>2.783 F<67756d656e74>-.18 E F2<2f737472>2.782 E F0 .282<7072696e7473206120646573637269707469>2.782 F .582 -.15<7665206c> -.25 H .282<696e6520666f7220746865207072696d697469>.15 F .582 -.15 <7665206e>-.25 H<616d6564>.15 E F2<737472>2.782 E F0 2.782<2e54>C .282 <686520737472696e67>-2.782 F <6d757374206265206964656e746963616c20746f20746865207072696d697469>120 640.8 Q -.15<7665>-.25 G 1.1 -.55<2773206e>.15 H <616d652c206f722068656c702077696c6c206e6f742073686f>.55 E 2.5<7761>-.25 G -.15<6e79>-2.5 G<7468696e672e20416c6961733a>.15 E F1<68>2.5 E F0<2e>A F2<2f737472>100 664.8 Q F1<6772>2.5 E<6570>-.18 E F0 .708 <5072696e7473206561636820646573637269707469>120 676.8 R 1.008 -.15 <7665206c>-.25 H .708<696e6520696e2077686963682074686520737472696e672073 7472206f636375727320286c69746572616c6c79292e>.15 F<536f>5.709 E F2 .709 <2f6d61747269782067726570>3.209 F F0 .829<73686f756c642070726f6475636520 61206c6f74206f66206d61747269782072656c61746564207072696d697469>120 688.8 R -.15<7665>-.25 G 3.328<7328>.15 G .828<616c74686f756768206974206d6179 206d6973732067656e65726963207072696d697469>-3.328 F -.15<7665>-.25 G<73> .15 E<73756368206173>120 700.8 Q F1<616464>2.5 E F0<616e64>2.5 E F1 <6d756c>2.5 E F0<292e20417420626f74746f6d206f6620737461636b2c207072696e 747320616c6c20646573637269707469>A .3 -.15<7665206c>-.25 H 2.5 <696e65732e20416c6961733a>.15 F F1<67>2.5 E F0<2e>A F1<6f7073>100 724.8 Q F0<6d6378692031322d313335>20 768 Q<3134204d61792032303132>156.505 E <32>202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 155.115<6d6378692831292055534552>20 48 R 157.615 <434f4d4d414e4453206d637869283129>2.5 F <4c6973747320616c6c207072696d697469>120 84 Q -.15<7665>-.25 G 2.5<7361> .15 G<6e6420616c696173657320636f6e636973656c7920696e20612070617261677261 70682e>-2.5 E/F1 10/Times-Bold@0 SF<6c697374>100 108 Q F0<4c697374732074 686520636f6e74656e7473206f6620746865206f706572616e6420737461636b2e>120 120 Q F1<696e66>100 144 Q<6f>-.25 E F0<4c697374732074686520746f7020656c 656d656e74206f6620746865206f706572616e6420737461636b2e>120 156 Q/F2 10 /Courier@0 SF<3c696e743e>100 180 Q F1<74656c6c>2.5 E F0 .875 <4c697374732074686520746f70>120 192 R F2<3c696e743e>3.375 E F0 .875 <656c656d656e7473206f6620746865206f706572616e6420737461636b2e>3.375 F .875<546865207472696f206f66>5.875 F F1<6c697374>3.375 E F0<2c>A F1 <696e66>3.376 E<6f>-.25 E F0 3.376<2c61>C<6e64>-3.376 E F1<74656c6c> 3.376 E F0 .876<697320706572>3.376 F<2d>-.2 E<68617073206f>120 204 Q -.15<7665>-.15 G<72646f696e6720697420736c696768746c79>.15 E 2.5<2c62> -.65 G<757420616e>-2.7 E<7977>-.15 E<61792074686572652069742069732e>-.1 E F1 -.1<7661>100 228 S<7273>.1 E F0<4c6973747320616c6c2076>120 240 Q <61726961626c65732063757272656e746c7920626f756e642e>-.25 E F2 -3.5 <3c6f626a3e203c7661723e>100 264 R F1<646566>2.5 E F0<42696e64>120 276 Q F2<3c6f626a3e>2.5 E F0<746f>2.5 E F2<3c7661723e>2.5 E F0 2.5<2e52>C <6564658c6e6974696f6e20697320616c6c6f>-2.5 E<7765642e>-.25 E F2 <3c7661723e>100 300 Q F1<6672>2.5 E<6565>-.18 E F0 <427265616b207468652062696e64696e67206265747765656e>120 312 Q F2 <3c7661723e>2.5 E F0<616e6420746865206f626a6563742069742063757272656e74 6c792062696e64732c20616e642072656d6f>2.5 E .3 -.15<7665206f>-.15 H <626a6563742e>.15 E F1<756e6c696e6b>100 336 Q F0 .24 <427265616b207468652062696e64696e67206265747765656e>120 348 R F2 <3c7661723e>2.74 E F0 .24<616e6420746865206f626a656374206974206375727265 6e746c792062696e64732c20616e642070757368206f626a656374206f6e20746865> 2.74 F<737461636b2e>120 360 Q F2 <3c696e743e203c626c6f636b313e203c626c6f636b323e>100 384 Q F1 <6966656c7365>2.5 E F0<4966>120 396 Q F2<3c696e743e>4.795 E F0 2.295 <6973206e6f6e7a65726f2065>4.795 F -.15<7865>-.15 G<63757465>.15 E F2 <3c626c6f636b313e>4.795 E F0 4.795<2c6f>C 2.295<74686572776973652065> -4.795 F -.15<7865>-.15 G<63757465>.15 E F2<3c626c6f636b323e>4.795 E F0 7.295<2e54>C 2.295<686520657175617465>-7.295 F<6f70657261746f7273>120 408 Q F1<6c74>2.5 E F0<2c>A F1<6c71>2.5 E F0<2c>A F1<6571>2.5 E F0<2c>A F1<6771>2.5 E F0 2.5<2c61>C<6e64>-2.5 E F1<6774>2.5 E F0 <63616e206265207573656420746f206c6561>2.5 E .3 -.15<76652061>-.2 H<6e> .15 E F2<3c696e743e>2.5 E F0<6f6e2074686520737461636b2e>2.5 E F2 <3c626c6f636b3e>100 432 Q F1<646f>2.5 E F0<4578>120 444 Q<6563757465> -.15 E F2<3c626c6f636b3e>2.5 E F0<286f6e652074696d65292e>2.5 E F2 <3c696e743e203c626c6f636b3e>100 468 Q F1 -.18<7265>2.5 G<70656174>.18 E F0<4578>120 480 Q<6563757465>-.15 E F2 -3.5<3c626c6f636b3e203c696e743e> 2.5 F F0<74696d65732e>2.5 E F2<3c626c6f636b313e203c626c6f636b323e>100 504 Q F1<7768696c65>2.5 E F0 .984<54686973207072696d697469>120 516 R 1.284 -.15<76652072>-.25 H .984<657065617465646c792065>.15 F -.15<7865> -.15 G .984<637574657320746865>.15 F/F3 10/Times-Italic@0 SF <636f6e646974696f6e>3.484 E F2<3c626c6f636b313e>3.484 E F0<2c>A F3 <77686963>3.484 E 3.483<686d>-.15 G .983 <757374207075736820616e20696e7465>-3.483 F -.1<6765>-.4 G<72>.1 E <656163>120 528 Q 4.652<6874>-.15 G 2.152<696d652069742069732065>-4.652 F<78656375746564>-.2 E F0 4.652<2e45>C 2.152 <6163682074696d652c207468652070757368656420696e7465>-4.652 F 2.152 <67657220697320706f707065642e2049662069742077>-.15 F 2.152 <6173206e6f6e2d7a65726f2c>-.1 F F2<3c626c6f636b323e>120 540 Q F0 1.143 <69732065>3.644 F -.15<7865>-.15 G<63757465642c>.15 E F2 <3c626c6f636b313e>3.643 E F0 1.143<69732065>3.643 F -.15<7865>-.15 G 1.143<63757465642c20616e64207468652063>.15 F 1.143 <79636c6520636f6e74696e7565732e2049662069742077>-.15 F 1.143 <6173207a65726f2c>-.1 F F1<7768696c65>120 552 Q F0<697320646f6e652e>2.5 E F1<706f70>100 576 Q F0<506f7073206f6e6520656c656d656e74206f66>120 588 Q 2.5<666f>-.25 G 2.5<6674>-2.5 G<686520737461636b2e>-2.5 E F1<65786368> 100 612 Q F0<45786368616e6765732074686520746f70207477>120 624 Q 2.5 <6f65>-.1 G<6c656d656e7473206f662074686520737461636b2e>-2.5 E F1<647570> 100 648 Q F0 .981<4475706c6963617465732074686520746f7020656c656d656e7420 616e642070757368657320746865206475706c6963617465206f6e746f20746865207374 61636b2e20496e2063617365206f6620612076>120 660 R<61726961626c652c>-.25 E .842<746865206e616d65206973206475706c69636174656420616e64206e6f74207468 65206f626a65637420697420706f696e747320746f2e20496e2063617365206f6620616e 6f6e>120 672 R .841<796d6f7573206d6174726963657320616e64>-.15 F .797 <737472696e67732028616e64207768617465>120 684 R -.15<7665>-.25 G 3.297 <726f>.15 G .797 <746865722028636f6d706f7369746529206f626a65637473206d617920656d6572> -3.297 F .797<6765292c2061>-.18 F F3 .797<6465657020636f7079>3.297 F F0 .798<6973206d6164652074686174206973>3.297 F<636f6d706c6574656c7920696e64 6570656e64656e74206f6620746865206f726967696e616c206f626a6563742e>120 696 Q F2<3c696e743e>100 720 Q F1<6d647570>2.5 E F0<6d6378692031322d313335>20 768 Q<3134204d61792032303132>156.505 E<33>202.335 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 155.115<6d6378692831292055534552>20 48 R 157.615 <434f4d4d414e4453206d637869283129>2.5 F .378 <4475706c6963617465732074686520746f70>120 84 R/F1 10/Courier@0 SF <3c696e743e>2.878 E F0 .378<656c656d656e74732e2053656520746865>2.878 F /F2 10/Times-Bold@0 SF<647570>2.878 E F0 .378<656e7472792061626f>2.878 F .678 -.15<76652066>-.15 H .378 <6f72207468652073656d616e74696373206f66206475706c6963612d>.15 F .121 <74696f6e2e20492077726f7465>120 96 R F2<6d647570>2.621 E F0 .121<626563 6175736520492074686f7567687420736f6d65206f74686572206f70657261746f72206e 65656465642069742c207768696368207475726e6564206f757420746f206265>2.621 F -.1<6661>120 108 S 2.58<6c73652e20496e>.1 F .08 <746865206d65616e74696d652c204920626563616d652076>2.58 F .079 <657279206d75636820617474616368656420746f>-.15 F F2<6d647570>2.579 E F0 2.579<2c73>C 2.579<6f6d>-2.579 G .079 <61696c206d6520696620796f75207468696e6b20796f75>-2.579 F<6861>120 120 Q .3 -.15<76652061>-.2 H .3 -.15<6e792075>.15 H <736566756c2075736520666f722069742e>.15 E F2<636f7079>100 144 Q F0 .103< 436f706965732074686520746f7020656c656d656e7420616e6420707573686573207468 6520636f70>120 156 R 2.603<796f>-.1 G .103<6e746f2074686520737461636b2e> -2.603 F .103<496e2063617365206f6620612076>5.103 F .103 <61726961626c652c20636f7069657320746865>-.25 F <6f626a656374206173736f6369617465642077697468207468652076>120 168 Q <61726961626c6520726174686572207468616e207468652076>-.25 E <61726961626c6527>-.25 E 2.5<736e>-.55 G<616d6520286173>-2.5 E F2 <647570>2.5 E F0 -.1<776f>2.5 G<756c6420646f292e>.1 E F1 <3c696e74313e203c696e74323e>100 192 Q F2 -.18<726f>2.5 G<6c6c>.18 E F0 <5368696674>120 204 Q F1<3c696e74313e>3.313 E F0 .813 <6f626a656374732063>3.313 F<79636c6963616c6c79>-.15 E F1<3c696e74323e> 3.313 E F0 .813<74696d657320746f20746865207269676874206966>3.313 F F1 <3c696e74323e>3.313 E F0 .813<697320706f73697469>3.313 F -.15<7665>-.25 G 3.312<2c74>.15 G 3.312<6f74>-3.312 G<6865>-3.312 E <6c656674206f74686572776973652e>120 216 Q F2<636c656172>100 240 Q F0<45 6d7074792074686520737461636b2e20416c6c206f626a6563747320626f756e6420746f 2076>120 252 Q<61726961626c65732061726520756e6166>-.25 E<6665637465642e> -.25 E/F3 10.95/Times-Bold@0 SF<494e444558>20 268.8 Q F0 1.269 <546869732069732061206c697374206f6620616c6c>100 280.8 R F2<6d637869> 3.769 E F0 2.369 -.55<27732070>D<72696d697469>.55 E -.15<7665>-.25 G 1.269<732c20696e636c7564696e6720616c69617365732e>.15 F 1.27 <446f20276d637869202f3c6f703e2068656c702720746f2073656520612073686f7274> 6.269 F<646573637269707469>100 292.8 Q .809 -.15<76652073>-.25 H .509<74 72696e672c207768657265203c6f703e206973206f6e65206f6620746865207072696d69 7469>.15 F -.15<7665>-.25 G 3.008<7362>.15 G<656c6f>-3.008 E 3.008<7728> -.25 G<72656d656d626572>-3.008 E 3.008<2c73>-.4 G .508 <7472696e6773206e6565642061206c656164696e67>-3.008 F<736c617368292e>100 304.8 Q F2 .116<61646420616464746f206364696d20636820636c65617220636f7079 20646566206467742064696d206469>100 328.8 R 2.616<7664>-.1 G 2.616<6f64> -2.616 G .116<75702065712065786368206672>-2.616 F .116<6565206771206772> -.18 F .116<65702067742068646d206864702068656c70>-.18 F 1.193 <6964206966656c736520696d616320696e8d20696e66>100 340.8 R 3.693<6f6a> -.25 G 3.693<6a6c>-3.693 G 3.693<666c>-3.693 G 1.193<697374206c6d206c71 206c74206d6178206d647570206d696e206d6f64206d756c206f707320706f7020706f> -3.693 F 3.693<7771>-.1 G 1.193<756974207264696d>-3.693 F -.18<7265>100 352.8 S 1.412<706561742072>.18 F 1.412 <6f6c6c2073742074656c6c2074702074757420756e6c696e6b2076>-.18 F 1.413 <61727320766220766d207768696c6520776d2078706e206279>-.1 F 1.413 <653d7175697420643d64656620663d6672>-.1 F 1.413<656520683d68656c70>-.18 F<693d696e66>100 364.8 Q 2.5<6f6c>-.25 G <3d6c69737420703d706f7020673d6772>-2.5 E <657020753d756e6c696e6b20783d65786368>-.18 E F0<2e>A F3 -.548<4155>20 381.6 S<54484f52>.548 E F0<5374696a6e2076>100 393.6 Q <616e20446f6e67656e2e>-.25 E F3<53454520414c534f>20 410.4 Q F2 <6d636c66616d696c79283729>100 422.4 Q F0<666f7220616e206f>2.5 E -.15 <7665>-.15 G<72766965>.15 E 2.5<776f>-.25 G 2.5<6661>-2.5 G<6c6c20746865 20646f63756d656e746174696f6e20616e6420746865207574696c697469657320696e20 746865206d636c2066>-2.5 E<616d696c792e>-.1 E<6d6378692031322d313335>20 768 Q<3134204d61792032303132>156.505 E<34>202.335 E 0 Cg EP %%Trailer end %%EOF mcl-12-135/COPYING0000644000402500021140000010451310642147212010327 00000000000000 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . mcl-12-135/VERSION0000644000402500021140000000000711754270104010337 0000000000000012-135 mcl-12-135/README0000644000402500021140000001053611104700731010150 00000000000000 If you use MCL software in your research, cite it as you would cite a journal or a book. This includes papers published in regular or electronic journals, usage of MCL as a back-end to a database that is accessible via a web interface, or inclusion of MCL in a larger framework of software that is distributed for other people to use. Include at least one of the following citations: Stijn van Dongen, Graph Clustering by Flow Simulation. PhD thesis, University of Utrecht, May 2000. ( http://www.library.uu.nl/digiarchief/dip/diss/1895620/inhoud.htm ) Stijn van Dongen. A cluster algorithm for graphs. Technical Report INS-R0010, National Research Institute for Mathematics and Computer Science in the Netherlands, Amsterdam, May 2000. ( http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z ) and proper attributions to mcl's home http://micans.org/mcl/ and its author, Stijn van Dongen. Do this *also* if you are using some wrapper around mcl such as the blast module. For biological applications, it is appropriate to cite, additionally, the reference article for the first application of mcl to biological data: Enright A.J., Van Dongen S., Ouzounis C.A. An efficient algorithm for large-scale detection of protein families, Nucleic Acids Research 30(7):1575-1584 (2002). Please be advised that the TribeMCL module has been disabled. BLAST users can use the blast package that is very well integrated with the core mcl libraries and offers many options and extensive configurability. Use mcxdeblast to parse BLAST files, use mcxassemble to transform the parser's output to mcl input. The Ensembl Families at ensembl.org are created with these programs. -------------------------------------------------------------------- It is also possible to use the pipeline script mclblastline that encapsulates mcxdeblast, mcxassemble, mcl, and clmformat (the latter prettyprints clustering results). Finally, with mcl's new label streaming facilities it is possible to cluster directly from BLAST files. Refer to the mcl website for examples. MCL documentation is in doc/, in various formats. It gets installed in /share/doc/mcl/. A few example input graphs are in graphs/, in the mcl matrix format; these are installed in /share/doc/mcl/examples/. The MCL webpage is at http://micans.org/mcl/ . MCL usage and development is discussed on the mcl-users mailing list found at http://listserver.ebi.ac.uk/mailman/listinfo/mcl-users. You can use this forum also for asking any MCL-related question. The version tag, which is of the form dd-ddd, encodes the year and day in year in which the distribution was made. So 02-058 encodes the 58-th day of the year 2002. Configure and compiler options Synopsis configure options: --prefix=YOUR-PREFIX (e.g. $HOME/local) --enable-blast By default, MCL is compiled using C ints and floats -- the ints are used to encode graph nodes/matrix indices, and the floats are used to encode edge weights / matrix entries. These can be changed respectively to long and double, by adding '-DINDEX_AS_LONG', and/or '-DVALUE_AS_DOUBLE' to the CFLAGS environment variable. The first enables a possibly wider range of indices to be used, the second increases the precision (which is presumably not useful in the vast majority of cases). Using gcc under bash, you might for example do export CFLAGS='-g -O2 -Wall -ansi -pedantic -DVALUE_AS_DOUBLE' before doing ./configure and make. If you are rebuilding, make sure to do 'make clean' first. You need not use doubles though; MCL does fine with floats. These features (changing the basic types) have not yet been tested thoroughly. For enabling rudimentary runtime integrity checks, add -DRUNTIME_INTEGRITY. MCL comes nowadays packaged with the BLAST parsing script mcxdeblast and the pipeline script mclblastline. It encapsulates all the stages of parsing, matrix creation, running mcl, and formatting the result into a single application. Enable them by adding --enable-blast to ./configure. These scripts can be used in place of the now disabled TribeMCL module. See also LICENSE for copyright and licensing, THANKS for contributors, INSTALL for generic installation instructions. mcl-12-135/Makefile.in0000644000402500021140000005342111754271040011344 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = . DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \ THANKS TODO autofoo/config.guess autofoo/config.sub \ autofoo/depcomp autofoo/install-sh autofoo/missing \ mkinstalldirs ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(install_sh) -d CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir dist dist-all distcheck ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ { test ! -d "$(distdir)" \ || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -fr "$(distdir)"; }; } am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = . util img graphs doc src include scripts testing AM_CPPFLAGS = -DMAN_PATH=\"$(mandir)\" EXTRA_DIST = \ LICENSE VERSION README COPYING THANKS INSTALL AUTHORS \ bootstrap \ configure.ac.in \ setversion all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: am--refresh: @: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \ $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(am__cd) $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) $(am__aclocal_m4_deps): config.h: stamp-h1 @if test ! -f $@; then \ rm -f stamp-h1; \ $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \ else :; fi stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status config.h $(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done -test -n "$(am__skip_mode_fix)" \ || find "$(distdir)" -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-lzma: distdir tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma $(am__remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz $(am__remove_distdir) dist-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__remove_distdir) dist dist-all: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lzma*) \ unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\ *.tar.xz*) \ xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir); chmod a+w $(distdir) mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ && cd "$$am__cwd" \ || exit 1 $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: @$(am__cd) '$(distuninstallcheck_dir)' \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-recursive all-am: Makefile config.h installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-hdr distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \ ctags-recursive install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am am--refresh check check-am clean clean-generic \ ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \ dist-lzma dist-shar dist-tarZ dist-xz dist-zip distcheck \ distclean distclean-generic distclean-hdr distclean-tags \ distcleancheck distdir distuninstallcheck dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am configure.ac: configure.ac.in VERSION ./setversion # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/aclocal.m40000644000402500021140000010704611754270111011140 00000000000000# generated automatically by aclocal 1.11 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.65],, [m4_warning([this file was generated for autoconf 2.65. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically `autoreconf'.])]) # Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.11' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. m4_if([$1], [1.11], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) # _AM_AUTOCONF_VERSION(VERSION) # ----------------------------- # aclocal traces this macro to find the Autoconf version. # This is a private macro too. Using m4_define simplifies # the logic in aclocal, which can simply ignore this definition. m4_define([_AM_AUTOCONF_VERSION], []) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.11])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to # `$srcdir', `$srcdir/..', or `$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is `.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [dnl Rely on autoconf to set up CDPATH properly. AC_PREREQ([2.50])dnl # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 9 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ(2.52)dnl ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE])dnl AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl _AM_SUBST_NOTMAKE([$1_FALSE])dnl m4_define([_AM_COND_VALUE_$1], [$2])dnl if $2; then $1_TRUE= $1_FALSE='#' else $1_TRUE='#' $1_FALSE= fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then AC_MSG_ERROR([[conditional "$1" was never defined. Usually this means the macro was only invoked conditionally.]]) fi])]) # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 10 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing # CC etc. in the Makefile, will ask for an AC_PROG_CC use... # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. # NAME is "CC", "CXX", "GCJ", or "OBJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular # dependency, and given that the user is not expected to run this macro, # just rely on AC_PROG_CC. AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl ifelse([$1], CC, [depcc="$CC" am_compiler_list=], [$1], CXX, [depcc="$CXX" am_compiler_list=], [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$1], UPC, [depcc="$UPC" am_compiler_list=], [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_$1_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi am__universal=false m4_case([$1], [CC], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac], [CXX], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac]) for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_$1_dependencies_compiler_type=none fi ]) AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) AM_CONDITIONAL([am__fastdep$1], [ test "x$enable_dependency_tracking" != xno \ && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) ]) # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. # This macro is AC_REQUIREd in _AM_DEPENDENCIES AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl ]) # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE(dependency-tracking, [ --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. #serial 5 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{ # Autoconf 2.62 quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ])# _AM_OUTPUT_DEPENDENCY_COMMANDS # AM_OUTPUT_DEPENDENCY_COMMANDS # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking # is enabled. FIXME. This creates each `.P' file that we will # need in order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2008, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 16 # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) # ----------------------------------------------- # The call with PACKAGE and VERSION arguments is the old style # call (pre autoconf-2.50), which is being phased out. PACKAGE # and VERSION should now be passed to AC_INIT and removed from # the call to AM_INIT_AUTOMAKE. # We support both call styles for the transition. After # the next Automake release, Autoconf can make the AC_INIT # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.62])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl # test to see if srcdir already configured if test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi AC_SUBST([CYGPATH_W]) # Define the identity of the package. dnl Distinguish between old-style and new-style calls. m4_ifval([$2], [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) AM_MISSING_PROG(AUTOCONF, autoconf) AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) AM_MISSING_PROG(AUTOHEADER, autoheader) AM_MISSING_PROG(MAKEINFO, makeinfo) AC_REQUIRE([AM_PROG_INSTALL_SH])dnl AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. The system "awk" is bad on # some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES(CC)], [define([AC_PROG_CC], defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES(CXX)], [define([AC_PROG_CXX], defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], [_AM_DEPENDENCIES(OBJC)], [define([AC_PROG_OBJC], defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl ]) _AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl dnl The `parallel-tests' driver may need to know about EXEEXT, so add the dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl ]) dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further dnl mangled by Autoconf and run in a shell conditional statement. m4_define([_AC_COMPILER_EXEEXT], m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the # loop where config.status creates the headers, so we can generate # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. _am_arg=$1 _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl if test x"${install_sh}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi AC_SUBST(install_sh)]) # Copyright (C) 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering # Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 5 # AM_MAINTAINER_MODE([DEFAULT-MODE]) # ---------------------------------- # Control maintainer-specific portions of Makefiles. # Default is to disable them, unless `enable' is passed literally. # For symmetry, `disable' may be passed as well. Anyway, the user # can override the default with the --enable/--disable switch. AC_DEFUN([AM_MAINTAINER_MODE], [m4_case(m4_default([$1], [disable]), [enable], [m4_define([am_maintainer_other], [disable])], [disable], [m4_define([am_maintainer_other], [enable])], [m4_define([am_maintainer_other], [enable]) m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles]) dnl maintainer-mode's default is 'disable' unless 'enable' is passed AC_ARG_ENABLE([maintainer-mode], [ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful (and sometimes confusing) to the casual installer], [USE_MAINTAINER_MODE=$enableval], [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) AC_MSG_RESULT([$USE_MAINTAINER_MODE]) AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) MAINT=$MAINTAINER_MODE_TRUE AC_SUBST([MAINT])dnl ] ) AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from `make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 6 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN]) $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it supports --run. # If it does, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= AC_MSG_WARN([`missing' script is too old or missing]) fi ]) # Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_MKDIR_P # --------------- # Check for `mkdir -p'. AC_DEFUN([AM_PROG_MKDIR_P], [AC_PREREQ([2.60])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, dnl while keeping a definition of mkdir_p for backward compatibility. dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of dnl Makefile.ins that do not define MKDIR_P, so we do our own dnl adjustment using top_builddir (which is defined more often than dnl MKDIR_P). AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl case $mkdir_p in [[\\/$]]* | ?:[[\\/]]*) ;; */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; esac ]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) # ------------------------------ # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), 1)]) # _AM_SET_OPTIONS(OPTIONS) # ---------------------------------- # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 5 # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Just in case sleep 1 echo timestamp > conftest.file # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[[\\\"\#\$\&\'\`$am_lf]]*) AC_MSG_ERROR([unsafe absolute working directory name]);; esac case $srcdir in *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; esac # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$[*]" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi rm -f conftest.file if test "$[*]" != "X $srcdir/configure conftest.file" \ && test "$[*]" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken alias in your environment]) fi test "$[2]" = conftest.file ) then # Ok. : else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi AC_MSG_RESULT(yes)]) # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor `install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we # always use install-sh in `make install-strip', and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the `STRIP' environment variable to overrule this program. dnl Don't test for $cross_compiling = yes, because it might be `maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Copyright (C) 2006, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_AM_SUBST_NOTMAKE]) # AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Public sister of _AM_SUBST_NOTMAKE. AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. # FORMAT should be one of `v7', `ustar', or `pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory # $tardir. # tardir=directory && $(am__tar) > result.tar # # Substitute a variable $(am__untar) that extract such # a tarball read from stdin. # $(am__untar) < result.tar AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility. AM_MISSING_PROG([AMTAR], [tar]) m4_if([$1], [v7], [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], [m4_case([$1], [ustar],, [pax],, [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' _am_tools=${am_cv_prog_tar_$1-$_am_tools} # Do not fold the above two line into one, because Tru64 sh and # Solaris sh will not grok spaces in the rhs of `-'. for _am_tool in $_am_tools do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do AM_RUN_LOG([$_am_tar --version]) && break done am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x $1 -w "$$tardir"' am__tar_='pax -L -x $1 -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H $1 -L' am__tar_='find "$tardir" -print | cpio -o -H $1 -L' am__untar='cpio -i -H $1 -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_$1}" && break # tar/untar a dummy directory, and stop if the command works rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) rm -rf conftest.dir if test -s conftest.tar; then AM_RUN_LOG([$am__untar /dev/null 2>&1 && break fi done rm -rf conftest.dir AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) AC_MSG_RESULT([$am_cv_prog_tar_$1])]) AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR m4_include([acinclude.m4]) mcl-12-135/configure.ac.in0000644000402500021140000001202611666007774012203 00000000000000# Process this file with autoconf to produce a configure script. # # $Id: configure.ac.in,v 1.36 2006-11-03 13:06:53 flux Exp $ AC_PREREQ(2.50) AC_INIT(mcl, setversion_VERSION, mcl-devel@lists.micans.org) PACKAGE=$PACKAGE_NAME VERSION=$PACKAGE_VERSION AC_CONFIG_AUX_DIR(autofoo) AC_CONFIG_SRCDIR([src/shmcl/mcl.c]) AM_INIT_AUTOMAKE($PACKAGE, $VERSION) # one day we should use a config.h.in AC_CONFIG_HEADER(config.h) # add a `--enable-maintainer-mode' option to `configure'; `maintainer-only' rules turned off by # default in Makefile.in's AM_MAINTAINER_MODE ######################## test void*/uint ##################################### AC_CACHE_CHECK([ _____ weak test for C void* <=> unsigned int conversion], [ac_cv_c_void_uint], [AC_RUN_IFELSE( [AC_LANG_SOURCE([[ #include #include unsigned test[] = { 0x00000000, 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000 , 0x0000000f, 0x00000f00, 0x000f0000, 0x00f00000, 0x0f000000 , 0x0000ffff, 0x00ffff00, 0xffff0000, 0x00ff00ff, 0xff00ff00 , 0x00ffffff, 0x00ffffff, 0xffffff00, 0xffff00ff, 0xffffffff , 0x80000000, 0x40000000, 0xc0000000, 0x80000001, 0x40000001 } ; int main ( int argc , char* argv[] ) { int i = 0 ; for (i=0;i void* failed: do not use --abc options. /\/\ Consider contacting the author (http://micans.org/stijn/contact.html \/\/ \/ Please include the file config.log. EOM fi ######################## helpful reminder ##################################### # extra ./configure options AC_ARG_ENABLE(helpful-reminder, AC_HELP_STRING([--enable-helpful-reminder], [output citation reference (default is yes)]), [ case "${enableval}" in yes) helpful_reminder=yes ;; no) helpful_reminder=no ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-helpful-reminder]) ;; esac ], [helpful_reminder=yes] ) if test "$helpful_reminder" = "yes"; then AC_DEFINE(MCL_HELPFUL_REMINDER, [], [output citation reference (default yes)]) fi ######################## tribe package ##################################### ## DEPRECATED. ## PLEASE USE BLAST PACKAGE INSTEAD. ## # extra ./configure options ## AC_ARG_ENABLE(tribe, ## [ --enable-tribe build contributed tribe tools (protein clustering stuff) ], ## [ ## case "${enableval}" in ## yes) tribe=true ;; ## no) tribe=false ;; ## *) AC_MSG_ERROR([bad value ${enableval} for --enable-tribe]) ;; ## esac ## ], [tribe=false] ## ) ## AM_CONDITIONAL(BUILD_TRIBE, test x$tribe = xtrue) ######################## blast package ##################################### AC_ARG_ENABLE(blast, [ --enable-blast build bio-informatics tools ], [ case "${enableval}" in yes) blast=true ;; no) blast=false ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-blast]) ;; esac ], [blast=false] ) AM_CONDITIONAL(BUILD_BLAST, test x$blast = xtrue) ## it would be nice if we'd be able to set ## our default -I compile option here ## AC_SUBST INCLUDES ## CPPFLAGS ### AC_SUBST(mandir) #AC_DEFINE_UNQUOTED(MANPATH, $datarootdir, [ # where to look for manual files #]) #AC_SUBST(datarootdir) # AC_DEFINE_UNQUOTED([DATA_PATH], [@prefix@/share/man], [Description]) # Checks for programs. AC_PROG_AWK AC_PROG_CC AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_RANLIB # Checks for libraries. # FIXME: Replace `main' with a function in `-lm': AC_CHECK_LIB([m], [main]) # Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS([float.h limits.h malloc.h stdlib.h string.h unistd.h]) # Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_TYPE_SIZE_T # Figure out how to build C programs using POSIX threads, and # use the variables given by acx_pthread.m4 in acinclude.m4 ACX_PTHREAD([ LIBS="$PTHREAD_LIBS $LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" CC="$PTHREAD_CC" ]) # Checks for library functions. AC_FUNC_MALLOC AC_FUNC_MEMCMP AC_FUNC_VPRINTF AC_CHECK_FUNCS([floor memset pow rint sqrt strchr strpbrk strstr]) AC_CHECK_VA_COPY # AC_CONFIG_FILES([Makefile]) AC_OUTPUT([ Makefile include/Makefile doc/Makefile testing/Makefile testing/stream/Makefile testing/blast/Makefile testing/setops/Makefile graphs/Makefile img/Makefile scripts/Makefile util/Makefile src/Makefile src/clew/Makefile src/mcl/Makefile src/gryphon/Makefile src/impala/Makefile src/shcl/Makefile src/shmcl/Makefile src/shmx/Makefile src/shmcxquery/Makefile src/shmcx/Makefile src/alien/Makefile src/alien/oxygen/Makefile src/alien/oxygen/doc/Makefile src/alien/oxygen/src/Makefile ]) mcl-12-135/acinclude.m40000644000402500021140000003526611444411522011474 00000000000000 ## va_copy check ## dnl Available from the GNU Autoconf Macro Archive at: dnl http://www.gnu.org/software/ac-archive/htmldoc/acx_pthread.html dnl AC_DEFUN([ACX_PTHREAD], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_LANG_SAVE AC_LANG_C acx_pthread_ok=no # We used to check for pthread.h first, but this fails if pthread.h # requires special compiler flags (e.g. on True64 or Sequent). # It gets checked for in the link test anyway. # First of all, check if the user has set any of the PTHREAD_LIBS, # etcetera environment variables, and if threads linking works using # them: if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" save_LIBS="$LIBS" LIBS="$PTHREAD_LIBS $LIBS" AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS]) AC_TRY_LINK_FUNC(pthread_join, acx_pthread_ok=yes) AC_MSG_RESULT($acx_pthread_ok) if test x"$acx_pthread_ok" = xno; then PTHREAD_LIBS="" PTHREAD_CFLAGS="" fi LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" fi # We must check for the threads library under a number of different # names; the ordering is very important because some systems # (e.g. DEC) have both -lpthread and -lpthreads, where one of the # libraries is broken (non-POSIX). # Create a list of thread flags to try. Items starting with a "-" are # C compiler flags, and other items are library names, except for "none" # which indicates that we try without any flags at all, and "pthread-config" # which is a program returning the flags for the Pth emulation library. acx_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" # The ordering *is* (sometimes) important. Some notes on the # individual items follow: # pthreads: AIX (must check this before -lpthread) # none: in case threads are in libc; should be tried before -Kthread and # other compiler flags to prevent continual compiler warnings # -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) # -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) # lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) # -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) # -pthreads: Solaris/gcc # -mthreads: Mingw32/gcc, Lynx/gcc # -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it # doesn't hurt to check since this sometimes defines pthreads too; # also defines -D_REENTRANT) # pthread: Linux, etcetera # --thread-safe: KAI C++ # pthread-config: use pthread-config program (for GNU Pth library) case "${host_cpu}-${host_os}" in *solaris*) # On Solaris (at least, for some versions), libc contains stubbed # (non-functional) versions of the pthreads routines, so link-based # tests will erroneously succeed. (We need to link with -pthread or # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather # a function called by this macro, so we could check for that, but # who knows whether they'll stub that too in a future libc.) So, # we'll just look for -pthreads and -lpthread first: acx_pthread_flags="-pthread -pthreads pthread -mt $acx_pthread_flags" ;; esac if test x"$acx_pthread_ok" = xno; then for flag in $acx_pthread_flags; do case $flag in none) AC_MSG_CHECKING([whether pthreads work without any flags]) ;; -*) AC_MSG_CHECKING([whether pthreads work with $flag]) PTHREAD_CFLAGS="$flag" ;; pthread-config) AC_CHECK_PROG(acx_pthread_config, pthread-config, yes, no) if test x"$acx_pthread_config" = xno; then continue; fi PTHREAD_CFLAGS="`pthread-config --cflags`" PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" ;; *) AC_MSG_CHECKING([for the pthreads library -l$flag]) PTHREAD_LIBS="-l$flag" ;; esac save_LIBS="$LIBS" save_CFLAGS="$CFLAGS" LIBS="$PTHREAD_LIBS $LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" # Check for various functions. We must include pthread.h, # since some functions may be macros. (On the Sequent, we # need a special flag -Kthread to make this header compile.) # We check for pthread_join because it is in -lpthread on IRIX # while pthread_create is in libc. We check for pthread_attr_init # due to DEC craziness with -lpthreads. We check for # pthread_cleanup_push because it is one of the few pthread # functions on Solaris that doesn't have a non-functional libc stub. # We try pthread_create on general principles. AC_TRY_LINK([#include ], [pthread_t th; pthread_join(th, 0); pthread_attr_init(0); pthread_cleanup_push(0, 0); pthread_create(0,0,0,0); pthread_cleanup_pop(0); ], [acx_pthread_ok=yes]) LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" AC_MSG_RESULT($acx_pthread_ok) if test "x$acx_pthread_ok" = xyes; then break; fi PTHREAD_LIBS="" PTHREAD_CFLAGS="" done fi # Various other checks: if test "x$acx_pthread_ok" = xyes; then save_LIBS="$LIBS" LIBS="$PTHREAD_LIBS $LIBS" save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" # Detect AIX lossage: threads are created detached by default # and the JOINABLE attribute has a nonstandard name (UNDETACHED). AC_MSG_CHECKING([for joinable pthread attribute]) AC_TRY_LINK([#include ], [int attr=PTHREAD_CREATE_JOINABLE;], ok=PTHREAD_CREATE_JOINABLE, ok=unknown) if test x"$ok" = xunknown; then AC_TRY_LINK([#include ], [int attr=PTHREAD_CREATE_UNDETACHED;], ok=PTHREAD_CREATE_UNDETACHED, ok=unknown) fi if test x"$ok" != xPTHREAD_CREATE_JOINABLE; then AC_DEFINE(PTHREAD_CREATE_JOINABLE, $ok, [Define to the necessary symbol if this constant uses a non-standard name on your system.]) fi AC_MSG_RESULT(${ok}) if test x"$ok" = xunknown; then AC_MSG_WARN([we do not know how to create joinable pthreads]) fi AC_MSG_CHECKING([if more special flags are required for pthreads]) flag=no case "${host_cpu}-${host_os}" in *-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";; *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";; esac AC_MSG_RESULT(${flag}) if test "x$flag" != xno; then PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" fi LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" # More AIX lossage: must compile with cc_r AC_CHECK_PROG(PTHREAD_CC, cc_r, cc_r, ${CC}) else PTHREAD_CC="$CC" fi AC_SUBST(PTHREAD_LIBS) AC_SUBST(PTHREAD_CFLAGS) AC_SUBST(PTHREAD_CC) # Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: if test x"$acx_pthread_ok" = xyes; then ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1]) : else acx_pthread_ok=no $2 fi AC_LANG_RESTORE ])dnl ACX_PTHREAD ## va_copy check ## dnl ## dnl ## NAME: dnl ## AC_CHECK_VA_COPY -- Check for C99 va_copy dnl ## dnl ## COPYRIGHT dnl ## Copyright (c) 2006 Ralf S. Engelschall dnl ## dnl ## DESCRIPTION: dnl ## This macro checks for C99 va_copy() implementation and dnl ## provides fallback implementation if neccessary. Notice: this dnl ## check is rather complex because first because we really have dnl ## to try various possible implementations in sequence and dnl ## second, we cannot define a macro in config.h with parameters dnl ## directly. dnl ## dnl ## USAGE: dnl ## configure.in: dnl ## AC_CHECK_VA_COPY dnl ## foo.c: dnl ## #include "config.h" dnl ## [...] dnl ## va_copy(d,s) dnl ## dnl # test program for va_copy() implementation changequote(<<,>>) m4_define(__va_copy_test, <<[ #include #include #include #define DO_VA_COPY(d, s) $1 void test(char *str, ...) { va_list ap, ap2; int i; va_start(ap, str); DO_VA_COPY(ap2, ap); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } DO_VA_COPY(ap, ap2); for (i = 1; i <= 9; i++) { int k = (int)va_arg(ap, int); if (k != i) abort(); } va_end(ap); } int main(int argc, char *argv[]) { test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); exit(0); } ]>>) changequote([,]) dnl # test driver for va_copy() implementation m4_define(__va_copy_check, [ AH_VERBATIM($1, [/* Predefined possible va_copy() implementation (id: $1) */ #define __VA_COPY_USE_$1(d, s) $2]) if test ".$ac_cv_va_copy" = .; then AC_TRY_RUN(__va_copy_test($2), [ac_cv_va_copy="$1"]) fi ]) dnl # Autoconf check for va_copy() implementation checking AC_DEFUN([AC_CHECK_VA_COPY],[ dnl # provide Autoconf display check message AC_MSG_CHECKING(for va_copy() function) dnl # check for various implementations in priorized sequence AC_CACHE_VAL(ac_cv_va_copy, [ ac_cv_va_copy="" dnl # 1. check for standardized C99 macro __va_copy_check(C99, [va_copy((d), (s))]) dnl # 2. check for alternative/deprecated GCC macro __va_copy_check(GCM, [VA_COPY((d), (s))]) dnl # 3. check for internal GCC macro (high-level define) __va_copy_check(GCH, [__va_copy((d), (s))]) dnl # 4. check for internal GCC macro (built-in function) __va_copy_check(GCB, [__builtin_va_copy((d), (s))]) dnl # 5. check for assignment approach (assuming va_list is a struct) __va_copy_check(ASS, [do { (d) = (s); } while (0)]) dnl # 6. check for assignment approach (assuming va_list is a pointer) __va_copy_check(ASP, [do { *(d) = *(s); } while (0)]) dnl # 7. check for memory copying approach (assuming va_list is a struct) __va_copy_check(CPS, [memcpy((void *)&(d), (void *)&(s)), sizeof((s))]) dnl # 8. check for memory copying approach (assuming va_list is a pointer) __va_copy_check(CPP, [memcpy((void *)(d), (void *)(s)), sizeof(*(s))]) if test ".$ac_cv_va_copy" = .; then AC_ERROR([no working implementation found]) fi ]) dnl # optionally activate the fallback implementation if test ".$ac_cv_va_copy" = ".C99"; then AC_DEFINE(HAVE_VA_COPY, 1, [Define if va_copy() macro exists (and no fallback implementation is required)]) fi dnl # declare which fallback implementation to actually use AC_DEFINE_UNQUOTED([__VA_COPY_USE], [__VA_COPY_USE_$ac_cv_va_copy], [Define to id of used va_copy() implementation]) dnl # provide activation hook for fallback implementation AH_VERBATIM([__VA_COPY_ACTIVATION], [/* Optional va_copy() implementation activation */ #ifndef HAVE_VA_COPY #define va_copy(d, s) __VA_COPY_USE(d, s) #define HAVE_VA_COPY 1 #endif ]) dnl # provide Autoconf display result message if test ".$ac_cv_va_copy" = ".C99"; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no (using fallback implementation)]) fi ]) ## Referenceable va_list ## # http://autoconf-archive.cryp.to/ax_c_referenceable_passed_va_list.html AC_DEFUN([AX_C_REFERENCEABLE_PASSED_VA_LIST], [ AC_CACHE_CHECK([whether f(va_list va){ &va; } works as expected], [ax_cv_c_referenceable_passed_va_list], [AC_LINK_IFELSE([[ #include volatile va_list g_va; void vf(va_list callee_va) { /* typeof(callee_va) differs from typeof(caller_va) by a compiler trick, if * va_list is implemented as an array. On such environment, this copy * operation fails. */ g_va = callee_va; } void f(int last, ...) { va_list caller_va; va_start(caller_va, last); vf(caller_va); /* passed as &caller_va[0] if va_list is an array type */ va_end(caller_va); } int main(int argc, char *argv[]) { f(0xdeadbeef, 0xfedbeef, 0xfeedee); return 0; } ]], [ax_cv_c_referenceable_passed_va_list=yes], [ax_cv_c_referenceable_passed_va_list=no])]) if test "x$ax_cv_c_referenceable_passed_va_list" = xyes; then AC_DEFINE([HAVE_REFERENCEABLE_PASSED_VA_LIST], [1], [Define to 1 if f(va_list va){ &va; } works as expected.]) fi ]) AC_DEFUN([AC_LIB_READLINE], [ AC_CACHE_CHECK([for the readline library], ac_cv_lib_readline, [ ac_cv_lib_readline="no" ORIG_LIBS=$LIBS LIBS="$ORIG_LIBS -lreadline -ltermcap" AC_TRY_LINK_FUNC(readline, ac_cv_lib_readline="yes") if test "$ac_cv_lib_readline" = "no"; then LIBS=$ORIG_LIBS fi ]) enable_readline="no" if test "$ac_cv_lib_readline" = "yes"; then AC_CHECK_HEADERS(readline.h readline/readline.h) AC_CACHE_CHECK([whether readline supports history], ac_cv_lib_readline_history, [ ac_cv_lib_readline_history="no" AC_TRY_LINK_FUNC(add_history, ac_cv_lib_readline_history="yes") ]) if test "$ac_cv_lib_readline_history" = "yes"; then AC_CHECK_HEADERS(history.h readline/history.h) AC_CACHE_CHECK([whether readline supports completion], ac_cv_lib_readline_completion, [ ac_cv_lib_readline_completion="no" AC_TRY_LINK_FUNC(rl_completion_matches, ac_cv_lib_readline_completion="yes") ]) if test "$ac_cv_lib_readline_completion" = "yes"; then enable_readline="yes" fi fi else AC_MSG_RESULT([readline or termcap library is missing]) fi ]) AC_DEFUN([AC_WITH_READLINE], [ AC_ARG_WITH(readline, [ --with-readline=DIR Readline installation directory], with_readline=$withval) if test "$with_readline" != ""; then CPPFLAGS="-I$with_readline/include $CPPFLAGS" LIBS="-L$with_readline/lib $LIBS" fi ]) AC_DEFUN([AC_MMX_OPTION_READLINE], [ AC_ARG_ENABLE(readline, AC_HELP_STRING( [--enable-readline], [use the readline library [[yes]]]), [], [enable_readline="yes"]) if test "$enable_readline" = "yes"; then AC_WITH_READLINE AC_LIB_READLINE fi if test "$enable_readline" = "no"; then AC_MSG_RESULT([disabling readline]) AC_DEFINE(HAVE_READLINE, 0, [Define if you have the readline library]) else AC_MSG_RESULT([enabling readline]) AC_DEFINE(HAVE_READLINE, 1, [Define if you have the readline library]) fi AM_CONDITIONAL([READLINE_OPT], [test "$enable_readline" = "yes"]) ]) mcl-12-135/src/0000777000402500021140000000000011756465223010157 500000000000000mcl-12-135/src/shmcl/0000777000402500021140000000000011756465225011267 500000000000000mcl-12-135/src/shmcl/Makefile.in0000644000402500021140000003565011754271037013253 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/include/include.am bin_PROGRAMS = mcl$(EXEEXT) mclcm$(EXEEXT) subdir = src/shmcl ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" PROGRAMS = $(bin_PROGRAMS) am_mcl_OBJECTS = mcl.$(OBJEXT) mcl_OBJECTS = $(am_mcl_OBJECTS) mcl_LDADD = $(LDADD) mcl_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mclcm_OBJECTS = mclcm.$(OBJEXT) mclcm_OBJECTS = $(am_mclcm_OBJECTS) mclcm_LDADD = $(LDADD) mclcm_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/autofoo/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(mcl_SOURCES) $(mclcm_SOURCES) DIST_SOURCES = $(mcl_SOURCES) $(mclcm_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir) LDADD = ../mcl/libmcl.a ../clew/libclew.a ../gryphon/libgryphon.a ../impala/libimpala.a ../../util/libutil.a AM_LDFLAGS = -lm mcl_SOURCES = mcl.c mclcm_SOURCES = mclcm.c all: all-am .SUFFIXES: .SUFFIXES: .c .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/include/include.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/shmcl/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu src/shmcl/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p; \ then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) mcl$(EXEEXT): $(mcl_OBJECTS) $(mcl_DEPENDENCIES) @rm -f mcl$(EXEEXT) $(LINK) $(mcl_OBJECTS) $(mcl_LDADD) $(LIBS) mclcm$(EXEEXT): $(mclcm_OBJECTS) $(mclcm_DEPENDENCIES) @rm -f mclcm$(EXEEXT) $(LINK) $(mclcm_OBJECTS) $(mclcm_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mclcm.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) installdirs: for dir in "$(DESTDIR)$(bindir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-binPROGRAMS clean-generic mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-binPROGRAMS install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-binPROGRAMS .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ clean-generic ctags distclean distclean-compile \ distclean-generic distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-binPROGRAMS \ install-data install-data-am install-dvi install-dvi-am \ install-exec install-exec-am install-html install-html-am \ install-info install-info-am install-man install-pdf \ install-pdf-am install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-binPROGRAMS # AM_LDFLAGS = -lm -lunwind -ltcmalloc # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/src/shmcl/mclcm.c0000755000402500021140000007471711744234357012462 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* * TODO * * Clean up, modularize, compactify. * Different modes are now messy: * vanilla/contract * subcluster * integrate * dispatch * * Component part still is a bit tricky. * * ? optionally add layer of singleton nodes? * ? are the loops set here redone in mclAlgorithm? * * If non-ground-up projection is used, need to keep track of * contracted matrices and chain of backprojected clusterings (NYI) * * The top level code is a bit stretched. especially -c, -b1, -b2 * functionality (initialization). * * [?] where does vec->val come from with --write-graphx + --shadow */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "../../config.h" /* needed for MCL_HELPFUL_REMINDER */ #include "impala/matrix.h" #include "impala/vector.h" #include "impala/io.h" #include "impala/stream.h" #include "impala/ivp.h" #include "impala/compose.h" #include "impala/iface.h" #include "impala/app.h" #include "clew/clm.h" #include "clew/cat.h" #include "util/types.h" #include "util/ding.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/equate.h" #include "util/rand.h" #include "util/opt.h" #include "mcl/proc.h" #include "mcl/procinit.h" #include "mcl/alg.h" #include "mcl/transform.h" #include "clew/clm.h" static void helpful_reminder ( void ) { #ifdef MCL_HELPFUL_REMINDER if (mcxLogLevel & MCX_LOG_UNIVERSE) { fprintf(stderr, "\nPlease cite:\n"); fprintf(stderr, " Stijn van Dongen, Graph Clustering by Flow Simulation. PhD thesis,\n"); fprintf(stderr, " University of Utrecht, May 2000.\n"); fprintf(stderr, " ( http://www.library.uu.nl/digiarchief/dip/diss/1895620/full.pdf\n"); fprintf(stderr, " or http://micans.org/mcl/lit/svdthesis.pdf.gz)\n"); fprintf(stderr, "OR\n"); fprintf(stderr, " Stijn van Dongen, A cluster algorithm for graphs. Technical\n"); fprintf(stderr, " Report INS-R0010, National Research Institute for Mathematics\n"); fprintf(stderr, " and Computer Science in the Netherlands, Amsterdam, May 2000.\n"); fprintf(stderr, " ( http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z\n"); fprintf(stderr, " or http://micans.org/mcl/lit/INS-R0010.ps.Z)\n\n"); } #endif } enum { MY_OPT_SHARED , MY_OPT_TRANSFORM , MY_OPT_Z , MY_OPT_BASE , MY_OPT_B1 , MY_OPT_B2 , MY_OPT_ADDTP , MY_OPT_HDP , MY_OPT_SHADOW , MY_OPT_ANNOT , MY_OPT_IAF , MY_OPT_CL , MY_OPT_CONTROL , MY_OPT_CONTRACT , MY_OPT_SUBCLUSTER , MY_OPT_SUBCLUSTERX , MY_OPT_INTEGRATE , MY_OPT_DISPATCH , MY_OPT_NMAX , MY_OPT_ROOT , MY_OPT_CONE , MY_OPT_STACK , MY_OPT_COARSE , MY_OPT_BASENAME , MY_OPT_WRITE , MY_OPT_STEM , MY_OPT_MULTIPLEX , MY_OPT_HELP , ALG_OPT_QUIET , ALG_OPT_SETENV , MY_OPT_APROPOS , MY_OPT_VERSION } ; const char* syntax = "Usage: mclcm [mclcm options] [-- \"\"*]"; mcxOptAnchor options[] = { { "--version" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_VERSION , NULL , "output version information, exit" } , { "-h" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "this info (currently)" } , { "-b1" , MCX_OPT_HASARG , MY_OPT_B1 , "" , "dedicated parameters to construct base transformed matrix" } , { "-b2" , MCX_OPT_HASARG , MY_OPT_B2 , "" , "dedicated parameters to construct base expanded matrix" } , { "-q" , MCX_OPT_HASARG , ALG_OPT_QUIET , "" , "quiet level of logging" } , { "-set" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , ALG_OPT_SETENV , "key=val" , "set key to value val in the environment" } , { "-xxx-hdp" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_HDP , "" , "take hadamard power for transposed cluster matrix" } , { "--xxx-add-tp" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_ADDTP , NULL , "symmetrify coarsened matrix by adding transpose" } , { "-annot" , MCX_OPT_HASARG , MY_OPT_ANNOT , "" , "describes the experiment, useful when command-line is propagated" } , { "-iaf" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_IAF , "" , "inflation adapation factor (decrease when stagnating)" } , { "-z" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_Z , NULL , "show default shared options" } , { "-a" , MCX_OPT_HASARG , MY_OPT_SHARED , "" , "shared mcl options" } , { "-tf" , MCX_OPT_HASARG , MY_OPT_TRANSFORM , "" , "apply unary transformations to matrix values" } , { "-write-base" , MCX_OPT_HASARG , MY_OPT_BASENAME , "" , "file to write base graph to" } , { "-coarse" , MCX_OPT_HASARG , MY_OPT_COARSE , "" , "file to write coarsened graphs to" } , { "-cone" , MCX_OPT_HASARG , MY_OPT_CONE , "" , "file to write nested cluster stack to" } , { "-stack" , MCX_OPT_HASARG , MY_OPT_STACK , "" , "file to write expanded cluster stack to" } , { "-write" , MCX_OPT_HASARG , MY_OPT_WRITE , "" , " may contain 'stack', 'cone', 'coarse', 'steps'" } , { "-root" , MCX_OPT_HASARG , MY_OPT_ROOT , "y/n" , "make sure universe clustering is at the top" } , { "-n" , MCX_OPT_HASARG , MY_OPT_NMAX , "" , "iterate at most times (default: until root clustering)" } , { "-stem" , MCX_OPT_HASARG , MY_OPT_STEM , "" , "file prefix for cone, stack, and coarse" } , { "--mplex" , MCX_OPT_HASARG , MY_OPT_MULTIPLEX , "y/n" , "additionally write clusterings to separate files" } , { "-c" , MCX_OPT_HASARG , MY_OPT_CL , "" , "use as start clustering" } , { "--contract" , MCX_OPT_DEFAULT , MY_OPT_CONTRACT , NULL , "use contraction approach (default)" } , { "--subcluster" , MCX_OPT_DEFAULT , MY_OPT_SUBCLUSTER , NULL , "use subclustering approach" } , { "--subcluster-x" , MCX_OPT_HIDDEN , MY_OPT_SUBCLUSTERX , NULL , "use subclustering approach, reduce block-internal edges" } , { "--integrate" , MCX_OPT_DEFAULT , MY_OPT_INTEGRATE , NULL , "construct hierarchy from cluster (file) arguments" } , { "--dispatch" , MCX_OPT_DEFAULT , MY_OPT_DISPATCH , NULL , "construct hierarchy from multiple mcl runs" } , { "-ctrl" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_CONTROL , "" , "controlling clustering" } , { "--help" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_APROPOS , NULL , "this info" } , { NULL , 0 , 0 , NULL, NULL} } ; const char* usagelines[]; const char* me = "mclcm"; void usage ( const char** ) ; static mclx* control_test ( mclx* clnext , const mclx* clctrl ) { if (!clctrl) return clnext ; { mclx* meet = clmMeet(clctrl, clnext) ; dim dist_ctrl_curr, dist_curr_ctrl ; clmSJDistance (clnext, clctrl, NULL, NULL, &dist_curr_ctrl, &dist_ctrl_curr) ; mcxLog ( MCX_LOG_APP , me , "distance to control: %lu %lu %lu" , (ulong) (dist_curr_ctrl + dist_ctrl_curr) , (ulong) dist_curr_ctrl , (ulong) dist_ctrl_curr ) ; if (dist_curr_ctrl <= dist_ctrl_curr) { mclxFree(&clnext) ; clnext = meet ; } else mclxFree(&meet) ; } return clnext ; } static mcxbool subcluster_g = FALSE; static mcxbool subclusterx_g = FALSE; static mcxbool integrate_g = FALSE; static mcxbool dispatch_g = FALSE; static mclxCat stck_g; static double hdp_g = 0.0; static mclv* start_col_sums_g = NULL; void write_clustering ( mclx* cl , const mclx* clprev , mcxIO* xfcone , mcxIO* xfstack , const char* plexprefix , int multiplex_idx , const mclAlgParam* mlp ) { /* this branch is also taken for dispatch mode */ if (plexprefix) { mcxTing* clname = mcxTingPrint(NULL, "%s.%03d", plexprefix, multiplex_idx) ; mcxIO* xfout = mcxIOnew(clname->str, "w") ; if (dispatch_g && mlp && !mcxIOopen(xfout, RETURN_ON_FAIL)) fprintf(xfout->fp, "# %s\n", mlp->cline->str) ; mclxaWrite(cl, xfout, MCLXIO_VALUE_NONE, RETURN_ON_FAIL) ; mcxTingFree(&clname) ; mcxIOfree(&xfout) ; } if (subcluster_g || dispatch_g) return ; if (xfstack) mclxaWrite(cl, xfstack, MCLXIO_VALUE_NONE, RETURN_ON_FAIL) ; if (xfcone && !clprev) mclxaWrite(cl, xfcone, MCLXIO_VALUE_NONE, RETURN_ON_FAIL) ; else if (xfcone) { mclx* clprevt = mclxTranspose(clprev) ; mclx* contracted = mclxCompose(clprevt, cl, 0) ; mclxMakeCharacteristic(contracted) ; mclxaWrite(contracted, xfcone, MCLXIO_VALUE_NONE, RETURN_ON_FAIL) ; mclxFree(&clprevt) ; mclxFree(&contracted) ; } } void help ( mcxOptAnchor* options , mcxTing* shared ) { if (options) mcxOptApropos(stdout, me, syntax, 0, MCX_OPT_DISPLAY_SKIP, options) ; fprintf(stdout, "\nDefault options: %s\n", shared->str) ; fprintf ( stdout , "These can be overridden using -a \"\" or" " with the optional trailing argument specifications\n" ) ; fprintf ( stdout , "\nThe following is an example of using label input:\n" "mclcm -a \"-I 4\" -- \"--expect-abc --write-tab=.tab\"\n" ) ; } /* fixme: more robust would be to use distance to meet */ static int annot_cmp_coarse_first ( const void* a1 , const void* a2 ) { const mclx* mx1 = ((mclxAnnot*) a1)->mx ; const mclx* mx2 = ((mclxAnnot*) a2)->mx ; return N_COLS(mx1) < N_COLS(mx2) ? -1 : N_COLS(mx1) > N_COLS(mx2) ? 1 : 0 ; } static mcxstatus get_interface ( mclAlgParam** mlpp , const char* fn_input /* Use this as input or mx_input */ , const char* arg_shared , const char* arg_extra , mclx* mx_input /* Use this as input or fn_input */ , mcxbits CACHE , mcxOnFail ON_FAIL ) { mcxTing* spec = mcxTingNew(arg_shared) ; int argc1 = 0 ; char** argv1 ; mcxstatus status ; mclAlgParam* mymlp = NULL ; mclAlgParam** mymlpp = mlpp ? mlpp : &mymlp ; if (arg_extra) mcxTingPrintAfter(spec, " %s", arg_extra) /* warning this clobbers spec->str */ ; argv1 = mcxOptParseString(spec->str, &argc1, ' ') ; status = mclAlgInterface ( mymlpp , argv1 , argc1 , fn_input , mx_input , CACHE ) ; if (status && ON_FAIL == EXIT_ON_FAIL) mcxExit(1) ; mcxFree(argv1) ; mcxTingFree(&spec) /* fixfixfixmefixmefffixme: mclAlgInterface might use opt->val * which points to somewhere in spec->str. Check. */ ; if (!mlpp) mclAlgParamFree(mymlpp, TRUE) ; return status ; } static mclx* get_coarse ( const mclx* mxbase , mclx* clprev , mcxbool add_transpose ) { mclx* blockc = mclxBlocksC(mxbase, clprev) ; mclx* clprevtp = mclxTranspose(clprev) ; mclx *p1 = NULL /* p_roduct */ ; mclx* mx_coarse= NULL ; mclxMakeStochastic(clprev) /****************** ************************************/ ; if (hdp_g) mclxUnary(clprev, fltxPower, &hdp_g) /* parameter: use mxbase rather than blockc */ ; if (getenv("MCLCM_BLOCK_STOCHASTIC")) /* this works very badly! */ mclxMakeStochastic(blockc) ; else if (getenv("MCLCM_BASE_UNSCALE") && start_col_sums_g) { dim i ; for (i=0;iivps[i].val ; mclvUnary(blockc->cols+i, fltxMul, &f) ; } ; } /****************** *****************************************/ p1 = mclxCompose(blockc, clprev, 0) ;if (0) {mcxIO* t = mcxIOnew("-", "w") ;mclxWrite(blockc, t, MCLXIO_VALUE_GETENV, EXIT_ON_FAIL) ; } ; mclxFree(&blockc) ; mx_coarse = mclxCompose(clprevtp, p1, 0) ; if (add_transpose) mclxAddTranspose(mx_coarse, 0.0) ; mclxAdjustLoops(mx_coarse, mclxLoopCBremove, NULL) ; mclxFree(&p1) ; mclxFree(&clprevtp) ; mclxMakeCharacteristic(clprev) ; return mx_coarse ; } static void write_coarse ( mcxIO* xf_coarse , mclx* mx_coarse ) { mclx* tmp = mclxCopy(mx_coarse) ; double mv = mclxMaxValue(tmp) ; double sc = mv ? mv / 100.0 : 1.0 ; mclxUnary(tmp, fltxScale, &sc) ; mclxaWrite(tmp, xf_coarse, 4, RETURN_ON_FAIL) ; mclxFree(&tmp) ; } static void integrate_results ( mclxCat* cat ) { dim i ; qsort(cat->level, cat->n_level, sizeof(mclxAnnot), annot_cmp_coarse_first) ; for (i=1;in_level;i++) { mclx* meet = clmMeet(cat->level[i-1].mx, cat->level[i].mx) ; mclxFree(&(cat->level[i].mx)) ; cat->level[i].mx = meet ; } mclxCatReverse(cat) ; } static mclx* get_base ( const char* fn_input , mclx* mx_input , const char* b1opts , const char* b2opts ) { mclAlgParam* mlp = NULL ; mcxstatus status = STATUS_FAIL ; mclx* mxbase = NULL ; get_interface ( &mlp , fn_input , b2opts ? b2opts : b1opts , NULL , mx_input , b2opts ? ALG_CACHE_EXPANDED : ALG_CACHE_START , EXIT_ON_FAIL ) ; if (b2opts) { mlp->mpp->mainLoopLength = 1 ; mlp->mpp->mainInflation = 1.0 ; mlp->expand_only = TRUE ; mcxLog(MCX_LOG_APP, me, "computing expanded matrix") ; if ((status = mclAlgorithm(mlp)) == STATUS_FAIL) { mcxErr(me, "failed") ; mcxExit(1) ; } mcxLog(MCX_LOG_APP, me, "done computing expanded matrix") ; mxbase = mclAlgParamRelease(mlp, mlp->mx_expanded) ; } else { if (mclAlgorithmStart(mlp, FALSE)) mcxDie(1, me, "-b1 option start-up failed") ; mxbase = mclAlgParamRelease(mlp, mlp->mx_start) ; start_col_sums_g = mclvClone(mlp->mx_start_sums) ; } mclAlgParamFree(&mlp, TRUE) ; return mxbase ; } #define OUTPUT_STACK 1 << 0 #define OUTPUT_CONE 1 << 1 #define OUTPUT_STEPS 1 << 2 #define OUTPUT_COARSE 1 << 3 #define OUTPUT_BASE 1 << 4 /* fixme: too big, although half is initialization * a lot of base1 base2 logic. */ int main ( int argc , const char* argv[] ) { mcxIO *xfcl = NULL , *xfctrl = NULL , *xfcoarse= NULL , *xfbase = NULL , *xfcone = NULL , *xfstack = NULL ; mclx* mxbase, *cl, *cl_coarse, *clprev, *clctrl = NULL ; mcxTing* shared = mcxTingNew("-I 4 -overlap split") ; mcxbool root = TRUE ; mcxbool have_bootstrap = FALSE ; const char* plexprefix = NULL ; const char* stem = "mcl" ; mcxbool same = FALSE ; mcxbool plex = TRUE ; mcxbool add_transpose = FALSE ; const char* b2opts = NULL ; const char* b1opts = NULL ; mcxbits write_modes = 0 ; mclAlgParam* mlp = NULL ; mcxstatus status = STATUS_OK ; mcxstatus parse_status = STATUS_OK ; int multiplex_idx = 1 ; int N = 0 ; int n_ite = 0 ; dim n_components = 0, n_cls = 0 ; int a = 1, i= 0 ; int n_arg_read = 0 ; int delta = 0 ; mcxOption* opts, *opt ; mcxTing* cline = mcxOptArgLine(argv+1, argc-1, '\'') ; mclgTF* transform = NULL ; mcxTing* transform_spec = NULL ; double iaf = 0.84 ; mclx_app_init(stderr) ; if (0) mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; else mcxLogLevelSetByString("xf4g1") ; mcxOptAnchorSortById(options, sizeof(options)/sizeof(mcxOptAnchor) -1) ; if (argc == 2 && argv[1][0] == '-' && mcxOptIsInfo(argv[1], options)) delta = 1 ; else if (argc < 2) { help(options, shared) ; exit(0) ; } opts = mcxOptExhaust (options, (char**) argv, argc, 2-delta, &n_arg_read, &parse_status) ; if (parse_status != STATUS_OK) { mcxErr(me, "initialization failed") ; exit(1) ; } ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; switch(anch->id) { case MY_OPT_HELP : help(options, shared) ; exit(0) ; case MY_OPT_APROPOS : help(options, shared) ; exit(0) ; break ; case MY_OPT_NMAX : N = atoi(opt->val) ; break ; case MY_OPT_Z : help(NULL, shared) ; exit(0) ; break ; case MY_OPT_SHARED : mcxTingPrintAfter(shared, " %s", opt->val) ; break ; case MY_OPT_TRANSFORM : transform_spec = mcxTingNew(opt->val) ; break ; case MY_OPT_B1 : b1opts = opt->val ; break ; case MY_OPT_B2 : b2opts = opt->val ; break ; case ALG_OPT_SETENV : mcxSetenv(opt->val) ; break ; case ALG_OPT_QUIET : mcxLogLevelSetByString(opt->val) ; break ; case MY_OPT_HDP : hdp_g = atof(opt->val) ; break ; case MY_OPT_ADDTP : add_transpose = TRUE ; break ; case MY_OPT_ANNOT /* only used in command-line copying */ : break ; case MY_OPT_IAF : iaf = atof(opt->val) / 100 ; break ; case MY_OPT_WRITE : if (strstr(opt->val, "stack")) write_modes |= OUTPUT_STACK ; if (strstr(opt->val, "cone")) write_modes |= OUTPUT_CONE ; if (strstr(opt->val, "levels") || strstr(opt->val, "steps")) write_modes |= OUTPUT_STEPS ; if (strstr(opt->val, "coarse")) write_modes |= OUTPUT_COARSE ; if (strstr(opt->val, "base")) write_modes |= OUTPUT_BASE ; break ; case MY_OPT_BASENAME : xfbase = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_COARSE : xfcoarse = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_CONE : xfcone = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_ROOT : root = strchr("1yY", (u8) opt->val[0]) ? TRUE : FALSE ; break ; case MY_OPT_STACK : xfstack = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_STEM : stem = opt->val ; break ; case MY_OPT_MULTIPLEX : plex = strchr("yY1", (unsigned char) opt->val[0]) ? TRUE : FALSE ; break ; case MY_OPT_DISPATCH : dispatch_g = TRUE ; break ; case MY_OPT_INTEGRATE : integrate_g = TRUE ; break ; case MY_OPT_CONTRACT : break ; case MY_OPT_SUBCLUSTERX : subclusterx_g = TRUE, subcluster_g = TRUE ; break ; case MY_OPT_SUBCLUSTER : subcluster_g = TRUE ; break ; case MY_OPT_CONTROL : xfctrl = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_CL : xfcl = mcxIOnew(opt->val, "r") ; have_bootstrap = TRUE ; break ; case MY_OPT_VERSION : app_report_version(me) ; exit(0) ; default : mcxExit(1) ; } } mcxOptFree(&opts) ; a = 2 + n_arg_read ; if (a < argc) { if (strcmp(argv[a], "--")) mcxDie ( 1 , me , "trailing %s options require standalone '--' separator (found %s)" , integrate_g ? "integrate" : "mcl" , argv[a] ) ; a++ ; } if (subcluster_g + dispatch_g + integrate_g > 1) mcxDie(1, me, "too many modes!") ; if (N && N < argc-a) mcxErr(me, "-n argument leaves spurious option specifications") ; srandom(mcxSeed(89315)) ; signal(SIGALRM, mclSigCatch) ; if (dispatch_g) plexprefix = "dis" ; else if (!write_modes || (write_modes & OUTPUT_STEPS)) plexprefix = stem ; { mcxTing* tg = mcxTingEmpty(NULL, 30) ; if ((write_modes & OUTPUT_COARSE) && !xfcoarse) mcxTingPrint(tg, "%s.%s", stem, "coarse") , xfcoarse = mcxIOnew(tg->str, "w") ; if ((write_modes & OUTPUT_BASE) && !xfbase) mcxTingPrint(tg, "%s.%s", stem, "base") , xfbase = mcxIOnew(tg->str, "w") ; if ( (!write_modes || (write_modes & OUTPUT_CONE)) && !xfcone ) { mcxTingPrint(tg, "%s.%s", stem, "cone") ; xfcone = mcxIOnew(tg->str, "w") ; mcxIOopen(xfcone, EXIT_ON_FAIL) ; fprintf(xfcone->fp, "# %s %s\n", argv[0], cline->str) ; } if ((write_modes & OUTPUT_STACK) && !xfstack) { mcxTingPrint(tg, "%s.%s", stem, "stack") ; xfstack = mcxIOnew(tg->str, "w") ; mcxIOopen(xfstack, EXIT_ON_FAIL) ; fprintf(xfstack->fp, "# %s %s\n", argv[0], cline->str) ; } mcxTingFree(&tg) ; } if (integrate_g) { for (i=a;istr, argv[i], NULL, 0, RETURN_ON_FAIL)) mcxDie(1, me, "error while testing mcl options viability (%s)", argv[i]) ; } mcxLog(MCX_LOG_APP, me, "pid %ld", (long) getpid()) /* make sure clusters align with this cluster * status: does not seem promising. */ ; if (xfctrl) clctrl = mclxRead(xfctrl, EXIT_ON_FAIL) ; /* * Below: compute cl and mxbase. */ ; if (xfcl) { cl = mclxRead(xfcl, EXIT_ON_FAIL) ; write_clustering (cl, NULL, xfcone, xfstack, plexprefix, multiplex_idx++, NULL) ; if (subcluster_g || dispatch_g) mclxCatPush(&stck_g, cl, NULL, NULL, mclxCBdomStack, NULL, "dummy-mclcm", n_cls++) ; mcxIOfree(&xfcl) ; if (!b1opts && !b2opts) b1opts = "" ; mxbase = get_base(argv[1], NULL, b1opts, b2opts) ; } else { mcxbits CACHE = b1opts || b2opts ? ALG_CACHE_INPUT /* cache, transform later */ : ALG_CACHE_START ; get_interface ( &mlp , argv[1] , shared->str , a < argc ? argv[a] : NULL , NULL , CACHE , EXIT_ON_FAIL ) ; if (a < argc) a++ ; if ((status = mclAlgorithm(mlp)) == STATUS_FAIL) { mcxErr(me, "failed at initial run") ; exit(1) ; } cl_coarse = mclAlgParamRelease(mlp, mlp->cl_result) ; cl_coarse = control_test(cl_coarse, clctrl) ; write_clustering (cl_coarse, NULL, xfcone, xfstack, plexprefix, multiplex_idx++, mlp) ; if (subcluster_g || dispatch_g) mclxCatPush(&stck_g, cl_coarse, NULL, NULL, mclxCBdomStack, NULL, "dummy-mclcm", n_cls++) ; cl = cl_coarse ; n_ite++ ; if (b1opts || b2opts) { mclx* mx_input = mclAlgParamRelease(mlp, mlp->mx_input) ; mxbase = get_base(NULL, mx_input, b1opts, b2opts) /* ^ get_base frees mx_input */ ; } else mxbase = mclAlgParamRelease(mlp, mlp->mx_start) ; } clprev = cl ; mclAlgParamFree(&mlp, TRUE) ; if (xfbase) { dim nre = mclxNrofEntries(mxbase) ; mcxLog(MCX_LOG_APP, me, "base has %lu entries", (ulong) nre) ; mclxaWrite(mxbase, xfbase, MCLXIO_VALUE_GETENV, EXIT_ON_FAIL) ; mcxIOclose(xfbase) ; } if (subcluster_g || dispatch_g) iaf = iaf ? 1/iaf : 1.414 ; while ( (!dispatch_g && (!N || n_ite < N)) || (dispatch_g && a < argc) ) { mclx* mx_coarse = NULL, *clnext = NULL ; dim dist_new_prev = 0, dist_prev_new = 0 ; mclx* clnew = NULL ; mcxbool faith = FALSE ; double inflation = -1.0 ; if (subcluster_g) mx_coarse = subclusterx_g ? mclxBlockPartition(mxbase, clprev, 50) : mclxBlockUnion(mxbase, clprev) /* have to copy mxbase as mx_coarse is freed. * Even if it were not freed, it is probably transformed. */ ; else if (dispatch_g) mx_coarse = mclxCopy(mxbase) ; else { mx_coarse = get_coarse(mxbase, clprev, add_transpose) ; if (n_ite == 1) { mclx* cc = clmUGraphComponents(mx_coarse, NULL) /* fixme; mx_coarse garantueed UD ? */ ; n_components = N_COLS(cc) ; mclxFree(&cc) ; } } if (xfcoarse) write_coarse(xfcoarse, mx_coarse) ; get_interface ( &mlp , NULL , shared->str , a < argc ? argv[a] : NULL , mx_coarse , ALG_CACHE_START , EXIT_ON_FAIL ) ; inflation = mlp->mpp->mainInflation ; BIT_OFF(mlp->modes, ALG_DO_SHOW_PID | ALG_DO_SHOW_JURY) ; if ((status = mclAlgorithm(mlp)) == STATUS_FAIL) { mcxErr(me, "failed") ; mcxExit(1) ; } cl_coarse = mclAlgParamRelease(mlp, mlp->cl_result) ; if (xfcoarse) mclxaWrite(cl_coarse, xfcoarse, MCLXIO_VALUE_NONE, RETURN_ON_FAIL) ; if (dispatch_g || subcluster_g) clnext = cl_coarse ; else clnext = mclxCompose(clprev, cl_coarse, 0) , clnext = control_test(clnext, clctrl) , mclxFree(&cl_coarse) ; clmSJDistance (clprev, clnext, NULL, NULL, &dist_prev_new, &dist_new_prev) ; if (dist_prev_new + dist_new_prev) { write_clustering (clnext, clprev, xfcone, xfstack, plexprefix, multiplex_idx++, mlp) ; clnew = clnext ; if (subcluster_g || dispatch_g) mclxCatPush(&stck_g, clnext, NULL, NULL, mclxCBdomStack, NULL, "dummy-mclcm", n_cls++) ; else mclxFree(&clprev) ; clprev = clnew ; } else if ( N_COLS(clnext) > n_components && inflation * iaf > 1.2 && inflation * iaf < 10 ) { mclxFree(&clnext) ; inflation *= iaf ; mcxTingPrintAfter(shared, " -I %.2f", inflation) ; mcxLog(MCX_LOG_APP, me, "setting inflation to %.2f", inflation) ; faith = TRUE ; } /* i.e. vanilla mode, contraction */ else if (!subcluster_g && !dispatch_g) { mclx* cc ; mclxFree(&clnext) ; mclxAddTranspose(mx_coarse, 1.0) ; cc = clmUGraphComponents(mx_coarse, NULL) ; if (N_COLS(cc) < N_COLS(clprev)) { mclx* ccback = mclxCompose(clprev, cc, 0) ; write_clustering (ccback, clprev, xfcone, xfstack, plexprefix, multiplex_idx++, NULL) ; mclxFree(&clprev) ; clprev = ccback ; mcxTell(me, "connected components added as root clustering") ; } if (root && N_COLS(cc) > 1) { mclx* root = mclxCartesian ( mclvCanonical(NULL, 1, 0) , mclvCopy(NULL, mxbase->dom_cols) , 1.0 ) ; write_clustering (root, clprev, xfcone, xfstack, plexprefix, multiplex_idx++, NULL) ; mclxFree(&clprev) ; mcxTell(me, "universe added as root clustering") ; clprev = root ; clnew = NULL ; } mclxFree(&cc) ; } else if (subcluster_g || dispatch_g) mclxFree(&clnext) ; mclAlgParamFree(&mlp, TRUE) /* frees mx_coarse */ ; if (!clnew && !faith) { same = TRUE ; break ; } a++ ; if (dispatch_g && a == argc) break ; n_ite++ ; } if (same) mcxLog(MCX_LOG_MODULE, me, "no further contraction: halting") ; if (dispatch_g) integrate_results(&stck_g) ; else if (subcluster_g) mclxCatReverse(&stck_g) ; if (dispatch_g || subcluster_g) { dim j ; if (xfstack) mclxCatWrite(xfstack, &stck_g, MCLXIO_VALUE_NONE, RETURN_ON_FAIL) ; if (xfcone && ! mclxCatConify(&stck_g)) mclxCatWrite(xfcone, &stck_g, MCLXIO_VALUE_NONE, RETURN_ON_FAIL) ; for (j=0;jmx) ; } mcxFree(stck_g.level) ; } mcxIOfree(&xfcoarse) ; mcxIOfree(&xfbase) ; mcxIOfree(&xfcone) ; mcxIOfree(&xfstack) ; mcxTingFree(&shared) ; if (!dispatch_g && !subcluster_g) /* fixme fixme fixme */ mclxFree(&clprev) ; mclxFree(&mxbase) ; mclvFree(&start_col_sums_g) ; mcxTingFree(&cline) ; helpful_reminder() ; return STATUS_OK ; } const char* usagelines[] = { NULL } ; mcl-12-135/src/shmcl/mcl.c0000644000402500021140000001215511556233130012110 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include "../../config.h" /* ************************************************************************** * * ** Implementation notes (a few). * * MCL front-end. Lots of options, many more have come and gone. * Most options are inessential (and you dont see em here anyway). * * The design is this: * * o the routine mclProcess is provided by the library. * It takes a stochastic matrix as input, and starts clustering using the * supplied inflation parameter(s) and not much more. Additionally, the * library provides extensive support for different pruning strategies, and * for tracking those (verbosity and progress options). mclProcess belongs * to the 'lib' or 'library' part. * * o mclAlgorithm provides some handles for manipulating the input graph * (most importantly provided by the -tf option), it provides some handles * for output and re-chunking the mcl process (--expand-only and * --inflate-first), and it provides handles (one?) for postprocessing like * removing overlap. mclAlgorithm belongs to the 'main' part. * * We do library initialization first, because matrix reading is part of * algorithm initialization. If the two switch order it is painful if errors * are only detected after reading in the matrix (which takes time if it is * huge). * * There are some subtleties in command line parsing, as the lib and main * interfaces are unified for the parsing part, but after that each does the * interpretation of the arguments it accepts all by itself. Additionally, * we check whether any info flag appears at the position of the file * argument. * * o These days we do streaming input as well. It is largely encapsulated * but adds to the input/output/tab logic. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "impala/io.h" #include "impala/stream.h" #include "impala/ivp.h" #include "impala/compose.h" #include "impala/iface.h" #include "impala/app.h" #include "util/types.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/equate.h" #include "util/rand.h" #include "util/opt.h" #include "mcl/proc.h" #include "mcl/procinit.h" #include "mcl/alg.h" #include "clew/clm.h" static void helpful_reminder ( void ) { #ifdef MCL_HELPFUL_REMINDER if (mcxLogLevel & MCX_LOG_UNIVERSE) { fprintf(stderr, "\nPlease cite:\n"); fprintf(stderr, " Stijn van Dongen, Graph Clustering by Flow Simulation. PhD thesis,\n"); fprintf(stderr, " University of Utrecht, May 2000.\n"); fprintf(stderr, " ( http://www.library.uu.nl/digiarchief/dip/diss/1895620/full.pdf\n"); fprintf(stderr, " or http://micans.org/mcl/lit/svdthesis.pdf.gz)\n"); fprintf(stderr, "OR\n"); fprintf(stderr, " Stijn van Dongen, A cluster algorithm for graphs. Technical\n"); fprintf(stderr, " Report INS-R0010, National Research Institute for Mathematics\n"); fprintf(stderr, " and Computer Science in the Netherlands, Amsterdam, May 2000.\n"); fprintf(stderr, " ( http://www.cwi.nl/ftp/CWIreports/INS/INS-R0010.ps.Z\n"); fprintf(stderr, " or http://micans.org/mcl/lit/INS-R0010.ps.Z)\n\n"); } #endif } int main ( int argc , const char* argv[] ) { const char* fn_input = argc > 1 ? argv[1] : "" ; mclAlgParam* mlp = NULL ; const char* me = "mcl" ; mcxstatus status = STATUS_OK ; srandom(mcxSeed(315)) ; signal(SIGALRM, mclSigCatch) ; if (signal(SIGUSR1, mcxLogSig) == SIG_ERR) mcxErr(me, "cannot catch SIGUSR1!") ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclx_app_init(stderr) ; if (argc < 2) { mcxTell ( me , "usage: mcl <-|file name> [options]," " do 'mcl -h' or 'man mcl' for help" ) ; mcxExit(0) ; } status = mclAlgInterface (&mlp, (char**) (argv+2), argc-2, fn_input, NULL, ALG_DO_IO) ; if (status == ALG_INIT_DONE) return 0 ; else if (status) mcxDie(STATUS_FAIL, me, "no tango") ; if ((status = mclAlgorithm(mlp)) == STATUS_FAIL) mcxDie(STATUS_FAIL, me, "failed") ; if (mlp->n_assimilated) mcxLog(MCX_LOG_MODULE, me, "%lu nodes will assimilate", (ulong) mlp->n_assimilated) ; if (mlp->mx_start) mcxLog(MCX_LOG_MODULE, me, "cached matrix with %lu columns", (ulong) N_COLS(mlp->mx_start)) ; mclAlgParamFree(&mlp, TRUE) ; helpful_reminder() ; return STATUS_OK ; } mcl-12-135/src/shmcl/Makefile.am0000644000402500021140000000034410415560075013226 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.8 2006-04-07 21:57:17 flux Exp $ include $(top_srcdir)/include/include.am bin_PROGRAMS = mcl mclcm mcl_SOURCES = mcl.c mclcm_SOURCES = mclcm.c mcl-12-135/src/clew/0000777000402500021140000000000011756465224011112 500000000000000mcl-12-135/src/clew/scan.h0000644000402500021140000001116310677523675012133 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* * For a stochastic vector u and a cluster P, the coverage cov(P,u) equals * * 1 ( --- --- ) * |P| - -------- * ( \ u_i - \ u_i ) * ctr(u) ( /__i[=P /__i[=P^C ) * 1 - ------------------------------------------------------ * | P V S | * * * 1 ( --- --- ) * |S/P| + -------- * ( \ u_i - \ u_i ) * ctr(u) ( /__i[=P /__i[=P^C ) * ------------------------------------------------------ * | P V S | * * Where S is the set of nonzero entries in u. * Where S is the set of nonzero entries in u. * So for arbitrary nonngative v we need to compute: * * div, normalized by sum(v) (the large term on the upper right) * ctr, sum of squares normalized by sum(v)^2 * */ /* TODO: * support simultaneous support in clmVScore for complement and meet ? * The needed data structure would feel unwieldy somehow. * e.g. max_intern * min_intern * max_extern * min_extern * etc * and how about the index for which max/minima are achieved ? * * The current setup is still very experimental and bound to be rewritten * some day. * * fixme:! * clmXScanDomain will implicitly act on meet if domain is not a subdomain. * this is not so nice; strict interface is better. * not nice because e.g. average coverage is returned, but if subdomain * is not required than the number over which is averaged is not clear. */ #ifndef clm_scan_h #define clm_scan_h #include "impala/matrix.h" #include "util/types.h" typedef struct { dim n_vdif /* vector diff */ ; dim n_meet ; dim n_ddif /* domain diff */ ; dim n_self /* 1 if vec->vid >= 0 && vid in vec->ivps, 0 otherwise */ ; double wgt_s /* self weight */ ; double sum_e /* sum of edge weights */ ; double max_i ; double min_i ; double sum_i ; double ssq_i /* sum of squares, but we do other powers as well */ ; double max_o ; double min_o ; double sum_o ; double ssq_o ; } clmVScore ; typedef struct { dim n_elem_i /* edges, presumably */ ; dim n_elem_o /* edges, presumably */ ; dim n_hits ; dim n_self /* number of loops present */ ; double sum_s /* sum of loops */ ; double max_i ; double min_i ; double sum_i ; double ssq_i ; double max_o ; double min_o ; double sum_o ; double ssq_o ; double cov /* this is the true coverage measure */ ; double covmax /* this is the true coverage measure */ ; } clmXScore ; void clmXScanInit ( clmXScore* xscore ) ; void clmVScan ( const mclVector* vec , clmVScore* score ) ; /* NOTE. * sum_i and sum_o and ssq_i and ssq_o are computed on vector * without stochastification. * * The 'cov' number is the sum of mass of entries in vec that * are in dom, minus the sum of mass of entries in vec that are * not in dom. It can be used to compute the 'coverage' of dom wrt vec. */ void clmVScanDomain ( const mclVector* vec , const mclVector* dom , clmVScore* score ) ; /* compute coverage measures from a score struct */ void clmVScoreCoverage ( clmVScore* score , double* cov , double* covmax ) ; void clmXScoreCoverage ( clmXScore* xscore , double* cov , double* covmax ) ; double clmCoverage ( const mclx* mx , const mclx* cl , double* covmaxp ) ; /* NOTE. * - sum_i sum_o ssq_i ssq_o are computed as if mx * were first made stochastic. * - max_i max_o min_i min_o are computed on mx * itself. * * This may change in the future, as {max,min}_{io} * are currently nowhere used. * * NOTE * you have to call clmXScanInit to initialize xscore. */ void clmXScanDomain ( const mclMatrix* mx , const mclVector* cl , clmXScore* xscore ) ; /* * NOTE * you have to call clmXScanInit to initialize xscore. */ void clmXScanDomainSet ( const mclMatrix* mx , const mclMatrix* cl , const mclv* cl_select , clmXScore* xscore ) ; #endif mcl-12-135/src/clew/clm.c0000644000402500021140000004647311413373022011743 00000000000000/* (C) Copyright 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include "clm.h" #include "scan.h" #include "cat.h" #include "impala/matrix.h" #include "impala/compose.h" #include "impala/io.h" /* debug purposes */ #include "util/ting.h" #include "util/io.h" #include "util/alloc.h" #include "util/types.h" #include "util/equate.h" #include "util/err.h" #ifdef DEBUG #define DEBUG_DEFINED 1 #else #define DEBUG 0 #endif /* fixme: implement */ mclx* clmTop ( mclv* dom ) ; mclx* clmBottom ( mclv* dom ) ; mclx* clmProject ( const mclx* cl , const mclv* dom ) { mclx* pr = mclxSub(cl, cl->dom_cols, dom) ; dim overlap=0, missing=0, empty=0 ; dim total = clmEnstrict(pr, &overlap, &missing, &empty, ENSTRICT_SPLIT_OVERLAP) ; if (total != empty) mcxErr ( "clmProject" , "input clustering on <%lu> elements is not a partition o=%lu m=%lu e=%lu" , (ulong) N_ROWS(cl) , (ulong) overlap , (ulong) missing , (ulong) empty ) ; return pr ; } double clmLogVariance ( const mclx* cl ) { double v = 0.0 ; dim d ; if (!N_ROWS(cl)) return 0.0 /* fixme; some other value ? */ ; for (d=0;dcols[d].n_ivps ; if (n) v += n * log(n) ; } return -v ; } void clmVIDistance ( const mclx* cla , const mclx* clb , const mclx* abmeet , double* abdist , double* badist ) { dim d, e ; double varab = 0.0 ; double vara = 0.0 ; double varb = 0.0 ; double n_elems = N_ROWS(cla) ; *abdist = 0.0 ; *badist = 0.0 ; if (!n_elems) return /* fixme?: test for enstriction ? */ /* fixme-warning: using reals as ints in abmeet * this warning belongs in the caller really, * or where abmeet is produced */ ; if (!mcldEquate(cla->dom_rows, clb->dom_rows, MCLD_EQT_EQUAL)) { mcxErr ( "clmVIDistance PBD" , "domains sized (%ld,%ld) differ" , (long) N_ROWS(cla) , (long) N_ROWS(clb) ) ; return ; } for (d=0;dcols+d ; mclv *bvec = NULL ; double n_lft = cla->cols[d].n_ivps ; double n_rgt ; double n_meet ; for (e=0;en_ivps;e++) { n_meet = vecmeets->ivps[e].val ; bvec = mclxGetVector ( clb , vecmeets->ivps[e].idx , EXIT_ON_FAIL , bvec ) ; n_rgt = bvec->n_ivps ; if (n_rgt && n_lft) varab += n_meet * log (n_meet / (n_lft * n_rgt)) ; } } ; vara = clmLogVariance(cla) ; varb = clmLogVariance(clb) ; *badist = (vara - varab) / n_elems ; *abdist = (varb - varab) / n_elems ; if (*badist <= 0.0) /* for -epsilon case */ *badist = 0.0 ; if (*abdist <= 0.0) /* for -epsilon case */ *abdist = 0.0 ; } dim clmSJDistance ( const mclx* cla , const mclx* clb , const mclx* abmeet , const mclx* bameet , dim* abdistp , dim* badistp ) { dim d, e ; mclx* ab, *ba ; mcxbool cleanup = !abmeet ; dim abdist = 0 ; dim badist = 0 ; if (!abmeet) { abmeet = ab = clmContingency(cla, clb) ; bameet = ba = mclxTranspose(abmeet) ; } /* fixme?: test for enstriction ? */ /* fixme-warning: using reals as ints. */ if (!mcldEquate(cla->dom_rows, clb->dom_rows, MCLD_EQT_EQUAL)) { mcxErr ( "clmSJDistance PBD" , "domains sized (%ld,%ld) differ" , (long) N_ROWS(cla) , (long) N_ROWS(clb) ) ; return (dim) -1 ; } for (d=0;dcols+d ; for (e=0;en_ivps;e++) if ((int) ((vecmeets->ivps+e)->val+0.25) > max) max = (int) ((vecmeets->ivps+e)->val + 0.25) ; abdist += (cla->cols+d)->n_ivps - max ; } for (d=0;dcols+d ; for (e=0;en_ivps;e++) if ((int) (vecmeets->ivps+e)->val > max) max = (int) ((vecmeets->ivps+e)->val + 0.25) ; badist += (clb->cols+d)->n_ivps - max ; } if (cleanup) mclxFree(&ab) , mclxFree(&ba) ; if (abdistp) *abdistp = abdist ; if (badistp) *badistp = badist ; return abdist + badist ; } mclx* clmMeet ( const mclx* cla , const mclx* clb ) { dim d, a ; int n_clmeet, i_clmeet ; mclx *abmeet, *clmeet ; const char* mepanic = "clmMeet panic" ; abmeet = clmContingency(cla, clb) ; if (!abmeet) return NULL ; i_clmeet = 0 ; n_clmeet = mclxNrofEntries(abmeet) ; clmeet = mclxAllocZero ( mclvCanonical(NULL, n_clmeet, 1.0) , mclvCopy(NULL, cla->dom_rows) ) ; for (a=0;acols+a ; mclv* bvec = NULL ; for (d=0;dn_ivps;d++) { long b = (vec->ivps+d)->idx ; bvec = mclxGetVector(clb, b, RETURN_ON_FAIL, bvec) ; if (!bvec || i_clmeet == n_clmeet) { mcxErr(mepanic, "internal math does not add up") ; continue /* little bit frightning */ ; } mcldMeet ( cla->cols+a , bvec , clmeet->cols+i_clmeet ) ; i_clmeet++ ; } } if (i_clmeet != n_clmeet) mcxErr(mepanic, "internal math does not substract") ; mclxFree(&abmeet) ; return clmeet ; } void clmMKDistance ( const mclx* cla , const mclx* clb , const mclx* abmeet , dim* abdist , dim* badist ) { dim d, e ; double sosqa = 0.0 ; double sosqb = 0.0 ; double sosqm = 0.0 ; if (!mcldEquate(cla->dom_rows, clb->dom_rows, MCLD_EQT_EQUAL)) { mcxErr ( "clmMKDistance PBD" , "domains sized (%ld,%ld) differ" , (long) N_ROWS(cla) , (long) N_ROWS(clb) ) ; return ; } for (d=0;dcols+d ; for (e=0;en_ivps;e++) sosqm += pow((vecmeets->ivps+e)->val, 2) ; } for (d=0;dcols[d].n_ivps, 2) ; for (d=0;dcols[d].n_ivps, 2) ; *abdist = (dim) (sosqa - sosqm + 0.5) ; *badist = (dim) (sosqb - sosqm + 0.5) ; } mcxstatus clmGranularity ( const mclx* cl , clmGranularityTable *tbl ) { clmVScore vscore ; mclv* szs = mclxColSizes(cl, MCL_VECTOR_COMPLETE) ; dim d = szs->n_ivps ; dim d1 = 0 ; dim d2 = 0 ; dim d2_size = 0 ; dim n_sgl = 0 ; dim david = 0 ; dim n_qrt = 0 /* quartletons */ ; clmVScan(szs, &vscore) ; mclvSort(szs, mclpValRevCmp) ; if (N_COLS(cl)) while (d-- > 0) /* careful with unsignedness */ { david += szs->ivps[d].val ; if (szs->ivps[d].val <= 1.0) n_sgl = szs->n_ivps-d ; if (szs->ivps[d].val <= 4.0) n_qrt = szs->n_ivps-d ; if (!d1 && david >= vscore.max_i) d1 = szs->n_ivps-d ; if (!d2 && david >= ((N_ROWS(cl)+1)/2)) { d2 = d ; d2_size = szs->ivps[d].val ; } ; } tbl->n_clusters = N_COLS(cl) ; tbl->size_cluster_max = vscore.max_i ; tbl->size_cluster_ctr = vscore.sum_i ? vscore.ssq_i / vscore.sum_i : -1.0 ; tbl->size_cluster_avg = N_COLS(cl) ? N_ROWS(cl) / (double) N_COLS(cl) : -1.0 ; tbl->size_cluster_min = vscore.min_i ; tbl->index_cluster_dg = d1 ; tbl->index_cluster_tw = d2 ; tbl->size_cluster_tw = d2_size ; tbl->n_singletons = n_sgl ; tbl->n_qrt = n_qrt ; mclvFree(&szs) ; return STATUS_OK ; } void clmGranularityPrint ( FILE* fp , const char* info , clmGranularityTable *tbl ) { fprintf ( fp , "clusters=%lu max=%lu %s" " ctr=%.1f avg=%.1f min=%lu DGI=%lu TWI=%lu TWL=%lu" " sgl=%lu qrt=%lu" , (ulong) tbl->n_clusters , (ulong) tbl->size_cluster_max , info ? info : "" , tbl->size_cluster_ctr , tbl->size_cluster_avg , (ulong) tbl->size_cluster_min , (ulong) tbl->index_cluster_dg , (ulong) tbl->index_cluster_tw , (ulong) tbl->size_cluster_tw , (ulong) tbl->n_singletons , (ulong) tbl->n_qrt ) ; } void clmPerformancePrint ( FILE* fp , const char* info , clmPerformanceTable* pf ) { fprintf ( fp , "efficiency=%.5f massfrac=%.5f areafrac=%.5f %s" , pf->efficiency , pf->massfrac , pf->areafrac , info ? info : "" ) ; } mcxstatus clmXPerformance ( const mclx* mx , const mclx* clchild , const mclx* clparent , mcxIO* xf , dim clceil ) { clmXScore xscore ; dim i ; if (clparent) { mclx* cting = clmContingency(clparent, clchild) /* from parent to child */ ; if (N_COLS(cting) != N_COLS(clparent)) mcxDie ( 1 , "clmXPerformance" , "pathetic %ld vs %ld" , (long) N_COLS(cting) , (long) N_COLS(clparent) ) ; for (i=0;icols+i ; mclv* cl = NULL ; mclx* sub = NULL ; dim j /* A parser of this output has to deduce COV from the parent, * which is printed later. mlmhihohum does exactly this. * Note that the no-parent/root case (other branch) * ensures we always output a non-trivial parent for any * cluster. */ ; if (cllist->n_ivps == 1) { cl = mclxGetVector(clchild, cllist->ivps[0].idx, EXIT_ON_FAIL, cl) ; fprintf ( xf->fp , "%-10ld TRIVIAL[sz=%ld] PARENT[%ld]\n" , (long) cllist->ivps[0].idx , (long) cl->n_ivps , (long) clparent->cols[i].vid ) ; continue ; } sub = mclxSub(mx, clparent->cols+i, clparent->cols+i) ; for (j=0;jn_ivps;j++) { dim rdif, n_elem_ii ; mcxTing* num = mcxTingEmpty(NULL, 40) ; cl = mclxGetVector(clchild, cllist->ivps[j].idx, EXIT_ON_FAIL, cl) ; if (mcldCountParts(clparent->cols+i, cl, NULL, NULL, &rdif)) mcxDie(1, "clmXPerformance", "pathetic II") ; fprintf(xf->fp, "%-10ld", (long) cl->vid) ; clmXScanInit(&xscore) ; if (!clceil || cl->n_ivps <= clceil) clmXScanDomain(mx, cl, &xscore) ; else if (clceil) xscore.cov = 0 , xscore.covmax = 0 , xscore.n_hits = cl->n_ivps /* NOTE * n_elem_ii is the number of edges internally, * deduplicated. * * for n_elem_o we do not need to do deduplication * as everything is counted just once. */ ; n_elem_ii = (xscore.n_elem_i - xscore.n_self) / 2 ; if (xscore.max_o > -FLT_MAX) mcxTingPrint(num, "%.4f", xscore.max_o) ; else mcxTingWrite(num, "0") ;if (xscore.n_hits != cl->n_ivps) fprintf ( stderr , "mismatch! cluster %ld in parent with %ld clusters\n" , (long) cl->n_ivps , (long) N_COLS(clparent) ); /* fixme divide-by-zero */ ; fprintf ( xf->fp , " GLOBAL[sz=%lu cov=%.4f covmax=%.4f int=%.4f ext=%.4f i=%ld e=%ld" , (ulong) cl->n_ivps , (double) xscore.cov / xscore.n_hits , (double) xscore.covmax / xscore.n_hits , cl->n_ivps == 1 ? 1.0f : (2.0f * n_elem_ii) / (cl->n_ivps * (cl->n_ivps-1)) , n_elem_ii + xscore.n_elem_o ? (1.0f * n_elem_ii) / (n_elem_ii + xscore.n_elem_o) : 0.0f , (long) n_elem_ii , (long) xscore.n_elem_o ) ; if (0) /* todo interface */ fprintf ( xf->fp , " maxi=%.4f avgi=%.4f maxo=%s avgo=%.4f" , xscore.max_i , xscore.n_elem_i ? (double) (xscore.sum_i / xscore.n_elem_i) : 0.0 , num->str , xscore.n_elem_o ? (double) (xscore.sum_o / xscore.n_elem_o) : 0.0 ) ; fputs("] ", xf->fp) /* implement local scoring, i.e. in the context of * the subgraph induced by the parent cluster. * I am not sure whether the stuff below * does exactly that. Reinstate with care. */ #if 0 ; clmXScanInit(&xscore) ; if (!clceil || cl->n_ivps <= clceil) clmXScanDomain(mx, cl, &xscore) ; else if (clceil) xscore.cov = 0 , xscore.covmax = 0 , xscore.n_hits = cl->n_ivps ; if (xscore.max_o > -FLT_MAX) mcxTingPrint(num, "%.4f", xscore.max_o) ; else mcxTingWrite(num, "0") ; if (xscore.n_hits) fprintf ( xf->fp , " LOCAL[sz=%lu cov=%.4f covmax=%.4f" , (ulong) clparent->cols[i].n_ivps , (double) xscore.cov / xscore.n_hits , (double) xscore.covmax / xscore.n_hits ) ; if (0) fprintf ( xf->fp , " maxi=%.4f avgi=%.4f maxo=%s avgo=%.4f] " , xscore.max_i , xscore.n_elem_i ? (double) (xscore.sum_i / xscore.n_elem_i) : 0.0 , num->str , xscore.n_elem_o ? (double) (xscore.sum_o / xscore.n_elem_o) : 0.0 ) ; fputs("] ", xf->fp) #endif ; fprintf(xf->fp, " PARENT[%ld]", (long) clparent->cols[i].vid) ; if (0) { dim i2 ; fputs(" CHILDREN[", xf->fp) ; for (i2=0;i2n_ivps-1;i2++) fprintf(xf->fp, "%ld, ", (long) cl->ivps[i2].idx) ; if (cl->n_ivps) fprintf(xf->fp, "%ld", (long) cl->ivps[i2].idx) ; fputc(']', xf->fp) ; } fputc('\n', xf->fp) ; } mclxFree(&sub) ; } mclxFree(&cting) ; } else { mclv *cl = clchild->cols, *clmax = cl + N_COLS(clchild) ; while (cl < clmax) { double cov ; if (!clceil || cl->n_ivps <= clceil) { clmXScanInit(&xscore) ; clmXScanDomain(mx, cl, &xscore) ; cov = xscore.n_hits ? xscore.cov / xscore.n_hits : -1 ; } else cov = 0.0 ; fprintf(xf->fp, "%ld %.4f\n", cl->vid, cov) ; cl++ ; } } return STATUS_OK ; } mcxstatus clmPerformance ( const mclx* mx , const mclx* cl , clmPerformanceTable* pf ) { double mxArea = N_COLS(mx) * (N_COLS(mx) -1) ; clmXScore xscore ; double clArea = 0.0 ; dim c ; clmXScanInit(&xscore) ; for (c=0;ccols+c ; clmXScanDomain(mx, cvec, &xscore) ; clArea += cvec->n_ivps * (cvec->n_ivps -1) ; } if (!mxArea) mxArea = -1.0 ; if (!clArea) clArea = -1.0 /* massFraction, overlap: counting edges in overlap doubly (or more) */ ; pf->massfrac = xscore.n_hits ? xscore.sum_i / xscore.n_hits : -1.0 ; pf->efficiency = xscore.n_hits ? xscore.cov / xscore.n_hits : -1.0 ; pf->areafrac = mxArea ? clArea / mxArea : -1.0 ; return STATUS_OK ; } mclx* clmComponents ( mclx* mxin , const mclx* dom ) { mclx* mx = mclxCopy(mxin), *cc ; mclxAddTranspose(mx, 0.0) ; cc = clmUGraphComponents(mx, dom) ; mclxFree(&mx) ; return cc ; } /* mq fewer mallocs still possible? */ mclx* clmUGraphComponents ( mclx* mxin , const mclx* dom ) { dim d, c, n_cls = 0 ; mcxbool project = dom ? TRUE : FALSE ; mclv* wave1 = NULL ; mclx* coco /* connected components */ ; if (!mxin || !mclxIsGraph(mxin)) return NULL /* construct a single-column matrix */ ; if (!project) { dom = mclxAllocZero (mclvInsertIdx(NULL, 0, 1.0), mclvCopy(NULL, mxin->dom_rows)) ; mclvCopy(dom->cols+0, mxin->dom_rows) ; } coco = mclxAllocZero (mclvCanonical(NULL, N_COLS(mxin), 1.0), mclvCopy(NULL, mxin->dom_rows)) ; mclgUnionvReset(mxin) ; for (c=0;ccols+c) ; mclv* wave2 = NULL ; mclvMakeCharacteristic(domvec) /* important, we use values as sentinels */ ; for (d=0;dn_ivps;d++) { long cidx = domvec->ivps[d].idx /* consider all neighbours of list c node */ ; if (domvec->ivps[d].val > 1.5) { if (0) fprintf(stdout, "skip %d\n", (int) cidx) ; continue ; } /* fixme finish computation, escalate error */ if (n_cls == N_COLS(coco)) mcxDie(1, "mclcComponents", "ran out of space, fix me") ; mclvInsertIdx(coco->cols+n_cls, cidx, 1.0) ; mclgUnionvInitNode(mxin, cidx) ; wave1 = mclvCopy(wave1, coco->cols+n_cls) ; while (wave1->n_ivps) { wave2 = mclgUnionv(mxin, wave1, domvec, SCRATCH_UPDATE, NULL) ; mcldMerge(wave2, coco->cols+n_cls, coco->cols+n_cls) /* fixme; consider getting rid of merge */ ; mclvFree(&wave1) ; wave1 = wave2 ; } mclvUpdateMeet(domvec, coco->cols+n_cls, fltAdd) ; n_cls++ ; } mclvFree(&domvec) ; } if (!project) mclxFree((mclx**) &dom) /* we did allocate it ourselves */ ; mclvResize(coco->dom_cols, n_cls) ; coco->cols = mcxRealloc(coco->cols, n_cls * sizeof(mclv), RETURN_ON_FAIL) ; mclxColumnsRealign(coco, mclvSizeRevCmp) ; mclvFree(&wave1) ; mclgUnionvReset(mxin) ; return coco ; } #ifdef DEBUG_DEFINED #undef DEBUG_DEFINED #else #undef DEBUG #endif mcl-12-135/src/clew/clm.h0000644000402500021140000000605411413372712011744 00000000000000/* (C) Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Stijn van Dongen * (C) Copyright 2008, 2009, 2010 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* * NOTE some of the routines in here expect cluster matrix files * to be characteristic, i.e. 0/1-valued. * not yet documented; fixme */ #ifndef mcl_clm_h #define mcl_clm_h #include "impala/matrix.h" #include "util/types.h" typedef struct { double efficiency ; double massfrac ; double areafrac ; } clmPerformanceTable ; /* * variance of information * Comparing Clusterings, Marina Meila, Department of Statistics, * University of Washington. */ void clmVIDistance ( const mclMatrix* cla , const mclMatrix* clb , const mclMatrix* abmeet , double* abdist , double* badist ) ; dim clmSJDistance /* split join distance */ ( const mclMatrix* cla , const mclMatrix* clb , const mclMatrix* abmeet , const mclMatrix* bameet , dim* abdist , dim* badist ) ; void clmMKDistance /* Mirkin distance */ ( const mclMatrix* cla , const mclMatrix* clb , const mclMatrix* abmeet , dim* abdist , dim* badist ) ; /* Does *NOT* check whether row domains match * or whether the matrices encode strict partitions. * The latter is useful e.g. when interested in * the meet of an overlapping clusterings with * itself or another clustering. * * Elements that are missing in either one will * be missing in the result. */ mclMatrix* clmMeet ( const mclMatrix* c1 , const mclMatrix* c2 ) ; mclMatrix* clmSeparate ( const mclMatrix* cl ) ; mclMatrix* clmProject ( const mclMatrix* cl , const mclVector* dom ) ; mclMatrix* clmUGraphComponents ( mclMatrix* mx /* mx->dom_rows is used as scratch area */ , const mclMatrix* dom ) ; mclMatrix* clmComponents ( mclMatrix* mx /* will be symmetrified */ , const mclMatrix* dom ) ; mcxstatus clmPerformance ( const mclMatrix* mx , const mclMatrix* cl , clmPerformanceTable* pf ) ; /* used to create stats file for hierarchical clusters */ mcxstatus clmXPerformance ( const mclx* mx , const mclx* clchild , const mclx* clparent , mcxIO* xf , dim clceil ) ; typedef struct { dim n_clusters ; dim size_cluster_max ; double size_cluster_ctr ; double size_cluster_avg ; dim size_cluster_min ; dim index_cluster_dg ; dim index_cluster_tw ; dim size_cluster_tw ; dim n_singletons ; dim n_qrt ; } clmGranularityTable ; mcxstatus clmGranularity ( const mclx* cl , clmGranularityTable *tbl ) ; void clmGranularityPrint ( FILE* fp , const char* info , clmGranularityTable *tbl ) ; void clmPerformancePrint ( FILE* fp , const char* info , clmPerformanceTable* pf ) ; #endif mcl-12-135/src/clew/cat.c0000644000402500021140000006372511524536551011751 00000000000000/* (C) Copyright 2007, 2008, 2009, 2010 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* TODO * add ensureRoot routine. * * read_skeleton fails in unlimited cat mode. Only trailing whitespace * is allowed, but read_skeleton leaves the body. * Conceivably read_skeleton should flush the body if more than * one matrix is being read. */ #include "cat.h" #include "clm.h" #include "util/err.h" #include "util/compile.h" #include "impala/io.h" #include "impala/compose.h" #include "impala/tab.h" static const char* us = "mclxCat"; mcxstatus mclxCatPush ( mclxCat* stack , mclx* mx , mcxstatus (*cb1) (mclx* mx, void* cb_data) , void* cb1_data , mcxstatus (*cb2) (mclx* left, mclx* right, void* cb_data) , void* cb2_data , const char* fname , dim fidx ) { if ( stack->n_level && cb2 && cb2(stack->level[stack->n_level-1].mx, mx, cb2_data) ) { mcxErr ( "mclxCatPush" , "chain error at level %d" , (int) stack->n_level ) ; return STATUS_FAIL ; } if (cb1 && cb1(mx, cb1_data)) { mcxErr ( "mclxCatPush" , "matrix error at level %d" , (int) stack->n_level ) ; return STATUS_FAIL ; } if ( !stack->level || (stack->n_level >= stack->n_alloc) ) { dim n_alloc = 5 + 1.5 * stack->n_alloc ; mclxAnnot* level2 = mcxRealloc ( stack->level , sizeof stack->level[0] * n_alloc , RETURN_ON_FAIL ) ; if (!level2) return STATUS_FAIL ; stack->level = level2 ; stack->n_alloc = n_alloc ; } stack->level[stack->n_level].mx = mx ; stack->level[stack->n_level].mxtp = NULL ; stack->level[stack->n_level].usr = NULL ; stack->level[stack->n_level].fname = fidx ? mcxTingPrint(NULL, "%s(%d)", fname, (int) fidx) : mcxTingNew(fname) ; stack->n_level++ ; return STATUS_OK ; } mcxstatus mclxCatTransposeAll ( mclxCat* cat ) { dim l ; for (l=0;ln_level;l++) { if (!cat->level[l].mxtp) cat->level[l].mxtp = mclxTranspose(cat->level[l].mx) ; if (!cat->level[l].mxtp) break ; } return l == cat->n_level ? STATUS_OK : STATUS_FAIL ; } void mclxCatInit ( mclxCat* stack ) { stack->n_level = 0 ; stack->n_alloc = 0 ; stack->type = 'n' ; stack->level = NULL ; } mcxstatus mclxCatConify ( mclxCat* st ) { dim i ; if (st->n_level <= 1) return STATUS_OK ; for (i=st->n_level-1;i>0;i--) { mclx* cltp = mclxTranspose(st->level[i-1].mx) ; mclx* clcontracted = mclxCompose(cltp, st->level[i].mx, 0) ; mclxFree(&cltp) ; mclxFree(&st->level[i].mx) ; mclxMakeCharacteristic(clcontracted) ; st->level[i].mx = clcontracted ; } return STATUS_OK ; } mcxstatus mclxCatUnconify ( mclxCat* st ) { dim i ; mcxstatus status = STATUS_OK ; for (i=0;in_level-1;i++) { mclx* clprojected = mclxCompose(st->level[i].mx, st->level[i+1].mx, 0) ; if ( mclxCBdomTree ( st->level[i].mx , st->level[i+1].mx , NULL ) ) { mcxErr ( "mclxCatUnconify warning" , "domain inconsistency at level %d-%d" , (int) i , (int) (i+1) ) ; status = STATUS_FAIL ; } mclxFree(&st->level[i+1].mx) ; st->level[i+1].mx = clprojected ; } return status ; } mcxstatus mclxCBdomTree ( mclx* left , mclx* right , void* cb_data_unused cpl__unused ) { return MCLD_EQUAL(left->dom_cols, right->dom_rows) ? STATUS_OK : STATUS_FAIL ; } mcxstatus mclxCBdomStack ( mclx* left , mclx* right , void* cb_data_unused cpl__unused ) { return mcldEquate(left->dom_rows, right->dom_rows, MCLD_EQT_EQUAL) ? STATUS_OK : STATUS_FAIL ; } mcxstatus mclxCatUnaryCheck ( mclx* mx , void* cb_data ) { dim o, m, e ; mcxbits bits = *((mcxbits*) cb_data) ; if ( bits & MCLX_REQUIRE_CANONICALR && !mclxRowCanonical(mx) ) return STATUS_FAIL ; if ( bits & MCLX_REQUIRE_CANONICALC && !mclxColCanonical(mx) ) return STATUS_FAIL ; if ( bits & MCLX_REQUIRE_GRAPH && !mclxIsGraph(mx) ) return STATUS_FAIL ; if ( bits & MCLX_REQUIRE_PARTITION && clmEnstrict(mx, &o, &m, &e, ENSTRICT_REPORT_ONLY) ) return STATUS_FAIL ; if (bits & MCLX_PRODUCE_PARTITION) { dim x = clmEnstrict(mx, &o, &m, &e, ENSTRICT_PARTITION) ; if (x) mcxErr("mclxCatRead", "not a partition (fixed)") ; } return STATUS_OK ; } void mclxCatReverse ( mclxCat* stack ) { dim i ; for (i=0;in_level/2;i++) { mclxAnnot annot = stack->level[i] ; stack->level[i] = stack->level[stack->n_level-i-1] ; stack->level[stack->n_level-i-1] = annot ; } } mcxstatus mclxCatWrite ( mcxIO* xf , mclxCat* stack , int valdigits , mcxOnFail ON_FAIL ) { dim i ; if (mcxIOtestOpen(xf, ON_FAIL)) return STATUS_FAIL ; for (i=0;in_level;i++) if (mclxWrite(stack->level[i].mx, xf, valdigits, ON_FAIL)) return STATUS_FAIL ; return STATUS_OK ; } /* fixme: need mclxCatIsCone * */ struct newicky { mcxTing* node ; } ; void* newicky_init ( void* nkp ) { struct newicky* nk = nkp ; nk->node = NULL ; return nkp ; } /* For each node, count the branch length, i.e. * number of trivial nodes right beneath it. * * hierverder: change to compute the number of trivial nodes right above it. */ static void compute_branch_length ( mclxCat* cat , dim lev , dim v , double value ) { mclv* vec = cat->level[lev].mx->cols+v ; mclv* usrvec = cat->level[lev].usr ; double new_value = vec->n_ivps == 1 ? value + 1.0 : 1.5 ; dim i ; usrvec->ivps[v].val = value ; if (lev > 0) for (i=0;in_ivps;i++) compute_branch_length(cat, lev-1, vec->ivps[i].idx, new_value) ; } /* For each node, count the number of trivial nodes * in the path to root. */ static void compute_trivial_count ( mclxCat* cat , dim lev , dim v , double value ) { mclv* vec = cat->level[lev].mx->cols+v ; double delta = vec->n_ivps == 1 ? 1.0 : 0.0 ; dim i ; vec->val = value ; if (lev > 0) for (i=0;in_ivps;i++) compute_trivial_count(cat, lev-1, vec->ivps[i].idx, value+delta) ; } void compute_branch_factors ( mclxCat* cat , mcxbits bits ) { dim v ; mclx* mx ; if (!cat->n_level) return ; if ( bits & MCLX_NEWICK_NOINDENT && bits & MCLX_NEWICK_NONUM ) return ; mx = cat->level[cat->n_level-1].mx ; for (v=0;vn_level-1, v, 0.5) ; if (!(bits & MCLX_NEWICK_NONUM)) compute_branch_length(cat, cat->n_level-1, v, 1.5) ; } ; } /* TODO * smarter string building: assemble the bits. * and then print them rather than repeated assembling/printing. * * sort according to node size. * * make sure that cat does in fact encode a tree. */ mcxTing* mclxCatNewick ( mclxCat* cat , mclTab* tab , mcxbits bits ) { struct newicky* nklast, *nknext ; mcxTing* tree = NULL ; mcxTing* spacey = mcxTingKAppend(NULL, " ", cat->n_level) ; const char* prefix = spacey->str ; dim l, j, lm = cat->n_level /* level-max */ ; if (!lm) return mcxTingNew("") ; nklast = mcxNAlloc ( N_COLS(cat->level[0].mx) , sizeof(struct newicky) , newicky_init , RETURN_ON_FAIL ) ; for (l=0;llevel[l].usr) mcxDie(1, us, "user object defined") ; else cat->level[l].usr = mclvCopy(NULL, cat->level[l].mx->dom_cols) ; } compute_branch_factors(cat, bits) ; for (j=0;jlevel[0].mx);j++) { mclv* vec = cat->level[0].mx->cols+j ; mcxTing* pivot ; dim k ; nklast[j].node = mcxTingNew("") ; if (!vec->n_ivps) continue ; pivot = nklast[j].node ; if (!(bits & MCLX_NEWICK_NOINDENT)) mcxTingPrint(pivot, "%s", prefix+1+((int)vec->val)) /* apparently denotes depth .. */ ; if (vec->n_ivps > 1 || !(bits & MCLX_NEWICK_NOPTHS)) mcxTingNAppend(pivot, "(", 1) ; if (tab) mcxTingPrintAfter(pivot, "%s", tab->labels[vec->ivps[0].idx]) ; else mcxTingPrintAfter(pivot, "%ld", (long) vec->ivps[0].idx) ; for (k=1;kn_ivps;k++) { if (tab) mcxTingPrintAfter(pivot, ",%s", tab->labels[vec->ivps[k].idx]) ; else mcxTingPrintAfter(pivot, ",%ld", (long) vec->ivps[k].idx) ; } if (vec->n_ivps > 1 || !(bits & MCLX_NEWICK_NOPTHS)) mcxTingNAppend(pivot, ")", 1) ; if (!(bits & MCLX_NEWICK_NONUM)) mcxTingPrintAfter ( pivot , ":%d" , (int) ((mclv*)cat->level[0].usr)->ivps[j].val ) ; } for (l=1;lstr+l ; nknext = mcxNAlloc ( N_COLS(cat->level[l].mx) , sizeof(struct newicky) , newicky_init , ENQUIRE_ON_FAIL ) ; for (j=0;jlevel[l].mx);j++) { mclv* vec = cat->level[l].mx->cols+j ; mcxTing* pivot ; dim k ; ofs idx ; if (!vec->n_ivps) continue ; if (vec->n_ivps == 1) { ofs idx = vec->ivps[0].idx ; if (!nklast[idx].node) mcxDie(1, "newick panic", "corruption 1") ; nknext[j].node = nklast[idx].node ; nklast[idx].node = NULL ; continue ; } idx = vec->ivps[0].idx ; pivot = nknext[j].node = mcxTingEmpty(NULL, 20) ; if (!(bits & MCLX_NEWICK_NOINDENT)) mcxTingPrint(pivot, "%s", prefix+1+((int) vec->val)) ; mcxTingNAppend(pivot, "(", 1) ; if (!(bits & MCLX_NEWICK_NONL)) mcxTingNAppend(pivot, "\n", 1) ; mcxTingPrintAfter ( pivot , "%s" , nklast[idx].node->str ) ; mcxTingFree(&nklast[idx].node) ; for (k=1;kn_ivps;k++) { ofs idx = vec->ivps[k].idx ; if (!nklast[idx].node) mcxDie(1, "newick panic", "corruption 2 level %d vec %d idx %d", (int) l, (int) j, (int) idx) ; mcxTingNAppend(pivot, ",", 1) ; if (!(bits & MCLX_NEWICK_NONL)) mcxTingNAppend(pivot, "\n", 1) ; mcxTingPrintAfter(pivot, "%s", nklast[idx].node->str) ; mcxTingFree(&nklast[idx].node) ; } if (!(bits & MCLX_NEWICK_NONL)) mcxTingNAppend(pivot, "\n", 1) ; if (!(bits & MCLX_NEWICK_NOINDENT)) mcxTingPrintAfter (pivot, "%s", prefix+1+((int) vec->val)) ; mcxTingNAppend(pivot, ")", 1) ; if (!(bits & MCLX_NEWICK_NONUM)) mcxTingPrintAfter (pivot, ":%d", (int) ((mclv*)cat->level[l].usr)->ivps[j].val) ; } mcxFree(nklast) ; nklast = nknext ; } tree = nklast[0].node ; for (l=0;llevel[l].usr ; mclvFree(&vec) ; cat->level[l].usr = NULL ; } mcxFree(nklast) ; return tree ; } /* Currently this fails if there is no matrix to be read. * allowing zero matrices *could* be an option. * Even more so in conjunction with MCLX_ENSURE_ROOT */ mcxstatus mclxCatRead ( mcxIO* xf , mclxCat* st , dim n_max , mclv* base_dom_cols , mclv* base_dom_rows , mcxbits bits ) { dim n_read = 0 ; mcxstatus status = STATUS_OK ; mcxTing* line = mcxTingEmpty(NULL, 20) ; const char* me = "mclxCatRead" ; dim n_uncanon = 0 ; dim n_xf = 0 ; mclx* mx = NULL ; mcxbool stack_or_cone = MCLX_PRODUCE_DOMTREE | MCLX_PRODUCE_DOMSTACK | MCLX_REQUIRE_DOMTREE | MCLX_REQUIRE_DOMSTACK ; const char* err = NULL ; while (status == STATUS_OK) { dim o, m, e ; status = STATUS_FAIL ; if (bits & MCLX_READ_SKELETON) { if (!(mx = mclxReadSkeleton(xf, bits & MCLX_REQUIRE_GRAPH, TRUE))) break ; } else { if (bits & MCLX_REQUIRE_GRAPH) { if (!(mx = mclxReadx(xf, RETURN_ON_FAIL, MCLX_REQUIRE_GRAPH))) break ; } else if (!(mx = mclxRead(xf, RETURN_ON_FAIL))) break ; } /* we required this for clusters; docme why! * enstrict / map related ? */ if (stack_or_cone && !MCLV_IS_CANONICAL(mx->dom_cols) && ++n_uncanon == 2) { mcxErr(me, "matrix indices not in canonical format") ; mcxErr(me, "code path not tested!") ; mcxErr(me, "you might experience bugs!") ; mcxErr(me, "three exclamations for cargo cult programming!") ; } if ((bits & MCLX_REQUIRE_CANONICALC) && !MCLV_IS_CANONICAL(mx->dom_cols)) { err = "column domain not canonical" ; break ; } if ((bits & MCLX_REQUIRE_CANONICALR) && !MCLV_IS_CANONICAL(mx->dom_rows)) { err = "row domain not canonical" ; break ; } if ( (bits & MCLX_REQUIRE_PARTITION) && clmEnstrict(mx, &o, &m, &e, ENSTRICT_REPORT_ONLY) ) { err = "not a partition" ; break ; } /* check base if given */ if ( st->n_level == 0 && ( ( base_dom_cols && !MCLD_EQUAL(base_dom_cols, mx->dom_cols) ) || ( base_dom_rows && !MCLD_EQUAL(base_dom_rows, mx->dom_rows) ) ) ) { err = "base domain mismatch" ; break ; } /* check stack/cone status */ else if (stack_or_cone && st->n_level >= 1) { mclx* mxprev = st->level[st->n_level-1].mx ; mcxbool see_stack = MCLD_EQUAL(mxprev->dom_rows, mx->dom_rows) ; mcxbool see_cone = MCLD_EQUAL(mxprev->dom_cols, mx->dom_rows) ; if (!see_stack && !see_cone) { err = "fish nor fowl" ; break ; } if (st->type == 'n') { if (see_stack && see_cone) NOTHING /* all clusters could be singletons */ ; else if (see_stack) st->type = 's' ; else if (see_cone) st->type = 'c' ; } else if (st->type == 'c') { if (see_stack || (bits & MCLX_REQUIRE_DOMSTACK)) { err = "cone/stack violation" ; break ; } } else if (st->type == 's') { if (see_cone || (bits & MCLX_REQUIRE_DOMTREE)) { err = "stack/cone violation" ; break ; } } if ((bits & MCLX_REQUIRE_NESTED) && st->type == 's') { mclx* cing = clmContingency(mxprev, mx) ; mcxbool ok = TRUE ; dim j ; for (j=0;jcols[j].n_ivps != 1) { ok = FALSE ; break ; } mclxFree(&cing) ; if (!ok) break ; } } ; if (mclxCatPush(st, mx, mclxCatUnaryCheck, &bits, NULL, NULL, xf->fn->str, n_xf)) { err = "no push!" ; break ; } n_xf++ /* read trailing ')' so that EOF check later works * fixme/docme: has that ')' been ungetc"ed? */ ; if (mclxIOformat(xf) == 'a') mcxIOreadLine(xf, line, MCX_READLINE_CHOMP) ; mcxIOreset(xf) ; status = STATUS_OK ; if ( (n_max && ++n_read >= n_max) || EOF == mcxIOskipSpace(xf) ) /* skipSpace is funny for binary format, but it works */ break ; } mcxTingFree(&line) ; if ( !status && (bits & MCLX_ENSURE_ROOT) && N_COLS(mx) != 1 ) { mclx* root = mclxCartesian ( mclvCanonical(NULL, 1, 1.0) , mclvCopy(NULL, mx->dom_cols) , 1.0 ) ; if (mclxCatPush(st, root, mclxCatUnaryCheck, &bits, NULL, NULL, xf->fn->str, n_xf)) err = "no push!" , status = STATUS_FAIL ; n_xf++ ; } if (status && st->n_level && st->level[st->n_level-1].mx != mx) mclxFree(&mx) ; if (err) mcxErr(me, "%s at level %lu in file %s", err, (ulong) st->n_level, xf->fn->str) ; if (!status && stack_or_cone) { if (st->type == 's' && (bits & MCLX_PRODUCE_DOMTREE)) return mclxCatConify(st) ; else if (st->type == 'c' && (bits & MCLX_PRODUCE_DOMSTACK)) return mclxCatUnconify(st) ; } return status ; } mclx* clmContingency ( const mclx* cla , const mclx* clb ) { mclx *clbt = mclxTranspose(clb) ; mclx *ct = mclxCompose(clbt, cla, 0) ; mclxFree(&clbt) ; return ct ; } dim clmStats ( mclx* cls , dim clmstat[N_CLM_STATS] ) { mclv* acc = mclvInit(NULL) ; double onep5 = 1.5 ; mclv* clssizes = mclxColSizes(cls, MCL_VECTOR_SPARSE) ; dim d ; mclxMakeCharacteristic(cls) ; for (d=0;dcols+d, acc, acc) ; clmstat[CLM_STAT_NODES_MISSING] = N_ROWS(cls) - acc->n_ivps ; clmstat[CLM_STAT_NODES_OVERLAP] = mclvCountGiven(acc, mclpGivenValGQ, &onep5) ; clmstat[CLM_STAT_CLUSTERS] = clssizes->n_ivps ; clmstat[CLM_STAT_NODES] = N_ROWS(cls) ; clmstat[CLM_STAT_CLUSTERS_EMPTY] = N_COLS(cls) - clssizes->n_ivps ; clmstat[CLM_STAT_SUM_OVERLAP] = mclxNrofEntries(cls) - N_ROWS(cls) - clmstat[CLM_STAT_CLUSTERS_EMPTY] ; mclvFree(&clssizes) ; mclvFree(&acc) ; return ( clmstat[CLM_STAT_NODES_OVERLAP] + clmstat[CLM_STAT_NODES_MISSING] + clmstat[CLM_STAT_CLUSTERS_EMPTY] ) ; } static void clm_cut_overlap ( mclx* cl ) { mclx* cltp = mclxTranspose(cl), *cl2 ; dim d ; for (d=0;dcols+d, 1) ; cl2 = mclxTranspose(cltp) ; mclxFree(&cltp) ; mclxTransplant(cl, &cl2) ; } /* Now for each non-empty non-self intersection make a star graph, connecting one node with all the others. The connected components on the resulting graph will give us the clusters with all overlap split off and merged. For the self-intersection (of a cluster with itself) we wish to exclude all the nodes that are in overlap (those that are in a non-empty non-self intersection). */ static void clm_split_overlap ( mclx* cl ) { mclx* ctgy = clmContingency(cl, cl) ; mclx* clustergraphcomponents = NULL ; mclx* clustergraph = mclxAllocZero ( mclvCopy(NULL, cl->dom_rows) , mclvCopy(NULL, cl->dom_rows) ) ; mclv* clus_overlap = mclvInit(NULL) ; dim d ; mclgUnionvReset(cl) /* loop over sets of projections */ ; for (d=0; dcols+d /* all projections for cluster d */ ; mclv* clusvec = cl->cols+d /* cluster d itself */ ; dim e /* do not consider self-self intersection */ ; mclvRemoveIdx(ctgyvec, ctgyvec->vid) ; if (clus_overlap->n_ivps) mclgUnionvReset(cl) /* clus_overlap contains all nodes in overlap */ ; mclgUnionv(cl, ctgyvec, NULL, SCRATCH_READY, clus_overlap) #if 0 ;fprintf(stderr, "<---- clus_overlap now\n") ;mclvaDump(clus_overlap, stdout, -1, " ", 0) #endif /* clus_unique contains nodes unique to the * cluster; create a star graph on those */ ; { mclv* clus_unique = mcldMinus(clusvec, clus_overlap, NULL) ; if (clus_unique->n_ivps) { mclv* nodevec = mclxGetVector (clustergraph, clus_unique->ivps[0].idx, RETURN_ON_FAIL, NULL) ; if (nodevec) mclvAdd(nodevec, clus_unique, nodevec) ; } mclvFree(&clus_unique) ; } /* for the overlapping bits (each bit * defined by two clusters, one of which * is clusvec), create star graphs as well. * we removed source cluster d from ctgyvec earlier */ for (e=0;en_ivps;e++) { long cid = ctgyvec->ivps[e].idx ; mclv* clusvec2 = mclxGetVector(cl, cid, RETURN_ON_FAIL, NULL) ; if (clusvec2) { mclv* meet = mcldMeet(clusvec, clusvec2, NULL) ; if (meet->n_ivps) { mclv* nodevec = mclxGetVector (clustergraph, meet->ivps[0].idx, RETURN_ON_FAIL, NULL) /* this makes meet->ivps[0] the central point * in the star graph. all outgoing arcs * are added. Reverse arcs will be added later * by symmetrification. */ ; if (nodevec) mclvAdd(nodevec, meet, nodevec) ; } mclvFree(&meet) ; } } } /* Need to make it symmetric in order for * clmUGraphComponents to work. */ mclxAddTranspose(clustergraph, 0.5) ; clustergraphcomponents = clmUGraphComponents(clustergraph, NULL) ; mclvFree(&clus_overlap) ; mclxTransplant(cl, &clustergraphcomponents) /* now no need to use mclgUnionvReset */ ; mclxFree(&ctgy) ; mclxFree(&clustergraph) ; } /* optional features: argument slot for vector of missing nodes. warning sign: may change number of clusters. */ dim clmEnstrict ( mclx* cl , dim *overlap , dim *missing , dim *empty , mcxbits bits ) { dim n_overlap = 0, n_empty = 0, n_missing = 0, n_found = 0 ; double one = 1.0 ; mclxUnary(cl, fltxConst, &one) /* compute how many are empty. do this at * the start, as in some implementations * of overlap removal new empty clusters might * be generated. This has happened, historically, * so we keep this order. */ ; { mclv* szs = mclxColSizes(cl, MCL_VECTOR_SPARSE) ; n_empty = N_COLS(cl) - szs->n_ivps ; n_found = (dim) (mclvSum(szs) + 0.5) ; if (empty) *empty = n_empty ; mclvFree(&szs) /* empty clusters are removed further below */ ; } /* simply compute the join of all clusters * to find out whether nodes are missing. * also compute overlap. */ { mclv* nodes_found ; mclgUnionvReset(cl) ; nodes_found = mclgUnionv(cl, cl->dom_cols, NULL, SCRATCH_READY, NULL) ; n_missing = 0 ; if (nodes_found->n_ivps < N_ROWS(cl) && !(bits & ENSTRICT_REPORT_ONLY)) { mclv* truants = mcldMinus(cl->dom_rows, nodes_found, NULL) ; n_missing = truants->n_ivps ; mclxAppendVectors(cl, truants, NULL) /* ^ dangersign; changes N_COLS(cl) */ ; mclvFree(&truants) ; } n_overlap = n_found - nodes_found->n_ivps ; if (missing) *missing = n_missing ; if (overlap) *overlap = n_overlap ; mclvFree(&nodes_found) ; } /* no more missing nodes. whee. */ if (n_overlap && !(bits & ENSTRICT_REPORT_ONLY)) { if (bits & ENSTRICT_SPLIT_OVERLAP) clm_split_overlap(cl) ; else if (bits & ENSTRICT_CUT_OVERLAP) clm_cut_overlap(cl) ; } /* no more overlap. cracking */ ; if (!(bits & ENSTRICT_REPORT_ONLY)) mclxScrub(cl, MCLX_SCRUB_COLS) , mclxMapCols(cl, NULL) /* no more empty clusters. yay. */ ; return n_empty + n_missing + n_overlap ; } static int cmp_annot_ssq ( const void* va , const void* vb ) { const mclxAnnot* a = va ; const mclxAnnot* b = vb ; dim i, sa = 0, sb = 0 ; for (i=0;imx);i++) sa += a->mx->cols[i].n_ivps * a->mx->cols[i].n_ivps ; for (i=0;imx);i++) sb += b->mx->cols[i].n_ivps * b->mx->cols[i].n_ivps ; return sa < sb ? -1 : sa > sb ? 1 : 0 ; } static int cmp_annot_ssq_rev ( const void* a , const void* b ) { return -1 * cmp_annot_ssq(a, b) ; } void mclxCatSortCoarseFirst ( mclxCat* cat ) { qsort(cat->level, cat->n_level, sizeof(cat->level[0]), cmp_annot_ssq_rev) ; } void mclxCatSortCoarseLast ( mclxCat* cat ) { qsort(cat->level, cat->n_level, sizeof(cat->level[0]), cmp_annot_ssq) ; } mcl-12-135/src/clew/cat.h0000644000402500021140000001176011272673034011744 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* NOTE * This interface is still in progress. * * TODO * See mclxCatRead TODO. */ #ifndef impala_cat_h #define impala_cat_h #include #include "impala/matrix.h" #include "impala/vector.h" #include "impala/tab.h" #include "util/types.h" typedef struct { mclx* mx ; mclx* mxtp ; void* usr ; mcxTing* fname ; } mclxAnnot ; /* TODO * put mclxCatPush callback in the struct */ typedef struct { mclxAnnot* level ; dim n_level ; dim n_alloc ; unsigned char type /* n'one, c'one, s'stack */ ; } mclxCat ; /* This define should perhaps be in matrix.h or io.h */ enum { MCLX_READ_SKELETON = MCLX_MODE_UNUSED } ; #define MCLX_CATREAD_MODES \ ( MCLX_PRODUCE_DOMTREE \ | MCLX_PRODUCE_DOMSTACK \ | MCLX_REQUIRE_DOMTREE \ | MCLX_REQUIRE_DOMSTACK \ | MCLX_REQUIRE_NESTED \ | MCLX_ENSURE_ROOT \ | MCLX_REQUIRE_PARTITION \ | MCLX_REQUIRE_CANONICAL \ | MCLX_REQUIRE_GRAPH \ | MCLX_READ_SKELETON \ ) #define MCLX_CATREAD_CLUSTERTREE \ ( MCLX_PRODUCE_DOMTREE \ | MCLX_REQUIRE_NESTED \ | MCLX_REQUIRE_PARTITION \ ) #define MCLX_CATREAD_CLUSTERSTACK \ ( MCLX_PRODUCE_DOMSTACK \ | MCLX_REQUIRE_NESTED \ | MCLX_REQUIRE_PARTITION \ ) /* TODO: * Put most of the parameters in an mclxCatParam structure. * * Later add interface to stream matrices without keeping them * all in memory, while keeping the consistency checks. * * The param structure may also hold callbacks; they will * receive a pointer to the cat structure itself and a (void*). * * currently base_** parameters, if given, require equality. * */ mcxstatus mclxCatRead ( mcxIO* xf , mclxCat* cat , dim n_max , mclv* base_dom_cols , mclv* base_dom_rows , mcxbits bits ) ; void mclxCatInit ( mclxCat* cat ) ; mcxstatus mclxCatPush ( mclxCat* cat , mclx* mx , mcxstatus (*cb1) (mclx* mx, void* cb_data) , void* cb1_data , mcxstatus (*cb2) (mclx* left, mclx* right, void* cb_data) , void* cb2_data , const char* fname , dim fidx ) ; mcxstatus mclxCBdomTree ( mclx* left , mclx* right , void* cb_data ) ; mcxstatus mclxCBdomStack ( mclx* left , mclx* right , void* cb_data ) ; mcxstatus mclxCatUnaryCheck ( mclx* mx , void* cb_data /* will be cast to type mcxbits* */ ) ; mcxstatus mclxCatConify ( mclxCat* st ) ; mcxstatus mclxCatUnconify ( mclxCat* st ) ; void mclxCatReverse ( mclxCat* cat ) ; void mclxCatSortCoarseFirst ( mclxCat* cat ) ; void mclxCatSortCoarseLast ( mclxCat* cat ) ; mcxstatus mclxCatTransposeAll ( mclxCat* cat ) ; mcxstatus mclxCatWrite ( mcxIO* xf , mclxCat* cat , int valdigits , mcxOnFail ON_FAIL ) ; #define ENSTRICT_SPLIT_OVERLAP 1 #define ENSTRICT_KEEP_OVERLAP 2 #define ENSTRICT_CUT_OVERLAP 4 #define ENSTRICT_REPORT_ONLY 8 #define ENSTRICT_PARTITION 4 /* May change cl->cols and accordingly dom_cols, N_COLS(cl), * and the vid members of the columns. * * ENSTRICT_SPLIT_OVERLAP negates ENSTRICT_KEEP_EMPTY */ dim clmEnstrict ( mclMatrix* c1 , dim *overlap , dim *missing , dim *empty , mcxbits flags ) ; enum { CLM_STAT_NODES_MISSING = 0 , CLM_STAT_NODES_OVERLAP , CLM_STAT_SUM_OVERLAP , CLM_STAT_NODES , CLM_STAT_CLUSTERS , CLM_STAT_CLUSTERS_EMPTY , N_CLM_STATS } ; dim clmStats ( mclx* cls , dim clmstats[N_CLM_STATS] ) ; /* column domain is that of cl, so information is accessible * via the cluster ids in cl */ mclMatrix* clmContingency ( const mclMatrix* cl , const mclMatrix* dl ) ; #define MCLX_NEWICK_NONL 1 << 0 #define MCLX_NEWICK_NOINDENT 1 << 1 #define MCLX_NEWICK_NONUM 1 << 2 #define MCLX_NEWICK_NOPTHS 1 << 3 /* singletons do not get parentheses */ mcxTing* mclxCatNewick ( mclxCat* cat , mclTab* tab , mcxbits bits ) ; #endif mcl-12-135/src/clew/Makefile.in0000644000402500021140000003222211754271037013067 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/include/include.am subdir = src/clew ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = LIBRARIES = $(noinst_LIBRARIES) AR = ar ARFLAGS = cru libclew_a_AR = $(AR) $(ARFLAGS) libclew_a_LIBADD = am_libclew_a_OBJECTS = scan.$(OBJEXT) claw.$(OBJEXT) clm.$(OBJEXT) \ cat.$(OBJEXT) libclew_a_OBJECTS = $(am_libclew_a_OBJECTS) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/autofoo/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libclew_a_SOURCES) DIST_SOURCES = $(libclew_a_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir) LDADD = ../mcl/libmcl.a ../clew/libclew.a ../gryphon/libgryphon.a ../impala/libimpala.a ../../util/libutil.a AM_LDFLAGS = -lm noinst_LIBRARIES = libclew.a libclew_a_SOURCES = scan.c claw.c clm.c cat.c EXTRA_DIST = scan.h claw.h clm.h cat.h all: all-am .SUFFIXES: .SUFFIXES: .c .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/include/include.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/clew/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu src/clew/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libclew.a: $(libclew_a_OBJECTS) $(libclew_a_DEPENDENCIES) -rm -f libclew.a $(libclew_a_AR) libclew.a $(libclew_a_OBJECTS) $(libclew_a_LIBADD) $(RANLIB) libclew.a mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/claw.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/clm.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scan.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(LIBRARIES) installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-noinstLIBRARIES ctags distclean distclean-compile \ distclean-generic distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ uninstall-am # AM_LDFLAGS = -lm -lunwind -ltcmalloc # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/src/clew/scan.c0000644000402500021140000001740611037712411012107 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include #include #include #include "scan.h" #include "impala/io.h" #include "util/types.h" #include "util/err.h" #include "util/minmax.h" void clmVScan ( const mclVector* vec , clmVScore* score ) { clmVScanDomain(vec, NULL, score) ; } void clmVScanDomain ( const mclVector* vec , const mclVector* dom , clmVScore* score ) #define STAT_NONE 0 #define STAT_MEET 1 #define STAT_VDIF 2 #define STAT_DDIF 3 { dim n_meet = 0 ; dim n_vdif = 0 ; dim n_ddif = 0 ; double max_i = -FLT_MAX ; double max_o = -FLT_MAX ; double min_i = FLT_MAX ; double min_o = FLT_MAX ; double sum_i = 0.0 ; double sum_o = 0.0 ; double ssq_i = 0.0 ; double ssq_o = 0.0 ; mclIvp* ivp1 = vec->ivps ; mclIvp* ivp1max = ivp1 + vec->n_ivps ; mclIvp* ivp2, *ivp2max, *ivpself ; double powah = getenv("MCL_SCAN_R") ? atof(getenv("MCL_SCAN_R")) : 0.0 /* fixmefixmefixme hackhackhack */ ; if (!dom) dom = vec ; ivp2 = dom->ivps ; ivp2max = ivp2 + dom->n_ivps ; if (vec->vid >= 0 && (ivpself = mclvGetIvp(vec, vec->vid, NULL))) score->n_self = 1 , score->wgt_s = ivpself->val ; else score->n_self = 0 , score->wgt_s = 0.0 ; while (ivp1 < ivp1max) { double val = 0.0 ; long i1 = ivp1->idx ; long i2 = ivp2 == ivp2max ? -1 : ivp2->idx ; int mode = STAT_NONE /* node edge el not in domain */ ; if (ivp2 == ivp2max || i1 < i2) mode = STAT_VDIF , val = (ivp1++)->val /* domain el not in edge list */ /* this case is ignored below */ ; else if (i1 > i2) mode = STAT_DDIF , ivp2++ /* i1==i2, i1 in domain */ ; else mode = STAT_MEET , val = (ivp1++)->val , ivp2++ ; if (mode == STAT_VDIF) { min_o = MCX_MIN(val, min_o) ; max_o = MCX_MAX(val, max_o) ; sum_o += val ; ssq_o += powah ? pow(val, powah) : val * val ; n_vdif++ ; } else if (mode == STAT_MEET) { min_i = MCX_MIN(val, min_i) ; max_i = MCX_MAX(val, max_i) ; sum_i += val ; ssq_i += powah ? pow(val, powah) : val * val ; n_meet++ ; } else n_ddif++ ; } score->n_meet = n_meet ; score->n_vdif = n_vdif ; score->n_ddif = n_ddif + (ivp2max - ivp2) ; score->max_i = max_i ; score->min_i = min_i ; score->sum_i = sum_i ; score->ssq_i = ssq_i ; score->max_o = max_o ; score->min_o = min_o ; score->sum_o = sum_o ; score->ssq_o = ssq_o ; score->sum_e = vec->val /* fixme; clmCastActors should have set this; but it is not always called */ #undef STAT_MEET #undef STAT_VDIF #undef STAT_VDIF ; } /* given a finished score computation (by clmVScan) * compute the coverage */ void clmVScoreCoverage ( clmVScore* score , double* cov , double* covmax ) { double sum = score->sum_i + score->sum_o ; double ssq = score->ssq_i + score->ssq_o ; double div = score->sum_i - score->sum_o ; double max = MCX_MAX(score->max_i, score->max_o) ; double powah = getenv("MCL_SCAN_R") ? atof(getenv("MCL_SCAN_R")) : 0.0 ; *cov = 0.0 ; *covmax = 0.0 ; if (sum * sum) { double ctr = ssq / (powah ? pow(sum, powah) : (sum * sum)) ; dim n_join = score->n_vdif+score->n_meet+score->n_ddif ; dim n_dom = (dim) (n_join - score->n_vdif) ; if (powah) ctr = pow(ctr, (1.0/(powah-1.0))) ; max /= sum ; div /= sum ; if (ctr && n_join) *cov = 1.0 - ((n_dom - (div/ctr)) / n_join) ; if (max && n_join) *covmax = 1.0 - ((n_dom - (div/max)) / n_join) ; } } void clmXScanInit ( clmXScore* xscore ) { xscore->max_i = -FLT_MAX ; xscore->min_i = FLT_MAX ; xscore->sum_i = 0.0 ; xscore->ssq_i = 0.0 ; xscore->sum_s = 0.0 ; xscore->max_o = -FLT_MAX ; xscore->min_o = FLT_MAX ; xscore->sum_o = 0.0 ; xscore->ssq_o = 0.0 ; xscore->cov = 0.0 ; xscore->covmax = 0.0 ; xscore->n_elem_i = 0 ; xscore->n_elem_o = 0 ; xscore->n_self = 0 ; xscore->n_hits = 0 ; } void clmXScanDomain ( const mclMatrix* mx , const mclVector* domain , clmXScore* xscore ) { mclVector* col = NULL ; clmVScore vscore ; dim i ; if (!domain) domain = mx->dom_cols ; for (i=0;in_ivps;i++) { long vid = domain->ivps[i].idx ; double vsum = 0.0, vssq = 0.0 ; if ((col = mclxGetVector(mx, vid, RETURN_ON_FAIL, col))) { clmVScanDomain(col, domain, &vscore) ; vsum = vscore.sum_i + vscore.sum_o ; vssq = vscore.ssq_i + vscore.ssq_o ; xscore->n_self += vscore.n_self ; xscore->sum_s += vscore.wgt_s ; xscore->max_i = MCX_MAX(vscore.max_i, xscore->max_i) ; xscore->min_i = MCX_MIN(vscore.min_i, xscore->min_i) /* ^^ fixme; normalize ? */ ; if (vsum) { xscore->sum_i += vscore.sum_i / vsum ; xscore->sum_o += vscore.sum_o / vsum ; if (vssq) xscore->ssq_i += vscore.ssq_i / (vssq * vssq) , xscore->ssq_o += vscore.ssq_o / (vssq * vssq) ; } xscore->max_o = MCX_MAX(vscore.max_o, xscore->max_o) ; xscore->min_o = MCX_MIN(vscore.min_o, xscore->min_o) ; xscore->n_elem_i += vscore.n_meet ; xscore->n_elem_o += vscore.n_vdif ; xscore->n_hits++ ; if (domain->n_ivps) { double cov, covmax ; clmVScoreCoverage(&vscore, &cov, &covmax) ; xscore->cov += cov ; xscore->covmax += covmax ; } col++ ; } else mcxErr("clmXScanDomain PANIC", "cannot find col <%ld>", vid) ; } } void clmXScanDomainSet ( const mclMatrix* mx , const mclMatrix* cl , const mclv* cl_select , clmXScore* xscore ) { dim d ; const mclv* clvec = NULL ; for (d=0;dn_ivps;d++) { if ( (clvec = mclxGetVector(cl, cl_select->ivps[d].idx, RETURN_ON_FAIL, clvec) ) ) clmXScanDomain(mx, clvec, xscore) ; } } void clmXScoreCoverage ( clmXScore* xscore , double* cov , double* covmax ) { if (xscore->n_hits) { *cov = xscore->cov / xscore->n_hits ; if (covmax) *covmax = xscore->covmax / xscore->n_hits ; } else { *cov = 0.0 ; if (covmax) *covmax = 0.0 ; } } double clmCoverage ( const mclx* mx , const mclx* cl , double* covmaxp ) { double cov, covmax ; clmXScore xscore ; clmXScanInit(&xscore) ; clmXScanDomainSet(mx, cl, cl->dom_cols, &xscore) ; clmXScoreCoverage(&xscore, &cov, &covmax) ; if (covmaxp) *covmaxp = covmax ; return cov ; } mcl-12-135/src/clew/claw.c0000644000402500021140000005566511741316360012127 00000000000000/* (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include "claw.h" #include "util/types.h" #include "util/err.h" #include "util/minmax.h" #include "util/compile.h" #include "util/ting.h" #include "scan.h" #include "clm.h" #include "cat.h" #include "impala/matrix.h" #include "impala/compose.h" #include "impala/pval.h" #include "impala/io.h" /* likely just for debugging purposes */ static const char* us = "claw"; static void clm_dump_line ( const char* name , clmVScore* sc , long nid , long cid , dim ndsize , dim clsize /* for defensive check */ , int alien ) { double sum = sc->sum_i + sc->sum_o ; double eff, eff_max ; mcxTing* ti = NULL, *to = NULL ; clmVScoreCoverage(sc, &eff, &eff_max) ; if (clsize != sc->n_ddif + sc->n_meet) mcxErr ( "clmDumpNodeScores panic" , "for cluster %ld in %s diff <%ld> meet <%ld> do not add to <%lu>" , (long) cid , name , (long) sc->n_ddif , (long) sc->n_meet , (ulong) clsize ) ; if (sum && sc->max_i > -FLT_MAX) ti = mcxTingPrint(NULL, "%.5f", sc->max_i / sum) ; if (sum && sc->max_o > -FLT_MAX) to = mcxTingPrint(NULL, "%.5f", sc->max_o / sum) ; fprintf ( stdout , "nm=%s ni=%ld ci=%ld nn=%lu nc=%lu" " ef=%.5f em=%.5f mf=%.5f ma=%.5f" " xn=%lu xc=%lu ns=%lu" " ti=%s to=%s" " al=%d" "\n" , name, nid, cid, (ulong) ndsize, (ulong) clsize , eff, eff_max, sum ? sc->sum_i / sum : 0.0f, sc->sum_e , (ulong) sc->n_vdif, (ulong) sc->n_ddif, (ulong) sc->n_meet , (ti ? ti->str : "na"), (to ? to->str : "na") , alien ) ; } /* fixme pbb need enstricted clustering; * document and check or enforce */ void clmDumpNodeScores ( const char* name , mclx* mx , mclx* cl , mcxenum mode ) { dim d, e ; clmVScore sc ; if (mode == CLM_NODE_SELF) { for (d=0;dcols[d].n_ivps ; for (e=0;ecols[d].ivps[e].idx ; o = mclxGetVectorOffset(mx, idx, EXIT_ON_FAIL, o) ; mx->cols[o].val = mclvSum(mx->cols+o) ; clmVScanDomain(mx->cols+o, cl->cols+d, &sc) ; clm_dump_line (name, &sc, idx, cl->cols[d].vid, mx->cols[o].n_ivps, clsize, 0) ; } } /* fixme: sum_e not set, pbb due to missing clmCastActors */ } else if (mode == CLM_NODE_INCIDENT) { mclx *el_to_cl = NULL ; mclx *el_on_cl = NULL ; mclx *cl_on_cl = NULL ; mclx *cl_on_el = NULL ; clmCastActors (&mx, &cl, &el_to_cl, &el_on_cl, &cl_on_cl, &cl_on_el, 0.95) ; mclxFree(&cl_on_cl) ; mclxFree(&cl_on_el) ; for (d=0;dcols[d].vid ; long nsize = mx->cols[d].n_ivps ; mclv* clidvec = mclxGetVector(el_on_cl, nid, RETURN_ON_FAIL, NULL) ; mclv* clself = mclxGetVector(el_to_cl, nid, RETURN_ON_FAIL, NULL) ; dim f ; if (!clself) mcxErr ("clmDumpNodeScores panic", "node <%ld> does not belong", nid) ; for (f=0;fn_ivps;f++) { long cid = clidvec->ivps[f].idx ; mclv* clvec = mclxGetVector(cl, cid, RETURN_ON_FAIL, NULL) /* ^ overdoing: cid == clvec->vid */ ; int alien ; if (!clvec) { mcxErr ( "clmDumpNodeScores panic" , "cluster <%ld> node <%ld> mishap" , cid , nid ) ; continue ; } clmVScanDomain(mx->cols+d, clvec, &sc) ; alien = clself && clvec->vid == clself->ivps[0].idx ? 0 : 1 ; clm_dump_line (name, &sc, nid, clvec->vid, nsize, clvec->n_ivps, alien) ; } } mclxFree(&el_on_cl) ; mclxFree(&el_to_cl) ; } } /* The entries in cl are set to the self-projection value. * fixme: don't exit, propagate. */ static void set_cl_to_projection ( mclMatrix* cl , mclMatrix* el_on_cl ) { dim i, j ; for (i=0;icols+i ; long clid = clvec->vid ; mclv* elclvec = NULL ; mclp* valivp = NULL ; for (j=0;jn_ivps;j++) { long elid = clvec->ivps[j].idx ; elclvec = mclxGetVector(el_on_cl, elid, EXIT_ON_FAIL, elclvec) ; valivp = mclvGetIvp(elclvec, clid, NULL) ; if (!valivp && clvec->n_ivps > 1) mcxErr("clmCastActors", "match error: el %ld cl %ld", elid, clid) ; clvec->ivps[j].val = valivp ? MCX_MAX(0.01, valivp->val) : 0.01 ; } } } static void prune_el_on_cl ( mclMatrix* el_to_cl /* must be conforming */ , mclMatrix* el_on_cl /* this one will be pruned */ , double pct , int max ) { dim i ; for (i=0;icols+i ; long clid = el_to_cl->cols[i].ivps[0].idx ; double sum = 0.0 ; int n_others = 0 ; dim k = 0 ; mcxbool selfok = FALSE ; mclvSort(elclvec, mclpValRevCmp) ; while (k++ < elclvec->n_ivps && sum < pct && n_others < max) { long y = elclvec->ivps[k-1].idx ; if (y == clid) selfok = TRUE ; sum += elclvec->ivps[k-1].val ; n_others++ ; } mclvResize(elclvec, k-1) /* careful recentchange */ ; mclvSort(elclvec, mclpIdxCmp) ; if (!selfok) mclvInsertIdx(elclvec, clid, 0.01) ; } } void clmCastActors ( mclx** mxpp /* is made stochastic and has loops added */ , mclx** clpp /* entries are set to self-value */ , mclx** el_to_clpp /* transpose of cl */ , mclx** el_on_clpp /* will be made stochastic */ , mclx** cl_on_clpp /* will be made stochastic */ , mclx** cl_on_elpp /* transpose of stochastic el_on_cl */ , double frac /* consider clusters in el_on_cl until frac edge weight is covered */ ) { mclxAdjustLoops(*mxpp, mclxLoopCBmax, NULL) ; mclxMakeStochastic(*mxpp) ; *el_to_clpp = mclxTranspose(*clpp) /* el_to_cl not stochastic? */ ; *el_on_clpp = mclxCompose(*el_to_clpp, *mxpp, 0) ; mclxMakeStochastic(*el_on_clpp) ; *cl_on_clpp = mclxCompose(*el_on_clpp, *clpp, 0) ; mclxMakeStochastic(*cl_on_clpp) ; set_cl_to_projection(*clpp, *el_on_clpp) ; prune_el_on_cl(*el_to_clpp, *el_on_clpp, frac, 10) ; *cl_on_elpp = mclxTranspose(*el_on_clpp) ; } static dim clm_clm_adjust ( mclx* mx , mclx* cl , dim cls_size_max , mclx** cl_adjustedpp , mclv** cid_affectedpp , mclv** nid_affectedpp ) { dim i, j, n_adjusted = 0 ; mclx* cl_adj = mclxCopy(cl) ; mclv* cid_affected = mclvClone(cl->dom_cols) ; mclv* nid_affected = mclvClone(mx->dom_cols) ; double bar_affected = 1.5 ; const char* e1 = getenv("MCL_ADJ_FMAX") ; const char* e2 = getenv("MCL_ADJ_EMASS") ; double f1 = e1 ? atof(e1) : 2 ; double f2 = e2 ? atof(e2) : 3 ; mcxbool loggit = mcxLogGet( MCX_LOG_CELL | MCX_LOG_INFO ) ; clmVScore sc ; mclx *el_to_cl = NULL ; mclx *el_on_cl = NULL ; mclx *cl_on_cl = NULL ; mclx *cl_on_el = NULL ; *cl_adjustedpp = NULL ; *cid_affectedpp = NULL ; *nid_affectedpp = NULL ; clmCastActors (&mx, &cl, &el_to_cl, &el_on_cl, &cl_on_cl, &cl_on_el, 0.95) ; mclxFree(&cl_on_cl) ; mclxFree(&cl_on_el) ; mclvMakeConstant(cid_affected, 1.0) ; mclvMakeConstant(nid_affected, 1.0) ; for (i=0;icols[i].val = 0.5 /* Proceed with smallest clusters first. * Caller has to take care of mclxColumnsRealign */ ; for (i=0;icols+i /* Only consider nodes in clusters of * size <= cls_size_max */ ; if (cls_size_max && clself->n_ivps > cls_size_max) break /* Clusters that have been marked for inclusion * cannot play. */ ; if (cl_adj->cols[i].val > 1) continue ; for (j=0;jn_ivps;j++) { long nid = clself->ivps[j].idx ; long nos = mclvGetIvpOffset(mx->dom_cols, nid, -1) ; mclv* clidvec = mclxGetVector(el_on_cl, nid, RETURN_ON_FAIL, NULL) ; double eff_alien_bsf = 0.0, eff_alien_max_bsf = 0.0 /* best so far*/ ; double eff_self = 0.0, eff_self_max = 0.0 ; long cid_alien = -1, cid_self = -1 ; clmVScore sc_self = { 0 }, sc_alien = { 0 } ; dim f ; if (nos < 0 || !clidvec) { mcxErr ("clmDumpNodeScores panic", "node <%ld> does not belong", nid) ; continue ; } clmVScanDomain(mx->cols+nos, clself, &sc) ; clmVScoreCoverage(&sc, &eff_self, &eff_self_max) ; cid_self = clself->vid ; sc_self = sc ; if (loggit) mcxLog2 ( us , "node %ld in cluster %ld eff %.3f,%.3f sum %.3f" , nid , cid_self , eff_self , eff_self_max , sc.sum_i ) ; for (f=0;fn_ivps;f++) { long cid = clidvec->ivps[f].idx ; mclv* clvec = mclxGetVector(cl, cid, RETURN_ON_FAIL, NULL) /* ^ overdoing: cid == clvec->vid */ ; double eff, eff_max ; if (!clvec) { mcxErr ( "clmAdjust panic" , "cluster <%ld> node <%ld> mishap" , cid , nid ) ; continue ; } /* fixme: document or remove first condition * */ if ((0 && clvec->n_ivps <= clself->n_ivps) || clvec->vid == cid_self) continue ; clmVScanDomain(mx->cols+nos, clvec, &sc) ; clmVScoreCoverage(&sc, &eff, &eff_max) #if 0 # define PIVOT eff > eff_alien_bsf #else # define PIVOT eff_max > eff_alien_max_bsf #endif ; if ( PIVOT || sc.sum_i >= 0.5 ) eff_alien_bsf = eff , eff_alien_max_bsf = eff_max , cid_alien = clvec->vid , sc_alien = sc ; if (sc.sum_i >= 0.5) break ; } if (loggit) mcxLog2 ( us , " -> best alien %ld eff %.3f,%.3f sum %.3f" , cid_alien , eff_alien_bsf , eff_alien_max_bsf , sc_alien.sum_i ) /* below: use sum_i as mass fraction * (clmAdjust framework uses stochastic * matrix) */ ; if ( cid_alien >= 0 && cid_self >= 0 && f1 * sc_alien.max_i >= sc_self.max_i && ( ( eff_alien_bsf > eff_self && sc_alien.sum_i > sc_self.sum_i ) || ( pow(sc_alien.sum_i, f2) >= sc_self.sum_i && pow(eff_self, f2) <= eff_alien_bsf ) ) /* So, if max is reasonable * and efficiency is better and mass is better * or if mass is ridiculously better -> move * Somewhat intricate and contrived, yes. */ ) { mclv* acceptor = mclxGetVector(cl_adj, cid_alien, RETURN_ON_FAIL, NULL) ; mclv* donor = mclxGetVector(cl_adj, cid_self, RETURN_ON_FAIL, NULL) ; if (!donor || !acceptor || acceptor == donor) continue ; mclvInsertIdx(donor, nid, 0.0) ; mclvInsertIdx(acceptor, nid, 1.0) ; acceptor->val = 1.5 ; if (mcxLogGet(MCX_LOG_LIST)) { mclv* nb = mx->cols+nos ; double mxv = mclvMaxValue(nb) ; double avg = nb->n_ivps ? mclvSum(nb) / nb->n_ivps : -1.0 ; mcxLog ( MCX_LOG_LIST , us , "mov %ld (%ld %.2f %.2f)" " %ld (cv=%.2f cm=%.2f s=%.2f m=%.2f #=%lu)" " to %ld (cv=%.2f cm=%.2f s=%.2f m=%.2f #=%lu)" , nid , (long) nb->n_ivps, mxv, avg , cid_self , eff_self, eff_self_max, sc_self.sum_i, sc_self.max_i , (ulong) (sc_self.n_meet + sc_self.n_ddif) , cid_alien , eff_alien_bsf, eff_alien_max_bsf, sc_alien.sum_i, sc_alien.max_i , (ulong) (sc_alien.n_meet + sc_alien.n_ddif) ) ; } n_adjusted++ ; mclvInsertIdx(cid_affected, cid_alien, 2.0) ; mclvInsertIdx(cid_affected, cid_self, 2.0) ; mclvInsertIdx(nid_affected, nid, 2.0) ; } } } mclxFree(&el_on_cl) ; mclxFree(&el_to_cl) ; for (i=0;icols[i].val = 0.0 ; mclxMakeCharacteristic(cl) ; if (!n_adjusted) { mclxFree(&cl_adj) ; mclvFree(&cid_affected) ; mclvFree(&nid_affected) ; return 0 ; } mclxUnary(cl_adj, fltxCopy, NULL) ; mclxMakeCharacteristic(cl_adj) /* FIRST REMOVE ENTRIES set to zero (sssst now .. */ /* ...) and THEN make it characteristic again */ ; mclvUnary(cid_affected, fltxGT, &bar_affected) ; mclvUnary(nid_affected, fltxGT, &bar_affected) ; *cl_adjustedpp = cl_adj ; *cid_affectedpp = cid_affected ; *nid_affectedpp = nid_affected ; return n_adjusted ; } dim clmAdjust ( mclx* mx , mclx* cl , dim cls_size_max , mclx** cl_adjustedpp , mclv** ls_adjustedpp /* nodes that moved around */ , dim* sjd_left , dim* sjd_right ) { dim sum_adjusted = 0, n_ite = 0 ; dim dist_curr_adj = 0, dist_adj_curr = 0 ; mclx* cl_adj = NULL ; mclx* cl_curr = cl ; mclv* ls_adjusted = mclvInit(NULL) ; clmXScore score_curr, score_adj ; const char* me = "clmAdjust" ; *cl_adjustedpp = NULL ; *ls_adjustedpp = NULL ; while (1) { dim n_adjusted ; double cov_curr, cov_adj, frac_curr = 0.0, frac_adj = 0.0 ; mclv* cid_affected = NULL, *nid_affected = NULL ; dim o, m, e ; if (n_ite++ >= 100) break ; mclxColumnsRealign(cl_curr, mclvSizeCmp) ; if ( !(n_adjusted = clm_clm_adjust (mx, cl_curr, cls_size_max, &cl_adj, &cid_affected, &nid_affected) ) ) break ; mcxTell ( me , "assembled %lu nodes with %lu clusters affected" , (ulong) n_adjusted , (ulong) cid_affected->n_ivps ) ; clmXScanInit(&score_curr) ; clmXScanInit(&score_adj) ; clmXScanDomainSet(mx, cl_curr,cid_affected, &score_curr) ; clmXScanDomainSet(mx, cl_adj, cid_affected, &score_adj) ; clmXScoreCoverage(&score_curr, &cov_curr, NULL) ; clmXScoreCoverage(&score_adj , &cov_adj , NULL) ; if (score_curr.n_hits && score_adj.n_hits) frac_curr = score_curr.sum_i / score_curr.n_hits , frac_adj = score_adj.sum_i / score_adj.n_hits ; mcxLog ( MCX_LOG_LIST , me , "consider (%.5f|%.5f|%lu) vs (%.5f|%.5f|%lu)" , cov_adj, frac_adj, (ulong) score_adj.n_hits , cov_curr, frac_curr, (ulong) score_curr.n_hits ) /* experience tells us that mcl's funneling * worsens frac */ ; if (frac_adj <= frac_curr) { mclvFree(&cid_affected) ; mclvFree(&nid_affected) ; break ; } clmEnstrict(cl_adj, &o, &m, &e, 0) ; clmSJDistance(cl_curr, cl_adj, NULL, NULL, &dist_curr_adj, &dist_adj_curr) ; mcxLog ( MCX_LOG_AGGR , me , "distance %lu|%lu" , (ulong) dist_curr_adj, (ulong) dist_adj_curr ) ; mclvAdd(ls_adjusted, nid_affected, ls_adjusted) ; if (cl_curr != cl) mclxFree(&cl_curr) ; cl_curr = cl_adj ; sum_adjusted += n_adjusted ; mclvFree(&cid_affected) ; mclvFree(&nid_affected) ; } if (cl_curr != cl) /* fixme free logic */ { mclxColumnsRealign(cl_curr, mclvSizeRevCmp) ; *cl_adjustedpp = cl_curr ; *ls_adjustedpp = ls_adjusted ; clmSJDistance (cl, cl_curr, NULL, NULL, &dist_curr_adj, &dist_adj_curr) ; if (sjd_left) *sjd_left = dist_curr_adj , *sjd_right = dist_adj_curr ; } else { if (sjd_left) *sjd_left = 0 , *sjd_right = 0 ; mclvFree(&ls_adjusted) ; } mcxLog ( MCX_LOG_AGGR , me , "total adjusted %lu, final distance %lu|%lu" , (ulong) sum_adjusted , (ulong) dist_curr_adj , (ulong) dist_adj_curr ) ; mclxColumnsRealign(cl, mclvSizeRevCmp) ; return sum_adjusted ; } static dim clm_clm_prune ( mclx* mx , mclx* cl , dim prune_sz , mclx** cl_adjustedpp , dim* n_sink , dim* n_source ) { dim d, n_adjusted = 0 ; mclx* cl_adj = mclxCopy(cl) ; mclv* cid_affected = mclvClone(cl->dom_cols) ; const char* me = "clmAssimilate" ; double bar_affected = 1.5 ; mclx *el_to_cl = NULL ; mclx *el_on_cl = NULL ; mclx *cl_on_cl = NULL ; mclx *cl_on_el = NULL ; *n_sink = 0 ; *n_source = 0 ; mclvMakeConstant(cid_affected, 1.0) ; mclxColumnsRealign(cl_adj, mclvSizeCmp) ; *cl_adjustedpp = NULL ; clmCastActors (&mx, &cl_adj, &el_to_cl, &el_on_cl, &cl_on_cl, &cl_on_el, 0.95) ; mclxFree(&cl_on_el) ; for (d=0;dcols+d ; mclv* cllist = cl_on_cl->cols+d ; mclp* pself = mclvGetIvp(cllist, clthis->vid, NULL) ; double self_val = -1.0 ; if (pself) self_val = pself->val , pself->val *= 1.001 /* to push it up in case of equal weights */ ;if(0)fprintf(stderr, "test size %d\n", (int) clthis->n_ivps) ; if (prune_sz && clthis->n_ivps > prune_sz) continue ; while (1) { mclv* clthat ; dim e ; if (cllist->n_ivps < 2) break ; mclvSort(cllist, mclpValRevCmp) /* now get biggest mass provided that cluster * ranks higher (has at least as many entries) * * fixme/todo: we probably have a slight order * dependency for some fringe cases. If provable * then either solve or document it. */ ; for (e=0;en_ivps;e++) if (cllist->ivps[e].idx >= clthis->vid) break /* found none or itself */ ; if (e == cllist->n_ivps || cllist->ivps[e].idx == clthis->vid) break ; if /* Should Not Happen */ (!(clthat = mclxGetVector(cl_adj, cllist->ivps[e].idx, RETURN_ON_FAIL, NULL) ) ) break /* works for special case prune_sz == 0 */ /* if (clthat->n_ivps + clthis->n_ivps > prune_sz) */ /* ^iced. inconsistent behaviour as k grows. */ ; { mcxLog ( MCX_LOG_LIST , me , "source %ld|%lu|%.3f absorbed by %ld|%lu|%.3f" , clthis->vid, (ulong) clthis->n_ivps, self_val , clthat->vid, (ulong) clthat->n_ivps, cllist->ivps[0].val ) ; n_adjusted += clthis->n_ivps ; (*n_sink)++ /* note: we could from our precomputed cl_on_cl * obtain that A is absorbed in B, B is absorbed in C. * below we see that A will be merged with B, * and the result will then be merged with C. * This depends on the fact that cl_adj is ordered * on increasing cluster size. */ ; mcldMerge(cl_adj->cols+d, clthat, clthat) ; mclvResize(cl_adj->cols+d, 0) ; mclvInsertIdx(cid_affected, clthat->vid, 2.0) ; } break ; } mclvSort(cllist, mclpIdxCmp) ; } mclxFree(&cl_on_cl) ; mclxFree(&el_on_cl) ; mclxFree(&el_to_cl) ; mclxMakeCharacteristic(cl) ; mclvUnary(cid_affected, fltxGT, &bar_affected) ; *n_source = cid_affected->n_ivps ; mclvFree(&cid_affected) ; mclxColumnsRealign(cl_adj, mclvSizeRevCmp) ; if (!n_adjusted) { mclxFree(&cl_adj) ; return 0 ; } mclxUnary(cl_adj, fltxCopy, NULL) ; mclxMakeCharacteristic(cl_adj) ; *cl_adjustedpp = cl_adj ; return n_adjusted ; } dim clmAssimilate ( mclx* mx , mclx* cl , dim prune_sz , mclx** cl_prunedpp , dim* sjd_left , dim* sjd_right ) { dim dist_this_pru = 0, dist_pru_this = 0 ; mclx* cl_pru = NULL ; const char* me = "clmAssimilate" ; dim o, m, e, n_source, n_sink ; dim sum_pruned = clm_clm_prune (mx, cl, prune_sz, &cl_pru, &n_source, &n_sink) ; *cl_prunedpp = NULL ; if (sum_pruned) { mcxLog ( MCX_LOG_AGGR , me , "funneling %lu nodes from %lu sources into %lu targets" , (ulong) sum_pruned , (ulong) n_source , (ulong) n_sink ) ; clmEnstrict(cl_pru, &o, &m, &e, 0) ; *cl_prunedpp = cl_pru ; clmSJDistance (cl, cl_pru, NULL, NULL, &dist_this_pru, &dist_pru_this) ; if (sjd_left) *sjd_left = dist_this_pru , *sjd_right = dist_pru_this ; } else if (sjd_left) *sjd_left = 0 , *sjd_right = 0 ; mcxLog ( MCX_LOG_AGGR , me , "dim %lu pruned %lu distance %lu|%lu" , (ulong) N_COLS(mx) , (ulong) sum_pruned , (ulong) dist_this_pru , (ulong) dist_pru_this ) ; return sum_pruned ; } mcl-12-135/src/clew/Makefile.am0000644000402500021140000000042311161724372013051 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.5 2006-10-19 09:57:44 flux Exp $ include $(top_srcdir)/include/include.am noinst_LIBRARIES = libclew.a libclew_a_SOURCES = scan.c claw.c clm.c cat.c EXTRA_DIST = scan.h claw.h clm.h cat.h mcl-12-135/src/clew/claw.h0000644000402500021140000000436510642147702012124 00000000000000/* (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef clm_claw_h #define clm_claw_h #include #include #include "impala/matrix.h" enum { CLM_NODE_SELF = 1 , CLM_NODE_INCIDENT } ; /* fixme not documented (at all), mixes dump & readjust functionality * It's a quick and dirty prototype. */ void clmDumpNodeScores ( const char* name , mclx* mx /* will be made stochastic; no provision yet for precompute */ , mclx* cl , mcxenum mode ) ; /* look at each node invidually, move it to other cluster if the * signs are good. * Rationale: sparse segments attached to dense segments tend * to suck a few nodes out of the dense segment (with mcl). * This tries to remedy that. */ dim clmAdjust ( mclx* mx , mclx* cl , dim cls_size_max , mclx** cl_adjustedpp , mclv** ls_adjustedpp , dim* sjd_left , dim* sjd_right ) ; /* Look at small clusters of size <= prune_sz and try to have * them aborbed by bigger clusters. * TODO: perhaps we should do this iteratively similar to Adjust. */ dim clmAssimilate ( mclx* mx , mclx* cl , dim prune_sz , mclx** cl_prunedpp , dim* sjd_left , dim* sjd_right ) ; /* el_on_cl will for each node n always contain the cluster in which * it was found, even if the incidence was very small. * That incidence is currently always set to 0.01 at least, so * mass projections do not add up perfectly to 1.0 in case the self * projection value was smaller than 0.01. */ void clmCastActors ( mclx** mx /* is made stochastic */ , mclx** cl /* entries are set to self-value */ , mclx** el_to_cl /* transpose of cl */ , mclx** el_on_cl /* will be made stochastic */ , mclx** cl_on_cl /* will be made stochastic */ , mclx** cl_on_el /* transpose of stochastic el_on_cl */ , double frac /* consider clusters in el_on_cl until frac edge weight is covered */ ) ; #endif mcl-12-135/src/shmx/0000777000402500021140000000000011756465225011140 500000000000000mcl-12-135/src/shmx/mcxsubs.c0000644000402500021140000011647211556240123012701 00000000000000/* (C) Copyright 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* FOCUS * - Don't implement chains that can be achieved more elegantly * by reusing the program or other mcl siblings. * - Do implement functionality that would otherwise be very time-consuming * or silly not to implement given that the matrix is held in memory. * - Don't create a multitude of directives; try to achieve power by * small building blocks and powerful rules for joining them. * Example: extend domain construction abilities by combining * different dom specs rather than expanding iIdDpPjJ logic. */ /* NOTE * for random selection you are required to do * mcxsubs -imx small.mci -rfac 0.5 'dom(cr, I()), out(-)' * which is a bit annoying. */ /* CAVEAT * size((num),del(1)) * transforms the domains: does that conflict with any assumptions * in the rest of the code that touches domains? */ /* TODO * Some scripting language to get an abstraction layer rather * than all this junk. * * Optimize 1-submatrix addition, and perhaps 2- and 4- as well. * * Move tag and tag-digits opts into specs. * * is mclxSub optimized for simple domain manipulations? * * domain matrix: start by reading domains only, * read matrix only if necessary. (useful with d-1 d-2 specs). * * Move dfac logic into loop, rather then precomputing. */ #include #include #include #include #include "impala/matrix.h" #include "impala/vector.h" #include "impala/ivp.h" #include "impala/pval.h" #include "impala/io.h" #include "impala/app.h" #include "impala/tab.h" #include "mcl/interpret.h" #include "mcl/transform.h" #include "gryphon/path.h" #include "util/types.h" #include "util/err.h" #include "util/ting.h" #include "util/ding.h" #include "util/tok.h" #include "util/opt.h" #include "util/array.h" #include "util/rand.h" #include "util/compile.h" enum { MY_OPT_IMX , MY_OPT_DOMAIN , MY_OPT_TAB , MY_OPT_TF , MY_OPT_BLOCK , MY_OPT_BLOCK2 , MY_OPT_BLOCKC , MY_OPT_FROM_DISK , MY_OPT_SKIN , MY_OPT_CROSS , MY_OPT_OUT , MY_OPT_EFAC , MY_OPT_DFAC , MY_OPT_RFAC , MY_OPT_CFAC , MY_OPT_RAND_DISCARD , MY_OPT_RAND_EXCLUSIVE , MY_OPT_RAND_INTERSECT , MY_OPT_RAND_MERGE , MY_OPT_TAGGED , MY_OPT_TAG_DIGITS , MY_OPT_VERSION , MY_OPT_HELP , MY_OPT_APROPOS } ; mcxOptAnchor options[] = { { "--help" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_APROPOS , NULL , "print this help" } , { "-h" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "--version" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_VERSION , NULL , "print version information" } , { "-dom" , MCX_OPT_HASARG , MY_OPT_DOMAIN , "" , "domain matrix (target for 'd' specs)" } , { "--block2" , MCX_OPT_HIDDEN , MY_OPT_BLOCK2 , NULL , "use alternative block routine" } , { "--block" , MCX_OPT_DEFAULT , MY_OPT_BLOCK , NULL , "use the block matrix induced by dom" } , { "--blockc" , MCX_OPT_DEFAULT , MY_OPT_BLOCKC , NULL , "use the complement of block matrix" } , { "-out" , MCX_OPT_HASARG , MY_OPT_OUT , "" , "special purpose output file name" } , { "-tf" , MCX_OPT_HASARG , MY_OPT_TF , "" , "first apply tf-spec to matrix" } , { "--from-disk" , MCX_OPT_DEFAULT , MY_OPT_FROM_DISK , "" , "read submatrix directly from disk" } , { "--tag" , MCX_OPT_DEFAULT , MY_OPT_TAGGED , NULL , "output tagged matrices" } , { "--skin-read" , MCX_OPT_DEFAULT , MY_OPT_SKIN , NULL , "only read skeleton matrix (domains, no entries)" } , { "--extend" , MCX_OPT_DEFAULT , MY_OPT_CROSS , NULL , "read extended submatrices" } , { "--rand-discard" , MCX_OPT_DEFAULT , MY_OPT_RAND_DISCARD , NULL , "discard random selection" } , { "--rand-exclusive" , MCX_OPT_DEFAULT , MY_OPT_RAND_EXCLUSIVE , NULL , "discard regular selection" } , { "--rand-intersect" , MCX_OPT_DEFAULT , MY_OPT_RAND_INTERSECT , NULL , "intersect random and regular selection" } , { "--rand-merge" , MCX_OPT_DEFAULT , MY_OPT_RAND_MERGE , NULL , "join random and regular selection" } , { "-efac" , MCX_OPT_HASARG , MY_OPT_EFAC , "" , "random selection edge factor" } , { "-dfac" , MCX_OPT_HASARG , MY_OPT_DFAC , "" , "random selection domain factor" } , { "-rfac" , MCX_OPT_HASARG , MY_OPT_RFAC , "" , "random selection row factor" } , { "-cfac" , MCX_OPT_HASARG , MY_OPT_CFAC , "" , "random selection column factor" } , { "-tag-digits" , MCX_OPT_HASARG , MY_OPT_TAG_DIGITS , "" , "digits to print for tagged write" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "tab file name" } , { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "matrix/graph file name" } , { NULL, 0, 0, NULL, NULL } } ; #define MCLX_EQT_CEIL MCLX_EQT_UNUSED #define FIN_MISC_CHR 1 #define FIN_MISC_TP 2 #define FIN_MISC_DOMC 4 #define FIN_MISC_DOMR 8 #define FIN_MISC_EMPTY 16 #define FIN_MAP_CAN_COLS 1 #define FIN_MAP_CAN_ROWS 2 #define FIN_MAP_UNI_COLS 4 #define FIN_MAP_UNI_ROWS 8 #define FIN_MAP_SCRUB_COLS 16 #define FIN_MAP_SCRUB_ROWS 32 #define FIN_MAP_SCRUB_GRAPH 64 #define FIN_WB 128 typedef struct { mcxTing* fname ; mcxTing* txt /* text representation of spec */ ; mclv* cvec /* contains col indices */ ; mclv* rvec /* contains row indices */ ; long sz_min ; long sz_max ; long sz_ceil ; long sz_del ; long ext_disc /* TODO remove ext_disc */ ; long ext_cdisc ; long ext_rdisc ; mclv* path_set ; long ext_ring ; int n_col_specs ; int n_row_specs ; mcxbool do_extend ; mclgTF* sel_val ; mcxbits sel_sz_opts ; mcxbits fin_map_opts ; mcxbits fin_misc_opts ; } subspec_mt ; typedef struct { mclx* mx ; mclx* dom ; mclx* el2dom ; mclv* universe_cols ; mclv* universe_rows ; mclv* randselect_cols ; mclv* randselect_rows ; mclTab* tab ; long min ; long max ; int rand_mode ; int spec_ct ; } context_mt ; const char* syntax = "Usage: mcxsubs +"; const char* me = "mcxsubs"; /* Conceivable options for randomly thinning out a graph. * - thing out domains, either the same way or separately, or only one of them. * - randomly pick edges. */ double efac = 0.0; /* edges */ double dfac = 0.0; /* both domains */ double cfac = 0.0; /* column domain */ double rfac = 0.0; /* row domain */ mclVector* VectorFromString ( const char* str , mclMatrix* dom , mclVector* universe , int* n_parsed ) ; void thin_out ( mclv* universe , double fac ) { dim i ; double zero = 0.0 ; for (i=0;in_ivps;i++) { long r = random() ; if (((double) r) / RAND_MAX > fac) universe->ivps[i].val = 0.0 ; } mclvUnary(universe, fltxGT, &zero) ; } void prune_edges ( mclx* mx , double efac ) { dim c, i ; for (c=0;ccols+c ; for (i=0;in_ivps;i++) if (((double) random()) / RAND_MAX >= efac) vec->ivps[i].val = 0.0 ; mclvUnary(vec, fltxCopy, NULL) /* removes zeros */ ; } } void spec_exec ( subspec_mt* spec , context_mt* ctxt , mcxIO* xfmx_reread , double efac , mcxbool bCltag , int digits ) ; mcxstatus spec_parse ( subspec_mt* spec , context_mt* ctxt ) ; void spec_init ( subspec_mt* spec , const char* str , int ct , mcxbool do_extend ) { spec->txt = mcxTingNew(str) ; spec->fname = mcxTingNew("-") ; spec->sz_min = 0 ; spec->sz_max = 0 ; spec->sz_ceil = 0 ; spec->sz_del = FALSE ; spec->ext_disc = 0 ; spec->ext_cdisc = 0 ; spec->ext_rdisc = 0 ; spec->ext_ring = 0 ; spec->path_set = NULL ; spec->sel_val = NULL ; spec->sel_sz_opts = 0 ; spec->fin_map_opts = 0 ; spec->fin_misc_opts = 0 ; spec->n_row_specs = 0 ; spec->n_col_specs = 0 ; spec->do_extend = do_extend ; spec->cvec = mclvInit(NULL) ; spec->rvec = mclvInit(NULL) ; } int main ( int argc , const char* argv[] ) { mcxIO *xfcl = NULL, *xftab = NULL ; mcxIO* xfmx = mcxIOnew("-", "r") ; mclx *dom = NULL,*el2dom = NULL, *mx = NULL ; mclv *universe_rows = NULL, *universe_cols = NULL ; mclv *randselect_rows = NULL, *randselect_cols = NULL ; context_mt ctxt ; mcxTing* fnout = mcxTingNew("out.mcxsubs") ; mclTab* tab = NULL ; subspec_mt *specs = NULL ; int n_spec = 0 ; mcxBuf spec_buf ; int digits = MCLXIO_VALUE_GETENV ; int a = 1 ; int i = 0 ; mcxbool bCltag = FALSE ; mcxbool reread = FALSE ; mcxbool skin_read = FALSE ; mcxbool do_extend = FALSE ; int rand_mode = 'i' ; int n_arg_read = 0 ; mcxbits do_block = 0 /* 1 block, 2 blockc, 4 blocks2 */ ; mcxTing* tfting = NULL ; mcxstatus parseStatus = STATUS_OK ; mcxOption* opts, *opt ; srandom(mcxSeed(30847)) ; mcxBufInit(&spec_buf, &specs, sizeof(subspec_mt), 30) ; mcxOptAnchorSortById(options, sizeof(options)/sizeof(mcxOptAnchor) -1) ; if (argc==1) { mcxOptApropos(stdout, me, syntax, 20, MCX_OPT_DISPLAY_SKIP, options) ; exit(0) ; } mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclxIOsetQMode("MCLXIOVERBOSITY", MCL_APP_VB_YES) ; mclx_app_init(stderr) ; if (!(opts = mcxOptExhaust(options, (char**) argv, argc, 1, &n_arg_read, &parseStatus))) exit(0) ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; switch(anch->id) { case MY_OPT_HELP : case MY_OPT_APROPOS : mcxOptApropos(stdout, me, syntax, 20, MCX_OPT_DISPLAY_SKIP, options) ; return 0 ; case MY_OPT_VERSION : app_report_version(me) ; return 0 ; case MY_OPT_TAB : xftab = mcxIOnew(opt->val, "r") ; mcxIOopen(xftab, EXIT_ON_FAIL) ; break ; case MY_OPT_IMX : mcxIOnewName(xfmx, opt->val) ; mcxIOopen(xfmx, EXIT_ON_FAIL) ; break ; case MY_OPT_DOMAIN : xfcl = mcxIOnew(opt->val, "r") ; mcxIOopen(xfcl, EXIT_ON_FAIL) ; break ; case MY_OPT_BLOCKC : do_block = 4 ; break ; case MY_OPT_BLOCK : do_block = 1 ; break ; case MY_OPT_BLOCK2 : do_block = 2 ; break ; case MY_OPT_OUT : mcxTingWrite(fnout, opt->val) ; break ; case MY_OPT_CROSS : do_extend = TRUE ; break ; case MY_OPT_SKIN : skin_read = TRUE ; break ; case MY_OPT_FROM_DISK : reread = TRUE ; break ; case MY_OPT_EFAC : efac = atof(opt->val) ; break ; case MY_OPT_DFAC : dfac = atof(opt->val) ; break ; case MY_OPT_TF : tfting = mcxTingNew(opt->val) ; break ; case MY_OPT_RFAC : rfac = atof(opt->val) ; break ; case MY_OPT_CFAC : cfac = atof(opt->val) ; break ; case MY_OPT_RAND_DISCARD : rand_mode = 'd' ; break ; case MY_OPT_RAND_EXCLUSIVE : rand_mode = 'e' ; break ; case MY_OPT_RAND_INTERSECT : rand_mode = 'i' ; break ; case MY_OPT_RAND_MERGE : rand_mode = 'm' ; break ; case MY_OPT_TAGGED : bCltag = TRUE ; break ; case MY_OPT_TAG_DIGITS : digits = atoi(argv[a]) ; break ; } } /* fixme hackish, control-flow-wise */ if (n_arg_read+1 == argc) { if (do_block) { subspec_mt* spec = mcxBufExtend(&spec_buf, 1, EXIT_ON_FAIL) ; mcxTing* txt = mcxTingPrint(NULL, "dom(CR, i()), out(%s)", fnout->str) ; spec_init(spec, txt->str, spec_buf.n, FALSE) ; mcxTingFree(&txt) ; } else mcxDie(0, me, "no specs found") ; } for (a=1+n_arg_read;a", argv[a]) ; spec_init(spec, argv[a], spec_buf.n, do_extend) ; } n_spec = mcxBufFinalize(&spec_buf) ; if (!xfmx) { mcxTell(me, "no matrix given, proceeding with nil matrix") ; universe_rows = mclvNew(NULL, 0) ; universe_cols = mclvNew(NULL, 0) ; mx = mclxAllocZero ( mclvClone(universe_cols) , mclvClone(universe_rows) ) ; reread = FALSE ; } else if (reread && !do_block) { universe_rows = mclvNew(NULL, 0) ; universe_cols = mclvNew(NULL, 0) ; if (mclxReadDomains(xfmx, universe_cols, universe_rows)) mcxDie(1, me, "failed when reading domains") ; } else if (skin_read) { universe_rows = mclvNew(NULL, 0) ; universe_cols = mclvNew(NULL, 0) ; if (mclxReadDomains(xfmx, universe_cols, universe_rows)) mcxDie(1, me, "failed when reading domains") ; mx = mclxAllocZero ( mclvClone(universe_cols) , mclvClone(universe_rows) ) ; } else { mx = mclxRead(xfmx, EXIT_ON_FAIL) ; universe_rows = mclvClone(mx->dom_rows) ; universe_cols = mclvClone(mx->dom_cols) ; } if (xfmx) mcxIOclose(xfmx) ; if (xftab) { tab = mclTabRead(xftab, NULL, EXIT_ON_FAIL) ; mcxIOfree(&xftab) ; } if (dfac) { randselect_cols = mclvClone(universe_cols) ; thin_out(randselect_cols, dfac) ; if (mcldEquate(universe_rows, universe_cols, MCLD_EQT_EQUAL)) randselect_rows = mclvClone(randselect_cols) ; else randselect_rows = mclvClone(universe_rows) , thin_out(randselect_rows, dfac) ; } else { if (cfac) randselect_cols = mclvClone(universe_cols) , thin_out(randselect_cols, cfac) ; else randselect_cols = NULL ; if (rfac) randselect_rows = mclvClone(universe_rows) , thin_out(randselect_rows, rfac) ; else randselect_rows = NULL ; } if (xfcl) dom = mclxRead(xfcl, EXIT_ON_FAIL) ; mcxIOfree(&xfcl) ; if (do_block && mx && dom != mx) { mclx* block = NULL ; if (!dom) mcxDie(1, me, "need domain matrix (-dom option)") ; if (do_block & 3) block = do_block & 2 ? mclxBlockUnion2(mx, dom) : mclxBlockUnion(mx, dom) ; else block = mclxBlocksC(mx, dom) /* block-COMPLEMENT really */ ; mclxFree(&mx) ; mx = block ; } if (!dom) mcxTell(me, "using -imx matrix for domain retrieval") , dom = mx ; if (tfting) { mclgTF* tfar = mclgTFparse(NULL, tfting) ; if (!tfar) mcxDie(1, me, "errors in tf-spec") ; mclgTFexec(mx, tfar) ; } if (bCltag) el2dom = mclxTranspose(dom) ; ctxt.tab = tab ; ctxt.dom = dom ; ctxt.mx = mx ; ctxt.el2dom = el2dom ; ctxt.universe_cols = universe_cols ; ctxt.universe_rows = universe_rows ; ctxt.randselect_cols = randselect_cols ; ctxt.randselect_rows = randselect_rows ; ctxt.rand_mode = rand_mode ; ctxt.spec_ct = i ; for (i=0;itxt->str) ; mcxTingFree(&(spec->txt)) ; continue ; } ; } for (i=0;inext)) { const char* key = ((mcxTing*) lk->val)->str ; if (!strcmp(key, "vdoms")) spec->fin_misc_opts |= (FIN_MISC_DOMC | FIN_MISC_DOMR) ; else if (!strcmp(key, "vdomc")) spec->fin_misc_opts |= FIN_MISC_DOMC ; else if (!strcmp(key, "vdomr")) spec->fin_misc_opts |= FIN_MISC_DOMR ; else if (!strcmp(key, "skel")) spec->fin_misc_opts |= FIN_MISC_EMPTY ; else if (!strcmp(key, "map")) spec->fin_map_opts |= (FIN_MAP_CAN_COLS | FIN_MAP_CAN_ROWS) ; else if (!strcmp(key, "mapr")) spec->fin_map_opts |= FIN_MAP_CAN_ROWS ; else if (!strcmp(key, "mapc")) spec->fin_map_opts |= FIN_MAP_CAN_COLS ; else if (!strcmp(key, "uni")) spec->fin_map_opts |= (FIN_MAP_UNI_COLS | FIN_MAP_UNI_ROWS) ; else if (!strcmp(key, "unir")) spec->fin_map_opts |= FIN_MAP_UNI_ROWS ; else if (!strcmp(key, "unic")) spec->fin_map_opts |= FIN_MAP_UNI_COLS ; else if (!strcmp(key, "scrub")) spec->fin_map_opts |= FIN_MAP_SCRUB_COLS | FIN_MAP_SCRUB_ROWS ; else if (!strcmp(key, "scrubg")) spec->fin_map_opts |= FIN_MAP_SCRUB_GRAPH ; else if (!strcmp(key, "scrubc")) spec->fin_map_opts |= FIN_MAP_SCRUB_COLS ; else if (!strcmp(key, "scrubr")) spec->fin_map_opts |= FIN_MAP_SCRUB_ROWS ; else if (!strcmp(key, "tp")) spec->fin_misc_opts |= FIN_MISC_TP ; else if (!strcmp(key, "cc")) spec->fin_misc_opts |= FIN_MISC_CHR ; else { mcxErr(me, "unknown mod: <%s>", key) ; break ; } } return lk ? STATUS_FAIL : STATUS_OK ; } mcxstatus parse_out ( mcxLink* src , int n_args_unused cpl__unused , subspec_mt* spec , context_mt* ctxt cpl__unused ) { mcxLink* lk = src->next ; mcxTing* fn = lk->val ; mcxstatus status = STATUS_FAIL ; while (1) { if (!fn->len) { mcxErr("parse_out", "expect file name as first OUT arg") ; break ; } mcxTingWrite(spec->fname, fn->str) ; while ((lk = lk->next)) { const char* str = ((mcxTing*) lk->val)->str ; if (!strcmp(str, "wb")) spec->fin_misc_opts |= FIN_WB ; else { mcxErr("parse_out", "unknown directive <%s>", str) ; break ; } } if (lk) break ; status = STATUS_OK ; break ; } return status ; } mcxstatus add_vec ( const char* dtype , int itype , const mclVector* invec , subspec_mt* spec , context_mt* ctxt ) { const char* modec = strpbrk(dtype, "cC") ; const char* moder = strpbrk(dtype, "rR") ; mclv* cvec = mclvInit(NULL) ; mclv* rvec = mclvInit(NULL) ; const mclv* randselect_cols = ctxt->randselect_cols ; const mclv* randselect_rows = ctxt->randselect_rows ; const mclv* universe_cols = ctxt->universe_cols ; const mclv* universe_rows = ctxt->universe_rows ; int rand_mode = ctxt->rand_mode ; mclv* invec2 = NULL ; if (strchr("iIcrCR", itype)) /* danger fixme cast */ invec2 = (mclv*) invec /* modify in 'd/D' case */ ; else if (strchr("dD", itype)) invec2 = mclgUnionv(ctxt->dom, invec, NULL, SCRATCH_READY, NULL) ; else if (strchr("tT", itype)) { if (!ctxt->tab) { mcxErr(me, "no tab file specified!") ; return STATUS_FAIL ; } invec2 = ctxt->tab->domain ; } if (modec) { mclv* invec_c = mclvClone(invec2) ; if (itype == 'I' || itype == 'T' || itype == 'C' || itype == 'R') mcldMinus(universe_cols, invec_c, invec_c) ; else if (itype == 'D') mcldMinus(ctxt->dom->dom_rows, invec_c, invec_c) ; if ((unsigned char) modec[0] == 'C') mcldMinus(universe_cols, invec_c, invec_c) ; mcldMerge(cvec, invec_c, cvec) ; mclvFree(&invec_c) ; if (randselect_cols) { if (rand_mode == 'd') /* discard */ mcldMinus(cvec, randselect_cols, cvec) ; else if (rand_mode == 'e') mcldMinus(randselect_cols, cvec, cvec) ; else if (rand_mode == 'i') mcldMeet(randselect_cols, cvec, cvec) ; else mcldMerge(cvec, randselect_cols, cvec) ; } mcldMerge(cvec, spec->cvec, spec->cvec) ; spec->n_col_specs++ ; } if (moder) { mclv* invec_r = mclvClone(invec2) ; if (itype == 'I' || itype == 'T' || itype == 'C' || itype == 'R') mcldMinus(universe_rows, invec_r, invec_r) ; else if (itype == 'D') mcldMinus(ctxt->dom->dom_rows, invec_r, invec_r) ; if ((unsigned char) moder[0] == 'R') mcldMinus(universe_rows, invec_r, invec_r) ; mcldMerge(rvec, invec_r, rvec) ; mclvFree(&invec_r) ; if (randselect_rows) { if (rand_mode == 'd') mcldMinus(rvec, randselect_rows, rvec) ; else if (rand_mode == 'e') mcldMinus(randselect_rows, rvec, rvec) ; else if (rand_mode == 'i') mcldMeet(randselect_rows, rvec, rvec) ; else mcldMerge(rvec, randselect_rows, rvec) ; } mcldMerge(rvec, spec->rvec, spec->rvec) ; spec->n_row_specs++ ; } if (invec2 != invec) mclvFree(&invec2) ; return STATUS_OK ; } mclv* vec_from_ilist ( const mcxLink* lk ) { mclv* result = mclvInit(NULL), *range = NULL ; ulong x, y ; int n_parsed = 0 ; while ((lk = lk->next)) { mcxTing* atom = lk->val ; if (2 == sscanf(atom->str, "%lu-%lu%n", &x, &y, &n_parsed)) { if (n_parsed != atom->len) break ; if (x > y) { ulong z = x ; x = y ; y = z ; } range = mclvCanonical(range, y-x+1, 1.0) ; mclvMap(range, 1, x, range) ; mcldMerge(result, range, result) ; } else if (1 == sscanf(atom->str, "%lu%n", &x, &n_parsed)) { if (n_parsed != atom->len) break ; mclvInsertIdx(result, x, 1.0) ; } else break ; } if (lk) mclvFree(&result) ; return result ; } mcxstatus parse_dom ( mcxLink* src , int n_args_unused cpl__unused , subspec_mt* spec , context_mt* ctxt ) { mcxLink* lk = src->next ; const char* dtype = ((mcxTing*)lk->val)->str ; dim dlen = strlen(dtype) ; mcxstatus status = STATUS_FAIL ; if ( (strspn(dtype, "cCrR") != dlen) || ( dlen == 2 && ( strspn(dtype, "cC") == 2 || strspn(dtype, "rR") == 2 ) ) ) { mcxErr(me, "wonky domain indication <%s>", dtype) ; return STATUS_FAIL ; } /* The bit that follows is ugly. It checks a special case * that cannot be handled in add_vec because we never get * to add_vec in case there is no 'iIdD' specification. */ if (!lk->next) { mclv* empty = mclvInit(NULL) ; mcxstatus status = STATUS_FAIL ; while (1) { if ( strchr(dtype, 'C') && add_vec("c", 'i', empty, spec, ctxt) ) break ; if ( strchr(dtype, 'R') && add_vec("r", 'i', empty, spec, ctxt) ) break ; if ( strchr(dtype, 'c') && add_vec("c", 'i', ctxt->universe_cols, spec, ctxt) ) break ; if ( strchr(dtype, 'r') && add_vec("r", 'i', ctxt->universe_rows, spec, ctxt) ) break ; status = STATUS_OK ; break ; } if (!status) spec->n_row_specs++ ; return status ; } while ((lk = lk->next)) { mcxTokFunc tf ; mcxTing* id = lk->val ; char* z ; tf.opts = MCX_TOK_DEL_WS ; if ( STATUS_OK == mcxTokExpectFunc(&tf, id->str, id->len, &z, -1, -1, NULL) ) { mclVector* vec = NULL ; const char* str = tf.key->str ; unsigned char itype = str[0] ; if (!strchr("iIdDtTcCrR", (int) itype)) { mcxErr(me, "unknown index type <%c>", (int) itype) ; break ; } if (tf.key->len > 1) { mcxErr(me, "spurious characters in itype <%s>", str) ; break ; } if (itype == 'd' || itype == 'D') { if (!ctxt->dom) /* may happen with reread + dom = mx */ { mcxErr(me, "did you use reread without -dom? PANIC!") ; break ; } } if (itype == 'r' || itype == 'R') vec = mclvClone(ctxt->dom->dom_rows) ; else if (itype == 'c' || itype == 'C') vec = mclvClone(ctxt->dom->dom_cols) /* This is redundant for tab spec * unless we allow labels for tab */ ; else if (!strchr("tT", itype)) { if (!(vec = vec_from_ilist(tf.args))) { mcxErr(me, "error converting") ; break ; } } mcxTokFuncFree(&tf) ; if (add_vec(dtype, itype, vec, spec, ctxt)) { mclvFree(&vec) ; break ; } mclvFree(&vec) ; } else break ; } while (1) /* this used to be longer */ { if (lk) break ; status = STATUS_OK ; break ; } return status ; } mcxstatus parse_path ( mcxLink* src , int n_args_unused cpl__unused , subspec_mt* spec , context_mt* ctxt ) { mcxLink* lk = src ; mclv* set = mclvInit(NULL) ; if (!ctxt->mx) { mcxErr(me, "cannot compute paths - no matrix! (did you use --from-disk?)") ; return STATUS_FAIL ; } while ((lk = lk->next)) { mcxTing* ti = lk->val ; int i = atoi(ti->str) ; mclvInsertIdx(set, i, 1.0) ; } if (set->n_ivps) spec->path_set = set ; else mclvFree(&set) ; return lk ? STATUS_FAIL : STATUS_OK ; } mcxstatus parse_ext ( mcxLink* src , int n_args_unused cpl__unused , subspec_mt* spec , context_mt* ctxt ) { mcxLink* lk = src ; if (!ctxt->mx) { mcxErr(me, "cannot extend - no matrix! (did you use --from-disk?)") ; return STATUS_FAIL ; } while ((lk = lk->next)) { mcxTokFunc tf ; mcxTing* extspec = lk->val ; char* z ; tf.opts = MCX_TOK_DEL_WS ; if ( STATUS_OK == mcxTokExpectFunc(&tf, extspec->str, extspec->len, &z, 1, 1, NULL) ) { const char* val = ((mcxTing*) tf.args->next->val)->str ; const char* key = tf.key->str ; char* onw = NULL /* onwards */ ; long l = strtol(val, &onw, 10) ; if (val == onw) { mcxErr(me, "failed to parse number <%s>", val) ; break ; } if (!strcmp(key, "disc")) spec->ext_disc = l ; else if (!strcmp(key, "ring")) spec->ext_ring = l ; else if (!strcmp(key, "cdisc")) spec->ext_cdisc = l ; else if (!strcmp(key, "rdisc")) spec->ext_rdisc = l ; else { mcxErr(me, "unexpected <%s>", key) ; break ; } mcxTell(me, "extending %s %ld", key, (long) l) ; } else break ; } return lk ? STATUS_FAIL : STATUS_OK ; } mcxstatus parse_size ( mcxLink* src , int n_args_unused cpl__unused , subspec_mt* spec , context_mt* ctxt_unused cpl__unused ) { mcxLink* lk = src ; while ((lk = lk->next)) { mcxTokFunc tf ; mcxTing* valspec = lk->val ; char* z ; tf.opts = MCX_TOK_DEL_WS ; if ( STATUS_OK == mcxTokExpectFunc(&tf, valspec->str, valspec->len, &z, 1, 1, NULL) ) { const char* val = ((mcxTing*) tf.args->next->val)->str ; const char* key = tf.key->str ; mcxbits bits = 0 ; char* onw = NULL /* onwards */ ; long l = strtol(val, &onw, 10) ; if (val == onw) { mcxErr(me, "failed to parse number <%s>", val) ; break ; } if (!strcmp(key, "gq")) bits = MCLX_EQT_GQ ; else if (!strcmp(key, "lq")) bits = MCLX_EQT_LQ ; else if (!strcmp(key, "ceil")) bits = MCLX_EQT_CEIL ; else mcxDie(1, me, "unknown size functiator <%s>", key) ; if (bits & MCLX_EQT_GQ) spec->sz_min = l ; else if (bits & MCLX_EQT_LQ) spec->sz_max = l ; else if (bits & MCLX_EQT_CEIL) spec->sz_ceil = l ; spec->sel_sz_opts |= bits ; mcxTell(me, "selecting num entries <%s> <%ld>", key, l) ; } else break ; } return lk ? STATUS_FAIL : STATUS_OK ; } mcxstatus dispatch ( mcxLink* src , subspec_mt* spec , context_mt* ctxt ) { mcxLink* lk = src ; while ((lk = lk->next)) { mcxTing* txt = lk->val ; char* z = NULL ; int n_args = 0 ; mcxstatus status = STATUS_FAIL ; mcxTokFunc tf ; tf.opts = MCX_TOK_DEL_WS ; while (1) { if (mcxTokExpectFunc(&tf, txt->str, txt->len, &z, -1, -1, &n_args)) { mcxErr(me, "cannot parse <%s>", txt->str) ; break ; } if (mcxStrChrAint(z, isspace, -1)) { mcxErr(me, "spurious spunk <%s>", z) ; break ; } if (!strcmp(tf.key->str, "dom")) { if (parse_dom(tf.args, n_args, spec, ctxt)) break ; } else if (!strcmp(tf.key->str, "path")) { if (parse_path(tf.args, n_args, spec, ctxt)) break ; } else if (!strcmp(tf.key->str, "ext")) { if (parse_ext(tf.args, n_args, spec, ctxt)) break ; } else if (!strcmp(tf.key->str, "out")) { if (parse_out(tf.args, n_args, spec, ctxt)) break ; } else if (!strcmp(tf.key->str, "size")) { if (parse_size(tf.args, n_args, spec, ctxt)) break ; } else if (!strcmp(tf.key->str, "val")) { mcxLink* lk = tf.args->next ; mcxTing* a = mcxTingNew(((mcxTing*) lk->val)->str) ; while ((lk = lk->next)) mcxTingPrintAfter(a, ",%s", ((mcxTing*) lk->val)->str) ; spec->sel_val = mclgTFparse(NULL, a) ; mcxTingFree(&a) ; if (!spec->sel_val) break ; } else if (!strcmp(tf.key->str, "fin")) { if (parse_fin(tf.args, n_args, spec, ctxt)) break ; } else { mcxErr(me, "unknown type <%s>", tf.key->str) ; break ; } status = STATUS_OK ; break ; } mcxTokFuncFree(&tf) ; if (status) break ; } return lk ? STATUS_FAIL : STATUS_OK ; } mcxstatus extend_path ( mclv* dom , const mclv* path_set , context_mt* ctxt ) /* NOTE dom is alias for spec->cvec or spec->rvec */ { mclv* punters = mclgSSPd(ctxt->mx, path_set) ; if (punters) { mclvCopy(dom, punters) ; mclvFree(&punters) ; return STATUS_OK ; } return STATUS_FAIL ; } mcxstatus extend_disc ( mclv* dom , int ext_disc , context_mt* ctxt ) /* NOTE dom is alias for spec->cvec or spec->rvec */ { mclx* mx = ctxt->mx ; mclv* wave1 = mclvClone(dom), *wave2 ; mclgUnionvInitList(mx, dom) ; while (ext_disc-- && wave1->n_ivps) { wave2 = mclgUnionv(mx, wave1, NULL, SCRATCH_UPDATE, NULL) ; mcldMerge(dom, wave2, dom) #if 0 ;fprintf(stderr, "wave2 has %d ivps, pointer %p\n", wave2->n_ivps, (void*) wave2->ivps) #endif ; mclvFree(&wave1) ; wave1 = wave2 ; } mclvFree(&wave1) ; mclgUnionvResetList(mx, dom) ; return STATUS_OK ; } mcxstatus spec_parse ( subspec_mt* spec , context_mt* ctxt ) { mcxTing* txt = spec->txt ; mcxstatus status = STATUS_FAIL ; int n_args = 0 ; mcxLink* args = mcxTokArgs (txt->str, txt->len, &n_args, MCX_TOK_DEL_WS) ; if (args) mcxTell (me, "dispatching <%d> argument%s", n_args, n_args > 1 ? "s" : "") , status = dispatch(args, spec, ctxt) ; return status ; } void spec_exec ( subspec_mt* spec , context_mt* ctxt , mcxIO* xfmx_reread , double efac , mcxbool bCltag , int digits ) { mclx* sub = NULL ; mclx* mx = ctxt->mx ; mclx* el2dom= ctxt->el2dom ; mcxIO *xf = mcxIOnew(spec->fname->str, "w") ; if (!spec->n_row_specs) mclvCopy ( spec->rvec , ctxt->randselect_rows ? ctxt->randselect_rows : ctxt->universe_rows ) ; if (!spec->n_col_specs) mclvCopy ( spec->cvec , ctxt->randselect_cols ? ctxt->randselect_cols : ctxt->universe_cols ) ; if (ctxt->mx) /* fixme, extend_xxx might fail */ { if (spec->path_set) extend_path(spec->cvec, spec->path_set, ctxt) , mclvCopy(spec->rvec, spec->cvec) ; if (spec->ext_disc) { long n = spec->cvec->n_ivps, nn ; extend_disc(spec->cvec, spec->ext_disc, ctxt) ; mclvCopy(spec->rvec, spec->cvec) ; nn = spec->cvec->n_ivps ; mcxTell(me, "disc-extend from %ld to %ld entries", n, nn) ; } else { if (spec->ext_cdisc) { long n = spec->cvec->n_ivps, nn ; extend_disc(spec->cvec, spec->ext_cdisc, ctxt) ; nn = spec->cvec->n_ivps ; mcxTell(me, "cdisc-extend from %ld to %ld entries", n, nn) ; } if (spec->ext_rdisc) { long n = spec->rvec->n_ivps, nn ; extend_disc(spec->rvec, spec->ext_rdisc, ctxt) ; nn = spec->rvec->n_ivps ; mcxTell(me, "rdisc-extend from %ld to %ld entries", n, nn) ; } } } if (mcxIOopen(xf, RETURN_ON_FAIL) == STATUS_FAIL) { mcxErr (me, "cannot open file <%s> for writing! Ignoring", xf->fn->str) ; mcxIOfree(&xf) ; return ; } if (spec->fin_misc_opts & (FIN_MISC_DOMC | FIN_MISC_DOMR)) { mclv* domr = mclvInit(NULL) ; mclv* domc = mclvCanonical(NULL, 2, 1.0) ; int cidx = 0 ; if (spec->fin_misc_opts & FIN_MISC_DOMR) mcldMerge(domr, spec->rvec, domr) , cidx++ ; if (spec->fin_misc_opts & FIN_MISC_DOMC) mcldMerge(domr, spec->cvec, domr) , cidx++ ; mclvResize(domc, cidx) ; sub = mclxAllocZero(domc, domr) ; cidx = 0 ; if (spec->fin_misc_opts & FIN_MISC_DOMC) mclvAdd(sub->cols+cidx, spec->cvec, sub->cols+cidx) , cidx++ ; if (spec->fin_misc_opts & FIN_MISC_DOMR) mclvAdd(sub->cols+cidx, spec->rvec, sub->cols+cidx) , cidx++ ; mclxWrite(sub, xf, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; mclxFree(&sub) ; mcxIOfree(&xf) ; return ; } else if (spec->fin_misc_opts & FIN_MISC_EMPTY) sub = mclxAllocZero(mclvClone(spec->cvec), mclvClone(spec->rvec)) ; else if (spec->do_extend) sub = mclxExtSub(mx, spec->cvec, spec->rvec) ; else if (xfmx_reread) { fprintf(stderr, "going in\n") ; mcxIOclose(xfmx_reread) ; sub = mclxSubRead ( xfmx_reread , spec->cvec , spec->rvec , EXIT_ON_FAIL ) ; mcxIOclose(xfmx_reread) ; mcxTell(me, "read matrix from disk") ; } else /* fixme: must check subness */ sub = mclxSub(mx, spec->cvec, spec->rvec) ; if (spec->sel_val) mclgTFexecx(sub, spec->sel_val, FALSE) ; if (spec->sel_sz_opts & MCLX_EQT) { mclv* sel = mclgUnlinkNodes ( sub , spec->sz_min /* keep vectors with #entries >= sz_min */ , spec->sz_max /* keep vectors with #entries <= sz_max */ ) ; mclvFree(&sel) ; } if (efac) prune_edges(sub, efac) ; if ((spec->fin_map_opts & FIN_MAP_UNI_COLS) || (spec->fin_map_opts & FIN_MAP_UNI_ROWS)) mclxChangeDomains ( sub , spec->fin_map_opts & FIN_MAP_UNI_COLS ? ctxt->universe_cols : NULL , spec->fin_map_opts & FIN_MAP_UNI_ROWS ? ctxt->universe_rows : NULL ) ; if (spec->fin_misc_opts & FIN_MISC_TP) { mclMatrix* subt = mclxTranspose(sub) ; mclxFree(&sub) ; sub = subt ; } if (spec->fin_misc_opts & FIN_MISC_CHR) mclxMakeCharacteristic(sub) ; if ( spec->fin_map_opts & (FIN_MAP_SCRUB_COLS | FIN_MAP_SCRUB_ROWS | FIN_MAP_SCRUB_GRAPH) ) { mcxbits b = 0 ; if (spec->fin_map_opts & FIN_MAP_SCRUB_COLS) b |= MCLX_SCRUB_COLS ; if (spec->fin_map_opts & FIN_MAP_SCRUB_ROWS) b |= MCLX_SCRUB_ROWS ; if (spec->fin_map_opts & FIN_MAP_SCRUB_GRAPH) b |= MCLX_SCRUB_GRAPH ; mclxScrub(sub, b) ; } if (spec->fin_map_opts & FIN_MAP_CAN_COLS) mclxMapCols(sub, NULL) ; if (spec->fin_map_opts & FIN_MAP_CAN_ROWS) mclxMapRows(sub, NULL) ; if (bCltag) mclxTaggedWrite(sub, el2dom, xf, digits, RETURN_ON_FAIL) ; else spec->fin_misc_opts & FIN_WB ? mclxbWrite(sub, xf, RETURN_ON_FAIL) : mclxWrite(sub, xf, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; mclxFree(&sub) ; mcxIOfree(&xf) ; } mcl-12-135/src/shmx/mcxassemble.c0000644000402500021140000004414411531205114013506 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* todo; couple suf with xf_sym */ #include #include #include "impala/matrix.h" #include "impala/vector.h" #include "impala/pval.h" #include "impala/io.h" #include "impala/iface.h" #include "impala/app.h" #include "mcl/interpret.h" #include "mcl/transform.h" #include "util/io.h" #include "util/err.h" #include "util/opt.h" #include "util/types.h" const char* me = "mcxassemble"; const char* syntax = "Usage: mcxassemble [options]\n" "Default output is the symmetrized result" " of the matrix built from the raw data" ; enum { MY_OPT_BASE , MY_OPT_HDR , MY_OPT_RAW , MY_OPT_SINGLE , MY_OPT_OUTPUT , MY_OPT_DIGITS , MY_OPT_XO , MY_OPT_WB , MY_OPT_PLUS , MY_OPT_NO , MY_OPT_MAP = MY_OPT_NO + 2 , MY_OPT_MAP_ , MY_OPT_CMAP , MY_OPT_CMAP_ , MY_OPT_RTAG , MY_OPT_RMAP_ , MY_OPT_TAG , MY_OPT_CTAG , MY_OPT_RMAP , MY_OPT_SKW = MY_OPT_RMAP + 2 , MY_OPT_SKW_ , MY_OPT_PRM , MY_OPT_PRM_ , MY_OPT_CHECK , MY_OPT_RAWTRANSFORM = MY_OPT_CHECK + 2 , MY_OPT_PRMTRANSFORM , MY_OPT_SYMTRANSFORM , MY_OPT_RV , MY_OPT_RE , MY_OPT_RI , MY_OPT_R , MY_OPT_QRE , MY_OPT_QRV , MY_OPT_QR , MY_OPT_HELP = MY_OPT_QR + 2 , MY_OPT_APROPOS , MY_OPT_VERSION } ; mcxOptAnchor options[] = { { "-h" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "--version" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_VERSION , NULL , "print version information" } , { "--help" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_APROPOS , NULL , "print this help" } , { "-b" , MCX_OPT_HASARG , MY_OPT_BASE , "" , "use base.raw, base.hdr, and optionally base.map" } , { "-hdr" , MCX_OPT_HASARG , MY_OPT_HDR , "" , "read header file" } , { "-i" , MCX_OPT_HASARG , MY_OPT_SINGLE , "" , "read from single data file" } , { "-raw" , MCX_OPT_HASARG , MY_OPT_RAW , "" , "read raw data file" } , { "-map" , MCX_OPT_HASARG , MY_OPT_MAP , "" , "apply row/col map in file" } , { "--map" , MCX_OPT_DEFAULT , MY_OPT_MAP_ , NULL , "apply row/col map in base.map" } , { "-cmap" , MCX_OPT_HASARG , MY_OPT_CMAP , "" , "apply col map in file" } , { "--cmap" , MCX_OPT_DEFAULT , MY_OPT_CMAP_ , NULL , "apply col map in base.cmap" } , { "-rmap" , MCX_OPT_HASARG , MY_OPT_RMAP , "" , "apply row map in file" } , { "--rmap" , MCX_OPT_DEFAULT , MY_OPT_RMAP_ , NULL , "apply row map in base.cmap" } , { "-tag" , MCX_OPT_HASARG , MY_OPT_TAG , "" , "apply row/col map in base.tag" } , { "-ctag" , MCX_OPT_HASARG , MY_OPT_CTAG , "" , "apply col map in base.tag" } , { "-rtag" , MCX_OPT_HASARG , MY_OPT_RTAG , "" , "apply row map in base.tag" } , { "-skw" , MCX_OPT_HASARG , MY_OPT_SKW , "" , "write skew matrix to file" } , { "--skw" , MCX_OPT_DEFAULT , MY_OPT_SKW_ , NULL , "write skew matrix to base.skw" } , { "-prm" , MCX_OPT_HASARG , MY_OPT_PRM , "" , "write primary result to file" } , { "--prm" , MCX_OPT_DEFAULT , MY_OPT_PRM_ , NULL , "write primary result matrix to base.prm" } , { "-raw-tf" , MCX_OPT_HASARG , MY_OPT_RAWTRANSFORM , "" , "apply unary transformations to raw values" } , { "-prm-tf" , MCX_OPT_HASARG , MY_OPT_PRMTRANSFORM , "" , "apply unary transformations to primary matrix" } , { "-sym-tf" , MCX_OPT_HASARG , MY_OPT_SYMTRANSFORM , "" , "apply unary transformations to symmetrified matrix" } , { "-digits" , MCX_OPT_HASARG , MY_OPT_DIGITS , "" , "precision to use in interchange format" } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUTPUT , "" , "write to file fname" } , { "-xo" , MCX_OPT_HASARG , MY_OPT_XO , "" , "write to base.suf (default .sym)" } , { "-n" , MCX_OPT_DEFAULT , MY_OPT_NO , NULL , "do not write default symmetrized result" } , { "+" , MCX_OPT_HIDDEN , MY_OPT_PLUS , NULL , "write result matrices in binary format" } , { "--write-binary" , MCX_OPT_DEFAULT , MY_OPT_WB , NULL , "write result matrices in binary format" } , { "-s" , MCX_OPT_DEFAULT , MY_OPT_CHECK , NULL , "check primary result symmetry by creating skew matrix" } , { "-rv" , MCX_OPT_HASARG , MY_OPT_RV , "" , "action for repeated vectors" } , { "-re" , MCX_OPT_HASARG , MY_OPT_RE , "" , "action for repeated entries" } , { "-ri" , MCX_OPT_HASARG , MY_OPT_RI , "" , "action for adding image with mirror" } , { "-r" , MCX_OPT_HASARG , MY_OPT_R , "" , "same for entries and vectors and matrix" } , { "--quiet-re" , MCX_OPT_DEFAULT , MY_OPT_QRE , NULL , "do not warn for repeated entries" } , { "--quiet-rv" , MCX_OPT_DEFAULT , MY_OPT_QRV , NULL , "do not warn for repeated vectors" } , { "-q" , MCX_OPT_DEFAULT , MY_OPT_QR , NULL , "the two above combined" } , { NULL, 0, 0, NULL, NULL } } ; #define MAP_COLS 1 #define MAP_ROWS 2 #define MAP_DOMS 4 int main ( int argc , const char* argv[] ) { mcxTing* obase = mcxTingNew("out"), *ibase = NULL ; mcxIO* xf_hdr = NULL, *xf_raw = NULL , *xf_prm = NULL, *xf_map = NULL, *xf_skew = NULL, *xf_sym = NULL , *xf_rmap = NULL, *xf_cmap = NULL ; mclVector* dom_rows = mclvNew(NULL, 0), *dom_cols = mclvNew(NULL, 0) ; const char* suf = NULL, *re = NULL, *rv = NULL, *ra = NULL, *ri = NULL ; const char* tag = NULL, *rtag = NULL, *ctag = NULL ; mclx *mx = NULL, *tp = NULL, *sym = NULL, *skew = NULL ; mclx *cmap = NULL, *rmap = NULL ; mcxbits maptype = 0 ; mcxbool write_skw = FALSE ; mcxbool put_sym = TRUE ; mcxbool write_prm = FALSE ; mcxbool check_sym = FALSE ; mcxbool single_data_file = FALSE ; mcxbits warn_repeat = MCLV_WARN_REPEAT ; int EODATA = EOF ; int digits = MCLXIO_VALUE_GETENV ; void (*ivpmerge)(void* ivp1, const void* ivp2) = mclpMergeMax ; double (*fltvecbinary)(pval val1, pval val2) = fltMax ; double (*fltmxbinary) (pval val1, pval val2) = fltMax ; mclgTF* rawtransform = NULL ; mcxTing* rawtransform_spec = NULL ; mclgTF* symtransform = NULL ; mcxTing* symtransform_spec = NULL ; mclgTF* prmtransform = NULL ; mcxTing* prmtransform_spec = NULL ; mcxstatus parseStatus = STATUS_OK ; mcxOption* opts, *opt ; char* qmode = mclxIOsetQMode("MCLXIOVERBOSITY", MCL_APP_VB_YES) ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclx_app_init(stderr) ; mcxOptAnchorSortById(options, sizeof(options)/sizeof(mcxOptAnchor) -1) ; if (!(opts = mcxOptParse(options, (char**) argv, argc, 1, 0, &parseStatus))) exit(0) ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; switch(anch->id) { case MY_OPT_HELP : case MY_OPT_APROPOS : mcxOptApropos(stdout, me, syntax, 20, MCX_OPT_DISPLAY_SKIP, options) ; return 0 ; case MY_OPT_VERSION : app_report_version(me) ; return 0 ; case MY_OPT_MAP : xf_map = mcxIOnew(opt->val, "r") ; maptype |= MAP_DOMS ; break ; case MY_OPT_MAP_ : maptype |= MAP_DOMS ; break ; case MY_OPT_PRMTRANSFORM : prmtransform_spec = mcxTingNew(opt->val) ; break ; case MY_OPT_SYMTRANSFORM : symtransform_spec = mcxTingNew(opt->val) ; break ; case MY_OPT_RAWTRANSFORM : rawtransform_spec = mcxTingNew(opt->val) ; break ; case MY_OPT_RMAP : xf_rmap = mcxIOnew(opt->val, "r") ; maptype |= MAP_ROWS ; break ; case MY_OPT_RMAP_ : maptype |= MAP_ROWS ; break ; case MY_OPT_CMAP : xf_cmap = mcxIOnew(opt->val, "r") ; maptype |= MAP_COLS ; break ; case MY_OPT_CMAP_ : maptype |= MAP_COLS ; break ; case MY_OPT_SKW : xf_skew = mcxIOnew(opt->val, "w") ; write_skw = TRUE ; break ; case MY_OPT_SKW_ : write_skw = TRUE ; break ; case MY_OPT_PRM : xf_prm = mcxIOnew(opt->val, "w") ; write_prm = TRUE ; break ; case MY_OPT_WB : case MY_OPT_PLUS : mclxSetBinaryIO() ; break ; case MY_OPT_PRM_ : write_prm = TRUE ; break ; case MY_OPT_TAG : tag = opt->val ; break ; case MY_OPT_CTAG : ctag = opt->val ; break ; case MY_OPT_RTAG : rtag = opt->val ; break ; case MY_OPT_SINGLE : xf_hdr = mcxIOnew(opt->val, "r") ; xf_raw = xf_hdr ; single_data_file = TRUE ; EODATA = ')' ; break ; case MY_OPT_OUTPUT : xf_sym = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_XO : suf = opt->val ; break ; case MY_OPT_NO : put_sym = FALSE ; break ; case MY_OPT_RE : re = opt->val ; break ; case MY_OPT_RI : ri = opt->val ; break ; case MY_OPT_RV : rv = opt->val ; break ; case MY_OPT_R : ra = opt->val ; break ; case MY_OPT_QR : warn_repeat = 0 ; break ; case MY_OPT_QRE : warn_repeat |= MCLV_WARN_REPEAT_ENTRIES ; warn_repeat ^= MCLV_WARN_REPEAT_ENTRIES ; break ; case MY_OPT_QRV : warn_repeat |= MCLV_WARN_REPEAT_VECTORS ; warn_repeat ^= MCLV_WARN_REPEAT_VECTORS ; break ; case MY_OPT_BASE : ibase = mcxTingNew(opt->val) ; mcxTingWrite(obase, opt->val) ; break ; case MY_OPT_CHECK : check_sym = TRUE ; break ; case MY_OPT_RAW : xf_raw = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_HDR : xf_hdr = mcxIOnew(opt->val, "r") ; break ; } } mcxOptFree(&opts) ; if (single_data_file && xf_raw != xf_hdr) mcxErr(me, "some other option conflicts -i usage") , mcxExit(1) ; if ( rawtransform_spec && !(rawtransform = mclgTFparse(NULL, rawtransform_spec)) ) mcxDie(1, me, "input tf-spec does not parse") ; if ( symtransform_spec && !(symtransform = mclgTFparse(NULL, symtransform_spec)) ) mcxDie(1, me, "sym tf-spec does not parse") ; if ( prmtransform_spec && !(prmtransform = mclgTFparse(NULL, prmtransform_spec)) ) mcxDie(1, me, "prm tf-spec does not parse") ; if (ibase) { if (!xf_raw) xf_raw = mcxIOnew(ibase->str, "r") , mcxIOappendName(xf_raw, ".raw") ; if (!xf_hdr) xf_hdr = mcxIOnew(ibase->str, "r") , mcxIOappendName(xf_hdr, ".hdr") ; if (!xf_map && (tag || maptype & MAP_DOMS)) { xf_map = mcxIOnew(ibase->str, "r") ; if (tag) mcxIOappendName(xf_map, ".") , mcxIOappendName(xf_map, tag) ; else mcxIOappendName(xf_map, ".map") ; } ; if (!xf_map && !xf_rmap && (rmap || maptype & MAP_ROWS)) { xf_rmap = mcxIOnew(ibase->str, "r") ; if (rtag) mcxIOappendName(xf_rmap, ".") , mcxIOappendName(xf_rmap, rtag) ; else mcxIOappendName(xf_rmap, ".rmap") ; } ; if (!xf_map && !xf_cmap && (cmap || maptype & MAP_COLS)) { xf_cmap = mcxIOnew(ibase->str, "r") ; if (ctag) mcxIOappendName(xf_cmap, ".") , mcxIOappendName(xf_cmap, ctag) ; else mcxIOappendName(xf_cmap, ".cmap") ; } } if (obase) { if (!xf_prm && write_prm) xf_prm = mcxIOnew(obase->str, "w") , mcxIOappendName(xf_prm, ".prm") ; if (!xf_skew && write_skw) xf_skew = mcxIOnew(obase->str, "w") , mcxIOappendName(xf_skew, ".skw") ; if (!xf_sym && put_sym) xf_sym = mcxIOnew(obase->str, "w") , mcxIOappendName(xf_sym, ".") , mcxIOappendName(xf_sym, suf ? suf : "sym") ; } if (ra || re) { re = ra ? ra : re ; if (!strcmp(re, "add")) ivpmerge = mclpMergeAdd ; else if (!strcmp(re, "max")) ivpmerge = mclpMergeMax ; else if (!strcmp(re, "min")) ivpmerge = mclpMergeMin ; else if (!strcmp(re, "mul")) ivpmerge = mclpMergeMul ; else if (!strcmp(re, "left")) ivpmerge = mclpMergeLeft ; else if (!strcmp(re, "right")) ivpmerge = mclpMergeRight ; } if (ra || rv) { rv = ra ? ra : rv ; if (!strcmp(rv, "add")) fltvecbinary = fltAdd ; else if (!strcmp(rv, "max")) fltvecbinary = fltMax ; else if (!strcmp(rv, "min")) fltvecbinary = fltMin ; else if (!strcmp(rv, "mul")) fltvecbinary = fltCross ; else if (!strcmp(rv, "left")) fltvecbinary = fltLeft ; else if (!strcmp(rv, "right")) fltvecbinary = fltRight ; } if (ra || ri) { ri = ra ? ra : ri ; if (!strcmp(ri, "add")) fltmxbinary = fltAdd ; else if (!strcmp(ri, "max")) fltmxbinary = fltMax ; else if (!strcmp(ri, "min")) fltmxbinary = fltMin ; else if (!strcmp(ri, "mul")) fltmxbinary = fltCross ; else if (!strcmp(ri, "left")) fltmxbinary = fltLeft ; else if (!strcmp(ri, "right")) fltmxbinary = fltRight ; } if (!xf_raw || !xf_hdr) mcxErr(me, "raw file and header file required") , mcxExit(1) ; mcxIOopen(xf_hdr, EXIT_ON_FAIL) ; if (xf_raw != xf_hdr) mcxIOopen(xf_raw, EXIT_ON_FAIL) /* else: -i option was used */ ; if (xf_prm) mcxIOopen(xf_prm, EXIT_ON_FAIL) ; if (xf_map) mcxIOopen(xf_map, EXIT_ON_FAIL) ; else { if (xf_rmap) mcxIOopen(xf_rmap, EXIT_ON_FAIL) ; if (xf_cmap) mcxIOopen(xf_cmap, EXIT_ON_FAIL) ; } if (xf_skew) mcxIOopen(xf_skew, EXIT_ON_FAIL) ; if (mclxReadDomains(xf_hdr, dom_cols, dom_rows)) mcxErr(me, "error parsing header file") , mcxExit(1) ; if (single_data_file) /* dangersign, hackish */ mcxIOexpect(xf_raw, "begin", EXIT_ON_FAIL) ; mx = mclxAllocZero(dom_cols, dom_rows) ; if (xf_map) cmap = mclxRead(xf_map, EXIT_ON_FAIL) , rmap = cmap , mcxIOclose(xf_map) ; else { if (xf_cmap) cmap = mclxRead(xf_cmap, EXIT_ON_FAIL) ; if (xf_rmap) rmap = mclxRead(xf_rmap, EXIT_ON_FAIL) ; } mclxaSubReadRaw ( xf_raw , mx , dom_cols , dom_rows , EXIT_ON_FAIL , EODATA , warn_repeat , rawtransform ? mclgTFgetEdgePar(rawtransform) : NULL , ivpmerge , fltvecbinary ) , mcxIOclose(xf_raw) ; if (cmap && mclxMapCols(mx, cmap)) mcxDie(1, me, "could not map columns") ; if (rmap && mclxMapRows(mx, rmap)) mcxDie(1, me, "could not map rows") ; if (prmtransform) mclgTFexec(mx, prmtransform) ; if (xf_prm) mclxWrite(mx, xf_prm, digits, EXIT_ON_FAIL) ; if (put_sym) { tp = mclxTranspose(mx) ; sym = mclxBinary(mx, tp, fltmxbinary) ; if (symtransform) mclgTFexec(sym, symtransform) ; mclxWrite(sym, xf_sym, digits, EXIT_ON_FAIL) ; mclxFree(&sym) /* not using mclxMergeTranspose because mx is still used */ ; } if (write_skw || check_sym) { double minone = -1.0 ; long n ; tp = tp ? tp : mclxTranspose(mx) ; mclxUnary(tp, fltxMul, &minone) ; skew = mclxAdd(mx, tp) /* could use mclxMergeTranspose(mx, fltSubtract, 1.0) */ ; if (write_skw) mclxWrite(skew, xf_skew, digits, EXIT_ON_FAIL) ; n = mclxNrofEntries(skew) ; fprintf(stdout, "symmetry check: %ld skew edges\n", (long) (n/2)) ; } if (qmode) mcxFree(qmode) ; mcxTingFree(&ibase) ; mcxTingFree(&obase) ; if (xf_hdr == xf_raw) mcxIOfree(&xf_hdr) ; else mcxIOfree(&xf_hdr) , mcxIOfree(&xf_raw) ; mcxIOfree(&xf_prm) ; mcxIOfree(&xf_map) ; mcxIOfree(&xf_rmap) ; mcxIOfree(&xf_cmap) ; mcxIOfree(&xf_skew) ; mcxIOfree(&xf_sym) ; mclxFree(&mx) ; mclxFree(&tp) ; mclxFree(&sym) ; mclxFree(&skew) ; if (cmap == rmap) mclxFree(&cmap) ; else mclxFree(&rmap) , mclxFree(&cmap) ; return 0 ; } mcl-12-135/src/shmx/mcxtab.c0000644000402500021140000001121311611775014012462 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "mcx.h" #include "impala/io.h" #include "impala/matrix.h" #include "impala/tab.h" #include "util/types.h" #include "util/io.h" #include "util/err.h" #include "util/opt.h" static int cmp_keys ( const void* kv1pp , const void* kv2pp ) { const mcxTing* tg1 = ((mcxKV**) kv1pp)[0]->key ; const mcxTing* tg2 = ((mcxKV**) kv2pp)[0]->key ; int i = strcmp(tg1->str, tg2->str) ; return i ; } enum { MY_OPT_MEET = MCX_DISP_UNUSED , MY_OPT_MERGE , MY_OPT_LEFT , MY_OPT_CLEAN } ; mcxOptAnchor tabOptions[] = { { "--meet" , MCX_OPT_DEFAULT , MY_OPT_MEET , NULL , "compute a tab file that is the meet of the tab files given" } , { "--merge" , MCX_OPT_DEFAULT , MY_OPT_MERGE , NULL , "compute a tab file that is the merge of the tab files given" } , { "--left" , MCX_OPT_DEFAULT , MY_OPT_LEFT , NULL , "compute a tab file with entries exclusive to the first file given" } , { "--clean" , MCX_OPT_DEFAULT , MY_OPT_CLEAN , NULL , "clean up tab file" } , { NULL, 0, MCX_DISP_UNUSED, NULL, NULL } } ; static mcxmode mode = -1; static mcxstatus tabInit ( void ) { mode = 'j' ; return STATUS_OK ; } static mcxstatus tabArgHandle ( int optid , const char* val ) { switch(optid) { case MY_OPT_MEET : mode = 'i' /* intersect */ ; break ; case MY_OPT_CLEAN : mode = 'c' /* join */ ; break ; case MY_OPT_MERGE : mode = 'j' /* join */ ; break ; case MY_OPT_LEFT : mode = 'l' /* join */ ; break ; default : mcxExit(1) ; } ; return STATUS_OK ; } static mcxstatus tabMain ( int argc , const char* argv[] ) { int a ; mclTab* tab = NULL ; mcxIO* xftab = NULL ; mcxHash* map = NULL ; mcxbool meet = mode == 'i' ; mcxbool merge= mode == 'j' ; mcxbool left = mode == 'l' ; mcxbool clean= mode == 'c' ; if (argc < 1) mcxDie(1, "mcx tab", "no arguments!, I argue") ; xftab = mcxIOnew(argv[0], "r") ; mcxIOopen(xftab, EXIT_ON_FAIL) ; tab = mclTabRead(xftab, NULL, EXIT_ON_FAIL) ; mcxIOclose(xftab) #if 0 ; if (clean) { mcxIO* xfout = mcxIOnew("-", "w") ; mclTabWrite(tab, xfout, NULL, EXIT_ON_FAIL) ; mcxIOclose(xfout) ; } #endif ; map = mclTabHash(tab) ; mclTabHashSet(map, 1) ; for (a=1;alabels[i]) ; mcxKV* kv = mcxHashSearch(tg, map, meet || left ? MCX_DATUM_FIND : MCX_DATUM_INSERT) ; if (meet || left) { if (kv) kv->val = ULONG_TO_VOID (VOID_TO_ULONG kv->val + 1) ; mcxTingFree(&tg) ; } else if (merge) { if (kv && kv->key != tg) /* already there */ mcxTingFree(&tg) ; else if (kv && kv->key == tg) kv->val = ULONG_TO_VOID 1LU ; } } mclTabFree(&tab2) ; } { dim rk = 0, n_entries = 0 ; void** kvs = mcxHashKVs(map, &n_entries, cmp_keys, 0), **kvp ; for (kvp = kvs; kvp < kvs + n_entries; kvp++) { mcxKV* kv = kvp[0] ; ulong u = VOID_TO_ULONG kv->val ; mcxTing* tg = kv->key ; if (merge || (meet && u >= argc) || (left && u == 1)) fprintf(stdout, "%lu\t%s\n", (ulong) rk, tg->str) , rk++ ; } } return STATUS_OK ; } static mcxDispHook tabEntry = { "tab" , "tab [files]" , tabOptions , sizeof(tabOptions)/sizeof(mcxOptAnchor) - 1 , tabArgHandle , tabInit , tabMain , 1 , -1 , MCX_DISP_DEFAULT } ; mcxDispHook* mcxDispHookTab ( void ) { return &tabEntry ; } mcl-12-135/src/shmx/mcxdiameter.h0000644000402500021140000000114110775400226013512 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef mcx_diameter_h__ #define mcx_diameter_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookDiameter ( void ) ; mcxDispHook* mcxDispHookCtty ( void ) ; #endif mcl-12-135/src/shmx/mcxclcf.h0000644000402500021140000000105210642147703012631 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef mcx_clcf_h__ #define mcx_clcf_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookClcf ( void ) ; #endif mcl-12-135/src/shmx/mcxerdos.h0000644000402500021140000000074610775400220013040 00000000000000/* (C) Copyright 2006, 2007, 2008 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef mcx_erdos_h__ #define mcx_erdos_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookErdos ( void ) ; #endif mcl-12-135/src/shmx/mcx.h0000644000402500021140000000201211705250637012000 00000000000000/* (C) Copyright 2008 Stijn van Dongen * * This file is part of mcl. You can redistribute and/or modify mcl * under the terms of the GNU General Public License; either version 3 of the * License or (at your option) any later version. You should have received a * copy of the GPL along with mcl, in the file COPYING. */ #ifndef mcx_h #define mcx_h #include "util/opt.h" #include "util/io.h" #include "util/types.h" #include "impala/matrix.h" #include "impala/tab.h" enum { MCX_DISP_HELP = 0 , MCX_DISP_APROPOS , MCX_DISP_VERSION , MCX_DISP_PROGRESS , MCX_DISP_PROGRESS2 , MCX_DISP_SET , MCX_DISP_NOP , MCX_DISP_TEST , MCX_DISP_DEBUG , MCX_DISP_DEBUG2 , MCX_DISP_AMOIXA , MCX_DISP_UNUSED = MCX_DISP_AMOIXA + 2 } ; extern mcxbits mcx_debug_g; extern unsigned mcx_progress_g; extern mcxbool mcx_test_g; mclx* mcx_get_data ( mcxIO* xfmx , mcxIO* xfabc , mcxIO* xftab , mclTab** tabpp , mcxbool wannagraph ) ; mcxstatus mcx_dump_node ( FILE* fp , const mclTab* tab , long idx ) ; #endif mcl-12-135/src/shmx/mcxconvert.h0000644000402500021140000000106310642147703013404 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef mcx_convert_h__ #define mcx_convert_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookConvert ( void ) ; #endif mcl-12-135/src/shmx/mcxquery.c0000644000402500021140000010671611756412427013104 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "mcx.h" #include "util/types.h" #include "util/ding.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/opt.h" #include "util/array.h" #include "util/rand.h" #include "util/compile.h" #include "util/minmax.h" #include "impala/matrix.h" #include "impala/compose.h" #include "impala/io.h" #include "clew/clm.h" #include "gryphon/path.h" #include "mcl/transform.h" int valcmpdesc ( const void* i1 , const void* i2 ) { return *((pval*)i1) < *((pval*)i2) ? 1 : *((pval*)i1) > *((pval*)i2) ? -1 : 0 ; } int valcmpasc ( const void* i1 , const void* i2 ) { return *((pval*)i1) > *((pval*)i2) ? 1 : *((pval*)i1) < *((pval*)i2) ? -1 : 0 ; } double pearson ( const mclv* a , const mclv* b , dim n ) { double suma = mclvSum(a) ; double sumb = mclvSum(b) ; double sumasq = mclvPowSum(a, 2.0) ; double sumbsq = mclvPowSum(b, 2.0) ; double nom = sqrt( (n*sumasq - suma*suma) * (n*sumbsq - sumb*sumb) ) ; double num = n * mclvIn(a, b) - suma * sumb ; return nom ? num / nom : 0.0 ; } enum { MY_OPT_ABC = MCX_DISP_UNUSED , MY_OPT_IMX , MY_OPT_ICL , MY_OPT_TAB , MY_OPT_DIMENSION , MY_OPT_NODE , MY_OPT_VARY_CORRELATION , MY_OPT_VARY_THRESHOLD , MY_OPT_VARY_KNN , MY_OPT_VARY_N , MY_OPT_VARY_CEIL , MY_OPT_EDGEWEIGHTS , MY_OPT_EDGEWEIGHTS_SORTED , MY_OPT_EDGEWEIGHTS_HIST , MY_OPT_DIVIDE , MY_OPT_WEIGHT_SCALE , MY_OPT_OUTPUT_TABLE , MY_OPT_OUTPUT_NOLEGEND , MY_OPT_SCALEFREE , MY_OPT_TESTCYCLE , MY_OPT_TESTMETRIC , MY_OPT_TESTCYCLE_N , MY_OPT_TRANSFORM , MY_OPT_THREAD , MY_OPT_CLCF , MY_OPT_INFO , MY_OPT_REDUCE , MY_OPT_FOUT } ; mcxOptAnchor qOptions[] = { { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "specify input matrix/graph" } , { "-abc" , MCX_OPT_HASARG , MY_OPT_ABC , "" , "specify input using label pairs" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "specify tab file to be used with matrix input" } , { "-icl" , MCX_OPT_HASARG , MY_OPT_ICL , "" , "specify input clustering" } , { "--node-attr" , MCX_OPT_DEFAULT , MY_OPT_NODE , NULL , "output for each node its weight statistics and degree" } , { "-t" , MCX_OPT_HASARG , MY_OPT_THREAD , "" , "number of threads to use (with -knn)" } , { "--reduce" , MCX_OPT_DEFAULT , MY_OPT_REDUCE , NULL , "do not rebase to input graph, use last reduction" } , { "--dim" , MCX_OPT_DEFAULT , MY_OPT_DIMENSION , NULL , "get matrix dimensions" } , { "--test-metric" , MCX_OPT_DEFAULT , MY_OPT_TESTMETRIC , NULL , "test whether graph distance is metric" } , { "--test-cycle" , MCX_OPT_DEFAULT , MY_OPT_TESTCYCLE , NULL , "test whether graph has cycles" } , { "-test-cycle" , MCX_OPT_HASARG , MY_OPT_TESTCYCLE_N , "" , "output at most nodes in cycles; 0 for all" } , { "-o" , MCX_OPT_HASARG , MY_OPT_FOUT , "" , "output file name" } , { "--vary-correlation" , MCX_OPT_DEFAULT , MY_OPT_VARY_CORRELATION , NULL , "vary correlation threshold, output graph statistics" } , { "-vary-threshold" , MCX_OPT_HASARG , MY_OPT_VARY_THRESHOLD , "a,z,s,n" , "vary threshold from a/n to z/n in steps s/n" } , { "-vary-knn" , MCX_OPT_HASARG , MY_OPT_VARY_KNN , "a,z,s,n" , "vary knn from z to a in steps s, scale edge weights by n" } , { "-vary-n" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_VARY_N , "a,z,s,n" , "vary n from z to a in steps s, scale edge weights by n" } , { "-vary-ceil" , MCX_OPT_HASARG , MY_OPT_VARY_CEIL , "a,z,s,n" , "vary ceil from z to a in steps s, scale edge weights by n" } , { "--edges" , MCX_OPT_DEFAULT , MY_OPT_EDGEWEIGHTS , NULL , "output all edge weights, unsorted" } , { "--edges-sorted" , MCX_OPT_DEFAULT , MY_OPT_EDGEWEIGHTS_SORTED , NULL , "output all edge weights, sorted" } , { "-edges-hist" , MCX_OPT_HASARG , MY_OPT_EDGEWEIGHTS_HIST , "a,z,s,n" , "vary historgram from a to z in steps s, scale edge weights by n" } , { "-div" , MCX_OPT_HASARG , MY_OPT_DIVIDE , "" , "divide in sets with property <= num and > num" } , { "-tf" , MCX_OPT_HASARG , MY_OPT_TRANSFORM , "" , "apply unary transformations to matrix values" } , { "--eff" , MCX_OPT_DEFAULT , MY_OPT_INFO , NULL , "compute efficiency criterion" } , { "--clcf" , MCX_OPT_DEFAULT , MY_OPT_CLCF , NULL , "compute clustering coefficient" } , { "--scale-free" , MCX_OPT_HIDDEN , MY_OPT_SCALEFREE , NULL , "simple scale-freeness test, correlation of log/log values" } , { "--output-table" , MCX_OPT_DEFAULT , MY_OPT_OUTPUT_TABLE , NULL , "output tab separated table without key" } , { "--no-legend" , MCX_OPT_DEFAULT , MY_OPT_OUTPUT_NOLEGEND , NULL , "do not output explanatory key" } , { "-report-scale" , MCX_OPT_HASARG , MY_OPT_WEIGHT_SCALE , "" , "edge weight multiplier for summary statistics (to avoid fractions)" } , { NULL , 0 , 0, NULL, NULL} } ; static const char* me = "mcx query"; static mcxIO* xfout_g = (void*) -1; static mcxIO* xfmx_g = (void*) -1; static mcxIO* xfabc_g = (void*) -1; static mcxIO* xfcl_g = (void*) -1; static mcxIO* xftab_g = (void*) -1; static mclTab* tab_g = (void*) -1; static int vary_a= -1; static int vary_z= -1; static int vary_s= -1; static int vary_n= -1; static unsigned int divide_g= -1; static double weight_scale = -1; static unsigned mode_vary = -1; static unsigned mode_get = -1; static unsigned n_limit = 0; static mcxbool weefreemen = -1; static mcxbool rebase_g = -1; static mcxbits compute_flags = -1; static mcxbits output_flags = -1; static mcxbool user_imx = -1; static mcxbool transpose = -1; static dim n_thread_l = -1; static mclgTF* transform = (void*) -1; static mcxTing* transform_spec = (void*) -1; static struct level* levels; static mclv* matrix_vector ( const mclx* mx , const mclv* vec ) { mclv* res = mclvClone(mx->dom_rows) ; dim i, j ; mclvMakeConstant(res, 0.0) ; for (i=0;in_ivps;i++) { mclv* c = mx->cols + vec->ivps[i].idx ; for (j=0;jn_ivps;j++) res->ivps[c->ivps[j].idx].val += 1.0 ; } mclvUnary(res, fltxCopy, NULL) ; return res ; } static mclv* run_through ( const mclx* mx ) { mclv* starts = mclvClone(mx->dom_cols) ; dim n_starts_previous = starts->n_ivps + 1 ; dim n_steps = 0 ; while (n_starts_previous > starts->n_ivps) { mclv* new_starts = matrix_vector(mx, starts) ; mclvMakeCharacteristic(new_starts) ; n_starts_previous = starts->n_ivps ; mclvFree(&starts) ; starts = new_starts ; n_steps++ ; fputc('.', stderr) ; } if (n_steps) fputc('\n', stderr) ; return starts ; } static int test_cycle ( const mclx* mx , dim n_limit ) { mclv* starts = run_through(mx), *starts2 ; if (starts->n_ivps) { dim i ; if (n_limit) { mclx* mxt = mclxTranspose(mx) ; starts2 = run_through(mxt) ; mclxFree(&mxt) ; mclvBinary(starts, starts2, starts, fltMultiply) ; mcxErr (me, "cycles detected (%u nodes)", (unsigned) starts->n_ivps) ; if (starts->n_ivps) { fprintf(stdout, "%lu", (ulong) starts->ivps[0].idx) ; for (i=1; in_ivps, n_limit); i++) fprintf(stdout, " %lu", (ulong) starts->ivps[i].idx) ; fputc('\n', stdout) ; } else mcxErr(me, "strange, no nodes selected") ; } else mcxErr(me, "cycles detected") ; return 1 ; } mcxTell(me, "no cycles detected") ; return 0 ; } static mcxstatus qInit ( void ) { mode_get = 0 ; n_limit = 0 ; xfout_g = mcxIOnew("-", "w") ; xftab_g = NULL ; tab_g = NULL ; vary_z = 0 ; divide_g = 3 ; vary_a = 0 ; vary_s = 0 ; vary_n = 1 ; xfmx_g = mcxIOnew("-", "r") ; xfabc_g = NULL ; xfcl_g = NULL ; n_thread_l = 1 ; mode_vary = 0 ; transpose= FALSE ; rebase_g = TRUE #define COMPUTE_CLCF 1 #define COMPUTE_EFF 2 ; compute_flags = 0 ; weefreemen = FALSE #define OUTPUT_TABLE 1 #define OUTPUT_KEY 2 ; output_flags = OUTPUT_KEY ; user_imx = FALSE ; weight_scale = 0.0 ; transform = NULL ; transform_spec = NULL ; return STATUS_OK ; } static mcxstatus qArgHandle ( int optid , const char* val ) { switch(optid) { case MY_OPT_IMX : mcxIOnewName(xfmx_g, val) ; user_imx = TRUE ; break ; case MY_OPT_ABC : xfabc_g = mcxIOnew(val, "r") ; break ; case MY_OPT_TAB : xftab_g = mcxIOnew(val, "r") ; break ; case MY_OPT_ICL : xfcl_g = mcxIOnew(val, "r") ; break ; case MY_OPT_TRANSFORM : transform_spec = mcxTingNew(val) ; break ; case MY_OPT_DIMENSION : mode_get = 'd' ; break ; case MY_OPT_TESTMETRIC : mode_get = 'm' ; break ; case MY_OPT_TESTCYCLE : mode_get = 'c' ; break ; case MY_OPT_TESTCYCLE_N : n_limit = atoi(val) ; mode_get = 'c' ; break ; case MY_OPT_INFO : compute_flags |= COMPUTE_EFF ; break ; case MY_OPT_CLCF : compute_flags |= COMPUTE_CLCF ; break ; case MY_OPT_REDUCE : rebase_g = FALSE ; break ; case MY_OPT_THREAD : n_thread_l = atoi(val) ; break ; case MY_OPT_NODE : mode_get = 'n' ; break ; case MY_OPT_FOUT : mcxIOnewName(xfout_g, val) ; break ; case MY_OPT_WEIGHT_SCALE : weight_scale = atof(val) ; break ; case MY_OPT_OUTPUT_NOLEGEND : output_flags ^= OUTPUT_KEY ; break ; case MY_OPT_OUTPUT_TABLE : output_flags |= OUTPUT_TABLE ; break ; case MY_OPT_SCALEFREE : weefreemen = TRUE ; break ; case MY_OPT_EDGEWEIGHTS : mode_get = 'e' ; break ; case MY_OPT_EDGEWEIGHTS_HIST : mode_get = 'H' ; if (4 != sscanf(val, "%d,%d,%d,%d", &vary_a, &vary_z, &vary_s, &vary_n)) mcxDie(1, me, "failed to parse argument as integers start,end,step,norm") ; break ; case MY_OPT_EDGEWEIGHTS_SORTED : mode_get = 'E' ; break ; case MY_OPT_DIVIDE : divide_g = atoi(val) ; break ; case MY_OPT_VARY_CORRELATION : vary_a = 4 ; vary_z = 20 ; vary_s = 1 ; vary_n = 20 ; weight_scale = 100 ; mode_vary = 'c' ; break ; case MY_OPT_VARY_CEIL : case MY_OPT_VARY_KNN : case MY_OPT_VARY_N : case MY_OPT_VARY_THRESHOLD : if (4 != sscanf(val, "%d,%d,%d,%d", &vary_a, &vary_z, &vary_s, &vary_n)) mcxDie(1, me, "failed to parse argument as integers start,end,step,norm") ; mode_vary = optid == MY_OPT_VARY_THRESHOLD ? 't' : optid == MY_OPT_VARY_KNN ? 'k' : optid == MY_OPT_VARY_CEIL ? 'n' : optid == MY_OPT_VARY_N ? 'l' : 'X' ; break ; default : mcxExit(1) ; ; } if (mode_vary && 1000 * vary_s < vary_z - vary_a) mcxDie(1, me, "argument leads to more than one thousand steps") ; if (!vary_n) mcxDie(1, me, "need nonzero scaling factor (last component)") ; return STATUS_OK ; } struct level { double threshold /* edges below this cut out */ ; double degree_cor /* power-law for node degrees? */ ; double sim_median ; double sim_mean ; double sim_iqr ; ulong nb_median ; double nb_mean ; double nb_sum ; double nb_iqr ; ulong bigsize ; double cc_exp ; double clcf ; ulong n_single ; ulong n_edge ; ulong n_lq ; } ; static double pval_get_double ( const void* v ) { return *((pval*) v) ; } static double ivp_get_double ( const void* v ) { return ((mclp*) v)->val ; } dim get_n_sort_allvals ( const mclx* mx , pval* allvals , dim noe , double* sum_vals , mcxbool asc ) { dim n_allvals = 0 ; double s = 0.0 ; dim j ; for (j=0;jcols+j ; dim k ; if (n_allvals + vec->n_ivps > noe) mcxDie(1, me, "panic/impossible: not enough memory") ; for (k=0;kn_ivps;k++) allvals[n_allvals+k] = vec->ivps[k].val ; n_allvals += vec->n_ivps ; s += mclvSum(vec) ; } if (asc) qsort(allvals, n_allvals, sizeof(pval), valcmpasc) ; else qsort(allvals, n_allvals, sizeof(pval), valcmpdesc) ; sum_vals[0] = s ; return n_allvals ; } static void vary_threshold ( mcxIO* xf , FILE* fp , int vary_a , int vary_z , int vary_s , int vary_n , unsigned mode ) { dim cor_i = 0, j ; int step ; mclx* mx ; unsigned long noe ; pval* allvals ; dim n_allvals = 0 ; double sum_vals = 0.0 ; mx = mclxRead(xf, EXIT_ON_FAIL) ; mcxIOclose(xf) ; if (transform) mclgTFexec(mx, transform) ; noe = mclxNrofEntries(mx) ; allvals = mcxAlloc(noe * sizeof allvals[0], EXIT_ON_FAIL) ; if (!weight_scale) { if (mode == 'c') weight_scale = 1.0 ; else weight_scale = vary_n ; } n_allvals = get_n_sort_allvals(mx, allvals, noe, &sum_vals, FALSE) ; if (mode == 'c') { double smallest = n_allvals ? allvals[n_allvals-1] : -DBL_MAX ; if (vary_a * 1.0 / vary_n < smallest) { while (vary_a * 1.0 / vary_n < smallest) vary_a++ ; vary_a-- ; } mcxTell ( me , "smallest correlation is %.2f, using starting point %.2f" , smallest , vary_a * 1.0 / vary_n ) ; } if (output_flags & OUTPUT_TABLE) { ;fprintf(fp, "L\tD\tR\tS\tcce\tEWmean\tEWmed\tEWiqr\tNDmean\tNDmed\tNDiqr\tCCF\t%s\n", mode == 'k' ? "kNN" : mode == 'l' ? "N" : "Cutoff") ;} else { if (output_flags & OUTPUT_KEY) { ;fprintf(fp, "-------------------------------------------------------------------------------\n") ;fprintf(fp, " L Percentage of nodes in the largest component\n") ;fprintf(fp, " D Percentage of nodes in components of size at most %d [-div option]\n", (int) divide_g) ;fprintf(fp, " R Percentage of nodes not in L or D: 100 - L -D\n") ;fprintf(fp, " S Percentage of nodes that are singletons\n") ;fprintf(fp, " cce Expected size of component, nodewise [ sum(sz^2) / sum^2(sz) ]\n") ;fprintf(fp, "*EW Edge weight traits (mean, median and IQR, all scaled!)\n") ;fprintf(fp, " Scaling is used to avoid printing of fractional parts throughout.\n") ;fprintf(fp, " The scaling factor is %.2f [-report-scale option]\n", weight_scale) ;fprintf(fp, " ND Node degree traits [mean, median and IQR]\n") ;fprintf(fp, " CCF Clustering coefficient %s\n", compute_flags & COMPUTE_CLCF ? "(not computed; use --clcf to include this)" : "") ;fprintf(fp, " eff Induced component efficiency %s\n", compute_flags & COMPUTE_EFF ? "(not computed; use --eff to include this)" : "") ;if (mode == 'c') fprintf(fp, "Cutoff The threshold used.\n") ;else if (mode == 't') fprintf(fp, "*Cutoff The threshold with scale factor %.2f and fractional parts removed\n", weight_scale) ;else if (mode == 'k') fprintf(fp, "k-NN The knn parameter\n") ;else if (mode == 'l') fprintf(fp, "N The knn parameter (merge mode)\n") ;else if (mode == 'n') fprintf(fp, "ceil The ceil parameter\n") ;fprintf(fp, "Total number of nodes: %lu\n", (ulong) N_COLS(mx)) ;} fprintf(fp, "-------------------------------------------------------------------------------\n") ;fprintf(fp, " L D R S cce *EWmean *EWmed *EWiqr NDmean NDmed NDiqr CCF eff %6s \n", mode == 'k' ? "k-NN" : mode == 'l' ? "N" : mode == 'n' ? "Ceil" : "Cutoff") ;fprintf(fp, "-------------------------------------------------------------------------------\n") ; } for (step = vary_a; step <= vary_z; step += vary_s) { double cutoff = step * 1.0 / vary_n ; double eff = -1.0 ; mclv* nnodes = mclvCanonical(NULL, N_COLS(mx), 0.0) ; mclv* degree = mclvCanonical(NULL, N_COLS(mx), 0.0) ; dim i, n_sample = 0 ; double cor, y_prev, iqr = 0.0 ; mclx* cc = NULL, *res = NULL ; mclv* sz, *ccsz = NULL ; int step2 = vary_z + vary_a - step ; sum_vals = 0.0 ; if (mode == 't' || mode == 'c') mclxSelectValues(mx, &cutoff, NULL, MCLX_EQT_GQ) , res = mx ; else if (mode == 'k') { res = rebase_g ? mclxCopy(mx) : mx ; mclxKNNdispatch(res, step2, n_thread_l, 1) ; } else if (mode == 'l') { res = mx ; mclxKNNdispatch(res, step2, n_thread_l, 0) ; } else if (mode == 'n') { res = rebase_g ? mclxCopy(mx) : mx ; mclv* cv = mclgCeilNB(res, step2, NULL, NULL, NULL) ; mclvFree(&cv) ; } sz = mclxColSizes(res, MCL_VECTOR_COMPLETE) ; mclvSortDescVal(sz) ; cc = clmUGraphComponents(res, NULL) /* fixme: user has to specify -tf '#max()' if graph is directed */ ; if (cc) { ccsz = mclxColSizes(cc, MCL_VECTOR_COMPLETE) ; if (compute_flags & COMPUTE_EFF) { clmPerformanceTable pftable ; clmPerformance(mx, cc, &pftable) ; eff = pftable.efficiency ; } } if (mode == 't' || mode == 'c') { for ( ; n_allvals > 0 && allvals[n_allvals-1] < cutoff ; n_allvals-- ) ; sum_vals = 0.0 ; for (i=0;iivps, sz->n_ivps, sizeof sz->ivps[0], ivp_get_double, &iqr) ; levels[cor_i].nb_iqr = iqr ; levels[cor_i].nb_mean = mclvSum(sz) / N_COLS(res) ; levels[cor_i].cc_exp = cc ? mclvPowSum(ccsz, 2.0) / N_COLS(res) : 0 ; levels[cor_i].nb_sum = mclxNrofEntries(res) ; if (compute_flags & COMPUTE_CLCF) { mclv* clcf = mclgCLCFdispatch(res, n_thread_l) ; levels[cor_i].clcf = mclvSum(clcf) / N_COLS(mx) ; mclvFree(&clcf) ; } else levels[cor_i].clcf = 0.0 ; levels[cor_i].threshold = mode == 'k' || mode == 'l' || mode == 'n' ? step2 : cutoff ; levels[cor_i].bigsize = cc ? cc->cols[0].n_ivps : 0 ; levels[cor_i].n_single = 0 ; levels[cor_i].n_edge = n_allvals ; levels[cor_i].n_lq = 0 ; if (cc) for (i=0;icols[N_COLS(cc)-1-i].n_ivps ; if (n == 1) levels[cor_i].n_single++ ; if (n <= divide_g) levels[cor_i].n_lq += n ; else break ; } if (levels[cor_i].bigsize <= divide_g) levels[cor_i].bigsize = 0 ; y_prev = sz->ivps[0].val /* wiki says: A scale-free network is a network whose degree distribution follows a power law, at least asymptotically. That is, the fraction P(k) of nodes in the network having k connections to other nodes goes for large values of k as P(k) ~ k^−g where g is a constant whose value is typically in the range 2n_ivps;i++) { double y = sz->ivps[i].val ; if (y > y_prev - 0.5) continue /* same as node degree seen last */ ; nnodes->ivps[n_sample].val = log( (i*1.0) / (1.0*N_COLS(res))) /* x = #nodes >= k, as fraction */ ; degree->ivps[n_sample].val = log(y_prev ? y_prev : 1) /* y = k = degree of node */ ; n_sample++ ;if(0)fprintf(stderr, "k=%.0f\tn=%d\t%.3f\t%.3f\n", (double) y_prev, (int) i, (double) nnodes->ivps[n_sample-1].val, (double) degree->ivps[n_sample-1].val) ; y_prev = y ; } nnodes->ivps[n_sample].val = 0 ; nnodes->ivps[n_sample++].val = log(y_prev ? y_prev : 1) ;if(0){fprintf(stderr, "k=%.0f\tn=%d\t%.3f\t%.3f\n", (double) sz->ivps[sz->n_ivps-1].val, (int) N_COLS(res), (double) nnodes->ivps[n_sample-1].val, (double) degree->ivps[n_sample-1].val) ;} ; mclvResize(nnodes, n_sample) ; mclvResize(degree, n_sample) ; cor = pearson(nnodes, degree, n_sample) ; levels[cor_i].degree_cor = cor * cor ;if(0)fprintf(stdout, "cor at cutoff %.2f %.3f\n\n", cutoff, levels[cor_i-1].degree_cor) ; mclvFree(&nnodes) ; mclvFree(°ree) ; mclvFree(&sz) ; mclvFree(&ccsz) ; mclxFree(&cc) ; if(output_flags & OUTPUT_TABLE) { fprintf ( fp , "%lu\t%lu\t%lu\t%lu\t%lu" "\t%6g\t%6g\t%6g" "\t%6g\t%lu\t%6g" , (ulong) levels[cor_i].bigsize , (ulong) levels[cor_i].n_lq , (ulong) N_COLS(mx) - levels[cor_i].bigsize - levels[cor_i].n_lq , (ulong) levels[cor_i].n_single , (ulong) levels[cor_i].cc_exp , (double) levels[cor_i].sim_mean , (double) levels[cor_i].sim_median , (double) levels[cor_i].sim_iqr , (double) levels[cor_i].nb_mean , (ulong) levels[cor_i].nb_median , (double) levels[cor_i].nb_iqr ) ; if (compute_flags & COMPUTE_CLCF) fprintf(fp, "\t%6g", levels[cor_i].clcf) ; else fputs("\tNA", fp) ; if (eff >= 0.0) fprintf(fp, "\t%4g", eff) ; else fputs("\tNA", fp) ; fprintf(fp, "\t%6g", (double) levels[cor_i].threshold) ; fputc('\n', fp) ; } else { fprintf ( fp , "%3d %3d %3d %3d %7d " "%7.0f %7.0f %6.0f" "%6.1f %6.0f %6.0f" , 0 ? 1 : (int) (0.5 + (100.0 * levels[cor_i].bigsize) / N_COLS(mx)) , 0 ? 1 : (int) (0.5 + (100.0 * levels[cor_i].n_lq) / N_COLS(mx)) , 0 ? 1 : (int) (0.5 + (100.0 * (N_COLS(mx) - levels[cor_i].bigsize - levels[cor_i].n_lq)) / N_COLS(mx)) , 0 ? 1 : (int) (0.5 + (100.0 * levels[cor_i].n_single) / N_COLS(mx)) , 0 ? 1 : (int) (0.5 + levels[cor_i].cc_exp) , 0 ? 1.0 : (double) (levels[cor_i].sim_mean * weight_scale) , 0 ? 1.0 : (double) (levels[cor_i].sim_median * weight_scale) , 0 ? 1.0 : (double) (levels[cor_i].sim_iqr * weight_scale) , 0 ? 1.0 : (double) (levels[cor_i].nb_mean ) , 0 ? 1.0 : (double) (levels[cor_i].nb_median + 0.5 ) , 0 ? 1.0 : (double) (levels[cor_i].nb_iqr + 0.5 ) ) ; if (compute_flags & COMPUTE_CLCF) fprintf(fp, " %3d", 0 ? 1 : (int) (0.5 + (100.0 * levels[cor_i].clcf))) ; else fputs(" -", fp) ; if (eff >= 0.0) fprintf(fp, " %3d", (int) (0.5 + 1000 * eff)) ; else fputs(" -", fp) ; if (mode == 'c') fprintf(fp, "%8.2f\n", (double) levels[cor_i].threshold) ; else if (mode == 't') fprintf(fp, "%8.0f\n", (double) levels[cor_i].threshold * weight_scale) ; else if (mode == 'k' || mode == 'n' || mode == 'l') fprintf(fp, "%8.0f\n", (double) levels[cor_i].threshold) ; } ; cor_i++ ; if (res != mx) mclxFree(&res) ; } if (!(output_flags & OUTPUT_TABLE)) { if (weefreemen) { fprintf(fp, "-------------------------------------------------------------------------------\n") ;fprintf(fp, "The graph below plots the R^2 squared value for the fit of a log-log plot of\n") ;fprintf(fp, " versus <#nodes with degree >= k>, for the network resulting\n") ;fprintf(fp, "from applying a particular %s cutoff.\n", mode == 'c' ? "correlation" : "similarity") ;fprintf(fp, "-------------------------------------------------------------------------------\n") ; for (j=0;j levels[j].degree_cor) c = 'X' ; else if (jj % 5 == 0) c = '|' ; fputc(c, fp) ; } if (mode == 'c') fprintf(fp, "%8.2f\n", (double) levels[j].threshold) ; else fprintf(fp, "%8.0f\n", (double) levels[j].threshold * weight_scale) ; } fprintf(fp, "|----+----|----+----|----+----|----+----|----+----|----+----|----+----|--------\n") ;fprintf(fp, "| R^2 0.4 0.5 0.6 0.7 0.8 0.9 | 1.0 -o)\n") ;fprintf(fp, "+----+----+----+----+----+---------+----+----+----+----+----+----+----+ /\\\\\n") ;fprintf(fp, "| 2 4 6 8 2 4 6 8 | 2 4 6 8 | 2 4 6 8 | 2 4 6 8 | 2 4 6 8 | 2 4 6 8 | _\\_/\n") ;fprintf(fp, "+----+----|----+----|----+----|----+----|----+----|----+----|----+----+--------\n") ; } else fprintf(fp, "-------------------------------------------------------------------------------\n") ; } mclxFree(&mx) ; mcxFree(allvals) ; } static ofs get_cls_id ( long idx , const mclx* cl , const mclx* cltp , long* cls_size ) { mclv* tocl = mclxGetVector(cltp, idx, EXIT_ON_FAIL, NULL), *cls = NULL ; ofs clid = -1 ; cls_size[0] = 0 ; if (tocl) { clid = tocl->ivps[0].idx ; cls = mclxGetVector(cl, clid, EXIT_ON_FAIL, NULL) ; cls_size[0] = cls->n_ivps ; } return clid ; } static mcxstatus qMain ( int argc_unused cpl__unused , const char* argv_unused[] cpl__unused ) { mclx* cl = NULL, *cltp = NULL ; srandom(mcxSeed(135313531)) ; mcxIOopen(xfout_g, EXIT_ON_FAIL) ; levels = mcxAlloc(1001 * sizeof levels[0], EXIT_ON_FAIL) ; if (!mode_vary && !mode_get) mode_get = 'n' ; if ( transform_spec && !(transform = mclgTFparse(NULL, transform_spec)) ) mcxDie(1, me, "input -tf spec does not parse") ; if (xftab_g && mode_get != 'n') tab_g = mclTabRead(xftab_g, NULL, EXIT_ON_FAIL) ; if (xfcl_g) { dim i ; ofs clid, clsize ; cl = mclxRead(xfcl_g, EXIT_ON_FAIL) ; cltp = mclxTranspose(cl) ; mcxIOclose(xfcl_g) ; if (mode_get == 'n' && !user_imx) { fputs("node\tclsize\tclid\n", xfout_g->fp) ; for (i=0;idom_rows->n_ivps;i++) { mclp* p = cl->dom_rows->ivps+i ; clid = get_cls_id(p->idx, cl, cltp, &clsize) ; mcx_dump_node(xfout_g->fp, tab_g, p->idx) ; fprintf(xfout_g->fp, "\t%ld\t%ld\n", (long) clsize, (long) clid) ; } return 0 ; } } ; if (mode_vary) vary_threshold ( xfmx_g , xfout_g->fp , vary_a , vary_z , vary_s , vary_n , mode_vary ) ; else if (mode_get) { if (mode_get == 'd') { const char* fmt ; unsigned int format ; long n_cols, n_rows ; if (mclxReadDimensions(xfmx_g, &n_cols, &n_rows)) mcxDie(1, me, "reading %s failed", xfmx_g->fn->str) ; format = mclxIOformat(xfmx_g) ; mcxIOclose(xfmx_g) ; fmt = format == 'b' ? "binary" : format == 'a' ? "interchange" : "?" ; fprintf ( xfout_g->fp , "%s format, row x col dimensions are %ld x %ld\n" , fmt , n_rows , n_cols ) ; } else if (mode_get == 'm') { mclx* mx = mclxRead(xfmx_g, EXIT_ON_FAIL) ; dim N = N_COLS(mx), i ; dim n_offending = 0, n_ok = 0 ; double max_diff = 0.0, total_diff = 0.0 ; double min_skew = -DBL_MAX ; for (i=0;icols+i, *vb = NULL ; pnum a = va->vid ; dim j ; for (j=0;jn_ivps && va->ivps[j].idx < a;j++) { pnum b = va->ivps[j].idx ; double distab = va->ivps[j].val ; mclp* ia = NULL ; dim k ; vb = mclxGetVector(mx, b, RETURN_ON_FAIL, vb) ; if (!vb) { mcxErr(me, "strange miss for %ld\n", (long) b) ; continue ; } for (k=0;kn_ivps;k++) { pnum c = vb->ivps[k].idx ; double distbc = vb->ivps[k].val ; ia = mclvGetIvp(va, c, ia) ; if (ia) { double distac = ia->val ; double diff = distac - distab - distbc ; if (diff > 0) { n_offending++ ; total_diff += diff ; if (max_diff < diff) max_diff = diff , mcxErr ( me , "a=%ld b=%ld c=%ld ab=%.6g bc=%.6g ac=%.6g diff=%.6g" , (long) a, (long) b, (long) c , distab, distbc, distac , diff ) ; } else { n_ok++ ; if (diff > min_skew) min_skew = diff ; } } } } } fprintf ( stdout , "fail=%lu ok=%lu frac=%.6f maxdiff=%.6f totaldiff=%.6f minskew=%.6f\n" , (ulong) n_offending , (ulong) n_ok , (double) ((1.0 * n_offending) / (1.0 * n_offending + n_ok)) , max_diff , total_diff / (N ? N * 0.5 * N : 1.0) , -min_skew ) ; } else if (mode_get == 'n') { dim i ; mclx* mx = mcx_get_data(xfmx_g, xfabc_g, xftab_g, &tab_g, FALSE) ; if (transform) mclgTFexec(mx, transform) ; if (cl && !MCLD_EQUAL(cl->dom_rows, mx->dom_cols)) mcxDie(1, "query", "cluster row domain and matrix column domains differ") ; fputs("node\tdegree\tmean\tmin\tmax\tmedian\tiqr", xfout_g->fp) ; if (cl) fputs("\tclsize\tclid", xfout_g->fp) ; fputc('\n', xfout_g->fp) ; for (i=0;icols+i) ; double iqr = 0, med = 0, avg = 0, max = -DBL_MAX, min = DBL_MAX ; mclvSortAscVal(v) ; if (v->n_ivps) { med = mcxMedian(v->ivps, v->n_ivps, sizeof v->ivps[0], ivp_get_double, &iqr) ; avg = mclvSum(v) / v->n_ivps ; max = v->ivps[v->n_ivps-1].val ; min = v->ivps[0].val ; } mcx_dump_node(xfout_g->fp, tab_g, mx->cols[i].vid) ; fprintf ( xfout_g->fp , "\t%lu\t%g\t%g\t%g\t%g\t%g" , (ulong) v->n_ivps , avg , min , max , med , iqr ) ; if (cl) { ofs clid, clsize ; clid = get_cls_id(mx->cols[i].vid, cl, cltp, &clsize) ; fprintf(xfout_g->fp, "\t%ld\t%ld", (long) clsize, (long) clid) ; } fputc('\n', xfout_g->fp) ; mclvFree(&v) ; } mclxFree(&mx) ; } else if (mode_get == 'c') { mclx* mx = mclxReadx(xfmx_g, EXIT_ON_FAIL, MCLX_REQUIRE_GRAPH | MCLX_REQUIRE_CANONICAL) ; mclxAdjustLoops(mx, mclxLoopCBremove, NULL) ; if (transform) mclgTFexec(mx, transform) ; return test_cycle(mx, n_limit) ; } else if (mode_get == 'E' || mode_get == 'e' || mode_get == 'H') { mclx* mx = mclxReadx(xfmx_g, EXIT_ON_FAIL, MCLX_REQUIRE_GRAPH | MCLX_REQUIRE_CANONICAL) ; unsigned long noe, n_allvals, i, j ; mclxAdjustLoops(mx, mclxLoopCBremove, NULL) ; noe = mclxNrofEntries(mx) ; if (mode_get == 'E' || mode_get == 'H') { double sum_vals = 0.0 ; pval* allvals = mcxAlloc(noe * sizeof allvals[0], EXIT_ON_FAIL) ; n_allvals = get_n_sort_allvals(mx, allvals, noe, &sum_vals, TRUE) ; if (mode_get == 'E') { for (i=0;ifp, "%g\n", (double) allvals[i]) ; } else if (mode_get == 'H') { long step ; ulong ofs = 0, cur = 0 ; for (step = vary_a; step <= vary_z; step += vary_s) { double cutoff = step * 1.0 / vary_n ; while (cur < n_allvals && allvals[cur] <= cutoff) cur++ ; fprintf(xfout_g->fp, "%g\t%lu\n", cutoff, (ulong) (cur - ofs)) ; ofs = cur ; } } ; } else { for (i=0;icols+i ; for (j=0;jn_ivps;j++) fprintf(xfout_g->fp, "%g\n", (double) v->ivps[j].val) ; } } } } mcxIOclose(xfout_g) ; mcxIOfree(&xfout_g) ; mcxIOfree(&xfmx_g) ; mcxFree(levels) ; return 0 ; } mcxDispHook* mcxDispHookquery ( void ) { static mcxDispHook qEntry = { "query" , "query [options]" , qOptions , sizeof(qOptions)/sizeof(mcxOptAnchor) - 1 , qArgHandle , qInit , qMain , 0 , 0 , MCX_DISP_MANUAL } ; return &qEntry ; } /* ------------------------------------------------------------------------------- L D R S cce *EWmean *EWmed *EWiqr NDmean NDmed NDiqr Cutoff ------------------------------------------------------------------------------- 100 0 0 0 11142 140 69 11 1444.3 1034 2076 0.20 100 0 0 0 11142 210 69 11 1444.3 1034 2076 0.25 100 0 0 0 11142 280 69 11 1444.3 1034 2076 0.30 */ mcl-12-135/src/shmx/mcxerdos.c0000644000402500021140000004175611755464331013055 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* TODO erdos: * more matrix transformation options. * - in non-interactive mode fail rather than resume. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "mcx.h" #include "util/types.h" #include "util/heap.h" #include "util/ding.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/equate.h" #include "util/rand.h" #include "util/opt.h" #include "util/compile.h" #include "impala/matrix.h" #include "impala/stream.h" #include "impala/io.h" #include "impala/tab.h" #include "impala/app.h" #include "clew/clm.h" #include "gryphon/path.h" #include "mcl/transform.h" enum { MY_OPT_ABC = MCX_DISP_UNUSED , MY_OPT_IMX , MY_OPT_TAB , MY_OPT_ISDIRECTED , MY_OPT_ISUNDIRECTED , MY_OPT_QUERY , MY_OPT_OUT , MY_OPT_PATH , MY_OPT_STEP } ; mcxOptAnchor erdosOptions[] = { { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "specify input matrix" } , { "-abc" , MCX_OPT_HASARG , MY_OPT_ABC , "" , "specify input using label pairs" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "specify tab file" } , { "--is-directed" , MCX_OPT_DEFAULT , MY_OPT_ISDIRECTED , NULL , "compute directed shortest paths" } , { "--is-undirected" , MCX_OPT_DEFAULT , MY_OPT_ISUNDIRECTED , NULL , "skip symmetrificiation step" } , { "-query" , MCX_OPT_HASARG , MY_OPT_QUERY , "" , "get queries from stream " } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUT , "" , "write to file fname" } , { "-write-path" , MCX_OPT_HASARG , MY_OPT_PATH , "" , "write path matrix to file fname" } , { "-write-step" , MCX_OPT_HASARG , MY_OPT_STEP , "" , "write step matrix to file fname" } , { NULL, 0, 0, NULL, NULL } } ; static mclxIOstreamer streamer_g = { 0 }; static const char* me = "mcx erdos"; static unsigned debug_g = -1; static mcxIO* xfabc_g = (void*) -1; static mcxIO* xfmx_g = (void*) -1; static mcxIO* xftab_g = (void*) -1; static mcxIO* xq_g = (void*) -1; static const char* out_g = (void*) -1; static const char* path_g = (void*) -1; static const char* step_g = (void*) -1; static mclTab* tab_g = (void*) -1; static mcxHash* hsh_g = (void*) -1; static unsigned char input_status = -1; /* x unknown; d directed; u undirected */ static mcxstatus allInit ( void ) { xfmx_g = mcxIOnew("-", "r") ; xftab_g = NULL ; tab_g = NULL ; hsh_g = NULL ; xq_g = mcxIOnew("-", "r") ; xfabc_g = NULL ; debug_g = 0 ; out_g = "-" ; path_g = NULL ; step_g = NULL ; input_status = 'x' ; return STATUS_OK ; } static mcxstatus erdosArgHandle ( int optid , const char* val ) { switch(optid) { case MY_OPT_IMX : xfmx_g = mcxIOnew(val, "r") ; break ; case MY_OPT_PATH : path_g = val ; break ; case MY_OPT_STEP : step_g = val ; break ; case MY_OPT_OUT : out_g = val ; break ; case MY_OPT_ABC : xfabc_g = mcxIOnew(val, "r") ; break ; case MY_OPT_ISUNDIRECTED : input_status = 'u' ; break ; case MY_OPT_ISDIRECTED : input_status = 'd' ; break ; case MY_OPT_TAB : xftab_g = mcxIOnew(val, "r") ; break ; case MY_OPT_QUERY : mcxIOnewName(xq_g, val) ; break ; default : mcxExit(1) ; ; } return STATUS_OK ; } void label_not_found ( const mcxTing* t ) { fprintf(stderr, "(error label-not-found (%s))\n", t->str) ; } mcxstatus check_bounds ( const mclx* mx , long idx ) { if (idx < 0 || (dim) idx >= N_COLS(mx)) { fprintf(stderr, "(error argument-out-of-bounds (%ld))\n", idx) ; return STATUS_FAIL ; } return STATUS_OK ; } static void erdos_link_together ( mcxIO* xfout , mclx* mx , mclv* tails , mclv* heads ) { dim v = 0 ; mclv* relevant = mclvInit(NULL) ; fprintf(xfout->fp, "("); ; for (v=0;vn_ivps;v++) { long t = tails->ivps[v].idx ; dim j ; mclv* nb = mclxGetVector(mx, t, EXIT_ON_FAIL, NULL) ; mcldMeet(nb, heads, relevant) ; for (j=0;jn_ivps;j++) { if (tab_g) { long u = relevant->ivps[j].idx ; const char* sx = mclTabGet(tab_g, (long) t, NULL) ; const char* sy = mclTabGet(tab_g, (long) u, NULL) ; if (!sx) sx = "NAx" ; if (!sy) sy = "NAy" ; fprintf(xfout->fp, " (%s %s)", sx, sy) ; } else fprintf(xfout->fp, " (%ld %ld)", (long) t, (long) relevant->ivps[j].idx) ; } if (!relevant->n_ivps) mcxErr(me, "odd, %d has no friends\n", (int) t) ; } fprintf(xfout->fp, " )\n"); ; mclvFree(&relevant) ; } void handle_tf ( mclx* mx , mcxTing* sa ) { mclgTF* transform = mclgTFparse(NULL, sa) ; if (!transform) mcxErr(me, "tf spec does not parse") ; else mclgTFexec(mx, transform) ; mclgTFfree(&transform) ; } void handle_clcf ( mclx* mx , mcxTing* sa ) { mcxKV* kv = tab_g ? mcxHashSearch(sa, hsh_g, MCX_DATUM_FIND) : NULL ; long idx = -1 ; mcxstatus status = STATUS_OK ; if (tab_g && !kv) { label_not_found(sa) ; return ; } else if (kv) idx = VOID_TO_ULONG kv->val ; else status = mcxStrTol(sa->str, &idx, NULL) ; if (status || check_bounds(mx, idx)) return ; { double clcf = mclnCLCF(mx, mx->cols+idx, NULL) ; fprintf(stderr, "%.3f\n", clcf) ; } } void handle_list ( mclx* mx , mcxTing* sa ) { mcxKV* kv = tab_g ? mcxHashSearch(sa, hsh_g, MCX_DATUM_FIND) : NULL ; mcxstatus status = STATUS_OK ; long idx = -1 ; if (tab_g && !kv) { label_not_found(sa) ; return ; } else if (kv) idx = VOID_TO_ULONG kv->val ; else status = mcxStrTol(sa->str, &idx, NULL) ; if (status || check_bounds(mx, idx)) return ; { mclv* vec = mx->cols+idx ; dim t ; for (t=0;tn_ivps;t++) { const char* s = tab_g ? mclTabGet(tab_g, (long) vec->ivps[t].idx, NULL) : NULL ; if (s) fprintf(stderr, " %s\n", s) ; else fprintf(stderr, "%12ld\n", (long) vec->ivps[t].idx) ; } } } void handle_top ( mclx* mx , mcxTing* sa ) { long num = -1 ; dim t ; mcxHeap* hp ; if (mcxStrTol(sa->str, &num, NULL) || num < 0) { fprintf(stderr, "(error number-no-good)\n") ; return ; } if (!num || (dim) num > N_COLS(mx)) num = N_COLS(mx) /* Could use mclxColSizes instead */ ; hp = mcxHeapNew ( NULL , num , sizeof(mclp) , mclpValRevCmp ) ; for (t=0;tcols[t].vid ; ivp.val = mx->cols[t].n_ivps ; mcxHeapInsert(hp, &ivp) ; } qsort(hp->base, hp->n_inserted, hp->elemSize, hp->cmp) /* warning this destroys the heap structure */ ; for (t=0; tn_inserted;t++) { char* p = (char*) hp->base + (t*hp->elemSize) ; mclp* ivp = (void*) p ; const char* s = tab_g ? mclTabGet(tab_g, (long) ivp->idx, NULL) : NULL ; if (s) fprintf(stderr, "%20s : %6.0f\n", s, (double) ivp->val) ; else fprintf(stderr, "%20ld : %6.0f\n", (long) ivp->idx, (double) ivp->val) ; } mcxHeapFree(&hp) ; } mclx* handle_query ( mclx* mx , mcxIO* xfmx , mcxTing* sa , mcxTing* sb ) { if (!strcmp(sa->str, ":top")) handle_top(mx, sb) ; else if (!strcmp(sa->str, ":list")) handle_list(mx, sb) ; else if (!strcmp(sa->str, ":reread")) { mclxFree(&mx) ; if (xfabc_g) { streamer_g.tab_sym_in = tab_g ; mx = mclxIOstreamIn ( xfabc_g , MCLXIO_STREAM_ABC | (input_status != 'd' ? MCLXIO_STREAM_MIRROR : 0) | MCLXIO_STREAM_SYMMETRIC | MCLXIO_STREAM_GTAB_RESTRICT /* docme/fixme need to check for tab_g ? */ , NULL , mclpMergeMax , &streamer_g /* has tab, if present */ , EXIT_ON_FAIL ) ; mcxIOclose(xfabc_g) ; } else { mx = mclxReadx (xfmx, EXIT_ON_FAIL, MCLX_REQUIRE_GRAPH | MCLX_REQUIRE_CANONICAL) ; mcxIOclose(xfmx) ; } mclxAdjustLoops(mx, mclxLoopCBremove, NULL) ; } else if (!strcmp(sa->str, ":clcf")) handle_clcf(mx, sb) ; else if (!strcmp(sa->str, ":tf")) { handle_tf(mx, sb) ; mcxTell(me, "graph now has %lu arcs", (ulong) mclxNrofEntries(mx)) ; } else fprintf(stderr, "(error unknown-query (:clcf#1 :list#1 :reread :top#1))\n") ; return mx ; } static mclx* process_queries ( mcxIO* xq , mclx* mx , mclx* mxtp , mcxIO* xfmx , mclTab* tab , mcxIO* xfout , mcxIO* xfpath , mcxIO* xfstep ) { mcxTing* line = mcxTingEmpty(NULL, 100) ; mcxTing* sa = mcxTingEmpty(NULL, 100) ; mcxTing* sb = mcxTingEmpty(NULL, 100) ; SSPxy* sspo = mclgSSPxyNew(mx, mxtp) ; mcxIOopen(xq, EXIT_ON_FAIL) ; while (1) { long a = -1, b = -2, ns = 0 ; mcxbool query = FALSE ; if (isatty(fileno(xq->fp))) fprintf ( stdout , "\n(ready (expect two %s or : directive))\n" , tab ? "labels" : "graph indices" ) ; if ( STATUS_OK != mcxIOreadLine(xq, line, MCX_READLINE_CHOMP) || !strcmp(line->str, ".") ) break ; query = (u8) line->str[0] == ':' ; if (query && (line->len == 1 || isspace((unsigned char) line->str[1]))) { fprintf(xfout->fp, "-->\n") ; fprintf(xfout->fp, ":tf \n") ; fprintf(xfout->fp, ":top \n") ; fprintf(xfout->fp, ":list \n") ; fprintf(xfout->fp, ":clcf \n") ; fprintf(xfout->fp, ":reread>\n") ; fprintf(xfout->fp, "<--\n") ; continue ; } mcxTingEnsure(sa, line->len) ; mcxTingEnsure(sb, line->len) ; ns = sscanf(line->str, "%s %s", sa->str, sb->str) ; if (ns == 2) sa->len = strlen(sa->str) , sb->len = strlen(sb->str) ; else sa->len = strlen(sa->str) , sb->len = 0 , sb->str[0] = '\0' ; if (!query && ns != 2) { if (line->len) fprintf(stderr, "(error expect two nodes or : directive)\n") ; continue ; } if (query) { mx = handle_query(mx, xfmx, sa, sb) ; sspo->mx = mx /* fixme improve ownership handling */ ; sspo->mxtp = mx ; fprintf(xfout->fp, "%s\n\n", line->str) ; continue /* fixme improve flow */ ; } else if (tab) { mcxKV* kv ; if ((kv = mcxHashSearch(sa, hsh_g, MCX_DATUM_FIND))) a = VOID_TO_ULONG kv->val /* fixme (> 2G labels) */ ; else { label_not_found(sa) ; continue ; } if ((kv = mcxHashSearch(sb, hsh_g, MCX_DATUM_FIND))) b = VOID_TO_ULONG kv->val /* fixme (> 2G labels) */ ; else { label_not_found(sb) ; continue ; } } else if (mcxStrTol(sa->str, &a, NULL) || mcxStrTol(sb->str, &b, NULL)) { fprintf(stderr, "(error failed-reading-number)\n") ; continue ; } if (check_bounds(mx, a)) continue ; if (check_bounds(mx, b)) continue ; fprintf ( xfout->fp , "\n(lattice\n" " (anchors %s %s)\n" , sa->str , sb->str ) ; if (0 && a == b) { fprintf ( xfout->fp , " (path-length 0)\n" "(data\n" ) ; } else { mcxstatus thestat = mclgSSPxyQuery(sspo, a, b) ; dim t ; if (thestat) fprintf(xfout->fp, " (path-length -2)\n(data\n") ; else if (sspo->length < 0) /* not in same component */ fprintf(xfout->fp, " (path-length -1)\n(data\n") ; else { fprintf ( xfout->fp , " (path-length %d)\n" "(data\n" , (int) sspo->length ) ; if (sspo->length == 1) { if (tab) fprintf(xfout->fp, "((%s %s))\n", sa->str, sb->str) ; else fprintf(xfout->fp, "((%ld %ld))\n", (long) a, (long) b) ; } else for (t=0; t< N_COLS(sspo->pathmx)-1; t++) erdos_link_together(xfout, mx, sspo->pathmx->cols+t, sspo->pathmx->cols+t+1) ; fputs(")\n", xfout->fp) ; fprintf(xfout->fp, " (anchors %s %s)\n", sa->str, sb->str) ; fprintf(xfout->fp, " (considered %d)\n", (int) sspo->n_considered) ; fprintf(xfout->fp, " (participants %d)\n", (int) sspo->n_involved) ; fprintf(xfout->fp, " (path-length %d)\n", (int) sspo->length) ; } } fprintf(xfout->fp, ")\n\n") ; if (xfpath) mclxWrite(sspo->pathmx, xfpath, MCLXIO_VALUE_NONE, RETURN_ON_FAIL) ; if (xfstep) mclxWrite(sspo->stepmx, xfstep, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; mclgSSPxyReset(sspo) ; } mcxTingFree(&sa) ; mcxTingFree(&sb) ; mcxTingFree(&line) ; mclgSSPxyFree(&sspo) ; return mx ; } static mcxstatus erdosMain ( int argc_unused cpl__unused , const char* argv_unused[] cpl__unused ) { mclx* mx, *mxtp = NULL ; mcxIO* xfout = mcxIOnew(out_g, "w") ; mcxIO* xfpath = path_g ? mcxIOnew(path_g, "w") : NULL ; mcxIO* xfstep = step_g ? mcxIOnew(step_g, "w") : NULL ; mcxIOopen(xfout, EXIT_ON_FAIL) ; debug_g = mcx_debug_g ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclx_app_init(stderr) ; if (xfabc_g) { if (xftab_g) tab_g = mclTabRead(xftab_g, NULL, EXIT_ON_FAIL) , streamer_g.tab_sym_in = tab_g ; mx = mclxIOstreamIn ( xfabc_g , MCLXIO_STREAM_ABC | (input_status != 'd' ? MCLXIO_STREAM_MIRROR : 0) | MCLXIO_STREAM_SYMMETRIC | (tab_g ? MCLXIO_STREAM_GTAB_RESTRICT : 0) , NULL , mclpMergeMax , &streamer_g , EXIT_ON_FAIL ) ; tab_g = streamer_g.tab_sym_out ; if (!streamer_g.tab_sym_in) streamer_g.tab_sym_in = tab_g /* needed when rereading */ ; mcxIOclose(xfabc_g) ; } else if (xfmx_g) { mx = mclxReadx (xfmx_g, EXIT_ON_FAIL, MCLX_REQUIRE_GRAPH | MCLX_REQUIRE_CANONICAL) ; if (xftab_g) tab_g = mclTabRead(xftab_g, mx->dom_cols, EXIT_ON_FAIL) ; mcxIOclose(xfmx_g) ; } else mcxDie(1, me, "-imx or -abc required") ; hsh_g = tab_g ? mclTabHash(tab_g) : NULL ; mclxAdjustLoops(mx, mclxLoopCBremove, NULL) ; if (input_status == 'x') { if (xfmx_g) mclxAddTranspose(mx, 0.0) ; mxtp = mx ; } else if (input_status == 'u') mxtp = mx ; else if (input_status == 'd') mxtp = mclxTranspose(mx) ; if (xq_g) mx = process_queries(xq_g, mx, mxtp, xfmx_g, tab_g, xfout, xfpath, xfstep) ; mcxIOfree(&xftab_g) ; mcxIOfree(&xfmx_g) ; mcxIOfree(&xq_g) ; mcxIOfree(&xfpath) ; mcxIOfree(&xfstep) ; mcxIOfree(&xfout) ; if (N_COLS(mx) < 1<<17) { mclxFree(&mx) ; if (input_status == 'd') mclxFree(&mxtp) ; mclTabFree(&tab_g) ; mcxHashFree(&hsh_g, NULL, NULL) ; } return 0 ; } static mcxDispHook erdosEntry = { "erdos" , "erdos [options]" , erdosOptions , sizeof(erdosOptions)/sizeof(mcxOptAnchor) - 1 , erdosArgHandle , allInit , erdosMain , 0 , 0 , MCX_DISP_DEFAULT } ; mcxDispHook* mcxDispHookErdos ( void ) { return &erdosEntry ; } mcl-12-135/src/shmx/mcxtest.c0000644000402500021140000001233511531205261012672 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "impala/io.h" #include "impala/matrix.h" #include "impala/tab.h" #include "impala/stream.h" #include "impala/ivp.h" #include "impala/compose.h" #include "impala/vector.h" #include "impala/app.h" #include "impala/iface.h" #include "impala/pval.h" #include "util/types.h" #include "util/ding.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/equate.h" #include "util/minmax.h" #include "util/rand.h" #include "util/opt.h" #include "mcl/proc.h" #include "mcl/procinit.h" #include "mcl/alg.h" #include "clew/clm.h" #include "clew/cat.h" const char* usagelines[]; const char* me = "mcxtest"; void usage ( const char** ) ; mclv* reduce_v ( const mclv* u ) { mclv* v = mclvClone(u) ; dim n = v->n_ivps ; double s = mclvSum(v) ; double sq = mclvPowSum(v, 2.0) ; if (s) mclvSelectGqBar(v, 0.25 * sq / s) ;fprintf(stderr, "from %d to %d entries\n", (int) n, (int) v->n_ivps) ; return v ; } double mydiv ( pval a , pval b ) { return b ? a / b : 0.0 ; } double get_score ( const mclv* c , const mclv* d , const mclv* c_start , const mclv* d_start , const mclv* c_end , const mclv* d_end ) { mclv* vecc = mclvClone(c) ; mclv* vecd = mclvClone(d) ; mclv* meet_c = mcldMeet(vecc, vecd, NULL) ; mclv* meet_d = mcldMeet(vecd, meet_c, NULL) ; mclv* cwid = mclvBinary(c_end, c_start, NULL, fltSubtract) ; mclv* dwid = mclvBinary(d_end, d_start, NULL, fltSubtract) ; mclv* rmin = mclvBinary(c_end, d_end, NULL, fltMin) ; mclv* lmax = mclvBinary(c_start, d_start, NULL, fltMax) ; mclv* delta = mclvBinary(rmin, lmax, NULL, fltSubtract) ; mclv* weightc, *weightd ; double ip, cd, csn, meanc, meand, mean, euclid, meet_fraction, score, sum_meet_c, sum_meet_d, reduction_c, reduction_d ; int nmeet = meet_c->n_ivps ; int nldif = vecc->n_ivps - nmeet ; int nrdif = vecd->n_ivps - nmeet ; mclvSelectGqBar(delta, 0.0) ; weightc= mclvBinary(delta, cwid, NULL, mydiv) ; weightd= mclvBinary(delta, dwid, NULL, mydiv) #if 0 ;if (c != d)mclvaDump ( cwid , stdout , 5 , "\n" , 0) ,mclvaDump ( dwid , stdout , 5 , "\n" , 0) #endif ; sum_meet_c = 0.01 + mclvSum(meet_c) ; sum_meet_d = 0.01 + mclvSum(meet_d) ; mclvBinary(meet_c, weightc, meet_c, fltMultiply) ; mclvBinary(meet_d, weightd, meet_d, fltMultiply) ; reduction_c = mclvSum(meet_c) / sum_meet_c ; reduction_d = mclvSum(meet_d) / sum_meet_d ; ip = mclvIn(meet_c, meet_d) ; cd = sqrt(mclvPowSum(meet_c, 2.0) * mclvPowSum(meet_d, 2.0)) ; csn = cd ? ip / cd : 0.0 ; meanc = meet_c->n_ivps ? mclvSum(meet_c) / meet_c->n_ivps : 0.0 ; meand = meet_d->n_ivps ? mclvSum(meet_d) / meet_d->n_ivps : 0.0 ; mean = MCX_MIN(meanc, meand) ; euclid = 0 ? 1.0 : ( mean ? sqrt(mclvPowSum(meet_c, 2.0) / mclvPowSum(vecc, 2.0)) : 0.0 ) ; meet_fraction = pow((meet_c->n_ivps * 1.0 / vecc->n_ivps), 1.0) ; score = mean * csn * euclid * meet_fraction * 1.0 ; mclvFree(&meet_c) ; mclvFree(&meet_d) ; fprintf ( stdout , "%10d%10d%10d%10d%10d%10g%10g%10g%10g%10g%10g%10g\n" , (int) c->vid , (int) d->vid , (int) nldif , (int) nrdif , (int) nmeet , score , mean , csn , euclid , meet_fraction , reduction_c , reduction_d ) ; return score ; } int main ( int argc , const char* argv[] ) { mclx* mx_score, *mx_start, *mx_end ; mcxIO* xfs, *xfl, *xfr ; dim i, j ; if (argc != 4) mcxDie(1, me, "need score start end matrices") ; xfs = mcxIOnew(argv[1], "r") ; xfl = mcxIOnew(argv[2], "r") ; xfr = mcxIOnew(argv[3], "r") ; mx_score = mclxRead(xfs, EXIT_ON_FAIL) ; mx_start = mclxRead(xfl, EXIT_ON_FAIL) ; mx_end = mclxRead(xfr, EXIT_ON_FAIL) ; fprintf ( stdout , "%10s%10s%10s%10s%10s%10s%10s%10s%10s%10s%10s%10s\n" , "vid1" , "vid2" , "diff1" , "diff2" , "meet" , "score" , "mean" , "csn" , "euclid" , "frac" , "re1" , "re2" ) ; for (i=0;i< N_COLS(mx_score);i++) { for (j=0;jcols+i , mx_score->cols+j , mx_start->cols+i , mx_start->cols+j , mx_end->cols+i , mx_end->cols+j ) ; } } return 0 ; } const char* usagelines[] = { NULL } ; mcl-12-135/src/shmx/fake0000755000402500021140000000022610502067670011676 00000000000000#!/bin/bash #todo: trap set -e mv mcxtest.c mcxtest.c.$$ cp $1.c mcxtest.c make mcxtest || touch mcxtest cp mcxtest $1 mv mcxtest.c.$$ mcxtest.c mcl-12-135/src/shmx/README0000644000402500021140000000010410527327647011727 00000000000000 This directory contains utilities and unit tests, bless, bliss. mcl-12-135/src/shmx/mcxconvert.c0000644000402500021140000001224111705601316013373 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include "mcx.h" #include "util/io.h" #include "util/types.h" #include "util/err.h" #include "util/opt.h" #include "util/compile.h" #include "impala/matrix.h" #include "impala/io.h" #include "impala/iface.h" #include "impala/app.h" #include "clew/cat.h" static const char* me = "mcxconvert"; enum { MY_OPT_BINARY = MCX_DISP_UNUSED , MY_OPT_C2S , MY_OPT_S2C , MY_OPT_CAT , MY_OPT_CATMAX , MY_OPT_RO } ; const char* syntax = "Usage: mcxconvert [options] matrix-argument(s)"; mcxOptAnchor convertOptions[] = { { "--cone-to-stack" , MCX_OPT_DEFAULT , MY_OPT_C2S , NULL , "transform cone file to stack file" } , { "--stack-to-cone" , MCX_OPT_DEFAULT , MY_OPT_S2C , NULL , "transform stack file to cone file" } , { "--cat" , MCX_OPT_DEFAULT , MY_OPT_CAT , NULL , "read and write cat format" } , { "-cat-max" , MCX_OPT_HASARG , MY_OPT_CATMAX , "" , "limit the stack conversion to matrices" } , { "--write-binary" , MCX_OPT_DEFAULT , MY_OPT_BINARY , NULL , "output native binary format" } , { "--read-only" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_RO , NULL , "read matrix and exit (unit test)" } , { NULL , 0 , 0 , NULL, NULL} } ; static mcxIO* xfin = (void*) -1; static mcxIO *xfout = (void*) -1; static int main_mode = -1; static dim catmax = -1; static mcxbool docat = -1; static mcxbool test_read = -1; static mcxstatus convertInit ( void ) { xfin = NULL ; xfout = NULL ; main_mode = 'f' /* format */ ; test_read = FALSE ; catmax = 0 ; docat = FALSE ; return STATUS_OK ; } static mcxstatus convertArgHandle ( int optid , const char* val ) { switch(optid) { case MY_OPT_BINARY : mclxSetBinaryIO() ; break ; case MY_OPT_CAT : docat = TRUE /* unused, idling */ ; main_mode = 'l' /* level(s) */ ; break ; case MY_OPT_RO : test_read = TRUE ; break ; case MY_OPT_CATMAX : catmax = atoi(val) ; break ; case MY_OPT_S2C : main_mode = 's' /* stack to cone */ ; break ; case MY_OPT_C2S : main_mode = 'c' /* cone to stack */ ; break ; default : mcxExit(1) ; } return STATUS_OK ; } static mcxstatus convertMain ( int argc_unused cpl__unused , const char* argv[] ) { mclMatrix* mx ; mclxCat st ; xfin = mcxIOnew(argv[0], "r") ; xfout = mcxIOnew(argv[1], "w") ; mclxCatInit(&st) ; if (main_mode == 'l') { if (mclxCatRead(xfin, &st, catmax, NULL, NULL, 0)) mcxDie(1, me, "failure is, if not an option, the result after all") ; mclxCatWrite(xfout, &st, MCLXIO_VALUE_GETENV, EXIT_ON_FAIL) ; } else if (main_mode == 'f') { int format ; mx = mclxRead(xfin, EXIT_ON_FAIL) ; format = mclxIOformat(xfin) ; if (!test_read) { mcxIOopen(xfout, EXIT_ON_FAIL) ; if (format == 'a') mclxbWrite(mx, xfout, EXIT_ON_FAIL) ; else mclxaWrite(mx, xfout, MCLXIO_VALUE_GETENV, EXIT_ON_FAIL) ; } } else { mcxbits bits = main_mode == 'c' ? MCLX_REQUIRE_DOMTREE | MCLX_CATREAD_CLUSTERSTACK : main_mode == 's' ? MCLX_REQUIRE_DOMSTACK | MCLX_CATREAD_CLUSTERTREE : 0 ; mcxIOopen(xfout, EXIT_ON_FAIL) ; if (mclxCatRead(xfin, &st, catmax, NULL, NULL, bits)) mcxDie(1, me, "failure is, if not an option, the result after all") ; mclxCatWrite(xfout, &st, MCLXIO_VALUE_NONE, EXIT_ON_FAIL) ; } return 0 ; } mcxDispHook* mcxDispHookConvert ( void ) { static mcxDispHook convertEntry = { "convert" , "convert [options] +" , convertOptions , sizeof(convertOptions)/sizeof(mcxOptAnchor) - 1 , convertArgHandle , convertInit , convertMain , 2 , 2 , MCX_DISP_MANUAL } ; return &convertEntry ; } /* fixme: query mode, currently lost */ #if 0 ; if (main_mode == 'q') { mcxIO* xf = mcxIOnew(argv[a], "r") ; const char* fmt ; int format ; mcxIOopen(xf, EXIT_ON_FAIL) ; if (mclxReadDimensions(xf, &n_cols, &n_rows)) mcxDie(1, me, "reading %s failed", argv[1]) ; format = mclxIOformat(xf) ; fmt = format == 'b' ? "binary" : format == 'a' ? "interchange" : "?" ; fprintf ( stdout , "%s format, row x col dimensions are %ld x %ld\n" , fmt , n_rows , n_cols ) ; } #endif mcl-12-135/src/shmx/mcxload.c0000644000402500021140000006720611705541102012641 00000000000000/* (C) Copyright 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* NOTE: with --cleanup, this app should return all memory. * after major rewrites this is sometimes not the case. * TODO * mx/mcxload -etc fail.etc.data.1 -restrict-tabr 3.tab --scrub -write-tabr t --canonicalr -o tt * - warn when there is no tab for output matrix (scrub, can). * - with {re}strict-tab, matrix should be alloced on those domains. * - put in place as many argument combination checks as humanly possible. * * - support values with etc/235 formats * - option to ignore third column. * - option to pick out columns * */ #include #include #include "impala/io.h" #include "impala/stream.h" #include "impala/matrix.h" #include "impala/vector.h" #include "impala/ivp.h" #include "impala/app.h" #include "impala/pval.h" #include "impala/app.h" #include "util/ting.h" #include "util/err.h" #include "util/types.h" #include "util/opt.h" #include "mcl/transform.h" const char* me = "mcxload"; const char* syntax = "Usage: mcxload -abc -o [options]\n" "all file names use - to indicate stdin/stdout"; #define SELECT_IGQ 1 << 0 #define SELECT_ILQ 1 << 1 #define SELECT_IFLOOR 1 << 2 #define SELECT_ICEIL 1 << 3 #define SELECT_OGQ 1 << 4 #define SELECT_OLQ 1 << 5 #define SELECT_OFLOOR 1 << 6 #define SELECT_OCEIL 1 << 7 enum { MY_OPT_ABC , MY_OPT_123 , MY_OPT_ETC , MY_OPT_ETC_AI , MY_OPT_SIF , MY_OPT_235 , MY_OPT_235_AI , MY_OPT_PCK , MY_OPT_STREAM_MIRROR , MY_OPT_STREAM_SPLIT , MY_OPT_OUT_MX , MY_OPT_STRICT_TABG = MY_OPT_OUT_MX + 2 , MY_OPT_RESTRICT_TABG , MY_OPT_EXTEND_TABG , MY_OPT_SCRUB_DOMG , MY_OPT_CANONICALG , MY_OPT_OUT_TABG , MY_OPT_DMAX , MY_OPT_STRICT_TABC = MY_OPT_OUT_TABG + 2 , MY_OPT_RESTRICT_TABC , MY_OPT_EXTEND_TABC , MY_OPT_CANONICALC , MY_OPT_SCRUB_DOMC , MY_OPT_OUT_TABC , MY_OPT_CMAX , MY_OPT_CREQUIRE_235 , MY_OPT_STRICT_TABR = MY_OPT_CMAX + 2 , MY_OPT_RESTRICT_TABR , MY_OPT_EXTEND_TABR , MY_OPT_SCRUB_DOMR , MY_OPT_CANONICALR , MY_OPT_OUT_TABR , MY_OPT_RMAX , MY_OPT_DEDUP = MY_OPT_OUT_TABR + 2 , MY_OPT_STREAM_TRANSFORM , MY_OPT_TRANSFORM , MY_OPT_STREAM_LOG , MY_OPT_STREAM_NEGLOG , MY_OPT_STREAM_NEGLOG10 , MY_OPT_EXPECT_VALUES , MY_OPT_IMAGE , MY_OPT_TRANSPOSE , MY_OPT_CLEANUP , MY_OPT_NW , MY_OPT_WB , MY_OPT_DEBUG , MY_OPT_HELP , MY_OPT_APROPOS , MY_OPT_VERSION } ; mcxOptAnchor options[] = { { "-h" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "--debug" , MCX_OPT_DEFAULT , MY_OPT_DEBUG , NULL , "debug" } , { "--help" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_APROPOS , NULL , "print this help" } , { "--write-binary" , MCX_OPT_DEFAULT , MY_OPT_WB , NULL , "output matrix in binary format" } , { "--clean-up" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_CLEANUP , NULL , "free all memory used (test purpose)" } , { "--no-write" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_NW , NULL , "exit after loading of matrix" } , { "--expect-values" , MCX_OPT_DEFAULT , MY_OPT_EXPECT_VALUES , NULL , "accept extended SIF or ETC format (label:weight fields)" } , { "--version" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_VERSION , NULL , "print version information" } , { "-ri" , MCX_OPT_HASARG , MY_OPT_IMAGE , "" , "combine input matrix with its transpose" } , { "-re" , MCX_OPT_HASARG , MY_OPT_DEDUP , "" , "deduplicate repeated entries" } , { "--stream-mirror" , MCX_OPT_DEFAULT , MY_OPT_STREAM_MIRROR , NULL , "add y -> x when x -> y" } , { "--stream-split" , MCX_OPT_DEFAULT , MY_OPT_STREAM_SPLIT , NULL , "assume two independent domains (e.g. bipartite graph)" } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUT_MX , "" , "output matrix to file " } , { "--scrub" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_SCRUB_DOMG , NULL , "with -(re)strict-tab, remove unseen labels" } , { "--scrubc" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_SCRUB_DOMC , NULL , "with -(re)strict-tabc, remove unseen labels" } , { "--scrubr" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_SCRUB_DOMR , NULL , "with -(re)strict-tabr, remove unseen labels" } , { "--canonical" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_CANONICALG , NULL , "map result matrix and tab onto canonical domains" } , { "--canonicalc" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_CANONICALC , NULL , "map result matrix and tab onto canonical column domain" } , { "--canonicalr" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_CANONICALR , NULL , "map result matrix and tab onto canonical row domain" } , { "-write-tab" , MCX_OPT_HASARG , MY_OPT_OUT_TABG , "" , "output domain tab to file " } , { "-write-tabc" , MCX_OPT_HASARG , MY_OPT_OUT_TABC , "" , "output column tab to file " } , { "-write-tabr" , MCX_OPT_HASARG , MY_OPT_OUT_TABR , "" , "output row tab to file " } , { "-123-max" , MCX_OPT_HASARG , MY_OPT_DMAX , "" , "set column and row ranges with -123 option" } , { "-123-maxc" , MCX_OPT_HASARG , MY_OPT_CMAX , "" , "set column range with -123 option" } , { "-123-maxr" , MCX_OPT_HASARG , MY_OPT_RMAX , "" , "set row range with -123 option" } , { "-235-maxc" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_CREQUIRE_235 , "" , "number of columns is set to at least" } , { "-extend-tab" , MCX_OPT_HASARG , MY_OPT_EXTEND_TABG , "" , "use dom tab in file , extend if necessary" } , { "-extend-tabc" , MCX_OPT_HASARG , MY_OPT_EXTEND_TABC , "" , "use col tab in file , extend if necessary" } , { "-extend-tabr" , MCX_OPT_HASARG , MY_OPT_EXTEND_TABR , "" , "use row tab in file , extend if necessary" } , { "-strict-tab" , MCX_OPT_HASARG , MY_OPT_STRICT_TABG , "" , "use dom tab in file , die on miss" } , { "-strict-tabc" , MCX_OPT_HASARG , MY_OPT_STRICT_TABC , "" , "use col tab in file , die on miss" } , { "-strict-tabr" , MCX_OPT_HASARG , MY_OPT_STRICT_TABR , "" , "use row tab in file , die on miss" } , { "-restrict-tab" , MCX_OPT_HASARG , MY_OPT_RESTRICT_TABG , "" , "use dom tab in file , ignore miss" } , { "-restrict-tabc" , MCX_OPT_HASARG , MY_OPT_RESTRICT_TABC , "" , "use col tab in file , ignore miss" } , { "-restrict-tabr" , MCX_OPT_HASARG , MY_OPT_RESTRICT_TABR , "" , "use row tab in file , ignore miss" } , { "-abc" , MCX_OPT_HASARG , MY_OPT_ABC , "" , "input file in abc format" } , { "-sif" , MCX_OPT_HASARG , MY_OPT_SIF , "" , "input file in sif format" } , { "-etc-ai" , MCX_OPT_HASARG , MY_OPT_ETC_AI , "" , "input file in etc format, auto-increment columns" } , { "-etc" , MCX_OPT_HASARG , MY_OPT_ETC , "" , "input file in etc format" } , { "-235-ai" , MCX_OPT_HASARG , MY_OPT_235_AI , "" , "input file in numerical etc format, auto-increment columns" } , { "-235" , MCX_OPT_HASARG , MY_OPT_235 , "" , "input file in numerical etc format" } , { "-packed" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_PCK , "" , "input file in packed format" } , { "-123" , MCX_OPT_HASARG , MY_OPT_123 , "" , "input file in 123 format" } , { "-tf" , MCX_OPT_HASARG , MY_OPT_TRANSFORM , "" , "apply unary transformations to matrix" } , { "-stream-tf" , MCX_OPT_HASARG , MY_OPT_STREAM_TRANSFORM , "" , "apply unary transformations to stream values" } , { "--stream-log" , MCX_OPT_DEFAULT , MY_OPT_STREAM_LOG , NULL , "take log of stream value" } , { "--stream-neg-log" , MCX_OPT_DEFAULT , MY_OPT_STREAM_NEGLOG , NULL , "take negative log of stream value" } , { "--stream-neg-log10" , MCX_OPT_DEFAULT , MY_OPT_STREAM_NEGLOG10 , NULL , "take negative log-10 of stream value" } , { "--transpose" , MCX_OPT_DEFAULT , MY_OPT_TRANSPOSE , NULL , "transpose result" } , { NULL, 0, 0, NULL, NULL } } ; void usage ( const char** ) ; int main ( int argc , const char* argv[] ) { mcxIO* xfin = mcxIOnew("-", "r") ; mcxIO* xfmx = mcxIOnew("-", "w") ; mcxIO* xfcachetabg = NULL ; mcxIO* xfcachetabc = NULL ; mcxIO* xfcachetabr = NULL ; mcxIO* xfusetabg = NULL ; mcxIO* xfusetabc = NULL ; mcxIO* xfusetabr = NULL ; mcxIO* xferr = mcxIOnew("stderr", "w") ; mclgTF* stream_transform = NULL ; mcxTing* stream_transform_spec = NULL ; mclTab *tab_map_col = NULL ; mclTab *tab_map_row = NULL ; mclTab *tab_map_sym = NULL ; mclgTF* transform = NULL ; mcxTing* transform_spec = NULL ; mcxbits bits_stream_input = MCLXIO_STREAM_ABC ; mcxbits bits_stream_tabg = 0 /* g for graph */ ; mcxbits bits_stream_tabc = 0 ; mcxbits bits_stream_tabr = 0 ; mcxbits bits_stream_tabx = 0 ; mcxbits bits_stream_other = MCLXIO_STREAM_SYMMETRIC ; double (*symfunc) (pval val1, pval val2) = NULL ; mclx* mx = NULL ; mclxIOstreamer streamer ; void (*merge)(void* ivp1, const void* ivp2) = NULL ; mcxbool symmetric = FALSE ; mcxbool transpose = FALSE ; mcxbool cleanup = FALSE ; mcxbool dowrite = TRUE ; mcxbits scrub = 0 ; mcxbool write_binary = FALSE #define COL_ON 1 #define ROW_ON 2 #define SYM_ON 3 ; mcxbits canonical = 0 ; mcxOption* opts, *opt ; mcxstatus parseStatus = STATUS_OK ; streamer.tab_sym_in = NULL ; streamer.tab_sym_out = NULL ; streamer.tab_col_in = NULL ; streamer.tab_col_out = NULL ; streamer.tab_row_in = NULL ; streamer.tab_row_out = NULL ; streamer.cmax_123 = 0 ; streamer.rmax_123 = 0 ; streamer.cmax_235 = 0 ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mcxOptAnchorSortById(options, sizeof(options)/sizeof(mcxOptAnchor) -1) ; opts = mcxOptParse(options, (char**) argv, argc, 1, 0, &parseStatus) ; if (!opts) exit(0) ; mclx_app_init(stderr) ; mcxIOopen(xferr, EXIT_ON_FAIL) ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; int t = 0 ; switch(anch->id) { case MY_OPT_HELP : case MY_OPT_APROPOS : mcxOptApropos(stdout, me, syntax, 0, MCX_OPT_DISPLAY_SKIP, options) ; return 0 ; case MY_OPT_CLEANUP : cleanup = TRUE ; break ; case MY_OPT_EXPECT_VALUES : bits_stream_other |= MCLXIO_STREAM_EXPECT_VALUE ; break ; case MY_OPT_NW : dowrite = FALSE ; break ; case MY_OPT_DEBUG : bits_stream_other |= MCLXIO_STREAM_DEBUG | MCLXIO_STREAM_WARN ; break ; case MY_OPT_VERSION : app_report_version(me) ; return 0 ; case MY_OPT_WB : write_binary = TRUE ; break ; case MY_OPT_OUT_MX : mcxIOrenew(xfmx, opt->val, NULL) ; break ; case MY_OPT_CANONICALG : canonical |= COL_ON | ROW_ON ; break ; case MY_OPT_CANONICALC : canonical |= COL_ON ; break ; case MY_OPT_CANONICALR : canonical |= ROW_ON ; break ; case MY_OPT_SCRUB_DOMR : scrub |= MCLX_SCRUB_ROWS ; break ; case MY_OPT_SCRUB_DOMC : scrub |= MCLX_SCRUB_COLS ; break ; case MY_OPT_SCRUB_DOMG : scrub |= MCLX_SCRUB_GRAPH ; break ; case MY_OPT_CMAX : streamer.cmax_123 = atoi(opt->val) ; break ; case MY_OPT_CREQUIRE_235 : streamer.cmax_235 = atoi(opt->val) ; break ; case MY_OPT_RMAX : streamer.rmax_123 = atoi(opt->val) ; break ; case MY_OPT_DMAX : streamer.cmax_123 = atoi(opt->val) ; streamer.rmax_123 = streamer.cmax_123 ; break ; case MY_OPT_OUT_TABG : xfcachetabg = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_OUT_TABC : xfcachetabc = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_OUT_TABR : xfcachetabr = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_STRICT_TABG : t++ ; case MY_OPT_RESTRICT_TABG : t++ ; case MY_OPT_EXTEND_TABG : { xfusetabg = mcxIOnew(opt->val, "r") ; bits_stream_tabg |= t == 2 ? MCLXIO_STREAM_GTAB_STRICT : t == 1 ? MCLXIO_STREAM_GTAB_RESTRICT : MCLXIO_STREAM_GTAB_EXTEND ; break ; } case MY_OPT_STRICT_TABC : t++ ; case MY_OPT_RESTRICT_TABC : t++ ; case MY_OPT_EXTEND_TABC : { xfusetabc = mcxIOnew(opt->val, "r") ; bits_stream_tabc |= t == 2 ? MCLXIO_STREAM_CTAB_STRICT : t == 1 ? MCLXIO_STREAM_CTAB_RESTRICT : MCLXIO_STREAM_CTAB_EXTEND ; break ; } case MY_OPT_STRICT_TABR : t++ ; case MY_OPT_RESTRICT_TABR : t++ ; case MY_OPT_EXTEND_TABR : { xfusetabr = mcxIOnew(opt->val, "r") ; bits_stream_tabr |= t == 2 ? MCLXIO_STREAM_RTAB_STRICT : t == 1 ? MCLXIO_STREAM_RTAB_RESTRICT : MCLXIO_STREAM_RTAB_EXTEND ; break ; } case MY_OPT_PCK : mcxIOrenew(xfin, opt->val, NULL) ; bits_stream_input = MCLXIO_STREAM_PACKED ; break ; case MY_OPT_123 : mcxIOrenew(xfin, opt->val, NULL) ; bits_stream_input = MCLXIO_STREAM_123 ; break ; case MY_OPT_ETC_AI : mcxIOrenew(xfin, opt->val, NULL) ; bits_stream_input = MCLXIO_STREAM_ETC_AI ; BIT_OFF(bits_stream_other, MCLXIO_STREAM_SYMMETRIC) ; break ; case MY_OPT_SIF : mcxIOrenew(xfin, opt->val, NULL) ; bits_stream_input = MCLXIO_STREAM_SIF ; BIT_OFF(bits_stream_other, MCLXIO_STREAM_SYMMETRIC) ; break ; case MY_OPT_ETC : mcxIOrenew(xfin, opt->val, NULL) ; bits_stream_input = MCLXIO_STREAM_ETC ; BIT_OFF(bits_stream_other, MCLXIO_STREAM_SYMMETRIC) ; break ; case MY_OPT_235_AI : mcxIOrenew(xfin, opt->val, NULL) ; bits_stream_input = MCLXIO_STREAM_235_AI ; BIT_OFF(bits_stream_other, MCLXIO_STREAM_SYMMETRIC) ; break ; case MY_OPT_235 : mcxIOrenew(xfin, opt->val, NULL) ; bits_stream_input = MCLXIO_STREAM_235 ; BIT_OFF(bits_stream_other, MCLXIO_STREAM_SYMMETRIC) ; break ; case MY_OPT_ABC : mcxIOrenew(xfin, opt->val, NULL) ; bits_stream_input = MCLXIO_STREAM_ABC ; break ; case MY_OPT_STREAM_NEGLOG10 : bits_stream_other |= MCLXIO_STREAM_NEGLOGTRANSFORM | MCLXIO_STREAM_LOG10 ; break ; case MY_OPT_STREAM_NEGLOG : bits_stream_other |= MCLXIO_STREAM_NEGLOGTRANSFORM ; break ; case MY_OPT_STREAM_LOG : bits_stream_other |= MCLXIO_STREAM_LOGTRANSFORM ; break ; case MY_OPT_TRANSFORM : transform_spec = mcxTingNew(opt->val) ; break ; case MY_OPT_STREAM_TRANSFORM : stream_transform_spec = mcxTingNew(opt->val) ; break ; case MY_OPT_STREAM_SPLIT : BIT_OFF(bits_stream_other, MCLXIO_STREAM_SYMMETRIC) ; break ; case MY_OPT_STREAM_MIRROR : bits_stream_other |= MCLXIO_STREAM_MIRROR | MCLXIO_STREAM_SYMMETRIC ; break ; case MY_OPT_IMAGE : if (!strcmp(opt->val, "max")) symfunc = fltMax ; else if (!strcmp(opt->val, "add")) symfunc = fltAdd ; else if (!strcmp(opt->val, "mul")) symfunc = fltCross ; else if (!strcmp(opt->val, "min")) symfunc = fltMin ; else mcxDie(1, me, "unknown image mode %s", opt->val) ; break ; case MY_OPT_DEDUP : if (!strcmp(opt->val, "max")) merge = mclpMergeMax ; else if (!strcmp(opt->val, "min")) merge = mclpMergeMin ; else if (!strcmp(opt->val, "add")) merge = mclpMergeAdd ; else if (!strcmp(opt->val, "first")) merge = mclpMergeLeft ; else if (!strcmp(opt->val, "last")) merge = mclpMergeRight ; else mcxDie(1, me, "unknown dup mode %s", opt->val) ; break ; case MY_OPT_TRANSPOSE : transpose = TRUE ; break ; } } mcxOptFree(&opts) ; symmetric = bits_stream_other & MCLXIO_STREAM_SYMMETRIC ; if ((xfusetabc || xfusetabr || xfcachetabc || xfcachetabr) && symmetric) mcxDie(1, me, "(implied) symmetric mode precludes all tabc and tabr options") ; if ((xfusetabg || xfcachetabg) && !symmetric) mcxDie(1, me, "two domain mode precludes all symmetric tab options") ; if (scrub && canonical) mcxDie(1, me, "scrub and canonical options not yet working together") /* see further below */ ; if ( (xfusetabc || xfusetabr || xfusetabg || xfcachetabc || xfcachetabr || xfcachetabr) && (bits_stream_input & MCLXIO_STREAM_NUMERIC) ) mcxDie(1, me, "(implied) numeric mode currently precludes all tab options") ; if ( stream_transform_spec && !(stream_transform = mclgTFparse(NULL, stream_transform_spec)) ) mcxDie(1, me, "stream tf-spec does not parse") ; if ( transform_spec && !(transform = mclgTFparse(NULL, transform_spec)) ) mcxDie(1, me, "matrix tf-spec does not parse") ; if (symmetric && bits_stream_tabg) streamer.tab_sym_in = mclTabRead(xfusetabg, NULL, EXIT_ON_FAIL) , bits_stream_tabx = bits_stream_tabg ; else { if (bits_stream_tabc) streamer.tab_col_in = mclTabRead(xfusetabc, NULL, EXIT_ON_FAIL) ; if (bits_stream_tabr) streamer.tab_row_in = mclTabRead(xfusetabr, NULL, EXIT_ON_FAIL) ; bits_stream_tabx = bits_stream_tabc | bits_stream_tabr ; } mclxIOsetQMode("MCLXIOVERBOSITY", MCL_APP_VB_YES) ; mx = mclxIOstreamIn ( xfin , bits_stream_input | bits_stream_other | bits_stream_tabx , stream_transform ? mclgTFgetEdgePar(stream_transform) : NULL , merge , &streamer , EXIT_ON_FAIL ) ; if (!mx) mcxDie(1, me, "error occurred") ; mcxIOclose(xfin) ; if (symmetric && !mclxIsGraph(mx)) mcxErr(me, "error detected, symmetric on but domains differ (continuing)") ; if (transpose || symfunc) { mclx* tp = mclxTranspose(mx) ; if (symfunc) { mclx* sym = mclxBinary(mx, tp, symfunc) ; mclxFree(&mx) ; mclxFree(&tp) ; mx = sym ; } else mclxFree(&mx) , mx = tp ; } if (transform) mclgTFexec(mx, transform) ; if (scrub) mclxScrub(mx, scrub) /* map domains onto canonical domains * This is not the prettiest of functionality, in how it logically * works with other modalities. Below should be funcified to boot. * Below will fail if the matrix was scrubd, * as the transformation matrix can no longer deal with * tab domain. * Perhaps it is time to have some wrapper functions that * act on { mx, tab } combo. */ ; if (canonical) { mclx* dom_map_col = NULL, *dom_map_row = NULL, *dom_map_sym = NULL ; if (symmetric && !mclxColCanonical(mx)) dom_map_sym = mclxMakeMap ( mclvCopy(NULL, mx->dom_cols) , mclvCanonical(NULL, mx->dom_cols->n_ivps, 1.0) ) ; else if (!symmetric) { if ((canonical & COL_ON) && !mclxColCanonical(mx)) dom_map_col = mclxMakeMap ( mclvCopy(NULL, mx->dom_cols) , mclvCanonical(NULL, mx->dom_cols->n_ivps, 1.0) ) ; if ((canonical & ROW_ON) && !mclxRowCanonical(mx)) dom_map_row = mclxMakeMap ( mclvCopy(NULL, mx->dom_rows) , mclvCanonical(NULL, mx->dom_rows->n_ivps, 1.0) ) ; } if (dom_map_sym) { mclTab* tab_orig = streamer.tab_sym_out ; if (mclxMapCols(mx, dom_map_sym)) mcxDie(1, me, "error mapping column domains") ; if (mclxMapRows(mx, dom_map_sym)) mcxDie(1, me, "error mapping row domains") ; if (tab_orig && !(tab_map_sym = mclTabMap(tab_orig, dom_map_sym))) mcxDie(1, me, "could not map tab domain") ; } if (dom_map_col) { if (mclxMapCols(mx, dom_map_col)) mcxDie(1, me, "error mapping column domains") ; if ( streamer.tab_col_out && !(tab_map_col = mclTabMap(streamer.tab_col_out, dom_map_col)) ) mcxDie(1, me, "could not map cols") ; } if (dom_map_row) { if (mclxMapRows(mx, dom_map_row)) mcxDie(1, me, "error mapping row domains") ; if ( streamer.tab_row_out && !(tab_map_row = mclTabMap(streamer.tab_row_out, dom_map_row)) ) mcxDie(1, me, "could not map rows") ; } } if (dowrite) { if (write_binary) mclxbWrite(mx, xfmx, EXIT_ON_FAIL) ; else mclxWrite(mx, xfmx, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; } mcxIOclose(xfmx) /* fixme: the tab_map_sym check is ugly. It would be neater * to have a { mx, tabsym, tabcol, tabrow } tuple that is * kept consistent at all time. As it is, the consistency * semantics are spread like spaghetti. A heartening thought * though, it used to be ten times worse before * mclxIOstreamIn rewrite. */ ; if ( bits_stream_input & (MCLXIO_STREAM_ABC | MCLXIO_STREAM_ETC | MCLXIO_STREAM_ETC_AI | MCLXIO_STREAM_SIF) ) { mclTab* tab_sym = tab_map_sym ? tab_map_sym : streamer.tab_sym_out ; mclTab* tab_col = tab_map_col ? tab_map_col : streamer.tab_col_out ; mclTab* tab_row = tab_map_row ? tab_map_row : streamer.tab_row_out ;if (bits_stream_other & MCLXIO_STREAM_DEBUG) fprintf(stderr, "tab s=%p c=%p r=%p\n", (void*) tab_sym, (void*) tab_col, (void*) tab_row) ; if (symmetric && xfcachetabg && tab_sym) { mclTabWrite ( tab_sym , xfcachetabg , scrub & MCLX_SCRUB_COLS ? mx->dom_cols : NULL , RETURN_ON_FAIL ) ; mcxIOclose(xfcachetabg) ; if (!streamer.tab_sym_in) mcxLog(MCX_LOG_MODULE, me, "tab has %ld entries", (long) N_TAB(tab_sym)) ; else if (N_TAB(streamer.tab_sym_in) != N_TAB(tab_sym)) mcxLog ( MCX_LOG_MODULE , me , "tab went from %ld to %ld nodes" , (long) N_TAB(streamer.tab_sym_in) , (long) N_TAB(tab_sym) ) ; else mcxLog(MCX_LOG_MODULE, me, "tab same as before") ; } /* fixme funcify this to unify row and col cases (unless etc plays up) */ if (!symmetric && xfcachetabc) { if (bits_stream_input & MCLXIO_STREAM_ETC_AI) { mclTabWriteDomain(mx->dom_cols, xfcachetabc, RETURN_ON_FAIL) ; mcxIOclose(xfcachetabc) ; } else if (tab_col) { mclTabWrite ( tab_col , xfcachetabc , scrub & MCLX_SCRUB_COLS ? mx->dom_cols : NULL , RETURN_ON_FAIL ) ; mcxIOclose(xfcachetabc) ; if (!streamer.tab_col_in) mcxLog(MCX_LOG_MODULE, me, "coltab has %ld entries", (long) N_TAB(tab_col)) ; else if (N_TAB(streamer.tab_col_in) != N_TAB(tab_col)) mcxLog ( MCX_LOG_MODULE , me , "tabc went from %ld to %ld nodes" , (long) N_TAB(streamer.tab_col_in) , (long) N_TAB(tab_col) ) ; else mcxLog(MCX_LOG_MODULE, me, "tabc same as before") ; } } if (!symmetric && xfcachetabr && tab_row) { mclTabWrite ( tab_row , xfcachetabr , scrub & MCLX_SCRUB_ROWS ? mx->dom_rows : NULL , RETURN_ON_FAIL ) , mcxIOclose(xfcachetabr) ; if (!streamer.tab_row_in) mcxLog(MCX_LOG_MODULE, me, "tabr has %ld entries", (long) N_TAB(tab_row)) ; else if (N_TAB(streamer.tab_row_in) != N_TAB(tab_row)) mcxLog ( MCX_LOG_MODULE , me , "tabr went from %ld to %ld nodes" , (long) N_TAB(streamer.tab_row_in) , (long) N_TAB(tab_row) ) ; else mcxLog(MCX_LOG_MODULE, me, "tabr same as before") ; } mclTabFree(&(tab_sym)) ; mclTabFree(&(tab_col)) ; mclTabFree(&(tab_row)) ; } if (cleanup) { mclxFree(&mx) ; mclTabFree(&(streamer.tab_sym_in)) ; mclTabFree(&(streamer.tab_sym_out)) ; mclTabFree(&(streamer.tab_col_in)) ; mclTabFree(&(streamer.tab_col_out)) ; mclTabFree(&(streamer.tab_row_in)) ; mclTabFree(&(streamer.tab_row_out)) ; mcxTingFree(&stream_transform_spec) ; mclgTFfree(&stream_transform) ; mclgTFfree(&transform) ; } mcxIOfree(&xfmx) ; mcxIOfree(&xfcachetabc) ; mcxIOfree(&xfcachetabr) ; mcxIOfree(&xfcachetabg) ; mcxIOfree(&xfusetabc) ; mcxIOfree(&xfusetabr) ; mcxIOfree(&xferr) ; mcxIOfree(&xfin) ; mclxFree(&mx) ; return 0 ; } mcl-12-135/src/shmx/Makefile.in0000644000402500021140000005167411754271037013130 00000000000000# Makefile.in generated by automake 1.11 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/include/include.am bin_PROGRAMS = mcx$(EXEEXT) mcxsubs$(EXEEXT) mcxmap$(EXEEXT) \ mcxassemble$(EXEEXT) mcxarray$(EXEEXT) mcxdump$(EXEEXT) \ mcxload$(EXEEXT) mcxrand$(EXEEXT) noinst_PROGRAMS = mcxtest$(EXEEXT) mcxminusmeet$(EXEEXT) \ mcxmm$(EXEEXT) subdir = src/shmx ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) am_mcx_OBJECTS = mcx.$(OBJEXT) mcxconvert.$(OBJEXT) mcxquery.$(OBJEXT) \ mcxdiameter.$(OBJEXT) mcxclcf.$(OBJEXT) mcxerdos.$(OBJEXT) \ mcxcollect.$(OBJEXT) mcxtab.$(OBJEXT) mcxalter.$(OBJEXT) mcx_OBJECTS = $(am_mcx_OBJECTS) mcx_LDADD = $(LDADD) mcx_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxarray_OBJECTS = mcxarray.$(OBJEXT) mcxarray_OBJECTS = $(am_mcxarray_OBJECTS) mcxarray_LDADD = $(LDADD) mcxarray_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxassemble_OBJECTS = mcxassemble.$(OBJEXT) mcxassemble_OBJECTS = $(am_mcxassemble_OBJECTS) mcxassemble_LDADD = $(LDADD) mcxassemble_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxdump_OBJECTS = mcxdump.$(OBJEXT) mcxdump_OBJECTS = $(am_mcxdump_OBJECTS) mcxdump_LDADD = $(LDADD) mcxdump_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxload_OBJECTS = mcxload.$(OBJEXT) mcxload_OBJECTS = $(am_mcxload_OBJECTS) mcxload_LDADD = $(LDADD) mcxload_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxmap_OBJECTS = mcxmap.$(OBJEXT) mcxmap_OBJECTS = $(am_mcxmap_OBJECTS) mcxmap_LDADD = $(LDADD) mcxmap_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxminusmeet_OBJECTS = mcxminusmeet.$(OBJEXT) mcxminusmeet_OBJECTS = $(am_mcxminusmeet_OBJECTS) mcxminusmeet_LDADD = $(LDADD) mcxminusmeet_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxmm_OBJECTS = mcxmm.$(OBJEXT) mcxmm_OBJECTS = $(am_mcxmm_OBJECTS) mcxmm_LDADD = $(LDADD) mcxmm_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxrand_OBJECTS = mcxrand.$(OBJEXT) mcxrand_OBJECTS = $(am_mcxrand_OBJECTS) mcxrand_LDADD = $(LDADD) mcxrand_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxsubs_OBJECTS = mcxsubs.$(OBJEXT) mcxsubs_OBJECTS = $(am_mcxsubs_OBJECTS) mcxsubs_LDADD = $(LDADD) mcxsubs_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a am_mcxtest_OBJECTS = mcxtest.$(OBJEXT) mcxtest_OBJECTS = $(am_mcxtest_OBJECTS) mcxtest_LDADD = $(LDADD) mcxtest_DEPENDENCIES = ../mcl/libmcl.a ../clew/libclew.a \ ../gryphon/libgryphon.a ../impala/libimpala.a \ ../../util/libutil.a DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/autofoo/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(mcx_SOURCES) $(mcxarray_SOURCES) $(mcxassemble_SOURCES) \ $(mcxdump_SOURCES) $(mcxload_SOURCES) $(mcxmap_SOURCES) \ $(mcxminusmeet_SOURCES) $(mcxmm_SOURCES) $(mcxrand_SOURCES) \ $(mcxsubs_SOURCES) $(mcxtest_SOURCES) DIST_SOURCES = $(mcx_SOURCES) $(mcxarray_SOURCES) \ $(mcxassemble_SOURCES) $(mcxdump_SOURCES) $(mcxload_SOURCES) \ $(mcxmap_SOURCES) $(mcxminusmeet_SOURCES) $(mcxmm_SOURCES) \ $(mcxrand_SOURCES) $(mcxsubs_SOURCES) $(mcxtest_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PTHREAD_CC = @PTHREAD_CC@ PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ PTHREAD_LIBS = @PTHREAD_LIBS@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ acx_pthread_config = @acx_pthread_config@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir) LDADD = ../mcl/libmcl.a ../clew/libclew.a ../gryphon/libgryphon.a ../impala/libimpala.a ../../util/libutil.a AM_LDFLAGS = -lm EXTRA_DIST = fake mcx.h mcxconvert.h mcxminusmeet.c mcxquery.h mcxdiameter.h mcxclcf.h mcxerdos.h mcxcollect.h mcxtab.h mcxalter.h mcxassemble_SOURCES = mcxassemble.c mcxsubs_SOURCES = mcxsubs.c mcxmap_SOURCES = mcxmap.c mcxdump_SOURCES = mcxdump.c mcxtest_SOURCES = mcxtest.c mcxarray_SOURCES = mcxarray.c mcxload_SOURCES = mcxload.c mcxrand_SOURCES = mcxrand.c mcxmm_SOURCES = mcxmm.c mcxminusmeet_SOURCES = mcxminusmeet.c mcx_SOURCES = mcx.c mcxconvert.c mcxquery.c mcxdiameter.c mcxclcf.c mcxerdos.c mcxcollect.c mcxtab.c mcxalter.c all: all-am .SUFFIXES: .SUFFIXES: .c .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/include/include.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/shmx/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu src/shmx/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p; \ then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) clean-noinstPROGRAMS: -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) mcx$(EXEEXT): $(mcx_OBJECTS) $(mcx_DEPENDENCIES) @rm -f mcx$(EXEEXT) $(LINK) $(mcx_OBJECTS) $(mcx_LDADD) $(LIBS) mcxarray$(EXEEXT): $(mcxarray_OBJECTS) $(mcxarray_DEPENDENCIES) @rm -f mcxarray$(EXEEXT) $(LINK) $(mcxarray_OBJECTS) $(mcxarray_LDADD) $(LIBS) mcxassemble$(EXEEXT): $(mcxassemble_OBJECTS) $(mcxassemble_DEPENDENCIES) @rm -f mcxassemble$(EXEEXT) $(LINK) $(mcxassemble_OBJECTS) $(mcxassemble_LDADD) $(LIBS) mcxdump$(EXEEXT): $(mcxdump_OBJECTS) $(mcxdump_DEPENDENCIES) @rm -f mcxdump$(EXEEXT) $(LINK) $(mcxdump_OBJECTS) $(mcxdump_LDADD) $(LIBS) mcxload$(EXEEXT): $(mcxload_OBJECTS) $(mcxload_DEPENDENCIES) @rm -f mcxload$(EXEEXT) $(LINK) $(mcxload_OBJECTS) $(mcxload_LDADD) $(LIBS) mcxmap$(EXEEXT): $(mcxmap_OBJECTS) $(mcxmap_DEPENDENCIES) @rm -f mcxmap$(EXEEXT) $(LINK) $(mcxmap_OBJECTS) $(mcxmap_LDADD) $(LIBS) mcxminusmeet$(EXEEXT): $(mcxminusmeet_OBJECTS) $(mcxminusmeet_DEPENDENCIES) @rm -f mcxminusmeet$(EXEEXT) $(LINK) $(mcxminusmeet_OBJECTS) $(mcxminusmeet_LDADD) $(LIBS) mcxmm$(EXEEXT): $(mcxmm_OBJECTS) $(mcxmm_DEPENDENCIES) @rm -f mcxmm$(EXEEXT) $(LINK) $(mcxmm_OBJECTS) $(mcxmm_LDADD) $(LIBS) mcxrand$(EXEEXT): $(mcxrand_OBJECTS) $(mcxrand_DEPENDENCIES) @rm -f mcxrand$(EXEEXT) $(LINK) $(mcxrand_OBJECTS) $(mcxrand_LDADD) $(LIBS) mcxsubs$(EXEEXT): $(mcxsubs_OBJECTS) $(mcxsubs_DEPENDENCIES) @rm -f mcxsubs$(EXEEXT) $(LINK) $(mcxsubs_OBJECTS) $(mcxsubs_LDADD) $(LIBS) mcxtest$(EXEEXT): $(mcxtest_OBJECTS) $(mcxtest_DEPENDENCIES) @rm -f mcxtest$(EXEEXT) $(LINK) $(mcxtest_OBJECTS) $(mcxtest_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcx.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxalter.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxarray.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxassemble.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxclcf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxcollect.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxconvert.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxdiameter.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxdump.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxerdos.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxload.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxmap.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxminusmeet.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxmm.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxquery.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxrand.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxsubs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxtab.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcxtest.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) installdirs: for dir in "$(DESTDIR)$(bindir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-binPROGRAMS clean-generic clean-noinstPROGRAMS \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-binPROGRAMS install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-binPROGRAMS .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ clean-generic clean-noinstPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-tags distdir dvi \ dvi-am html html-am info info-am install install-am \ install-binPROGRAMS install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-binPROGRAMS # AM_LDFLAGS = -lm -lunwind -ltcmalloc # leave: assemble erdos array rand subs # assimilate: map dump test array load minusmeet # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: mcl-12-135/src/shmx/mcxalter.h0000644000402500021140000000105511141406462013027 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef mcx_alter_h__ #define mcx_alter_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookAlter ( void ) ; #endif mcl-12-135/src/shmx/mcxmm.c0000644000402500021140000003221011531205227012320 00000000000000/* (C) Copyright 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "impala/io.h" #include "impala/matrix.h" #include "impala/tab.h" #include "impala/stream.h" #include "impala/ivp.h" #include "impala/compose.h" #include "impala/vector.h" #include "impala/app.h" #include "impala/iface.h" #include "impala/pval.h" #include "util/types.h" #include "util/minmax.h" #include "util/ding.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/equate.h" #include "util/rand.h" #include "util/opt.h" #include "mcl/proc.h" #include "mcl/procinit.h" #include "mcl/alg.h" #include "clew/clm.h" #include "clew/cat.h" const char* usagelines[]; const char* me = "mcxmm"; const char* syntax = "Usage: mcxmm { -imx -dag -child-diff-lq -parent-diff-gq }"; void usage ( const char** ) ; enum { MY_OPT_IMX , MY_OPT_TAB , MY_OPT_QUERY , MY_OPT_TEST_CYCLE , MY_OPT_TEST_CROSS , MY_OPT_DAG_ATTR , MY_OPT_DAG_REDUCE , MY_OPT_DAG_DIFF , MY_OPT_PARENT_DIFF_GQ , MY_OPT_CHILD_DIFF_LQ , MY_OPT_VERSION , MY_OPT_HELP } ; mcxOptAnchor options[] = { { "-h" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "input matrix to be converted to dag" } , { "-dag-attr" , MCX_OPT_HASARG , MY_OPT_DAG_ATTR , "" , "file to write dag attributes to" } , { "--test-cycle" , MCX_OPT_DEFAULT , MY_OPT_TEST_CYCLE , NULL , "test whether input has cycles" } , { "--test-xmin" , MCX_OPT_DEFAULT , MY_OPT_TEST_CROSS , NULL , "test whether input satisfies cross minimum criterion" } , { "-dag-reduce" , MCX_OPT_HASARG , MY_OPT_DAG_REDUCE , "" , "file to write reduced dag to" } , { "-dag-diff" , MCX_OPT_HASARG , MY_OPT_DAG_DIFF , "" , "create dag from subset-diff matrix" } , { "-q" , MCX_OPT_HASARG , MY_OPT_QUERY , "mcl node id" , "option of unknown function" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "HMM tab file" } , { "-child-diff-lq" , MCX_OPT_HASARG , MY_OPT_CHILD_DIFF_LQ , "" , "smaller HMM should have at most of its nodes not in larger" } , { "-parent-diff-gq" , MCX_OPT_HASARG , MY_OPT_PARENT_DIFF_GQ , "" , "larger HMM should have at least of its nodes not in smaller" } , { "--help" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "--version" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_VERSION , NULL , "print version information" } , { NULL, 0, 0, NULL, NULL } } ; /* TODO starting nodes might be generally nodes that have hight out/in ratio. For nodes with high out/in ratio the 'in' part is suspect. */ mcxstatus fire_node_next ( const mclx* mx , mclv* seen , mclv *todo , dim start ) { mclv* next = mclvInit(NULL) ; dim i ; mcxstatus s = STATUS_OK ;if(0)fprintf(stderr, "\tnext layer has %d nodes\n", (int) todo->n_ivps) ; for (i=0; in_ivps;i++) { mclv* ls = mclxGetVector(mx, todo->ivps[i].idx, RETURN_ON_FAIL, NULL) ; if (ls) { mcldMerge(next, ls, next) ; if (mclvGetIvp(ls, start, NULL)) { s = STATUS_FAIL ; break ; } } } mcldMerge(seen, todo, seen) /* add todo to seen */ ; mcldMinus(next, seen, next) /* remove seen from next */ ; mclvCopy(todo, next) /* copy next to todo */ ; mclvFree(&next) ; return s ; } ofs fire_node ( const mclx* mx , dim i , mclv** seenpp ) { mclv* v = mx->cols+i ; mclv* seen = mclvInsertIdx(NULL, v->vid, 1.0) ; mclv* todo = mclvClone(v) ; mcxstatus s = STATUS_OK ; dim level = 0 ;if(0)fprintf(stderr, "node %d\n", (int) i) ; while(todo->n_ivps && !s) s = fire_node_next(mx, seen, todo, i) , level++ ; mclvFree(&todo) ; if (seenpp) seenpp[0] = seen ; else mclvFree(&seen) ; return s ? -1 : level ; } void test_cross_ratio ( mclx* mx ) { dim i, j, n = 0 ; for (i=0;icols+i ; double selfv = mclvSelf(v) ; for (j=0;jn_ivps;j++) { mclv* w = mclxGetVector(mx, v->ivps[j].idx, EXIT_ON_FAIL, NULL) ; double arc = v->ivps[j].val ; double selfw= mclvSelf(w) ; double cra = mclvIdxVal(w, v->vid, NULL) ; double s = MCX_MIN(selfv, selfw) ; if (s > arc || s > cra) fprintf ( stdout , "%u\t%u\t%g\t%g\t%g\t%g\n" , (unsigned) v->vid , (unsigned) w->vid , arc , cra , selfv , selfw ) ; n++ ; } } fprintf(stderr, "tested %u entries\n", (unsigned) n) ; } void test_for_cycles ( mclx* mx ) { mclx* tp = mclxTranspose(mx) ; mclv* fwd = mclxColSizes(mx, MCL_VECTOR_COMPLETE) ; mclv* bwd = mclxColSizes(tp, MCL_VECTOR_COMPLETE) ; dim i, n_cycle = 0 ; for (i=0;in_ivps;i++) { ofs level_up = fire_node(mx, i, NULL) ; ofs level_dn = fire_node(tp, i, NULL) ; if (level_up < 0 || level_dn < 0) fprintf(stderr, " [%lu cycle]", (ulong) i) , n_cycle++ ; } if (n_cycle) fputc('\n', stderr) ; mclvFree(&bwd) ; mclvFree(&fwd) ; mclxFree(&tp) ; fprintf ( stderr , "file with %lu edges has %d cycles\n" , (ulong) mclxNrofEntries(mx) , (int) n_cycle ) ; exit(n_cycle ? 1 : 0) ; } void get_attr ( mclx* mx , mclTab* tab , mcxIO* xfattr ) { mclx* tp = mclxTranspose(mx) ; mclx* G = mclxAdd(mx, tp) ; mclv* fwd = mclxColSizes(mx, MCL_VECTOR_COMPLETE) ; mclv* bwd = mclxColSizes(tp, MCL_VECTOR_COMPLETE) ; mclx* cc = clmComponents(G, NULL) ; mclx* node2cc = mclxTranspose(cc) ; dim i, n_cycle = 0 ; fprintf(xfattr->fp, "node\tup\tdown\tnparent\tnchild\tndag\n") ; for (i=0;in_ivps;i++) { mclv* seenpp1 = NULL, *seenpp2 = NULL ; ofs level_up = fire_node(mx, i, &seenpp1) ; ofs level_dn = fire_node(tp, i, &seenpp2) ; ofs ccidx = node2cc->cols[i].ivps[0].idx ; dim ccsize = cc->cols[ccidx].n_ivps ; mclvFree(&seenpp1) ; mclvFree(&seenpp2) ; if ((i+1) % 500 == 0) fputc('.', stderr) ; if (tab) { const char* label = mclTabGet(tab, mx->cols[i].vid, NULL) ; fputs(label, xfattr->fp) ; fputc('\t', xfattr->fp) ; } else fprintf ( xfattr->fp , "%lu\t" , (ulong) mx->cols[i].vid ) ; fprintf ( xfattr->fp , "%ld\t%ld\t%lu\t%lu\t%lu\n" , (long) level_up , (long) level_dn , (ulong) fwd->ivps[i].val , (ulong) bwd->ivps[i].val , (ulong) ccsize ) ; if (level_up < 0 || level_dn < 0) fputc('.', stderr) , n_cycle++ ; } if (n_cycle) fputc('\n', stderr) ; mclvFree(&bwd) ; mclvFree(&fwd) ; mclxFree(&tp) ; } #if 0 void dump_label ( mclTab* tab , dim vid , int level ) { const char* label = mclTabGet(tab, vid, NULL) ; dim i ; for (i=0;ival = 2.0 ; for (i=0;in_ivps;i++) { mclv* v = mclxGetVector(mx, v->ivps[i].idx, EXIT_ON_FAIL, NULL) ; v->val = 2.0 ; dump_label(tab, v, level) ; } ; } /* TODO: hmm.content.subset2 vid values can denote #proteins hitting */ void dump_dag ( mclx* mx , mclTab* tab ) { mclx* mx = mclxTranspose(mx) ; dim i ; for (i=0;icols+i ; if (v->val < 1.5) { dump_label(tab, v->vid, 0) ; walk_dag(mx, v, 1) ; } } } #endif void dag_diff_select ( mclx* mx , mclTab* tab , mcxIO* xfdiff , double child_diff_lq , double parent_diff_gq ) { dim i ; mclx* dag = mclxAllocClone(mx) ; for (i=0;icols+i ; dim j ; for (j=0;jn_ivps;j++) { dim idx = v->ivps[j].idx ; double valv = v->ivps[j].val ; mclv* t = mclxGetVector(mx, idx, EXIT_ON_FAIL, NULL) ; mclp* p = mclvGetIvp(t, v->vid, NULL) ; double valt = p ? p->val : 0.0 ; double delta = valv - valt ; double lg = valv, sm = valt ; double child_diff, parent_diff ; int v_is_child = 0 ; if (delta < 0) delta = -delta , lg=valt, sm=valv , v_is_child = 1 ; child_diff = sm ; parent_diff = lg ;if(0 && i==111) fprintf(stderr, "nb %d delta %g\n", (int) idx, delta) ; if (child_diff > child_diff_lq || parent_diff < parent_diff_gq) NOTHING ; else { if (v_is_child) mclvInsertIdx(dag->cols+i, idx, delta) ; else mclvInsertIdx(dag->cols+(t-mx->cols), v->vid, delta) ; } } } ; mclxWrite(dag, xfdiff, MCLXIO_VALUE_GETENV, EXIT_ON_FAIL) ; mclxFree(&dag) ; } int main ( int argc , const char* argv[] ) { mcxIO* xfdagreduce = NULL, *xfattr = NULL, *xfdiff = NULL ; double child_diff_lq = 0.2 ; double parent_diff_gq = 0.4 ; mcxIO* xfimx = mcxIOnew("-", "r"), *xfdag = NULL, *xftab = NULL ; mclTab* tab = NULL ; int q = -1 ; mclx* mx ; unsigned char test_mode = 0 ; mcxstatus parseStatus = STATUS_OK ; mcxOption* opts, *opt ; mcxOptAnchorSortById(options, sizeof(options)/sizeof(mcxOptAnchor) -1) ; if (!(opts = mcxOptParse(options, (char**) argv, argc, 1, 0, &parseStatus))) exit(0) ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclxIOsetQMode("MCLXIOVERBOSITY", MCL_APP_VB_YES) ; mclx_app_init(stderr) ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; switch(anch->id) { case MY_OPT_HELP : mcxOptApropos(stdout, me, syntax, 0, 0, options) ; return 0 ; case MY_OPT_VERSION : app_report_version(me) ; return 0 ; case MY_OPT_TEST_CYCLE : test_mode = 'c' ; break ; case MY_OPT_TEST_CROSS : test_mode = 'x' ; break ; case MY_OPT_DAG_ATTR : xfattr = mcxIOnew(opt->val, "w") ; mcxIOopen(xfattr, EXIT_ON_FAIL) ; break ; case MY_OPT_DAG_DIFF : xfdiff = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_DAG_REDUCE : xfdagreduce = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_CHILD_DIFF_LQ : child_diff_lq = atof(opt->val) ; break ; case MY_OPT_PARENT_DIFF_GQ : parent_diff_gq = atof(opt->val) ; break ; case MY_OPT_QUERY : q = atoi(opt->val) ; break ; case MY_OPT_TAB : xftab = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_IMX : mcxIOnewName(xfimx, opt->val) ; break ; } } ; if (xfimx) mx = mclxRead(xfimx, EXIT_ON_FAIL) ; else mcxDie(1, me, "need -imx") ; if (xftab) tab = mclTabRead(xftab, mx->dom_cols, EXIT_ON_FAIL) ; if (test_mode == 'c') test_for_cycles(mx) ; else if (test_mode == 'x') test_cross_ratio(mx) ; else if (xfattr) get_attr(mx, tab, xfattr) ; else if (xfdagreduce) { mclxComposeHelper* ch = mclxComposePrepare(mx, mx) ; dim i ; for (i=0;icols+i ; mclv* out = mclxVectorCompose(mx, in, NULL, ch) ; mcldMinus(in, out, in) ; mclvFree(&out) ; } mclxWrite(mx, xfdagreduce, MCLXIO_VALUE_GETENV, EXIT_ON_FAIL) ; mclxComposeRelease(&ch) ; } else if (xfdiff) dag_diff_select(mx, tab, xfdiff, child_diff_lq, parent_diff_gq) ; mclxFree(&mx) ; mcxIOfree(&xfimx) ; mcxIOfree(&xfdag) ; mcxIOfree(&xfattr) ; mcxIOfree(&xfdagreduce) ; return 0 ; } const char* usagelines[] = { NULL } ; mcl-12-135/src/shmx/mcxcollect.c0000644000402500021140000002365111531205133013341 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* fixme * with paste check nr of columns * the code internally uses convention for 'columns' member * e.g. first in array is special (may contain column header) * and !paste + two-column is special. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "mcx.h" #include "impala/io.h" #include "impala/matrix.h" #include "impala/tab.h" #include "impala/stream.h" #include "util/types.h" #include "util/io.h" #include "util/err.h" #include "util/opt.h" #include "gryphon/path.h" const char* me = "mcx collect"; enum { MY_OPT_OUT = MCX_DISP_UNUSED , MY_OPT_TAB , MY_OPT_SUMMARY , MY_OPT_2COLUMN , MY_OPT_PASTE , MY_OPT_MATRIX , MY_OPT_NO_HEADER } ; mcxOptAnchor collectOptions[] = { { "-o" , MCX_OPT_HASARG , MY_OPT_OUT , "" , "output file name" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "specify tab file to map collect indices to labels, if appropriate" } , { "--summary" , MCX_OPT_DEFAULT , MY_OPT_SUMMARY , NULL , "as final step output maximum, median, minimum, and average" } , { "--add-column" , MCX_OPT_DEFAULT , MY_OPT_2COLUMN , NULL , "add two-column files (currently mcx diameter/ctty-derived)" } , { "--add-matrix" , MCX_OPT_DEFAULT , MY_OPT_MATRIX , NULL , "add matrix files (currently mcxarray derived)" } , { "--paste" , MCX_OPT_DEFAULT , MY_OPT_PASTE , NULL , "paste columns" } , { "--no-header" , MCX_OPT_DEFAULT , MY_OPT_NO_HEADER , NULL , "files contain column headers" } , { NULL, 0, MCX_DISP_UNUSED, NULL, NULL } } ; static mcxIO* xftab_g = (void*) -1; static mcxmode summary_g = -1; static mcxbool header_g = -1; static mcxmode collect_g = -1; static const char* out_g = (void*) -1; static mcxstatus collectInit ( void ) { xftab_g = NULL ; summary_g = 0 ; collect_g = 0 ; header_g = TRUE ; out_g = "-" ; return STATUS_OK ; } static mcxstatus collectArgHandle ( int optid , const char* val ) { switch(optid) { case MY_OPT_TAB : xftab_g = mcxIOnew(val, "r") ; break ; case MY_OPT_OUT : out_g = val ; break ; case MY_OPT_PASTE : collect_g = 'p' ; break ; case MY_OPT_NO_HEADER : header_g = FALSE ; break ; case MY_OPT_MATRIX : collect_g = 'm' ; break ; case MY_OPT_2COLUMN : collect_g = 'c' ; break ; case MY_OPT_SUMMARY : summary_g = 1 ; break ; default : mcxExit(1) ; } ; return STATUS_OK ; } typedef struct { const char* label ; double val ; mcxTing* columns ; } aggr ; int aggr_cmp_val(const void* a1, const void* a2) { const aggr* ag1 = a1, *ag2 = a2 ; return ag1->val > ag2->val ? 1 : ag1->val < ag2->val ? -1 : 0 ; } static dim do_a_file ( aggr** collectpp , const char* fname , dim collect_n ) { mcxIO* xf = mcxIOnew(fname, "r") ; mcxTing* buf = mcxTingEmpty(NULL, 100) ; mcxTing* lbl = mcxTingEmpty(NULL, 100) ; mcxstatus status = STATUS_OK ; aggr* collect = *collectpp ; dim ct = 0, collect_alloc = 0 ; if (!collect_n) collect_alloc = 100 , collect = mcxNAlloc(collect_alloc, sizeof collect[0], NULL, EXIT_ON_FAIL) ; mcxIOopen(xf, EXIT_ON_FAIL) ; while (STATUS_OK == (status = mcxIOreadLine(xf, buf, MCX_READLINE_CHOMP))) { double val ; const char* tabchar = NULL ; mcxbool get_header = collect_g != 'p' && !ct ? TRUE : FALSE ; mcxTingEnsure(lbl, buf->len) /* if header_g && !ct && !paste create/check label */ /* body of this while loop does too many things, refactor */ ; if (collect_g == 'p' || get_header) { if (!(tabchar = strchr(buf->str, '\t'))) mcxDie(1, me, "paste error at line %d file %s (no tab)", (int) xf->lc, fname) ; mcxTingNWrite(lbl, buf->str, tabchar - buf->str) ; } else { if (2 != sscanf(buf->str, "%s%lg", lbl->str, &val)) mcxDie(1, me, "parse error at line %d file %s", (int) xf->lc, fname) ; lbl->len = strlen(lbl->str) ; } if (!collect_n) { if (ct >= collect_alloc) { dim collect_realloc = collect_alloc * 1.44 ; collect = mcxNRealloc(collect, collect_realloc, collect_alloc, sizeof collect[0], NULL, EXIT_ON_FAIL) ; collect_alloc = collect_realloc ; } collect[ct].label = mcxTingStr(lbl) ; collect[ct].val = collect_g == 'p' || get_header ? 0.0 : val ; collect[ct].columns = collect_g == 'p' || get_header ? mcxTingNew(tabchar + (get_header ? 1 : 0)) : NULL ; } else { if (ct >= collect_n) mcxDie(1, me, "additional lines in file %s", fname) ; if (strcmp(collect[ct].label, lbl->str)) mcxDie ( 1 , me , "label conflict %s/%s at line %d in file %s" , collect[ct].label , lbl->str , (int) xf->lc, fname ) ; if (get_header) /* only need to check identity */ { if (strcmp(tabchar+1, collect[ct].columns->str)) mcxDie(1, me, "different columns <%s> and <%s>", collect[ct].columns->str, tabchar+1) ; } else if (collect_g == 'p') /* tack it on */ mcxTingNAppend(collect[ct].columns, tabchar, buf->len - lbl->len) ; else collect[ct].val += val ; } ct++ ; } if (collect_n) { if (ct != collect_n) mcxDie(1, me, "not enough lines in file %s", fname) ; } else { if (!ct) mcxDie(1, me, "empty file(s)") ; *collectpp = collect ; } mcxIOfree(&xf) ; return ct ; } static mcxstatus collectMain ( int argc , const char* argv[] ) { aggr* collect = NULL ; int a ; dim i, collect_n = 0 ; mclTab* tab = NULL ; double avg = 0.0 ; mclx* aggr = NULL, *mx = NULL /* mcxHash* map = NULL */ ; mcxIO* xfout = mcxIOnew(out_g, "w") ; mcxIOopen(xfout, EXIT_ON_FAIL) ; if (xftab_g) tab = mclTabRead(xftab_g, NULL, EXIT_ON_FAIL) /* map not used; perhaps someday we want to map labels to indexes? * in that case, we could also simply reverse the tab when reading .. , map = mclTabHash(tab) */ ; if (!collect_g) mcxDie(1, me, "require one of --paste, --add-column, --add-matrix") ; if (argc) { if (collect_g == 'm') { mcxIO* xf = mcxIOnew(argv[0], "r") ; mcxIOopen(xf, EXIT_ON_FAIL) ; aggr = mclxRead(xf, EXIT_ON_FAIL) ; mcxIOfree(&xf) ; } else collect_n = do_a_file(&collect, argv[0], 0) ; } if (tab && collect_n != N_TAB(tab) + (header_g ? 1 : 0)) mcxErr ( me , "tab has differing size (%lu vs %lu), continuing anyway" , (ulong) N_TAB(tab) , (ulong) (collect_n ? collect_n -1 : 0) ) ; for (a=1;afp, "%s\t%s\n", lb, collect[i].columns->str) ; continue ; } if (tab && (!header_g || i > 0)) { unsigned u = atoi(lb) ; lb = mclTabGet(tab, u, NULL) ; if (TAB_IS_NA(tab, lb)) mcxDie(1, me, "no label found for index %ld - abort", (long) u) ; } if (summary_g) avg += collect[i].val ; else { if (collect_g == 'p') fprintf(xfout->fp, "%s%s\n", lb, collect[i].columns->str) ; else fprintf(xfout->fp, "%s\t%.8g\n", lb, collect[i].val) ; } } if (summary_g && collect_n) { dim middle1 = (collect_n-1)/2, middle2 = collect_n/2 ; qsort(collect, collect_n, sizeof collect[0], aggr_cmp_val) ; avg /= collect_n ; fprintf /* --summary option is a bit rubbish interface-wise */ ( xfout->fp , "%g %g %g %g\n" , collect[0].val , (collect[middle1].val + collect[middle2].val) / 2 , collect[collect_n-1].val , avg ) ; } return STATUS_OK ; } static mcxDispHook collectEntry = { "collect" , "collect [files]" , collectOptions , sizeof(collectOptions)/sizeof(mcxOptAnchor) - 1 , collectArgHandle , collectInit , collectMain , 1 , -1 , MCX_DISP_DEFAULT } ; mcxDispHook* mcxDispHookCollect ( void ) { return &collectEntry ; } mcl-12-135/src/shmx/mcxtab.h0000644000402500021140000000104711100365117012463 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef mcx_tab_h__ #define mcx_tab_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookTab ( void ) ; #endif mcl-12-135/src/shmx/mcxquery.h0000644000402500021140000000104511270377313013071 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef mcx_q_h__ #define mcx_q_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookquery ( void ) ; #endif mcl-12-135/src/shmx/mcxcollect.h0000644000402500021140000000106311033751610013342 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef mcx_collect_h__ #define mcx_collect_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookCollect ( void ) ; #endif mcl-12-135/src/shmx/mcxdiameter.c0000644000402500021140000006407411756274453013536 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. * * NOTE * this file implements both /diameter/ and /ctty/ (centrality) * functionality for mcx. */ /* TODO * - Handle components. * - Clean up diameter/ctty organization. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "mcx.h" #include "util/types.h" #include "util/ding.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/opt.h" #include "util/compile.h" #include "util/minmax.h" #include "impala/matrix.h" #include "impala/tab.h" #include "impala/io.h" #include "impala/stream.h" #include "impala/app.h" #include "clew/clm.h" #include "gryphon/path.h" static const char* mediam = "mcx diameter"; static const char* mectty = "mcx ctty"; /* this aids in finding heuristically likely starting points * for long shortest paths, by looking at dead ends * in the lattice. * experimental, oefully underdocumented. */ static dim diameter_rough ( mclv* vec , mclx* mx , u8* rough_scratch , long* rough_priority ) { mclv* curr = mclvInsertIdx(NULL, vec->vid, 1.0) ; mclpAR* par = mclpARensure(NULL, 1024) ; dim d = 0, n_dead_ends = 0, n_dead_ends_res = 0 ; memset(rough_scratch, 0, N_COLS(mx)) ; rough_scratch[vec->vid] = 1 /* seen */ ; rough_priority[vec->vid] = -1 /* remove from priority list */ ; while (1) { mclp* currivp = curr->ivps ; dim t ; mclpARreset(par) ; while (currivp < curr->ivps + curr->n_ivps) { mclv* ls = mx->cols+currivp->idx ; mclp* newivp = ls->ivps ; int hit = 0 ; while (newivp < ls->ivps + ls->n_ivps) { u8* tst = rough_scratch+newivp->idx ; if (!*tst || *tst & 2) { if (!*tst) mclpARextend(par, newivp->idx, 1.0) ; *tst = 2 ; hit = 1 ; } newivp++ ; } if (!hit && rough_priority[currivp->idx] >= 0) rough_priority[currivp->idx] += d+1 , n_dead_ends_res++ ; else if (!hit) n_dead_ends++ /* ,fprintf(stderr, "[%ld->%ld]", (long) currivp->idx, (long) rough_priority[currivp->idx]) */ ; #if 0 if (currivp->idx == 115 || currivp->idx == 128) fprintf(stdout, "pivot %d node %d d %d dead %d pri %d\n", (int) vec->vid, (int) currivp->idx, d, (int) (1-hit), (int) rough_priority[currivp->idx]) #endif ; currivp++ ; } if (!par->n_ivps) break ; d++ ; mclvFromIvps(curr, par->ivps, par->n_ivps) ; for (t=0;tn_ivps;t++) rough_scratch[curr->ivps[t].idx] = 1 ; } mclvFree(&curr) ; mclpARfree(&par) ;if(0)fprintf(stdout, "deadends %d / %d\n", (int) n_dead_ends, (int) n_dead_ends_res) ; return d ; } typedef struct { ofs node_idx ; double n_paths_lft ; double acc_wtd_global ; double acc_wtd_global2 ; double acc_wtd_local /* accumulator, weighted */ ; dim acc_chr /* accumulator, characteristic */ ; mcxLink* nb_lft /* list of neighbours, NULL terminated */ ; mcxLink* nb_rgt /* list of neighbours, NULL terminated */ ; } SSPnode ; enum { MY_OPT_ABC = MCX_DISP_UNUSED , MY_OPT_IMX , MY_OPT_TAB , MY_OPT_OUT , MY_OPT_LIST_MAX , MY_OPT_LIST_NODES , MY_OPT_T , MY_OPT_G , MY_OPT_littleG , MY_OPT_EXTENT , MY_OPT_WEIGHTED , MY_OPT_INCLUDE_ENDS , MY_OPT_MOD , MY_OPT_ROUGH } ; mcxOptAnchor diameterOptions[] = { { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "specify input matrix/graph" } , { "-abc" , MCX_OPT_HASARG , MY_OPT_ABC , "" , "specify input using label pairs" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "specify tab file to be used with matrix input" } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUT , "" , "write to file fname" } , { "-t" , MCX_OPT_HASARG , MY_OPT_T , "" , "number of threads to use" } , { "-J" , MCX_OPT_HASARG , MY_OPT_G , "" , "number of compute jobs overall" } , { "-j" , MCX_OPT_HASARG , MY_OPT_littleG , "" , "index of this compute job" } , { "--rough" , MCX_OPT_HIDDEN , MY_OPT_ROUGH , NULL , "use direct computation (testing only)" } , { "--summary" , MCX_OPT_DEFAULT , MY_OPT_LIST_MAX , NULL , "return length of longest shortest path" } , { "--list" , MCX_OPT_DEFAULT , MY_OPT_LIST_NODES , NULL , "list eccentricity for all nodes (default)" } , { NULL, 0, 0, NULL, NULL } } ; mcxOptAnchor cttyOptions[] = { { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "specify input matrix" } , { "-abc" , MCX_OPT_HASARG , MY_OPT_ABC , "" , "specify input using label pairs" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "specify tab file to be used with matrix input" } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUT , "" , "write to file fname" } , { "-t" , MCX_OPT_HASARG , MY_OPT_T , "" , "number of threads to use" } , { "-J" , MCX_OPT_HASARG , MY_OPT_G , "" , "number of compute jobs overall" } , { "-j" , MCX_OPT_HASARG , MY_OPT_littleG , "" , "index of this compute job" } , { "-extent" , MCX_OPT_HASARG , MY_OPT_EXTENT , "" , "limit centrality computation to nodes with step-distance " } , { "--rough" , MCX_OPT_HIDDEN , MY_OPT_ROUGH , NULL , "use direct computation (testing only)" } , { "--with-ends" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_INCLUDE_ENDS , NULL , "include scores for lattice sources and sinks" } #if 0 /* nope, not yet implemented. Is there a point even? */ , { "--weighted" , MCX_OPT_DEFAULT , MY_OPT_WEIGHTED , NULL , "compute weighted centrality" } #endif , { "--list" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_LIST_NODES , NULL , "(default) list mode" } , { "--mod" , MCX_OPT_HIDDEN , MY_OPT_MOD , NULL , "add 1 to each sub-score" } , { NULL, 0, 0, NULL, NULL } } ; static unsigned debug_g = -1; static mcxIO* xfmx_g = (void*) -1; static mcxIO* xfabc_g = (void*) -1; static mcxIO* xftab_g = (void*) -1; static mclTab* tab_g = (void*) -1; static dim progress_g = -1; static mcxbool rough = -1; static mcxbool list_nodes = -1; static mcxbool mod_up = -1; static mcxbool weighted_g = -1; static const char* out_g = (void*) -1; static mcxbool include_ends_g = -1; static dim n_group_G = -1; static dim i_group = -1; static dim n_thread_l = -1; static dim extent_g = -1; /* ctty depth */ static mcxstatus allInit ( void ) { xfmx_g = mcxIOnew("-", "r") ; xfabc_g = NULL ; xftab_g = NULL ; tab_g = NULL ; progress_g = 0 ; rough = FALSE ; list_nodes = TRUE ; mod_up = FALSE ; n_group_G = 1 ; i_group = 0 ; n_thread_l = 0 ; include_ends_g = FALSE ; out_g = "-" ; debug_g = 0 ; weighted_g = FALSE ; extent_g = 0 ; return STATUS_OK ; } static mcxstatus cttyArgHandle ( int optid , const char* val ) { switch(optid) { case MY_OPT_IMX : mcxIOnewName(xfmx_g, val) ; break ; case MY_OPT_ABC : xfabc_g = mcxIOnew(val, "r") ; break ; case MY_OPT_TAB : xftab_g = mcxIOnew(val, "r") ; break ; case MY_OPT_OUT : out_g = val ; break ; case MY_OPT_INCLUDE_ENDS : include_ends_g = TRUE ; break ; case MY_OPT_LIST_NODES : break ; case MY_OPT_littleG : i_group = atoi(val) ; break ; case MY_OPT_G : n_group_G = atoi(val) ; break ; case MY_OPT_EXTENT : extent_g = (unsigned) atoi(val) ; break ; case MY_OPT_T : n_thread_l = (unsigned) atoi(val) ; break ; case MY_OPT_WEIGHTED : weighted_g = TRUE ; break ; case MY_OPT_MOD : mod_up = TRUE ; break ; default : mcxExit(1) ; ; } return STATUS_OK ; } static mcxstatus diameterArgHandle ( int optid , const char* val ) { switch(optid) { case MY_OPT_IMX : mcxIOnewName(xfmx_g, val) ; break ; case MY_OPT_LIST_NODES : list_nodes = TRUE ; break ; case MY_OPT_T : n_thread_l = (unsigned) atoi(val) ; break ; case MY_OPT_LIST_MAX : list_nodes = FALSE ; break ; case MY_OPT_ROUGH : rough = TRUE ; break ; case MY_OPT_TAB : xftab_g = mcxIOnew(val, "r") ; break ; case MY_OPT_OUT : out_g = val ; break ; case MY_OPT_littleG : i_group = atoi(val) ; break ; case MY_OPT_G : n_group_G = atoi(val) ; break ; case MY_OPT_ABC : xfabc_g = mcxIOnew(val, "r") ; break ; default : mcxExit(1) ; ; } return STATUS_OK ; } static void rough_it ( mclx* mx , dim* tabulator , dim i , u8* rough_scratch , long* rough_priority , dim* pri ) { dim dd = 0, p = i, p1 = 0, p2 = 0, priority = 0, p1p2 = 0, j = 0 ; for (j=0;j= rough_priority[p1]) p2 = p1 , p1 = j ; else if (rough_priority[j] >= rough_priority[p2]) p2 = j ; } else { if (!p1 && rough_priority[j] >= 1) p1 = j ; } } p = p1 ; priority = rough_priority[p] ; p1p2 = rough_priority[p1] + rough_priority[p2] ; dd = diameter_rough(mx->cols+p, mx, rough_scratch, rough_priority) ;if (0) fprintf ( stdout , "guard %6d--%-6d %6d %6d NODE %6d ECC %6d PRI\n" , (int) p1p2 , (int) (i * dd) , (int) i , (int) p , (int) dd , (int) priority ) ; *pri = priority ; tabulator[p] = dd ; } static void ecc_compute ( dim* tabulator , const mclx* mx , dim offset , dim inc , mclv* scratch ) { dim i ; for (i=offset;icols+i, mx, scratch) ; tabulator[i] = dd ; } } typedef struct { dim* tabulator ; mclv* scratch ; } diam_data ; static void diam_dispatch ( mclx* mx , dim i , void* data , dim thread_id ) { diam_data* d = ((diam_data*) data) + thread_id ; dim dd = mclgEcc2(mx->cols+i, mx, d->scratch) ; d->tabulator[i] = dd ; } static mcxstatus diameterMain ( int argc_unused cpl__unused , const char* argv_unused[] cpl__unused ) { mclx* mx = NULL ; mcxbool canonical = FALSE ; dim* tabulator = NULL ; mclv* ecc_scratch = NULL ; mcxIO* xfout = mcxIOnew(out_g, "w") ; double sum = 0.0 ; dim thediameter = 0 ; dim i ; progress_g = mcx_progress_g ; debug_g = mcx_debug_g ; n_thread_l = mclx_set_threads_or_die(mediam, n_thread_l, i_group, n_group_G) ;if(0)fprintf(stderr, "%d %d %d\n", (int) n_thread_l, (int) n_thread_l, (int) n_group_G) ; mcxIOopen(xfout, EXIT_ON_FAIL) ; mx = mcx_get_data(xfmx_g, xfabc_g, xftab_g, &tab_g, TRUE) ; mcxIOfree(&xfmx_g) ; mclxAdjustLoops(mx, mclxLoopCBremove, NULL) ; tabulator = calloc(N_COLS(mx), sizeof tabulator[0]) ; ecc_scratch = mclvCopy(NULL, mx->dom_rows) /* ^ used as ecc scratch: should have values 1.0 */ ; canonical = MCLV_IS_CANONICAL(mx->dom_cols) ; if (rough && !mclxGraphCanonical(mx)) mcxDie(1, mediam, "rough needs canonical domains") ; if (rough) { u8* rough_scratch = calloc(N_COLS(mx), sizeof rough_scratch[0]) ; long* rough_priority = mcxAlloc(N_COLS(mx) * sizeof rough_priority[0], EXIT_ON_FAIL) ; for (i=0;idom_rows), 1.0) ; diam_data* data = mcxAlloc(n_thread_l * sizeof data[0], EXIT_ON_FAIL) ; for (t=0;tscratch = scratchen->cols+t ; d->tabulator= tabulator ; } mclxVectorDispatchGroup(mx, data, n_thread_l, diam_dispatch, n_group_G, i_group) ; mcxFree(data) ; mclxFree(&scratchen) ; } if (list_nodes) fprintf(xfout->fp, "node\tdiam\n") ; for (i=0;icols[i].vid ; if (tab_g) { const char* label = mclTabGet(tab_g, vid, NULL) ; if (!label) mcxDie(1, mediam, "panic label %ld not found", vid) ; fprintf(xfout->fp, "%s\t%ld\n", label, (long) dd) ; } else fprintf(xfout->fp, "%ld\t%ld\n", vid, (long) dd) ; } if (dd > thediameter) thediameter = dd ; } if (!list_nodes && N_COLS(mx)) { sum /= N_COLS(mx) ; fprintf ( xfout->fp , "%d\t%.3f\n" , (unsigned) thediameter , (double) sum ) ; } mcxIOfree(&xfout) ; mclxFree(&mx) ; mclvFree(&ecc_scratch) ; mcxFree(tabulator) ; return 0 ; } mcxDispHook* mcxDispHookDiameter ( void ) { static mcxDispHook diameterEntry = { "diameter" , "diameter [options]" , diameterOptions , sizeof(diameterOptions)/sizeof(mcxOptAnchor) - 1 , diameterArgHandle , allInit , diameterMain , 0 , 0 , MCX_DISP_MANUAL } ; return &diameterEntry ; } void add_scores ( SSPnode* nodes , mclx* pathmx ) { dim ofs ; double delta = mod_up ? 0.0 : 1.0 ; for (ofs=0;ofscols+ofs ; for (i=0;in_ivps;i++) { SSPnode* nd = nodes+layer->ivps[i].idx ; if ( (include_ends_g || (nd->nb_lft->next && nd->nb_rgt->next)) && nd->acc_wtd_local >= delta ) nd->acc_wtd_global += (nd->acc_wtd_local - delta) ; } } } void compute_scores_up ( SSPnode* nodes , mclx* pathmx ) { dim ofs ; for (ofs=1;ofscols+N_COLS(pathmx)-ofs ; for (i=0;in_ivps;i++) { SSPnode* nd = nodes+layer->ivps[i].idx ; mcxLink* lk = nd->nb_lft ; while ((lk = lk->next)) { SSPnode* nd2 = lk->val ; nd2->acc_wtd_local += nd->acc_wtd_local * nd2->n_paths_lft * 1.0 / nd->n_paths_lft ; } } } } void compute_paths_down ( SSPnode* nodes , const mclx* pathmx ) { dim ofs ; for (ofs=0;ofscols+ofs ;if (debug_g) fprintf(stdout, "%d nodes in layer %d\n", (int) layer->n_ivps, (int) ofs) ; for (i=0;in_ivps;i++) { SSPnode* nd = nodes+layer->ivps[i].idx ; mcxLink* lk = nd->nb_rgt ; nd->acc_wtd_local = 1.0 ; if (!nd->n_paths_lft) nd->n_paths_lft = 1.0 ; while ((lk = lk->next)) { SSPnode* nd2 = lk->val ; nd2->n_paths_lft += nd->n_paths_lft ; } } } } void lattice_print_nodes ( mclx* pathmx , SSPnode* nodes ) { dim l ; fprintf(stdout, "nodes: lattice has %ld layers\n", (long) N_COLS(pathmx)) ; for (l=0;lcols+l ; fprintf(stdout, "size=%ld", (long) layer->n_ivps) ; for (i=0;in_ivps;i++) { SSPnode* nd = nodes + layer->ivps[i].idx ; fprintf ( stdout , " %ld-(%ld)/%.2f" , (long) nd->node_idx , (long) nd->n_paths_lft , nd->acc_wtd_local ) ; } fputc('\n', stdout) ; } ; } void lattice_print_edges ( mclx* pathmx , SSPnode* nodes ) { dim l ; fprintf(stdout, "edges: lattice has %ld layers\n", (long) N_COLS(pathmx)) ; for (l=0;lcols+l ; dim i ; fprintf(stdout, "size=%ld", (long) layer->n_ivps) ; for (i=0;in_ivps;i++) { SSPnode* nd = nodes + layer->ivps[i].idx ; mcxLink* lk = nd->nb_rgt->next ; while (lk) { SSPnode* nd2 = lk->val ; fprintf(stdout, " (%ld %ld)", (long) nd->node_idx, (long) nd2->node_idx) ; lk = lk->next ; } } fputc('\n', stdout) ; } ; } void cttyUpdateDS ( mclx* down , mclx* up , mclv* domain , float value ) { dim i ; mclx* src, *dst ; if (value) /* set down and up both back to one */ src = up , dst = down ; else /* set up to zero where down is zero */ src = down , dst = up ; for (i=0;in_ivps;i++) { dim lft = domain->ivps[i].idx ; mclv* v = src->cols+lft ; dim j ; for (j=0; jn_ivps;j++) { mclp* p = v->ivps+j ; if (!p->val) { mclp* q = mclxInsertIvp(dst, p->idx, lft) ; q->val = value ; v->ivps[j].val = value ; } } } } #define SEEN(mx, idx) (mx->dom_cols->ivps[idx].val) /* This routine * - computes a lattice of shortest path counts * - sets edge weights not in the lattice to zero * - fills in the order in which the lattice was filled (used for back-traversal) * - uses mx->cols[i].val for annotation. */ dim cttyFlood2 ( mclx* mx , ofs root , dim extent , mclv* order ) { dim i, n_done = 0, n_add = 1, i_wave = 0 ; order->ivps[0].idx = root ; for (i=0; icols[i].val = 0.0 , SEEN(mx, i) = 0.0 ; mx->cols[root].val = 1.0 /* bootstrap value */ ; SEEN(mx, root) = 1.0 ; while (n_add && (!extent || i_wave++ <= extent)) { dim j, n_add_new = 0 ; for (j=n_done; jcols+order->ivps[j].idx ; dim k ; for (k=0;kn_ivps;k++) { mclp* edge = node->ivps+k ; mclv* node2 = mx->cols + edge->idx ; if (!SEEN(mx, node2->vid)) { if (!node2->val) order->ivps[n_done + n_add + n_add_new++].idx = node2->vid ; node2->val += node->val ;if(0)fprintf(stdout, "node %d value %g seen %d\n", (int) node2->vid, node2->val, (int) SEEN(mx, node2->vid)) ; } else edge->val = 0.0 ; } ;if(0)fputs("--\n", stdout); if(0)mclvUnary(node, fltxCopy, NULL) ; } ;if(0)fprintf(stdout, "(added %d)\n", (int) n_add); ; n_done += n_add ; n_add = n_add_new ; for (j=n_done;jivps[j].idx) = 1.0 ; } return n_done ; } /* going upward in the lattice, for each edge do parent->val (initialised to 1.0) += (child->val * #paths(parent) / #paths(child)) #paths is encoded in down->cols[X].val new accumulator encoded in up->cols[X].val */ void compute_scores_up2 ( mclx* down , mclx* up /* transpose of down for now */ , mclv* order , dim n_order ) { dim j ; for (j=0;jcols[j].val = 1.0 /* accumulator; initalised */ /* question: initialise everywhere? */ ; for (j=0;jivps[n_order-j-1].idx ;if(0)fprintf(stderr, "o %d\n", (int) child) ; mclv* parents = up->cols+child ; dim k ; for (k=0; kn_ivps; k++) { mclp* p = parents->ivps+k ; if (p->val) up->cols[p->idx].val += (up->cols[child].val * down->cols[p->idx].val) / down->cols[child].val ; } } } static void ctty_compute2 ( const mclx* mx , dim offset , mclv* ctty , mclx* down , mclx* up , mclv* lattice_order ) { dim j, n_order ; mclv* domain = NULL ; n_order = cttyFlood2(down, offset, extent_g, lattice_order) /* should only do transpose for elements in order .. */ ; if (extent_g) { domain = mclvFromIvps(NULL, lattice_order->ivps, n_order) ; cttyUpdateDS(down, up, domain, 0.0) ; } else up = mclxTranspose2(down, 0) ; if (0)mclxDebug("-", down, 0, "yoo") ; compute_scores_up2(down, up, lattice_order, n_order) ; for (j=1;jivps[j].idx ; if (mclvSum(down->cols+k) > 0.5) ctty->ivps[k].val += up->cols[k].val - 1.0 ; } /* set zero values to 1 in both up and down */ if(extent_g) cttyUpdateDS(down, up, domain, 1.0) ; else mclxFree(&up) , mclxMakeCharacteristic(down) ; mclvFree(&domain) ; } typedef struct { mclv* ctty ; mclx* up ; mclx* down ; mclv* lattice_order ; } ctty_data ; static void ctty_dispatch ( mclx* mx , dim i , void* data , dim thread_id ) { ctty_data* d = ((ctty_data*) data) + thread_id ; ctty_compute2(mx, i, d->ctty, d->down, d->up, d->lattice_order) ; } static mcxstatus cttyMain ( int argc_unused cpl__unused , const char* argv_unused[] cpl__unused ) { mclx* mx, *ctty ; mcxIO* xfout = mcxIOnew(out_g, "w") ; dim i ; mcxIOopen(xfout, EXIT_ON_FAIL) ; n_thread_l = mclx_set_threads_or_die(mectty, n_thread_l, i_group, n_group_G) ; mx = mcx_get_data(xfmx_g, xfabc_g, xftab_g, &tab_g, TRUE) ; mcxIOfree(&xfmx_g) ; mclxAdjustLoops(mx, mclxLoopCBremove, NULL) ; mclxMakeCharacteristic(mx) ; ctty = mclxCartesian(mclvCanonical(NULL, MCX_MAX(n_thread_l,1), 1.0), mclvClone(mx->dom_rows), 0.0) ; debug_g = mcx_debug_g ; progress_g = mcx_progress_g ; if (n_group_G * n_thread_l <= 1) { mclx* down = mclxCopy(mx), *up ; mclv* lattice_order = mclvCopy(NULL, mx->dom_cols) ; mclxMakeCharacteristic(down) ; up = mclxTranspose(down) ; for (i=0; icols+0, down, up, lattice_order) ; } else { dim t = 0 ; ctty_data* data = mcxAlloc(n_thread_l * sizeof data[0], EXIT_ON_FAIL) ; for (t=0; tctty = ctty->cols+t ; d->down = mclxCopy(mx) ; d->lattice_order = mclvCopy(NULL, mx->dom_cols) ; mclxMakeCharacteristic(d->down) ; d->up = mclxTranspose(d->down) ; } mclxVectorDispatchGroup(mx, data, n_thread_l, ctty_dispatch, n_group_G, i_group) ; if (debug_g) for (t=0; tdown) ; mclvFree(&d->lattice_order) ; mclxFree(&d->up) ; } mcxFree(data) ; } if (ctty->cols[0].n_ivps != N_COLS(mx)) mcxDie(1, mectty, "internal error, tabulator miscount") /* add subtotals to first vector */ ; for (i=1;icols+i ; dim j ; if (vec->n_ivps != N_COLS(mx)) mcxDie(1, mectty, "internal error, tabulator miscount") ; for (j=0;jn_ivps;j++) ctty->cols[0].ivps[j].val += vec->ivps[j].val ; } /* and report first vector, optionally with labels */ { mclv* v = ctty->cols+0 ; fprintf(xfout->fp, "node\tctty\n") ; for (i=0;in_ivps;i++) { double ctt = v->ivps[i].val / 2.0 ; long vid = v->ivps[i].idx ; if (tab_g) { const char* label = mclTabGet(tab_g, vid, NULL) ; if (!label) mcxDie(1, mectty, "panic label %ld not found", vid) ; fprintf(xfout->fp, "%s\t%.8g\n", label, ctt) ; } else fprintf(xfout->fp, "%ld\t%.8g\n", vid, ctt) ; } } mcxIOfree(&xfout) ; mclxFree(&mx) ; mclxFree(&ctty) ; return 0 ; } mcxDispHook* mcxDispHookCtty ( void ) { static mcxDispHook cttyEntry = { "ctty" , "ctty [options]" , cttyOptions , sizeof(cttyOptions)/sizeof(mcxOptAnchor) - 1 , cttyArgHandle , allInit , cttyMain , 0 , 0 , MCX_DISP_MANUAL } ; return &cttyEntry ; } mcl-12-135/src/shmx/mcxarray.c0000644000402500021140000016175511756432723013062 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Stijn van Dongen * (C) Copyright 2008, 2009, 2010, 2011, 2012 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* TODO * support missing data. sum and sumsq can still be precomputed, * only inproduct has to be adjusted every time. * Figure out what N should be though. * Euclidean distance, * Taxi distance Monve, V.; Introduction to Similarity Searching in Chemistry. www.orgchm.bas.bg/~vmonev/SimSearch.pdf fingerprint distances: A B da = A\B (left difference, a) db = B\A (right difference, b) c = A /\ B (co-occuring) ca cb e = A \/ B (everything) d = e \ c (difference) sum(a) sum(a,2) in(ca, cb) euclidean D sqrt(hamming) hamming D a+b meanHamming (a+b)/(a+b+c+d) soergel D (a+b)/(a +b +c) patternDifference ab / (a+b+c+d)^2 variance (a+b)/4(a+b+c+d) size (a−b)^2/(a+b+c+d)^2 shape (a+b)/(a+b+c+d) - [(a−b) (a+b+c+d)]^2 + jaccard/tanimoto c / (a+b+c) dice 2c / (a+b) mt simple russelrao rodgerstanimoto + cosine c / sqrt(AB) achiai carbo baroniurbanibuser sqrt( cd + c ) / sqrt( cd + a + b + c ) kulczynski2 0.5 * (c/(a+c) + c/(b+c)) robust hamann yule pearson (cd−ab) / sqrt((a+c)(b+c)(a+d)(b+d)) mcconnaughey stiles simpson petke + meet c + cover A c / (a+c) */ #include #include #include #include #include #include #include #include #include #include "impala/compose.h" #include "impala/matrix.h" #include "impala/vector.h" #include "impala/pval.h" #include "impala/io.h" #include "impala/iface.h" #include "impala/app.h" #include "clew/clm.h" #include "mcl/transform.h" #include "util/io.h" #include "util/ting.h" #include "util/ding.h" #include "util/err.h" #include "util/minmax.h" #include "util/opt.h" #include "util/types.h" #include "util/array.h" const char* me = "mcxarray"; const char* syntax = "Usage: mcxarray <-data | -imx [options]"; #define ARRAY_PEARSON 1 << 0 #define ARRAY_COSINE 1 << 1 #define ARRAY_TRANSPOSE 1 << 2 #define ARRAY_SPEARMAN 1 << 3 #define ARRAY_ZEROASNA 1 << 4 #define ARRAY_COSINESKEW 1 << 5 #define ARRAY_SUBSET_MEET 1 << 6 #define ARRAY_SUBSET_DIFF 1 << 7 #define ARRAY_CONTENT 1 << 8 #define ARRAY_JOBINFO 1 << 9 #define ARRAY_RANKTRANSFORM 1 << 10 #define ARRAY_DOT 1 << 11 #define ARRAY_FINGERPRINT 1 << 12 #define ARRAY_NOWRITE 1 << 13 #define CONTENT_AVERAGE 1 << 0 #define CONTENT_COSINE 1 << 1 #define CONTENT_EUCLID 1 << 2 #define CONTENT_INTERSECT 1 << 3 #define CONTENT_MEDIAN 1 << 4 #define FP_TANIMOTO 0 #define FP_MEET 1 #define FP_COSINE 2 #define FP_COVER 3 #define FP_HAMMING 4 #define CONTENT_DEFAULT (CONTENT_MEDIAN | CONTENT_COSINE | CONTENT_EUCLID | CONTENT_INTERSECT) /* Pearson correlation coefficient: * __ __ __ * \ \ \ * n /_ x y - /_ x /_ y * ----------------------------------------------------------- * ___________________________________________________________ * / __ __ 2 __ __ 2 | * \ / / \ 2 \ \ / \ 2 \ \ * \/ \ n /_ x - /_ x / * \ n /_ y - /_ y / */ static dim n_thread_l = 0; static dim start_g = 0; static dim end_g = 0; /* first mini job is c=0, d=0..N-1 AND c=N-1, d=N-1 (N+2 tasklets) * second is c=1, d=1..N-1 AND c=N-2, d=N-2..N-1 (N+2 tasklets) * so that mini-jobs are the same size. * Each thread computes a batch of mini-jobs. */ struct jobinfo { const mclx* tbl ; dim n_thread ; dim n_group ; dim i_group ; int by_set_size ; dim dvd_jobsize /* derived jobsize */ ; dim dvd_joblo1 ; dim dvd_joblo2 ; dim dvd_jobhi1 ; dim dvd_jobhi2 ; dim dvd_work_size /* either N_COLS() or SUM(set_size) */ ; dim work_size_seen ; } ; static void ji_init ( struct jobinfo* ji , const mclx* tbl , dim n_thread , dim n_group , dim i_group , int by_set_size ) { ji->n_thread = n_thread ; ji->n_group = n_group ; ji->i_group = i_group ; ji->by_set_size= by_set_size ; ji->work_size_seen = 0 ; ji->tbl = tbl /* we do note use N_COLS(tbl)^2, as mcxarray may * be used on ragged arrays with very different set sizes */ ; if (by_set_size) { dim i ; ji->dvd_work_size = 0 ; for (i=0;idvd_work_size += tbl->cols[i].n_ivps ; } else ji->dvd_work_size = N_COLS(tbl) ; ji->dvd_jobsize = (ji->dvd_work_size + 2 * n_thread * n_group - 1) / (2 * n_thread * n_group) ;fprintf(stderr, "---->work size %d job size %d\n", (int) ji->dvd_work_size, (int) ji->dvd_jobsize) ; ji->dvd_joblo1 = 0 ; ji->dvd_joblo2 = 0 ; ji->dvd_jobhi1 = N_COLS(tbl) ; ji->dvd_jobhi2 = N_COLS(tbl) ; } /* This iterator runs through the full list of jobinfo sets * for all groups and threads, returning 1 in case * the job info suits the current thread and group. */ static int ji_step ( struct jobinfo* ji , dim t , dim this_group ) { int bootstrap = ji->dvd_joblo1 == ji->dvd_joblo2 ; int accept = t % ji->n_group == ji->i_group /* pick only t that are in i_group */ ; if (!bootstrap) ji->dvd_joblo1 = ji->dvd_joblo2 /* new offset for the low range */ , ji->dvd_jobhi2 = ji->dvd_jobhi1 /* new top for the high range */ ; if (ji->by_set_size) { dim work_size_toreach = (t+1) * 2 * ji->dvd_jobsize ; dim i = 0 ; while ( ji->work_size_seen < work_size_toreach && ji->dvd_joblo2 < ji->dvd_jobhi1 ) { if (!(i & 1)) ji->work_size_seen += ji->tbl->cols[(ji->dvd_joblo2)++].n_ivps ; else ji->work_size_seen += ji->tbl->cols[--(ji->dvd_jobhi1)].n_ivps ; i++ ; } ;if(0)fprintf(stdout, "%c %d %d %d\n", accept ? (int) ('0' + this_group) : '-', (int) ji->work_size_seen, (int) ji->dvd_joblo1, (int) ji->dvd_joblo2) ;if(0)fprintf(stdout, "%c %d %d %d\n", accept ? (int) ('0' + this_group) : '-', (int) ji->work_size_seen, (int) ji->dvd_jobhi1, (int) ji->dvd_jobhi2) ; } else { ji->dvd_joblo2 += ji->dvd_jobsize ; if (ji->dvd_jobhi1 >= ji->dvd_jobsize) ji->dvd_jobhi1 -= ji->dvd_jobsize ; } return accept ? 1 : 0 ; } static double mclv_inner ( const mclv* a , const mclv* b , dim N ) { dim j ; double ip = 0.0 ; if (a->n_ivps < N || b->n_ivps < N) return mclvIn(a, b) ; for (j=0;jn_ivps;j++) ip += a->ivps[j].val * b->ivps[j].val ; return ip ; } double pearson ( const mclv* a , const mclv* b , dim n ) { double suma = mclvSum(a) ; double sumb = mclvSum(b) ; double sumasq = mclvPowSum(a, 2.0) ; double sumbsq = mclvPowSum(b, 2.0) ; double nom = sqrt( (n*sumasq - suma*suma) * (n*sumbsq - sumb*sumb) ) ; double num = n * mclvIn(a, b) - suma * sumb ; return nom ? num / nom : 0.0 ; } typedef struct rank_unit { long index ; double ord ; double value ; } rank_unit ; void* rank_unit_init ( void* ruv ) { rank_unit* ru = (rank_unit*) ruv ; ru->index = -1 ; ru->value = -1 ; ru->ord = -1.0 ; return ru ; } int rank_unit_cmp_index ( const void* rua , const void* rub ) { long a = ((rank_unit*) rua)->index ; long b = ((rank_unit*) rub)->index ; return a < b ? -1 : a > b ? 1 : 0 ; } int rank_unit_cmp_value ( const void* rua , const void* rub ) { double a = ((rank_unit*) rua)->value ; double b = ((rank_unit*) rub)->value ; return a < b ? -1 : a > b ? 1 : 0 ; } enum { MY_OPT_DATA , MY_OPT_TABLE , MY_OPT_CUTOFF , MY_OPT_O , MY_OPT_WRITEBINARY , MY_OPT_TAB , MY_OPT_RSKIP = MY_OPT_TAB + 2 , MY_OPT_CSKIP , MY_OPT_L , MY_OPT_PEARSON = MY_OPT_L + 2 , MY_OPT_SPEARMAN , MY_OPT_COSINE , MY_OPT_DOT , MY_OPT_SUBSET_MEET , MY_OPT_SUBSET_DIFF , MY_OPT_CONTENT , MY_OPT_CONTENTX , MY_OPT_NOTES , MY_OPT_FINGERPRINT , MY_OPT_COSINE_SKEW , MY_OPT_T = MY_OPT_COSINE_SKEW + 2 , MY_OPT_NJOBS , MY_OPT_JOBID , MY_OPT_JI , MY_OPT_START , MY_OPT_END , MY_OPT_TP = MY_OPT_END + 2 , MY_OPT_TRANSFORM , MY_OPT_TABLETRANSFORM , MY_OPT_DIGITS , MY_OPT_SEQL , MY_OPT_SEQR , MY_OPT_ZEROASNA , MY_OPT_WRITE_TABLE , MY_OPT_WRITE_NA , MY_OPT_LIMIT_ROWS , MY_OPT_NORMALISE , MY_OPT_RANKTRANSFORM , MY_OPT_NOPROGRESS , MY_OPT_NW , MY_OPT_HELP , MY_OPT_VERSION , MY_OPT_AMOIXA } ; mcxOptAnchor options[] = { { "-h" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "--help" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "--version" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_VERSION , NULL , "print version information" } , { "--amoixa" , MCX_OPT_INFO | MCX_OPT_HIDDEN , MY_OPT_AMOIXA , NULL , ">o<" } , { "-t" , MCX_OPT_HASARG , MY_OPT_T , "" , "number of threads to use" } , { "-J" , MCX_OPT_HASARG , MY_OPT_NJOBS , "" , "number of compute jobs overall" } , { "-j" , MCX_OPT_HASARG , MY_OPT_JOBID , "" , "index of this compute job" } , { "--job-info" , MCX_OPT_DEFAULT , MY_OPT_JI , NULL , "print node ids and exit" } , { "-start" , MCX_OPT_HASARG , MY_OPT_START , "" , "start index" } , { "-end" , MCX_OPT_HASARG , MY_OPT_END , "" , "end index" } , { "--transpose" , MCX_OPT_DEFAULT , MY_OPT_TP , NULL , "work with the transposed data matrix" } , { "-skipc" , MCX_OPT_HASARG , MY_OPT_CSKIP , "" , "skip this many columns" } , { "-seql" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_SEQL , "" , "file with start positions" } , { "-seqr" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_SEQR , "" , "file with end positions" } , { "-V" , MCX_OPT_HIDDEN , MY_OPT_NOPROGRESS , NULL , "omit progress bar" } , { "-skipr" , MCX_OPT_HASARG , MY_OPT_RSKIP , "" , "skip this many rows" } , { "--rank-transform" , MCX_OPT_HASARG , MY_OPT_RANKTRANSFORM , NULL , "rank transform the data" } , { "-n" , MCX_OPT_HASARG , MY_OPT_NORMALISE , "{P,S} x {z,m}" , "normalise P(rimary) or S(econdary) on z-scores (z) or mean (m)" } , { "--pearson" , MCX_OPT_DEFAULT , MY_OPT_PEARSON , NULL , "compute edge weight as Pearson correlation score (default)" } , { "--spearman" , MCX_OPT_DEFAULT , MY_OPT_SPEARMAN , NULL , "compute edge weight as Spearman rank correlation score" } , { "--zero-as-na" , MCX_OPT_DEFAULT , MY_OPT_ZEROASNA , NULL , "compute correlation only where both values are not zero" } , { "--cosine" , MCX_OPT_DEFAULT , MY_OPT_COSINE , NULL , "compute edge weight as cosine" } , { "--dot" , MCX_OPT_DEFAULT , MY_OPT_DOT , NULL , "compute edge weight as dot product" } , { "--cosine-skew" , MCX_OPT_HIDDEN , MY_OPT_COSINE_SKEW , NULL , "compute arc weight SQRT() / || self ||" } , { "--content" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_CONTENT , NULL , "compute fantastic mr formula" } , { "--no-write" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_NW , NULL , "exit after computation of correlations" } , { "-content" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_CONTENTX , "(v)verage (c)osine (e)uclid (i)ntersect (m)edian" , "compute fantastic mr formula with parts specified" } , { "--notes" , MCX_OPT_HIDDEN , MY_OPT_NOTES , NULL , "explain fantastic mr formula" } , { "-fp" , MCX_OPT_HASARG , MY_OPT_FINGERPRINT , "hamming|meet|tanimoto|cosine|cover" , "a+b, c, c/(a+b+c), c/sqrt((a+c)*(b+c)), c/(a+c)" } , { "--subset" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_SUBSET_MEET , NULL , "compute arc weight |self /\\ other>| / |self|" } , { "--subset-diff" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_SUBSET_DIFF , NULL , "compute arc weight |self \\ other>| / |self|" } , { "--write-binary" , MCX_OPT_DEFAULT , MY_OPT_WRITEBINARY , NULL , "write in binary format (use with low -co and subsequent mcx q --vary-threshold)" } , { "-data" , MCX_OPT_HASARG , MY_OPT_DATA , "" , "data file name" } , { "-write-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "write labels to tab file" } , { "-l" , MCX_OPT_HASARG , MY_OPT_L , "" , "column (or row, with --transpose) containing labels (default 1)" } , { "-write-data" , MCX_OPT_HASARG , MY_OPT_WRITE_TABLE , "" , "write table matrix to file" } , { "-write-na" , MCX_OPT_HASARG , MY_OPT_WRITE_NA , "" , "write na matrix to file" } , { "-test-rows" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_LIMIT_ROWS , "" , "only do this many data rows" } , { "-imx" , MCX_OPT_HASARG , MY_OPT_TABLE , "" , "matrix file name" } , { "-co" , MCX_OPT_HASARG , MY_OPT_CUTOFF , "" , "only output values val with |val| >= " } , { "-o" , MCX_OPT_HASARG , MY_OPT_O , "" , "write to file fname" } , { "-table-tf" , MCX_OPT_HASARG , MY_OPT_TABLETRANSFORM , "" , "apply unary transformations to table values" } , { "-tf" , MCX_OPT_HASARG , MY_OPT_TRANSFORM , "" , "apply unary transformations to result matrix values" } , { "-digits" , MCX_OPT_HASARG , MY_OPT_DIGITS , "" , "precision to use in interchange format" } , { NULL, 0, 0, NULL, NULL } } ; static mclTab* tab_g = NULL; static mcxbool sym_g = TRUE; static mcxbits contentx_g = 0; static mcxenum fingerprint_g = 0; static mcxbool progress_g = TRUE; static const char* retry_g = "out.mcxarray"; /* user rows will be columns in mcl native layout. * naming below is confusing; clean up naming sometime (soon). */ static mclx* read_data ( mcxIO* xfin , mcxIO* xftab , dim nrows_max , unsigned skipr , unsigned skipc , unsigned labelidx , mcxbits bits , mclx** mxnapp ) { mcxTing* line = mcxTingEmpty(NULL, 1000) ; dim N_cols = 0 ; int n_rows = 0 ; int N_rows = 100 ; mclv* cols = mcxNAlloc(N_rows, sizeof(mclVector), mclvInit_v, EXIT_ON_FAIL) ; mclv* colsna= mcxNAlloc(N_rows, sizeof(mclVector), mclvInit_v, EXIT_ON_FAIL) ; mclv* scratch = mclvCanonical(NULL, 100, 1.0) ; mclv* scratchna = mclvCanonical(NULL, 100, 1.0) ; mclx* mx = mcxAlloc(sizeof mx[0], EXIT_ON_FAIL) ; mclx* mxna = mcxAlloc(sizeof mxna[0], EXIT_ON_FAIL) ; mcxHash* index = xftab ? mcxHashNew(100, mcxStrHash, mcxStrCmp) : NULL /* user rows */ ; long linect = 0 ; unsigned skiprr = skipr ; while (STATUS_OK == mcxIOreadLine(xfin, line, MCX_READLINE_CHOMP)) { const char* p = line->str ; const char* z = p + line->len ; dim n_cols = 0, n_na = 0 ; double val = 0.0 ; unsigned skipcc = skipc ; linect++ ; if (skiprr > 0) { if ((bits & ARRAY_TRANSPOSE) && skipr+1 - skiprr == labelidx) /* this is the line with labels */ { while (p < z) { const char* o = p ; p = strchr(p, '\t') ; if (!p) p = z ; if (skipcc == 0) /* skipped all we needed to */ { N_cols++ ; if (xftab) { char* label = mcxStrNDup(o, (dim) (p-o)) ; mcxKV* kv = mcxHashSearch(label, index, MCX_DATUM_INSERT) ; if (kv->key != label) mcxDie(1, me, "column label <%s> occurs more than once", label) ; fprintf(xftab->fp, "%d\t%s\n", (int) (N_cols-1), label) ; } } else skipcc-- ; p++ ; } } skiprr-- ; continue ; } { mcxbool just_after_tab = TRUE /* first time around fake it */ ; while (just_after_tab) { mcxbool have_na = TRUE ; const char* o = p ; char* t = strchr(p, '\t') ; just_after_tab = t ? TRUE : FALSE /* this is for the next iteration */ ; p = t ? t : z ; if (skipcc > 0) { if (!(bits & ARRAY_TRANSPOSE) && xftab && (skipc+1-skipcc) == labelidx) { char* label = mcxStrNDup(o, (dim) (p-o)) ; mcxKV* kv = mcxHashSearch(label, index, MCX_DATUM_INSERT) ; if (kv->key != label) mcxDie(1, me, "row label <%s> occurs more than once", label) ; fprintf(xftab->fp, "%d\t%s\n", n_rows, label) ; } skipcc-- ; p++ ; continue ; } if (p - o == 0) val = 0.0 ; else if (p - o == 3 && (!strncasecmp(o, "NaN", 3) || !strncasecmp(o, "inf", 3))) val = 0.0 ; else if (p - o == 2 && !strncasecmp(o, "NA", 2)) val = 0.0 ; else if (1 == sscanf(o, "%lf", &val)) have_na = FALSE ; else { mcxDie ( 1 , me , "failed to parse column %lu at line %lu offset %lu (---->%.8s<----)" , (ulong) (n_cols+1+skipr) , (ulong) linect , (ulong) (o - line->str + 1) , o ) ; n_cols = 0 ; } if (n_cols >= scratch->n_ivps) mclvCanonicalExtend(scratch, scratch->n_ivps * 1.44, 0.0) ; scratch->ivps[n_cols].val = val ; if (have_na) { if (n_na >= scratchna->n_ivps) mclvResize(scratchna, n_na * 1.44) ; scratchna->ivps[n_na].val = 1.0 ; scratchna->ivps[n_na].idx = n_cols ;if(0)fprintf(stderr, "missing value column %d\n", (int) n_cols) ; n_na++ ; } n_cols++ ; p++ ; } } if (!n_cols && !N_cols) mcxDie(1, "mcxarray", "nothing read at line %lu", (ulong) linect) ; else if (!N_cols) N_cols = n_cols ; else if (n_cols != N_cols) mcxDie ( 1 , "mcxarray" , "different column count at line %lu: %lu (expecting %lu)" , (ulong) linect , (ulong) N_cols , (ulong) n_cols ) ; if (n_rows == N_rows) { N_rows *= 1.44 ; cols = mcxNRealloc (cols, N_rows, n_rows, sizeof(mclVector), mclvInit_v, EXIT_ON_FAIL) ; colsna = mcxNRealloc (colsna, N_rows, n_rows, sizeof(mclVector), mclvInit_v, EXIT_ON_FAIL) ; } mclvFromIvps(cols+n_rows, scratch->ivps, n_cols) ; cols[n_rows].vid = n_rows ; mclvFromIvps(colsna+n_rows, scratchna->ivps, n_na) ; colsna[n_rows].vid = n_rows ; n_rows++ ; if (nrows_max && n_rows >= nrows_max) break ; } if (!n_rows) mcxErr(me, "no rows read") ; if (xftab) { if (!strcmp(xftab->fn->str, "-")) mcxErr(me, "cannot read back tab, warnings will be as offsets") ; else mcxIOclose(xftab) , mcxIOrenew(xftab, NULL, "r") , tab_g = mclTabRead(xftab, NULL, EXIT_ON_FAIL) ; } if (xftab) mcxIOclose(xftab) ; mx->dom_cols = mclvCanonical(NULL, n_rows, 1.0) ; mx->dom_rows = mclvCanonical(NULL, N_cols, 1.0) ; mx->cols = mcxNRealloc(cols, n_rows, N_rows, sizeof(mclVector), NULL, EXIT_ON_FAIL) ; mxna->dom_cols = mclvCanonical(NULL, n_rows, 1.0) ; mxna->dom_rows = mclvCanonical(NULL, N_cols, 1.0) ; mxna->cols = mcxNRealloc(colsna, n_rows, N_rows, sizeof(mclVector), NULL, EXIT_ON_FAIL) ; mcxTingFree(&line) ; mclvFree(&scratch) ; mclvFree(&scratchna) ; *mxnapp = mxna ; mcxTell(me, "read table with %d rows and %d columns", (int) N_cols, (int) n_rows) /* ^ note mcl stores rows column-wise */ ; return mx ; } double mydiv ( pval a , pval b ) { return b ? a / b : 0.0 ; } static mclx* mxseql = NULL; static mclx* mxseqr = NULL; static double ivp_get_double ( const void* v ) { return ((mclp*) v)->val ; } static double get_array_content_score ( const mclx* tbl , dim c , dim d , mclv* meet_c ) { mclv* vecc, *vecd, *meet_d ; double euclid = 1.0, meet_fraction = 1.0, score , sum_meet_c, sum_meet_d ; double iqrc, iqrd ; double reduction_c = 1.0, reduction_d = 1.0 ; double median = 1.0, medianc = 1.0, mediand = 1.0 ; double ip = 1.0, cd = 1.0, csn = 1.0 ; double mean = 1.0, meanc = 1.0, meand = 1.0 ; vecc = mclvClone(tbl->cols+c) ; vecd = mclvClone(tbl->cols+d) ; meet_d = mcldMeet(vecd, meet_c, NULL) /* the only purpose is here is to reweight the scores in meet_c */ ; sum_meet_c = mclvSum(meet_c) ; sum_meet_d = mclvSum(meet_d) ; if (!sum_meet_c || !sum_meet_d) return 0.0 ; if (mxseql && mxseqr) { const mclv* c_start = mxseql->cols+c ; const mclv* c_end = mxseqr->cols+c ; const mclv* d_start = mxseql->cols+d ; const mclv* d_end = mxseqr->cols+d ; mclv* width_c = mclvBinary(c_end, c_start, NULL, fltSubtract) ; mclv* width_d = mclvBinary(d_end, d_start, NULL, fltSubtract) ; mclv* rmin = mclvBinary(c_end, d_end, NULL, fltMin) ; mclv* lmax = mclvBinary(c_start, d_start, NULL, fltMax) ; mclv* delta = mclvBinary(rmin, lmax, NULL, fltSubtract) ; mclv* weight_c, *weight_d ; mclvSelectGqBar(delta, 0.0) ; weight_c = mclvBinary(delta, width_c, NULL, mydiv) ; weight_d = mclvBinary(delta, width_d, NULL, mydiv) ; mclvBinary(meet_c, weight_c, meet_c, fltMultiply) ; mclvBinary(meet_d, weight_d, meet_d, fltMultiply) ;if(0&&c!=d) mclvaDump(width_c,stdout,5,"\n",0),mclvaDump(width_d,stdout,5,"\n",0) ; mclvFree(&width_c) ; mclvFree(&width_d) ; mclvFree(&rmin) ; mclvFree(&lmax) ; mclvFree(&delta) ; mclvFree(&weight_c) ; mclvFree(&weight_d) ; reduction_c = mclvSum(meet_c) / sum_meet_c ; reduction_d = mclvSum(meet_d) / sum_meet_d ; } score = 1.0 /* A and B are vectors; denote the indices on which both * A and B are nonzero by A/\\B * A* denotes the subset of entries of A restricted to A/\\B * B* denotes the subset of entries of B restricted to A/\\B * Then: * median: min(median(A), median(B)) * average: min(avg(A*), avg(B*)) * cosine: cosine(A*, B*) * euclid: sqrt(sumsq(A*) / sumsq(A)) * isect: #A* / #A * * ||||| * ||||||||| * |||||||||||||||| * |||||||||||||||||||||||||||||||||||||| * * ||||| * ||||||||| * |||||||||||||||| * |||||||||||||||||||||||||||||||||||||||| * * ---------------------------------- */ ; if (contentx_g & CONTENT_MEDIAN) { mclvSortDescVal(vecc) ; mclvSortDescVal(vecd) ; medianc = mcxMedian(vecc->ivps, vecc->n_ivps, sizeof vecc->ivps[0], ivp_get_double, &iqrc) ; mediand = mcxMedian(vecd->ivps, vecd->n_ivps, sizeof vecd->ivps[0], ivp_get_double, &iqrd) ; median = MCX_MIN(medianc, mediand) ; score *= median ; } else if (contentx_g & CONTENT_AVERAGE) { meanc = meet_c->n_ivps ? mclvSum(meet_c) / meet_c->n_ivps : 0.0 ; meand = meet_d->n_ivps ? mclvSum(meet_d) / meet_d->n_ivps : 0.0 ; mean = MCX_MIN(meanc, meand) ; score *= mean ; } if (contentx_g & CONTENT_COSINE) { ip = mclvIn(meet_c, meet_d) ; cd = sqrt(mclvPowSum(meet_c, 2.0) * mclvPowSum(meet_d, 2.0)) ; csn = cd ? ip / cd : 0.0 ; score *= csn ; } if (contentx_g & CONTENT_EUCLID) { euclid = reduction_c ? sqrt(mclvPowSum(meet_c, 2.0) / mclvPowSum(vecc, 2.0)) : 0.0 ; score *= euclid ; } if (contentx_g & CONTENT_INTERSECT) { meet_fraction = meet_c->n_ivps * 1.0 / vecc->n_ivps ; score *= meet_fraction ; } if (0) fprintf ( stdout , "%10d%10d%10d%10d%10d%10g%10g%10g%10g%10g%10g%10g%15g\n" , (int) c , (int) d , (int) (vecc->n_ivps - meet_c->n_ivps) , (int) (vecd->n_ivps - meet_d->n_ivps) , (int) meet_c->n_ivps , score , mean , csn , euclid , meet_fraction , reduction_c , reduction_d , median ) ; mclvFree(&meet_d) ; mclvFree(&vecc) ; mclvFree(&vecd) ; return score ; } #if 0 { mclv* meet_d = mcldMeet2(vecd, meet_c, NULL) ; double ip = mclvIn(meet_c, meet_d) ; double cd = sqrt(mclvPowSum(meet_c, 2.0) * mclvPowSum(meet_d, 2.0)) ; double csn = cd ? ip / cd : 0.0 ; double meanc = mclvSum(meet_c) / meet_c->n_ivps ; double meand = mclvSum(meet_d) / meet_d->n_ivps ; double mean = MCX_MIN(meanc, meand) ; double euclid = 0 ? 1.0 : ( mean ? sqrt(mclvPowSum(meet_c, 2.0) / mclvPowSum(vecc, 2.0)) : 0.0 ) ; score = mean * csn * euclid * (meet_c->n_ivps * 1.0 / vecc->n_ivps) ;if (0 && score) fprintf(stdout, "c=%lu d=%lu meet=%d mean=%5g csn=%5g euclid=%5g score=%5g\n", (ulong) c, (ulong) d, (int) meet_c->n_ivps, mean, csn, euclid, score) ; nom = 1 /* nonsensical; document */ ; if (!vecd->n_ivps) offending = d /* nonsensical; document */ ; mclvFree(&meet_d) ; } #endif /* Pearson correlation coefficient: * __ __ __ * \ \ \ * n /_ x y - /_ x /_ y * ----------------------------------------------------------- * ___________________________________________________________ * / __ __ 2 __ __ 2 | * \ / / \ 2 \ \ / \ 2 \ \ * \/ \ n /_ x - /_ x / * \ n /_ y - /_ y / */ static dim get_correlation ( const mclx* tbl , const mclx* mxna , dim c , dim d , mclv* Nssqs , mclv* sums , double* scorep , double* nomp , dim* offendingp , mcxbits bits ) { double N = MCX_MAX(N_ROWS(tbl), 1) /* fixme; bit odd */ ; double nom = 1.0, score = 0 ; dim offending = c ; dim n_reduced = 0 ; mclv* vecc = tbl->cols+c ; mclv* vecd = tbl->cols+d ; if (bits & ARRAY_COSINE) { mcxbool reduced = mxna->cols[c].n_ivps > 0 || mxna->cols[d].n_ivps > 0 ; double ip = mclv_inner(vecc, vecd, N) ; double nomleft = Nssqs->ivps[c].val ; double nomright = Nssqs->ivps[d].val ; if (reduced) { mclv* merge = mcldMerge(mxna->cols+c, mxna->cols+d, NULL) ; mclv* veccx = mcldMinus(vecc, merge, NULL) ; mclv* vecdx = mcldMinus(vecd, merge, NULL) ; nomleft = N * mclvPowSum(veccx, 2.0) /* fixme: still use this N ? */ ; nomright = N * mclvPowSum(vecdx, 2.0) ; mclvFree(&merge) ; mclvFree(&veccx) ; mclvFree(&vecdx) ; } nom = sqrt(nomleft * nomright) / N ; score = nom ? ip / nom : 0.0 ; offending = nomleft ? d : c ; } else if (bits & ARRAY_DOT) score = mclv_inner(vecc, vecd, N) ; else if (bits & ARRAY_COSINESKEW) { double ip = mclv_inner(vecc, vecd, N) ; nom = sqrt(Nssqs->ivps[c].val / N) ; score = nom ? sqrt(ip > 0 ? ip : 0) / nom : 0.0 ; offending = c ; } else if (bits & ARRAY_CONTENT) { mclv* meet_c = mcldMeet2(vecc, vecd, NULL) ; if ( 3 * meet_c->n_ivps >= vecc->n_ivps || 3 * meet_c->n_ivps >= vecd->n_ivps ) score = get_array_content_score(tbl, c, d, meet_c) ; nom = 1 ; mclvFree(&meet_c) ; } else if (bits & ARRAY_FINGERPRINT) { dim na = 0, nb = 0, nc = 0 ; mcldCountParts(vecc, vecd, &na, &nc, &nb) ; if (nc) switch(fingerprint_g) { case FP_TANIMOTO: score = nc * 1.0 / (na + nb + nc); break ; case FP_COSINE: score = nc * 1.0 / sqrt((na + nc) * 1.0 * (nb + nc)); break ; case FP_MEET: score = nc; break ; case FP_COVER: score = nc * 1.0 / (na + nc); break ; case FP_HAMMING: score = na + nb; break ; } } else if (bits & (ARRAY_SUBSET_MEET | ARRAY_SUBSET_DIFF)) { dim n_meet = 0, n_ldiff = 0 ; double num = 0.0 ; mcldCountParts(vecc, vecd, &n_ldiff, &n_meet, NULL) ; if (n_meet) num = (bits & ARRAY_SUBSET_MEET) ? n_meet : n_ldiff ; nom = vecc->n_ivps ; score = nom ? num * 1.0 / nom : 0.0 ; offending = c ; } else if (bits & (ARRAY_PEARSON | ARRAY_SPEARMAN)) { mcxbool reduced = mxna->cols[c].n_ivps > 0 || mxna->cols[d].n_ivps > 0 ; double s1 = sums->ivps[c].val ; double Nsq1 = Nssqs->ivps[c].val ; double nomleft = sqrt(Nsq1 - s1 * s1) ; double ip = mclv_inner(vecc, vecd, N) ; double nomleftx ; if (reduced) { mclv* merge = mcldMerge(mxna->cols+c, mxna->cols+d, NULL) ; mclv* veccx = mcldMinus(vecc, merge, NULL) ; mclv* vecdx = mcldMinus(vecd, merge, NULL) ; double s1x = mclvSum(veccx) ; double Nsq1x= N * mclvPowSum(veccx, 2.0) /* fixme: still use this N ? */ ; double s2x = mclvSum(vecdx) ; double Nsq2x= N * mclvPowSum(vecdx, 2.0) ; n_reduced++ ; nomleftx = sqrt(Nsq1x - s1x * s1x) ; nom = nomleftx * sqrt(Nsq2x - s2x*s2x) ; score = nom ? ((N*ip - s1x*s2x) / nom) : 0.0 ; offending= nomleftx ? d : c /* prepare in case !nom */ ;if(0)fprintf(stderr, "vec %d have %d vec %d have %d nom %.2f", (int) c, (int) veccx->n_ivps, (int) d, (int) vecdx->n_ivps, nom) ;if(0)fprintf(stderr, " sum1 %.2f sum2 %.2f Nip %.2f N=%d ip=%.2f score %g\n", s1x, s2x, (double) N * ip, (int) N, ip, score) ; mclvFree(&merge) ; mclvFree(&veccx) ; mclvFree(&vecdx) ; } else { double s2 = sums->ivps[d].val ; nom = nomleft * sqrt(Nssqs->ivps[d].val - s2*s2) ; score= nom ? ((N*ip - s1*s2) / nom) : 0.0 ;if(0)fprintf(stderr, "score %g\n", score) ; offending = nomleft ? d : c /* prepare in case !nom */ ; } } *offendingp = offending ; *nomp = nom ; *scorep = score ; return n_reduced ; } dim do_range_do ( const mclx* tbl , mclx* res , mclx* mxna , double cutoff , dim start , dim end , mclv* Nssqs , mclv* sums , mcxbits bits , mcxbool lower_diagonal , dim thread_id ) { dim c, p = 0 ; int n_mod = MCX_MAX(1+ (MCX_MAX(1, n_thread_l) * 2 * (end - start -1))/40, 1) ; mclv* scratch = mclvCopy(NULL, tbl->dom_cols) ; dim n_reduced = 0 ; for (c=start;cdom_cols->ivps[offending].val < 1.5) { char* label = tab_g ? mclTabGet(tab_g, offending, NULL) : NULL ; if (label) mcxErr(me, "constant data for label <%s> - no pearson", label) ; else mcxErr ( me , "constant data for %s %ld (mcl identifier %ld) - no pearson" , ((bits & ARRAY_TRANSPOSE) ? "column" : "row") , (long) (offending+1) , (long) offending ) ; tbl->dom_cols->ivps[offending].val = 2 ; } absscore = score ; if (absscore < 0) absscore *= -1 ; if (score && absscore >= cutoff) scratch->ivps[s].val = score , scratch->ivps[s].idx = tbl->cols[d].vid , s++ ; } { dim n = scratch->n_ivps ; scratch->n_ivps = s ; mclvAdd(res->cols+c, scratch, res->cols+c) ; res->cols[c].val = tbl->cols[c].n_ivps ; scratch->n_ivps = n ; } if (progress_g && (p+1) % n_mod == 0) fputc(thread_id < 10 ? '0' + thread_id : '.', stderr) ; p++ ; } mclvFree(&scratch) ; return n_reduced ; } dim do_range ( const mclx* tbl , mclx* res , mclx* mxna , double cutoff , dim start , dim end , mclv* Nssqs , mclv* sums , mcxbits bits , dim thread_id ) { dim n_reduced = 0, i ; if (!end || end > N_COLS(tbl)) end = N_COLS(tbl) ; for (i=start;idom_cols->ivps[i].val > 1.5) { mcxErr(me, "overlap in range %u-%u", (unsigned) start, (unsigned) end) ; break ; } res->dom_cols->ivps[i].val = 2.0 ; } if (1 && (bits & ARRAY_JOBINFO)) { fprintf(stdout, "%u\t%u\n", (unsigned) start, (unsigned) end) ; return 0 ; } n_reduced = do_range_do ( tbl , res , mxna , cutoff , start , end , Nssqs , sums , bits , TRUE , thread_id ) ; if (!sym_g) /* result is not symmetric, so compute upper diagonal separately */ n_reduced += do_range_do ( tbl , res , mxna , cutoff , start , end , Nssqs , sums , bits , FALSE , thread_id ) ; return n_reduced ; } typedef struct { const mclx* tbl ; mclx* res ; mclx* mxna ; double cutoff ; dim job_lo1 ; dim job_lo2 ; dim job_hi1 ; dim job_hi2 ; dim job_size ; mclv* Nssqs ; mclv* sums ; dim n_reduced ; mcxbits bits ; dim thread_id ; } array_data ; static void* array_thread ( void* arg ) { array_data* d = arg ; if (d->job_lo2 > d->job_hi1) { d->n_reduced = do_range(d->tbl, d->res, d->mxna, d->cutoff, d->job_lo1, d->job_hi2, d->Nssqs, d->sums, d->bits, d->thread_id) ;if (0) fprintf(stderr, "thread %d %d-%d\n", (int) d->thread_id, (int) d->job_lo1, (int) d->job_hi2) ; } else { d->n_reduced += do_range(d->tbl, d->res, d->mxna, d->cutoff, d->job_lo1, d->job_lo2, d->Nssqs, d->sums, d->bits, d->thread_id) ; d->n_reduced += do_range(d->tbl, d->res, d->mxna, d->cutoff, d->job_hi1, d->job_hi2, d->Nssqs, d->sums, d->bits, d->thread_id) ;if (0) fprintf ( stderr , "thread %d %d-%d and %d-%d\n" , (int) d->thread_id , (int) d->job_lo1 , (int) d->job_lo2 , (int) d->job_hi1 , (int) d->job_hi2 ) ; } return NULL ; } mclx* normalise ( mclx* tbl , const char* mode ) { mcxbool secondary = strchr(mode, 'S') ? TRUE : FALSE ; mcxbool bemean = strchr(mode, 'm') ? TRUE : FALSE ; mclx* thetbl = secondary ? mclxTranspose(tbl) : tbl ; double std, mean ; dim c ; for (c=0;ccols+c, N_ROWS(thetbl), &mean, &std) ; mclvAffine(thetbl->cols+c, mean, bemean ? 1.0 : std) ; } if (secondary) { mclxFree(&tbl) ; tbl = mclxTranspose(thetbl) ; mclxFree(&thetbl) ; } return tbl ; } int main ( int argc , const char* argv[] ) { int digits = MCLXIO_VALUE_GETENV ; double cutoff = -1.0001 ; mclx* res ; mcxIO* xfin = mcxIOnew("-", "r"), *xftab = NULL, *xftbl = NULL, *xfna = NULL ; mclv* Nssqs, *sums ; mcxbool read_table = FALSE ; const char* mode_normalise = "" ; mcxbool cutoff_specified = FALSE ; mcxbool write_binary = FALSE ; const char* fnout = "-", *fnseql = NULL, *fnseqr = NULL ; dim n_group_G = 1 ; dim i_group = 0 ; unsigned rskip = 0, cskip = 0, labelidx = 0 ; double N = 1.0 ; mclgTF* tf_result = NULL, *tf_table = NULL ; mcxTing* tf_result_spec = NULL, * tf_table_spec = NULL ; mcxbits bits = 0 ; dim nrows_max = 0 ; mcxstatus parseStatus = STATUS_OK ; mcxOption* opts, *opt ; mcxOptAnchorSortById(options, sizeof(options)/sizeof(mcxOptAnchor) -1) ; if (!(opts = mcxOptParse(options, (char**) argv, argc, 1, 0, &parseStatus))) exit(0) ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclxIOsetQMode("MCLXIOVERBOSITY", MCL_APP_VB_YES) ; mclx_app_init(stderr) ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; switch(anch->id) { case MY_OPT_HELP : mcxOptApropos(stdout, me, syntax, 0, MCX_OPT_DISPLAY_SKIP, options) ; return 0 ; case MY_OPT_NOTES : puts("A and B are vectors"); puts("A /\\B denotes the indices on which both A and B are nonzero"); puts("A* denotes the subset of entries of A restricted to A/\\B"); puts("B* denotes the subset of entries of B restricted to A/\\B"); puts(""); puts("median: min(median(A), median(B)) define the base score"); puts("average: min(avg(A*), avg(B*)) define the base score"); puts("cosine: cosine(A*, B*) reward coordinate pattern"); puts("euclid: sqrt(sumsq(A*) / sumsq(A)) A* should be large compared to A"); puts("isect: #A* / #A same as above, ignoring weights"); ; return 0 ; case MY_OPT_T : n_thread_l = atoi(opt->val) ; break ; case MY_OPT_JOBID : i_group = atoi(opt->val) ; break ; case MY_OPT_NJOBS : n_group_G = atoi(opt->val) ; break ; case MY_OPT_START : start_g = atoi(opt->val) ; break ; case MY_OPT_END : end_g = atoi(opt->val) ; break ; case MY_OPT_JI : bits |= ARRAY_JOBINFO ; break ; case MY_OPT_TP : bits |= ARRAY_TRANSPOSE ; break ; case MY_OPT_TABLE : mcxIOnewName(xfin, opt->val) ; read_table = TRUE ; break ; case MY_OPT_L : labelidx = atoi(opt->val) ; break ; case MY_OPT_ZEROASNA : bits |= ARRAY_ZEROASNA ; break ; case MY_OPT_WRITE_NA : xfna = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_LIMIT_ROWS : nrows_max = atoi(opt->val) ; break ; case MY_OPT_WRITE_TABLE : xftbl = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_TAB : xftab = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_TABLETRANSFORM : tf_table_spec = mcxTingNew(opt->val) ; break ; case MY_OPT_TRANSFORM : tf_result_spec = mcxTingNew(opt->val) ; break ; case MY_OPT_DATA : mcxIOnewName(xfin, opt->val) ; break ; case MY_OPT_NOPROGRESS : progress_g = FALSE ; break ; case MY_OPT_SEQR : fnseqr = opt->val ; break ; case MY_OPT_SEQL : fnseql = opt->val ; break ; case MY_OPT_RSKIP : rskip = atoi(opt->val) ; break ; case MY_OPT_CSKIP : cskip = atoi(opt->val) ; break ; case MY_OPT_RANKTRANSFORM : bits |= ARRAY_RANKTRANSFORM ; break ; case MY_OPT_NORMALISE : mode_normalise = opt->val ; break ; case MY_OPT_PEARSON : bits |= ARRAY_PEARSON ; break ; case MY_OPT_SPEARMAN : bits |= ARRAY_SPEARMAN ; bits |= ARRAY_RANKTRANSFORM ; break ; case MY_OPT_SUBSET_DIFF : bits |= ARRAY_SUBSET_DIFF ; sym_g = FALSE ; break ; case MY_OPT_FINGERPRINT : bits |= ARRAY_FINGERPRINT ; { const char* c = opt->val ; if (!strcmp(c, "tanimoto")) fingerprint_g = FP_TANIMOTO ; else if (!strcmp(c, "cosine")) fingerprint_g = FP_COSINE ; else if (!strcmp(c, "meet")) fingerprint_g = FP_MEET ; else if (!strcmp(c, "hamming")) fingerprint_g = FP_HAMMING ; else if (!strcmp(c, "cover")) fingerprint_g = FP_COVER , sym_g = FALSE ; else mcxDie(1, me, "unknown fingerprint mode %s", c) ; } break ; case MY_OPT_CONTENTX : bits |= ARRAY_CONTENT ; sym_g = FALSE ; { const char* c = opt->val ; for(;c[0];c++) switch(c[0]) { case 'v' : contentx_g |= CONTENT_AVERAGE ; break ; case 'c' : contentx_g |= CONTENT_COSINE ; break ; case 'e' : contentx_g |= CONTENT_EUCLID ; break ; case 'i' : contentx_g |= CONTENT_INTERSECT; break ; case 'm' : contentx_g |= CONTENT_MEDIAN ; break ; default: mcxDie(1, me, "unsupported mode -content mode [%c]", (int) (unsigned char) c[0]) ; } } break ; case MY_OPT_NW : bits |= ARRAY_NOWRITE ; break ; case MY_OPT_CONTENT : bits |= ARRAY_CONTENT ; sym_g = FALSE ; break ; case MY_OPT_SUBSET_MEET : bits |= ARRAY_SUBSET_MEET ; sym_g = FALSE ; break ; case MY_OPT_COSINE_SKEW : bits |= ARRAY_COSINESKEW ; sym_g = FALSE ; break ; case MY_OPT_DOT : bits |= ARRAY_DOT ; break ; case MY_OPT_COSINE : bits |= ARRAY_COSINE ; break ; case MY_OPT_WRITEBINARY : write_binary = TRUE ; break ; case MY_OPT_AMOIXA : mcxOptApropos ( stdout , me , NULL , 15 , MCX_OPT_DISPLAY_SKIP | MCX_OPT_DISPLAY_HIDDEN , options ) ; return 0 ; case MY_OPT_VERSION : app_report_version(me) ; return 0 ; case MY_OPT_CUTOFF : cutoff = atof(opt->val) ; cutoff_specified = TRUE ; break ; case MY_OPT_O : fnout = opt->val ; break ; case MY_OPT_DIGITS : digits = strtol(opt->val, NULL, 10) ; break ; } } ; mcxOptFree(&opts) ; if ((bits & ARRAY_CONTENT) && !contentx_g) contentx_g = CONTENT_DEFAULT ; if (n_group_G >= 1) { if (!n_thread_l) n_thread_l = 1 ; n_thread_l = mclx_set_threads_or_die(me, n_thread_l, i_group, n_group_G) ; } if (n_thread_l && (start_g || end_g)) mcxDie(1, me, "-start and -end do not mix with -t -J or -j") ; if (!(bits & (ARRAY_PEARSON | ARRAY_SPEARMAN | ARRAY_COSINE | ARRAY_COSINESKEW))) bits |= ARRAY_PEARSON ; if (!cutoff_specified) mcxDie(1, me, "-co option is required") ; if ( labelidx && ( ((bits & ARRAY_TRANSPOSE) && labelidx > rskip) || (!(bits & ARRAY_TRANSPOSE) && labelidx > cskip) ) ) mcxDie(1, me, "-l value requires larger or equally large skipc/skipr argument") ; else if ((bits & ARRAY_TRANSPOSE) && xftab && !labelidx && rskip == 1) labelidx = 1 ; else if (!(bits & ARRAY_TRANSPOSE) && xftab && !labelidx && cskip == 1) labelidx = 1 ; else if (xftab && !labelidx) mcxDie(1, me, "which column or row gives the label? Use -l") ; if (tf_table_spec && !(tf_table = mclgTFparse(NULL, tf_table_spec))) mcxDie(1, me, "input -tf-table spec does not parse") ; if (tf_result_spec && !(tf_result = mclgTFparse(NULL, tf_result_spec))) mcxDie(1, me, "input -tf spec does not parse") ; mcxIOopen(xfin, EXIT_ON_FAIL) ; if (xftab) mcxIOopen(xftab, EXIT_ON_FAIL) ; if (fnseql && fnseqr) { mcxIO* xf = mcxIOnew(fnseql, "r") ; mxseql = mclxRead(xf, EXIT_ON_FAIL) ; mcxIOclose(xf) ; mcxIOrenew(xf, fnseqr, NULL) ; mxseqr = mclxRead(xf, EXIT_ON_FAIL) ; mcxIOfree(&xf) ; } { mclx* mxna = NULL ; mclx* tbl = read_table /* fixme docme what is ARRAY_CONTENT about? */ ? ( (bits & ARRAY_JOBINFO && !(bits & ARRAY_CONTENT)) ? mclxReadSkeleton(xfin, 0, FALSE) : mclxRead(xfin, EXIT_ON_FAIL) ) : read_data(xfin, xftab, nrows_max, rskip, cskip, labelidx, bits, &mxna) /* fixme docme: do we ever assume that table is not sparsely encoded ? */ ; dim N_na = 0 ; mcxIOfree(&xfin) ; if (!tbl) mcxDie(1, me, "no table") ; if (read_table) mxna = mclxAllocClone(tbl) ; else N_na = mclxNrofEntries(mxna) ; if (N_na) mcxTell(me, "found a total of %lu NA/NaN entries", (ulong) N_na) ; if (tf_table) mclgTFexec(tbl, tf_table) ; if (N_na && (bits & ARRAY_ZEROASNA)) mcxErr(me, "--zero-as-na ignored, real NAs found in data") , bits ^= ARRAY_ZEROASNA ; if (bits & ARRAY_TRANSPOSE) { mclx* tp = mclxTranspose(tbl) ; mclx* tpna = mclxTranspose(mxna) ; mclxFree(&tbl) ; tbl = tp ; mclxFree(&mxna) ; mxna = tpna ; } if (xfna && mxna) { mclxWrite(mxna, xfna, digits, EXIT_ON_FAIL) ; mcxIOfree(&xfna) ; } if (strchr(mode_normalise, 'z')) tbl = normalise(tbl, mode_normalise) /* fixme funcify */ ; if (bits & ARRAY_RANKTRANSFORM) { dim d ; rank_unit* ru = mcxNAlloc ( N_ROWS(tbl) + 1 /* one extra for sentinel */ , sizeof(rank_unit) , rank_unit_init , EXIT_ON_FAIL ) ; for (d=0;dcols+d ; dim stretch = 1 ; dim i ; for (i=0;in_ivps;i++) { ru[i].index = v->ivps[i].idx ; ru[i].value = v->ivps[i].val ; ru[i].ord = -14 ; } qsort(ru, v->n_ivps, sizeof ru[0], rank_unit_cmp_value) ; ru[v->n_ivps].value = ru[v->n_ivps-1].value * 1.1 /* sentinel out-of-bounds value */ ; for (i=0;in_ivps;i++) { if (ru[i].value != ru[i+1].value) /* input current stretch */ { dim j ; for (j=0;jn_ivps, sizeof ru[0], rank_unit_cmp_index) ; for (i=0;in_ivps;i++) v->ivps[i].val = ru[i].ord ;if(0)fprintf(stderr, "vid %d id %d value from %.4g to %.1f\n", (int) v->vid, (int) v->ivps[i].idx, (double) ru[i].value, (double) ru[i].ord) ; } } if (strchr(mode_normalise, 'm')) tbl = normalise(tbl, mode_normalise) ; if (bits & ARRAY_ZEROASNA) { dim i ; if (bits & (ARRAY_COSINESKEW | ARRAY_SUBSET_MEET | ARRAY_SUBSET_DIFF | ARRAY_CONTENT | ARRAY_FINGERPRINT)) mcxDie(1, me, "--zero-as-na only supported with --spearman or --pearson or --cosine") ; if (!(bits & (ARRAY_SPEARMAN | ARRAY_PEARSON | ARRAY_COSINE))) mcxDie(1, me, "--zero-as-na only supported with --spearman or --pearson") ; for (i=0;idom_rows, tbl->cols+i, mxna->cols+i) ; mclxUnary(tbl, fltxCopy, NULL) /* this removes zeroes from the matrix */ ; } else { if (bits & (ARRAY_SUBSET_DIFF | ARRAY_SUBSET_MEET | ARRAY_CONTENT | ARRAY_FINGERPRINT)) mclxUnary(tbl, fltxCopy, NULL) /* this removes zeroes from the matrix */ ; else { dim i ; for (i=0;icols[i].n_ivps != N_ROWS(tbl)) mclvCanonicalEmbed(tbl->cols+i, tbl->cols+i, N_ROWS(tbl), 0.0) ; } } } if (xftbl) { if (write_binary) mclxbWrite(tbl, xftbl, RETURN_ON_FAIL) ; else mclxWrite(tbl, xftbl, digits, RETURN_ON_FAIL) ; mcxIOfree(&xftbl) ; } Nssqs = mclvCopy(NULL, tbl->dom_cols) ; sums = mclvCopy(NULL, tbl->dom_cols) ; N = MCX_MAX(N_ROWS(tbl), 1) /* fixme; bit odd */ ; { dim c ; for (c=0;ccols+c, 2.0) ; double sum = mclvSum(tbl->cols+c) ; Nssqs->ivps[c].val = N * sumsq ; sums->ivps[c].val = sum ; } } res = mclxAllocZero ( mclvCopy(NULL, tbl->dom_cols) , mclvCopy(NULL, tbl->dom_cols) ) ; { dim n_reduced =0 ;fprintf(stderr, "%d %d\n", (int) n_thread_l, (int) n_group_G) ; if (n_thread_l * n_group_G <= 1) n_reduced = do_range(tbl, res, mxna, cutoff, start_g, end_g, Nssqs, sums, bits, 0) ; else { struct jobinfo ji ; dim t_this_group = 0, t_max = 0, t = 0 /* Computation of the group of threads for a job * is somewhat complicated by our mini-job balancing as * described above. */ ; pthread_t *threads_array = mcxAlloc(n_thread_l * sizeof threads_array[0], EXIT_ON_FAIL) ; array_data* data = mcxAlloc(n_thread_l * sizeof data[0], EXIT_ON_FAIL) ; pthread_attr_t t_attr ; pthread_attr_init(&t_attr) /* fixme docme conditions under which last argument to ji_init * is effective (i.e. by_set_size works effectively) */ ; ji_init ( &ji , tbl , n_thread_l , n_group_G , i_group , bits & (ARRAY_FINGERPRINT | ARRAY_CONTENT | ARRAY_SUBSET_MEET | ARRAY_SUBSET_DIFF) ) ; while (ji.dvd_joblo2 < ji.dvd_jobhi1) { array_data* d = data+t_this_group ; if (!ji_step(&ji, t++, t_this_group)) continue ; d->tbl = tbl ; d->res = res ; d->mxna = mxna ; d->cutoff = cutoff ; d->job_lo1 = ji.dvd_joblo1 ; d->job_lo2 = ji.dvd_joblo2 ; d->job_hi1 = ji.dvd_jobhi1 ; d->job_hi2 = ji.dvd_jobhi2 ; d->job_size = ji.dvd_jobsize ; d->Nssqs = Nssqs ; d->sums = sums ; d->bits = bits ; d->n_reduced= 0 ; d->thread_id= t_this_group ; if (pthread_create(threads_array+t_this_group, &t_attr, array_thread, d)) mcxDie(1, me, "error creating thread %d", (int) t_this_group) ; t_this_group++ ; if (t_this_group > n_thread_l) mcxDie(1, me, "thread worker distribution off colour") ; } t_max = t_this_group /* fixme or document */ ; for (t=0; t < t_max; t++) pthread_join(threads_array[t], NULL) ; for (t=0; t < t_max; t++) n_reduced += data[t].n_reduced ; mcxFree(threads_array) ; mcxFree(data) ; } if (bits & ARRAY_JOBINFO) return 0 ; if (progress_g) fputc('\n', stderr) ; if (N_na) { dim i, n_row_with_na = 0 ; for (i=0;icols[i].n_ivps) n_row_with_na++ ; mcxTell ( me , "fraction of computations involving NA: %.2f" , (double) ((2.0 * n_reduced - n_row_with_na) / (N_COLS(tbl) * 1.0 * N_COLS(tbl))) ) , mcxTell ( me , "number of rows with NA: %d" , (int) n_row_with_na ) ; } else if ((bits & ARRAY_ZEROASNA)) { dim i, n_row_with_na = 0 ; for (i=0;icols[i].n_ivps != N_ROWS(tbl)) { n_row_with_na++ ; } mcxTell ( me , "fraction of computations involving zero-as-NA: %.2f" , (double) ((2.0 * n_reduced - n_row_with_na) / (N_COLS(tbl) * N_COLS(tbl))) ) , mcxTell ( me , "number of rows with zero-as-NA: %d" , (int) n_row_with_na ) ; } } if (sym_g) mclxAddTranspose(res, 0.5) ; mclxFree(&tbl) ; mclxFree(&mxna) ; } if (tf_result) mclgTFexec(res, tf_result) ; if (bits & ARRAY_NOWRITE) return 0 ; mclvFree(&Nssqs) ; mclvFree(&sums) ; { mcxstatus s ; mcxIO* xfout = mcxIOnew(fnout, "w") ; s = write_binary ? mclxbWrite(res, xfout, RETURN_ON_FAIL) : mclxWrite(res, xfout, digits, RETURN_ON_FAIL) ; if (s) { mcxTing* tg = mcxTingPrint(NULL, "/tmp/%s.%ld", retry_g, (long) getpid()) ; mcxIOclose(xfout) ; mcxIOrenew(xfout, tg->str, NULL) ; mcxErr(me, "write to [%s] failed, now trying [%s]", fnout, tg->str) ; if (write_binary) mclxbWrite(res, xfout, RETURN_ON_FAIL) ; else mclxWrite(res, xfout, digits, RETURN_ON_FAIL) ; mcxTingFree(&tg) ; } mcxIOfree(&xfout) ; } mclxFree(&res) ; mclxFree(&mxseqr) ; mclxFree(&mxseql) ; return 0 ; } /* M use median V use average S use sum(abs) E use sqrt(ssq) N use #entries A vector A a vector A* B vector B b vector B* c cosine(a,b) + / * r */ mcl-12-135/src/shmx/mcxmap.c0000644000402500021140000002416711531205216012476 00000000000000/* (C) Copyright 2001, 2002, 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include "impala/matrix.h" #include "impala/vector.h" #include "impala/io.h" #include "impala/iface.h" #include "impala/app.h" #include "mcl/interpret.h" #include "util/io.h" #include "util/err.h" #include "util/opt.h" #include "util/types.h" enum { MY_OPT_IMX , MY_OPT_TAB , MY_OPT_OUT , MY_OPT_MUL , MY_OPT_CMUL , MY_OPT_RMUL , MY_OPT_SHIFT , MY_OPT_CSHIFT , MY_OPT_RSHIFT , MY_OPT_MAP , MY_OPT_CMAP , MY_OPT_RMAP , MY_OPT_MAPI , MY_OPT_CMAPI , MY_OPT_RMAPI , MY_OPT_MAKE_MAP , MY_OPT_MAKE_MAPC , MY_OPT_MAKE_MAPR , MY_OPT_HELP , MY_OPT_APROPOS , MY_OPT_VERSION } ; const char* me = "mcxmap"; const char* syntax = "Usage: mcxmap [options]"; mcxOptAnchor options[] = { { "-h" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "--version" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_VERSION , NULL , "print version information" } , { "--help" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_APROPOS , NULL , "print this help" } , { "-shift" , MCX_OPT_HASARG , MY_OPT_SHIFT , "" , "shift domain indices by " } , { "-cshift" , MCX_OPT_HASARG , MY_OPT_CSHIFT , "" , "shift column indices by " } , { "-rshift" , MCX_OPT_HASARG , MY_OPT_RSHIFT , "" , "shift row indices by " } , { "-mul" , MCX_OPT_HASARG , MY_OPT_MUL , "" , "multiply domain indices by " } , { "-cmul" , MCX_OPT_HASARG , MY_OPT_CMUL , "" , "multiply column indices by " } , { "-rmul" , MCX_OPT_HASARG , MY_OPT_RMUL , "" , "multiply row indices by " } , { "-map" , MCX_OPT_HASARG , MY_OPT_MAP , "" , "map domain indices" } , { "-cmap" , MCX_OPT_HASARG , MY_OPT_CMAP , "" , "map column indices" } , { "-rmap" , MCX_OPT_HASARG , MY_OPT_RMAP , "" , "map row indices" } , { "-mapi" , MCX_OPT_HASARG , MY_OPT_MAPI , "" , "map domain indices with inverse" } , { "-cmapi" , MCX_OPT_HASARG , MY_OPT_CMAPI , "" , "map column indices with inverse" } , { "-rmapi" , MCX_OPT_HASARG , MY_OPT_RMAPI , "" , "map row indices with inverse" } , { "-make-map" , MCX_OPT_HASARG , MY_OPT_MAKE_MAP , "" , "canonify domain indices, write map file" } , { "-make-mapc" , MCX_OPT_HASARG , MY_OPT_MAKE_MAPC , "" , "canonify column indices, write map file" } , { "-make-mapr" , MCX_OPT_HASARG , MY_OPT_MAKE_MAPR , "" , "canonify row indices, write map file" } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUT , "" , "write output to file " } , { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "use matrix from file " } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "use tab file from " } , { NULL, 0, 0, NULL, NULL } } ; int main ( int argc , const char* argv[] ) { mcxIO *xfin = mcxIOnew("-", "r") ; mcxIO *xfout = mcxIOnew("-", "w") ; mclMatrix *mx = NULL ; mclx* cmapx = NULL, *rmapx = NULL ; const char* me = "mcxmap" ; long cshift = 0 ; long rshift = 0 ; long cmul = 1 ; long rmul = 1 ; mcxIO* xf_cannc = NULL ; mcxIO* xf_cannr = NULL ; mcxstatus status = STATUS_OK ; mcxbool invert = FALSE ; mcxbool invertr = FALSE ; mcxbool invertc = FALSE ; mcxIO* xf_map_c = NULL, *xf_map_r = NULL, *xf_map = NULL, *xf_tab = NULL ; mcxOption* opts, *opt ; mcxstatus parseStatus = STATUS_OK ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclxIOsetQMode("MCLXIOVERBOSITY", MCL_APP_VB_NO) ; mclx_app_init(stderr) ; mcxOptAnchorSortById(options, sizeof(options)/sizeof(mcxOptAnchor) -1) ; opts = mcxOptParse(options, (char**) argv, argc, 1, 0, &parseStatus) ; if (!opts) exit(0) ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; switch(anch->id) { case MY_OPT_HELP : case MY_OPT_APROPOS : mcxOptApropos(stdout, me, syntax, 0, 0, options) ; return 0 ; case MY_OPT_VERSION : app_report_version(me) ; return 0 ; case MY_OPT_IMX : mcxIOnewName(xfin, opt->val) ; break ; case MY_OPT_OUT : mcxIOnewName(xfout, opt->val) ; break ; case MY_OPT_MUL : cmul = atol(opt->val) ; rmul = cmul ; break ; case MY_OPT_CMUL : cmul = atol(opt->val) ; break ; case MY_OPT_RMUL : rmul = atol(opt->val) ; break ; case MY_OPT_SHIFT : cshift = atol(opt->val) ; rshift = atol(opt->val) ; break ; case MY_OPT_CSHIFT : cshift = atol(opt->val) ; break ; case MY_OPT_RSHIFT : rshift = atol(opt->val) ; break ; case MY_OPT_MAP : xf_map = mcxIOnew(opt->val, "r") ; invert = FALSE ; break ; case MY_OPT_CMAP : invertc = FALSE ; xf_map_c = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_RMAP : invertr = FALSE ; xf_map_r = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_MAPI : invert = TRUE ; xf_map = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_CMAPI : invertc = TRUE ; xf_map_c = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_RMAPI : invertr = TRUE ; xf_map_r = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_MAKE_MAP : xf_cannc = mcxIOnew(opt->val, "w") ; xf_cannr = xf_cannc ; break ; case MY_OPT_MAKE_MAPC : xf_cannc = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_MAKE_MAPR : xf_cannr = mcxIOnew(opt->val, "w") ; break ; case MY_OPT_TAB : xf_tab = mcxIOnew(opt->val, "r") ; break ; } } /* little special case. restructure when it grows */ if (xf_tab) { mclTab* tab1, *tab2 ; if (xf_map) { mcxIOopen(xf_map, EXIT_ON_FAIL) ; cmapx = mclxRead(xf_map, EXIT_ON_FAIL) ; } else mcxDie(1, me, "-tab option requires -map option") ; tab1 = mclTabRead(xf_tab, NULL, EXIT_ON_FAIL) ; if ((tab2 = mclTabMap(tab1, cmapx))) mclTabWrite(tab2, xfout, NULL, EXIT_ON_FAIL) ; else mcxDie(1, me, "map file error (subsumption/bijection)") ; return 0 ; } mx = mclxRead(xfin, EXIT_ON_FAIL) ; if (xf_map) { mcxIOopen(xf_map, EXIT_ON_FAIL) ; cmapx = mclxRead(xf_map, EXIT_ON_FAIL) ; rmapx = cmapx ; } else { if (xf_map_c) { mcxIOopen(xf_map_c, EXIT_ON_FAIL) ; cmapx = mclxRead(xf_map_c, EXIT_ON_FAIL) ; } else if (cshift || cmul > 1) cmapx = mclxMakeMap ( mclvCopy(NULL, mx->dom_cols) , mclvMap(NULL, cmul, cshift, mx->dom_cols) ) ; else if (xf_cannc) /* fixme slightly flaky interface */ { cmapx = mclxMakeMap ( mclvCopy(NULL, mx->dom_cols) , mclvCanonical(NULL, mx->dom_cols->n_ivps, 1.0) ) ; mclxWrite(cmapx, xf_cannc, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; } if (xf_map_r) { mcxIOopen(xf_map_r, EXIT_ON_FAIL) ; rmapx = mclxRead(xf_map_r, EXIT_ON_FAIL) ; } else if (rshift || rmul > 1) rmapx = mclxMakeMap ( mclvCopy(NULL, mx->dom_rows) , mclvMap(NULL, rmul, rshift, mx->dom_rows) ) ; else if (xf_cannr) { rmapx = mclxMakeMap ( mclvCopy(NULL, mx->dom_rows) , mclvCanonical(NULL, mx->dom_rows->n_ivps, 1.0) ) ; if (xf_cannr != xf_cannc) mclxWrite(rmapx, xf_cannr, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; else if (!mclxIsGraph(mx)) mcxErr(me, "row map not written but matrix is not a graph") ; } } if (invert && cmapx && cmapx == rmapx) { mclx* cmapxi = mclxTranspose(cmapx) ; mclxFree(&cmapx) ; cmapx = rmapx = cmapxi ; } else { if ((invert || invertr) && rmapx) { mclx* rmapxi = mclxTranspose(rmapx) ; mclxFree(&rmapx) ; rmapx = rmapxi ; } if ((invert || invertc) && cmapx) { mclx* cmapxi = mclxTranspose(cmapx) ; mclxFree(&cmapx) ; cmapx = cmapxi ; } } ; status = STATUS_FAIL ; do { if (cmapx && mclxMapCols(mx, cmapx)) break ; if (rmapx && mclxMapRows(mx, rmapx)) break ; status = STATUS_OK ; } while (0) ; if (status) { mcxErr(me, "error, nothing written") ; return 1 ; } mclxWrite(mx, xfout, MCLXIO_VALUE_GETENV, EXIT_ON_FAIL) ; return 0 ; } mcl-12-135/src/shmx/mcxrand.c0000644000402500021140000006557111705541237012662 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* * TODO * - generate random clusterings * - warn on strange/wrong combinations of options (shuffle & xxx) * - support DAGs * - for small matrices and many additions keep track of * matrix with non-edges (worthwhile?). * - Poisson distribution, others. * # prove that Pierre's approach to Gaussians works. * - pick value according to sampled distribution or removals * - we use only lower bits for edge selection * - insertion is slow due to array insertion; * ideally store graph in a hash. */ #define DEBUG 0 #include #include #include #include #include #include #include #include #include #include #include #include #include #include "impala/io.h" #include "impala/stream.h" #include "impala/ivp.h" #include "impala/app.h" #include "impala/compose.h" #include "impala/iface.h" #include "util/types.h" #include "util/ding.h" #include "util/array.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/equate.h" #include "util/rand.h" #include "util/opt.h" #include "mcl/proc.h" #include "mcl/procinit.h" #include "mcl/alg.h" #include "clew/clm.h" #include "gryphon/path.h" const char* me = "mcxrand"; void usage ( const char** ) ; enum { MY_OPT_APROPOS , MY_OPT_HELP , MY_OPT_VERSION , MY_OPT_OUT , MY_OPT_WB , MY_OPT_PLUS , MY_OPT_IMX , MY_OPT_GEN , MY_OPT_ADD , MY_OPT_N_SDEV , MY_OPT_SHUFFLE , MY_OPT_PA , MY_OPT_NW , MY_OPT_REMOVE , MY_OPT_N_RADIUS , MY_OPT_N_RANGE , MY_OPT_E_MIN , MY_OPT_E_MAX , MY_OPT_G_MEAN , MY_OPT_G_SDEV , MY_OPT_G_RADIUS , MY_OPT_G_MIN , MY_OPT_G_MAX , MY_OPT_SKEW } ; const char* syntax = "Usage: mcxrand [options] -imx "; mcxOptAnchor options[] = { { "--help" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_APROPOS , NULL , "print this help" } , { "-h" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "--version" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_VERSION , NULL , "print version information" } , { "-gen" , MCX_OPT_HASARG , MY_OPT_GEN , "" , "node count" } , { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "input matrix" } , { "-noise-radius" , MCX_OPT_HASARG , MY_OPT_N_RADIUS , "" , "edge perturbation maximum absolute size" } , { "-noise-sdev" , MCX_OPT_HASARG , MY_OPT_N_SDEV , "" , "edge perturbation standard deviation" } , { "-noise-range" , MCX_OPT_HASARG , MY_OPT_N_RANGE , "" , "number of standard deviations allowed" } , { "-new-g-radius" , MCX_OPT_HASARG , MY_OPT_G_RADIUS , "" , "maximum spread to generate new edges with" } , { "-new-g-mean" , MCX_OPT_HASARG , MY_OPT_G_MEAN , "" , "mean to generate new edges with" } , { "-new-g-min" , MCX_OPT_HASARG , MY_OPT_G_MIN , "" , "absolute lower bound for generated weights" } , { "-new-g-max" , MCX_OPT_HASARG , MY_OPT_G_MAX , "" , "absolute upper bound for generated weights" } , { "-new-g-sdev" , MCX_OPT_HASARG , MY_OPT_G_SDEV , "" , "standard deviation to generate new edges with" } , { "-edge-min" , MCX_OPT_HASARG , MY_OPT_E_MIN , "" , "edge addition weight minimum (use -edge-max as well)" } , { "-edge-max" , MCX_OPT_HASARG , MY_OPT_E_MAX , "" , "edge addition weight maximum (use -edge-min as well)" } , { "-skew" , MCX_OPT_HASARG , MY_OPT_SKEW , "" , "skew towards min ( > 1) or max ( < 1)" } , { "-remove" , MCX_OPT_HASARG , MY_OPT_REMOVE , "" , "remove edges" } , { "--write-binary" , MCX_OPT_DEFAULT , MY_OPT_WB , NULL , "write binary format" } , { "+" , MCX_OPT_HIDDEN , MY_OPT_PLUS , NULL , "write binary format" } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUT , "" , "output matrix to " } , { "-add" , MCX_OPT_HASARG , MY_OPT_ADD , "" , "add edges not yet present" } , { "-shuffle" , MCX_OPT_HASARG , MY_OPT_SHUFFLE , "" , "shuffle edge, repeat times" } , { "--no-write" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_NW , NULL , "exit after computation (some modes only)" } , { "-pa" , MCX_OPT_HASARG , MY_OPT_PA , "/" , "create graph with V nodes using preferential attachment, m edges per step" } , { NULL, 0, 0, NULL, NULL } } ; int dimCmp ( const void* xp , const void* yp ) { return *((dim*) xp) < *((dim*) yp) ? -1 : *((dim*) xp) > *((dim*) yp) ? 1 : 0 ; } static void mx_readd_diagonal ( mclx* mx , mclv* diag ) { dim i ; for (i=0;in_ivps;i++) { mclp* ivp = diag->ivps+i ; if (ivp->val) mclvInsertIdx(mx->cols+i, ivp->idx, ivp->val) ; } } /* NOTE currently callers needs to ensure edge sorting by src and dst. * -> to be upgraded. * NOTE within a chunk of sorted src, dst may be repeated. * NOTE currently callers need to ensure there is a sentinel edge * (with src member larger than largest columnd domain index) */ mclx* mcleAddtoCanonical ( mcle* E , dim n_e , mclx* dst ) { if (!mclxColCanonical(dst)) { mcxErr("mcleAddtoCanonical", "require canonical column domain") ; return dst ; } { const mcle* ez = E+n_e, *ea = E, *eb = NULL ; for (eb=ea; eb < ez; eb++) { if (eb->src != ea->src) /* works for last vector courtesy of sentinel */ { if (ea->src < N_COLS(dst)) { mclv* v = dst->cols+ea->src ; dim i = 0, ii = 0 ; mclvResize(v, eb-ea) /* iterating over this many */ ; for (i=0; i< eb-ea; i++) { if (i && v->ivps[ii-1].idx == ea[i].dst) v->ivps[ii-1].val += ea[i].val ; else v->ivps[ii].idx = ea[i].dst , v->ivps[ii].val = ea[i].val , ii++ ;if(0)fprintf(stderr, "make %d->%d %g at %d, vec %d\n", (int) v->vid, (int) ea[i].dst, v->ivps[ii-1].val, (int) ii, (int) v->vid) ; } v->n_ivps = ii ; } ea = eb ; } } } return dst ; } static mclx* pref_attach3 ( dim n_V , dim m , double p ) { dim n = 0, e_i = 2 ; const mcle e0 = { 0, 1, 1.0 }, e1 = { 1, 0, 1.0 } ; mcle* E = calloc(1 + m * n_V, sizeof E[0]) ; mclx* mx = mclxAllocZero ( mclvCanonical(NULL, n_V, 1.0) , mclvCanonical(NULL, n_V, 1.0) ) ; if (n_V <= 1) return mx ; E[0] = e0 ; E[1] = e1 ; for (n=2; n < n_V; n++) { int i_m = 0 ; dim e_ii = e_i ; do { unsigned long rx = random() ; unsigned long range = 2 * e_ii ; unsigned long ry = rx % range ; unsigned long rlimit = range * (RAND_MAX / range) ; unsigned lucky = 0 ;if(0)fprintf(stderr, "lucky %d\n", (int) lucky) ; if (rx >= rlimit) /* fixme slight risk of infinite loop */ { fputc('.', stderr) ; continue ; } lucky = ry & 1 ? E[ry/2].dst : E[ry/2].src ; E[e_i].src = n ; E[e_i].dst = lucky ; E[e_i++].val = 1.0 ; i_m++ ; } while (i_m < m) ; qsort(E+e_ii, e_i - e_ii, sizeof E[0], mcleDstCmp) ; } fputc('\n', stderr) ; E[e_i].src = n_V ; E[e_i].dst = n_V ; E[e_i++].val = 0.0 ; mcleAddtoCanonical(E, e_i, mx) ; mclxAddTranspose(mx, 0.0) ; free(E) ; return mx ; } #if 0 static mclx* pref_attach2 ( dim n_V , dim m , double p ) { dim n = 0, e_i = 2 ; const mcle e0 = { 0, 1, 1.0 }, e1 = { -1, 0, 1.0 } ; mcle* E = calloc(1 + 2 * m * n_V, sizeof E[0]) ; mclx* mx = mclxAllocZero ( mclvCanonical(NULL, n_V, 1.0) , mclvCanonical(NULL, n_V, 1.0) ) ; if (n_V <= 1) return mx ; E[0] = e0 ; E[1] = e1 ; E[0].val = 1.0 ; E[1].val = 1.0 ; for (n=2; n < n_V; n++) { int i_m = 0 ; dim e_ii = e_i ; do { unsigned long rx = random() ; unsigned long ry = rx % e_ii ; unsigned long rlimit = e_ii * (RAND_MAX / e_ii) ; unsigned lucky = E[ry].dst ;if(0)fprintf(stderr, "lucky %d\n", (int) lucky) ; if (rx >= rlimit) /* fixme slight risk of the infinite */ { fputc('.', stderr) ; continue ; } E[e_i].src = n /* this is the one to keep */ ; E[e_i].dst = lucky ; E[e_i++].val = 1.0 ; E[e_i].src = -1 /* this is just to aid preferential selection (on dst) */ ; E[e_i].dst = n /* NOTE e_i not attainable by ry in this do() */ ; E[e_i++].val = 1.0 ; i_m++ ; } while (i_m < m) ; qsort(E+e_ii, e_i - e_ii, sizeof E[0], mcleDstCmp) ; } /* only keep a single arc per edge; add sentinel edge */ { dim e_ii, e_a = 1 ; for (e_ii=1; e_ii= 0) E[e_a++] = E[e_ii] ; e_i = e_a ; E[e_i].src = n_V ; E[e_i].dst = n_V ; E[e_i++].val = 0.0 ; } mcleAddtoCanonical(E, e_i, mx) ; mclxAddTranspose(mx, 0.0) ; free(E) ; return mx ; } #endif #if 0 static mclx* pref_attach ( dim n_V , dim m , double p ) { dim n = 0, sumdegree = 0 ; dim* degree = calloc(n_V, sizeof degree[0]) ; mclx* mx = mclxAllocZero ( mclvCanonical(NULL, n_V, 1.0) , mclvCanonical(NULL, n_V, 1.0) ) ; if (n_V <= 1) return mx ; mclgEdgeAdd(mx, 0, 1, 1.0 * m) ; degree[0] = m ; degree[1] = m ; sumdegree = 2 * m ; for (n=2; n < n_V; n++) { int i_m = 0 ; do { unsigned long rx = random() ; unsigned long ry = 1 + (rx % sumdegree), rtest = 0, j = 0 ;if(0 && ry >= sumdegree)fprintf(stderr, "ry sumdegree %d %d at %d\n", (int) ry, (int) sumdegree, (int) n) ; if (rx >= sumdegree * (RAND_MAX / sumdegree)) /* fixme slight risk of the infinite */ continue ; for (j=0;j= ry) break ; } if (j == n) mcxErr(me, "test %d / %d failed at %d", (int) rtest, (int) sumdegree, (int) n) ; mclgEdgeAddto(mx, j, n, 1.0) ; degree[j]++ ; degree[n]++ ; sumdegree++ /* only accounts for j node, *not* for n node; that's done below */ ; i_m++ ; } while (i_m < m) ; if (degree[n] != m) mcxErr(me, "low %d %d at %d", (int) degree[n], (int) m, (int) n) ; sumdegree += degree[n] ; } return mx ; } #endif void static do_the_shuffle ( mclx* mx , dim N_shuffle , dim* offsets /* size N_COLS(mx) */ , dim N_edge , dim random_ignore ) { dim n_shuffle = 0 ; while (n_shuffle < N_shuffle) { unsigned long rx = (unsigned long) random() ; unsigned long ry = (unsigned long) random() ; mclp* ivpll, *ivplr, *ivprl, *ivprr ; dim edge_x, edge_y, *edge_px, *edge_py ; ofs xro, yro, xlo, ylo = -1, vxo, vyo ; long xl, xr, yl, yr ; mclv* vecxl, *vecxr, *vecyl, *vecyr ; double xlval, xrval, ylval, yrval ; if (rx >= random_ignore || ry >= random_ignore) continue ; edge_x = rx % N_edge /* fixme probably not optimal */ ; edge_y = ry % N_edge /* fixme probably not optimal */ ; if (!(edge_px = mcxBsearchFloor(&edge_x, offsets, N_COLS(mx), sizeof edge_x, dimCmp))) mcxDie(1, me, "edge %ld not found (max %ld)", (long) edge_x, (long) N_edge) ; if (!(edge_py = mcxBsearchFloor(&edge_y, offsets, N_COLS(mx), sizeof edge_y, dimCmp))) mcxDie(1, me, "edge %ld not found (max %ld)", (long) edge_y, (long) N_edge) ; vxo = edge_px - offsets ; xl = mx->dom_cols->ivps[vxo].idx ; vecxl = mx->cols+vxo ; xro = edge_x - offsets[vxo] ; vyo = edge_py - offsets ; yl = mx->dom_cols->ivps[vyo].idx ; vecyl = mx->cols+vyo ; yro = edge_y - offsets[vyo] /* Offset computation gone haywire */ ; if (xro >= vecxl->n_ivps || yro >= vecyl->n_ivps) /* note: mixed sign comparison */ mcxDie(1, me, "paradox 1 in %ld or %ld", xl, yl) ; xr = vecxl->ivps[xro].idx ; yr = vecyl->ivps[yro].idx ; xrval = vecxl->ivps[xro].val ; yrval = vecyl->ivps[yro].val /* Impossible, should have graph */ ; vecxr = mclxGetVector(mx, xr, EXIT_ON_FAIL, NULL) ; vecyr = mclxGetVector(mx, yr, EXIT_ON_FAIL, NULL) /* check that we have four different nodes * loops are not present so no need to check those */ ; if (xl == yl || xl == yr || xr == yl || xr == yr) continue ; if ( (0 > (xlo = mclvGetIvpOffset(vecxr, xl, -1))) || (0 > (ylo = mclvGetIvpOffset(vecyr, yl, -1))) ) mcxDie ( 1 , me , "symmetry violation 1" " %ld not found in %ld/%ld OR %ld not found in %ld/%ld" , (long) xl, (long) vecxr->vid, (long) vecxr->n_ivps , (long) yl, (long) vecyr->vid, (long) vecyr->n_ivps ) /* Now: xl yl : ivpll * xl yr : ivplr * xr yl : ivprl * xr yr : ivprr */ ; xlval = vecxr->ivps[xlo].val ; ylval = vecyr->ivps[ylo].val ; ivpll = mclvGetIvp(vecxl, yl, NULL) ; ivplr = mclvGetIvp(vecxl, yr, NULL) ; ivprl = mclvGetIvp(vecxr, yl, NULL) ; ivprr = mclvGetIvp(vecxr, yr, NULL) ; if ( (ivpll && !mclvGetIvp(vecyl, xl, NULL)) || (ivplr && !mclvGetIvp(vecyr, xl, NULL)) || (ivprl && !mclvGetIvp(vecyl, xr, NULL)) || (ivprr && !mclvGetIvp(vecyr, xr, NULL)) ) mcxDie(1, me, "symmetry violation 2") ; if ((ivpll && ivplr) || (ivprl && ivprr)) continue ; { if (!ivpll && !ivprr) { /* vecxl <-> xr becomes vecxl <-> yl * vecxr <-> xl becomes vecxr <-> yr * vecyl <-> yr becomes vecyl <-> xl * vecyr <-> yl becomes vecyr <-> xr */ ; if ( mclvReplaceIdx(vecxl, xro, yl, xrval) || mclvReplaceIdx(vecyl, yro, xl, xrval) || mclvReplaceIdx(vecxr, xlo, yr, ylval) || mclvReplaceIdx(vecyr, ylo, xr, ylval) ) mcxDie(1, me, "parallel replacement failure\n") #if DEBUG ;fprintf(stderr, "parallel edge change remove %d-%d %d-%d add %d-%d %d-%d\n", vecxl->vid, xr, vecyr->vid, yl, vecxl->vid, yl, vecyr->vid, xr) #endif ; } else if (!ivplr && !ivprl) { /* vecxl -> xr becomes vecxl <-> yr * vecxr -> xl becomes vecxr <-> yl * vecyl -> yr becomes vecyl <-> xr * vecyr -> yl becomes vecyr <-> xl */ if ( mclvReplaceIdx(vecxl, xro, yr, xrval) || mclvReplaceIdx(vecyr, ylo, xl, xlval) || mclvReplaceIdx(vecxr, xlo, yl, yrval) || mclvReplaceIdx(vecyl, yro, xr, yrval) ) mcxDie(1, me, "cross replacement failure\n") #if DEBUG ;fprintf(stderr, "cross edge change remove %d-%d %d-%d add %d-%d %d-%d\n", vecxl->vid, xr, vecyl->vid, yr, vecxl->vid, yr, vecyl->vid, xr) #endif ; } } n_shuffle++ ; } } static dim do_remove ( mclx* mx , dim N_remove , dim* offsets /* size N_COLS(mx) */ , dim N_edge , dim random_ignore ) { dim n_remove = 0 ; while (n_remove < N_remove) { unsigned long r = (unsigned long) random() ; dim e, *ep ; ofs xo, yo ; long x ; mclv* vecx ; if (r >= random_ignore) continue ; e = r % N_edge ; if (!(ep = mcxBsearchFloor(&e, offsets, N_COLS(mx), sizeof e, dimCmp))) mcxDie(1, me, "edge %ld not found (max %ld)", (long) e, (long) N_edge) ; xo = ep - offsets ;if(DEBUG)fprintf(stderr, "have e=%d o=%d\n", (int) e, (int) xo) ; x = mx->dom_cols->ivps[xo].idx ; vecx = mx->cols+xo; ; yo = e - offsets[xo] ; if (yo >= vecx->n_ivps) /* note: mixed sign comparison */ mcxDie ( 1 , me , "vector %ld has not enough entries: %ld < %ld" , (long) vecx->vid , (long) vecx->n_ivps , (long) yo ) ; if (!vecx->ivps[yo].val) continue ; vecx->ivps[yo].val = 0.0 ;if(DEBUG)fprintf(stderr, "remove [%d] %ld %ld\n", (int) n_remove, (long) x, (long) vecx->ivps[yo].idx) ; n_remove++ ; } return n_remove ; } static dim do_add ( mclx* mx , dim N_add , dim N_edge , double *l_mean , double l_radius , double l_sdev , double l_min , double l_max , double skew , double e_min , double e_max ) { dim n_add = 0 ; while (n_add < N_add) { unsigned long r = (unsigned long) random() ; unsigned long s = (unsigned long) random() ; long x, y ; double val ; mclp* ivp ; dim xo = r % N_COLS(mx) /* fixme, modulo is commonly recommended against */ ; dim yo = s % N_COLS(mx) ; if (xo > yo) { long zo = xo ; xo = yo ; yo = zo ; } else if (xo == yo) /* never add loops */ continue ; x = mx->dom_cols->ivps[xo].idx ; y = mx->dom_cols->ivps[yo].idx ; if (N_edge >= N_COLS(mx) * (N_COLS(mx)-1) / 2) break ; ivp = mclvGetIvp(mx->cols+xo, y, NULL) ; if (ivp && ivp->val) continue ; if (l_mean) { do { val = mcxNormalCut(l_radius, l_sdev) ; if (skew) { val = (l_radius + val) / (2 * l_radius) /* ^ map (l_radius + val) to lie within [0,1] */ ; val = pow(val, skew) /* skew it */ ; val = (val * 2 * l_radius) - l_radius /* map it back */ ; } val += l_mean[0] ; } while (l_min < l_max && (val < l_min || val > l_max)) ; } /* docme: uniform */ else { val = (((unsigned long) random()) * 1.0) / RAND_MAX ; if (skew) val = pow(val, skew) ; val = e_min + val * (e_max - e_min) ; } if (!val) continue ;if(DEBUG)fprintf(stderr, "add [%d] %ld %ld value %f\n", (int) n_add, (long) x, (long) y, val) ; mclvInsertIdx(mx->cols+xo, y, val) ; N_edge++ ; n_add++ ; } return n_add ; } int main ( int argc , const char* argv[] ) { mcxIO* xfmx = mcxIOnew("-", "r"), *xfout = mcxIOnew("-", "w") ; mclx* mx = NULL ; mclv* mx_diag = NULL ; mcxstatus parseStatus = STATUS_OK ; mcxOption* opts, *opt ; dim N_edge = 0 ; dim* offsets ; dim template_n_nodes = 0 ; mcxbool plus = FALSE ; double e_min = 1.0 ; double e_max = 0.0 ; double skew = 0.0 ; double radius = 0.0 ; double n_sdev = 0.5 ; double n_range = 2.0 ; double g_radius = 0.0 ; double g_mean = 0.0 ; double g_sdev = 0.0 ; double g_min = 1.0 ; double g_max = 0.0 ; mcxbool do_gaussian = FALSE ; mcxbool no_write = FALSE ; dim i = 0 ; dim N_remove = 0 ; dim N_add = 0 ; dim N_shuffle = 0 ; unsigned N_pa = 0 ; unsigned m_pa = 0 ; unsigned long random_ignore = 0 ; srandom(mcxSeed(2308947)) ; mcxOptAnchorSortById(options, sizeof(options)/sizeof(mcxOptAnchor) -1) ; if (!(opts = mcxOptParse(options, (char**) argv, argc, 1, 0, &parseStatus))) exit(0) ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclxIOsetQMode("MCLXIOVERBOSITY", MCL_APP_VB_YES) ; mclx_app_init(stderr) ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; switch(anch->id) { case MY_OPT_HELP : case MY_OPT_APROPOS : mcxOptApropos(stdout, me, syntax, 20, MCX_OPT_DISPLAY_SKIP, options) ; return 0 ; case MY_OPT_VERSION : app_report_version(me) ; return 0 ; case MY_OPT_SKEW : skew = atof(opt->val) ; break ; case MY_OPT_GEN : template_n_nodes = atoi(opt->val) ; break ; case MY_OPT_IMX : mcxIOrenew(xfmx, opt->val, NULL) ; break ; case MY_OPT_PLUS : case MY_OPT_WB : plus = TRUE ; break ; case MY_OPT_OUT : mcxIOrenew(xfout, opt->val, NULL) ; break ; case MY_OPT_E_MAX : if (!strcmp(opt->val, "copy")) e_max = -DBL_MAX ; else e_max = atof(opt->val) ; break ; case MY_OPT_E_MIN : e_min = atof(opt->val) ; break ; case MY_OPT_G_MIN : g_min = atof(opt->val) ; break ; case MY_OPT_G_MAX : g_max = atof(opt->val) ; break ; case MY_OPT_G_SDEV : g_sdev = atof(opt->val) ; break ; case MY_OPT_G_MEAN : g_mean = atof(opt->val) ; do_gaussian = TRUE ; break ; case MY_OPT_G_RADIUS : g_radius = atof(opt->val) ; break ; case MY_OPT_N_RANGE : n_range = atof(opt->val) ; break ; case MY_OPT_N_SDEV : n_sdev = atof(opt->val) ; break ; case MY_OPT_N_RADIUS : radius = atof(opt->val) ; break ; case MY_OPT_NW : no_write = TRUE ; break ; case MY_OPT_PA : if (2 != sscanf(opt->val, "%u/%u", &N_pa, &m_pa)) mcxDie(1, me, "-pa argument takes V/m form") ; break ; case MY_OPT_SHUFFLE : N_shuffle = atoi(opt->val) ; break ; case MY_OPT_ADD : N_add = atoi(opt->val) ; break ; case MY_OPT_REMOVE : N_remove = atoi(opt->val) ; break ; } } /* hitting y% in vi tells me the size of this block */ { if (template_n_nodes) mx = mclxAllocZero ( mclvCanonical(NULL, template_n_nodes, 1.0) , mclvCanonical(NULL, template_n_nodes, 1.0) ) ; else if (N_pa) { mx = pref_attach3(N_pa, m_pa, 1.0) ; if (!no_write) mclxWrite(mx, xfout, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; exit(0) ; } else mx = mclxReadx ( xfmx , EXIT_ON_FAIL , MCLX_REQUIRE_GRAPH ) ; mx_diag = mclxDiagValues(mx, MCL_VECTOR_COMPLETE) ; if (N_shuffle) mclxAdjustLoops(mx, mclxLoopCBremove, NULL) ; else mclxSelectUpper(mx) /* ^ apparently we always work on single arc representation (docme andsoon) */ ; offsets = mcxAlloc(sizeof offsets[0] * N_COLS(mx), EXIT_ON_FAIL) ; N_edge = 0 ; for (i=0;icols[i].n_ivps ; } if (N_edge < N_remove) { mcxErr ( me , "removal count %ld exceeds edge count %ld" , (long) N_remove , (long) N_edge ) ; N_remove = N_edge ; } random_ignore = RAND_MAX - (N_edge ? RAND_MAX % N_edge : 0) ; if (RAND_MAX / 2 < N_edge) mcxDie(1, me, "graph too large!") ; if (N_shuffle) { do_the_shuffle(mx, N_shuffle, offsets, N_edge, random_ignore) ; mx_readd_diagonal(mx, mx_diag) ; mclxWrite(mx, xfout, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; exit(0) ; } ; if (N_remove) { dim n_remove = do_remove(mx, N_remove, offsets, N_edge, random_ignore) /* Need to recompute N_edge and random_ignore. * NOTE we work with *upper* matrix; this counts graph edges. */ ; N_edge = mclxNrofEntries(mx) - n_remove ; random_ignore = RAND_MAX - (RAND_MAX % N_COLS(mx)) ; } if (g_mean) { if (!g_radius) { if (g_sdev) g_radius = 2 * g_sdev ; mcxWarn(me, "set radius to %.5f\n", g_radius) ; } } ; if (N_add) N_edge += do_add ( mx , N_add , N_edge , do_gaussian ? &g_mean : NULL, g_radius , g_sdev , g_min , g_max , skew , e_min , e_max ) ; if (radius) { for (i=0;icols[i].ivps, *ivpmax = ivp + mx->cols[i].n_ivps ;if(DEBUG)fprintf(stderr, "here %d\n", (int) i) ; while (ivp < ivpmax) { double val = ivp->val ; double r = mcxNormalCut(n_range * n_sdev, n_sdev) ; double newval = val + radius * (r / (n_range * n_sdev)) ; if (e_min < e_max && newval >= e_min && newval <= e_max) ; ivp->val = newval ; ivp++ ; } } } mclxUnary(mx, fltxCopy, NULL) /* remove zeroes */ ; mclxAddTranspose(mx, 0.0) ; mx_readd_diagonal(mx, mx_diag) ; if (plus) mclxbWrite(mx, xfout, RETURN_ON_FAIL) ; else mclxWrite(mx, xfout, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; } return 0 ; } mcl-12-135/src/shmx/Makefile.am0000644000402500021140000000163311334330275013077 00000000000000## Process this file with automake to produce Makefile.in ## $Id: Makefile.am,v 1.39 2007-05-25 19:43:28 flux Exp $ include $(top_srcdir)/include/include.am bin_PROGRAMS = mcx mcxsubs mcxmap mcxassemble mcxarray \ mcxdump mcxload mcxrand noinst_PROGRAMS = mcxtest mcxminusmeet mcxmm EXTRA_DIST = fake mcx.h mcxconvert.h mcxminusmeet.c mcxquery.h mcxdiameter.h mcxclcf.h mcxerdos.h mcxcollect.h mcxtab.h mcxalter.h mcxassemble_SOURCES = mcxassemble.c mcxsubs_SOURCES = mcxsubs.c mcxmap_SOURCES = mcxmap.c mcxdump_SOURCES = mcxdump.c mcxtest_SOURCES = mcxtest.c mcxarray_SOURCES = mcxarray.c mcxload_SOURCES = mcxload.c mcxrand_SOURCES = mcxrand.c mcxmm_SOURCES = mcxmm.c mcxminusmeet_SOURCES = mcxminusmeet.c mcx_SOURCES = mcx.c mcxconvert.c mcxquery.c mcxdiameter.c mcxclcf.c mcxerdos.c mcxcollect.c mcxtab.c mcxalter.c # leave: assemble erdos array rand subs # assimilate: map dump test array load minusmeet mcl-12-135/src/shmx/mcxalter.c0000644000402500021140000001317711531205100013017 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. * * NOTE * this file implements both /diameter/ and /ctty/ (centrality) * functionality for mcx. */ /* TODO * - Handle components. * - Clean up diameter/ctty organization. */ #include #include #include #include #include #include #include "mcx.h" #include "util/types.h" #include "util/ding.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/opt.h" #include "util/compile.h" #include "util/rand.h" #include "impala/matrix.h" #include "impala/tab.h" #include "impala/io.h" #include "impala/stream.h" #include "impala/app.h" #include "clew/clm.h" #include "mcl/transform.h" static const char* me = "mcx alter"; enum { MY_OPT_ABC = MCX_DISP_UNUSED , MY_OPT_IMX , MY_OPT_TAB , MY_OPT_O , MY_OPT_TRANSFORM , MY_OPT_CANONICAL } ; mcxOptAnchor alterOptions[] = { { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "specify input matrix/graph" } , { "-abc" , MCX_OPT_HASARG , MY_OPT_ABC , "" , "specify input using label pairs" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "specify tab file to be used with matrix input" } , { "-o" , MCX_OPT_HASARG , MY_OPT_O , "" , "write to file fname" } , { "-tf" , MCX_OPT_HASARG , MY_OPT_TRANSFORM , "" , "apply unary transformations to matrix values" } , { "-canonical" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_CANONICAL , "" , "add canonical vector in the middle with nodes" } , { NULL, 0, 0, NULL, NULL } } ; static mcxIO* xfmx_g = (void*) -1; static mcxIO* xfabc_g = (void*) -1; static mcxIO* xftab_g = (void*) -1; static mcxIO* xfout_g = (void*) -1; static mclTab* tab_g = (void*) -1; static dim canonical_g = -1; static mclgTF* transform = (void*) -1; static mcxTing* transform_spec = (void*) -1; static mcxstatus alterInit ( void ) { xfmx_g = mcxIOnew("-", "r") ; xfabc_g = NULL ; xftab_g = NULL ; xfout_g = mcxIOnew("-", "w") ; transform = NULL ; transform_spec = NULL ; tab_g = NULL ; canonical_g = 0 ; return STATUS_OK ; } static mcxstatus alterArgHandle ( int optid , const char* val ) { switch(optid) { case MY_OPT_IMX : mcxIOnewName(xfmx_g, val) ; break ; case MY_OPT_ABC : xfabc_g = mcxIOnew(val, "r") ; break ; case MY_OPT_O : mcxIOnewName(xfout_g, val) ; break ; case MY_OPT_CANONICAL : canonical_g = atoi(val) ; break ; case MY_OPT_TAB : xftab_g = mcxIOnew(val, "r") ; break ; case MY_OPT_TRANSFORM : transform_spec = mcxTingNew(val) ; break ; default : mcxExit(1) ; ; } return STATUS_OK ; } static mcxstatus alterMain ( int argc_unused cpl__unused , const char* argv_unused[] cpl__unused ) { mclx* mx = NULL ; mclxIOstreamer streamer = { 0 } ; srandom(mcxSeed(11235813)) ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclx_app_init(stderr) ; if (xfabc_g) { if (xftab_g) tab_g = mclTabRead(xftab_g, NULL, EXIT_ON_FAIL) , streamer.tab_sym_in = tab_g ; mx = mclxIOstreamIn ( xfabc_g , MCLXIO_STREAM_ABC | MCLXIO_STREAM_MIRROR | MCLXIO_STREAM_SYMMETRIC | (tab_g ? MCLXIO_STREAM_GTAB_RESTRICT : 0) , NULL , mclpMergeMax , &streamer , EXIT_ON_FAIL ) ; tab_g = streamer.tab_sym_out ; } else { mx = mclxRead(xfmx_g, EXIT_ON_FAIL) ; if (xftab_g) tab_g = mclTabRead(xftab_g, mx->dom_cols, EXIT_ON_FAIL) ; } mcxIOopen(xfout_g, EXIT_ON_FAIL) ; if (transform_spec) { if (!(transform = mclgTFparse(NULL, transform_spec))) mcxDie(1, me, "input -tf spec does not parse") ; mclgTFexec(mx, transform) ; } if (canonical_g) { dim d, e ; for (d=1; d<=canonical_g; d++) e = d * (N_COLS(mx) / canonical_g) , mclvCanonical(mx->cols+e-1, e, 1.0) ; } if (tab_g) { mclxIOdumper dumper ; mclxIOdumpSet(&dumper, MCLX_DUMP_PAIRS, NULL, NULL, NULL) ;fprintf(stderr, "HI\n") ; if ( mclxIOdump ( mx , xfout_g , &dumper , tab_g , tab_g , MCLXIO_VALUE_GETENV , RETURN_ON_FAIL ) ) mcxDie(1, me, "something suboptimal") ; } else { if (mclxWrite(mx, xfout_g, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL)) mcxDie(1, me, "something less than perfect. AAAAAARGH!") ; } return 0 ; } mcxDispHook* mcxDispHookAlter ( void ) { static mcxDispHook alterEntry = { "alter" , "alter [options]" , alterOptions , sizeof(alterOptions)/sizeof(mcxOptAnchor) - 1 , alterArgHandle , alterInit , alterMain , 0 , 0 , MCX_DISP_DEFAULT } ; return &alterEntry ; } mcl-12-135/src/shmx/mcx.c0000644000402500021140000001517411705251220011775 00000000000000/* (C) Copyright 1999, 2000, 2001, 2002, 2003, 2004 Stijn van Dongen * (C) Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include "mcx.h" #include "mcxconvert.h" #include "mcxquery.h" #include "mcxdiameter.h" #include "mcxerdos.h" #include "mcxclcf.h" #include "mcxcollect.h" #include "mcxtab.h" #include "mcxalter.h" #include "impala/stream.h" #include "impala/matrix.h" #include "impala/tab.h" #include "impala/io.h" #include "impala/iface.h" #include "impala/compose.h" #include "impala/ivp.h" #include "impala/app.h" #include "util/types.h" #include "util/err.h" #include "util/opt.h" #include "util/ding.h" const char* mcx_syntax = "Usage: mcx [options] [files]\n" " mcx -h (for mode specific options)" ; enum { ID_CONVERT = 0 , ID_QUERY , ID_ERDOS , ID_CTTY , ID_DIAMETER , ID_CLCF , ID_COLLECT , ID_TAB , ID_ALTER , ID_UNUSED } ; mcxDispEntry mcx_dir[] = { { ID_CONVERT , mcxDispHookConvert } , { ID_QUERY , mcxDispHookquery } , { ID_DIAMETER , mcxDispHookDiameter } , { ID_CLCF , mcxDispHookClcf } , { ID_ERDOS , mcxDispHookErdos } , { ID_CTTY , mcxDispHookCtty } , { ID_COLLECT , mcxDispHookCollect } , { ID_ALTER , mcxDispHookAlter } , { ID_TAB , mcxDispHookTab } , { -1 , NULL } } ; mcxOptAnchor mcxSharedOptions[] = { { "--version" , MCX_OPT_DEFAULT , MCX_DISP_VERSION , NULL , "output version information, exit" } , { "--test" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MCX_DISP_TEST , NULL , "test" } , { "-progress" , MCX_OPT_HASARG , MCX_DISP_PROGRESS , "" , "set progress interval size" } , { "--progress" , MCX_OPT_DEFAULT , MCX_DISP_PROGRESS2 , NULL , "turn on progress reporting" } , { "-debug" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MCX_DISP_DEBUG , "" , "set debug level or bits" } , { "--debug" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MCX_DISP_DEBUG2 , NULL , "turn on debugging" } , { "-set" , MCX_OPT_HASARG , MCX_DISP_SET , "key=val" , "set key to val in ENV" } , { "--nop" , MCX_OPT_DEFAULT , MCX_DISP_NOP , NULL , "this option has no affect but changing the argument count" } , { "-h" , MCX_OPT_DEFAULT , MCX_DISP_HELP , NULL , "this" } , { "--help" , MCX_OPT_DEFAULT , MCX_DISP_APROPOS , NULL , "this" } , { "--amoixa" , MCX_OPT_HIDDEN , MCX_DISP_AMOIXA , NULL , "show hidden options too" } , { NULL , 0 , 0 , NULL, NULL} } ; mcxbits mcx_debug_g = 0; unsigned mcx_progress_g = 0; mcxbool mcx_test_g = FALSE; mcxstatus sharedArgHandle ( int optid , const char* val , mcxDispHook* hook , mcxDispBundle* bundle ) { mcxTing* full_syntax = mcxTingPrint(NULL, "%s %s", "mcx", hook->syntax) ; switch(optid) { case MCX_DISP_HELP : case MCX_DISP_APROPOS : case MCX_DISP_AMOIXA : mcxOptApropos ( stdout , hook->name , full_syntax->str , 15 , 0 , bundle->disp_shared ) ; mcxOptApropos ( stdout , hook->name , NULL , 15 , MCX_OPT_DISPLAY_SKIP | ( optid == MCX_DISP_AMOIXA ? MCX_OPT_DISPLAY_HIDDEN : 0 ) , hook->options ) ; mcxExit(0) ; break ; case MCX_DISP_VERSION : bundle->disp_version(hook->name) ; mcxExit(0) ; break ; case MCX_DISP_NOP : NOTHING ; break ; case MCX_DISP_TEST : mcx_test_g = TRUE ; break ; case MCX_DISP_PROGRESS : mcx_progress_g = atoi(val) ; break ; case MCX_DISP_PROGRESS2 : mcx_progress_g = 1 ; break ; case MCX_DISP_DEBUG : mcx_debug_g = atoi(val) ; break ; case MCX_DISP_DEBUG2 : mcx_debug_g = -1u ; break ; case MCX_DISP_SET : mcxSetenv(val) ; break ; default : break ; } mcxTingFree(&full_syntax) ; return STATUS_OK ; } int main ( int argc , const char* argv[] ) { mcxDispBundle bundle ; mclxIOsetQMode("MCLXIOVERBOSITY", MCL_APP_VB_YES) ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclx_app_init(stderr) ; bundle.disp_argc = argc ; bundle.disp_argv = argv ; bundle.disp_name = "mcx" ; bundle.disp_syntax = mcx_syntax ; bundle.disp_shared = mcxSharedOptions ; bundle.n_disp_shared = sizeof(mcxSharedOptions) / sizeof(mcxOptAnchor) -1; ; bundle.disp_table = mcx_dir ; bundle.disp_version = app_report_version ; bundle.shared_handler= sharedArgHandle ; return mcxDispatch(&bundle) ; } mclx* mcx_get_data ( mcxIO* xfmx , mcxIO* xfabc , mcxIO* xftab , mclTab** tabpp , mcxbool wannagraph ) { mclTab* tab = tabpp[0] ; mclx* mx = NULL ; mclxIOstreamer streamer = { 0 } ; if (xfabc) { if (xftab) tab = mclTabRead(xftab, NULL, EXIT_ON_FAIL) , streamer.tab_sym_in = tab ; mx = mclxIOstreamIn ( xfabc , MCLXIO_STREAM_ABC | MCLXIO_STREAM_MIRROR | MCLXIO_STREAM_SYMMETRIC | (tab ? MCLXIO_STREAM_GTAB_RESTRICT : 0) , NULL , mclpMergeMax , &streamer , EXIT_ON_FAIL ) ; tab = streamer.tab_sym_out ; } else { mx = mclxReadx(xfmx, EXIT_ON_FAIL, wannagraph ? MCLX_REQUIRE_GRAPH : 0) ; if (xftab) tab = mclTabRead(xftab, mx->dom_cols, EXIT_ON_FAIL) ; } tabpp[0] = tab ; return mx ; } mcxstatus mcx_dump_node ( FILE* fp , const mclTab* tab , long idx ) { unsigned n_missed = 0 ; if (tab) { const char* label = mclTabGet(tab, idx, NULL) ; if (label == tab->na->str) fprintf(fp, "?_%ld", idx) , n_missed = 1 ; else fputs(label, fp) ; } else fprintf(fp, "%ld", idx) ; return n_missed ; } mcl-12-135/src/shmx/mcxminusmeet.c0000644000402500021140000001514311531205222013716 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "impala/io.h" #include "impala/tab.h" #include "impala/stream.h" #include "impala/ivp.h" #include "impala/compose.h" #include "impala/vector.h" #include "impala/app.h" #include "impala/iface.h" #include "util/types.h" #include "util/ding.h" #include "util/ting.h" #include "util/io.h" #include "util/err.h" #include "util/equate.h" #include "util/rand.h" #include "util/opt.h" #include "mcl/proc.h" #include "mcl/procinit.h" #include "mcl/alg.h" #include "clew/clm.h" const char* usagelines[]; const char* me = "mcxminusmeet"; void usage ( const char** ) ; #define MMM_OVERWRITE 1 #define MMM_RIGHT 2 #define MMM_CHECK 4 #define MMM_BINARY 8 #define MMM_DUMPMX 16 #define MMM_MEET2 32 const char* usagelines[] = { "mcxminusmeet " , " modes: 1 new target rather than self" , " 2 right rather than left" , " 4 perform checks" , " 8 use binary" , " 16 dump final matrix (should be identical)" , " 32 use dispatching meet implementation" , NULL } ; mclv* mcldMinus1 ( const mclv* lft , const mclv* rgt , mclv* dst ) { return mclvBinary(lft, rgt, dst, fltLaNR) ; } void pairwise_setops ( mclx* mx1 , mclx* mx2 , mcxbits modes ) { dim t, u, n_tst = 0 ; mclv* cache = mclvInit(NULL) ; mclv* meet = mclvInit(NULL) ; mclv* join = mclvInit(NULL) ; mclv* diff = mclvInit(NULL) ; mcxbool overwrite = modes & MMM_OVERWRITE ; dim n_zero_meet = 0, n_plus_meet = 0 ; mclv* (*fn_meet)(const mclv* lft, const mclv* rgt, mclv* dst) = mcldMeet ; mclv* (*fn_minus)(const mclv* lft, const mclv* rgt, mclv* dst) = mcldMinus1 ; if (modes & MMM_MEET2) fn_meet = mcldMeet2 , fn_minus = mcldMinus /* the point of overwrite is to have * a lft == dst or rgt == dst pattern. */ ; for (t=0;tcols+u : mx2->cols+t) : diff ; if (overwrite) mclvCopy(cache, dst) /* cache column, reinstate later */ ; if (modes & MMM_BINARY) mclvBinary(mx1->cols+t, mx2->cols+u, dst, fltLaNR) ; else fn_minus(mx1->cols+t, mx2->cols+u, dst) /* compute t / u */ ; if (overwrite) mclvCopy(diff, dst) , mclvCopy(dst, cache) /* reinstate column */ /* diff contains t / u */ ; dst = overwrite ? dst : meet /* cache column, same as above */ ; if (modes & MMM_BINARY) mclvBinary(mx1->cols+t, mx2->cols+u, dst, fltLaR) ; else fn_meet(mx1->cols+t, mx2->cols+u, dst) ; if (overwrite) mclvCopy(meet, dst) , mclvCopy(dst, cache) /* meet contains t /\ u */ ; mcldMerge(diff, meet, join) /* join should be identical to column t */ ; if (meet->n_ivps) n_plus_meet++ ; else n_zero_meet++ ; if (modes & MMM_CHECK) { mclv* dediff = mclvClone(mx1->cols+t) ; mclv* demeet = mclvClone(mx1->cols+t) ; dim nd = mclvUpdateMeet(dediff, diff, fltSubtract) ; dim nm = mclvUpdateMeet(demeet, meet, fltSubtract) ; if ( diff->n_ivps + meet->n_ivps != mx1->cols[t].n_ivps || !mcldEquate(join, mx1->cols+t, MCLD_EQT_EQUAL) || diff->n_ivps != nd || meet->n_ivps != nm ) { mclvaDump(mx1->cols+t, stdout, -1, " ", MCLVA_DUMP_HEADER_ON) ; mclvaDump(mx2->cols+u, stdout, -1, " ", MCLVA_DUMP_HEADER_ON) ; mclvaDump(meet, stdout, -1, " ", MCLVA_DUMP_HEADER_ON) ; mclvaDump(diff, stdout, -1, " ", MCLVA_DUMP_HEADER_ON) ; mcxDie(1, me, "rats") ; } mclvFree(&dediff) ; mclvFree(&demeet) ; } n_tst++ ; } } fprintf ( stdout , "meet was nonempty %.2f\n" , (double) (n_plus_meet * 1.0f / n_tst) ) ; fprintf ( stdout , "%d successful tests in %s%s %s mode (checked: %s)\n" , (int) n_tst , overwrite ? "overwrite" : "create" , overwrite ? ( modes & MMM_RIGHT ? "-right" : "-left" ) : "" , modes & MMM_BINARY ? "generic" : "update" , (modes & MMM_CHECK ? "yes" : "no") ) ; fprintf ( stdout , "meet-can: %10lu\n" "meet-zip: %10lu\n" "meet-s/l: %10lu\n" "diff-can: %10lu\n" "diff-zip: %10lu\n" "diff-s/l: %10lu\n" , (ulong) nu_meet_can , (ulong) nu_meet_zip , (ulong) nu_meet_sl , (ulong) nu_diff_can , (ulong) nu_diff_zip , (ulong) nu_diff_sl ) ; mclvFree(&cache) ; mclvFree(&meet) ; mclvFree(&join) ; mclvFree(&diff) ; } int main ( int argc , const char* argv[] ) { mcxIO* xf1, *xf2 ; mclx* mx1, *mx2 ; mcxbits modes = 0 ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclx_app_init(stdout) ; if (argc < 4) mcxUsage(stdout, me, usagelines) , mcxExit(0) ; modes = atoi(argv[1]) ; xf1 = mcxIOnew(argv[2], "r") ; xf2 = mcxIOnew(argv[3], "r") ; mx1 = mclxRead(xf1, EXIT_ON_FAIL) ; mx2 = mclxRead(xf2, EXIT_ON_FAIL) ; pairwise_setops(mx1, mx2, modes) ; if (modes & MMM_DUMPMX) { mcxIO* xo = mcxIOnew("out.mmm", "w") ; mclxWrite(mx1, xo, MCLXIO_VALUE_GETENV, RETURN_ON_FAIL) ; } mclxFree(&mx1) ; mclxFree(&mx2) ; mcxIOfree(&xf1) ; mcxIOfree(&xf2) ; return 0 ; } mcl-12-135/src/shmx/mcxdump.c0000644000402500021140000005754611665664233012715 00000000000000/* (C) Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * (C) Copyright 2010, 2011, Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* TODO */ #include #include #include #include #include #include #include "impala/io.h" #include "impala/stream.h" #include "impala/matrix.h" #include "impala/vector.h" #include "impala/io.h" #include "impala/tab.h" #include "impala/iface.h" #include "impala/app.h" #include "util/io.h" #include "util/types.h" #include "util/err.h" #include "util/opt.h" #include "util/minmax.h" #include "clew/cat.h" const char* me = "mcxdump"; const char* sep_lead_g = "\t"; const char* sep_row_g = "\t"; const char* sep_val_g = ":"; const char* sep_cat_g = "==="; const char* prefixc_g = ""; const char* sif_g = NULL; const char* syntax = "Usage: mcxdump -imx [-o ] [options]"; enum { MY_OPT_IMX , MY_OPT_ICL , MY_OPT_CAT , MY_OPT_TREECAT , MY_OPT_OUTPUT , MY_OPT_TAB , MY_OPT_TABC , MY_OPT_TABR , MY_OPT_LAZY_TAB , MY_OPT_RESTRICT_TAB , MY_OPT_RESTRICT_TABC , MY_OPT_RESTRICT_TABR , MY_OPT_NO_VALUES , MY_OPT_PREFIXC , MY_OPT_NO_LOOPS , MY_OPT_OMIT_EMPTY , MY_OPT_SORT , MY_OPT_FORCE_LOOPS , MY_OPT_CAT_LIMIT , MY_OPT_SPLIT_STEM , MY_OPT_DUMP_MATRIX , MY_OPT_TRANSPOSE , MY_OPT_DUMP_PAIRS , MY_OPT_DUMP_UPPER , MY_OPT_DUMP_UPPERI , MY_OPT_DUMP_LOWER , MY_OPT_DUMP_LOWERI , MY_OPT_DUMP_LINES , MY_OPT_DUMP_RLINES , MY_OPT_DUMP_VLINES , MY_OPT_DUMP_SIF , MY_OPT_DUMP_SIFX , MY_OPT_DUMP_NEWICK , MY_OPT_NEWICK_MODE , MY_OPT_DUMP_TABLE , MY_OPT_TABLE_NFIELDS , MY_OPT_TABLE_NLINES , MY_OPT_DUMP_NOLEAD , MY_OPT_DIGITS , MY_OPT_WRITE_TABC , MY_OPT_WRITE_TABR , MY_OPT_WRITE_TABR_SHADOW , MY_OPT_DUMP_RDOM , MY_OPT_DUMP_CDOM , MY_OPT_SKEL , MY_OPT_SEP_LEAD , MY_OPT_SEP_FIELD , MY_OPT_SEP_VAL , MY_OPT_SEP_CAT , MY_OPT_HELP , MY_OPT_APROPOS , MY_OPT_VERSION } ; mcxOptAnchor options[] = { { "-h" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_HELP , NULL , "print this help" } , { "--version" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_VERSION , NULL , "print version information" } , { "--help" , MCX_OPT_DEFAULT | MCX_OPT_INFO , MY_OPT_APROPOS , NULL , "print this help" } , { "--lazy-tab" , MCX_OPT_DEFAULT , MY_OPT_LAZY_TAB , NULL , "tab file(s) may mismatch matrix domain(s)" } , { "-imx" , MCX_OPT_HASARG | MCX_OPT_REQUIRED , MY_OPT_IMX , "" , "read matrix from file " } , { "-icl" , MCX_OPT_HASARG , MY_OPT_ICL , "" , "read clustering from file , dump lines" } , { "-imx-cat" , MCX_OPT_HASARG , MY_OPT_CAT , "" , "dump multiple matrices encoded in cat file" } , { "-imx-tree" , MCX_OPT_HASARG , MY_OPT_TREECAT , "" , "stackify and dump multiple matrices encoded in cone file" } , { "--skeleton" , MCX_OPT_DEFAULT , MY_OPT_SKEL , NULL , "create empty matrix, honour domains" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "read tab file from for all identifiers" } , { "-tabc" , MCX_OPT_HASARG , MY_OPT_TABC , "" , "read tab file from for column domain identifiers" } , { "-tabr" , MCX_OPT_HASARG , MY_OPT_TABR , "" , "read tab file from for row domain identifiers" } , { "-restrict-tab" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_RESTRICT_TAB , "" , "restrict matrix to tab domain" } , { "-restrict-tabc" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_RESTRICT_TABC , "" , "restrict matrix column domain to tab domain" } , { "-restrict-tabr" , MCX_OPT_HASARG | MCX_OPT_HIDDEN , MY_OPT_RESTRICT_TABR , "" , "restrict matrix row domain to tab domain" } , { "--no-values" , MCX_OPT_DEFAULT , MY_OPT_NO_VALUES , NULL , "do not emit values" } , { "-prefixc" , MCX_OPT_HASARG , MY_OPT_PREFIXC , "" , "prefix column indices with " } , { "--omit-empty" , MCX_OPT_DEFAULT , MY_OPT_OMIT_EMPTY , NULL , "skip columns with no entries" } , { "--no-loops" , MCX_OPT_DEFAULT , MY_OPT_NO_LOOPS , NULL , "do not include self in listing" } , { "--force-loops" , MCX_OPT_DEFAULT , MY_OPT_FORCE_LOOPS , NULL , "force self in listing" } , { "-sort" , MCX_OPT_HASARG , MY_OPT_SORT , "size-{ascending,descending}" , "sort mode" } , { "--write-matrix" , MCX_OPT_DEFAULT , MY_OPT_DUMP_MATRIX , NULL , "dump mcl matrix" } , { "-split-stem" , MCX_OPT_HASARG , MY_OPT_SPLIT_STEM , "" , "split multiple matrices over different files" } , { "-cat-max" , MCX_OPT_HASARG , MY_OPT_CAT_LIMIT , "" , "only do the first files" } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUTPUT , "" , "output to file (- for STDOUT)" } , { "-digits" , MCX_OPT_HASARG , MY_OPT_DIGITS , "" , "precision to use in interchange format" } , { "--write-tabr" , MCX_OPT_DEFAULT , MY_OPT_WRITE_TABR , NULL , "write tab file on row domain" } , { "--write-tabc" , MCX_OPT_DEFAULT , MY_OPT_WRITE_TABC , NULL , "write tab file on column domain" } , { "--write-tabr-shadow" , MCX_OPT_DEFAULT | MCX_OPT_HIDDEN , MY_OPT_WRITE_TABR_SHADOW , NULL , "write shadow tab file on row domain" } , { "--dump-domr" , MCX_OPT_DEFAULT , MY_OPT_DUMP_RDOM , NULL , "dump the row domain" } , { "--dump-domc" , MCX_OPT_DEFAULT , MY_OPT_DUMP_CDOM , NULL , "dump the col domain" } , { "--dump-pairs" , MCX_OPT_DEFAULT , MY_OPT_DUMP_PAIRS , NULL , "dump a single column/row matrix pair per output line" } , { "--dump-upper" , MCX_OPT_DEFAULT , MY_OPT_DUMP_UPPER , NULL , "dump upper part of the matrix excluding diagonal" } , { "--dump-upperi" , MCX_OPT_DEFAULT , MY_OPT_DUMP_UPPERI , NULL , "dump upper part of the matrix including diagonal" } , { "--dump-lower" , MCX_OPT_DEFAULT , MY_OPT_DUMP_LOWER , NULL , "dump lower part of the matrix excluding diagonal" } , { "--dump-loweri" , MCX_OPT_DEFAULT , MY_OPT_DUMP_LOWERI , NULL , "dump lower part of the matrix including diagonal" } , { "--newick" , MCX_OPT_DEFAULT , MY_OPT_DUMP_NEWICK , NULL , "write newick string" } , { "-newick" , MCX_OPT_HASARG , MY_OPT_NEWICK_MODE , "[NBIS]+" , "no Number, no Branch length, no Indent, no Singleton parentheses" } , { "--dump-table" , MCX_OPT_DEFAULT , MY_OPT_DUMP_TABLE , NULL , "dump complete matrix including zeroes" } , { "-table-nlines" , MCX_OPT_HASARG , MY_OPT_TABLE_NLINES , "" , "limit table dump to first lines" } , { "-table-nfields" , MCX_OPT_HASARG , MY_OPT_TABLE_NFIELDS , "" , "limit table dump to first fields" } , { "--dump-lead-off" , MCX_OPT_DEFAULT , MY_OPT_DUMP_NOLEAD , NULL , "do not dump lead node (with --dump-table)" } , { "--transpose" , MCX_OPT_DEFAULT , MY_OPT_TRANSPOSE , NULL , "work with the transposed matrix" } , { "--dump-lines" , MCX_OPT_DEFAULT , MY_OPT_DUMP_LINES , NULL , "join all row entries on a single line" } , { "--dump-vlines" , MCX_OPT_DEFAULT , MY_OPT_DUMP_VLINES , NULL , "join all row entries on a single line, print column value" } , { "--dump-rlines" , MCX_OPT_DEFAULT , MY_OPT_DUMP_RLINES , NULL , "as --dump-lines, do not emit the leading column identifier" } , { "-dump-sif" , MCX_OPT_HASARG , MY_OPT_DUMP_SIF , "" , "dump SIF format with second field set to " } , { "-dump-sifx" , MCX_OPT_HASARG , MY_OPT_DUMP_SIFX , "" , "as -dump-sif, output extended label:weight format" } , { "-sep-cat" , MCX_OPT_HASARG , MY_OPT_SEP_CAT , "" , "use to separate cat matrix dumps (cf -imx-cat)" } , { "-sep-lead" , MCX_OPT_HASARG , MY_OPT_SEP_LEAD , "" , "use to separate col from row list (default tab)" } , { "-sep-field" , MCX_OPT_HASARG , MY_OPT_SEP_FIELD , "" , "use to separate row indices (default tab)" } , { "-sep-value" , MCX_OPT_HASARG , MY_OPT_SEP_VAL , "" , "use as node/value separator (default colon)" } , { NULL, 0, 0, NULL, NULL } } ; int main ( int argc , const char* argv[] ) { mcxIO* xf_tab = NULL ; mcxIO* xf_tabr = NULL ; mcxIO* xf_tabc = NULL ; mcxIO* xf_restrict_tab = NULL ; mcxIO* xf_restrict_tabr = NULL ; mcxIO* xf_restrict_tabc = NULL ; mcxIO* xf_mx = mcxIOnew("-", "r") ; mcxIO* xfout = NULL ; const char* fndump = "-" ; mclTab* tabr = NULL ; mclTab* tabc = NULL ; mclTab* restrict_tabr = NULL ; mclTab* restrict_tabc = NULL ; mcxbool transpose = FALSE ; mcxbool lazy_tab = FALSE ; mcxbool write_tabc = FALSE ; mcxbool write_tabr = FALSE ; mcxbool cat = FALSE ; mcxbool tree = FALSE ; mcxbool skel = FALSE ; mcxbool newick = FALSE ; mcxbits newick_bits = 0 ; mcxbits cat_bits = 0 ; dim catmax = 1 ; dim n_max = 0 ; dim table_nlines = 0 ; dim table_nfields = 0 ; int split_idx = 1 ; int split_inc = 1 ; const char* split_stem = NULL ; const char* sort_mode = NULL ; mcxTing* line = mcxTingEmpty(NULL, 10) ; mcxbits modes = MCLX_DUMP_VALUES ; mcxbits mode_dump = MCLX_DUMP_PAIRS ; mcxbits mode_part = 0 ; mcxbits mode_loop = MCLX_DUMP_LOOP_ASIS ; mcxbits mode_matrix = 0 ; int digits = MCLXIO_VALUE_GETENV ; mcxOption* opts, *opt ; mcxstatus parseStatus = STATUS_OK ; mcxLogLevel = MCX_LOG_AGGR | MCX_LOG_MODULE | MCX_LOG_IO | MCX_LOG_GAUGE | MCX_LOG_WARN ; mclxIOsetQMode("MCLXIOVERBOSITY", MCL_APP_VB_YES) ; mclx_app_init(stderr) ; mcxOptAnchorSortById(options, sizeof(options)/sizeof(mcxOptAnchor) -1) ; opts = mcxOptParse(options, (char**) argv, argc, 1, 0, &parseStatus) ; if (!opts) exit(0) ; for (opt=opts;opt->anch;opt++) { mcxOptAnchor* anch = opt->anch ; switch(anch->id) { case MY_OPT_HELP : case MY_OPT_APROPOS : mcxOptApropos(stdout, me, syntax, 0, 0, options) ; return 0 ; case MY_OPT_VERSION : app_report_version(me) ; return 0 ; case MY_OPT_TAB : xf_tab = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_TABC : xf_tabc = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_TABR : xf_tabr = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_OUTPUT : fndump = opt->val ; break ; case MY_OPT_SEP_LEAD : sep_lead_g = opt->val ; break ; case MY_OPT_SEP_FIELD : sep_row_g = opt->val ; break ; case MY_OPT_SEP_CAT : sep_cat_g = opt->val ; break ; case MY_OPT_SEP_VAL : sep_val_g = opt->val ; break ; case MY_OPT_PREFIXC : prefixc_g = opt->val ; break ; case MY_OPT_RESTRICT_TAB : xf_restrict_tab = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_RESTRICT_TABC : xf_restrict_tabc = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_RESTRICT_TABR : xf_restrict_tabr = mcxIOnew(opt->val, "r") ; break ; case MY_OPT_LAZY_TAB : lazy_tab = TRUE ; break ; case MY_OPT_NO_VALUES : BIT_OFF(modes, MCLX_DUMP_VALUES) ; break ; case MY_OPT_DUMP_SIFX : sif_g = opt->val ; mode_dump = MCLX_DUMP_LINES ; break ; case MY_OPT_DUMP_SIF : sif_g = opt->val ; mode_dump = MCLX_DUMP_LINES ; BIT_OFF(modes, MCLX_DUMP_VALUES) ; break ; case MY_OPT_DUMP_RLINES : mode_dump = MCLX_DUMP_LINES ; BIT_ON(modes, MCLX_DUMP_NOLEAD) ; break ; case MY_OPT_DUMP_VLINES : mode_dump = MCLX_DUMP_LINES ; BIT_ON(modes, MCLX_DUMP_LEAD_VALUE) ; break ; case MY_OPT_DUMP_LINES : mode_dump = MCLX_DUMP_LINES ; break ; case MY_OPT_OMIT_EMPTY : BIT_ON(modes, MCLX_DUMP_OMIT_EMPTY) ; break ; case MY_OPT_SORT : sort_mode = opt->val ; break ; case MY_OPT_NO_LOOPS : mode_loop = MCLX_DUMP_LOOP_NONE ; break ; case MY_OPT_CAT_LIMIT : n_max = atoi(opt->val) ; break ; case MY_OPT_SPLIT_STEM : split_stem = opt->val ; sep_cat_g = NULL ; break ; case MY_OPT_FORCE_LOOPS : mode_loop = MCLX_DUMP_LOOP_FORCE ; break ; case MY_OPT_SKEL : skel = TRUE ; break ; case MY_OPT_WRITE_TABC : write_tabc = TRUE ; break ; case MY_OPT_DIGITS : digits = strtol(opt->val, NULL, 10) ; break ; case MY_OPT_WRITE_TABR : write_tabr = TRUE ; break ; case MY_OPT_DUMP_RDOM : transpose = TRUE ; skel = TRUE ; mode_dump = MCLX_DUMP_LINES ; break ; case MY_OPT_DUMP_CDOM : skel = TRUE ; mode_dump = MCLX_DUMP_LINES ; break ; case MY_OPT_IMX : mcxIOnewName(xf_mx, opt->val) ; break ; case MY_OPT_ICL : mcxIOnewName(xf_mx, opt->val) ; mode_dump = MCLX_DUMP_LINES ; BIT_ON(modes, MCLX_DUMP_NOLEAD) ; BIT_OFF(modes, MCLX_DUMP_VALUES) ; break ; case MY_OPT_TREECAT : mcxIOnewName(xf_mx, opt->val) ; tree = TRUE ; cat_bits |= MCLX_PRODUCE_DOMSTACK ; break ; case MY_OPT_CAT : mcxIOnewName(xf_mx, opt->val) ; cat = TRUE ; break ; case MY_OPT_DUMP_MATRIX : mode_matrix |= MCLX_DUMP_MATRIX ; break ; case MY_OPT_TRANSPOSE : transpose = TRUE ; break ; case MY_OPT_DUMP_UPPER : mode_part = MCLX_DUMP_PART_UPPER ; break ; case MY_OPT_DUMP_UPPERI : mode_part = MCLX_DUMP_PART_UPPERI ; break ; case MY_OPT_DUMP_LOWER : mode_part = MCLX_DUMP_PART_LOWER ; break ; case MY_OPT_DUMP_LOWERI : mode_part = MCLX_DUMP_PART_LOWERI ; break ; case MY_OPT_DUMP_NOLEAD : BIT_ON(modes, MCLX_DUMP_NOLEAD) ; break ; case MY_OPT_NEWICK_MODE : if (strchr(opt->val, 'N')) newick_bits |= (MCLX_NEWICK_NONL | MCLX_NEWICK_NOINDENT) ; if (strchr(opt->val, 'I')) newick_bits |= MCLX_NEWICK_NOINDENT ; if (strchr(opt->val, 'B')) newick_bits |= MCLX_NEWICK_NONUM ; if (strchr(opt->val, 'S')) newick_bits |= MCLX_NEWICK_NOPTHS ; newick = TRUE ; break ; case MY_OPT_DUMP_NEWICK : newick = TRUE ; break ; case MY_OPT_DUMP_TABLE : mode_dump = MCLX_DUMP_TABLE ; break ; case MY_OPT_TABLE_NFIELDS : table_nfields = atoi(opt->val) ; break ; case MY_OPT_TABLE_NLINES : table_nlines = atoi(opt->val) ; break ; case MY_OPT_DUMP_PAIRS : mode_dump = MCLX_DUMP_PAIRS ; break ; } } ; if (skel) cat_bits |= MCLX_READ_SKELETON ; modes |= mode_loop | mode_dump | mode_part | mode_matrix ; xfout = mcxIOnew(fndump, "w") ; mcxIOopen(xfout, EXIT_ON_FAIL) ; mcxIOopen(xf_mx, EXIT_ON_FAIL) ; if (cat || tree) catmax = n_max ? n_max : 0 ; if ((write_tabc || write_tabr) && !xf_tab) mcxDie(1, me, "need a single tab file (-tab option) with --write-tabc or --write-tabr") ; if (xf_tab && mcxIOopen(xf_tab, RETURN_ON_FAIL)) mcxDie(1, me, "no tab") ; else { if (xf_tabr && mcxIOopen(xf_tabr, RETURN_ON_FAIL)) mcxDie(1, me, "no tabr") ; if (xf_tabc && mcxIOopen(xf_tabc, RETURN_ON_FAIL)) mcxDie(1, me, "no tabc") ; } { if (xf_restrict_tab && mcxIOopen(xf_restrict_tab, RETURN_ON_FAIL)) mcxDie(1, me, "no restriction tab") ; else { if (xf_restrict_tabr && mcxIOopen(xf_restrict_tabr, RETURN_ON_FAIL)) mcxDie(1, me, "no restriction tabr") ; if (xf_restrict_tabc && mcxIOopen(xf_restrict_tabc, RETURN_ON_FAIL)) mcxDie(1, me, "no restriction tabc") ; } /* fixme: below is pretty boilerplate, happens in other places as well */ if (xf_restrict_tab) { if (!(restrict_tabr = mclTabRead (xf_restrict_tab, NULL, RETURN_ON_FAIL))) mcxDie(1, me, "error reading restriction tab") ; restrict_tabc = restrict_tabr ; mcxIOclose(xf_restrict_tab) ; } else { if (xf_restrict_tabr) { if (!(restrict_tabr = mclTabRead(xf_restrict_tabr, NULL, RETURN_ON_FAIL))) mcxDie(1, me, "error reading restriction tabr") ; mcxIOclose(xf_restrict_tabr) ; } if (xf_restrict_tabc) { if (!(restrict_tabc = mclTabRead(xf_restrict_tabc, NULL, RETURN_ON_FAIL))) mcxDie(1, me, "error reading restriction tabc") ; mcxIOclose(xf_restrict_tabc) ; } } } /* fixme: restructure code to include bit below */ if (write_tabc || write_tabr) { mclv* dom_cols = mclvInit(NULL) ; mclv* dom_rows = mclvInit(NULL) ; mclv* dom = write_tabc ? dom_cols : dom_rows ; if (!(tabc = mclTabRead(xf_tab, NULL, RETURN_ON_FAIL))) mcxDie(1, me, "error reading tab file") ; if (mclxReadDomains(xf_mx, dom_cols, dom_rows)) mcxDie(1, me, "error reading matrix file") ; mcxIOclose(xf_mx) /* fixme check status */ ; mclTabWrite(tabc, xfout, dom, RETURN_ON_FAIL) ; mcxIOclose(xfout) ; return 0 ; } if (newick) { mcxTing* thetree ; mclxCat cat ; if (xf_tab && !(tabr = mclTabRead(xf_tab, NULL, RETURN_ON_FAIL))) mcxDie(1, me, "error reading tab file") ; mclxCatInit(&cat) ; if ( mclxCatRead ( xf_mx , &cat , 0 , NULL , tabr ? tabr->domain : NULL , MCLX_CATREAD_CLUSTERTREE | MCLX_ENSURE_ROOT ) ) mcxDie(1, me, "failure reading file") ; thetree = mclxCatNewick(&cat, tabr, newick_bits) ; fwrite(thetree->str, 1, thetree->len, xfout->fp) ; fputc('\n', xfout->fp) ; mcxIOclose(xfout) ; return 0 ; } while (1) { mclxIOdumper dumper = { 0 } ; mclxCat cat ; dim i ; if (xf_tab && !lazy_tab) cat_bits |= MCLX_REQUIRE_GRAPH ; mclxCatInit(&cat) ; if (mclxCatRead(xf_mx, &cat, catmax, NULL, NULL, cat_bits)) break ; for (i=0;idomain : mx->dom_cols , restrict_tabr ? restrict_tabr->domain : mx->dom_rows ) ; mx = sub ; } /* noteme fixme dangersign mx now may violate some 'cat' invariant */ if (sort_mode) { if (!strcmp(sort_mode, "size-ascending")) mclxColumnsRealign(mx, mclvSizeCmp) ; else if (!strcmp(sort_mode, "size-descending")) mclxColumnsRealign(mx, mclvSizeRevCmp) ; else mcxErr(me, "unknown sort mode <%s>", sort_mode) ; if (catmax != 1) mcxErr(me, "-sort option and cat mode may fail or corrupt") ; } if (xf_tab && !tabr) { if (!( tabr = mclTabRead (xf_tab, lazy_tab ? NULL : mx->dom_rows, RETURN_ON_FAIL) ) ) mcxDie(1, me, "consider using --lazy-tab option") ; tabc = tabr ; mcxIOclose(xf_tab) ; } else { if (!tabr && xf_tabr) { if (!(tabr = mclTabRead (xf_tabr, lazy_tab ? NULL : mx->dom_rows, RETURN_ON_FAIL) ) ) mcxDie(1, me, "consider using --lazy-tab option") ; mcxIOclose(xf_tabr) ; } if (!tabc && xf_tabc) { if (!( tabc = mclTabRead (xf_tabc, lazy_tab ? NULL : mx->dom_cols, RETURN_ON_FAIL) ) ) mcxDie(1, me, "consider using --lazy-tab option") ; mcxIOclose(xf_tabc) ; } } ; if (transpose) { mclx* tp = mclxTranspose(mx) ; mclxFree(&mx) ; mx = tp ; if (tabc || tabr) { mclTab* tabt = tabc ; tabc = tabr ; tabr = tabt ; } } if (mode_dump == MCLX_DUMP_TABLE) BIT_ON(modes, MCLX_DUMP_TABLE_HEADER) ; mclxIOdumpSet(&dumper, modes, sep_lead_g, sep_row_g, sep_val_g) ; dumper.table_nlines = table_nlines ; dumper.table_nfields = table_nfields ; dumper.prefixc = prefixc_g ; dumper.siftype = sif_g ; if (split_stem) { mcxTing* ting = mcxTingPrint(NULL, "%s.%03d", split_stem, split_idx) ; mcxIOclose(xfout) ; mcxIOrenew(xfout, ting->str, "w") ; split_idx += split_inc ; } if ( mclxIOdump ( mx , xfout , &dumper , tabc , tabr , digits , RETURN_ON_FAIL ) ) mcxDie(1, me, "something suboptimal") ; mclxFree(&mx) ; if (sep_cat_g && i+1 < cat.n_level) fprintf(xfout->fp, "%s\n", sep_cat_g) ; } break ; } mcxIOfree(&xf_mx) ; mcxIOfree(&xfout) ; mcxIOfree(&xf_tab) ; mcxIOfree(&xf_tabr) ; mcxIOfree(&xf_tabc) ; mcxTingFree(&line) ; return 0 ; } mcl-12-135/src/shmx/mcxclcf.c0000644000402500021140000001571111756273546012647 00000000000000/* (C) Copyright 2006, 2007, 2008, 2009, 2010, 2011 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include "mcx.h" #include "util/types.h" #include "util/io.h" #include "util/err.h" #include "util/opt.h" #include "util/compile.h" #include "impala/io.h" #include "impala/matrix.h" #include "impala/tab.h" #include "impala/stream.h" #include "impala/app.h" #include "gryphon/path.h" enum { MY_OPT_ABC = MCX_DISP_UNUSED , MY_OPT_IMX , MY_OPT_TAB , MY_OPT_OUT , MY_OPT_SUMMARY , MY_OPT_THREAD , MY_OPT_G , MY_OPT_littleG , MY_OPT_INCLUDE_ENDS , MY_OPT_TEST_LOOPS } ; mcxOptAnchor clcfOptions[] = { { "-imx" , MCX_OPT_HASARG , MY_OPT_IMX , "" , "specify input matrix" } , { "-t" , MCX_OPT_HASARG , MY_OPT_THREAD , "" , "number of threads to use" } , { "-J" , MCX_OPT_HASARG , MY_OPT_G , "" , "number of compute jobs overall" } , { "-j" , MCX_OPT_HASARG , MY_OPT_littleG , "" , "index of this compute job" } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUT , "" , "write to file fname" } , { "-abc" , MCX_OPT_HASARG , MY_OPT_ABC , "" , "specify input using label pairs" } , { "-tab" , MCX_OPT_HASARG , MY_OPT_TAB , "" , "specify tab file to be used with matrix input" } , { "--summary" , MCX_OPT_DEFAULT , MY_OPT_SUMMARY , NULL , "return average for all nodes" } , { "--test-loops" , MCX_OPT_HIDDEN , MY_OPT_TEST_LOOPS , NULL , "test loop compensation code" } , { NULL, 0, 0, NULL, NULL } } ; static dim progress_g = 0; static mcxbool list_g = FALSE; static mcxbool test_loop_g = FALSE; static mcxIO* xfmx_g = (void*) -1; static mcxIO* xfabc_g = (void*) -1; static mcxIO* xftab_g = (void*) -1; static mclTab* tab_g = (void*) -1; static dim n_thread_l = -1; static dim n_group_G = -1; static dim i_group = -1; static const char* out_g= (void*) -1; static mcxstatus clcfInit ( void ) { progress_g = 0 ; list_g = TRUE ; test_loop_g = FALSE ; xfmx_g = mcxIOnew("-", "r") ; xfabc_g = NULL ; out_g = "-" ; xftab_g = NULL ; tab_g = NULL ; n_thread_l = 1 ; n_group_G = 1 ; i_group = 0 ; return STATUS_OK ; } static mcxstatus clcfArgHandle ( int optid , const char* val ) { switch(optid) { case MY_OPT_IMX : mcxIOnewName(xfmx_g, val) ; break ; case MY_OPT_ABC : xfabc_g = mcxIOnew(val, "r") ; break ; case MY_OPT_THREAD : n_thread_l = atoi(val) ; break ; case MY_OPT_littleG : i_group = atoi(val) ; break ; case MY_OPT_G : n_group_G = atoi(val) ; break ; case MY_OPT_OUT : out_g = val ; break ; case MY_OPT_TAB : xftab_g = mcxIOnew(val, "r") ; break ; case MY_OPT_SUMMARY : list_g = FALSE ; break ; case MY_OPT_TEST_LOOPS : test_loop_g = atoi(val) ? TRUE : FALSE ; mcxTell("mcx clcf", "--test-loops currently kalltgestelt") ; break ; default : mcxExit(1) ; } ; return STATUS_OK ; } static void clcf_dispatch ( mclx* mx , dim i , void* data , dim thread_id ) { mclv* tabulator = data ; tabulator->ivps[i].val = mclnCLCF(mx, mx->cols+i, NULL) ; } static mcxstatus clcfMain ( int argc_unused cpl__unused , const char* argv_unused[] cpl__unused ) { mclx* mx ; mclv* has_loops = NULL, *res = NULL ; mclxIOstreamer streamer = { 0 } ; double clcf = 0.0, ccmax = 0.0 ; mcxIO* xfout = mcxIOnew(out_g, "w") ; mcxIOopen(xfout, EXIT_ON_FAIL) ; if (xfabc_g) { if (xftab_g) tab_g = mclTabRead(xftab_g, NULL, EXIT_ON_FAIL) , streamer.tab_sym_in = tab_g ; mx = mclxIOstreamIn ( xfabc_g , MCLXIO_STREAM_ABC | MCLXIO_STREAM_MIRROR | MCLXIO_STREAM_SYMMETRIC | (tab_g ? MCLXIO_STREAM_GTAB_RESTRICT : 0) , NULL , mclpMergeMax , &streamer , EXIT_ON_FAIL ) ; tab_g = streamer.tab_sym_out ; } else { mx = mclxReadx(xfmx_g, EXIT_ON_FAIL, MCLX_REQUIRE_GRAPH) ; if (xftab_g) tab_g = mclTabRead(xftab_g, mx->dom_cols, EXIT_ON_FAIL) ; } has_loops = mclxColNums(mx, mclvHasLoop, MCL_VECTOR_SPARSE) ; progress_g = mcx_progress_g ; if (!test_loop_g) mclxAdjustLoops(mx, mclxLoopCBremove, NULL) ; if (list_g) fprintf(xfout->fp, "node\tclcf\n") ; n_thread_l = mclx_set_threads_or_die("mcx clcf", n_thread_l, i_group, n_group_G) ; if (n_thread_l * n_group_G > 1) /* bit of a rickety interface */ { res = mclvClone(mx->dom_cols) ; mclvMakeConstant(res, 0.0) ; mclxVectorDispatchGroup(mx, res, n_thread_l, clcf_dispatch, n_group_G, i_group) ; } else res = mclgCLCFdispatch(mx, 1) ; { dim i ; for (i=0;iivps[i].val ; long vid = res->ivps[i].idx ; clcf += cc ; if (list_g) { if (tab_g) { const char* label = mclTabGet(tab_g, vid, NULL) ; if (!label) mcxDie(1, "mcx clcf", "panic label %ld not found", vid) ; fprintf(xfout->fp, "%s\t%.4f\n", label, cc) ; } else fprintf(xfout->fp, "%ld\t%.4f\n", vid, cc) ; } if (progress_g && cc > ccmax) fprintf(stderr, "new max vec %u clcf %.4f\n", (unsigned) i, cc) , ccmax = cc ; if (progress_g && !((i+1) % progress_g)) fprintf ( stderr , "%u average %.3f\n" , (unsigned) (i+1) , (double) (clcf/(i+1)) ) ; } mclvFree(&res) ; } if (N_COLS(mx)) clcf /= N_COLS(mx) ; if (!list_g) fprintf(xfout->fp, "%.3f\n", clcf) ; return 0 ; } mcxDispHook* mcxDispHookClcf ( void ) { static mcxDispHook clcfEntry = { "clcf" , "clcf [options]" , clcfOptions , sizeof(clcfOptions)/sizeof(mcxOptAnchor) - 1 , clcfArgHandle , clcfInit , clcfMain , 0 , 0 , MCX_DISP_MANUAL } ; return &clcfEntry ; } mcl-12-135/src/shcl/0000777000402500021140000000000011756465225011112 500000000000000mcl-12-135/src/shcl/clmps.c0000644000402500021140000004316011361606052012277 00000000000000/* (C) Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Stijn van Dongen * (C) Copyright 2010 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ /* TODO * Better/easier node colour control. * option to output black nodes. * option to read iterands as stack. * mcl option to write iterands as stack? * __ Optify symmetric/directed. * >> -def edge=edge */ #include #include #include #include #include #include "clm.h" #include "report.h" #include "clmps.h" #include "clmps.defs.h" #include "util/io.h" #include "util/types.h" #include "util/err.h" #include "util/rand.h" #include "util/opt.h" #include "util/opt.h" #include "util/minmax.h" #include "util/ding.h" #include "util/compile.h" #include "impala/matrix.h" #include "impala/vector.h" #include "impala/io.h" #include "impala/tab.h" #include "impala/compose.h" #include "impala/iface.h" #include "impala/app.h" #include "mcl/interpret.h" #include "clew/cat.h" static const char *me = "clm ps"; enum { MY_OPT_ICL = CLM_DISP_UNUSED , MY_OPT_CLSTACK , MY_OPT_NCLMAX , MY_OPT_IMX , MY_OPT_COORDS , MY_OPT_HEADER , MY_OPT_OUTPUT , MY_OPT_LEVEL , MY_OPT_USER , MY_OPT_DEF , MY_OPT_LISTDEFS , MY_OPT_SHOWPAGE , MY_OPT_BB , MY_OPT_NODEGREY , MY_OPT_INFLATION , MY_OPT_NORMALIZE , MY_OPT_BIN , MY_OPT_E_MAX , MY_OPT_CAPTION } ; static mcxOptAnchor PSOptions[] = { { "-imx" , MCX_OPT_HASARG | MCX_OPT_REQUIRED , MY_OPT_IMX , "" , "input graph file" } , { "-icl" , MCX_OPT_HASARG , MY_OPT_ICL , "" , "input cluster file" } , { "-cl-stack" , MCX_OPT_HASARG , MY_OPT_CLSTACK , "" , "assume mclcm-type hierarchical clusterings (stack format)" } , { "-cl-height" , MCX_OPT_HASARG , MY_OPT_NCLMAX , "" , "do at most levels of the hierarchy" } , { "-o" , MCX_OPT_HASARG , MY_OPT_OUTPUT , "" , "output file name" } , { "--header" , MCX_OPT_DEFAULT , MY_OPT_HEADER , NULL , "write header" } , { "-l" , MCX_OPT_HASARG , MY_OPT_LEVEL , "" , "clustering/tree level" } , { "-I" , MCX_OPT_HASARG , MY_OPT_INFLATION , "" , "apply inflation to input graph" } , { "-coords" , MCX_OPT_HASARG , MY_OPT_COORDS , "fname" , "read and output file with PostScript coordinates" } , { "-def" , MCX_OPT_HASARG , MY_OPT_DEF , "name=val" , "set PS parameter name to val" } , { "--list-defs" , MCX_OPT_DEFAULT , MY_OPT_LISTDEFS , NULL , "list parameters settable with -def" } , { "--showpage" , MCX_OPT_DEFAULT , MY_OPT_SHOWPAGE , NULL , "output showpage (consider image finished)" } , { "--bb" , MCX_OPT_DEFAULT , MY_OPT_BB , NULL , "draw bounding box" } , { "-node-grey" , MCX_OPT_HASARG , MY_OPT_NODEGREY , "" , "PostScript grey level" } , { "-usr" , MCX_OPT_HASARG , MY_OPT_USER , "PS defs" , "PS defs included in each page" } , { "-bin" , MCX_OPT_HASARG , MY_OPT_BIN , "offset,limit,#bins" , "specify bin layout" } , { "-normalize" , MCX_OPT_HASARG , MY_OPT_NORMALIZE , "y/n" , "make stochastic yes/no (default yes)" } , { "-caption" , MCX_OPT_HASARG , MY_OPT_CAPTION , "" , "" } , { "-e-max" , MCX_OPT_HASARG , MY_OPT_E_MAX , "" , "" } , { NULL , 0 , 0 , NULL, NULL} } ; static mcxTing *usr_defs= (void*) -1; static mcxIO* xfout = (void*) -1; static mcxIO *xfcl = (void*) -1; static mcxIO *xfmx = (void*) -1; static mcxIO *xfcoords= (void*) -1; static mcxIO* xfstack = (void*) -1; static const char* caption = (void*) -1; static double inflation = -1; static mcxbool normalize = -1; static mcxbool showpage = -1; static mcxbool header = -1; static dim e_max = -1; static double val_ofs = -1; static double val_lim = -1; static dim n_cl_max = -1; static int n_bins = -1; static int level = -1; static dim n_usr_params = -1; int kvcmp ( const void* keyval1 , const void* keyval2 ) { const char* const* kv1 = keyval1 ; const char* const* kv2 = keyval2 ; return strcmp(kv1[0], kv2[0]) ; } const char* usr_params[][2] = { { "llx" , "10" } , { "lly" , "10" } , { "urx" , "585" } , { "ury" , "832" } , { "scx" , "15" } , { "scy" , "15" } , { "bbtest" , "0" } , { "shownodes" , "1" } , { "rmax" , "0.54" } , { "gmax" , "0.0" } , { "bmax" , "0.0" } , { "rmin" , "1.0" } , { "gmin" , "0.64" } , { "bmin" , "0.0" } , { "edge" , "2edge" } , { "displacement", "0.1" } , { "radius" , "0.15" } , { "snarewidth" , "0.06" } , { "snarecolor" , "0 0 0" } , { "edgewidth" , "0.06" } , { "edgecolor" , "0.5 0.5 0.5"} , { "arcwidth" , "0.06" } , { "boundwidth" , "0" } , { NULL , NULL } } ; const char* ps_header[] = { "%!PS-Adobe-3.0" , "%%BoundingBox: usr_llx usr_lly usr_urx usr_ury" , "/BBLL [usr_llx usr_lly] def" , "/BBUR [usr_urx usr_ury] def" , "/B_test usr_bbtest def" , "/color_min [usr_rmin usr_gmin usr_bmin] def" , "/color_max [usr_rmax usr_gmax usr_bmax] def" , "/color_xcn [] def" , "/displacement usr_displacement def" , "/radius usr_radius def" , "" , "/snarewidth usr_snarewidth def" , "/snarecolor [usr_snarecolor] def" , "" , "/edgewidth usr_edgewidth def" , "/edgecolor [usr_edgecolor] def" , "/arcwidth usr_arcwidth def" , "/boundwidth usr_boundwidth def" , "" , "/shownodes usr_shownodes def" , "" , NULL } ; const char* ps_bind[] = { "/e { proc_usr_edge } bind def" , "/n { proc_circle } bind def" , "/cn { proc_circle_colour } bind def" , "" , NULL } ; void write_defs ( FILE* fp ) { const char** pp = defs_ps ; while (*pp) { fputs(*pp, fp) ; fputc('\n', fp) ; pp++ ; } ; } void write_params ( FILE* fp , const char** pslines ) { const char** line = pslines+0 ; const char* kvhook[2] = { NULL, NULL } ; const char** kv ; char buf[100] ; while (line[0]) { const char* o = line[0] ; const char* p = strstr(o, "usr_") ; while (p) { fprintf(fp, "%.*s", (int) (p-o), o) ; if (1 != sscanf(p+4, "%[a-z]", buf)) mcxDie(1, me, "parse error") ; kvhook[0] = buf ; if (!(kv = bsearch(kvhook, usr_params, n_usr_params, sizeof usr_params[0], kvcmp))) mcxDie(1, me, "unexpected unknown parameter %s", buf) ; fputs(kv[1], fp) ; o = p+4+strlen(buf) ; p = strstr(o, "usr_") ; } fputs(o, fp) ; fputc('\n', fp) ; line++ ; } } void list_params ( void ) { int n = 0 ; while (usr_params[n][0]) { fprintf(stdout, "%20s %s\n", usr_params[n][0], usr_params[n][1]) ; n++ ; } } static mcxstatus set_param ( const char* spec ) { const char* p = strchr(spec, '=') ; mcxTing* key ; const char* kvhook[2] = { NULL, NULL } ; const char** kv ; if (!p || p[1] == '\0') return STATUS_FAIL ; key = mcxTingNNew(spec, p-spec) ; kvhook[0] = key->str ; kv = bsearch(kvhook, usr_params, n_usr_params, sizeof usr_params[0], kvcmp) ; if (kv) { char* q = strdup(p+1) ; char* qq = q ; if (strstr(key->str, "color")) { while (*q) { if ((unsigned char) q[0] == ',') q[0] = ' ' ; q++ ; } } kv[1] = qq ; } mcxTingFree(&key) ; return kv ? STATUS_OK : STATUS_FAIL ; } static mcxstatus PSInit ( void ) { xfout = mcxIOnew("-", "w") ; xfmx = NULL ; xfcoords = NULL ; xfstack = NULL ; xfcl = NULL ; usr_defs = mcxTingEmpty(NULL, 200) ; inflation = 1.0 ; normalize = TRUE ; header = FALSE ; showpage = FALSE ; n_cl_max = 4 ; e_max = 1 << 15 ; caption = "" ; val_ofs = 0.0 ; val_lim = 1.0 ; n_bins = 20 ; level = 1 ; n_usr_params = 0 ; while (usr_params[n_usr_params][0]) n_usr_params++ ; qsort(usr_params, n_usr_params, sizeof usr_params[0], kvcmp) ; return STATUS_OK ; } static mcxstatus PSArgHandle ( int optid , const char* val ) { mcxTing* scratch = mcxTingEmpty(NULL, 20) ; mcxbits status = 0 ; switch(optid) { case MY_OPT_ICL : xfcl = mcxIOnew(val, "r") ; break ; case MY_OPT_CLSTACK : xfstack = mcxIOnew(val, "r") ; break ; case MY_OPT_NCLMAX : n_cl_max = atoi(val) ; break ; case MY_OPT_COORDS : xfcoords = mcxIOnew(val, "r") ; break ; case MY_OPT_IMX : xfmx = mcxIOnew(val, "r") ; break ; case MY_OPT_USER : mcxTingPrintAfter(usr_defs, "%s\n", val) ; break ; case MY_OPT_DEF : if (set_param(val)) mcxDie(1, me, "unsettable: %s", val) ; break ; case MY_OPT_LISTDEFS : list_params() ; exit(0) ; break ; case MY_OPT_SHOWPAGE : showpage = TRUE ; break ; case MY_OPT_BB : set_param("bbtest=1") ; break ; case MY_OPT_NODEGREY : mcxTingPrint(scratch, "rmin=%s", val) ; status |= set_param(scratch->str) ; mcxTingPrint(scratch, "gmin=%s", val) ; status |= set_param(scratch->str) ; mcxTingPrint(scratch, "bmin=%s", val) ; status |= set_param(scratch->str) ; mcxTingPrint(scratch, "rmax=%s", val) ; status |= set_param(scratch->str) ; mcxTingPrint(scratch, "gmax=%s", val) ; status |= set_param(scratch->str) ; mcxTingPrint(scratch, "bmax=%s", val) ; status |= set_param(scratch->str) ; if (status) mcxDie(1, me, "unsettable grey") ; break ; case MY_OPT_LEVEL : level = atoi(val) ; break ; case MY_OPT_HEADER : header = TRUE ; break ; case MY_OPT_OUTPUT : mcxIOnewName(xfout, val) ; break ; case MY_OPT_BIN : if (3 != sscanf(val, "%lf,%lf,%d", &val_ofs, &val_lim, &n_bins)) mcxDie(1, me, "-bin accepts lo,hi,N format") ; break ; case MY_OPT_NORMALIZE : normalize = strchr("1yY", val[0]) ? TRUE : FALSE ; break ; case MY_OPT_INFLATION : inflation = atof(val) ; break ; case MY_OPT_E_MAX : e_max = atoi(val) ; break ; case MY_OPT_CAPTION : caption = val ; break ; default : return STATUS_FAIL ; } mcxTingFree(&scratch) ; return STATUS_OK ; } static mcxstatus PSMain ( int argc_unused cpl__unused , const char* argv_unused[] cpl__unused ) { mclx *mx = NULL, *mt = NULL ; mclv* sums = NULL, *diagv = NULL ; mcxTing* ting = mcxTingEmpty(NULL, 80) ; mcxTing* coords = mcxTingEmpty(NULL, 1000) ; int l ; dim i ; if (!xfmx && !xfcl) mcxDie(1, me, "need matrix file and/or cluster file") ; if (xfcoords && mcxIOreadFile(xfcoords, coords)) mcxDie(1, me, "cannot read coordinates from %s", xfcoords->fn->str) ; srandom(mcxSeed(2308947)) ; mcxIOopen(xfout, EXIT_ON_FAIL) ; if (header) { write_params(xfout->fp, ps_header) ; write_defs(xfout->fp) ; write_params(xfout->fp, ps_bind) ; mcxIOclose(xfout) ; return 0 ; } if (coords->len) fputs(coords->str, xfout->fp) ; if (xfmx) { mx = mclxReadx(xfmx, EXIT_ON_FAIL, MCLX_REQUIRE_GRAPH) ; if (normalize) mclxMakeStochastic(mx) ; mt = mclxTranspose(mx) ; sums = mclxColSums(mt, MCL_VECTOR_COMPLETE) ; if (inflation != 1.0) mclxInflate(mx, inflation) ; diagv = mclxDiagValues(mx, MCL_VECTOR_COMPLETE) ; while (STATUS_OK == mcxIOreadLine(xfmx, ting, MCX_READLINE_DEFAULT)) { const char* c = mcxStrChrAint(ting->str, isspace, ting->len) ; if (!c) continue ; if (*c == '/' || *c == '%') fputs(ting->str, xfout->fp) ; } fputc('\n', xfout->fp) ; fprintf(xfout->fp, "%s\n", usr_defs->str) ; for (l=0;val_ofscols+i ; if (e_max) mclvSort(vec, mclpValRevCmp) /* fixme to much sorting */ ; for (j=0;jn_ivps&&(!e_max||jivps+j ; double w_out = ivp->val ; double w_in, w_max ; mclp* ivp_t = mclvGetIvp(mt->cols+i, ivp->idx, NULL) ; if (vec->vid == ivp->idx) continue ;if(0)fprintf(stderr, "%%> pair %ld %ld %.2f\n", (long) vec->vid, (long) ivp->idx, (double) ivp->val) ; w_in = ivp_t ? ivp_t->val : 0.0 ; w_max = MCX_MAX(w_in, w_out) ; if (!(lo < w_max && w_max <= hi)) continue ; fprintf ( xfout->fp , "v%ld v%ld %.4f %.4f e\n" , (long) ivp->idx, (long) vec->vid , ceil(1000.0 * w_in) / 1000.0 , ceil(1000.0 * w_out) / 1000.0 ) ; n_put++ ; } if (e_max) mclvSort(vec, mclpIdxCmp) ; } fprintf(stderr, "%%> level %.2f-%.2f put %d\n", lo, hi, (int) n_put) ; if (n_put) fputc('\n', xfout->fp) ; } /* fixme: document xfstack semantics */ if (!xfstack) { for (i=0;in_ivps;i++) fprintf ( xfout->fp , "v%ld %.2f n\n" , (long) sums->ivps[i].idx , (double) sums->ivps[i].val ) /* ^ fixme: uncouple from !xfstack */ ; fprintf(xfout->fp, "/caption (%s) def\n\n", caption) ; } } if (xfstack) { mclxCat st ; mclx* cl = NULL, *cltp = NULL, *colors = NULL ; dim i,j,k ; mcxbits bits = MCLX_REQUIRE_DOMSTACK | MCLX_REQUIRE_CANONICAL | MCLX_PRODUCE_PARTITION ; mclxCatInit(&st) ; if (mclxCatRead(xfstack, &st, n_cl_max, NULL, NULL, bits)) mcxDie(1, me, "error reading stack") ; for (i=0;idom_cols, cltp->dom_cols)) mcxDie(1, me, "domain mismatch") ; colors = mclxCartesian(cl->dom_cols, mclvCanonical(NULL, 3, 1.0), 1.0) ; fputc('\n', stdout) ; for (j=0;jcols[j].ivps[k].val = g ;fprintf(stderr, "[%.2f,%.2f]", f, g) ; } fprintf ( xfout->fp , "/clcolor%dlev%d [%.2f %.2f %.2f] def\n" , (int) j , lev , colors->cols[j].ivps[0].val , colors->cols[j].ivps[1].val , colors->cols[j].ivps[2].val ) ;fputc('\n', stderr) ; } fputc('\n', stdout) ; fprintf ( stdout , "/clensembl%d {\n\n" , lev ) ; for (j=0;jcols+j ; for (k=0;kn_ivps;k++) { long nid = clus->ivps[k].idx ; mclv* cv = mclxGetVector ( colors , clus->vid , EXIT_ON_FAIL , NULL ) ; fprintf ( xfout->fp , "v%ld clcolor%dlev%d %d cn\n" , (long) nid , (int) cv->vid , lev , lev ) ; } fputc('\n', stdout) ; } fputs("} def\n\n", stdout) ; mclxFree(&colors) ; mclxFree(&cltp) ; } } if (showpage) fputs("\nshowpage\n\n", xfout->fp) ; mcxIOclose(xfout) ; return 0 ; } static mcxDispHook PSEntry = { "ps" , "ps [options] -imx " , PSOptions , sizeof(PSOptions)/sizeof(mcxOptAnchor) - 1 , PSArgHandle , PSInit , PSMain , 0 , 0 , MCX_DISP_HIDDEN } ; mcxDispHook* mcxDispHookPS ( void ) { return &PSEntry ; } mcl-12-135/src/shcl/report.c0000644000402500021140000000340311065245465012500 00000000000000/* (C) Copyright 2003, 2004, 2005 Stijn van Dongen * (C) Copyright 2006, 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #include "report.h" #include "util/ting.h" #include "util/err.h" #include "util/compile.h" #include "impala/matrix.h" void report_partition ( const char* me , mclMatrix* cl_unused cpl__unused , mcxTing* fname , dim o , dim m , dim e ) { mcxErr ( me , "Clustering in file <%s> is not a partition", fname->str ) ; mcxErr ( me , "Overlap <%lu> Missing <%lu> Empt(y/ied) <%lu>" , (ulong) o, (ulong) m, (ulong) e ) ; } void report_exit ( const char* me , mcxbits error ) { if (error & (SHCL_ERROR_PARTITION | SHCL_ERROR_DOMAIN)) mcxErr ( me , "Error. Use --adapt for enstricting clusterings and projecting domains" ) ; else mcxErr(me, "Fatal error") ; mcxExit(error) ; } void report_domain ( const char* me , int nlft , int nrgt , int meet ) { mcxErr ( me , "left|right|new domain sizes: <%d><%d><%d>" , (int) nlft , (int) nrgt , (int) meet ) ; } void report_fixit ( const char* me , int n_fix ) { mcxTell ( me , n_fix == 0 ? "I am fixing it as we scroll" : n_fix == 1 ? "I'll fix you up once more" : n_fix == 2 ? "Fixing it again" : n_fix == 3 ? "On the job" : "Don't mention it" ) ; } mcl-12-135/src/shcl/clmmate.h0000644000402500021140000000072510642147703012614 00000000000000/* (C) Copyright 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef clm_mate_h__ #define clm_mate_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookMate ( void ) ; #endif mcl-12-135/src/shcl/clmclose.h0000644000402500021140000000073110642147703012770 00000000000000/* (C) Copyright 2007 Stijn van Dongen * * This file is part of MCL. You can redistribute and/or modify MCL under the * terms of the GNU General Public License; either version 3 of the License or * (at your option) any later version. You should have received a copy of the * GPL along with MCL, in the file COPYING. */ #ifndef clm_close_h__ #define clm_close_h__ #include "util/opt.h" #include "util/types.h" mcxDispHook* mcxDispHookClose ( void ) ; #endif mcl-12-135/src/shcl/mclgrep0000755000402500021140000000405307715714401012400 00000000000000#!/usr/bin/env perl my $keep_header = 1; my @fields = (); my $re = ""; my $mh = 0; while ($ARGV[0] =~ /^--/) { my $arg = shift @ARGV; my ($val, $key) = ("", ""); if ($arg =~ /^--(.*?)(=(.*))?$/) { $key = $1; $val = $2 ? $3 : ""; } else { print "Arguments must be in <--key=val> or <--key> format\n"; exit; } if ($key eq 'nh') { $keep_header = 0; } elsif ($key eq 'mh') { $mh = $val; } elsif ($key eq 're') { $re = $val; } elsif ($key eq 'fd') { @fields = split ':', $val; } else { print "Unsupported option: --$key\n"; exit; } } my $pat = shift; if (!$pat || @ARGV < 1) { print < +\n --fd= output these fields only --re= section must match re --mh= max number of section hits EOU exit; } $pat =~ s/;/|/g; while ($fn = shift) { my $section_hits = 0; my $fh; if ($fn eq '-') { $fh = STDIN; } else { open (LINES, "<$fn") || die "Can not open file $fn\n"; $fh = LINES; } my $level = 0; my $l = length $fn; my $p1 = (76 - $l) / 2; my $p2 = $p1 + ($l % 2); my $rule = '=' x $p1 . " $fn " . '=' x $p2; my $par = ""; # print $rule, "\n"; while (<$fh>) { if (!$level && /^\s*\((\S*$pat)/) { $par .= $_; $level++; if (/\)/) { $level--; } } elsif ($level) { if (/^\s*\(/) { $level++; } elsif (/^\s*\)/) { $level--; } $par .= $_; } if (!$level && $par && (!$mh || $section_hits<$mh)) { $section_hits++; if ($re && $par !~ /$re/) { } elsif (@fields) { for my $fd (@fields) { if ($par =~ /$fd=(\S+)/i) { printf "%10s", $1; } } } else { print $par; } $par = ""; } } if ($fn ne '-') { close $fh; } } mcl-12-135/src/shcl/mclpipeline0000755000402500021140000004505610740527134013255 00000000000000#!/usr/bin/env perl # Copyright (C) 2003 Stijn van Dongen # # You can redistribute and/or modify this program under the terms of the GNU # General Public License; either version 2 of the License or (at your option) # any later version. # This script sets up a pipeline for clustering. It enables a lot of # customization, and goes a long way to make file names configurable (via # suffix appending) and maintain unique filenames along different # parametrizations. # # This implies however that adding certain types of behaviour, esp wrt to # input matrix creation may be difficult - i.e. mcxassemble only allows # (roughly speaking) local manipulation of edge sets, namely the set of edges # originating from a single node. # # If one needs more complex behaviour, it should probably be written in an # application employing some kind of sublanguage, which might be created # as a plugin inbetween mcxassemble and mcl. # Or, one might want to go all the way and establish some kind of resource # manager that shields the user from the underlying files. Ugh. # Or, one might just fork this little app and specialize. # TODO # - --skip-assemble, for parsers that directly write the matrix. # requires some more suffix arithmetic. # - join progs, clines in a single data structure. # - all the suffix and file name logic is way too spaghettified. # the --start-mcl=fname makes things that much harder. # can it still be fit into a unified framework? # - consider adding argument data structure (attach properties to keys). # - code can use some refactoring and clean-up and generalization. the usual. # ? add some make magic, look at time stamps [any good?]. # - make the levels 1..4 symbolic constants, e.g. LEVEL_MCL. my $have_zoem = 'true'; $have_zoem = 'false' if system 'zoem -e \'zoem version: \\__version__\''; use strict; my $level = -1; $| = 14; # nonzero, really => flush output immediately. my $base1 = ""; # parse input base name, possibly full file name. my $base2 = ""; # parse output / mcxassemble input/output base name # raw, hdr, tab, sym|mci|cus my $base3 = ""; # mcl output base name. # base2.sym|mci|cus, or base2. my $base4 = ""; # clmformat output base name. my $startwith = ""; # parse / global file name options. # some magic to get the right stem further below. # my $dat_xo = ""; my $dat_in = ""; my $parse_options = ""; my $parser_tag = ""; my $parser = ""; # # mcxassemble options. # my $ass_xo = ""; my $ass_out = ""; my $assoptions = ""; my $do_map = 1; my $glob_xi = ""; # mcl options. # my $mcl_I = "2.0"; # string because I want the dot. my $mcl_i = "2.0"; # string because I want the dot. my $mcl_pi = ""; my $mcl_l = 0; my $mcl_scheme = 2; my $mcl_out = ""; my $mcl_in = ""; my $mcl_xo = ""; my $mcl_xa = ""; my $mcl_xe = ""; my $mcl_xi = ""; my $mcl_c = ""; my $mcl_te = ""; my $mcloptions = ""; # clmformat options. # my ($fmt_fancy, $fmt_dir_name, $fmt_dump_name) = (0, "", ""); my $fmt_n_count = 500; my $fmt_xo = "fmt"; my $fmt_tab = 1; my $fmt_stats = 0; my $tab_fname = ""; my $fmtoptions = "--dump"; # always generate a plain dump file. my $showonly = 0; my $debug = 0; my $startlevel = 0; my $endlevel = 4; if (!@ARGV || $ARGV[0] =~ /--(help|apropos)/) { help(); } while (@ARGV && $ARGV[0] =~ /^--/) { my $arg = shift @ARGV; my ($val, $key) = ("", ""); if ($arg =~ /^--(.*?)(=(.*))?$/) { $key = $1; $val = $2 ? $3 : ""; } else { print "Arguments must be in <--key=val> or <--key> format\n"; dang(); } if ($debug) { print "### <$key> ### <$val> ###\n"; } if ($key eq 'parser-tag') { # parse script options tag. reqval($key, $val, ''); $parser_tag = $val; } elsif ($parser_tag && $key =~ /\Q$parser_tag\E-/) { my $parse_arg = $arg; $parse_arg =~ s/^--\Q$parser_tag\E-/--/; $parse_options .= " $parse_arg"; } elsif ($key eq 'xo-dat') { # parse script writes this suffix. reqval($key, $val, ''); $dat_xo = $val; $parse_options .= " $arg"; } elsif ($key eq 'parser') { $parser = $val; } elsif ($key eq 'xo-ass') { # mcxassemble writes this suffix. reqval($key, $val, ''); $ass_xo = $val; } elsif ($key eq 'xi-mcl') { # mcl uses this suffix when --start-mcl. $mcl_xi = $val; } elsif ($key eq 'input') { $dat_in = $val; } elsif ($key eq 'xo-mcl') { # mcl writes this suffix. reqval($key, $val, ''); $mcl_xo = $val; } elsif ($key eq 'xa-mcl') { # mcl appends to default suffix. reqval($key, $val, ''); $mcl_xa = $val; } elsif ($key eq 'xe-mcl') { # mcl adds this suffix. reqval($key, $val, ''); $mcl_xe = $val; } elsif ($key eq 'xi') { reqval($key, $val, ''); $glob_xi = $val; } elsif ($key eq 'xo-fmt') { # clmformat writes this suffix.. reqval($key, $val, ''); $fmt_xo = $val; } elsif ($key eq 'whatif') { $showonly = 1; } elsif ($key eq 'debug') { $debug = 1; } elsif ($key eq 'help') { help(); } elsif ($key eq 'mcl-scheme') { reqval($key, $val, ''); $mcl_scheme = $val; } elsif ($key eq 'mcl-te') { reqval($key, $val, ''); $mcl_te = $val; $mcloptions .= " -te $mcl_te"; } elsif ($key eq 'mcl-c') { reqval($key, $val, ''); $mcl_c = dotit($val); $mcloptions .= " -c $mcl_c"; } elsif ($key eq 'mcl-l') { reqval($key, $val, ''); $mcl_l = $val; $mcloptions .= " -l $val"; } elsif ($key eq 'mcl-i') { reqval($key, $val, ''); $mcl_i = dotit($val); $mcloptions .= " -i $val"; } elsif ($key eq 'mcl-pi') { reqval($key, $val, ''); $mcl_pi = dotit($val); $mcloptions .= " -pi $val"; } elsif ($key eq 'mcl-I') { reqval($key, $val, ''); $mcl_I = dotit($val); } elsif ($key eq 'mcl-o') { reqval($key, $val, ''); $mcl_out = $val; } elsif ($key =~ /^mcl(.*)$/) { my $mclkey = $1; $mcloptions .= " $mclkey $val"; } elsif ($key eq 'prepare-mcl') { $endlevel = 2; } elsif ($key eq 'prepare-format') { $endlevel = 3; } elsif ($key eq 'start-assemble') { $startlevel = 1; if ($val) { $startwith = $val; } } elsif ($key eq 'start-mcl') { $startlevel = 2; if ($val) { $startwith = $val; } } elsif ($key eq 'start-format') { $startlevel = 3; } elsif ($key eq 'ass-repeat') { $assoptions .= " -r $val"; } elsif ($key eq 'ass-nomap') { $do_map = 0; } elsif ($key =~ /^ass(.*)$/) { my $asskey = $1; $assoptions .= " $asskey $val"; } elsif ($key eq 'fmt-dir') { $fmt_dir_name = $val; } elsif ($key eq 'fmt-dump') { $fmt_dump_name = $val; } elsif ($key eq 'fmt-notab') { $fmt_tab = 0; } elsif ($key eq 'fmt-dump-stats') { $fmt_stats = 1; } elsif ($key eq 'fmt-tab') { reqval($key, $val, ''); $tab_fname = $val; } elsif ($key eq 'fmt-lump-count') { $fmt_n_count = $val; } elsif ($key eq 'fmt-fancy') { $fmt_fancy = 1; $endlevel = 5; } elsif ($key =~ /^fmt(.*)$/) { my $fmtkey = $1; $fmtoptions .= " $fmtkey $val"; } else { print "Unsupported option: --$key\n"; dang(); } } if (!@ARGV) { if (!$startwith && !$dat_in) { print "Submit name of data file to be fed to the pipeline\n"; dang(); } } elsif (@ARGV > 1) { local $" = ' '; print "Too many left over options when looking at: @ARGV\n"; print "All options have the format --key[=val]\n"; print "Supply no arguments at all to get list of supported options\n"; dang(); } elsif ($startlevel == 0 && !$parser) { print "--parser= option is required\n"; dang(); } if ($dat_in) { } elsif (!$startwith) { $dat_in = shift @ARGV; } elsif ($startlevel == 1) { goto level1; } elsif ($startlevel == 2) { goto level2; } # # !$startwith: resumed or full run. # if (!$startwith && $glob_xi) { ($base1, $dat_in) = matchsuffix($dat_in, $glob_xi); } else { $base1 = $dat_in; } # # $base1 is the basename of parse input. # It is either a file name or a file name stripped of a suffix. # # $base2 is the basename of parse output and mcxassemble input. # the file names stripped of 'raw' and 'hdr'. # # $base1.[$dat_xo.]raw # $base1.[$dat_xo.]hdr # $base1.[$dat_xo.]tab if ($dat_xo) { $base2 = "$base1.$dat_xo"; } else { $base2 = $base1; } # mcxassemble reads $base2.raw and $base2.hdr. # It generates one of: # # / $base2.sym (default) # \ $base2.$ass_xo (custom) # In the two cases mcl writes respectively to basename # # / $base2[.$mcl_xo] # \ $base2.$ass_xo[.$mcl_xo] level1: if ($startlevel == 1 && $startwith) { if ($glob_xi) { ($base2, undef) = matchsuffix($startwith, $glob_xi); } else { $base2 = $startwith; } $base3 = $base2; } if ($ass_xo) { $ass_out = "$base2.$ass_xo"; $base3 = "$base2.$ass_xo"; $assoptions .= " -xo $ass_xo"; } else { $ass_out = "$base2.sym"; $base3 = $base2; } $mcl_in = $ass_out; level2: if ($startlevel == 2 && $startwith) { if ($glob_xi) { ($base2, $mcl_in) = matchsuffix($startwith, $glob_xi); } else { $mcl_in = $startwith; $base2 = $startwith; } $base3 = $base2; } # $base3 is the basename of mcl output. # It generates # # $base3.label # # where label is either user or custom defined - see below. my $cl_mcl = "mcl $mcl_in" . " -scheme $mcl_scheme -I $mcl_I" . " --append-log=yes" . "$mcloptions"; if (!$mcl_out) { my $label = ""; if ($mcl_xo) { $label = $mcl_xo; } else { $label = `$cl_mcl -ax`; if ($mcl_xa) { $label .= "$mcl_xa"; } if ($mcl_xe) { $label = "$mcl_xe.$label"; } } $mcl_out = "out.$base3.$label"; } $cl_mcl .= " -o $mcl_out"; $base4 = $mcl_out; # $base4 is the basename of clmformat output, simply the mcl output name. # It generates # # $base4.$fmt_xo or # $base4.$fmt_xo.0 $base4.$fmt_xo.0 etc etc. if ($glob_xi && $startlevel == 0) { $parse_options .= " --xi-dat=$glob_xi"; } my $cl_parse = "$parser" . $parse_options . " $dat_in"; if ($do_map) { $assoptions .= " --map"; } my $cl_assemble = "mcxassemble -b $base2 -q" . "$assoptions"; if ($fmt_tab) { if ($tab_fname) { $fmtoptions .= " -tab $tab_fname"; } else { $fmtoptions .= " -tab $base2.tab"; } } if ($fmt_n_count) { $fmtoptions .= " -lump-count $fmt_n_count"; } if ($fmt_stats) { $fmtoptions .= " --dump-measures"; } if ($fmt_fancy) { $fmtoptions .= " --fancy"; } $fmtoptions .= " -imx $mcl_in"; $fmt_dir_name = "$fmt_xo.$base4" unless $fmt_dir_name; $fmt_dump_name = ($fmt_fancy ? "dump" : "dump.$base4") unless $fmt_dump_name; my $cl_format = "clmformat $fmtoptions -dump $fmt_dump_name -icl $mcl_out -dir $fmt_dir_name"; my $cl_zoem = "$have_zoem && (cd $fmt_dir_name && zoem -i fmt -d html && zoem -i fmt -d txt)"; my @progs = ($parser, 'mcxassemble', 'mcl', 'clmformat', 'zoem'); my @clines = ($cl_parse, $cl_assemble, $cl_mcl, $cl_format, $cl_zoem); if ($showonly) { report_clines(-2); hrule(); report_files(1); exit(0); } report_clines(-1); hrule('=='); my $ok = {}; for ($level=$startlevel;$level<$endlevel;$level++) { my $cline = $clines[$level]; if (!$cline) { next; } print $cline, "\n"; hrule('=='); if (system $cline) { print "error $? ($!)\n"; dang(); } $ok->{$level} = 1; } done(); sub done { my $i; hrule(); report_clines($level); hrule(); report_files(0); hrule(); print "Run finished ok\n"; exit(0); } sub report_files { my $whatif = $_[0]; my $todo = {}; my $create = $whatif ? "is to create" : "created"; for ($startlevel..$endlevel-1) { $todo->{$_} = 1; } if (($whatif && $todo->{'0'}) || defined($ok->{'0'})) { print "Parse: $parser $create (among others)\n"; printfile("$base2.tab","(index file)"); printfile("$base2.raw","(raw data file)"); printfile("$base2.hdr","(header file)"); } if (($whatif && $todo->{'1'}) || defined($ok->{'1'})) { print "Assembly: mcxassemble $create\n"; printfile("$ass_out","(mcl input file)"); } if (($whatif && $todo->{'2'}) || defined($ok->{'2'})) { print "Clustering: mcl $create\n"; printfile("$mcl_out","(mcl output file)"); } if (($whatif && $todo->{'3'}) || defined($ok->{'3'})) { print "Formatting: clmformat $create\n"; my $dump_location = ""; $dump_location .= "$fmt_dir_name/" if $fmt_fancy; $dump_location .= $fmt_dump_name; printfile($dump_location, "(clmformat dump file)"); if ($fmt_fancy) { print "Formatting: clmformat $create two master files in this directory\n"; printfile("$fmt_dir_name","(formatted output)"); } } if ($whatif && $todo->{'4'}) { if ($have_zoem eq 'true') { print "zoem will further process the files in $fmt_dir_name\n"; } else { print "zoem should further process the files in $fmt_dir_name\n"; print "but you don't seem to have zoem installed --\n"; print "visit http://micans.org/zoem if you like\n"; } } elsif ($todo->{'4'}) { if (defined($ok->{'4'})) { print "zoem processed the files to yield final html and txt output\n"; } else { if ($have_zoem eq 'true') { print "zoem should further process the files in $fmt_dir_name\n"; print "but you don't seem to have zoem installed --\n"; print "visit http://micans.org/zoem if you like\n"; } else { print "zoem seems to have failed along the road - sorry\n"; } } } } sub dang { my $culprit = { -1 => "initialization" , 0 => $parser , 1 => "mcxassemble" , 2 => "mcl" , 3 => "clmformat" } ; if ($level == 3) { print "\n"; } print "\n$level Run did not succeed, error in $culprit->{$level} part\n"; exit(1); } # dot-it, not the other one. sub dotit { my $arg = shift; if ($arg !~ /\./) { $arg .= ".0"; } return $arg; } sub reqval { my $key = shift; my $val = shift; my $sth = shift; if (!$val) { print "required syntax for $key option: --$key=$sth\n"; dang(); } } sub hrule { my $tok = shift; my $len = shift; if (!$tok) { $tok = '=='; } if (!$len) { $len = 39; } print $tok x $len, "\n"; } sub report_clines { my $level = shift; my ($do, $be, $bound); my $i; if ($level >= 0) { $do = "ran"; $be = "were"; $bound = $level; } elsif ($level == -1) { $do = "am about to run"; $be = "are"; $bound = $endlevel; } elsif ($level == -2) { $do = "would run"; $be = "would be"; $bound = $endlevel; } if ($endlevel - $startlevel > 0) { print "Programs: these are the programs I $do for you.\n"; for ($i=$startlevel;$i<$bound;$i++) { if ($clines[$i]) { print " $progs[$i]"; } } print "\n"; print "Command lines: these $be the respective command lines.\n"; for ($i=$startlevel;$i<$bound;$i++) { if ($clines[$i]) { print " $clines[$i]\n"; } } } } sub printfile { printf " %-25s %s\n", $_[0], $_[1]; } sub matchsuffix { my $name = $_[0]; my $suf = $_[1]; my $base; if ($name =~ /(.*?)\.\Q$suf\E$/) { $base = $1; } else { $base = $name; $name .= ".$suf"; } return ($base, $name); } sub help { print <<_help_; Usage: mclpipeline --parser= --parser-tag= [options] file-name This will successively call four programs, $parser , mcxassemble , mcl , clmformat These programs write by default to files with names sharing a common base. The parser should implement the behaviour expected by mclpipeline. ,_______ global options: --whatif shows only what would be done. --start-assemble skip the parse step, assume needed files exist already. --start-mcl start running mcl immediately, as above. --start-format only (re)do the formatting stage, as above. --prepare-mcl create the input file for mcl, then quit. --help show this. ,_______ global options (affecting shared base name of created files): --xi= strip from file-name for use as base stem. --xo-dat= attach to parse result. --xo-ass= attach to mcxassemble result. --xo-mcl= use as mcl result attachment. --xa-mcl= append to mcl suffix. --xe-mcl= append to mcl file name. --xo-fmt= attach to clmformat result. mnemonics: eXtension In, Out, Append, Extra. ,_______ parse options --parser=